@charset "UTF-8";
:root {
  --leading-trim: calc((1em - 1lh) / 2);
  --content-size: 1080px;
  --content-wide: 1200px;
  --color-base: #fff;
  --color-contrast: #111;
  --color-accent-1: #008eab;
  --color-accent-2: #00a5ab;
  --color-accent-3: #2d2d2d;
  --color-accent-4: #e4e2df;
  --color-accent-5: #f2f2f2;
  --color-gray: #777;
  --color-link: var(--color-accent-1);
  --color-link-hover: var(--color-secondary);
  --color-disabled: var(--color-gray);
  --gradient-button: linear-gradient(96deg, #27BE71 0%, #20784C 18%, #1E6A44 50%, #125835 50.001%, #125835 100%);
  --gradient-bg1: linear-gradient(180deg, rgba(1, 162, 171, 0.2) 0%, rgba(255, 255, 255, 0.2) 100%);
  --outline: 2px solid var(--color-contrast);
  --outline-offset: 2px;
  --underline-offset: .25em;
  --font-noto: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
  --font-en: Poppins, sans-serif;
  --fz-small: clamp(0.75rem, 0.688rem + 0.3vw, 0.875rem);
  --fz-medium: clamp(0.875rem, 0.813rem + 0.3vw, 1rem);
  --fz-large: clamp(1.125rem, 1.063rem + 0.3vw, 1.25rem);
  --fz-x-large: clamp(1.25rem, 1.125rem + 0.6vw, 1.5rem);
  --fz-xx-large: clamp(1.375rem, 1.063rem + 1.3vw, 1.875rem);
  --fz-huge: clamp(1.5rem, 0.875rem + 2.6vw, 2.5rem);
  --ls-normal: .05em;
  --ls-narrow: .03em;
  --lh-normal: 1.8;
  --lh-narrow: 1.5;
  --spacing-10: 10px;
  --spacing-20: 15px;
  --spacing-30: clamp(1.25rem, 1.125rem + 0.6vw, 1.5rem);
  --spacing-40: clamp(1.875rem, 1.5rem + 1.6vw, 2.5rem);
  --spacing-50: clamp(3.125rem, 2rem + 4.8vw, 5rem);
  --spacing-60: clamp(5rem, 3.5rem + 6.4vw, 7.5rem);
  --section-padding-block: var(--spacing-60);
  --section-padding-inline: var(--spacing-30);
  --round-md: 24px;
  --round-full: 9999px;
}

/* A (more) Modern CSS Reset */
*,
*::before,
*::after {
  box-sizing: border-box;
}

:where(html) {
  -webkit-text-size-adjust: none;
     -moz-text-size-adjust: none;
          text-size-adjust: none;
}

:where(body, h1, h2, h3, h4, p, figure, blockquote, dl, dd) {
  margin-block-end: 0;
}

:where(ul[role=list], ol[role=list]) {
  list-style: none;
}

:where(body) {
  min-height: 100vh;
  line-height: 1.5;
}

:where(h1, h2, h3, h4, button, input, label) {
  line-height: 1.1;
}

:where(h1, h2, h3, h4) {
  text-wrap: balance;
}

:where(a:not([class])) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
  color: currentColor;
}

:where(img, picture) {
  max-width: 100%;
  display: block;
}

:where(input, button, textarea, select) {
  font-family: inherit;
  font-size: inherit;
}

:where(textarea:not([rows])) {
  min-height: 10em;
}

:target {
  scroll-margin-block: 5ex;
}

* {
  min-inline-size: 0;
  min-block-size: 0;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: none;
}

body {
  overflow-x: hidden;
  scrollbar-gutter: stable;
  padding: 0;
  font-family: var(--font-noto);
  font-style: normal;
  font-size: var(--fz-medium);
  line-height: var(--lh-normal);
  font-weight: 500;
  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, ol) li + li {
  margin-block-start: 0.25em;
}

:where(ul) {
  list-style-type: disc;
}

:where(ol) {
  list-style-type: decimal;
}

:where(a) {
  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.2s ease;
}
:where(a):-moz-any-link {
  color: var(--color-link);
}
:where(a):any-link {
  color: var(--color-link);
}
:where(a):focus-visible {
  color: var(--color-link-hover);
  text-decoration-thickness: 2px;
}
:where(a):not([href]) {
  color: var(--color-disabled);
  text-decoration: none !important;
  cursor: default;
  pointer-events: none;
}

:where(a[target=_blank]:not([class]))::after {
  content: "外部リンク";
  display: inline-block;
  inline-size: 1.1em;
  block-size: 1.1em;
  margin-inline: 0.5em;
  background-color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M3.18,1v4.37H.26v9.63h11.1v-2.91h4.37V1H3.18ZM9.94,13.55H1.72v-6.72h1.46v5.31h6.76s0,1.41,0,1.41ZM4.64,10.66v-6.02h9.63v6.03l-9.63-.02h0Z" /></svg>');
          mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M3.18,1v4.37H.26v9.63h11.1v-2.91h4.37V1H3.18ZM9.94,13.55H1.72v-6.72h1.46v5.31h6.76s0,1.41,0,1.41ZM4.64,10.66v-6.02h9.63v6.03l-9.63-.02h0Z" /></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 105%;
  vertical-align: -0.1em;
}

: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;
  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);
}

img, svg, picture {
  display: inline-block;
  max-width: 100%;
  height: auto;
}

:where(svg) {
  fill: currentColor;
}

:where(p:empty) {
  display: none;
}
.ly_wrapper {
  position: relative;
  display: grid;
  grid-template: "header" auto "main" 1fr "footer" auto/1fr;
  inline-size: min(100%, 1920px);
  min-block-size: 100vh;
  min-block-size: 100dvb;
  margin: 0 auto;
  background-image: url(../img/second_bg.svg);
  background-position: top right;
  background-repeat: no-repeat;
}

.ly_header {
  grid-area: header;
}

.ly_main {
  grid-area: main;
  overflow-x: hidden;
  overflow-y: visible;
}

.ly_footer {
  grid-area: footer;
  padding-inline: var(--section-padding-inline);
  background: var(--color-accent-3) url(../img/footer_bg.svg) no-repeat left bottom/min(44.375%, 639px) auto;
}

.ly_inner {
  padding-inline: var(--section-padding-inline);
  inline-size: min(100%, var(--content-size));
  margin-inline: auto;
}

.el_logo {
  display: inline-block;
  inline-size: clamp(10rem, 4.288rem + 24.4vw, 13.4375rem);
}

.el_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: var(--spacing-30);
  inline-size: min(100%, 480px);
  background-color: var(--color-accent-1);
  border-radius: var(--round-full);
  color: var(--color-base);
  font-size: var(--fz-large);
  font-weight: 700;
  text-decoration-line: none;
  transition: background-color 0.3s, border-color 0.3s;
}
.el_btn:-moz-any-link {
  color: var(--color-base);
  text-decoration-line: none;
}
.el_btn:any-link {
  color: var(--color-base);
  text-decoration-line: none;
}
.el_btn:focus-visible {
  background-color: var(--color-accent-2);
  color: var(--color-base);
}
.el_btn.el_btn__ar {
  --icon-size: 1.66em;
  position: relative;
  padding-inline-end: calc(var(--icon-size) + var(--spacing-30));
}
.el_btn.el_btn__ar::after {
  content: "";
  position: absolute;
  right: var(--spacing-30);
  display: block;
  inline-size: var(--icon-size);
  block-size: var(--icon-size);
  background-color: currentColor;
  -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path id="Vector" d="M15.07,18.86l1.93,1.93,5.79-5.79-5.79-5.79-1.93,1.93,2.49,2.49H7.29v2.73h10.28l-2.49,2.49Z"/><path id="Vector_2" data-name="Vector 2" d="M25.61,25.61c5.86-5.86,5.86-15.35,0-21.21C19.75-1.46,10.25-1.46,4.39,4.39c-5.86,5.86-5.86,15.35,0,21.21,5.86,5.86,15.35,5.86,21.21,0ZM23.68,23.68c1.14-1.14,2.04-2.49,2.66-3.98s.93-3.08.93-4.7-.32-3.21-.93-4.7-1.52-2.84-2.66-3.98c-1.14-1.14-2.49-2.04-3.98-2.66-1.49-.62-3.08-.93-4.7-.93s-3.21.32-4.7.93c-1.49.62-2.84,1.52-3.98,2.66-2.3,2.3-3.59,5.42-3.59,8.68s1.29,6.38,3.59,8.68c2.3,2.3,5.42,3.59,8.68,3.59s6.38-1.29,8.68-3.59Z" fill-rule="evenodd"/></svg>');
          mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path id="Vector" d="M15.07,18.86l1.93,1.93,5.79-5.79-5.79-5.79-1.93,1.93,2.49,2.49H7.29v2.73h10.28l-2.49,2.49Z"/><path id="Vector_2" data-name="Vector 2" d="M25.61,25.61c5.86-5.86,5.86-15.35,0-21.21C19.75-1.46,10.25-1.46,4.39,4.39c-5.86,5.86-5.86,15.35,0,21.21,5.86,5.86,15.35,5.86,21.21,0ZM23.68,23.68c1.14-1.14,2.04-2.49,2.66-3.98s.93-3.08.93-4.7-.32-3.21-.93-4.7-1.52-2.84-2.66-3.98c-1.14-1.14-2.49-2.04-3.98-2.66-1.49-.62-3.08-.93-4.7-.93s-3.21.32-4.7.93c-1.49.62-2.84,1.52-3.98,2.66-2.3,2.3-3.59,5.42-3.59,8.68s1.29,6.38,3.59,8.68c2.3,2.3,5.42,3.59,8.68,3.59s6.38-1.29,8.68-3.59Z" fill-rule="evenodd"/></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  transition: translate 0.2s ease;
  translate: 0 0;
}
.el_btn.el_btn__ar:focus-visible::after {
  translate: 0.25em 0;
}
.el_btn.el_btn__outline {
  border: 2px solid currentColor;
  background-color: transparent;
}
.el_btn.el_btn__outline:focus-visible {
  border-color: transparent;
}

.el_btnUnit {
  display: flex;
  justify-content: center;
  align-items: center;
}

h2,
.el_heading2 {
  font-size: var(--fz-huge);
  line-height: var(--lh-narrow);
  letter-spacing: 0.03em;
}

h3,
.el_heading3 {
  font-size: var(--fz-xx-large);
  line-height: var(--lh-narrow);
  letter-spacing: 0.03em;
}

.el_heading2__deco {
  margin-block-end: var(--wp--preset--spacing--50) !important;
  padding-inline-start: 21px;
  background: linear-gradient(180deg, rgba(1, 162, 171, 0.5) 0%, rgba(255, 255, 255, 0.5) 100%);
  background-size: 5px 80%;
  background-position: left top 0.125em;
  background-repeat: no-repeat;
}

.el_cr {
  margin-block-start: var(--spacing-50);
  padding-block-end: var(--section-padding-block);
  color: var(--color-base);
  font-size: var(--fz-small);
}

.bl_header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 10px calc(var(--section-padding-inline) / 2) 0 var(--section-padding-inline);
}

.bl_gnavLg {
  display: none;
}
.bl_gnavLg .menu-item a {
  transition: color 0.2s ease;
}
.bl_gnavLg .menu-item a:focus-visible {
  color: var(--color-accent-1);
}
.bl_gnavLg .menu-item .el_btn:focus-visible {
  color: var(--color-base) !important;
  text-decoration-line: none;
  transition: background-color 0.2s ease;
}

.bl_gmenu {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  inline-size: 100%;
  block-size: 100vh;
}
.bl_gmenu .bl_burger {
  position: absolute;
  top: 7px;
  right: 10px;
}
.bl_gmenu .bl_menu {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin: clamp(3.125rem, 1.25rem + 8vw, 6.25rem) auto var(--spacing-50);
  font-size: 1rem;
}
.bl_gmenu .bl_menu a:-moz-any-link {
  color: var(--color-contrast);
  -moz-transition: color 0.2s ease;
  transition: color 0.2s ease;
}
.bl_gmenu .bl_menu a:any-link {
  color: var(--color-contrast);
  transition: color 0.2s ease;
}
.bl_gmenu .bl_menu a:-moz-any-link:focus-visible {
  color: var(--color-accent-1);
}
.bl_gmenu .bl_menu a:any-link:focus-visible {
  color: var(--color-accent-1);
}
.bl_gmenu .bl_menu .current-menu-item {
  color: var(--color-accent-1);
}
.bl_gmenu .bl_menu .current-menu-item a:-moz-any-link {
  color: currentColor;
}
.bl_gmenu .bl_menu .current-menu-item a:any-link {
  color: currentColor;
}
.bl_gmenu .menu-item:nth-child(n+2),
.bl_gmenu .bl_menu_item:nth-child(n+2) {
  margin-block-start: var(--spacing-40);
}

.bl_gmenu[aria-hidden=false] {
  display: block;
  z-index: 2000;
  animation: fadein 0.2s ease-out forwards;
}
.bl_gmenu[aria-hidden=false] .bl_menu {
  display: block;
  margin-block-start: 64px;
}

@keyframes fadein {
  0% {
    display: block;
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.bl_gmenu_backdrop {
  block-size: 100%;
  padding: 0 0 100px;
  background-color: var(--color-base);
  overflow-y: auto;
}

.bl_gmenu_header {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding: 10px calc(var(--section-padding-inline) / 2) 0 var(--section-padding-inline);
}

.bl_gmenu_btn {
  inline-size: min(70%, 350px);
  margin-inline: auto;
}
.bl_gmenu_btn .el_btn {
  padding: 1em;
  font-size: 1rem;
  font-weight: 500;
}

.bl_burger {
  display: grid;
  place-content: center;
  inline-size: 44px;
  block-size: 44px;
  border-radius: 50%;
  background-color: var(--color-base);
  margin-inline-start: auto;
}
.bl_burger.bl_burger__close .bl_burger_line {
  background-color: #fff;
}
.bl_burger.bl_burger__close .bl_burger_line::before {
  rotate: 45deg;
  translate: 1px 0;
}
.bl_burger.bl_burger__close .bl_burger_line::after {
  rotate: -45deg;
  translate: 0 -0.5px;
}

.bl_burger_line {
  inline-size: 16px;
  block-size: 1px;
  background-color: var(--color-contrast);
}
.bl_burger_line::before, .bl_burger_line::after {
  content: "";
  position: relative;
  inline-size: 16px;
  block-size: 1px;
  background-color: var(--color-contrast);
  display: block;
}
.bl_burger_line::before {
  translate: 0 -5px;
}
.bl_burger_line::after {
  translate: 0 5px;
}

.bl_menu {
  list-style-type: none;
  padding: 0;
}
.bl_menu .bl_menu__en {
  font-family: var(--font-en);
  letter-spacing: var(--ls-normal);
}

.menu-item,
.bl_menu_item {
  margin: 0;
}
.menu-item a,
.bl_menu_item a {
  display: inline-block;
}
.menu-item a:-moz-any-link, .bl_menu_item a:-moz-any-link {
  color: var(--color-text);
  text-decoration-line: none;
}
.menu-item a:any-link,
.bl_menu_item a:any-link {
  color: var(--color-text);
  text-decoration-line: none;
}
.menu-item a:focus-visible,
.bl_menu_item a:focus-visible {
  text-decoration-line: underline;
  text-decoration-thickness: 1px;
}

.current-menu-item::before {
  content: "";
  display: inline-block;
  inline-size: 2.375em;
  block-size: 1px;
  margin-inline-end: var(--spacing-10);
  background-color: currentColor;
  vertical-align: middle;
}

.bl_sec_title {
  margin-block-end: var(--spacing-50);
}

.bl_sec_titleEn {
  margin: 0;
  font-family: var(--font-en);
  font-size: clamp(2.875rem, 1.625rem + 5.4vw, 5rem);
  font-weight: 600;
  line-height: 1.2;
  letter-spacing: var(--ls-narrow);
}

.bl_sec_titleJp {
  margin: 0;
  padding-inline-start: 0.33em;
  color: var(--color-accent-1);
  font-size: clamp(1rem, 0.875rem + 0.6vw, 1.25rem);
  font-weight: 700;
  line-height: var(--lh-narrow);
}

.is-layout-constrained .bl_sec {
  margin-block-start: 0;
  padding-block-start: var(--spacing-60);
  padding-inline: 0;
}

.is-layout-constrained .bl_sec2 {
  margin-block-start: var(--wp--preset--spacing--50);
}
.is-layout-constrained .bl_sec2 h2 {
  font-size: var(--wp--preset--font-size--x-large);
  letter-spacing: 0.03em;
}

.is-layout-constrained .bl_sec3 {
  margin-block-start: var(--wp--preset--spacing--50);
  padding: var(--wp--preset--spacing--40);
  border: 1px solid var(--wp--preset--color--accent-4);
  background-color: var(--wp--preset--color--base);
}

.bl_col2 {
  max-inline-size: 400px;
  margin-inline: auto;
}

.bl_col3 {
  display: grid;
  gap: 3.75em 5.55%;
  grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)) !important;
  justify-content: space-between;
  align-items: start;
}

.bl_formUnit {
  display: grid;
  gap: var(--spacing-40);
  inline-size: min(100%, 510px);
  margin-inline: auto;
}

.bl_form input[type=text],
.bl_form input[type=email],
.bl_form textarea {
  width: 100%;
  padding: 8px 12px;
  border: 1px solid rgba(0, 0, 0, 0.1019607843);
  border-radius: 6px;
  color: var(--color-contrast);
  font-size: 1rem;
}

.bl_form_label {
  display: inline-flex;
  align-items: center;
  gap: var(--spacing-10);
  margin-block-end: 4px;
  font-size: var(--wp--preset--font-size--medium);
  font-weight: 500;
  letter-spacing: var(--ls-narrow);
  line-height: var(--lh-normal);
}
.bl_form_label.is_required::after {
  content: "必須";
  flex-shrink: 0;
  padding: 0.1em 0.375em;
  background-color: #ce0000;
  border-radius: 3px;
  color: var(--wp--preset--color--base);
  font-size: var(--fz-small);
  font-weight: 700;
  line-height: 1.1;
  letter-spacing: 0;
}

.bl_form_txt {
  font-size: var(--fz-small);
  letter-spacing: var(--ls-narrow);
}

.bl_form_btns {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--wp--preset--spacing--30);
}
.bl_form_btns .el_btn.el_btn__outline {
  inline-size: min(100%, 300px);
  font-size: var(--fz-medium);
}

.wpcf7-spinner {
  display: none !important;
}

.bl_footer {
  padding-block-start: var(--section-padding-block);
  color: var(--color-base);
}
.bl_footer :focus-visible {
  outline: 2px solid var(--color-accent-1);
}
.bl_footer a {
  color: var(--color-base);
}
.bl_footer a:-moz-any-link {
  color: var(--color-base);
}
.bl_footer a:any-link {
  color: var(--color-base);
}

.bl_footer_form {
  position: relative;
  margin-block-start: calc(var(--spacing-30) * -1);
  padding-block-start: var(--spacing-30);
  inline-size: min(100%, 510px);
  margin-inline: auto;
}

.bl_footer_title {
  margin: 0 0 clamp(2.5rem, 1.75rem + 3.2vw, 3.75rem);
  font-size: var(--fz-x-large);
  letter-spacing: 0.2em;
  font-feature-settings: "halt";
  word-break: keep-all;
}

.bl_footer_txt {
  margin: 0;
  font-size: var(--fz-small);
}
.bl_footer_cont .bl_menu {
  margin-block-start: clamp(3.125rem, 1.25rem + 8vw, 6.25rem);
}
.bl_footer_cont .menu-item:nth-child(n+2),
.bl_footer_cont .bl_menu_item:nth-child(n+2) {
  margin-block-start: var(--spacing-30);
}

.bl_pageTitle {
  padding: clamp(5rem, 3.9rem + 4.8vw, 7.5rem) 20px;
  background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 224 190"><path d="M206.87,139.41c-23.63-50.99-63.42-86.65-100.24-110.09C74.1,8.61,36.28.17,0,0v33.29c31.24.16,62.59,7.46,88.75,24.12,33.4,21.27,67.79,52.58,87.91,96,5.2,11.21,9.49,23.36,12.57,36.48h34.06c-3.61-18.12-9.22-34.94-16.42-50.48Z" fill="%23f9f9f9" fill-rule="evenodd"/></svg>');
  background-size: min(24vw, 224px) auto;
  background-position: left bottom;
  background-repeat: no-repeat;
}

.bl_pageTitle_en {
  inline-size: min(100%, var(--content-size));
  margin: 0 auto;
}
.bl_pageTitle_en span {
  background: linear-gradient(294.88deg, #111111 -8.68%, #0069AB 39.29%, #068BA6 87.25%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-family: var(--font-en);
  font-weight: 600;
  font-size: clamp(2.8125rem, 1.563rem + 5.5vw, 5rem);
  line-height: 1;
  letter-spacing: 0.03em;
  white-space: nowrap;
}
.bl_pageTitle_jp {
  inline-size: min(100%, var(--content-size));
  margin-block-start: 0.5em;
  margin-inline: auto;
  padding-inline-start: 0.25em;
  color: var(--color-accent-1);
  font-size: clamp(0.9375rem, 0.75rem + 0.8vw, 1.25rem);
  font-weight: 700;
  letter-spacing: 0.05em;
}

.wp-block-group.bl_boxShadow {
  padding: var(--spacing-40);
  background-color: var(--color-base);
  border-radius: var(--round-md);
  box-shadow: 0px 0px 50px -20px rgba(1, 162, 171, 0.6);
}

.wp-block-media-text.has-media-on-the-right.bl_lead {
  grid-template-columns: 54% 1fr;
  gap: var(--spacing-40);
}
.wp-block-media-text.has-media-on-the-right.bl_lead .wp-block-media-text__content {
  padding-inline: 0;
  padding-block: 0;
}
.wp-block-media-text.has-media-on-the-right.bl_lead .wp-block-media-text__content h2 {
  margin: 0;
  font-size: var(---fz-x-large, 1.5rem);
  font-style: normal;
  font-weight: 700;
  line-height: var(--lh-narrow);
  letter-spacing: 0.045rem;
}
.wp-block-media-text.has-media-on-the-right.bl_lead .wp-block-media-text__media {
  aspect-ratio: 3/2;
}
.wp-block-media-text.has-media-on-the-right.bl_lead .wp-block-media-text__media > img {
  inline-size: 100%;
  block-size: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

.bl_list__dia {
  list-style-type: none;
  padding-inline-start: 0;
  line-height: 1.2;
}
.bl_list__dia li {
  display: flex;
  margin-block-start: 0.75em;
  letter-spacing: 0.03em;
}
.bl_list__dia li::before {
  content: "◆";
  flex: 0 0 1rem;
  padding-block-start: 0.4em;
  color: var(--wp--preset--color--accent-1, #008EAB);
  font-size: 0.625rem;
}

.bl_secondBg {
  overflow: hidden;
  position: relative;
  margin-block-start: 0 !important;
  padding-block-start: var(--spacing-60);
  padding-block-end: var(--spacing-60);
  background-image: url(../img/deco05.svg), url(../img/deco04.svg);
  background-size: clamp(6.25rem, -6.581rem + 54.7vw, 24.1875rem) auto, clamp(17.375rem, -18.25rem + 152vw, 67.25rem) auto;
  background-position: center right, bottom -4% left;
  background-repeat: no-repeat;
}
.bl_secondBg > .bl_sec:first-of-type {
  padding-block-start: 0;
}

.bl_secondBg2 {
  overflow: hidden;
  position: relative;
  margin-block-start: 0 !important;
  padding-block-end: var(--spacing-60);
  background-color: var(--wp--preset--color--accent-5);
  background-image: url(../img/deco06.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: 100% auto;
}

.wp-block-group.is-layout-grid.bl_mediaText {
  grid-template: "title" auto "txt" auto "img" auto/1fr;
  gap: var(--wp--preset--spacing--30);
}

.wp-block-group.bl_mediaText_cont {
  display: contents;
  grid-area: revert;
}

.wp-block-group.bl_mediaText_title {
  grid-area: title;
  padding-inline: 0;
}
.wp-block-group.bl_mediaText_title .wp-block-heading {
  font-size: clamp(1.125rem, 0.875rem + 1vw, 1.5rem);
  white-space: nowrap;
}

.wp-block-group.bl_mediaText_txt {
  grid-area: txt;
  padding-inline: 0;
}

.wp-block-group.bl_mediaText_img {
  grid-area: img;
  padding-inline: 0;
}

.wp-block-group.is-layout-grid.bl_grid2 {
  gap: var(--wp--preset--spacing--50) clamp(2.5rem, 1.75rem + 3.2vw, 3.75rem);
}
.wp-block-group.is-layout-grid.bl_grid2 .wp-block-group.bl_grid_item {
  max-inline-size: 510px;
  margin-inline: auto;
  padding-inline: 0;
}

.hp_tac {
  text-align: center !important;
}

.hp_tar {
  text-align: right !important;
}

.hp_tal {
  text-align: left !important;
}
.hp_uppercase {
  text-transform: uppercase;
}

.hp_aster {
  padding-inline-start: 1em;
  text-indent: -1em;
}
.hp_aster::before {
  content: "※";
}

.hp_fwMd {
  font-weight: 500;
}

.hp_db {
  display: block !important;
}

.hp_dib {
  display: inline-block !important;
}

.hp_dn {
  display: none !important;
}

.hp_dnSp {
  display: none !important;
}

.hp_i100 {
  inline-size: 100% !important;
}

.hp_centering {
  margin-inline: auto;
}

.hp_imgLink {
  display: inline-block;
  transition: transform 0.2s ease;
}

.hp_srOnly {
  position: absolute !important;
  width: 1px !important;
  height: 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;
}

.home .ly_wrapper {
  background-image: none;
}

.un_mv {
  position: relative;
}
.un_mv::after {
  content: "";
  position: absolute;
  top: 52%;
  left: -13%;
  display: block;
  inline-size: min(105.8%, 1482px);
  aspect-ratio: 1482/1509;
  background-image: url(../img/deco01.svg);
  background-size: contain;
  background-repeat: no-repeat;
  rotate: -20deg;
  opacity: 0.1;
  transition: rotate 0.8s ease-in-out 0.5s, opacity 0.8s ease-in-out 0.5s;
}
.un_mv.is_active::after {
  rotate: 0deg;
  opacity: 1;
}

.un_mv_inner {
  position: relative;
  max-inline-size: 1280px;
  margin-inline: auto;
  padding-inline-start: var(--section-padding-inline);
}

.un_mv_txt {
  padding-block-start: 10vw;
}

.un_mv_txtEn {
  overflow: hidden;
  inline-size: 0;
  margin: 0;
  animation: slide-right 1s ease-out 0.5s 1 forwards;
}
.un_mv_txtEn span {
  display: inline-block;
  background: linear-gradient(294.88deg, #111111 -8.68%, #0069AB 39.29%, #068BA6 87.25%);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  font-family: var(--font-en);
  font-weight: 700;
  font-size: clamp(2.6875rem, 1.791rem + 4.5vw, 3rem);
  line-height: 1;
  letter-spacing: 0.02em;
  white-space: nowrap;
}

@keyframes slide-right {
  0% {
    inline-size: 0;
  }
  100% {
    inline-size: 100%;
  }
}
.un_mv_txtJp {
  overflow: hidden;
  inline-size: 0;
  margin: 0.25em 0 0 0.25em;
  color: var(--color-accent-1);
  font-size: clamp(0.875rem, 0.125rem + 2vw, 1.25rem);
  line-height: var(--lh-normal);
  letter-spacing: 0.05em;
  white-space: nowrap;
  animation: slide-right 1s ease-out 1.8s 1 forwards;
}
.un_mv_txtJp span {
  display: inline-block;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  background-color: var(--color-base);
}

.un_mv_video {
  grid-row: 1;
  padding-block-start: 6vw;
  line-height: 0;
}
.un_mv_video > video {
  inline-size: 100%;
  block-size: auto;
}

.un_homeLead {
  position: relative;
  padding-block: var(--section-padding-block);
  padding-inline: var(--section-padding-inline);
  background-image: url(../img/homeLead_deco01.png), url(../img/homeLead_deco02.svg);
  background-size: 90% auto, 55% auto;
  background-position: top 10vw center, bottom right;
  background-repeat: no-repeat;
}
.un_homeLead::after {
  content: "";
  position: absolute;
  bottom: -15%;
  left: -20%;
  display: block;
  inline-size: min(96%, 1018px);
  aspect-ratio: 1018/830;
  background-image: url(../img/deco02.svg);
  background-size: contain;
  background-repeat: no-repeat;
  opacity: 0.1;
  transition: opacity 0.8s ease-in-out 0.8s;
}
.un_homeLead.is_active::after {
  opacity: 1;
}

.un_homeLead_inner {
  max-inline-size: 600px;
  margin-inline: auto;
}

.un_homeLead_title p {
  position: relative;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin: 0 auto 28px;
  padding: 0.24em 1em 0.26em;
  background-color: var(--color-accent-1);
  color: var(--color-base);
}
.un_homeLead_title p::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  left: calc(50% - 7px);
  display: block;
  inline-size: 14px;
  block-size: 12px;
  background-color: var(--color-accent-1);
  clip-path: polygon(50% 12px, 0% 0%, 14px 0%);
}
.un_homeLead_title h2 {
  font-size: var(--fz-huge);
  font-weight: 700;
  text-align: center;
  word-break: keep-all;
}

.un_homeLead_body {
  margin-block-start: var(--spacing-40);
  font-size: clamp(0.9375rem, 0.838rem + 0.4vw, 1.0625rem);
  line-height: 2.2;
}
.un_homeLead_body b {
  color: var(--color-accent-1);
}
.un_homeLead_body p + p {
  margin-block-start: 1lh;
}
.un_homeLead_body .hp_txtLg {
  margin: 0;
  font-size: 1.41em;
  font-weight: 700;
}

.un_homeLead_mb {
  margin-block-end: 1lh;
}

.un_feature {
  isolation: isolate;
  padding-block: var(--section-padding-block);
  background: linear-gradient(180deg, #edffff 0%, #fff 100%);
}

.un_feature_item {
  display: grid;
  gap: var(--spacing-30);
}

.un_feature_no {
  display: grid;
  place-content: center;
  inline-size: 80px;
  block-size: 88px;
  padding-block-end: 0.15em;
  margin: 0 auto;
  background-color: var(--color-accent-1);
  -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 88">  <rect width="80" height="88" fill="none"/><path d="M40,69.03c16.01,0,28.99-12.99,28.99-29.01s-12.98-29.01-28.99-29.01-28.99,12.99-28.99,29.01,12.98,29.01,28.99,29.01Z"/><path d="M41.26,87.39l2.69-3.44c2.17-2.77,5.02-4.78,8.23-5.8,16.64-5.32,27.83-20.65,27.83-38.13,0-1.08-.05-2.17-.13-3.26C78.32,17.21,62.41,1.44,42.85.09c-11.24-.78-21.95,3.01-30.14,10.65C4.62,18.3,0,28.96,0,40.01c0,17.5,11.17,32.81,27.83,38.13,3.2,1.02,6.04,3.03,8.22,5.81l2.69,3.43c.42.54.97.61,1.27.61s.83-.07,1.26-.61ZM14.84,14.84C28.73.94,51.27.94,65.16,14.84c13.89,13.91,13.89,36.45,0,50.36-13.9,13.89-36.43,13.89-50.33,0C.94,51.3.94,28.75,14.84,14.84Z"/></svg>');
          mask-image: url('data:image/svg+xml;charset=UTF-8,<?xml version="1.0" encoding="UTF-8"?><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 88">  <rect width="80" height="88" fill="none"/><path d="M40,69.03c16.01,0,28.99-12.99,28.99-29.01s-12.98-29.01-28.99-29.01-28.99,12.99-28.99,29.01,12.98,29.01,28.99,29.01Z"/><path d="M41.26,87.39l2.69-3.44c2.17-2.77,5.02-4.78,8.23-5.8,16.64-5.32,27.83-20.65,27.83-38.13,0-1.08-.05-2.17-.13-3.26C78.32,17.21,62.41,1.44,42.85.09c-11.24-.78-21.95,3.01-30.14,10.65C4.62,18.3,0,28.96,0,40.01c0,17.5,11.17,32.81,27.83,38.13,3.2,1.02,6.04,3.03,8.22,5.81l2.69,3.43c.42.54.97.61,1.27.61s.83-.07,1.26-.61ZM14.84,14.84C28.73.94,51.27.94,65.16,14.84c13.89,13.91,13.89,36.45,0,50.36-13.9,13.89-36.43,13.89-50.33,0C.94,51.3.94,28.75,14.84,14.84Z"/></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  color: var(--color-base);
  font-family: var(--font-en);
  font-size: 40px;
  font-weight: 600;
  line-height: 1.5;
}
.un_feature_no.is_no2 {
  background-color: rgb(0, 165, 171);
}
.un_feature_no.is_no3 {
  background-color: rgb(0, 105, 171);
}

.un_feature_title {
  margin: 0;
  font-size: var(--fz-x-large);
  font-weight: 700;
  text-align: center;
  letter-spacing: var(--ls-narrow);
}

.un_feature_body {
  margin: 0;
  font-weight: 500;
  letter-spacing: var(--ls-narrow);
}

.un_homeWorks {
  position: relative;
  padding-block: var(--section-padding-block);
  background-color: var(--color-accent-5);
}
.un_homeWorks::before {
  content: "";
  position: absolute;
  top: 15%;
  display: block;
  inline-size: 140%;
  aspect-ratio: 1927/730;
  background-image: url(../img/deco03.svg);
  background-size: contain;
  background-repeat: no-repeat;
  transform-origin: top center;
  transform: rotate(-1deg) translateX(-16%);
  opacity: 0.1;
  transition: transform 0.8s ease-in-out 0.5s, opacity 0.8s ease-in-out 0.5s;
}
.un_homeWorks.is_active::before {
  transform: rotate(0deg) translateX(-10%);
  opacity: 1;
}

.un_homeWorks_splide {
  margin-block-end: clamp(3.75rem, 0.938rem + 12vw, 8.4375rem);
}
.un_homeWorks_splide ul {
  margin: 0;
  padding: 0;
}

.un_homeWorks_slide {
  list-style-type: none;
  overflow: hidden;
  display: flex;
  flex-direction: column;
  max-inline-size: 480px;
  margin-inline: auto;
  border-radius: var(--round-md);
  background-color: var(--color-base);
}

.un_homeWroks_txt {
  padding: var(--spacing-40);
}

.un_homeWorks_title {
  line-height: var(--lh-narrow);
  letter-spacing: var(--ls-narrow);
}
.un_homeWorks_title p {
  margin: 0;
  font-size: var(--fz-small);
}
.un_homeWorks_title h3 {
  margin: 0 0 var(--spacing-40);
  border-bottom: 2px solid var(--color-accent-1);
  color: var(--color-accent-1);
  font-family: var(--font-en);
  font-size: var(--fz-huge);
  text-transform: uppercase;
}

.un_homeWorks_exp {
  margin: 0;
  font-weight: 500;
  letter-spacing: var(--ls-narrow);
}
.un_homeWorks_img > img {
  -o-object-fit: cover;
     object-fit: cover;
  inline-size: 100%;
  block-size: 100%;
}

.un_homeBanner {
  padding-block: var(--spacing-50);
}

.un_homeBanner_link {
  overflow: hidden;
  position: relative;
  display: grid;
  align-items: center;
  block-size: 100%;
  border-radius: clamp(0.875rem, 0.625rem + 1vw, 1.25rem);
  line-height: 0;
  font-size: clamp(1.125rem, 0.688rem + 1.9vw, 1.875rem);
  font-weight: 700;
  --icon-size: 1em;
}
.un_homeBanner_link::after {
  content: "";
  position: absolute;
  z-index: 1;
  right: var(--spacing-40);
  display: block;
  inline-size: var(--icon-size);
  block-size: var(--icon-size);
  background-color: var(--color-base);
  -webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path id="Vector" d="M15.07,18.86l1.93,1.93,5.79-5.79-5.79-5.79-1.93,1.93,2.49,2.49H7.29v2.73h10.28l-2.49,2.49Z"/><path id="Vector_2" data-name="Vector 2" d="M25.61,25.61c5.86-5.86,5.86-15.35,0-21.21C19.75-1.46,10.25-1.46,4.39,4.39c-5.86,5.86-5.86,15.35,0,21.21,5.86,5.86,15.35,5.86,21.21,0ZM23.68,23.68c1.14-1.14,2.04-2.49,2.66-3.98s.93-3.08.93-4.7-.32-3.21-.93-4.7-1.52-2.84-2.66-3.98c-1.14-1.14-2.49-2.04-3.98-2.66-1.49-.62-3.08-.93-4.7-.93s-3.21.32-4.7.93c-1.49.62-2.84,1.52-3.98,2.66-2.3,2.3-3.59,5.42-3.59,8.68s1.29,6.38,3.59,8.68c2.3,2.3,5.42,3.59,8.68,3.59s6.38-1.29,8.68-3.59Z" fill-rule="evenodd"/></svg>');
          mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path id="Vector" d="M15.07,18.86l1.93,1.93,5.79-5.79-5.79-5.79-1.93,1.93,2.49,2.49H7.29v2.73h10.28l-2.49,2.49Z"/><path id="Vector_2" data-name="Vector 2" d="M25.61,25.61c5.86-5.86,5.86-15.35,0-21.21C19.75-1.46,10.25-1.46,4.39,4.39c-5.86,5.86-5.86,15.35,0,21.21,5.86,5.86,15.35,5.86,21.21,0ZM23.68,23.68c1.14-1.14,2.04-2.49,2.66-3.98s.93-3.08.93-4.7-.32-3.21-.93-4.7-1.52-2.84-2.66-3.98c-1.14-1.14-2.49-2.04-3.98-2.66-1.49-.62-3.08-.93-4.7-.93s-3.21.32-4.7.93c-1.49.62-2.84,1.52-3.98,2.66-2.3,2.3-3.59,5.42-3.59,8.68s1.29,6.38,3.59,8.68c2.3,2.3,5.42,3.59,8.68,3.59s6.38-1.29,8.68-3.59Z" fill-rule="evenodd"/></svg>');
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
.un_homeBanner_link:focus-visible::before {
  content: "";
  position: absolute;
  z-index: 1;
  inset: 0;
  background-color: rgba(from var(--color-accent-1) r g b/20%);
}
.un_homeBanner_link:focus-visible .un_homeBanner_img {
  scale: 1.2;
}

.un_homeBanner_txt {
  position: absolute;
  grid-column: 1;
  grid-row: 1;
  z-index: 1;
  top: 0;
  bottom: 0;
  left: var(--spacing-40);
  display: block;
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  block-size: 1lh;
  margin-block: auto;
  padding-inline: 0.2em;
  background-color: var(--color-base);
  color: var(--color-accent-1);
  line-height: var(--lh-narrow);
}

.un_homeBanner_img {
  transition: scale 0.2s ease;
}

.splide {
  position: relative;
}

.splide__pagination {
  --dot: 15px;
  position: absolute;
  bottom: calc((var(--spacing-40) + var(--dot)) * -1);
  left: 50%;
  translate: -50% 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: var(--spacing-30);
}

.splide__pagination__page {
  inline-size: var(--dot);
  block-size: var(--dot);
  padding: 0;
  border-radius: 50%;
  background-color: #d9d9d9;
  line-height: 0;
}
.splide__pagination__page.is-active {
  background-color: var(--color-accent-1);
}

.splide__arrows {
  visibility: hidden;
}

.splide__arrow {
  --size: clamp(1rem, 0.625rem + 1vw, 1.25rem);
  isolation: isolate;
  position: absolute;
  z-index: 1;
  top: calc(50% - var(--size) / 2);
  display: inline-grid;
  place-content: center;
  aspect-ratio: 1/1;
  inline-size: calc(var(--size) * 2);
  background-color: var(--color-base);
  border-radius: 50%;
  filter: drop-shadow(0px 2px 3px rgba(0, 0, 0, 0.15));
  line-height: 0;
  transition: translate 0.2s ease;
}
.splide__arrow > svg {
  inline-size: var(--size);
  block-size: auto;
  fill: var(--color-accent-1);
}

.splide__arrow:focus-visible > svg {
  fill: var(--color-accent-1);
}

.splide__arrow:disabled {
  cursor: default;
  filter: none;
}
.splide__arrow:disabled > svg {
  fill: var(--color-accent-4);
}
.splide__arrow:enabled:focus-visible > svg {
  fill: var(--color-accent-1);
}

.splide__arrow--prev {
  left: calc(var(--size) * -1);
}
.splide__arrow--prev:focus-visible {
  translate: -5px 0;
}

.splide__arrow--next {
  right: calc(var(--size) * -1);
}
.splide__arrow--next:focus-visible {
  translate: 5px 0;
}

.splide__arrow--prev svg {
  rotate: 180deg;
}

.un_companyOutline > div {
  display: flex;
  gap: var(--wp--preset--spacing--40);
  inline-size: 100%;
  padding: var(--wp--preset--spacing--30);
  border-block-end: 1px solid var(--wp--preset--color--accent-4);
}
.un_companyOutline dt {
  flex: 0 0 25%;
  font-weight: 700;
}
.un_companyOutline dd {
  margin-inline-start: 0;
}

.wp-block-group.un_companyStaff {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(12rem, 100%), 1fr));
  gap: 60px;
}

.un_companyStaff_title {
  font-size: var(--wp--preset--font-size--small);
  line-height: var(--lh-narrow);
  letter-spacing: 0.03em;
}

.un_companyStaff_name {
  margin-block-start: 0 !important;
  font-size: var(--wp--preset--font-size--x-large);
  font-weight: 700;
  letter-spacing: 0.03em;
}
.un_companyStaff_name + p {
  margin-block-start: 1em !important;
}

.un_companyStaff_img {
  max-inline-size: 12rem !important;
  margin-inline: auto;
  text-align: center;
  line-height: 0;
}

.un_service_title {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.un_service_title h3 {
  flex: 1;
  margin: 0;
  font-size: var(--wp--preset--font-size--x-large);
  letter-spacing: 0.03em;
}

.wp-block-group.un_service_feat {
  margin-block-start: var(--wp--preset--spacing--50);
}
.wp-block-group.un_service_feat b,
.wp-block-group.un_service_feat strong {
  color: var(--wp--preset--color--accent-1);
  font-weight: 700;
}
.wp-block-group.un_service_feat .wp-block-media-text {
  --columns: 1fr 1fr;
  --gap: var(--wp--preset--spacing--40);
  gap: var(--gap);
}
.wp-block-group.un_service_feat .wp-block-media-text .wp-block-media-text__content {
  padding-inline: 0;
}
.wp-block-group.un_service_feat .wp-block-media-text .wp-block-media-text__content > * + * {
  margin-block-start: var(--spacing-40);
}
.wp-block-group.un_service_feat .wp-block-media-text .wp-block-media-text__media {
  text-align: center;
}
.wp-block-group.un_service_feat .wp-block-media-text .wp-block-media-text__media img {
  inline-size: auto;
  max-inline-size: 100%;
}
.wp-block-group.un_service_feat .un_feature_no {
  inline-size: clamp(3.125rem, 2.1rem + 4.4vw, 3.75rem);
  block-size: clamp(3.375rem, 2.138rem + 5.3vw, 4.125rem);
  font-size: var(--wp--preset--font-size--xx-large);
}

.bl_mediaText.un_service_feat1 .bl_mediaText_img {
  padding: var(--wp--preset--spacing--20);
}

.un_service_feat1bot {
  margin-block-start: var(--wp--preset--spacing--40) !important;
  gap: var(--spacing-40);
}

.un_service_feat1bot_table {
  margin-block-start: var(--wp--preset--spacing--30);
}
.un_service_feat1bot_table table {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  border-collapse: collapse;
  font-size: 0.75rem;
  letter-spacing: 0.02em;
  line-height: 1.2;
}
.un_service_feat1bot_table table p {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin: 0 auto;
}
.un_service_feat1bot_table th, .un_service_feat1bot_table td {
  padding: 1em 0.5em;
  border: 1px solid var(--wp--preset--color--accent-4);
  font-weight: 500;
}
.un_service_feat1bot_table th {
  word-break: auto-phrase;
}
.un_service_feat1bot_table thead th {
  background: rgba(0, 142, 171, 0.2);
}
.un_service_feat1bot_table thead th.hp_pro {
  border: 5px solid var(--wp--preset--color--accent-1);
  border-block-end: 1px solid var(--wp--preset--color--accent-4);
  background-color: var(--wp--preset--color--accent-1);
  color: var(--wp--preset--color--base);
  font-weight: 600;
}
.un_service_feat1bot_table tbody tr:nth-child(2n) {
  background: var(--wp--preset--color--accent-5);
}
.un_service_feat1bot_table tbody tr:last-of-type td:nth-of-type(3) {
  border-block-end: 5px solid var(--wp--preset--color--accent-1);
}
.un_service_feat1bot_table tbody tr .hp_pro {
  padding-inline: 0.7em;
  border-inline-width: 5px;
  border-inline-color: var(--wp--preset--color--accent-1);
  color: var(--wp--preset--color--accent-1);
  font-weight: 600;
}
.un_service_feat1bot_table .hp_rowTitle {
  inline-size: 20.4166666667%;
}
.un_service_feat1bot_table .hp_data1 {
  inline-size: 24.1666666667%;
}
.un_service_feat1bot_table .hp_data2 {
  inline-size: 28.5416666667%;
}
.un_service_feat1bot_table .hp_data2 td {
  border-inline-width: 3px;
}

.un_service_feat1bot_txt > * + * {
  margin-block-start: var(--wp--preset--spacing--30);
}
.un_service_feat1bot_txt h4 {
  margin: 0;
  font-size: var(--wp--preset--font-size--large);
}

.wp-block-group.is-layout-grid.bl_mediaText.un_service_feat1 {
  margin-block-end: var(--wp--preset--spacing--40);
}

.wp-block-group.is-layout-grid.un_service_list {
  --columns: repeat(auto-fill, minmax(15rem, 1fr));
  grid-template-columns: var(--columns);
  gap: clamp(2.5rem, 1.75rem + 3.2vw, 3.75rem);
}
.wp-block-group.is-layout-grid.un_service_list > .wp-block-group {
  padding: 0;
}
.wp-block-group.is-layout-grid.un_service_list h3 {
  margin: var(--wp--preset--spacing--30) 0 0;
  font-size: var(--wp--preset--font-size--x-large);
  letter-spacing: 0.03em;
}

.wp-block-group.un_service_listItem {
  max-inline-size: 360px;
  margin-inline: auto;
  padding-inline: 0;
}

.un_service_list_img {
  background: var(--bg_grade, linear-gradient(180deg, #edffff 0%, #fff 100%), #fff);
  text-align: center;
  line-height: 0;
}

.un_service_support {
  padding: var(--wp--preset--spacing--40);
  background-color: var(--color-base);
  border-radius: var(--round-md);
}

.wp-block-group.un_service_flow {
  inline-size: -moz-fit-content;
  inline-size: fit-content;
  margin-inline: auto;
  padding-inline: 0;
}

.un_service_flow_list {
  list-style-type: none;
  padding: 0;
}
.un_service_flow_list li {
  counter-increment: no;
  display: flex;
  gap: 1rem;
  margin-block-start: 0 !important;
  padding: 0;
}
.un_service_flow_list li:last-child .un_service_flow_no::before {
  display: none;
}

.un_service_flow_no {
  position: relative;
  flex: 0 0 1.8em;
  color: var(--wp--preset--color--accent-1);
  font-family: var(--font-en);
  font-size: var(--wp--preset--font-size--xx-large);
  font-weight: 600;
  line-height: 1;
  text-align: center;
}
.un_service_flow_no::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0.73em;
  display: block;
  inline-size: 2px;
  block-size: 100%;
  background-color: var(--wp--preset--color--accent-4);
}
.un_service_flow_no span {
  display: grid;
  place-content: center;
  inline-size: 1.46em;
  block-size: 1.46em;
  border-radius: var(--round-full);
  background-color: var(--wp--preset--color--base);
  filter: drop-shadow(0px 0px 5px rgba(1, 162, 171, 0.2));
}

.un_service_flow_cont {
  padding-block-end: clamp(1.875rem, 0.75rem + 4.8vw, 3.75rem);
}

.un_service_flow_title {
  margin-block-start: 0;
  padding-block-start: 0.1em;
  font-size: var(--wp--preset--font-size--x-large);
}

.un_service_flow_txt {
  margin-block-start: 1rem;
}

.un_service_flow_dpt {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-block-start: 1rem;
}
.un_service_flow_dpt > span {
  padding: 3px 5px 4px;
  color: var(--wp--preset--color--base);
  font-size: var(--wp--preset--font-size--small);
  letter-spacing: 0.03em;
  line-height: 1;
}
.un_service_flow_dpt > span.is_support {
  background-color: var(--wp--preset--color--accent-1);
}
.un_service_flow_dpt > span.is_success {
  background-color: var(--wp--preset--color--accent-2);
}
.un_service_flow_dpt > span.is_dev {
  background-color: #0069ab;
}

.wp-block-group.un_works_img {
  overflow: hidden;
  padding-inline: 0;
  border-radius: var(--round-md) var(--round-md) 0 0;
  line-height: 0;
}

.wp-block-group.un_works_txt {
  padding-inline: var(--wp--preset--spacing--40);
}

.wp-block-media-text.has-media-on-the-right.un_works_header {
  display: grid;
  grid-template-columns: 1fr 60px;
  align-items: center;
  gap: var(--wp--preset--spacing--20);
}
.wp-block-media-text.has-media-on-the-right.un_works_header .wp-block-media-text__content {
  padding-inline: 0;
}

.wp-block-media-text.has-media-on-the-right.un_works_header,
.wp-block-group.un_works_header {
  border-block-end: 2px solid var(--wp--preset--color--accent-1);
}

.un_works_header .un_works_subtitle {
  margin: 0;
  font-size: var(--wp--preset--font-size--small);
  line-height: var(--lh-narrow);
}
.un_works_header .wp-block-heading {
  margin: 0;
  color: var(--wp--preset--color--accent-1);
  font-family: var(--font-en);
  font-size: var(--fz-huge);
  line-height: var(--lh-narrow);
  letter-spacing: 0.03em;
}

.wp-block-group.un_works_txt {
  margin-block-start: var(--wp--preset--spacing--40);
}

@media (480px < width){
  .un_mv_txtEn br {
    display: none;
  }
}

@media all and (min-width: 600px){
  .ly_wrapper {
    background-image: url(../img/second_bg_pc.svg);
    background-size: min(120%, 1440px) auto;
  }
  .ly_header {
    padding-inline: var(--section-padding-inline);
  }
  .el_btn {
    display: inline-flex;
    inline-size: -moz-fit-content;
    inline-size: fit-content;
    min-inline-size: 350px;
  }
  .el_btn.el_btn__ar {
    padding-inline-end: var(--spacing-40);
  }
  .bl_header {
    align-items: center;
    inline-size: min(100%, 1280px);
    margin-inline: auto;
    padding: clamp(1rem, 0.5rem + 1.3vw, 1.3125rem) 0;
  }
  .bl_gnavLg .menu-item .el_btn {
    display: inline-block;
    min-inline-size: revert;
    padding: 10px 20px;
    color: var(--color-base);
    font-size: 1rem;
    letter-spacing: var(--ls-narrow);
  }
  .bl_col2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 5.55%;
    max-inline-size: revert;
  }
  .bl_secondBg {
    background-position: center right, bottom calc(clamp(18.75rem, 0rem + 50vw, 31.25rem) * -1) left;
  }
  .wp-block-group.is-layout-grid.bl_mediaText {
    grid-template: "title title" auto "txt img" auto/54% 1fr;
  }
  .wp-block-group.is-layout-grid.bl_grid2 {
    grid-template-columns: repeat(auto-fill, minmax(min(20rem, 100%), 1fr));
  }
  .hp_tacTb {
    text-align: center !important;
  }
  .hp_tarTb {
    text-align: right !important;
  }
  .hp_talTb {
    text-align: left !important;
  }
  .hp_dnSp {
    display: invert;
  }
  .hp_dnTb {
    display: none !important;
  }
  .hp_dnTb-only {
    display: none;
  }
  .un_mv_txt {
    position: absolute;
    z-index: 1;
    padding-block-start: min(2.57%, 37px);
  }
  .un_mv_txtEn span {
    font-size: clamp(3rem, -2.813rem + 15.5vw, 6.875rem);
  }
  .un_mv_txtJp span {
    padding: 0 0.5em 0 0.25em;
  }
  .un_mv_video {
    margin-inline-start: 12.45%;
    padding-block-start: min(8%, 115px);
  }
  .un_homeLead {
    background-position: top 176px center, bottom right;
  }
  .un_homeLead::after {
    bottom: -20%;
    left: -16%;
  }
  .un_homeWorks_slide {
    flex-direction: row;
    max-inline-size: revert;
  }
  .un_homeWroks_txt {
    flex: 0 0 50%;
    display: grid;
    place-content: center;
  }
  .un_homeWorks_img {
    flex: 0 0 50%;
  }
  .splide__arrows {
    visibility: visible;
  }
  .un_companyOutline dt {
    flex: 0 0 9.375em;
  }
  .wp-block-group.un_companyStaff {
    gap: clamp(2.5rem, 1.75rem + 3.2vw, 3.75rem) !important;
  }
  .wp-block-group.un_service_feat .wp-block-media-text {
    grid-template-columns: var(--columns) !important;
  }
  .un_service_feat1bot_table table {
    font-size: 0.8125rem;
  }
}

@media not all and (min-width: 600px){
  .bl_col2 > * + * {
    margin-block-start: var(--spacing-30);
  }
  .wp-block-media-text.has-media-on-the-right.bl_lead .wp-block-media-text__content {
    grid-row: 1;
  }
  .wp-block-media-text.has-media-on-the-right.bl_lead .wp-block-media-text__media {
    grid-row: 2;
  }
  .hp_tacSp {
    text-align: center !important;
  }
  .hp_tarSp {
    text-align: right !important;
  }
  .hp_talSp {
    text-align: left !important;
  }
}

@media all and (min-width: 768px){
  .bl_gnavLg {
    display: block;
  }
  .bl_gnavLg .bl_menu {
    display: flex;
    align-items: center;
    gap: var(--spacing-30);
    margin: 0;
    font-size: clamp(0.8125rem, 0.375rem + 0.9vw, 0.9375rem);
  }
  .bl_burger {
    display: none;
  }
  .bl_footer {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--spacing-30);
  }
  .bl_footer_form {
    flex-basis: min(56%, 510px);
    order: 1;
    margin-inline: revert;
  }
}

@media not all and (min-width: 768px){
  .bl_footer_cont {
    inline-size: min(100%, 510px);
    margin-inline: auto;
    margin-block-start: var(--spacing-60);
  }
}

@media all and (min-width: 900px){
  .bl_gmenu .bl_burger {
    display: grid;
  }
  .wp-block-group.is-layout-grid.bl_mediaText {
    grid-template: "cont img" auto/54% 1fr;
    align-items: center;
    gap: var(--wp--preset--spacing--30) var(--wp--preset--spacing--40);
  }
  .wp-block-group.bl_mediaText_cont {
    grid-area: cont;
    display: grid;
    gap: var(--wp--preset--spacing--30);
  }
  .wp-block-group.bl_mediaText_title {
    grid-area: revert;
  }
  .wp-block-group.bl_mediaText_txt {
    grid-area: revert;
  }
  .wp-block-group.is-layout-grid.bl_grid2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .hp_tacTb-lg {
    text-align: center !important;
  }
  .hp_tarTb-lg {
    text-align: right !important;
  }
  .hp_talTb-lg {
    text-align: left !important;
  }
  .hp_dnTb-lg {
    display: none !important;
  }
  .hp_dnTb-only {
    display: revert;
  }
  .un_mv::after {
    top: 40%;
    left: -10%;
  }
  .un_homeLead {
    background-size: auto;
  }
  .un_homeLead::after {
    bottom: -25%;
    left: -12%;
  }
  .un_homeWorks::before {
    top: 0;
    inline-size: min(133.8%, 1927px);
  }
  .un_service_feat1bot {
    display: flex;
    align-items: center;
    gap: var(--spacing-40);
  }
  .un_service_feat1bot_table {
    flex: 0 0 48%;
    order: -1;
    margin-block-start: 0;
  }
  .wp-block-group.is-layout-grid.bl_mediaText.un_service_feat1 {
    grid-template: "cont img" auto/1fr 1fr;
  }
}

@media (1000px < width){
  .ly_wrapper {
    background-size: 1440px auto;
  }
}

@media all and (min-width: 1200px){
  .bl_gnavLg .bl_menu {
    gap: var(--spacing-40);
  }
  .hp_tacPc {
    text-align: center !important;
  }
  .hp_tarPc {
    text-align: right !important;
  }
  .hp_talPc {
    text-align: left !important;
  }
}

@media (1328px < width){
  .un_mv_inner {
    padding-inline-start: 0;
  }
}

@media (width < 600px){
  .wp-block-group.un_service_feat .wp-block-media-text .wp-block-media-text__content {
    grid-row: 1 !important;
  }
  .wp-block-group.un_service_feat .wp-block-media-text .wp-block-media-text__media {
    grid-row: 2 !important;
  }
}

@media (any-hover: hover){
  :where(a)[href]:hover {
    color: var(--color-link-hover);
    text-decoration-thickness: 2px;
  }
  .el_btn:hover {
    background-color: var(--color-accent-2);
    color: var(--color-base);
  }
  .el_btn.el_btn__ar:hover::after {
    translate: 0.25em 0;
  }
  .el_btn.el_btn__outline:hover {
    border-color: transparent;
  }
  .bl_gnavLg .menu-item a[href]:hover {
    color: var(--color-accent-1);
  }
  .bl_gnavLg .menu-item .el_btn:hover {
    color: var(--color-base) !important;
    text-decoration-line: none;
    transition: background-color 0.2s ease;
  }
  .bl_gmenu .bl_menu a:-moz-any-link[href]:hover {
    color: var(--color-accent-1);
  }
  .bl_gmenu .bl_menu a:any-link[href]:hover {
    color: var(--color-accent-1);
  }
  .menu-item a[href]:hover,
  .bl_menu_item a[href]:hover {
    text-decoration-line: underline;
    text-decoration-thickness: 1px;
  }
  .un_homeBanner_link[href]:hover::before {
    content: "";
    position: absolute;
    z-index: 1;
    inset: 0;
    background-color: rgba(from var(--color-accent-1) r g b/20%);
  }
  .un_homeBanner_link[href]:hover .un_homeBanner_img {
    scale: 1.2;
  }
  .splide__arrow:enabled > svg {
    transition: fill 0.2s ease;
  }
  .splide__arrow:enabled:enabled:hover > svg {
    fill: var(--color-accent-1);
  }
  .splide__arrow--prev:enabled:hover {
    translate: -5px 0;
  }
  .splide__arrow--next:enabled:hover {
    translate: 5px 0;
  }
}

@media (hover: hover){
  .hp_imgLink:hover {
    transform: translateY(-2px);
    filter: drop-shadow(0px 4px 8px rgba(0, 0, 0, 0.25));
  }
}

@media (prefers-reduced-motion: reduce){
  *,
  ::before,
  ::after {
    transition-duration: 1ms !important;
    animation-duration: 1ms !important;
    animation-iteration-count: 1 !important;
    transition: all 0 !important;
  }
}

