@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

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

:where(img, picture, svg) {
  max-width: 100%;
  block-size: auto;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(textarea:not([rows])) {
  min-height: 8em;
}

:root {
  --leading-trim: calc((1em - 1lh) / 2);
  --narrow-size: var(--wp--custom--container--narrow, 800px);
  --content-size: var(--wp--style--global--content-size, 1024px);
  --wide-size: var(--wp--style--global--wide-size, 1200px);
  --color-base: var(--wp--preset--color--base, #fff);
  --color-contrast: var(--wp--preset--color--contrast, #0a0a0a);
  --color-txt: var(--wp--preset--color--txt, #d9d9d9);
  --color-gray: var(--wp--preset--color--gray, #232323);
  --color-key: var(--wp--preset--color--key, #1d4ed8);
  --color-key-2: var(--wp--preset--color--key-2, #93c5fd);
  --color-key-3: var(--wp--preset--color--key-3, #3198ff);
  --color-border-white: var(--wp--preset--color--border-white, rgba(255, 255, 255, .2));
  --color-line: var(--color-border-white);
  --color-accent-2: #000;
  --color-accent-3: #333;
  --color-accent-5: #666;
  --color-light-gray: #888;
  --color-placeholder: #9aa0a6;
  --color-border: #ccc;
  --color-on-accent: var(--color-base);
  --color-accent: var(--color-contrast);
  --color-link: var(--color-contrast);
  --color-link-hover: var(--color-key);
  --color-disabled: var(--color-light-gray);
  --main-color: var(--color-base);
  --main-txt-color: var(--color-txt);
  --main-base-color: var(--color-contrast);
  --outline: 2px solid var(--color-accent-3);
  --outline-offset: 2px;
  --underline-offset: .25em;
  --radius-l: var(--wp--custom--radius--l, 999px);
  --font-base: var(--wp--preset--font-family--noto-sans-jp, 'Local Noto Sans JP', 'Noto Sans JP', sans-serif);
  --font-jp: var(--font-base);
  --font-noto: var(--font-base);
  --fz-xs: var(--wp--custom--font-size--xs, 12px);
  --fz-sm: var(--wp--preset--font-size--small, 14px);
  --fz-md: var(--wp--preset--font-size--medium, 16px);
  --fz-lg: var(--wp--preset--font-size--large, 22px);
  --fz-xl: var(--wp--preset--font-size--x-large, 28px);
  --fz-xxl: var(--wp--preset--font-size--xx-large, 36px);
  --fz-l: var(--wp--custom--font-size--l, 18px);
  --ls-normal: var(--wp--custom--letter-spacing--base, 0.02em);
  --ls-wide: var(--wp--custom--letter-spacing--wide, 0.1em);
  --lh-normal: var(--wp--custom--line-height--m, 1.8);
  --lh-narrow: var(--wp--custom--line-height--xxl, 1.4);
  --lh-loose: var(--wp--custom--line-height--s, 1.6);
  --spacing-20: var(--wp--preset--spacing--20, 12px);
  --spacing-30: var(--wp--preset--spacing--30, 24px);
  --spacing-40: var(--wp--preset--spacing--40, 40px);
  --spacing-50: var(--wp--preset--spacing--50, 80px);
  --spacing-60: var(--wp--preset--spacing--60, 120px);
  --spacing-xxxs: var(--wp--custom--gap--xxxs, 8px);
  --spacing-xs: var(--wp--custom--gap--xs, 20px);
  --spacing-xl: var(--wp--custom--gap--xl, 100px);
}

* {
  min-inline-size: 0;
  min-block-size: 0;
}

:root {
  --global-padding: clamp(1.25rem, 0.653rem + 2.5vw, 1.875rem);
  --header-height: 64px;
}

html {
  scroll-behavior: smooth;
  scroll-padding-block-start: var(--header-height);
  -webkit-text-size-adjust: none;
}

body {
  scrollbar-gutter: stable;
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--color-base);
  font-family: var(--font-noto);
  font-style: normal;
  font-weight: 400;
  letter-spacing: var(--ls-normal);
  overflow-wrap: anywhere;
  line-break: strict;
  -webkit-font-smoothing: antialiased;
}

:where(h1, h2, h3) {
  line-height: var(--lh-narrow);
  word-break: auto-phrase;
}

:where(h4, h5, h6) {
  word-break: auto-phrase;
}

:where(ul, ol) {
  padding-inline-start: 2em;
  line-height: var(--lh-narrow);
}

:where(ul) {
  list-style-type: disc;
}

:where(ol) {
  list-style-type: decimal;
}

:where(address) {
  font-style: normal;
}
:where(a):focus-visible {
  text-decoration-offset: 2px;
}

:where(input, button, textarea, select) {
  font: inherit;
  color: inherit;
}

:where(input[type=text], input[type=email], input[type=tel], input[type=password], textarea, select) {
  padding: 0.25em 0.5em;
  border: 1px solid var(--color-gray);
}

:where(select) {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  padding-inline-end: 32px;
  background-image: url("data:image/svg+xml;charset=US-ASCII,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22UTF-8%22%3F%3E%3Csvg%20id%3D%22select-bg%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpath%20d%3D%22M14.24%2C15.4l-5.48-6%2C1.28-1.4%2C4.2%2C4.6%2C4.2-4.6%2C1.28%2C1.4-5.48%2C6Z%22%20fill%3D%22%23000%22%20stroke-width%3D%220%22%2F%3E%3C%2Fsvg%3E");
  background-size: 24px;
  background-position: right 4px center;
  background-repeat: no-repeat;
}

:where(textarea) {
  inline-size: 40em;
  min-block-size: 5lh;
  max-block-size: 10lh;
  field-sizing: content;
  line-height: var(--lh-narrow);
}

:where(button, [type=button], [type=reset], [type=submit]) {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  touch-action: manipulation;
}

:where(label[for], select, summary, [role=tab], [role=button]) {
  cursor: pointer;
}

:where(.wp-site-blocks :focus) {
  outline: none;
}

:focus-visible {
  outline: var(--outline);
  outline-offset: var(--outline-offset);
  outline-color: var(--wp--preset--color--base);
}

:where(img, svg, picture) {
  display: inline-block;
  max-width: 100%;
  block-size: auto;
}

:where(svg) {
  fill: currentColor;
}

:where(figure) {
  margin: 0;
  border-radius: 4px;
  overflow: hidden;
  line-height: 1;
}
:where(figure) > img {
  display: block;
}
.wp-site-blocks {
  min-height: 100dvh;
  display: grid;
  grid-template-areas: "header" "main" "footer";
  grid-template-rows: auto 1fr auto;
}

.wp-site-blocks > header {
  grid-area: header;
  position: fixed;
  top: 0;
  z-index: 100;
  inline-size: 100%;
  background: var(--color-contrast);
}

.wp-site-blocks > main {
  grid-area: main;
  overflow-x: clip;
  overflow-y: visible;
}

.wp-site-blocks > footer {
  grid-area: footer;
  margin-block-start: 0 !important;
}
.wp-block-navigation .wp-block-navigation__responsive-container-open,
.wp-block-navigation .wp-block-navigation__responsive-container-close {
  position: relative;
  inline-size: 1.5rem;
  block-size: 1.5rem;
}
.wp-block-navigation .wp-block-navigation__responsive-container-open svg,
.wp-block-navigation .wp-block-navigation__responsive-container-close svg {
  display: none;
}

.wp-block-navigation .wp-block-navigation__responsive-container-open::before,
.wp-block-navigation .wp-block-navigation__responsive-container-close::before,
.wp-block-navigation .wp-block-navigation__responsive-container-close::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  inline-size: 1.25rem;
  block-size: 0.125rem;
  margin-block-start: -0.0625rem;
  margin-inline-start: -0.625rem;
  background-color: currentColor;
}

.wp-block-navigation .wp-block-navigation__responsive-container-open::before {
  box-shadow: 0 -0.4375rem currentColor, 0 0.4375rem currentColor;
}

.wp-block-navigation .wp-block-navigation__responsive-container-close::before {
  transform: rotate(45deg);
}

.wp-block-navigation .wp-block-navigation__responsive-container-close::after {
  transform: rotate(-45deg);
}

.el_secTitle {
  text-align: center;
}

.el_secTitle_sub {
  position: relative;
  justify-content: center;
  margin-block-end: var(--spacing-xs);
  color: var(--color-txt);
  font-size: var(--fz-xs);
  font-weight: 400;
  letter-spacing: var(--ls-wide);
  line-height: var(--lh-narrow);
  text-transform: uppercase;
}

.el_secTitle_title {
  margin: 0;
  font-size: var(--fz-xxl);
  font-weight: 700;
  line-height: var(--lh-narrow);
}

.el_secTitle__black .el_secTitle_sub {
  color: var(--color-contrast) !important;
}
.el_secTitle__black .el_secTitle_title {
  color: var(--color-contrast) !important;
}

.el_secTitleLower_en {
  color: var(--color-txt);
  font-size: var(--fz-xs);
  font-weight: 400;
  letter-spacing: var(--ls-wide);
  line-height: var(--lh-narrow);
  text-transform: uppercase;
}

.el_secTitleLower_body {
  position: relative;
  padding-inline-start: var(--spacing-xs);
}

.el_secTitleLower_body::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  inline-size: 0.25rem;
  block-size: 100%;
  background-image: linear-gradient(180deg, var(--color-key), color-mix(in srgb, var(--color-key) 20%, transparent));
}

.el_secTitleLower_title {
  margin: 0 0 var(--spacing-20);
  color: var(--color-base);
  font-size: var(--fz-xxl);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-narrow);
}

.el_secTitleLower_desc {
  margin: 0;
  color: var(--color-key-3);
  font-size: var(--fz-md);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-narrow);
}

.el_secHeading_num {
  position: relative;
  display: flex;
  gap: var(--spacing-20);
  align-items: center;
  color: var(--color-key-3);
  font-weight: 700;
  white-space: nowrap;
}

.el_secHeading_num::after {
  content: "";
  display: block;
  inline-size: 20px;
  block-size: 1px;
  background-color: var(--color-key);
}

.el_secHeading_txt {
  margin: 0;
  color: var(--color-base);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-narrow);
}

.el_secHeading_sub {
  line-height: var(--lh-narrow);
}

.el_grdTitle {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-xxxs);
  margin: 0;
}

.el_grdTitle_line {
  --reveal: 100%;
  --grd-scale: 1;
  position: relative;
  display: inline-flex;
  padding-block: 2px;
  padding-inline: var(--spacing-xxxs) 50px;
  overflow: hidden;
  font-size: var(--fz-xl);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-narrow);
  white-space: nowrap;
}

.el_grdTitle_line::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(to right, var(--color-key) 0%, transparent 100%);
  transform: scaleX(var(--grd-scale));
  transform-origin: left;
}

.el_grdTitle_line_txt {
  position: relative;
  z-index: 1;
  display: inline-block;
  color: var(--color-base);
  -webkit-mask-image: linear-gradient(to right, #000 var(--reveal), transparent var(--reveal));
          mask-image: linear-gradient(to right, #000 var(--reveal), transparent var(--reveal));
}

.el_dotLabel {
  display: flex;
  align-items: center;
  gap: var(--spacing-xxxs);
}

.el_dotLabel::before {
  content: "";
  inline-size: 4px;
  aspect-ratio: 1/1;
  flex-shrink: 0;
  background-color: var(--color-key);
}

.el_badge {
  display: inline-block;
  padding: 0 6px 1px;
  color: var(--color-base);
  font-size: var(--fz-xs);
  font-weight: 400;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.el_badge__required {
  background-color: var(--color-key);
}

.el_badge__optional {
  border: 1px solid var(--color-border);
  background-color: var(--color-base);
  color: var(--color-light-gray);
}

.el_input,
.el_textarea {
  inline-size: 100%;
  padding: var(--spacing-20);
  border: 1px solid var(--color-border);
  border-radius: 0.25rem;
  background-color: var(--color-base);
  color: var(--color-contrast);
  font: inherit;
  letter-spacing: var(--ls-normal);
}

.el_textarea {
  min-height: 12.5rem;
  resize: vertical;
}

.el_input::-moz-placeholder, .el_textarea::-moz-placeholder {
  color: color-mix(in srgb, var(--color-contrast) 50%, transparent);
}

.el_input::placeholder,
.el_textarea::placeholder {
  color: color-mix(in srgb, var(--color-contrast) 50%, transparent);
}

.el_input:focus,
.el_textarea:focus {
  border-color: var(--color-accent-5);
}

.el_input:focus-visible,
.el_textarea:focus-visible {
  outline: 2px solid var(--color-contrast);
  outline-offset: 1px;
}

.el_checkbox {
  inline-size: 1.125rem;
  block-size: 1.125rem;
  margin-block: 0;
  margin-inline-start: 0;
  accent-color: var(--color-key);
  vertical-align: -3px;
}

.wp-block-button__link {
  transition: background-color 0.3s ease, color 0.3s ease;
}
.wp-block-button__link:focus-visible {
  background: var(--wp--preset--color--base);
  color: var(--wp--preset--color--key);
  outline-color: var(--wp--preset--color--base);
}
.wp-block-button.is-style-white-bg .wp-block-button__link:focus-visible {
  background-color: var(--wp--preset--color--key-2);
}

.wp-block-button.is-style-ghost .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
  border-color: var(--color-border-white);
  background-color: transparent;
  color: var(--color-base);
}
.wp-block-button.is-style-ghost .wp-block-button__link:focus-visible {
  background-color: var(--color-border-white);
}
.wp-block-button.is-style-outline .wp-block-button__link:focus-visible {
  color: var(--color-contrast);
  background-color: var(--color-base);
}

.wp-block-button__small .wp-block-button__link {
  padding-inline: 1.43em !important;
  padding-block: 0.58em !important;
}

.el_borderBtn .wp-block-button__link {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 6px;
  padding-inline-end: calc(2.25rem - 1px);
  border-color: var(--color-border-white);
}
.el_borderBtn .wp-block-button__link:focus-visible {
  background: color-mix(in srgb, var(--color-base) 30%, transparent);
}
.el_borderBtn .wp-block-button__link::after {
  content: "";
  display: block;
  inline-size: 16px;
  block-size: 16px;
  flex-shrink: 0;
  background-color: var(--color-base);
  -webkit-mask-image: url(../img/icon-arrow-right.svg);
          mask-image: url(../img/icon-arrow-right.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.el_btnSubmit {
  min-inline-size: 178px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  color: inherit;
  font: inherit;
  cursor: pointer;
  touch-action: manipulation;
  padding: 0.875rem 2rem;
  border-radius: var(--radius-l);
  background-color: var(--color-key);
  color: var(--color-base);
  font-weight: 400;
  transition: opacity 0.3s ease;
}
.el_btnSubmit:focus-visible {
  opacity: 0.85;
}
.el_btnSubmit:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

.el_linkArw {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-xxxs);
  color: var(--color-key);
  font-size: var(--fz-sm);
  text-decoration: none;
  transition: color 0.3s ease;
}
.el_linkArw:focus-visible {
  color: var(--color-key-3);
}

.el_linkArw::before {
  content: "";
  flex-shrink: 0;
  inline-size: 0.9375rem;
  block-size: 0.9375rem;
  background-color: var(--color-key);
  -webkit-mask-image: url(../img/icon-arrow-right-sm.svg);
          mask-image: url(../img/icon-arrow-right-sm.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  transform: scaleX(-1);
}

.hp_postContent h2,
.is-style-underline-key {
  margin-block-start: 2.5em;
  padding-block-end: 0.5em;
  border-block-end: 2px solid var(--color-key);
  color: var(--color-main);
  font-weight: 700;
  letter-spacing: 0.04em;
  line-height: 1.5;
}

.hp_postContent h2 {
  font-size: 1.25rem;
}

.hp_postContent h3,
.is-style-border-left-key {
  margin-block-start: 2.5em;
  padding-inline-start: 0.796875rem;
  border-inline-start: 3px solid var(--color-key);
  color: var(--color-contrast);
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: 1.5;
}

.hp_postContent h3 {
  font-size: 1.0625rem;
}

.hp_postContent h4 {
  margin-block-start: 2.5em;
  font-size: 0.9375rem;
}

.hp_postContent h5 {
  margin-block-start: 2.5em;
  font-size: 0.875rem;
}

.hp_postContent h6 {
  margin-block-start: 2.5em;
  font-size: 0.75rem;
  font-weight: 400;
}

.hp_postContent p {
  font-size: 0.9375rem;
}

.hp_postContent ul,
.hp_postContent ol {
  margin-block-start: 0.8em;
  font-size: 0.9375rem;
}

.hp_postContent ul li + li,
.hp_postContent ol li + li {
  margin-block-start: 0.5em;
}

.hp_postContent ul li::marker,
.hp_postContent ol li::marker {
  color: var(--color-key);
}

.hp_postContent h2 + p,
.hp_postContent h2 + ul,
.hp_postContent h2 + ol,
.hp_postContent h3 + p,
.hp_postContent h3 + ul,
.hp_postContent h3 + ol,
.hp_postContent h4 + p,
.hp_postContent h4 + ul,
.hp_postContent h4 + ol,
.hp_postContent h5 + p,
.hp_postContent h5 + ul,
.hp_postContent h5 + ol,
.hp_postContent h6 + p,
.hp_postContent h6 + ul,
.hp_postContent h6 + ol {
  margin-block-start: 0.8em;
}

.wp-block-lazyblock-breadcrumbs {
  padding-block: calc(var(--header-height) + var(--spacing-30)) var(--spacing-30);
  background: #f5f5f5;
  font-size: var(--fz-xs);
}

.bl_bcWrapper {
  inline-size: min(100%, var(--wide-size) + var(--global-padding) * 2);
  margin-inline: auto !important;
  padding: 0 var(--global-padding);
}

.bl_bc {
  max-width: none;
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  gap: var(--spacing-20) var(--spacing-30);
  padding: 0;
}

.bl_bc a {
  color: var(--color-contrast) !important;
}

.js-scrollHint {
  overflow-x: auto;
  overflow-y: hidden !important;
}

.bl_compareTable {
  inline-size: 100%;
  min-inline-size: 56.25rem;
  border-collapse: separate;
  border-spacing: 0;
  background-color: var(--color-base);
  table-layout: fixed;
}

.bl_compareTable col:first-child {
  width: 18.75rem;
}

.bl_compareTable th,
.bl_compareTable td {
  padding: var(--spacing-20);
  border-inline-end: 1px solid rgb(217, 217, 217);
  color: var(--color-contrast);
  font-size: var(--fz-sm);
  line-height: var(--lh-loose);
  text-align: center;
}

.bl_compareTable th {
  padding-inline: var(--spacing-30);
}

.bl_compareTable th:last-child,
.bl_compareTable td:last-child {
  border-inline-end: none;
}

.bl_compareTable thead th {
  padding: var(--spacing-xxxs) var(--spacing-20);
  border-inline-end-color: var(--color-border-white);
  background-color: var(--color-gray);
  color: var(--color-base);
  font-weight: 700;
}

.bl_compareTable_planHead {
  text-align: left;
}

.bl_compareTable_planHead_price {
  color: var(--color-txt);
  font-size: var(--fz-xs);
  font-weight: 400;
}

.bl_compareTable_feature {
  padding-inline: var(--spacing-xs);
  border-inline-end-color: rgb(217, 217, 217);
  font-weight: 400;
  text-align: left;
}

.bl_compareTable_highlight {
  border-inline: 2px solid var(--color-key) !important;
  color: var(--color-key) !important;
  font-weight: 700;
}

thead .bl_compareTable_highlight {
  border-inline: none;
  background-color: var(--color-key) !important;
  color: var(--color-base) !important;
}

.bl_compareTable tbody tr:nth-child(even) {
  background-color: rgba(217, 217, 217, 0.2);
}

.bl_compareTable_note {
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.bl_compareTable tbody th {
  text-align: left;
}

.bl_cta {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
  background-color: var(--color-key);
}

.bl_cta::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  inline-size: min(100%, 500px);
  block-size: 100%;
  background-image: url(../img/bg_price.webp);
  background-size: cover;
  background-origin: top left;
  pointer-events: none;
}

.bl_cta_inner {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-30);
  inline-size: 100%;
  max-width: var(--narrow-size);
  padding-block: var(--spacing-50);
  padding-inline: var(--spacing-xs);
  box-sizing: content-box;
}

.bl_cta_body {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-20);
}

.bl_cta_title {
  margin: 0;
  color: var(--color-base);
  font-size: var(--fz-xl);
  font-weight: 700;
  line-height: var(--lh-narrow);
}

.bl_cta_text {
  margin: 0;
  color: color-mix(in srgb, var(--color-base) 80%, transparent);
  font-size: var(--fz-md);
  line-height: var(--lh-narrow);
}

.bl_cta_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.375rem;
  min-width: 11.6875rem;
  padding-block: 0.75rem;
  padding-inline: 1.75rem;
  border-radius: var(--radius-l);
  background-color: var(--color-base);
  color: var(--color-contrast);
  font-size: var(--fz-md);
  line-height: var(--lh-normal);
  text-align: center;
  text-decoration: none;
  transition: opacity 0.3s ease;
}
.bl_cta_btn:focus-visible {
  opacity: 0.85;
}

.bl_faq_list {
  margin-block-start: var(--spacing-50);
}

.bl_faq_item {
  border-block-end: 1px solid var(--color-line);
}
.bl_faq_item:first-child {
  border-block-start: 1px solid var(--color-line);
}

.bl_faq_q {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 4.5625rem;
  padding-block: var(--spacing-30);
  padding-inline-end: var(--spacing-30);
  color: var(--color-base);
  font-size: var(--fz-md);
  line-height: var(--lh-narrow);
  cursor: pointer;
  list-style: none;
}
.bl_faq_q::-webkit-details-marker {
  display: none;
}
.bl_faq_q:focus-visible {
  outline: 2px solid var(--color-key);
  outline-offset: 2px;
}

.bl_faq_qText {
  min-width: 0;
  padding-inline-end: var(--spacing-40);
}

.bl_faq_icon {
  position: relative;
  inline-size: 1.25rem;
  block-size: 1.25rem;
  flex-shrink: 0;
}
.bl_faq_icon::before, .bl_faq_icon::after {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  inline-size: 13px;
  block-size: 1px;
  border-radius: var(--radius-l);
  background-color: var(--color-base);
  transition: rotate 0.2s ease;
  translate: -50% -50%;
}
.bl_faq_icon::after {
  rotate: 90deg;
}

.bl_faq_item.is-opened .bl_faq_icon::after,
.bl_faq_item:not(.is-enhanced)[open] .bl_faq_icon::after {
  rotate: 0deg;
}

.bl_faq_a {
  overflow: hidden;
  color: var(--color-txt);
}

.bl_faq_aInner {
  padding-block: 0 var(--spacing-30);
}
.bl_faq_aInner p {
  margin: 0;
}

.bl_footer {
  display: grid !important;
  grid-template-areas: "company" "contact" "menu" "term";
}

.bl_footer_company {
  grid-area: company;
}

.bl_footer_contact {
  grid-area: contact;
}

.bl_footer_menu {
  grid-area: menu;
}

.bl_footer_term {
  grid-area: term;
}

.bl_form {
  max-width: var(--narrow-size);
  margin-inline: auto;
}

.bl_form_lead {
  margin: 0 0 var(--spacing-40);
  color: var(--color-accent-3);
  font-size: var(--fz-md);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.bl_form_list {
  margin: 0;
}

.bl_form_term {
  display: flex;
  align-items: center;
  gap: var(--spacing-xxxs);
  margin-block-end: var(--spacing-xxxs);
  color: var(--color-contrast);
  font-size: var(--fz-sm);
  font-weight: 700;
}

.bl_form_desc {
  margin: 0 0 var(--spacing-30);
}
.bl_form_desc:last-of-type {
  margin-block-end: var(--spacing-xxxs);
}
.bl_form_desc .wpcf7-form-control-wrap {
  display: block;
}

.bl_form_note {
  margin: 0 0 var(--spacing-40);
  color: var(--color-contrast);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.bl_form_privacy {
  margin: 0 0 var(--spacing-40);
  padding-block: var(--spacing-30);
  border-block-start: 1px solid var(--color-border);
}
.bl_form_privacy > * {
  margin-block-end: var(--spacing-xs);
}
.bl_form_privacy > *:last-child {
  margin-block-end: 0;
}

.bl_form_privacy_title {
  margin: 0;
  color: var(--color-contrast);
  font-size: var(--fz-sm);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.bl_form_privacy_txt {
  margin-block-start: 1lh;
  color: var(--color-contrast);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}
.bl_form_privacy_txt a {
  color: var(--color-key);
  text-decoration: none;
}
.bl_form_privacy_txt a:focus-visible {
  text-decoration: underline;
}

.bl_form_agree {
  display: flex;
  align-items: center;
  gap: var(--spacing-20);
  font-size: var(--fz-sm);
}

.bl_form_agree .wpcf7-list-item {
  margin: 0;
}

.bl_form_caution {
  margin: 0 0 var(--spacing-40);
}

.bl_form_caution_title {
  margin: 0 0 var(--spacing-20);
  color: var(--color-contrast);
  font-size: var(--fz-sm);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
}

.bl_form_caution_list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xxxs);
  margin: 0;
  padding: 0;
  list-style: none;
}

.bl_form_caution_list li {
  display: flex;
  gap: var(--spacing-xxxs);
  color: var(--color-gray);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}
.bl_form_caution_list li::before {
  content: "・";
  flex-shrink: 0;
  color: var(--color-light-gray);
}

.bl_form_caption {
  margin: var(--spacing-30) 0 0;
  color: var(--color-light-gray);
  font-size: var(--fz-sm);
}

.bl_header {
  inline-size: min(100%, var(--wp--style--global--wide-size));
  margin-inline: auto;
}

.bl_header_inner {
  display: grid !important;
  gap: var(--spacing-30);
  grid-template: auto/1fr auto 1fr;
  inline-size: 100%;
}

.bl_header_logo {
  max-width: 172px;
  color: var(--wp--preset--color--base);
}

.bl_header_menu {
  gap: 30px;
}

.bl_header_btn {
  max-width: 172px;
  justify-self: end;
  color: var(--wp--preset--color--base);
}

.bl_header_contactSp {
  inline-size: 100%;
}
.bl_header_contactSp .wp-block-button {
  inline-size: 90% !important;
}
.bl_header_contactSp .wp-block-button__link {
  display: block;
  inline-size: 100%;
}

.is-menu-open .wp-block-navigation__container {
  inline-size: 90%;
  margin-inline: auto;
  gap: 0;
}
.is-menu-open .wp-block-navigation .wp-block-navigation-item {
  inline-size: 100%;
  border-block-end: 1px solid var(--wp--preset--color--border-white);
}
.is-menu-open .wp-block-navigation .wp-block-navigation-item:first-child {
  border-block-start: 1px solid var(--wp--preset--color--border-white);
}
.is-menu-open .wp-block-navigation .wp-block-navigation-item .wp-block-navigation-item__content {
  display: block;
  inline-size: 100%;
  padding: 1em 0;
  text-align: center;
  margin-inline: auto;
  outline-offset: -4px;
}

.bl_mediaTxt_img {
  position: relative;
  overflow: hidden;
}

.bl_mediaTxt_media_img img {
  display: block;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.bl_mediaTxt_body {
  position: relative;
  z-index: 2;
}

.bl_mediaTxt_txt p {
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.bl_mediaTxt_txt_note {
  font-size: var(--fz-xs);
}

.bl_pageTitle {
  --h1-border-left-color: linear-gradient(180deg, color-mix(in srgb, var(--color-base) 90%, transparent), var(--color-border-white));
  color: var(--color-base);
  background-repeat: no-repeat;
  background-size: min(100%, 1920px) 100% !important;
  background-position: center bottom;
}

.bl_pageTitle__post {
  --h1-border-left-color: linear-gradient(180deg, var(--color-key) 0%, var(--color-key) 100%);
  color: var(--color-contrast);
}
.bl_pageTitle__post .bl_pageTitle_en::before {
  background-color: var(--color-contrast);
}
.bl_pageTitle__post .bl_pageTitle_txt {
  color: var(--color-contrast);
  font-size: var(--wp--preset--font-size--xx-large) !important;
}

.bl_pageTitle_en {
  position: relative;
  margin: 0 0 var(--spacing-30);
  padding-inline-start: 2.75rem;
  font-size: var(--fz-xs);
  font-weight: 400;
  letter-spacing: var(--ls-wide);
  line-height: var(--lh-narrow);
  text-transform: uppercase;
}
.bl_pageTitle_en::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  inline-size: 2rem;
  block-size: 1px;
  background-color: var(--color-base);
  transform: translateY(-50%);
  opacity: 0.6;
}

.bl_pageTitle_txt {
  position: relative;
  padding-inline-start: 1.5rem;
  color: var(--color-base);
  font-size: min(9.2vw, 52px);
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: var(--lh-narrow);
}
.bl_pageTitle_txt::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  inline-size: 0.25rem;
  block-size: 100%;
  background-image: var(--h1-border-left-color);
}

.bl_pageTitle_copy {
  font-size: var(--fz-l);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.bl_planCard {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: var(--spacing-30);
  block-size: 100%;
  padding: var(--spacing-30) calc(var(--spacing-40) - 4px) !important;
  border: 1px solid var(--color-border-white);
  border-radius: 10px;
  background-color: var(--color-contrast);
  box-shadow: 0 0 3.75rem color-mix(in srgb, var(--color-key) 25%, transparent);
}

.bl_planCard__featured {
  border-color: var(--color-key-3);
  background-color: color-mix(in srgb, var(--color-key) 50%, transparent);
}

.bl_planCard_head {
  grid-area: head;
}

.bl_planCard_name {
  font-size: var(--fz-l);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.bl_planCard__featured .bl_planCard_name {
  color: var(--color-key-3);
}

.bl_planCard_desc {
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.bl_planCard_price {
  display: flex;
  align-items: flex-end;
  gap: var(--spacing-20);
}

.bl_planCard_price_value {
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
}

.bl_planCard_price_unit {
  color: var(--color-txt);
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
}

.bl_planCard_list {
  grid-area: list;
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xxxs);
  flex: 1 0 0;
  margin: 0;
  padding: var(--spacing-30) 0 0;
  border-block-start: 1px solid color-mix(in srgb, var(--color-base) 12%, transparent);
  list-style: none;
}

.bl_planCard_list li {
  display: flex;
  align-items: center;
  gap: var(--spacing-20);
  margin: 0;
  color: var(--color-txt);
  font-size: 0.8125rem;
  letter-spacing: var(--ls-normal);
}
.bl_planCard_list li::before {
  content: "";
  flex-shrink: 0;
  inline-size: 1.5rem;
  block-size: 1.5rem;
  background-image: url(../img/icon-check.svg);
  background-repeat: no-repeat;
}

.bl_planCard__featured .bl_planCard_list li::before {
  background-image: url(../img/icon-check-featured.svg);
}

.bl_planCard_btn {
  grid-area: btn;
}

.bl_postList_item {
  position: relative;
  display: grid;
  gap: var(--spacing-xxxs);
  justify-content: start;
  margin-inline: auto;
  padding-inline-end: 3rem;
  border-block-start: 1px solid var(--color-border-white);
}

.bl_postList_item:last-child {
  border-block-end: 1px solid var(--color-border-white);
}

li:has(.bl_postList_item) {
  margin-block-start: 0 !important;
}

.bl_postList_date {
  position: relative;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin: 0 !important;
  padding-inline-end: var(--wp--preset--font-size--medium);
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}
.bl_postList_date::after {
  display: none;
  content: "";
  position: absolute;
  right: 0;
  inset-block: 0;
  inline-size: 1px;
  block-size: calc(100% - 10px);
  margin-block: auto;
  background: var(--color-border-white);
}

.bl_postList_title {
  color: var(--color-base);
  font-weight: 400;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}
.bl_postList_title a {
  color: inherit;
  text-decoration: none;
  transition: color 0.3s ease;
}
.bl_postList_title a::after {
  content: "";
  position: absolute;
  inset: 0;
}
.bl_postList_title a::before {
  content: "";
  position: absolute;
  top: 50%;
  right: var(--spacing-30);
  inline-size: 0.9375rem;
  block-size: 0.9375rem;
  background-color: var(--color-key);
  -webkit-mask-image: url(../img/icon-arrow-right-sm.svg);
          mask-image: url(../img/icon-arrow-right-sm.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  transform: translateY(-50%);
  transition: transform 0.3s ease;
}
.bl_postList_title a:focus-visible {
  color: var(--color-key-2);
}

.bl_pagination .wp-block-query-pagination-numbers {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-xxxs);
}

.bl_pagination .page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 2.25rem;
  block-size: 2.25rem;
  border: 1px solid var(--color-border-white);
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  text-decoration: none;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.bl_pagination .page-numbers.dots {
  border-color: transparent;
}

.bl_pagination .page-numbers.current {
  border-color: var(--color-key);
  background-color: var(--color-key);
  color: var(--color-base);
}
.bl_pagination a.page-numbers:focus-visible {
  border-color: var(--color-key);
  color: var(--color-base);
}

.bl_postNav {
  border-block-start: 1px solid var(--color-border-white);
  background-color: var(--color-contrast);
}

.bl_postNav_content {
  position: relative;
}

.bl_postNav_content::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  inline-size: 1px;
  block-size: 100%;
  background: var(--color-border-white);
}

.bl_postNav_prev,
.bl_postNav_next {
  display: grid;
  grid-template-rows: 1fr auto;
  align-items: center;
  flex: 1 1 0;
  gap: var(--spacing-xxxs);
  min-inline-size: 0;
  color: var(--color-base);
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.bl_postNav_prev {
  grid-template-columns: 15px auto;
  grid-template-areas: "arw label" "link link";
}

.bl_postNav_next {
  grid-template-columns: auto 15px;
  grid-template-areas: "label arw" "link link";
  justify-content: flex-end;
  text-align: right;
}

.bl_postNav_prev a,
.bl_postNav_next a {
  grid-area: link;
  display: -webkit-box;
  overflow: hidden;
  min-inline-size: 0;
  color: var(--color-base) !important;
  text-decoration: none;
  word-break: break-word;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  line-clamp: 1;
  transition: color 0.3s ease;
}
.bl_postNav_prev a:focus-visible,
.bl_postNav_next a:focus-visible {
  color: var(--color-key-2);
}

.bl_postNav_prev::before,
.bl_postNav_next::before {
  grid-area: label;
  display: block;
  color: var(--color-base);
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
  white-space: nowrap;
}

.bl_postNav_prev:has(a)::before {
  content: "前の記事";
}

.bl_postNav_next:has(a)::before {
  content: "次の記事";
}

.bl_postNav_prev .wp-block-post-navigation-link__arrow-previous,
.bl_postNav_next .wp-block-post-navigation-link__arrow-next {
  grid-area: arw;
  display: inline-block;
  flex-shrink: 0;
  inline-size: 0.9375rem;
  block-size: 0.9375rem;
  font-size: 0;
  background-color: var(--color-key);
  -webkit-mask-image: url(../img/icon-arrow-right-sm.svg);
          mask-image: url(../img/icon-arrow-right-sm.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.bl_postNav_prev .wp-block-post-navigation-link__arrow-previous {
  transform: scaleX(-1) !important;
}

.bl_postNav_next .wp-block-post-navigation-link__arrow-next {
  margin-inline-start: auto;
}

.bl_postNav_prev a::after,
.bl_postNav_next a::after {
  content: "";
  position: absolute;
  top: 0;
  inline-size: 48%;
  block-size: 100%;
}

.bl_postNav_prev a::after {
  left: 0;
}

.bl_postNav_next a::after {
  right: 0;
}

.bl_specList {
  display: grid;
  grid-template-columns: 9.21em 1fr;
  margin: 0;
  background-color: var(--color-base);
  margin-block-start: var(--wp--preset--spacing--50);
}

.bl_specList dt {
  padding: 1em;
  border-inline-end: 1px solid var(--color-contrast);
  background-color: var(--color-gray);
  color: var(--color-base);
  font-size: var(--fz-sm);
  font-weight: 400;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.bl_specList dd {
  margin: 0;
  padding: 1em;
  color: var(--color-contrast);
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.bl_specList dt:not(:first-of-type),
.bl_specList dd:not(:first-of-type) {
  border-block-start: 1px solid var(--color-contrast);
}

.hp_bg {
  position: relative;
  overflow: hidden;
}

.hp_bg::before {
  content: "";
  position: absolute;
  top: 934px;
  right: -223px;
  z-index: 0;
  inline-size: 517px;
  block-size: 515px;
  background: url(../img/bg_grd_noise.webp) center/cover no-repeat;
  pointer-events: none;
}

.hp_bg::after {
  content: "";
  position: absolute;
  top: 1866px;
  left: -300px;
  z-index: 0;
  inline-size: 517px;
  block-size: 515px;
  background: url(../img/bg_grd_noise.webp) center/cover no-repeat;
  pointer-events: none;
}

.hp_bg > * {
  position: relative;
  z-index: 2;
}

.hp_contentsNarrow {
  inline-size: min(100%, var(--narrow-size) + var(--global-padding) * 2);
  margin-inline: auto !important;
  padding-inline: var(--global-padding);
}

.hp_db {
  display: block !important;
}

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

.hp_dn {
  display: none !important;
}

.hp_tb-lg {
  display: none;
}

.hp_dnSp {
  display: none !important;
}

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

.hp_flex {
  display: flex;
}
.hp_flex.hp_flex__wrap {
  flex-wrap: wrap;
  gap: 10px 20px;
}

.hp_ai_center {
  align-items: center;
}

.hp_centering {
  margin-inline: auto;
}

.hp_blockCentering {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin-inline: auto;
}

.hp_imgFit {
  inline-size: 100%;
  block-size: auto;
}

.hp_fullBlock {
  margin-inline: calc(-1 * var(--global-padding));
}

.hp_srOnly {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.hp_imgCenter img {
  margin-inline: auto !important;
}

.hp_base {
  --main-color: var(--color-contrast);
  --main-txt-color: var(--color-contrast);
  --main-base-color: var(--color-base);
  background-color: var(--main-base-color, var(--color-base));
  color: var(--main-color, var(--color-contrast));
}

.hp_base a:not(.wp-block-button__link) {
  color: var(--color-key);
}

.hp_boxShadow {
  box-shadow: 0 0 3.75rem color-mix(in srgb, var(--color-key) 25%, transparent);
}

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

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

.hp_tal {
  text-align: left !important;
}
.hp_uppercase {
  text-transform: uppercase;
}

.hp_lowercase {
  text-transform: lowercase !important;
}

.hp_aster {
  padding-inline-start: 1em;
  text-indent: -1em;
}
.hp_aster::before {
  content: "※";
}

.hp_indentN1 {
  padding-inline-start: 1em;
  text-indent: -1em;
}

.hp_fzXs {
  font-size: var(--fz-xs);
}

.hp_gap1em * + * {
  margin-block-start: 1em;
}

.un_topNews {
  display: flex;
  flex-direction: column;
  align-items: center;
  border-block: 1px solid var(--color-border-white);
  background-color: var(--color-contrast);
}

.un_topNews_slider {
  inline-size: 100%;
  max-width: var(--wide-size);
  margin-inline: auto;
}

.un_topNews_link {
  display: flex;
  align-items: center;
  gap: var(--spacing-30);
  inline-size: 100%;
  padding: var(--spacing-30);
  color: inherit;
  text-decoration: none;
}
.un_topNews_link:focus-visible .un_topNews_text {
  text-decoration: underline;
}

.un_topNews_link::after {
  content: "";
  display: block;
  inline-size: 15px;
  block-size: 15px;
  flex-shrink: 0;
  background-color: var(--color-key);
  -webkit-mask-image: url(../img/icon-arrow-right-sm.svg);
          mask-image: url(../img/icon-arrow-right-sm.svg);
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
}

.un_topNews_group {
  display: flex;
  align-items: center;
  gap: var(--spacing-20);
  min-width: 0;
}

.un_topNews_date {
  flex-shrink: 0;
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  white-space: nowrap;
}

.un_topNews_divider {
  flex-shrink: 0;
  inline-size: 1px;
  block-size: 12px;
  background-color: var(--color-border-white);
}

.un_topNews_text {
  overflow: hidden;
  color: var(--color-base);
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
  text-overflow: ellipsis;
  white-space: nowrap;
}

.un_hero {
  text-align: center;
  background: url(../img/bg_hero.webp) center bottom/auto 100% no-repeat;
}

.un_hero_title p {
  margin: 0;
  color: var(--color-txt);
  font-size: min(3.7vw, 15px);
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: var(--lh-narrow);
  text-transform: uppercase;
}
.un_hero_title .un_hero_title_txt {
  color: var(--color-base);
  font-size: min(9.2vw, 52px);
  font-weight: 700;
  letter-spacing: 0.03em;
  line-height: var(--lh-narrow);
}

.un_hero_lead {
  text-align: left;
}
.un_hero_lead br {
  display: none;
}

.un_hero_note {
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  text-align: left;
}

.un_anchorLink {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
}

.un_anchorLink > * {
  flex: 0 0 calc((100% - 10px) / 3);
}

.un_anchorLink a {
  padding-block: 5px 10px;
  border-block-end: 2px solid color-mix(in srgb, var(--color-key) 50%, transparent);
  text-decoration: none;
  transition: border-color 0.3s ease;
}
.un_anchorLink a:focus-visible {
  border-color: var(--color-key);
}

.un_anchorLink .is-current {
  border-color: var(--color-key);
}

.un_price {
  position: relative;
}

.un_price::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  inline-size: min(100%, 500px);
  block-size: 100%;
  background-image: url(../img/bg_price.webp);
  background-size: cover;
  background-origin: top left;
  pointer-events: none;
}

.un_price_inner {
  position: relative;
  z-index: 1;
  display: grid !important;
  gap: var(--spacing-30);
}

.un_price_btn .wp-block-button__link:focus-visible {
  outline-color: currentColor;
}

.un_pricePage_badges {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--spacing-20);
  padding: 0;
  list-style: none;
}

.un_pricePlan_badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  inline-size: 100%;
  padding-inline: 0.625rem;
  background-color: var(--color-base);
  background-image: linear-gradient(135deg, color-mix(in srgb, var(--color-key) 20%, transparent) 10%, transparent 27%);
  color: var(--color-key);
  font-size: clamp(16px, 9.12px + 2.151vw, 22px);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
  white-space: nowrap;
}

.un_pricePlan_note {
  margin: var(--wp--preset--spacing--40) 0 0;
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-normal);
}

.un_pricePage_planGrid {
  margin-block-start: var(--wp--preset--spacing--50);
  display: grid !important;
  gap: var(--spacing-xs);
}

.un_pricePage_planGrid > .bl_planCard {
  display: grid;
  grid-template-areas: "head" "list" "btn";
}

.un_useCases_list {
  display: grid !important;
  grid-template-columns: 1fr;
  gap: var(--spacing-40);
  inline-size: min(100%, 1152px);
  margin-inline: auto;
}

.un_useCases_item {
  list-style: none;
}

.un_useCases_heading {
  position: relative;
  inline-size: 100%;
  margin: 0;
  padding-block: var(--spacing-20);
  padding-inline: var(--spacing-xs);
  background-color: var(--color-base);
  color: var(--color-contrast);
  font-size: var(--fz-md);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-narrow);
  text-align: center;
}

.un_useCases_heading::after {
  content: "";
  position: absolute;
  bottom: -13px;
  inset-inline: 0;
  margin-inline: auto;
  inline-size: 16px;
  block-size: 14px;
  background-color: var(--color-base);
  clip-path: polygon(50% 100%, 0% 0%, 100% 0%);
}

.un_useCases_body {
  margin-block-start: var(--spacing-xxxs);
  padding: var(--spacing-30);
  border: 1px solid var(--color-border-white);
}

.un_useCases_label {
  margin: 0;
  color: var(--color-txt);
  font-size: var(--fz-xs);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
}

.un_useCases_label__brand {
  color: color-mix(in srgb, var(--color-key-2) 85%, transparent);
  letter-spacing: var(--ls-wide);
  text-transform: uppercase;
}

.un_useCases_text {
  margin: 0;
  margin-block-start: var(--spacing-xxxs);
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.un_useCases_group:not(:first-child) {
  margin-block-start: var(--spacing-30);
  padding-block-start: var(--spacing-30);
  border-block-start: 1px solid var(--color-border-white);
}

.un_useCases_group:not(:first-child) .un_useCases_text {
  color: var(--color-txt);
}

.un_detail {
  position: relative;
}

.un_detail::before {
  content: "";
  position: absolute;
  top: -171px;
  left: -241px;
  z-index: 0;
  inline-size: 517px;
  block-size: 515px;
  background: url(../img/bg_grd_noise.webp) center/cover no-repeat;
  pointer-events: none;
}

.un_detail_shot {
  inline-size: min(100%, 921px);
  margin-inline: auto;
}

.un_detail_shot_img {
  inline-size: 100%;
  block-size: auto;
  aspect-ratio: 1000/525;
  -o-object-fit: cover;
     object-fit: cover;
}

.un_detail_list {
  display: flex;
  gap: min(3vw, var(--spacing-xs));
  justify-content: center;
}

.wp-block-columns.is-not-stacked-on-mobile.un_detail_list {
  flex-wrap: wrap !important;
}

.un_detail_item {
  padding-inline: min(3vw, var(--spacing-xs)) !important;
}

.un_detail_num {
  display: inline-block;
  border-block-end: 1px solid var(--color-key);
  color: var(--color-key-3);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
}

.un_detail_heading {
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-narrow);
}

.un_detail_txt {
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.un_detail_note {
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
}

.un_feature {
  position: relative;
  overflow: hidden;
}

.un_feature::before {
  content: "";
  position: absolute;
  top: calc(50% - 257px);
  right: -223px;
  z-index: 0;
  inline-size: 517px;
  block-size: 515px;
  background: url(../img/bg_grd_noise.webp) center/cover no-repeat;
  pointer-events: none;
}

.un_feature_inner {
  position: relative;
  z-index: 1;
}

.un_feature_row {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.un_feature_media {
  position: relative;
  aspect-ratio: 3/2;
  overflow: hidden;
  border: 1px solid var(--color-border-white);
  background-color: var(--color-contrast);
}

.un_feature_text_note {
  margin: 0;
  color: var(--color-txt);
  font-size: var(--fz-xs);
  letter-spacing: var(--ls-normal);
}

.un_about {
  position: relative;
  overflow: hidden;
}

.un_service {
  position: relative;
  overflow: hidden;
}

.un_service::before,
.un_service::after {
  content: "";
  position: absolute;
  inset-inline: 0;
  z-index: 2;
  block-size: 130px;
  pointer-events: none;
}

.un_service::before {
  top: 0;
  background: linear-gradient(to bottom, var(--color-contrast), transparent);
}

.un_service::after {
  bottom: 0;
  background: linear-gradient(to top, var(--color-contrast), transparent);
}

.un_service_inner {
  position: relative;
  z-index: 1;
}

.un_service_lead {
  margin: 0 auto;
  color: var(--color-contrast);
  inline-size: -moz-fit-content;
  inline-size: fit-content;
}

.un_service_steps {
  gap: var(--spacing-40) var(--spacing-xs);
  inline-size: 100%;
}

.wp-block-columns.is-not-stacked-on-mobile.un_service_steps {
  flex-wrap: wrap !important;
}

.un_service_stepLabel {
  margin: 0;
  padding-block: var(--spacing-xxxs);
  border-block-end: 1px solid var(--color-txt);
  color: var(--color-key);
  font-size: var(--fz-sm);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.un_service_stepTitle {
  margin: 0;
  padding-inline: 10px;
  padding-block: 2px;
  background-color: var(--color-base);
  color: var(--color-key);
  font-size: var(--fz-l);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
}

.un_service_stepText {
  margin: 0;
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.un_service_cards {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
  inline-size: 100%;
}

.un_service_card {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
  flex: 1 0 0;
  min-inline-size: 0;
  padding: var(--spacing-30);
  border: 1px solid var(--color-txt);
  background-color: var(--color-base);
}

.un_service_cardTitle {
  margin: 0;
  color: var(--color-contrast);
  font-size: var(--fz-l);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
}

.un_service_cardTitle::after {
  content: "";
  display: block;
  inline-size: 20px;
  block-size: 2px;
  margin-block-start: var(--spacing-xxxs);
  background-color: var(--color-key);
}

.un_service_cardText {
  margin: 0;
  font-size: var(--fz-sm);
  letter-spacing: var(--ls-normal);
  line-height: var(--lh-loose);
}

.un_service_scrollVideo {
  position: absolute;
  top: 0;
  inset-inline: 0;
  inline-size: 100%;
  block-size: 100%;
  margin: 0;
  overflow: hidden;
  filter: blur(2.5px);
  opacity: 0.2;
  pointer-events: none;
}

.un_service_scrollVideo::after {
  content: "";
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  z-index: 1;
  inline-size: 100%;
  block-size: min(40%, 621px);
  background: url(../img/bg-graduation.webp) bottom center/cover no-repeat;
}

.un_service_scrollVideo_el {
  position: relative;
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top;
     object-position: top;
}

.un_problem {
  position: relative;
}

.un_problem::before {
  content: "";
  position: absolute;
  top: -319.5px;
  right: -229px;
  z-index: 0;
  inline-size: 610px;
  block-size: 539px;
  background: radial-gradient(circle 259.13px at 341.45px 282.3px, var(--color-key) 0%, transparent 100%);
  opacity: 0.59;
  pointer-events: none;
}

.un_problem_inner {
  overflow: hidden;
}

.un_problem_item {
  border: 1px solid var(--color-border-white);
}

.un_problem_item + .un_problem_item {
  border-block-start: none;
}

.un_problem_title {
  font-size: var(--fz-l);
  font-weight: 700;
  letter-spacing: var(--ls-normal);
}

.un_problem_title::after {
  content: "";
  display: block;
  inline-size: 20px;
  block-size: 2px;
  margin-block-start: var(--spacing-xxxs);
  background-color: var(--color-key);
}

.un_problem_txt {
  line-height: var(--lh-loose);
}

.js-anim_grdTitle > *,
.js-anim_grdTitle__reverse > * {
  opacity: 0;
}

.js-anim_grdTitle + *,
.js-anim_grdTitle__reverse + * {
  opacity: 0;
}

.editor-styles-wrapper .js-anim_grdTitle > * {
  opacity: 1;
}

.editor-styles-wrapper .js-anim_grdTitle__reverse > * {
  opacity: 1;
}

.editor-styles-wrapper .js-anim_grdTitle + *,
.editor-styles-wrapper .js-anim_grdTitle__reverse + * {
  opacity: 1;
}

.js-sticky {
  position: sticky;
  top: var(--header-height);
  z-index: 10;
  background-color: var(--main-base-color);
}

.js-sticky.is-stopped .un_anchorLink_txt {
  display: none;
}

@media all and (min-width: 600px){
  :root {
    --global-padding: clamp(2.5rem, -1.275rem + 6.7vw, 3.75rem);
    --header-height: 80px;
  }
  .bl_footer {
    grid-template-areas: "company menu" "contact term";
  }
  .hp_sp {
    display: none;
  }
  .hp_dnSp {
    display: revert !important;
  }
  .hp_dnTb {
    display: none !important;
  }
  .hp_tacTb {
    text-align: center !important;
  }
  .hp_tarTb {
    text-align: right !important;
  }
  .hp_talTb {
    text-align: left !important;
  }
  .un_hero_lead {
    text-align: center;
  }
  .un_hero_lead br {
    display: block;
  }
  .un_hero_note {
    text-align: center;
  }
  .un_pricePlan_badge {
    font-size: clamp(16px, -3.89px + 3.315vw, 22px);
  }
  .un_detail_item {
    flex: 0 0 calc(33% - min(3vw, var(--spacing-xs)) * 2 / 3) !important;
  }
}

@media not all and (min-width: 600px){
  .hp_tacSp {
    text-align: center !important;
  }
  .hp_tarSp {
    text-align: right !important;
  }
  .hp_talSp {
    text-align: left !important;
  }
  .un_hero_buttons {
    flex-direction: column;
    align-items: stretch;
  }
  .un_hero_buttons .wp-block-button {
    inline-size: 220px;
    margin-inline: auto;
  }
  .un_hero_buttons .wp-block-button__link {
    inline-size: 100%;
  }
  .un_anchorLink_txt {
    margin-block-start: 0 !important;
  }
  .un_pricePage_badges li {
    inline-size: calc(50% - 6px);
    flex: 0 0 auto;
  }
  .un_detail_item {
    flex: 0 0 100% !important;
    padding-block: 12px !important;
  }
  .un_detail_item .un_detail_heading {
    margin-block-start: 10px !important;
  }
  .un_detail_item .un_detail_txt {
    margin-block-start: 7px !important;
  }
}

@media all and (min-width: 782px){
  [class*=__reverse] .el_grdTitle {
    align-items: flex-end;
  }
  [class*=__reverse] .el_grdTitle_line::after {
    background: linear-gradient(to left, var(--color-key) 0%, transparent 100%);
  }
  [class*=__reverse] .el_grdTitle_line::after {
    transform-origin: right;
  }
  [class*=__reverse] .el_grdTitle_line {
    padding-inline: 50px var(--spacing-xxxs);
  }
  [class*=__reverse] .el_grdTitle_line_txt {
    -webkit-mask-image: linear-gradient(to left, #000 var(--reveal), transparent var(--reveal));
            mask-image: linear-gradient(to left, #000 var(--reveal), transparent var(--reveal));
  }
  .bl_cta::before {
    inline-size: min(60%, 500px);
  }
  .bl_faq_aInner {
    padding-inline-end: var(--spacing-40);
  }
  .bl_footer {
    grid-template-areas: "company  menu term" "contact . .";
  }
  .bl_header_contactSp {
    display: none !important;
  }
  .bl_mediaTxt_content {
    gap: clamp(20px, -6.38px + 3.623vw, 40px);
  }
  .bl_mediaTxt_body {
    padding-block-start: var(--spacing-20);
  }
  .bl_mediaTxt_body:has(.el_grdTitle) {
    padding-block-start: var(--spacing-40);
  }
  [class*=__reverse] .bl_mediaTxt_txt {
    padding-inline-start: var(--spacing-40);
  }
  .bl_mediaTxt__reverse {
    flex-direction: row-reverse;
  }
  .bl_planCard_list {
    justify-content: center;
    padding: 0 0 0 var(--spacing-30);
    border-block-start: none;
    border-inline-start: 1px solid color-mix(in srgb, var(--color-base) 12%, transparent);
  }
  .bl_postList_item {
    gap: var(--wp--preset--font-size--medium);
    grid-template: 1fr/max-content auto;
  }
  .bl_postList_date {
    inline-size: 100%;
  }
  .bl_postList_date::after {
    display: block;
  }
  .bl_specList {
    grid-template-columns: 13.75rem 1fr;
  }
  .bl_specList dt {
    padding: var(--spacing-xs) var(--spacing-30);
  }
  .bl_specList dd {
    padding: var(--spacing-xs) var(--spacing-30);
  }
  .hp_tb-lg {
    display: revert;
  }
  .hp_dnTb-lg {
    display: none !important;
  }
  .hp_tacTb-lg {
    text-align: center !important;
  }
  .hp_tarTb-lg {
    text-align: right !important;
  }
  .hp_talTb-lg {
    text-align: left !important;
  }
  .un_anchorLink {
    flex-wrap: nowrap;
    gap: 0 clamp(20px, -94.74px + 13.158vw, 40px);
  }
  .un_anchorLink > * {
    flex: 1 0 0;
  }
  .un_anchorLink a {
    padding-block: var(--spacing-30);
  }
  .un_price::before {
    inline-size: min(60%, 500px);
  }
  .un_price_inner {
    grid-template: auto/1fr auto;
    gap: var(--spacing-40);
  }
  .un_pricePlan_badge {
    font-size: clamp(22px, 2.61px + 2.479vw, 28px);
  }
  .un_pricePage_planGrid > .bl_planCard {
    grid-template-areas: "head list" "btn btn";
  }
  .un_useCases_list {
    grid-template-columns: repeat(3, 1fr);
    grid-template-rows: auto 1fr;
    -moz-column-gap: clamp(10px, -29.57px + 5.435vw, 40px);
         column-gap: clamp(10px, -29.57px + 5.435vw, 40px);
    row-gap: 0;
  }
  .un_useCases_item {
    display: grid;
    grid-template-rows: subgrid;
    grid-row: span 2;
  }
  .un_useCases_heading {
    font-size: min(1.5vw, var(--fz-md));
  }
  .un_useCases_text {
    font-size: min(1.4vw, var(--fz-sm));
  }
  .un_detail_list {
    gap: min(1.27vw, var(--spacing-xs));
  }
  .wp-block-columns.is-not-stacked-on-mobile.un_detail_list {
    flex-wrap: nowrap;
  }
  .un_feature_row {
    flex-direction: row;
    align-items: flex-start;
  }
  .un_feature_media {
    flex: 1 0 0;
    min-width: 0;
  }
  .un_service_lead {
    text-align: center;
  }
  .un_service_steps {
    align-items: flex-start;
  }
  .wp-block-columns.is-not-stacked-on-mobile.un_service_steps {
    flex-wrap: nowrap;
  }
  .un_service_cards {
    flex-direction: row;
    align-items: stretch;
  }
  .un_problem_item + .un_problem_item {
    border-block-start: 1px solid var(--color-border-white);
    border-inline-start: none;
  }
}

@media not all and (min-width: 782px){
  .wp-block-navigation .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none;
  }
  .wp-block-navigation .wp-block-navigation__responsive-container-open:not(.always-shown) {
    display: flex;
  }
  .bl_header_inner {
    grid-template: auto/1fr auto;
  }
  .bl_header_btn {
    display: none;
  }
  .bl_postNav_prev,
  .bl_postNav_next {
    flex-basis: 100%;
  }
  .bl_postNav_prev a,
  .bl_postNav_next a {
    -webkit-line-clamp: 2;
    line-clamp: 2;
  }
}

@media all and (min-width: 1024px){
  .bl_footer {
    grid-template-areas: "company contact menu term";
  }
  .bl_planCard_list {
    padding: var(--spacing-30) 0 0;
    border-block-start: 1px solid color-mix(in srgb, var(--color-base) 12%, transparent);
    border-inline-start: none;
  }
  .hp_tacPc {
    text-align: center !important;
  }
  .hp_tarPc {
    text-align: right !important;
  }
  .hp_talPc {
    text-align: left !important;
  }
  .un_pricePage_planGrid {
    grid-auto-flow: column;
    grid-auto-columns: 1fr;
  }
  .un_pricePage_planGrid > .bl_planCard {
    grid-template-areas: "head" "list" "btn";
    grid-row: span 3;
    grid-template-rows: subgrid;
  }
  .un_detail_item {
    padding-inline: min(1.27vw, var(--spacing-xs)) !important;
    flex: 1 0 0 !important;
  }
}

@media (any-hover: hover){
  :where(a)[href]:hover {
    text-decoration-offset: 2px;
  }
  .wp-block-button.is-style-white-bg .wp-block-button__link:hover {
    background-color: var(--wp--preset--color--key-2);
  }
  .wp-block-button.is-style-ghost .wp-block-button__link:hover {
    background-color: var(--color-border-white);
  }
  .wp-block-button.is-style-outline .wp-block-button__link:hover {
    color: var(--color-contrast);
    background-color: var(--color-base);
  }
  .el_borderBtn .wp-block-button__link:hover {
    background: color-mix(in srgb, var(--color-base) 30%, transparent);
  }
  .el_btnSubmit:enabled:hover {
    opacity: 0.85;
  }
  .el_linkArw[href]:hover {
    color: var(--color-key-3);
  }
  .bl_cta_btn:hover {
    opacity: 0.85;
  }
  .bl_form_privacy_txt a[href]:hover {
    text-decoration: underline;
  }
  .bl_postList_title a:hover {
    color: var(--color-key-2);
  }
  .bl_pagination a.page-numbers:hover {
    border-color: var(--color-key);
    color: var(--color-base);
  }
  .bl_postNav_prev a[href]:hover,
  .bl_postNav_next a[href]:hover {
    color: var(--color-key-2);
  }
  .un_topNews_link[href]:hover .un_topNews_text {
    text-decoration: underline;
  }
  .un_anchorLink a:hover {
    border-color: var(--color-key);
  }
}

@media (prefers-reduced-motion: reduce){
  *,
  ::before,
  ::after {
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition: all 0 !important;
  }
}