@charset "UTF-8";
/**
 * Style.css
 * このファイルは QWEL Project の一部です。
 * Part of the QWEL Project © QWEL.DESIGN 2025
 * Licensed under GPL v3 – see https://qwel.design/
 */
/**
 * Root
 */
:root {
  --color--darkest: #262626;
  --color--darkest--active: #595959;
  --color--darker: #4d4d4d;
  --color--darker--active: gray;
  --color--dark: #808080;
  --color--dark--active: #b3b3b3;
  --color--light: #b3b3b3;
  --color--light--active: gray;
  --color--lighter: #d9d9d9;
  --color--lighter--active: #a6a6a6;
  --color--lightest: #ffffff;
  --color--lightest--active: #cccccc;
  --color--primary: #1964E0;
  --color--primary--active: rgb(111.9638554217, 159.8554216867, 239.0361445783);
  --color--secondary: #19D8E0;
  --color--secondary--active: rgb(14.7590361446, 127.5180722892, 132.2409638554);
  --container-width--sm: 37.5rem;
  --container-width--md: 56.25rem;
  --container-width--lg: 75rem;
  --container-pad--sm: 0.75rem;
  --container-pad--md: clamp(0.75rem, 2%, 1rem);
  --container-pad--lg: clamp(0.75rem, 2%, 1.5rem);
  --spacing--none: 0;
  --spacing--x-small: 0.375rem;
  --spacing--small: 0.75rem;
  --spacing--medium: 1.5rem;
  --spacing--large: 3rem;
  --spacing--x-large: 6rem;
  --font-family-base: "Noto Sans JP", "游ゴシック", "Yu Gothic", sans-serif;
  --font-weight-base: 400;
  --line-height-base: 1.8;
  --letter-spacing-base: 0;
  --heading-margin-block-start: var(--spacing--medium);
  --heading-margin-block-end: var(--spacing--small);
  --heading-font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", sans-serif;
  --heading-font-weight: 400;
  --heading-line-height: 1.2;
  --heading-letter-spacing: 0;
  --font-size--x-small: 0.75rem;
  --font-size--small: 0.875rem;
  --font-size--normal: 1rem;
  --font-size--medium: 1.125rem;
  --font-size--large: 1.25rem;
  --font-size--x-large: 1.5rem;
  --font-size--xx-large: 2rem;
  --small-font-size: var(--font-size--small);
  --small-line-height: 2;
  --small-letter-spacing: 0;
}

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

html {
  font-size: min(3.84vw, 16px);
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background-color: var(--color--lightest);
  color: var(--color--darkest);
  font-family: var(--font-family-base);
  font-weight: var(--font-weight-base);
  line-height: var(--line-height-base);
  letter-spacing: var(--letter-spacing-base);
  -webkit-text-size-adjust: 100%;
}

h1, h2, h3, h4, h5, h6 {
  margin-block-start: var(--heading-margin-block-start);
  margin-block-end: var(--heading-margin-block-end);
  font-family: var(--heading-font-family);
  font-weight: var(--heading-font-weight);
  line-height: var(--heading-line-height);
  letter-spacing: var(--heading-letter-spacing);
}

h1 {
  font-size: var(--font-size--x-large);
}

h2 {
  font-size: var(--font-size--x-large);
}

h3 {
  font-size: var(--font-size--large);
}

h4 {
  font-size: var(--font-size--medium);
}

h5 {
  font-weight: 700;
  font-size: var(--font-size--normal);
}

h6 {
  font-weight: 700;
  font-size: var(--font-size--small);
}

p,
ol, ul,
li {
  margin-block: var(--spacing--small);
}

small {
  font-size: var(--small-font-size);
  line-height: var(--small-line-height);
  letter-spacing: var(--small-letter-spacing);
}

blockquote {
  margin-block: var(--spacing--small);
  padding-inline-start: 1em;
  border-inline-start: var(--spacing--x-small) solid var(--color--darkest);
}
blockquote p, blockquote cite {
  font-style: italic;
  font-size: var(--small-font-size);
  line-height: var(--small-line-height);
  letter-spacing: var(--small-letter-spacing);
}

a, a:active {
  color: var(--color--darker);
  text-decoration: none;
}
a:hover, a:focus {
  color: var(--color--primary);
  text-decoration: none;
}

img {
  width: 100%;
  height: auto;
  vertical-align: middle;
}

figure {
  display: block;
  margin-block: var(--spacing--small);
}

figcaption {
  font-size: var(--small-font-size);
  line-height: var(--small-line-height);
  letter-spacing: var(--small-letter-spacing);
  text-align: center;
}

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

th {
  text-align: left;
}

button, input, select, textarea {
  font: inherit;
}

/**
 * Layout - Header
 */
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 990;
  width: 100%;
  height: 4.5rem;
  background-color: var(--color--lightest);
}
.header__inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  height: 4.5rem;
  padding-inline-start: var(--spacing--small);
}
.header__siteTitle {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  height: 100%;
  margin: 0;
}
.header__siteTitle img {
  flex: auto;
}
.header__siteTitle img:nth-child(1) {
  width: min(12vw, 4rem);
}
.header__siteTitle img:nth-child(2) {
  width: min(40.5vw, 13.5rem);
}
.header__siteTitle img:nth-child(3) {
  width: min(24vw, 8rem);
}

/**
 * Layout - G Nav
 */
.gNav {
  display: none;
  font-weight: bold;
  font-size: 0.85rem;
}
@media (min-width: 1320px) {
  .gNav {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items: center;
    gap: var(--spacing--medium);
  }
}
.gNav__primaryMenu {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  gap: var(--spacing--medium);
  flex: auto;
  margin: 0;
}
.gNav__primaryMenuItem {
  margin: 0;
}
.gNav__primaryMenuItem a {
  display: block;
  line-height: 1;
}
.gNav__recruitMenu {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  flex: auto;
  margin: 0;
}
.gNav__recruitMenuItem {
  margin: 0;
}
.gNav__recruitMenuItem a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 9rem;
  height: 4.5rem;
  color: var(--color--lightest);
  line-height: 1;
}
.gNav__recruitMenuItem:nth-child(1) a {
  background-color: #1F69E3;
}
.gNav__recruitMenuItem:nth-child(2) a {
  background-color: #004ECE;
}

/**
 * Layout - Footer
 */
.footer {
  background-color: #E2FAFC;
  text-align: center;
}
.footer__container {
  width: min(100%, var(--container-width--lg));
  margin-inline: auto;
  padding-inline: var(--container-pad--lg);
  padding-block: var(--spacing--large);
}
@media (min-width: 900px) {
  .footer__container {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items: center;
  }
}
.footer__logo > img:nth-child(1) {
  width: 4rem;
  mix-blend-mode: multiply;
}
.footer__logo > img:nth-child(2) {
  width: 13.5rem;
  mix-blend-mode: multiply;
}
@media (min-width: 900px) {
  .footer__logo {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items: center;
  }
}
.footer__menu {
  list-style: none;
  padding-inline-start: 0;
  display: none;
  font-weight: 700;
}
@media (min-width: 900px) {
  .footer__menu {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around;
    align-items: center;
  }
}
.footer__menuItem:not(:first-child)::before {
  content: "／";
}
.footer__button {
  position: relative;
  display: block;
  width: 16.5rem;
  height: 3.75rem;
  line-height: 3.75rem;
  margin-inline: auto;
  margin: var(--spacing--medium) auto;
  background-image: linear-gradient(#3B6493, #0A0E12);
}
.footer__button, .footer__button:active {
  border: 0;
  border-radius: 1.875rem;
  text-align: center;
  text-decoration: none;
  word-break: break-word;
  outline: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  transition: all 0.5s ease;
}
.footer__button:hover, .footer__button:focus {
  text-decoration: none;
  transform: scale(96%);
}
.footer__button, .footer__button:active {
  background-color: var(--color--primary);
  color: var(--color--lightest);
}
.footer__button:hover, .footer__button:focus {
  background-color: var(--color--primary--active);
  color: var(--color--darkest);
}
.footer__button:hover, .footer__button:focus {
  box-shadow: 0 0 var(--spacing--small) var(--color--primary);
}
.footer__button:hover, .footer__button:focus {
  color: var(--color--lightest);
}
.footer__button::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0.75rem;
  height: 0.75rem;
  margin: 1.5rem;
  background: url("./assets/outer_link.svg") no-repeat 50% 50%/contain scroll;
}
@media (min-width: 900px) {
  .footer__button {
    margin-inline: 0;
  }
}
.footer__copyright {
  display: block;
  padding: var(--spacing--small) 0;
  background-color: var(--color--lightest);
}

/**
 * Component - Icon
 */
.icon {
  position: relative;
  display: inline-block;
  width: 1.5rem;
  height: 1.5rem;
  overflow: hidden;
  fill: currentColor;
}
.icon--md {
  width: 2.25rem;
  height: 2.25rem;
}
.icon--lg {
  width: 3rem;
  height: 3rem;
}
.icon__span {
  position: relative;
  display: block;
  border-width: 0;
  border-style: solid;
  border-color: var(--color--lightest);
  transition: border-color 0.25s ease;
}
.icon--menu .icon__span {
  width: 60%;
  height: 20%;
  margin: 40% 20%;
  border-block-start-width: 2px;
  border-block-end-width: 2px;
}
.icon--close .icon__span::before, .icon--close .icon__span::after {
  content: "";
  position: absolute;
  display: block;
  width: 60%;
  height: 4%;
  margin: 48% 20%;
  border: 1px solid var(--color--lightest);
  transform: rotate(-45deg);
}
.icon--close .icon__span::after {
  transform: rotate(45deg);
}
.icon--chevron-up .icon__span {
  width: 30%;
  height: 30%;
  margin: 35%;
  border-block-start-width: 2px;
  border-inline-start-width: 2px;
  transform: rotate(45deg) translate(10%, 10%);
}
.icon--chevron-down .icon__span {
  width: 30%;
  height: 30%;
  margin: 35%;
  border-inline-end-width: 2px;
  border-block-end-width: 2px;
  transform: rotate(45deg) translate(-10%, -10%);
}
.icon--chevron-left .icon__span {
  width: 30%;
  height: 30%;
  margin: 35%;
  border-inline-start-width: 2px;
  border-block-end-width: 2px;
  transform: rotate(45deg) translate(10%, -10%);
}
.icon--chevron-right .icon__span {
  width: 30%;
  height: 30%;
  margin: 35%;
  border-block-start-width: 2px;
  border-inline-end-width: 2px;
  transform: rotate(45deg) translate(-10%, 10%);
}

/**
 * Component - Back To Top
 */
.backToTop {
  position: fixed;
  right: var(--spacing--small);
  bottom: var(--spacing--small);
  z-index: 1000;
  display: block;
  width: 3rem;
  height: 3rem;
  padding: 0;
  opacity: 0;
  transform: translateY(1rem) rotateY(-180deg);
  transition: all 0.5s ease;
  text-align: center;
  outline: 0;
  cursor: default;
  pointer-events: none;
}
.backToTop--active {
  opacity: 1;
  transform: translateY(0) rotateY(0);
  cursor: pointer;
  pointer-events: auto;
}
.backToTop > .icon {
  border-radius: 50%;
  background-color: var(--color--primary);
  transition: background-color 0.25s ease;
}
.backToTop > .icon > .icon__span, .backToTop > .icon > .icon__span::before, .backToTop > .icon > .icon__span::after {
  border-color: var(--color--lightest);
}
.backToTop:hover > .icon {
  background-color: var(--color--primary--active);
}
.backToTop:hover > .icon > .icon__span, .backToTop:hover > .icon > .icon__span::before, .backToTop:hover > .icon > .icon__span::after {
  border-color: var(--color--darkest);
}

/**
 * Component - Button
 */
.button, .button:active {
  border: 0;
  border-radius: var(--spacing--x-small);
  text-align: center;
  text-decoration: none;
  word-break: break-word;
  outline: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  transition: all 0.5s ease;
}
.button:hover, .button:focus {
  text-decoration: none;
  transform: scale(96%);
}
.button--primary, .button--primary:active {
  background-color: var(--color--primary);
  color: var(--color--lightest);
}
.button--primary:hover, .button--primary:focus {
  background-color: var(--color--primary--active);
  color: var(--color--darkest);
}
.button--primary:hover, .button--primary:focus {
  box-shadow: 0 0 var(--spacing--small) var(--color--primary);
}
.button--secondary, .button--secondary:active {
  background-color: var(--color--secondary);
  color: var(--color--darkest);
}
.button--secondary:hover, .button--secondary:focus {
  background-color: var(--color--secondary--active);
  color: var(--color--lightest);
}
.button--secondary:hover, .button--secondary:focus {
  box-shadow: 0 0 var(--spacing--small) var(--color--secondary);
}
.button--sm {
  display: block;
  width: 10.5rem;
  height: 3.5rem;
  line-height: 3.5rem;
  margin-inline: auto;
}
.button--md {
  display: block;
  width: 16.5rem;
  height: 4.5rem;
  line-height: 4.5rem;
  margin-inline: auto;
}
.button--lg {
  display: block;
  width: 22.5rem;
  height: 4.5rem;
  line-height: 4.5rem;
  margin-inline: auto;
}

/**
 * Component - Drawer Menu
 */
.drawer {
  position: fixed;
  top: var(--spacing--small);
  right: var(--spacing--small);
  z-index: 1110;
  display: block;
  width: 3rem;
  height: 3rem;
  padding: 0;
  border: 0;
  background-color: transparent;
  text-align: center;
  outline: 0;
  cursor: pointer;
}
@media (min-width: 1320px) {
  .drawer {
    display: none;
  }
}
.drawer__navicon {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1110;
  opacity: 0;
  transform: rotateY(-180deg);
  transition: all 0.5s ease;
}
.drawer__navicon > .icon {
  border-radius: 0;
  background-color: var(--color--primary);
  transition: background-color 0.25s ease;
}
.drawer__navicon > .icon > .icon__span, .drawer__navicon > .icon > .icon__span::before, .drawer__navicon > .icon > .icon__span::after {
  border-color: var(--color--lightest);
}
.drawer__navicon:hover > .icon {
  background-color: var(--color--primary--active);
}
.drawer__navicon:hover > .icon > .icon__span, .drawer__navicon:hover > .icon > .icon__span::before, .drawer__navicon:hover > .icon > .icon__span::after {
  border-color: var(--color--darkest);
}
.drawer:not(.drawer--active):not(.drawer--ready) .drawer__navicon {
  opacity: 1;
  transform: rotateY(0);
}
.drawer__close {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1100;
  opacity: 1;
  transform: rotateY(0);
  transition: all 0.5s ease;
}
.drawer__close > .icon {
  border-radius: 0;
  background-color: var(--color--lightest);
  transition: background-color 0.25s ease;
}
.drawer__close > .icon > .icon__span, .drawer__close > .icon > .icon__span::before, .drawer__close > .icon > .icon__span::after {
  border-color: var(--color--primary);
}
.drawer__close:hover > .icon {
  background-color: var(--color--lightest);
}
.drawer__close:hover > .icon > .icon__span, .drawer__close:hover > .icon > .icon__span::before, .drawer__close:hover > .icon > .icon__span::after {
  border-color: var(--color--darkest);
}
.drawer:not(.drawer--active) .drawer__close {
  opacity: 0;
  transform: rotateY(180deg);
}

.drawerMenu {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1100;
  width: clamp(18rem, 85%, 24rem);
  height: 100%;
  margin: auto;
  background: url("./assets/drawerMenu_bg.jpg") no-repeat 100% 100%/contain scroll, var(--color--lightest);
  text-align: center;
  transition: width 0.5s ease;
}
.drawerMenu:not(.drawerMenu--show) {
  width: 0;
}
.drawerMenu__inner {
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  height: 100%;
  margin: 0;
  padding-inline-start: 0;
  text-align: left;
  opacity: 1;
}
.drawerMenu__inner:not(.drawerMenu__inner--show) {
  opacity: 0;
}
.drawerMenu__inner--collapse {
  display: none;
}
.drawerMenu__primaryMenu, .drawerMenu__recruitMenu {
  list-style: none;
  flex: 1 1 100%;
  padding-inline-start: 0;
}
.drawerMenu__primaryMenu > .drawerMenu__item {
  position: relative;
}
.drawerMenu__primaryMenu > .drawerMenu__item::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 3rem;
  height: 1.5rem;
  margin: auto;
  background: url("./assets/dots.svg") no-repeat 50% 50%/contain scroll;
}
.drawerMenu__recruitMenu {
  padding-inline-start: 20%;
}
.drawerMenu__recruitMenu > .drawerMenu__item {
  margin-block: var(--spacing--small);
}
.drawerMenu__recruitMenu > .drawerMenu__item a {
  padding-block: var(--spacing--small);
}
.drawerMenu__recruitMenu > .drawerMenu__item:nth-child(1) a {
  background-color: #1F69E3;
  color: var(--color--lightest);
}
.drawerMenu__recruitMenu > .drawerMenu__item:nth-child(2) a {
  background-color: #004ECE;
  color: var(--color--lightest);
}
.drawerMenu__recruitMenu > .drawerMenu__item:nth-child(3) a {
  background-image: linear-gradient(#3B6493, #0A0E12);
  color: var(--color--lightest);
}
.drawerMenu__recruitMenu > .drawerMenu__item:nth-child(3) {
  position: relative;
}
.drawerMenu__recruitMenu > .drawerMenu__item:nth-child(3)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 0.75rem;
  height: 0.75rem;
  margin: 1.25rem;
  background: url("./assets/outer_link.svg") no-repeat 50% 50%/contain scroll;
}
.drawerMenu__item {
  width: 100%;
  margin: 0;
  font-weight: 700;
  text-transform: capitalize;
}
.drawerMenu__item a {
  display: block;
  padding-block: var(--spacing--x-small);
  padding-inline-start: 20%;
  color: var(--color--primary);
  fill: var(--color--primary);
  text-decoration: none;
  transition: all 0.25s ease;
}
.drawerMenu__item a:hover {
  background-color: var(--color--primary--active);
  color: var(--color--darkest);
  fill: var(--color--darkest);
}
.drawerMenu__item--siteBrand {
  padding-block: 1rem;
  font-size: var(--font-size--x-large);
}
.drawerMenu__item--siteBrand a {
  padding: 0 0 0 20%;
}
.drawerMenu__item--siteBrand img {
  width: auto;
  height: 3rem;
}
.drawerMenu__copyright {
  display: block;
  width: 100%;
  padding-inline: var(--spacing--small);
  text-align: right;
}

.drawerMenuOverlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 1090;
  display: block;
  width: 100%;
  height: 100%;
  background-color: transparent;
}
.drawerMenuOverlay--collapse {
  display: none;
}

/**
 * Component - Slider
 */
.slider {
  position: relative;
  width: 100%;
  height: clamp(27rem, 54vw, 33.75rem);
  overflow: hidden;
}
.slider__inner {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  align-items: center;
  height: 100%;
  margin-block: 0;
  transform: translateX(0);
}
.slider__item {
  position: relative;
  flex: 0 1 auto;
  order: 0;
  margin: 0;
  opacity: 1;
  transition: opacity 0.15s linear;
}
.slider__item:not(.slider__item--current) {
  opacity: 0.5;
}
.slider__prev, .slider__next {
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  height: 2.25rem;
  margin: auto;
  border: 0;
  text-align: center;
}
.slider__prev > .icon, .slider__next > .icon {
  border-radius: 50%;
  background-color: var(--color--primary);
  transition: background-color 0.25s ease;
}
.slider__prev > .icon > .icon__span, .slider__prev > .icon > .icon__span::before, .slider__prev > .icon > .icon__span::after, .slider__next > .icon > .icon__span, .slider__next > .icon > .icon__span::before, .slider__next > .icon > .icon__span::after {
  border-color: var(--color--lightest);
}
.slider__prev:hover > .icon, .slider__next:hover > .icon {
  background-color: var(--color--primary--active);
}
.slider__prev:hover > .icon > .icon__span, .slider__prev:hover > .icon > .icon__span::before, .slider__prev:hover > .icon > .icon__span::after, .slider__next:hover > .icon > .icon__span, .slider__next:hover > .icon > .icon__span::before, .slider__next:hover > .icon > .icon__span::after {
  border-color: var(--color--darkest);
}
.slider__prev {
  left: 2%;
}
.slider__next {
  right: 2%;
}
.slider__nav {
  list-style: none;
  display: flex;
  justify-content: center;
  height: 1.5rem;
  margin: var(--spacing--small) auto;
  padding: 0;
}
.slider__navItem {
  width: 0.5rem;
  height: 0.5rem;
  margin: 0.5rem;
  border-radius: 50%;
  background-color: var(--color--primary);
  cursor: pointer;
}
.slider__navItem:not(.slider__navItem--current) {
  background-color: var(--color--dark);
}

/**
 * Component - Tabpanel
 */
.tabpanel {
  padding-block: var(--spacing--large);
  text-align: center;
}
.tabpanel__input {
  display: none;
}
.tabpanel__heading {
  display: inline-block;
  width: min(30vw, 18rem);
  margin: 0 var(--spacing--small);
  vertical-align: bottom;
}
.tabpanel__label {
  display: flex;
  justify-content: center;
  align-items: center;
  height: clamp(1.8rem, 3.6vw, 3rem);
  padding: 0 var(--spacing--medium);
  border-radius: var(--spacing--small) var(--spacing--small) 0 0;
  color: var(--color--lightest);
  font-weight: 700;
  font-size: clamp(0.6rem, 1.2vw, 1rem);
  line-height: 1.5;
  opacity: 0.5;
  transition: opacity 0.35s ease;
  cursor: pointer;
}
.tabpanel__label[for=tab-a] {
  background-color: var(--color--secondary);
}
.tabpanel__label[for=tab-b] {
  background-color: var(--color--primary);
}
.tabpanel__label:hover {
  opacity: 1;
}
input:checked + h3 > .tabpanel__label {
  height: clamp(2.7rem, 5.4vw, 4.5rem);
  font-size: clamp(0.9rem, 1.8vw, 1.5rem);
  opacity: 1;
}

.tabpanel__panel {
  display: none;
  clear: both;
}

#tab-a:checked ~ #panel-a,
#tab-b:checked ~ #panel-b {
  display: block;
}

/**
 * Project - Main Visual
 */
.mainVisual {
  height: -moz-fit-content;
  height: fit-content;
  padding-block-start: 4.5rem;
}
.mainVisual__primary {
  position: relative;
}
.mainVisual__photos {
  position: relative;
  overflow: hidden;
}
.mainVisual__photosInner {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  gap: var(--spacing--medium) var(--spacing--small);
  width: -moz-fit-content;
  width: fit-content;
  margin-block: 0;
  margin-inline-start: calc(var(--spacing--small) * -1);
  margin-inline-end: var(--spacing--medium);
  padding-block-start: var(--spacing--medium);
  overflow: hidden;
}
@media (min-width: 900px) {
  .mainVisual__photosInner {
    margin-block-start: var(--spacing--medium);
    margin-inline-end: calc(var(--spacing--small) * -1);
    padding-block-start: var(--spacing--large);
  }
}
.mainVisual__photo {
  flex: 0 0 47.5%;
  margin: 0;
}
.mainVisual__photo:nth-child(even) {
  transform: translateY(calc(var(--spacing--medium) * -1));
}
.mainVisual__photo > img {
  aspect-ratio: 4/5;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: var(--spacing--small);
}
@media (min-width: 900px) {
  .mainVisual__photo {
    flex: 0 0 22.5%;
  }
  .mainVisual__photo:nth-child(even) {
    transform: translateY(calc(var(--spacing--large) * -1));
  }
}
.mainVisual__photosLabel {
  position: absolute;
  top: 0;
  right: calc(var(--spacing--small) * -1);
  bottom: 0;
  width: 75%;
  margin: auto;
}
@media (min-width: 900px) {
  .mainVisual__photosLabel {
    top: auto;
    width: 40%;
  }
}
.mainVisual__lead {
  position: relative;
  margin: 1.5rem 0 3rem 3rem;
}
@media (min-width: 900px) {
  .mainVisual__lead {
    margin-inline-start: 4.5rem;
  }
}
.mainVisual__leadEn {
  margin-block-start: 0;
  margin-block-end: var(--spacing--large);
  color: var(--color--lightest);
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  font-size: 3.6rem;
  line-height: 1;
  letter-spacing: 0.25rem;
  mix-blend-mode: overlay;
  opacity: 0.85;
}
@media (min-width: 900px) {
  .mainVisual__leadEn {
    font-size: 8.4vw;
    text-align: right;
  }
}
.mainVisual__leadJp {
  position: absolute;
  top: calc(100% - 0.4rem);
  left: 0;
  color: var(--color--darkest);
  font-family: serif;
  font-weight: 700;
  font-size: 0.8rem;
  line-height: 1;
  letter-spacing: clamp(0.4em, 4vw, 2em);
  text-shadow: -2px -2px 4px #fff, -2px 2px 4px #fff, 2px -2px 4px #fff, 2px 2px 4px #fff;
  mix-blend-mode: normal;
}
@media (min-width: 900px) {
  .mainVisual__leadJp {
    font-size: 2.1vw;
    text-align: right;
  }
}
.mainVisual__primaryCover {
  position: absolute;
  top: 6rem;
  left: 2.25rem;
  z-index: -1;
  width: calc(100% - 2.25rem);
  height: calc(100% - 6rem);
  background: url("./assets/hero_bg_mb1.jpg") no-repeat 100% 100%/cover scroll;
}
@media (min-width: 900px) {
  .mainVisual__primaryCover {
    display: none;
  }
}
.mainVisual__scrollSign {
  position: absolute;
  left: 0;
  bottom: -3rem;
  z-index: -10;
  width: 4.5rem;
}
.mainVisual__scrollSign img:nth-child(1) {
  width: 0.75rem;
  margin-inline: 0.75rem;
}
.mainVisual__scrollSign img:nth-child(2) {
  width: 4.5rem;
  padding: 0.375rem;
}
@media (min-width: 900px) {
  .mainVisual__scrollSign {
    top: 37.5vw;
    bottom: auto;
  }
}
.mainVisual__secondary {
  position: relative;
}
@media (min-width: 900px) {
  .mainVisual__secondary {
    width: 100%;
    height: 30vw;
  }
}
.mainVisual__recruitMenu {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  flex: auto;
  margin: 0;
}
@media (min-width: 900px) {
  .mainVisual__recruitMenu {
    display: none;
  }
}
.mainVisual__recruitMenuItem {
  flex: 0 0 50%;
  margin: 0;
}
.mainVisual__recruitMenuItem a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 4.5rem;
  color: var(--color--lightest);
  font-weight: bold;
  line-height: 1;
}
.mainVisual__recruitMenuItem:nth-child(1) a {
  background-color: #1F69E3;
}
.mainVisual__recruitMenuItem:nth-child(2) a {
  background-color: #004ECE;
}
.mainVisual__textBox {
  position: relative;
  z-index: 10;
  padding-inline: 2.25rem;
}
.mainVisual__textBox h2, .mainVisual__textBox p {
  color: var(--color--lightest);
  font-weight: 700;
}
.mainVisual__textBox h2 {
  margin-block: 1em;
  font-size: max(1.5rem, 3vw);
}
.mainVisual__textBox p {
  font-size: max(0.8rem, 1.2vw);
}
@media (min-width: 900px) {
  .mainVisual__textBox {
    position: absolute;
    left: var(--spacing--x-large);
    width: 50vw;
  }
}
.mainVisual__groupPhotoBase {
  position: relative;
  width: 100%;
  height: 60vw;
}
@media (min-width: 900px) {
  .mainVisual__groupPhotoBase {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 50vw;
    height: 30vw;
  }
}
.mainVisual__groupPhoto {
  position: absolute;
  left: 0;
  right: 0;
  bottom: calc(var(--spacing--large) * -1);
  margin: 0;
}
.mainVisual__secondaryCover {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  background: url("./assets/hero_bg_mb2.jpg") no-repeat 100% 100%/cover scroll;
}
@media (min-width: 900px) {
  .mainVisual__secondaryCover {
    display: none;
  }
}
.mainVisual__tertiary {
  margin-bottom: var(--spacing--large);
}
.mainVisual__largeTextBox {
  margin: 0;
  padding: 3rem 1.5rem 2.25rem 2.25rem;
  font-weight: 700;
  font-size: max(1.6rem, 3.2vw);
  line-height: 1.5;
}
@media (min-width: 900px) {
  .mainVisual__largeTextBox {
    margin-inline-start: var(--spacing--x-large);
  }
}
.mainVisual__gallery {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  margin: 0;
}
.mainVisual__galleryItem {
  position: relative;
  flex: 1 1 33.33%;
  margin: 0;
}
.mainVisual__galleryItem:nth-child(odd)::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(120deg, rgba(33, 96, 216, 0.5), rgba(44, 231, 247, 0.5));
  mix-blend-mode: hard-light;
}
@media (min-width: 900px) {
  .mainVisual__galleryItem {
    flex: 1 1 16.66%;
  }
}
.mainVisual__cover {
  display: none;
}
@media (min-width: 900px) {
  .mainVisual__cover {
    position: absolute;
    top: 12rem;
    left: 4.5rem;
    z-index: -1;
    display: block;
    width: calc(100% - 4.5rem);
    height: 70vw;
    background: url("./assets/hero_bg.jpg") no-repeat 100% 100%/cover scroll;
  }
}

/**
 * Project - Section
 */
.entry__heading, .recruit__heading, .flow__heading, .numbers__heading, .company__heading, .interview__heading {
  margin-block: 0;
  padding-block-start: 1.5em;
  padding-block-end: 0.5em;
  color: var(--color--primary);
  font-weight: 700;
  font-size: clamp(2rem, 4vw, 3rem);
  text-align: center;
}
.entry__heading > span, .recruit__heading > span, .flow__heading > span, .numbers__heading > span, .company__heading > span, .interview__heading > span {
  display: inline-block;
  padding-inline: 0.5em;
}
.entry__heading::before, .recruit__heading::before, .flow__heading::before, .numbers__heading::before, .company__heading::before, .interview__heading::before, .entry__heading::after, .recruit__heading::after, .flow__heading::after, .numbers__heading::after, .company__heading::after, .interview__heading::after {
  content: "";
  display: inline-block;
  width: 1.2em;
  height: 0.75em;
  background: url("./assets/dots.svg") no-repeat 50% 50%/contain scroll;
}

.entry__subHeading, .flow__subHeading, .numbers__subHeading, .company__subHeading, .interview__subHeading {
  margin-block: 0;
  padding-block-end: 1.5em;
  font-weight: 700;
  font-size: clamp(1rem, 2vw, 1.5rem);
  text-align: center;
}

/**
 * Project - Interview
 */
.interview {
  background-color: #E2FAFC;
}
.interview__person {
  width: clamp(22.5rem, 45vw, 28.125rem);
  height: clamp(27rem, 54vw, 33.75rem);
  padding-block-start: clamp(3rem, 6vw, 3.75rem);
}
.interview__photo {
  position: absolute;
  top: 0;
  left: var(--spacing--medium);
  z-index: 10;
  width: clamp(10rem, 20vw, 12.5rem);
  height: clamp(12rem, 24vw, 15rem);
  margin: 0;
  border-radius: var(--spacing--small);
  overflow: hidden;
}
.interview__photo img {
  aspect-ratio: 0.875;
  -o-object-fit: cover;
     object-fit: cover;
}
.interview__part {
  position: absolute;
  top: clamp(1.25rem, 2.5vw, 1.5625rem);
  right: clamp(2.25rem, 4.5vw, 2.8125rem);
  z-index: 1;
  width: clamp(6.75rem, 13.5vw, 8.4375rem);
  height: clamp(1.75rem, 3.5vw, 2.1875rem);
  margin: 0;
  border-radius: var(--spacing--small) var(--spacing--small) 0 0;
  background-color: #5D6167;
  color: var(--color--lightest);
  font-size: clamp(0.75rem, 1.5vw, 0.9375rem);
  line-height: clamp(1.75rem, 3.5vw, 2.1875rem);
  text-align: center;
}
.interview__personInner {
  width: 100%;
  height: 100%;
  padding: clamp(0.8rem, 1.6vw, 1rem) clamp(1.5rem, 3vw, 1.875rem);
  border-radius: var(--spacing--medium);
  background-color: var(--color--lightest);
}
.interview__personInfo {
  padding-left: clamp(12rem, 24vw, 15rem);
  padding-bottom: clamp(0.6rem, 1.2vw, 0.75rem);
}
.interview__personInfo > span {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
}
.interview__personInfo > span:nth-child(1) {
  font-size: clamp(1.2rem, 2.4vw, 1.5rem);
}
.interview__personInfo > span:nth-child(2) {
  padding: 2px 6px;
  background-color: #1F69E3;
  color: var(--color--lightest);
  font-size: clamp(0.8rem, 1.6vw, 1rem);
}
.interview__personInfo > span:nth-child(3) {
  padding: 2px 6px;
  background-color: #014ECD;
  color: var(--color--lightest);
  font-size: clamp(0.8rem, 1.6vw, 1rem);
}
.interview__personInfo > span:nth-child(4) {
  font-size: clamp(0.8rem, 1.6vw, 1rem);
}
.interview__personInfo--new > span:nth-child(2) {
  background-color: var(--color--secondary);
}
.interview__content {
  font-size: clamp(0.8rem, 1.6vw, 1rem);
}
.interview__content > p {
  margin-block: clamp(0.75rem, 1.5vw, 0.9375rem);
  text-align: justify;
}
.interview__content > p > span {
  color: var(--color--primary);
  font-weight: 700;
}
.interview__main {
  width: 100%;
  height: 100vw;
  background: url("./assets/group_photo01.jpg") no-repeat 50% 100%/contain scroll;
  overflow: hidden;
}
@media (min-width: 600px) {
  .interview__main {
    height: 65vw;
    background-size: cover;
  }
}
.interview__mainInner {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  margin-inline: calc(var(--spacing--medium) * -1);
}
@media (min-width: 1200px) {
  .interview__mainInner {
    padding: var(--spacing--large);
  }
}
.interview__balloon {
  padding: 6vw;
  font-weight: 700;
  font-size: 3vw;
  text-align: center;
}
.interview__balloon:nth-child(1) {
  order: 0;
  background: url("./assets/balloon-a.svg") no-repeat 50% 50%/contain scroll;
}
.interview__balloon:nth-child(2) {
  order: 2;
  margin-top: -3rem;
  background: url("./assets/balloon-b.svg") no-repeat 50% 50%/contain scroll;
}
.interview__balloon:nth-child(3) {
  order: 1;
  background: url("./assets/balloon-c.svg") no-repeat 50% 50%/contain scroll;
}
@media (min-width: 600px) {
  .interview__balloon {
    padding: min(4.8vw, 2.4rem);
    font-size: min(2.4vw, 1.2rem);
  }
  .interview__balloon:nth-child(2) {
    order: 1;
    margin: 0;
  }
  .interview__balloon:nth-child(3) {
    order: 2;
  }
}

/**
 * Project - Company
 */
.company {
  padding-block-end: var(--spacing--x-large);
  background-color: var(--color--lightest);
}
.company__container {
  width: min(100%, var(--container-width--lg));
  margin-inline: auto;
  padding-inline: var(--container-pad--lg);
}
.company__headline {
  color: var(--color--primary);
  font-weight: 700;
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  text-align: center;
}
.company__headline:nth-of-type(2) {
  margin-block-start: 4.5rem;
}
.company__description, .company__hashtags {
  font-weight: 700;
  font-size: clamp(1rem, 2vw, 1.5rem);
  text-align: center;
}
.company__hashtags {
  color: #19D8E0;
  font-size: clamp(0.8rem, 1.6vw, 1.2rem);
}
.company__inner {
  list-style: none;
  padding-inline-start: 0;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.company__item:nth-child(-n+4) {
  flex-grow: 5;
  flex-shrink: 5;
  flex-basis: 30rem;
  width: 100%;
  padding-inline: var(--container-pad--sm);
}
.company__item:nth-child(n+5) {
  flex-grow: 4;
  flex-shrink: 4;
  flex-basis: 24rem;
  width: 100%;
  padding-inline: var(--container-pad--sm);
}
.company__item figure {
  position: relative;
  margin: 0;
}
.company__item figcaption {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 3rem;
  margin: auto;
  padding: var(--spacing--small);
  color: var(--color--lightest);
  font-weight: 700;
  font-size: clamp(1.33rem, 2vw, 1.5rem);
  line-height: 3rem;
  text-align: center;
}
.company__item h4 {
  color: var(--color--primary);
  font-weight: 700;
  font-size: clamp(1rem, 1.5vw, 1.125rem);
  text-align: center;
}
.company__item p {
  font-size: 0.85rem;
  text-align: justify;
}
.company__inner--office .company__item p {
  font-weight: 700;
  font-size: clamp(1rem, 1.5vw, 1.125rem);
  text-align: center;
}

.company__overview {
  width: min(100%, 48rem);
  margin: var(--spacing--large) auto 0;
  padding: var(--spacing--medium) var(--spacing--large);
  border-radius: var(--spacing--medium);
  background-color: #F2F2F2;
}
.company__table {
  width: 100%;
  margin-block: var(--spacing--medium);
}
@media (max-width: 599.9px) {
  .company__table, .company__table > tbody > tr, .company__table > tbody > tr > th, .company__table > tbody > tr > td {
    display: block;
  }
  .company__table th, .company__table td {
    margin: var(--spacing--x-small) 0;
    padding: 0 var(--spacing--small);
  }
}
.company__table thead, .company__table tbody {
  width: 100%;
}
.company__table thead {
  border: 0;
}
.company__table tr {
  border-block-end: 1px solid var(--color--light);
}
.company__table tr:first-child {
  border-block-start: 1px solid var(--color--light);
}
.company__table :where(th, td) {
  padding: var(--spacing--medium) var(--spacing--small);
  border: 0;
}
.company__table th {
  color: var(--color--primary);
}
.company__table td {
  font-weight: 700;
}
.company__btn {
  display: block;
  width: 10.5rem;
  height: 1.5rem;
  line-height: 1.5rem;
  margin-inline: auto;
  margin-inline: 0;
  font-size: 0.8em;
}
.company__btn, .company__btn:active {
  border: 0;
  border-radius: 1.5rem;
  text-align: center;
  text-decoration: none;
  word-break: break-word;
  outline: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  transition: all 0.5s ease;
}
.company__btn:hover, .company__btn:focus {
  text-decoration: none;
  transform: scale(96%);
}
.company__btn, .company__btn:active {
  background-color: var(--color--primary);
  color: var(--color--lightest);
}
.company__btn:hover, .company__btn:focus {
  background-color: var(--color--primary--active);
  color: var(--color--darkest);
}
.company__btn:hover, .company__btn:focus {
  box-shadow: 0 0 var(--spacing--small) var(--color--primary);
}
@media (min-width: 900px) {
  .company__btn {
    float: right;
  }
}

/**
 * Project - Numbers
 */
.numbers {
  background-color: var(--color--primary);
  color: var(--color--lightest);
}
.numbers a, .numbers a:active {
  color: var(--color--lightest);
  text-decoration: none;
}
.numbers a:hover, .numbers a:focus {
  color: var(--color--lightest);
  text-decoration: none;
}
.numbers__heading {
  color: var(--color--lightest);
}
.numbers__heading::before, .numbers__heading::after {
  filter: brightness(200);
}
.numbers__container {
  width: min(100%, var(--container-width--lg));
  margin-inline: auto;
  padding-inline: var(--container-pad--lg);
  padding-block-end: var(--spacing--x-large);
}
.numbers__row {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: stretch;
}
.numbers__col {
  padding: var(--spacing--small);
}
.numbers__col--1, .numbers__col--2, .numbers__col--wrap {
  flex-grow: 3;
  flex-shrink: 3;
  flex-basis: 18rem;
  width: 100%;
  padding-inline: var(--container-pad--sm);
}
.numbers__col--3 {
  flex-grow: 4;
  flex-shrink: 4;
  flex-basis: 24rem;
  width: 100%;
  padding-inline: var(--container-pad--sm);
}
.numbers__col--4, .numbers__col--7 {
  flex-grow: 3.5;
  flex-shrink: 3.5;
  flex-basis: 21rem;
  width: 100%;
  padding-inline: var(--container-pad--sm);
}
.numbers__col--5, .numbers__col--6 {
  padding-inline: var(--container-pad--sm);
}
.numbers__col--wrap {
  padding: 0;
}
.numbers__inner {
  height: 100%;
  padding: var(--spacing--small);
  border-radius: var(--spacing--medium);
  background-color: #E2FAFC;
  color: var(--color--darkest);
  font-weight: 700;
  font-family: "Oswald", '"Noto Sans JP"', '"游ゴシック"', '"Yu Gothic"', sans-serif;
  text-align: center;
}
.numbers__inner p {
  margin: 0;
  line-height: 1.2;
}
.numbers__inner p small {
  font-size: 1.2rem;
  line-height: 1.2;
}
.numbers__headline {
  font-weight: 700;
  font-size: 1.8rem;
  text-align: center;
}
.numbers__headline::before {
  content: "【";
  color: var(--color--primary);
}
.numbers__headline::after {
  content: "】";
  color: var(--color--primary);
}
.numbers__col--1 .numbers__number {
  margin-block-end: var(--spacing--medium);
  color: var(--color--primary);
  font-size: 3.6rem;
  line-height: 1;
}
.numbers__col--1 .numbers__number span {
  font-size: 2em;
}
.numbers__col--1 .numbers__desc {
  margin-block-end: var(--spacing--medium);
  line-height: 1.2;
}
.numbers__col--1 .numbers__desc span {
  color: var(--color--primary);
  font-size: 1.8rem;
}
.numbers__col--2 .numbers__innerRow {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
}
.numbers__col--2 .numbers__innerCol:nth-child(1) {
  flex: 0 0 7.5rem;
}
.numbers__col--2 .numbers__innerCol:nth-child(2) {
  flex: 0 0 auto;
}
.numbers__col--2 .numbers__circle {
  width: 7.5rem;
  height: 7.5rem;
  padding-block: 2.1rem;
  border-radius: 50%;
  background-color: var(--color--primary);
  color: var(--color--lightest);
  font-size: 1.5rem;
  line-height: 1;
}
.numbers__col--2 .numbers__figure {
  position: relative;
  top: -1.5rem;
  left: 0.75rem;
  width: 7.5rem;
  margin: 0;
}
.numbers__col--2 .numbers__number {
  margin-block-end: var(--spacing--small);
  color: var(--color--primary);
  font-size: 3.6rem;
  line-height: 1;
}
.numbers__col--2 .numbers__number span {
  font-size: 2em;
}
.numbers__col--2 .numbers__denominator {
  margin-block-end: var(--spacing--small);
  color: var(--color--primary);
  font-size: 2rem;
}
.numbers__col--2 p > small {
  font-size: 0.8rem;
}
.numbers__col--3 .numbers__number {
  margin-block: var(--spacing--medium);
  color: var(--color--primary);
  font-size: 3.6rem;
  line-height: 1;
}
.numbers__col--3 .numbers__number span {
  font-size: 2em;
}
.numbers__col--4 .numbers__skill {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
}
.numbers__col--4 .numbers__skill p:nth-child(1) {
  font-size: 1.2rem;
}
.numbers__col--4 .numbers__number {
  margin-block: var(--spacing--small);
  color: var(--color--primary);
  font-size: 1.8rem;
  line-height: 1;
}
.numbers__col--4 .numbers__number span {
  font-size: 2em;
}
.numbers__col--4 p > small {
  font-size: 0.9rem;
}
.numbers__col--5 .numbers__number, .numbers__col--6 .numbers__number {
  margin-block: var(--spacing--small);
  color: var(--color--primary);
  font-size: 3.2rem;
  line-height: 1;
}
.numbers__col--5 .numbers__number span, .numbers__col--6 .numbers__number span {
  font-size: 2em;
}
.numbers__col--7 .numbers__number {
  padding-block-end: var(--spacing--medium);
  border-block-end: 2px solid var(--color--primary);
  color: var(--color--primary);
  font-size: 3rem;
  line-height: 1;
}
.numbers__col--7 .numbers__number:nth-of-type(2) {
  padding-block-end: 0;
  border-block-end: 0;
}
.numbers__col--7 .numbers__number span {
  font-size: 2em;
}
.numbers__col--7 .numbers__subNumber {
  font-size: 1.8rem;
}
.numbers__col--7 .numbers__subNumber > span {
  display: inline-block;
  color: var(--color--primary);
  font-size: 1.5em;
  vertical-align: middle;
  transform: translateY(-0.5rem);
}
.numbers__col--7 .numbers__subNumber > span > span {
  font-size: 2em;
}
.numbers__col--7 p > small {
  display: block;
  margin-block: var(--spacing--medium);
}

/**
 * Project - Flow
 */
.flow {
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;
}
.flow__container {
  width: min(100%, var(--container-width--sm));
  margin-inline: auto;
  padding-inline: var(--container-pad--sm);
}
.flow__row {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
}
.flow__timeline {
  flex: 0 0 auto;
  font-weight: 700;
  font-size: 1.2rem;
}
.flow__time {
  position: relative;
  padding-inline-start: 2rem;
  color: var(--color--primary);
  line-height: 1.2;
}
.flow__time::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 1.5rem;
  height: 1.5rem;
  border-radius: 50%;
  background-color: var(--color--primary);
}
.flow__content {
  margin-inline-start: 0.75rem;
  padding-inline-start: 1.25rem;
  padding-block-end: var(--spacing--medium);
  border-inline-start: 2px solid var(--color--primary);
}
.flow__item:last-child .flow__content {
  border: 0;
}

.flow__gallery {
  flex: 0 0 15rem;
}
.flow__gallery figure {
  position: relative;
  margin: var(--spacing--small) 0;
}
.flow__gallery figcaption {
  position: absolute;
  right: 0;
  bottom: 0;
  display: block;
  padding: var(--spacing--x-small);
  background-color: var(--color--primary);
  color: var(--color--lightest);
  line-height: 1.2;
  text-align: center;
}
.flow__interviewOuter {
  position: relative;
  width: min(100%, var(--container-width--sm));
  margin-inline: auto;
  padding-inline: var(--container-pad--sm);
  margin-block-end: var(--spacing--large);
  padding-inline-start: var(--spacing--medium);
  border: 6px solid var(--color--primary);
  border-radius: var(--spacing--medium);
  background-color: var(--color--lightest);
  color: var(--color--primary);
}
.flow__interviewInner {
  width: -moz-fit-content;
  width: fit-content;
  font-weight: 700;
  font-size: 1.2rem;
}
@media (max-width: 599.9px) {
  .flow__interviewInner {
    width: 65%;
    font-size: 1rem;
  }
  .flow__interviewInner br {
    display: none;
  }
}
.flow__interviewImage {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 12rem;
  margin: 0;
}
.flow__interviewImage figcaption {
  position: absolute;
  right: 0;
  bottom: 0.75rem;
  width: 9rem;
  background-color: var(--color--primary);
  color: var(--color--lightest);
}
@media (max-width: 599.9px) {
  .flow__interviewImage {
    width: 7.5rem;
  }
}
.flow__operation {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  width: min(100%, var(--container-width--md));
  margin-inline: auto;
  padding-inline: var(--container-pad--md);
  gap: var(--spacing--x-large) var(--spacing--medium);
  padding-block-end: var(--spacing--large);
}
.flow__operationImage {
  flex: 1 1 17.25rem;
  margin: 0;
}
.flow__operationImage:nth-child(1) figcaption {
  background-color: #D5D5D5;
  color: #5C5C5C;
  font-size: 1.2rem;
}
.flow__operationImage:nth-child(2) figcaption {
  background-image: linear-gradient(270deg, #1964E0, #19D8E0);
  color: var(--color--lightest);
  font-size: 1.2rem;
}
.flow__chevron {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 4.5rem;
  height: auto;
  margin: auto;
}
@media (max-width: 599.9px) {
  .flow__chevron {
    transform: rotate(90deg);
  }
}

/**
 * Project - Recruit
 */
.recruit {
  padding-block-end: var(--spacing--x-large);
  background-color: #E2FAFC;
}
.recruit__header {
  width: 100%;
  background: linear-gradient(90deg, rgba(33, 96, 216, 0.3), rgba(44, 231, 247, 0.3)), url("./assets/group_photo02.jpg") no-repeat 0% 0%/cover scroll;
  background-blend-mode: multiply;
  height: 35vw;
  padding-block-start: 15vw;
  color: var(--color--lightest);
  text-shadow: 0 3px 6px rgba(0, 0, 0, 0.4039215686);
  font-weight: 700;
  font-size: clamp(1.5rem, 4vw, 3rem);
  text-align: center;
}
.recruit__main {
  width: min(92%, 48rem);
  margin: -1.5rem auto 0;
  padding: 0 var(--spacing--medium);
  border-radius: var(--spacing--medium);
  background-color: var(--color--lightest);
}
@media (min-width: 600px) {
  .recruit__main {
    margin-block-start: -10.5vw;
    padding-inline: var(--spacing--large);
  }
}
.recruit__content {
  text-align: left;
}
.recruit__table {
  width: 100%;
}
@media (max-width: 599.9px) {
  .recruit__table, .recruit__table > tbody > tr, .recruit__table > tbody > tr > th, .recruit__table > tbody > tr > td {
    display: block;
  }
  .recruit__table th, .recruit__table td {
    margin: var(--spacing--x-small) 0;
    padding: 0 var(--spacing--small);
  }
}
.recruit__table thead, .recruit__table tbody {
  width: 100%;
}
.recruit__table thead {
  border: 0;
}
.recruit__table tr {
  border-block-end: 1px solid var(--color--light);
}
.recruit__table tr:first-child {
  border-block-start: 1px solid var(--color--light);
}
.recruit__table :where(th, td) {
  padding: var(--spacing--medium) var(--spacing--small);
  border: 0;
}
.recruit__table th {
  color: var(--color--primary);
}
.recruit__table td {
  font-weight: 700;
}
.recruit__contentWrap {
  width: 18rem;
  margin-inline: auto;
  overflow-x: auto;
}
@media (min-width: 600px) {
  .recruit__contentWrap {
    width: 100%;
  }
}
.recruit__contentWrap table {
  width: 24rem;
  margin: 0;
  line-height: 1.44;
  text-align: center;
}
@media (min-width: 900px) {
  .recruit__contentWrap table {
    width: 30rem;
  }
}
.recruit__contentWrap thead, .recruit__contentWrap tbody {
  width: 100%;
}
.recruit__contentWrap thead {
  border: 0;
}
.recruit__contentWrap tr {
  border-block-end: 1px solid var(--color--light);
}
.recruit__contentWrap tr:first-child {
  border-block-start: 1px solid var(--color--light);
}
.recruit__contentWrap :where(th, td) {
  padding: var(--spacing--medium) var(--spacing--small);
  border: 0;
}
.recruit__contentWrap tr:nth-child(odd) {
  background-color: #F4F4F4;
}
.recruit__contentWrap tr {
  border: 0 !important;
}
.recruit__contentWrap th, .recruit__contentWrap td {
  padding: var(--spacing--x-small);
  border: 0;
}

/**
 * Project - Entry
 */
.entry {
  position: relative;
  padding-block-end: var(--spacing--large);
}
.entry::before, .entry::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: -1;
  width: min(40vw - 3rem, 24rem);
  background: url("./assets/entry_bg.jpg") no-repeat 100% 0%/cover scroll;
}
.entry::before {
  left: 0;
}
.entry::after {
  right: 0;
  transform: scale(-1, 1);
}
.entry__buttons {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: center;
  gap: var(--spacing--small);
  width: min(100%, var(--container-width--sm));
  margin-inline: auto;
  padding-inline: var(--container-pad--sm);
}
.entry__button {
  position: relative;
  display: block;
  width: 16.5rem;
  height: 4.5rem;
  line-height: 4.5rem;
  margin-inline: auto;
  font-size: 1.2rem;
}
.entry__button, .entry__button:active {
  border: 0;
  border-radius: 2.25rem;
  text-align: center;
  text-decoration: none;
  word-break: break-word;
  outline: 0;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  cursor: pointer;
  transition: all 0.5s ease;
}
.entry__button:hover, .entry__button:focus {
  text-decoration: none;
  transform: scale(96%);
}
.entry__button, .entry__button:active {
  background-color: var(--color--primary);
  color: var(--color--lightest);
}
.entry__button:hover, .entry__button:focus {
  background-color: var(--color--primary--active);
  color: var(--color--darkest);
}
.entry__button:hover, .entry__button:focus {
  box-shadow: 0 0 var(--spacing--small) var(--color--primary);
}
.entry__button::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0.8rem;
  height: 0.8rem;
  margin: 1.85rem;
  border-color: var(--color--lightest);
  border-style: solid;
  border-width: 0;
  border-block-start-width: 2px;
  border-inline-end-width: 2px;
  transform: rotate(45deg) translate(-10%, 10%);
}
.entry__button--secondary {
  background-color: var(--color--secondary);
}

/**
 * Utility - Spacing
 */
.util--m_none {
  margin: 0 !important;
}

.util--m_x-small {
  margin: 0.375rem !important;
}

.util--m_small {
  margin: 0.75rem !important;
}

.util--m_medium {
  margin: 1.5rem !important;
}

.util--m_large {
  margin: 3rem !important;
}

.util--m_x-large {
  margin: 6rem !important;
}

.util--m_sm-none {
  margin: 0 !important;
}

.util--m_sm-x-small {
  margin: 0.375rem !important;
}

.util--m_sm-small {
  margin: 0.75rem !important;
}

.util--m_sm-medium {
  margin: 1.5rem !important;
}

.util--m_sm-large {
  margin: 3rem !important;
}

.util--m_sm-x-large {
  margin: 6rem !important;
}

.util--m_md-none {
  margin: 0 !important;
}

.util--m_md-x-small {
  margin: 0.375rem !important;
}

.util--m_md-small {
  margin: 0.75rem !important;
}

.util--m_md-medium {
  margin: 1.5rem !important;
}

.util--m_md-large {
  margin: 3rem !important;
}

.util--m_md-x-large {
  margin: 6rem !important;
}

.util--m_lg-none {
  margin: 0 !important;
}

.util--m_lg-x-small {
  margin: 0.375rem !important;
}

.util--m_lg-small {
  margin: 0.75rem !important;
}

.util--m_lg-medium {
  margin: 1.5rem !important;
}

.util--m_lg-large {
  margin: 3rem !important;
}

.util--m_lg-x-large {
  margin: 6rem !important;
}

.util--mt_none {
  margin-block-start: 0 !important;
}

.util--mt_x-small {
  margin-block-start: 0.375rem !important;
}

.util--mt_small {
  margin-block-start: 0.75rem !important;
}

.util--mt_medium {
  margin-block-start: 1.5rem !important;
}

.util--mt_large {
  margin-block-start: 3rem !important;
}

.util--mt_x-large {
  margin-block-start: 6rem !important;
}

.util--mt_sm-none {
  margin-block-start: 0 !important;
}

.util--mt_sm-x-small {
  margin-block-start: 0.375rem !important;
}

.util--mt_sm-small {
  margin-block-start: 0.75rem !important;
}

.util--mt_sm-medium {
  margin-block-start: 1.5rem !important;
}

.util--mt_sm-large {
  margin-block-start: 3rem !important;
}

.util--mt_sm-x-large {
  margin-block-start: 6rem !important;
}

.util--mt_md-none {
  margin-block-start: 0 !important;
}

.util--mt_md-x-small {
  margin-block-start: 0.375rem !important;
}

.util--mt_md-small {
  margin-block-start: 0.75rem !important;
}

.util--mt_md-medium {
  margin-block-start: 1.5rem !important;
}

.util--mt_md-large {
  margin-block-start: 3rem !important;
}

.util--mt_md-x-large {
  margin-block-start: 6rem !important;
}

.util--mt_lg-none {
  margin-block-start: 0 !important;
}

.util--mt_lg-x-small {
  margin-block-start: 0.375rem !important;
}

.util--mt_lg-small {
  margin-block-start: 0.75rem !important;
}

.util--mt_lg-medium {
  margin-block-start: 1.5rem !important;
}

.util--mt_lg-large {
  margin-block-start: 3rem !important;
}

.util--mt_lg-x-large {
  margin-block-start: 6rem !important;
}

.util--ml_none {
  margin-inline-start: 0 !important;
}

.util--ml_x-small {
  margin-inline-start: 0.375rem !important;
}

.util--ml_small {
  margin-inline-start: 0.75rem !important;
}

.util--ml_medium {
  margin-inline-start: 1.5rem !important;
}

.util--ml_large {
  margin-inline-start: 3rem !important;
}

.util--ml_x-large {
  margin-inline-start: 6rem !important;
}

.util--ml_sm-none {
  margin-inline-start: 0 !important;
}

.util--ml_sm-x-small {
  margin-inline-start: 0.375rem !important;
}

.util--ml_sm-small {
  margin-inline-start: 0.75rem !important;
}

.util--ml_sm-medium {
  margin-inline-start: 1.5rem !important;
}

.util--ml_sm-large {
  margin-inline-start: 3rem !important;
}

.util--ml_sm-x-large {
  margin-inline-start: 6rem !important;
}

.util--ml_md-none {
  margin-inline-start: 0 !important;
}

.util--ml_md-x-small {
  margin-inline-start: 0.375rem !important;
}

.util--ml_md-small {
  margin-inline-start: 0.75rem !important;
}

.util--ml_md-medium {
  margin-inline-start: 1.5rem !important;
}

.util--ml_md-large {
  margin-inline-start: 3rem !important;
}

.util--ml_md-x-large {
  margin-inline-start: 6rem !important;
}

.util--ml_lg-none {
  margin-inline-start: 0 !important;
}

.util--ml_lg-x-small {
  margin-inline-start: 0.375rem !important;
}

.util--ml_lg-small {
  margin-inline-start: 0.75rem !important;
}

.util--ml_lg-medium {
  margin-inline-start: 1.5rem !important;
}

.util--ml_lg-large {
  margin-inline-start: 3rem !important;
}

.util--ml_lg-x-large {
  margin-inline-start: 6rem !important;
}

.util--mr_none {
  margin-inline-end: 0 !important;
}

.util--mr_x-small {
  margin-inline-end: 0.375rem !important;
}

.util--mr_small {
  margin-inline-end: 0.75rem !important;
}

.util--mr_medium {
  margin-inline-end: 1.5rem !important;
}

.util--mr_large {
  margin-inline-end: 3rem !important;
}

.util--mr_x-large {
  margin-inline-end: 6rem !important;
}

.util--mr_sm-none {
  margin-inline-end: 0 !important;
}

.util--mr_sm-x-small {
  margin-inline-end: 0.375rem !important;
}

.util--mr_sm-small {
  margin-inline-end: 0.75rem !important;
}

.util--mr_sm-medium {
  margin-inline-end: 1.5rem !important;
}

.util--mr_sm-large {
  margin-inline-end: 3rem !important;
}

.util--mr_sm-x-large {
  margin-inline-end: 6rem !important;
}

.util--mr_md-none {
  margin-inline-end: 0 !important;
}

.util--mr_md-x-small {
  margin-inline-end: 0.375rem !important;
}

.util--mr_md-small {
  margin-inline-end: 0.75rem !important;
}

.util--mr_md-medium {
  margin-inline-end: 1.5rem !important;
}

.util--mr_md-large {
  margin-inline-end: 3rem !important;
}

.util--mr_md-x-large {
  margin-inline-end: 6rem !important;
}

.util--mr_lg-none {
  margin-inline-end: 0 !important;
}

.util--mr_lg-x-small {
  margin-inline-end: 0.375rem !important;
}

.util--mr_lg-small {
  margin-inline-end: 0.75rem !important;
}

.util--mr_lg-medium {
  margin-inline-end: 1.5rem !important;
}

.util--mr_lg-large {
  margin-inline-end: 3rem !important;
}

.util--mr_lg-x-large {
  margin-inline-end: 6rem !important;
}

.util--mb_none {
  margin-block-end: 0 !important;
}

.util--mb_x-small {
  margin-block-end: 0.375rem !important;
}

.util--mb_small {
  margin-block-end: 0.75rem !important;
}

.util--mb_medium {
  margin-block-end: 1.5rem !important;
}

.util--mb_large {
  margin-block-end: 3rem !important;
}

.util--mb_x-large {
  margin-block-end: 6rem !important;
}

.util--mb_sm-none {
  margin-block-end: 0 !important;
}

.util--mb_sm-x-small {
  margin-block-end: 0.375rem !important;
}

.util--mb_sm-small {
  margin-block-end: 0.75rem !important;
}

.util--mb_sm-medium {
  margin-block-end: 1.5rem !important;
}

.util--mb_sm-large {
  margin-block-end: 3rem !important;
}

.util--mb_sm-x-large {
  margin-block-end: 6rem !important;
}

.util--mb_md-none {
  margin-block-end: 0 !important;
}

.util--mb_md-x-small {
  margin-block-end: 0.375rem !important;
}

.util--mb_md-small {
  margin-block-end: 0.75rem !important;
}

.util--mb_md-medium {
  margin-block-end: 1.5rem !important;
}

.util--mb_md-large {
  margin-block-end: 3rem !important;
}

.util--mb_md-x-large {
  margin-block-end: 6rem !important;
}

.util--mb_lg-none {
  margin-block-end: 0 !important;
}

.util--mb_lg-x-small {
  margin-block-end: 0.375rem !important;
}

.util--mb_lg-small {
  margin-block-end: 0.75rem !important;
}

.util--mb_lg-medium {
  margin-block-end: 1.5rem !important;
}

.util--mb_lg-large {
  margin-block-end: 3rem !important;
}

.util--mb_lg-x-large {
  margin-block-end: 6rem !important;
}

.util--p_none {
  padding: 0 !important;
}

.util--p_x-small {
  padding: 0.375rem !important;
}

.util--p_small {
  padding: 0.75rem !important;
}

.util--p_medium {
  padding: 1.5rem !important;
}

.util--p_large {
  padding: 3rem !important;
}

.util--p_x-large {
  padding: 6rem !important;
}

.util--p_sm-none {
  padding: 0 !important;
}

.util--p_sm-x-small {
  padding: 0.375rem !important;
}

.util--p_sm-small {
  padding: 0.75rem !important;
}

.util--p_sm-medium {
  padding: 1.5rem !important;
}

.util--p_sm-large {
  padding: 3rem !important;
}

.util--p_sm-x-large {
  padding: 6rem !important;
}

.util--p_md-none {
  padding: 0 !important;
}

.util--p_md-x-small {
  padding: 0.375rem !important;
}

.util--p_md-small {
  padding: 0.75rem !important;
}

.util--p_md-medium {
  padding: 1.5rem !important;
}

.util--p_md-large {
  padding: 3rem !important;
}

.util--p_md-x-large {
  padding: 6rem !important;
}

.util--p_lg-none {
  padding: 0 !important;
}

.util--p_lg-x-small {
  padding: 0.375rem !important;
}

.util--p_lg-small {
  padding: 0.75rem !important;
}

.util--p_lg-medium {
  padding: 1.5rem !important;
}

.util--p_lg-large {
  padding: 3rem !important;
}

.util--p_lg-x-large {
  padding: 6rem !important;
}

.util--pt_none {
  padding-block-start: 0 !important;
}

.util--pt_x-small {
  padding-block-start: 0.375rem !important;
}

.util--pt_small {
  padding-block-start: 0.75rem !important;
}

.util--pt_medium {
  padding-block-start: 1.5rem !important;
}

.util--pt_large {
  padding-block-start: 3rem !important;
}

.util--pt_x-large {
  padding-block-start: 6rem !important;
}

.util--pt_sm-none {
  padding-block-start: 0 !important;
}

.util--pt_sm-x-small {
  padding-block-start: 0.375rem !important;
}

.util--pt_sm-small {
  padding-block-start: 0.75rem !important;
}

.util--pt_sm-medium {
  padding-block-start: 1.5rem !important;
}

.util--pt_sm-large {
  padding-block-start: 3rem !important;
}

.util--pt_sm-x-large {
  padding-block-start: 6rem !important;
}

.util--pt_md-none {
  padding-block-start: 0 !important;
}

.util--pt_md-x-small {
  padding-block-start: 0.375rem !important;
}

.util--pt_md-small {
  padding-block-start: 0.75rem !important;
}

.util--pt_md-medium {
  padding-block-start: 1.5rem !important;
}

.util--pt_md-large {
  padding-block-start: 3rem !important;
}

.util--pt_md-x-large {
  padding-block-start: 6rem !important;
}

.util--pt_lg-none {
  padding-block-start: 0 !important;
}

.util--pt_lg-x-small {
  padding-block-start: 0.375rem !important;
}

.util--pt_lg-small {
  padding-block-start: 0.75rem !important;
}

.util--pt_lg-medium {
  padding-block-start: 1.5rem !important;
}

.util--pt_lg-large {
  padding-block-start: 3rem !important;
}

.util--pt_lg-x-large {
  padding-block-start: 6rem !important;
}

.util--pl_none {
  padding-inline-start: 0 !important;
}

.util--pl_x-small {
  padding-inline-start: 0.375rem !important;
}

.util--pl_small {
  padding-inline-start: 0.75rem !important;
}

.util--pl_medium {
  padding-inline-start: 1.5rem !important;
}

.util--pl_large {
  padding-inline-start: 3rem !important;
}

.util--pl_x-large {
  padding-inline-start: 6rem !important;
}

.util--pl_sm-none {
  padding-inline-start: 0 !important;
}

.util--pl_sm-x-small {
  padding-inline-start: 0.375rem !important;
}

.util--pl_sm-small {
  padding-inline-start: 0.75rem !important;
}

.util--pl_sm-medium {
  padding-inline-start: 1.5rem !important;
}

.util--pl_sm-large {
  padding-inline-start: 3rem !important;
}

.util--pl_sm-x-large {
  padding-inline-start: 6rem !important;
}

.util--pl_md-none {
  padding-inline-start: 0 !important;
}

.util--pl_md-x-small {
  padding-inline-start: 0.375rem !important;
}

.util--pl_md-small {
  padding-inline-start: 0.75rem !important;
}

.util--pl_md-medium {
  padding-inline-start: 1.5rem !important;
}

.util--pl_md-large {
  padding-inline-start: 3rem !important;
}

.util--pl_md-x-large {
  padding-inline-start: 6rem !important;
}

.util--pl_lg-none {
  padding-inline-start: 0 !important;
}

.util--pl_lg-x-small {
  padding-inline-start: 0.375rem !important;
}

.util--pl_lg-small {
  padding-inline-start: 0.75rem !important;
}

.util--pl_lg-medium {
  padding-inline-start: 1.5rem !important;
}

.util--pl_lg-large {
  padding-inline-start: 3rem !important;
}

.util--pl_lg-x-large {
  padding-inline-start: 6rem !important;
}

.util--pr_none {
  padding-inline-end: 0 !important;
}

.util--pr_x-small {
  padding-inline-end: 0.375rem !important;
}

.util--pr_small {
  padding-inline-end: 0.75rem !important;
}

.util--pr_medium {
  padding-inline-end: 1.5rem !important;
}

.util--pr_large {
  padding-inline-end: 3rem !important;
}

.util--pr_x-large {
  padding-inline-end: 6rem !important;
}

.util--pr_sm-none {
  padding-inline-end: 0 !important;
}

.util--pr_sm-x-small {
  padding-inline-end: 0.375rem !important;
}

.util--pr_sm-small {
  padding-inline-end: 0.75rem !important;
}

.util--pr_sm-medium {
  padding-inline-end: 1.5rem !important;
}

.util--pr_sm-large {
  padding-inline-end: 3rem !important;
}

.util--pr_sm-x-large {
  padding-inline-end: 6rem !important;
}

.util--pr_md-none {
  padding-inline-end: 0 !important;
}

.util--pr_md-x-small {
  padding-inline-end: 0.375rem !important;
}

.util--pr_md-small {
  padding-inline-end: 0.75rem !important;
}

.util--pr_md-medium {
  padding-inline-end: 1.5rem !important;
}

.util--pr_md-large {
  padding-inline-end: 3rem !important;
}

.util--pr_md-x-large {
  padding-inline-end: 6rem !important;
}

.util--pr_lg-none {
  padding-inline-end: 0 !important;
}

.util--pr_lg-x-small {
  padding-inline-end: 0.375rem !important;
}

.util--pr_lg-small {
  padding-inline-end: 0.75rem !important;
}

.util--pr_lg-medium {
  padding-inline-end: 1.5rem !important;
}

.util--pr_lg-large {
  padding-inline-end: 3rem !important;
}

.util--pr_lg-x-large {
  padding-inline-end: 6rem !important;
}

.util--pb_none {
  padding-block-end: 0 !important;
}

.util--pb_x-small {
  padding-block-end: 0.375rem !important;
}

.util--pb_small {
  padding-block-end: 0.75rem !important;
}

.util--pb_medium {
  padding-block-end: 1.5rem !important;
}

.util--pb_large {
  padding-block-end: 3rem !important;
}

.util--pb_x-large {
  padding-block-end: 6rem !important;
}

.util--pb_sm-none {
  padding-block-end: 0 !important;
}

.util--pb_sm-x-small {
  padding-block-end: 0.375rem !important;
}

.util--pb_sm-small {
  padding-block-end: 0.75rem !important;
}

.util--pb_sm-medium {
  padding-block-end: 1.5rem !important;
}

.util--pb_sm-large {
  padding-block-end: 3rem !important;
}

.util--pb_sm-x-large {
  padding-block-end: 6rem !important;
}

.util--pb_md-none {
  padding-block-end: 0 !important;
}

.util--pb_md-x-small {
  padding-block-end: 0.375rem !important;
}

.util--pb_md-small {
  padding-block-end: 0.75rem !important;
}

.util--pb_md-medium {
  padding-block-end: 1.5rem !important;
}

.util--pb_md-large {
  padding-block-end: 3rem !important;
}

.util--pb_md-x-large {
  padding-block-end: 6rem !important;
}

.util--pb_lg-none {
  padding-block-end: 0 !important;
}

.util--pb_lg-x-small {
  padding-block-end: 0.375rem !important;
}

.util--pb_lg-small {
  padding-block-end: 0.75rem !important;
}

.util--pb_lg-medium {
  padding-block-end: 1.5rem !important;
}

.util--pb_lg-large {
  padding-block-end: 3rem !important;
}

.util--pb_lg-x-large {
  padding-block-end: 6rem !important;
}

/**
 * Utility - Text
 */
.util--text_darkest {
  color: #262626;
}
.util--text_darker {
  color: #4d4d4d;
}
.util--text_dark {
  color: #808080;
}
.util--text_light {
  color: #b3b3b3;
}
.util--text_lighter {
  color: #d9d9d9;
}
.util--text_lightest {
  color: #ffffff;
}
.util--text_primary {
  color: #1964E0;
}
.util--text_secondary {
  color: #19D8E0;
}
.util--text_left {
  text-align: left !important;
}
.util--text_center {
  text-align: center !important;
}
.util--text_right {
  text-align: right !important;
}
.util--text_justify {
  text-align: justify !important;
}
@media (min-width: 600px) {
  .util--text_sm-left {
    text-align: left !important;
  }
  .util--text_sm-center {
    text-align: center !important;
  }
  .util--text_sm-right {
    text-align: right !important;
  }
  .util--text_sm-justify {
    text-align: justify !important;
  }
}
@media (min-width: 900px) {
  .util--text_md-left {
    text-align: left !important;
  }
  .util--text_md-center {
    text-align: center !important;
  }
  .util--text_md-right {
    text-align: right !important;
  }
  .util--text_md-justify {
    text-align: justify !important;
  }
}
@media (min-width: 1200px) {
  .util--text_lg-left {
    text-align: left !important;
  }
  .util--text_lg-center {
    text-align: center !important;
  }
  .util--text_lg-right {
    text-align: right !important;
  }
  .util--text_lg-justify {
    text-align: justify !important;
  }
}

/**
 * Utility - Visibility
 */
@media (max-width: 599.9px) {
  .util--visible_sm {
    display: none !important;
  }
}
@media (max-width: 899.9px) {
  .util--visible_md {
    display: none !important;
  }
}
@media (max-width: 1199.9px) {
  .util--visible_lg {
    display: none !important;
  }
}

@media (min-width: 600px) {
  .util--hidden_sm {
    display: none !important;
  }
}
@media (min-width: 900px) {
  .util--hidden_md {
    display: none !important;
  }
}
@media (min-width: 1200px) {
  .util--hidden_lg {
    display: none !important;
  }
}