@charset "UTF-8";
/* Break point
---------------------------------------------------------- */
/* Font
---------------------------------------------------------- */
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&family=Noto+Sans+JP:wght@100..900&display=swap");
/* Box sizing rules */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
figure,
blockquote,
dl,
dd,
ul,
ol {
  margin: 0;
  -webkit-padding-start: initial;
          padding-inline-start: initial;
}

/* Remove list styles on ul, ol elements with a list role, which suggests default styling will be removed */
ul[role=list],
ol[role=list] {
  list-style: none;
}

/* Set core root defaults */
html:focus-within {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img,
picture {
  max-width: 100%;
  display: block;
}

mark {
  background: none;
}

input,
button,
textarea,
select {
  /* デフォルトスタイルをリセット */
  -webkit-appearance: auto;
  -moz-appearance: auto;
  appearance: auto;
  font-family: inherit;
  font-size: inherit;
  border-radius: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: inherit;
  border: none;
  outline: none;
}

input[type=submit],
input[type=button] {
  /* デフォルトスタイルをリセット */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

label {
  /* iOSでのlabelとinput,select,textareaの関連付け */
  cursor: pointer;
}

/* スピンボタン非表示 chrome,safari */
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button,
input[type=month]::-webkit-outer-spin-button,
input[type=month]::-webkit-inner-spin-button,
input[type=datetime-local]::-webkit-outer-spin-button,
input[type=datetime-local]::-webkit-inner-spin-button,
input[type=week]::-webkit-outer-spin-button,
input[type=week]::-webkit-inner-spin-button,
input[type=time]::-webkit-outer-spin-button,
input[type=time]::-webkit-inner-spin-button,
input[type=date]::-webkit-outer-spin-button,
input[type=date]::-webkit-inner-spin-button {
  display: none;
}

/* スピンボタン非表示(firefox) */
input[type=number],
input[type=month],
input[type=datetime-local],
input[type=week],
input[type=time],
input[type=date] {
  -moz-appearance: textfield;
}

/* クリアボタン非表示 */
input[type=date]::-webkit-clear-button,
input[type=month]::-webkit-clear-button,
input[type=datetime-local]::-webkit-clear-button,
input[type=time]::-webkit-clear-button,
input[type=week]::-webkit-clear-button {
  -webkit-appearance: none;
}

/* Remove all animations and transitions for people that prefer not to see them */
li {
  list-style: none;
}

a > * {
  vertical-align: top;
}

table {
  border-collapse: collapse;
}

/* Mixin
---------------------------------------------------------- */
/* Animation
---------------------------------------------------------- */
.a-fadeIn {
  opacity: 0;
  -webkit-transform: translateY(10px);
          transform: translateY(10px);
  -webkit-transition: all 0.8s ease;
  transition: all 0.8s ease;
}
.a-fadeIn.-start {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* ==========================================================================//
//
//　変数
//
// ========================================================================== */
:root {
  /* Color
  ---------------------------------------------------------- */
  --color-main: #052275;
  --color-sub: #12B9E0;
  --color-bg: #E8F0F2;
  --color-bg2: #F1F5F6;
  --color-line: #B3B3B3;
  --color-line2: #CCCCCC;
  --color-point: #FFEE00;
  --color-font: #000000;
  --color-link: #12B9E0;
  --color-red: #D32929;
  --color-visited:#666666;
  /* font
  ---------------------------------------------------------- */
  --font-en: "Lato", sans-serif;
  --font-l: 300;
  --font-r: 400;
  --font-m: 500;
  --font-b: 700;
  --font-bl: 900;
  --lhS: 1.2;
  --lhM: 1.5;
  --lhL: 1.8;
  --lhLL: 2.3;
  /* width
  ---------------------------------------------------------- */
  --maxWidth: 1300px;
  --sidePadding: 1.2rem;
  --marginTop: 1.5rem;
  --header: 68px;
}
@media screen and (min-width: 768px) {
  :root {
    --sidePadding: 1.4rem;
  }
}
@media screen and (min-width: 960px) {
  :root {
    --sidePadding: 4.37rem;
  }
}
@media screen and (min-width: 768px) {
  :root {
    --header: 5rem;
  }
}

/**
 * Makes elements visually invisible but still accessible to screen-readers.
 *
 * This Css has been carefully tested to ensure screen-readers can read and
 * activate (in case of links and buttons) the elements with this class. Please
 * use caution when changing anything, even seemingly safe ones. For example
 * changing width from 1 to 0 would prevent TalkBack from activating (clicking)
 * buttons despite TalkBack reading them just fine. This is because
 * element needs to have a defined size and be on viewport otherwise TalkBack
 * does not allow activation of buttons.
 */
.visually-hidden {
  position: fixed !important;
  /* keep it on viewport */
  top: 0px !important;
  left: 0px !important;
  /* give it non-zero size, VoiceOver on Safari requires at least 2 pixels
     before allowing buttons to be activated. */
  width: 4px !important;
  height: 4px !important;
  /* visually hide it with overflow and opacity */
  opacity: 0 !important;
  overflow: hidden !important;
  /* remove any margin or padding */
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  /* ensure no other style sets display to none */
  display: block !important;
  visibility: visible !important;
}

.pc-only {
  display: none;
}
@media screen and (min-width: 960px) {
  .pc-only {
    display: block;
  }
}

.tab-only {
  display: none;
}
@media screen and (min-width: 768px) {
  .tab-only {
    display: block;
  }
}

@media screen and (min-width: 960px) {
  .sp-only {
    display: none;
  }
}

.c-taC {
  text-align: center;
}

.c-taR {
  text-align: right;
}

.c-taL {
  text-align: left;
}

.c-colorBox {
  padding: 20px;
}

.c-of-hidden {
  overflow: hidden;
}

.c-inB {
  display: inline-block;
}

.c-note {
  position: relative;
}
.c-note:has(mark) {
  padding-left: 1.2em;
}
.c-note mark {
  color: inherit;
  position: absolute;
  top: 0;
  left: 0;
}

.c-sidePadding {
  padding-right: var(--sidePadding);
  padding-left: var(--sidePadding);
}

.c-maxWidth {
  max-width: var(--maxWidth);
  margin-right: auto;
  margin-left: auto;
}

.c-fwN {
  font-weight: 400;
}

.c-fwM {
  font-weight: var(--font-m);
}

.c-fwB {
  font-weight: var(--font-b);
}

.c-fsSS {
  font-size: 0.8em;
}

.c-fsS {
  font-size: 0.9em;
}

.c-fsM {
  font-size: 1.2em;
}

.c-fsL {
  font-size: 1.4em;
}

.c-fc-red {
  color: var(--color-red);
}

.c-fc-gray {
  color: #666;
}

.c-ttl-1 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
}
.c-ttl-1 .-en {
  font-size: 1rem;
  font-weight: var(--font-r);
  letter-spacing: 0.35rem;
}
.c-ttl-1 .-main {
  font-size: 2.25rem;
  font-weight: var(--font-b);
  letter-spacing: 0.06rem;
  text-align: center;
}
.c-ttl-1 .-newsTtl {
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .c-ttl-1 .-newsTtl {
    font-size: 2.25rem;
  }
}
.c-ttl-1 .-data {
  display: block;
  font-size: 1rem;
  margin-top: 0.5rem;
  font-weight: var(--font-b);
}

.c-link-1 {
  display: inline-grid;
  grid-template-columns: auto 1fr;
  gap: 0.8rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--color-font);
}
.c-link-1::before {
  content: "";
  display: block;
  width: 5px;
  height: 8px;
  background: var(--color-font);
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (min-width: 960px) {
  .c-link-1:hover {
    color: var(--color-main);
  }
  .c-link-1:hover::before {
    background: var(--color-main);
  }
  .c-link-1:hover::after {
    color: var(--color-main);
  }
}
.c-link-1[href$=".pdf"], .c-link-1[target=_blank] {
  grid-template-columns: auto 1fr auto;
  gap: 0;
}
.c-link-1[href$=".pdf"]::before, .c-link-1[target=_blank]::before {
  margin-right: 0.8rem;
}
.c-link-1[href$=".pdf"]::after, .c-link-1[target=_blank]::after {
  content: "";
  display: block;
  width: 1em;
  height: 1em;
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path d="M10.8 10.8H3.1V3.1H5.85V2H3.1C2.80826 2 2.52847 2.11589 2.32218 2.32218C2.11589 2.52847 2 2.80826 2 3.1V10.8C2 11.0917 2.11589 11.3715 2.32218 11.5778C2.52847 11.7841 2.80826 11.9 3.1 11.9H10.8C11.0917 11.9 11.3715 11.7841 11.5778 11.5778C11.7841 11.3715 11.9 11.0917 11.9 10.8V8.05H10.8V10.8Z" fill="currentColor"/><path d="M7.50018 2L9.31518 3.815L6.18018 6.95L6.95018 7.72L10.0852 4.585L11.9002 6.4V2H7.50018Z" fill="currentColor"/></svg>') no-repeat center/contain;
}
.c-link-1[href$=".pdf"]::after {
  background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 14 14"><path fill-rule="evenodd" clip-rule="evenodd" d="M8.25 1H4.125C3.82663 1 3.54048 1.11853 3.3295 1.3295C3.11853 1.54048 3 1.82663 3 2.125V11.875C3 12.1734 3.11853 12.4595 3.3295 12.6705C3.54048 12.8815 3.82663 13 4.125 13H10.875C11.1734 13 11.4595 12.8815 11.6705 12.6705C11.8815 12.4595 12 12.1734 12 11.875V4.75H11.997L8.25 1ZM7.5 2.203V5.3125C7.5 5.416 7.584 5.5 7.6875 5.5H10.7977C10.8348 5.49992 10.871 5.48885 10.9018 5.46819C10.9326 5.44754 10.9566 5.41822 10.9707 5.38395C10.9848 5.34968 10.9885 5.31199 10.9812 5.27564C10.9739 5.2393 10.956 5.20593 10.9297 5.17975L7.82025 2.07025C7.79403 2.04396 7.76059 2.02605 7.72417 2.01879C7.68776 2.01152 7.65 2.01524 7.6157 2.02946C7.5814 2.04367 7.55209 2.06776 7.53149 2.09865C7.51089 2.12955 7.49993 2.16587 7.5 2.203Z" fill="currentColor"/></svg>') no-repeat center/contain;
}

.c-flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px 20px;
}
.c-flex > * {
  margin-top: 0 !important;
}
.c-flex + * {
  margin-top: var(--marginTop);
}
@media screen and (min-width: 768px) {
  .c-flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.c-flex.-sp {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-direction: row;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px 20px;
}

.c-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(var(--marginTop) + 1.5rem) 3.8rem;
}
@media screen and (min-width: 768px) {
  .c-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

.c-grid-2 {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--marginTop);
}
@media screen and (min-width: 768px) {
  .c-grid-2 {
    --gap: 4.5rem;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--gap);
  }
  .c-grid-2 > * {
    position: relative;
  }
  .c-grid-2 > * > *:first-child {
    margin-top: 0 !important;
  }
  .c-grid-2 > *::after {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    background: var(--color-line2);
    position: absolute;
    top: 0;
    right: calc(0% - var(--gap) * 0.5);
  }
  .c-grid-2 > *:nth-child(even)::after {
    content: none;
  }
  .c-grid-2.-col3 {
    --gap: 2.5rem;
    grid-template-columns: repeat(3, 1fr);
  }
  .c-grid-2.-col3 > *:nth-child(even)::after {
    content: "";
  }
  .c-grid-2.-col3 > *:nth-child(3n)::after {
    content: none;
  }
}

.c-list-1 + * {
  margin-top: var(--marginTop);
}
.c-list-1 > li > ul {
  margin-top: 10px !important;
  margin-bottom: 15px !important;
}
.c-list-1 > li {
  padding-left: 1.2em;
  position: relative;
}
.c-list-1 > li + li {
  margin-top: 10px;
}
.c-list-1 > li mark {
  color: inherit;
  position: absolute;
  top: 0;
  left: 0;
}
.c-list-1.-em2 > li {
  padding-left: 2.2em;
}
.c-list-1.-em3 > li {
  padding-left: 3.2em;
}
.c-list-1.-em4 > li {
  padding-left: 4.2em;
}

.c-list-2 + * {
  margin-top: var(--marginTop);
}
.c-list-2 li {
  padding-left: 15px;
  position: relative;
}
.c-list-2 li + li {
  margin-top: 10px;
}
.c-list-2 li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #5EC0DB;
  border-radius: 9999px;
  position: absolute;
  top: calc(0.5em + 2.5px);
  left: 5px;
}

.c-dlBox-1 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem;
  border-top: 1px solid #D0DBDE;
  border-bottom: 1px solid #D0DBDE;
  padding: 1.5rem 0;
}
@media screen and (min-width: 768px) {
  .c-dlBox-1 {
    grid-template-columns: 20% 1fr;
    gap: 2rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 2.56rem 0;
  }
}
.c-dlBox-1 + .c-dlBox-1 {
  border-top: 0;
  margin-top: 0;
}
.c-dlBox-1 dt {
  text-align: center;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .c-dlBox-1 dt {
    text-align: left;
  }
}

.c-img-1 img {
  margin: 0 auto;
}
.c-img-1.-scroll {
  display: block;
  width: 100%;
  overflow-x: auto;
  -webkit-scroll-snap-type: x mandatory;
      -ms-scroll-snap-type: x mandatory;
          scroll-snap-type: x mandatory;
  -webkit-overflow-scrolling: touch;
}
.c-img-1.-scroll img {
  scroll-snap-align: start;
}

.c-imgAndTxt + * {
  margin-top: var(--marginTop);
}
.c-imgAndTxt .-img {
  float: left;
  width: 100%;
  margin-bottom: var(--marginTop);
}
@media screen and (min-width: 768px) {
  .c-imgAndTxt .-img {
    width: 50%;
    margin-right: 40px;
  }
}
.c-imgAndTxt .-img img {
  margin: auto;
}
.c-imgAndTxt::after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (min-width: 768px) {
  .c-imgAndTxt.-right .-img {
    float: right;
    margin-right: 0;
    margin-left: 40px;
  }
}

.c-imgAndTxt-2 {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .c-imgAndTxt-2 {
    grid-template-columns: 30% 1fr;
    gap: 2rem;
  }
}

.c-tab-1 {
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .c-tab-1 {
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-tab-1 button, .c-tab-1 a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  min-height: 50px;
  padding: 0.06rem;
  background: none;
  border: 1px solid var(--color-line2);
  color: var(--color-font);
  letter-spacing: 0.035rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .c-tab-1 button, .c-tab-1 a {
    padding: 0.06rem 0.15rem;
    min-height: 80px;
  }
}
@media screen and (min-width: 960px) {
  .c-tab-1 button, .c-tab-1 a {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .c-tab-1 button:hover, .c-tab-1 a:hover {
    background: var(--color-main);
    color: #fff;
    border-color: var(--color-main);
  }
}
.c-tab-1 button.is-active, .c-tab-1 a.is-active {
  background: var(--color-main);
  color: #fff;
  border: none;
}
@media screen and (max-width: 767px) {
  .c-tab-1 button + button, .c-tab-1 button + a, .c-tab-1 a + button, .c-tab-1 a + a {
    border-top: none;
  }
}
@media screen and (min-width: 768px) {
  .c-tab-1 button:first-child, .c-tab-1 a:first-child {
    border-radius: 4px 0 0 0;
  }
}
@media screen and (min-width: 768px) {
  .c-tab-1 button:last-child, .c-tab-1 a:last-child {
    border-radius: 0 4px 0 0;
  }
}
@media screen and (min-width: 768px) {
  .c-tab-1 button + button, .c-tab-1 button + a, .c-tab-1 a + button, .c-tab-1 a + a {
    border-left: none;
  }
}
@media screen and (min-width: 768px) {
  .c-tab-1.-col4 {
    grid-template-columns: repeat(4, 1fr);
  }
}
.c-tab-1.-spCol {
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 767px) {
  .c-tab-1.-spCol button + button, .c-tab-1.-spCol button + a, .c-tab-1.-spCol a + button, .c-tab-1.-spCol a + a {
    border-top: 1px solid var(--color-line2);
  }
}
.c-tab-1.-spCol button + button, .c-tab-1.-spCol button + a, .c-tab-1.-spCol a + button, .c-tab-1.-spCol a + a {
  border-left: none;
}
.c-tab-1.-spCol button:first-child, .c-tab-1.-spCol a:first-child {
  border-radius: 4px 0 0 0;
}
.c-tab-1.-spCol button:last-child, .c-tab-1.-spCol a:last-child {
  border-radius: 0 4px 0 0;
}

.c-videoPlayer-1 {
  width: 100%;
  max-width: 1040px;
  aspect-ratio: 16/9;
  margin-right: auto;
  margin-left: auto;
}
.c-videoPlayer-1 video {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.c-slide-1 {
  padding-bottom: 6rem;
  --arrowWidth: 2.125rem;
}
.c-slide-1__outer {
  margin-top: var(--marginTop);
  position: relative;
  --arrowPadding: 4.3rem;
}
@media screen and (min-width: 768px) {
  .c-slide-1__outer {
    margin-top: 4rem;
  }
}
.c-slide-1__item {
  width: calc(100vw - var(--sidePadding) * 2 - 0.3rem);
  margin: 0 0.3rem;
}
@media screen and (min-width: 768px) {
  .c-slide-1__item {
    width: calc(100vw - var(--sidePadding) * 2 - 0.3rem);
    max-width: 644px;
  }
}
.c-slide-1__item figure {
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.c-slide-1__item figure img {
  width: 100%;
}
.c-slide-1__item:not(.slick-current) figure {
  opacity: 0.5;
}
@media screen and (min-width: 768px) {
  .c-slide-1 {
    --arrowWidth: 2.5rem;
  }
}
.c-slide-1 .slick-prev, .c-slide-1 .slick-next {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: var(--arrowWidth);
  height: var(--arrowWidth);
  background: #edf1f3;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: auto;
  bottom: 2.1rem;
  right: var(--arrowPadding);
  left: auto;
  cursor: pointer;
}
.c-slide-1 .slick-prev:focus, .c-slide-1 .slick-next:focus {
  background: #edf1f3;
}
.c-slide-1 .slick-prev:hover, .c-slide-1 .slick-next:hover {
  background: var(--color-point);
}
.c-slide-1 .slick-prev::before, .c-slide-1 .slick-prev::after, .c-slide-1 .slick-next::before, .c-slide-1 .slick-next::after {
  content: none;
}
.c-slide-1 .slick-prev img, .c-slide-1 .slick-next img {
  width: 0.75rem;
  aspect-ratio: 1/1;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}
.c-slide-1 .slick-prev {
  bottom: 0.5rem;
  right: calc(var(--arrowPadding) + 1.5rem + var(--arrowWidth) * 0.5);
}
.c-slide-1__counter {
  position: absolute;
  bottom: 3rem;
  left: var(--arrowPadding);
  -webkit-transform: translateY(50%);
          transform: translateY(50%);
}
@media screen and (min-width: 768px) {
  .c-slide-1__counter {
    left: auto;
    right: calc(var(--arrowPadding) + 10rem);
  }
}
.c-slide-1__counter span {
  font-size: 1.5rem;
  font-weight: 900;
}
.c-slide-1__counter span.total {
  color: #a8abaf;
}
.c-slide-1__counter span.total::before {
  content: "/ ";
}

html {
  font-family: "Lato", "Noto Sans JP", sans-serif;
  color: var(--color-font);
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
  scroll-padding-top: var(--header);
  font-size: clamp(0.875rem, 0.75rem + 0.34vw, 1rem);
}
@media screen and (min-width: 960px) {
  html {
    font-size: clamp(1rem, 0.778rem + 0.37vw, 1.125rem);
  }
}

body {
  font-size: 1rem;
  font-weight: var(--font-r);
  letter-spacing: 0.36px;
}

svg {
  width: 100%;
  height: 100%;
}

a {
  color: var(--color-link);
  text-decoration: none;
}
a:visited {
  color: var(--color-visited);
}

a.c-telLink {
  color: var(--color-font);
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  a.c-telLink {
    pointer-events: none;
    cursor: default;
  }
}

button {
  cursor: pointer;
}

.l-loader {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100vh;
  width: 100%;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  -webkit-transition: all 0.6s ease 0.55s;
  transition: all 0.6s ease 0.55s;
}
.l-loader__logo {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1rem;
  -webkit-transition: 0.4s ease;
  transition: 0.4s ease;
}
.l-loader__logo img {
  width: 118px;
}
.l-loader__logo > span {
  color: #4C4948;
  font-size: 0.65rem;
  font-weight: var(--font-b);
  letter-spacing: 0.48rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (min-width: 960px) {
  .l-loader__logo > span {
    font-size: 0.875rem;
    letter-spacing: 0.2625rem;
  }
}
.l-loader.-loaded {
  opacity: 0;
  visibility: hidden;
}
.l-loader.-loaded .l-loader__logo {
  opacity: 0;
}

.l-header {
  display: grid;
  grid-template-columns: 1fr 27.8% auto;
  gap: 0.13rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: var(--header);
  padding: 1rem var(--sidePadding);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}
@media screen and (min-width: 960px) {
  .l-header {
    grid-template-columns: auto 1fr auto;
    gap: clamp(1.8rem, 3vw, 3rem);
    padding: 1rem clamp(1.2rem, -3.555rem + 7.92vw, 4.37rem);
    background: #fff;
  }
}
.l-header > * {
  z-index: 2;
}
.l-header__logo {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  padding-right: 0.5rem;
}
@media screen and (min-width: 960px) {
  .l-header__logo {
    gap: clamp(1.5rem, -0.375rem + 3.13vw, 2.75rem);
  }
}
.l-header__logo a {
  display: block;
  max-width: 88px;
  position: relative;
}
@media screen and (min-width: 960px) {
  .l-header__logo a {
    max-width: none;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  .l-header__logo a:hover {
    opacity: 0.6;
  }
}
.l-header__logo img {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (min-width: 960px) {
  .l-header__logo img {
    width: 118px;
  }
}
.l-header__logo img:nth-child(2) {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
}
.l-header__logo > span {
  color: #4C4948;
  font-size: 0.5rem;
  font-weight: var(--font-b);
  letter-spacing: 0.15rem;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (min-width: 960px) {
  .l-header__logo > span {
    font-size: 0.875rem;
    letter-spacing: 0.2625rem;
  }
}
.l-header__entry {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 100%;
  max-width: 100px;
  margin-left: auto;
  border-radius: 0.25rem;
  background: -webkit-linear-gradient(109deg, #253E86 -30.95%, #12B9E0 94.68%);
  background: linear-gradient(341deg, #253E86 -30.95%, #12B9E0 94.68%);
  text-align: center;
  font-size: 13px;
  font-size: 0.8125rem;
  font-weight: var(--font-b);
  color: #fff;
  letter-spacing: 0.08rem;
  --color-visited: #fff;
}
@media screen and (min-width: 960px) {
  .l-header__entry {
    width: clamp(6.25rem, -38.75rem + 75vw, 8.125rem);
    max-width: none;
    -webkit-transition: -webkit-filter 0.3s ease;
    transition: -webkit-filter 0.3s ease;
    transition: filter 0.3s ease;
    transition: filter 0.3s ease, -webkit-filter 0.3s ease;
  }
  .l-header__entry:hover {
    -webkit-filter: brightness(1.3);
            filter: brightness(1.3);
  }
}
.l-header.-navActive .l-header__logo img:nth-child(1) {
  opacity: 0;
}
.l-header.-navActive .l-header__logo img:nth-child(2) {
  opacity: 1;
}
.l-header.-navActive .l-header__logo > span {
  color: #fff;
}
.l-header.-navActive .l-nav__btn {
  background: #fff;
}
.l-header.-navActive .l-nav__btn::before, .l-header.-navActive .l-nav__btn::after {
  width: 1rem;
  background: var(--color-sub);
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  top: 50%;
}
.l-header.-navActive .l-nav__btn::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}

body.p-news .l-nav__list li:nth-child(1) a {
  color: var(--color-main);
}
body.p-company .l-nav__list li:nth-child(2) a {
  color: var(--color-main);
}
body.p-environment .l-nav__list li:nth-child(3) a {
  color: var(--color-main);
}
body.p-interview .l-nav__list li:nth-child(4) a {
  color: var(--color-main);
}
body.p-recruitment .l-nav__list li:nth-child(5) a {
  color: var(--color-main);
}

.l-nav {
  display: none;
  width: 100%;
  height: 100%;
  background: url(/recruit/assets/img/bg_nav.jpg) no-repeat center/cover;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (min-width: 960px) {
  .l-nav {
    display: block;
    position: static;
    background: none;
  }
}
.l-nav__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1.8rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  padding: var(--header) var(--sidePadding) calc(var(--header) * 0.5);
}
@media screen and (min-width: 960px) {
  .l-nav__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 0;
    gap: clamp(1rem, -0.5rem + 2.5vw, 2rem);
    -webkit-box-pack: end;
    -webkit-justify-content: flex-end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.l-nav__list li a {
  color: #fff;
  font-size: 1.125rem;
  font-weight: var(--font-m);
  --color-visited: #fff;
}
@media screen and (min-width: 960px) {
  .l-nav__list li a {
    color: var(--color-font);
    font-size: clamp(0.8rem, 0.5rem + 0.5vw, 1rem);
    font-weight: var(--font-r);
    --color-visited: var(--color-font);
    -webkit-transition: color 0.2s ease;
    transition: color 0.2s ease;
  }
  .l-nav__list li a:hover {
    color: var(--color-main);
  }
}
.l-nav__btn {
  height: 100%;
  aspect-ratio: 1/1;
  border-radius: 0.25rem;
  background: var(--color-main);
  padding: 0;
  position: relative;
}
@media screen and (min-width: 960px) {
  .l-nav__btn {
    display: none;
  }
}
.l-nav__btn::before, .l-nav__btn::after {
  content: "";
  display: block;
  width: 1.11rem;
  height: 0.12rem;
  background: #fff;
  position: absolute;
  top: calc(50% - 0.18rem);
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.l-nav__btn::after {
  top: calc(50% + 0.18rem);
}

.l-footer {
  margin-top: 5rem;
  background: url(/recruit/assets/img/bg_footer.jpg) no-repeat center/cover;
  color: #fff;
  padding: 4.7rem var(--sidePadding);
}
@media screen and (min-width: 768px) {
  .l-footer {
    margin-top: 11rem;
    padding: 4rem var(--sidePadding) 5rem;
  }
}
.l-footer__inner {
  max-width: var(--maxWidth);
  margin: 0 auto;
}
.l-footer__join .-ttl {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.2rem;
  justify-items: center;
  font-weight: 700;
  text-align: center;
}
.l-footer__join .-ttl .-en {
  font-size: 1.9rem;
  letter-spacing: 0.115rem;
}
@media screen and (min-width: 768px) {
  .l-footer__join .-ttl .-en {
    font-size: 2.875rem;
  }
}
.l-footer__join .-ttl .-txt {
  font-size: 1.125rem;
  letter-spacing: 0.0625rem;
  line-height: 2rem;
}
@media screen and (min-width: 768px) {
  .l-footer__join .-ttl .-txt {
    font-size: 1.5625rem;
  }
}
.l-footer__join__bnr {
  margin-top: 2rem;
  padding: 0 var(--sidePadding);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.3rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .l-footer__join__bnr {
    gap: 2rem;
  }
}
@media screen and (min-width: 960px) {
  .l-footer__join__bnr a figure img {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .l-footer__join__bnr a:hover figure img {
    opacity: 0.6;
  }
}
.l-footer__join__bnr a figure {
  padding: 1.5rem 2.5rem;
  background: #fff;
  border-radius: 7px;
}
.l-footer__join__bnr a p {
  font-size: 0.875rem;
  letter-spacing: 0.035rem;
  line-height: 2;
  color: #fff;
  text-align: center;
}
.l-footer__bottom {
  margin-top: 2.8rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-footer__bottom {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 960px) {
  .l-footer__bottom {
    display: grid;
    grid-template-columns: 1fr auto;
    -webkit-box-align: end;
    -webkit-align-items: end;
        -ms-flex-align: end;
            align-items: end;
    gap: 2rem;
    -webkit-box-pack: start;
    -webkit-justify-content: start;
        -ms-flex-pack: start;
            justify-content: start;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__bottom__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: end;
    -webkit-align-items: end;
        -ms-flex-align: end;
            align-items: end;
    gap: 1rem 1.5rem;
  }
}
.l-footer__bottom__logo {
  display: block;
  width: 130px;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .l-footer__bottom__logo {
    width: 150px;
  }
}
@media screen and (min-width: 960px) {
  .l-footer__bottom__logo {
    margin: 0;
  }
}
@media screen and (min-width: 960px) and (min-width: 960px) {
  .l-footer__bottom__logo a {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  .l-footer__bottom__logo a:hover {
    opacity: 0.7;
  }
}
.l-footer__bottom__logo img {
  width: 100%;
}
.l-footer__bottom__links {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .l-footer__bottom__links {
    margin-top: 1rem;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__bottom__links {
    display: grid;
    grid-template-columns: auto auto;
    gap: 0.35rem 2rem;
    justify-items: start;
  }
}
.l-footer__bottom__links .c-link-1 {
  color: #fff;
  --color-visited: #fff;
}
.l-footer__bottom__links .c-link-1::before {
  background: #fff;
}
.l-footer__bottom__links .c-link-1::after {
  content: none;
}
@media screen and (min-width: 960px) {
  .l-footer__bottom__links .c-link-1 {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  .l-footer__bottom__links .c-link-1:hover {
    opacity: 0.7;
  }
}
.l-footer__bottom__links .-address {
  font-size: 0.875rem;
  font-weight: var(--font-r);
  letter-spacing: 0.04rem;
  line-height: 1.19rem;
  text-decoration: underline;
  color: #fff;
  --color-visited: #fff;
}
@media screen and (min-width: 768px) {
  .l-footer__bottom__links .-address {
    grid-column: 1/3;
    font-size: 1rem;
  }
}
@media screen and (min-width: 960px) {
  .l-footer__bottom__links .-address:hover {
    text-decoration: none;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__bottom__and-on {
    margin: 1rem auto 0;
  }
}
.l-footer__bottom__and-on a {
  display: -webkit-inline-box;
  display: -webkit-inline-flex;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  background: #042275;
  color: #fff;
  border-radius: 3px;
  padding: 0.5rem 1rem;
  vertical-align: top;
}
@media screen and (min-width: 960px) {
  .l-footer__bottom__and-on a {
    -webkit-transition: opacity 0.2s;
    transition: opacity 0.2s;
  }
  .l-footer__bottom__and-on a:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__bottom__and-on a {
    padding: 0.5rem 0.65rem;
  }
}
.l-footer__bottom__and-on a span {
  font-size: 0.6rem;
  font-weight: var(--font-m);
}
.l-footer__bottom__and-on a img {
  vertical-align: top;
  width: 77px;
}
.l-footer__bottom__copy {
  margin-top: 3.38rem;
  text-align: center;
  font-size: 0.75rem;
  letter-spacing: 0.1225rem;
  font-weight: var(--font-r);
}
@media screen and (min-width: 768px) {
  .l-footer__bottom__copy {
    margin-top: 3.4rem;
    letter-spacing: 0.035rem;
    grid-column: 1/-1;
  }
}
@media screen and (min-width: 960px) {
  .l-footer__bottom__copy {
    margin-top: 0;
    grid-column: auto;
    text-align: right;
  }
}

.l-news__list {
  max-width: 1320px;
  margin: 0 auto;
}
.l-news__item {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.62rem;
  padding: 1.25rem 0;
  border-bottom: 1px dashed var(--color-line);
}
@media screen and (min-width: 768px) {
  .l-news__item {
    grid-template-columns: 8rem 1fr;
    gap: 1.88rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    min-height: 4.38rem;
    padding: 1.25rem 1.92rem 1.25rem 1.5rem;
  }
}
.l-news__item > a {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 1rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-right: 0.42rem;
  color: var(--color-font);
}
.l-news__item > a::after {
  content: "";
  display: block;
  width: 5px;
  height: 8px;
  background: var(--color-font);
  -webkit-clip-path: polygon(0 0, 100% 50%, 0 100%);
          clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media screen and (min-width: 960px) {
  .l-news__item > a:hover {
    color: var(--color-main);
  }
}

.l-news__article {
  line-height: var(--lhL);
}
.l-news__article__backLink {
  text-align: center;
  margin-top: calc(var(--marginTop) + 5rem) !important;
  --color-visited: var(--color-font);
}
.l-news__article h3 {
  margin-top: 3.7rem;
  padding: 1.5rem 1rem;
  font-size: 1.5rem;
  font-weight: var(--font-b);
  border-top: 1px solid #D0DBDE;
  background: #F8F8F8;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-news__article h3 {
    margin-top: 7.5rem;
    padding: 3rem 1.5rem;
    font-size: 1.75rem;
  }
}
.l-news__article h3::after {
  content: "";
  display: block;
  width: 22%;
  height: 1px;
  background: var(--color-main);
  position: absolute;
  top: -1px;
  left: 0;
}
.l-news__article h4 {
  margin-top: calc(var(--marginTop) + 1.5rem);
  font-size: 1.25rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .l-news__article h4 {
    font-size: 1.5rem;
  }
}
.l-news__article h5 {
  font-size: 1.15rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .l-news__article h5 {
    font-size: 1.25rem;
  }
}
.l-news__article h6 {
  font-size: 1rem;
  font-weight: var(--font-b);
}
.l-news__article h3 + h4 {
  margin-top: var(--marginTop);
}

.l-second__mainTtl {
  padding: 8.6rem var(--sidePadding) 4.4rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-second__mainTtl {
    padding: 13.5rem var(--sidePadding) 7.5rem;
  }
}
.l-second__mainTtl::before {
  content: "";
  display: block;
  width: 100%;
  height: 620px;
  background: url(/recruit/assets/img/bg-prism.webp) no-repeat center/cover;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .l-second__mainTtl::before {
    height: 688px;
  }
}

.l-article > * {
  margin-top: var(--marginTop);
}
.l-article__ttl-1 {
  margin-top: 3.7rem;
  padding: 1.5rem 1rem;
  font-size: 1.5rem;
  font-weight: var(--font-b);
  border-top: 1px solid #D0DBDE;
  background: #F8F8F8;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-article__ttl-1 {
    margin-top: 7.5rem;
    padding: 3rem 1.5rem;
    font-size: 1.75rem;
  }
}
.l-article__ttl-1::after {
  content: "";
  display: block;
  width: 22%;
  height: 1px;
  background: var(--color-main);
  position: absolute;
  top: -1px;
  left: 0;
}
.l-article__ttl-2 {
  margin-top: calc(var(--marginTop) + 1.5rem);
  font-size: 1.25rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .l-article__ttl-2 {
    font-size: 1.5rem;
  }
}
.l-article__ttl-3 {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.2rem;
  margin-top: calc(var(--marginTop) + 1.5rem);
  font-size: 1.25rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .l-article__ttl-3 {
    font-size: 1.5rem;
  }
}
.l-article__ttl-3::before {
  content: "―";
}
.l-article__ttl-1 + .l-article__ttl-2 {
  margin-top: var(--marginTop);
}
.l-article figure figcaption {
  margin-top: 0.3rem;
  font-weight: var(--font-r);
  font-size: 0.85em;
  color: #666;
  text-align: center;
}

.l-ranking {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 0.2rem 1rem;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-ranking li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
}
.l-ranking li .-rank {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0.3rem;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.875rem;
  font-weight: var(--font-m);
  letter-spacing: 0.035rem;
}
.l-ranking li .-rank::before {
  content: "";
  display: block;
  width: 0.94rem;
  aspect-ratio: 1/1;
  background: url(/recruit/assets/img/ico-crown-gold.svg) no-repeat center/cover;
}
.l-ranking li .-pref {
  font-size: 1.125rem;
  font-weight: var(--font-b);
}
.l-ranking li:nth-child(2) .-rank::before {
  background-image: url(/recruit/assets/img/ico-crown-silver.svg);
}
.l-ranking li:nth-child(3) .-rank::before {
  background-image: url(/recruit/assets/img/ico-crown-bronze.svg);
}

.l-tourism-img {
  margin-top: var(--marginTop);
  position: relative;
}
.l-tourism-img img {
  position: relative;
  z-index: 1;
}
.l-tourism-img::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: url(/recruit/environment/images/life/img-tourism-map.webp) no-repeat center/auto 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.l-fukuiijunavi-bnr {
  text-align: center;
}
.l-fukuiijunavi-bnr a {
  display: inline-block;
}

.l-bnr-company {
  margin-top: 5rem;
  background: url(/recruit/assets/img/bg-company-bnr.webp) no-repeat center center/cover;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-bnr-company {
    margin-top: 11rem;
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company {
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
  }
  .l-bnr-company:hover {
    opacity: 0.6 !important;
  }
}
.l-bnr-company a {
  display: block;
  padding: 4rem var(--sidePadding) 3rem;
  color: var(--color-font);
  --color-visited: var(--color-font);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .l-bnr-company a {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    min-height: 400px;
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company a {
    min-height: 400px;
    padding: 6.8rem var(--sidePadding) 7rem;
  }
}
@media screen and (min-width: 768px) {
  .l-bnr-company a .c-ttl-1 .-main br.sp-only {
    display: none;
  }
}
.l-bnr-company a > p {
  margin-top: 1.25rem;
  text-align: center;
  line-height: var(--lhL);
  letter-spacing: 0.035rem;
}
@media screen and (min-width: 768px) {
  .l-bnr-company a > p br.sp-only {
    display: none;
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company a > p {
    margin-top: 1.5rem;
  }
}
.l-bnr-company__imgs {
  --padding-top: 1.31rem;
  width: 100%;
  height: calc(100% + var(--padding-top));
  pointer-events: none;
  position: absolute;
  bottom: 0;
  left: 0;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .l-bnr-company__imgs {
    --padding-top: 1.88rem;
  }
}
.l-bnr-company__imgs figure {
  position: absolute;
}
@media screen and (max-width: 767px) {
  .l-bnr-company__imgs figure {
    display: none;
  }
}
.l-bnr-company__imgs figure:nth-child(1) {
  display: block;
  width: 97px;
  top: 0.1rem;
  right: calc(50% + 5.81rem);
}
@media screen and (min-width: 768px) {
  .l-bnr-company__imgs figure:nth-child(1) {
    width: 155px;
    top: 0;
    right: calc(50% + 13.13rem);
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company__imgs figure:nth-child(1) {
    right: calc(50% + 17.13rem);
  }
}
.l-bnr-company__imgs figure:nth-child(2) {
  width: 203px;
  top: calc(3.87rem + var(--padding-top));
  right: calc(50% + 34rem);
}
.l-bnr-company__imgs figure:nth-child(3) {
  width: 180px;
  bottom: 1.44rem;
  right: calc(50% + 17.94rem);
}
@media screen and (min-width: 960px) {
  .l-bnr-company__imgs figure:nth-child(3) {
    right: calc(50% + 20.94rem);
  }
}
.l-bnr-company__imgs figure:nth-child(4) {
  display: block;
  width: 24px;
  top: 0.69rem;
  right: calc(50% + 3.12rem);
}
@media screen and (min-width: 768px) {
  .l-bnr-company__imgs figure:nth-child(4) {
    width: 38px;
    top: auto;
    bottom: 3.44rem;
    right: calc(50% + 12.75rem);
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company__imgs figure:nth-child(4) {
    right: calc(50% + 14.75rem);
  }
}
.l-bnr-company__imgs figure:nth-child(5) {
  display: block;
  width: 38px;
  bottom: 7rem;
  left: calc(50% + 7.19rem);
}
@media screen and (min-width: 768px) {
  .l-bnr-company__imgs figure:nth-child(5) {
    width: 62px;
    top: calc(2.37rem + var(--padding-top));
    bottom: auto;
    left: calc(50% + 7.5rem);
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company__imgs figure:nth-child(5) {
    left: calc(50% + 9.5rem);
  }
}
.l-bnr-company__imgs figure:nth-child(6) {
  width: 198px;
  top: calc(var(--padding-top) - 1rem);
  left: calc(50% + 14rem);
}
@media screen and (min-width: 960px) {
  .l-bnr-company__imgs figure:nth-child(6) {
    left: calc(50% + 16rem);
  }
}
.l-bnr-company__imgs figure:nth-child(7) {
  display: block;
  width: 163px;
  top: 0;
  left: calc(50% + 3.19rem);
}
@media screen and (min-width: 768px) {
  .l-bnr-company__imgs figure:nth-child(7) {
    width: 263px;
    top: calc(2.94rem + var(--padding-top));
    left: calc(50% + 32.15rem);
  }
}
.l-bnr-company__imgs figure:nth-child(8) {
  display: block;
  width: 67px;
  bottom: 4.19rem;
  right: calc(50% + 7.94rem);
}
@media screen and (min-width: 768px) {
  .l-bnr-company__imgs figure:nth-child(8) {
    width: 109px;
    bottom: 2.19rem;
    right: auto;
    left: calc(50% + 19.25rem);
  }
}
@media screen and (min-width: 960px) {
  .l-bnr-company__imgs figure:nth-child(8) {
    left: calc(50% + 23.25rem);
  }
}

:root {
  --modal-radius: 4px;
  --modal-verticalMargin: 3rem;
}
@media screen and (min-width: 768px) {
  :root {
    --modal-radius: 14px;
    --modal-verticalMargin: 4rem;
  }
}

.l-interview__list {
  margin-top: 2.5rem;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1rem;
}
@media screen and (min-width: 768px) {
  .l-interview__list {
    margin-top: 5rem;
    gap: 1.97rem;
  }
}
@media screen and (min-width: 960px) {
  .l-interview__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.l-interview__btn {
  display: block;
  border-radius: 4px;
  background: #fff;
  color: var(--color-font);
  -webkit-box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.1);
  --color-visited: var(--color-font);
}
@media screen and (min-width: 768px) {
  .l-interview__btn {
    border-radius: 8px;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
  }
}
@media screen and (min-width: 960px) {
  .l-interview__btn {
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
  }
  .l-interview__btn:hover {
    -webkit-box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
            box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.2);
    -webkit-transform: scale(1.01);
            transform: scale(1.01);
  }
}
.l-interview__btn .-img {
  aspect-ratio: 1/1;
  border-radius: 4px 4px 0 0;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .l-interview__btn .-img {
    border-radius: 8px 8px 0 0;
  }
}
.l-interview__btn .-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.l-interview__btn .-txtBox {
  padding: 0.94rem 0.6rem;
}
@media screen and (min-width: 768px) {
  .l-interview__btn .-txtBox {
    padding: 2rem 2rem 3rem;
  }
}
.l-interview__btn .-txtBox .-sub {
  font-size: 0.75rem;
  font-weight: var(--font-r);
  letter-spacing: 0.025rem;
}
@media screen and (min-width: 768px) {
  .l-interview__btn .-txtBox .-sub {
    font-size: 0.875rem;
  }
}
.l-interview__btn .-txtBox .-main {
  margin-top: 0.6rem;
  font-size: 0.9rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .l-interview__btn .-txtBox .-main {
    font-size: 1.5rem;
  }
}
.l-interview__video {
  margin-top: 6rem;
}
@media screen and (min-width: 768px) {
  .l-interview__video {
    margin-top: 12rem;
  }
}
.l-interview__video video {
  margin-top: 2rem;
}
.l-interview__item {
  max-height: calc(100vh - var(--modal-verticalMargin) * 2 + 0.4rem);
  overflow: auto;
}
.l-interview__item .l-article {
  line-height: var(--lhL);
}
.l-interview__mv {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  height: 300px;
}
@media screen and (min-width: 768px) {
  .l-interview__mv {
    height: 480px;
  }
}
@media screen and (min-width: 960px) {
  .l-interview__mv {
    height: 615px;
  }
}
.l-interview__mv::after {
  content: "";
  display: block;
  width: 100%;
  height: 60%;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), color-stop(198.44%, #000));
  background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, #000 198.44%);
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, #000 198.44%);
  mix-blend-mode: multiply;
  position: absolute;
  bottom: 0;
  left: 0;
}
.l-interview__mv__ttl {
  color: #fff;
  padding: 0.63rem 0;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .l-interview__mv__ttl {
    padding: 2.63rem 0;
  }
}
.l-interview__mv__ttl .-sub {
  font-size: 0.85rem;
  font-weight: var(--font-r);
  letter-spacing: 0.025rem;
}
@media screen and (min-width: 768px) {
  .l-interview__mv__ttl .-sub {
    font-size: 1rem;
  }
}
.l-interview__mv__ttl .-main {
  margin-top: 0.3rem;
  font-size: 1.5rem;
  font-weight: var(--font-b);
  letter-spacing: 0.05rem;
}
@media screen and (min-width: 768px) {
  .l-interview__mv__ttl .-main {
    margin-top: 0.5rem;
    font-size: 2.25rem;
  }
}
.l-interview__mv__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-radius: var(--modal-radius) var(--modal-radius) 0 0;
  overflow: hidden;
  height: 300px;
}
@media screen and (min-width: 768px) {
  .l-interview__mv__img {
    height: 480px;
  }
}
@media screen and (min-width: 960px) {
  .l-interview__mv__img {
    height: 615px;
  }
}
.l-interview__mv__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.l-interview__message {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem;
  justify-items: center;
  margin-top: 2.5rem;
  background: var(--color-bg2);
  border-radius: 4px;
  padding: 1.25rem 0.9375rem;
}
@media screen and (min-width: 768px) {
  .l-interview__message {
    grid-template-columns: 1fr auto;
    gap: 2rem;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-top: 7.5rem;
    border-radius: 8px;
    padding: 3rem 4rem;
  }
}
.l-interview__message .-img {
  width: 155px;
}
@media screen and (min-width: 768px) {
  .l-interview__message .-img {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    width: 232px;
  }
}
@media screen and (min-width: 768px) {
  .l-interview__message .-txtBox {
    height: 100%;
  }
}
.l-interview__message .-txtBox .-ttl {
  text-align: center;
  margin-top: 1.3rem;
  font-size: 1rem;
  font-weight: var(--font-b);
}
@media screen and (min-width: 768px) {
  .l-interview__message .-txtBox .-ttl {
    font-size: 1.5rem;
    text-align: left;
  }
}
.l-interview__message .-txtBox .-ttl + * {
  margin-top: 0.7rem;
}
@media screen and (min-width: 768px) {
  .l-interview__message .-txtBox .-ttl + * {
    margin-top: 1.5rem;
  }
}
.l-interview__schedule {
  margin-top: 3rem;
  background: #181F2F;
  color: #fff;
  padding: 3rem var(--sidePadding) 3.75rem;
  border-radius: 0 0 var(--modal-radius) var(--modal-radius);
}
@media screen and (min-width: 768px) {
  .l-interview__schedule {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4rem 2.5rem;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    margin-top: 7.5rem;
    padding: 4rem var(--sidePadding) 9.5rem;
  }
}
.l-interview__schedule .-ttl {
  font-size: 1.375rem;
  font-weight: var(--font-b);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-interview__schedule .-ttl {
    grid-column: span 2;
    font-size: 1.75rem;
  }
}
.l-interview__schedule .-ttl + * {
  margin-top: 2.7rem;
}
@media screen and (min-width: 768px) {
  .l-interview__schedule .-ttl + * {
    margin-top: 0;
  }
}
.l-interview__schedule__list {
  height: 100%;
  display: grid;
  grid-template-columns: 1fr;
  -webkit-align-content: start;
      -ms-flex-line-pack: start;
          align-content: start;
  --circle-width: 0.75rem;
}
@media screen and (max-width: 767px) {
  .l-interview__schedule__list + .l-interview__schedule__list li:first-child {
    padding-top: 1rem;
  }
}
@media screen and (min-width: 768px) {
  .l-interview__schedule__list:not(.-afternoon) {
    position: relative;
  }
  .l-interview__schedule__list:not(.-afternoon)::before {
    content: "";
    display: block;
    width: 1px;
    height: calc(100% - var(--circle-width) - 1rem);
    background: #8B8F97;
    position: absolute;
    bottom: calc(0% + 0.5rem);
    left: calc(var(--circle-width) * 0.5 - 0.5px);
  }
}
.l-interview__schedule__list:not(.-afternoon) li:first-child::before {
  height: calc(100% - 0.5rem);
  top: auto;
  bottom: 0;
}
.l-interview__schedule__list li {
  display: grid;
  grid-template-columns: 4.6rem 1fr;
  gap: 0.63rem;
  position: relative;
}
@media screen and (min-width: 768px) {
  .l-interview__schedule__list li {
    grid-template-columns: 5.19rem 1fr;
    gap: 2.75rem;
  }
}
.l-interview__schedule__list li + li {
  padding-top: 1rem;
}
@media screen and (min-width: 768px) {
  .l-interview__schedule__list li + li {
    padding-top: 1.5rem;
  }
}
@media screen and (min-width: 768px) {
  .l-interview__schedule__list li:first-child::before {
    height: calc(100% - 0.5rem);
    top: auto;
    bottom: 0;
  }
}
.l-interview__schedule__list li::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #8B8F97;
  position: absolute;
  top: calc(0% - 0.5rem);
  left: calc(var(--circle-width) * 0.5 - 0.5px);
}
.l-interview__schedule__list li .-time {
  text-align: right;
  font-weight: var(--font-b);
  position: relative;
  z-index: 1;
}
.l-interview__schedule__list li .-time::before {
  content: "";
  display: block;
  width: var(--circle-width);
  aspect-ratio: 1/1;
  border: 2px solid #fff;
  background: #181F2F;
  border-radius: 9999px;
  position: absolute;
  top: 0.5rem;
  left: 0;
}
.l-interview__schedule__list.-afternoon li .-time::before {
  background: #fff;
}

.modaal-inner-wrapper {
  padding: 0 0.63rem;
}
@media screen and (min-width: 768px) {
  .modaal-inner-wrapper {
    padding: 0 var(--sidePadding);
  }
}

.modaal-container {
  border-radius: var(--modal-radius) !important;
  max-width: 1095px !important;
}

.modaal-wrapper .modaal-close {
  width: 3rem;
  height: 3rem;
  top: 0;
  right: 0;
}
@media screen and (min-width: 960px) {
  .modaal-wrapper .modaal-close {
    top: 1rem;
    right: 1rem;
  }
}
.modaal-wrapper .modaal-close::before, .modaal-wrapper .modaal-close::after {
  width: 1.5px;
  height: 18px;
  top: 1.5rem;
  left: 1.5rem;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
@media screen and (min-width: 768px) {
  .modaal-wrapper .modaal-close::before, .modaal-wrapper .modaal-close::after {
    width: 3px;
    height: 22px;
  }
}
.modaal-wrapper .modaal-close::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (min-width: 960px) {
  .modaal-wrapper .modaal-close:hover::before, .modaal-wrapper .modaal-close:hover::after {
    background: var(--color-sub);
  }
}

.p-interview__person {
  text-align: center;
  font-size: 1.2rem;
  font-weight: var(--font-b);
  color: var(--color-main);
}
@media screen and (min-width: 960px) {
  .p-interview__person {
    font-size: 1.8rem;
  }
}
.p-interview__person + * {
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .p-interview__person + * {
    margin-top: 4rem;
  }
}
@media screen and (min-width: 960px) {
  .p-interview__person + * {
    margin-top: 6rem;
  }
}
.p-interview__person .c-img-1 {
  max-width: 1200px;
  margin: 1rem auto;
}
@media screen and (min-width: 768px) {
  .p-interview__person .c-img-1 {
    margin: 3rem auto;
  }
}

.p-recruitment__list {
  margin-top: 2.5em;
}
@media screen and (min-width: 768px) {
  .p-recruitment__list {
    margin-top: 5rem;
  }
}

.mt0 {
  margin-top: 0;
}

.mt5 {
  margin-top: 0.3125rem;
}

.mt10 {
  margin-top: 0.625rem;
}

.mt20 {
  margin-top: 1.25rem;
}

.mt30 {
  margin-top: 1.875rem;
}