:root {
  --fluid-min-viewport: 375;
  --fluid-max-viewport: 1120;
  --fluid-slope: calc((100vw - var(--fluid-min-viewport) * 1px) / (var(--fluid-max-viewport)  - var(--fluid-min-viewport)));
  --color-primary: var(--wp--preset--color--primary, #1e50a2);
  --color-secondary: var(--wp--preset--color--secondary, #3a6bc1);
  --color-accent: var(--wp--preset--color--accent, #f7931e);
  --color-accent2: var(--wp--preset--color--accent2, #00b0b9);
  --color-accent3: var(--wp--preset--color--accent3, #d8b448);
  --color-accent4: var(--wp--preset--color--accent4, #efea46);
  --color-contrast: var(--wp--preset--color--contrast, #111827);
  --color-neutral-strong: var(--wp--preset--color--neutral-strong, #282828);
  --color-neutral-medium: var(--wp--preset--color--neutral-medium, #4b5563);
  --color-neutral-soft: var(--wp--preset--color--neutral-soft, #d1d5db);
  --color-base-primary: var(--wp--preset--color--base-primary, #f3f4f6);
  --color-base-body: var(--wp--preset--color--base-body, #fff);
  --color-emphasis: var(--wp--preset--color--emphasis, #dc2626);
  --font-family-ja: var(--wp--preset--font-family--noto-sans-jp, "Noto Sans JP", sans-serif);
  --font-family-en: var(--wp--preset--font-family--tenor-sans, "Tenor Sans", sans-serif);
  --font-size-small: var(--wp--preset--font-size--small, 14px);
  --font-size-base: var(--wp--preset--font-size--base, 16px);
  --font-size-semi-large: clamp(17px, 17px + var(--fluid-slope) * 1, 18px);
  --font-size-large: var(--wp--preset--font-size--large, clamp(18px, 18px + var(--fluid-slope) * 2, 20px));
  --font-size-x-large: var(--wp--preset--font-size--x-large, clamp(20px, 20px + var(--fluid-slope) * 4, 24px));
  --font-size-2x-large: var(--wp--preset--font-size--2-x-large, clamp(24px, 24px + var(--fluid-slope) * 8, 32px));
  --font-size-3x-large: var(--wp--preset--font-size--3-x-large, clamp(32px, 32px + var(--fluid-slope) * 8, 40px));
  --spacing-8: var(--wp--preset--spacing--8, clamp(6px, 6px + var(--fluid-slope) * 2, 8px));
  --spacing-16: var(--wp--preset--spacing--16, clamp(14px, 14px + var(--fluid-slope) * 2, 16px));
  --spacing-24: var(--wp--preset--spacing--24, clamp(20px, 20px + var(--fluid-slope) * 4, 24px));
  --spacing-32: var(--wp--preset--spacing--32, clamp(24px, 24px + var(--fluid-slope) * 8, 32px));
  --spacing-40: var(--wp--preset--spacing--40, clamp(32px, 32px + var(--fluid-slope) * 8, 40px));
  --spacing-64: var(--wp--preset--spacing--80, clamp(40px, 40px + var(--fluid-slope) * 24, 64px));
  --spacing-80: var(--wp--preset--spacing--80, clamp(60px, 60px + var(--fluid-slope) * 20, 80px));
  --spacing-120: var(--wp--preset--spacing--120, clamp(80px, 80px + var(--fluid-slope) * 40, 120px));
  --content-size: var(--wp--style--global--content-size, 1024px);
  --wide-size: var(--wp--style--global--wide-size, 1120px);
  --border-radius-4: var(--wp--preset--border-radius--4, 4px);
  --border-radius-8: var(--wp--preset--border-radius--8, 4px);
  --border-radius-full: var(--wp--preset--border-radius--full, 9999px);
  --breakpoint-sm: 640px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 1024px;
  --breakpoint-xl: 1280px;
  --breakpoint-xxl: 1440px;
  --z-index-header: 100;
  --z-index-drawer: 90;
  --z-index-floating: 80;
  --header-height-desktop: 156px;
  --header-height-mobile: 50px;
}

.alignfull {
  inline-size: 100vw;
  margin-inline: calc(50% - 50vw);
}

.post-password-form {
  padding-block: var(--spacing-40);
  gap: var(--spacing-16);
  display: grid;
}

.wp-block-post-content :lang(en) {
  text-wrap: pretty;
}

.wp-block-post-content a:where(:not(.wp-element-button)) {
  transition: color .3s;
}

@media (any-hover: hover) {
  .wp-block-post-content a:where(:not(.wp-element-button)):hover {
    color: var(--color-accent);
  }
}

.wp-block-button .wp-block-button__link {
  padding: var(--wp--preset--spacing--16) var(--wp--preset--spacing--24);
  background: var(--wp--preset--color--primary);
  color: var(--wp--preset--color--base-body);
  font-size: var(--wp--preset--font-size--base);
  text-align: left;
  border-radius: 4px;
  justify-content: space-between;
  align-items: center;
  font-weight: 500;
  line-height: 1.5;
  transition: background-color .3s, color .3s;
  display: flex;
}

.wp-block-button.is-style-button-has-white-right-arrow .wp-block-button__link {
  gap: var(--wp--preset--spacing--8);
  padding-inline-end: var(--wp--preset--spacing--8);
  display: flex;
}

.wp-block-button.is-style-button-has-white-right-arrow .wp-block-button__link:after {
  content: "";
  aspect-ratio: 1;
  background-color: var(--color-neutral-soft);
  inline-size: 16px;
  -webkit-mask-image: url("../../images/common/icon-chevron-right-neutral-soft.svg");
  mask-image: url("../../images/common/icon-chevron-right-neutral-soft.svg");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-has-white-right-arrow .wp-block-button__link:hover {
    color: var(--wp--preset--color--base-body);
    background: var(--wp--preset--color--secondary);
  }
}

.wp-block-button.is-style-button-has-black-right-arrow .wp-block-button__link {
  gap: var(--wp--preset--spacing--8);
  border: 1px solid var(--color-neutral-strong);
  background-color: var(--color-base-body);
  color: var(--color-contrast);
  padding-inline-end: var(--wp--preset--spacing--8);
  transition: background-color .3s;
  display: flex;
}

.wp-block-button.is-style-button-has-black-right-arrow .wp-block-button__link:after {
  content: "";
  aspect-ratio: 1;
  background: url("../../images/common/icon-chevron-right-neutral-strong.svg") center / contain no-repeat;
  inline-size: 16px;
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-has-black-right-arrow .wp-block-button__link:hover {
    background-color: var(--color-neutral-soft);
  }
}

.wp-block-button.is-style-button-mail .wp-block-button__link {
  gap: var(--spacing-8);
  padding-block: var(--spacing-16);
  padding-inline: var(--spacing-16) 48px;
  border-radius: var(--border-radius-8);
  background-color: var(--color-accent2);
  color: var(--color-neutral-soft);
  font-size: var(--font-size-x-large);
  text-align: center;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition: opacity .3s;
  display: inline-flex;
  position: relative;
}

.wp-block-button.is-style-button-mail .wp-block-button__link:before {
  content: "";
  aspect-ratio: 1;
  background-image: url("../../images/common/icon-mail-neutral-soft.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  flex-shrink: 0;
  inline-size: 1.6em;
}

.wp-block-button.is-style-button-mail .wp-block-button__link:after {
  content: "";
  background: url("../../images/common/icon-chevron-right-neutral-soft.svg") center / contain no-repeat;
  block-size: 24px;
  inline-size: 24px;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-end: var(--spacing-16);
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-mail .wp-block-button__link:hover {
    opacity: .8;
  }
}

.wp-block-button.is-style-button-tel .wp-block-button__link {
  gap: var(--spacing-8);
  padding-block: var(--spacing-16);
  padding-inline: var(--spacing-16) 48px;
  border-radius: var(--border-radius-8);
  background-color: var(--color-accent);
  color: var(--color-neutral-soft);
  font-size: var(--font-size-x-large);
  text-align: center;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition: opacity .3s;
  display: inline-flex;
  position: relative;
}

.wp-block-button.is-style-button-tel .wp-block-button__link:before {
  content: "";
  aspect-ratio: 1;
  background-image: url("../../images/common/icon-tel-neutral-soft.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  flex-shrink: 0;
  inline-size: 1.4em;
}

.wp-block-button.is-style-button-tel .wp-block-button__link:after {
  content: "";
  background: url("../../images/common/icon-chevron-right-neutral-soft.svg") center / contain no-repeat;
  block-size: 24px;
  inline-size: 24px;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-end: var(--spacing-16);
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-tel .wp-block-button__link:hover {
    opacity: .8;
  }
}

.wp-block-button.is-style-button-online .wp-block-button__link {
  gap: var(--spacing-8);
  padding-block: var(--spacing-16);
  padding-inline: var(--spacing-16) 48px;
  border-radius: var(--border-radius-8);
  background-color: var(--color-neutral-soft);
  color: var(--color-primary);
  font-size: var(--font-size-x-large);
  text-align: center;
  justify-content: center;
  align-items: center;
  font-weight: 600;
  line-height: 1.5;
  text-decoration: none;
  transition: opacity .3s;
  display: inline-flex;
  position: relative;
}

.wp-block-button.is-style-button-online .wp-block-button__link:before {
  content: "";
  aspect-ratio: 1;
  background-image: url("../../images/common/icon-online-primary.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  flex-shrink: 0;
  inline-size: 1.4em;
}

.wp-block-button.is-style-button-online .wp-block-button__link:after {
  content: "";
  background-image: url("../../images/common/icon-chevron-right-primary.svg");
  block-size: 24px;
  inline-size: 24px;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-end: var(--spacing-16);
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-online .wp-block-button__link:hover {
    opacity: .8;
  }
}

.wp-block-button.is-style-page-link .wp-block-button__link {
  gap: var(--spacing-8);
  padding-block: var(--spacing-8);
  border: 1px solid var(--color-neutral-medium);
  border-radius: var(--border-radius-full);
  background: var(--color-base-body);
  color: var(--color-contrast);
  padding-inline-end: var(--spacing-16);
  transition: background-color .3s;
  display: flex;
}

.wp-block-button.is-style-page-link .wp-block-button__link:after {
  content: "";
  aspect-ratio: 1;
  background-color: currentColor;
  inline-size: 20px;
  -webkit-mask-image: url("../../images/common/icon-chevron-down.svg");
  mask-image: url("../../images/common/icon-chevron-down.svg");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

@media (any-hover: hover) {
  .wp-block-button.is-style-page-link .wp-block-button__link:hover {
    background-color: var(--color-neutral-medium);
  }
}

.wp-block-button.is-style-button-zoom .wp-block-button__link {
  gap: var(--spacing-8);
  padding-block: var(--spacing-16);
  padding-inline: var(--spacing-16) 48px;
  border-radius: var(--border-radius-8);
  color: var(--color-neutral-soft);
  background-color: var(--color-primary);
  font-weight: 600;
  line-height: 1.5;
  font-size: var(--font-size-small);
  justify-content: center;
  align-items: center;
  text-decoration: none;
  transition: opacity .3s;
  display: inline-flex;
  position: relative;
}

.wp-block-button.is-style-button-zoom .wp-block-button__link:before {
  content: "";
  aspect-ratio: 1;
  background: url("../../images/common/icon-zoom-neutral-soft.svg") center / contain no-repeat;
  flex-shrink: 0;
  inline-size: max(1.2em, 24px);
}

.wp-block-button.is-style-button-zoom .wp-block-button__link:after {
  content: "";
  background: url("../../images/common/icon-chevron-right-neutral-soft.svg") center / contain no-repeat;
  block-size: 24px;
  inline-size: 24px;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-end: var(--spacing-16);
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-zoom .wp-block-button__link:hover {
    opacity: .8;
  }
}

.wp-block-button.is-style-button-document .wp-block-button__link {
  gap: var(--spacing-8);
  padding-block: var(--spacing-16);
  padding-inline: var(--spacing-16) 48px;
  border-radius: var(--border-radius-8);
  color: var(--color-neutral-soft);
  background-color: var(--color-accent3);
  font-weight: 600;
  line-height: 1.5;
  font-size: var(--font-size-small);
  justify-content: center;
  align-items: center;
  text-decoration: none;
  transition: opacity .3s;
  display: inline-flex;
  position: relative;
}

.wp-block-button.is-style-button-document .wp-block-button__link:before {
  content: "";
  aspect-ratio: 1;
  background: url("../../images/common/icon-document-neutral-soft.svg") center / contain no-repeat;
  flex-shrink: 0;
  inline-size: max(1.2em, 24px);
}

.wp-block-button.is-style-button-document .wp-block-button__link:after {
  content: "";
  background: url("../../images/common/icon-chevron-right-neutral-soft.svg") center / contain no-repeat;
  block-size: 24px;
  inline-size: 24px;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-end: var(--spacing-16);
}

@media (any-hover: hover) {
  .wp-block-button.is-style-button-document .wp-block-button__link:hover {
    opacity: .8;
  }
}

.wp-block-image a, .wp-block-image img {
  display: block;
}

.wp-block-image .wp-element-caption {
  margin-block: var(--spacing-8) 0;
  color: inherit;
  font-size: var(--font-size-small);
  line-height: 1.5;
}

.wp-block-image.aligncenter {
  word-break: auto-phrase;
  text-wrap: balance;
}

@media (max-width: 768px) {
  .wp-block-image.alignright, .wp-block-image.alignleft {
    float: none !important;
    margin-inline: auto !important;
  }

  :is(.wp-block-image.alignright, .wp-block-image.alignleft) img {
    inline-size: auto !important;
  }
}

.wp-block-image a {
  transition: opacity .3s;
}

@media (any-hover: hover) {
  .wp-block-image a:hover {
    opacity: .8;
  }
}

.wp-block-heading.is-style-heading-level1 {
  border-bottom: 1px solid var(--color-contrast);
  font-size: var(--font-size-2x-large);
  padding-block-end: var(--spacing-16);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading.is-style-heading-level2 {
  padding-block: var(--spacing-16);
  padding-inline: var(--spacing-16);
  background: var(--color-base-primary);
  border-inline-start: 8px solid var(--color-primary);
  color: var(--color-primary);
  font-size: var(--font-size-x-large);
  letter-spacing: .05em;
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading.is-style-heading-level3 {
  border-bottom: 1px solid var(--color-primary);
  color: var(--color-primary);
  font-size: var(--font-size-large);
  padding-block-end: var(--spacing-8);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading.is-style-heading-level4 {
  border-inline-start: 2px solid var(--color-primary);
  color: var(--color-primary);
  font-size: var(--font-size-semi-large);
  padding-inline-start: var(--spacing-8);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading.is-style-heading-border-left-accent {
  padding-block: var(--spacing-8);
  padding-inline: var(--spacing-24);
  align-items: center;
  gap: var(--spacing-24);
  border-inline-start: .17em solid var(--color-accent);
  font-size: var(--font-size-x-large);
  margin: 0;
  font-weight: 600;
  line-height: 1.5;
  display: flex;
}

.wp-block-heading.is-style-heading-simple {
  box-shadow: none;
  color: var(--color-contrast);
  font-size: var(--font-size-x-large);
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  font-weight: 600;
  line-height: 1.5;
  display: block;
}

.wp-block-heading.is-style-heading-simple:before, .wp-block-heading.is-style-heading-simple:after {
  display: none;
}

.wp-block-heading.is-style-heading-border-left-primary {
  box-shadow: none;
  color: var(--color-contrast);
  font-size: var(--font-size-x-large);
  background: none;
  border: none;
  margin: 0;
  padding: 0;
  font-weight: 600;
  line-height: 1.5;
  display: block;
  position: relative;
}

.wp-block-heading.is-style-heading-border-left-primary:before {
  content: "";
  inset-block-start: .5em;
  background: var(--color-primary);
  block-size: 3px;
  inline-size: 50px;
  display: block;
  position: absolute;
  inset-block-start: .5lh;
  inset-inline-end: calc(100% + 12px);
}

.wp-block-heading:where(h1):where(:not([class*="is-style-"])) {
  font-size: var(--font-size-2x-large);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading:where(h2):where(:not([class*="is-style-"])) {
  font-size: var(--font-size-x-large);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading:where(h3):where(:not([class*="is-style-"])) {
  font-size: var(--font-size-large);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading:where(h4):where(:not([class*="is-style-"])) {
  font-size: var(--font-size-base);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading:where(h5):where(:not([class*="is-style-"])), .wp-block-heading:where(h6):where(:not([class*="is-style-"])) {
  font-size: var(--font-size-small);
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-heading:where(h2):not(:first-child) {
  margin-block-start: var(--spacing-40);
}

.wp-block-read-more {
  align-items: center;
  gap: var(--spacing-16);
  padding: var(--spacing-8) 0 var(--spacing-8) var(--spacing-8);
  color: var(--color-neutral-strong);
  font-size: var(--font-size-small);
  border-block-end: 1px solid;
  margin-block-start: var(--spacing-8);
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  transition: color .3s, border-block-end-color .3s;
  display: flex;
}

.wp-block-read-more:after {
  content: "";
  aspect-ratio: 1;
  background-color: currentColor;
  inline-size: 16px;
  transition: background-color .3s;
  display: block;
  -webkit-mask-image: url("../../images/common/icon-more.svg");
  mask-image: url("../../images/common/icon-more.svg");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

@media (any-hover: hover) {
  .wp-block-read-more:hover {
    border-block-end-color: currentColor;
  }

  .wp-block-read-more:hover:after {
    background-color: currentColor;
  }
}

:where(p).has-text-align-center {
  word-break: auto-phrase;
  text-wrap: balance;
}

:where(p).is-style-paragraph-with-arrow-link {
  color: var(--color-neutral-soft);
  font-size: var(--font-size-small);
  font-weight: 600;
  line-height: 1.5;
}

:where(p).is-style-paragraph-with-arrow-link a {
  align-items: center;
  gap: var(--spacing-16);
  border-bottom: 1px solid #0000;
  text-decoration: none;
  transition: border-color .3s;
  display: inline-flex;
}

:where(p).is-style-paragraph-with-arrow-link a:after {
  content: "";
  aspect-ratio: 1;
  background-color: currentColor;
  flex-shrink: 0;
  inline-size: 16px;
  -webkit-mask-image: url("../../images/common/icon-chevron-right-neutral-soft.svg");
  mask-image: url("../../images/common/icon-chevron-right-neutral-soft.svg");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

@media (any-hover: hover) {
  :where(p).is-style-paragraph-with-arrow-link a:hover {
    border-color: currentColor;
  }
}

:where(p).is-style-paragraph-with-left-arrow-link a {
  align-items: center;
  gap: var(--spacing-8);
  text-decoration-skip-ink: none;
  text-underline-offset: auto;
  text-underline-position: from-font;
  text-wrap: pretty;
  font-weight: 600;
  line-height: 1.5;
  text-decoration-line: underline;
  text-decoration-style: solid;
  text-decoration-thickness: .07em;
  transition: color .3s;
  display: inline-flex;
}

:where(p).is-style-paragraph-with-left-arrow-link a:before {
  content: "";
  aspect-ratio: 1;
  background-image: url("../../images/common/icon-text-link.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  flex-shrink: 0;
  inline-size: 1.5em;
}

@media (any-hover: hover) {
  :where(p).is-style-paragraph-with-left-arrow-link a:hover {
    color: var(--color-accent);
  }
}

:where(p).is-style-paragraph-speech-bubble-left, :where(p).is-style-paragraph-speech-bubble-right {
  padding: var(--spacing-16) var(--spacing-24);
  border-radius: var(--spacing-16);
  background: var(--color-base-primary);
  font-size: var(--font-size-small);
  font-weight: 400;
  position: relative;
}

:is(:where(p).is-style-paragraph-speech-bubble-left, :where(p).is-style-paragraph-speech-bubble-right):after {
  content: "";
  background: inherit;
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  block-size: 20px;
  inline-size: 12px;
  display: block;
  position: absolute;
  inset-block-start: var(--spacing-24);
  inset-inline-end: calc(100% - 1px);
}

:where(p).is-style-paragraph-speech-bubble-left:after {
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  inset-block-start: var(--spacing-24);
  inset-inline-end: calc(100% - 1px);
}

:where(p).is-style-paragraph-speech-bubble-right:after {
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  inset-block-start: var(--spacing-24);
  inset-inline-start: calc(100% - 1px);
}

:where(p).is-style-paragraph-border-top-bg {
  padding: var(--spacing-8);
  border-block-start: 3px solid var(--color-primary);
  background: var(--color-neutral-soft);
  color: var(--color-contrast);
  font-size: var(--font-size-large);
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-weight: 600;
  line-height: 1.5;
  display: flex;
}

:where(p).is-style-paragraph-speech-bubble-bottom {
  padding: var(--spacing-16) var(--spacing-24);
  border-radius: var(--spacing-16);
  background: var(--color-base-primary);
  font-size: var(--font-size-small);
  font-weight: 400;
  position: relative;
}

:where(p).is-style-paragraph-speech-bubble-bottom:after {
  content: "";
  background: inherit;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  block-size: 12px;
  inline-size: 20px;
  inset-block-start: calc(100% - 1px);
  inset-inline: var(--spacing-24);
  margin-inline: auto;
  display: block;
  position: absolute;
}

.wp-block-details.is-style-details-qa {
  interpolate-size: allow-keywords;
  border-radius: var(--border-radius-8);
  background: var(--color-base-body);
  position: relative;
}

.wp-block-details.is-style-details-qa summary {
  padding-block: var(--spacing-24);
  background-image: url("../../images/common/icon-q.svg");
  background-repeat: no-repeat;
  background-size: 32px;
  background-position: left clamp(20px, 20px + var(--fluid-slope) * 4, 24px) center;
  color: var(--color-contrast);
  cursor: pointer;
  padding-inline-start: clamp(66px, 66px + var(--fluid-slope) * 12, 78px);
  padding-inline-end: clamp(42px, 42px + var(--fluid-slope) * 6, 48px);
  font-weight: 600;
  line-height: 1.4;
  display: block;
  position: relative;
}

.wp-block-details.is-style-details-qa summary:before, .wp-block-details.is-style-details-qa summary:after {
  content: "";
  border-radius: var(--border-radius-full);
  background: var(--color-primary);
  transform-origin: center;
  width: 20px;
  height: 2px;
  transition: rotate .6s;
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: clamp(20px, 20px + var(--fluid-slope) * 4, 24px);
  translate: 0 -50%;
}

.wp-block-details.is-style-details-qa summary:after {
  rotate: 90deg;
}

.wp-block-details.is-style-details-qa summary::-webkit-details-marker {
  display: none;
}

.wp-block-details.is-style-details-qa::details-content {
  height: 0;
  transition: height .6s, content-visibility .6s allow-discrete;
  overflow: clip;
}

.wp-block-details.is-style-details-qa[open]::details-content {
  height: auto;
}

.wp-block-details.is-style-details-qa[open] summary:after {
  rotate: 180deg;
}

.wp-block-embed-youtube .wp-block-embed__wrapper {
  aspect-ratio: 16 / 9;
  inline-size: 100%;
}

.wp-block-embed-youtube .wp-block-embed__wrapper iframe {
  object-fit: cover;
  block-size: 100%;
  inline-size: 100%;
  display: block;
}

.wp-embed-aspect-16-9 .wp-block-embed__wrapper {
  aspect-ratio: 16 / 9;
  inline-size: 100%;
}

.wp-embed-aspect-16-9 .wp-block-embed__wrapper iframe {
  object-fit: cover;
  block-size: 100%;
  inline-size: 100%;
  display: block;
}

.wp-embed-aspect-4-3 .wp-block-embed__wrapper {
  aspect-ratio: 4 / 3;
  inline-size: 100%;
}

.wp-embed-aspect-4-3 .wp-block-embed__wrapper iframe {
  object-fit: cover;
  block-size: 100%;
  inline-size: 100%;
  display: block;
}

.wp-block-list:where(ul):where(:not([class*="is-style-"])) {
  padding: 0;
  list-style: none;
}

.wp-block-list:where(ul):where(:not([class*="is-style-"])) li {
  padding-inline-start: 1em;
  position: relative;
}

.wp-block-list:where(ul):where(:not([class*="is-style-"])) li:before {
  content: "";
  inset-block-start: .75em;
  inset-inline-start: 0;
  background: var(--color-primary);
  border-radius: var(--border-radius-full);
  block-size: .5em;
  inline-size: .5em;
  position: absolute;
  inset-block-start: calc(.5lh - .25em);
}

.wp-block-list.is-style-list-drawer {
  margin-inline: 0;
  padding: 0;
  list-style: none;
}

.wp-block-list.is-style-list-drawer li {
  border-block-start: 1px solid var(--color-neutral-medium);
  font-size: var(--font-size-small);
  padding-inline-start: 0;
}

.wp-block-list.is-style-list-drawer li:before {
  display: none;
}

.wp-block-list.is-style-list-drawer li a {
  padding: 10px var(--spacing-8);
  font: inherit;
  color: inherit;
  line-height: inherit;
  text-decoration: none;
  display: block;
}

.wp-block-list.is-style-list-drawer :where(.wp-block-list) {
  margin-inline: 0;
  padding: 0;
  list-style: none;
}

.wp-block-list.is-style-list-drawer :where(.wp-block-list) :where(a) {
  padding-inline-start: var(--spacing-32);
}

.wp-block-list.is-style-list-check {
  margin-inline: 0;
  padding: 0;
  list-style: none;
}

.wp-block-list.is-style-list-check ul {
  margin-inline: 0;
  padding: 0;
  list-style: none;
}

.wp-block-list.is-style-list-check li {
  font-size: inherit;
  padding-inline-start: 2em;
  line-height: 1.5;
  position: relative;
}

.wp-block-list.is-style-list-check li:before {
  content: "";
  aspect-ratio: 1;
  background: var(--color-neutral-strong);
  block-size: 1.5em;
  inline-size: 1.5em;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M21 12v7a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h11'/%3E%3C/svg%3E");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.wp-block-list.is-style-list-check li:after {
  content: "";
  background: var(--color-primary);
  block-size: 1.5em;
  inline-size: 1.5em;
  margin-block: auto;
  position: absolute;
  inset-block: 0;
  inset-inline-start: 0;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 11 12 14 22 4'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 11 12 14 22 4'/%3E%3C/svg%3E");
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}

.wp-block-list.is-style-list-sidebar {
  margin-inline: 0;
  padding: 0;
  list-style: none;
}

.wp-block-list.is-style-list-sidebar li {
  border-block-end: 1px solid var(--color-primary);
  font-size: var(--font-size-small);
  padding-inline-start: 0;
  font-weight: 500;
}

.wp-block-list.is-style-list-sidebar li:before {
  display: none;
}

.wp-block-list.is-style-list-sidebar li a {
  padding-block: var(--spacing-8);
  padding-inline: var(--spacing-8);
  color: inherit;
  text-decoration: none;
  transition: color .3s;
  display: block;
}

@media (any-hover: hover) {
  .wp-block-list.is-style-list-sidebar li a:hover {
    color: var(--color-accent);
  }
}

.wp-block-list.is-style-list-sidebar .wp-block-list {
  gap: var(--spacing-8);
  padding: 0;
  padding-inline-start: var(--spacing-8);
  padding-block: var(--spacing-8);
  border-block-start: 1px solid var(--color-primary);
  margin-inline: 0;
  list-style: none;
  display: grid;
}

.wp-block-list.is-style-list-sidebar .wp-block-list li {
  border-block-end: none;
  font-weight: 400;
}

.wp-block-list.is-style-list-sidebar .wp-block-list li a {
  align-items: center;
  gap: var(--spacing-8);
  padding-block: 0;
  padding-inline: 0;
  display: flex;
}

.wp-block-list.is-style-list-sidebar .wp-block-list li a:before {
  content: "";
  background: var(--color-primary);
  flex-shrink: 0;
  block-size: 1px;
  inline-size: 8px;
}

:where(.wp-block-group) > :first-child {
  margin-block-start: 0;
}

:where(.wp-block-group) > :last-child {
  margin-block-end: 0;
}

:where(.wp-block-group).is-style-group-speech-bubble-left, :where(.wp-block-group).is-style-group-speech-bubble-right {
  padding: var(--spacing-16) var(--spacing-24);
  border-radius: var(--spacing-16);
  background: var(--color-base-primary);
  font-size: var(--font-size-small);
  font-weight: 400;
  position: relative;
}

:is(:where(.wp-block-group).is-style-group-speech-bubble-left, :where(.wp-block-group).is-style-group-speech-bubble-right):after {
  content: "";
  background: inherit;
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  block-size: 20px;
  inline-size: 12px;
  display: block;
  position: absolute;
  inset-block-start: var(--spacing-24);
  inset-inline-end: calc(100% - 1px);
}

:where(.wp-block-group).is-style-group-speech-bubble-left:after {
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
  inset-block-start: var(--spacing-24);
  inset-inline-end: calc(100% - 1px);
}

:where(.wp-block-group).is-style-group-speech-bubble-right:after {
  clip-path: polygon(0 0, 100% 50%, 0 100%);
  inset-block-start: var(--spacing-24);
  inset-inline-start: calc(100% - 1px);
}

:where(.wp-block-group).is-style-group-box-gray {
  padding: var(--spacing-16);
  background: var(--color-neutral-soft);
}

:where(.wp-block-group).is-style-group-box-border {
  padding: var(--spacing-16);
  border: 1px solid var(--color-neutral-medium);
}

.wp-block-rss__item {
  gap: var(--spacing-8);
  padding-block: var(--spacing-24);
  border-block-end: 1px solid var(--color-neutral-strong);
  grid-template-areas: "date"
                       "title";
  display: grid;
}

.wp-block-rss__item-title {
  color: var(--color-primary);
  font-size: var(--font-size-large);
  grid-area: title;
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-rss__item-publish-date {
  color: var(--color-neutral-strong);
  font-size: var(--font-size-base);
  grid-area: date;
  font-weight: 600;
  line-height: 1.5;
}

.wp-block-quote {
  padding-inline: var(--spacing-16);
  padding-block: var(--spacing-16);
  border-inline-start: 4px solid var(--color-neutral-medium);
  background: var(--color-neutral-soft);
  border-radius: 0 var(--border-radius-4) var(--border-radius-4) 0;
}

.wp-block-quote > :first-child {
  margin-block-start: 0;
}

.wp-block-quote > :last-child {
  margin-block-end: 0;
}

.wp-block-quote cite {
  font-size: var(--font-size-small);
  color: var(--color-neutral-strong);
  margin-block-start: var(--spacing-8);
  font-style: normal;
  display: block;
}

.wp-block-flexible-table-block-table figcaption {
  margin-block: var(--spacing-8) 0;
  color: var(--color-neutral-strong);
  font-size: var(--font-size-small);
  line-height: 1.5;
}

.u-position-relative {
  position: relative !important;
}

.u-position-absolute {
  position: absolute !important;
}

.u-position-fixed {
  position: fixed !important;
}

.u-position-sticky {
  position: sticky !important;
}

.u-z-index--1 {
  z-index: -1 !important;
}

.u-z-index-0 {
  z-index: 0 !important;
}

.u-z-index-1 {
  z-index: 1 !important;
}

.u-z-index-2 {
  z-index: 2 !important;
}

.u-z-index-3 {
  z-index: 3 !important;
}

.u-underline-accent {
  text-decoration-skip-ink: none;
  text-decoration-line: underline;
  text-decoration-style: solid;
  -webkit-text-decoration-color: var(--color-accent);
  text-decoration-color: var(--color-accent);
  text-underline-offset: .12em;
  text-underline-position: from-font;
  font-weight: 600;
  line-height: 1.5;
  text-decoration-thickness: .13em;
}

@media not (min-width: 782px) {
  .u-flex-direction-column-reverse-max-columns {
    flex-direction: column-reverse !important;
  }
}

.u-align-items-start {
  align-items: start !important;
}

.u-align-items-center {
  align-items: center !important;
}

.u-align-items-end {
  align-items: end !important;
}

.u-align-items-baseline {
  align-items: baseline !important;
}

.u-align-items-stretch {
  align-items: stretch !important;
}

.u-inset-block-start-0 {
  inline-size: 100% !important;
  inset-block-start: 0 !important;
}

.u-inset-block-end-0 {
  inline-size: 100% !important;
  inset-block-end: 0 !important;
}

.u-inset-inline-start-0 {
  inline-size: 100% !important;
  inset-inline-start: 0 !important;
}

.u-inset-inline-end-0 {
  inline-size: 100% !important;
  inset-inline-end: 0 !important;
}

.u-block-size-100-percent {
  block-size: 100% !important;
}

.u-inline-size-100-percent {
  inline-size: 100% !important;
}

.u-inline {
  display: inline !important;
}

.u-block {
  display: block !important;
}

.u-inline-block {
  display: inline-block !important;
}
