@charset "UTF-8";
:root {
  --leading-trim: calc((1em - 1lh) / 2);
  --content-size: var(--wp--style--global--content-size);
  --wide-size: var(--wp--style--global--wide-size);
  --content-thin: 720px;
  --color-base: var(--wp--preset--color--base);
  --color-base-2: var(--wp--preset--color--base-2);
  --color-contrast: var(--wp--preset--color--contrast);
  --color-primary: var(--wp--preset--color--primary);
  --color-accent: var(--wp--preset--color--accent);
  --color-accent-2: var(--wp--preset--color--contrast);
  --color-gray: var(--wp--preset--color--gray);
  --color-border: var(--wp--preset--color--border-color);
  --color-link: var(--color-accent);
  --color-link-hover: var(--color-primary);
  --color-disabled: var(--color-gray);
  --color-required: #f20707;
  --color-input-border: #b9b9b9;
  --outline: 2px solid var(--color-primary);
  --outline-offset: 2px;
  --underline-offset: .15em;
  --img-hover-overlay: color-mix(in srgb, var(--color-base) 20%, transparent);
  --font-jp: var(--wp--preset--font-family--noto-sans-jp);
  --font-heading: var(--font-jp);
  --font-serif: var(--wp--preset--font-family--noto-serif-jp);
  --font-en: var(--wp--preset--font-family--times-new-roman);
  --font-noto: var(--font-jp);
  --fz-xx-sm: clamp(0.6875rem, 0.66rem + 0.1vw, 0.75rem);
  --fz-x-sm: var(--wp--preset--font-size--x-small);
  --fz-sm: var(--wp--preset--font-size--small);
  --fz-md: var(--wp--preset--font-size--medium);
  --fz-lg: var(--wp--preset--font-size--large);
  --fz-x-lg: clamp(1.25rem, 1.195rem + 0.2vw, 1.375rem);
  --fz-xx-lg: var(--wp--preset--font-size--xx-large);
  --fz-xxx-lg: clamp(1.5rem, 1.28rem + 0.8vw, 2rem);
  --fz-10: 10px;
  --fz-12: 12px;
  --ls-normal: 0.03em;
  --ls-heading: 0.05em;
  --lh-heading: 1.2;
  --lh-normal: 1.6;
  --lh-narrow: 1.4;
  --spacing-10: var(--wp--preset--spacing--10);
  --spacing-20: var(--wp--preset--spacing--20);
  --spacing-30: var(--wp--preset--spacing--30);
  --spacing-40: var(--wp--preset--spacing--40);
  --spacing-50: var(--wp--preset--spacing--50);
  --spacing-60: var(--wp--preset--spacing--60);
  --spacing-80: var(--wp--preset--spacing--section);
  --spacing-side: clamp(16px, -6.54px + 6.009vw, 80px);
  --radius-small: var(--wp--custom--radius--small);
  --radius-normal: var(--wp--custom--radius--normal);
  --radius-full: 999px;
}

@media all and (min-width: 600px) {
  :root {
    --lh-normal: 1.8;
  }
}
* {
  min-inline-size: 0;
  min-block-size: 0;
}

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

:root {
  --global-padding: clamp(1.5rem, 0.863rem + 2.7vw, 1.875rem);
  --header-height: 46px;
}
@media all and (min-width: 600px) {
  :root {
    --global-padding: clamp(2.5rem, -1.275rem + 6.7vw, 3.75rem);
    --header-height: 114px;
  }
}

@media not all and (min-width: 600px) {
  :root {
    --wp--style--block-gap: var(--wp--preset--spacing--40);
  }
  :root :where(.is-layout-flow) > * {
    margin-block-start: var(--wp--style--block-gap);
  }
  :root :where(.is-layout-flow) > :first-child {
    margin-block-start: 0;
  }
}
html {
  scrollbar-gutter: stable;
  scroll-behavior: smooth;
  -webkit-text-size-adjust: none;
}

html :target {
  scroll-margin-block-start: var(--header-height);
}

body {
  overflow-x: clip;
  position: relative;
  margin: 0;
  padding: 0;
  color: var(--color-contrast);
  font-family: var(--font-noto);
  font-style: normal;
  font-size: var(--fz-md);
  line-height: var(--lh-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);
}

: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:not(.wp-element-button, .wp-block-button__link)) {
  text-decoration-line: underline;
  text-underline-offset: var(--underline-offset);
  text-decoration-thickness: 1px;
  text-decoration-color: color-mix(in srgb, currentcolor, transparent 30%);
  transition: color 0.3s ease;
}
:where(a:not(.wp-element-button, .wp-block-button__link)):any-link {
  color: var(--color-link);
}
@media (any-hover: hover) {
  :where(a:not(.wp-element-button, .wp-block-button__link))[href]:hover {
    color: var(--color-link-hover);
    text-decoration-thickness: 2px;
  }
}
:where(a:not(.wp-element-button, .wp-block-button__link)):focus-visible {
  color: var(--color-link-hover);
  text-decoration-thickness: 2px;
}
:where(a:not(.wp-element-button, .wp-block-button__link)):not([href]) {
  color: var(--color-disabled);
  text-decoration-line: none !important;
  cursor: default;
  pointer-events: none;
}

.bl_footer,
.bl_about,
.has-base-color {
  --color-link-hover: var(--color-base);
}

: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) {
  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]) {
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  touch-action: manipulation;
}

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

:focus-visible {
  outline: var(--outline);
  outline-offset: var(--outline-offset);
}

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

:where(svg) {
  fill: currentColor;
}

:where(figure) {
  margin: 0;
  overflow: hidden;
  line-height: 1;
}
:where(figure) > img {
  display: block;
}

.ly_main p:empty:last-child {
  display: none;
}

[data-gv-auth-only][hidden] {
  display: none !important;
}

:root:not([data-gv-auth]) [data-gv-auth-only=guest] {
  visibility: hidden;
  animation: gv-auth-reveal 0s 4s forwards;
}

@keyframes gv-auth-reveal {
  to {
    visibility: visible;
  }
}
@media (prefers-reduced-motion: reduce) {
  *,
  ::before,
  ::after {
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition: all 0 !important;
  }
}
.el_btn_header {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  min-inline-size: 134px;
  block-size: 44px;
  padding: var(--spacing-20);
  border: 1px solid var(--color-primary);
  border-radius: var(--radius-small);
  font-size: var(--fz-x-sm);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-align: center;
  text-decoration-line: none;
  white-space: nowrap;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}

.el_btn_header__register {
  position: relative;
  background: var(--color-primary);
  color: var(--color-base);
}
@media (any-hover: hover) {
  .el_btn_header__register:hover {
    border-color: var(--color-accent);
    background: var(--color-accent);
    color: var(--color-base);
  }
}
@media all and (min-width: 600px) {
  .el_btn_header__register::before {
    content: "";
    display: inline-block;
    inline-size: 13px;
    block-size: 13px;
    background: currentcolor;
    mask: url("../img/icon_form.svg") center/contain no-repeat;
    vertical-align: -2px;
  }
}

.bl_modal .el_btn_header__register::before {
  display: none;
}

.el_btn_header__border {
  background: var(--color-base);
  color: var(--color-primary);
}
@media (any-hover: hover) {
  .el_btn_header__border:hover {
    border-color: var(--color-accent);
    background: var(--color-base-2);
    color: var(--color-accent);
  }
}

.el_btn_header__person {
  position: relative;
}
@media all and (min-width: 600px) {
  .el_btn_header__person::before {
    content: "";
    display: inline-block;
    inline-size: 16px;
    block-size: 16px;
    background: currentcolor;
    mask: url("../img/icon_person.svg") center/contain no-repeat;
    vertical-align: -2px;
  }
}

.bl_modal .el_btn_header__person::before {
  display: none;
}

.el_btn_header__mypage {
  position: relative;
}
@media all and (min-width: 600px) {
  .el_btn_header__mypage::before {
    content: "";
    display: inline-block;
    inline-size: 13px;
    block-size: 13px;
    background: currentcolor;
    mask: url("../img/icon_mypage.svg") center/contain no-repeat;
    vertical-align: -2px;
  }
}

.bl_modal .el_btn_header__mypage::before {
  display: none;
}

.el_btn_form {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  inline-size: 160px;
  block-size: 44px;
  padding: 4px var(--spacing-10);
  border: 1px solid var(--color-primary);
  border-radius: var(--radius-small);
  background-color: var(--color-primary);
  color: var(--color-base);
  font-family: inherit;
  font-size: var(--fz-sm);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration-line: none;
  white-space: nowrap;
  cursor: pointer;
  transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease;
}
@media all and (min-width: 600px) {
  .el_btn_form {
    inline-size: 200px;
    block-size: 50px;
    padding: var(--spacing-10) var(--spacing-20);
  }
}
@media (any-hover: hover) {
  .el_btn_form:hover {
    border-color: var(--color-accent);
    background-color: var(--color-accent);
    color: var(--color-base);
  }
}
.el_btn_form:disabled {
  border-color: var(--color-disabled);
  background-color: var(--color-disabled);
  cursor: not-allowed;
}

.el_btn_form__large {
  inline-size: 100%;
}

.el_btn {
  inline-size: fit-content;
  min-inline-size: 160px;
}
@media all and (min-width: 600px) {
  .el_btn {
    min-inline-size: 200px;
  }
}

.el_btn a {
  display: block;
  inline-size: 100% !important;
  min-block-size: 44px;
  padding-inline: var(--spacing-30);
  font-size: var(--fz-x-sm);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration-line: none;
  align-content: center;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
@media (any-hover: hover) {
  .el_btn a:hover {
    background: var(--wp--preset--color--accent);
    border-color: var(--wp--preset--color--accent);
  }
}
@media all and (min-width: 600px) {
  .el_btn a {
    min-block-size: 50px;
    padding-inline: var(--spacing-40);
    font-size: var(--fz-sm);
  }
}

.el_btn__register a::before,
.el_btn__register .wp-block-button__link::before {
  content: "";
  display: inline-block;
  inline-size: 15px;
  block-size: 15px;
  margin-inline-end: 7px;
  background: currentcolor;
  mask: url("../img/icon_form.svg") center/contain no-repeat;
  vertical-align: -2px;
}

.el_btn__border a,
.el_btn__border .wp-block-button__link {
  border: 1px solid var(--color-primary);
  background: var(--color-base);
  color: var(--color-primary);
}
@media (any-hover: hover) {
  .el_btn__border a:hover,
  .el_btn__border .wp-block-button__link:hover {
    border-color: var(--color-accent);
    background: var(--color-base-2);
    color: var(--color-accent);
  }
}

.el_btn__fit {
  min-inline-size: auto !important;
}

.el_btn__small a,
.el_btn__small .wp-block-button__link {
  padding-inline: var(--spacing-20);
  font-size: var(--fz-x-sm);
  font-weight: 400;
}
@media all and (min-width: 600px) {
  .el_btn__small a,
  .el_btn__small .wp-block-button__link {
    padding-inline: var(--spacing-30);
  }
}

.el_global_nav {
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  touch-action: manipulation;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: var(--color-contrast);
}
@media all and (min-width: 600px) {
  .el_global_nav {
    flex-direction: row-reverse;
    block-size: 42px;
  }
}

.el_global_nav_txt {
  font-size: var(--fz-10);
  line-height: 1;
  letter-spacing: 0.02em;
}

.el_global_nav_ico {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 3.6px;
  inline-size: 16px;
  block-size: 16px;
}
.el_global_nav_ico span {
  inline-size: 100%;
  block-size: 2px;
  background: currentColor;
}

@media all and (min-width: 600px) {
  .el_global_nav_txt {
    font-size: var(--fz-x-sm);
  }
  .el_global_nav_ico {
    gap: 4px;
    inline-size: 18px;
    block-size: auto;
    padding-block: 2px;
  }
}
.el_btn_nav_arw {
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  touch-action: manipulation;
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: 10px;
  z-index: 2;
  display: grid;
  align-content: center;
  justify-content: center;
  inline-size: 24px;
  block-size: 24px;
  border-radius: var(--radius-full);
  background: var(--color-border);
  transform: translateY(-50%);
}
.el_btn_nav_arw img {
  display: block;
}
.is-end > .el_btn_nav_arw:not(.el_btn_nav_arw__prev) {
  display: none;
}

.el_btn_nav_arw__prev {
  inset-inline: 10px auto;
}
.is-start > .el_btn_nav_arw__prev {
  display: none;
}

.el_headingLv2 {
  margin-inline: 0;
  margin-block: var(--headingLv2-space-top, 0) var(--headingLv2-space-bottom, 0);
  padding: var(--spacing-10);
  border-block-start: 2px solid var(--color-primary);
}
@media all and (min-width: 600px) {
  .el_headingLv2 {
    padding: var(--spacing-20);
  }
}

.el_headingLv2_head {
  font-family: var(--font-heading);
  font-weight: 400;
}
@media all and (min-width: 600px) {
  .el_headingLv2_head {
    display: flex;
    align-items: center;
    gap: var(--spacing-30);
  }
}

.el_headingLv2_title {
  margin: 0;
  font-size: var(--headingLv2-fz, var(--fz-xxx-lg));
  font-weight: 400;
  line-height: var(--lh-heading);
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .el_headingLv2_title {
    letter-spacing: var(--ls-heading);
  }
}

.el_headingLv2_en {
  margin: 0;
  color: var(--color-accent);
  font-size: var(--headingLv2-fz-en, var(--fz-x-sm));
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  text-transform: uppercase;
}
@media all and (min-width: 600px) {
  .el_headingLv2_en {
    line-height: 1;
    letter-spacing: var(--ls-heading);
  }
}

.el_headingLv2:has(a) {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
  gap: 4px var(--spacing-30);
}

.el_listLink {
  position: relative;
  color: var(--color-contrast);
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  text-decoration-line: none;
}
@media (any-hover: hover) {
  .el_listLink:hover {
    text-decoration-line: underline;
  }
}
.el_listLink:focus-visible {
  text-decoration-line: underline;
}
@media all and (min-width: 600px) {
  .el_listLink {
    line-height: var(--lh-narrow);
  }
}
.el_listLink::after {
  display: inline-block;
  content: "";
  inline-size: 14px;
  block-size: 14px;
  margin-inline-start: 5px;
  background: currentcolor;
  mask: url("../img/icon_arrow_list.svg") center/contain no-repeat;
  vertical-align: -2px;
}

.el_headingLv3 {
  --headingLv3-fz-sp-fix: var(--headingLv3-fz-sp, var(--headingLv3-fz));
  margin-inline: 0;
  margin-block: var(--headingLv3-space-top, 0) var(--headingLv3-space-bottom, 0);
  font-family: var(--font-heading);
  font-size: var(--headingLv3-fz-sp-fix, var(--fz-x-lg));
  font-weight: 400;
  line-height: var(--lh-heading);
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .el_headingLv3 {
    --headingLv3-fz-pc-fix: var(--headingLv3-fz-pc, var(--headingLv3-fz));
    font-size: var(--headingLv3-fz-pc-fix, var(--fz-xx-lg));
    letter-spacing: var(--ls-heading);
  }
}

.el_headingLv4 {
  margin-inline: 0;
  margin-block: var(--headingLv4-space-top, 0) var(--headingLv4-space-bottom, 0);
  font-family: var(--font-heading);
  font-size: var(--headingLv4-fz, var(--fz-x-lg));
  font-weight: 400;
  line-height: var(--lh-heading);
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .el_headingLv4 {
    letter-spacing: var(--ls-heading);
  }
}

.el_cat {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 4px;
  border: 1px solid var(--color-border);
  color: var(--color-contrast);
  font-size: var(--fz-xx-sm);
  line-height: 1;
  letter-spacing: var(--ls-normal);
  white-space: nowrap;
}
@media all and (min-width: 600px) {
  .el_cat {
    padding: 3px 6px;
  }
}

.el_cat__member {
  border-color: var(--color-primary);
  color: var(--color-primary);
}

.el_info {
  --icon: 16px;
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: var(--color-gray);
  font-size: var(--fz-xx-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  white-space: nowrap;
}
@media all and (min-width: 600px) {
  .el_info {
    --icon: 18px;
    gap: 4px;
    line-height: var(--lh-narrow);
  }
}

.el_info__author {
  position: relative;
}
.el_info__author::before {
  content: "";
  display: inline-block;
  inline-size: var(--icon);
  block-size: var(--icon);
  padding-inline: calc(var(--icon) * 0.27 / 2);
  background: currentcolor;
  mask: url("../img/icon_author.svg") center/contain no-repeat;
  vertical-align: -2px;
}

.el_info__day {
  position: relative;
}
.el_info__day::before {
  content: "";
  display: inline-block;
  inline-size: var(--icon);
  block-size: var(--icon);
  background: currentcolor;
  mask: url("../img/icon_day.svg") center/contain no-repeat;
  vertical-align: -2px;
}

.el_info__stack {
  align-items: flex-start;
}

.el_info_txt > * {
  display: block;
}

.el_input,
.el_select,
.el_textarea {
  display: block;
  box-sizing: border-box;
  inline-size: 100%;
  padding: 3px var(--spacing-10);
  border: 1px solid var(--color-input-border);
  border-radius: var(--radius-small);
  background-color: var(--color-base);
  color: var(--color-contrast);
  font-family: inherit;
  font-size: var(--fz-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  transition: border-color 0.3s ease;
}
@media all and (min-width: 600px) {
  .el_input,
  .el_select,
  .el_textarea {
    padding-inline: var(--spacing-20);
    line-height: var(--lh-narrow);
  }
}
.el_input::placeholder,
.el_select::placeholder,
.el_textarea::placeholder {
  color: var(--color-gray);
  opacity: 1;
}
.el_input[aria-invalid=true],
.el_select[aria-invalid=true],
.el_textarea[aria-invalid=true] {
  border-color: var(--color-required);
}
.el_input:disabled,
.el_select:disabled,
.el_textarea:disabled {
  background-color: var(--color-base-2);
  color: var(--color-gray);
  cursor: not-allowed;
}

.el_input,
.el_select {
  block-size: 44px;
}
@media all and (min-width: 600px) {
  .el_input,
  .el_select {
    block-size: 48px;
  }
}

.el_select {
  appearance: none;
  padding-inline-end: 32px;
  background-image: url("../img/icon_select.svg");
  background-repeat: no-repeat;
  background-position: right var(--spacing-10) center;
  background-size: 8px 32px;
  cursor: pointer;
}
@media all and (min-width: 600px) {
  .el_select {
    background-position: right var(--spacing-20) center;
  }
}

.el_textarea {
  min-block-size: 160px;
  padding-block: var(--spacing-10);
  resize: vertical;
}
@media all and (min-width: 600px) {
  .el_textarea {
    min-block-size: 200px;
    padding-block: var(--spacing-20);
  }
}

.el_req {
  display: inline-flex;
  flex: none;
  align-items: center;
  justify-content: center;
  block-size: 18px;
  padding: 2px 4px;
  border-radius: 4px;
  background-color: var(--color-required);
  color: var(--color-base);
  font-size: var(--fz-x-sm);
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  white-space: nowrap;
}
@media all and (min-width: 600px) {
  .el_req {
    block-size: 23px;
    padding: 4px var(--spacing-10);
    line-height: var(--lh-narrow);
  }
}

.el_check,
.el_radio,
.bl_form_radio label {
  --check-size: 12px;
  display: inline-flex;
  gap: 4px;
  align-items: flex-start;
  font-size: var(--fz-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  cursor: pointer;
}
@media all and (min-width: 600px) {
  .el_check,
  .el_radio,
  .bl_form_radio label {
    --check-size: 16px;
    gap: var(--spacing-10);
    line-height: var(--lh-narrow);
  }
}

.el_check__pad,
.el_radio,
.bl_form_radio label {
  padding-block: var(--spacing-20);
}

.el_radio,
.bl_form_radio label {
  min-block-size: 44px;
}

.el_check_input,
.el_radio_input,
.bl_form_radio input {
  appearance: none;
  flex: none;
  box-sizing: border-box;
  font: inherit;
  inline-size: var(--check-size);
  block-size: var(--check-size);
  margin: 0;
  margin-block-start: calc((1lh - var(--check-size)) / 2);
  border: 0.75px solid var(--color-gray);
  background-color: var(--color-base);
  cursor: pointer;
  transition: background-color 0.3s ease, border-color 0.3s ease;
}
@media all and (min-width: 600px) {
  .el_check_input,
  .el_radio_input,
  .bl_form_radio input {
    border-width: 1px;
  }
}
.el_check_input:disabled,
.el_radio_input:disabled,
.bl_form_radio input:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

.el_check_input {
  border-radius: 1.5px;
}
@media all and (min-width: 600px) {
  .el_check_input {
    border-radius: 2px;
  }
}
.el_check_input:checked {
  border-color: var(--color-primary);
  background-color: var(--color-primary);
  background-image: url("../img/icon_check.svg");
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100%;
}

.el_radio_input,
.bl_form_radio input {
  border-radius: var(--radius-full);
}
.el_radio_input:checked,
.bl_form_radio input:checked {
  background-image: radial-gradient(circle closest-side, var(--color-contrast) 57%, transparent 60%);
}

.el_check_txt a,
.el_radio_txt a {
  color: inherit;
  text-decoration-line: underline;
}
.el_check_txt .el_req,
.el_radio_txt .el_req {
  margin-block: -0.5px;
  margin-inline-start: var(--spacing-10);
  vertical-align: top;
}

.bl_header {
  position: sticky;
  inset-block-start: var(--wp-admin--admin-bar--height, 0px);
  z-index: 100;
  border-block-end: 1px solid var(--color-border);
  background: var(--color-base);
}

.bl_header_inner {
  max-inline-size: var(--wide-size);
  margin-inline: auto;
}

.bl_header_utility {
  display: none;
  padding-inline: var(--spacing-30);
  border-block-end: 1px solid var(--color-border);
}
@media all and (min-width: 600px) {
  .bl_header_utility {
    display: block;
  }
}
.bl_header_utility .bl_header_inner {
  display: flex;
  gap: var(--spacing-40);
  align-items: center;
  justify-content: flex-end;
}

.bl_header_user,
.bl_header_logout {
  margin: 0;
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-normal);
}

.bl_header_logout {
  color: var(--color-gray);
  text-decoration-line: none;
}
@media (any-hover: hover) {
  .bl_header_logout:hover {
    text-decoration-line: underline;
  }
}
.bl_header_logout:focus-visible {
  text-decoration-line: underline;
}

.bl_header_main {
  padding: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .bl_header_main {
    padding-inline: var(--spacing-30);
  }
}

.bl_header_row {
  display: grid;
  grid-template-areas: "logo menu";
  grid-template-columns: 1fr auto;
  align-items: center;
  column-gap: var(--spacing-30);
  block-size: 46px;
}
@media all and (min-width: 600px) {
  .bl_header_row {
    grid-template-areas: "menu logo btns";
    grid-template-columns: 1fr auto 1fr;
    block-size: 54px;
  }
}

.bl_header_menu {
  grid-area: menu;
  justify-self: end;
}
@media all and (min-width: 600px) {
  .bl_header_menu {
    justify-self: start;
  }
}

.bl_header_logo {
  grid-area: logo;
  margin: 0;
  line-height: 0;
}
.bl_header_logo img {
  inline-size: 240px;
  max-inline-size: 100%;
  block-size: auto;
}
@media all and (min-width: 600px) {
  .bl_header_logo img {
    inline-size: clamp(380px, -260px + 62.5vw, 440px);
  }
}

.bl_header_btns {
  grid-area: btns;
  display: none;
  justify-self: end;
}
@media all and (min-width: 1024px) {
  .bl_header_btns {
    display: block;
  }
}

.bl_btn_wrap {
  display: flex;
  gap: var(--spacing-30);
}

.bl_nav {
  border-block-end: 1px solid var(--color-border);
  background: var(--color-base);
}

.bl_nav_inner {
  position: relative;
}
.bl_nav_inner::before, .bl_nav_inner::after {
  content: "";
  display: block;
  position: absolute;
  inset-block: 0;
  z-index: 1;
  inline-size: 60px;
  pointer-events: none;
}
.bl_nav_inner::before {
  inset-inline-start: 0;
  background: linear-gradient(to right, var(--color-base) 60%, transparent);
}
.bl_nav_inner::after {
  inset-inline-end: 0;
  background: linear-gradient(to left, var(--color-base) 60%, transparent);
}
.bl_nav_inner.is-start::before {
  display: none;
}
.bl_nav_inner.is-end::after {
  display: none;
}

.bl_nav_scroll {
  overflow-x: auto;
  scrollbar-width: none;
}
.bl_nav_scroll::-webkit-scrollbar {
  display: none;
}

.bl_nav_list {
  display: flex;
  justify-content: safe center;
  margin: 0;
  padding: 0;
  list-style: none;
}
.bl_nav_list li {
  flex: none;
}
.bl_nav_list a {
  display: block;
  padding: var(--spacing-30) var(--spacing-10) calc(var(--spacing-30) - 2px);
  border-block-end: 2px solid transparent;
  color: var(--color-contrast);
  font-size: clamp(0.75rem, 0.64rem + 0.4vw, 1rem);
  line-height: 1;
  letter-spacing: var(--ls-normal);
  text-decoration-line: none;
  white-space: nowrap;
  transition: border-color 0.3s ease;
}
@media (any-hover: hover) {
  .bl_nav_list a:hover {
    border-block-end-color: var(--color-accent);
    color: var(--color-contrast);
  }
}
.bl_nav_list a:focus-visible {
  outline-offset: -2px;
}
@media all and (min-width: 600px) {
  .bl_nav_list a {
    padding: var(--spacing-30) var(--spacing-30) calc(var(--spacing-30) - 2px);
  }
}

.bl_lang {
  display: grid;
  grid-template: auto/repeat(2, 1fr);
  margin: 0;
  padding: 0;
  list-style: none;
  inline-size: fit-content;
}

.bl_lang_item {
  margin: 0;
  padding-block: var(--spacing-20);
}

.bl_lang_link {
  display: block;
  min-inline-size: 66px;
  padding: 4px var(--spacing-10);
  background: var(--color-base);
  color: var(--color-contrast);
  font-size: 0.6875rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.02em;
  text-decoration-line: none;
  text-transform: uppercase;
  text-align: center;
  transition: background-color 0.3s ease, color 0.3s ease;
}
.bl_lang_link.is-current {
  background: var(--color-contrast);
  color: var(--color-base);
}
@media (any-hover: hover) {
  .bl_lang_link:not(.is-current):hover {
    background: var(--color-accent);
    color: var(--color-base);
  }
}
@media all and (min-width: 600px) {
  .bl_lang_link {
    min-inline-size: 70px;
    font-size: var(--fz-12);
  }
}

.bl_footer {
  color: var(--color-base);
}
.bl_footer p {
  margin: 0;
}

.bl_footer_inner {
  max-inline-size: var(--wide-size);
  margin-inline: auto;
}

.bl_footer_top {
  padding-inline: var(--wp--style--root--padding-right);
  padding-block: var(--spacing-40);
  background: var(--color-primary);
}
@media all and (min-width: 600px) {
  .bl_footer_top {
    padding-block: var(--spacing-50);
  }
}

.bl_footer_top_inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .bl_footer_top_inner {
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    gap: var(--spacing-50);
  }
}

.bl_footer_logo {
  line-height: 0;
}
.bl_footer_logo img {
  inline-size: 300px;
  max-inline-size: 100%;
  block-size: auto;
}
@media all and (min-width: 600px) {
  .bl_footer_logo img {
    inline-size: 394px;
  }
}

.bl_footer_lead {
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_footer_lead {
    inline-size: 700px;
    max-inline-size: 100%;
    line-height: var(--lh-narrow);
  }
}

.bl_footer_bottom {
  padding: var(--spacing-40) var(--spacing-40) var(--spacing-20);
  background: var(--color-contrast);
}
@media all and (min-width: 600px) {
  .bl_footer_bottom {
    padding-block: var(--spacing-50) var(--spacing-30);
  }
}

.bl_footer_nav {
  display: grid;
  grid-template: auto/repeat(2, 1fr);
  gap: var(--spacing-40);
}
@media all and (min-width: 782px) {
  .bl_footer_nav {
    grid-template: auto/repeat(3, 160px) auto;
    gap: var(--spacing-40) clamp(1.25rem, -7.02rem + 16.9vw, 6.5rem);
  }
  html[lang=en-US] .bl_footer_nav {
    grid-template: auto/repeat(3, 190px) auto;
    column-gap: clamp(0.625rem, -4.33rem + 10.1vw, 3.75rem);
  }
}

.bl_footer_nav_wrap__sns {
  inline-size: 100%;
}
@media all and (min-width: 782px) {
  .bl_footer_nav_wrap__sns {
    justify-self: center;
    inline-size: min(100%, 160px);
  }
}

.bl_footer_nav_title {
  margin-block-end: var(--spacing-30) !important;
  padding-block-end: var(--spacing-20);
  border-block-end: 1px solid var(--color-border);
  font-size: var(--fz-sm);
  font-weight: 700;
  line-height: 1;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_footer_nav_title {
    margin-block-end: var(--spacing-40) !important;
  }
}
html[lang=en-US] .bl_footer_nav_title {
  line-height: var(--lh-narrow);
}

.bl_footer_nav_list {
  display: grid;
  gap: var(--spacing-30);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media all and (min-width: 600px) {
  .bl_footer_nav_list {
    gap: var(--spacing-40);
  }
}
.bl_footer_nav_list li {
  line-height: 0.75;
}
.bl_footer_nav_list a {
  color: var(--color-base);
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  text-decoration-line: none;
}
@media (any-hover: hover) {
  .bl_footer_nav_list a:hover {
    text-decoration-line: underline;
  }
}
.bl_footer_nav_list a:focus-visible {
  text-decoration-line: underline;
}
@media all and (min-width: 600px) {
  .bl_footer_nav_list a {
    line-height: var(--lh-narrow);
  }
}

.bl_footer_sns {
  display: grid;
  grid-template: auto/max-content 1fr;
  gap: 4px;
}
@media all and (min-width: 600px) {
  .bl_footer_sns {
    gap: var(--spacing-10);
  }
}

.bl_footer_sns_ico {
  display: grid;
  place-items: center;
  inline-size: 24px;
  block-size: 24px;
}
.bl_footer_sns_ico img {
  display: block;
}

.bl_footer_copy {
  margin-block-start: var(--spacing-40) !important;
  font-size: var(--fz-xx-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_footer_copy {
    margin-block-start: var(--spacing-50) !important;
    line-height: var(--lh-narrow);
  }
}

.bl_card {
  position: relative;
  display: grid;
  margin-block-start: var(--card-space-top, 0);
  border-block-end: 1px solid var(--color-border);
  background: var(--color-base);
  transition: box-shadow 0.3s ease;
}

.bl_card_img {
  position: relative;
  aspect-ratio: 3/2;
  overflow: hidden;
  background: var(--color-base-2);
}
.bl_card_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.bl_card_img::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: transparent;
  pointer-events: none;
  transition: background-color 0.3s ease;
}

.bl_card_body {
  padding-block: var(--card-body-py, var(--spacing-30));
  padding-inline: var(--card-body-px, 4.7%);
}
@media all and (min-width: 600px) {
  .bl_card_body {
    padding-block: var(--card-body-py, var(--spacing-40));
    padding-inline: var(--card-body-px, var(--spacing-40));
  }
}

.bl_card_cat {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-10);
  margin-block: 0 4px;
}
@media all and (min-width: 600px) {
  .bl_card_cat {
    margin-block: 0 var(--spacing-10);
  }
}

.bl_card_link {
  color: inherit;
  text-decoration-line: none;
}
.bl_card_link::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  z-index: 1;
}
.bl_card_link:focus-visible {
  outline: none;
}
.bl_card_link:focus-visible::after {
  outline: var(--outline);
  outline-offset: var(--outline-offset);
}
@media (any-hover: hover) {
  .bl_card_link:hover {
    text-decoration-line: underline;
    text-underline-offset: 0.05em;
  }
  .bl_card:not(.bl_card__list):has(.bl_card_link:hover) {
    box-shadow: 0 4px 12px color-mix(in srgb, var(--color-contrast) 5%, transparent);
  }
  .bl_card:has(.bl_card_link:hover) .bl_card_img::after {
    background-color: var(--img-hover-overlay);
  }
}
.bl_card_link:focus-visible {
  text-decoration-line: underline;
  text-underline-offset: 0.05em;
}
.bl_card:not(.bl_card__list):has(.bl_card_link:focus-visible) {
  box-shadow: 0 4px 12px color-mix(in srgb, var(--color-contrast) 5%, transparent);
}

.bl_card:has(.bl_card_link:focus-visible) .bl_card_img::after {
  background-color: var(--img-hover-overlay);
}

.bl_card_sub {
  position: relative;
  padding-inline-start: var(--spacing-30);
  margin-block: var(--spacing-30) 0;
  font-size: var(--fz-md);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_card_sub {
    font-size: var(--fz-lg);
    line-height: var(--lh-narrow);
    letter-spacing: var(--ls-heading);
  }
}
.bl_card_sub::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(0.5lh - 1px);
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
}

.bl_card_txt {
  margin-block: var(--spacing-20) 0;
  line-height: 1.5;
  letter-spacing: var(--ls-normal);
}
@media not all and (min-width: 600px) {
  .bl_card_txt {
    font-size: var(--fz-sm);
  }
}
@media all and (min-width: 600px) {
  .bl_card_txt {
    margin-block: var(--spacing-30) 0;
  }
}

.bl_card__list {
  --card-body-py: var(--spacing-30) 0;
  --card-body-px: 0;
  padding-block: var(--spacing-30) var(--spacing-40);
}
@media all and (min-width: 600px) {
  .bl_card__list {
    --card-body-py: 0;
    display: flex;
    gap: var(--spacing-40);
    padding-block: var(--spacing-40);
  }
}

.bl_card__list:first-child {
  padding-block-start: 0;
}

@media all and (min-width: 600px) {
  .bl_card__list .bl_card_img {
    flex: none;
    align-self: flex-start;
    inline-size: min(35%, 240px);
  }
}

.bl_card__list .bl_card_body {
  min-inline-size: 0;
}

.bl_card__grid {
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
  gap: 0;
}

.bl_card__grid .bl_card_body {
  display: grid;
  grid-row: span 2;
  grid-template-rows: subgrid;
}

.bl_card__grid .bl_card_txt {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 4;
  line-clamp: 4;
  overflow: hidden;
}

.bl_card_info {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: var(--spacing-10);
  margin-block-start: var(--spacing-20);
}
@media all and (min-width: 600px) {
  .bl_card_info {
    gap: var(--spacing-20);
    margin-block-start: var(--spacing-30);
  }
}

.bl_sideCard {
  position: relative;
  display: flex;
  align-items: flex-start;
}
@media all and (min-width: 600px) {
  .bl_sideCard {
    align-items: center;
  }
}

.bl_sideCard_img {
  position: relative;
  flex: none;
  inline-size: 90px;
  aspect-ratio: 1;
  overflow: hidden;
  background: var(--color-base);
}
.bl_sideCard_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}
.bl_sideCard_img::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
  background-color: transparent;
  pointer-events: none;
  transition: background-color 0.3s ease;
}
@media all and (min-width: 600px) {
  .bl_sideCard_img {
    inline-size: 120px;
  }
}

.bl_sideCard_body {
  inline-size: 100%;
  min-inline-size: 0;
  padding-inline-start: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .bl_sideCard_body {
    padding-inline: var(--spacing-20);
  }
}

.bl_sideCard_title {
  margin: 0;
}
@media not all and (min-width: 600px) {
  .bl_sideCard_title {
    font-size: var(--fz-sm);
  }
}
.bl_sideCard_title {
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_sideCard_title {
    line-height: var(--lh-narrow);
  }
}

.bl_sideCard_link {
  color: inherit;
}
.bl_sideCard_link::after {
  content: "";
  display: block;
  position: absolute;
  inset: 0;
}
.bl_sideCard_link:focus-visible {
  outline: none;
}
.bl_sideCard_link:focus-visible::after {
  outline: var(--outline);
  outline-offset: var(--outline-offset);
}
@media (any-hover: hover) {
  .bl_sideCard_link:hover {
    text-decoration-line: underline;
  }
  .bl_sideCard:has(.bl_sideCard_link:hover) .bl_sideCard_img::after {
    background-color: var(--img-hover-overlay);
  }
}
.bl_sideCard_link:focus-visible {
  text-decoration-line: underline;
}
.bl_sideCard:has(.bl_sideCard_link:focus-visible) .bl_sideCard_img::after {
  background-color: var(--img-hover-overlay);
}

.bl_sideCard_meta {
  display: flex;
  flex-direction: column;
  gap: 4px;
  align-items: flex-start;
  margin-block-start: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .bl_sideCard_meta {
    flex-flow: row wrap;
    align-items: center;
    justify-content: space-between;
    margin-block-start: var(--spacing-30);
  }
}

.bl_sideCard_cat {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
  max-inline-size: 100%;
}

@media all and (min-width: 600px) {
  .bl_sideCard_meta .el_info__day {
    margin-inline-start: auto;
  }
}

.bl_sideCardList {
  --gap: var(--spacing-30);
  display: flex;
  flex-direction: column;
  margin-block: var(--spacing-40) 0;
  padding: 0;
  list-style: none;
}
@media all and (min-width: 600px) {
  .bl_sideCardList {
    --gap: var(--spacing-40);
  }
}

.bl_sideCardList_item {
  margin: 0;
  padding-block: var(--gap);
}
.bl_sideCardList_item + .bl_sideCardList_item {
  border-block-start: 1px solid var(--color-border);
}

.bl_sideCardList_item:first-child {
  padding-block-start: 0;
}

.bl_sideCardList_item:last-child {
  padding-block-end: 0;
}

.bl_breadcrumb {
  padding: var(--spacing-20) var(--spacing-side) var(--spacing-20) var(--spacing-side);
  background: var(--color-base-2);
}
@media all and (min-width: 600px) {
  .bl_breadcrumb {
    padding-block: var(--spacing-40);
  }
}

.bl_breadcrumb_list {
  display: flex;
  flex-wrap: wrap;
  gap: 2px;
  align-items: center;
  max-inline-size: var(--wide-size);
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.bl_breadcrumb_item {
  margin: 0;
  color: var(--color-gray);
  font-size: var(--fz-xx-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_breadcrumb_item {
    line-height: 1.4;
  }
}
.bl_breadcrumb_item a {
  color: inherit;
  text-decoration-line: underline;
  white-space: nowrap;
}
.bl_breadcrumb_item span {
  display: block;
  max-inline-size: 30em;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bl_breadcrumb_item:not(:last-child)::after {
  display: inline-block;
  content: "";
  inline-size: 14px;
  block-size: 14px;
  margin-inline-start: 2px;
  background: currentcolor;
  mask: url("../img/icon_arrow.svg") center/contain no-repeat;
  vertical-align: -2px;
}

.bl_authorCard {
  padding: var(--spacing-30);
  border-inline-start: 1px solid var(--color-accent);
  background: var(--color-base-2);
}
@media all and (min-width: 600px) {
  .bl_authorCard {
    display: flex;
    flex-direction: row;
    gap: var(--spacing-30);
    align-items: stretch;
    padding: var(--spacing-40);
  }
}

.bl_authorCard_img {
  position: relative;
  inline-size: 88px;
  aspect-ratio: 1;
  margin-inline: auto;
  overflow: hidden;
  border: 1px solid var(--color-border);
  border-radius: var(--radius-full);
  background: var(--color-base);
}
@media all and (min-width: 600px) {
  .bl_authorCard_img {
    margin: 0;
    flex: none;
    align-self: flex-start;
    inline-size: 120px;
  }
}
.bl_authorCard_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.bl_authorCard_ico {
  position: absolute;
  inset: 50% auto auto 50%;
  inline-size: 40px;
  block-size: 40px;
  background: var(--color-border);
  mask: url("../img/icon_author.svg") center/contain no-repeat;
  translate: -50% -50%;
}

.bl_authorCard_body {
  margin-block: var(--spacing-20) 0;
}
@media all and (min-width: 600px) {
  .bl_authorCard_body {
    margin-block: 0;
    padding-inline: var(--spacing-20);
  }
}

.bl_authorCard_label {
  margin: 0 0 var(--spacing-10);
  color: var(--color-accent);
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-heading);
  text-transform: uppercase;
}

.bl_authorCard_name {
  position: relative;
  margin: 0;
  padding-inline-start: var(--spacing-30);
  font-size: var(--fz-lg);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_authorCard_name {
    line-height: 1.4;
    letter-spacing: var(--ls-heading);
  }
}
.bl_authorCard_name::before {
  content: "";
  position: absolute;
  inset: calc(0.5lh - 1px) auto auto 0;
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
}

.bl_authorCard_job {
  margin-block: var(--spacing-10) 0;
  font-size: var(--fz-md);
  line-height: 1.3;
}
@media all and (min-width: 600px) {
  .bl_authorCard_job {
    line-height: 1.4;
  }
}

.bl_authorCard_txt {
  margin-block: var(--spacing-20) 0;
  font-size: var(--fz-md);
  line-height: var(--lh-normal);
}
@media all and (min-width: 600px) {
  .bl_authorCard_txt {
    margin-block: var(--spacing-30) 0;
  }
}

.bl_authorCard_info {
  margin-block: var(--spacing-20) 0;
  line-height: 0.75;
  text-align: right;
}
@media all and (min-width: 600px) {
  .bl_authorCard_info {
    margin-block: var(--spacing-30) 0;
  }
}

.bl_authorCard_sns {
  margin-block: var(--spacing-10) 0;
}

.bl_share {
  display: flex;
  gap: var(--spacing-10);
  align-items: center;
  justify-content: flex-end;
}
@media all and (min-width: 600px) {
  .bl_share {
    gap: var(--spacing-20);
  }
}

.bl_share_title {
  align-self: stretch;
  align-content: center;
  margin: 0;
  padding-inline-end: var(--spacing-10);
  border-inline-end: 1px solid var(--color-border);
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_share_title {
    padding-inline-end: var(--spacing-20);
    font-size: var(--fz-sm);
  }
}

.bl_share_list {
  display: flex;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.bl_share_link {
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  display: grid;
  place-items: center;
  inline-size: 44px;
  block-size: 44px;
  color: inherit;
}
.bl_share_link img {
  display: block;
  inline-size: auto;
  max-inline-size: none;
}
.bl_share_link.is-copied::after {
  content: attr(data-done);
  position: absolute;
  inset: auto auto 100% 50%;
  padding: 4px var(--spacing-10);
  background: var(--color-contrast);
  color: var(--color-base);
  font-size: var(--fz-12);
  line-height: 1;
  white-space: nowrap;
  translate: -50% -4px;
}

.bl_share_link__linkedin img,
.bl_share_link__x img {
  block-size: 24px;
}

.bl_share_link__facebook img {
  block-size: 26px;
}

.bl_share_link__mail img {
  block-size: 17px;
}

.bl_share_link__copy img {
  block-size: 21px;
}

.bl_shareCard {
  display: grid;
  gap: var(--spacing-20);
  padding: var(--spacing-30);
  border: 2px solid var(--color-accent);
  background: var(--color-base);
}
.bl_shareCard > * {
  justify-self: center;
}
@media all and (min-width: 782px) {
  .bl_shareCard {
    grid-template: auto/1fr max-content;
    gap: var(--spacing-30);
    align-items: center;
    justify-content: space-between;
    padding: var(--spacing-40);
  }
  .bl_shareCard .bl_shareCard_txt {
    justify-self: start;
  }
}

.bl_shareCard_txt {
  position: relative;
  margin: 0;
  padding-inline-start: var(--spacing-30);
  font-size: var(--fz-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_shareCard_txt {
    font-size: var(--fz-md);
    line-height: 1.4;
  }
}
.bl_shareCard_txt::before {
  content: "";
  position: absolute;
  inset: calc(0.5lh - 1px) auto auto 0;
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
}

div#ez-toc-container {
  display: block;
  inline-size: 100%;
  margin-block: var(--wp--preset--spacing--section);
  padding: var(--spacing-30);
  border: 1px solid var(--color-border);
  border-radius: 0;
  background: var(--color-base);
  box-shadow: none;
}
@media all and (min-width: 600px) {
  div#ez-toc-container {
    padding: var(--spacing-40);
  }
}
div#ez-toc-container .ez-toc-title-container {
  display: block;
  inline-size: auto;
  padding-inline: var(--spacing-10);
}
@media all and (min-width: 600px) {
  div#ez-toc-container .ez-toc-title-container {
    padding-inline: var(--spacing-20);
  }
}
div#ez-toc-container .ez-toc-title-toggle {
  display: none;
}
div#ez-toc-container .ez-toc-title {
  display: block;
  color: var(--color-gray);
  font-size: var(--fz-x-sm);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  div#ez-toc-container .ez-toc-title {
    font-size: var(--fz-sm);
    line-height: 1.4;
  }
}
div#ez-toc-container nav {
  margin-block-start: var(--spacing-10);
  padding-inline: var(--spacing-10);
}
@media all and (min-width: 600px) {
  div#ez-toc-container nav {
    margin-block-start: var(--spacing-30);
    padding-inline: var(--spacing-20);
  }
}
div#ez-toc-container .ez-toc-list {
  display: grid;
  gap: var(--spacing-10);
  margin: 0;
  padding: 0;
}
@media all and (min-width: 600px) {
  div#ez-toc-container .ez-toc-list {
    gap: var(--spacing-20);
  }
}
div#ez-toc-container .ez-toc-list-level-3 {
  margin-block-start: var(--spacing-10);
}
div#ez-toc-container .ez-toc-list li {
  display: block;
  margin: 0;
  padding-inline: var(--spacing-10);
}
@media all and (min-width: 600px) {
  div#ez-toc-container .ez-toc-list li {
    padding-inline: var(--spacing-30);
  }
}
div#ez-toc-container .ez-toc-list li a.ez-toc-link {
  position: relative;
  display: block;
  padding-inline-start: 30px;
  color: var(--color-contrast);
  font-size: var(--fz-md);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  div#ez-toc-container .ez-toc-list li a.ez-toc-link {
    padding-inline-start: calc(34px + var(--spacing-10));
    line-height: 1.4;
  }
}
div#ez-toc-container .ez-toc-list li a.ez-toc-link:visited {
  color: var(--color-contrast);
}
@media (any-hover: hover) {
  div#ez-toc-container .ez-toc-list li a.ez-toc-link:hover {
    text-decoration-line: underline;
    text-decoration-thickness: 2px;
  }
}
div#ez-toc-container .ez-toc-list li a.ez-toc-link::before {
  content: counter(item, decimal-leading-zero) ".";
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
  inline-size: 26px;
  margin: 0;
  float: none;
  color: var(--color-accent);
}
@media all and (min-width: 600px) {
  div#ez-toc-container .ez-toc-list li a.ez-toc-link::before {
    inline-size: 34px;
  }
}

.bl_pagination {
  display: flex;
  justify-content: center;
  margin-block-start: var(--spacing-40);
}
@media all and (min-width: 600px) {
  .bl_pagination {
    margin-block-start: var(--spacing-60);
  }
}

.bl_pagination_list {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media all and (min-width: 600px) {
  .bl_pagination_list {
    gap: 10px;
  }
}

.bl_pagination_item {
  display: grid;
  place-items: center;
  box-sizing: border-box;
  inline-size: 44px;
  block-size: 44px;
  padding: 5px;
  background-clip: content-box;
  border-radius: var(--radius-full);
  color: var(--color-contrast);
  font-family: var(--wp--preset--font-family--roboto, sans-serif);
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-normal);
  text-decoration-line: none;
  transition: background-color 0.3s ease, color 0.3s ease;
}
@media all and (min-width: 600px) {
  .bl_pagination_item {
    padding: 0;
    font-size: var(--fz-sm);
  }
}
.bl_pagination_item.is-current {
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
  color: var(--color-base);
  font-weight: 700;
}
.bl_pagination_item.is-dots {
  pointer-events: none;
}
@media (any-hover: hover) {
  .bl_pagination_item:hover {
    background-color: var(--color-base-2);
    border: 1px solid var(--color-border);
  }
}
.bl_pagination_item.is-current:hover {
  background-color: var(--color-primary);
  border: 1px solid var(--color-primary);
}

.bl_pagination_arw {
  inline-size: 18px;
  block-size: 18px;
  background: var(--color-primary);
  mask: url("../img/icon_arrow.svg") center/contain no-repeat;
}

.bl_pagination_item__prev .bl_pagination_arw {
  transform: scaleX(-1);
}

.bl_pagination_sr {
  position: absolute;
  inline-size: 1px;
  block-size: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  border: 0;
  clip-path: inset(50%);
  white-space: nowrap;
}

.bl_about {
  background: var(--color-primary);
  color: var(--color-base);
}

.bl_about_row {
  --row-top-space: var(--spacing-60);
}
@media not all and (min-width: 600px) {
  .bl_about_row {
    display: block !important;
  }
}
@media all and (min-width: 600px) {
  .bl_about_row {
    margin-block-start: var(--row-top-space) !important;
    flex-direction: row;
    align-items: center;
    gap: var(--spacing-40);
  }
}

.bl_about__post {
  padding-block-end: var(--spacing-50) !important;
}
@media not all and (min-width: 600px) {
  .bl_about__post {
    padding-inline: var(--spacing-30) !important;
  }
}
.bl_about__post .bl_about_name {
  inline-size: min(100%, 600px);
}
.bl_about__post .bl_about_row {
  --row-top-space: var(--spacing-30);
  justify-content: space-between;
}
.bl_about__post .bl_about_txt {
  flex: 0 1 600px;
}
.bl_about__post .bl_about_nav {
  flex: 0 1 160px;
}

@media all and (min-width: 600px) {
  .bl_about_txt {
    flex: 0 1 536px;
    min-inline-size: 0;
  }
}

.bl_about_label {
  color: var(--color-accent);
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-heading);
}
.bl_about_heading {
  font-size: var(--fz-xx-lg);
  color: var(--color-base);
  margin-block-start: var(--spacing-20);
}
@media all and (min-width: 600px) {
  .bl_about_heading {
    margin-block-start: var(--spacing-30);
  }
}
.bl_about_heading span {
  display: inline-block;
}

@media not all and (min-width: 600px) {
  .bl_about_lead {
    font-size: var(--fz-sm);
  }
}
.bl_about_lead {
  line-height: var(--lh-normal);
  letter-spacing: var(--ls-normal);
}

@media not all and (min-width: 600px) {
  .bl_about_nav {
    margin-block-start: var(--spacing-40) !important;
  }
}
@media all and (min-width: 600px) {
  .bl_about_nav {
    inline-size: max-content;
  }
}

.bl_about_nav_title {
  inline-size: 160px;
  padding-block-end: var(--spacing-20);
  border-block-end: 1px solid var(--color-border);
  font-size: var(--fz-sm);
  font-weight: 700;
  line-height: 1;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_about_nav_title {
    inline-size: 10em;
  }
}

.bl_about_nav_list {
  display: grid;
  gap: var(--spacing-10);
  margin: 0;
  padding: 0;
  list-style: none;
}
@media all and (min-width: 600px) {
  .bl_about_nav_list {
    gap: var(--spacing-20);
  }
}
.bl_about_nav_list:not(first-child) {
  margin-block-start: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .bl_about_nav_list:not(first-child) {
    margin-block-start: var(--spacing-20);
  }
}
.bl_about_nav_list li {
  line-height: 1;
}
.bl_about_nav_list a {
  color: var(--color-base);
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  text-decoration-line: none;
}
@media (any-hover: hover) {
  .bl_about_nav_list a[href]:hover {
    color: var(--color-base);
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
  }
}
.bl_about_nav_list a:focus-visible {
  color: var(--color-base);
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}
@media all and (min-width: 600px) {
  .bl_about_nav_list a {
    line-height: var(--lh-narrow);
  }
}

.bl_form {
  padding: var(--spacing-30);
  border: 1px solid var(--color-border);
}
@media all and (min-width: 600px) {
  .bl_form {
    padding: var(--spacing-60) 8.7%;
  }
}

.bl_form > * + * {
  margin-block: var(--form-box-space-top, var(--spacing-40)) var(--form-box-space-bottom, 0);
}
@media all and (min-width: 600px) {
  .bl_form > * + * {
    margin-block-start: var(--form-box-space-top, var(--spacing-50));
  }
}

.bl_form_table {
  display: grid;
  gap: var(--spacing-30);
}
@media all and (min-width: 600px) {
  .bl_form_table {
    gap: var(--spacing-40);
  }
}

.bl_form_row {
  display: grid;
  gap: 4px;
}
@media all and (min-width: 600px) {
  .bl_form_row {
    gap: var(--spacing-10);
  }
}

.bl_form_label {
  display: flex;
  gap: 4px;
  align-items: flex-start;
  inline-size: fit-content;
  font-size: var(--fz-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_form_label {
    gap: var(--spacing-10);
    line-height: var(--lh-narrow);
  }
}

.bl_form_check {
  padding: var(--spacing-30);
  background-color: var(--color-base-2);
}
@media all and (min-width: 600px) {
  .bl_form_check {
    padding: var(--spacing-50);
  }
}

.bl_form_check > * + * {
  margin-block: var(--form-check-space-top, var(--spacing-10)) var(--form-check-space-bottom, 0);
}

.bl_form_check_item {
  line-height: 1;
}

.bl_form_note {
  margin-block: 4px 0;
  padding-inline-start: var(--spacing-10);
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_form_note {
    padding-inline-start: var(--spacing-50);
    line-height: var(--lh-narrow);
  }
}

.bl_form_lang {
  display: flex;
  flex-wrap: wrap;
  gap: 0 var(--spacing-20);
  align-items: center;
  padding-inline-start: var(--spacing-40);
}
@media all and (min-width: 600px) {
  .bl_form_lang {
    column-gap: var(--spacing-30);
  }
}

.bl_form_lang_label {
  font-size: var(--fz-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_form_lang_label {
    line-height: var(--lh-narrow);
  }
}

.bl_form_foot {
  display: grid;
  align-items: center;
  justify-items: center;
  gap: var(--spacing-20);
}
@media all and (min-width: 600px) {
  .bl_form_foot {
    gap: var(--spacing-30);
  }
}
.bl_form_foot > :first-child {
  grid-area: 1/1;
}
.bl_form_foot .wpcf7-spinner {
  grid-area: 1/1;
  margin: 0;
  pointer-events: none;
}

.bl_form_foot_txt {
  margin: 0;
  font-size: var(--fz-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  text-align: center;
}
@media all and (min-width: 600px) {
  .bl_form_foot_txt {
    line-height: var(--lh-narrow);
  }
}
.bl_form_foot_txt a {
  color: inherit;
  text-decoration-line: underline;
}

.bl_form_radio {
  display: flex;
  flex-wrap: wrap;
  column-gap: var(--spacing-30);
}
.bl_form_radio .wpcf7-list-item {
  margin: 0;
}
.bl_form_radio label {
  display: inline-flex;
}

.bl_form_radio__vertical {
  flex-direction: column;
  flex-wrap: nowrap;
  padding-inline-start: 1em;
}

.wpcf7-not-valid-tip {
  margin-block-start: 4px;
  color: var(--color-required);
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}

@media not all and (min-width: 600px) {
  .bl_join {
    padding: var(--spacing-40) !important;
  }
}

.bl_join_inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-40);
  max-inline-size: var(--wide-size);
  margin-inline: auto;
}
@media all and (min-width: 1024px) {
  .bl_join_inner {
    flex-direction: row;
    align-items: center;
    gap: var(--spacing-60);
  }
}

.bl_join_img {
  margin-inline: auto;
  aspect-ratio: 3/2;
  align-self: center;
  overflow: hidden;
}
@media not all and (min-width: 782px) {
  .bl_join_img {
    inline-size: min(100%, 540px) !important;
  }
}
@media all and (min-width: 782px) {
  .bl_join_img {
    flex: none !important;
  }
}
@media all and (min-width: 1024px) {
  .bl_join_img {
    align-self: flex-start;
    flex: 0 1 540px !important;
    min-inline-size: 0;
  }
}
.bl_join_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
  object-position: bottom;
}

@media all and (min-width: 782px) {
  .bl_join_txt {
    flex: none !important;
  }
}
@media all and (min-width: 1024px) {
  .bl_join_txt {
    flex: 0 1 560px !important;
  }
}

.bl_join_title {
  display: flex;
  flex-direction: column;
  gap: 4px;
  padding-block-end: var(--spacing-10);
  border-block-end: 1px solid var(--color-border);
}
@media all and (min-width: 600px) {
  .bl_join_title {
    padding-block-end: var(--spacing-20);
  }
}

.bl_join_label {
  color: var(--color-accent);
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-heading);
  margin-block-end: 4px;
}
@media not all and (min-width: 600px) {
  .bl_join_lead {
    font-size: var(--fz-sm);
  }
}
.bl_join_lead {
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_join_lead {
    line-height: var(--lh-narrow);
  }
}

.bl_join_list {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}
@media all and (min-width: 600px) {
  .bl_join_list {
    gap: var(--spacing-10);
  }
}

.bl_join_item {
  position: relative;
  padding-inline-start: var(--spacing-30);
}
@media not all and (min-width: 600px) {
  .bl_join_item {
    font-size: var(--fz-sm);
  }
}
.bl_join_item {
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_join_item {
    line-height: var(--lh-narrow);
  }
}
.bl_join_item::before {
  content: "";
  position: absolute;
  left: 0;
  top: calc(0.5lh - 1px);
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
}

.bl_join_note {
  color: var(--color-gray);
  font-size: var(--fz-xx-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
@media all and (min-width: 600px) {
  .bl_join_note {
    line-height: var(--lh-narrow);
  }
}

.bl_join_btns {
  display: block !important;
}
@media not all and (min-width: 600px) {
  .bl_join_btns {
    margin-block-start: var(--spacing-20) !important;
  }
}

@media not all and (min-width: 600px) {
  .bl_join.bl_join__post {
    padding: var(--spacing-30) !important;
  }
}
@media not all and (min-width: 600px) {
  .bl_join.bl_join__post .bl_join_inner {
    gap: var(--spacing-30);
  }
}
@media all and (min-width: 1024px) {
  .bl_join.bl_join__post .bl_join_img {
    flex: none !important;
    inline-size: 255px;
    aspect-ratio: 1/1.414;
    align-self: center;
  }
}
.bl_join.bl_join__post .bl_join_img .wp-block-image {
  block-size: 100%;
  margin: 0;
}
@media all and (min-width: 1024px) {
  .bl_join.bl_join__post .bl_join_txt {
    flex: 1 1 0 !important;
    min-inline-size: 0;
  }
}
.bl_join.bl_join__post .bl_join_lead {
  display: none;
}
.bl_join.bl_join__post .bl_join_list {
  margin-block-start: 0 !important;
}
.bl_join.bl_join__post .bl_join_list li:first-child {
  margin-block-start: var(--spacing-30) !important;
}
@media not all and (min-width: 600px) {
  .bl_join.bl_join__post .bl_join_list li:first-child {
    margin-block-start: var(--spacing-20) !important;
  }
}
@media not all and (min-width: 600px) {
  .bl_join.bl_join__post .bl_join_note {
    margin-block-start: var(--spacing-20) !important;
  }
}

.bl_ad img,
.bl_ad iframe,
.bl_ad video {
  max-inline-size: 100%;
  block-size: auto;
}

.bl_ad__footer {
  margin-block-start: 0;
  margin-block-end: var(--spacing-40);
}

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

.bl_faq_item {
  padding-inline: var(--spacing-20);
  padding-block: var(--spacing-40);
  border-block-end: 1px solid var(--color-border);
}
.bl_faq_item:last-child {
  border-block-end: none;
}
.bl_faq_item dt,
.bl_faq_item dd {
  position: relative;
  margin: 0;
  padding-inline-start: 1.75em;
}
.bl_faq_item dt::before,
.bl_faq_item dd::before {
  position: absolute;
  inset-block-start: -0.1em;
  inset-inline-start: 0;
  font-size: 1.2em;
  font-family: var(--font-en);
}
.bl_faq_item dt {
  font-size: var(--fz-x-lg);
  line-height: var(--lh-heading);
}
.bl_faq_item dt::before {
  content: "Q.";
  color: var(--color-accent);
}
.bl_faq_item dd {
  margin-inline-start: 0.5em;
  margin-block-start: var(--spacing-30);
  font-size: var(--fz-md);
}
.bl_faq_item dd::before {
  content: "A.";
}

p.is-style-subtitle {
  position: relative;
  margin-block: 0 var(--spacing-20);
  padding-inline-start: var(--spacing-20);
  font-size: var(--fz-md);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
}
p.is-style-subtitle::before {
  content: "";
  position: absolute;
  top: calc(0.5lh - 1px);
  left: 0;
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
}

p.is-style-lead {
  margin-block: 0 var(--spacing-30);
}

.wp-block-group.is-style-num,
.wp-block-group.is-style-dash {
  padding: var(--spacing-30);
}
@media not all and (min-width: 600px) {
  .wp-block-group.is-style-num,
  .wp-block-group.is-style-dash {
    --heading-space-top: var(--spacing-40);
    --heading-space-bottom: var(--spacing-10);
  }
}
@media all and (min-width: 600px) {
  .wp-block-group.is-style-num,
  .wp-block-group.is-style-dash {
    padding: var(--spacing-40);
  }
}
@media all and (min-width: 600px) {
  .wp-block-group.is-style-num > *,
  .wp-block-group.is-style-dash > * {
    padding-inline: var(--spacing-20);
  }
}
.wp-block-group.is-style-num > h3,
.wp-block-group.is-style-num > h4,
.wp-block-group.is-style-dash > h3,
.wp-block-group.is-style-dash > h4 {
  display: grid;
  align-items: start;
  gap: var(--spacing-10);
  margin-block: var(--heading-space-top, var(--spacing-50)) var(--heading-space-bottom, var(--spacing-20));
  font-size: var(--fz-lg);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: var(--ls-heading);
}
@media all and (min-width: 600px) {
  .wp-block-group.is-style-num > h3,
  .wp-block-group.is-style-num > h4,
  .wp-block-group.is-style-dash > h3,
  .wp-block-group.is-style-dash > h4 {
    line-height: 1.4;
  }
}
.wp-block-group.is-style-num > h3:first-child,
.wp-block-group.is-style-num > h4:first-child,
.wp-block-group.is-style-dash > h3:first-child,
.wp-block-group.is-style-dash > h4:first-child {
  margin-block-start: 0;
}
.wp-block-group.is-style-num > h3 > .ez-toc-section,
.wp-block-group.is-style-num > h3 > .ez-toc-section-end,
.wp-block-group.is-style-num > h4 > .ez-toc-section,
.wp-block-group.is-style-num > h4 > .ez-toc-section-end,
.wp-block-group.is-style-dash > h3 > .ez-toc-section,
.wp-block-group.is-style-dash > h3 > .ez-toc-section-end,
.wp-block-group.is-style-dash > h4 > .ez-toc-section,
.wp-block-group.is-style-dash > h4 > .ez-toc-section-end {
  position: absolute;
}
.wp-block-group.is-style-num > p,
.wp-block-group.is-style-dash > p {
  margin-block: 0;
  font-size: var(--fz-md);
  line-height: var(--lh-normal);
  letter-spacing: var(--ls-normal);
}

.wp-block-group.is-style-num {
  border: 1px solid var(--color-border);
  counter-reset: gv-num;
}
.wp-block-group.is-style-num > h3,
.wp-block-group.is-style-num > h4 {
  counter-increment: gv-num;
  grid-template: auto/max-content 1fr;
}
.wp-block-group.is-style-num > h3::before,
.wp-block-group.is-style-num > h4::before {
  content: counter(gv-num, decimal-leading-zero) ".";
  color: var(--color-accent);
}

.wp-block-group.is-style-dash {
  background: var(--color-base-2);
}
.wp-block-group.is-style-dash > h3,
.wp-block-group.is-style-dash > h4 {
  grid-template: auto/max-content 1fr;
}
.wp-block-group.is-style-dash > h3::before,
.wp-block-group.is-style-dash > h4::before {
  content: "";
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
  margin-block-start: 0.5lh;
}

ul.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) {
  list-style: none;
  padding-inline: 0;
}
ul.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) > li {
  position: relative;
  padding-inline-start: 2.2em;
}
ul.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) > li::before {
  content: "";
  position: absolute;
  top: calc(0.5lh - 1px);
  left: 1em;
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
}
ul.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) > li + li {
  margin-block-start: var(--spacing-10);
}
ul.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)).is-style-wide > li + li {
  margin-block-start: var(--spacing-30);
}
ul.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) li > .wp-block-list {
  margin-block-start: var(--spacing-10);
}

ol.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) {
  padding-inline-start: 2.2em;
}
ol.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) > li::marker {
  content: counter(list-item, decimal-leading-zero) ". ";
  color: var(--color-accent);
}
ol.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) > li + li {
  margin-block-start: var(--spacing-10);
}
ol.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)).is-style-wide > li + li {
  margin-block-start: var(--spacing-30);
}
ol.wp-block-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-wide)) li > .wp-block-list {
  margin-block-start: var(--spacing-10);
}

.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) {
  border-block-start: 1px solid var(--color-border);
  background: var(--color-base);
  --label-min: 16em;
  --label-max: 20em;
}
.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)).is-style-narrow {
  --label-min: 12em;
  --label-max: 16em;
}
.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) .wp-block-simple-definition-list-blocks-div {
  display: flex;
  flex-direction: column;
  border-block-end: 1px solid var(--color-border);
}
@media all and (min-width: 600px) {
  .wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) .wp-block-simple-definition-list-blocks-div {
    flex-direction: row;
    align-items: center;
  }
}
.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dt,
.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dd {
  margin: 0;
  padding: var(--spacing-20) var(--spacing-30);
  font-size: var(--fz-sm);
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: var(--ls-normal);
}
.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dt {
  padding-block-end: 0;
}
.wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dd {
  padding-block-start: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dt,
  .wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dd {
    padding-block: var(--spacing-30);
  }
  .wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dt {
    flex: 0 0 var(--label-min);
    max-inline-size: var(--label-max);
  }
  .wp-block-simple-definition-list-blocks-list:not([class*=un_], [class*=bl_], [class*=is-style-]:not(.is-style-narrow)) dd {
    flex: 1;
    min-inline-size: 0;
  }
}

.wp-block-simple-definition-list-blocks-list.is-style-num,
.wp-block-simple-definition-list-blocks-list.is-style-dash {
  padding: var(--spacing-30);
}
@media not all and (min-width: 600px) {
  .wp-block-simple-definition-list-blocks-list.is-style-num,
  .wp-block-simple-definition-list-blocks-list.is-style-dash {
    --heading-space-top: var(--spacing-40);
    --heading-space-bottom: var(--spacing-10);
  }
}
@media all and (min-width: 600px) {
  .wp-block-simple-definition-list-blocks-list.is-style-num,
  .wp-block-simple-definition-list-blocks-list.is-style-dash {
    padding: var(--spacing-40);
  }
}
.wp-block-simple-definition-list-blocks-list.is-style-num .wp-block-simple-definition-list-blocks-div,
.wp-block-simple-definition-list-blocks-list.is-style-dash .wp-block-simple-definition-list-blocks-div {
  display: block;
  margin: 0;
  padding: 0;
  border: 0;
}
@media all and (min-width: 600px) {
  .wp-block-simple-definition-list-blocks-list.is-style-num .wp-block-simple-definition-list-blocks-div,
  .wp-block-simple-definition-list-blocks-list.is-style-dash .wp-block-simple-definition-list-blocks-div {
    padding-inline: var(--spacing-20);
  }
}
.wp-block-simple-definition-list-blocks-list.is-style-num .wp-block-simple-definition-list-blocks-div:first-child dt,
.wp-block-simple-definition-list-blocks-list.is-style-dash .wp-block-simple-definition-list-blocks-div:first-child dt {
  margin-block-start: 0;
}
.wp-block-simple-definition-list-blocks-list.is-style-num dt,
.wp-block-simple-definition-list-blocks-list.is-style-dash dt {
  display: grid;
  grid-template: auto/max-content 1fr;
  align-items: start;
  gap: var(--spacing-10);
  inline-size: auto;
  margin-block: var(--heading-space-top, var(--spacing-50)) var(--heading-space-bottom, var(--spacing-20));
  margin-inline: 0;
  padding: 0;
  font-size: var(--fz-lg);
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: var(--ls-heading);
}
@media all and (min-width: 600px) {
  .wp-block-simple-definition-list-blocks-list.is-style-num dt,
  .wp-block-simple-definition-list-blocks-list.is-style-dash dt {
    line-height: 1.4;
  }
}
.wp-block-simple-definition-list-blocks-list.is-style-num dd,
.wp-block-simple-definition-list-blocks-list.is-style-dash dd {
  margin: 0;
  padding: 0;
  font-size: var(--fz-md);
  line-height: var(--lh-normal);
  letter-spacing: var(--ls-normal);
}

.wp-block-simple-definition-list-blocks-list.is-style-num {
  border: 1px solid var(--color-border);
  background: none;
  counter-reset: gv-num;
}
.wp-block-simple-definition-list-blocks-list.is-style-num dt {
  counter-increment: gv-num;
}
.wp-block-simple-definition-list-blocks-list.is-style-num dt::before {
  content: counter(gv-num, decimal-leading-zero) ".";
  color: var(--color-accent);
}

.wp-block-simple-definition-list-blocks-list.is-style-dash {
  background: var(--color-base-2);
}
.wp-block-simple-definition-list-blocks-list.is-style-dash dt::before {
  content: "";
  inline-size: 8px;
  block-size: 2px;
  background: var(--color-accent);
  margin-block-start: 0.5lh;
}

a[target=_blank]:not(:has(img, svg, picture), .hp_noBlankIco, .wp-block-button__link, [class*=el_btn])::after {
  content: "";
  display: inline-block;
  inline-size: 0.9em;
  block-size: 0.9em;
  margin-inline-start: 0.25em;
  vertical-align: -0.1em;
  background: currentcolor;
  mask: url("../img/icon_blank.svg") center/contain no-repeat;
}

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

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

.hp_tal {
  text-align: left !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;
  }
}
@media all and (min-width: 600px) {
  .hp_tacTb {
    text-align: center !important;
  }
  .hp_tarTb {
    text-align: right !important;
  }
  .hp_talTb {
    text-align: left !important;
  }
}
@media all and (min-width: 782px) {
  .hp_tacTb-lg {
    text-align: center !important;
  }
  .hp_tarTb-lg {
    text-align: right !important;
  }
  .hp_talTb-lg {
    text-align: left !important;
  }
}
@media all and (min-width: 1024px) {
  .hp_tacPc {
    text-align: center !important;
  }
  .hp_tarPc {
    text-align: right !important;
  }
  .hp_talPc {
    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_fontEn {
  font-family: var(--font-en);
}

.hp_fzSm {
  font-size: var(--fz-x-sm);
}

.hp_fzLg {
  font-size: var(--fz-x-lg);
}

.hp_bolder {
  color: var(--color-accent-2);
  font-weight: 500;
}

.un_home-lead:has(.bl_ad) {
  padding-block-start: var(--spacing-40) !important;
}

.un_home-lead:has(.bl_ad) .un_home-lead_inner {
  margin-block-start: var(--wp--preset--spacing--section);
}

.un_home-lead_inner {
  display: grid !important;
  gap: var(--spacing-50) !important;
  max-inline-size: var(--wide-size);
  margin-inline: auto;
}
@media all and (min-width: 600px) {
  .un_home-lead_inner {
    gap: var(--spacing-60) !important;
    max-inline-size: 740px;
  }
}
@media all and (min-width: 1024px) {
  .un_home-lead_inner {
    gap: clamp(1.875rem, -2.73rem + 7.2vw, 3.75rem) !important;
    grid-template-columns: minmax(0, 1fr) min(480px, 38%);
    align-items: start;
    max-inline-size: var(--wide-size);
  }
}

.un_home-lead_main {
  --card-space-top: var(--spacing-30);
}
@media all and (min-width: 600px) {
  .un_home-lead_main {
    --card-space-top: var(--spacing-40);
  }
}

.un_home-lead_side {
  inline-size: min(100%, 595px);
  margin-inline: auto;
}
@media all and (min-width: 1024px) {
  .un_home-lead_side {
    inline-size: 100%;
  }
}

.un_home-contents_cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--spacing-40);
  margin-block-start: var(--spacing-30);
}
@media all and (min-width: 782px) {
  .un_home-contents_cards {
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-auto-columns: minmax(320px, calc((100% - var(--cards-gap, 0px) * 2) / 3));
    --cards-pad: 16px;
    overflow: auto hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    margin-inline: calc(50% - 50vw);
    padding-block: var(--cards-pad);
    padding-inline: max(0px, 50vw - 50%);
  }
  .un_home-contents_cards.is-dragging {
    cursor: grabbing;
    user-select: none;
  }
  .un_home-contents_cards {
    --cards-gap: clamp(0.625rem, -1.64rem + 4.6vw, 2.5rem);
    gap: var(--spacing-50) var(--cards-gap);
    margin-block-start: calc(var(--spacing-40) - var(--cards-pad));
  }
}

.un_single {
  padding-block: var(--spacing-50) var(--spacing-80);
}
@media all and (min-width: 600px) {
  .un_single {
    padding-block-start: var(--spacing-60);
  }
}

.un_single_meta {
  display: flex;
  flex-direction: column;
  gap: 4px var(--spacing-20);
  align-items: stretch;
  margin-block-end: var(--spacing-10);
}
@media all and (min-width: 600px) {
  .un_single_meta {
    flex-direction: row-reverse;
    flex-wrap: wrap;
    gap: var(--spacing-10) var(--spacing-30);
    align-items: center;
    justify-content: space-between;
  }
}

@media not all and (min-width: 600px) {
  .un_single_meta .el_info__stack {
    align-self: flex-end;
  }
}

.un_single_cat {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-10);
}

.un_single_head {
  --headingLv3-fz: var(--fz-xx-lg);
}
@media not all and (min-width: 600px) {
  .un_single_head {
    margin-block-start: var(--spacing-40);
  }
}

@media not all and (min-width: 600px) {
  .un_single_lead {
    margin-block-start: var(--spacing-40);
    font-size: var(--fz-sm);
  }
}

.un_single_img {
  aspect-ratio: 3/2;
  overflow: hidden;
}
@media not all and (min-width: 600px) {
  .un_single_img {
    margin-block-start: var(--spacing-40);
  }
}
.un_single_img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.un_single_author + .bl_shareCard {
  margin-block-start: var(--spacing-30);
}

.un_single_share {
  max-inline-size: var(--wp--style--global--content-size);
  margin-block-start: var(--spacing-30);
}

.un_single_body,
.hp_tocBody,
body.post-type-post .is-root-container {
  counter-reset: gv-sec;
}
.un_single_body h2,
.hp_tocBody h2,
body.post-type-post .is-root-container h2 {
  margin-block-start: var(--spacing-80);
  font-weight: 400;
  line-height: var(--lh-heading);
  letter-spacing: var(--ls-normal);
  counter-increment: gv-sec;
  counter-reset: gv-sub;
}
@media all and (min-width: 600px) {
  .un_single_body h2,
  .hp_tocBody h2,
  body.post-type-post .is-root-container h2 {
    letter-spacing: var(--ls-heading);
  }
}
.un_single_body h2::before,
.hp_tocBody h2::before,
body.post-type-post .is-root-container h2::before {
  content: counter(gv-sec, decimal-leading-zero) ". ";
  color: var(--color-accent);
}
.un_single_body h3,
.hp_tocBody h3,
body.post-type-post .is-root-container h3 {
  font-weight: 400;
  counter-increment: gv-sub;
}
.un_single_body h3::before,
.hp_tocBody h3::before,
body.post-type-post .is-root-container h3::before {
  content: counter(gv-sec, decimal-leading-zero) "-" counter(gv-sub, decimal-leading-zero) ". ";
  color: var(--color-accent);
}
.un_single_body h3.is-style-no-num,
.hp_tocBody h3.is-style-no-num,
body.post-type-post .is-root-container h3.is-style-no-num {
  counter-increment: none;
}
.un_single_body h3.is-style-no-num::before,
.hp_tocBody h3.is-style-no-num::before,
body.post-type-post .is-root-container h3.is-style-no-num::before {
  content: none;
}
.un_single_body .wp-block-group.is-style-num > h3,
.hp_tocBody .wp-block-group.is-style-num > h3,
body.post-type-post .is-root-container .wp-block-group.is-style-num > h3 {
  counter-increment: gv-sub;
}
.un_single_body .wp-block-group.is-style-num > h3::before,
.hp_tocBody .wp-block-group.is-style-num > h3::before,
body.post-type-post .is-root-container .wp-block-group.is-style-num > h3::before {
  content: counter(gv-sec, decimal-leading-zero) "-" counter(gv-sub, decimal-leading-zero) ".";
}
.un_single_body .wp-block-group.is-style-num > h3.is-style-no-num,
.hp_tocBody .wp-block-group.is-style-num > h3.is-style-no-num,
body.post-type-post .is-root-container .wp-block-group.is-style-num > h3.is-style-no-num {
  counter-increment: none;
}
.un_single_body .wp-block-group.is-style-num > h3.is-style-no-num::before,
.hp_tocBody .wp-block-group.is-style-num > h3.is-style-no-num::before,
body.post-type-post .is-root-container .wp-block-group.is-style-num > h3.is-style-no-num::before {
  content: none;
}

.un_single_body + .un_single_author,
.un_single_pattern {
  margin-block-start: var(--spacing-50);
}
@media all and (min-width: 600px) {
  .un_single_body + .un_single_author,
  .un_single_pattern {
    margin-block-start: var(--spacing-60);
  }
}

.un_single_related {
  padding-block: var(--spacing-40);
  background: var(--color-base-2);
}
@media all and (min-width: 600px) {
  .un_single_related {
    padding-block: var(--spacing-50);
  }
}

.un_single_cards {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--spacing-40);
  margin-block-start: var(--spacing-30);
}
@media all and (min-width: 1024px) {
  .un_single_cards {
    grid-auto-flow: column;
    grid-template-columns: none;
    grid-auto-columns: minmax(320px, calc((100% - var(--cards-gap, 0px) * 2) / 3));
    --cards-pad: 16px;
    overflow: auto hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: thin;
    margin-inline: calc(50% - 50vw);
    padding-block: var(--cards-pad);
    padding-inline: max(0px, 50vw - 50%);
  }
  .un_single_cards.is-dragging {
    cursor: grabbing;
    user-select: none;
  }
  .un_single_cards {
    --cards-gap: clamp(0.625rem, -1.64rem + 4.6vw, 2.5rem);
    gap: var(--spacing-40) var(--cards-gap);
    margin-block-start: calc(var(--spacing-40) - var(--cards-pad));
  }
}

.un_page {
  padding-block: var(--spacing-50) var(--spacing-80);
}
@media all and (min-width: 600px) {
  .un_page {
    padding-block-start: var(--spacing-60);
  }
}
.un_page {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-40);
}
@media all and (min-width: 600px) {
  .un_page {
    gap: var(--spacing-50);
  }
}
.un_page:not(.is-normal) {
  --wp--style--global--content-size: var(--content-thin);
}
.un_page > .el_headingLv2 {
  inline-size: 100%;
  max-inline-size: var(--wp--style--global--content-size);
  margin-inline: auto;
}

.un_page_body .wp-block-table {
  --label-min: 16em;
  --label-max: 20em;
}
.un_page_body .wp-block-table.is-style-narrow {
  --label-min: 8em;
  --label-max: 16em;
}
.un_page_body .wp-block-table table {
  inline-size: 100%;
  border-collapse: collapse;
  table-layout: auto;
}
.un_page_body .wp-block-table th,
.un_page_body .wp-block-table td {
  padding: var(--spacing-20);
  border: 0;
  border-block-end: 1px solid var(--color-border);
  background: var(--color-base);
  font-size: var(--fz-x-sm);
  line-height: 1.3;
  letter-spacing: var(--ls-normal);
  text-align: start;
}
@media all and (min-width: 600px) {
  .un_page_body .wp-block-table th,
  .un_page_body .wp-block-table td {
    padding: var(--spacing-30);
    font-size: var(--fz-sm);
    line-height: 1.4;
  }
}
.un_page_body .wp-block-table thead th,
.un_page_body .wp-block-table thead td {
  border: 1px solid var(--color-border);
  background: var(--color-base-2);
  font-size: var(--fz-sm);
  font-weight: 700;
  line-height: 1.4;
}
@media all and (min-width: 600px) {
  .un_page_body .wp-block-table thead th,
  .un_page_body .wp-block-table thead td {
    font-size: var(--fz-md);
  }
}
.un_page_body .wp-block-table thead {
  border: 0;
}
@media all and (min-width: 600px) {
  .un_page_body .wp-block-table thead th:first-child,
  .un_page_body .wp-block-table thead td:first-child,
  .un_page_body .wp-block-table tbody td:first-child,
  .un_page_body .wp-block-table tbody th {
    min-inline-size: var(--label-min);
    max-inline-size: var(--label-max);
  }
}
@media not all and (min-width: 600px) {
  .un_page_body .wp-block-table tbody tr {
    display: block;
    border-block-end: 1px solid var(--color-border);
  }
  .un_page_body .wp-block-table tbody td {
    display: block;
    border-block-end: 0;
  }
  .un_page_body .wp-block-table tbody td:first-child {
    padding-block-end: 0;
  }
  .un_page_body .wp-block-table tbody td:not(:first-child) {
    padding-inline-start: var(--spacing-40);
  }
}

.un_archive {
  padding-block: var(--spacing-50) var(--spacing-80);
}
@media all and (min-width: 600px) {
  .un_archive {
    padding-block-start: var(--spacing-60);
  }
}

.un_archive_inner {
  display: grid;
  gap: var(--spacing-50);
  max-inline-size: var(--wide-size);
  margin-inline: auto;
}
@media all and (min-width: 1024px) {
  .un_archive_inner {
    grid-template-columns: minmax(0, 1fr) min(480px, 38%);
    align-items: start;
    gap: clamp(1.875rem, -2.73rem + 7.2vw, 3.75rem);
  }
}

.un_archive_main {
  min-inline-size: 0;
}

.un_archive_lead {
  margin: var(--spacing-40) 0 0;
}
@media not all and (min-width: 600px) {
  .un_archive_lead {
    font-size: var(--fz-sm);
  }
}

.un_archive_list {
  margin-block-start: var(--spacing-40);
}
@media all and (min-width: 600px) {
  .un_archive_list {
    margin-block-start: var(--spacing-60);
  }
}

.un_archive_join:not(:first-child) {
  margin-block-start: var(--spacing-50);
}

.un_author {
  padding-block: var(--spacing-50) var(--spacing-80);
}
@media all and (min-width: 600px) {
  .un_author {
    padding-block-start: var(--spacing-60);
  }
}

.un_author_inner {
  max-inline-size: var(--content-size);
  margin-inline: auto;
}

.un_author_articles {
  margin-block-start: var(--spacing-50);
}
@media all and (min-width: 600px) {
  .un_author_articles {
    margin-block-start: var(--spacing-60);
  }
}

.un_author_list {
  margin-block-start: var(--spacing-20);
}
@media all and (min-width: 600px) {
  .un_author_list {
    margin-block-start: var(--spacing-30);
  }
}

.un_notfound {
  padding-block: var(--spacing-60) var(--spacing-80);
  text-align: center;
}

.un_notfound_title {
  margin: 0;
  font-size: var(--fz-xx-lg);
  font-weight: 400;
  line-height: var(--lh-heading);
}

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

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

.bl_modal {
  display: none;
}
.bl_modal.is-open {
  display: block;
}
.bl_modal[aria-hidden=false] .bl_modal_overlay {
  animation: bl-modal-fade 0.2s ease-out;
}

.bl_modal_overlay {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: flex;
  justify-content: flex-start;
  background: rgba(17, 24, 39, 0.6);
}

.bl_modal_container {
  inline-size: 100%;
  block-size: 100%;
  overflow-y: auto;
  background: var(--color-base);
}
@media all and (min-width: 600px) {
  .bl_modal_container {
    inline-size: min(100%, 480px);
  }
}

.bl_modal_head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: var(--spacing-10);
}

.bl_modal_logo {
  margin: 0;
  line-height: 0;
}
.bl_modal_logo a {
  display: block;
  inline-size: min(100%, 240px);
}

.bl_modal_close {
  appearance: none;
  margin: 0;
  padding: 0;
  border: none;
  border-radius: 0;
  background-color: transparent;
  cursor: pointer;
  touch-action: manipulation;
  position: relative;
  flex: none;
  inline-size: 46px;
  block-size: 46px;
}

.bl_modal_close_ico {
  position: absolute;
  inset: 0;
}
.bl_modal_close_ico::before, .bl_modal_close_ico::after {
  content: "";
  display: block;
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  inline-size: 16px;
  block-size: 2px;
  background: var(--color-contrast);
}
.bl_modal_close_ico::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.bl_modal_close_ico::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

.bl_modal_body {
  display: grid;
  gap: var(--spacing-30);
  padding: var(--spacing-30) var(--spacing-10);
  border-block-start: 1px solid var(--color-border);
}

.bl_modal_top {
  padding-inline: var(--spacing-10);
}

.bl_modal_btns {
  margin-block-start: var(--spacing-10);
}
.bl_modal_btns .bl_btn_wrap {
  justify-content: center;
  gap: var(--spacing-20);
}
.bl_modal_btns .el_btn_header {
  inline-size: auto;
  min-inline-size: 90px;
  block-size: 28px;
  padding-inline: var(--spacing-10);
  font-size: var(--fz-12);
}
.bl_modal_btns .el_btn_header_ico {
  display: none;
}
.bl_modal_btns .el_btn_header:only-child {
  inline-size: 100%;
  max-inline-size: 226px;
}

.bl_modal_user {
  margin: 0;
  font-size: var(--fz-12);
  line-height: 1;
  letter-spacing: var(--ls-normal);
}

.bl_modal_title {
  margin: 0;
  padding: var(--spacing-20) var(--spacing-10);
  background: var(--color-base-2);
  font-size: var(--fz-x-sm);
  font-weight: 700;
  line-height: 1;
  letter-spacing: var(--ls-normal);
}

.bl_modal_list {
  display: grid;
  grid-template: auto/repeat(2, 1fr);
  margin-block: var(--spacing-10) 0;
  padding: 0;
  list-style: none;
}
.bl_modal_list a {
  display: block;
  padding: var(--spacing-30) var(--spacing-10);
  color: var(--color-contrast);
  font-size: var(--fz-12);
  line-height: var(--lh-narrow);
  letter-spacing: var(--ls-normal);
  text-decoration-line: none;
}
@media (any-hover: hover) {
  .bl_modal_list a:hover {
    text-decoration-line: underline;
  }
}
.bl_modal_list a:focus-visible {
  text-decoration-line: underline;
}

.bl_modal_sns {
  padding-block-start: var(--spacing-30);
  border-block-start: 1px solid var(--color-border);
}

.bl_modal_sns_title {
  margin: 0;
  padding: 4px var(--spacing-10);
  font-size: var(--fz-x-sm);
  line-height: 1;
  letter-spacing: var(--ls-normal);
  text-align: center;
}

.bl_modal_sns_list {
  display: flex;
  gap: var(--spacing-30);
  justify-content: center;
  margin-block: var(--spacing-10) 0;
  padding: 0;
  list-style: none;
}

.bl_modal_sns_link {
  display: grid;
  place-items: center;
  inline-size: 44px;
  block-size: 44px;
}
.bl_modal_sns_link img {
  display: block;
  inline-size: auto;
  max-inline-size: none;
  block-size: 24px;
}

.bl_modal_logout {
  margin: 0;
  padding: var(--spacing-10);
  font-size: var(--fz-12);
  line-height: 1;
  letter-spacing: var(--ls-normal);
  text-align: center;
}
.bl_modal_logout a {
  color: var(--color-gray);
  text-decoration-line: none;
}
@media (any-hover: hover) {
  .bl_modal_logout a:hover {
    text-decoration-line: underline;
  }
}
.bl_modal_logout a:focus-visible {
  text-decoration-line: underline;
}

@keyframes bl-modal-fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@media not all and (min-width: 1024px) {
  .cky-consent-container .cky-notice-group {
    display: block;
  }
  .cky-consent-container .cky-notice-btn-wrapper {
    margin-inline-start: 0;
  }
  .cky-consent-container .cky-notice-btn-wrapper .cky-btn {
    flex: auto;
    max-inline-size: 100%;
    margin-block-start: 10px;
    white-space: unset;
  }
}
@media all and (min-width: 1024px) {
  .cky-consent-container .cky-notice-group {
    gap: var(--spacing-40);
  }
  .cky-consent-container .cky-notice-des {
    flex: 1 1 0;
    min-inline-size: 0;
  }
  .cky-consent-container .cky-notice-btn-wrapper {
    flex: none;
  }
  .cky-consent-container .cky-notice-btn-wrapper .cky-btn {
    flex: none;
  }
}
body:has(.cky-consent-container:not(.cky-hide)) {
  padding-block-end: var(--cky-banner-height, 0px);
}

/*# sourceMappingURL=style.css.map */
