@charset "UTF-8";
/* Global（変数・mixin・関数） */
/* font */
/* ブレイクポイント指定 */
/* 

フォント読み込み

⚫︎使い方

@include font-face('Lora', 'fonts/Lora', 400, italic, ttf);
@include font-face('Samplinal', 'fonts/Samplinal', bold, normal, eot woff2 woff);
-----------------------------------------------------------------------------------*/
/* 

上向き(upward)、右向き(rightward)、下向き(downward)、左向き(leftward)、左上(upper-left)、右上(upper-right)、右下(lower-right)、左下(lower-left)の８方向から選択します


@include triangle(upward, 20px, 15px, #cd5c5c);

@include triangle(upper-left, 12px, 12px);
---*/
/* Foundation */
/*!
* ress.css • v4.0.0
* MIT License
* github.com/filipelinhares/ress
*/
/* # =================================================================
# Global selectors
# ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-text-size-adjust: 100%; /* Prevent adjustments of font size after orientation changes in iOS */
  word-break: normal;
  -moz-tab-size: 4;
  -o-tab-size: 4;
     tab-size: 4;
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0; /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
   # General elements
   # ================================================================= */
hr {
  overflow: visible; /* Show the overflow in Edge and IE */
  height: 0; /* Add the correct box sizing in Firefox */
  color: inherit; /* Correct border color in Firefox. */
}

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

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

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

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

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

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

li {
  margin: 0;
}
li a {
  text-decoration: none;
}

nav li a {
  color: inherit;
  text-decoration: none;
}

p {
  margin: 0;
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
  text-decoration: none;
  opacity: 0.8;
}

i {
  margin: 0;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

pre {
  font-size: 1em; /* Correct the odd `em` font sizing in all browsers */
}

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

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

table {
  border-color: inherit; /* Correct border color in all Chrome, Edge, and Safari. */
  text-indent: 0; /* Remove text indentation in Chrome, Edge, and Safari */
}

/* # =================================================================
   # Forms
   # ================================================================= */
input {
  border-radius: 0;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

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

[type=search] {
  -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px; /* Correct the outline style in Safari */
}

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

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
  color: inherit;
}

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

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
}

a:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline-width: 0;
}

/* Style select like a standard input */
select {
  -moz-appearance: none; /* Firefox 36+ */
  -webkit-appearance: none; /* Chrome 41+ */
}

select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge 18- and IE */
}

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

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

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

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled=true] {
  cursor: default;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}

/* Global（変数・mixin・関数） */
@font-face {
  font-family: "highlander";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/highlander.woff2") format("woff2"), url("../fonts/highlander.woff") format("woff");
  font-display: swap;
}
html {
  font-size: 16px;
  -webkit-text-size-adjust: none;
}

@media screen and (max-width: 1919px) {
  html {
    font-size: 0.8333333333vw;
  }
}
@media screen and (max-width: 1439px) {
  html {
    font-size: 1.1111111111vw;
  }
}
@media screen and (max-width: 1024px) {
  html {
    font-size: 1.0731707317vw;
  }
}
@media screen and (max-width: 768px) {
  html {
    font-size: 2.496099844vw;
    font-size: 3.5881435257vw;
  }
}
body {
  font-family: "Noto Sans JP", sans-serif;
  line-height: 1.875;
  font-weight: 400;
  font-style: normal;
  color: #51555B;
  letter-spacing: -0.03em;
}

@media screen and (max-width: 1024px) {
  body.is-non-scroll {
    overflow: hidden;
  }
}

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

li {
  list-style-type: none;
}

a {
  text-decoration: none;
  cursor: pointer;
  color: inherit;
}

a img:hover,
a:hover {
  opacity: 0.5;
  -webkit-transition: linear 0.13s;
  transition: linear 0.13s;
}

li img {
  display: block;
}

a img {
  border-style: none;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 400;
}

dt {
  font-weight: 400;
}

em {
  font-style: normal;
}

svg {
  overflow: visible;
}

video {
  width: 100%;
  height: 100%;
  vertical-align: bottom;
}

/* ==============================================
   フォームの基本
   ============================================== */
input[type=text],
input[type=email],
input[type=tel],
textarea {
  border: 1px solid #D4D4D4;
  background-color: #fff;
  padding: 0.6875rem 1.375rem;
  width: 100%;
  border-radius: 0.1875rem;
  font-weight: 500;
  font-size: 0.875rem;
}
input[type=text]::-webkit-input-placeholder, input[type=email]::-webkit-input-placeholder, input[type=tel]::-webkit-input-placeholder, textarea::-webkit-input-placeholder {
  color: #aaa;
}
input[type=text]::-moz-placeholder, input[type=email]::-moz-placeholder, input[type=tel]::-moz-placeholder, textarea::-moz-placeholder {
  color: #aaa;
}
input[type=text]:-ms-input-placeholder, input[type=email]:-ms-input-placeholder, input[type=tel]:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #aaa;
}
input[type=text]::-ms-input-placeholder, input[type=email]::-ms-input-placeholder, input[type=tel]::-ms-input-placeholder, textarea::-ms-input-placeholder {
  color: #aaa;
}
input[type=text]::placeholder,
input[type=email]::placeholder,
input[type=tel]::placeholder,
textarea::placeholder {
  color: #aaa;
}
input[type=text]:focus,
input[type=email]:focus,
input[type=tel]:focus,
textarea:focus {
  border-color: #51555B;
}

input.is-error,
select.is-error,
textarea.is-error {
  border: 1px solid red;
}

.c-select-wrap {
  position: relative;
}
.c-select-wrap__arw {
  fill: #727171;
  width: 0.8825rem;
  height: 0.50375rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 1.125rem;
}

select {
  color: #9A9A9A;
  padding: 0.6875rem 1.4375rem;
  padding-right: 2.5625rem;
  border: 1px solid #D4D4D4;
  background-color: #fff;
  width: 100%;
  border-radius: 0.1875rem;
  font-size: 0.875rem;
  font-weight: 400;
}
select.is-selected {
  color: #000;
}
select:focus {
  border-color: #51555B;
}

textarea {
  height: 13rem;
  overflow-y: scroll;
}
@media screen and (max-width: 900px) {
  textarea {
    height: 13.75rem;
  }
}

input[type=checkbox],
input[type=radio] {
  position: absolute;
  visibility: hidden;
}

.c-checkbox-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.75rem;
}

.c-checkbox-item__label {
  position: relative;
  font-weight: bold;
  padding-left: 1.125rem;
  font-size: 0.875rem;
}
.c-checkbox-item__label::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  background-color: #fff;
  border: 1px solid #b8b8b8;
  width: 0.9375rem;
  aspect-ratio: 1/1;
}

.slick-dots {
  font-size: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
}
.slick-dots li {
  border-radius: 50%;
  width: 0.625rem;
  aspect-ratio: 1/1;
  background-color: #D1D3D5;
}
.slick-dots li.slick-active {
  background-color: #2B4B78;
}

/* Layout */
.l-header {
  padding: 1.0625rem 0;
  position: relative;
  z-index: 1;
  -webkit-transition: -webkit-transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  transition: -webkit-transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  transition: transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  transition: transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93), -webkit-transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
}
.l-header__inner {
  max-width: 1880px;
  width: 98.125%;
  margin: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .l-header__inner {
    width: 90%;
  }
}
.l-header__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.4375rem;
}
.l-header__logo {
  width: 24.1875rem;
  line-height: 1;
  display: block;
}
@media screen and (max-width: 768px) {
  .l-header__logo {
    width: 18.75rem;
  }
}
.l-header__emergency {
  background-color: #E21142;
  border-radius: 5.625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 0.9375rem;
  gap: 0.5625rem;
  padding: 0.5625rem 1rem;
  padding-right: 1.4375rem;
}
@media screen and (max-width: 768px) {
  .l-header__emergency {
    gap: 0.3125rem;
    line-height: 1.2;
  }
}
.l-header__emergency-icon {
  width: 1.0625rem;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 768px) {
  .l-header__emergency-icon {
    width: 1rem;
  }
}
@media screen and (max-width: 768px) {
  .l-header__emergency-text {
    font-size: 0.7rem;
    font-weight: bold;
    word-break: keep-all;
  }
}
@media screen and (max-width: 768px) {
  .l-header__body {
    display: none;
  }
}
.l-header__info {
  color: #2B4B78;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}
.l-header__news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  letter-spacing: -0.02em;
  font-size: 0.9375rem;
  gap: 1.25rem;
  margin-right: 1.25rem;
  font-weight: 500;
}
.l-header__tel {
  font-family: "Roboto", sans-serif;
  font-weight: 900;
  font-size: 1.875rem;
  letter-spacing: -0.03em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
@media screen and (min-width: 769px) {
  .l-header__tel {
    pointer-events: none;
  }
}
.l-header__tel-icon {
  width: 1.5625rem;
  height: 1.875rem;
}
.l-header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-header__menu {
  font-size: 1.125rem;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem;
  margin-right: 1.75rem;
  color: #2B4B78;
}
.l-header__menu-link {
  position: relative;
}
.l-header__menu-link::before {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  left: auto;
  bottom: 0;
  background-color: #e1e9f3;
  width: 100%;
  height: 40%;
  z-index: -1;
  width: 0;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.l-header__menu-link:hover {
  opacity: 1;
}
.l-header__menu-link:hover::before {
  width: 100%;
  left: 0;
  right: auto;
}
.l-header__actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1rem;
}
.l-header__actions-item {
  min-width: 7.5625rem;
}
.l-header__actions-link {
  display: block;
  color: #fff;
  padding: 0.4375rem 0.625rem;
  text-align: center;
  background-color: #2B4B78;
  border-radius: 5.625rem;
}
.l-header__actions-link.--rev {
  background-color: #0096A7;
}
.l-header.is-off {
  -webkit-transition: -webkit-transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  transition: -webkit-transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  transition: transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  transition: transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93), -webkit-transform 300ms cubic-bezier(0.15, 0.99, 0.61, 0.93);
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.l-header.is-off:after {
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}
.l-header.is-scrolled {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 10;
}
.l-header.is-scrolled::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  background-color: rgba(255, 255, 255, 0.7803921569);
  backdrop-filter: blur(30px);
  width: 100%;
  height: 100%;
  z-index: -2;
}

.l-footer {
  padding: 5.875rem 0 4.25rem;
}
@media screen and (max-width: 768px) {
  .l-footer {
    padding: 4.5rem 0 3.625rem;
  }
}
.l-footer__inner {
  width: 92%;
  margin-inline: auto;
}
@media screen and (min-width: 769px) {
  .l-footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.875rem;
  }
}
@media screen and (max-width: 1024px) {
  .l-footer__inner {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
}
.l-footer__body {
  color: #2B4B78;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.l-footer__brand {
  width: 22.5rem;
  margin-bottom: 2.875rem;
}
.l-footer__address {
  margin-bottom: 10.6875rem;
}
@media screen and (max-width: 768px) {
  .l-footer__address {
    margin-bottom: 1.25rem;
  }
}
.l-footer__address-list {
  display: grid;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: auto 1fr;
  font-size: max(13px, 0.875rem);
  letter-spacing: 0.03em;
  row-gap: 1.0625rem;
}
@media screen and (max-width: 768px) {
  .l-footer__address-list {
    display: block;
    font-size: 1rem;
  }
}
.l-footer__address-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-weight: 400;
  gap: 0.5rem;
}
@media screen and (min-width: 769px) {
  .l-footer__address-title {
    padding-right: 1.1em;
    margin-right: 1.1em;
    border-right: 1px solid #2B4B78;
  }
}
.l-footer__address-icon {
  width: 1.125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .l-footer__address-icon {
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 768px) {
  .l-footer__address-text {
    padding-bottom: 1.5em;
  }
}
.l-footer__actions {
  margin-bottom: 7.9375rem;
}
@media screen and (max-width: 768px) {
  .l-footer__actions {
    margin-bottom: 2.5rem;
    display: none;
  }
}
.l-footer__actions-item:not(:last-of-type) {
  margin-bottom: 0.875rem;
}
@media screen and (max-width: 768px) {
  .l-footer__actions-item:not(:last-of-type) {
    margin-bottom: 1.25rem;
  }
}
.l-footer__actions-link {
  position: relative;
  padding-left: 1.375rem;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
  .l-footer__actions-link {
    font-size: 1.4rem;
  }
}
.l-footer__actions-link::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 0.3125rem;
  height: 0.625rem;
  background: url(../img/common/footer_arw.svg) no-repeat 0;
  background-size: 100% auto;
}
@media screen and (max-width: 768px) {
  .l-footer__actions-link::before {
    width: 0.625rem;
    height: 0.9375rem;
  }
}
.l-footer__bottom {
  font-size: 0.875rem;
  letter-spacing: -0.03em;
  line-height: 1.7857142857;
}
.l-footer__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1em;
  margin-bottom: 0.5rem;
}
.l-footer__external-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 0.4375rem;
}
.l-footer__external-text {
  text-decoration: underline;
}
.l-footer__external-icon {
  fill: #5A6D87;
  width: 0.65625rem;
  height: 0.53125rem;
  margin-top: 0.4375rem;
}
.l-footer__navs {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(150px, 100%), 1fr));
  grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
  width: 100%;
  row-gap: 4.25rem;
}
@media screen and (max-width: 768px) {
  .l-footer__navs {
    display: none;
  }
}
@media screen and (max-width: 1024px) {
  .l-footer__navs {
    row-gap: 1.125rem;
    margin-left: 10%;
  }
  .l-footer__navs .l-footer__navs-list {
    display: none;
  }
}
@media screen and (min-width: 1440px) {
  .l-footer__navs {
    grid-template-columns: repeat(auto-fill, minmax(min(220px, 100%), 1fr));
    width: 60%;
  }
}
.l-footer__navs-block {
  width: 100%;
}
.l-footer__navs-title {
  color: #5A6D87;
  font-weight: 400;
  font-size: 1rem;
  font-size: max(14px, 1rem);
  letter-spacing: -0.05em;
  margin-bottom: 1.25rem;
  line-height: 1.3;
}
.l-footer__navs-title.--second {
  margin-top: 1.875rem;
}
.l-footer__navs-title-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8125rem;
}
.l-footer__navs-title .c-cricle-arrow {
  width: 1.375rem;
}
.l-footer__navs-item {
  color: #5A6D87;
  font-size: 0.8125rem;
  font-size: max(12px, 0.8125rem);
}
.l-footer__navs-item:not(:last-of-type) {
  margin-bottom: 0.625rem;
}
.l-footer__navs-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.1875rem;
  line-height: 1.4;
}
.l-footer__navs-link .c-cricle-arrow {
  width: 1.375rem;
  fill: #fff;
  stroke: rgba(43, 75, 121, 0.4);
}
.l-page-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  z-index: 9;
  width: 3.75rem;
  display: none;
  overflow: hidden;
  display: grid;
  place-content: center;
}
/* ===============================
   Layout: Container
   l-container
=============================== */
.l-wrapper {
  position: relative;
  min-height: 100dvh;
  width: 100%;
}

.l-container {
  width: 83.28125%;
  width: 88.4895833333%;
  margin-inline: auto;
  position: relative;
}
@media screen and (max-width: 1024px) {
  .l-container {
    width: 90%;
  }
}
@media screen and (min-width: 769px) {
  .l-container.--narrow {
    width: 77.0833333333%;
  }
}
.l-container.--wide {
  max-width: 78.75rem;
  width: 90%;
}
.l-container.--full {
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .l-container.--sp-full {
    width: 100%;
    max-width: 100%;
  }
}

.l-col02-inner {
  position: relative;
  width: 77.5rem;
  width: 100%;
  max-width: 100%;
}
@media screen and (max-width: 768px) {
  .l-col02-inner {
    width: 90%;
    margin-inline: auto;
  }
}

.l-layout-col02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-layout-col02 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
.l-layout-col02__side {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 17.5rem;
          flex: 0 0 17.5rem;
  opacity: 0;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
  -webkit-transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}
@media screen and (max-width: 768px) {
  .l-layout-col02__side {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
}
.l-layout-col02__main {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding: 5rem 6.25rem;
  background-color: #fff;
}
@media screen and (min-width: 769px) {
  .l-layout-col02__main {
    width: calc(100% - 17.5rem);
    position: relative;
    z-index: 2;
    margin-top: -5rem;
  }
}
@media screen and (max-width: 768px) {
  .l-layout-col02__main {
    padding: 3.125rem 0;
  }
}

.l-table-contents-bar {
  background: rgb(248, 248, 251);
  background: -webkit-gradient(linear, right top, left top, color-stop(100%, rgb(248, 248, 251)), color-stop(0%, rgba(248, 248, 251, 0.01)));
  background: linear-gradient(270deg, rgb(248, 248, 251) 100%, rgba(248, 248, 251, 0.01) 0%);
}
.l-table-contents-bar__inner {
  padding: 4.875rem 2.75rem;
}
@media screen and (min-width: 769px) {
  .l-table-contents-bar__inner {
    position: sticky;
    top: 0rem;
    left: 0;
  }
}
@media screen and (max-width: 768px) {
  .l-table-contents-bar__inner {
    padding: 2.3125rem 5%;
  }
}
.l-table-contents-bar__home {
  margin-bottom: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.25rem;
}
.l-table-contents-bar__home-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 0.75rem;
  color: #2B4B78;
  gap: 0.5rem;
  position: relative;
}
.l-table-contents-bar__home-link:not(:last-of-type)::after {
  content: "-";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: -0.8125rem;
}
.l-table-contents-bar__home-icon {
  width: 0.875rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.l-table-contents-bar__home-text {
  text-decoration: underline;
}
.l-table-contents-bar__list {
  color: #5A6D87;
}
.l-table-contents-bar__item {
  line-height: 1.125;
}
.l-table-contents-bar__title {
  font-size: 1.125rem;
  margin-bottom: 1.0625rem;
  color: #525963;
}
@media screen and (max-width: 768px) {
  .l-table-contents-bar__sub-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0;
    row-gap: 0.75rem;
  }
}
.l-table-contents-bar__sub-item {
  color: #767E88;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  .l-table-contents-bar__sub-item {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 48%;
            flex: 0 0 48%;
  }
}
@media screen and (min-width: 769px) {
  .l-table-contents-bar__sub-item:not(:last-of-type) {
    margin-bottom: 0.625rem;
  }
}
@media screen and (max-width: 768px) {
  .l-table-contents-bar__sub-link {
    display: block;
    display: grid;
    position: relative;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #2B4B78;
    height: 100%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    font-size: 0.9em;
  }
}
.l-table-contents-bar__childs {
  font-size: 0.875em;
  margin-top: 1.0625rem;
}
@media screen and (max-width: 768px) {
  .l-table-contents-bar__childs {
    margin-top: 0.5rem;
    display: none;
  }
}
.l-table-contents-bar__childs-item {
  line-height: 1.2857142857;
}
.l-table-contents-bar__childs-item:not(:last-of-type) {
  margin-bottom: 0.5rem;
}
.l-table-contents-bar__childs-item a {
  display: inline-block;
  padding-left: 0.8125rem;
  position: relative;
}
.l-table-contents-bar__childs-item a::before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  height: 1px;
  width: 0.5rem;
  background-color: currentColor;
}

.l-pages-arrow {
  background-color: #F8F8FB;
  padding: 4.0625rem 0;
}
@media screen and (max-width: 768px) {
  .l-pages-arrow {
    padding: 3.25rem 0;
  }
}
.l-pages-arrow__heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  color: #2B4B78;
  font-size: 1.0625rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .l-pages-arrow__heading {
    font-size: 1.375rem;
  }
}
.l-pages-arrow__heading-icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 1.71125rem;
          flex: 0 0 1.71125rem;
}
@media screen and (max-width: 768px) {
  .l-pages-arrow__heading-icon {
    -ms-flex-preferred-size: 2rem;
        flex-basis: 2rem;
  }
}
.l-pages-arrow__list {
  display: grid;
  grid-template-columns: repeat(3, 32%);
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  .l-pages-arrow__list {
    grid-template-columns: 1fr;
    gap: 0.75rem;
  }
}
.l-pages-arrow__link.c-button {
  width: 100%;
  font-size: 1.5rem;
  color: #2B4B78;
  border-color: #fff;
  background-color: #fff;
  position: relative;
}
@media screen and (max-width: 1439px) and (min-width: 769px) {
  .l-pages-arrow__link.c-button {
    font-size: 1.25rem !important;
  }
}
.l-pages-arrow__link-text-main {
  font-weight: 500;
}
.l-pages-arrow__link-text-sub {
  font-size: 0.6666666667em;
}
.l-pages-arrow__link-icon.c-cricle-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 2.0625rem;
  fill: #2B4B78;
  stroke: #fff;
  width: 1.5625rem;
}
@media screen and (max-width: 1439px) and (min-width: 769px) {
  .l-pages-arrow__link-icon.c-cricle-arrow {
    right: 1.1875rem;
  }
}

.l-bredcramp {
  display: none;
  padding: 0 2.0618556701%;
}
@media screen and (min-width: 769px) {
  .l-bredcramp {
    margin-top: -2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .l-bredcramp {
    padding-block: 1.25rem;
  }
}
.l-bredcramp__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .l-bredcramp__list {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    line-height: 1;
  }
}
.l-bredcramp__item {
  font-size: 0.9375rem;
  color: #767E88;
  font-weight: 400;
  position: relative;
}
@media screen and (max-width: 768px) {
  .l-bredcramp__item {
    font-size: 0.8125rem;
  }
}
.l-bredcramp__item:not(:last-of-type) {
  margin-right: 0.9375rem;
  padding-right: 1.125rem;
}
.l-bredcramp__item:not(:last-of-type)::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 0.3125rem;
  height: 0.6875rem;
  background: url(../img/icon/icon-line-arrow.svg) no-repeat 50%;
  background-size: 100% auto;
}
/* Object（component + project + utility 全部入り） */
/* ===============================
  Object Layer Index
=============================== */
/* Component（indexごと forward） */
.c-button {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #767E88;
  padding: 0.8125rem 0;
  padding-left: 1.9375rem;
  padding-right: 1.1875rem;
  font-size: 0.9375rem;
  letter-spacing: -0.02em;
  gap: 1rem;
  border: 1px solid #D1D3D5;
  border-radius: 7.5rem;
  line-height: 1;
  -webkit-transition: all linear 0.2s;
  transition: all linear 0.2s;
}
.c-button:hover {
  border-color: #fff;
  background-color: #E4EFFF;
  color: #2B4B78;
  opacity: 1;
}
.c-button:hover .c-button__arw {
  fill: #2B4B78;
  stroke: #fff;
}
@media screen and (max-width: 768px) {
  .c-button {
    padding-block: 0.8125rem;
    padding-left: 1.25rem;
    padding-right: 0.6875rem;
  }
}
.c-button .c-button__text {
  padding-right: 1em;
}
.c-button__arw {
  fill: #E4EFFF;
  stroke: #5A6D87;
  width: 1.5rem;
  aspect-ratio: 1/1;
  -webkit-transition: all linear 0.2s;
  transition: all linear 0.2s;
}
@media screen and (max-width: 768px) {
  .c-button__arw {
    width: 1.3125rem;
  }
}
.c-button.--size-lg {
  width: 100%;
  font-size: 1.5rem;
  padding-block: 1.9375rem;
  text-align: center;
  position: relative;
}
.c-button.--size-lg .c-button__arw {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 2.0625rem;
  fill: #2B4B78;
  stroke: #fff;
}
@media screen and (max-width: 768px) {
  .c-button.--size-lg {
    font-size: 1.3125rem;
  }
}
.c-button.--bg-color--light-blue {
  background-color: #F2F8FF;
  border-color: #F2F8FF;
}
.c-button.--bg-color--light-blue:hover {
  background-color: #d6e9ff;
  opacity: 1;
}
.c-button.--bg-color--light-blue .c-button__text {
  color: #2B4B78;
}

.c-cricle-arrow {
  width: 1.5rem;
  aspect-ratio: 1/1;
  fill: #FFFFFF;
  stroke: #2B4B78;
}
.c-cricle-arrow.--light-blue {
  fill: #E4EFFF;
}
.c-cricle-arrow.--blue {
  stroke: #fff;
  fill: #2B4B78;
}

.c-block-heading {
  color: #2B4B78;
  font-weight: 400;
  font-size: 2.25rem;
  letter-spacing: -0.02em;
  line-height: 1.7222222222;
}
@media screen and (max-width: 768px) {
  .c-block-heading {
    font-size: 1.875rem;
  }
}
.c-block-heading::after {
  content: attr(data-eng);
  font-family: "Roboto", sans-serif;
  font-size: 0.8125rem;
  letter-spacing: 0.05em;
  margin-top: 0.5rem;
  display: block;
  color: #9F9F9F;
}
@media screen and (max-width: 768px) {
  .c-block-heading::after {
    margin-top: 0;
  }
}

.c-top-line-heading {
  font-size: 1.875rem;
  letter-spacing: -0.02em;
  color: #5A6D87;
  line-height: 2.0666666667;
  padding: 3.5625rem 0 1.6875rem;
  position: relative;
  border-top: 1px solid #D1D3D5;
}
.c-top-line-heading small {
  font-size: 0.7em;
}
@media screen and (max-width: 768px) {
  .c-top-line-heading {
    padding: 2.1875rem 0 1.0625rem;
    font-size: 1.5625rem;
  }
}
.c-top-line-heading::after {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  height: 2px;
  width: 3.375rem;
  background-color: #5A6D87;
}
.c-top-line-heading__sub {
  font-size: 1rem;
}
@media screen and (max-width: 768px) {
  .c-top-line-heading__sub {
    font-size: 0.75rem;
  }
}

.c-sec-heading {
  font-size: 2rem;
  letter-spacing: -0.03em;
  color: #525963;
  line-height: 1.65625;
}
@media screen and (max-width: 768px) {
  .c-sec-heading {
    font-size: 1.6875rem;
  }
}

.c-section-catch {
  font-size: 1.5rem;
  line-height: 1.8333333333;
  color: #5A6D87;
}
@media screen and (max-width: 768px) {
  .c-section-catch {
    font-size: 1.125rem;
  }
}
.c-section-catch.--color-deep {
  color: #525963;
}
.c-section-catch.--size-lg {
  font-size: 2rem;
}
@media screen and (max-width: 768px) {
  .c-section-catch.--size-lg {
    font-size: 1.375rem;
  }
}

.c-cricle-title {
  padding-left: 1.4375rem;
  font-size: 1.5rem;
  color: #5A6D87;
  background: url(../img/icon/icon-iitl-cricle.svg) 0 50% no-repeat;
  background-size: 1.0625rem auto;
}
@media screen and (max-width: 768px) {
  .c-cricle-title {
    font-size: 1.25rem;
    background-size: 0.8125rem auto;
    padding-left: 1.1875rem;
  }
}

.c-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.875rem;
}

.c-tag {
  text-align: center;
  color: #767E88;
  border-radius: 5.625rem;
  font-size: 0.8125rem;
  padding: 0.4375rem 0.625rem;
  min-width: 7rem;
  border: 1px solid #D1D3D5;
}

/* ==============================
   Component: Pagination
============================== */
.c-pagination__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2.375rem;
}
.c-pagination__arrows-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.65625rem;
  font-size: 0.875rem;
}
.c-pagination__arrows-link.--next {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-flow: row-reverse;
          flex-flow: row-reverse;
}
.c-pagination__arrows-icon {
  width: 2.1875rem;
}
.c-pagination__numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
.c-pagination__number a,
.c-pagination__number span {
  width: 2.375rem;
  font-size: 1.125rem;
  font-family: "Roboto", sans-serif;
  aspect-ratio: 1/1;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  line-height: 1;
}
.c-pagination__number.is-current a,
.c-pagination__number.is-current span {
  background-color: #F8F8FB;
}
.c-pagination__back {
  font-size: 0.875rem;
}

.c-info-block {
  display: grid;
  grid-template-columns: auto 1fr;
  -webkit-column-gap: 1.8125rem;
     -moz-column-gap: 1.8125rem;
          column-gap: 1.8125rem;
  row-gap: 1.0625rem;
}
.c-info-block__ttl {
  font-size: 1.0625rem;
  font-weight: bold;
}
.c-define-box__ttl {
  font-weight: bold;
  font-size: 1.0625rem;
  margin-bottom: 0.3125rem;
}
.c-define-box__data {
  line-height: 1.875;
  color: #767E88;
}

.c-cricle-list__item {
  padding-left: 0.62em;
  position: relative;
  color: currentColor;
}
.c-cricle-list__item:not(:last-of-type) {
  margin-bottom: 0.4em;
}
.c-cricle-list__item::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.83125rem;
  width: 0.25rem;
  border-radius: 50%;
  background-color: currentColor;
  aspect-ratio: 1/1;
}
.c-cricle-list.--flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.625rem;
}
.c-cricle-list.--flex .c-cricle-list__item:not(:last-of-type) {
  margin-bottom: 0;
}

.c-cricle-num-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: #525963;
  gap: 0.37em;
}
.c-cricle-num-list__item:not(:last-of-type) {
  margin-bottom: 0.4em;
}
.c-cricle-num {
  display: inline-block;
  width: 1.0625rem;
  height: 1.0625rem;
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 0.75rem;
  background-color: #5A6D87;
  border-radius: 50%;
  text-align: center;
  position: relative;
  vertical-align: middle;
}
.c-cricle-num::after {
  content: attr(data-num);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  line-height: 1;
}

.c-text-sm {
  font-size: 0.875em;
}

@media screen and (max-width: 768px) {
  .c-table-scroll-wrap {
    overflow-x: auto;
  }
}

.c-table {
  width: 100%;
  border-collapse: collapse;
}
@media screen and (max-width: 768px) {
  .c-table {
    width: auto;
  }
}
.c-table.--fixed {
  table-layout: fixed;
}
.c-table th,
.c-table td {
  text-align: center;
  vertical-align: middle;
  padding: 0.875rem 0.5rem;
  border: 1px solid #D1D3D5;
  line-height: 1.3;
}
.c-table thead th {
  background-color: #F9F9F9;
  font-weight: 400;
}

@media screen and (max-width: 768px) {
  .c-schedule-table {
    width: 75rem;
  }
}
.c-schedule-table td,
.c-schedule-table th {
  width: 8.1875rem;
}
.c-schedule-table__time {
  width: 13.1875rem !important;
}
.c-schedule-table__time-icon {
  width: 1.75rem;
  display: block;
  margin: 0 auto 0.4375rem;
}
.c-schedule-table__time-label {
  color: #2B4B78;
}
.c-schedule-table__time-main {
  color: #2B4B78;
  font-family: "Roboto", sans-serif;
  font-size: 1.375rem;
  font-weight: 400;
}
.c-schedule-table__time-note {
  margin-top: 0.5rem;
  font-size: 0.875rem;
  color: #8A8C8E;
  font-weight: 400;
}
.c-schedule-table__dept {
  font-weight: 400;
}
.c-schedule-table__dept-main {
  color: #5A6D87;
}
.c-schedule-table__dept-sub {
  font-size: 0.75em;
}
.c-schedule-table__tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #2B4B78;
  font-size: 0.75em;
}
.c-schedule-table__tag-in {
  border: 1px solid currentColor;
  border-radius: 0.1875rem;
  padding: 0.125rem 0.3125rem;
  line-height: 1.36;
  margin-top: 0.375rem;
}
.c-schedule-table__text-note {
  font-size: 0.75em;
  display: inline-block;
}
.c-schedule-table__text-inline {
  display: inline-block;
  margin-bottom: 0.4375rem;
}

.c-schedule-table__tbody .c-schedule-table__time-top {
  display: none;
}

.c-schedule-table__line {
  border: 0;
  border-top: 1px solid #bcbec0;
  margin: 1em 0;
}

.c-tel {
  font-family: "Roboto", sans-serif;
  color: #2B4B78;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2.6875rem;
  line-height: 1;
  gap: 0.875rem;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .c-tel {
    font-size: 2.375rem;
  }
}
.c-tel__icon {
  fill: currentColor;
  width: 1.8125rem;
  height: 1.75rem;
}
.c-pdf-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.c-pdf-link__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
}
.c-pdf-link__icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 1.5625rem;
          flex: 0 0 1.5625rem;
}
.c-pdf-link__text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-decoration: underline;
}
.c-pdf-link.--box {
  display: block;
  border: 1px solid #D1D3D5;
}
.c-pdf-link.--box:not(:last-of-type) {
  margin-bottom: 1.25rem;
}
.c-pdf-link.--box .c-pdf-link__link {
  padding: 1.5625rem;
}

/* Project - CMS Block */
/* ===============================
   CMS Block: News List
   p-cms-news
================================ */
.p-cms-news {
  position: relative;
}
.p-cms-news__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: 1rem;
  margin-bottom: clamp(1.375rem, calc(16.4174757282px + 1.4886731392vw), 2.8125rem);
}
.p-cms-news__title-inner {
  border-bottom: 2px solid #51555B;
  padding-bottom: 0.3125rem;
}
.p-cms-news__list {
  margin-bottom: clamp(1.25rem, calc(15.145631068px + 1.2944983819vw), 2.5rem);
  display: grid;
  grid-template-columns: repeat(4, 24%);
  -webkit-column-gap: 1.25%;
     -moz-column-gap: 1.25%;
          column-gap: 1.25%;
  row-gap: clamp(1.25rem, calc(15.145631068px + 1.2944983819vw), 2.5rem);
}
@media screen and (max-width: 768px) {
  .p-cms-news__list {
    grid-template-columns: repeat(2, 48%);
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-column-gap: 0;
       -moz-column-gap: 0;
            column-gap: 0;
  }
}
.p-cms-news__list--slide {
  display: block;
}
.p-cms-news__list--slide .p-cms-news__item {
  width: clamp(10rem, calc(11.4285714286px + 19.3452380952vw), 18.125rem);
  margin: 0 clamp(0.9375rem, calc(7px + 1.0416666667vw), 1.375rem);
}
@media screen and (max-width: 768px) {
  .p-cms-news__list--slide .p-cms-news__item {
    width: clamp(12.5rem, calc(-14.2857142857px + 66.9642857143vw), 31.25rem);
    margin: 0 5.5vw;
  }
}
.p-cms-news__thumb {
  margin-bottom: 0.625rem;
}
.p-cms-news__date {
  font-size: 0.8em;
  margin-bottom: 0.25rem;
}
.p-cms-news__heading {
  font-size: clamp(0.625rem, calc(3.1236959762px + 0.8941877794vw), 1rem);
  margin-bottom: 0.9rem;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .p-cms-news__heading {
    font-size: clamp(0.875rem, calc(13.0291262136px + 0.2588996764vw), 1.125rem);
  }
}
.p-cms-news__arrow {
  width: 2.1875rem;
  aspect-ratio: 1/1;
  border: none;
  background: transparent;
  cursor: pointer;
  padding: 0;
  position: absolute;
  top: 31%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: #727171;
  -webkit-transition: 0.25s ease;
  transition: 0.25s ease;
}
@media screen and (max-width: 768px) {
  .p-cms-news__arrow {
    width: 5.2083333333vw;
  }
}
.p-cms-news__arrow:hover {
  color: #51555B;
}
.p-cms-news__arrow--prev {
  left: -7%;
}
@media screen and (max-width: 768px) {
  .p-cms-news__arrow--prev {
    left: 9.8%;
  }
}
.p-cms-news__arrow--next {
  right: -7%;
}
@media screen and (max-width: 768px) {
  .p-cms-news__arrow--next {
    right: 9.8%;
  }
}
.p-cms-news__arrow-icon {
  width: 100%;
  height: 100%;
  fill: #727171;
}
.p-cms-news__btm {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-size: clamp(0.625rem, calc(9.5145631068px + 0.1294498382vw), 0.75rem);
}
.p-cms-news__btm-line {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .p-cms-news--sp-one-colmn .p-cms-news__heading {
    font-size: 0.75rem;
  }
  .p-cms-news--sp-one-colmn .c-tag {
    padding: 0.25rem 0.4375rem;
    font-size: 0.625rem;
  }
}

/* Project - Common UI */
/* @forward "project/hero";
@forward "project/feature-cards";
@forward "project/intro"; */
/* Project - Page */
.p-top-mv {
  padding-top: 25.6875rem;
  padding-bottom: 5.5rem;
}
@media screen and (max-width: 768px) {
  .p-top-mv {
    height: 80svh;
    padding: 0;
  }
}
.p-top-mv__picture .u-bg-cover__bg {
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
}
.p-top-mv__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-top-mv__content {
    height: 80svh;
    display: grid;
    place-content: center;
  }
}
.p-top-mv__texts {
  color: #fff;
}
.p-top-mv__heading {
  font-size: 5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  text-shadow: 0 0 5.375rem #033361;
  line-height: 1.35;
  margin-bottom: 1.25rem;
  font-size: max(5vw, 3.625rem);
  font-weight: 700;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (max-width: 768px) {
  .p-top-mv__heading {
    font-size: 8vw;
    font-weight: bold;
    padding: 0;
    -webkit-writing-mode: tb;
        -ms-writing-mode: tb;
            writing-mode: tb;
  }
}
.p-top-mv__link {
  font-size: 1.25rem;
  letter-spacing: -0.02em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: underline;
  gap: 1.25rem;
}
.p-top-mv__link-icon {
  width: 1.5625rem;
  aspect-ratio: 1/1;
  fill: #E4EFFF;
  stroke: #5A6D87;
}
.p-top-mv__link-text {
  text-shadow: 0 0 2.25rem #294b6d;
}
.p-top-mv__banners {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-mv__banners {
    display: none;
  }
}
.p-top-mv__banners-item {
  width: 20rem;
}

.p-top-navigation {
  position: relative;
  z-index: 1;
  margin-top: -3.75rem;
  margin-bottom: 5.125rem;
}
@media screen and (max-width: 768px) {
  .p-top-navigation {
    margin-top: -2.5rem;
    margin-bottom: 3.125rem;
  }
}
.p-top-navigation__inner {
  background-color: #fff;
  border-radius: 2.5rem;
  width: 93.75%;
  max-width: 1800px;
  margin-inline: auto;
  padding: 2.75rem 3.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-navigation__inner {
    padding: 1.25rem;
    width: 95%;
    margin-left: auto;
    margin-right: 0;
    border-radius: 1.875rem 0 0 1.875rem;
  }
}
.p-top-navigation__top {
  gap: 2.5rem;
}
@media screen and (min-width: 1440px) {
  .p-top-navigation__top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-top-navigation__list {
  display: grid;
  grid-template-columns: repeat(4, calc(25% - 1.5em));
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  gap: 2em;
}
@media screen and (max-width: 1439px) {
  .p-top-navigation__list {
    margin-bottom: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-navigation__list {
    grid-template-columns: repeat(2, 12.5rem);
    padding-block: 0.9375rem;
    margin-bottom: 1.875rem;
    gap: 1rem 0rem;
  }
}
.p-top-navigation__item {
  border-right: 1px solid #D1D3D5;
}
@media screen and (max-width: 1439px) {
  .p-top-navigation__item:last-child {
    border-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .p-top-navigation__item {
    border: 0;
  }
  .p-top-navigation__item a::before {
    content: "";
    width: 90%;
    height: 1px;
    display: block;
    position: absolute;
    left: 0;
    bottom: 0;
    background-color: #D1D3D5;
  }
}
.p-top-navigation__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  height: 10.78125rem;
  gap: 0.625rem;
  height: 100%;
}
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .p-top-navigation__link {
    padding: 0 0.8125rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-navigation__link {
    position: relative;
    padding: 0 1rem 1.5rem;
  }
}
.p-top-navigation__icon {
  width: 3.648125rem;
  width: max(4vw, 1.875rem);
}
@media screen and (max-width: 768px) {
  .p-top-navigation__icon {
    width: 3.125rem;
  }
}
.p-top-navigation__link-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-right: 1.3em;
}
@media screen and (max-width: 768px) {
  .p-top-navigation__link-body {
    padding-right: 0;
  }
}
.p-top-navigation__link-title {
  color: #5A6D87;
  font-size: 2.375rem;
  font-weight: 400;
  letter-spacing: -0.02em;
  line-height: 1.27;
  font-size: max(1.6vw, 2rem);
}
@media screen and (max-width: 768px) {
  .p-top-navigation__link-title {
    font-size: 1.375rem;
  }
}
.p-top-navigation__link-title::after {
  content: attr(data-eng);
  display: block;
  font-family: "Roboto", sans-serif;
  font-size: 0.8125rem;
  letter-spacing: 0.05em;
  line-height: 1.02;
  color: #9F9F9F;
  margin-top: 0.9375rem;
}
.p-top-navigation__link-arrow {
  fill: #E4EFFF;
  stroke: #5A6D87;
  width: 1.5rem;
  aspect-ratio: 1/1;
  margin-bottom: -0.21875rem;
}
.p-top-navigation__schedule {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (max-width: 1439px) {
  .p-top-navigation__schedule {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 5rem;
    padding-top: 2.5rem;
    border-top: 1px solid #D1D3D5;
  }
}
@media screen and (max-width: 768px) {
  .p-top-navigation__schedule {
    padding-top: 0rem;
    display: block;
    border: 0;
    margin-bottom: 1.875rem;
  }
}
.p-top-navigation__schedule-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 1.625rem;
  gap: 5.625rem;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
}
@media screen and (max-width: 768px) {
  .p-top-navigation__schedule-head {
    gap: 2.8125rem;
  }
}
.p-top-navigation__schedule-title {
  color: #5A6D87;
  font-size: 1.375rem;
  font-weight: 400;
  line-height: 1;
  width: 7em;
}
.p-top-navigation__schedule-title::after {
  content: attr(data-eng);
  display: block;
  color: #9F9F9F;
  font-family: "Roboto", sans-serif;
  font-size: 0.8125rem;
  letter-spacing: 0.05em;
  line-height: 1.02;
  margin-top: 0.6875rem;
}
.p-top-navigation__schedule-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: none;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 0.75rem;
}
.p-top-navigation__schedule-links-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 11.9375rem;
          flex: 0 0 11.9375rem;
}
@media screen and (min-width: 1440px) {
  .p-top-navigation__schedule-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-top-navigation__schedule-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #2B4B78;
  gap: 1em;
  border: 1px solid #D1D3D5;
  border-radius: 5.625rem;
  height: 3.0625rem;
  font-size: 0.9375rem;
  letter-spacing: -0.02em;
}
.p-top-navigation__schedule-link-arrow {
  fill: #E4EFFF;
  stroke: #5A6D87;
  width: 1.5rem;
  aspect-ratio: 1/1;
}
@media screen and (max-width: 1439px) {
  .p-top-navigation__schedule-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2.5rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-navigation__schedule-body {
    display: block;
  }
}
.p-top-navigation__hours {
  color: #2B4B78;
  margin-bottom: 0.8125rem;
}
@media screen and (min-width: 769px) {
  .p-top-navigation__hours {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.p-top-navigation__hours-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-navigation__hours-item:not(:last-of-type) {
    margin-bottom: 1rem;
  }
}
@media screen and (min-width: 769px) {
  .p-top-navigation__hours-item:not(:last-of-type) {
    padding-right: 1.30625rem;
    margin-right: 1.5625rem;
    border-right: 1px solid #D1D3D5;
  }
}
.p-top-navigation__hours-label {
  text-align: center;
}
.p-top-navigation__hours-icon {
  width: 1.8125rem;
  margin: auto;
  display: block;
}
.p-top-navigation__hours-period, .p-top-navigation__hours-note {
  font-size: 0.875rem;
  letter-spacing: -0.02em;
  margin-top: 0.3125rem;
}
.p-top-navigation__hours-time {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  line-height: 1;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(57, 107, 177, 0.15)));
  background: linear-gradient(transparent 60%, rgba(57, 107, 177, 0.15) 60%);
}
.p-top-navigation__hours-time-item {
  font-size: 2rem;
  letter-spacing: -0.02em;
}
.p-top-navigation__hours-time-separator {
  font-size: 1.375rem;
}
.p-top-navigation__holiday {
  color: #2B4B78;
  letter-spacing: -0.03em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}
.p-top-navigation__holiday-title {
  font-weight: 400;
  padding-right: 0.6875rem;
  margin-right: 0.75rem;
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.p-top-navigation__holiday-title::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0;
  width: 1px;
  height: 0.8125rem;
  background-color: #D1D3D5;
}
.p-top-navigation__holiday-detail {
  color: #767E88;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5em;
}
@media screen and (min-width: 1440px) {
  .p-top-navigation__holiday-detail {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.p-top-navigation__holiday-text.--note {
  font-size: 0.8125em;
}
.p-top-navigation__infomation {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .p-top-navigation__infomation {
    display: block;
  }
}
.p-top-navigation__infomation-title {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 21.4509068168%;
          flex: 0 0 21.4509068168%;
  background-color: #E21142;
  border: 2px solid #E21142;
  border-radius: 0.75rem 0 0 0.75rem;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  font-size: 1.25rem;
  font-weight: 400;
  letter-spacing: -0.03em;
}
@media screen and (min-width: 769px) {
  .p-top-navigation__infomation-title {
    border-right: none;
  }
}
@media screen and (max-width: 768px) {
  .p-top-navigation__infomation-title {
    border-radius: 0.5rem 0.5rem 0 0;
    padding: 0.5625rem 0;
    border-bottom: none;
  }
}
.p-top-navigation__infomation-list {
  border: 2px solid #E21142;
  border-radius: 0 0.75rem 0.75rem 0;
  padding: 1.5625rem 2.5rem;
  background-color: #fff;
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 768px) {
  .p-top-navigation__infomation-list {
    padding: 1.125rem 1.25rem;
    border-radius: 0 0 0.5rem 0.5rem;
  }
}
.p-top-navigation__infomation-item {
  color: #E21142;
}
.p-top-navigation__infomation-item:not(:last-of-type) {
  margin-bottom: 0.625rem;
}
.p-top-navigation__infomation-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  letter-spacing: -0.03em;
}
.p-top-navigation__infomation-date {
  font-family: "Roboto", sans-serif;
  font-size: 1.1875rem;
  font-weight: 500;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.p-top-navigation__infomation-date time {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1;
}
.p-top-navigation__infomation-item-title {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  font-weight: 400;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
}

.p-top-fec {
  position: relative;
  padding: 6.5625rem 0 8.125rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec {
    padding: 3.125rem 0 4.375rem;
  }
}
.p-top-fec::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 91.6666666667%;
  height: 53.4375rem;
  background-color: #F8F8FB;
  border-radius: 0 2.5rem 2.5rem 0;
}
@media screen and (max-width: 768px) {
  .p-top-fec::before {
    height: 25rem;
  }
}
.p-top-fec__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__top {
    margin-bottom: 1.875rem;
  }
}
.p-top-fec__heading {
  color: #2B4B78;
}
.p-top-fec__title {
  font-size: 1.25rem;
  letter-spacing: -0.02em;
  margin-bottom: 0.6875rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__title {
    font-size: 1.125rem;
  }
}
.p-top-fec__subtitle {
  font-size: 2.75rem;
  letter-spacing: -0.03em;
  font-weight: 500;
  line-height: 1.25;
}
@media screen and (max-width: 768px) {
  .p-top-fec__subtitle {
    font-size: 2.1875rem;
  }
}
.p-top-fec__control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3.6875rem;
}
@media screen and (min-width: 769px) {
  .p-top-fec__control {
    margin-right: 9.9375rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-fec__control {
    gap: 1.75rem;
    display: none;
  }
}
.p-top-fec__counter {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  color: #2B4B78;
}
.p-top-fec__arrows {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.875rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__arrows {
    gap: 0.9375rem;
  }
}
.p-top-fec__arrows-item svg {
  width: 3.9375rem;
  aspect-ratio: 1/1;
  fill: #FFFFFF;
  stroke: #2B4B78;
}
.p-top-fec__slider {
  margin-left: 5.2083333333%;
}
@media screen and (max-width: 768px) {
  .p-top-fec__slider {
    margin-left: 6%;
  }
}
.p-top-fec__block {
  border-radius: 1.25rem;
  overflow: hidden;
  width: 44rem;
  height: 50.8125rem;
  margin: 0 2rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__block {
    width: 80%;
    width: 22.5rem;
    margin: 0 0.75rem;
    height: 70vh;
  }
}
.p-top-fec__block-link {
  display: block;
  height: 100%;
}
.p-top-fec__block-inner {
  position: relative;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.25rem;
}
@media screen and (min-width: 769px) {
  .p-top-fec__block-inner {
    padding: 3.75rem;
    padding-right: 11.5rem;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.p-top-fec__block-ovarlay {
  position: absolute;
  height: 100%;
  width: 100%;
  left: 0;
  top: 0;
  background-color: rgba(67, 93, 130, 0.5);
  mix-blend-mode: multiply;
}
.p-top-fec__block-content {
  position: relative;
  z-index: 2;
  color: #fff;
  letter-spacing: -0.03em;
}
.p-top-fec__block-head {
  margin-bottom: 1rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__block-head {
    margin-bottom: 0.75rem;
  }
}
.p-top-fec__block-num {
  font-family: "Roboto", sans-serif;
  font-weight: 500;
  font-size: 1.875rem;
}
.p-top-fec__block-title {
  font-size: 2.75rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  .p-top-fec__block-title {
    font-size: 1.75rem;
    font-weight: 600;
  }
}
.p-top-fec__block-text {
  font-size: 1.25rem;
  margin-bottom: 1.875rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__block-text {
    font-size: 1.125rem;
  }
}
.p-top-fec__block-more {
  background-color: #fff;
  border-radius: 5.625rem;
  width: 13.5625rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #2B4B78;
  font-size: 1.125rem;
  height: 4.3125rem;
  gap: 0.75rem;
}
@media screen and (max-width: 768px) {
  .p-top-fec__block-more {
    width: 11.5625rem;
    height: 3.5625rem;
    font-size: 1rem;
  }
}
.p-top-fec__block-more-icon {
  fill: #2B4B78;
  stroke: #fff;
  width: 1.4375rem;
  aspect-ratio: 1/1;
}

.p-top-treatment {
  padding-bottom: 7.5rem;
  border-top: 1px solid #D1D3D5;
}
@media screen and (max-width: 768px) {
  .p-top-treatment {
    padding-bottom: 3.75rem;
  }
}
.p-top-treatment__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  border-bottom: 1px solid #D1D3D5;
  padding-top: 5rem;
  padding-bottom: 1.5rem;
  margin-bottom: 3.75rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__top {
    padding-top: 3.625rem;
    margin-bottom: 0.625rem;
  }
}
.p-top-treatment__top::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  height: 2px;
  width: 1.625rem;
  background-color: #2B4B78;
}
.p-top-treatment__title {
  color: #5A6D87;
  font-size: 1.5rem;
  letter-spacing: -0.02em;
  font-weight: 500;
}
.p-top-treatment__top-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 1.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__top-actions {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0.625rem;
    margin-bottom: 3.125rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-treatment__top-actions-item {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
  }
}
.p-top-treatment__top-actions.u-pc-hidden {
  gap: 0.625rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__top-actions.u-pc-hidden {
    margin-bottom: 4.0625rem;
  }
}
.p-top-treatment__navigation {
  display: grid;
  grid-template-columns: repeat(3, 31%);
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  row-gap: 3.75rem;
  margin-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__navigation {
    margin-bottom: 2rem;
    row-gap: 0;
    grid-template-columns: repeat(1, 100%);
  }
}
.p-top-treatment__navigation-item {
  border-bottom: 1px solid #D1D3D5;
}
.p-top-treatment__navigation-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 1.375rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__navigation-link {
    padding-block: 1.5625rem;
  }
}
.p-top-treatment__navigation-title {
  position: relative;
  font-weight: 400;
  gap: 1.25rem;
  font-size: 2.25rem;
  letter-spacing: -0.02em;
  color: #5A6D87;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__navigation-title {
    font-size: 1.75rem;
  }
}
.p-top-treatment__navigation-title::after {
  content: attr(data-eng);
  font-size: 0.8125rem;
  font-family: "Roboto", sans-serif;
  letter-spacing: 0.05em;
  color: #9F9F9F;
  display: inline-block;
  white-space: nowrap;
  text-align: left;
}
.p-top-treatment__column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6.4375rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 1.5625rem;
  }
}
.p-top-treatment__column:not(:last-of-type) {
  margin-bottom: 4.9375rem;
}
.p-top-treatment__image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 43.4375rem;
          flex: 0 0 43.4375rem;
  height: 28.9375rem;
}
.p-top-treatment__image img {
  border-radius: 1rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__image {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    height: 18rem;
  }
}
.p-top-treatment__content {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.p-top-treatment__content-title {
  margin-bottom: 1.9375rem;
}
@media screen and (max-width: 768px) {
  .p-top-treatment__content-title {
    margin-bottom: 0.625rem;
  }
}
.p-top-treatment__content-text {
  line-height: 1.875;
  margin-bottom: 1.875rem;
  color: #767E88;
}
.p-top-treatment__content-actions {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.75rem;
}
@media screen and (min-width: 769px) {
  .p-top-treatment__content-actions {
    margin-right: 6.8125rem;
  }
}
.p-top-infomations {
  margin-bottom: 9.4375rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations {
    margin-bottom: 3.625rem;
  }
}
.p-top-infomations__box {
  padding: 5.625rem 6.25rem;
  border-radius: 2.5rem;
  background-color: #F8F8FB;
}
@media screen and (min-width: 769px) {
  .p-top-infomations__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 7.4375rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-infomations__box {
    padding: 2.25rem 1.875rem;
  }
}
.p-top-infomations__news {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__news {
    margin-bottom: 2.9375rem;
  }
}
.p-top-infomations__news-title {
  margin-bottom: 1.9375rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__news-title {
    font-size: 1.625rem;
  }
}
.p-top-infomations__news-item {
  border-bottom: 1px solid #D1D3D5;
}
.p-top-infomations__news-item:first-of-type {
  border-top: 1px solid #D1D3D5;
}
.p-top-infomations__news-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.375rem 0;
  gap: 1.5rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__news-link {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    row-gap: 1.0625rem;
    -webkit-column-gap: 1rem;
       -moz-column-gap: 1rem;
            column-gap: 1rem;
  }
}
.p-top-infomations__news-date {
  font-family: "Roboto", sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
}
.p-top-infomations__news-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.9375rem;
  letter-spacing: -0.02em;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.p-top-infomations__news-tag {
  background-color: #fff;
  border: 1px solid #D1D3D5;
  border-radius: 5.625rem;
  padding: 0.5625rem 1.875rem;
  color: #767E88;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__news-tag {
    padding: 0.3125rem 1.125rem;
    font-size: 0.88rem;
  }
}
.p-top-infomations__news-item-title {
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: -0.03em;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__news-item-title {
    -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
  }
}
.p-top-infomations__news-blank {
  fill: #51555B;
  width: 0.6875rem;
  height: 0.5625rem;
  margin-left: 0.5rem;
  margin-bottom: 0.3125rem;
}
.p-top-infomations__news-detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-decoration: underline;
  margin-top: 2.875rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__news-detail {
    margin-top: 1.6875rem;
  }
}
.p-top-infomations__news-detail-inside {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.9375rem;
}
.p-top-infomations__news-detail-arw {
  fill: #2B4B78;
  stroke: #fff;
  width: 1.5625rem;
  aspect-ratio: 1/1;
}
.p-top-infomations__books {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 16.5rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__books {
    width: 100%;
  }
}
.p-top-infomations__books-title {
  margin-bottom: 1.9375rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__books-title {
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 768px) {
  .p-top-infomations__books-list {
    width: 16.8125rem;
    margin: 0 auto;
  }
}
.p-top-infomations__books-caption {
  display: block;
  text-align: center;
  text-decoration: underline;
  margin-top: 0.875rem;
  font-size: 0.875rem;
  letter-spacing: -0.03em;
}
.p-top-infomations__books-arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1.5625rem;
  height: 1.5625rem;
}
.p-top-infomations__books-arrow svg {
  width: 100%;
}
.p-top-infomations__books-arrow.--prev {
  scale: -1 1;
  left: 0;
}
.p-top-infomations__books-arrow.--next {
  right: 0;
  scale: 1 1;
}
.p-top-infomations__books-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 2.6875rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__books-control {
    margin-top: 1.9375rem;
  }
}
.p-top-infomations__books-control-in {
  position: relative;
  padding: 0 3.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-infomations__books-control-in {
    padding-inline: 2.8125rem;
  }
}
.p-top-infomations__books-control .slick-dots {
  margin-top: 0;
}

@media screen and (max-width: 768px) {
  .p-top-calusel__slide {
    height: 9.6875rem;
  }
}

.p-top-recruit {
  padding-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-recruit {
    padding-top: 3.125rem;
  }
}
.p-top-recruit__title {
  margin-bottom: 1.9375rem;
}
.p-top-recruit__list {
  display: grid;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  grid-template-columns: repeat(2, 47%);
  margin-bottom: 6.25rem;
}
@media screen and (max-width: 768px) {
  .p-top-recruit__list {
    grid-template-columns: 1fr;
    gap: 2.8125rem;
    margin-bottom: 3.125rem;
  }
}
.p-top-recruit__image {
  border-radius: 0.75rem;
  margin-bottom: 2.5625rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-top-recruit__image {
    margin-bottom: 1.25rem;
  }
}
.p-top-recruit__item-title {
  font-size: 1.5rem;
  letter-spacing: -0.02em;
  color: #5A6D87;
  font-weight: 400;
  margin-bottom: 1.1875rem;
}
@media screen and (max-width: 768px) {
  .p-top-recruit__item-title {
    margin-bottom: 0.625rem;
  }
}
.p-top-recruit__item-text {
  line-height: 1.875;
}
.p-top-recruit__btms {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 8.125rem;
  border-bottom: 1px solid #D1D3D5;
}
@media screen and (max-width: 768px) {
  .p-top-recruit__btms {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 0.625rem;
    padding-bottom: 3.75rem;
  }
}
.p-top-recruit__btms-item {
  width: 31%;
}
@media screen and (max-width: 768px) {
  .p-top-recruit__btms-item {
    width: 100%;
  }
}
.p-top-recruit__ofical {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 2.4375rem 0;
}
.p-top-recruit__ofical-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.5rem;
}
.p-top-recruit__ofical-title {
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: -0.02em;
  color: #5A6D87;
}
.p-top-recruit__ofical-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.p-top-recruit__ofical-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding: 0 1.5rem;
  border-left: 1px solid #D1D3D5;
}
@media screen and (min-width: 769px) {
  .p-top-recruit__ofical-link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
  }
}
.p-top-recruit__ofical-icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 1.5625rem;
          flex: 0 0 1.5625rem;
}
@media screen and (max-width: 768px) {
  .p-top-recruit__ofical-icon {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 0.9375rem;
            flex: 0 0 0.9375rem;
    width: 50%;
    margin: auto;
  }
}
.p-top-recruit__ofical-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.p-top-bottom {
  background-color: #F8F8FB;
  padding: 1.4375rem 0;
  border-top: 1px solid #D1D3D5;
  border-bottom: 1px solid #D1D3D5;
}
.p-top-bottom__list {
  display: grid;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-template-columns: repeat(3, 20rem);
}
@media screen and (max-width: 768px) {
  .p-top-bottom__list {
    grid-template-columns: repeat(3, 30%);
  }
}
:is(.p-top-navigation__item:first-child .p-top-navigation__link) {
  padding-left: 0;
}
:is(.p-top-navigation__item:first-child .p-top-navigation__link) .p-top-navigation__icon {
  -webkit-transform: translate(2px, 2px);
          transform: translate(2px, 2px);
}

@media screen and (max-width: 1439px) {
  :is(.p-top-navigation__item:last-child .p-top-navigation__link-body) {
    padding-right: 0;
  }
}

.slick-dots {
  margin-top: 1.875rem;
}

.p-pages-hero__content {
  min-height: 40rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 768px) {
  .p-pages-hero__content {
    min-height: 12.5rem;
  }
}
.p-pages-hero__ttl {
  color: #fff;
  font-size: 3.75rem;
  letter-spacing: -0.06em;
  font-weight: 400;
  text-shadow: 0px 0px 30px rgba(12, 26, 41, 0.85);
  text-shadow: 0px 0px 50px rgba(52, 55, 60, 0.5);
  opacity: 0;
  -webkit-transform: translateY(12px);
          transform: translateY(12px);
  -webkit-transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}
@media screen and (max-width: 768px) {
  .p-pages-hero__ttl {
    font-size: 1.875rem;
  }
}
.p-pages-hero__ttl::after {
  content: attr(data-eng);
  font-family: "Roboto", sans-serif;
  color: rgba(255, 255, 255, 0.9);
  font-size: 1.5rem;
  letter-spacing: 0.01em;
  display: block;
  margin-top: 0.1875rem;
  text-shadow: 0px 0px 30px rgba(12, 26, 41, 0.5);
  opacity: 0;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
  -webkit-transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}
@media screen and (max-width: 768px) {
  .p-pages-hero__ttl::after {
    line-height: 1;
    font-size: 1.25rem;
    -webkit-transform: translateY(4px);
            transform: translateY(4px);
  }
}
.p-pages-hero.--small {
  height: 10.3125rem;
}

.p-recurit-intro {
  padding-bottom: 5rem;
  min-width: 0;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-recurit-intro {
    padding-bottom: 3.25rem;
  }
}
.p-recurit-intro__content {
  letter-spacing: -0.03em;
  text-align: center;
  margin-bottom: 2.5rem;
}
.p-recurit-intro__label {
  text-align: center;
  margin-bottom: 1.875rem;
}
.p-recurit-intro__label-text {
  color: #fff;
  display: inline-block;
  background-color: #396BB1;
  border-radius: 5.625rem;
  font-size: 1.375rem;
  padding: 0.75rem 1.875rem;
}
@media screen and (max-width: 768px) {
  .p-recurit-intro__label-text {
    font-size: 1.25rem;
  }
}
.p-recurit-intro__title {
  font-size: 2.875rem;
  margin-bottom: 1.625rem;
}
@media screen and (max-width: 768px) {
  .p-recurit-intro__title {
    font-size: 2.125rem;
  }
}
.p-recurit-intro__text {
  font-size: 1.125rem;
  color: #767E88;
  line-height: 2.0555555556;
}
.p-recurit-intro__media {
  min-width: 0;
}
.p-access-place {
  margin-bottom: 5rem;
}
.p-access-place__map {
  border-radius: 0.625rem;
  overflow: hidden;
  aspect-ratio: 1239/605;
  margin-bottom: 1.875rem;
}
.p-access-place__map iframe {
  width: 100%;
  height: 100%;
}
.p-access-place__info {
  letter-spacing: -0.03em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.5em;
}
.p-access-place__info:not(:last-of-type) {
  margin-bottom: 0.75rem;
}
.p-access-place__info-title {
  font-weight: bold;
  font-size: 1.0625rem;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.p-access-method__item {
  letter-spacing: -0.03em;
}
.p-access-method__item:not(:first-of-type) {
  padding-top: 2.1875rem;
}
.p-access-method__item:not(:last-of-type) {
  padding-bottom: 2.1875rem;
  border-bottom: 1px solid #D1D3D5;
}
.p-access-method__item-title {
  font-weight: bold;
  font-size: 1.0625rem;
  margin-bottom: 0.5rem;
}
.p-access-method__item-text {
  line-height: 1.875;
}

.p-check-up__desc {
  padding-bottom: 1.875rem;
  margin-bottom: 1.875rem;
  line-height: 1.875;
}
.p-check-up__info {
  margin-bottom: 1.875rem;
}
.p-check-up__table {
  padding-bottom: 1.875rem;
}
@media screen and (max-width: 768px) {
  .p-check-up__table .c-table {
    width: 55rem;
  }
}
.p-check-up__contact {
  color: #2B4B78;
  padding: 1.875rem 0;
}
.p-check-up__contact-label {
  font-size: 1.0625rem;
  margin-bottom: 0.625rem;
  font-weight: bold;
}
.p-check-up__contact-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.p-check-up__contact-note {
  font-size: 1.125rem;
  font-weight: bold;
}
.p-check-up__pdf {
  border: 1px solid #D1D3D5;
  padding: 1.5rem;
  margin-top: 1.875rem;
}

.outpatient-greeting {
  padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .outpatient-greeting {
    padding-bottom: 3.75rem;
  }
}
.outpatient-greeting__lead {
  color: #2B4B78;
  font-size: 1.5rem;
  line-height: 1.8333333333;
  margin-bottom: 2.5625rem;
}
@media screen and (max-width: 768px) {
  .outpatient-greeting__lead {
    font-size: 1.25rem;
    margin-bottom: 1.875rem;
  }
}

.outpatient-consultation-times {
  padding-bottom: 5rem;
}
.outpatient-operations__ttl {
  color: #2B4B78;
  font-size: 1.25rem;
  position: relative;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__ttl {
    font-size: 1.25rem;
  }
}
.outpatient-operations__ttl.--large {
  font-size: 1.875rem;
}
.outpatient-operations__ttl.--large::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  height: 2px;
  width: 3.375rem;
  background-color: currentColor;
}
.outpatient-operations__block {
  border-top: 1px solid #D1D3D5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__block {
    display: block;
  }
}
.outpatient-operations__block-title {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 18%;
          flex: 0 0 18%;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__block-title {
    padding-bottom: 0;
  }
}
.outpatient-operations__ttl, .outpatient-operations__list {
  padding-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__ttl, .outpatient-operations__list {
    padding-top: 1.75rem;
  }
}
.outpatient-operations__list {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__list {
    padding-top: 0;
  }
}
.outpatient-operations__item {
  padding: 2.3125rem 0;
}
.outpatient-operations__item:first-of-type {
  padding-top: 0;
}
.outpatient-operations__item:not(:last-of-type) {
  border-bottom: 1px solid #D1D3D5;
}
.outpatient-operations__item-term {
  margin-bottom: 1rem;
}
.outpatient-operations__item-desc {
  color: #767E88;
}
.outpatient-operations__intro {
  padding-bottom: 2.5rem;
  margin-bottom: 2.5rem;
  border-bottom: 1px solid #D1D3D5;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__intro {
    margin-top: 2.5rem;
  }
}
.outpatient-operations__catch {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.outpatient-operations__catch-in {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
  color: #2B4B78;
  background-color: #F5F9FE;
  border-radius: 0.25rem;
  padding: 0.875rem 1.25rem;
}
.outpatient-operations__catch-icon {
  width: 1.1875rem;
}
.outpatient-operations__lead {
  font-size: 1.125rem;
  line-height: 1.9444444444;
  margin-top: 1.5rem;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__lead {
    font-size: 1rem;
  }
}
.outpatient-operations__sub-ttl {
  color: #2B4B78;
  font-size: 1.125rem;
  margin-bottom: 1.25rem;
}
.outpatient-operations__guide {
  color: #8A8C8E;
  margin-top: 1.5625rem;
  line-height: 1.875;
}
.outpatient-operations__quit {
  border: 1px solid #D1D3D5;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__quit {
    margin-top: 2.5rem;
  }
}
.outpatient-operations__quit-title {
  text-align: center;
  color: #fff;
  background-color: #E21142;
  font-size: 1.3125rem;
  padding: 1.575rem 0;
}
.outpatient-operations__quit-body {
  padding: 1.875rem 1.5625rem;
}
.outpatient-operations__quit-link {
  width: 31.1875rem;
  max-width: 100%;
  margin: 0 auto 2.25rem;
  color: #E21142;
  display: block;
  background-color: #FFF3F6;
  border-radius: 5.625rem;
  padding: 1.625rem 0;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .outpatient-operations__quit-link {
    pointer-events: none;
  }
}
@media screen and (max-width: 768px) {
  .outpatient-operations__quit-link {
    margin-bottom: 1.25rem;
  }
}
.outpatient-operations__quit-tel {
  color: #E21142;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.outpatient-operations__quit-note {
  font-weight: bold;
  font-size: 1.125rem;
}
@media screen and (max-width: 768px) {
  .outpatient-operations__quit-note {
    margin-top: 0.5rem;
  }
}
.outpatient-operations__quit-text {
  line-height: 1.875;
}
.outpatient-operations__quit-text-main {
  text-decoration: underline;
  font-weight: 500;
  color: #525963;
}
.outpatient-operations__quit-text-sub {
  color: #8A8C8E;
}

.p-kaigoiryouin-sec {
  padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .p-kaigoiryouin-sec {
    padding-bottom: 3.4375rem;
  }
  .p-kaigoiryouin-sec:last-of-type {
    padding-bottom: 0;
  }
}
.p-kaigoiryouin-sec__top-heading {
  margin-bottom: 1.25rem;
}
.p-kaigoiryouin-sec .c-cricle-list {
  font-size: 1.125rem;
}
.p-kaigoiryouin-sec__boxes .c-define-box {
  padding-block: 1.9375rem;
  border-top: 1px solid #D1D3D5;
}
.p-kaigoiryouin-sec__boxes .c-define-box.--border-top-none {
  border-top: none;
  padding-top: 0;
}
.p-kaigoiryouin-sec__boxes .c-define-box:first-of-type {
  margin-top: 1.9375rem;
}
.p-kaigoiryouin-sec__boxes .c-define-box:last-of-type {
  padding-bottom: 0;
}

.p-nurese-sec:not(:last-of-type) {
  padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .p-nurese-sec:not(:last-of-type) {
    padding-bottom: 2.9375rem;
  }
}
.p-nurese-sec__col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5rem;
  padding-top: 2.5rem;
  border-top: 1px solid #D1D3D5;
}
@media screen and (max-width: 768px) {
  .p-nurese-sec__col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 1.875rem;
  }
}
.p-nurese-sec__col-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 19.375rem;
          flex: 0 0 19.375rem;
  aspect-ratio: 310/357;
  border-radius: 0.5rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-nurese-sec__col-photo {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: 18rem;
  }
}
.p-nurese-sec__col-info {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.p-nurese-sec__col-catch.c-section-catch {
  margin-bottom: 0.9375rem;
}
.p-nurese-sec__col-name {
  font-size: 0.9375em;
}
.p-nurese-sec .c-define-box {
  padding-top: 2.5rem;
}
.p-nurese-sec .c-define-box:first-of-type {
  border-top: 1px solid #D1D3D5;
}
.p-nurese-sec__list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-block: 2.125rem;
}
@media screen and (max-width: 768px) {
  .p-nurese-sec__list-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 1.0625rem;
    padding-block: 1.375rem;
  }
}
.p-nurese-sec__list-item:first-of-type {
  border-top: 1px solid #D1D3D5;
}
.p-nurese-sec__list-item:not(:last-of-type) {
  border-bottom: 1px solid #D1D3D5;
}
.p-nurese-sec__list-head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.0625rem;
}
@media screen and (min-width: 769px) {
  .p-nurese-sec__list-head {
    -webkit-box-flex: 0;
        -ms-flex: 0 0 28%;
            flex: 0 0 28%;
  }
}
@media screen and (max-width: 768px) {
  .p-nurese-sec__list-head {
    gap: 0.6875rem;
  }
}
.p-nurese-sec__list-num {
  width: 2.1875rem;
  height: 2.1875rem;
  aspect-ratio: 1/1;
}
.p-nurese-sec__list-num::after {
  font-size: 1rem;
}
.p-nurese-sec__list-catch {
  font-size: 1.25rem;
  color: #5A6D87;
  line-height: 1.5;
  margin-top: 0.1875rem;
}
.p-nurese-sec__list-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.p-coming {
  padding: 5rem 0;
}
.p-coming__ttl {
  text-align: center;
  color: #2B4B78;
  font-size: 1.875rem;
}

.p-recurit-requirements__table {
  border-collapse: collapse;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .p-recurit-requirements__table {
    display: block;
  }
  .p-recurit-requirements__table tbody {
    display: contents;
  }
  .p-recurit-requirements__table tbody tr:first-of-type th {
    border-top-width: 2px;
  }
  .p-recurit-requirements__table tbody tr:last-of-type td {
    border-bottom-width: 2px;
  }
}
.p-recurit-requirements__table.--last-border-none tr:last-of-type th,
.p-recurit-requirements__table.--last-border-none tr:last-of-type td {
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  .p-recurit-requirements__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
  }
}
.p-recurit-requirements__th, .p-recurit-requirements__td {
  color: #767E88;
  padding: 1.25rem 0.625rem;
  border-top: 1px solid #D1D3D5;
  border-bottom: 1px solid #D1D3D5;
}
.p-recurit-requirements__th {
  font-weight: 400;
  font-size: 1.5rem;
  vertical-align: top;
  text-align: left;
}
.p-recurit-requirements__th-sub {
  font-size: 1rem;
  font-weight: 400;
  color: #767E88;
  margin-top: 1em;
  line-height: 1.8;
}
.p-recurit-requirements__td-sub {
  font-size: 0.875em;
  margin-top: 0.5em;
}
.p-recurit-requirements__sub {
  font-size: 0.875em;
}
.p-recurit-requirements__cell {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5em;
}
.p-recurit-requirements__cell-note {
  font-size: 0.875em;
}
.p-recurit-requirements__col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (max-width: 768px) {
  .p-recurit-requirements__col {
    font-size: 0.9rem;
  }
}
.p-recurit-requirements__col-title {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.p-recurit-requirements__col-text {
  font-size: 0.875em;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  color: rgba(138, 140, 142, 0.6);
}
.p-recurit-requirements__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
.p-recurit-requirements__link-text {
  text-decoration: underline;
  color: rgba(0, 150, 167, 0.6);
  font-weight: 500;
}
.p-recurit-requirements__link-icon {
  fill: rgba(0, 150, 167, 0.6);
}
.p-recurit-requirements__link-icon.--blank {
  width: 0.8125rem;
  height: 0.75rem;
}
.p-recurit-requirements__link-icon.--cricle {
  fill: #DAF5F8;
  stroke: #0096A7;
}
@media screen and (max-width: 768px) {
  .p-recurit-requirements__link-icon.--cricle {
    width: 1.5625rem;
    height: 1.5625rem;
  }
}

.p-recurit-detail__head {
  margin-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .p-recurit-detail__head {
    margin-bottom: 3.4375rem;
  }
}
.p-recurit-detail__head-catch {
  margin-bottom: 1.3125rem;
}
.p-recurit-detail__head-tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
.p-recurit-detail__head-tag-item {
  border: 1px solid #E21142;
  color: #E21142;
  background-color: #FFF1F4;
  border-radius: 0.25rem;
  padding: 0.3125rem 0.625rem;
}
.p-recurit-detail__table th,
.p-recurit-detail__table td {
  color: #525963;
}
.p-recurit-detail__table .p-recurit-requirements__th {
  text-align: left;
  font-size: 1.0625rem;
  font-weight: bold;
}
@media screen and (min-width: 769px) {
  .p-recurit-detail__table .p-recurit-requirements__th {
    width: 29%;
  }
}
.p-recurit-detail__table .c-cricle-num-list {
  margin-top: 0.5em;
}
.p-recurit-detail__table-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  padding: 1.25rem 0;
}
.p-recurit-detail__table-col:first-of-type {
  padding-top: 0;
}
.p-recurit-detail__table-col:last-of-type {
  padding-bottom: 0;
}
.p-recurit-detail__table-col:not(:last-of-type) {
  border-bottom: 1px solid #D1D3D5;
}
.p-recurit-detail__table-col_ttl {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
          flex: 0 0 25%;
  border-right: 1px solid #D1D3D5;
}
.p-recurit-detail__table-col_data {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding-inline: 1.375rem;
}
@media screen and (max-width: 768px) {
  .p-recurit-detail__table-col_data {
    padding-right: 0.625rem;
  }
}

.p-recruit-download {
  padding-top: 4.1875rem;
}
.p-recruit-download__heading {
  font-size: 1.875rem;
  letter-spacing: -0.02em;
  color: #5A6D87;
  line-height: 2.0666666667;
  padding-bottom: 2.0625rem;
  border-bottom: 1px solid #D1D3D5;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-recruit-download__heading {
    font-size: 1.5625rem;
    padding-bottom: 0.9375rem;
    margin-bottom: 1.4375rem;
  }
}
.p-recruit-download__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.9375rem;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .p-recruit-download__list {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0.9375rem;
    -webkit-column-gap: 1.25rem;
       -moz-column-gap: 1.25rem;
            column-gap: 1.25rem;
  }
}
.p-recruit-download__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.625rem;
}
.p-recruit-download__icon {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 1.25rem;
          flex: 0 0 1.25rem;
}
.p-recruit-download__text {
  text-decoration: underline;
}

.p-recruit-actions {
  padding: 5.3125rem 0 2.8125rem;
}
.p-recruit-actions__info {
  text-align: center;
  margin-bottom: 2.53125rem;
}
.p-recruit-actions__lead {
  font-size: 1.3125rem;
  color: #0096A7;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 768px) {
  .p-recruit-actions__lead {
    font-size: 1.0625rem;
  }
}
.p-recruit-actions__name {
  font-size: 2.25rem;
  margin-bottom: 0.5rem;
}
@media screen and (max-width: 768px) {
  .p-recruit-actions__name {
    font-size: 1.5625rem;
  }
}
.p-recruit-actions__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .p-recruit-actions__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 1.25rem;
  }
}
.p-recruit-actions__item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 32.5%;
          flex: 0 0 32.5%;
}
@media screen and (max-width: 768px) {
  .p-recruit-actions__item {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
  }
}
.p-recruit-actions__link {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #F2F8FF;
  border-radius: 5.625rem;
  height: 6.5625rem;
  color: #2B4B78;
  gap: 0.28125rem;
}
.p-recruit-actions__link.--nolink {
  background-color: #FBFBFB;
  pointer-events: none;
}
.p-recruit-actions__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.4375rem;
  font-size: 1.0625rem;
}
.p-recruit-actions__icon {
  width: 1.0625rem;
}
.p-recruit-actions__num {
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  font-size: 1.875rem;
  line-height: 1.1;
}
.p-recruit-actions__email {
  font-family: "Roboto", sans-serif;
  font-size: 1.25rem;
  line-height: 1.15;
}

.p-about-greeting__profile {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  gap: 5rem;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-about-greeting__profile {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 1.375rem;
  }
}
.p-about-greeting__profile-media {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 19.375rem;
          flex: 0 0 19.375rem;
  aspect-ratio: 310/357;
  border-radius: 0.5rem;
}
.p-about-greeting__profile-media img {
  margin-top: 0.5lh;
  margin-bottom: 0.6em;
}
@media screen and (max-width: 768px) {
  .p-about-greeting__profile-media {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: 15.625rem;
    margin-inline: auto;
  }
}
.p-about-greeting__profile-body {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.p-about-greeting__profile-lead {
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  .p-about-greeting__profile-lead {
    font-size: 1.25rem;
    text-align: center;
  }
}
.p-about-greeting__profile-text {
  font-size: 1rem;
  margin: 1.25rem 0 1.3125rem;
  color: #767E88;
  line-height: 1.875;
}
@media screen and (max-width: 768px) {
  .p-about-greeting__profile-text {
    line-height: 1.65;
    margin-block: 0.875rem;
  }
}
.p-about-greeting__profile-name {
  color: #8A8C8E;
}
@media screen and (max-width: 768px) {
  .p-about-greeting__profile-name {
    text-align: center;
  }
}
.p-about-greeting__message {
  border-top: 1px solid #D1D3D5;
  padding-block: 2.5rem;
}
.p-about-greeting__message-item:not(:last-of-type) {
  margin-bottom: 2.8125rem;
}
.p-about-greeting__message-title {
  font-weight: bold;
  margin-bottom: 0.5rem;
}
.p-about-policy {
  padding-bottom: 5rem;
}
.p-about-policy__head {
  color: #fff;
  text-align: center;
  border-radius: 0.75rem;
  overflow: hidden;
  margin-bottom: 3.0625rem;
}
.p-about-policy__head-inner {
  padding-block: 5rem;
}
@media screen and (max-width: 768px) {
  .p-about-policy__head-inner {
    padding-block: 2.5rem;
  }
}
.p-about-policy__head-label {
  font-size: 1.0625rem;
  font-weight: bold;
  margin-bottom: 1.5625rem;
}
@media screen and (max-width: 768px) {
  .p-about-policy__head-label {
    margin-bottom: 0.6875rem;
  }
}
.p-about-policy__head-title {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", serif;
  font-size: 1.875rem;
  line-height: 2.02;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .p-about-policy__head-title {
    font-size: 1.5rem;
  }
}
.p-about-policy__policy {
  font-weight: bold;
  font-size: 1.0625rem;
}
.p-about-policy__policy-title {
  font-weight: bold;
  color: #2B4B78;
  margin-bottom: 0.9rem;
}
.p-about-policy__policy-text {
  line-height: 1.8823529412;
}

.p-about-factry__heading {
  padding-bottom: 0;
}
.p-about-factry__block {
  padding-block: 2.1875rem;
}
.p-about-factry__block:not(:last-of-type) {
  border-bottom: 1px solid #D1D3D5;
}
.p-about-factry__block-title {
  font-weight: bold;
  margin-bottom: 0.5rem;
}
.p-about-factry__list.c-cricle-list {
  -webkit-column-gap: 0.6em;
     -moz-column-gap: 0.6em;
          column-gap: 0.6em;
  row-gap: 0.95em;
}
@media screen and (max-width: 768px) {
  .p-about-factry__list.c-cricle-list {
    display: contents;
  }
}
.p-about-factry__list.c-cricle-list:not(:last-of-type) {
  margin-bottom: 0.4em;
}
@media screen and (max-width: 768px) {
  .p-about-factry__list.c-cricle-list .c-cricle-list__item:not(:last-of-type) {
    margin-bottom: 0.35em;
  }
}

.p-about-action {
  padding-bottom: 3.625rem;
}
.p-about-action__list {
  display: grid;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  grid-template-columns: repeat(3, 32%);
  row-gap: 2.5625rem;
}
@media screen and (max-width: 768px) {
  .p-about-action__list {
    grid-template-columns: 1fr;
  }
}
.p-about-action__item-media {
  aspect-ratio: 380/247;
  border-radius: 0.5rem;
  overflow: hidden;
  margin-bottom: 1rem;
}
.p-about-action__item-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.625rem;
  margin-bottom: 0.625rem;
  font-size: 1.25rem;
  color: #5A6D87;
  line-height: 1.5;
}
.p-about-action__item-num {
  width: 2.1875rem;
  aspect-ratio: 1/1;
  background-color: #5A6D87;
  font-family: "Roboto", sans-serif;
  color: #fff;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  border-radius: 50%;
  font-size: 1rem;
}
.p-about-action__item-text {
  margin-top: 0.1875rem;
}
.p-about-action__item-desc {
  color: #767E88;
  line-height: 1.875;
}

.p-about-plan__lead {
  margin-bottom: 2.5rem;
}

.p-hospitalization-prepared {
  padding-bottom: 5rem;
}
.p-hospitalization-prepared__list-wrap {
  padding-bottom: 1.875rem;
  border-bottom: 1px solid #D1D3D5;
  margin-bottom: 1.875rem;
}
.p-hospitalization-prepared__define {
  margin-bottom: 1.875rem;
}
.p-hospitalization-prepared__box {
  background-color: #F8F8FB;
  padding: 1.75rem 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-hospitalization-prepared__box {
    padding: 1.75rem 1.375rem;
  }
}
.p-hospitalization-prepared__box-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
}
@media screen and (max-width: 768px) {
  .p-hospitalization-prepared__box-item {
    gap: 0.5em;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.p-hospitalization-prepared__box-item:not(:last-of-type) {
  margin-bottom: 0.62em;
}
.p-hospitalization-prepared__box-num {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media screen and (max-width: 768px) {
  .p-hospitalization-prepared__box-num {
    margin-top: 0.1875rem;
  }
}
.p-hospitalization-prepared__box-text {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}

.p-hospitalization-grid {
  display: grid;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  grid-template-columns: repeat(2, 48.5%);
  row-gap: 2.53125rem;
}
@media screen and (max-width: 768px) {
  .p-hospitalization-grid {
    row-gap: 0.875rem;
  }
}
.p-hospitalization-grid__item {
  border-radius: 0.5rem;
  overflow: hidden;
  aspect-ratio: 590/364;
}

.p-hospitalization-sec {
  padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .p-hospitalization-sec {
    padding-bottom: 3.125rem;
  }
}
.p-hospitalization-sec__lead {
  margin-bottom: 2.5rem;
  color: #767E88;
  line-height: 1.875;
}

:where(body.staff .p-hospitalization-grid) {
  margin-bottom: 3em;
}

.p-staff-sec {
  padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  .p-staff-sec {
    padding-bottom: 3.4375rem;
  }
  .p-staff-sec:last-of-type {
    padding-bottom: 0;
  }
}
.p-staff-sec__heading {
  padding-bottom: 0;
}
.p-staff-sec__heading.--pb40 {
  padding-bottom: 2.5rem;
}
.p-staff-sec__departments-box {
  padding: 3.75rem 0;
}
@media screen and (max-width: 768px) {
  .p-staff-sec__departments-box {
    padding-block: 2.8125rem;
  }
}
.p-staff-sec__departments-box.--pt0 {
  padding-top: 0;
}
.p-staff-sec__departments-box.--top-border:first-of-type {
  border-top: 1px solid #D1D3D5;
}
.p-staff-sec__departments-box:not(:last-of-type) {
  border-bottom: 1px solid #D1D3D5;
}
.p-staff-sec__departments-ttl {
  margin-bottom: 0.9375rem;
}
@media screen and (min-width: 769px) {
  .p-staff-sec__departments-data {
    padding-right: 10.5625rem;
  }
}
.p-staff-sec__departments-col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3.75rem;
}
@media screen and (max-width: 768px) {
  .p-staff-sec__departments-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-flow: column-reverse;
            flex-flow: column-reverse;
    gap: 1.25rem;
  }
}
.p-staff-sec__departments-info {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
}
.p-staff-sec__departments-catch {
  margin-bottom: 0.9375rem;
  color: #525963;
}
.p-staff-sec__departments-text {
  line-height: 1.875;
  color: #767E88;
}
.p-staff-sec__departments-image {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 19.375rem;
          flex: 0 0 19.375rem;
  aspect-ratio: 310/192;
  border-radius: 0.5rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .p-staff-sec__departments-image {
    -ms-flex-preferred-size: auto;
        flex-basis: auto;
    width: 13.75rem;
    margin-inline: auto;
  }
}
.p-staff-sec__md {
  font-size: 1.125rem;
  line-height: 1.9444444444;
  color: #767E88;
}
.p-staff-sec__blocks {
  margin-top: 2.8125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 2.5rem;
}

.p-news__pagenation {
  margin-top: 4.9375rem;
}
@media screen and (max-width: 768px) {
  .p-news__pagenation {
    margin-top: 3.125rem;
  }
}

.p-news-detail {
  border-top: 1px solid #D1D3D5;
  border-bottom: 1px solid #D1D3D5;
  position: relative;
  padding-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  .p-news-detail {
    padding-bottom: 3.75rem;
  }
}
.p-news-detail::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;
  height: 2px;
  background-color: #2B4B78;
  width: 3.4375rem;
}
.p-news-detail__content {
  padding: 4.1875rem 3.75rem 0;
}
@media screen and (max-width: 768px) {
  .p-news-detail__content {
    padding: 2.5rem 1.5625rem 0;
  }
}
.p-news-detail__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.875rem;
  margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  .p-news-detail__meta {
    margin-bottom: 1.25rem;
  }
}
.p-news-detail__date {
  font-family: "Roboto", sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
}
.p-news-detail__title {
  color: #525963;
  font-size: 1.875rem;
  line-height: 1.7333333333;
  padding-bottom: 3.375rem;
  border-bottom: 1px solid #D1D3D5;
  margin-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {
  .p-news-detail__title {
    padding-bottom: 1.875rem;
  }
}

/* Utility */
.u-sr-only {
  border: 0;
  clip: rect(0 0 0 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.u-object-fit {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.u-bold {
  font-weight: bold;
}

.u-pc-hidden {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-pc-hidden {
    display: block;
  }
}

@media screen and (max-width: 768px) {
  .u-sp-hidden {
    display: none;
  }
}

.u-sp-flex {
  display: none;
}
@media screen and (max-width: 768px) {
  .u-sp-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.u-v-hidden-i {
  visibility: hidden !important;
}

.u-all-hidden {
  display: none !important;
}

@media screen and (min-width: 769px) {
  .u-sp-link {
    pointer-events: none;
  }
}
@media screen and (max-width: 768px) {
  .u-sp-link {
    border-bottom: 1px solid #51555B;
    padding-bottom: 0.0625rem;
  }
}

.u-bg-cover {
  position: relative;
  overflow: hidden;
  background-color: #f8f8fb;
}
.u-bg-cover__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%) scale(1.06);
          transform: translate(-50%, -50%) scale(1.06);
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0;
  mix-blend-mode: multiply;
  -webkit-transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1.2s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1.2s cubic-bezier(0.33, 1, 0.68, 1);
  transition: transform 1.2s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: transform 1.2s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1.2s cubic-bezier(0.33, 1, 0.68, 1);
}
.u-bg-cover__bg.--pos-top {
  -o-object-position: 50% 0;
     object-position: 50% 0;
}
.u-bg-cover__bg.--pos-bottom {
  -o-object-position: 50% 100%;
     object-position: 50% 100%;
}
.u-bg-cover__inner {
  position: relative;
}

.u-flex-sb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.u-flex-sb.--wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .u-flex-sb.--spRow {
    display: block;
  }
}

.u-mt0-i {
  margin-top: 0 !important;
}

.u-mb0-i {
  margin-bottom: 0 !important;
}

@media screen and (max-width: 768px) {
  .u-sp-mb0 {
    margin-bottom: 0 !important;
  }
}

.u-mb-1rem {
  margin-bottom: 1rem;
}

.u-mb-2rem {
  margin-bottom: 2rem;
}

.u-mb-28 {
  margin-bottom: 1.75rem;
}

.u-text-center {
  text-align: center;
}

.u-text-right {
  text-align: right;
}

.u-text-left {
  text-align: left;
}

.u-marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(72%, transparent), color-stop(0%, rgba(57, 107, 177, 0.15)));
  background: linear-gradient(transparent 72%, rgba(57, 107, 177, 0.15) 0%);
}

.u-text-center {
  text-align: center;
}

.u-text-underline {
  text-decoration: underline;
}

.u-text-sm {
  font-size: 0.875em;
}

.u-mb0-i {
  margin-bottom: 0 !important;
}

.u-text-over-cricle {
  position: relative;
}
.u-text-over-cricle::after {
  content: "";
  width: 0.6875rem;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-color: #F797C1;
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: -0.8125rem;
}
@media screen and (max-width: 768px) {
  .u-text-over-cricle::after {
    width: 0.4375rem;
    top: -0.5rem;
  }
}

.u-no-link {
  pointer-events: none;
}

.u-c-red {
  color: #E21142;
}

.u-c-text-gray {
  color: #767E88;
}

.u-border-bottom {
  border-bottom: 1px solid #D1D3D5;
}

.l-layout-col02__main {
  -webkit-transform: translateY(12px);
          transform: translateY(12px);
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}

.l-layout-col02__main > * {
  opacity: 0;
  -webkit-transform: translateY(8px);
          transform: translateY(8px);
  -webkit-transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.5s cubic-bezier(0.33, 1, 0.68, 1), transform 0.5s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.5s cubic-bezier(0.33, 1, 0.68, 1);
}

body.is-loaded .p-pages-hero__ttl,
body.is-loaded .l-layout-col02__main > * {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
body.is-loaded .p-pages-hero__ttl::after,
body.is-loaded .l-layout-col02__main > *::after {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.08s;
          transition-delay: 0.08s;
  opacity: 1;
}

body.is-loaded .l-layout-col02__main {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

body.is-loaded .l-layout-col02__main > * {
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
}

body.is-loaded .l-layout-col02__side {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
  -webkit-transition-delay: 0.12s;
          transition-delay: 0.12s;
}

body.is-loaded .u-bg-cover__bg {
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) scale(1.01);
          transform: translate(-50%, -50%) scale(1.01);
}

body.news-detail .l-layout-col02__main,
body.news-detail .l-layout-col02__main > *,
body.news-detail .l-layout-col02__side,
body.news-detail .u-bg-cover__bg {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}
body.news-detail .u-bg-cover__bg {
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
}

@media screen and (min-width: 769px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}
.burger {
  display: none;
}/*# sourceMappingURL=style.css.map */