@charset "UTF-8";
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

a, button {
  cursor: revert;
}

ol, ul, menu {
  list-style: none;
}

img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

table {
  border-collapse: collapse;
}

input, textarea {
  -webkit-user-select: auto;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  -moz-appearance: revert;
  appearance: revert;
}

:where(pre) {
  all: revert;
  box-sizing: border-box;
}

::-moz-placeholder {
  color: unset;
}

::placeholder {
  color: unset;
}

::marker {
  content: initial;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

@keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes transY {
  0% {
    margin-top: -16px;
  }
  100% {
    margin-top: 0;
  }
}
@keyframes rotate-loading {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
@keyframes loading-text-opacity {
  0% {
    opacity: 1;
  }
  20% {
    opacity: 0;
  }
  50% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/**
*** 0埋め
***/
:root {
  --tm-border-radius-infinity: 999px;
  --tm-border-radius-xl: 3.2rem;
  --tm-border-radius-lg: 1.6rem;
  --tm-border-radius-md: 0.8rem;
  --tm-border-radius-sm: 0.4rem;
  --tm-border-radius-xs: 0.2rem;
  --tm-spacing-x0: 0;
  --tm-spacing-x05: 0.2rem;
  --tm-spacing-x1: 0.4rem;
  --tm-spacing-x2: 0.8rem;
  --tm-spacing-x3: 1.2rem;
  --tm-spacing-x4: 1.6rem;
  --tm-spacing-x6: 2.4rem;
  --tm-spacing-x8: 3.2rem;
  --tm-spacing-x10: 4rem;
  --tm-spacing-x12: 4.8rem;
  --tm-spacing-x16: 6.4rem;
  --tm-spacing-x20: 8rem;
  --tm-spacing-x24: 9.6rem;
  --tm-spacing-x32: 12.8rem;
  --tm-spacing-x40: 16rem;
  --tm-section-gap-lv1: var(--tm-spacing-x12);
  --tm-section-gap-lv2: var(--tm-spacing-x6);
  --tm-section-gap-lv3: var(--tm-spacing-x4);
  --tm-section-gap-lv4: var(--tm-spacing-x3);
}
@media (min-width: 768px) {
  :root {
    --tm-section-gap-lv1: var(--tm-spacing-x16);
    --tm-section-gap-lv2: var(--tm-spacing-x10);
    --tm-section-gap-lv3: var(--tm-spacing-x8);
    --tm-section-gap-lv4: var(--tm-spacing-x6);
  }
}
:root {
  --tm-heading-gap-lv1: var(--tm-spacing-x6);
  --tm-heading-gap-lv2: var(--tm-spacing-x4);
  --tm-heading-gap-lv3: var(--tm-spacing-x2);
  --tm-heading-gap-lv4: var(--tm-spacing-x1);
}
@media (min-width: 768px) {
  :root {
    --tm-heading-gap-lv1: var(--tm-spacing-x10);
    --tm-heading-gap-lv2: var(--tm-spacing-x6);
    --tm-heading-gap-lv3: var(--tm-spacing-x4);
    --tm-heading-gap-lv4: var(--tm-spacing-x2);
  }
}
:root {
  --tm-paragraph-gap: var(--tm-spacing-x4);
}
@media (min-width: 768px) {
  :root {
    --tm-paragraph-gap: var(--tm-spacing-x6);
  }
}
:root {
  --tm-grid-gap: var(--tm-spacing-x4);
}
@media (min-width: 768px) {
  :root {
    --tm-grid-gap: var(--tm-spacing-x8);
  }
}
:root {
  --tm-container-max-width: 1640px;
  --tm-font-family-jp: 'Noto Sans JP', sans-serif;
  --tm-font-family-en: 'Figtree', sans-serif;
  --tm-font-family-accent: 'Syncopate', sans-serif;
  --tm-font-family-serif: "Hiragino Mincho ProN", "MS Mincho", serif;
  --tm-font-weight-normal: 400;
  --tm-font-weight-bold: 700;
  --tm-font-size-xs: 1.2rem;
  --tm-font-size-sm: 1.4rem;
  --tm-font-size-md: 1.6rem;
  --tm-font-size-lg: 1.8rem;
  --tm-font-size-xl: 2rem;
  --tm-font-size-2xl: 2.3rem;
  --tm-font-size-3xl: 2.6rem;
  --tm-font-size-4xl: 2.9rem;
  --tm-font-size-5xl: 3.2rem;
  --tm-font-size-6xl: 3.6rem;
  --tm-font-size-7xl: 4.1rem;
  --tm-font-size-8xl: 4.6rem;
  --tm-shadow: 0.25rem 0 0.625rem rgba(67, 133, 187, 0.15);
  --tm-shadow-small: 0 0.125rem 0.25rem rgba(67, 133, 187, 0.15);
  --tm-shadow-large: 0 1rem 3rem rgba(67, 133, 187, 0.15);
  --tm-transition: 0.2s ease-out;
  --tm-color-gray-10: #1A1A1A;
  --tm-color-gray-20: #333333;
  --tm-color-gray-30: #4D4D4D;
  --tm-color-gray-40: #666666;
  --tm-color-gray-45: #737373;
  --tm-color-gray-50: #808080;
  --tm-color-gray-60: #999999;
  --tm-color-gray-70: #B3B3B3;
  --tm-color-gray-80: #CCCCCC;
  --tm-color-gray-90: #E6E6E6;
  --tm-color-gray-95: #F2F2F2;
  --tm-color-gray-98: #FAFAFA;
  --tm-color-red-10: #2F0604;
  --tm-color-red-20: #5E0C08;
  --tm-color-red-30: #8E120C;
  --tm-color-red-40: #BD1810;
  --tm-color-red-50: #EC1E14;
  --tm-color-red-60: #F04B43;
  --tm-color-red-70: #F47872;
  --tm-color-red-80: #F7A5A1;
  --tm-color-red-90: #FBD2D0;
  --tm-color-red-95: #FDE8E7;
  --tm-color-red-98: #FEF6F6;
  --tm-color-yellow-10: #3D3B00;
  --tm-color-yellow-20: #6B6700;
  --tm-color-yellow-30: #A8A200;
  --tm-color-yellow-40: #C2BB00;
  --tm-color-yellow-50: #E0D800;
  --tm-color-yellow-60: #F0E700;
  --tm-color-yellow-70: #FFF600;
  --tm-color-yellow-80: #FFFA7A;
  --tm-color-yellow-90: #FFFCA9;
  --tm-color-yellow-95: #FFFCCC;
  --tm-color-yellow-98: #FFFEEB;
  --tm-color-white: #FFFFFF;
  --tm-color-primary-10: #06122D;
  --tm-color-primary-15: #081C44;
  --tm-color-primary-20: #0B255B;
  --tm-color-primary-30: #113788;
  --tm-color-primary-40: #1442A3;
  --tm-color-primary-50: #1B58DA;
  --tm-color-primary-60: #497DE9;
  --tm-color-primary-70: #779DEE;
  --tm-color-primary-80: #A4BEF4;
  --tm-color-primary-90: #C8D8F8;
  --tm-color-primary-95: #E8EEFC;
  --tm-color-primary-98: #F6F8FE;
  --tm-color-secondary-10: #002733;
  --tm-color-secondary-20: #004E66;
  --tm-color-secondary-30: #007599;
  --tm-color-secondary-40: #009CCC;
  --tm-color-secondary-50: #00B8F0;
  --tm-color-secondary-60: #24CCFF;
  --tm-color-secondary-70: #66DBFF;
  --tm-color-secondary-80: #99E7FF;
  --tm-color-secondary-90: #CCF3FF;
  --tm-color-secondary-95: #E6F7FC;
  --tm-color-secondary-98: #F5FBFC;
  --tm-color-natural-10: #14171F;
  --tm-color-natural-20: #282E3E;
  --tm-color-natural-30: #3C455D;
  --tm-color-natural-40: #505C7C;
  --tm-color-natural-50: #64739B;
  --tm-color-natural-60: #838FAF;
  --tm-color-natural-70: #A2ABC3;
  --tm-color-natural-80: #C1C7D7;
  --tm-color-natural-90: #E0E3EB;
  --tm-color-natural-95: #EDEEF3;
  --tm-color-natural-98: #F3F4F7;
  --tm-color-text-default: var(--tm-color-gray-20);
  --tm-color-text-subtle: #595959;
  --tm-color-text-placeholder: var(--tm-color-gray-45);
  --tm-color-text-attention: var(--tm-color-red-50);
  --tm-color-text-link: #1A0DAB;
  --tm-color-background-default: var(--tm-color-natural-98);
  --tm-color-background-variant: var(--tm-color-gray-95);
  --tm-color-background-hovered: var(--tm-color-secondary-95);
  --tm-color-background-attention: var(--tm-color-red-98);
  --tm-color-background-highlight: var(--tm-color-secondary-98);
  --tm-color-background-marker: var(--tm-color-yellow-95);
  --tm-color-border-default: #DDE3E3;
  --tm-color-border-subtle: var(--tm-color-gray-95);
  --tm-color-border-variant: #D9D9D9;
  --tm-color-border-strong: var(--tm-color-natural-30);
  --tm-color-border-highlight: var(--tm-color-primary-40);
  --tm-color-overlay-default: rgba(0, 0, 0, 0.3);
  --tm-color-overlay-business: rgba(29, 39, 61, 0.15);
  --tm-color-overlay-on-image: rgba(0, 0, 0, 0.2);
  --tm-color-page-header-bg-overlay: rgba(0, 96, 205, 0.2);
  --tm-color-page-header-bg-blur: rgba(0, 0, 0, 0.25);
  --tm-color-section-medical: #48B7D0;
  --tm-color-section-nursing: #58B878;
  --tm-color-section-amg: #F9DA0F;
}

html {
  font-size: clamp(9.4px, 2.5641025641vw, 10px);
}
@media (min-width: 768px) {
  html {
    font-size: clamp(9.4px, 0.7352941176vw, 12px);
  }
}
html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
  height: 100%;
}

body {
  background-color: var(--tm-color-white);
  color: var(--tm-color-text-default);
  font-family: var(--tm-font-family-jp);
  font-size: var(--tm-font-size-md);
  font-weight: var(--tm-font-weight-normal);
  line-height: 1.75;
  letter-spacing: 0.03em;
  min-width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (min-width: 768px) {
  body {
    font-size: var(--tm-font-size-md);
  }
}

main a {
  color: var(--tm-color-text-link);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  transition: opacity var(--tm-transition);
}
@media (hover: hover) and (pointer: fine) {
  main a:hover {
    opacity: 0.7;
  }
}

@media (hover: hover) and (pointer: fine) {
  a[href^="tel:"] {
    color: inherit;
    text-decoration: none;
    pointer-events: none;
    cursor: default;
  }
}

ul {
  list-style: none;
}

img {
  max-width: 100%;
  display: block;
}

b,
em,
strong {
  font-style: normal;
  font-weight: var(--tm-font-weight-bold);
  line-height: inherit;
}

@view-transition {
  navigation: auto;
}
.page-container {
  display: flex;
  flex-flow: column nowrap;
  align-content: space-between;
  width: 100%;
  min-height: 100%;
}

.page-header {
  flex: 0 0 auto;
  position: sticky;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
}

.page-navigation {
  background-color: rgba(0, 0, 0, 0.9);
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 200;
}
.page-navigation[aria-disabled=true] {
  display: none;
}

.page-main {
  flex: 1 0 auto;
  width: 100%;
  overflow-x: hidden;
  z-index: 0;
}

.page-footer {
  flex: 0 0 auto;
  width: 100%;
  z-index: 1;
}

.p-intro {
  position: fixed;
  inset: 0;
  z-index: 10000;
  background-color: var(--tm-color-primary-30);
  display: flex;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.75s ease, visibility 0.75s ease; /* fadeOut と合わせる */
}
.p-intro.is-leaving {
  opacity: 0;
  visibility: hidden;
}

.p-intro__body {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 0 clamp(2.4rem, 6vw, 8rem);
  text-align: center;
  font-feature-settings: "palt";
}

.p-intro__logo {
  width: clamp(16rem, 24vw, 24rem);
  height: auto;
  opacity: 0;
}

.p-intro__catch-line {
  overflow: hidden;
  text-align: center;
  font-family: var(--tm-font-family-serif);
  font-size: var(--tm-fontsize-lg);
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.16em;
  font-feature-settings: "palt";
  color: var(--tm-color-white);
}
@media (min-width: 768px) {
  .p-intro__catch-line {
    font-size: 1.4vw;
  }
}
.p-intro__catch-line.is-hidden {
  display: none;
}

.grid {
  --grid-columns: 12;
  display: grid;
  grid-template-columns: repeat(var(--grid-columns), minmax(0, 1fr));
  gap: var(--tm-grid-gap);
}
.grid:has([class$=-center]) {
  place-items: center;
}
.grid > * {
  grid-column: auto/span 12;
}
.grid > .xs-1 {
  grid-column: auto/span 1;
}
.grid > .xs-1-center {
  margin: 0 auto;
  width: 8.3333333333%;
}
.grid > .xs-2 {
  grid-column: auto/span 2;
}
.grid > .xs-2-center {
  margin: 0 auto;
  width: 16.6666666667%;
}
.grid > .xs-3 {
  grid-column: auto/span 3;
}
.grid > .xs-3-center {
  margin: 0 auto;
  width: 25%;
}
.grid > .xs-4 {
  grid-column: auto/span 4;
}
.grid > .xs-4-center {
  margin: 0 auto;
  width: 33.3333333333%;
}
.grid > .xs-5 {
  grid-column: auto/span 5;
}
.grid > .xs-5-center {
  margin: 0 auto;
  width: 41.6666666667%;
}
.grid > .xs-6 {
  grid-column: auto/span 6;
}
.grid > .xs-6-center {
  margin: 0 auto;
  width: 50%;
}
.grid > .xs-7 {
  grid-column: auto/span 7;
}
.grid > .xs-7-center {
  margin: 0 auto;
  width: 58.3333333333%;
}
.grid > .xs-8 {
  grid-column: auto/span 8;
}
.grid > .xs-8-center {
  margin: 0 auto;
  width: 66.6666666667%;
}
.grid > .xs-9 {
  grid-column: auto/span 9;
}
.grid > .xs-9-center {
  margin: 0 auto;
  width: 75%;
}
.grid > .xs-10 {
  grid-column: auto/span 10;
}
.grid > .xs-10-center {
  margin: 0 auto;
  width: 83.3333333333%;
}
.grid > .xs-11 {
  grid-column: auto/span 11;
}
.grid > .xs-11-center {
  margin: 0 auto;
  width: 91.6666666667%;
}
.grid > .xs-12 {
  grid-column: auto/span 12;
}
.grid > .xs-12-center {
  margin: 0 auto;
  width: 100%;
}
@media (min-width: 640px) {
  .grid > .sm-1 {
    grid-column: auto/span 1;
  }
  .grid > .sm-1-center {
    margin: 0 auto;
    width: 8.3333333333%;
  }
  .grid > .sm-2 {
    grid-column: auto/span 2;
  }
  .grid > .sm-2-center {
    margin: 0 auto;
    width: 16.6666666667%;
  }
  .grid > .sm-3 {
    grid-column: auto/span 3;
  }
  .grid > .sm-3-center {
    margin: 0 auto;
    width: 25%;
  }
  .grid > .sm-4 {
    grid-column: auto/span 4;
  }
  .grid > .sm-4-center {
    margin: 0 auto;
    width: 33.3333333333%;
  }
  .grid > .sm-5 {
    grid-column: auto/span 5;
  }
  .grid > .sm-5-center {
    margin: 0 auto;
    width: 41.6666666667%;
  }
  .grid > .sm-6 {
    grid-column: auto/span 6;
  }
  .grid > .sm-6-center {
    margin: 0 auto;
    width: 50%;
  }
  .grid > .sm-7 {
    grid-column: auto/span 7;
  }
  .grid > .sm-7-center {
    margin: 0 auto;
    width: 58.3333333333%;
  }
  .grid > .sm-8 {
    grid-column: auto/span 8;
  }
  .grid > .sm-8-center {
    margin: 0 auto;
    width: 66.6666666667%;
  }
  .grid > .sm-9 {
    grid-column: auto/span 9;
  }
  .grid > .sm-9-center {
    margin: 0 auto;
    width: 75%;
  }
  .grid > .sm-10 {
    grid-column: auto/span 10;
  }
  .grid > .sm-10-center {
    margin: 0 auto;
    width: 83.3333333333%;
  }
  .grid > .sm-11 {
    grid-column: auto/span 11;
  }
  .grid > .sm-11-center {
    margin: 0 auto;
    width: 91.6666666667%;
  }
  .grid > .sm-12 {
    grid-column: auto/span 12;
  }
  .grid > .sm-12-center {
    margin: 0 auto;
    width: 100%;
  }
}
@media (min-width: 768px) {
  .grid > .md-1 {
    grid-column: auto/span 1;
  }
  .grid > .md-1-center {
    margin: 0 auto;
    width: 8.3333333333%;
  }
  .grid > .md-2 {
    grid-column: auto/span 2;
  }
  .grid > .md-2-center {
    margin: 0 auto;
    width: 16.6666666667%;
  }
  .grid > .md-3 {
    grid-column: auto/span 3;
  }
  .grid > .md-3-center {
    margin: 0 auto;
    width: 25%;
  }
  .grid > .md-4 {
    grid-column: auto/span 4;
  }
  .grid > .md-4-center {
    margin: 0 auto;
    width: 33.3333333333%;
  }
  .grid > .md-5 {
    grid-column: auto/span 5;
  }
  .grid > .md-5-center {
    margin: 0 auto;
    width: 41.6666666667%;
  }
  .grid > .md-6 {
    grid-column: auto/span 6;
  }
  .grid > .md-6-center {
    margin: 0 auto;
    width: 50%;
  }
  .grid > .md-7 {
    grid-column: auto/span 7;
  }
  .grid > .md-7-center {
    margin: 0 auto;
    width: 58.3333333333%;
  }
  .grid > .md-8 {
    grid-column: auto/span 8;
  }
  .grid > .md-8-center {
    margin: 0 auto;
    width: 66.6666666667%;
  }
  .grid > .md-9 {
    grid-column: auto/span 9;
  }
  .grid > .md-9-center {
    margin: 0 auto;
    width: 75%;
  }
  .grid > .md-10 {
    grid-column: auto/span 10;
  }
  .grid > .md-10-center {
    margin: 0 auto;
    width: 83.3333333333%;
  }
  .grid > .md-11 {
    grid-column: auto/span 11;
  }
  .grid > .md-11-center {
    margin: 0 auto;
    width: 91.6666666667%;
  }
  .grid > .md-12 {
    grid-column: auto/span 12;
  }
  .grid > .md-12-center {
    margin: 0 auto;
    width: 100%;
  }
}
@media (min-width: 1024px) {
  .grid > .lg-1 {
    grid-column: auto/span 1;
  }
  .grid > .lg-1-center {
    margin: 0 auto;
    width: 8.3333333333%;
  }
  .grid > .lg-2 {
    grid-column: auto/span 2;
  }
  .grid > .lg-2-center {
    margin: 0 auto;
    width: 16.6666666667%;
  }
  .grid > .lg-3 {
    grid-column: auto/span 3;
  }
  .grid > .lg-3-center {
    margin: 0 auto;
    width: 25%;
  }
  .grid > .lg-4 {
    grid-column: auto/span 4;
  }
  .grid > .lg-4-center {
    margin: 0 auto;
    width: 33.3333333333%;
  }
  .grid > .lg-5 {
    grid-column: auto/span 5;
  }
  .grid > .lg-5-center {
    margin: 0 auto;
    width: 41.6666666667%;
  }
  .grid > .lg-6 {
    grid-column: auto/span 6;
  }
  .grid > .lg-6-center {
    margin: 0 auto;
    width: 50%;
  }
  .grid > .lg-7 {
    grid-column: auto/span 7;
  }
  .grid > .lg-7-center {
    margin: 0 auto;
    width: 58.3333333333%;
  }
  .grid > .lg-8 {
    grid-column: auto/span 8;
  }
  .grid > .lg-8-center {
    margin: 0 auto;
    width: 66.6666666667%;
  }
  .grid > .lg-9 {
    grid-column: auto/span 9;
  }
  .grid > .lg-9-center {
    margin: 0 auto;
    width: 75%;
  }
  .grid > .lg-10 {
    grid-column: auto/span 10;
  }
  .grid > .lg-10-center {
    margin: 0 auto;
    width: 83.3333333333%;
  }
  .grid > .lg-11 {
    grid-column: auto/span 11;
  }
  .grid > .lg-11-center {
    margin: 0 auto;
    width: 91.6666666667%;
  }
  .grid > .lg-12 {
    grid-column: auto/span 12;
  }
  .grid > .lg-12-center {
    margin: 0 auto;
    width: 100%;
  }
}
@media (min-width: 1280px) {
  .grid > .xl-1 {
    grid-column: auto/span 1;
  }
  .grid > .xl-1-center {
    margin: 0 auto;
    width: 8.3333333333%;
  }
  .grid > .xl-2 {
    grid-column: auto/span 2;
  }
  .grid > .xl-2-center {
    margin: 0 auto;
    width: 16.6666666667%;
  }
  .grid > .xl-3 {
    grid-column: auto/span 3;
  }
  .grid > .xl-3-center {
    margin: 0 auto;
    width: 25%;
  }
  .grid > .xl-4 {
    grid-column: auto/span 4;
  }
  .grid > .xl-4-center {
    margin: 0 auto;
    width: 33.3333333333%;
  }
  .grid > .xl-5 {
    grid-column: auto/span 5;
  }
  .grid > .xl-5-center {
    margin: 0 auto;
    width: 41.6666666667%;
  }
  .grid > .xl-6 {
    grid-column: auto/span 6;
  }
  .grid > .xl-6-center {
    margin: 0 auto;
    width: 50%;
  }
  .grid > .xl-7 {
    grid-column: auto/span 7;
  }
  .grid > .xl-7-center {
    margin: 0 auto;
    width: 58.3333333333%;
  }
  .grid > .xl-8 {
    grid-column: auto/span 8;
  }
  .grid > .xl-8-center {
    margin: 0 auto;
    width: 66.6666666667%;
  }
  .grid > .xl-9 {
    grid-column: auto/span 9;
  }
  .grid > .xl-9-center {
    margin: 0 auto;
    width: 75%;
  }
  .grid > .xl-10 {
    grid-column: auto/span 10;
  }
  .grid > .xl-10-center {
    margin: 0 auto;
    width: 83.3333333333%;
  }
  .grid > .xl-11 {
    grid-column: auto/span 11;
  }
  .grid > .xl-11-center {
    margin: 0 auto;
    width: 91.6666666667%;
  }
  .grid > .xl-12 {
    grid-column: auto/span 12;
  }
  .grid > .xl-12-center {
    margin: 0 auto;
    width: 100%;
  }
}
@media (min-width: 1440px) {
  .grid > .xxl-1 {
    grid-column: auto/span 1;
  }
  .grid > .xxl-1-center {
    margin: 0 auto;
    width: 8.3333333333%;
  }
  .grid > .xxl-2 {
    grid-column: auto/span 2;
  }
  .grid > .xxl-2-center {
    margin: 0 auto;
    width: 16.6666666667%;
  }
  .grid > .xxl-3 {
    grid-column: auto/span 3;
  }
  .grid > .xxl-3-center {
    margin: 0 auto;
    width: 25%;
  }
  .grid > .xxl-4 {
    grid-column: auto/span 4;
  }
  .grid > .xxl-4-center {
    margin: 0 auto;
    width: 33.3333333333%;
  }
  .grid > .xxl-5 {
    grid-column: auto/span 5;
  }
  .grid > .xxl-5-center {
    margin: 0 auto;
    width: 41.6666666667%;
  }
  .grid > .xxl-6 {
    grid-column: auto/span 6;
  }
  .grid > .xxl-6-center {
    margin: 0 auto;
    width: 50%;
  }
  .grid > .xxl-7 {
    grid-column: auto/span 7;
  }
  .grid > .xxl-7-center {
    margin: 0 auto;
    width: 58.3333333333%;
  }
  .grid > .xxl-8 {
    grid-column: auto/span 8;
  }
  .grid > .xxl-8-center {
    margin: 0 auto;
    width: 66.6666666667%;
  }
  .grid > .xxl-9 {
    grid-column: auto/span 9;
  }
  .grid > .xxl-9-center {
    margin: 0 auto;
    width: 75%;
  }
  .grid > .xxl-10 {
    grid-column: auto/span 10;
  }
  .grid > .xxl-10-center {
    margin: 0 auto;
    width: 83.3333333333%;
  }
  .grid > .xxl-11 {
    grid-column: auto/span 11;
  }
  .grid > .xxl-11-center {
    margin: 0 auto;
    width: 91.6666666667%;
  }
  .grid > .xxl-12 {
    grid-column: auto/span 12;
  }
  .grid > .xxl-12-center {
    margin: 0 auto;
    width: 100%;
  }
}
.grid.xs-cols-1 {
  --grid-columns: 1;
}
.grid.xs-cols-1 > * {
  grid-column: span 1;
}
.grid.xs-cols-2 {
  --grid-columns: 2;
}
.grid.xs-cols-2 > * {
  grid-column: span 1;
}
.grid.xs-cols-3 {
  --grid-columns: 3;
}
.grid.xs-cols-3 > * {
  grid-column: span 1;
}
.grid.xs-cols-4 {
  --grid-columns: 4;
}
.grid.xs-cols-4 > * {
  grid-column: span 1;
}
.grid.xs-cols-5 {
  --grid-columns: 5;
}
.grid.xs-cols-5 > * {
  grid-column: span 1;
}
.grid.xs-cols-6 {
  --grid-columns: 6;
}
.grid.xs-cols-6 > * {
  grid-column: span 1;
}
.grid.xs-cols-7 {
  --grid-columns: 7;
}
.grid.xs-cols-7 > * {
  grid-column: span 1;
}
.grid.xs-cols-8 {
  --grid-columns: 8;
}
.grid.xs-cols-8 > * {
  grid-column: span 1;
}
.grid.xs-cols-9 {
  --grid-columns: 9;
}
.grid.xs-cols-9 > * {
  grid-column: span 1;
}
.grid.xs-cols-10 {
  --grid-columns: 10;
}
.grid.xs-cols-10 > * {
  grid-column: span 1;
}
.grid.xs-cols-11 {
  --grid-columns: 11;
}
.grid.xs-cols-11 > * {
  grid-column: span 1;
}
.grid.xs-cols-12 {
  --grid-columns: 12;
}
.grid.xs-cols-12 > * {
  grid-column: span 1;
}
@media (min-width: 640px) {
  .grid.sm-cols-1 {
    --grid-columns: 1;
  }
  .grid.sm-cols-1 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-2 {
    --grid-columns: 2;
  }
  .grid.sm-cols-2 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-3 {
    --grid-columns: 3;
  }
  .grid.sm-cols-3 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-4 {
    --grid-columns: 4;
  }
  .grid.sm-cols-4 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-5 {
    --grid-columns: 5;
  }
  .grid.sm-cols-5 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-6 {
    --grid-columns: 6;
  }
  .grid.sm-cols-6 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-7 {
    --grid-columns: 7;
  }
  .grid.sm-cols-7 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-8 {
    --grid-columns: 8;
  }
  .grid.sm-cols-8 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-9 {
    --grid-columns: 9;
  }
  .grid.sm-cols-9 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-10 {
    --grid-columns: 10;
  }
  .grid.sm-cols-10 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-11 {
    --grid-columns: 11;
  }
  .grid.sm-cols-11 > * {
    grid-column: span 1;
  }
  .grid.sm-cols-12 {
    --grid-columns: 12;
  }
  .grid.sm-cols-12 > * {
    grid-column: span 1;
  }
}
@media (min-width: 768px) {
  .grid.md-cols-1 {
    --grid-columns: 1;
  }
  .grid.md-cols-1 > * {
    grid-column: span 1;
  }
  .grid.md-cols-2 {
    --grid-columns: 2;
  }
  .grid.md-cols-2 > * {
    grid-column: span 1;
  }
  .grid.md-cols-3 {
    --grid-columns: 3;
  }
  .grid.md-cols-3 > * {
    grid-column: span 1;
  }
  .grid.md-cols-4 {
    --grid-columns: 4;
  }
  .grid.md-cols-4 > * {
    grid-column: span 1;
  }
  .grid.md-cols-5 {
    --grid-columns: 5;
  }
  .grid.md-cols-5 > * {
    grid-column: span 1;
  }
  .grid.md-cols-6 {
    --grid-columns: 6;
  }
  .grid.md-cols-6 > * {
    grid-column: span 1;
  }
  .grid.md-cols-7 {
    --grid-columns: 7;
  }
  .grid.md-cols-7 > * {
    grid-column: span 1;
  }
  .grid.md-cols-8 {
    --grid-columns: 8;
  }
  .grid.md-cols-8 > * {
    grid-column: span 1;
  }
  .grid.md-cols-9 {
    --grid-columns: 9;
  }
  .grid.md-cols-9 > * {
    grid-column: span 1;
  }
  .grid.md-cols-10 {
    --grid-columns: 10;
  }
  .grid.md-cols-10 > * {
    grid-column: span 1;
  }
  .grid.md-cols-11 {
    --grid-columns: 11;
  }
  .grid.md-cols-11 > * {
    grid-column: span 1;
  }
  .grid.md-cols-12 {
    --grid-columns: 12;
  }
  .grid.md-cols-12 > * {
    grid-column: span 1;
  }
}
@media (min-width: 1024px) {
  .grid.lg-cols-1 {
    --grid-columns: 1;
  }
  .grid.lg-cols-1 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-2 {
    --grid-columns: 2;
  }
  .grid.lg-cols-2 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-3 {
    --grid-columns: 3;
  }
  .grid.lg-cols-3 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-4 {
    --grid-columns: 4;
  }
  .grid.lg-cols-4 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-5 {
    --grid-columns: 5;
  }
  .grid.lg-cols-5 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-6 {
    --grid-columns: 6;
  }
  .grid.lg-cols-6 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-7 {
    --grid-columns: 7;
  }
  .grid.lg-cols-7 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-8 {
    --grid-columns: 8;
  }
  .grid.lg-cols-8 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-9 {
    --grid-columns: 9;
  }
  .grid.lg-cols-9 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-10 {
    --grid-columns: 10;
  }
  .grid.lg-cols-10 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-11 {
    --grid-columns: 11;
  }
  .grid.lg-cols-11 > * {
    grid-column: span 1;
  }
  .grid.lg-cols-12 {
    --grid-columns: 12;
  }
  .grid.lg-cols-12 > * {
    grid-column: span 1;
  }
}
@media (min-width: 1280px) {
  .grid.xl-cols-1 {
    --grid-columns: 1;
  }
  .grid.xl-cols-1 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-2 {
    --grid-columns: 2;
  }
  .grid.xl-cols-2 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-3 {
    --grid-columns: 3;
  }
  .grid.xl-cols-3 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-4 {
    --grid-columns: 4;
  }
  .grid.xl-cols-4 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-5 {
    --grid-columns: 5;
  }
  .grid.xl-cols-5 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-6 {
    --grid-columns: 6;
  }
  .grid.xl-cols-6 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-7 {
    --grid-columns: 7;
  }
  .grid.xl-cols-7 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-8 {
    --grid-columns: 8;
  }
  .grid.xl-cols-8 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-9 {
    --grid-columns: 9;
  }
  .grid.xl-cols-9 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-10 {
    --grid-columns: 10;
  }
  .grid.xl-cols-10 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-11 {
    --grid-columns: 11;
  }
  .grid.xl-cols-11 > * {
    grid-column: span 1;
  }
  .grid.xl-cols-12 {
    --grid-columns: 12;
  }
  .grid.xl-cols-12 > * {
    grid-column: span 1;
  }
}
@media (min-width: 1440px) {
  .grid.xxl-cols-1 {
    --grid-columns: 1;
  }
  .grid.xxl-cols-1 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-2 {
    --grid-columns: 2;
  }
  .grid.xxl-cols-2 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-3 {
    --grid-columns: 3;
  }
  .grid.xxl-cols-3 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-4 {
    --grid-columns: 4;
  }
  .grid.xxl-cols-4 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-5 {
    --grid-columns: 5;
  }
  .grid.xxl-cols-5 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-6 {
    --grid-columns: 6;
  }
  .grid.xxl-cols-6 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-7 {
    --grid-columns: 7;
  }
  .grid.xxl-cols-7 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-8 {
    --grid-columns: 8;
  }
  .grid.xxl-cols-8 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-9 {
    --grid-columns: 9;
  }
  .grid.xxl-cols-9 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-10 {
    --grid-columns: 10;
  }
  .grid.xxl-cols-10 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-11 {
    --grid-columns: 11;
  }
  .grid.xxl-cols-11 > * {
    grid-column: span 1;
  }
  .grid.xxl-cols-12 {
    --grid-columns: 12;
  }
  .grid.xxl-cols-12 > * {
    grid-column: span 1;
  }
}
.grid.gap-x0 {
  gap: var(--tm-spacing-x0);
}
.grid.gap-x05 {
  gap: var(--tm-spacing-x05);
}
.grid.gap-x1 {
  gap: var(--tm-spacing-x1);
}
.grid.gap-x2 {
  gap: var(--tm-spacing-x2);
}
.grid.gap-x3 {
  gap: var(--tm-spacing-x3);
}
.grid.gap-x4 {
  gap: var(--tm-spacing-x4);
}
.grid.gap-x6 {
  gap: var(--tm-spacing-x6);
}
.grid.gap-x8 {
  gap: var(--tm-spacing-x8);
}
.grid.gap-x10 {
  gap: var(--tm-spacing-x10);
}
.grid.gap-x12 {
  gap: var(--tm-spacing-x12);
}
.grid.gap-x16 {
  gap: var(--tm-spacing-x16);
}
.grid.gap-x20 {
  gap: var(--tm-spacing-x20);
}
.grid.gap-x24 {
  gap: var(--tm-spacing-x24);
}
.grid.gap-x32 {
  gap: var(--tm-spacing-x32);
}
.grid.gap-x40 {
  gap: var(--tm-spacing-x40);
}
.grid.xs-gap-x0 {
  gap: var(--tm-spacing-x0);
}
.grid.xs-gap-x05 {
  gap: var(--tm-spacing-x05);
}
.grid.xs-gap-x1 {
  gap: var(--tm-spacing-x1);
}
.grid.xs-gap-x2 {
  gap: var(--tm-spacing-x2);
}
.grid.xs-gap-x3 {
  gap: var(--tm-spacing-x3);
}
.grid.xs-gap-x4 {
  gap: var(--tm-spacing-x4);
}
.grid.xs-gap-x6 {
  gap: var(--tm-spacing-x6);
}
.grid.xs-gap-x8 {
  gap: var(--tm-spacing-x8);
}
.grid.xs-gap-x10 {
  gap: var(--tm-spacing-x10);
}
.grid.xs-gap-x12 {
  gap: var(--tm-spacing-x12);
}
.grid.xs-gap-x16 {
  gap: var(--tm-spacing-x16);
}
.grid.xs-gap-x20 {
  gap: var(--tm-spacing-x20);
}
.grid.xs-gap-x24 {
  gap: var(--tm-spacing-x24);
}
.grid.xs-gap-x32 {
  gap: var(--tm-spacing-x32);
}
.grid.xs-gap-x40 {
  gap: var(--tm-spacing-x40);
}
@media (min-width: 640px) {
  .grid.sm-gap-x0 {
    gap: var(--tm-spacing-x0);
  }
  .grid.sm-gap-x05 {
    gap: var(--tm-spacing-x05);
  }
  .grid.sm-gap-x1 {
    gap: var(--tm-spacing-x1);
  }
  .grid.sm-gap-x2 {
    gap: var(--tm-spacing-x2);
  }
  .grid.sm-gap-x3 {
    gap: var(--tm-spacing-x3);
  }
  .grid.sm-gap-x4 {
    gap: var(--tm-spacing-x4);
  }
  .grid.sm-gap-x6 {
    gap: var(--tm-spacing-x6);
  }
  .grid.sm-gap-x8 {
    gap: var(--tm-spacing-x8);
  }
  .grid.sm-gap-x10 {
    gap: var(--tm-spacing-x10);
  }
  .grid.sm-gap-x12 {
    gap: var(--tm-spacing-x12);
  }
  .grid.sm-gap-x16 {
    gap: var(--tm-spacing-x16);
  }
  .grid.sm-gap-x20 {
    gap: var(--tm-spacing-x20);
  }
  .grid.sm-gap-x24 {
    gap: var(--tm-spacing-x24);
  }
  .grid.sm-gap-x32 {
    gap: var(--tm-spacing-x32);
  }
  .grid.sm-gap-x40 {
    gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 768px) {
  .grid.md-gap-x0 {
    gap: var(--tm-spacing-x0);
  }
  .grid.md-gap-x05 {
    gap: var(--tm-spacing-x05);
  }
  .grid.md-gap-x1 {
    gap: var(--tm-spacing-x1);
  }
  .grid.md-gap-x2 {
    gap: var(--tm-spacing-x2);
  }
  .grid.md-gap-x3 {
    gap: var(--tm-spacing-x3);
  }
  .grid.md-gap-x4 {
    gap: var(--tm-spacing-x4);
  }
  .grid.md-gap-x6 {
    gap: var(--tm-spacing-x6);
  }
  .grid.md-gap-x8 {
    gap: var(--tm-spacing-x8);
  }
  .grid.md-gap-x10 {
    gap: var(--tm-spacing-x10);
  }
  .grid.md-gap-x12 {
    gap: var(--tm-spacing-x12);
  }
  .grid.md-gap-x16 {
    gap: var(--tm-spacing-x16);
  }
  .grid.md-gap-x20 {
    gap: var(--tm-spacing-x20);
  }
  .grid.md-gap-x24 {
    gap: var(--tm-spacing-x24);
  }
  .grid.md-gap-x32 {
    gap: var(--tm-spacing-x32);
  }
  .grid.md-gap-x40 {
    gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 1024px) {
  .grid.lg-gap-x0 {
    gap: var(--tm-spacing-x0);
  }
  .grid.lg-gap-x05 {
    gap: var(--tm-spacing-x05);
  }
  .grid.lg-gap-x1 {
    gap: var(--tm-spacing-x1);
  }
  .grid.lg-gap-x2 {
    gap: var(--tm-spacing-x2);
  }
  .grid.lg-gap-x3 {
    gap: var(--tm-spacing-x3);
  }
  .grid.lg-gap-x4 {
    gap: var(--tm-spacing-x4);
  }
  .grid.lg-gap-x6 {
    gap: var(--tm-spacing-x6);
  }
  .grid.lg-gap-x8 {
    gap: var(--tm-spacing-x8);
  }
  .grid.lg-gap-x10 {
    gap: var(--tm-spacing-x10);
  }
  .grid.lg-gap-x12 {
    gap: var(--tm-spacing-x12);
  }
  .grid.lg-gap-x16 {
    gap: var(--tm-spacing-x16);
  }
  .grid.lg-gap-x20 {
    gap: var(--tm-spacing-x20);
  }
  .grid.lg-gap-x24 {
    gap: var(--tm-spacing-x24);
  }
  .grid.lg-gap-x32 {
    gap: var(--tm-spacing-x32);
  }
  .grid.lg-gap-x40 {
    gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 1280px) {
  .grid.xl-gap-x0 {
    gap: var(--tm-spacing-x0);
  }
  .grid.xl-gap-x05 {
    gap: var(--tm-spacing-x05);
  }
  .grid.xl-gap-x1 {
    gap: var(--tm-spacing-x1);
  }
  .grid.xl-gap-x2 {
    gap: var(--tm-spacing-x2);
  }
  .grid.xl-gap-x3 {
    gap: var(--tm-spacing-x3);
  }
  .grid.xl-gap-x4 {
    gap: var(--tm-spacing-x4);
  }
  .grid.xl-gap-x6 {
    gap: var(--tm-spacing-x6);
  }
  .grid.xl-gap-x8 {
    gap: var(--tm-spacing-x8);
  }
  .grid.xl-gap-x10 {
    gap: var(--tm-spacing-x10);
  }
  .grid.xl-gap-x12 {
    gap: var(--tm-spacing-x12);
  }
  .grid.xl-gap-x16 {
    gap: var(--tm-spacing-x16);
  }
  .grid.xl-gap-x20 {
    gap: var(--tm-spacing-x20);
  }
  .grid.xl-gap-x24 {
    gap: var(--tm-spacing-x24);
  }
  .grid.xl-gap-x32 {
    gap: var(--tm-spacing-x32);
  }
  .grid.xl-gap-x40 {
    gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 1440px) {
  .grid.xxl-gap-x0 {
    gap: var(--tm-spacing-x0);
  }
  .grid.xxl-gap-x05 {
    gap: var(--tm-spacing-x05);
  }
  .grid.xxl-gap-x1 {
    gap: var(--tm-spacing-x1);
  }
  .grid.xxl-gap-x2 {
    gap: var(--tm-spacing-x2);
  }
  .grid.xxl-gap-x3 {
    gap: var(--tm-spacing-x3);
  }
  .grid.xxl-gap-x4 {
    gap: var(--tm-spacing-x4);
  }
  .grid.xxl-gap-x6 {
    gap: var(--tm-spacing-x6);
  }
  .grid.xxl-gap-x8 {
    gap: var(--tm-spacing-x8);
  }
  .grid.xxl-gap-x10 {
    gap: var(--tm-spacing-x10);
  }
  .grid.xxl-gap-x12 {
    gap: var(--tm-spacing-x12);
  }
  .grid.xxl-gap-x16 {
    gap: var(--tm-spacing-x16);
  }
  .grid.xxl-gap-x20 {
    gap: var(--tm-spacing-x20);
  }
  .grid.xxl-gap-x24 {
    gap: var(--tm-spacing-x24);
  }
  .grid.xxl-gap-x32 {
    gap: var(--tm-spacing-x32);
  }
  .grid.xxl-gap-x40 {
    gap: var(--tm-spacing-x40);
  }
}

.grid-flex {
  --grid-flex-gap: var(--tm-grid-gap, var(--tm-spacing-x6));
  display: flex;
  flex-flow: row wrap;
  margin-top: calc(var(--grid-flex-gap) * -0.5) !important;
  margin-right: calc(var(--grid-flex-gap) * -0.5) !important;
  margin-left: calc(var(--grid-flex-gap) * -0.5) !important;
  margin-bottom: calc(var(--grid-flex-gap) * -0.5) !important;
}
.grid-flex .xs-1 {
  flex: 0 0 8.3333333333%;
  width: 8.3333333333%;
  max-width: 8.3333333333%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-1-center {
  flex: 0 0 8.3333333333%;
  width: 8.3333333333%;
  max-width: 8.3333333333%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-1-offset {
  flex: 0 0 8.3333333333%;
  width: 8.3333333333%;
  max-width: 8.3333333333%;
  margin-left: 8.3333333333%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-1 {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-2 {
  flex: 0 0 16.6666666667%;
  width: 16.6666666667%;
  max-width: 16.6666666667%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-2-center {
  flex: 0 0 16.6666666667%;
  width: 16.6666666667%;
  max-width: 16.6666666667%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-2-offset {
  flex: 0 0 16.6666666667%;
  width: 16.6666666667%;
  max-width: 16.6666666667%;
  margin-left: 16.6666666667%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-2 {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-3 {
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-3-center {
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-3-offset {
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%;
  margin-left: 25%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-3 {
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-4 {
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-4-center {
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-4-offset {
  flex: 0 0 33.3333333333%;
  width: 33.3333333333%;
  max-width: 33.3333333333%;
  margin-left: 33.3333333333%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-4 {
  flex: 0 0 25%;
  width: 25%;
  max-width: 25%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-5 {
  flex: 0 0 41.6666666667%;
  width: 41.6666666667%;
  max-width: 41.6666666667%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-5-center {
  flex: 0 0 41.6666666667%;
  width: 41.6666666667%;
  max-width: 41.6666666667%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-5-offset {
  flex: 0 0 41.6666666667%;
  width: 41.6666666667%;
  max-width: 41.6666666667%;
  margin-left: 41.6666666667%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-5 {
  flex: 0 0 20%;
  width: 20%;
  max-width: 20%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-6 {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-6-center {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-6-offset {
  flex: 0 0 50%;
  width: 50%;
  max-width: 50%;
  margin-left: 50%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-6 {
  flex: 0 0 16.6666666667%;
  width: 16.6666666667%;
  max-width: 16.6666666667%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-7 {
  flex: 0 0 58.3333333333%;
  width: 58.3333333333%;
  max-width: 58.3333333333%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-7-center {
  flex: 0 0 58.3333333333%;
  width: 58.3333333333%;
  max-width: 58.3333333333%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-7-offset {
  flex: 0 0 58.3333333333%;
  width: 58.3333333333%;
  max-width: 58.3333333333%;
  margin-left: 58.3333333333%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-7 {
  flex: 0 0 14.2857142857%;
  width: 14.2857142857%;
  max-width: 14.2857142857%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-8 {
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-8-center {
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-8-offset {
  flex: 0 0 66.6666666667%;
  width: 66.6666666667%;
  max-width: 66.6666666667%;
  margin-left: 66.6666666667%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-8 {
  flex: 0 0 12.5%;
  width: 12.5%;
  max-width: 12.5%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-9 {
  flex: 0 0 75%;
  width: 75%;
  max-width: 75%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-9-center {
  flex: 0 0 75%;
  width: 75%;
  max-width: 75%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-9-offset {
  flex: 0 0 75%;
  width: 75%;
  max-width: 75%;
  margin-left: 75%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-9 {
  flex: 0 0 11.1111111111%;
  width: 11.1111111111%;
  max-width: 11.1111111111%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-10 {
  flex: 0 0 83.3333333333%;
  width: 83.3333333333%;
  max-width: 83.3333333333%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-10-center {
  flex: 0 0 83.3333333333%;
  width: 83.3333333333%;
  max-width: 83.3333333333%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-10-offset {
  flex: 0 0 83.3333333333%;
  width: 83.3333333333%;
  max-width: 83.3333333333%;
  margin-left: 83.3333333333%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-10 {
  flex: 0 0 10%;
  width: 10%;
  max-width: 10%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-11 {
  flex: 0 0 91.6666666667%;
  width: 91.6666666667%;
  max-width: 91.6666666667%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-11-center {
  flex: 0 0 91.6666666667%;
  width: 91.6666666667%;
  max-width: 91.6666666667%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-11-offset {
  flex: 0 0 91.6666666667%;
  width: 91.6666666667%;
  max-width: 91.6666666667%;
  margin-left: 91.6666666667%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-11 {
  flex: 0 0 9.0909090909%;
  width: 9.0909090909%;
  max-width: 9.0909090909%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-12 {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-12-center {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-12-offset {
  flex: 0 0 100%;
  width: 100%;
  max-width: 100%;
  margin-left: 100%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex .xs-col-12 {
  flex: 0 0 8.3333333333%;
  width: 8.3333333333%;
  max-width: 8.3333333333%;
  margin: 0;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
@media (min-width: 640px) {
  .grid-flex .sm-1 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-1-center {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-1-offset {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin-left: 8.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-1 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-2 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-2-center {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-2-offset {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin-left: 16.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-2 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-3 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-3-center {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-3-offset {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin-left: 25%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-3 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-4 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-4-center {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-4-offset {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin-left: 33.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-4 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-5 {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-5-center {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-5-offset {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin-left: 41.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-5 {
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-6 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-6-center {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-6-offset {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin-left: 50%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-6 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-7 {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-7-center {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-7-offset {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin-left: 58.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-7 {
    flex: 0 0 14.2857142857%;
    width: 14.2857142857%;
    max-width: 14.2857142857%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-8 {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-8-center {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-8-offset {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin-left: 66.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-8 {
    flex: 0 0 12.5%;
    width: 12.5%;
    max-width: 12.5%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-9 {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-9-center {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-9-offset {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin-left: 75%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-9 {
    flex: 0 0 11.1111111111%;
    width: 11.1111111111%;
    max-width: 11.1111111111%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-10 {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-10-center {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-10-offset {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 83.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-10 {
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-11 {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-11-center {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-11-offset {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin-left: 91.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-11 {
    flex: 0 0 9.0909090909%;
    width: 9.0909090909%;
    max-width: 9.0909090909%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-12 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-12-center {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-12-offset {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin-left: 100%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .sm-col-12 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
}
@media (min-width: 768px) {
  .grid-flex .md-1 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-1-center {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-1-offset {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin-left: 8.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-1 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-2 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-2-center {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-2-offset {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin-left: 16.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-2 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-3 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-3-center {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-3-offset {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin-left: 25%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-3 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-4 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-4-center {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-4-offset {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin-left: 33.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-4 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-5 {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-5-center {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-5-offset {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin-left: 41.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-5 {
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-6 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-6-center {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-6-offset {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin-left: 50%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-6 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-7 {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-7-center {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-7-offset {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin-left: 58.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-7 {
    flex: 0 0 14.2857142857%;
    width: 14.2857142857%;
    max-width: 14.2857142857%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-8 {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-8-center {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-8-offset {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin-left: 66.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-8 {
    flex: 0 0 12.5%;
    width: 12.5%;
    max-width: 12.5%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-9 {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-9-center {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-9-offset {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin-left: 75%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-9 {
    flex: 0 0 11.1111111111%;
    width: 11.1111111111%;
    max-width: 11.1111111111%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-10 {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-10-center {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-10-offset {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 83.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-10 {
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-11 {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-11-center {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-11-offset {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin-left: 91.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-11 {
    flex: 0 0 9.0909090909%;
    width: 9.0909090909%;
    max-width: 9.0909090909%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-12 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-12-center {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-12-offset {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin-left: 100%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .md-col-12 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
}
@media (min-width: 1024px) {
  .grid-flex .lg-1 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-1-center {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-1-offset {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin-left: 8.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-1 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-2 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-2-center {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-2-offset {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin-left: 16.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-2 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-3 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-3-center {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-3-offset {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin-left: 25%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-3 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-4 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-4-center {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-4-offset {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin-left: 33.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-4 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-5 {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-5-center {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-5-offset {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin-left: 41.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-5 {
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-6 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-6-center {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-6-offset {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin-left: 50%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-6 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-7 {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-7-center {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-7-offset {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin-left: 58.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-7 {
    flex: 0 0 14.2857142857%;
    width: 14.2857142857%;
    max-width: 14.2857142857%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-8 {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-8-center {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-8-offset {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin-left: 66.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-8 {
    flex: 0 0 12.5%;
    width: 12.5%;
    max-width: 12.5%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-9 {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-9-center {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-9-offset {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin-left: 75%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-9 {
    flex: 0 0 11.1111111111%;
    width: 11.1111111111%;
    max-width: 11.1111111111%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-10 {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-10-center {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-10-offset {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 83.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-10 {
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-11 {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-11-center {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-11-offset {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin-left: 91.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-11 {
    flex: 0 0 9.0909090909%;
    width: 9.0909090909%;
    max-width: 9.0909090909%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-12 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-12-center {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-12-offset {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin-left: 100%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .lg-col-12 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
}
@media (min-width: 1280px) {
  .grid-flex .xl-1 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-1-center {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-1-offset {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin-left: 8.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-1 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-2 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-2-center {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-2-offset {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin-left: 16.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-2 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-3 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-3-center {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-3-offset {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin-left: 25%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-3 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-4 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-4-center {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-4-offset {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin-left: 33.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-4 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-5 {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-5-center {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-5-offset {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin-left: 41.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-5 {
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-6 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-6-center {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-6-offset {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin-left: 50%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-6 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-7 {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-7-center {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-7-offset {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin-left: 58.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-7 {
    flex: 0 0 14.2857142857%;
    width: 14.2857142857%;
    max-width: 14.2857142857%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-8 {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-8-center {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-8-offset {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin-left: 66.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-8 {
    flex: 0 0 12.5%;
    width: 12.5%;
    max-width: 12.5%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-9 {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-9-center {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-9-offset {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin-left: 75%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-9 {
    flex: 0 0 11.1111111111%;
    width: 11.1111111111%;
    max-width: 11.1111111111%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-10 {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-10-center {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-10-offset {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 83.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-10 {
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-11 {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-11-center {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-11-offset {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin-left: 91.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-11 {
    flex: 0 0 9.0909090909%;
    width: 9.0909090909%;
    max-width: 9.0909090909%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-12 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-12-center {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-12-offset {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin-left: 100%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xl-col-12 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
}
@media (min-width: 1440px) {
  .grid-flex .xxl-1 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-1-center {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-1-offset {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin-left: 8.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-1 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-2 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-2-center {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-2-offset {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin-left: 16.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-2 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-3 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-3-center {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-3-offset {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin-left: 25%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-3 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-4 {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-4-center {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-4-offset {
    flex: 0 0 33.3333333333%;
    width: 33.3333333333%;
    max-width: 33.3333333333%;
    margin-left: 33.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-4 {
    flex: 0 0 25%;
    width: 25%;
    max-width: 25%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-5 {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-5-center {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-5-offset {
    flex: 0 0 41.6666666667%;
    width: 41.6666666667%;
    max-width: 41.6666666667%;
    margin-left: 41.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-5 {
    flex: 0 0 20%;
    width: 20%;
    max-width: 20%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-6 {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-6-center {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-6-offset {
    flex: 0 0 50%;
    width: 50%;
    max-width: 50%;
    margin-left: 50%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-6 {
    flex: 0 0 16.6666666667%;
    width: 16.6666666667%;
    max-width: 16.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-7 {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-7-center {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-7-offset {
    flex: 0 0 58.3333333333%;
    width: 58.3333333333%;
    max-width: 58.3333333333%;
    margin-left: 58.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-7 {
    flex: 0 0 14.2857142857%;
    width: 14.2857142857%;
    max-width: 14.2857142857%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-8 {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-8-center {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-8-offset {
    flex: 0 0 66.6666666667%;
    width: 66.6666666667%;
    max-width: 66.6666666667%;
    margin-left: 66.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-8 {
    flex: 0 0 12.5%;
    width: 12.5%;
    max-width: 12.5%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-9 {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-9-center {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-9-offset {
    flex: 0 0 75%;
    width: 75%;
    max-width: 75%;
    margin-left: 75%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-9 {
    flex: 0 0 11.1111111111%;
    width: 11.1111111111%;
    max-width: 11.1111111111%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-10 {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-10-center {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-10-offset {
    flex: 0 0 83.3333333333%;
    width: 83.3333333333%;
    max-width: 83.3333333333%;
    margin-left: 83.3333333333%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-10 {
    flex: 0 0 10%;
    width: 10%;
    max-width: 10%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-11 {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-11-center {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-11-offset {
    flex: 0 0 91.6666666667%;
    width: 91.6666666667%;
    max-width: 91.6666666667%;
    margin-left: 91.6666666667%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-11 {
    flex: 0 0 9.0909090909%;
    width: 9.0909090909%;
    max-width: 9.0909090909%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-12 {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-12-center {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-12-offset {
    flex: 0 0 100%;
    width: 100%;
    max-width: 100%;
    margin-left: 100%;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
  .grid-flex .xxl-col-12 {
    flex: 0 0 8.3333333333%;
    width: 8.3333333333%;
    max-width: 8.3333333333%;
    margin: 0;
    padding: calc(var(--grid-flex-gap) * 0.5);
  }
}
.grid-flex > * {
  flex: 1 1 100%;
  width: 100%;
  max-width: 100%;
  padding: calc(var(--grid-flex-gap) * 0.5);
}
.grid-flex.gap-x0 {
  --grid-flex-gap: var(--tm-spacing-x0);
}
.grid-flex.gap-x05 {
  --grid-flex-gap: var(--tm-spacing-x05);
}
.grid-flex.gap-x1 {
  --grid-flex-gap: var(--tm-spacing-x1);
}
.grid-flex.gap-x2 {
  --grid-flex-gap: var(--tm-spacing-x2);
}
.grid-flex.gap-x3 {
  --grid-flex-gap: var(--tm-spacing-x3);
}
.grid-flex.gap-x4 {
  --grid-flex-gap: var(--tm-spacing-x4);
}
.grid-flex.gap-x6 {
  --grid-flex-gap: var(--tm-spacing-x6);
}
.grid-flex.gap-x8 {
  --grid-flex-gap: var(--tm-spacing-x8);
}
.grid-flex.gap-x10 {
  --grid-flex-gap: var(--tm-spacing-x10);
}
.grid-flex.gap-x12 {
  --grid-flex-gap: var(--tm-spacing-x12);
}
.grid-flex.gap-x16 {
  --grid-flex-gap: var(--tm-spacing-x16);
}
.grid-flex.gap-x20 {
  --grid-flex-gap: var(--tm-spacing-x20);
}
.grid-flex.gap-x24 {
  --grid-flex-gap: var(--tm-spacing-x24);
}
.grid-flex.gap-x32 {
  --grid-flex-gap: var(--tm-spacing-x32);
}
.grid-flex.gap-x40 {
  --grid-flex-gap: var(--tm-spacing-x40);
}
.grid-flex.xs-gap-x0 {
  --grid-flex-gap: var(--tm-spacing-x0);
}
.grid-flex.xs-gap-x05 {
  --grid-flex-gap: var(--tm-spacing-x05);
}
.grid-flex.xs-gap-x1 {
  --grid-flex-gap: var(--tm-spacing-x1);
}
.grid-flex.xs-gap-x2 {
  --grid-flex-gap: var(--tm-spacing-x2);
}
.grid-flex.xs-gap-x3 {
  --grid-flex-gap: var(--tm-spacing-x3);
}
.grid-flex.xs-gap-x4 {
  --grid-flex-gap: var(--tm-spacing-x4);
}
.grid-flex.xs-gap-x6 {
  --grid-flex-gap: var(--tm-spacing-x6);
}
.grid-flex.xs-gap-x8 {
  --grid-flex-gap: var(--tm-spacing-x8);
}
.grid-flex.xs-gap-x10 {
  --grid-flex-gap: var(--tm-spacing-x10);
}
.grid-flex.xs-gap-x12 {
  --grid-flex-gap: var(--tm-spacing-x12);
}
.grid-flex.xs-gap-x16 {
  --grid-flex-gap: var(--tm-spacing-x16);
}
.grid-flex.xs-gap-x20 {
  --grid-flex-gap: var(--tm-spacing-x20);
}
.grid-flex.xs-gap-x24 {
  --grid-flex-gap: var(--tm-spacing-x24);
}
.grid-flex.xs-gap-x32 {
  --grid-flex-gap: var(--tm-spacing-x32);
}
.grid-flex.xs-gap-x40 {
  --grid-flex-gap: var(--tm-spacing-x40);
}
@media (min-width: 640px) {
  .grid-flex.sm-gap-x0 {
    --grid-flex-gap: var(--tm-spacing-x0);
  }
  .grid-flex.sm-gap-x05 {
    --grid-flex-gap: var(--tm-spacing-x05);
  }
  .grid-flex.sm-gap-x1 {
    --grid-flex-gap: var(--tm-spacing-x1);
  }
  .grid-flex.sm-gap-x2 {
    --grid-flex-gap: var(--tm-spacing-x2);
  }
  .grid-flex.sm-gap-x3 {
    --grid-flex-gap: var(--tm-spacing-x3);
  }
  .grid-flex.sm-gap-x4 {
    --grid-flex-gap: var(--tm-spacing-x4);
  }
  .grid-flex.sm-gap-x6 {
    --grid-flex-gap: var(--tm-spacing-x6);
  }
  .grid-flex.sm-gap-x8 {
    --grid-flex-gap: var(--tm-spacing-x8);
  }
  .grid-flex.sm-gap-x10 {
    --grid-flex-gap: var(--tm-spacing-x10);
  }
  .grid-flex.sm-gap-x12 {
    --grid-flex-gap: var(--tm-spacing-x12);
  }
  .grid-flex.sm-gap-x16 {
    --grid-flex-gap: var(--tm-spacing-x16);
  }
  .grid-flex.sm-gap-x20 {
    --grid-flex-gap: var(--tm-spacing-x20);
  }
  .grid-flex.sm-gap-x24 {
    --grid-flex-gap: var(--tm-spacing-x24);
  }
  .grid-flex.sm-gap-x32 {
    --grid-flex-gap: var(--tm-spacing-x32);
  }
  .grid-flex.sm-gap-x40 {
    --grid-flex-gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 768px) {
  .grid-flex.md-gap-x0 {
    --grid-flex-gap: var(--tm-spacing-x0);
  }
  .grid-flex.md-gap-x05 {
    --grid-flex-gap: var(--tm-spacing-x05);
  }
  .grid-flex.md-gap-x1 {
    --grid-flex-gap: var(--tm-spacing-x1);
  }
  .grid-flex.md-gap-x2 {
    --grid-flex-gap: var(--tm-spacing-x2);
  }
  .grid-flex.md-gap-x3 {
    --grid-flex-gap: var(--tm-spacing-x3);
  }
  .grid-flex.md-gap-x4 {
    --grid-flex-gap: var(--tm-spacing-x4);
  }
  .grid-flex.md-gap-x6 {
    --grid-flex-gap: var(--tm-spacing-x6);
  }
  .grid-flex.md-gap-x8 {
    --grid-flex-gap: var(--tm-spacing-x8);
  }
  .grid-flex.md-gap-x10 {
    --grid-flex-gap: var(--tm-spacing-x10);
  }
  .grid-flex.md-gap-x12 {
    --grid-flex-gap: var(--tm-spacing-x12);
  }
  .grid-flex.md-gap-x16 {
    --grid-flex-gap: var(--tm-spacing-x16);
  }
  .grid-flex.md-gap-x20 {
    --grid-flex-gap: var(--tm-spacing-x20);
  }
  .grid-flex.md-gap-x24 {
    --grid-flex-gap: var(--tm-spacing-x24);
  }
  .grid-flex.md-gap-x32 {
    --grid-flex-gap: var(--tm-spacing-x32);
  }
  .grid-flex.md-gap-x40 {
    --grid-flex-gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 1024px) {
  .grid-flex.lg-gap-x0 {
    --grid-flex-gap: var(--tm-spacing-x0);
  }
  .grid-flex.lg-gap-x05 {
    --grid-flex-gap: var(--tm-spacing-x05);
  }
  .grid-flex.lg-gap-x1 {
    --grid-flex-gap: var(--tm-spacing-x1);
  }
  .grid-flex.lg-gap-x2 {
    --grid-flex-gap: var(--tm-spacing-x2);
  }
  .grid-flex.lg-gap-x3 {
    --grid-flex-gap: var(--tm-spacing-x3);
  }
  .grid-flex.lg-gap-x4 {
    --grid-flex-gap: var(--tm-spacing-x4);
  }
  .grid-flex.lg-gap-x6 {
    --grid-flex-gap: var(--tm-spacing-x6);
  }
  .grid-flex.lg-gap-x8 {
    --grid-flex-gap: var(--tm-spacing-x8);
  }
  .grid-flex.lg-gap-x10 {
    --grid-flex-gap: var(--tm-spacing-x10);
  }
  .grid-flex.lg-gap-x12 {
    --grid-flex-gap: var(--tm-spacing-x12);
  }
  .grid-flex.lg-gap-x16 {
    --grid-flex-gap: var(--tm-spacing-x16);
  }
  .grid-flex.lg-gap-x20 {
    --grid-flex-gap: var(--tm-spacing-x20);
  }
  .grid-flex.lg-gap-x24 {
    --grid-flex-gap: var(--tm-spacing-x24);
  }
  .grid-flex.lg-gap-x32 {
    --grid-flex-gap: var(--tm-spacing-x32);
  }
  .grid-flex.lg-gap-x40 {
    --grid-flex-gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 1280px) {
  .grid-flex.xl-gap-x0 {
    --grid-flex-gap: var(--tm-spacing-x0);
  }
  .grid-flex.xl-gap-x05 {
    --grid-flex-gap: var(--tm-spacing-x05);
  }
  .grid-flex.xl-gap-x1 {
    --grid-flex-gap: var(--tm-spacing-x1);
  }
  .grid-flex.xl-gap-x2 {
    --grid-flex-gap: var(--tm-spacing-x2);
  }
  .grid-flex.xl-gap-x3 {
    --grid-flex-gap: var(--tm-spacing-x3);
  }
  .grid-flex.xl-gap-x4 {
    --grid-flex-gap: var(--tm-spacing-x4);
  }
  .grid-flex.xl-gap-x6 {
    --grid-flex-gap: var(--tm-spacing-x6);
  }
  .grid-flex.xl-gap-x8 {
    --grid-flex-gap: var(--tm-spacing-x8);
  }
  .grid-flex.xl-gap-x10 {
    --grid-flex-gap: var(--tm-spacing-x10);
  }
  .grid-flex.xl-gap-x12 {
    --grid-flex-gap: var(--tm-spacing-x12);
  }
  .grid-flex.xl-gap-x16 {
    --grid-flex-gap: var(--tm-spacing-x16);
  }
  .grid-flex.xl-gap-x20 {
    --grid-flex-gap: var(--tm-spacing-x20);
  }
  .grid-flex.xl-gap-x24 {
    --grid-flex-gap: var(--tm-spacing-x24);
  }
  .grid-flex.xl-gap-x32 {
    --grid-flex-gap: var(--tm-spacing-x32);
  }
  .grid-flex.xl-gap-x40 {
    --grid-flex-gap: var(--tm-spacing-x40);
  }
}
@media (min-width: 1440px) {
  .grid-flex.xxl-gap-x0 {
    --grid-flex-gap: var(--tm-spacing-x0);
  }
  .grid-flex.xxl-gap-x05 {
    --grid-flex-gap: var(--tm-spacing-x05);
  }
  .grid-flex.xxl-gap-x1 {
    --grid-flex-gap: var(--tm-spacing-x1);
  }
  .grid-flex.xxl-gap-x2 {
    --grid-flex-gap: var(--tm-spacing-x2);
  }
  .grid-flex.xxl-gap-x3 {
    --grid-flex-gap: var(--tm-spacing-x3);
  }
  .grid-flex.xxl-gap-x4 {
    --grid-flex-gap: var(--tm-spacing-x4);
  }
  .grid-flex.xxl-gap-x6 {
    --grid-flex-gap: var(--tm-spacing-x6);
  }
  .grid-flex.xxl-gap-x8 {
    --grid-flex-gap: var(--tm-spacing-x8);
  }
  .grid-flex.xxl-gap-x10 {
    --grid-flex-gap: var(--tm-spacing-x10);
  }
  .grid-flex.xxl-gap-x12 {
    --grid-flex-gap: var(--tm-spacing-x12);
  }
  .grid-flex.xxl-gap-x16 {
    --grid-flex-gap: var(--tm-spacing-x16);
  }
  .grid-flex.xxl-gap-x20 {
    --grid-flex-gap: var(--tm-spacing-x20);
  }
  .grid-flex.xxl-gap-x24 {
    --grid-flex-gap: var(--tm-spacing-x24);
  }
  .grid-flex.xxl-gap-x32 {
    --grid-flex-gap: var(--tm-spacing-x32);
  }
  .grid-flex.xxl-gap-x40 {
    --grid-flex-gap: var(--tm-spacing-x40);
  }
}

:root {
  --header-height: 80px;
}

.header {
  width: 100%;
  background-color: var(--tm-color-white);
  padding: 16px 40px;
  position: sticky;
  top: 0;
  z-index: 100;
  transition: transform 0.3s ease;
}
.header.is-hidden {
  transform: translateY(-100%);
}
@media (max-width: 767.98px) {
  .header {
    padding: 0 0 0 12px;
  }
}
.header__container {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: var(--tm-spacing-x0);
}
.header__logo {
  display: flex;
  align-items: center;
  gap: 11px;
}
.header__logo-image {
  height: 48px;
  width: auto;
  -o-object-fit: contain;
  object-fit: contain;
}
@media (max-width: 767.98px) {
  .header__logo-image {
    height: 36px;
  }
}
.header__nav-list {
  display: flex;
  gap: 32px;
}
.header__nav-link {
  font-family: var(--tm-font-family-jp);
  font-weight: var(--tm-font-weight-bold);
  font-size: 16px;
  letter-spacing: 0.06em;
  color: var(--tm-color-text-default);
  transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .header__nav-link:hover {
    opacity: 0.7;
  }
}

.hamburger-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 999;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0.3s;
}
.hamburger-overlay.is-active {
  opacity: 1;
  visibility: visible;
}

.hamburger-menu {
  position: fixed;
  top: 8px;
  left: 8px;
  right: 8px;
  width: calc(100% - 16px);
  height: auto;
  background-color: rgba(80, 92, 124, 0.9);
  backdrop-filter: blur(4px);
  border-radius: 16px;
  color: #fff;
  padding: 80px 45px 45px;
  box-sizing: border-box;
  z-index: 1000;
  transform: translateY(28px);
  opacity: 0;
  visibility: hidden;
  transition: transform 0.5s cubic-bezier(0.22, 1, 0.36, 1), opacity 0.4s ease, visibility 0.5s;
}
.hamburger-menu.is-active {
  transform: translateY(0);
  opacity: 1;
  visibility: visible;
}
@media (min-width: 1024px) {
  .hamburger-menu {
    display: none;
  }
}
.hamburger-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.hamburger-menu ul li a {
  color: #fff;
  text-decoration: none;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.06em;
  display: inline-block;
  padding: 0 0 4px;
  border-bottom: 1px solid #ffffff;
  transition: opacity 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .hamburger-menu ul li a:hover {
    opacity: 0.7;
  }
}
.hamburger-menu .close-button {
  position: absolute;
  top: 10px;
  right: 12px;
  width: 34px;
  height: 34px;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
}
.hamburger-menu .close-button span {
  display: block;
  position: absolute;
  height: 1px;
  width: 24px;
  background-color: #fff;
}
.hamburger-menu .close-button span:first-child {
  transform: rotate(45deg);
}
.hamburger-menu .close-button span:last-child {
  transform: rotate(-45deg);
}
.hamburger-menu__banner {
  margin-top: 40px;
  width: 100%;
}
.hamburger-menu__banner a {
  display: block;
  line-height: 0;
  transition: opacity 0.2s;
}
@media (hover: hover) and (pointer: fine) {
  .hamburger-menu__banner a:hover {
    opacity: 0.8;
  }
}
.hamburger-menu__banner img {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}

.hamburger-icon {
  display: none;
  flex-direction: column;
  justify-content: center;
  width: 60px;
  height: 60px;
  padding: 16px;
  gap: 6px;
  cursor: pointer;
  z-index: 100;
}
@media (max-width: 1023.98px) {
  .hamburger-icon {
    display: flex;
  }
}
.hamburger-icon span {
  display: block;
  height: 2px;
  width: 100%;
  background-color: var(--tm-color-primary-40);
  transition: all 0.3s;
}

@media (max-width: 1023.98px) {
  .header__nav {
    display: none;
  }
}
/*----------------------------------------
  Footer
----------------------------------------*/
.footer {
  container-type: inline-size;
  container-name: footer;
  width: 100%;
  background-color: var(--tm-color-natural-20);
}
.footer__banner-container {
  background-color: var(--tm-color-white);
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2rem;
  padding: 4.8rem 5.6rem;
  border-top: 1px solid #DDDDDD;
}
@container footer (width <= 1024px) {
  .footer__banner-container {
    padding: 3.2rem 2.4rem;
    gap: 1.2rem;
  }
}
.footer__banner {
  display: block;
  width: 22.337rem;
  height: 7rem;
  transition: opacity 0.3s ease;
}
@media (hover: hover) and (pointer: fine) {
  .footer__banner:hover {
    opacity: 0.7;
  }
}
@container footer (width <= 1024px) {
  .footer__banner {
    width: 16.5rem;
    height: 5.171rem;
  }
}
.footer__banner img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}
.footer__info-container {
  max-width: 124.8rem;
  margin: 0 auto;
  padding: 7.2rem 5.6rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.2rem;
}
@container footer (width <= 1024px) {
  .footer__info-container {
    padding: 4.8rem 2.4rem;
    gap: 2rem;
  }
}
.footer__heading {
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-transform: uppercase;
  color: var(--tm-color-white);
  text-align: center;
  margin: 0;
}
@container footer (width <= 1024px) {
  .footer__heading {
    font-size: var(--tm-font-size-md);
    line-height: 1.69;
    letter-spacing: 0.03em;
    line-height: 1.5;
    opacity: 0.8;
  }
}
.footer__address-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.4rem;
}
.footer__address-line {
  font-size: 1.5rem;
  line-height: 1.75;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.9);
  text-align: center;
  margin: 0;
}
.footer__address-line:nth-child(2), .footer__address-line:nth-child(3) {
  font-family: var(--tm-font-family-en);
  line-height: 2.4;
}
.footer__bottom-container {
  padding: 2.6rem 8rem;
  border-top: 1px solid #3C455D;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@container footer (width <= 1024px) {
  .footer__bottom-container {
    flex-direction: column;
    padding: 2.8rem 2.4rem;
    gap: 2.4rem;
  }
}
.footer__links {
  display: flex;
  align-items: center;
  gap: 3.2rem;
}
.footer__link {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.5;
  text-transform: uppercase;
  color: var(--tm-color-white);
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .footer__link:hover {
    text-decoration: underline;
  }
}
.footer__copyright {
  font-family: var(--tm-font-family-en);
  font-size: 1.2rem;
  line-height: 1.5;
  text-transform: capitalize;
  color: var(--tm-color-white);
  margin: 0;
}
@container footer (width <= 1024px) {
  .footer__copyright {
    font-size: 1.1rem;
  }
}

/*----------------------------------------
  Breadcrumb
----------------------------------------*/
.breadcrumb {
  container-type: inline-size;
  container-name: breadcrumb;
  background-color: #F3F4F7;
}
.breadcrumb__container {
  padding: 12px 24px;
}
@media (min-width: 768px) {
  .breadcrumb__container {
    padding: 16px 40px;
  }
}
.breadcrumb__list {
  display: flex;
  gap: 8px;
  align-items: center;
  list-style: none;
  padding: 0;
  margin: 0;
  white-space: nowrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.breadcrumb__list::-webkit-scrollbar {
  display: none;
}
.breadcrumb__list {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.breadcrumb__item {
  font-size: 12px;
}
@media (min-width: 768px) {
  .breadcrumb__item {
    font-size: 14px;
  }
}
.breadcrumb__item {
  line-height: 1.71em;
  color: #595959;
  display: flex;
  align-items: center;
  gap: 8px;
}
.breadcrumb__link {
  color: #595959;
  text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
  .breadcrumb__link:hover {
    text-decoration: underline;
  }
}
.breadcrumb__separator {
  color: #595959;
}
.breadcrumb__current {
  color: #1442A3;
}

/*----------------------------------------
  Page Header
----------------------------------------*/
.c-page-header {
  container-type: inline-size;
  container-name: page-header;
  position: relative;
  width: 100%;
  display: flex;
  align-items: stretch;
  overflow: hidden;
}
.c-page-header__bg {
  position: absolute;
  inset: 0;
  background-image: var(--page-header-bg-image, url("/images/common/page-header-bg.webp"));
  background-size: cover;
  background-position: center;
}
.c-page-header__deco {
  position: absolute;
  top: -2.8rem;
  left: -2.4rem;
  width: 9.6rem;
  height: 9.6rem;
  pointer-events: none;
  overflow: hidden;
}
.c-page-header__deco img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
}
@media (min-width: 768px) {
  .c-page-header__deco {
    top: -8.15rem;
    left: -6.05rem;
    width: 22.7rem;
    height: 22.7rem;
  }
}
.c-page-header__container {
  position: relative;
  z-index: 1;
  width: 100%;
  height: 15.6rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) {
  .c-page-header__container {
    height: 23.2rem;
  }
}
.c-page-header__container::after {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url("/images/common/noise.svg");
  background-size: 120px;
  background-repeat: repeat;
  mix-blend-mode: screen;
  opacity: 0.25;
  pointer-events: none;
}
.c-page-header__container {
  backdrop-filter: blur(0.1rem);
}
.c-page-header.is-variant .c-page-header__container {
  background-color: var(--tm-color-page-header-bg-blur);
  backdrop-filter: blur(2rem);
}
.c-page-header__content {
  padding: var(--tm-spacing-x6) var(--tm-spacing-x12);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--tm-spacing-x3);
  text-wrap: balance;
}
@media (min-width: 768px) {
  .c-page-header__content {
    padding: var(--tm-spacing-x8) var(--tm-spacing-x16);
    gap: var(--tm-spacing-x6);
  }
}
@media (min-width: 768px) {
  .c-page-header__content {
    padding: var(--tm-spacing-x8) var(--tm-spacing-x16);
    gap: var(--tm-spacing-x4);
  }
}
.c-page-header.is-variant .c-page-header__content {
  gap: var(--tm-spacing-x4);
}
@media (min-width: 768px) {
  .c-page-header.is-variant .c-page-header__content {
    gap: var(--tm-spacing-x6);
  }
}
.c-page-header__title-ja {
  font-size: var(--tm-font-size-xl);
  font-weight: var(--tm-font-weight-bold);
  letter-spacing: 0.08em;
  line-height: 1.35;
  color: var(--tm-color-white);
  text-align: center;
  margin: 0;
}
@media (min-width: 768px) {
  .c-page-header__title-ja {
    font-size: var(--tm-font-size-5xl);
  }
}
.c-page-header__title-en {
  font-family: var(--tm-font-family-accent);
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-xs);
  line-height: 1.75;
  letter-spacing: 0.04em;
  font-size: 1rem;
  line-height: 1.05;
  letter-spacing: 0.1em;
  color: var(--tm-color-white);
  text-transform: uppercase;
  text-align: center;
  margin: 0;
}
@media (min-width: 768px) {
  .c-page-header__title-en {
    font-size: var(--tm-font-size-sm);
    line-height: 1.72;
    letter-spacing: 0.03em;
  }
}

.l-page-content {
  max-width: var(--tm-container-max-width);
  margin-inline: auto;
  padding: var(--tm-spacing-x10) var(--tm-spacing-x6) var(--tm-spacing-x20);
}
@media (min-width: 768px) {
  .l-page-content {
    padding: var(--tm-spacing-x20) 8vw var(--tm-spacing-x40);
  }
}
* + .l-page-content__section {
  margin-top: var(--tm-section-gap-lv1);
}
* + .l-page-content__subsection {
  margin-top: var(--tm-section-gap-lv2);
}
* + .l-page-content__block {
  margin-top: var(--tm-section-gap-lv3);
}
.l-page-content__section > :where(* + *:not(.c-heading)), .l-page-content__subsection > :where(* + *:not(.c-heading)), .l-page-content__block > :where(* + *:not(.c-heading)) {
  margin-top: var(--tm-paragraph-gap);
}
.l-page-content__section > .c-heading + *, .l-page-content__subsection > .c-heading + *, .l-page-content__block > .c-heading + * {
  margin-top: 0;
}
* + .l-page-content__subsection {
  margin-top: var(--tm-section-gap-lv2);
}
* + .l-page-content__block {
  margin-top: var(--tm-section-gap-lv3);
}

.c-component-nav {
  position: fixed;
  right: 0;
  top: 50%;
  transform: translateY(-50%) translateX(220px);
  z-index: 900;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  transition: transform 0.25s ease-out;
}
.c-component-nav.is-open {
  transform: translateY(-50%) translateX(0);
}
.c-component-nav__toggle {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  background-color: var(--tm-color-primary-40);
  color: var(--tm-color-white);
  border: none;
  border-radius: 8px 0 0 8px;
  cursor: pointer;
  transition: background-color var(--tm-transition);
  box-shadow: var(--tm-shadow);
  font-size: 22px;
}
@media (hover: hover) and (pointer: fine) {
  .c-component-nav__toggle:hover {
    background-color: var(--tm-color-primary-30);
  }
}
.c-component-nav__panel {
  width: 220px;
  max-height: 60vh;
  overflow-y: auto;
  background-color: var(--tm-color-white);
  border: 1px solid var(--tm-color-border-default);
  border-right: none;
  border-radius: 0 0 0 8px;
  box-shadow: var(--tm-shadow-large);
  padding: 8px 0;
}
.c-component-nav__section + .c-component-nav__section {
  border-top: 1px solid var(--tm-color-border-subtle);
  margin-top: 4px;
  padding-top: 4px;
}
.c-component-nav__heading {
  font-size: 10px;
  font-family: var(--tm-font-family-en);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--tm-color-text-subtle);
  padding: 6px 16px 2px;
}
.c-component-nav__list {
  display: flex;
  flex-direction: column;
}
.c-component-nav__link {
  display: block;
  font-size: 12px;
  color: var(--tm-color-text-default);
  padding: 8px 16px;
  text-decoration: none;
  border-left: 2px solid transparent;
  transition: background-color var(--tm-transition), color var(--tm-transition), border-color var(--tm-transition);
  white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
  .c-component-nav__link:hover {
    background-color: var(--tm-color-primary-98);
    color: var(--tm-color-primary-40);
    border-left-color: var(--tm-color-primary-60);
  }
}
.c-component-nav__link.is-active {
  color: var(--tm-color-primary-40);
  font-weight: var(--tm-font-weight-bold);
  border-left-color: var(--tm-color-primary-40);
  background-color: var(--tm-color-primary-98);
}
.c-component-nav__link.is-current {
  color: var(--tm-color-primary-40);
  font-weight: var(--tm-font-weight-bold);
  border-left-color: var(--tm-color-primary-40);
  background-color: var(--tm-color-primary-98);
  cursor: default;
  pointer-events: none;
}

.c-icon-showcase {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(12rem, 1fr));
  gap: 0.8rem;
}
.c-icon-showcase__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  padding: 1.6rem 0.8rem;
  border: 1px solid var(--tm-color-border-subtle);
  border-radius: var(--tm-border-radius-sm);
  background-color: var(--tm-color-gray-98);
  text-align: center;
}
.c-icon-showcase__symbol {
  font-size: 2.4rem;
  color: var(--tm-color-gray-20);
}
.c-icon-showcase__name {
  font-size: 1.1rem;
  color: var(--tm-color-gray-50);
  word-break: break-all;
  line-height: 1.4;
}

.c-component-label {
  display: inline-block;
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-xs);
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: var(--tm-color-gray-50);
  background-color: var(--tm-color-gray-95);
  border-radius: var(--tm-border-radius-sm);
  padding: 0.2rem 0.8rem;
  letter-spacing: 0.05em;
}
.c-component-label + *:not(.grid-flex) {
  margin-top: var(--tm-spacing-x3) !important; /* 次にくる要素の上の余白を消す */
}

.c-heading:first-child,
.c-heading.is-lv2:first-child,
.c-heading.is-lv3:first-child,
.c-heading.is-lv4:first-child {
  margin-top: 0;
}

.c-heading {
  margin-top: var(--tm-section-gap-lv1);
  margin-bottom: var(--tm-heading-gap-lv1);
  padding-left: var(--tm-spacing-x4);
  position: relative;
  font-family: var(--tm-font-family-jp);
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-xl);
  line-height: 1.63;
  letter-spacing: 0.02em;
}
.c-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: 4px;
  bottom: 2px;
  width: 4px;
  background-color: var(--tm-color-primary-40);
  border-radius: var(--tm-border-radius-xs);
}
@media (min-width: 768px) {
  .c-heading {
    font-size: var(--tm-font-size-3xl);
    line-height: 1.57;
    letter-spacing: 0;
    padding-left: var(--tm-spacing-x4);
  }
  .c-heading::before {
    bottom: 0;
    width: 5px;
  }
}
.c-heading.is-lv2 {
  margin-top: var(--tm-section-gap-lv2);
  margin-bottom: var(--tm-heading-gap-lv2);
  padding-left: 0;
  color: var(--tm-color-primary-40);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
}
.c-heading.is-lv2::before {
  display: none;
}
@media (min-width: 768px) {
  .c-heading.is-lv2 {
    font-size: var(--tm-font-size-2xl);
    line-height: 1.6;
    letter-spacing: 0.01em;
  }
}
.c-heading.is-lv3 {
  margin-top: var(--tm-section-gap-lv3);
  margin-bottom: var(--tm-heading-gap-lv3);
  padding-left: 0;
  color: var(--tm-color-primary-40);
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .c-heading.is-lv3 {
    font-size: var(--tm-font-size-xl);
    line-height: 1.63;
    letter-spacing: 0.02em;
  }
}
.c-heading.is-lv3::before {
  display: none;
}
.c-heading.is-lv4 {
  margin-top: var(--tm-section-gap-lv4);
  margin-bottom: var(--tm-heading-gap-lv4);
  padding-left: 0;
  color: var(--tm-color-primary-40);
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .c-heading.is-lv4 {
    font-size: var(--tm-font-size-lg);
    line-height: 1.66;
    letter-spacing: 0.02em;
  }
}
.c-heading.is-lv4::before {
  display: none;
}

.code-block-container {
  margin: var(--tm-spacing-x6) 0;
  position: relative;
}
.code-block-container .type {
  background-color: var(--tm-color-gray-98);
  color: var(--tm-color-gray-10);
  font-size: var(--tm-font-size-xs);
  font-weight: var(--tm-font-weight-bold);
  padding: 0.375em 1em;
  position: absolute;
  top: 0;
  left: 0;
}
.code-block-container pre {
  padding: 2.5em 1em 1em;
}

code {
  font-family: "SFMono-Regular", "Consolas", "Liberation Mono", "Menlo", monospace, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 0.9em;
  font-weight: var(--tm-font-weight-normal);
  color: var(--tm-color-red-60);
  background-color: var(--tm-color-gray-95);
  border-radius: var(--tm-border-radius-xs);
  padding: 0.15em 0.45em;
  vertical-align: 0.05em;
}

pre {
  background-color: #1a2638;
  overflow-x: auto;
  padding: 1em;
  white-space: pre-wrap;
  word-wrap: break-word;
}
pre code {
  background-color: transparent;
  color: var(--tm-color-white);
  padding: 0;
}

pre.dev {
  background-color: var(--tm-color-gray-20);
}
pre.dev code {
  background-color: transparent;
  color: var(--tm-color-gray-40);
  font-size: 0.75rem;
}

.fs-xs {
  font-size: var(--tm-font-size-xs);
  line-height: 1.75;
  letter-spacing: 0.04em;
}

.fs-sm {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
}

.fs-md {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}

.fs-lg {
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
}

.fs-xl {
  font-size: var(--tm-font-size-xl);
  line-height: 1.63;
  letter-spacing: 0.02em;
}

.fs-2xl {
  font-size: var(--tm-font-size-2xl);
  line-height: 1.6;
  letter-spacing: 0.01em;
}

.fs-3xl {
  font-size: var(--tm-font-size-3xl);
  line-height: 1.57;
  letter-spacing: 0;
}

.fs-4xl {
  font-size: var(--tm-font-size-4xl);
  line-height: 1.54;
  letter-spacing: 0;
}

.fs-5xl {
  font-size: var(--tm-font-size-5xl);
  line-height: 1.52;
  letter-spacing: 0;
}

.fs-6xl {
  font-size: var(--tm-font-size-6xl);
  line-height: 1.5;
  letter-spacing: 0;
}

.fs-7xl {
  font-size: var(--tm-font-size-7xl);
  line-height: 1.5;
  letter-spacing: 0;
}

.fs-8xl {
  font-size: var(--tm-font-size-8xl);
  line-height: 1.5;
  letter-spacing: -0.01em;
}

.paragraph {
  text-rendering: optimizeLegibility;
}
.paragraph:not(:last-child) {
  margin-bottom: var(--tm-paragraph-gap);
}

.text-link {
  display: inline-flex;
  align-items: center;
  gap: 0.2em;
}
.text-link .material-symbols-rounded {
  font-size: 0.875em;
  line-height: 1;
}

.notes {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  color: var(--tm-color-text-subtle);
  padding-left: 1em;
  text-indent: -1em;
}
.notes::before {
  content: "※";
  font-family: sans-serif;
}

img.c-img, img.c-img.is-fill {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: var(--tm-border-radius-md);
  margin-inline: auto;
}
img.c-img:not(:last-child), img.c-img.is-fill:not(:last-child) {
  margin-bottom: var(--tm-spacing-x12);
}
img.c-img.is-fill {
  width: 100%;
}

.c-figure {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
}
.c-figure.is-center {
  margin-inline: auto;
}
.c-figure img {
  display: block;
  max-width: 100%;
  height: auto;
  border-radius: var(--tm-border-radius-md);
}
.c-figure__caption {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  color: var(--tm-color-text-subtle);
  margin-top: 0.5em;
}
.c-figure:not(:last-child) {
  margin-bottom: var(--tm-spacing-x12);
}

.grid img.c-img,
.grid img.c-img.is-fill,
.grid .c-figure img {
  width: 100%;
}

.c-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--tm-border-radius-infinity);
  min-width: 12em;
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.5;
  padding: 1.15em 2.9em;
  position: relative;
  cursor: pointer;
  overflow: hidden;
  transition: background-color 0.3s, opacity 0.2s, box-shadow 0.3s, transform 0.3s;
  text-decoration: none;
}
.c-button::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.12);
  transform: translateX(-101%);
  transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  border-radius: none;
  pointer-events: none;
}
@media (hover: hover) and (pointer: fine) {
  .c-button:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 22px rgba(0, 0, 0, 0.15);
  }
  .c-button:hover::before {
    z-index: -1;
    transform: translateX(0);
  }
  .c-button:hover .c-button__icon {
    transform: translateY(-50%) translateX(5px);
  }
}
.c-button.is-primary {
  background-color: var(--tm-color-primary-40);
  border: none;
}
.c-button.is-primary .c-button__text {
  color: var(--tm-color-white);
}
.c-button.is-primary .c-button__text:has(+ .c-button__icon) {
  margin-left: -0.4em;
}
.c-button.is-primary .c-button__icon {
  color: var(--tm-color-white);
}
@media (hover: hover) and (pointer: fine) {
  .c-button.is-primary:hover {
    background-color: var(--tm-color-primary-60);
  }
}
.c-button.is-primary:disabled, .c-button.is-primary[aria-disabled=true] {
  opacity: 0.4;
  pointer-events: none;
}
.c-button.is-secondary {
  background-color: var(--tm-color-white);
  border: 2px solid var(--tm-color-border-subtle);
}
.c-button.is-secondary::before {
  background-color: var(--tm-color-background-hovered);
}
.c-button.is-secondary .c-button__text {
  color: var(--tm-color-text-default);
}
.c-button.is-secondary .c-button__text:has(+ .c-button__icon) {
  margin-left: -0.4em;
}
.c-button.is-secondary .c-button__icon {
  color: var(--tm-color-gray-40);
}
.c-button.is-secondary:disabled, .c-button.is-secondary[aria-disabled=true] {
  opacity: 0.4;
  pointer-events: none;
}
.c-button.is-tertiary {
  background-color: var(--tm-color-white);
  border: 2px solid var(--tm-color-border-subtle);
  border-radius: var(--tm-border-radius-md);
}
.c-button.is-tertiary::before {
  background-color: var(--tm-color-background-hovered);
}
.c-button.is-tertiary {
  justify-content: flex-start;
  padding-left: 1.2em;
}
.c-button.is-tertiary .c-button__text {
  text-align: left;
  color: var(--tm-color-text-default);
}
.c-button.is-tertiary .c-button__icon {
  color: var(--tm-color-gray-40);
  right: 0.6em;
}
.c-button.is-tertiary:disabled, .c-button.is-tertiary[aria-disabled=true] {
  opacity: 0.4;
  pointer-events: none;
}
.c-button__text {
  flex: 1;
  line-height: 1.5;
  text-align: center;
}
.c-button__icon {
  position: absolute;
  right: 0.8em;
  top: 50%;
  transform: translateY(-50%);
  flex-shrink: 0;
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  font-family: "Material Symbols Rounded";
  font-size: 1.2em;
  font-weight: 400;
  font-style: normal;
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;
  line-height: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

.c-button-showcase {
  display: flex;
  flex-wrap: wrap;
  gap: 1.6rem;
  align-items: center;
}

.c-accordion {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x2);
  width: 100%;
}
.c-accordion__item {
  border: 1px solid var(--tm-color-border-default);
  border-radius: var(--tm-border-radius-md);
  overflow: hidden;
}
.c-accordion__item[open] {
  background-color: var(--tm-color-background-highlight);
}
.c-accordion__item[open] .c-accordion__summary {
  padding-bottom: var(--tm-spacing-x3);
}
.c-accordion__summary {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x4);
  padding: var(--tm-spacing-x4);
  cursor: pointer;
  list-style: none;
}
.c-accordion__summary::-webkit-details-marker {
  display: none;
}
@media (min-width: 768px) {
  .c-accordion__summary {
    padding: var(--tm-spacing-x6);
  }
}
.c-accordion__title {
  flex: 1;
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
  line-height: 1.5;
  font-weight: var(--tm-font-weight-bold);
  color: var(--tm-color-text-default);
}
@media (min-width: 768px) {
  .c-accordion__title {
    font-size: var(--tm-font-size-lg);
    line-height: 1.66;
    letter-spacing: 0.02em;
  }
}
.c-accordion__toggle {
  flex-shrink: 0;
  width: 2.4rem;
  height: 2.4rem;
  border: 1px solid var(--tm-color-border-default);
  border-radius: 50%;
  background-color: var(--tm-color-white);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--tm-color-primary-40);
  font-variation-settings: "FILL" 0, "wght" 400, "GRAD" 0, "opsz" 20;
  line-height: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  transition: color 0.2s, transform 0.3s ease;
}
.c-accordion__item[open] .c-accordion__toggle {
  transform: rotate(45deg);
}
.c-accordion__body {
  padding: 0 var(--tm-spacing-x4) var(--tm-spacing-x4);
  overflow: hidden;
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .c-accordion__body {
    padding: 0 var(--tm-spacing-x6) var(--tm-spacing-x6);
    font-size: var(--tm-font-size-md);
    line-height: 1.69;
    letter-spacing: 0.03em;
  }
}
.c-accordion__body > :where(* + *) {
  margin-top: var(--tm-paragraph-gap);
}

.list,
.list-notes,
dl.list {
  --list-gap: 0.5em;
  --list-indent: 1.5em;
  --list-line-height: 1.5;
  --dl-label-space: 0.5em;
  --dl-item-gap: 1.25em;
}

ul.list,
ol.list {
  display: flex;
  flex-direction: column;
  row-gap: var(--list-gap);
  width: 100%;
  padding-inline-start: 0;
  line-height: var(--list-line-height);
  margin-block: 0;
}
ul.list > li,
ol.list > li {
  display: list-item;
  list-style-position: outside;
}
ul.list .list,
ol.list .list {
  margin-block-start: var(--list-gap);
  padding-inline-start: var(--list-indent);
}
ul.list.indent, ul.list.disc, ul.list.square, ul.list.list-notes, ul.list[type],
ol.list.indent,
ol.list.disc,
ol.list.square,
ol.list.list-notes,
ol.list[type] {
  padding-inline-start: var(--list-indent);
}
ul.list.disc,
ol.list.disc {
  list-style-type: disc;
}
ul.list.square,
ol.list.square {
  list-style-type: square;
}
ul.list.list-notes,
ol.list.list-notes {
  list-style: none;
}
ul.list.list-notes > li,
ol.list.list-notes > li {
  position: relative;
}
ul.list.list-notes > li::before,
ol.list.list-notes > li::before {
  content: "※";
  position: absolute;
  inset-inline-end: 100%;
  inset-block-start: 0;
}
ul.list.horizontal,
ol.list.horizontal {
  flex-direction: row;
  flex-wrap: wrap;
  -moz-column-gap: 2.5em;
  column-gap: 2.5em;
}

ol.list[type] {
  list-style: revert-layer;
}

dl.list dt {
  font-weight: var(--tm-font-weight-bold);
  margin-block-end: var(--dl-label-space);
}
dl.list dt:not(:first-child) {
  margin-block-start: var(--dl-item-gap);
}
dl.list.is-2col dt {
  margin-block-end: 0;
}
dl.list.is-2col > div {
  display: flex;
  flex-direction: column;
  gap: var(--dl-label-space);
  padding-block-end: 1.2em;
  border-bottom: 1px solid var(--tm-color-border-default);
  margin-block-end: 1.2em;
}
dl.list.is-2col > div:last-child {
  margin-block-end: 0;
  padding-block-end: 0;
  border-bottom: none;
}
@media (min-width: 768px) {
  dl.list.is-2col > div {
    flex-direction: row;
    align-items: flex-start;
    gap: var(--dl-label-space);
  }
}
dl.list.is-2col dt {
  flex-shrink: 0;
}
@media (min-width: 768px) {
  dl.list.is-2col dt {
    width: 10em;
  }
}
dl.list.is-2col dd {
  flex: 1;
}

.c-flowchart {
  container-type: inline-size;
  container-name: flowchart;
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  gap: 1.2rem;
}
.c-flowchart__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  width: 100%;
}
.c-flowchart__item:last-child .c-flowchart__arrow {
  display: none;
}
.c-flowchart__box {
  border: 1px solid var(--tm-color-border-variant);
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
  padding: var(--tm-spacing-x6) var(--tm-spacing-x4);
  width: 100%;
  position: relative;
}
@media (min-width: 768px) {
  .c-flowchart__box {
    padding: var(--tm-spacing-x8);
  }
}
.c-flowchart__number-badge {
  flex-shrink: 0;
  position: absolute;
  top: -1.2rem;
  left: -1rem;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 50%;
  background-color: var(--tm-color-primary-95);
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--tm-font-family-en);
  font-size: 1.575rem;
  color: var(--tm-color-primary-40);
}
@media (min-width: 768px) {
  .c-flowchart__number-badge {
    position: static;
    width: 4.4rem;
    height: 4.4rem;
    font-size: var(--tm-font-size-lg);
    line-height: 1.66;
    letter-spacing: 0.02em;
  }
}
.c-flowchart__text-container {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 0.8rem;
  min-width: 0;
}
@media (min-width: 768px) {
  .c-flowchart__text-container {
    gap: 1.2rem;
    padding-top: 0.4rem;
  }
}
.c-flowchart__figure {
  flex-shrink: 0;
}
.c-flowchart__figure img {
  max-width: 100%;
  height: auto;
  display: block;
}
.c-flowchart__image {
  width: 100%;
}
.c-flowchart__image img {
  max-width: 100%;
  height: auto;
  display: block;
}
.c-flowchart__title {
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
  color: var(--tm-color-primary-40);
}
@media (min-width: 768px) {
  .c-flowchart__title {
    font-size: var(--tm-font-size-lg);
    line-height: 1.66;
    letter-spacing: 0.02em;
  }
}
.c-flowchart__body {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .c-flowchart__body {
    font-size: var(--tm-font-size-md);
    line-height: 1.69;
    letter-spacing: 0.03em;
  }
}
.c-flowchart__arrow {
  width: 2.8rem;
  height: 1.4rem;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  background-color: var(--tm-color-primary-60);
  flex-shrink: 0;
}

.c-table-scroll {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.c-table {
  width: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.c-table__th, .c-table__td {
  padding: 1em 1.25em;
  border: 1px solid var(--tm-color-border-variant);
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.5;
  text-align: left;
  vertical-align: top;
}
@media (min-width: 768px) {
  .c-table__th, .c-table__td {
    padding: 1.1em 1.375em;
    font-size: var(--tm-font-size-md);
    line-height: 1.69;
    letter-spacing: 0.03em;
  }
}
.c-table thead th,
.c-table thead td {
  text-align: center;
}
.c-table__th {
  background-color: var(--tm-color-background-default);
  font-weight: var(--tm-font-weight-normal);
}
.c-table__th.is-header {
  background-color: var(--tm-color-primary-40);
  color: var(--tm-color-white);
  text-align: center;
}
.c-table__td {
  font-weight: var(--tm-font-weight-normal);
  background-color: var(--tm-color-white);
}
.c-table__th.is-full {
  width: 100%;
}
.c-table.is-fixed {
  table-layout: fixed;
}
.c-table.is-block {
  border-bottom: 1px solid var(--tm-color-border-variant);
}
@media (min-width: 1024px) {
  .c-table.is-block {
    border-bottom: none;
  }
}
.c-table.is-block .c-table__th,
.c-table.is-block .c-table__td {
  display: block;
  width: 100%;
}
@media (min-width: 1024px) {
  .c-table.is-block .c-table__th,
  .c-table.is-block .c-table__td {
    display: table-cell;
    width: auto;
  }
}
.c-table.is-block .c-table__th {
  border-bottom: none;
}
@media (min-width: 1024px) {
  .c-table.is-block .c-table__th {
    border-bottom: 1px solid var(--tm-color-border-variant);
  }
}
.c-table.is-block .c-table__td {
  border-bottom: none;
}
@media (min-width: 1024px) {
  .c-table.is-block .c-table__td {
    border-bottom: 1px solid var(--tm-color-border-variant);
  }
}

.c-color-palette {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem;
}

.c-color-swatch {
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
  width: 12rem;
}
.c-color-swatch--inline {
  flex-direction: row;
  align-items: center;
  width: auto;
  gap: 1rem;
}
.c-color-swatch__chip {
  width: 100%;
  height: 8rem;
  border-radius: var(--tm-border-radius-sm);
  border: 1px solid transparent;
}
.c-color-swatch__chip--bordered {
  border-color: var(--tm-color-border-variant);
}
.c-color-swatch__chip--sm {
  width: 3.2rem;
  height: 3.2rem;
  flex-shrink: 0;
}
.c-color-swatch__chip--border-preview {
  width: 100%;
  height: 3.2rem;
  border: 2px solid;
  border-radius: var(--tm-border-radius-sm);
}
.c-color-swatch__label {
  display: flex;
  flex-direction: column;
  gap: 0.2rem;
}
.c-color-swatch__name {
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-xs);
  line-height: 1.75;
  letter-spacing: 0.04em;
  color: var(--tm-color-text-subtle);
  word-break: break-all;
}

.frame-border {
  background-color: var(--tm-color-white);
  border: 1px solid var(--tm-color-border-default);
  padding: var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .frame-border {
    padding: var(--tm-spacing-x8);
  }
}

.frame-mat {
  background-color: var(--tm-color-background-default);
  padding: var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .frame-mat {
    padding: var(--tm-spacing-x8);
  }
}

.block {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}

.frame-heading {
  font-weight: var(--tm-font-weight-bold);
  margin-bottom: 1.2rem;
}

.frame-body > *:last-child {
  margin-bottom: 0;
}

.c-slider {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.2rem;
  width: 100%;
}
.c-slider__inner {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
}
@media (min-width: 768px) {
  .c-slider__inner {
    gap: 2rem;
    max-width: 860px;
  }
}
.c-slider__slides {
  flex: 1;
  min-width: 0;
  overflow: hidden;
}
.c-slider__list {
  display: flex;
}
.c-slider__item {
  flex-shrink: 0;
  width: 100%;
}
.c-slider__item img {
  width: 100%;
  height: auto;
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  aspect-ratio: 4/3;
}
@media (min-width: 768px) {
  .c-slider__item img {
    aspect-ratio: 3/2;
  }
}
.c-slider__btn {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3.2rem;
  height: 3.2rem;
  background-color: var(--tm-color-white);
  border: none;
  border-radius: 50%;
  box-shadow: 0 0 0.8rem rgba(0, 0, 0, 0.12);
  cursor: pointer;
  transition: background-color var(--tm-transition), opacity var(--tm-transition);
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
}
@media (min-width: 768px) {
  .c-slider__btn {
    position: static;
    transform: none;
    width: 5.2rem;
    height: 5.2rem;
  }
}
.c-slider__btn .material-symbols-rounded {
  font-size: 1.4rem;
  color: var(--tm-color-text-default);
}
@media (min-width: 768px) {
  .c-slider__btn .material-symbols-rounded {
    font-size: 1.8rem;
  }
}
.c-slider__btn.is-prev {
  left: -1.6rem;
}
@media (min-width: 768px) {
  .c-slider__btn.is-prev {
    left: auto;
  }
}
.c-slider__btn.is-next {
  right: -1.6rem;
}
@media (min-width: 768px) {
  .c-slider__btn.is-next {
    right: auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-slider__btn:hover {
    background-color: var(--tm-color-background-default);
  }
}
.c-slider__btn.swiper-button-disabled {
  opacity: 0.3;
  cursor: default;
  pointer-events: none;
}
.c-slider__counter {
  font-family: var(--tm-font-family-en);
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  color: var(--tm-color-text-subtle);
  text-align: center;
}
.c-slider__counter-sep {
  margin: 0 0.4rem;
}

.c-iframe {
  display: block;
  width: 100%;
  overflow: hidden;
}
.c-iframe iframe {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
  vertical-align: bottom;
}
.c-iframe.is-movie {
  aspect-ratio: 16/9;
}
.c-iframe.is-movie iframe {
  aspect-ratio: 16/9;
}
.c-iframe.is-map {
  aspect-ratio: 4/3;
}
@media (min-width: 768px) {
  .c-iframe.is-map {
    aspect-ratio: unset;
    height: 43.2rem;
  }
}
.c-iframe__map-link {
  display: inline-flex;
  align-items: center;
  margin-top: 0.8em;
  color: var(--tm-color-text-subtle);
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  text-decoration: underline;
}
.c-iframe__map-link .material-symbols-rounded {
  font-size: 1em;
}
.c-iframe__map-link:hover {
  opacity: 0.7;
}

.p-top__hero {
  width: 100%;
  aspect-ratio: 390/520;
  position: relative;
  display: flex;
  align-items: center;
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-top__hero {
    aspect-ratio: unset;
    height: calc(100dvh - var(--header-height));
  }
}
.p-top__hero__slides {
  position: absolute !important;
  inset: 0 !important;
  z-index: 0 !important;
}
.p-top__hero__slide {
  width: 100%;
  height: 100%;
  position: relative;
}
.p-top__hero__slide::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
}
.p-top__hero__slide.is-overlay::after {
  background: linear-gradient(15deg, rgba(1, 25, 36, 0.55) 0%, rgba(1, 25, 36, 0.54) 12.5%, rgba(1, 25, 36, 0.505) 25.5%, rgba(1, 25, 36, 0.435) 39.5%, rgba(1, 25, 36, 0.325) 54.5%, rgba(1, 25, 36, 0.185) 71.5%, rgba(1, 25, 36, 0.08) 86.5%, rgba(1, 25, 36, 0.05) 100%);
}
@media (min-width: 768px) {
  .p-top__hero__slide.is-overlay::after {
    background: linear-gradient(90deg, rgba(1, 25, 36, 0.55) 0%, rgba(1, 25, 36, 0.541) 9.2%, rgba(1, 25, 36, 0.511) 18.9%, rgba(1, 25, 36, 0.449) 30.1%, rgba(1, 25, 36, 0.352) 43.6%, rgba(1, 25, 36, 0.228) 60.1%, rgba(1, 25, 36, 0.109) 79.4%, rgba(1, 25, 36, 0.05) 100%);
  }
}
.p-top__hero__slide.is-kenburns-unified .p-top__hero__image {
  transform-origin: center center;
  animation: kb-unified-zoom-in 7s ease-out forwards;
}
@keyframes kb-unified-zoom-in {
  from {
    transform: scale(1.08);
  }
  to {
    transform: scale(1);
  }
}
.p-top__hero__picture {
  width: 100%;
  height: 115%;
  position: absolute;
  top: -7.5%;
  left: 0;
}
.p-top__hero__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
  transform-origin: center center;
}
.p-top__hero__image.is-kb-reset {
  animation: none;
}
.p-top__hero__text-container {
  display: flex;
  position: absolute;
  bottom: var(--tm-spacing-x10);
  left: var(--tm-spacing-x8);
  right: var(--tm-spacing-x8);
  flex-direction: column;
  gap: var(--tm-spacing-x3);
  z-index: 3;
  padding-right: 40px;
}
.p-top__hero__text-container:empty {
  display: none;
}
@media (min-width: 768px) {
  .p-top__hero__text-container {
    bottom: unset;
    right: unset;
    top: 50%;
    left: 7.4vw;
    transform: translateY(-50%);
    gap: clamp(1.2rem, 1.8vw, 2.4rem);
  }
}
.p-top__hero__heading {
  font-family: var(--tm-font-family-serif);
  font-size: clamp(1.4rem, 5.5vw, 4rem);
  line-height: 1.5;
  letter-spacing: 0.22em;
  font-feature-settings: "palt";
  color: var(--tm-color-white);
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .p-top__hero__heading {
    font-size: clamp(28px, 2.7vw, 4rem);
  }
}
.p-top__hero__subheading {
  font-size: clamp(1.2rem, 2.6vw, 1.8rem);
  letter-spacing: 0.06em;
  color: var(--tm-color-white);
}
@media (min-width: 768px) {
  .p-top__hero__subheading {
    font-size: clamp(16px, 1.2vw, 1.8rem);
  }
}
.p-top__hero__progress {
  position: absolute;
  right: var(--tm-spacing-x4);
  top: 50%;
  height: 45%;
  transform: translateY(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  z-index: 3;
}
@media (min-width: 768px) {
  .p-top__hero__progress {
    height: 36vh;
    right: 2.8rem;
  }
}
.p-top__hero__progress-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0;
  flex-grow: 1;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
@media (hover: hover) and (pointer: fine) {
  .p-top__hero__progress-item:hover .p-top__hero__progress-number {
    opacity: 1;
  }
}
.p-top__hero__progress-number {
  font-family: var(--tm-font-family-accent);
  font-weight: var(--tm-font-weight-bold);
  font-size: 0.9rem;
  letter-spacing: 0.1em;
  color: var(--tm-color-white);
  line-height: 1;
  padding: 0.6rem 0;
  opacity: 0.4;
  transition: opacity 0.3s ease;
  flex-grow: 0;
}
.p-top__hero__progress-item.is-active .p-top__hero__progress-number {
  opacity: 1;
}
@media (min-width: 768px) {
  .p-top__hero__progress-number {
    font-size: 1.1rem;
  }
}
.p-top__hero__progress-bar {
  width: 1px;
  background-color: rgba(255, 255, 255, 0.3);
  overflow: hidden;
  display: block;
  flex-grow: 1;
}
.p-top__hero__progress-fill {
  display: block;
  width: 100%;
  height: 100%;
  background-color: var(--tm-color-white);
  transform: scaleY(0);
  transform-origin: top center;
}
.p-top__hero__progress-item.is-active .p-top__hero__progress-fill {
  animation: hero-progress-fill var(--hero-autoplay-delay, 6000ms) linear forwards;
}
@keyframes hero-progress-fill {
  from {
    transform: scaleY(0);
  }
  to {
    transform: scaleY(1);
  }
}
.p-top__hero__company-name {
  display: none;
}
@media (min-width: 768px) {
  .p-top__hero__company-name {
    display: block;
    position: absolute;
    bottom: clamp(4rem, 6vw, 8.1rem);
    left: clamp(4rem, 7.4vw, 10rem);
    font-family: var(--tm-font-family-accent);
    font-weight: var(--tm-font-weight-bold);
    line-height: 1.05;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: var(--tm-color-white);
    white-space: nowrap;
    z-index: 3;
  }
}
.p-top__hero__scroll-button {
  display: flex;
  position: absolute;
  right: 2rem;
  bottom: 2.8rem;
  width: 44px;
  height: 44px;
  background-color: transparent;
  border: 1px solid var(--tm-color-white);
  border-radius: 50%;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  z-index: 3;
  opacity: 0;
  transition: background-color 0.3s ease;
}
@media (min-width: 768px) {
  .p-top__hero__scroll-button {
    right: 2.8rem;
    bottom: 2.8rem;
    width: 72px;
    height: 72px;
    border-width: 2px;
  }
}
@media (hover: hover) and (pointer: fine) {
  .p-top__hero__scroll-button:hover {
    background-color: rgba(255, 255, 255, 0.3);
  }
}
.p-top__hero__scroll-arrow {
  display: block;
  width: 10px;
  height: 10px;
  border-right: 1px solid var(--tm-color-white);
  border-bottom: 1px solid var(--tm-color-white);
  transform: rotate(45deg);
  margin-top: -4px;
  animation: scroll-arrow-drop 1.5s infinite;
}
@media (min-width: 768px) {
  .p-top__hero__scroll-arrow {
    width: 14px;
    height: 14px;
    border-width: 2px;
  }
}
@keyframes scroll-arrow-drop {
  0% {
    transform: translateY(-12px) rotate(45deg);
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  100% {
    transform: translateY(10px) rotate(45deg);
    opacity: 0;
  }
}

.p-top__hero-label {
  padding: var(--tm-spacing-x10) 0;
}
.p-top__hero-label__clip {
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-top__hero-label {
    display: none;
  }
}
.p-top__hero-label__track {
  display: flex;
  gap: 0;
  width: -moz-max-content;
  width: max-content;
  animation: hero-label-marquee 32s linear infinite;
}
.p-top__hero-label__text {
  font-family: var(--tm-font-family-accent);
  font-weight: var(--tm-font-weight-bold);
  font-size: clamp(2rem, 4vw, 3rem);
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
  padding-right: 4rem;
}
@keyframes hero-label-marquee {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-50%);
  }
}

.p-top__article {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .p-top__article {
    flex-direction: row;
    min-height: 600px;
  }
  .p-top__article.is-reverse {
    flex-direction: row-reverse;
  }
}
.p-top__article__eye-catch {
  aspect-ratio: 390/260;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: 2.2rem 2rem;
  position: relative;
  overflow: hidden;
}
.p-top__article__eye-catch::before {
  content: "";
  position: absolute;
  inset: -20% 0;
  background-size: cover;
  background-position: center;
  z-index: 0;
  will-change: transform;
  transform: translateY(var(--parallax-y, 0%));
}
.p-top__article__eye-catch::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: var(--tm-color-overlay-business);
  pointer-events: none;
  z-index: 1;
}
@media (min-width: 768px) {
  .p-top__article__eye-catch {
    aspect-ratio: 68/60;
    flex: 0 0 50%;
    padding: var(--tm-spacing-x10) var(--tm-spacing-x8);
    justify-content: flex-end;
  }
}
.p-top__article__eye-catch.is-medical::before {
  background-image: url("/images/top/business-medical-sp.webp");
}
.p-top__article__eye-catch.is-medical .p-top__article__eye-catch-title {
  color: var(--tm-color-white);
}
@media (min-width: 768px) {
  .p-top__article__eye-catch.is-medical::before {
    background-image: url("/images/top/business-medical.webp");
  }
}
.p-top__article__eye-catch.is-nursing::before {
  background-image: url("/images/top/business-nursing-sp.webp");
}
.p-top__article__eye-catch.is-nursing .p-top__article__eye-catch-title {
  color: var(--tm-color-white);
}
@media (min-width: 768px) {
  .p-top__article__eye-catch.is-nursing::before {
    background-image: url("/images/top/business-nursing.webp");
  }
}
.p-top__article__eye-catch.is-amg::before {
  background-image: url("/images/top/business-amg-sp.webp");
}
.p-top__article__eye-catch.is-amg .p-top__article__eye-catch-title {
  color: var(--tm-color-white);
}
@media (min-width: 768px) {
  .p-top__article__eye-catch.is-amg::before {
    background-image: url("/images/top/business-amg.webp");
  }
}
.p-top__article__eye-catch-title {
  font-family: var(--tm-font-family-accent);
  font-weight: var(--tm-font-weight-bold);
  font-size: 2.4rem;
  line-height: 1.05;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .p-top__article__eye-catch-title {
    font-size: 4.2rem;
  }
}
@media (min-width: 768px) {
  .p-top__article.is-reverse .p-top__article__eye-catch-title {
    text-align: right;
  }
}
.p-top__article__eye-catch-decoration {
  position: absolute;
  top: -4rem;
  left: -4rem;
  width: 13.6rem;
  height: 13.6rem;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  z-index: 2;
}
@media (min-width: 768px) {
  .p-top__article__eye-catch-decoration {
    top: -64px;
    left: -64px;
    width: 228px;
    height: 228px;
  }
}
.p-top__article__eye-catch-decoration.is-star {
  background-image: url("/images/common/deco/medical-deco.webp");
}
.p-top__article__eye-catch-decoration.is-triangle {
  background-image: url("/images/common/deco/nursing-deco.webp");
}
.p-top__article__eye-catch-decoration.is-rectangle {
  background-image: url("/images/common/deco/amg-deco.webp");
}
.p-top__article__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: var(--tm-spacing-x12) var(--tm-spacing-x6) 5.2rem;
}
@media (min-width: 768px) {
  .p-top__article__content {
    flex: 0 0 50%;
    padding: 7vw;
    align-items: center;
  }
}
.p-top__article__content.is-medical {
  background-color: var(--tm-color-primary-98);
}
.p-top__article__content.is-nursing {
  background-color: var(--tm-color-white);
}
.p-top__article__content.is-amg {
  background-color: var(--tm-color-white);
}
.p-top__article__content-box {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
  width: 100%;
}
@media (min-width: 768px) {
  .p-top__article__content-box {
    max-width: 680px;
    gap: var(--tm-spacing-x12);
  }
}
.p-top__article__title-wrapper {
  display: flex;
  flex-direction: column;
  gap: 1.4rem;
  position: relative;
}
@media (min-width: 768px) {
  .p-top__article__title-wrapper {
    gap: var(--tm-spacing-x3);
  }
}
.p-top__article__title {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  color: var(--tm-color-text-subtle);
}
@media (min-width: 768px) {
  .p-top__article__title {
    font-size: var(--tm-font-size-lg);
    line-height: 1.66;
    letter-spacing: 0.02em;
    color: var(--tm-color-gray-20);
  }
}
.p-top__article__divider {
  width: 52px;
  height: 2px;
  background-color: var(--tm-color-section-medical);
}
.p-top__article__divider.is-nursing {
  background-color: var(--tm-color-section-nursing);
}
.p-top__article__divider.is-amg {
  background-color: var(--tm-color-section-amg);
}
.p-top__article__number {
  position: absolute;
  top: -2.2rem;
  left: -0.1rem;
  font-family: var(--tm-font-family-en);
  font-weight: var(--tm-font-weight-bold);
  font-size: 1rem;
  color: var(--tm-color-section-medical);
}
@media (min-width: 768px) {
  .p-top__article__number {
    font-size: var(--tm-font-size-sm);
    line-height: 1.72;
    letter-spacing: 0.03em;
    top: -26px;
    left: -29px;
  }
}
.p-top__article__number.is-nursing {
  color: var(--tm-color-section-nursing);
}
.p-top__article__number.is-amg {
  color: var(--tm-color-section-amg);
}
.p-top__article__items {
  display: flex;
  flex-direction: column;
  gap: 2.8rem;
}
@media (min-width: 768px) {
  .p-top__article__items {
    gap: var(--tm-spacing-x10);
  }
}
.p-top__article__body {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}
.p-top__article__list > li {
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-md);
}
@media (min-width: 768px) {
  .p-top__article__list > li {
    font-size: var(--tm-font-size-lg);
  }
}
.p-top__article__description {
  font-size: 1.5rem;
  color: var(--tm-color-gray-20);
}
@media (min-width: 768px) {
  .p-top__article__description {
    font-size: var(--tm-font-size-md);
    line-height: 1.69;
    letter-spacing: 0.03em;
  }
}
.p-top__article__button-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--tm-spacing-x2);
}
@media (min-width: 768px) {
  .p-top__article__button-wrapper {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: unset;
    gap: 16px;
  }
}

.p-top__company {
  position: relative;
  padding: var(--tm-spacing-x12) var(--tm-spacing-x6) var(--tm-spacing-x16);
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-top__company {
    padding: var(--tm-spacing-x32) var(--tm-spacing-x20);
  }
}
.p-top__company::before {
  content: "";
  position: absolute;
  inset: -20% 0;
  background-image: url("/images/top/company-bg.webp");
  background-size: cover;
  background-position: center;
  z-index: 0;
  will-change: transform;
  transform: translateY(var(--parallax-y, 0%));
}
.p-top__company__container {
  position: relative;
  z-index: 2;
  max-width: 100%;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .p-top__company__container {
    max-width: 102.4rem;
    flex-direction: row;
    align-items: flex-start;
    gap: var(--tm-spacing-x16);
  }
}
.p-top__company__title-box {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}
@media (min-width: 768px) {
  .p-top__company__title-box {
    width: auto;
    flex-shrink: 0;
  }
}
.p-top__company__title-ja {
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  color: var(--tm-color-white);
  white-space: nowrap;
}
@media (min-width: 768px) {
  .p-top__company__title-ja {
    font-size: var(--tm-font-size-xl);
    line-height: 1.63;
    letter-spacing: 0.02em;
    line-height: 1.35;
    letter-spacing: 0.08em;
  }
}
.p-top__company__title-en {
  display: block;
  position: relative;
  z-index: 1;
  font-family: var(--tm-font-family-accent);
  font-weight: var(--tm-font-weight-bold);
  font-size: 4.2rem;
  color: var(--tm-color-white);
  text-transform: uppercase;
  pointer-events: none;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  width: 100%;
  margin-bottom: var(--tm-spacing-x2);
  order: 0;
}
@media (min-width: 768px) {
  .p-top__company__title-en {
    position: absolute;
    left: 6rem;
    top: 12rem;
    text-align: unset;
    width: auto;
    margin-bottom: 0;
    order: unset;
    font-size: 8rem;
    transform: rotate(90deg);
    transform-origin: left top;
    white-space: nowrap;
    z-index: 3;
  }
}
.p-top__company__details {
  width: 100%;
  background-color: var(--tm-color-white);
  padding: var(--tm-spacing-x8) var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .p-top__company__details {
    flex: 1;
    padding: var(--tm-spacing-x16);
  }
}
.p-top__company__details a {
  color: var(--tm-color-text-subtle);
}

.p-top__licence__text a {
  color: var(--tm-color-text-subtle);
}

.p-top__recruitment {
  padding: var(--tm-spacing-x12) var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .p-top__recruitment {
    padding: 8.8rem 11.8rem;
  }
}
.p-top__recruitment__container {
  max-width: 100%;
  margin: 0 auto;
  border-radius: var(--tm-border-radius-md);
  overflow: hidden;
}
@media (min-width: 768px) {
  .p-top__recruitment__container {
    max-width: 112.4rem;
    border-radius: var(--tm-border-radius-lg);
  }
}
.p-top__recruitment__link {
  display: block;
  transition: opacity 0.3s;
}
@media (hover: hover) and (pointer: fine) {
  .p-top__recruitment__link:hover {
    opacity: 0.9;
  }
}
.p-top__recruitment__image {
  width: 100%;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
  display: block;
}

.js-mask-wrap {
  display: block;
  overflow: hidden;
}

.js-mask-inner {
  display: block;
  transform: translateY(110%);
}

.p-top__access {
  background-color: var(--tm-color-natural-95);
  padding: var(--tm-spacing-x12) var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .p-top__access {
    padding: var(--tm-spacing-x20) 8.8rem;
  }
}
.p-top__access__container {
  max-width: 118.4rem;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .p-top__access__container {
    gap: var(--tm-spacing-x8);
  }
}
.p-top__access__heading {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x3);
}
@media (min-width: 768px) {
  .p-top__access__heading {
    gap: var(--tm-spacing-x4);
  }
}
.p-top__access__subheading {
  font-family: var(--tm-font-family-accent);
  font-weight: var(--tm-font-weight-bold);
  font-size: 2.8rem;
  line-height: 1.05;
  color: var(--tm-color-primary-40);
  text-transform: uppercase;
}
@media (min-width: 768px) {
  .p-top__access__subheading {
    font-size: var(--tm-font-size-8xl);
    line-height: 1.5;
    letter-spacing: -0.01em;
  }
}
.p-top__access__title {
  font-family: var(--tm-font-family-jp);
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  line-height: 1.35;
  letter-spacing: 0.08em;
  color: var(--tm-color-primary-40);
}
@media (min-width: 768px) {
  .p-top__access__title {
    font-size: var(--tm-font-size-xl);
    line-height: 1.63;
    letter-spacing: 0.02em;
  }
}
.p-top__access__info-container {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}
@media (min-width: 1024px) {
  .p-top__access__info-container {
    flex-direction: row;
    gap: var(--tm-spacing-x12);
  }
}
.p-top__access__map {
  flex: none;
}
@media (min-width: 1024px) {
  .p-top__access__map {
    flex: 0 0 63.3rem;
    display: flex;
    flex-direction: column;
  }
  .p-top__access__map .c-iframe {
    flex-grow: 1;
  }
}
.p-top__access__address-container {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x3);
}
@media (min-width: 1024px) {
  .p-top__access__address-container {
    flex: 1;
    gap: var(--tm-spacing-x8);
  }
}
.p-top__access__address-box {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x3);
}
.p-top__access__company-name {
  font-weight: var(--tm-font-weight-bold);
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
  line-height: 1.5;
  text-transform: uppercase;
  color: var(--tm-color-gray-20);
}
@media (min-width: 768px) {
  .p-top__access__company-name {
    font-size: var(--tm-font-size-lg);
    line-height: 1.66;
    letter-spacing: 0.02em;
  }
}
.p-top__access__company-address {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
  color: var(--tm-color-gray-20);
}
.p-top__access__transport-info {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x4);
}
.p-top__access__transport-icon {
  font-size: var(--tm-font-size-2xl) !important;
}
.p-top__access__transport-box {
  background-color: var(--tm-color-white);
  padding: var(--tm-spacing-x6) 2.8rem 2.8rem;
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x4);
}
.p-top__access__transport-header {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}
.p-top__access__transport-description {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
  color: var(--tm-color-gray-20);
}
.p-top__access__note {
  display: flex;
  gap: var(--tm-spacing-x1);
  align-items: flex-start;
}
.p-top__access__note-symbol {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  flex-shrink: 0;
}
.p-top__access__note-text {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
}

/*----------------------------------------
  404 Page
----------------------------------------*/
.p-404 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.6rem;
}
.p-404__illustration {
  width: 26.4rem;
  height: auto;
  display: block;
}
@media (max-width: 767.98px) {
  .p-404__illustration {
    width: 18rem;
  }
}
.p-404__body {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.6rem;
  width: 100%;
}
.p-404__text-group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.8rem;
  text-align: center;
}
.p-404__code {
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-7xl);
  line-height: 1.5;
  letter-spacing: 0;
  color: var(--tm-color-primary-40);
  margin: 0;
}
@media (max-width: 767.98px) {
  .p-404__code {
    font-size: var(--tm-font-size-4xl);
    line-height: 1.54;
    letter-spacing: 0;
  }
}
.p-404__description {
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  margin: 0;
}
@media (max-width: 767.98px) {
  .p-404__description {
    font-size: var(--tm-font-size-sm);
    line-height: 1.72;
    letter-spacing: 0.03em;
  }
}

.p-nursing__access-info {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
  flex: 1;
}
.p-nursing__access-block {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x4);
}
.p-nursing__access-block p {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}
.p-nursing__access-label {
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  color: var(--tm-color-primary-40);
}
.p-nursing__access-rule {
  border: none;
  border-top: 1px solid var(--tm-color-border-default);
  margin: 0;
}
.p-nursing__transport {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x4);
}
.p-nursing__transport-item {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x1);
}
.p-nursing__transport-item p {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}
.p-nursing__transport-head {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x1);
}
.p-nursing__transport-head .material-symbols-rounded {
  font-size: var(--tm-font-size-2xl);
  color: var(--tm-color-text-default);
}
.p-nursing__transport-head span:last-child {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}
.p-nursing__contact {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}
.p-nursing__contact-box {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x2);
}
.p-nursing__contact-category {
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  color: var(--tm-color-primary-40);
}
.p-nursing__contact-row {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x6);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
}
@media (max-width: 767.98px) {
  .p-nursing__contact-row {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--tm-spacing-x1);
  }
}
.p-nursing__contact-term {
  flex-shrink: 0;
}
.p-nursing__contact-tel {
  display: flex;
  align-items: baseline;
  gap: var(--tm-spacing-x1);
  line-height: 1.75;
}
.p-nursing__contact-tel-label {
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  width: var(--tm-spacing-x10);
  flex-shrink: 0;
}
.p-nursing__contact-tel-num {
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-xl);
  line-height: 1.63;
  letter-spacing: 0.02em;
}
.p-nursing__contact-mail {
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  color: var(--tm-color-text-subtle);
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
@media (hover: hover) and (pointer: fine) {
  .p-nursing__contact-mail:hover {
    opacity: 0.7;
  }
}

.p-links-grid {
  display: flex;
  flex-direction: column;
  gap: 1.6rem;
}
@media (min-width: 768px) {
  .p-links-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
  }
}

.p-links-group {
  display: flex;
  flex-direction: column;
}
@media (min-width: 768px) {
  .p-links-group {
    border-left: 1px solid var(--tm-color-border-variant);
  }
  .p-links-group:last-child {
    border-right: 1px solid var(--tm-color-border-variant);
  }
}

.p-links-group__label {
  background-color: var(--tm-color-background-default);
  border: 1px solid var(--tm-color-border-variant);
  padding: 1.2rem 2rem;
  font-size: var(--tm-font-size-lg);
  line-height: 1.66;
  letter-spacing: 0.02em;
  text-align: center;
}
@media (min-width: 768px) {
  .p-links-group__label {
    border-left: none;
    border-right: none;
  }
}

.p-links-group__body .c-list__item a {
  color: var(--tm-color-text-subtle);
}

.p-links-group__body {
  flex: 1;
  border: 1px solid var(--tm-color-border-variant);
  border-top: none;
  padding: 2rem 2.4rem;
}
@media (min-width: 768px) {
  .p-links-group__body {
    border-left: none;
    border-right: none;
  }
}

.p-privacy__channels {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x2);
}
.p-privacy__channel-row {
  display: flex;
  align-items: baseline;
  gap: var(--tm-spacing-x1);
  font-family: var(--tm-font-family-en);
}
.p-privacy__channel-label {
  width: 4.5rem;
  flex-shrink: 0;
}
.p-privacy__channel-num {
  font-size: var(--tm-font-size-xl);
  white-space: nowrap;
}
.p-privacy__channel-mail {
  text-decoration: underline;
  text-underline-offset: 0.2em;
  color: var(--tm-color-text-subtle);
  white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
  .p-privacy__channel-mail:hover {
    opacity: 0.7;
  }
}

.c-spacing-scale {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x3);
}

.c-spacing-scale__row {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x4);
}

.c-spacing-scale__bar-wrap {
  width: 160px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-shrink: 0;
}

.c-spacing-scale__bar {
  height: 2rem;
  background-color: var(--tm-color-primary-50);
  border-radius: var(--tm-border-radius-xs);
}

.c-spacing-scale__meta {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x4);
  font-family: var(--tm-font-family-en);
  font-size: var(--tm-font-size-sm);
}

.c-spacing-scale__key {
  min-width: 24rem;
  color: var(--tm-color-primary-40);
}

.c-spacing-scale__value {
  color: var(--tm-color-text-subtle);
  min-width: 8rem;
}

.c-spacing-scale__multiplier {
  color: var(--tm-color-text-placeholder);
}

.c-spacing-examples {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x3);
}

.c-spacing-examples__item {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x4);
}

.c-spacing-examples__label {
  display: flex;
  align-items: center;
  gap: var(--tm-spacing-x2);
  min-width: 14rem;
  font-size: var(--tm-font-size-sm);
  font-family: var(--tm-font-family-en);
}
.c-spacing-examples__label code {
  color: var(--tm-color-primary-40);
}
.c-spacing-examples__label span {
  color: var(--tm-color-text-placeholder);
}

.c-spacing-examples__box-wrap {
  flex: 1;
}

.c-spacing-examples__box {
  display: inline-flex;
  background-color: var(--tm-color-primary-95);
  border: 1px solid var(--tm-color-primary-80);
  border-radius: var(--tm-border-radius-sm);
}

.c-spacing-examples__inner {
  background-color: var(--tm-color-primary-50);
  border-radius: 2px;
  color: var(--tm-color-white);
  font-size: var(--tm-font-size-xs);
  font-family: var(--tm-font-family-en);
  padding: var(--tm-spacing-x1) var(--tm-spacing-x2);
  white-space: nowrap;
}

.p-amg__intro {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}

.p-amg__product-list {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x6);
}
@media (min-width: 768px) {
  .p-amg__product-list {
    flex-direction: row;
    gap: var(--tm-spacing-x8);
  }
}

.p-amg__product-card {
  flex: 1;
  border: 1px solid var(--tm-color-border-default);
  display: flex;
  flex-direction: column;
  overflow: hidden;
}

.p-amg__product-img {
  aspect-ratio: 345/259;
  overflow: hidden;
  background-color: #e9ecef;
  flex-shrink: 0;
}
.p-amg__product-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
}

.p-amg__product-body {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x4);
  padding: var(--tm-spacing-x6) var(--tm-spacing-x6) var(--tm-spacing-x8);
}
@media (min-width: 768px) {
  .p-amg__product-body {
    padding: var(--tm-spacing-x6) var(--tm-spacing-x8) var(--tm-spacing-x8);
  }
}

.p-amg__product-price {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x2);
  color: var(--tm-color-text-default);
}

.p-amg__product-unit {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.75;
}

.p-amg__product-amount {
  display: flex;
  align-items: baseline;
  gap: var(--tm-spacing-x1);
  line-height: 1.75;
}

.p-amg__product-num {
  font-family: var(--tm-font-family-en);
  font-size: 2.6rem;
  letter-spacing: 0.03em;
}

.p-amg__product-unit-label {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
}

.p-amg__product-info {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x2);
}

.p-amg__product-name {
  font-size: var(--tm-font-size-md);
  line-height: 1.69;
  letter-spacing: 0.03em;
  color: var(--tm-color-primary-40);
  line-height: 1.5;
}

.p-amg__product-desc {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.75;
}

.p-amg__product-note {
  display: flex;
  gap: var(--tm-spacing-x1);
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  color: var(--tm-color-text-subtle);
  line-height: 1.75;
}

.p-amg__product-note-mark {
  flex-shrink: 0;
}

.p-amg__product-caption {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.75;
}

.p-amg__product-notice {
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.75;
  color: var(--tm-color-text-subtle);
}

.p-amg__btn-wrap {
  display: flex;
  justify-content: center;
}

.p-amg__benefit-list {
  display: flex;
  flex-direction: column;
  gap: var(--tm-spacing-x4);
}
@media (min-width: 768px) {
  .p-amg__benefit-list {
    flex-direction: row;
    gap: var(--tm-spacing-x8);
  }
}

.p-amg__benefit-item {
  flex: 1;
  display: flex;
  align-items: center;
  border: 1px solid var(--tm-color-border-default);
  overflow: hidden;
}

.p-amg__benefit-thumb {
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  overflow: hidden;
}
.p-amg__benefit-thumb img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.p-amg__benefit-text {
  flex: 1;
  padding: var(--tm-spacing-x3) var(--tm-spacing-x6);
  font-size: var(--tm-font-size-sm);
  line-height: 1.72;
  letter-spacing: 0.03em;
  line-height: 1.5;
}

.m0 {
  margin: 0 !important;
}

.mt0 {
  margin-top: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.ml0 {
  margin-left: 0 !important;
}

.mr0 {
  margin-right: 0 !important;
}

.p0 {
  padding: 0 !important;
}

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

.pb0 {
  padding-bottom: 0 !important;
}

.pl0 {
  padding-left: 0 !important;
}

.pr0 {
  padding-right: 0 !important;
}

.mt4 {
  margin-top: 0.4rem !important;
}

.mt8 {
  margin-top: 0.8rem !important;
}

.mt12 {
  margin-top: 1.2rem !important;
}

.mt16 {
  margin-top: 1.6rem !important;
}

.mt20 {
  margin-top: 2rem !important;
}

.mt24 {
  margin-top: 2.4rem !important;
}

.mt28 {
  margin-top: 2.8rem !important;
}

.mt32 {
  margin-top: 3.2rem !important;
}

.mt36 {
  margin-top: 3.6rem !important;
}

.mt40 {
  margin-top: 4rem !important;
}

.mt44 {
  margin-top: 4.4rem !important;
}

.mt48 {
  margin-top: 4.8rem !important;
}

.mt52 {
  margin-top: 5.2rem !important;
}

.mt56 {
  margin-top: 5.6rem !important;
}

.mt60 {
  margin-top: 6rem !important;
}

.mt64 {
  margin-top: 6.4rem !important;
}

.mt68 {
  margin-top: 6.8rem !important;
}

.mt72 {
  margin-top: 7.2rem !important;
}

.mt76 {
  margin-top: 7.6rem !important;
}

.mt80 {
  margin-top: 8rem !important;
}

.mt84 {
  margin-top: 8.4rem !important;
}

.mt88 {
  margin-top: 8.8rem !important;
}

.mt92 {
  margin-top: 9.2rem !important;
}

.mt96 {
  margin-top: 9.6rem !important;
}

.mt100 {
  margin-top: 10rem !important;
}

.mb4 {
  margin-bottom: 0.4rem !important;
}

.mb8 {
  margin-bottom: 0.8rem !important;
}

.mb12 {
  margin-bottom: 1.2rem !important;
}

.mb16 {
  margin-bottom: 1.6rem !important;
}

.mb20 {
  margin-bottom: 2rem !important;
}

.mb24 {
  margin-bottom: 2.4rem !important;
}

.mb28 {
  margin-bottom: 2.8rem !important;
}

.mb32 {
  margin-bottom: 3.2rem !important;
}

.mb36 {
  margin-bottom: 3.6rem !important;
}

.mb40 {
  margin-bottom: 4rem !important;
}

.mb44 {
  margin-bottom: 4.4rem !important;
}

.mb48 {
  margin-bottom: 4.8rem !important;
}

.mb52 {
  margin-bottom: 5.2rem !important;
}

.mb56 {
  margin-bottom: 5.6rem !important;
}

.mb60 {
  margin-bottom: 6rem !important;
}

.mb64 {
  margin-bottom: 6.4rem !important;
}

.mb68 {
  margin-bottom: 6.8rem !important;
}

.mb72 {
  margin-bottom: 7.2rem !important;
}

.mb76 {
  margin-bottom: 7.6rem !important;
}

.mb80 {
  margin-bottom: 8rem !important;
}

.mb84 {
  margin-bottom: 8.4rem !important;
}

.mb88 {
  margin-bottom: 8.8rem !important;
}

.mb92 {
  margin-bottom: 9.2rem !important;
}

.mb96 {
  margin-bottom: 9.6rem !important;
}

.mb100 {
  margin-bottom: 10rem !important;
}

.mr4 {
  margin-right: 0.4rem !important;
}

.mr8 {
  margin-right: 0.8rem !important;
}

.mr12 {
  margin-right: 1.2rem !important;
}

.mr16 {
  margin-right: 1.6rem !important;
}

.mr20 {
  margin-right: 2rem !important;
}

.mr24 {
  margin-right: 2.4rem !important;
}

.mr28 {
  margin-right: 2.8rem !important;
}

.mr32 {
  margin-right: 3.2rem !important;
}

.mr36 {
  margin-right: 3.6rem !important;
}

.mr40 {
  margin-right: 4rem !important;
}

.mr44 {
  margin-right: 4.4rem !important;
}

.mr48 {
  margin-right: 4.8rem !important;
}

.mr52 {
  margin-right: 5.2rem !important;
}

.mr56 {
  margin-right: 5.6rem !important;
}

.mr60 {
  margin-right: 6rem !important;
}

.mr64 {
  margin-right: 6.4rem !important;
}

.mr68 {
  margin-right: 6.8rem !important;
}

.mr72 {
  margin-right: 7.2rem !important;
}

.mr76 {
  margin-right: 7.6rem !important;
}

.mr80 {
  margin-right: 8rem !important;
}

.mr84 {
  margin-right: 8.4rem !important;
}

.mr88 {
  margin-right: 8.8rem !important;
}

.mr92 {
  margin-right: 9.2rem !important;
}

.mr96 {
  margin-right: 9.6rem !important;
}

.mr100 {
  margin-right: 10rem !important;
}

.ml4 {
  margin-left: 0.4rem !important;
}

.ml8 {
  margin-left: 0.8rem !important;
}

.ml12 {
  margin-left: 1.2rem !important;
}

.ml16 {
  margin-left: 1.6rem !important;
}

.ml20 {
  margin-left: 2rem !important;
}

.ml24 {
  margin-left: 2.4rem !important;
}

.ml28 {
  margin-left: 2.8rem !important;
}

.ml32 {
  margin-left: 3.2rem !important;
}

.ml36 {
  margin-left: 3.6rem !important;
}

.ml40 {
  margin-left: 4rem !important;
}

.ml44 {
  margin-left: 4.4rem !important;
}

.ml48 {
  margin-left: 4.8rem !important;
}

.ml52 {
  margin-left: 5.2rem !important;
}

.ml56 {
  margin-left: 5.6rem !important;
}

.ml60 {
  margin-left: 6rem !important;
}

.ml64 {
  margin-left: 6.4rem !important;
}

.ml68 {
  margin-left: 6.8rem !important;
}

.ml72 {
  margin-left: 7.2rem !important;
}

.ml76 {
  margin-left: 7.6rem !important;
}

.ml80 {
  margin-left: 8rem !important;
}

.ml84 {
  margin-left: 8.4rem !important;
}

.ml88 {
  margin-left: 8.8rem !important;
}

.ml92 {
  margin-left: 9.2rem !important;
}

.ml96 {
  margin-left: 9.6rem !important;
}

.ml100 {
  margin-left: 10rem !important;
}

.pt4 {
  padding-top: 0.4rem !important;
}

.pt8 {
  padding-top: 0.8rem !important;
}

.pt12 {
  padding-top: 1.2rem !important;
}

.pt16 {
  padding-top: 1.6rem !important;
}

.pt20 {
  padding-top: 2rem !important;
}

.pt24 {
  padding-top: 2.4rem !important;
}

.pt28 {
  padding-top: 2.8rem !important;
}

.pt32 {
  padding-top: 3.2rem !important;
}

.pt36 {
  padding-top: 3.6rem !important;
}

.pt40 {
  padding-top: 4rem !important;
}

.pt44 {
  padding-top: 4.4rem !important;
}

.pt48 {
  padding-top: 4.8rem !important;
}

.pt52 {
  padding-top: 5.2rem !important;
}

.pt56 {
  padding-top: 5.6rem !important;
}

.pt60 {
  padding-top: 6rem !important;
}

.pt64 {
  padding-top: 6.4rem !important;
}

.pt68 {
  padding-top: 6.8rem !important;
}

.pt72 {
  padding-top: 7.2rem !important;
}

.pt76 {
  padding-top: 7.6rem !important;
}

.pt80 {
  padding-top: 8rem !important;
}

.pt84 {
  padding-top: 8.4rem !important;
}

.pt88 {
  padding-top: 8.8rem !important;
}

.pt92 {
  padding-top: 9.2rem !important;
}

.pt96 {
  padding-top: 9.6rem !important;
}

.pt100 {
  padding-top: 10rem !important;
}

.pb4 {
  padding-bottom: 0.4rem !important;
}

.pb8 {
  padding-bottom: 0.8rem !important;
}

.pb12 {
  padding-bottom: 1.2rem !important;
}

.pb16 {
  padding-bottom: 1.6rem !important;
}

.pb20 {
  padding-bottom: 2rem !important;
}

.pb24 {
  padding-bottom: 2.4rem !important;
}

.pb28 {
  padding-bottom: 2.8rem !important;
}

.pb32 {
  padding-bottom: 3.2rem !important;
}

.pb36 {
  padding-bottom: 3.6rem !important;
}

.pb40 {
  padding-bottom: 4rem !important;
}

.pb44 {
  padding-bottom: 4.4rem !important;
}

.pb48 {
  padding-bottom: 4.8rem !important;
}

.pb52 {
  padding-bottom: 5.2rem !important;
}

.pb56 {
  padding-bottom: 5.6rem !important;
}

.pb60 {
  padding-bottom: 6rem !important;
}

.pb64 {
  padding-bottom: 6.4rem !important;
}

.pb68 {
  padding-bottom: 6.8rem !important;
}

.pb72 {
  padding-bottom: 7.2rem !important;
}

.pb76 {
  padding-bottom: 7.6rem !important;
}

.pb80 {
  padding-bottom: 8rem !important;
}

.pb84 {
  padding-bottom: 8.4rem !important;
}

.pb88 {
  padding-bottom: 8.8rem !important;
}

.pb92 {
  padding-bottom: 9.2rem !important;
}

.pb96 {
  padding-bottom: 9.6rem !important;
}

.pb100 {
  padding-bottom: 10rem !important;
}

.pr4 {
  padding-right: 0.4rem !important;
}

.pr8 {
  padding-right: 0.8rem !important;
}

.pr12 {
  padding-right: 1.2rem !important;
}

.pr16 {
  padding-right: 1.6rem !important;
}

.pr20 {
  padding-right: 2rem !important;
}

.pr24 {
  padding-right: 2.4rem !important;
}

.pr28 {
  padding-right: 2.8rem !important;
}

.pr32 {
  padding-right: 3.2rem !important;
}

.pr36 {
  padding-right: 3.6rem !important;
}

.pr40 {
  padding-right: 4rem !important;
}

.pr44 {
  padding-right: 4.4rem !important;
}

.pr48 {
  padding-right: 4.8rem !important;
}

.pr52 {
  padding-right: 5.2rem !important;
}

.pr56 {
  padding-right: 5.6rem !important;
}

.pr60 {
  padding-right: 6rem !important;
}

.pr64 {
  padding-right: 6.4rem !important;
}

.pr68 {
  padding-right: 6.8rem !important;
}

.pr72 {
  padding-right: 7.2rem !important;
}

.pr76 {
  padding-right: 7.6rem !important;
}

.pr80 {
  padding-right: 8rem !important;
}

.pr84 {
  padding-right: 8.4rem !important;
}

.pr88 {
  padding-right: 8.8rem !important;
}

.pr92 {
  padding-right: 9.2rem !important;
}

.pr96 {
  padding-right: 9.6rem !important;
}

.pr100 {
  padding-right: 10rem !important;
}

.pl4 {
  padding-left: 0.4rem !important;
}

.pl8 {
  padding-left: 0.8rem !important;
}

.pl12 {
  padding-left: 1.2rem !important;
}

.pl16 {
  padding-left: 1.6rem !important;
}

.pl20 {
  padding-left: 2rem !important;
}

.pl24 {
  padding-left: 2.4rem !important;
}

.pl28 {
  padding-left: 2.8rem !important;
}

.pl32 {
  padding-left: 3.2rem !important;
}

.pl36 {
  padding-left: 3.6rem !important;
}

.pl40 {
  padding-left: 4rem !important;
}

.pl44 {
  padding-left: 4.4rem !important;
}

.pl48 {
  padding-left: 4.8rem !important;
}

.pl52 {
  padding-left: 5.2rem !important;
}

.pl56 {
  padding-left: 5.6rem !important;
}

.pl60 {
  padding-left: 6rem !important;
}

.pl64 {
  padding-left: 6.4rem !important;
}

.pl68 {
  padding-left: 6.8rem !important;
}

.pl72 {
  padding-left: 7.2rem !important;
}

.pl76 {
  padding-left: 7.6rem !important;
}

.pl80 {
  padding-left: 8rem !important;
}

.pl84 {
  padding-left: 8.4rem !important;
}

.pl88 {
  padding-left: 8.8rem !important;
}

.pl92 {
  padding-left: 9.2rem !important;
}

.pl96 {
  padding-left: 9.6rem !important;
}

.pl100 {
  padding-left: 10rem !important;
}

.lh-10 {
  line-height: 1 !important;
}

.lh-11 {
  line-height: 1.1 !important;
}

.lh-12 {
  line-height: 1.2 !important;
}

.lh-13 {
  line-height: 1.3 !important;
}

.lh-14 {
  line-height: 1.4 !important;
}

.lh-15 {
  line-height: 1.5 !important;
}

.lh-16 {
  line-height: 1.6 !important;
}

.lh-17 {
  line-height: 1.7 !important;
}

.lh-18 {
  line-height: 1.8 !important;
}

.lh-19 {
  line-height: 1.9 !important;
}

.lh-20 {
  line-height: 2 !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

.text-justify {
  -moz-text-align-last: justify;
  text-align-last: justify;
  text-justify: inter-ideograph;
}

.spacer-x0 {
  margin-top: var(--tm-spacing-x0) !important;
}

.spacer-top-bottom-x0 {
  margin: var(--tm-spacing-x0) 0 !important;
}

.spacer-x05 {
  margin-top: var(--tm-spacing-x05) !important;
}

.spacer-top-bottom-x05 {
  margin: var(--tm-spacing-x05) 0 !important;
}

.spacer-x1 {
  margin-top: var(--tm-spacing-x1) !important;
}

.spacer-top-bottom-x1 {
  margin: var(--tm-spacing-x1) 0 !important;
}

.spacer-x2 {
  margin-top: var(--tm-spacing-x2) !important;
}

.spacer-top-bottom-x2 {
  margin: var(--tm-spacing-x2) 0 !important;
}

.spacer-x3 {
  margin-top: var(--tm-spacing-x3) !important;
}

.spacer-top-bottom-x3 {
  margin: var(--tm-spacing-x3) 0 !important;
}

.spacer-x4 {
  margin-top: var(--tm-spacing-x4) !important;
}

.spacer-top-bottom-x4 {
  margin: var(--tm-spacing-x4) 0 !important;
}

.spacer-x6 {
  margin-top: var(--tm-spacing-x6) !important;
}

.spacer-top-bottom-x6 {
  margin: var(--tm-spacing-x6) 0 !important;
}

.spacer-x8 {
  margin-top: var(--tm-spacing-x8) !important;
}

.spacer-top-bottom-x8 {
  margin: var(--tm-spacing-x8) 0 !important;
}

.spacer-x10 {
  margin-top: var(--tm-spacing-x10) !important;
}

.spacer-top-bottom-x10 {
  margin: var(--tm-spacing-x10) 0 !important;
}

.spacer-x12 {
  margin-top: var(--tm-spacing-x12) !important;
}

.spacer-top-bottom-x12 {
  margin: var(--tm-spacing-x12) 0 !important;
}

.spacer-x16 {
  margin-top: var(--tm-spacing-x16) !important;
}

.spacer-top-bottom-x16 {
  margin: var(--tm-spacing-x16) 0 !important;
}

.spacer-x20 {
  margin-top: var(--tm-spacing-x20) !important;
}

.spacer-top-bottom-x20 {
  margin: var(--tm-spacing-x20) 0 !important;
}

.spacer-x24 {
  margin-top: var(--tm-spacing-x24) !important;
}

.spacer-top-bottom-x24 {
  margin: var(--tm-spacing-x24) 0 !important;
}

.spacer-x32 {
  margin-top: var(--tm-spacing-x32) !important;
}

.spacer-top-bottom-x32 {
  margin: var(--tm-spacing-x32) 0 !important;
}

.spacer-x40 {
  margin-top: var(--tm-spacing-x40) !important;
}

.spacer-top-bottom-x40 {
  margin: var(--tm-spacing-x40) 0 !important;
}

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

@media (max-width: 767.98px) {
  .sp-order-0 {
    order: 0 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-0 {
    order: 0 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-1 {
    order: 1 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-1 {
    order: 1 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-2 {
    order: 2 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-2 {
    order: 2 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-3 {
    order: 3 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-3 {
    order: 3 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-4 {
    order: 4 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-4 {
    order: 4 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-5 {
    order: 5 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-5 {
    order: 5 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-6 {
    order: 6 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-6 {
    order: 6 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-7 {
    order: 7 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-7 {
    order: 7 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-8 {
    order: 8 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-8 {
    order: 8 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-9 {
    order: 9 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-9 {
    order: 9 !important;
  }
}

@media (max-width: 767.98px) {
  .sp-order-10 {
    order: 10 !important;
  }
}

@media (min-width: 1024px) {
  .pc-order-10 {
    order: 10 !important;
  }
}

.sp-only {
  display: block !important;
}
@media (min-width: 1024px) {
  .sp-only {
    display: none !important;
  }
}

.pc-only {
  display: none !important;
}
@media (min-width: 1024px) {
  .pc-only {
    display: block !important;
  }
}

.fc-text-default {
  color: var(--tm-color-text-default) !important;
}

.fc-text-subtle {
  color: var(--tm-color-text-subtle) !important;
}

.fc-text-placeholder {
  color: var(--tm-color-text-placeholder) !important;
}

.fc-text-attention {
  color: var(--tm-color-text-attention) !important;
}

.fc-text-link {
  color: var(--tm-color-text-link) !important;
}

.bg-default {
  background-color: var(--tm-color-background-default) !important;
}

.bg-variant {
  background-color: var(--tm-color-background-variant) !important;
}

.bg-primary-action-hovered {
  background-color: var(--tm-color-background-primary-action-hovered) !important;
}

.bg-important {
  background-color: var(--tm-color-background-important) !important;
}

.bg-attention {
  background-color: var(--tm-color-background-attention) !important;
}

.bg-highlight {
  background-color: var(--tm-color-background-highlight) !important;
}

.bg-marker {
  background-color: var(--tm-color-background-marker) !important;
}

.w5 {
  width: 5% !important;
}

.w10 {
  width: 10% !important;
}

.w15 {
  width: 15% !important;
}

.w20 {
  width: 20% !important;
}

.w25 {
  width: 25% !important;
}

.w30 {
  width: 30% !important;
}

.w35 {
  width: 35% !important;
}

.w40 {
  width: 40% !important;
}

.w45 {
  width: 45% !important;
}

.w50 {
  width: 50% !important;
}

.w55 {
  width: 55% !important;
}

.w60 {
  width: 60% !important;
}

.w65 {
  width: 65% !important;
}

.w70 {
  width: 70% !important;
}

.w75 {
  width: 75% !important;
}

.w80 {
  width: 80% !important;
}

.w85 {
  width: 85% !important;
}

.w90 {
  width: 90% !important;
}

.w95 {
  width: 95% !important;
}

.w100 {
  width: 100% !important;
}

.w33 {
  width: 33.333% !important;
}

.bd {
  border: 1px solid var(--tm-color-border-default) !important;
}

.bd-top {
  border-top: 1px solid var(--tm-color-border-default) !important;
}

.bd-bottom {
  border-bottom: 1px solid var(--tm-color-border-default) !important;
}

.bd-left {
  border-left: 1px solid var(--tm-color-border-default) !important;
}

.bd-right {
  border-right: 1px solid var(--tm-color-border-default) !important;
}

.bd-0 {
  border: none !important;
}

.bd-t-0 {
  border-top: none !important;
}

.bd-b-0 {
  border-bottom: none !important;
}

.bd-l-0 {
  border-left: none !important;
}

.bd-r-0 {
  border-right: none !important;
}

.bd-2 {
  border-width: 2px !important;
}

.bd-color-default {
  border-color: var(--tm-color-border-default) !important;
}

.bd-color-subtle {
  border-color: var(--tm-color-border-subtle) !important;
}

.bd-color-variant {
  border-color: var(--tm-color-border-variant) !important;
}

.bd-color-strong {
  border-color: var(--tm-color-border-strong) !important;
}

.bd-color-highlight {
  border-color: var(--tm-color-border-highlight) !important;
}

.bold {
  font-weight: 700 !important;
}

.bd-radius-infinity {
  border-radius: var(--tm-border-radius-infinity) !important;
}

.bd-radius-xl {
  border-radius: var(--tm-border-radius-xl) !important;
}

.bd-radius-lg {
  border-radius: var(--tm-border-radius-lg) !important;
}

.bd-radius-md {
  border-radius: var(--tm-border-radius-md) !important;
}

.bd-radius-sm {
  border-radius: var(--tm-border-radius-sm) !important;
}

.bd-radius-xs {
  border-radius: var(--tm-border-radius-xs) !important;
}

.bd-radius-0 {
  border-radius: 0 !important;
}

.icon-text {
  display: inline;
}
.icon-text .material-symbols-rounded,
.icon-text .material-symbols-outlined,
.icon-text .material-symbols-sharp {
  font-size: 1.25em;
  line-height: 1;
  margin-top: -0.2em;
  vertical-align: middle;
  margin-inline: 0.125em;
}
.icon-text .material-symbols-rounded:first-child,
.icon-text .material-symbols-outlined:first-child,
.icon-text .material-symbols-sharp:first-child {
  margin-inline-start: 0;
}
.icon-text .material-symbols-rounded:last-child,
.icon-text .material-symbols-outlined:last-child,
.icon-text .material-symbols-sharp:last-child {
  margin-inline-end: 0;
}
/*# sourceMappingURL=map/style.css.map */
