@charset "UTF-8";
/*
* main.css
*
*/
/**
  画像トリミング
*/
/* ------------------------
  reset
------------------------ */
html,
body {
  height: 100%;
}

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

* {
  margin: 0;
  padding: 0;
  font-size: inherit;
  line-height: inherit;
}

pre,
textarea {
  overflow: auto;
}

template {
  display: none;
}

details,
main,
summary {
  display: block;
}

input[type=number] {
  width: auto;
}

input[type=search] {
  -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

progress {
  display: inline-block;
}

small {
  font-size: 75%;
}

sub,
sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

textarea {
  resize: vertical;
}

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

audio:not([controls]) {
  display: none;
}

img {
  border: 0;
  max-width: 100%;
  height: auto;
}

button,
input,
select,
textarea {
  min-height: 1.5em;
  color: inherit;
  font-family: inherit;
  font-weight: inherit;
  font-style: inherit;
}

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

input {
  line-height: normal;
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
  border-style: none;
  cursor: pointer;
  background-color: transparent;

  -webkit-appearance: button;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  padding: 0;
  border: 0;
}

code,
kbd,
pre,
samp {
  font-family: monospace;
}

ol,
ul {
  list-style: none;
}

select {
     -moz-appearance: none;
  -webkit-appearance: none;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

fieldset {
  border: 0;
}

/* ------------------------
  Base Settings
------------------------ */
body {
  background-color: var(--bb-recruit-bg-color);
  word-break: normal;
  color: var(--bb-recruit-font-color);
  font-family: var(--bb-recruit-font-family);
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.3;

  --bb-recruit-font-family-gothic: "Noto Sans JP", sans-serif;
  --bb-recruit-font-family-mincho: "Noto Serif JP", serif;
  --bb-recruit-font-family-en-din: din-2014, sans-serif;
  --bb-recruit-font-family-en-norman: norman-variable, sans-serif;
  --bb-recruit-font-family-amethysta: "Amethysta", serif;
  --bb-recruit-font-family: var(--bb-recruit-font-family-gothic);
  --bb-recruit-font-family-en: var(--bb-recruit-font-family-en-din);
  --bb-recruit-color-black: #000;
  --bb-recruit-color-white: #fff;
  --bb-recruit-color-gray-dark: #636261;
  --bb-recruit-color-gray: #d6d2cb;
  --bb-recruit-color-gray-light: #e3e0d8;
  --bb-recruit-color-gray-lighter: #f3f1ec;
  --bb-recruit-color-gold-dark: #b57e00;
  --bb-recruit-color-gold-dark-2: #bf932e;
  --bb-recruit-color-gold: #e2cea1;
  --bb-recruit-color-gold-light: #e2cea1;
  --bb-recruit-color-beige-dark: #807770;
  --bb-recruit-color-beige: #a18f6c;
  --bb-recruit-color-beige-light: #e6ded1;
  --bb-recruit-color-red: #c4373c;
  --bb-recruit-color-logo: #231815;
  --bb-recruit-color-scrollbar-gray: #9f9f9f;
  --bb-recruit-bg-color: var(--bb-recruit-color-gray-lighter);
  --bb-recruit-bg-color-white: var(--bb-recruit-color-white);
  --bb-recruit-bg-color-gray: var(--bb-recruit-color-gray-dark);
  --bb-recruit-font-color: var(--bb-recruit-color-black);
  --bb-recruit-font-color-white: var(--bb-recruit-color-white);
  --bb-recruit-font-color-gold-dark: var(--bb-recruit-color-gold-dark);
  --bb-recruit-font-color-gold: var(--bb-recruit-color-gold);
  --bb-recruit-lower-zIndex: 10;
  --bb-recruit-base-zIndex: 30;
  --bb-recruit-stacking-footer: 50;
  --bb-recruit-stacking-careers: 60;
  --bb-recruit-stacking-header: 110;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  overflow-wrap: anywhere;
  overscroll-behavior: none;
}
@media (min-width: 768px) {
  body {
    font-size: 1rem;
    line-height: 1.5;
  }
}

a {
  text-decoration: none;
  color: var(--bb-recruit-font-color);
}
a:visited {
  color: var(--bb-recruit-font-color);
}
a:hover {
  text-decoration: none;
  color: var(--bb-recruit-font-color);
}
a:active {
  text-decoration: none;
  color: var(--bb-recruit-font-color);
}
a[href^="tel:"]:hover {
  color: var(--bb-recruit-font-color);
}
@media (min-width: 768px) {
  a[href^="tel:"] {
    cursor: text;
    text-decoration: none;
  }
}

main.is-scrollLocked {
  overflow: hidden;

  scrollbar-gutter: stable;
}

.bb_recruit_container {
  overflow: clip;
  padding-top: var(--_header-height);

  --_header-height: 2.75rem;
}
@media (min-width: 768px) {
  .bb_recruit_container {
    --_header-height: 3.4375rem;
  }
}

.ly_header {
  position: fixed;
  z-index: var(--bb-recruit-stacking-header);
  top: 0;
  left: 0;
  width: 100%;

  --_header-height: 2.75rem;
  --_grid-size: 12.25rem;
}
@media (min-width: 768px) {
  .ly_header {
    --_header-height: 3.4375rem;
  }
}
.ly_header:has(.ly_header_overlay[aria-hidden=false]) .ly_headerBar::before {
  transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
  background-color: var(--bb-recruit-bg-color);
}
.ly_header:has(.ly_header_overlay[aria-hidden=false]) .ly_header_menuBtn_inner > span:nth-child(1) {
  transition: translate 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), rotate 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);

  translate: 0 calc(50% + 0.3125rem);
  rotate: 45deg;
}
@media (min-width: 768px) {
  .ly_header:has(.ly_header_overlay[aria-hidden=false]) .ly_header_menuBtn_inner > span:nth-child(1) {
    translate: 0 calc(50% + 0.4375rem);
  }
}
.ly_header:has(.ly_header_overlay[aria-hidden=false]) .ly_header_menuBtn_inner > span:nth-child(2) {
  scale: 0 1;
}
.ly_header:has(.ly_header_overlay[aria-hidden=false]) .ly_header_menuBtn_inner > span:nth-child(3) {
  transition: translate 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), rotate 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);

  translate: 0 calc(-50% - 0.3125rem);
  rotate: -45deg;
}
@media (min-width: 768px) {
  .ly_header:has(.ly_header_overlay[aria-hidden=false]) .ly_header_menuBtn_inner > span:nth-child(3) {
    translate: 0 calc(-50% - 0.4375rem);
  }
}

.ly_headerBar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
  z-index: 1;
  width: 100%;
  min-height: var(--_header-height);

  padding-inline-start: 0.5rem;
}
@media (min-width: 768px) {
  .ly_headerBar {
    padding-inline-start: 1.125rem;
  }
}
.ly_headerBar::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: background-color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  background-color: color-mix(in srgb, var(--bb-recruit-color-gray-lighter) 60%, transparent 40%);
}

.ly_headerBar_logo {
  display: inline-flex;
  flex-direction: column;
  position: relative;

  gap: 0.25rem;
}
@media (min-width: 768px) {
  .ly_headerBar_logo {
    align-items: center;
    flex-direction: row;

    gap: 1.25rem;
    margin-block-start: 0.25rem;
  }
}

.ly_header_logoImg {
  width: 8.125rem;
}
@media (min-width: 768px) {
  .ly_header_logoImg {
    width: 10.4375rem;
  }
}
.ly_header_logoImg img {
  width: 100%;
}

.ly_header_logoTxt {
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-din);
  font-size: 0.5rem;
}
@media (min-width: 768px) {
  .ly_header_logoTxt {
    letter-spacing: 0.04em;
    font-size: 0.875rem;
  }
}

.ly_headerBar_nav {
  display: flex;
  height: 100%;
}

.ly_header_internship {
  --_padding-inline: 1.25rem;
}
@media (min-width: 768px) {
  .ly_header_internship {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    text-transform: uppercase;
    font-family: var(--bb-recruit-font-family-en-din);
    font-weight: 700;

    margin-inline-end: 1.875rem;
    padding-inline: var(--_padding-inline);
  }
}
@media (min-width: 768px) {
  .ly_header_internship::before {
    content: "";
    display: inline-block;
    position: absolute;
    bottom: 0.8125rem;
    left: 50%;
    width: calc(100% - var(--_padding-inline) * 2);
    height: 0.125rem;
    transition: scale 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform-origin: right center;
    background-color: var(--bb-recruit-color-gold-dark-2);

    translate: -50% 0;
    scale: 0 1;
  }
}
@media (min-width: 768px) {
  .ly_header_internship:hover::before {
    transition: scale 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transform-origin: left center;

    scale: 1 1;
  }
}

.ly_header_entry {
  display: block;
  flex-shrink: 0;
}
.ly_header_entry > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 100%;
  letter-spacing: 0.04%;
  text-transform: uppercase;
  color: var(--bb-recruit-color-white);
  font-family: var(--bb-recruit-font-family-en-din);
  font-size: 1rem;
  font-weight: 700;

  gap: 0.625rem;
  padding-inline: 2.125rem 1.6875rem;
}
@media (min-width: 768px) {
  .ly_header_entry > a {
    font-size: 1.25rem;

    gap: 0.875rem;
    padding-inline: 3rem 2.3125rem;
  }
}
.ly_header_entry > a::before {
  content: "";
  display: inline-block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% + 11px);
  background-color: var(--bb-recruit-color-gold-dark-2);

  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 0.543025399rem), 0 100%);
}
@media (min-width: 768px) {
  .ly_header_entry > a::before {
    height: calc(100% + 18px);

    clip-path: polygon(0 0, 100% 0, 100% calc(100% - 0.7159194415rem), 0 100%);
  }
}
.ly_header_entry > a::after {
  content: "";
  display: inline-block;
  position: relative;
  top: 0.0625rem;
  width: 0.4375rem;
  height: 1rem;
  transition: translate 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background-image: url("/recruit/assets/img/common/icon_arw_white.svg");
  background-repeat: no-repeat;
  background-size: contain;
}
@media (min-width: 768px) {
  .ly_header_entry > a::after {
    top: 0.125rem;
  }
}
.ly_header_entry > a:hover::after {
  transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  translate: 0.12em 0;
}

.ly_header_menuBtn {
  display: inline-grid;
  flex-shrink: 0;
  width: var(--_header-height);
  height: var(--_header-height);

  place-content: center;
}
@media (min-width: 768px) {
  .ly_header_menuBtn {
    margin-inline-start: 0.3125rem;
  }
}
@media (min-width: 768px) {
  .ly_header_menuBtn:focus-visible .ly_header_menuBtn_inner > span {
    transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-color: var(--bb-recruit-font-color-gold-dark);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .ly_header_menuBtn:hover .ly_header_menuBtn_inner > span {
    transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-color: var(--bb-recruit-font-color-gold-dark);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .ly_header_menuBtn:hover .ly_header_menuBtn_inner > span {
    transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-color: var(--bb-recruit-font-color-gold-dark);
  }
}

.ly_header_menuBtn_inner {
  position: relative;
  width: 0.875rem;
  height: 0.75rem;
}
@media (min-width: 768px) {
  .ly_header_menuBtn_inner {
    width: 1.25rem;
    height: 1rem;
  }
}
.ly_header_menuBtn_inner > span {
  display: block;
  position: absolute;
  width: 100%;
  height: 0.125rem;
  background-color: currentColor;
}
.ly_header_menuBtn_inner > span:nth-child(1) {
  top: 0;
  transition: translate 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), rotate 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.ly_header_menuBtn_inner > span:nth-child(2) {
  top: 50%;
  transition: scale 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform-origin: center;

  translate: 0 -50%;
}
.ly_header_menuBtn_inner > span:nth-child(3) {
  top: 100%;
  transition: translate 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), rotate 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), background-color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);

  translate: 0 -100%;
}

.ly_header_overlay {
  display: none;
  visibility: hidden;
  opacity: 0;
  position: relative;
  z-index: -1;
  width: 100%;
  height: 100lvh;
  background-image: url("/recruit/assets/img/common/bg_filter_brown.svg");
  background-repeat: repeat;
  background-position: center;
  background-size: 3.125rem 3.125rem;
  pointer-events: none;
}
.ly_header_overlay[aria-hidden=false] {
  visibility: visible;
  pointer-events: all;
}

.ly_header_main {
  background-color: var(--bb-recruit-bg-color);
  color: var(--bb-recruit-font-color);

  translate: 0 -100%;
}

.ly_header_inner {
  padding-block: 1.25rem 1.75rem;
}
@media (max-width: 767.98px) {
  .ly_header_inner {
    overflow-y: auto;
    max-height: calc(100svh - 2.75rem);
  }
}
@media (min-width: 768px) {
  .ly_header_inner {
    padding-block: 3.25rem 3.75rem;
  }
}

.ly_header_menuItem {
  position: relative;

  --_icon-size: 0.75rem;
}
@media (max-width: 767.98px) {
  .ly_header_menuItem::before {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.0625rem;
    background-color: var(--bb-recruit-color-gray);
  }
}
.ly_header_menuItem::before {
  top: 0;
}
@media (max-width: 767.98px) {
  .ly_header_menuItem.ly_header_menuItem-6::after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 0.0625rem;
    background-color: var(--bb-recruit-color-gray);
  }
}
.ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_subItem > a {
  font-size: 0.875rem;
  font-weight: 300;
}
@media (min-width: 768px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_subItem > a {
    line-height: 1.2;

    padding-block: 0.5625rem;
  }
}
@media (max-width: 767.98px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_inner {
    display: block;
  }
}
@media (min-width: 768px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_inner {
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_innerCont {
    overflow: visible;
    opacity: 1;
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_subList {
    margin-block: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_subItem {
    position: relative;
  }
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_menuItem_subItem:not(:first-child)::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0.0625rem;
    background-color: var(--bb-recruit-color-gray);
  }
}
@media (max-width: 767.98px) {
  .ly_header_menuItem.ly_header_menuItem-6 .ly_header_link {
    padding: 1.0625rem 0.5rem;
    width: 100%;
  }
}

.ly_header_menuItem_ttl {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  position: relative;
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);

  gap: 0.375rem;
  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .ly_header_menuItem_ttl {
    gap: 0.5rem;
  }
}
.ly_header_menuItem_ttl[type=button] {
  padding: 0.875rem 1.75rem 0.75rem 0.5rem;
  width: 100%;
}
.ly_header_menuItem_ttl[aria-expanded=true]::after {
  transition: rotate 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  rotate: 0deg;
}
.ly_header_menuItem_ttl::before,
.ly_header_menuItem_ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  width: var(--_icon-size);
  height: 0.0625rem;
  background-color: currentColor;

  translate: 0 -50%;
}
@media (min-width: 768px) {
  .ly_header_menuItem_ttl::before,
  .ly_header_menuItem_ttl::after {
    display: none;
  }
}
.ly_header_menuItem_ttl::after {
  transition: rotate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  rotate: -90deg;
}

.ly_header_menuItem_ttlMain {
  display: inline-block;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.3;

  font-synthesis: none;
}
@media (min-width: 768px) {
  .ly_header_menuItem_ttlMain {
    font-size: 1.75rem;
  }
}
.ly_header_menuItem_ttlMain::before,
.ly_header_menuItem_ttlMain::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.ly_header_menuItem_ttlMain::before {
  margin-block-end: calc((1 - 1.3) * 0.5em);
}
.ly_header_menuItem_ttlMain::after {
  margin-block-start: calc((1 - 1.3) * 0.5em);
}

.ly_header_menuItem_ttlSub {
  display: inline-block;
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 0.75rem;
  font-weight: 500;
}
@media (min-width: 768px) {
  .ly_header_menuItem_ttlSub {
    font-size: 1rem;
  }
}

@media (min-width: 768px) {
  .ly_header_menuList {
    display: grid;

    gap: 2.5rem;
    grid-template-columns: repeat(auto-fit, minmax(var(--_grid-size), 1fr));
  }
}

.ly_header_menuItem_inner {
  overflow: hidden;
  padding: 0;
  font-weight: 300;
}
@media (min-width: 768px) {
  .ly_header_menuItem_inner {
    padding: 0.875rem 0 0.625rem;
  }
}
@media (max-width: 767.98px) {
  .ly_header_menuItem_inner {
    display: grid;
    transition: grid-template-rows 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    grid-template-rows: 0fr;
  }
  .ly_header_menuItem_inner[aria-hidden=false] {
    transition: grid-template-rows 0.45s cubic-bezier(0.645, 0.045, 0.355, 1);

    grid-template-rows: 1fr;
  }
}

@media (max-width: 767.98px) {
  .ly_header_menuItem_innerCont {
    overflow: hidden;
    opacity: 0;
    padding: 0 1.25rem;
    transition: opacity 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
  .ly_header_menuItem_inner[aria-hidden=false] .ly_header_menuItem_innerCont {
    opacity: 1;
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
  }
}

@media (max-width: 767.98px) {
  .ly_header_menuItem_subList {
    margin-block: 0.125rem 0.875rem;
  }
}

.ly_header_menuItem_subItem {
  color: currentColor;
}
@media (max-width: 767.98px) {
  .ly_header_menuItem_subItem a {
    width: 100%;
  }
}

.ly_header_link {
  display: inline-block;
  position: relative;
  font-size: 0.875rem;
  line-height: 1.2;

  padding-block: 0.625rem;
}
@media (min-width: 768px) {
  .ly_header_link {
    padding-block: 0.5rem;
  }
}
.ly_header_link::before {
  content: "";
  position: absolute;
  bottom: 0.375rem;
  left: 0;
  width: 100%;
  height: 0.0625rem;
  transition: scale 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: right;
  background-color: var(--bb-recruit-color-black);

  scale: 0 1;
}
@media (min-width: 768px) {
  .ly_header_link:focus-visible::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .ly_header_link:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .ly_header_link:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
.ly_header_link[target=_blank]::after {
  content: "";
  display: inline-block;
  position: relative;
  top: -0.0125rem;
  margin-left: 0.5rem;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;

  -webkit-mask: url("/recruit/assets/img/common/icon_blank.svg") no-repeat center/100% auto;

          mask: url("/recruit/assets/img/common/icon_blank.svg") no-repeat center/100% auto;
}

.ly_header_menuItem_internship {
  display: inline-block;
  padding: 0.6875rem 1.25rem 0.6875rem 1.5rem;
  border: 0.0625rem solid var(--bb-recruit-color-gray-dark);
  min-width: 8.75rem;
  min-height: 2.5rem;
  text-align: center;
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-din);
  font-size: 0.9375rem;
  font-weight: 700;

  margin-block-start: 1.875rem;
}
.ly_header_menuItem_internship::before,
.ly_header_menuItem_internship::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.ly_header_menuItem_internship::before {
  margin-block-end: calc((1 - 1.5) * 0.5em);
}
.ly_header_menuItem_internship::after {
  margin-block-start: calc((1 - 1.5) * 0.5em);
}
.ly_header_menuItem_internship::after {
  content: "";
  display: inline-block;
  position: relative;
  top: 0.0625rem;
  margin-left: 0.625rem;
  width: 0.4375rem;
  height: 0.875rem;
  background-color: var(--bb-recruit-color-black);

  translate: 0 0.0625rem;
  -webkit-mask-image: url("/recruit/assets/img/common/icon_arw_white.svg");
          mask-image: url("/recruit/assets/img/common/icon_arw_white.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}

.ly_header_subList {
  display: flex;
  flex-wrap: wrap;
  font-weight: 300;

  -moz-column-gap: 1.6875rem;

       column-gap: 1.6875rem;
  row-gap: 0.125rem;
  margin-block-start: 1.25rem;
}
@media (min-width: 768px) {
  .ly_header_subList {
    display: block;

    margin-block-start: 0;
  }
}

.ly_header_subItem .ly_header_link {
  display: inline-grid;

  grid-template-columns: minmax(16.8ch, 100%) 1rem;
}
@media (min-width: 768px) {
  .ly_header_subItem .ly_header_link {
    line-height: 1.2;

    padding-block: 0.5625rem;
  }
}
@media (max-width: 767.98px) {
  .ly_header_subItem .ly_header_link::after {
    top: -0.09375rem;
  }
}

.ly_headerBar::before {
  background-color: color-mix(in srgb, var(--bb-recruit-color-gray-lighter) 60%, transparent 40%);
}

.ly_headerBar[data-header-transparent=true]::before {
  background-color: color-mix(in srgb, var(--bb-recruit-color-gray-light) 0%, transparent 100%);
}

.ly_footer {
  position: relative;
  z-index: var(--bb-recruit-stacking-footer);
  width: 100%;

  --_grid-size: 12.25rem;
}
.ly_footer::before {
  content: "";
  position: absolute;
  z-index: -1;
  background-image: linear-gradient(102deg, #636261 27.8%, #929292 83.55%);

  inset: -7.5vw 0 0 0;
}
@media (min-width: 768px) {
  .ly_footer::before {
    inset: -7.0138888889vw 0 0 0;
  }
}

.ly_footer_inner {
  padding-block: 5rem 2.25rem;
}
@media (min-width: 768px) {
  .ly_footer_inner {
    padding-block: 5.625rem 2.5rem;
  }
}

.ly_footer_logo {
  display: inline-flex;
  flex-direction: column;

  gap: 0.4375rem;
}
@media (min-width: 768px) {
  .ly_footer_logo {
    align-items: center;
    flex-direction: row;

    gap: 1.25rem;
  }
}

.ly_footer_logoImg {
  position: relative;
  left: -0.1875rem;
  width: 11.875rem;
}
@media (min-width: 768px) {
  .ly_footer_logoImg {
    left: 0;
    width: 15.625rem;
  }
}
.ly_footer_logoImg img {
  width: 100%;
}

.ly_footer_logoTxt {
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: var(--bb-recruit-color-white);
  font-family: var(--bb-recruit-font-family-en-din);
  font-size: 0.8125rem;
}
@media (min-width: 768px) {
  .ly_footer_logoTxt {
    letter-spacing: 0.05em;
    font-size: 1.5rem;
  }
}

.ly_footer_mainBlock {
  padding-block-start: 2.8125rem;
}
@media (min-width: 768px) {
  .ly_footer_mainBlock {
    padding-block-start: 3.75rem;
  }
}

.ly_footer_menuItem {
  position: relative;
  color: var(--bb-recruit-color-white);

  --_icon-size: 0.75rem;
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem::before,
  .ly_footer_menuItem::after {
    content: "";
    display: block;
    position: absolute;
    left: 0;
    width: 100%;
    height: 0.0625rem;
    background-color: color-mix(in srgb, var(--bb-recruit-color-white) 20%, transparent 80%);
  }
}
.ly_footer_menuItem::before {
  top: 0;
}
.ly_footer_menuItem::after {
  bottom: 0;
}
.ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_subItem > a {
  font-size: 0.875rem;
  font-weight: 300;
}
@media (min-width: 768px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_subItem > a {
    padding-block: 0.25rem;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_inner {
    display: block;
  }
}
@media (min-width: 768px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_inner {
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_innerCont {
    overflow: visible;
    opacity: 1;
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_subList {
    margin-block: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_subItem {
    position: relative;
  }
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_menuItem_subItem:not(:first-child)::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0.0625rem;
    background-color: color-mix(in srgb, var(--bb-recruit-color-white) 20%, transparent 80%);
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-6 .ly_footer_link {
    padding: 1rem 0.5rem;
    width: 100%;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-7::after {
    display: none;
  }
}
.ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_menuItem_subItem > a {
  font-size: 0.875rem;
  font-weight: 300;

  padding-block: 0.6875rem;
}
@media (min-width: 768px) {
  .ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_menuItem_subItem > a {
    padding-block: 0.25rem;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_menuItem_inner {
    display: block;
  }
}
@media (min-width: 768px) {
  .ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_menuItem_inner {
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_menuItem_innerCont {
    overflow: visible;
    opacity: 1;
    padding: 0;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_menuItem_subList {
    margin-block: 0;
    padding-block-start: 1.75rem;
  }
}
.ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_link {
  display: inline-grid;

  grid-template-columns: minmax(16.8ch, 100%) 1rem;
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem.ly_footer_menuItem-7 .ly_footer_link::after {
    width: 0.8125rem;
    height: 0.8125rem;
  }
}

.ly_footer_menuItem_ttl {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
  position: relative;
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);

  gap: 0.5rem;
  font-synthesis: none;
}
@media (min-width: 768px) {
  .ly_footer_menuItem_ttl {
    gap: 0.625rem;
  }
}
.ly_footer_menuItem_ttl[type=button] {
  padding: 1.125rem 1.75rem 1rem 0.5rem;
  width: 100%;
}
.ly_footer_menuItem_ttl[aria-expanded=true]::after {
  transition: rotate 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  rotate: 0deg;
}
.ly_footer_menuItem_ttl::before,
.ly_footer_menuItem_ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0.5rem;
  width: var(--_icon-size);
  height: 0.0625rem;
  background-color: currentColor;

  translate: 0 -50%;
}
@media (min-width: 768px) {
  .ly_footer_menuItem_ttl::before,
  .ly_footer_menuItem_ttl::after {
    display: none;
  }
}
.ly_footer_menuItem_ttl::after {
  transition: rotate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  rotate: -90deg;
}

.ly_footer_menuItem_ttlMain {
  display: inline-block;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 1.5rem;
  line-height: 1.3;

  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .ly_footer_menuItem_ttlMain {
    font-size: 1.75rem;
  }
}
.ly_footer_menuItem_ttlMain::before,
.ly_footer_menuItem_ttlMain::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.ly_footer_menuItem_ttlMain::before {
  margin-block-end: calc((1 - 1.3) * 0.5em);
}
.ly_footer_menuItem_ttlMain::after {
  margin-block-start: calc((1 - 1.3) * 0.5em);
}

.ly_footer_menuItem_ttlSub {
  display: inline-block;
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 0.75rem;
  font-weight: 500;
}
@media (min-width: 768px) {
  .ly_footer_menuItem_ttlSub {
    font-size: 1rem;
  }
}

@media (min-width: 768px) {
  .ly_footer_menuList {
    display: grid;

    gap: 2.5rem;
    grid-template-columns: repeat(auto-fit, minmax(var(--_grid-size), 1fr));
  }
}

.ly_footer_menuItem_inner {
  overflow: hidden;
  padding: 0;
}
@media (min-width: 768px) {
  .ly_footer_menuItem_inner {
    padding: 0.75rem 0 0.625rem;
  }
}
@media (max-width: 767.98px) {
  .ly_footer_menuItem_inner {
    display: grid;
    transition: grid-template-rows 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    grid-template-rows: 0fr;
  }
  .ly_footer_menuItem_inner[aria-hidden=false] {
    transition: grid-template-rows 0.45s cubic-bezier(0.645, 0.045, 0.355, 1);

    grid-template-rows: 1fr;
  }
}

@media (max-width: 767.98px) {
  .ly_footer_menuItem_innerCont {
    overflow: hidden;
    opacity: 0;
    padding: 0 1.25rem;
    transition: opacity 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
  .ly_footer_menuItem_inner[aria-hidden=false] .ly_footer_menuItem_innerCont {
    opacity: 1;
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1) 0.2s;
  }
}

@media (max-width: 767.98px) {
  .ly_footer_menuItem_subList {
    margin-block: 0.25rem 1rem;
  }
}

.ly_footer_menuItem_subItem {
  color: currentColor;
}

.ly_footer_link {
  display: inline-block;
  position: relative;
  color: var(--bb-recruit-color-white);
  font-size: 0.875rem;
  font-weight: 300;
  line-height: 1.4;

  padding-block: 0.5rem;
}
@media (min-width: 768px) {
  .ly_footer_link {
    padding-block: 0.25rem;
  }
}
.ly_footer_link::before {
  content: "";
  position: absolute;
  bottom: 0.375rem;
  left: 0;
  width: 100%;
  height: 0.0625rem;
  transition: scale 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: right;
  background-color: var(--bb-recruit-color-white);

  scale: 0 1;
}
.ly_footer_link:hover {
  color: var(--bb-recruit-color-white);
}
@media (min-width: 768px) {
  .ly_footer_link:focus-visible {
    color: var(--bb-recruit-color-white);
  }
  .ly_footer_link:focus-visible::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .ly_footer_link:hover {
    color: var(--bb-recruit-color-white);
  }
  .ly_footer_link:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .ly_footer_link:hover {
    color: var(--bb-recruit-color-white);
  }
  .ly_footer_link:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
.ly_footer_link:active,
.ly_footer_link:visited {
  color: var(--bb-recruit-color-white);
}
.ly_footer_link[target=_blank]::after {
  content: "";
  display: inline-block;
  position: relative;
  top: -0.0125rem;
  margin-left: 0.5rem;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;

  -webkit-mask: url("/recruit/assets/img/common/icon_blank.svg") no-repeat center/100% auto;

          mask: url("/recruit/assets/img/common/icon_blank.svg") no-repeat center/100% auto;
}

.ly_footer_subBlock {
  position: relative;
  color: var(--bb-recruit-color-white);

  padding-block-end: 1.25rem;
}
@media (min-width: 768px) {
  .ly_footer_subBlock {
    padding-block-end: 2.1875rem;
  }
}

.ly_footer_snsList {
  display: flex;
  justify-content: flex-end;

  gap: 1.25rem;
  margin-block-start: 2rem;
}
@media (min-width: 768px) {
  .ly_footer_snsList {
    position: absolute;
    top: -0.3125rem;
    right: 0;

    margin-block-start: 0;
    translate: 0 -100%;
  }
}

.ly_footer_snsItem > a {
  transition: opacity 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
}
@media (min-width: 768px) {
  .ly_footer_snsItem > a:focus-visible {
    opacity: 0.8;
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .ly_footer_snsItem > a:hover {
    opacity: 0.8;
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .ly_footer_snsItem > a:hover {
    opacity: 0.8;
    transition: opacity 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
  }
}
.ly_footer_snsItem__youtube {
  padding-top: 0.125rem;
}

.ly_footer_copy {
  position: relative;

  padding-block-start: 0.9375rem;
}
@media (min-width: 768px) {
  .ly_footer_copy {
    padding-block-start: 0.625rem;
  }
}
.ly_footer_copy::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 0.0625rem;
  background-color: color-mix(in srgb, var(--bb-recruit-color-white) 40%, transparent 60%);
}
.ly_footer_copy > p {
  text-align: right;
}
.ly_footer_copy > p small {
  color: var(--bb-recruit-color-white);
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .ly_footer_copy > p small {
    font-size: 0.75rem;
  }
}

.ly_main {
  position: relative;
}

.ly_careers_wrapper {
  position: relative;
  width: 100%;

  padding-block-start: 6.25rem;
}
@media (min-width: 768px) {
  .ly_careers_wrapper {
    padding-block-start: 5rem;
  }
}
.ly_careers_wrapper.ly_careers_wrapper__white {
  background-image: linear-gradient(to bottom, var(--bb-recruit-bg-color-white) 0%, var(--bb-recruit-bg-color-white) 49%, transparent 50%);
}

.ly_careers {
  overflow: hidden;
  position: relative;
  z-index: var(--bb-recruit-stacking-careers);

  --_hover-in-duration: 0.3s;
  --_hover-out-duration: 0.25s;
  --_hover-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
@media (min-width: 768px) {
  .ly_careers {
    min-height: 41.875rem;
  }
}
.ly_careers::before {
  content: "";
  position: absolute;
  left: 50%;
  width: 100%;
  height: 100%;
  min-height: 41.875rem;
  background-image: url("/recruit/assets/img/common/careers_bg_img_sm.webp");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;

  translate: -50% 0;
  clip-path: polygon(0% 6.9926811944vw, 100% 0%, 100% calc(100% - 6.9926811944vw), 0% 100%);
}
@media (min-width: 768px) {
  .ly_careers::before {
    background-image: url("/recruit/assets/img/common/careers_bg_img_lg.webp");

    aspect-ratio: 1440/670;
  }
}

.ly_careers_inner {
  color: var(--bb-recruit-font-color-white);

  padding-block: 8rem 4rem;
}
@media (min-width: 768px) {
  .ly_careers_inner {
    display: flex;
    align-items: center;
    flex-direction: column;

    padding-block: 9.125rem 9.4375rem;
  }
}

@media (min-width: 768px) {
  .ly_careers_heading {
    text-align: center;
  }
}
.ly_careers_heading h3 {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 2.625rem;

  font-variation-settings: "wght" 700;
  font-synthesis: none;
}
@media (min-width: 768px) {
  .ly_careers_heading h3 {
    font-size: 4.5rem;
  }
}
.ly_careers_heading p {
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 1.25rem;
  font-weight: 600;
}
@media (min-width: 768px) {
  .ly_careers_heading p {
    font-size: 1.5rem;
  }
}
@media (max-width: 767.98px) {
  .ly_careers_heading p {
    font-size: 1rem;

    margin-block-start: 0.5rem;
  }
}

.ly_careers_body {
  width: 100%;

  padding-block-start: 2.4375rem;
}
@media (min-width: 768px) {
  .ly_careers_body {
    padding-block-start: 2.125rem;
  }
}

.ly_careers_linkBox {
  display: flex;
  flex-direction: column;

  gap: 0.625rem;
}
@media (min-width: 768px) {
  .ly_careers_linkBox {
    gap: 1.5rem;
  }
}

.ly_careers_link__lg {
  display: grid;
  overflow: hidden;
  align-items: center;
  background-color: var(--bb-recruit-bg-color);

  grid-template-columns: 1fr;
}
@media (min-width: 768px) {
  .ly_careers_link__lg {
    max-height: 10rem;

    grid-template-columns: repeat(2, 1fr);
  }
}
@media (min-width: 768px) {
  .ly_careers_link__lg:focus-visible .ly_careers_link_img img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .ly_careers_link__lg:focus-visible p::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .ly_careers_link__lg:hover .ly_careers_link_img img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .ly_careers_link__lg:hover p::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .ly_careers_link__lg:hover .ly_careers_link_img img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .ly_careers_link__lg:hover p::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
.ly_careers_link__lg p {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  padding: 1.5625rem 2.0625rem 2rem;
  font-size: 1.125rem;
}
@media (min-width: 768px) {
  .ly_careers_link__lg p {
    justify-content: space-between;
    padding: 3.625rem 2rem 3.625rem 3.8125rem;
    font-size: 1.75rem;
  }
}
.ly_careers_link__lg p::after {
  content: "";
  display: inline-block;
  position: absolute;
  right: 1.5rem;
  width: 0.5625rem;
  height: 1.3125rem;
  transition: translate var(--_hover-out-duration) var(--_hover-ease);
  background-image: url("/recruit/assets/img/common/icon_arw.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media (min-width: 768px) {
  .ly_careers_link__lg p::after {
    position: relative;
    right: unset;
    width: 1.25rem;
    height: 2.6875rem;
  }
}

.ly_careers_link_img {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;

  -o-object-fit: cover;

     object-fit: cover;
}
.ly_careers_link_img img {
  width: 100%;
  height: 100%;
  transition: scale var(--_hover-out-duration) var(--_hover-ease);

  -o-object-fit: cover;

     object-fit: cover;
}
@media (max-width: 767.98px) {
  .ly_careers_link_img img {
    padding: 0.625rem 0.625rem 0;
  }
}

.ly_careers_links {
  display: flex;
  flex-direction: column;

  gap: 0.625rem;
}
@media (min-width: 768px) {
  .ly_careers_links {
    flex-direction: row;
    justify-content: space-between;

    gap: 0.9375rem;
  }
}

.ly_careers_link {
  display: flex;
  align-items: center;
  flex-direction: row;
  justify-content: center;
  position: relative;
  padding: 1.375rem 2.0625rem 1rem;
  width: 100%;
  background-color: var(--bb-recruit-bg-color);
  font-size: 1.125rem;
  line-height: 1.2;
}
@media (min-width: 768px) {
  .ly_careers_link {
    justify-content: space-between;
    padding: 1.5rem 2rem;
    min-height: 4.75rem;
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  .ly_careers_link:focus-visible::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem -0.125rem;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .ly_careers_link:focus-visible::after {
    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .ly_careers_link:hover::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem -0.125rem;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) and (min-width: 768px) {
  .ly_careers_link:hover::after {
    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .ly_careers_link:hover::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem -0.125rem;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none) and (min-width: 768px), (min-width: 768px) and (-ms-high-contrast: active) and (min-width: 768px) {
  .ly_careers_link:hover::after {
    translate: 0.25rem 0;
  }
}
.ly_careers_link::after {
  content: "";
  display: inline-block;
  position: absolute;
  right: 1.5rem;
  width: 0.5625rem;
  height: 1.3125rem;
  transition: translate var(--_hover-out-duration) var(--_hover-ease);
  background-image: url("/recruit/assets/img/common/icon_arw.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  translate: 0 -0.125rem;
}
@media (min-width: 768px) {
  .ly_careers_link::after {
    position: relative;
    right: unset;
    width: 0.8125rem;
    height: 1.75rem;

    translate: 0 0;
  }
}

.ly_careers_btnBox {
  display: flex;
  justify-content: center;

  margin-block-start: 2.75rem;
}
@media (min-width: 768px) {
  .ly_careers_btnBox {
    margin-block-start: 3.75rem;
  }
}

.ly_knowMore {
  margin-block-start: 5.625rem;
}
@media (min-width: 768px) {
  .ly_knowMore {
    margin-block-start: 7.5rem;
  }
}

.ly_knowMore_heading {
  display: flex;
  flex-direction: column-reverse;

  gap: 0.5rem;
}
@media (min-width: 768px) {
  .ly_knowMore_heading {
    align-items: center;

    gap: 0;
  }
}

.ly_knowMore_headingTxt {
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 1rem;
  font-weight: 500;

  margin-block: calc((1em - 1lh) / 2);
}
@media (min-width: 768px) {
  .ly_knowMore_headingTxt {
    font-size: 1.5rem;
  }
}

.ly_knowMore_headingTxt-en {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 2.625rem;

  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .ly_knowMore_headingTxt-en {
    font-size: 4.5rem;
  }
}

.ly_knowMore_body {
  margin-block-start: 2.5rem;
}

.ly_grid-2col {
  display: grid;

  --_imgGrid-aspect-width: 373;
  --_imgGrid-aspect-height: 466;
  --_imgGrid-width: min(36.42578125vw, 23.3125rem);
  --_imgGrid-min-top: 3.4375rem;
  --_grid-gap: 1.5rem;
  gap: var(--_grid-gap) 0;
  grid-template-areas: "grid-2col-img" "grid-2col-cont";
}
@media (min-width: 768px) {
  .ly_grid-2col {
    --_grid-gap: 2.5rem;
    grid-template: "grid-2col-cont grid-2col-img" auto/1fr var(--_imgGrid-width);
    gap: 0 var(--_grid-gap);
  }
}
.ly_grid-2col.ly_grid-2col__reverse {
  grid-template: "grid-2col-img grid-2col-cont" auto/var(--_imgGrid-width) 1fr;
}
.ly_grid-2col:has(.ly_grid-2col_header) {
  grid-template-areas: "grid-2col-header" "grid-2col-img" "grid-2col-cont";
}
@media (min-width: 768px) {
  .ly_grid-2col:has(.ly_grid-2col_header) {
    grid-template-areas: "grid-2col-header grid-2col-img" "grid-2col-cont grid-2col-img";
    grid-template-rows: max-content 1fr;
  }
}

.ly_grid-2col_header {
  grid-area: grid-2col-header;
}
@media (min-width: 768px) {
  .ly_grid-2col_header {
    align-self: start;
  }
}

.ly_grid-2col_cont {
  grid-area: grid-2col-cont;
}

.ly_grid-2col_img {
  grid-area: grid-2col-img;
}
@media (min-width: 768px) {
  .ly_grid-2col_img.ly_grid-2col_img__sticky {
    position: relative;
    width: 100%;
    height: 100%;
  }
}

.ly_grid-2col_imgInner img {
  width: 100%;
  height: 100%;

  -o-object-fit: cover;

     object-fit: cover;
}
@media (min-width: 768px) {
  .ly_grid-2col_img.ly_grid-2col_img__sticky .ly_grid-2col_imgInner {
    position: sticky;
    top: max(50lvh - var(--_imgGrid-width) * var(--_imgGrid-aspect-height) / var(--_imgGrid-aspect-width) / 2, var(--_imgGrid-min-top));
    width: 100%;

    aspect-ratio: var(--_imgGrid-aspect-width)/var(--_imgGrid-aspect-height);
  }
}

@media (min-width: 768px) {
  .ly_grid-2col_img__centered.ly_grid-2col_img__sticky .ly_grid-2col_imgInner {
    align-self: center;
    top: var(--_imgGrid-min-top);
  }
}

.ly_section {
  position: relative;

  padding-block-start: 80px;
}
@media (min-width: 768px) {
  .ly_section {
    padding-block-start: 50px;
  }
}

.ly_inner {
  position: relative;

  padding-inline: 1.5rem;
}
@media (min-width: 768px) {
  .ly_inner {
    padding-inline: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .ly_inner {
    max-width: 85rem;

    padding-inline: 5rem;
    margin-inline: auto;
  }
}
@media (max-width: 767.98px) {
  .ly_inner.ly_inner__md {
    padding-inline: 0;
  }
}
@media (max-width: 1023.98px) {
  .ly_inner.ly_inner__lg {
    padding-inline: 0;
  }
}

.bl_lv3Heading {
  position: relative;
  color: var(--bb-recruit-color-gold-dark);
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 1.375rem;
  font-weight: 600;
  line-height: 1.5;

  padding-block-end: 0.5rem;
}
@media (min-width: 768px) {
  .bl_lv3Heading {
    font-size: 2rem;

    padding-block-end: 0.5rem;
  }
}
.bl_lv3Heading::before,
.bl_lv3Heading::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.bl_lv3Heading::before {
  margin-block-end: calc((1 - 1.5) * 0.5em);
}
.bl_lv3Heading::after {
  margin-block-start: calc((1 - 1.5) * 0.5em);
}
.bl_lv3Heading::after {
  content: "";
  position: absolute;
  bottom: 0rem;
  left: 0;
  width: 1.25rem;
  height: 0.125rem;
  background-color: var(--bb-recruit-color-red);
}
@media (min-width: 768px) {
  .bl_lv3Heading::after {
    width: 1.875rem;
  }
}

.bl_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  position: relative;
  min-width: 12.5rem;
  color: var(--bb-recruit-color-black);

  padding-inline-start: 0.625rem;
  padding-block-end: 1.125rem;
  gap: 1rem;
}
@media (min-width: 768px) {
  .bl_btn {
    min-width: 15.375rem;

    padding-block-end: 0.75rem;
  }
}
@media (min-width: 768px) {
  .bl_btn__jp {
    padding-block-end: 1rem;
  }
}
.bl_btn::before {
  content: "";
  display: inline-block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.125rem;
  transition: scale 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: center;
  background-color: var(--bb-recruit-color-black);
}
.bl_btn::after {
  content: "";
  display: inline-block;
  position: relative;
  top: 0.125rem;
  min-width: 0.4375rem;
  height: 1rem;
  transition: translate 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background-color: var(--bb-recruit-color-red);

  -webkit-mask-image: url("/recruit/assets/img/common/icon_arw.svg");

          mask-image: url("/recruit/assets/img/common/icon_arw.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
@media (min-width: 768px) {
  .bl_btn::after {
    top: 0.1875rem;
  }
}
@media (min-width: 768px) {
  .bl_btn__jp .bl_btn::after {
    top: 0rem;
  }
}
.bl_btn[target=_blank]::after {
  min-width: 1rem;
  height: 1rem;

  -webkit-mask-image: url("/recruit/assets/img/common/icon_blank.svg");

          mask-image: url("/recruit/assets/img/common/icon_blank.svg");
}
.bl_btn__arw-left {
  flex-direction: row-reverse;

  padding-inline: 0 0.625rem;
}
.bl_btn__arw-left::after {
  rotate: 180deg;
}
.bl_btn__white {
  color: var(--bb-recruit-color-white);
}
.bl_btn__white::before {
  background-color: var(--bb-recruit-color-white);
}
@media (min-width: 768px) {
  .bl_btn__white:focus-visible {
    color: var(--bb-recruit-color-white);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_btn__white:hover {
    color: var(--bb-recruit-color-white);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_btn__white:hover {
    color: var(--bb-recruit-color-white);
  }
}
.bl_btn__white:visited {
  color: var(--bb-recruit-color-white) !important;
}
.bl_btn__white:active {
  color: var(--bb-recruit-color-white) !important;
}
@media (min-width: 768px) {
  .bl_btn:focus-visible::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    scale: 1.1 1;
  }
  .bl_btn:focus-visible:not([target=_blank])::after {
    transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    translate: 0.25rem 0;
  }
  .bl_btn:focus-visible.bl_btn__arw-left::after {
    transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    translate: -0.25rem 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_btn:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    scale: 1.1 1;
  }
  .bl_btn:hover:not([target=_blank])::after {
    transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    translate: 0.25rem 0;
  }
  .bl_btn:hover.bl_btn__arw-left::after {
    transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    translate: -0.25rem 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_btn:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    scale: 1.1 1;
  }
  .bl_btn:hover:not([target=_blank])::after {
    transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    translate: 0.25rem 0;
  }
  .bl_btn:hover.bl_btn__arw-left::after {
    transition: translate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

    translate: -0.25rem 0;
  }
}

@media (min-width: 768px) {
  .bl_btn__jp::after {
    top: 0.0625rem;
  }
}

.bl_articleCard_list {
  display: grid;

  gap: 2.5rem;
}
@media (min-width: 768px) {
  .bl_articleCard_list {
    grid-template-columns: repeat(auto-fill, minmax(min(18.75rem, 100%), 1fr));
  }
}

.bl_articleCard {
  display: grid;

  --_hover-in-duration: 0.3s;
  --_hover-out-duration: 0.25s;
  --_hover-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.bl_articleCard > a {
  position: relative;
}
.bl_articleCard > a::before {
  content: "New";
  display: none;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 3.25rem;
  height: 1.6875rem;
  background: url(/recruit/assets/img/common/icon_new.svg) no-repeat center/100% auto;
  color: transparent;
}
@media (min-width: 768px) {
  .bl_articleCard > a::before {
    width: 4.1875rem;
    height: 2.125rem;
  }
}
.bl_articleCard > a.is-new::before {
  display: block;
}
@media (min-width: 768px) {
  .bl_articleCard > a:focus-visible .bl_articleCard_img img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_articleCard > a:hover .bl_articleCard_img img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_articleCard > a:hover .bl_articleCard_img img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
}
.bl_articleCard > a[target=_blank] .bl_articleCard_name::after,
.bl_articleCard > a[href$=".pdf"] .bl_articleCard_name::after {
  content: "";
  display: inline-block;
  margin: 0.2em 0 0 0.25em;
  width: 1rem;
  height: 1rem;
  background-color: currentColor;

  -webkit-mask: url(/recruit/assets/img/common/icon_blank.svg) no-repeat center/100% auto;

          mask: url(/recruit/assets/img/common/icon_blank.svg) no-repeat center/100% auto;
}
@media (min-width: 768px) {
  .bl_articleCard > a[target=_blank] .bl_articleCard_name::after,
  .bl_articleCard > a[href$=".pdf"] .bl_articleCard_name::after {
    margin: 0.1em 0 0 0.25em;
  }
}

.bl_articleCard_img {
  overflow: hidden;
  position: relative;
  width: 100%;

  margin-block-end: 0.8125rem;
  aspect-ratio: 994/560;
}
.bl_articleCard_img img {
  width: 100%;
  height: 100%;
  transition: scale var(--_hover-out-duration) var(--_hover-ease);

  -o-object-fit: cover;

     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  backface-visibility: hidden;
}

.bl_articleCard_date {
  font-size: 0.75rem;
  line-height: 1.3;
}

.bl_articleCard_tagList {
  margin-block-start: 0.625rem;
}

.bl_articleCard_name {
  margin-block-start: 0.625rem;
}
@media (min-width: 768px) {
  .bl_articleCard_name {
    font-size: 1.125rem;
  }
}

.bl_profileCard_list {
  display: grid;

  --_step-gap: 1.25rem;
  gap: 1rem 0.625rem;
  grid-template-columns: repeat(2, 1fr);
}
.bl_profileCard_list > :nth-child(2n+1) {
  margin-top: var(--_step-gap);
}
.bl_profileCard_list > :nth-child(2n+2) {
  margin-top: 0;
}
@media (min-width: 768px) {
  .bl_profileCard_list {
    --_step-gap: 2.5rem;
    gap: 0.625rem 2.5rem;
  }
}
@media (min-width: 1024px) {
  .bl_profileCard_list {
    --_step-gap: 1.875rem;
    grid-template-columns: repeat(3, 1fr);
    padding-inline: 3.875rem;
    gap: 0.625rem min(3.4722222222vw, 4.5625rem);
  }
  .bl_profileCard_list > :nth-child(3n+1) {
    margin-top: calc(var(--_step-gap) * 2);
  }
  .bl_profileCard_list > :nth-child(3n+2) {
    margin-top: var(--_step-gap);
  }
  .bl_profileCard_list > :nth-child(3n+3) {
    margin-top: 0;
  }
}

.bl_profileCard {
  display: block;
  width: 100%;
}
@media (min-width: 768px) {
  .bl_profileCard:focus-visible .bl_profileCard_imgBox img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_profileCard:focus-visible .bl_profileCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_profileCard:hover .bl_profileCard_imgBox img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_profileCard:hover .bl_profileCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_profileCard:hover .bl_profileCard_imgBox img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_profileCard:hover .bl_profileCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
.bl_profileCard > a {
  display: flex;
  align-items: center;
  flex-direction: column;
}

.bl_profileCard_bg {
  overflow: hidden;
  position: relative;
  width: 100%;

  aspect-ratio: 27/40;
}
.bl_profileCard_bg > img {
  height: 100%;
}
.bl_profileCard_bg::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: color-mix(in srgb, var(--bb-recruit-color-beige) 20%, transparent);

          backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.bl_profileCard_mask {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  padding: 0.5rem;
  width: 100%;
  height: 100%;
}
@media (min-width: 768px) {
  .bl_profileCard_mask {
    padding: 1rem;
  }
}
.bl_profileCard_mask .bl_profileCard_imgBox {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 100%;

  margin-block: auto;
}
.bl_profileCard_mask .bl_profileCard_imgBox img {
  width: 116%;
  height: 116%;
  transition: scale var(--_hover-out-duration) var(--_hover-ease);

  -o-object-fit: cover;

     object-fit: cover;
  -o-object-position: center top;
     object-position: center top;
  -o-object-position: left calc(50% + 3rem) top 0rem;
     object-position: left calc(50% + 3rem) top 0rem;
}
@media (min-width: 768px) {
  .bl_profileCard_mask .bl_profileCard_imgBox img {
    -o-object-position: left calc(50% + 4.875rem) top 0rem;
       object-position: left calc(50% + 4.875rem) top 0rem;
  }
}

.bl_profileCard_deco {
  position: absolute;
  z-index: 10;
  top: 0.4375rem;
  right: 0.0625rem;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--bb-recruit-color-white);
  text-shadow: 0 0 0.75rem color-mix(in srgb, var(--bb-recruit-color-black) 35%, transparent);
  font-family: var(--bb-recruit-font-family-amethysta);
  font-size: 0.875rem;
  line-height: 1.3;

  writing-mode: vertical-lr;
}
@media (min-width: 768px) {
  .bl_profileCard_deco {
    top: 0.875rem;
    top: 0.625rem;
    right: -0.0625rem;
    font-size: 1.75rem;
  }
}

.bl_profileCard_txtBox {
  text-align: center;

  padding-block: 0.875rem 0.75rem;
}
@media (min-width: 768px) {
  .bl_profileCard_txtBox {
    padding-block: 1.25rem 0.875rem;
  }
}
.bl_profileCard_txtBox > *:first-child {
  margin-block-start: 0;
}
.bl_profileCard_txtBox .bl_profileCard_ttl {
  font-size: 0.8125rem;
  font-weight: 600;
}
@media (min-width: 768px) {
  .bl_profileCard_txtBox .bl_profileCard_ttl {
    font-size: 1.375rem;
  }
}
.bl_profileCard_txtBox .bl_profileCard_info {
  font-size: 0.625rem;
}
@media (min-width: 768px) {
  .bl_profileCard_txtBox .bl_profileCard_info {
    font-size: 1rem;
  }
}

.bl_profileCard_job {
  margin-top: 0.3125rem;
  font-size: 0.75rem;
  font-weight: 500;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .bl_profileCard_job {
    margin-top: 0.375rem;
    font-size: 1.125rem;
  }
}

.bl_profileCard_info {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0.3125rem;

  gap: 0.625rem;
}
@media (min-width: 768px) {
  .bl_profileCard_info {
    margin-top: 0.375rem;
  }
}
.bl_profileCard_info .bl_profileCard_info-initial {
  display: flex;
  align-items: center;
  position: relative;

  gap: 0.625rem;
}
.bl_profileCard_info .bl_profileCard_info-initial::after {
  content: "";
  display: inline-block;
  position: relative;
  bottom: -0.0625rem;
  width: 0.0625rem;
  height: 1em;
  background-color: currentColor;
}

.bl_profileCard_noResults {
  margin-block-start: 3.125rem;
}
@media (min-width: 768px) {
  .bl_profileCard_noResults {
    text-align: center;

    margin-block-start: 5rem;
  }
}

.bl_peopleCard {
  display: block;
  overflow: hidden;
  overflow: hidden;
  position: relative;
  width: 100%;

  --_hover-in-duration: 0.3s;
  --_hover-out-duration: 0.25s;
  --_hover-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  aspect-ratio: 304/550;
}
.bl_peopleCard > img {
  width: 214%;
  height: 102%;

  -o-object-fit: cover;

     object-fit: cover;
  -o-object-position: 26.3% 0;
     object-position: 26.3% 0;
  translate: 0% -1.2%;
}
.bl_peopleCard {
  z-index: 1;
}
@media (min-width: 768px) {
  .bl_peopleCard:focus-visible .bl_peopleCard_imgBox img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_peopleCard:focus-visible .bl_peopleCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_peopleCard:hover .bl_peopleCard_imgBox img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_peopleCard:hover .bl_peopleCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_peopleCard:hover .bl_peopleCard_imgBox img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_peopleCard:hover .bl_peopleCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
.bl_peopleCard > img {
  position: absolute;
  z-index: -2;
  width: 100%;
}
.bl_peopleCard::after {
  content: "";
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: color-mix(in srgb, var(--bb-recruit-color-beige) 20%, transparent);

          backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
}

.bl_peopleCard_inner {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  position: relative;
  padding: 2.8125rem 1.5rem;
  width: 100%;
  height: 100%;

  padding-inline: 1.5rem;
}
.bl_peopleCard_inner .bl_peopleCard_imgBox {
  overflow: hidden;
  overflow: hidden;
  position: absolute;
  width: 100%;

  margin-block: auto;
  -o-object-fit: cover;
     object-fit: cover;
  aspect-ratio: 304/550;
}
.bl_peopleCard_inner .bl_peopleCard_imgBox > img {
  width: 214%;
  height: 102%;

  -o-object-fit: cover;

     object-fit: cover;
  -o-object-position: 26.3% 0;
     object-position: 26.3% 0;
  translate: 0% -1.2%;
}
.bl_peopleCard_inner .bl_peopleCard_imgBox {
  width: calc(100% - 3rem);
}
.bl_peopleCard_inner .bl_peopleCard_imgBox::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(180deg, transparent 0%, transparent 50%, rgba(0, 0, 0, 0.7) 65%, rgb(0, 0, 0) 90%);
}
.bl_peopleCard_inner .bl_peopleCard_imgBox img {
  transition: scale var(--_hover-out-duration) var(--_hover-ease);
}

.bl_peopleCard_txtBox {
  position: relative;
  z-index: 1;
  color: var(--bb-recruit-color-white);

  padding-inline: 0.75rem;
  padding-block-end: 1.5rem;
}
.bl_peopleCard_txtBox p {
  text-align: center;
}
.bl_peopleCard_txtBox p:nth-child(2) {
  margin-block-start: 0.625rem;
}
@media (min-width: 768px) {
  .bl_peopleCard_txtBox p:nth-child(2) {
    margin-block-start: 0.875rem;
  }
}
.bl_peopleCard_txtBox p:nth-child(3) {
  margin-block-start: 0.375rem;
}
@media (min-width: 768px) {
  .bl_peopleCard_txtBox p:nth-child(3) {
    margin-block-start: 0.125rem;
  }
}

.bl_peopleCard_info {
  display: flex;
  align-items: center;
  justify-content: center;

  gap: 0.625rem;
}
.bl_peopleCard_info span:first-child {
  display: flex;
  align-items: center;
  position: relative;

  gap: 0.625rem;
}
.bl_peopleCard_info span:first-child::after {
  content: "";
  display: inline-block;
  position: relative;
  bottom: 0rem;
  width: 0.0625rem;
  height: 1.21875rem;
  background-color: var(--bb-recruit-color-white);
}

.bl_peopleCard_btn {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 0.875rem;
  line-height: 1.3;

  margin-block-start: 0.375rem;
  gap: 0.4375rem;
  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .bl_peopleCard_btn {
    font-size: 1rem;

    margin-block-start: 0.375rem;
    gap: 0.5rem;
  }
}
.bl_peopleCard_btn::after {
  content: "";
  display: block;
  width: 0.375rem;
  height: 0.8125rem;
  transition: translate var(--_hover-out-duration) var(--_hover-ease);
  background-image: url("/recruit/assets/img/common/icon_arw.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;

  margin-block-start: 0.1875rem;
}
@media (min-width: 768px) {
  .bl_peopleCard_btn::after {
    width: 0.4375rem;
    height: 1rem;

    margin-block-start: 0.0125rem;
  }
}

.bl_peopleCard_deco {
  overflow: hidden;
  position: absolute;
  z-index: 0;
  top: 0.875rem;
  right: 0.375rem;
  max-width: 4.375rem;
  max-height: 60%;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--bb-recruit-color-white);
  text-shadow: 0 0 0.75rem color-mix(in srgb, var(--bb-recruit-color-black) 35%, transparent);
  font-family: var(--bb-recruit-font-family-amethysta);
  font-size: 1.570625rem;

  writing-mode: vertical-rl;
}
@media (min-width: 768px) {
  .bl_peopleCard_deco {
    top: 1.625rem;
    right: 0;
    max-width: 5rem;
    font-size: 1.75rem;
  }
}

.bl_relatedCard_list {
  display: grid;

  --_gap: 1.5rem;
  grid-template-columns: 100%;
  gap: var(--_gap);
}
@media (min-width: 768px) {
  .bl_relatedCard_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media (min-width: 1024px) {
  .bl_relatedCard_list {
    display: grid;

    --_gap: 2.5rem;
    grid-template-columns: repeat(3, 1fr);
  }
}

.bl_relatedCard_item {
  width: 100%;
}
@media (min-width: 768px) {
  .bl_relatedCard_item {
    max-width: calc((100% - var(--_gap)) / 2);
  }
}
@media (min-width: 1024px) {
  .bl_relatedCard_item {
    max-width: 23.3125rem;
  }
}

.bl_relatedCard {
  display: grid;
  position: relative;
  width: 100%;

  --_anchor-point: 3.8125rem;
  --_hover-in-duration: 0.3s;
  --_hover-out-duration: 0.25s;
  --_hover-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  aspect-ratio: 1;
  clip-path: polygon(var(--_anchor-point) 0%, 100% 0%, 100% calc(100% - var(--_anchor-point)), calc(100% - var(--_anchor-point)) 100%, 0% 100%, 0% var(--_anchor-point));
}
@media (min-width: 768px) {
  .bl_relatedCard {
    --_anchor-point: 4.5625rem;
  }
}
@media (min-width: 768px) {
  .bl_relatedCard:focus-visible .bl_relatedCard_img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_relatedCard:focus-visible .bl_relatedCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_relatedCard:hover .bl_relatedCard_img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_relatedCard:hover .bl_relatedCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_relatedCard:hover .bl_relatedCard_img {
    transition: scale var(--_hover-in-duration) var(--_hover-ease);

    scale: 1.05;
  }
  .bl_relatedCard:hover .bl_relatedCard_btn::after {
    transition: translate var(--_hover-in-duration) var(--_hover-ease);

    translate: 0.25rem 0;
  }
}
@media (min-width: 768px) {
  .bl_relatedCard[target=_blank]:focus-visible .bl_relatedCard_btn::after,
  .bl_relatedCard[href$=".pdf"]:focus-visible .bl_relatedCard_btn::after {
    translate: 0;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_relatedCard[target=_blank]:hover .bl_relatedCard_btn::after,
  .bl_relatedCard[href$=".pdf"]:hover .bl_relatedCard_btn::after {
    translate: 0;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_relatedCard[target=_blank]:hover .bl_relatedCard_btn::after,
  .bl_relatedCard[href$=".pdf"]:hover .bl_relatedCard_btn::after {
    translate: 0;
  }
}

.bl_relatedCard_img {
  z-index: -1;
  width: 100%;
  height: 100%;
  transition: scale var(--_hover-out-duration) var(--_hover-ease);

  grid-area: 1/-1;
  aspect-ratio: 1;
}
@media (min-width: 768px) {
  .bl_relatedCard_img {
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.bl_relatedCard_img::before {
  content: "";
  opacity: 0.8;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 62.82%;
  background-image: linear-gradient(to bottom, transparent 0%, color-mix(in srgb, #322b27 30%, transparent 70%) 20%, #322b27 100%);
}
@media (min-width: 768px) {
  .bl_relatedCard_img::before {
    height: 73.27%;
  }
}
.bl_relatedCard_img img {
  width: 100%;
}

.bl_relatedCard_cont {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  position: absolute;
  bottom: 0;
  padding: 0 var(--_anchor-point) 1.25rem 1.25rem;
  width: 100%;
  color: var(--bb-recruit-font-color-white);

  gap: 0.5rem;
}
@media (min-width: 768px) {
  .bl_relatedCard_cont {
    padding: 0 var(--_anchor-point) 1.25rem 1.5rem;

    gap: 0.625rem;
  }
}
.bl_relatedCard_cont:has(.bl_relatedCard_txt) {
  align-items: flex-start;
  flex-direction: column;
}

.bl_relatedCard_name {
  display: block;
  min-width: 13ch;
  font-size: 1.125rem;
  font-weight: 500;

  margin-block: calc((1em - 1lh) / 2);
}

.bl_relatedCard_txtBox {
  display: grid;
  align-items: center;
}

.bl_relatedCard_txt {
  line-height: 1.6;
}
.bl_relatedCard_txt:is(.bl_relatedCard_name + *) {
  margin-top: 0.3125rem;
}
@media (min-width: 768px) {
  .bl_relatedCard_txt:is(.bl_relatedCard_name + *) {
    margin-top: 0.125rem;
  }
}

.bl_relatedCard_btn {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: flex-end;
  position: relative;
  top: -0.1em;
  margin-left: auto;
  font-family: var(--bb-recruit-font-family-en-norman);
  line-height: 1.3;

  gap: 0.41875rem;
  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .bl_relatedCard_btn {
    top: 0;
    font-size: 1rem;

    gap: 0.5rem;
  }
}
.bl_relatedCard_btn::after {
  content: "";
  display: block;
  position: relative;
  bottom: -0.12em;
  width: 0.375rem;
  height: 0.8125rem;
  transition: translate var(--_hover-out-duration) var(--_hover-ease);
  background-image: url("/recruit/assets/img/common/icon_arw.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
@media (min-width: 768px) {
  .bl_relatedCard_btn::after {
    width: 0.4375rem;
    height: 1rem;
  }
}
.bl_relatedCard[target=_blank] .bl_relatedCard_btn::after,
.bl_relatedCard[href$=".pdf"] .bl_relatedCard_btn::after {
  content: "";
  bottom: 0;
  width: 1rem;
  height: 1rem;
  background-color: var(--bb-recruit-color-red);

  -webkit-mask: url(/recruit/assets/img/common/icon_blank.svg) no-repeat center/100% auto;

          mask: url(/recruit/assets/img/common/icon_blank.svg) no-repeat center/100% auto;
}
.bl_breadCrumb_area {
  position: relative;
  z-index: 1;
  margin: -0.1875rem;

  --_gap: 0.75rem;
}
@media (min-width: 768px) {
  .bl_breadCrumb_area {
    --_gap: 0.9375rem;
  }
}

.bl_breadCrumb {
  padding-block-start: 1.125rem;
}
@media (min-width: 768px) {
  .bl_breadCrumb {
    padding-block-start: 1.375rem;
  }
}

.bl_breadCrumb_list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;

  gap: 0.1875rem var(--_gap);
}

.bl_breadCrumb_item {
  position: relative;
}
.bl_breadCrumb_item:last-of-type .bl_breadCrumb_item_link::after {
  display: none;
}
.bl_breadCrumb_item > a,
.bl_breadCrumb_item > span {
  display: block;
  position: relative;
  padding: 0.1875rem;
}
.bl_breadCrumb_item > a::before {
  content: "";
  position: absolute;
  bottom: 0.125rem;
  left: 50%;
  width: calc(100% - 0.375rem);
  height: 0.0625rem;
  transition: scale 0.2s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: right;
  background-color: var(--bb-recruit-color-black);

  translate: -50% 0;
  scale: 0;
}
@media (min-width: 768px) {
  .bl_breadCrumb_item > a:focus-visible::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_breadCrumb_item > a:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_breadCrumb_item > a:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: left;

    scale: 1;
  }
}

.bl_breadCrumb_item_link {
  position: relative;
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .bl_breadCrumb_item_link {
    font-size: 0.75rem;
  }
}
.bl_breadCrumb_item_link.bl_breadCrumb_item_link__upperCase {
  text-transform: uppercase;
}
.bl_breadCrumb_item_link::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: calc(-1 * var(--_gap) / 2);
  width: 0.3125rem;
  height: 0.6875rem;
  background-color: currentColor;

  translate: 50% -50%;
  -webkit-mask-image: url(/recruit/assets/img/common/icon_arw.svg);
          mask-image: url(/recruit/assets/img/common/icon_arw.svg);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: 100% auto;
          mask-size: 100% auto;
}

.bl_pagination {
  display: grid;
  align-items: center;
  justify-content: center;

  --_arw-size: 1.75rem;
  --_arw-size: 0.8125rem;
  --_hover-in-duration: 0.3s;
  --_hover-out-duration: 0.25s;
  --_hover-ease: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  grid-template: "arrow-prev pager arrow-next" auto/var(--_arw-size) max-content var(--_arw-size);
  -moz-column-gap: 2.75rem;
       column-gap: 2.75rem;
  margin-block-start: 4.625rem;
}
@media (min-width: 768px) {
  .bl_pagination {
    --_arw-size: 1.375rem;
    margin-block-start: 5rem;
  }
}

.bl_pagination_arw {
  display: inline-grid;
  position: relative;
  width: var(--_arw-size);
  height: 1.75rem;
  transition: transform var(--_hover-out-duration) var(--_hover-ease);
  background: url(/recruit/assets/img/common/icon_arw.svg) no-repeat center/100% auto;

  place-content: center;
}
.bl_pagination_arw::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.75rem;
  height: 2.75rem;

  translate: -50% -50%;
}
@media (min-width: 768px) {
  .bl_pagination_arw {
    height: 2.75rem;
  }
}
@media (min-width: 768px) {
  .bl_pagination_arw:focus-visible {
    transition: transform var(--_hover-in-duration) var(--_hover-ease);
    transform: translateX(0.25rem);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_pagination_arw:hover {
    transition: transform var(--_hover-in-duration) var(--_hover-ease);
    transform: translateX(0.25rem);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_pagination_arw:hover {
    transition: transform var(--_hover-in-duration) var(--_hover-ease);
    transform: translateX(0.25rem);
  }
}
.bl_pagination_arw.bl_pagination_arw__prev {
  rotate: -180deg;
}
@media (min-width: 768px) {
  .bl_pagination_arw.bl_pagination_arw__prev:focus-visible {
    transition: transform var(--_hover-in-duration) var(--_hover-ease);
    transform: translateX(-rem(4));
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_pagination_arw.bl_pagination_arw__prev:hover {
    transition: transform var(--_hover-in-duration) var(--_hover-ease);
    transform: translateX(-rem(4));
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_pagination_arw.bl_pagination_arw__prev:hover {
    transition: transform var(--_hover-in-duration) var(--_hover-ease);
    transform: translateX(-rem(4));
  }
}

.bl_pagerList {
  display: flex;
  align-items: center;
  justify-content: center;

  -moz-column-gap: 0.75rem;

       column-gap: 0.75rem;
}
@media (min-width: 768px) {
  .bl_pagerList {
    -moz-column-gap: 0.5rem;
         column-gap: 0.5rem;
  }
}

.bl_pager {
  font-family: var(--bb-recruit-font-family-en-din);
  font-size: 1.5rem;
  line-height: 1;

  --_padding: 0.33em;
}
.bl_pager > button {
  display: block;
  position: relative;
  padding: var(--_padding);
  cursor: pointer;
}
.bl_pager > button::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  width: calc(100% - var(--_padding) * 2 + 0.25rem);
  height: 0.125rem;
  transition: color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  transform-origin: right;
  background-color: currentColor;

  translate: -50% 0;
  scale: 0 1;
}
@media (min-width: 768px) {
  .bl_pager > button:focus-visible {
    transition: color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    color: var(--bb-recruit-color-gold-dark);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_pager > button:hover {
    transition: color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    color: var(--bb-recruit-color-gold-dark);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_pager > button:hover {
    transition: color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    color: var(--bb-recruit-color-gold-dark);
  }
}
.bl_pager > button[aria-current=page] {
  pointer-events: none;
  font-weight: 700;
}
.bl_pager > button[aria-current=page]::before {
  transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: left;

  scale: 1;
}

.bl_filterList {
  display: grid;

  row-gap: 1.25rem;
}
@media (min-width: 768px) {
  .bl_filterList {
    grid-template-columns: max-content 1fr;
    row-gap: 1.5rem;
  }
}

.bl_filterDesc {
  display: flex;
  flex-direction: column;

  --_gap: 0.75rem;
  gap: var(--_gap);
}
@media (min-width: 768px) {
  .bl_filterDesc {
    display: grid;

    --_gap: 2.9375rem;
    grid-template-columns: subgrid;
    grid-column: span 2;
  }
}
@media (max-width: 767.98px) {
  .bl_filterDesc.bl_filterDesc__clear {
    justify-self: end;
  }
}
.bl_filterDesc.bl_filterDesc__clear .bl_filterDesc_ttl::before {
  display: none;
}

.bl_filterDesc_ttl {
  position: relative;
  color: var(--bb-recruit-color-gold-dark);
  font-weight: 500;

  --_half-leading: calc((1em - 1lh) / 2);
}
@media (min-width: 768px) {
  .bl_filterDesc_ttl {
    text-align: center;
    font-size: 1.125rem;

    padding-block: 0.625rem;
    text-box: trim-both text text;
  }
}
.bl_filterDesc_ttl::before {
  content: "";
  display: none;
}
@media (min-width: 768px) {
  .bl_filterDesc_ttl::before {
    display: block;
    position: absolute;
    top: 50%;
    right: calc(-1 * var(--_gap) / 2);
    width: 0.0625rem;
    height: calc(100% + var(--_half-leading) * 2 - 0.625rem);
    background-color: var(--bb-recruit-color-logo);

    translate: 0 -50%;
  }
}
.bl_filterDesc_ttl[aria-hidden=true] {
  height: 0;
}

.bl_filterTag_list {
  display: flex;
  flex-wrap: wrap;

  gap: 0.75rem 0.3125rem;
}
@media (min-width: 768px) {
  .bl_filterTag_list {
    gap: 1rem;
  }
}

.bl_check {
  display: inline-grid;
  padding: 0.8125rem 1.25rem;
  border-radius: 999px;
  cursor: pointer;
  transition: background-color 0.15s cubic-bezier(0.39, 0.575, 0.565, 1);
  background-color: var(--bb-recruit-color-white);

  place-content: center;
}
@media (min-width: 768px) {
  .bl_check {
    padding: 0.625rem 1.5rem;
  }
}
.bl_check:has(input[type=checkbox]:checked) {
  background-color: var(--bb-recruit-color-gold);
}
@media (min-width: 768px) {
  .bl_check:focus-visible {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    background-color: var(--bb-recruit-color-gold);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_check:hover {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    background-color: var(--bb-recruit-color-gold);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_check:hover {
    transition: background-color 0.3s cubic-bezier(0.39, 0.575, 0.565, 1);
    background-color: var(--bb-recruit-color-gold);
  }
}

.bl_check_label {
  font-weight: 500;

  text-box: trim-both text text;
}

.bl_filterForm_clear {
  position: relative;
  cursor: pointer;
  color: var(--bb-recruit-color-gold-dark);
  font-weight: 600;
}
.bl_filterForm_clear::before {
  content: "";
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 0.0625rem;
  transition: scale 0.15s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: left;
  background-color: currentColor;

  scale: 1;
}
@media (min-width: 768px) {
  .bl_filterForm_clear:focus-visible::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: right;

    scale: 0 1;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_filterForm_clear:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: right;

    scale: 0 1;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_filterForm_clear:hover::before {
    transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transform-origin: right;

    scale: 0 1;
  }
}

.el_tag_list {
  display: flex;
  flex-wrap: wrap;

  gap: 0.5rem;
}

.el_tag {
  display: inline-grid;
  padding: 0.25rem 1rem;
  border-radius: 999px;
  background-color: var(--bb-recruit-color-white);
  font-size: 0.625rem;
  font-weight: 400;
  line-height: 1.3;

  place-content: center;
  text-box: trim-both text text;
}
@media (min-width: 768px) {
  .el_tag {
    padding: 0.25rem 1rem;
    font-size: 0.75rem;
  }
}

.bl_lv2KvHeading {
  display: flex;
  flex-direction: column-reverse;

  --_gap: 2.5rem;
  gap: var(--_gap);
}
@media (min-width: 768px) {
  .bl_lv2KvHeading {
    --_gap: 2.75rem;
  }
}
.bl_lv2KvHeading__sm {
  --_gap: 1.25rem;
}
@media (min-width: 768px) {
  .bl_lv2KvHeading__sm {
    --_gap: 3.125rem;
  }
}

.bl_lv2KvHeading_txt {
  position: relative;
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 1.25rem;
  font-weight: 600;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .bl_lv2KvHeading_txt {
    font-size: 1.5rem;
  }
}
.bl_lv2KvHeading_txt::before,
.bl_lv2KvHeading_txt::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.bl_lv2KvHeading_txt::before {
  margin-block-end: calc((1 - 1.5) * 0.5em);
}
.bl_lv2KvHeading_txt::after {
  margin-block-start: calc((1 - 1.5) * 0.5em);
}
.bl_lv2KvHeading__sm .bl_lv2KvHeading_txt {
  font-size: 2.25rem;
}
@media (min-width: 768px) {
  .bl_lv2KvHeading__sm .bl_lv2KvHeading_txt {
    font-size: 3.125rem;
  }
}
.bl_lv2KvHeading_txt::before {
  content: "";
  position: absolute;
  top: calc(-1 * (var(--_gap) / 2 + (1em - 1lh) / 2));
  left: 0;
  width: 1.875rem;
  height: 0.125rem;
  background-color: var(--bb-recruit-color-red);

  translate: 0 -50%;
}
@media (min-width: 768px) {
  .bl_lv2KvHeading_txt::before {
    width: 3.125rem;
  }
}

.bl_lv2KvHeading_txtEn {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 3rem;
  line-height: 1.2;

  font-variation-settings: "wght" 700;
  font-synthesis: none;
}
@media (min-width: 768px) {
  .bl_lv2KvHeading_txtEn {
    font-size: 6.875rem;
  }
}
.bl_lv2KvHeading__sm .bl_lv2KvHeading_txtEn {
  font-size: 1.375rem;
}
@media (min-width: 768px) {
  .bl_lv2KvHeading__sm .bl_lv2KvHeading_txtEn {
    font-size: 1.75rem;
  }
}

.bl_lv3Kv_container {
  margin-block: 0.4375rem 0;
}
@media (min-width: 1024px) {
  .bl_lv3Kv_container {
    margin-block: 5.1875rem min(10.2083333333vw, 9.1875rem);
  }
}
@media (max-width: 1023.98px) {
  .bl_lv3Kv_container:not(:has(.bl_lv3KvImg)) {
    margin-block-start: 2.5rem;
  }
}
@media (min-width: 1024px) {
  .bl_lv3Kv_container:not(:has(.bl_lv3KvImg)) {
    margin-block-end: 0;
  }
}

.bl_lv3Kv {
  position: relative;
  z-index: -1;
  width: calc(100vw - 1.5rem);

  margin-block-end: 1.75rem;
}
@media (min-width: 1024px) {
  .bl_lv3Kv {
    position: absolute;
    top: max(-2.2222222222vw, -2rem);
    right: max(-3.0555555556vw, -2.75rem);
    width: min(60.2326388889vw, 54.209375rem);

    margin-block-end: 0;
  }
}
@media screen and (min-width: 1280px) {
  .bl_lv3Kv {
    width: min(63.4027777778vw, 57.0625rem);
  }
}

.bl_lv3KvImg {
  position: relative;
  width: 100%;

  aspect-ratio: 336/122;
}
@media (min-width: 768px) {
  .bl_lv3KvImg {
    aspect-ratio: 913/334;
  }
}
@media (min-width: 1024px) {
  .bl_lv3KvImg {
    top: -0.9375rem;
  }
}
.bl_lv3KvImg span {
  display: none;
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
}
.bl_lv3KvImg span:nth-child(1) {
  display: block;

  clip-path: polygon(0% 34.43%, 7.67% 34.43%, 7.67% 89.92%, 0% 89.92%);
  translate: -0.4rem 0;
}
@media (max-width: 767.98px) {
  .bl_lv3KvImg span:nth-child(1) {
    translate: -0.35rem 0;
  }
}
.bl_lv3KvImg span:nth-child(2) {
  display: block;

  clip-path: polygon(8.06% 17.86%, 21.14% 17.86%, 21.14% 100%, 8.06% 100%);
  translate: -0.3rem 0;
}
@media (max-width: 767.98px) {
  .bl_lv3KvImg span:nth-child(2) {
    translate: -0.25rem 0;
  }
}
.bl_lv3KvImg span:nth-child(3) {
  display: block;

  clip-path: polygon(21.53% 31.54%, 40.53% 31.54%, 40.53% 95.01%, 21.53% 95.01%);
  translate: -0.2rem 0;
}
@media (max-width: 767.98px) {
  .bl_lv3KvImg span:nth-child(3) {
    translate: -0.15rem 0;
  }
}
.bl_lv3KvImg span:nth-child(4) {
  display: block;

  clip-path: polygon(40.92% 0%, 89.08% 0%, 89.08% 100%, 40.92% 100%);
}
.bl_lv3KvImg span:nth-child(5) {
  display: block;

  clip-path: polygon(89.38% 29.64%, 100% 29.64%, 100% 94.01%, 89.38% 94.01%);
  translate: 0.2rem 0;
}
@media (max-width: 767.98px) {
  .bl_lv3KvImg span:nth-child(5) {
    translate: 0.15rem 0;
  }
}

.bl_lv3KvHeading {
  display: flex;
  flex-direction: column-reverse;

  --_gap: 1.5rem;
  gap: var(--_gap);
}
@media (min-width: 768px) {
  .bl_lv3KvHeading {
    --_gap: 2.75rem;
  }
}

.bl_lv3KvHeading_txt {
  position: relative;
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 2.25rem;
  font-weight: 600;
  line-height: 1.5;
}
@media (min-width: 768px) {
  .bl_lv3KvHeading_txt {
    font-size: 3.125rem;
  }
}
.bl_lv3KvHeading_txt::before,
.bl_lv3KvHeading_txt::after {
  content: "";
  display: block;

  inline-size: 0;
  block-size: 1px;
}
.bl_lv3KvHeading_txt::before {
  margin-block-end: calc((1 - 1.5) * 0.5em);
}
.bl_lv3KvHeading_txt::after {
  margin-block-start: calc((1 - 1.5) * 0.5em);
}
.bl_lv3KvHeading_txt::before {
  content: "";
  position: absolute;
  top: calc(-1 * (var(--_gap) / 2 + (1em - 1lh) / 2 + 0.375rem));
  left: 0;
  width: 1.875rem;
  height: 0.125rem;
  background-color: var(--bb-recruit-color-red);

  translate: 0 -50%;
}
@media (min-width: 768px) {
  .bl_lv3KvHeading_txt::before {
    top: calc(-1 * (var(--_gap) / 2 + (1em - 1lh) / 2 + 0.5rem));
    width: 3.125rem;
  }
}

.bl_lv3KvHeading_txtEn {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 1.375rem;
  line-height: 1.2;

  font-variation-settings: "wght" 800;
  font-synthesis: none;
}
@media (min-width: 768px) {
  .bl_lv3KvHeading_txtEn {
    font-size: 1.75rem;
  }
}

.bl_articleBlock p,
.bl_articleBlock ul,
.bl_articleBlock a {
  margin-block-start: 0.5rem;
}
@media (min-width: 768px) {
  .bl_articleBlock p,
  .bl_articleBlock ul,
  .bl_articleBlock a {
    margin-block-start: 0.75rem;
  }
}
.bl_articleBlock *:first-child {
  margin-block-start: 0;
}
.bl_articleBlock a {
  transition: opacity var(--_hover-out-duration) var(--_hover-ease);
  text-decoration: underline;
  color: var(--bb-recruit-color-gold-dark);
}
@media (min-width: 768px) {
  .bl_articleBlock a:focus-visible {
    opacity: 0.8;
    transition: opacity var(--_hover-in-duration) var(--_hover-ease);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_articleBlock a:hover {
    opacity: 0.8;
    transition: opacity var(--_hover-in-duration) var(--_hover-ease);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_articleBlock a:hover {
    opacity: 0.8;
    transition: opacity var(--_hover-in-duration) var(--_hover-ease);
  }
}
.bl_articleBlock ul {
  list-style: disc;

  padding-inline-start: 1.5rem;
}
@media (min-width: 768px) {
  .bl_articleBlock ul {
    padding-inline-start: 1.625rem;
  }
}
.bl_articleBlock b {
  font-weight: 600;
}
.bl_articleBlock__border {
  padding: 1.5rem;
  border: 1px solid var(--bb-recruit-color-beige-dark);
  width: 100%;
}
@media (min-width: 768px) {
  .bl_articleBlock__border {
    padding: 2rem;
  }
}

.bl_articleBlock_heading {
  color: var(--bb-recruit-color-gold-dark);
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 1.25rem;
  font-weight: 600;

  padding-block-start: 0.375rem;
  text-box-trim: trim-start;
}
@media (min-width: 768px) {
  .bl_articleBlock_heading {
    font-size: 1.5rem;

    padding-block-start: 0.375rem;
  }
}

.bl_articleBlock_heading + p,
.bl_articleBlock_heading + ul,
.bl_articleBlock_heading + a {
  margin-block-start: 1rem;
}
@media (min-width: 768px) {
  .bl_articleBlock_heading + p,
  .bl_articleBlock_heading + ul,
  .bl_articleBlock_heading + a {
    margin-block-start: 1.5rem;
  }
}

.bl_articleBlock_lv2Heading {
  font-size: 1rem;
  font-weight: 600;

  padding-block-start: 0.1875rem;
  margin-block-start: 1rem;
}
@media (min-width: 768px) {
  .bl_articleBlock_lv2Heading {
    font-size: 1.125rem;

    padding-block-start: 0.25rem;
    margin-block-start: 1.5rem;
  }
}

@keyframes ankerSkewHover {
  0% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0% 0%);
  }
  100% {
    clip-path: polygon(var(--_anchor-skew-h) 0%, 100% 0%, 100% calc(100% - var(--_anchor-skew-h)), calc(100% - var(--_anchor-skew-h)) 100%, 0% 100%, 0% var(--_anchor-skew-h));
  }
}
@keyframes ankerSkewOut {
  0% {
    clip-path: polygon(var(--_anchor-skew-h) 0%, 100% 0%, 100% calc(100% - var(--_anchor-skew-h)), calc(100% - var(--_anchor-skew-h)) 100%, 0% 100%, 0% var(--_anchor-skew-h));
  }
  100% {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 100% 100%, 0% 100%, 0% 0%);
  }
}
.bl_anchor_desc {
  display: grid;

  --_gap: 2.375rem;
  gap: var(--_gap);
}
@media (min-width: 768px) {
  .bl_anchor_desc {
    --_gap: 3rem;
    grid-template-columns: 18.5ch 1fr;
  }
}
.bl_anchor_desc + .bl_anchor_desc {
  margin-block-start: 2.375rem;
}
@media (min-width: 768px) {
  .bl_anchor_desc + .bl_anchor_desc {
    margin-block-start: 1.5rem;
  }
}

.bl_anchor_descName {
  position: relative;
  text-align: center;
}
@media (min-width: 768px) {
  .bl_anchor_descName {
    text-align: left;
  }
}
.bl_anchor_descName::before {
  content: "";
  position: absolute;
  right: 50%;
  bottom: calc(-1 * var(--_gap) / 2 - (1em - 1lh) / 2);
  width: 2.5rem;
  height: 0.0625rem;
  background-color: var(--bb-recruit-font-color);

  translate: 50% 0;
}
@media (min-width: 768px) {
  .bl_anchor_descName::before {
    top: 0.8125rem;
    right: calc(-1 * var(--_gap) / 2);
    bottom: auto;
    width: 0.0625rem;
    height: 1.75rem;

    translate: 0 0;
  }
}

@media (min-width: 768px) {
  .bl_anchor_descCont .bl_anchorList {
    grid-template-columns: repeat(auto-fill, minmax(10.1875rem, 1fr));
    gap: 1.5rem;
  }
}

.bl_anchorList {
  display: grid;

  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media (min-width: 768px) {
  .bl_anchorList {
    grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr));
    gap: 2.5rem;
  }
}

.bl_anchor {
  --_anchor-skew-h: 12px;
}
.bl_anchor > a[href^="#"] {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  position: relative;
  padding: 0.625rem 0.375rem 0.1875rem;
  min-height: 2.6875rem;
  animation: ankerSkewOut 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) both;
  background-color: var(--bb-recruit-font-color-gold);
  text-align: center;
}
@media (min-width: 768px) {
  .bl_anchor > a[href^="#"] {
    padding: 0.625rem 0.5rem 0.1875rem;
    min-height: 3.125rem;
  }
}
.bl_anchor > a[href^="#"]::after {
  content: "";
  display: block;
  transition: translate 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background-color: currentColor;

  rotate: 90deg;
  margin-block-start: 0.125rem;
  block-size: 0.875rem;
  inline-size: 0.5rem;
  -webkit-mask-image: url("/recruit/assets/img/common/icon_arw.svg");
          mask-image: url("/recruit/assets/img/common/icon_arw.svg");
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}
@media (min-width: 768px) {
  .bl_anchor > a[href^="#"]:focus-visible {
    animation: ankerSkewHover 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) both;
  }
  .bl_anchor > a[href^="#"]:focus-visible::after {
    translate: 0 0.125rem;
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_anchor > a[href^="#"]:hover {
    animation: ankerSkewHover 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) both;
  }
  .bl_anchor > a[href^="#"]:hover::after {
    translate: 0 0.125rem;
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_anchor > a[href^="#"]:hover {
    animation: ankerSkewHover 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) both;
  }
  .bl_anchor > a[href^="#"]:hover::after {
    translate: 0 0.125rem;
  }
}

.bl_anchorName_en {
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-size: 0.5rem;
  line-height: 1.3;
}

.bl_tabSelected_name {
  font-size: 0.875rem;

  margin-block-end: 0.5rem;
}

.bl_tabContainer {
  position: relative;
}

.bl_tabList {
  display: flex;
  flex-direction: column;
  position: absolute;
  width: 100%;
  transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);

  --_tablist-gap: 0.125rem;
  gap: var(--_tablist-gap);
  margin-block-start: calc(-1 * (0.625rem - var(--_tablist-gap)));
}
@media (min-width: 768px) {
  .bl_tabList {
    flex-direction: row;
    position: static;

    --_tablist-gap: 0.25rem;
  }
}
.bl_tabList.is-hidden {
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.25s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.bl_tab {
  display: inline-grid;
  width: 100%;
  min-height: 3.25rem;
  cursor: pointer;
  transition: background-color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  background-color: var(--bb-recruit-color-gold);

  place-content: center;
  scroll-margin-block-start: 10rem;
}
.bl_tab:focus-visible {
  outline: none;
}
@media (min-width: 768px) {
  .bl_tab {
    flex-basis: calc((100% - var(--_tablist-gap) * 4) / 5);

    scroll-margin-block-start: 7.5rem;
    padding-inline: 0.5rem;
  }
}
.bl_tab[aria-selected=true] {
  background-color: var(--bb-recruit-bg-color);
  pointer-events: none;
}
@media (max-width: 767.98px) {
  .bl_tab[aria-selected=true] {
    overflow: hidden;
    clip: rect(0 0 0 0);
    position: absolute;
    border: 0;
    height: 0;
    min-height: 0;
  }
}
.bl_tab.bl_tab__selected {
  position: relative;
  background-color: var(--bb-recruit-bg-color);

  margin-block-end: 0.625rem;
}
.bl_tab.bl_tab__selected .bl_tabIcon {
  display: inline-grid;
  position: absolute;
  top: 50%;
  right: 0.9375rem;
  width: 1rem;
  height: 1rem;

  translate: 0 -50%;
}
.bl_tab.bl_tab__selected .bl_tabIcon::before,
.bl_tab.bl_tab__selected .bl_tabIcon::after {
  content: "";
  display: block;
  margin: auto;
  width: 100%;
  height: 0.125rem;
  transition: rotate 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background-color: var(--bb-recruit-font-color);

  grid-area: 1/-1;
  -webkit-mask: url(/recruit/assets/img/common/icon_plus_line.svg) no-repeat center/100% auto;
          mask: url(/recruit/assets/img/common/icon_plus_line.svg) no-repeat center/100% auto;
}
.bl_tab.bl_tab__selected .bl_tabIcon::after {
  rotate: -90deg;
}
.bl_tab.bl_tab__selected[aria-expanded=true] .bl_tabIcon::after {
  transition: rotate 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  rotate: 0deg;
}
.bl_tab.bl_tab__selected .bl_tabTxt {
  font-weight: 600;
}
@media (min-width: 768px) {
  .bl_tab:focus-visible {
    transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-color: var(--bb-recruit-bg-color);
  }
}
@media (min-width: 768px) and (hover: hover) and (pointer: fine) {
  .bl_tab:hover {
    transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-color: var(--bb-recruit-bg-color);
  }
}
@media (min-width: 768px) and (-ms-high-contrast: none), (min-width: 768px) and (-ms-high-contrast: active) {
  .bl_tab:hover {
    transition: background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    background-color: var(--bb-recruit-bg-color);
  }
}

.bl_tabTxt {
  display: inline-block;
  position: relative;
  word-break: keep-all;
  font-size: 1rem;
  line-height: 1.1;
}
@media (min-width: 1024px) {
  .bl_tabTxt {
    font-size: 1.125rem;
  }
}
.bl_tabTxt::before {
  content: "";
  position: absolute;
  bottom: -0.4375rem;
  left: 50%;
  width: 1.875rem;
  height: 0.125rem;
  transition: scale 0.25s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  background-color: var(--bb-recruit-color-gold);

  translate: -50% 0;
  scale: 1 1;
}
.bl_tab[aria-selected=false] .bl_tabTxt::before {
  scale: 0 1;
}
.bl_tab[aria-selected=true] .bl_tabTxt {
  font-weight: 600;
}
.bl_tab[aria-selected=true] .bl_tabTxt::before {
  transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);

  scale: 1 1;
}

.bl_tabTxt-sm {
  display: inline-block;
  font-size: 0.75rem;

  margin-inline: 0.06em;
}
@media (min-width: 768px) {
  .bl_tabTxt-sm {
    font-size: 0.875rem;
  }
}

.bl_tabpanel {
  padding: 3.125rem 1.5rem;
  background-color: var(--bb-recruit-bg-color);
}
@media (min-width: 768px) {
  .bl_tabpanel {
    padding: 3rem 3.875rem 3.5rem;
  }
}
.bl_tabpanel[aria-hidden=true] {
  display: none;
}

.bl_tabpanel_ttl {
  margin-block-end: 2rem;
}
@media (min-width: 768px) {
  .bl_tabpanel_ttl {
    margin-block-end: 1.75rem;
  }
}

.el_bulletList {
  margin: 0;
  padding: 0;
  list-style: none;
}

.el_bullet {
  display: inline-flex;
  line-height: 1.6;

  gap: 0.2em;
}
@media (min-width: 768px) {
  .el_bullet {
    line-height: 1.8;
  }
}
.el_bullet + .el_bullet {
  margin-block-start: 0.15em;
}
.el_bullet::before {
  content: "•";
  display: grid;
  flex-shrink: 0;
  width: 1em;
  color: var(--bb-recruit-font-color);

  justify-items: center;
}

.el_txt__normal {
  font-weight: 400;
}

.el_txt__medium {
  font-weight: 500;
}

.el_txt__bold {
  font-weight: 600;
}

.el_ttl {
  font-family: var(--bb-recruit-font-family-mincho);
}

.el_ttl__en {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);

  font-variation-settings: "wght" 700;
  font-synthesis: none;
}

.el_txt__en {
  font-family: var(--bb-recruit-font-family-en-din);
}

.el_txt__white {
  color: var(--bb-recruit-font-color-white);
}

.el_txt__gold-dark {
  color: var(--bb-recruit-font-color-gold-dark);
}

.el_txt__gold {
  color: var(--bb-recruit-font-color-gold);
}

.el_ttl_en {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 2.625rem;

  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .el_ttl_en {
    font-size: 4rem;
  }
}

.el_ttl {
  font-family: var(--bb-recruit-font-family-mincho);
  font-size: 1rem;
  font-weight: 600;
}
@media (min-width: 768px) {
  .el_ttl {
    font-size: 1.25rem;
  }
}

.el_txt_btn_jp {
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .el_txt_btn_jp {
    font-size: 1.125rem;
  }
}

.el_txt_btn_en {
  text-transform: uppercase;
  font-family: var(--bb-recruit-font-family-en-norman);
  font-size: 0.9375rem;
  line-height: 1.3;

  font-synthesis: none;
  font-variation-settings: "wght" 700;
}
@media (min-width: 768px) {
  .el_txt_btn_en {
    font-size: 1.375rem;
  }
}

.el_txt-body-sm {
  font-size: 0.625rem;
  line-height: 1.3;
}
@media (min-width: 768px) {
  .el_txt-body-sm {
    font-size: 0.75rem;
  }
}

.el_txt-desc {
  font-size: 1rem;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .el_txt-desc {
    font-size: 1rem;
  }
}

.el_ttl-md {
  font-size: 1.375rem;
  font-weight: 500;
  line-height: 1.55;
}
@media (min-width: 768px) {
  .el_ttl-md {
    font-size: 2rem;
  }
}

.el_ttl-sm {
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.45;
}
@media (min-width: 768px) {
  .el_ttl-sm {
    font-size: 1.5rem;
  }
}

.el_ttl-xs {
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.45;
}
@media (min-width: 768px) {
  .el_ttl-xs {
    font-size: 1.125rem;
  }
}

/* ------------------------
  utilities Classes
------------------------ */
.u-hidden {
  display: none !important;
  visibility: hidden;
}

@media (max-width: 767.98px) {
  .u-hidden-sm {
    display: none !important;
    visibility: hidden;
  }
}

.u-hidden-up-sm {
  display: none !important;
  visibility: hidden;
}

@media (max-width: 767.98px) {
  .u-hidden-down-sm {
    display: none !important;
    visibility: hidden;
  }
}

@media (min-width: 768px) and (max-width: 1023.98px) {
  .u-hidden-md {
    display: none !important;
    visibility: hidden;
  }
}

@media (min-width: 768px) {
  .u-hidden-up-md {
    display: none !important;
    visibility: hidden;
  }
}

@media (max-width: 1023.98px) {
  .u-hidden-down-md {
    display: none !important;
    visibility: hidden;
  }
}

@media (min-width: 1024px) {
  .u-hidden-lg {
    display: none !important;
    visibility: hidden;
  }
}

@media (min-width: 1024px) {
  .u-hidden-up-lg {
    display: none !important;
    visibility: hidden;
  }
}

.u-hidden-down-lg {
  display: none !important;
  visibility: hidden;
}

.u-visuallyhidden {
  overflow: hidden;
  clip: rect(0 0 0 0);
  position: absolute;
  margin: -1px;
  padding: 0;
  border: 0;
  width: 1px;
  height: 1px;
}

.u-visuallyhidden.focusable:active,
.u-visuallyhidden.focusable:focus {
  overflow: visible;
  clip: auto;
  position: static;
  margin: 0;
  width: auto;
  height: auto;
}

.u-invisible {
  visibility: hidden;
}

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

[data-fade-in] {
  opacity: 0;
}

[data-kv-opening-bg] {
  opacity: 0;

  --kv-slicer: 50svh;
  clip-path: polygon(0% calc(6.9400672112vw + 93px + var(--kv-slicer)), 100% calc(93px + var(--kv-slicer)), 100% calc(100svh - 6.9400672112vw - 72px - var(--kv-slicer)), 0% calc(100svh - 72px - var(--kv-slicer)));
}
@media (min-width: 768px) {
  [data-kv-opening-bg] {
    clip-path: polygon(0% calc(6.9400672112vw + 56px + var(--kv-slicer)), 100% calc(56px + var(--kv-slicer)), 100% calc(100vh - 6.9400672112vw - 40px - var(--kv-slicer)), 0% calc(100vh - 40px - var(--kv-slicer)));
  }
}

[data-kv-ttl] {
  display: inline-block;
  overflow: hidden;
  opacity: 0;
  transform: skew(-15deg) rotate(-4deg);

  padding-inline: 0.3125rem;
}
@media (min-width: 768px) {
  [data-kv-ttl] {
    padding-inline-start: 0;
  }
}

[data-kv-border] {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 0.125rem;
  background-color: #000;

  scale: 0 1;
}

[data-kv-txt] {
  opacity: 0;
  transform: translateX(-20px);
}

[data-kv-fade] {
  opacity: 0;
}

[data-fade-in-item] {
  opacity: 0;
}

[data-split-text] {
  display: inline-block;
  opacity: 0;

  translate: 0 50%;
}

[data-kv-subpage-subtitle] {
  opacity: 0;
}

[data-kv-subpage-title] {
  overflow: hidden;
  opacity: 0;

  padding-block-end: calc(1em - 1cap + (1lh - 1em) / 2);
  margin-block-end: calc(-1 * (1em - 1cap + (1lh - 1em) / 2));
}

[data-kv-subpage-target] {
  opacity: 0;
}

[data-sticky-isActive=false] {
  opacity: 0;
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

[data-sticky-isActive=true] {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}

[data-program] {
  --_line-scaleY: 0;
}
[data-program]::before {
  transform-origin: top;

  scale: 1 var(--_line-scaleY);
}
[data-program]::after {
  transition: scale 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transform-origin: right bottom;

  scale: 0;
}
[data-program].is-animated::after {
  scale: 1;
}

/* ------------------------
  Print Styles
------------------------ */
@media print {
  *,
  *::before,
  *::after {
    background: transparent !important;
    color: #000 !important;
    box-shadow: none !important;
    text-shadow: none !important;
  }
  a,
  a:visited {
    text-decoration: underline;
  }
  tr,
  img {
    page-break-inside: avoid;
  }
  img {
    max-width: 100% !important;
  }
  p,
  h2,
  h3 {
    orphans: 3;
    widows: 3;
  }
  h2,
  h3 {
    page-break-after: avoid;
  }
}