@charset "UTF-8";
@import url("satoshi.css");
/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*,
::before,
::after {
  box-sizing: border-box;
  border-style: solid;
  border-width: 0;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  -webkit-tap-highlight-color: transparent; /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

/* Lists (enumeration) */
/* ============================================ */
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
  border-top-width: 1px;
  margin: 0;
  clear: both;
  color: inherit;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
  text-decoration: none;
  color: inherit;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: inherit; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
img,
embed,
object,
iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button,
input,
optgroup,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: 0;
  border-radius: 0;
  text-align: inherit;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button[disabled],
[type=button][disabled],
[type=reset][disabled],
[type=submit][disabled] {
  cursor: default;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  margin: 0;
  padding: 0;
  min-width: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px; /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption {
  text-align: left;
}

td,
th {
  vertical-align: top;
  padding: 0;
}

th {
  text-align: left;
  font-weight: bold;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

::-moz-placeholder {
  opacity: 1;
}

::placeholder {
  opacity: 1;
}

label {
  cursor: pointer;
}

img,
iframe,
video {
  vertical-align: top;
}

dt {
  font-weight: inherit;
}

:where(dialog) {
  inset: 0;
  border: unset;
  padding: unset;
  width: unset;
  max-width: unset;
  height: unset;
  max-height: unset;
  background-color: unset;
  overflow: unset;
  color: unset;
}

:focus:not(:focus-visible) {
  outline: none;
}

:root {
  --scrollbarW: 0;
  --htmlW: calc(100vw - var(--scrollbarW) * 1px);
  --negLeading: calc((1em - 1lh) / 2);
  --transEasing: ease-in-out;
  --transDur: 0.3s;
  --designW: 1440;
  --contW: min(1296 / var(--designW) * 100%, 1296px);
  --contMargin_hor: calc((100% - var(--contW)) / 2);
  /* alchemy color palette */
  /* light-blue */
  --light-blue-50: #eaf8ff;
  --light-blue-100: #caedfe;
  --light-blue-200: #a0e1ff;
  --light-blue-300: #7bd3f9;
  --light-blue-400: #60ccf8;
  --light-blue-500: #39b0e7;
  --light-blue-600: #0b8ccb;
  --light-blue-700: #2a74ae;
  --light-blue-800: #1d6294;
  --light-blue-900: #014466;
  --light-blue-1000: #00314e;
  --light-blue-1100: #001726;
  /* dark-blue */
  --dark-blue-50: #f2f5fd;
  --dark-blue-100: #e1e6f8;
  --dark-blue-200: #cfd8f9;
  --dark-blue-300: #bac9fc;
  --dark-blue-400: #98adfb;
  --dark-blue-500: #7a91f9;
  --dark-blue-600: #5f75f0;
  --dark-blue-700: #4b5ce8;
  --dark-blue-800: #3a3be2;
  --dark-blue-900: #2d1cca;
  --dark-blue-1000: #130a69;
  --dark-blue-1100: #040030;
  --ff_TBGothicDB: "mfw-tbgostddb-normal";
  --ff_TBGothicR: "mfw-tbgostdr-normal";
  --ff_NotoSansJP: "Noto Sans JP", sans-serif;
  --ff_Satoshi: Satoshi-Variable;
  --ff_Inter: "Inter", sans-serif;
  --_ff-default: var(--ff_Satoshi), var(--ff_TBGothicR), sans-serif;
  --_ff-bold: var(--ff_Satoshi), var(--ff_TBGothicDB), sans-serif;
}
@media screen and (max-width: 767px) {
  :root {
    --designW: 402;
    --contW: calc(354 / var(--designW) * 100%);
  }
}

:lang(en) {
  --negLeading: calc((1cap - 1lh) / 2);
  font-family: var(--ff_Satoshi);
}

/**
 * Base
 */
:root {
  interpolate-size: allow-keywords;
}

html,
body {
  height: 100%;
}

html.is_locked {
  position: fixed;
  width: 100%;
  overscroll-behavior: none;
}

body {
  color: var(--light-blue-1000);
  font-family: var(--_ff-default);
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.78;
  letter-spacing: 0.07em;
  overflow-y: scroll;
  overflow-wrap: anywhere;
  -moz-osx-font-smoothing: unset;
  -webkit-font-smoothing: subpixel-antialiased;
  -webkit-text-size-adjust: 100%;
  font-feature-settings: "palt" on, "ss01" on, "ss03" on;
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  body {
    -moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 0.875rem;
    line-height: 1.72;
    letter-spacing: 0.05em;
  }
}

img {
  max-width: 100%;
  height: auto;
  pointer-events: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
}

*::-moz-selection {
  background-color: var(--light-blue-100);
}

*::selection {
  background-color: var(--light-blue-100);
}

@keyframes scroll-hint-appear {
  0% {
    transform: translateX(40px);
    opacity: 0;
  }
  10% {
    opacity: 1;
  }
  50%, 100% {
    transform: translateX(-40px);
    opacity: 0;
  }
}
.scroll-hint.is-right-scrollable {
  background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
  position: absolute;
  top: calc(50% - 25px);
  left: calc(50% - 60px);
  box-sizing: border-box;
  width: 120px;
  height: 80px;
  border-radius: 5px;
  transition: opacity 0.3s;
  opacity: 0;
  background: rgba(0, 0, 0, 0.7);
  text-align: center;
  padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-height: 100%;
  pointer-events: none;
}

.scroll-hint-text {
  font-size: 10px;
  color: #FFF;
  margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
  opacity: 0.8;
}

.scroll-hint-icon:before {
  display: inline-block;
  width: 40px;
  height: 40px;
  color: #FFF;
  vertical-align: middle;
  text-align: center;
  content: "";
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
  content: "";
  width: 34px;
  height: 14px;
  display: block;
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -20px;
  background-repeat: no-repeat;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
  opacity: 0;
  transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
  opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
  animation: scroll-hint-appear 1.2s linear;
  animation-iteration-count: 2;
}

.scroll-hint-icon-white {
  background-color: #FFF;
  box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
  background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
  color: #000;
}

/**
 * Layout
 */
.ly_cont {
  padding-block: 232px 300px;
}
@media screen and (max-width: 767px) {
  .ly_cont {
    padding-block: 138px 180px;
  }
}
.ly_article {
  row-gap: 100px;
  margin-top: 42px;
}
@media not all and (max-width: 767px), print {
  .ly_article {
    margin-top: 64px;
  }
}
.ly_article > .inner > main {
  position: relative;
  padding-top: 57px;
}
@media not all and (max-width: 767px), print {
  .ly_article > .inner > main {
    grid-column: span 4;
    padding-left: var(--_padIn);
    padding-top: 72px;
  }
}
.ly_article > .inner > main .el_animBox {
  left: var(--_padIn);
}
@media screen and (max-width: 767px) {
  .ly_article > .inner > main .el_animBox {
    scale: 0.63;
  }
}
.ly_article > .inner .subNav {
  display: flex;
  flex-direction: column;
  row-gap: 64px;
}
@media not all and (max-width: 767px), print {
  .ly_article > .inner .subNav {
    grid-column: span 2;
    padding-left: min(calc(110 / (var(--designW) + var(--scrollbarW)) * 100vw), 110px);
    padding-right: var(--_padIn);
  }
}
@media screen and (max-width: 767px) {
  .ly_article > .inner .subNav {
    flex-direction: column-reverse;
    row-gap: 42px;
    margin-top: 100px;
  }
}
.ly_article > .inner .subNav .fileList {
  display: grid;
  row-gap: 16px;
}
.ly_article > .inner .subNav .fileList > li > a {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  -moz-column-gap: 16px;
  column-gap: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--light-blue-100);
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
  transition: border-color var(--transDur);
}
.ly_article > .inner .subNav .fileList > li > a::after {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-size: 100%;
  mask-size: 100%;
}
.ly_article > .inner .subNav .fileList > li > a[target=_blank]::after {
  content: "";
  width: 20px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_blank.svg);
  mask-image: url(../img/common/icon/icon_blank.svg);
  background-color: var(--light-blue-700);
}
.ly_article > .inner .subNav .fileList > li > a[href$=".pdf"]::after, .ly_article > .inner .subNav .fileList > li > a[href*=".doc"]::after, .ly_article > .inner .subNav .fileList > li > a[href*=".xls"]::after, .ly_article > .inner .subNav .fileList > li > a[href*=".ppt"]::after, .ly_article > .inner .subNav .fileList > li > a[href$=".zip"]::after {
  content: "";
  width: 24px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_file.svg);
  mask-image: url(../img/common/icon/icon_file.svg);
  background-color: var(--light-blue-600);
}
.ly_article > .inner .subNav .fileList > li > a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(100% - 24px);
  height: 1px;
  background-image: linear-gradient(var(--dark-blue-900) 0%, var(--dark-blue-900) 100%);
  background-repeat: no-repeat;
  background-size: 0% 100%;
  translate: 0 100%;
  transition: background-size var(--transDur);
}
.ly_article > .inner .subNav .fileList > li > a:after {
  background-color: var(--light-blue-600);
}
.ly_article > .inner .subNav .fileList > li > a:focus-visible {
  border-color: var(--light-blue-500);
}
.ly_article > .inner .subNav .fileList > li > a:focus-visible:before {
  background-size: 100% 100%;
}
@media (any-hover: hover) {
  .ly_article > .inner .subNav .fileList > li > a:hover {
    border-color: var(--light-blue-500);
  }
  .ly_article > .inner .subNav .fileList > li > a:hover:before {
    background-size: 100% 100%;
  }
}
.ly_article > .inner .subNav .published .heading {
  margin-bottom: 8px;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .ly_article > .inner .subNav .published .heading {
    font-size: 1.125rem;
  }
}
.ly_article > .inner .subNav .published time {
  font-family: var(--ff_Satoshi);
  font-weight: 500;
  font-size: 1rem;
  opacity: 0.5;
}

/**
 * Header
 */
.ly_header {
  position: sticky;
  top: 0;
  margin-top: 34px;
  z-index: 10000;
}
@media screen and (max-width: 767px) {
  .ly_header {
    margin-top: 16px;
  }
}
.ly_header_inner {
  position: absolute;
  top: 0;
  width: 100%;
}
.ly_header .header_bar {
  position: absolute;
  top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: auto;
  width: 100%;
  padding: 17px 72px 23px;
  background-color: #fff;
  transition-property: opacity, visibility, transform;
  transition-duration: var(--transDur);
}
@media screen and (max-width: 767px) {
  .ly_header .header_bar {
    padding: 16px calc(24 / (var(--designW) + var(--scrollbarW)) * 100vw);
  }
}
.ly_header .header_bar .logo {
  margin-top: 12px;
  width: 159px;
}
@media screen and (max-width: 767px) {
  .ly_header .header_bar .logo {
    margin-top: -3px;
    width: 113.17px;
  }
}
.ly_header .header_bar .logo svg {
  width: 100%;
  height: auto;
  aspect-ratio: 230/63;
  -o-object-fit: contain;
  object-fit: contain;
}
.ly_header .header_bar .logo a {
  display: grid;
  align-items: center;
}
.ly_header .header_bar.is-scrolled, .ly_header .header_bar.is-fixed {
  box-shadow: 0px 4px 24px rgba(0, 0, 0, 0.02);
}
.ly_header .header_bar.is-scrolled.is-scrolling, .ly_header .header_bar.is-fixed.is-scrolling {
  transform: translateY(-100%);
}
@media not all and (max-width: 767px), print {
  .ly_header .header_bar.is-scrolled, .ly_header .header_bar.is-fixed {
    padding-block: 20px;
  }
  .ly_header .header_bar.is-scrolled .logo, .ly_header .header_bar.is-fixed .logo {
    margin-top: 0;
    margin-left: 0;
    width: 134px;
  }
  .ly_header .header_bar.is-scrolled .header_btn, .ly_header .header_bar.is-fixed .header_btn {
    gap: 16px;
    margin-right: 0;
  }
  .ly_header .header_bar.is-scrolled .header_btn .btn, .ly_header .header_bar.is-fixed .header_btn .btn {
    width: 56px;
  }
  .ly_header .header_bar.is-scrolled .header_btn .btn .line, .ly_header .header_bar.is-fixed .header_btn .btn .line {
    scale: 0.7179487179;
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_bar.is-scrolled, .ly_header .header_bar.is-fixed {
    padding-block: 10px;
  }
  .ly_header .header_bar.is-scrolled .logo, .ly_header .header_bar.is-fixed .logo {
    width: 102px;
  }
  .ly_header .header_bar.is-scrolled .header_btn .btn, .ly_header .header_bar.is-fixed .header_btn .btn {
    width: 48px;
    gap: 4px;
  }
  .ly_header .header_bar.is-scrolled .header_btn .btn .line, .ly_header .header_bar.is-fixed .header_btn .btn .line {
    width: 14px;
    transform: scaleY(0.6);
  }
}
.ly_header .header_btn {
  display: flex;
  align-items: center;
  gap: 16px;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_btn {
    margin-right: -2px;
  }
}
.ly_header .header_btn .txt {
  font-weight: 630;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--dark-blue-900);
  transition: color 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
@media screen and (max-width: 767px) {
  .ly_header .header_btn .txt {
    display: none;
  }
}
.ly_header .header_btn .btn {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 6px;
  width: 76px;
  aspect-ratio: 1;
  background-color: #fff;
  border: 4px solid color-mix(in srgb, var(--light-blue-200) 30%, transparent);
  border-radius: 50%;
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .ly_header .header_btn .btn {
    gap: 4px;
    width: 56px;
    border-width: 3px;
  }
}
.ly_header .header_btn .btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background-color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
  translate: -100% 0;
  z-index: -1;
  transition: translate 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.ly_header .header_btn .btn .line {
  position: relative;
  width: 24px;
  height: 2px;
  background-color: var(--dark-blue-900);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .ly_header .header_btn .btn .line {
    width: 18px;
    transform: scaleY(0.8);
    transform-origin: center;
  }
}
.ly_header .header_btn .btn .line:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 1;
  translate: -100% 0;
  transition: translate 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.ly_header .header_btn:focus-visible .txt {
  color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
}
.ly_header .header_btn:focus-visible .btn:before {
  translate: 0 0;
}
.ly_header .header_btn:focus-visible .btn .line:before {
  translate: 0 0;
}
@media (any-hover: hover) {
  .ly_header .header_btn:hover .txt {
    color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
  }
  .ly_header .header_btn:hover .btn:before {
    translate: 0 0;
  }
  .ly_header .header_btn:hover .btn .line:before {
    translate: 0 0;
  }
}
.ly_header .header_nav {
  position: fixed;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 8px;
  transform-origin: top center;
  transition-property: opacity, visibility;
  transition-duration: 0.3s;
  z-index: 15000;
}
.ly_header .header_nav[aria-hidden=true] {
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
}
.ly_header .header_nav_inner {
  position: relative;
  z-index: 10;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_inner {
    display: grid;
    grid-template-columns: auto 51.5% min(48.5%, 75vh) auto;
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav_inner {
    height: calc(100dvh - 16px);
  }
}
.ly_header .header_nav_inner .animation-container {
  transition-property: max-height;
  transition-duration: 0.6s;
  transition-timing-function: cubic-bezier(0.41, 0.67, 0, 1);
  overflow: hidden;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_inner .animation-container {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: 2/span 2;
    border-radius: 48px;
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav_inner .animation-container {
    border-radius: 32px;
  }
}
.ly_header .header_nav_inner .scroll-container {
  overflow: hidden;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_inner .scroll-container {
    display: grid;
    grid-template-columns: subgrid;
    grid-column: span 2;
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav_inner .scroll-container {
    max-height: calc(100dvh - 16px);
    border-radius: 32px;
    background-image: linear-gradient(#fff 50%, var(--dark-blue-900) 50%);
    overflow-y: auto;
    overscroll-behavior: contain;
  }
}
.ly_header .header_nav_inner .inner {
  display: grid;
  background-color: #fff;
  overflow: hidden;
  transition: translate 0.6s;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_inner .inner {
    position: relative;
    grid-template-columns: subgrid;
    grid-column: span 2;
    border-radius: 48px;
    max-height: calc(100vh - 16px);
  }
}
.ly_header .header_nav_main {
  display: grid;
  padding-block: 56px 64px;
  row-gap: 56px;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_main {
    grid-template-rows: auto minmax(0, 1fr);
  }
  .is_locked .ly_header .header_nav_main {
    overflow-y: auto;
  }
  @media screen and (max-width: 1024px) {
    .ly_header .header_nav_main {
      padding-block: 32px 44px;
    }
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav_main {
    row-gap: 66px;
    padding: 36px 32px 60px;
  }
}
.ly_header .header_nav_main .logo {
  width: 113.17px;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_main .logo {
    margin: 9px 64px 0;
    width: 159.15px;
  }
  @media screen and (max-width: 1024px) {
    .ly_header .header_nav_main .logo {
      margin: 7px 40px 0;
      width: auto;
    }
  }
}
.ly_header .header_nav_main .logo svg {
  width: 100%;
  height: auto;
  aspect-ratio: 159.15/45;
  -o-object-fit: contain;
  object-fit: contain;
}
@media not all and (max-width: 767px), print {
  @media screen and (max-width: 1024px) {
    .ly_header .header_nav_main .logo svg {
      width: auto;
      height: 36px;
    }
  }
}
.ly_header .header_nav_main .logo a {
  display: grid;
  align-items: center;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_main .navList {
    display: grid;
    align-items: start;
  }
}
.ly_header .header_nav_main .navList_inner {
  display: grid;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_main .navList_inner {
    padding: 16px 64px;
  }
  @media screen and (max-width: 1024px) {
    .ly_header .header_nav_main .navList_inner {
      padding: 8px 40px;
    }
  }
}
.ly_header .header_nav_main .navList_inner > li > a {
  display: grid;
  row-gap: 24px;
  color: var(--dark-blue-900);
  transition: opacity var(--transDur);
}
.ly_header .header_nav_main .navList_inner > li > a .main {
  display: inline-block;
  margin-block: calc((1cap - 1lh) / 2);
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
@media not all and (max-width: 767px), print {
  @media screen and (max-width: 1024px) {
    .ly_header .header_nav_main .navList_inner > li > a .main {
      font-size: 1.5rem;
    }
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav_main .navList_inner > li > a .main {
    font-size: 1.375rem;
  }
}
.ly_header .header_nav_main .navList_inner > li > a .sub {
  display: inline-block;
  margin-block: var(--negLeading);
  font-weight: 630;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  opacity: 0.4;
}
@media screen and (max-width: 1024px) {
  .ly_header .header_nav_main .navList_inner > li > a .sub {
    display: none;
  }
}
.ly_header .header_nav_main .navList_inner > li > a {
  padding-block: 16px;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_main .navList_inner > li > a {
    padding-block: 30px;
  }
  @media screen and (max-width: 1024px) {
    .ly_header .header_nav_main .navList_inner > li > a {
      padding-block: 28px;
    }
  }
}
.ly_header .header_nav_main .navList_inner > li:first-child > a {
  padding-top: 0;
}
.ly_header .header_nav_main .navList_inner > li:last-child > a {
  padding-bottom: 0;
}
.ly_header .header_nav_main .navList_inner:has(a:hover) > li > a:not(:hover) {
  opacity: 0.3;
}
.ly_header .header_nav_aside {
  position: relative;
  width: 100%;
  aspect-ratio: 1;
  background-color: var(--dark-blue-900);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav_aside {
    align-self: flex-end;
  }
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_aside {
    height: 100%;
  }
}
.ly_header .header_nav_aside iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav_aside iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
    max-height: 75vh;
  }
}
.ly_header .header_nav .closeBtn {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 56px;
  aspect-ratio: 1;
  background-color: #fff;
  border: 3px solid color-mix(in srgb, var(--light-blue-200) 30%, transparent);
  border-radius: 50%;
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  overflow: hidden;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav .closeBtn {
    top: 60px;
    right: 60px;
    width: 78px;
    background-color: var(--dark-blue-900);
    border-width: 4px;
    border-color: rgba(255, 255, 255, 0.3);
  }
}
.ly_header .header_nav .closeBtn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background-color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
  translate: -100% 0;
  z-index: -1;
  transition: translate 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.ly_header .header_nav .closeBtn .line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 2px;
  background-color: var(--dark-blue-900);
  translate: -50% -50%;
  overflow: hidden;
}
@media not all and (max-width: 767px), print {
  .ly_header .header_nav .closeBtn .line {
    width: 24px;
    background-color: #fff;
  }
}
@media screen and (max-width: 767px) {
  .ly_header .header_nav .closeBtn .line {
    width: 15px;
    scale: 1 0.5;
  }
}
.ly_header .header_nav .closeBtn .line:first-child {
  rotate: 45deg;
}
.ly_header .header_nav .closeBtn .line:last-child {
  rotate: -45deg;
}
.ly_header .header_nav .closeBtn .line:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 1;
  translate: -100% 0;
  transition: translate 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.ly_header .header_nav .closeBtn:focus-visible:before {
  translate: 0 0;
}
.ly_header .header_nav .closeBtn:focus-visible .line:before {
  translate: 0 0;
}
@media (any-hover: hover) {
  .ly_header .header_nav .closeBtn:hover:before {
    translate: 0 0;
  }
  .ly_header .header_nav .closeBtn:hover .line:before {
    translate: 0 0;
  }
}
.ly_header .header_nav_overlay {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: color-mix(in srgb, var(--light-blue-1100) 50%, transparent);
}

/**
 * Footer
 */
.ly_footer {
  position: relative;
  background-color: var(--light-blue-200);
}
.ly_footer:before, .ly_footer:after {
  content: "";
  position: absolute;
  bottom: 0;
  width: 50%;
  height: 12px;
}
.ly_footer:before {
  left: 0;
  background-color: var(--dark-blue-900);
}
.ly_footer:after {
  right: 0;
  background-color: #fff;
}
.ly_footer_container {
  position: relative;
  max-width: 1536px;
  margin: auto;
  padding-block: 72px 68px;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .ly_footer_container {
    max-width: unset;
    padding-block: 48px 66px;
  }
}
.ly_footer_container:before, .ly_footer_container:after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  height: 12px;
}
.ly_footer_container:before {
  width: 100%;
  background-color: #fff;
}
.ly_footer_container:after {
  width: 66.6666666667%;
  background-color: var(--dark-blue-900);
}
@media screen and (max-width: 767px) {
  .ly_footer_container:after {
    width: 75.8706467662%;
  }
}
.ly_footer_inner {
  display: grid;
}
@media not all and (max-width: 767px), print {
  .ly_footer_inner {
    grid-template-columns: repeat(6, minmax(0, 1fr));
    row-gap: 192px;
  }
  .ly_footer_inner > *:nth-child(odd) {
    grid-column: span 4;
    padding-left: 72px;
  }
  .ly_footer_inner > *:nth-child(even) {
    grid-column: span 2;
    padding-right: 72px;
  }
}
@media screen and (max-width: 767px) {
  .ly_footer_inner {
    margin: auto;
    width: var(--contW);
  }
}
@media screen and (max-width: 767px) {
  .ly_footer_inner .logo {
    margin-bottom: 64px;
  }
}
.ly_footer_inner .logo svg {
  width: 170px;
  height: auto;
  aspect-ratio: 230/63;
  -o-object-fit: contain;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .ly_footer_inner .logo svg {
    width: 114px;
  }
}
.ly_footer_inner .logo a {
  display: grid;
  align-items: center;
  width: -moz-fit-content;
  width: fit-content;
}
.ly_footer_inner .copyright {
  align-self: flex-end;
  font-weight: 630;
  font-size: 0.6875rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--dark-blue-900);
}
@media not all and (max-width: 767px), print {
  .ly_footer_inner .copyright {
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .ly_footer_inner .copyright {
    margin-top: 26px;
    font-size: 0.625rem;
  }
}
.ly_footer_inner .footer_link {
  display: grid;
  row-gap: 24px;
}
.ly_footer_inner .footer_link > li {
  margin-block: var(--negLeading);
  font-weight: 630;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--dark-blue-900);
}
@media screen and (max-width: 767px) {
  .ly_footer_inner .footer_link > li {
    font-weight: 500;
    letter-spacing: 0.06em;
  }
}
.ly_footer_inner .footer_link > li a {
  display: inline-block;
  transition-property: translate, opacity;
  transition-duration: var(--transDur);
}
.ly_footer_inner .footer_link > li a:focus-visible {
  translate: 2px 0;
}
@media (any-hover: hover) {
  .ly_footer_inner .footer_link > li a:hover {
    translate: 2px 0;
  }
}
.ly_footer_inner .footer_link:has(a:hover) > li > a:not(:hover) {
  opacity: 0.35;
}
.ly_footer_inner .footer_copy {
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 1.9643125rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--dark-blue-900);
}
@media screen and (max-width: 767px) {
  .ly_footer_inner .footer_copy {
    margin-top: 142px;
    font-size: 1.5rem;
  }
}

/**
 * Container
 */
.ct_std {
  margin-inline: auto;
  width: var(--contW);
}
/**
 * デザイン幅を6分割するグリッドレイアウト用
 * 右端、左端からはPC時に72pxのpaddingを入れる。
 * /about, /group は6分割グリッドにしたがってデザインされているようです
 *
 * 中身が1カラムだけの場合: .ct_6grid_wholeInnerを使用すると左右padding付きの1カラムレイアウトになります。
 * 中身が2カラム以上の場合: .ct_6girdを内包するモジュールとして定義し、モジュールのスタイルでカラムの幅, 左右余白をつけてください。
 */
.ct_6grid {
  --_padIn: 72px;
  display: grid;
  max-width: 1536px;
  margin: auto;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .ct_6grid {
    --_padIn: 0;
  }
}
@media not all and (max-width: 767px), print {
  .ct_6grid {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}
@media screen and (max-width: 767px) {
  .ct_6grid {
    max-width: unset;
    margin: auto;
    width: var(--contW);
  }
}
.ct_6grid_wholeInner {
  grid-column: 1/-1;
  padding-inline: var(--_padIn);
}

/**
 * Block
 */
.bl_pageTitle {
  padding-bottom: 52px;
  margin-bottom: -1px;
  background-image: linear-gradient(90deg, color-mix(in srgb, var(--dark-blue-900) 10%, transparent) 50%, transparent 50%);
  background-size: 8px 2px;
  background-position: bottom;
  background-repeat: repeat-x;
}
@media screen and (max-width: 767px) {
  .bl_pageTitle {
    padding-bottom: 37px;
  }
}
@media not all and (max-width: 767px), print {
  .bl_pageTitle .inner > * {
    padding-left: var(--_padIn);
    grid-column: span 4;
  }
}
.bl_pageTitle .category {
  display: inline-block;
  margin-bottom: 16px;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  opacity: 0.7;
  transition: color var(--transDur);
}
@media screen and (max-width: 767px) {
  .bl_pageTitle .category {
    margin-bottom: 24px;
  }
}
.bl_pageTitle .category:focus-visible {
  color: var(--light-blue-500);
}
@media (any-hover: hover) {
  .bl_pageTitle .category:hover {
    color: var(--light-blue-500);
  }
}
.bl_pageTitle .title {
  font-size: 2.625rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .bl_pageTitle .title {
    font-size: 1.625rem;
  }
}
.bl_pageTitle .subTitle {
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .bl_pageTitle .subTitle {
    margin-top: 28px;
  }
}

.bl_breadcrumb {
  margin-bottom: 60px;
}
.bl_breadcrumb ol {
  display: flex;
  flex-wrap: wrap;
  gap: 0 16px;
}
.bl_breadcrumb li:not(:first-child) {
  position: relative;
  padding-left: 22px;
}
.bl_breadcrumb li:not(:first-child)::before {
  content: ">";
  position: absolute;
  left: 0;
  top: 0.5lh;
  translate: 0 -50%;
}
.bl_breadcrumb a {
  display: block;
}
.bl_breadcrumb li:last-child a {
  pointer-events: none;
}

.bl_contSet > :not(:first-child):not(.bl_hdgSet) {
  margin-top: 16px;
}
@media screen and (max-width: 767px) {
  .bl_contSet > :not(:first-child):not(.bl_hdgSet) {
    margin-top: 12px;
  }
}
.bl_contSet > .bl_hdgSet + * {
  margin-top: 0;
}
@media not all and (max-width: 767px), print {
  .bl_contSet > * {
    width: 81.0810810811%;
  }
}
.bl_contSet > :not(:last-child):not(.bl_hdgSet) {
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .bl_contSet > :not(:last-child):not(.bl_hdgSet) {
    margin-bottom: 42px;
  }
}

.bl_hdgSet:not(:first-child) .el_hdgLg {
  margin-top: 82px;
}
@media screen and (max-width: 767px) {
  .bl_hdgSet:not(:first-child) .el_hdgLg {
    margin-top: 64px;
  }
}
.bl_hdgSet .el_hdgLg:has(+ .el_hdgMd) {
  margin-bottom: 24px;
}
.bl_hdgSet:not(:has(.el_hdgMd)) + .bl_hdgSet .el_hdgMd:first-child {
  margin-top: 24px;
}

.bl_img {
  display: table;
  margin: auto;
  caption-side: bottom;
  width: 100%;
}
.bl_img + .bl_hdgSet:has(.el_hdgMd:first-child) {
  margin-top: 64px;
}
.bl_img img {
  width: 100%;
}
.bl_img figcaption {
  display: table-caption;
  margin-top: 16px;
  font-size: 1.125rem;
  opacity: 0.4;
}
@media screen and (max-width: 767px) {
  .bl_img figcaption {
    font-size: 0.875rem;
    line-height: 1.5;
  }
}

.bl_wysiwyg > *:not(:first-child) {
  margin-top: 16px;
}
@media screen and (max-width: 767px) {
  .bl_wysiwyg > *:not(:first-child) {
    margin-top: 12px;
  }
}
.bl_wysiwyg > *:not(:last-child) {
  margin-bottom: 48px;
}
@media screen and (max-width: 767px) {
  .bl_wysiwyg > *:not(:last-child) {
    margin-bottom: 42px;
  }
}
.bl_wysiwyg a {
  text-decoration: underline;
  text-decoration-color: var(--light-blue-600);
  text-decoration-thickness: 6.5%;
  text-underline-offset: 0.1em;
  transition-property: color, text-decoration-color;
  transition-duration: var(--transDur);
}
.bl_wysiwyg a::after {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-size: 100%;
  mask-size: 100%;
}
.bl_wysiwyg a[target=_blank]::after {
  content: "";
  width: 20px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_blank.svg);
  mask-image: url(../img/common/icon/icon_blank.svg);
  background-color: var(--light-blue-700);
}
.bl_wysiwyg a[href$=".pdf"]::after, .bl_wysiwyg a[href*=".doc"]::after, .bl_wysiwyg a[href*=".xls"]::after, .bl_wysiwyg a[href*=".ppt"]::after, .bl_wysiwyg a[href$=".zip"]::after {
  content: "";
  width: 24px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_file.svg);
  mask-image: url(../img/common/icon/icon_file.svg);
  background-color: var(--light-blue-600);
}
.bl_wysiwyg a::after {
  translate: 0 0.2em;
  transition: background-color var(--transDur);
}
.bl_wysiwyg a:focus-visible {
  text-decoration-color: var(--light-blue-500);
  color: var(--light-blue-500);
}
.bl_wysiwyg a:focus-visible:after {
  background-color: var(--light-blue-500);
}
@media (any-hover: hover) {
  .bl_wysiwyg a:hover {
    text-decoration-color: var(--light-blue-500);
    color: var(--light-blue-500);
  }
  .bl_wysiwyg a:hover:after {
    background-color: var(--light-blue-500);
  }
}
.bl_wysiwyg b,
.bl_wysiwyg strong {
  font-family: var(--_ff-bold);
  font-weight: 800;
  color: var(--light-blue-1100);
}
.bl_wysiwyg ol li:not(:first-child),
.bl_wysiwyg ul li:not(:first-child) {
  margin-top: 0.42em;
}
@media screen and (max-width: 767px) {
  .bl_wysiwyg ol li:not(:first-child),
  .bl_wysiwyg ul li:not(:first-child) {
    margin-top: 0.6em;
  }
}
.bl_wysiwyg ol li ol,
.bl_wysiwyg ol li ul,
.bl_wysiwyg ul li ol,
.bl_wysiwyg ul li ul {
  margin-top: 0.5em;
}
.bl_wysiwyg ol {
  counter-reset: liCounter;
}
.bl_wysiwyg ol > li {
  position: relative;
  margin-left: 1.5em;
}
.bl_wysiwyg ol > li::before {
  content: counter(liCounter) ".";
  counter-increment: liCounter;
  position: absolute;
  right: 100%;
  top: 0;
  margin-right: 0.2em;
  font-size: 0.9em;
  white-space: nowrap;
  translate: 0 0.2em;
}
.bl_wysiwyg ol > li ol > li::before {
  content: counter(liCounter, lower-alpha) ".";
}
.bl_wysiwyg ul > li {
  position: relative;
  padding-left: 1.5em;
}
.bl_wysiwyg ul > li::before {
  content: "";
  position: absolute;
  left: 0.75em;
  top: 0.5lh;
  border-radius: 50%;
  width: 5.5px;
  aspect-ratio: 1;
  border: 1px solid currentColor;
  background-color: currentColor;
  translate: -45% -50%;
}
.bl_wysiwyg ul > li ul > li::before {
  background-color: transparent;
}
.bl_wysiwyg > p:has(+ p) {
  margin-bottom: 16px !important;
}
@media screen and (max-width: 767px) {
  .bl_wysiwyg > p:has(+ p) {
    margin-bottom: 12px !important;
  }
}
.bl_wysiwyg:has(> p:last-child) {
  margin-bottom: 0 !important;
}
.bl_wysiwyg:has(> p:last-child):has(+ .bl_hdgSet:has(.el_hdgMd:first-child)) {
  margin-bottom: 0 !important;
}
.bl_wysiwyg:has(> p:last-child) + .bl_hdgSet:has(.el_hdgMd:first-child) {
  margin-top: 32px;
}
.bl_wysiwyg:has(> p:last-child) + .bl_img,
.bl_wysiwyg:has(> p:last-child) + .bl_wysiwyg:not(:has(p:first-child)) {
  margin-top: 48px;
}
@media screen and (max-width: 767px) {
  .bl_wysiwyg:has(> p:last-child) + .bl_img,
  .bl_wysiwyg:has(> p:last-child) + .bl_wysiwyg:not(:has(p:first-child)) {
    margin-top: 42px;
  }
}
.bl_wysiwyg:has(> p:last-child) + .bl_wysiwyg:has(p:first-child) {
  margin-top: 16px;
}
@media screen and (max-width: 767px) {
  .bl_wysiwyg:has(> p:last-child) + .bl_wysiwyg:has(p:first-child) {
    margin-top: 12px;
  }
}

.bl_copySect {
  position: relative;
}
.bl_copySect .el_animBox {
  left: var(--_padIn);
}
@media not all and (max-width: 767px), print {
  .bl_copySect_inner {
    grid-column: 2/span 5;
    padding-right: var(--_padIn);
  }
}
.bl_copySect_shoulder {
  margin-top: 5.5px;
  font-size: 1.125rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  color: color-mix(in srgb, var(--light-blue-1000) 40%, transparent);
}
@media screen and (max-width: 767px) {
  .bl_copySect_shoulder {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: 20px;
    align-items: center;
    margin-top: 0;
    line-height: 1.6;
    letter-spacing: 0.01em;
    font-size: 0.875rem;
  }
}
.bl_copySect_shoulder:not(:last-child) {
  margin-bottom: 29.5px;
}
@media screen and (max-width: 767px) {
  .bl_copySect_shoulder:not(:last-child) {
    margin-bottom: 38px;
  }
}
@media screen and (max-width: 767px) {
  .bl_copySect_shoulder::before {
    content: "";
    width: 30px;
    aspect-ratio: 1;
  }
}
.bl_copySect_copy {
  font-family: var(--_ff-bold);
  font-size: 2.875rem;
  line-height: 1.45;
  font-weight: 600;
  letter-spacing: 0.01em;
}
@media screen and (max-width: 767px) {
  .bl_copySect_copy {
    font-size: 1.75rem;
    line-height: 1.6;
  }
}
.bl_copySect_body {
  margin-top: 48px;
  font-weight: 500;
  font-size: 1.25rem;
  line-height: 1.85;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 767px) {
  .bl_copySect_body {
    margin-top: 32px;
    font-size: 1rem;
    line-height: 1.75;
    letter-spacing: 0.02em;
  }
}
@media not all and (max-width: 767px), print {
  .bl_copySect_body > p + p {
    margin-top: 4px;
  }
}

.bl_copySect2 {
  align-items: start;
}
.bl_copySect2::before {
  content: "";
  margin-left: var(--_padIn);
  width: 40px;
  aspect-ratio: 1;
  background-image: url(../img/common/icon/icon_chain.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 767px) {
  .bl_copySect2::before {
    width: 30px;
    margin-bottom: 16px;
  }
}
.bl_copySect2_copy {
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 2.25rem;
  line-height: 1.6;
  letter-spacing: 0.01em;
}
@media not all and (max-width: 767px), print {
  .bl_copySect2_copy {
    padding-right: var(--_padIn);
    margin-top: var(--negLeading);
    grid-column: 2/span 6;
  }
}
@media screen and (max-width: 767px) {
  .bl_copySect2_copy {
    font-size: 1.375rem;
    line-height: 1.7;
  }
}

.el_sectionHdg {
  margin-bottom: 72px;
  font-family: var(--ff_Satoshi);
  font-weight: 500;
  font-size: 2.375rem;
  line-height: 1.43;
  letter-spacing: -0.01em;
  color: var(--light-blue-900);
}
@media screen and (max-width: 767px) {
  .el_sectionHdg {
    margin-bottom: 40px;
    font-size: 1.25rem;
  }
}

/**
 * Element
 */
.el_hdgLg {
  margin-bottom: 24px;
  font-size: 2rem;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .el_hdgLg {
    margin-bottom: 20px;
    font-size: 1.375rem;
    line-height: 1.5;
  }
}

.el_hdgMd {
  margin-bottom: 16px;
  font-size: 1.5rem;
}
@media screen and (max-width: 767px) {
  .el_hdgMd {
    margin-bottom: 12px;
    font-size: 1.125rem;
    line-height: 1.6;
  }
}

.el_hdgSm {
  margin-bottom: 15px;
  font-size: 1.625rem;
  font-weight: bold;
}

.el_btn {
  display: grid;
  place-items: center;
  border: 1px solid #333;
  padding: 16px 48px;
  width: 100%;
  height: 100%;
  background-color: #333;
  color: #fff;
}
.el_btn .el_btn_inner::after {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-size: 100%;
  mask-size: 100%;
}
.el_btn[target=_blank] .el_btn_inner::after {
  content: "";
  width: 20px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_blank.svg);
  mask-image: url(../img/common/icon/icon_blank.svg);
  background-color: var(--light-blue-700);
}
.el_btn[href$=".pdf"] .el_btn_inner::after, .el_btn[href*=".doc"] .el_btn_inner::after, .el_btn[href*=".xls"] .el_btn_inner::after, .el_btn[href*=".ppt"] .el_btn_inner::after, .el_btn[href$=".zip"] .el_btn_inner::after {
  content: "";
  width: 24px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_file.svg);
  mask-image: url(../img/common/icon/icon_file.svg);
  background-color: var(--light-blue-600);
}
.el_btn:focus-visible {
  background-color: #fff;
  color: #333;
}
@media (any-hover: hover) {
  .el_btn:hover {
    background-color: #fff;
    color: #333;
  }
}
.el_btn_inner::after {
  translate: 0 4px;
}
.el_btn_inner > span {
  margin-right: 5px;
}

.el_arwLink {
  --_iconSize: 32px;
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  -moz-column-gap: 10px;
  column-gap: 10px;
  padding-bottom: 16px;
  -webkit-background-clip: text;
  background-clip: text;
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--dark-blue-900);
  transition: color var(--transDur) cubic-bezier(0.41, 0.67, 0, 1);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .el_arwLink {
    --_iconSize: 24px;
    -moz-column-gap: 4px;
    column-gap: 4px;
    padding-bottom: 14px;
    font-size: 0.875rem;
    letter-spacing: 0.03em;
  }
}
.el_arwLink:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-image: linear-gradient(var(--dark-blue-900) 0%, var(--dark-blue-900) 100%);
  background-repeat: no-repeat;
  background-size: calc(100% - var(--_iconSize)) 100%;
  transition: left var(--transDur) cubic-bezier(0.41, 0.67, 0, 1);
  z-index: 2;
}
.el_arwLink:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: var(--light-blue-500);
  z-index: 1;
}
.el_arwLink .icon {
  width: var(--_iconSize);
  height: 24px;
  -webkit-mask-image: url(../img/common/icon/icon_arw.svg);
  mask-image: url(../img/common/icon/icon_arw.svg);
  -webkit-mask-size: 24px 24px;
  mask-size: 24px 24px;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  background-color: currentColor;
  color: var(--light-blue-500);
  transition: color var(--transDur) cubic-bezier(0.41, 0.67, 0, 1);
}
@media screen and (max-width: 767px) {
  .el_arwLink .icon {
    height: 20px;
    -webkit-mask-size: 20px 20px;
    mask-size: 20px 20px;
  }
}
.el_arwLink:focus-visible {
  color: var(--light-blue-500);
}
.el_arwLink:focus-visible:before {
  left: calc(100% - var(--_iconSize));
}
.el_arwLink:focus-visible .icon {
  color: var(--dark-blue-900);
}
@media (any-hover: hover) {
  .el_arwLink:hover {
    color: var(--light-blue-500);
  }
  .el_arwLink:hover:before {
    left: calc(100% - var(--_iconSize));
  }
  .el_arwLink:hover .icon {
    color: var(--dark-blue-900);
  }
}

.el_animBox {
  position: absolute;
  top: 0;
  left: 0;
  width: 40px;
  aspect-ratio: 1;
  transform-origin: top left;
}
@media screen and (max-width: 767px) {
  .el_animBox {
    scale: 0.75;
  }
}

/**
 * Unique
 */
.un_dashedSect {
  margin-top: 148px;
  padding-top: 98px;
  background-image: linear-gradient(90deg, color-mix(in srgb, var(--dark-blue-900) 10%, transparent) 50%, transparent 50%);
  background-size: 8px 2px;
  background-position: top;
  background-repeat: repeat-x;
}
@media screen and (max-width: 767px) {
  .un_dashedSect {
    margin-top: 72px;
    padding-top: 72px;
  }
}

.un_missionImage {
  margin-top: 128px;
}
@media not all and (max-width: 767px), print {
  .un_missionImage {
    align-items: start;
    --_padIn: min(32px, calc(32 / (var(--designW) + var(--scrollbarW)) * 100vw));
  }
}
@media screen and (max-width: 767px) {
  .un_missionImage {
    --_padIn: min(12px, calc(12 / (var(--designW) + var(--scrollbarW)) * 100vw));
    display: grid;
    gap: 12px;
    margin-top: 96px;
    margin-inline: var(--_padIn);
    width: calc(100% - var(--_padIn) * 2);
    justify-items: end;
  }
}
.un_missionImage_img {
  border-radius: 16px;
  overflow: hidden;
}
.un_missionImage_img img {
  border-radius: 16px;
  overflow: hidden;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}
@media not all and (max-width: 767px), print {
  .un_missionImage_img__lg {
    grid-column: 1/span 4;
    margin-left: var(--_padIn);
  }
}
.un_missionImage_img__lg img {
  aspect-ratio: 924/648;
}
@media screen and (max-width: 767px) {
  .un_missionImage_img__lg img {
    aspect-ratio: 1;
  }
}
@media not all and (max-width: 767px), print {
  .un_missionImage_img__sm {
    grid-column: 5/span 6;
    grid-row: 1;
    margin-left: 16px;
    margin-right: var(--_padIn);
  }
}
@media screen and (max-width: 767px) {
  .un_missionImage_img__sm {
    width: 61.38%;
  }
}
.un_missionImage_img__sm img {
  aspect-ratio: 1;
}

.un_originMsg {
  position: relative;
  margin-top: 128px;
  padding-block: 96px min(412px, ((412 / var(--designW)) * 100vw));
  color: #fff;
  overflow: hidden;
  background: #2919C2;
}
@media screen and (max-width: 767px) {
  .un_originMsg {
    margin-top: 100px;
    padding-block: 64px max(186px, ((186 / var(--designW)) * 100vw));
  }
}
.un_originMsg_hdg {
  position: relative;
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 2.25rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media not all and (max-width: 767px), print {
  .un_originMsg_hdg {
    padding-left: 92px;
    grid-column: span 3;
    white-space: nowrap;
  }
}
@media screen and (max-width: 767px) {
  .un_originMsg_hdg {
    font-size: 1.375rem;
    line-height: 1.75;
  }
}
.un_originMsg_hdg:not(:last-child) {
  margin-bottom: 24px;
}
@media screen and (max-width: 767px) {
  .un_originMsg_hdg:not(:last-child) {
    margin-bottom: 16px;
  }
}
.un_originMsg_body {
  position: relative;
  font-weight: 500;
  font-size: 1.125rem;
  line-height: 1.8;
  letter-spacing: 0.07em;
}
@media not all and (max-width: 767px), print {
  .un_originMsg_body {
    padding-left: 92px;
    white-space: nowrap;
    grid-column: span 3;
    grid-row: 2/3;
  }
}
@media screen and (max-width: 767px) {
  .un_originMsg_body {
    font-size: 0.875rem;
    line-height: 1.75;
    letter-spacing: 0.02em;
  }
}
.un_originMsg_bg {
  position: absolute;
  bottom: 0;
  left: 0;
  width: calc(2038 / var(--designW) * 100vw);
  aspect-ratio: 4/1;
  scale: 1.39;
  translate: 0 10%;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .un_originMsg_bg {
    width: calc(616 / var(--designW) * 100vw);
    translate: 13.7% 3.4%;
  }
}
.un_originMsg_bg::before {
  content: "";
}
.un_originMsg_bg iframe {
  width: 100%;
  height: 100%;
  pointer-events: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
.un_originMsg_bgGradient {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, #2919C2 0%, transparent 100%);
}
@media screen and (max-width: 767px) {
  .un_originMsg_bgGradient {
    display: none;
    top: auto;
    bottom: 0;
    width: calc(693 / var(--designW) * 100vw);
    height: auto;
    aspect-ratio: 4/1;
    translate: 0 7.5%;
    background: linear-gradient(180deg, #2919C2 0%, transparent 100%);
  }
}
.un_originMsg_bgGradient:before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 2;
  background-color: #2919C2;
}
@media not all and (max-width: 767px), print {
  .un_originMsg_bgGradient:before {
    content: none;
  }
}

.un_corpInfo {
  margin-top: 138px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 767px) {
  .un_corpInfo {
    margin-top: 92px;
  }
}
.un_corpInfo_hdg {
  display: grid;
}
.un_corpInfo_hdg [lang=ja] {
  font-family: var(--_ff-bold);
  font-size: 1.5rem;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 767px) {
  .un_corpInfo_hdg [lang=ja] {
    font-size: 1.25rem;
  }
}
.un_corpInfo_hdg [lang=en] {
  margin-top: 2px;
  font-size: 1rem;
  color: color-mix(in srgb, var(--light-blue-1000) 40%, transparent);
}
@media screen and (max-width: 767px) {
  .un_corpInfo_hdg [lang=en] {
    margin-top: 8px;
    font-size: 0.875rem;
  }
}
.un_corpInfo_list {
  margin-top: 32px;
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: 4px 1.5em;
  font-size: 1rem;
}
@media screen and (max-width: 767px) {
  .un_corpInfo_list {
    gap: 10px 2.5em;
    font-size: 0.875rem;
  }
}
.un_corpInfo_list dt {
  font-family: var(--_ff-bold);
  font-weight: 600;
}

/**
 * Helper
 */
@media screen and (max-width: 767px) {
  .hp_pcOnly {
    display: none !important;
  }
}

@media not all and (max-width: 767px), print {
  .hp_spOnly {
    display: none !important;
  }
}

.hp_srOnly {
  position: absolute !important;
  margin: -1px !important;
  border: 0 !important;
  padding: 0 !important;
  width: 1px !important;
  height: 1px !important;
  clip: rect(0, 0, 0, 0) !important;
  overflow: hidden !important;
  white-space: nowrap !important;
}

.hp_trimLeading::before, .hp_trimLeading::after {
  content: "";
  display: block;
}
.hp_trimLeading::before {
  margin-block-end: var(--negLeading);
}
.hp_trimLeading::after {
  margin-block-start: var(--negLeading);
}

.hp_fadeIn {
  opacity: 0;
  translate: 0 20px;
  transition-property: opacity, translate;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.35, 0.25, 0.3, 1);
}
.hp_fadeIn.is_visible {
  opacity: 1;
  translate: 0;
}

.hp_fadeInZoom {
  opacity: 0;
  scale: 1;
  transition-property: opacity, scale;
  transition-duration: 1.2s;
  transition-timing-function: cubic-bezier(0.35, 0.25, 0.3, 1);
}
.hp_fadeInZoom.is_visible {
  opacity: 1;
  scale: 1.025;
}

/**
 * Page
 */
.pg_home .ly_cont {
  padding-block: 0;
}
.pg_home .ly_header {
  margin-top: 0;
}
.pg_home .ly_header .header_bar:not(:is(.is-scrolled)) {
  transform: translateY(-100%);
  opacity: 0;
  visibility: hidden;
}
.pg_home .headSect {
  position: relative;
  padding-block: 60px 56px;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .pg_home .headSect {
    padding-block: 52px 48px;
    margin-inline: 24px;
  }
}
.pg_home .headSect .heading {
  margin-bottom: 24px;
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 1.75rem;
  line-height: 1.58;
  letter-spacing: 0.02em;
  color: var(--light-blue-1100);
  opacity: 0;
  translate: 0 40px;
  transition-property: opacity, translate;
  transition-duration: 0.8s;
  transition-timing-function: cubic-bezier(0.35, 0.25, 0.3, 1);
}
@media not all and (max-width: 767px), print {
  .pg_home .headSect .heading {
    padding-left: 72px;
    font-size: 2.875rem;
  }
}
.pg_home .headSect .logo {
  width: 117px;
  opacity: 0;
  translate: 0 20px;
  transition-property: opacity, translate;
  transition-duration: 1.3s;
  transition-timing-function: cubic-bezier(0.35, 0.25, 0.3, 1);
  transition-delay: 0.4s;
}
@media not all and (max-width: 767px), print {
  .pg_home .headSect .logo {
    width: 170px;
    margin-left: 72px;
    padding-block: 15px;
  }
}
.pg_home .headSect .logo svg {
  width: 100%;
  height: auto;
  aspect-ratio: 230/63;
  -o-object-fit: contain;
  object-fit: contain;
  opacity: 1;
}
.pg_home .headSect .logo a {
  display: grid;
  align-items: center;
}
.pg_home .headSect .header_btn {
  position: absolute;
  display: flex;
  align-items: center;
  gap: 16px;
  top: 61px;
  right: 69px;
}
@media screen and (max-width: 767px) {
  .pg_home .headSect .header_btn {
    top: 24px;
    right: 0;
  }
}
.pg_home .headSect .header_btn .txt {
  font-weight: 630;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--dark-blue-900);
  transition: color 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
@media screen and (max-width: 767px) {
  .pg_home .headSect .header_btn .txt {
    display: none;
  }
}
.pg_home .headSect .header_btn .btn {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 6px;
  width: 78px;
  aspect-ratio: 1;
  background-color: #fff;
  border: 4px solid color-mix(in srgb, var(--light-blue-200) 30%, transparent);
  border-radius: 50%;
  -webkit-backdrop-filter: blur(24px);
  backdrop-filter: blur(24px);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pg_home .headSect .header_btn .btn {
    gap: 4px;
    width: 56px;
    border-width: 3px;
  }
}
.pg_home .headSect .header_btn .btn:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background-color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
  translate: -101% 0;
  z-index: -1;
  transition: translate 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.pg_home .headSect .header_btn .btn .line {
  position: relative;
  width: 24px;
  height: 2px;
  background-color: var(--dark-blue-900);
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pg_home .headSect .header_btn .btn .line {
    width: 18px;
    transform: scaleY(0.8);
    transform-origin: center;
  }
}
.pg_home .headSect .header_btn .btn .line:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  z-index: 1;
  translate: -100% 0;
  transition: translate 0.45s cubic-bezier(0.4, 0, 0.2, 1);
}
.pg_home .headSect .header_btn:focus-visible .txt {
  color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
}
.pg_home .headSect .header_btn:focus-visible .btn:before {
  translate: 0 0;
}
.pg_home .headSect .header_btn:focus-visible .btn .line:before {
  translate: 0 0;
}
@media (any-hover: hover) {
  .pg_home .headSect .header_btn:hover .txt {
    color: color-mix(in srgb, var(--light-blue-600) 50%, #fff);
  }
  .pg_home .headSect .header_btn:hover .btn:before {
    translate: 0 0;
  }
  .pg_home .headSect .header_btn:hover .btn .line:before {
    translate: 0 0;
  }
}
.pg_home .headSect .deco {
  position: absolute;
  top: 210px;
  right: 83.38px;
  width: 371.996px;
  height: 372px;
  opacity: 0;
  transform: translateY(60px) rotate(-20deg);
  transition-property: opacity, transform;
  transition-duration: 1.3s, 1s;
  transition-timing-function: cubic-bezier(0.35, 0.25, 0.3, 1);
  transition-delay: 0, 0.3s;
}
@media screen and (max-width: 767px) {
  .pg_home .headSect .deco {
    top: 174px;
    right: -8.776px;
    width: 176.756px;
    height: 176.758px;
  }
}
.pg_home .headSect .deco .inner {
  position: relative;
  width: 100%;
  height: 100%;
  background-image: url(../img/index/head_deco.svg);
  background-size: contain;
  background-repeat: no-repeat;
  will-change: transform;
}
@media not all and (max-width: 767px), print {
  .pg_home .headSect .deco .inner {
    transition: transform 0.3s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  }
}
.pg_home .headSect.is-visible .heading,
.pg_home .headSect.is-visible .logo {
  opacity: 1;
  translate: 0;
}
.pg_home .headSect.is-visible .deco {
  opacity: 1;
  transform: none;
}
.pg_home .mvArea {
  display: grid;
}
.pg_home .mvArea_container {
  position: relative;
  width: 100%;
  height: 80lvh;
  border-radius: 32px;
  overflow: hidden;
  transform-origin: top center;
  transform: scale(0.95);
}
@media screen and (max-width: 767px) {
  .pg_home .mvArea_container {
    border-radius: 24px;
    transform: scale(0.98);
  }
}
.pg_home .mvArea_wrapper {
  opacity: 0;
  transform: scale(1);
}
@media screen and (max-width: 767px) {
  .pg_home .mvArea_wrapper {
    height: 100%;
  }
}
.pg_home .mvArea_img {
  width: 100%;
  height: calc(80vh + 250px);
  background-image: url(../../img/index/mv_img_01.webp);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
@media screen and (max-width: 767px) {
  .pg_home .mvArea_img {
    width: 100%;
    height: calc(100% + 60px);
    background-image: url(../../img/index/mv_img_01_sp.webp);
    background-position: top center;
  }
}
.pg_home .mvArea .calc-height {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100lvh;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
@media not all and (max-width: 767px), print {
  .pg_home .mvArea .calc-height {
    display: none;
  }
}
.pg_home .copyArea {
  position: relative;
  margin-top: 64px;
  padding-block: 48px 190px;
}
@media screen and (max-width: 767px) {
  .pg_home .copyArea {
    margin-inline: 24px;
    padding-block: 62px 172px;
  }
}
.pg_home .copyArea .el_animBox {
  top: 55px;
  left: var(--_padIn);
}
@media screen and (max-width: 767px) {
  .pg_home .copyArea .el_animBox {
    top: 0;
    scale: 0.75;
  }
}
@media not all and (max-width: 767px), print {
  .pg_home .copyArea .inner {
    grid-column: 2/-1;
    padding-left: min(calc(212 / (var(--designW) + var(--scrollbarW)) * 100vw), 212px);
    padding-right: var(--_padIn);
  }
}
.pg_home .copyArea .copy {
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.69;
  letter-spacing: 0.07em;
  color: var(--light-blue-1100);
}
@media screen and (max-width: 767px) {
  .pg_home .copyArea .copy {
    padding-inline: 8px;
    font-size: 1.25rem;
    line-height: 1.65;
  }
}
.pg_home .copyArea .copy > span {
  display: grid;
}
.pg_home .copyArea .copy > span:not(:first-child) {
  margin-top: 0.625em;
}
@media screen and (max-width: 767px) {
  .pg_home .copyArea .copy > span:not(:first-child) {
    margin-top: 1.1em;
  }
}
.pg_home .copyArea .link {
  display: flex;
  margin-top: 82px;
}
@media screen and (max-width: 767px) {
  .pg_home .copyArea .link {
    margin-top: 56px;
  }
}
.pg_home .groupSect {
  padding-bottom: 220px;
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect {
    padding-bottom: 172px;
  }
}
.pg_home .groupSect .heading {
  display: grid;
  align-content: flex-start;
}
@media not all and (max-width: 767px), print {
  .pg_home .groupSect .heading {
    grid-column: span 2;
    padding-left: var(--_padIn);
    padding-right: 24px;
  }
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .heading {
    margin-bottom: 48px;
  }
}
.pg_home .groupSect .heading .main {
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 2rem;
  line-height: 1.43;
  letter-spacing: normal;
  color: var(--light-blue-1000);
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .heading .main {
    font-size: 1.5rem;
  }
}
.pg_home .groupSect .heading .sub {
  margin-top: 12px;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--light-blue-1000);
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .heading .sub {
    margin-top: 8px;
    font-weight: 500;
    font-size: 0.875rem;
  }
}
.pg_home .groupSect .group_list {
  display: grid;
}
@media not all and (max-width: 767px), print {
  .pg_home .groupSect .group_list {
    grid-column: span 4;
    grid-row: span 2;
    min-height: 296px;
    margin-right: var(--_padIn);
  }
  @media screen and (max-width: 1024px) {
    .pg_home .groupSect .group_list {
      min-height: unset;
    }
  }
}
.pg_home .groupSect .group_list > a {
  display: grid;
  border: 2px solid #f2f4f6;
  background-blend-mode: multiply;
  transition: background-color 0.5s;
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .group_list > a {
    padding: 16px 24px;
  }
}
@media not all and (max-width: 767px), print {
  .pg_home .groupSect .group_list > a {
    padding-inline: 48px;
  }
}
.pg_home .groupSect .group_list .iconList {
  display: flex;
  container-type: inline-size;
  justify-content: center;
  mix-blend-mode: multiply;
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .group_list .iconList {
    display: flex;
    flex-direction: column;
  }
}
@media not all and (max-width: 767px), print {
  @media screen and (max-width: 1024px) {
    .pg_home .groupSect .group_list .iconList {
      display: block;
      flex-direction: column;
    }
  }
}
.pg_home .groupSect .group_list .iconList > li {
  display: grid;
  place-content: center;
  aspect-ratio: 1;
}
@media screen and (max-width: 1024px) {
  .pg_home .groupSect .group_list .iconList > li {
    width: 124px;
    margin-inline: auto;
    margin-block: -8px;
  }
  .pg_home .groupSect .group_list .iconList > li:nth-child(2) {
    width: 114px;
    margin-top: -4px;
  }
  .pg_home .groupSect .group_list .iconList > li:last-child {
    width: 132px;
    margin-bottom: -12px;
  }
}
@media not all and (max-width: 1024px), print {
  .pg_home .groupSect .group_list .iconList > li {
    width: 33.3333333333%;
  }
}
.pg_home .groupSect .group_list .iconList > li img {
  margin: auto;
  width: 164px;
  max-width: unset;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .group_list .iconList > li img {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .group_list .iconList > li svg {
    width: 100%;
    height: auto;
    aspect-ratio: 1;
  }
}
@media not all and (max-width: 767px), print {
  .pg_home .groupSect .link {
    display: grid;
    justify-content: flex-start;
    align-content: flex-end;
    grid-column: span 2;
    padding-left: var(--_padIn);
    margin-bottom: 16px;
  }
}
@media screen and (max-width: 767px) {
  .pg_home .groupSect .link {
    display: flex;
    justify-content: flex-end;
    margin-top: 48px;
  }
}
.pg_home .otherLinkSect {
  padding-bottom: 72px;
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect {
    padding-bottom: 128px;
  }
}
.pg_home .otherLinkSect .otherLink {
  display: flex;
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink {
    flex-direction: column;
    margin-inline: -12px;
  }
}
.pg_home .otherLinkSect .otherLink > li {
  flex-shrink: 0;
}
@media not all and (max-width: 767px), print {
  .pg_home .otherLinkSect .otherLink > li {
    margin-block: 84px 0;
    width: calc(50% + 1px);
  }
  .pg_home .otherLinkSect .otherLink > li:first-child {
    margin-block: 0 84px;
    margin-right: -2px;
  }
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink > li:first-child {
    margin-bottom: -1px;
  }
}
.pg_home .otherLinkSect .otherLink > li .inner {
  padding: 42px;
  border: 2px solid #f2f4f6;
  transition: background-color 0.5s;
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink > li .inner {
    padding: 28px 10px 10px;
    border-width: 1px;
  }
}
.pg_home .otherLinkSect .otherLink > li .inner .heading {
  position: relative;
  display: flex;
  align-items: center;
  gap: 8px;
  padding-top: 64px;
  margin-bottom: 36px;
  font-family: var(--_ff-bold);
  font-size: 1.712rem;
  line-height: 1.75;
  letter-spacing: normal;
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink > li .inner .heading {
    padding-top: 50px;
    margin-inline: 14px;
    font-size: 1.375rem;
    font-weight: 600;
    line-height: 1.43;
  }
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink > li .inner .heading .el_animBox {
    scale: 0.7;
  }
}
.pg_home .otherLinkSect .otherLink > li .inner .heading:after {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url(../img/common/icon/icon_arw.svg);
  mask-image: url(../img/common/icon/icon_arw.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--light-blue-500);
  transition: background-color 0.5s;
}
.pg_home .otherLinkSect .otherLink > li .inner .thumbnail {
  width: 100%;
  border-radius: 16px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink > li .inner .thumbnail {
    border-radius: 10px;
  }
}
.pg_home .otherLinkSect .otherLink > li .inner .thumbnail > img {
  width: 100%;
  aspect-ratio: 3/2;
  -o-object-fit: cover;
  object-fit: cover;
  transition: scale 0.5s;
}
@media screen and (max-width: 767px) {
  .pg_home .otherLinkSect .otherLink > li .inner .thumbnail > img {
    aspect-ratio: 179/128;
  }
}
.pg_home .otherLinkSect .otherLink > li a:focus-visible .heading::after {
  background-color: var(--dark-blue-900);
}
.pg_home .otherLinkSect .otherLink > li a:focus-visible .inner {
  background-color: var(--light-blue-50);
}
.pg_home .otherLinkSect .otherLink > li a:focus-visible .inner .thumbnail img {
  scale: 1.05;
}
@media (any-hover: hover) {
  .pg_home .otherLinkSect .otherLink > li a:hover .heading::after {
    background-color: var(--dark-blue-900);
  }
  .pg_home .otherLinkSect .otherLink > li a:hover .inner {
    background-color: var(--light-blue-50);
  }
  .pg_home .otherLinkSect .otherLink > li a:hover .inner .thumbnail img {
    scale: 1.05;
  }
}

.pg_news .ly_cont {
  padding-block: 232px 172px;
}
@media screen and (max-width: 767px) {
  .pg_news .ly_cont {
    padding-block: 166px 172px;
  }
}
.pg_news .newsArea {
  position: relative;
  margin-top: 64px;
}
@media screen and (max-width: 767px) {
  .pg_news .newsArea {
    margin-top: 42px;
    padding-top: 58px;
  }
}
.pg_news .newsArea .el_animBox {
  left: var(--_padIn);
}
@media screen and (max-width: 767px) {
  .pg_news .newsArea .el_animBox {
    scale: 0.63;
  }
}
@media not all and (max-width: 767px), print {
  .pg_news .newsArea .inner {
    grid-column: 3/span 4;
    padding-right: var(--_padIn);
  }
}
.pg_news .newsArea .newsList {
  display: grid;
  row-gap: 64px;
}
.pg_news .newsArea .newsList > li article {
  display: grid;
  transition: color var(--transDur);
}
.pg_news .newsArea .newsList > li article .title {
  font-size: 1.5rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .pg_news .newsArea .newsList > li article .title {
    font-size: 1.25rem;
    line-height: 1.55;
  }
}
.pg_news .newsArea .newsList > li article time {
  display: inline-block;
  margin-top: 10px;
  font-family: var(--ff_Inter);
  font-size: 0.875rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .pg_news .newsArea .newsList > li article time {
    margin-top: 12px;
    opacity: 0.5;
  }
}
.pg_news .newsArea .newsList > li a:focus-visible article {
  color: var(--light-blue-500);
}
@media (any-hover: hover) {
  .pg_news .newsArea .newsList > li a:hover article {
    color: var(--light-blue-500);
  }
}
.pg_news .newsArea .loadMoreBtn {
  margin-top: 100px;
}
.pg_news .newsArea .loadMoreBtn .btn {
  display: flex;
  justify-content: center;
}
.pg_news .newsArea .loadMoreBtn .btn > button {
  display: grid;
  place-content: center;
  padding: 12px 98px;
  border: 1px solid var(--dark-blue-100);
  font-family: var(--_ff-bold);
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
  color: var(--light-blue-800);
  transition-property: border-color, color;
  transition-duration: var(--transDur);
}
@media screen and (max-width: 767px) {
  .pg_news .newsArea .loadMoreBtn .btn > button {
    padding-inline: 70px;
    font-size: 0.875rem;
  }
}
.pg_news .newsArea .loadMoreBtn .btn > button:focus-visible {
  border-color: var(--light-blue-500);
  color: var(--light-blue-500);
}
@media (any-hover: hover) {
  .pg_news .newsArea .loadMoreBtn .btn > button:hover {
    border-color: var(--light-blue-500);
    color: var(--light-blue-500);
  }
}
.pg_news .newsArea .loadMoreBtn .counter {
  display: flex;
  justify-content: center;
  -moz-column-gap: 0.5em;
  column-gap: 0.5em;
  margin-top: 12px;
  font-size: 0.75rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
  opacity: 0.5;
}

.pg_contact .ly_cont {
  padding-block: 232px 170px;
}
@media screen and (max-width: 767px) {
  .pg_contact .ly_cont {
    padding-block: 160px 56px;
  }
}
.pg_contact .contactArea {
  margin-top: 64px;
}
@media not all and (max-width: 1024px), print {
  .pg_contact .contactArea {
    grid-template-columns: auto minmax(0, 1fr);
    overflow: hidden;
  }
}
@media screen and (max-width: 1024px) {
  .pg_contact .contactArea {
    grid-template-columns: minmax(0, 1fr);
    row-gap: 56px;
    margin-top: 42px;
  }
}
.pg_contact .contactArea .contact_txt {
  position: relative;
  margin-left: var(--_padIn);
  padding-top: 84px;
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_txt {
    padding-top: 57px;
  }
}
.pg_contact .contactArea .contact_txt .heading {
  margin-bottom: 24px;
  font-size: 1.5rem;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_txt .heading {
    font-size: 1.125rem;
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
}
@media not all and (max-width: 767px), print {
  .pg_contact .contactArea .contact_txt .txt {
    width: 550px;
    text-align: justify;
  }
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_txt .el_animBox {
    scale: 0.63;
  }
}
.pg_contact .contactArea .contact_btn {
  display: grid;
  margin-top: 94px;
  width: 648px;
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_btn {
    margin-top: 32px;
    width: 100%;
  }
}
.pg_contact .contactArea .contact_btn #contactMail {
  position: relative;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  justify-content: space-between;
  align-items: center;
  -moz-column-gap: 12px;
  column-gap: 12px;
  padding: 27px 31px;
  border: 1px solid var(--dark-blue-100);
  letter-spacing: 0.07em;
  color: var(--light-blue-1000);
  transition-property: border, color;
  transition-duration: var(--transDur);
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_btn #contactMail {
    padding: 21px 19px;
  }
}
.pg_contact .contactArea .contact_btn #contactMail:before {
  content: "";
  display: inline-block;
  width: 24px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_arw.svg);
  mask-image: url(../img/common/icon/icon_arw.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--light-blue-500);
}
.pg_contact .contactArea .contact_btn #contactMail:focus-visible {
  border-color: var(--light-blue-500);
  color: var(--light-blue-500);
}
@media (any-hover: hover) {
  .pg_contact .contactArea .contact_btn #contactMail:hover {
    border-color: var(--light-blue-500);
    color: var(--light-blue-500);
  }
}
@media not all and (max-width: 767px), print {
  .pg_contact .contactArea .contact_img {
    padding-right: var(--_padIn);
    padding-left: min(calc(98 / (var(--designW) + var(--scrollbarW)) * 100vw), 98px);
  }
  @media screen and (max-width: 1024px) {
    .pg_contact .contactArea .contact_img {
      padding-inline: var(--_padIn);
    }
  }
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_img {
    padding-inline: 0;
    margin-inline: -12px;
  }
}
.pg_contact .contactArea .contact_img figure {
  position: relative;
  width: 100%;
  height: 100%;
  border-radius: 60px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_img figure {
    border-radius: 32px;
  }
}
.pg_contact .contactArea .contact_img figure > img {
  width: 100%;
  height: 100%;
  aspect-ratio: unset;
  -o-object-fit: cover;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .pg_contact .contactArea .contact_img figure > img {
    height: auto;
    aspect-ratio: 378/252;
  }
}
@media not all and (max-width: 1024px), print {
  .pg_contact .contactArea .contact_img figure > img {
    position: absolute;
    top: 50%;
    left: 50%;
    translate: -50% -50%;
  }
}

@media not all and (max-width: 767px), print {
  .pg_about .ly_cont {
    padding-block: 172px 177px;
  }
}
@media screen and (max-width: 767px) {
  .pg_about .ly_cont {
    padding-block: 122px 111px;
  }
}

.pg_group .ly_cont {
  padding-block: 167px 300px;
}
@media screen and (max-width: 767px) {
  .pg_group .ly_cont {
    padding-block: 122px 100px;
  }
}
.pg_group .mvArea {
  margin-block: 96px 128px;
  margin-inline: 18px;
  height: 80vh;
  border-radius: 16px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pg_group .mvArea {
    margin-block: 48px 96px;
    margin-inline: 12px;
    height: 520px;
  }
}
.pg_group .mvArea img {
  width: 100%;
  height: 100%;
  border-radius: 16px;
  -o-object-fit: cover;
  object-fit: cover;
}
.pg_group .modalArea .modalList {
  display: grid;
  row-gap: 12px;
}
@media not all and (max-width: 767px), print {
  .pg_group .modalArea .modalList {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    -moz-column-gap: 36px;
    column-gap: 36px;
  }
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList {
    margin-inline: -12px;
  }
}
.pg_group .modalArea .modalList > li {
  display: grid;
}
.pg_group .modalArea .modalList > li > button {
  display: grid;
  border-radius: 24px;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li > button {
    aspect-ratio: 1;
  }
}
.pg_group .modalArea .modalList > li > button:focus-visible .inner {
  background-color: var(--light-blue-50);
}
@media (any-hover: hover) {
  .pg_group .modalArea .modalList > li > button:hover .inner {
    background-color: var(--light-blue-50);
  }
}
.pg_group .modalArea .modalList > li .inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-content: center;
  padding: min(calc(30 / (var(--designW) + var(--scrollbarW)) * 100vw), 30px) min(calc(30 / (var(--designW) + var(--scrollbarW)) * 100vw), 30px) min(calc(40 / (var(--designW) + var(--scrollbarW)) * 100vw), 40px);
  height: 100%;
  border: 2px solid rgba(0, 49, 79, 0.05);
  border-radius: 24px;
  background-color: #fff;
  text-align: center;
  transition: background-color 0.5s;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .inner {
    padding: 24px;
  }
}
.pg_group .modalArea .modalList > li .inner .logo {
  display: grid;
  width: 52.3%;
  margin: min(calc(72 / (var(--designW) + var(--scrollbarW)) * 100vw), 72px) auto min(calc(45 / (var(--designW) + var(--scrollbarW)) * 100vw), 45px);
  mix-blend-mode: multiply;
}
@media not all and (max-width: 767px), print {
  .pg_group .modalArea .modalList > li .inner .logo {
    min-width: 150px;
  }
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .inner .logo {
    margin-bottom: min(calc(59 / (var(--designW) + var(--scrollbarW)) * 100vw), 59px);
    width: 50%;
  }
}
.pg_group .modalArea .modalList > li .inner .logo img {
  width: 100%;
}
.pg_group .modalArea .modalList > li .inner .logo svg {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
}
.pg_group .modalArea .modalList > li .inner .title {
  display: block;
  font-size: 1.375rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .inner .title {
    font-size: 1.25rem;
  }
}
.pg_group .modalArea .modalList > li .modal {
  position: fixed;
  display: grid;
  place-content: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition-property: opacity, visibility;
  transition-duration: var(--transDur);
  z-index: 100000;
}
.pg_group .modalArea .modalList > li .modal[aria-hidden=true] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.pg_group .modalArea .modalList > li .modal_inner {
  position: relative;
  width: 700px;
  padding: 42px 36px 48px;
  border-radius: 24px;
  background-color: #fff;
  z-index: 10;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner {
    width: auto;
    margin-inline: 8px;
    padding: 38px 24px 42px;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .logo {
  margin-bottom: 74px;
  width: 120px;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .logo {
    margin-bottom: 48px;
    width: 103px;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .logo:has(img) {
  margin-bottom: 56px;
  width: 76px;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .logo:has(img) {
    margin-bottom: 23px;
    width: 56px;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .logo img {
  -o-object-fit: contain;
  object-fit: contain;
}
.pg_group .modalArea .modalList > li .modal_inner .logo svg {
  width: 100%;
  height: auto;
  max-height: 40px;
}
.pg_group .modalArea .modalList > li .modal_inner .title {
  margin-bottom: 16px;
  font-size: 1.375rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .title {
    margin-bottom: 12px;
    font-size: 1.25rem;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .txt {
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .txt {
    font-size: 0.875rem;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .link {
  display: flex;
  margin-top: 64px;
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .link {
    margin-top: 42px;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .link > a {
  font-size: 1rem;
  line-height: 1.75;
  letter-spacing: 0.07em;
  color: var(--light-blue-600);
  transition: color var(--transDur);
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .link > a {
    font-size: 0.875rem;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .link > a:after {
  background-color: currentColor !important;
  vertical-align: -0.35em;
}
.pg_group .modalArea .modalList > li .modal_inner .link > a::after {
  display: inline-block;
  background-color: currentColor;
  -webkit-mask-size: 100%;
  mask-size: 100%;
}
.pg_group .modalArea .modalList > li .modal_inner .link > a[target=_blank]::after {
  content: "";
  width: 20px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_blank.svg);
  mask-image: url(../img/common/icon/icon_blank.svg);
  background-color: var(--light-blue-700);
}
.pg_group .modalArea .modalList > li .modal_inner .link > a[href$=".pdf"]::after, .pg_group .modalArea .modalList > li .modal_inner .link > a[href*=".doc"]::after, .pg_group .modalArea .modalList > li .modal_inner .link > a[href*=".xls"]::after, .pg_group .modalArea .modalList > li .modal_inner .link > a[href*=".ppt"]::after, .pg_group .modalArea .modalList > li .modal_inner .link > a[href$=".zip"]::after {
  content: "";
  width: 24px;
  aspect-ratio: 1;
  -webkit-mask-image: url(../img/common/icon/icon_file.svg);
  mask-image: url(../img/common/icon/icon_file.svg);
  background-color: var(--light-blue-600);
}
@media not all and (max-width: 767px), print {
  .pg_group .modalArea .modalList > li .modal_inner .link > a[target=_blank]:after {
    width: 24px;
  }
}
.pg_group .modalArea .modalList > li .modal_inner .link > a:focus-visible {
  color: var(--dark-blue-900);
}
@media (any-hover: hover) {
  .pg_group .modalArea .modalList > li .modal_inner .link > a:hover {
    color: var(--dark-blue-900);
  }
}
.pg_group .modalArea .modalList > li .modal_inner .closeBtn {
  position: absolute;
  top: 30px;
  right: 30px;
  width: 24px;
  height: 24px;
  -webkit-mask-image: url(../img/common/icon/icon_close.svg);
  mask-image: url(../img/common/icon/icon_close.svg);
  -webkit-mask-size: contain;
  mask-size: contain;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  background-color: var(--light-blue-1000);
}
@media screen and (max-width: 767px) {
  .pg_group .modalArea .modalList > li .modal_inner .closeBtn {
    top: 34px;
    right: 22px;
  }
}
.pg_group .modalArea .modalList > li .modal_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--light-blue-1100);
  opacity: 0.5;
  z-index: 1;
}

.pg_error .ly_cont {
  padding-block: 220px 250px;
}
@media screen and (max-width: 767px) {
  .pg_error .ly_cont {
    padding-block: 122px 180px;
  }
}
.pg_error .message .inner {
  position: relative;
  padding-top: 62px;
}
@media not all and (max-width: 767px), print {
  .pg_error .message .inner {
    grid-column: 3/span 2;
    padding-top: 88px;
  }
}
.pg_error .message .inner .heading {
  margin-bottom: 32px;
  font-size: 2rem;
  line-height: 1.5;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .pg_error .message .inner .heading {
    margin-bottom: 24px;
    font-size: 1.75rem;
    line-height: 1.6;
  }
}
@media not all and (max-width: 767px), print {
  .pg_error .message .inner .txt {
    white-space: nowrap;
  }
  @media screen and (max-width: 900px) {
    .pg_error .message .inner .txt {
      font-size: 0.8em;
      letter-spacing: 0.07em;
    }
  }
}
.pg_error .message .inner .link {
  display: flex;
  margin-top: 91px;
}
@media screen and (max-width: 767px) {
  .pg_error .message .inner .link {
    margin-top: 73px;
  }
}

/**
 * Keyframes
 */