@charset "UTF-8";
/* aタグ設定
------------------------------------- */
a, button {
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: 0.3s;
          transition-duration: 0.3s;
  -webkit-transition-timing-function: ease;
          transition-timing-function: ease;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
  text-decoration: none;
  color: inherit;
}

button:focus-visible {
  outline: 2px solid -webkit-focus-ring-color;
  outline-offset: 2px;
}

/* 基本設定
------------------------------------- */
html {
  font-size: 62.5%;
  scroll-behavior: smooth;
  scroll-padding-top: 134px;
}
@media screen and (min-width: 768px) {
  html {
    scroll-padding-top: 170px;
  }
}

body {
  -webkit-text-size-adjust: 100%;
  font-size: 1.6rem; /* =16px */
  font-family: "Noto sans JP", sans-serif;
  font-weight: 400;
  line-height: 1.5;
  color: #222;
  margin-top: 134px;
}
@media screen and (min-width: 768px) {
  body {
    margin-top: 170px;
  }
}

ul {
  list-style: none;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

/* デフォルトの三角形アイコンを非表示にする */
summary {
  display: block;
  list-style: none;
}

summary::-webkit-details-marker,
summary::marker {
  display: none;
}

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

/* aタグ設定 */
@media (any-hover: hover) {
  a:hover,
  button:hover {
    opacity: 0.65;
  }
}

a,
button {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  text-decoration: none;
  color: inherit;
}

.footer {
  background: #0B2760;
  color: #fff;
  padding: 30px 0;
}
@media screen and (min-width: 768px) {
  .footer {
    padding: 40px 0px;
  }
}
.footer__inner {
  padding-inline: 12px;
}
@media screen and (min-width: 768px) {
  .footer__inner {
    padding-inline: 80px;
    max-width: 1360px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .footer__top-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: min(30px, 2.0833333333vw);
  }
}
@media screen and (min-width: 768px) {
  .footer__contents-top {
    width: min(300px, 25vw);
  }
}
.footer__logo {
  width: 270px;
}
@media screen and (min-width: 768px) {
  .footer__logo {
    width: 100%;
  }
}
.footer__info {
  margin-top: 12px;
}
@media screen and (min-width: 768px) {
  .footer__info {
    margin-top: 30px;
  }
}
.footer__tel {
  font-size: 2rem;
  font-family: "Lato", sans-serif;
  letter-spacing: 0.03em;
  font-weight: 600;
  pointer-events: auto;
}
@media screen and (min-width: 768px) {
  .footer__tel {
    pointer-events: none;
    color: inherit;
  }
}
.footer__text {
  margin-top: 5px;
  font-size: 1.2rem;
  letter-spacing: 0.01em;
}
.footer__notice {
  margin-top: 7px;
  font-size: 1.2rem;
  letter-spacing: 0.01em;
  line-height: 1.5833333333;
}
@media screen and (min-width: 768px) {
  .footer__notice {
    margin-top: 10px;
  }
}
.footer__contents-middle {
  margin-top: 35px;
}
@media screen and (min-width: 768px) {
  .footer__contents-middle {
    margin-top: 30px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.footer__btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  max-width: 400px;
}
@media screen and (min-width: 768px) {
  .footer__btn-wrap {
    gap: 20px;
    max-width: none;
  }
}
.footer__btn-wrap a {
  display: block;
  text-align: center;
  padding: 11px 16px;
  font-size: 1.3rem;
  font-weight: 700;
  line-height: 1.3;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid #fff;
  cursor: pointer;
}
@media screen and (min-width: 900px) {
  .footer__btn-wrap a {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
    padding: 13px 20px;
    font-size: 1.6rem;
  }
}
.footer__btn-wrap a:hover {
  color: #0B2760;
  background: #fff;
  opacity: 1;
}
.footer__nav {
  margin-top: 29px;
}
.footer .footer-nav__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .footer .footer-nav__items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.footer .footer-nav__group > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.footer .footer-nav__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.footer .footer-nav__link {
  font-weight: 700;
  padding-left: 16px;
  position: relative;
  line-height: 1.1875;
}
@media screen and (min-width: 768px) {
  .footer .footer-nav__link {
    line-height: 1.3;
  }
}
.footer .footer-nav__link::before {
  position: absolute;
  content: "";
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  width: 6px;
  height: 11px;
  background: url(/assets/images/common/icon-white.svg) no-repeat center/contain;
}
.footer .footer-nav__submenu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 18px;
}
.footer .footer-nav__submenu li a {
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.footer .footer-nav__submenu li a.external::after {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: currentColor;
  mask: url(/assets/images/common/icon-external-c.svg) no-repeat center/contain;
  -webkit-mask: url(/assets/images/common/icon-external-c.svg) no-repeat center/contain;
  pointer-events: none;
}
.footer__contents-bottom {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  padding-inline: 10px;
}
@media screen and (min-width: 768px) {
  .footer__contents-bottom {
    margin: 37px auto 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 1200px;
  }
}
.footer__bottom-links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
}
.footer__bottom-links a {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.2142857143;
}
.footer__copyright {
  font-family: "Lato", sans-serif;
  font-size: 1.2rem;
  letter-spacing: -0.01em;
  line-height: 1.1666666667;
  text-align: center;
}

.header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 20;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .header {
    height: auto;
  }
}
.header__inner {
  height: inherit;
}
@media screen and (min-width: 768px) {
  .header__inner {
    padding-inline: 0px;
    position: relative;
  }
}
.header__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;
  height: 100%;
  max-width: 1224px;
  margin: 0 auto;
  padding: 0 12px;
  height: 75px;
}
@media screen and (min-width: 768px) {
  .header__top {
    height: 110px;
    width: 85vw;
    max-width: none;
  }
}
.header__logo {
  width: 270px;
}
@media screen and (min-width: 768px) {
  .header__logo {
    width: 37.5vw;
    max-width: 450px;
  }
}
.header__logo a {
  display: block;
}
.header__logo a:hover img {
  opacity: 1;
}
.header__logo a:hover {
  opacity: 1;
}
.header__search--pc {
  display: none;
}
@media screen and (min-width: 768px) {
  .header__search--pc {
    display: block;
  }
}
.header__nav {
  width: 100%;
  height: calc(100vh - 75px);
  position: fixed;
  right: 0;
  top: 75px;
  padding: 30px 12px;
  -webkit-transform: translateX(100%);
          transform: translateX(100%);
  -webkit-transition: -webkit-transform 0.4s;
  transition: -webkit-transform 0.4s;
  transition: transform 0.4s;
  transition: transform 0.4s, -webkit-transform 0.4s;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
  background: #fff;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
.header__nav.is-open {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .header__nav {
    display: block;
    background: rgba(43, 82, 162, 0.8);
    height: 60px;
    position: static;
    height: auto;
    top: auto;
    right: auto;
    padding: 0;
    overflow: visible;
    -webkit-transform: none;
            transform: none;
    opacity: 1;
    -webkit-transition: none;
    transition: none;
  }
}
.header__nav-inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .header__nav-inner {
    width: 83.3333333333vw;
    min-width: 700px;
  }
}
.header .drawer-icon {
  width: 50px;
  height: 55px;
  background: #2B52A2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 4px;
}
@media screen and (min-width: 768px) {
  .header .drawer-icon {
    display: none;
  }
}
.header .drawer-icon.is-open {
  background: transparent;
}
.header .drawer-icon.is-open .drawer-icon__bar {
  background-color: #2B52A2;
}
.header .drawer-icon.is-open .drawer-icon__bar:nth-child(1) {
  top: 11px;
  -webkit-transform: translateX(-50%) rotate(45deg);
          transform: translateX(-50%) rotate(45deg);
}
.header .drawer-icon.is-open .drawer-icon__bar:nth-child(2) {
  opacity: 0;
}
.header .drawer-icon.is-open .drawer-icon__bar:nth-child(3) {
  top: 11px;
  -webkit-transform: translateX(-50%) rotate(-45deg);
          transform: translateX(-50%) rotate(-45deg);
}
.header .drawer-icon.is-open .drawer-icon__text {
  display: none;
}
.header .drawer-icon__bar-wrap {
  width: 40px;
  height: 25px;
  position: relative;
}
.header .drawer-icon__bar {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 40px;
  height: 3px;
  background: #fff;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s;
  transition: transform 0.3s, opacity 0.3s, -webkit-transform 0.3s;
}
.header .drawer-icon__bar:nth-child(1) {
  top: 0px;
}
.header .drawer-icon__bar:nth-child(2) {
  top: 11px;
}
.header .drawer-icon__bar:nth-child(3) {
  top: 22px;
}
.header .drawer-icon__text {
  color: #B5D3FF;
  font-size: 1.4rem;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .header .drawer__only {
    display: none;
  }
}
.header .drawer.is-open {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
}
.header .drawer__tel {
  margin: 30px auto 0;
  width: 316px;
}
.header .drawer__tel a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2px;
}
.header .drawer__tel a p {
  font-family: "Lato", sans-serif;
  font-weight: 700;
  font-size: 3.1rem;
  letter-spacing: 0.03em;
  line-height: 1;
}
.header .drawer__tel a img {
  width: 26px;
  height: 26px;
}
.header .drawer__tel p {
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  margin-top: 5px;
}
.header .drawer__search {
  margin-top: 30px;
}
.header .drawer__link-box {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
}
.header .drawer__link-box a {
  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;
  font-weight: 700;
  line-height: 1;
  gap: 8px;
  padding: 16px;
  border-radius: 20px;
  position: relative;
}
.header .drawer__link-box a::after {
  position: absolute;
  content: "";
  width: 6px;
  height: 11px;
  background: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
}
.header .drawer__btn01 {
  background-color: #CC0000;
  color: #fff;
}
.header .drawer__btn02 {
  background-color: #2AAB39;
  color: #fff;
}
.header .menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .header .menu {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0;
  }
}
.header .menu__item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .header .menu__item {
    position: relative;
  }
  .header .menu__item:hover .submenu {
    opacity: 1;
    visibility: visible;
  }
  .header .menu__item:focus-within .submenu {
    opacity: 1;
    visibility: visible;
  }
  .header .menu__item:not(:last-child)::before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 1px;
    height: 100%;
    background-color: #fff;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: 2;
  }
}
.header .menu__link {
  display: block;
  background: #2B52A2;
  color: #fff;
  font-weight: 700;
  padding: 10px 20px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header .menu__link:hover {
  background: #002673;
  opacity: 1;
}
@media screen and (min-width: 768px) {
  .header .menu__link:hover {
    background: #002673;
  }
}
.header .menu__link.is-active::before {
  -webkit-transform: scaleX(1);
          transform: scaleX(1);
}
.header .menu__link::after {
  position: absolute;
  content: "";
  width: 6px;
  height: 11px;
  background: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .header .menu__link {
    text-align: center;
    position: relative;
    display: block;
    padding: 18px 10px;
  }
  .header .menu__link::after {
    display: none;
  }
  .header .menu__link::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0px;
    width: 100%;
    height: 6px;
    background: #002673;
    -webkit-transform: scaleX(0);
            transform: scaleX(0);
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    z-index: 1;
  }
}
@media screen and (min-width: 768px) {
  .header .submenu {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background: #fff;
    border: 1px solid #cccccc;
    border-top: none;
    padding: 30px 20px;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    z-index: 2;
  }
  .header .submenu::before {
    content: "";
    position: absolute;
    top: -9px; /* submenuの上に出す */
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    border-left: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #fff;
  }
}
@media screen and (min-width: 768px) {
  .header .submenu li:not(:first-child) {
    margin-top: 30px;
  }
}
.header .submenu li a {
  display: block;
  padding: 10px 30px 10px 20px;
  position: relative;
  border-bottom: 1px solid #CDDBF7;
  font-weight: 500;
  font-size: 1.4rem;
}
@media screen and (min-width: 768px) {
  .header .submenu li a {
    font-size: 1.6rem;
    line-height: 1.3;
    padding: 0 0 0 20px;
    color: #2B52A2;
    font-weight: 700;
    border: none;
  }
}
.header .submenu li a::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 11px;
  background: url("/assets/images/common/icon-black.svg") no-repeat center/contain;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 10;
}
@media screen and (min-width: 768px) {
  .header .submenu li a::before {
    background: url("/assets/images/common/icon-main-color.svg") no-repeat center/contain;
    left: 0;
    right: auto;
  }
}
.header .submenu li a.external {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header .submenu li a.external::after {
  content: "";
  display: inline-block;
  width: 15px;
  height: 15px;
  background-color: currentColor;
  mask: url(/assets/images/common/icon-external-c.svg) no-repeat center/contain;
  -webkit-mask: url(/assets/images/common/icon-external-c.svg) no-repeat center/contain;
  pointer-events: none;
}
.header .search-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 316px;
  height: 51px;
  background: #fff;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .header .search-box {
    max-width: 350px;
    width: 35vw;
    height: 54px;
  }
}
.header .search-box__input {
  min-width: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0 20px;
  font-size: 1.6rem;
  border: none;
  outline: none;
  color: #222;
  border-radius: 0 0 0 20px;
  border: 1.14px solid #222;
  cursor: text;
}
@media screen and (min-width: 768px) {
  .header .search-box__input {
    border-radius: 0 0 0 30px;
  }
}
.header .search-box__input::-webkit-input-placeholder {
  color: #999;
}
.header .search-box__input::-moz-placeholder {
  color: #999;
}
.header .search-box__input:-ms-input-placeholder {
  color: #999;
}
.header .search-box__input::-ms-input-placeholder {
  color: #999;
}
.header .search-box__input::placeholder {
  color: #999;
}
.header .search-box__button {
  width: 56px;
  height: 100%;
  background-color: #222;
  border-radius: 0 20px 0 0;
  border: none;
  cursor: pointer;
  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;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .header .search-box__button {
    width: 50px;
    border-radius: 0 30px 0 0;
  }
}
.header .search-box__button img {
  display: block;
  width: 27px;
  height: 27px;
}
.header .search__sp {
  background: #E4E4E4;
  padding: 10px 20px;
}
@media screen and (min-width: 768px) {
  .header .search__sp {
    display: none;
  }
}
.header .search__sp .search-box {
  width: 100%;
  height: 39px;
  background: #E4E4E4;
}
.header .search__sp .search-box__input {
  padding: 0 12px;
  font-size: 1.1rem;
  border: none;
  outline: none;
  color: #222;
  border-radius: 0 0 0 21.6px;
  border: 0.7px solid #222;
}
.header .search__sp .search-box__input::-webkit-input-placeholder {
  color: #999;
}
.header .search__sp .search-box__input::-moz-placeholder {
  color: #999;
}
.header .search__sp .search-box__input:-ms-input-placeholder {
  color: #999;
}
.header .search__sp .search-box__input::-ms-input-placeholder {
  color: #999;
}
.header .search__sp .search-box__input::placeholder {
  color: #999;
}
.header .search__sp .search-box__button {
  width: 36px;
  border-radius: 0 12px 0 0;
  border: none;
  cursor: pointer;
  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;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.header .search__sp .search-box__button img {
  width: 16px;
  height: 16px;
}

.top-inner {
  padding-inline: 12px;
}
@media screen and (min-width: 768px) {
  .top-inner {
    padding-inline: 80px;
    max-width: 1360px;
    margin: 0 auto;
  }
}

.inner {
  padding-inline: 12px;
}
@media screen and (min-width: 768px) {
  .inner {
    padding-inline: 80px;
    max-width: 1260px;
    margin: 0 auto;
  }
}

.lower-page__inner {
  padding-top: 30px;
  margin-bottom: 80px;
}
@media screen and (min-width: 768px) {
  .lower-page__inner {
    padding-top: 60px;
    margin-bottom: 80px;
  }
}

.partner {
  background: #F0F0F0;
  padding: 30px 0px;
}
.partner__lists {
  display: grid;
  grid-template-columns: repeat(auto-fit, 160px);
  gap: 20px 15px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .partner__lists {
    grid-template-columns: repeat(auto-fit, 165px);
    gap: 25px 20px;
  }
}

/* ページトップへ戻る
------------------------------------- */
.pagetop-btn {
  position: fixed;
  right: 10px;
  bottom: 10px;
  width: min(13.3333333333%, 50px);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s, visibility 0.3s, all 0.3 ease;
  transition: opacity 0.3s, visibility 0.3s, all 0.3 ease;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .pagetop-btn {
    bottom: 30px;
  }
}
@media screen and (min-width: 900px) {
  .pagetop-btn {
    right: 70px;
    bottom: 30px;
    width: 80px;
  }
}
.pagetop-btn.is-show {
  opacity: 1;
  visibility: visible;
}
.pagetop-btn::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #fff;
  z-index: -1;
  border-radius: 50%;
}
.pagetop-btn:hover {
  opacity: 1;
}
.pagetop-btn:hover img {
  opacity: 0.75;
}
.pagetop-btn img {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}

/* pc時画面右固定のボタン2つ
------------------------------------- */
.fixed__button-box {
  position: fixed;
  top: 250px;
  right: 0px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-transition: position 0.3s, top 0.3s;
  transition: position 0.3s, top 0.3s;
  z-index: 100;
  opacity: 0;
  -webkit-transform: translateX(20px);
          transform: translateX(20px);
  -webkit-transition: opacity 0.4s, -webkit-transform 0.4s;
  transition: opacity 0.4s, -webkit-transform 0.4s;
  transition: opacity 0.4s, transform 0.4s;
  transition: opacity 0.4s, transform 0.4s, -webkit-transform 0.4s;
  pointer-events: none; /* 非表示中は触れない */
}
.fixed__button-box a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl; /* 文字を縦書きに */
  text-orientation: upright; /* 漢字や数字を縦向きに */
  text-align: center;
  gap: 8px;
  padding: 21px 23px;
  border-radius: 0 0 0 30px;
  font-weight: 700;
  letter-spacing: 0.2em;
  position: relative;
  overflow: hidden;
}
.fixed__button-box a::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.3);
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  z-index: 1;
}
.fixed__button-box a > * {
  position: relative;
  z-index: 2;
}
.fixed__button-box a:hover {
  opacity: 1;
}
.fixed__button-box a:hover::after {
  opacity: 1;
}
.fixed__button-box.is-visible {
  opacity: 1;
  -webkit-transform: translateX(0);
          transform: translateX(0);
  pointer-events: auto;
}
.fixed__btn01 {
  background-color: #CC0000;
  color: #fff;
  position: relative;
}
.fixed__btn02 {
  margin-top: 40px;
  background-color: #2AAB39;
  color: #fff;
}

/* 青いボタン for-kids youth-developmentなど
------------------------------------- */
.btn-blue {
  display: block;
  padding: 14px 38px;
  color: #fff;
  background: #2B52A2;
  border: 4px solid #2B52A2;
  border-radius: 100px;
  font-size: 2.4rem;
  font-weight: 700;
  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: 6px;
  max-width: 700px;
  margin: 0 auto;
  line-height: 1.3;
}
@media screen and (min-width: 768px) {
  .btn-blue {
    gap: 20px;
  }
}
.btn-blue svg {
  width: 36px;
  height: 36px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .btn-blue svg {
    width: 48px;
    height: 48px;
  }
}
.btn-blue:hover {
  background: #fff;
  color: #2B52A2;
  opacity: 1;
}
.btn-blue:hover svg rect {
  fill: #2B52A2;
}
.btn-blue:hover svg path {
  fill: #fff;
}

/* 通常ボタン 右矢印 青枠
------------------------------------- */
.btn-c {
  padding: 8px 10px 8px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #0B2760;
  border: 2px solid #0B2760;
  font-size: 2rem;
  position: relative;
  margin: 0 15px;
}
@media screen and (min-width: 768px) {
  .btn-c {
    gap: 20px;
    max-width: 600px;
    margin-inline: auto;
    font-size: 2.4rem;
  }
}
.btn-c.external::after {
  content: "";
  width: 22px;
  height: 22px;
  background-color: currentColor;
  mask: url(/assets/images/common/icon-external-c.svg) no-repeat center/contain;
  -webkit-mask: url(/assets/images/common/icon-external-c.svg) no-repeat center/contain;
  pointer-events: none;
}

/* 下層ページのページタイトル
------------------------------------- */
.page-header {
  position: relative;
}
.page-header__inner {
  padding: 20px 16px 30px;
}
@media screen and (min-width: 768px) {
  .page-header__inner {
    padding: 50px 80px;
    max-width: 1260px;
    margin: 0 auto;
  }
}
.page-header h1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 7px;
}
.page-header__title-en {
  padding-left: 20px;
  font-family: "Lato", sans-serif;
  font-weight: 700;
  position: relative;
  line-height: 1.1875;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .page-header__title-en {
    font-size: 2.6rem;
    padding-left: 29px;
  }
}
.page-header__title-en::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #2AAB39;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
}
@media screen and (min-width: 768px) {
  .page-header__title-en::before {
    width: 14px;
    height: 14px;
  }
}
.page-header__title-ja-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .page-header__title-ja-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    gap: 39px;
  }
}
.page-header__title-ja {
  font-size: 3rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-header__title-ja {
    font-size: 4rem;
    line-height: 1.5;
  }
}
.page-header__title-sub {
  font-size: 1.6rem;
  line-height: 1.65;
}
@media screen and (min-width: 768px) {
  .page-header__title-sub {
    font-size: 2rem;
  }
}
.page-header::after {
  content: "";
  display: block;
  height: 3px;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(43, 82, 162, 0.4)), color-stop(32%, #2B52A2));
  background: linear-gradient(to right, rgba(43, 82, 162, 0.4) 0 32%, #2B52A2 32% 100%);
}
@media screen and (min-width: 768px) {
  .page-header::after {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, rgba(43, 82, 162, 0.4)), color-stop(8.33%, #2B52A2), color-stop(29.16%, rgba(43, 82, 162, 0.4)));
    background: linear-gradient(to right, rgba(43, 82, 162, 0.4) 0 8.33%, #2B52A2 8.33% 29.16%, rgba(43, 82, 162, 0.4) 29.16% 100%);
  }
}

.breadcrumb-wrapper {
  position: relative;
}

.breadcrumb {
  padding: 10px 0px 10px 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  font-size: 1.2rem;
  color: #555555;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
@media screen and (min-width: 768px) {
  .breadcrumb {
    padding: 20px 80px;
    max-width: 1360px;
    margin: 0 auto;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    font-size: 1.4rem;
  }
}
.breadcrumb ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
  gap: 0;
  min-width: -webkit-max-content;
  min-width: -moz-max-content;
  min-width: max-content;
}
.breadcrumb li {
  display: inline;
}
.breadcrumb li + li::before {
  content: "";
  display: inline-block;
  width: 6px;
  height: 11.5px;
  margin: 0 10px;
  vertical-align: middle;
  background: url("/assets/images/common/icon-breadcrumb.svg") no-repeat center;
  background-size: contain;
}
@media screen and (min-width: 768px) {
  .breadcrumb li + li::before {
    width: 8px;
    height: 15px;
  }
}
.breadcrumb li a {
  text-decoration: underline;
}

.breadcrumb-scroll-indicator {
  display: none; /* デフォルトは非表示 */
}
.breadcrumb-scroll-indicator.is-visible {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.2rem;
  color: #2B52A2;
  gap: 10px;
  font-weight: 500;
  padding-inline: 13px;
  position: absolute;
  bottom: -20px;
  right: 0;
}
.breadcrumb-scroll-indicator.is-visible img {
  width: 18px;
}

.article__block {
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .article__block {
    margin-bottom: 60px;
  }
}

.article__page .article__title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .article__page .article__title {
    font-size: 3rem;
  }
}
.article__page .article__title--lv2 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 20px;
  position: relative;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .article__page .article__title--lv2 {
    font-size: 2.4rem;
  }
}
.article__page .article__title--lv2::after {
  content: "";
  width: 100px;
  height: 3px;
  background: #2B52A2;
  position: absolute;
  left: 0;
  bottom: 0;
}
.article__page .article__title--lv3 {
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  margin-bottom: 20px;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}
@media screen and (min-width: 768px) {
  .article__page .article__title--lv3 {
    font-size: 2rem;
  }
}
.article__page .article__title--lv3::before {
  content: "";
  width: 6px;
  background: #2B52A2;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  -ms-flex-item-align: stretch;
      align-self: stretch;
}
@media screen and (min-width: 768px) {
  .article__page .list-ul {
    padding: 0 30px;
  }
}
.article__page .list-ul ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.article__page .list-ul ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  line-height: 1.7;
}
.article__page .list-ul ul li::before {
  margin-top: 8px;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #5575B5;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.article__page .note {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-top: 10px;
}
.article__page .note::before {
  content: "※";
}
@media screen and (min-width: 768px) {
  .article__page .list-ol {
    padding: 0 30px;
  }
}
.article__page .list-ol ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  list-style: none;
  counter-reset: num;
  gap: 10px;
}
.article__page .list-ol ol li {
  counter-increment: num;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .article__page .list-ol ol li {
    gap: 14px;
  }
}
.article__page .list-ol ol li::before {
  content: counter(num) ".";
  font-weight: 700;
  width: 2ch;
  text-align: left;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.article__page .image-caption__image {
  width: 100%;
}
.article__page .image-caption__caption {
  font-size: 1.4rem;
  line-height: 1.7;
  background: #F0F0F0;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .article__page .image-caption__caption {
    padding: 10px 20px;
  }
}
.article__page .image-ttl-txt__image {
  width: 100%;
}
.article__page .image-ttl-txt__ttl {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.7;
  margin-top: 16px;
}
.article__page .image-ttl-txt__txt {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-top: 10px;
}
.article__page .image-ttl-txt-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 50px;
}
@media screen and (min-width: 768px) {
  .article__page .image-ttl-txt-list {
    grid-template-columns: repeat(3, 1fr);
    gap: min(40px, 2.7777777778vw);
  }
}
.article__page .image-ttl-txt-list .image-ttl-txt__image {
  aspect-ratio: 340/240;
}
.article__page .image-ttl-txt-list .image-ttl-txt__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.article__page .ttl-txt-list {
  padding: 29px;
  border: 1px solid #5575B5;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-txt-list {
    padding: 40px;
  }
}
.article__page .ttl-txt-list__header {
  margin-bottom: 20px;
}
.article__page .ttl-txt-list__heading {
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
  padding-left: 32px;
  position: relative;
}
.article__page .ttl-txt-list__heading::before {
  content: "";
  position: absolute;
  top: 4px;
  left: 0;
  width: 16px;
  height: 20px;
  background: url("/assets/images/common/icon-book.svg") no-repeat center/contain;
}
.article__page .ttl-txt-list__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.article__page .ttl-txt-list__item {
  padding-left: 18px;
  line-height: 1.7;
  position: relative;
}
.article__page .ttl-txt-list__item::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #5575B5;
  top: 8px;
  left: 0;
}
.article__page .ttl-txt-list__ttl {
  font-weight: 700;
}
.article__page .bordered-ttl-txt {
  padding: 30px;
  border: 1px solid #BEBEBE;
}
.article__page .bordered-ttl-txt__ttl {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 20px;
}
.article__page .bordered-ttl-txt__txt {
  line-height: 1.7;
}
.article__page .article__text-block .article__text {
  line-height: 1.7;
}
.article__page .article__text-block .article__text + .article__text {
  margin-top: 20px;
}
.article__page .article__text-block ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .article__page .article__text-block ul {
    padding: 0 30px;
  }
}
.article__page .article__text-block ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  line-height: 1.7;
}
.article__page .article__text-block ul li::before {
  margin-top: 8px;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #5575B5;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.article__page .article__text-block ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  list-style: none;
  counter-reset: num;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .article__page .article__text-block ol {
    padding: 0 30px;
  }
}
.article__page .article__text-block ol li {
  counter-increment: num;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .article__page .article__text-block ol li {
    gap: 14px;
  }
}
.article__page .article__text-block ol li::before {
  content: counter(num) ".";
  font-weight: 700;
  width: 2ch;
  text-align: left;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.article__page .table--icon table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 50px;
  color: #000;
}
@media screen and (min-width: 768px) {
  .article__page .table--icon table {
    margin-bottom: 60px;
  }
}
.article__page .table--icon table tr {
  display: block;
}
.article__page .table--icon table tr:first-child {
  border-top: 1px solid #BEBEBE;
}
.article__page .table--icon table th {
  display: block;
  padding: 9px;
  background: #E4E4E4;
  text-align: center;
  border-left: 1px solid #BEBEBE;
  border-right: 1px solid #BEBEBE;
  border-bottom: 1px solid #BEBEBE;
  border-top: none;
  line-height: 1.7;
  vertical-align: middle;
}
.article__page .table--icon table td {
  display: block;
  padding: 9px 16px;
  border-left: 1px solid #BEBEBE;
  border-right: 1px solid #BEBEBE;
  border-bottom: 1px solid #BEBEBE;
  border-top: none;
  line-height: 1.6;
  vertical-align: top;
}
@media screen and (min-width: 768px) {
  .article__page .table--icon table {
    display: table;
    width: 100%;
  }
  .article__page .table--icon table tr {
    display: table-row;
    margin-bottom: 0;
  }
  .article__page .table--icon table th, .article__page .table--icon table td {
    display: table-cell;
    padding: 16px;
  }
  .article__page .table--icon table th {
    width: 180px;
    line-height: 1.3;
  }
  .article__page .table--icon table td {
    width: auto;
  }
}
.article__page .table--icon .link {
  display: inline;
  line-height: 1.6;
  vertical-align: middle;
}
@media screen and (min-width: 768px) {
  .article__page .table--icon .link {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 4px;
    line-height: 1.8;
  }
}
.article__page .table--icon .link::after {
  content: "";
  display: inline-block;
  margin-left: 6px;
  vertical-align: top;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 20px;
  height: 23px;
}
@media screen and (min-width: 768px) {
  .article__page .table--icon .link::after {
    margin-left: 10px;
    width: 24px;
    height: 27px;
  }
}
.article__page .table--icon .link--external::after {
  width: 20px;
  height: 20px;
  background: url("/assets/images/common/icon-external.svg") no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .article__page .table--icon .link--external::after {
    width: 22px;
    height: 22px;
  }
}
.article__page .table--icon .link--pdf::after {
  background: url("/assets/images/common/icon-pdf.svg") no-repeat center center/contain;
}
.article__page .table--icon .link--xls::after {
  background: url("/assets/images/common/icon-xls.svg") no-repeat center center/contain;
}
.article__page .table--icon .link--word::after {
  background: url("/assets/images/common/icon-word.svg") no-repeat center center/contain;
}
.article__page .table--icon .link--none::after {
  display: none;
}
.article__page .table--icon a.link {
  text-decoration: underline;
  text-underline-offset: 0.1em;
}
.article__page .article__media--two-column {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .article__page .article__media--two-column {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.article__page .article__media--two-column .article__media-figure {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 7px;
}
@media screen and (min-width: 768px) {
  .article__page .article__media--two-column .article__media-figure {
    width: 41.8181818182%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    gap: 12px;
  }
}
.article__page .article__media-img {
  aspect-ratio: 460/280;
}
.article__page .article__media-img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 768px) {
  .article__page .article__media--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.article__page .article__media-body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.article__page .article__media--boxed {
  padding: 20px;
  border: 1px dashed #2B52A2;
}
@media screen and (min-width: 768px) {
  .article__page .article__media--boxed {
    padding: 40px;
  }
}
@media screen and (min-width: 768px) {
  .article__page .article__media--boxed .article__media-figure {
    width: 45.0980392157%;
  }
}
.article__page .article__media .article__title--lv3:not(:first-of-type) {
  /* 2つ目以降 */
  margin-top: 60px;
}
.article__page .article__media .article__text {
  margin-bottom: 20px;
}
.article__page .article__media .article__text-bold {
  font-weight: 700;
}
.article__page .article__media-caption {
  font-size: 1.2rem;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .article__page .article__media-caption {
    font-size: 1.4rem;
  }
}
.article__page .ttl-text-circle-img {
  background: #EAF1FE;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-text-circle-img {
    padding: 40px;
  }
}
@media screen and (min-width: 768px) {
  .article__page .ttl-text-circle-img .article__title--lv3 {
    margin-bottom: 30px;
  }
}
.article__page .ttl-text-circle-img .ttl-text-circle__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-text-circle-img .ttl-text-circle__wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
  }
}
@media screen and (min-width: 768px) {
  .article__page .ttl-text-circle-img .ttl-text-circle__wrap.reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.article__page .ttl-text-circle-img .ttl-text-circle__img-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  text-align: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.article__page .ttl-text-circle-img .ttl-text-circle__img {
  width: 184px;
  height: 184px;
  border-radius: 50%;
  overflow: hidden;
}
.article__page .ttl-text-circle-img .ttl-text-circle__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.article__page .ttl-text-circle-img .ttl-text-circle__text-sm {
  font-size: 1.4rem;
  line-height: 1.4;
}
.article__page .ttl-text-circle-img .ttl-text-circle__text-lg {
  line-height: 1.4;
}
.article__page .ttl-text-circle-img .ttl-text-circle__text {
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.article__page .ttl-img-cap-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-img-cap-text {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 40px;
  }
}
.article__page .ttl-img-cap-text__card {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.article__page .ttl-img-cap-text figure {
  aspect-ratio: 340/240;
}
.article__page .ttl-img-cap-text__image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.article__page .ttl-img-cap-text__caption {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-top: 20px;
}
.article__page .ttl-img-cap-text .article__text-block {
  margin-top: 30px;
}
.article__page .ttl-txt-list__2colum {
  padding: 20px;
  border: 1px solid #5575B5;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-txt-list__2colum {
    padding: 40px 40px 30px 40px;
  }
}
.article__page .ttl-txt-list__2colum .ttl-txt-list__list {
  gap: 0;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-txt-list__2colum .ttl-txt-list__list {
    display: block;
    -webkit-columns: 2;
       -moz-columns: 2;
            columns: 2;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
.article__page .ttl-txt-list__2colum .ttl-txt-list__item {
  padding-left: 18px;
  line-height: 1.7;
  position: relative;
}
@media screen and (min-width: 768px) {
  .article__page .ttl-txt-list__2colum .ttl-txt-list__item {
    margin-bottom: 10px;
  }
}
.article__page .ttl-txt-list__2colum .ttl-txt-list__item::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #5575B5;
  top: 8px;
  left: 0;
}

.post-navigation {
  margin: 0 auto 80px;
  max-width: 960px;
  position: relative;
}
.post-navigation__top {
  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;
  width: 100%;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .post-navigation__top {
    height: 58px;
    margin-bottom: 0;
  }
}
.post-navigation__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 16px;
  color: #0B2760;
}
@media screen and (min-width: 768px) {
  .post-navigation__item a {
    font-size: 2rem;
  }
}
.post-navigation__prev a::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 13.5px;
  background: url(/assets/images/common/pager-prev.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .post-navigation__prev a::before {
    width: 14px;
    height: 27px;
  }
}
.post-navigation__next a::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 13.5px;
  background: url(/assets/images/common/pager-next.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .post-navigation__next a::after {
    width: 14px;
    height: 27px;
  }
}
.post-navigation__home {
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 8px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 200px;
  color: #0B2760;
  border: 1px solid #0B2760;
  text-align: center;
}
.post-navigation__home img {
  width: 7px;
}
@media screen and (min-width: 768px) {
  .post-navigation__home img {
    width: 9px;
  }
}
@media screen and (min-width: 768px) {
  .post-navigation__home {
    font-size: 2rem;
    gap: 20px;
    padding: 13px;
    min-width: 300px;
  }
}
.post-navigation__home::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 14px;
  background: url(/assets/images/common/icon-nav__home.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .post-navigation__home::before {
    width: 9px;
    height: 18px;
  }
}
.post-navigation {
  /* PC表示 */
}
@media screen and (min-width: 768px) {
  .post-navigation__home-wrapper {
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    top: 50%;
    width: auto;
  }
  .post-navigation__next {
    margin-left: auto;
  }
}

/* サイドバー
------------------------------------- */
.sidebar__container {
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .sidebar__container {
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 40px;
  }
}
@media screen and (min-width: 900px) {
  .sidebar__container {
    grid-template-columns: 260px minmax(0, 1fr);
    gap: 40px;
  }
}
.sidebar__container > * {
  min-width: 0;
}

.sidebar-wrap {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .sidebar-wrap {
    width: 220px;
    padding-top: 0;
  }
}
@media screen and (min-width: 900px) {
  .sidebar-wrap {
    width: 260px;
  }
}
.sidebar__nav {
  background: #EAF1FE;
  padding: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  border-radius: 0 20px 0 20px;
}
@media screen and (min-width: 768px) {
  .sidebar__nav {
    padding: 20px;
    gap: 20px;
    border-radius: 0 30px 0 30px;
  }
}
@media screen and (min-width: 900px) {
  .sidebar__nav {
    padding: 30px;
  }
}
.sidebar-nav__title {
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: bold;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 7px;
}
.sidebar-nav__title::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #2AAB39;
}
.sidebar-nav__list {
  display: grid;
  grid-template-columns: repeat(2, auto);
  gap: 16px 20px;
  max-width: 600px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .sidebar-nav__list {
    grid-template-columns: 1fr;
    gap: 20px;
    min-width: 0;
    max-width: none;
    width: 100%;
    margin: 0;
  }
}
.sidebar-nav__item {
  width: 40vw;
}
@media screen and (min-width: 768px) {
  .sidebar-nav__item {
    max-width: none;
    width: 100%;
  }
}
.sidebar-nav__item a {
  background: #fff;
  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;
  padding: 7px 12px;
  font-size: 1.4rem;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .sidebar-nav__item a {
    font-size: 1.6rem;
    padding: 13px 16px;
  }
}
.sidebar-nav__item a svg {
  color: #2B52A2;
}
@media screen and (min-width: 768px) {
  .sidebar-nav__item a svg {
    width: 8px;
  }
}
.sidebar-nav__item a::after {
  content: "";
  width: 6px;
  height: 21px;
  /* これが必須 */
  display: inline-block;
  background-color: #2B52A2;
  mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
  -webkit-mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .sidebar-nav__item a::after {
    width: 8px;
    height: 15px;
  }
}
.sidebar-nav__item:hover a {
  background: #2B52A2;
  color: #fff;
  opacity: 1;
}
.sidebar-nav__item:hover a svg {
  color: #fff;
}
.sidebar-nav__item:hover a::after {
  background: #fff;
}
.sidebar-nav__item.is-active a {
  background: #2B52A2;
  color: #fff;
}
.sidebar-nav__item.is-active a svg {
  color: #fff;
}
.sidebar-nav__item.is-active a::after {
  background: #fff;
}

.page__content .heading-lv2 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page__content .heading-lv2 {
    font-size: 3rem;
  }
}
.page__content .heading-lv2.is-numbered {
  counter-increment: h2-number;
  counter-reset: h3-number; /* h2が変わるたびにh3をリセット */
  position: relative;
}
.page__content .heading-lv2.is-numbered::before {
  content: counter(h2-number) ".";
  position: absolute;
  left: 0;
  top: 0;
}
.page__content .heading-lv3 {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
  padding-bottom: 20px;
  position: relative;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page__content .heading-lv3 {
    font-size: 2.4rem;
  }
}
.page__content .heading-lv3::after {
  content: "";
  width: 100px;
  height: 3px;
  background: #2B52A2;
  position: absolute;
  left: 0;
  bottom: 0;
}
.page__content .heading-lv3.is-numbered {
  counter-increment: h3-number;
  counter-reset: h4-number;
  position: relative;
  padding-left: 29px;
}
@media screen and (min-width: 768px) {
  .page__content .heading-lv3.is-numbered {
    padding-left: 32px;
  }
}
.page__content .heading-lv3.is-numbered::before {
  content: counter(h3-number) ".";
  position: absolute;
  left: 0;
  top: 0;
}
.page__content .heading-lv4 {
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 700;
  padding-left: 22px;
  margin-bottom: 20px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page__content .heading-lv4 {
    font-size: 2rem;
  }
}
.page__content .heading-lv4::before {
  position: absolute;
  content: "";
  width: 6px;
  height: 100%;
  background: #2B52A2;
  top: 0;
  left: 0;
}
.page__content .heading-lv4.is-numbered {
  counter-increment: h4-number;
  position: relative;
  padding-left: 44px;
}
@media screen and (min-width: 768px) {
  .page__content .heading-lv4.is-numbered {
    padding-left: 47px;
  }
}
.page__content .heading-lv4.is-numbered::after {
  content: counter(h4-number) ".";
  position: absolute;
  left: 22px;
  top: 0;
}
.page__content .text {
  line-height: 1.7;
}
.page__content .text__link {
  display: block;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.7;
  text-decoration: underline;
}
.page__content .text__link.pdf::after {
  content: "";
  display: inline-block;
  vertical-align: top;
  width: 20px;
  height: 23px;
  background: url(/assets/images/common/icon-pdf.svg) no-repeat center center/contain;
  margin-left: 10px;
}
@media screen and (min-width: 768px) {
  .page__content .text__link.pdf::after {
    width: 14px;
    height: 16px;
    vertical-align: middle;
  }
}
.page__content .text__link.external::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 15px;
  height: 15px;
  background: url(/assets/images/common/icon-external.svg) no-repeat center center/contain;
  margin-left: 10px;
}
@media screen and (min-width: 768px) {
  .page__content .text__link.external::after {
    width: 15px;
    height: 15px;
    vertical-align: middle;
  }
}
.page__content .table__3column table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #000;
}
.page__content .table__3column th {
  background-color: #2B52A2;
  color: #fff;
  border: 1px solid #BEBEBE;
  border-bottom: none;
  padding: 15px;
  font-weight: 700;
  width: 33.3333333333%;
  line-height: 1.7;
}
.page__content .table__3column tr:nth-child(even) {
  background-color: #f5f5f5;
}
.page__content .table__3column td {
  border: 1px solid #BEBEBE; /* 外枠グレー */
  padding: 15px 16px;
  line-height: 1.7;
  width: 33.3333333333%;
}
.page__content .table__2column table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #000;
}
.page__content .table__2column th {
  background-color: #2B52A2;
  color: #fff;
  border: 1px solid #BEBEBE;
  border-bottom: none;
  padding: 15px;
  font-weight: 700;
  width: 50%;
  line-height: 1.7;
}
.page__content .table__2column tr:nth-child(even) {
  background-color: #f5f5f5;
}
.page__content .table__2column td {
  border: 1px solid #BEBEBE; /* 外枠グレー */
  padding: 15px;
  line-height: 1.7;
  width: 50%;
}
.page__content .faq__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page__content .faq__contents {
    gap: 40px;
  }
}
.page__content .faq__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
.page__content .faq-li.active .faq-q::after {
  -webkit-transform: translateY(-50%) rotate(0deg);
          transform: translateY(-50%) rotate(0deg);
}
.page__content .faq-li.active .faq-a {
  display: block;
}
.page__content .faq-q {
  width: 100%;
  background: rgba(42, 171, 57, 0.2);
  text-align: left;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  padding: 15px 65px 15px 61px;
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 700;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page__content .faq-q {
    padding: 20px 65px 20px 61px;
  }
}
.page__content .faq-q::before {
  position: absolute;
  content: "";
  width: 36px;
  height: 36px;
  background: url(/assets/images/common/icon-q.svg) no-repeat center center/contain;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 15px;
}
.page__content .faq-q::after {
  position: absolute;
  content: "";
  width: 30px;
  height: 16px;
  background: url(/assets/images/common/icon-up.svg) no-repeat center center/contain;
  -webkit-transform: translateY(-50%) rotate(180deg);
          transform: translateY(-50%) rotate(180deg);
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  top: 50%;
  right: 25px;
}
.page__content .faq-a {
  display: none;
  border: 1px solid rgba(42, 171, 57, 0.2);
  padding: 15px 25px 15px 61px;
  gap: 10px;
  line-height: 1.7;
  position: relative;
}
.page__content .faq-a::before {
  position: absolute;
  content: "";
  width: 36px;
  height: 36px;
  background: url(/assets/images/common/icon-a.svg) no-repeat center center/contain;
  top: 15px;
  left: 15px;
}
.page__content .faq-a__lead {
  display: block;
  margin-bottom: 10px;
}
.page__content .faq-a__link {
  display: block;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.page__content .faq-a__link-inline {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.page__content .faq-a__image {
  display: block;
  max-width: 340px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page__content .faq-a__image {
    width: 340px;
  }
}
.page__content .faq-a__image img {
  width: 100%;
}
.page__content .faq-a__note {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-top: 10px;
}
.page__content .faq-a__note::before {
  content: "※";
}
.page__content .faq-a__contents {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page__content .faq-a__contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

/* ページネーション
------------------------------------- */
.pagination {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2rem;
  padding: 20px 25px;
}
@media screen and (min-width: 768px) {
  .pagination {
    gap: 45px;
  }
}
.pagination .first,
.pagination .last {
  width: 28px;
}
.pagination .prev,
.pagination .next {
  width: 14px;
}

.page-numbers {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: underline;
  text-decoration-thickness: 1px;
}
.page-numbers.current {
  text-decoration: none;
}

.page-top .heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.page-top .heading__title-en {
  font-family: "Lato", sans-serif;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.2083333333;
}
@media screen and (min-width: 768px) {
  .page-top .heading__title-en {
    font-size: min(8rem, 6vw);
    line-height: 1.2;
  }
}
.page-top .heading__title-ja {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .page-top .heading__title-ja {
    font-size: 2rem;
    font-size: min(2rem, 2vw);
  }
}
.page-top .mv {
  overflow: hidden;
}
.page-top .mv .main-swiper {
  width: 100%;
  max-width: 100%;
  margin: 0 auto;
}
.page-top .mv .swiper-slide {
  width: 90.6666666667%;
  margin: 0 auto;
  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;
}
@media screen and (min-width: 768px) {
  .page-top .mv .swiper-slide {
    width: 83.3333333333vw;
    min-width: 700px;
  }
}
.page-top .mv .swiper-slide img {
  width: 100%;
}
.page-top .mv .swiper-button-prev,
.page-top .mv .swiper-button-next {
  width: 32px;
  height: 40px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.page-top .mv .swiper-button-prev svg,
.page-top .mv .swiper-button-next svg {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-top .mv .swiper-button-prev,
  .page-top .mv .swiper-button-next {
    width: 72px;
    height: 80px;
  }
}
.page-top .mv .swiper-button-prev:hover,
.page-top .mv .swiper-button-next:hover {
  opacity: 0.65;
}
.page-top .mv .swiper-button-prev {
  background-image: url(/assets/images/top/prev.svg);
  left: 2.6666666667vw;
}
@media screen and (min-width: 900px) {
  .page-top .mv .swiper-button-prev {
    left: 5.8333333333vw;
  }
}
.page-top .mv .swiper-button-next {
  background-image: url(/assets/images/top/next.svg);
  right: 2.6666666667vw;
}
@media screen and (min-width: 900px) {
  .page-top .mv .swiper-button-next {
    right: 5.8333333333vw;
  }
}
.page-top .mv__bottom {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-top .mv__bottom {
    margin: 28px auto 0;
    gap: min(66px, 2vw);
    padding-inline: 80px;
    max-width: 1360px;
  }
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.page-top .mv__bottom .mv-bottom__thumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .mv-bottom__thumb {
    width: 57.8333333333%;
    gap: 10px;
  }
}
@media screen and (min-width: 1200px) {
  .page-top .mv__bottom .mv-bottom__thumb {
    gap: 20px;
  }
}
.page-top .mv__bottom .mv-bottom__links {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  padding-inline: 3.2vw;
}
@media screen and (min-width: 768px) {
  .page-top .mv__bottom .mv-bottom__links {
    gap: 10px;
  }
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .mv-bottom__links {
    gap: 20px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    padding: 0 10px 0 0;
  }
}
.page-top .mv__bottom {
  /* ------------------------------
  サムネイル（共通）
  ------------------------------ */
}
.page-top .mv__bottom .thumb-swiper {
  width: 74.6666666667%;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .page-top .mv__bottom .thumb-swiper {
    width: 91.0662824207%;
  }
}
.page-top .mv__bottom .thumb-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (min-width: 768px) {
  .page-top .mv__bottom .thumb-list {
    gap: 3.164556962%;
  }
}
.page-top .mv__bottom .thumb-list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-top .mv__bottom .thumb-item {
  cursor: pointer;
  overflow: hidden;
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, transform 0.2s;
  transition: opacity 0.2s, transform 0.2s, -webkit-transform 0.2s;
}
.page-top .mv__bottom .thumb-item:hover {
  opacity: 0.65;
}
.page-top .mv__bottom .thumb-item.is-active {
  opacity: 0.65;
}
.page-top .mv__bottom {
  /* 画像が入る想定 */
}
.page-top .mv__bottom .thumb-item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-top .mv__bottom {
  /* ------------------------------
  swiper 停止ボタン
  ------------------------------ */
}
.page-top .mv__bottom .swiper-toggle {
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
}
.page-top .mv__bottom .swiper-toggle img {
  width: 42px;
  height: 40px;
  display: block;
}
.page-top .mv__bottom .swiper-toggle .icon-play {
  display: none;
}
.page-top .mv__bottom .swiper-toggle.is-paused .icon-pause {
  display: none;
}
.page-top .mv__bottom .swiper-toggle.is-paused .icon-play {
  display: block;
}
.page-top .mv__bottom {
  /* ------------------------------
  リンク2つ
  ------------------------------ */
}
.page-top .mv__bottom .c-btn {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  overflow: hidden;
  color: #111111;
  border-radius: 19px;
  background: #fff;
  -webkit-transition: 0.25s ease;
  transition: 0.25s ease;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 300px;
  -webkit-box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
          box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  text-align: center;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn {
    border-radius: 24px;
  }
}
.page-top .mv__bottom .c-btn span {
  font-size: 1.1rem;
  font-weight: 700;
  -webkit-transition: color 0.3s;
  transition: color 0.3s;
  line-height: 1.3;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn span {
    font-size: 1.25vw;
    white-space: nowrap;
  }
}
@media screen and (min-width: 1200px) {
  .page-top .mv__bottom .c-btn span {
    font-size: 1.5rem;
    white-space: nowrap;
  }
}
.page-top .mv__bottom .c-btn:nth-child(1) .c-btn__left img {
  width: 36px;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn:nth-child(1) .c-btn__left img {
    width: min(45px, 3.125vw);
  }
}
.page-top .mv__bottom .c-btn:nth-child(2) .c-btn__left img {
  width: 47px;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn:nth-child(2) .c-btn__left img {
    width: min(55px, 3.8194444444vw);
  }
}
.page-top .mv__bottom .c-btn:hover {
  background: #EAF1FE;
  opacity: 1;
}
.page-top .mv__bottom .c-btn:hover span {
  color: #2B52A2;
}
.page-top .mv__bottom .c-btn__left {
  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;
  gap: 8px;
  padding: 12px;
  font-weight: 700;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  border: 1.6px solid #2B52A2;
  border-radius: 19px 0 0 19px;
  margin-right: -1.6px;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn__left {
    padding: min(15px, 1.0416666667vw);
    border: 2px solid #2B52A2;
    border-radius: 24px 0 0 24px;
    margin-right: -2px;
  }
}
.page-top .mv__bottom .c-btn__right {
  background: #2B52A2;
  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;
  width: 25px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  height: 100%;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn__right {
    width: 32px;
  }
}
.page-top .mv__bottom .c-btn__right img {
  width: 8px;
  height: 15px;
}
@media screen and (min-width: 900px) {
  .page-top .mv__bottom .c-btn__right img {
    width: 10px;
    height: 19px;
  }
}
.page-top {
  /* ------------------------------
  お知らせ
  ------------------------------ */
}
.page-top .news {
  padding: 30px 0px 100px;
  position: relative;
}
@media screen and (min-width: 900px) {
  .page-top .news {
    padding-top: 39px;
    padding-bottom: 0;
    min-height: 280px;
  }
}
.page-top .news__inner {
  padding-inline: 12px;
}
@media screen and (min-width: 900px) {
  .page-top .news__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    gap: 10px;
    padding-inline: 80px;
    max-width: 1360px;
  }
}
@media screen and (min-width: 768px) {
  .page-top .news__heading {
    margin-left: 0;
  }
}
.page-top .news__contents {
  max-width: 680px;
  margin: 30px auto 0;
  padding: 24px 15px;
  border: 1px solid #2B52A2;
  border-radius: 0 30px 0 30px;
  background: #fff;
}
@media screen and (min-width: 900px) {
  .page-top .news__contents {
    width: 72.5vw;
    max-width: 870px;
    margin: 0;
    padding: 30px;
    margin-bottom: -95px;
  }
}
.page-top .news .news-contents__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
@media screen and (min-width: 768px) {
  .page-top .news .news-contents__head {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.page-top .news .news-contents__title {
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .page-top .news .news-contents__title {
    font-size: 2rem;
  }
}
.page-top .news .news-contents__more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  text-decoration: underline;
  text-underline-offset: 0.1em;
}
@media screen and (min-width: 768px) {
  .page-top .news .news-contents__more {
    font-size: 2rem;
  }
}
.page-top .news .news-contents__more::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 15px;
  background: url(/assets/images/common/icon-main-color.svg) no-repeat center center/contain;
}
.page-top .news .news-contents__line {
  margin-top: 14px;
  width: 100%;
  height: 2px;
  background: linear-gradient(to right, #2B52A2 0 100px, rgba(43, 82, 162, 0.3) 100px 100%);
}
@media screen and (min-width: 768px) {
  .page-top .news .news-contents__line {
    margin-top: 11px;
  }
}
.page-top .news__lists {
  margin-top: 15px;
}
@media screen and (min-width: 768px) {
  .page-top .news__lists {
    margin-top: 30px;
  }
}
.page-top .news__lists li {
  padding: 8px 0px;
  border-bottom: 1px solid #c7cde8;
  display: block;
}
@media screen and (min-width: 768px) {
  .page-top .news__lists li {
    padding: 10px 0;
  }
}
.page-top .news__lists li:first-child {
  padding-top: 0;
}
.page-top .news__lists li:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
.page-top .news__lists li:nth-child(4), .page-top .news__lists li:nth-child(5) {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-top .news__lists li:nth-child(4), .page-top .news__lists li:nth-child(5) {
    display: block;
  }
}
@media screen and (min-width: 768px) {
  .page-top .news__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}
.page-top .news-list__date {
  font-family: "Lato", sans-serif;
}
@media screen and (min-width: 768px) {
  .page-top .news-list__date {
    margin-right: 32px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.page-top .news-list__meta {
  margin: 6px 0 4px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
}
@media screen and (min-width: 768px) {
  .page-top .news-list__meta {
    margin-right: 10px;
    -ms-flex-negative: 0;
        flex-shrink: 0;
    margin: 0 10px 0 0;
    gap: 10px;
  }
}
.page-top .news-list__text {
  display: inline-block;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  font-weight: 400;
}
.page-top .news .tag {
  font-size: 1.4rem;
  font-weight: 700;
  padding: 0px 10px;
  color: #fff;
  background: #90A4CC;
}
@media screen and (min-width: 768px) {
  .page-top .news .tag {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    padding: 1px 10px;
    letter-spacing: 0.1em;
  }
}
.page-top .news .tag--new {
  background: #CC0000;
}
.page-top .news__deco {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 340px;
}
@media screen and (min-width: 900px) {
  .page-top .news__deco {
    width: 476px;
    left: calc(50% - 473px);
    z-index: -1;
  }
}
.page-top {
  /* ------------------------------
  pick-up
  ------------------------------ */
}
.page-top .pick-up {
  padding: 70px 0;
  background: #2B52A2;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up {
    padding: 100px 0 105px;
  }
}
.page-top .pick-up__inner {
  padding-inline: 12px;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__inner {
    padding-inline: 80px;
    max-width: 1360px;
    margin: 0 auto;
  }
}
.page-top .pick-up__heading {
  color: #90A4CC;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__heading {
    margin-left: 0;
  }
}
.page-top .pick-up__contents {
  margin-top: 30px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px 20px;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__contents {
    gap: 30px 40px;
  }
}
@media screen and (min-width: 900px) {
  .page-top .pick-up__contents {
    grid-template-columns: repeat(4, 1fr);
    max-width: 1200px;
    gap: min(25px, 1.7361111111vw);
  }
}
.page-top .pick-up__card {
  color: #fff;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 900px) {
  .page-top .pick-up__card {
    width: auto;
    max-width: 280px;
  }
}
.page-top .pick-up__card:hover {
  opacity: 1;
}
.page-top .pick-up__card:hover .pick-up__card-contents {
  opacity: 0.65;
}
.page-top .pick-up__card:hover .pick-up__link {
  text-decoration: none;
}
.page-top .pick-up__img {
  aspect-ratio: 160/125;
  overflow: hidden;
  border-radius: 0 30px 0 0;
  -webkit-box-shadow: 0 0px 10px rgba(0, 0, 0, 0.4);
          box-shadow: 0 0px 10px rgba(0, 0, 0, 0.4);
}
.page-top .pick-up__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-top .pick-up__card-contents {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__card-contents {
    margin-top: 20px;
  }
}
.page-top .pick-up__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  min-height: 3em;
  padding-left: 30px;
  position: relative;
}
.page-top .pick-up__title span {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* ← 2行固定 */
  overflow: hidden;
  font-weight: 700;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__title span {
    height: auto;
    font-size: 2vw;
  }
}
@media screen and (min-width: 900px) {
  .page-top .pick-up__title span {
    font-size: 1.8rem;
  }
}
.page-top .pick-up__title::before {
  position: absolute;
  content: "";
  width: 20px;
  height: 10px;
  background: #90A4CC;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}
.page-top .pick-up__text {
  margin-top: 10px;
  margin-bottom: 10px;
  line-height: 1.5;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__text {
    margin-top: 15px;
    margin-bottom: 15px;
  }
}
.page-top .pick-up__link {
  margin-top: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
@media screen and (min-width: 768px) {
  .page-top .pick-up__link {
    font-size: 1.6842105263vw;
  }
}
@media screen and (min-width: 900px) {
  .page-top .pick-up__link {
    font-size: 1.6rem;
  }
}
.page-top .pick-up__link::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 11px;
  background: url(/assets/images/common/icon-white.svg) no-repeat center center/contain;
}
.page-top {
  /* ------------------------------
  pamphlet パンフレット
  ------------------------------ */
}
.page-top .pamphlet {
  margin-top: 80px;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet {
    margin-top: 108px;
    position: relative;
    padding-bottom: min(650px, 75.1111111111vw);
  }
}
.page-top .pamphlet__top {
  padding-inline: 17px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  margin-bottom: -50px;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__top {
    padding-inline: 80px;
    max-width: 1360px;
    margin: 0 auto;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(60px, 4.8387096774vw);
    position: relative;
    z-index: 2;
  }
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__main-img {
    aspect-ratio: 840/600;
    max-width: 840px;
    position: relative;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__main-img::after {
    content: "";
    position: absolute;
    top: 0;
    right: max(-30px, -2.4193548387vw);
    width: 1px;
    height: calc(100% + min(30px, 2.4193548387vw));
    background: #0B2760;
  }
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__main-img::before {
    content: "";
    position: absolute;
    bottom: max(-30px, -2.4193548387vw);
    left: 0;
    width: calc(100% + min(30px, 2.4193548387vw));
    height: 1px;
    background: #0B2760;
  }
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__main-img img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.page-top .pamphlet__intro {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__intro {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 25px;
    margin-top: 13px;
  }
}
.page-top .pamphlet-intro__title {
  width: 64vw;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__title {
    width: 19.53125vw;
    max-width: 300px;
  }
}
@media screen and (min-width: 900px) {
  .page-top .pamphlet-intro__title {
    width: 24.1935483871vw;
  }
}
.page-top .pamphlet-intro__title img {
  display: block;
  margin: 0 auto;
}
.page-top .pamphlet-intro__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__contents {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 25px;
    max-width: 224px;
    width: 74.6666666667%;
  }
}
.page-top .pamphlet-intro__featured {
  width: 42.6666666667vw;
  max-width: 250px;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__featured {
    width: 100%;
    max-width: none;
  }
}
.page-top .pamphlet-intro__featured-wrap {
  position: relative;
  width: 93.125%;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__featured-wrap {
    width: 93.75%;
  }
}
.page-top .pamphlet-intro__featured-wrap img {
  width: 100%;
  display: block;
  position: relative;
  z-index: 1;
}
.page-top .pamphlet-intro__featured-wrap::after {
  position: absolute;
  content: "";
  inset: 0;
  background: #0B2760;
  -webkit-transform: translate(10px, 10px);
          transform: translate(10px, 10px);
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__featured-wrap::after {
    -webkit-transform: translate(14px, 14px);
            transform: translate(14px, 14px);
  }
}
.page-top .pamphlet-intro__description {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: 20px;
  color: #000;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__description {
    color: #fff;
    margin-top: 0;
  }
}
.page-top .pamphlet-intro__number {
  font-size: 1.4rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__number {
    font-size: 1.6rem;
  }
}
.page-top .pamphlet-intro__number span {
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__number span {
    font-size: 2.4rem;
  }
}
.page-top .pamphlet-intro__text {
  margin-top: 4px;
  font-size: 1.4rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__text {
    margin-top: 6px;
    font-size: 1.6rem;
  }
}
.page-top .pamphlet-intro__link {
  margin-top: 6px;
  color: #fff;
  background: #2AAB39;
  font-size: 1.4rem;
  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;
  gap: 6px;
  padding: 5px;
  border: 1px solid transparent;
  -webkit-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__link {
    margin-top: 14px;
    font-size: 1.6rem;
    gap: 8px;
    padding: 7px;
  }
}
.page-top .pamphlet-intro__link:hover {
  color: #2AAB39;
  background: #fff;
  border: 1px solid #2AAB39;
  opacity: 1;
}
.page-top .pamphlet-intro__link::after {
  content: "";
  width: 6px;
  height: 14px;
  display: inline-block;
  background-color: currentColor;
  mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
  -webkit-mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-intro__link::after {
    width: 8px;
    height: 15px;
  }
}
.page-top .pamphlet__bottom {
  padding: 82px 0 40px;
  padding-inline: 17px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__bottom {
    position: absolute;
    right: 0;
    bottom: 73px;
    padding: 284px min(150px, 10.4166666667vw) 40px min(68px, 4.7222222222vw);
    border-radius: 0 0 0 30px;
    margin-left: 30px;
  }
}
.page-top .pamphlet__bottom:before {
  content: "";
  position: absolute;
  inset: 0;
  background: #5575B5;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__bottom:before {
    border-radius: 0 0 0 30px;
  }
}
.page-top .pamphlet__lists {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__lists {
    grid-template-columns: repeat(4, 1fr);
    gap: 40px;
    max-width: 760px;
  }
}
.page-top .pamphlet__card {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page-top .pamphlet-card {
  height: 100%;
}
.page-top .pamphlet-card__img {
  position: relative;
  width: 93.125%;
}
.page-top .pamphlet-card__img img {
  width: 100%;
  display: block;
  position: relative;
  z-index: 1;
}
.page-top .pamphlet-card__img::after {
  position: absolute;
  content: "";
  inset: 0;
  background: #0B2760;
  -webkit-transform: translate(10px, 10px);
          transform: translate(10px, 10px);
  z-index: 0;
}
.page-top .pamphlet-card__description {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-top: 20px;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page-top .pamphlet-card__number {
  font-size: 1.4rem;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-card__number {
    font-size: 1.6rem;
  }
}
.page-top .pamphlet-card__number span {
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-card__number span {
    font-size: 2.4rem;
  }
}
.page-top .pamphlet-card__text {
  margin-top: 4px;
  font-size: 1.4rem;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-card__text {
    font-size: 1.6rem;
  }
}
.page-top .pamphlet-card__link {
  margin-top: 10px;
  color: #fff;
  background: #0B2760;
  font-size: 1.4rem;
  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;
  gap: 6px;
  padding: 5px;
  border: 1px solid transparent;
  -webkit-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-card__link {
    font-size: 1.6rem;
    gap: 10px;
    padding: 7px;
  }
}
.page-top .pamphlet-card__link:hover {
  color: #0B2760;
  border: 1px solid #0B2760;
  background: #fff;
  opacity: 1;
}
.page-top .pamphlet-card__link::after {
  content: "";
  width: 6px;
  height: 14px;
  display: inline-block;
  background-color: currentColor;
  mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
  -webkit-mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet-card__link::after {
    width: 8px;
    height: 15px;
  }
}
.page-top .pamphlet__btn {
  margin: 30px auto 0;
  color: #0B2760;
  border: 1px solid #0B2760;
  background: #fff;
  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: 12px;
  padding: 7px;
  max-width: 240px;
  font-weight: 400;
  -webkit-transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  transition: color 0.3s ease, background-color 0.3s ease, border-color 0.3s ease;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__btn {
    margin-top: 40px;
    font-size: 2.4rem;
    gap: 20px;
    padding: 10px;
    max-width: 400px;
  }
}
.page-top .pamphlet__btn:hover {
  background: #0B2760;
  color: #fff;
  opacity: 1;
}
.page-top .pamphlet__btn::after {
  content: "";
  width: 7px;
  height: 13px;
  display: inline-block;
  background-color: currentColor;
  mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
  -webkit-mask: url("/assets/images/common/icon-white.svg") no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .page-top .pamphlet__btn::after {
    width: 12px;
    height: 23px;
  }
}
.page-top {
  /* ------------------------------
  SDGs
  ------------------------------ */
}
.page-top .SDGs-activities {
  margin-top: 80px;
  padding: 60px 0;
  background: #CBE0FF;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .page-top .SDGs-activities {
    margin-top: 0;
  }
}
.page-top .SDGs-activities__heading {
  color: #0B2760;
  position: relative;
  z-index: 2;
}
.page-top .SDGs-activities__contents {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 900px) {
  .page-top .SDGs-activities__contents {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: min(40px, 2.7777777778vw);
    max-width: 1100px;
    margin: 50px auto 0;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.page-top .SDGs-activities__contents li {
  background: #fff;
  border-radius: 0 30px 0 30px;
}
.page-top .SDGs-activities__card {
  background: #fff;
  border-radius: 0 30px 0 30px;
  overflow: hidden;
  max-width: 400px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .page-top .SDGs-activities__card {
    height: 100%;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.page-top .SDGs-activities__img {
  width: 100%;
  aspect-ratio: 350/130; /* 比率固定したい場合 */
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .page-top .SDGs-activities__img {
    aspect-ratio: 340/130;
  }
}
.page-top .SDGs-activities__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-top .SDGs-activities__card-contents {
  padding: 11px 20px 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 768px) {
  .page-top .SDGs-activities__card-contents {
    padding: 17px 30px;
  }
}
.page-top .SDGs-activities__title {
  font-size: 1.8rem;
  font-weight: 700;
  color: #2B52A2;
}
@media screen and (min-width: 768px) {
  .page-top .SDGs-activities__title {
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    line-height: 1.4;
    min-height: 2.8em;
  }
}
.page-top .SDGs-activities__text {
  margin-top: 16px;
  margin-bottom: 18px;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media screen and (min-width: 768px) {
  .page-top .SDGs-activities__text {
    margin-top: 15px;
  }
}
.page-top .SDGs-activities__link {
  margin-top: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  cursor: pointer;
}
.page-top .SDGs-activities__link::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 15px;
  background: url(/assets/images/common/icon-main-color.svg) no-repeat center center/contain;
}
.page-top .SDGs-activities__deco {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 340px;
  z-index: 0;
}
@media screen and (min-width: 900px) {
  .page-top .SDGs-activities__deco {
    width: auto;
    height: 100%;
  }
}
.page-top .SDGs-activities__deco img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
.page-top {
  /* ------------------------------
  会員関連・関連事業
  ------------------------------ */
}
.page-top .link-list {
  margin: 80px auto;
}
@media screen and (min-width: 768px) {
  .page-top .link-list {
    margin: 50px auto;
  }
}
.page-top .link-list__contents {
  background: #EAF1FE;
  border-radius: 0 30px 0 30px;
  padding: 30px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__contents {
    max-width: 1100px;
    margin: 0 auto;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 19.5px;
  }
}
@media screen and (min-width: 1200px) {
  .page-top .link-list__contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 28px min(50px, 3.4722222222vw);
  }
}
.page-top .link-list__contents .line {
  display: block;
  background: #2B52A2;
  width: 100%;
  height: 1px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 1200px) {
  .page-top .link-list__contents .line {
    width: 1px;
    height: auto;
    -ms-flex-item-align: stretch;
        align-self: stretch;
  }
}
.page-top .link-list__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 22px;
  position: relative;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__top {
    width: calc((100% - 20px) / 3);
  }
}
@media screen and (min-width: 1200px) {
  .page-top .link-list__top {
    width: min(240px, 16.6666666667vw);
  }
}
.page-top .link-list__top .link-list__btn {
  width: 100%;
}
.page-top .link-list__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 22px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__bottom {
    width: 100%;
  }
}
.page-top .link-list__btn-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 22px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    width: 100%;
    gap: 10px;
  }
}
@media screen and (min-width: 1200px) {
  .page-top .link-list__btn-wrap {
    gap: 22px;
  }
}
.page-top .link-list__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.page-top .link-list__title-ja {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  font-size: 2rem;
  font-weight: 700;
  color: #2B52A2;
  padding-right: 17px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__title-ja {
    font-size: 2.4rem;
    gap: 15px;
  }
}
.page-top .link-list__title-ja img {
  width: 28px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__title-ja img {
    width: 34px;
  }
}
.page-top .link-list__title-en {
  font-family: "Lato", sans-serif;
  color: #2B52A2;
  font-size: 1.4rem;
  font-weight: 400;
}
.page-top .link-list__btn {
  background: #fff;
  border-radius: 10px;
  padding: 15px;
  height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn {
    padding: 19px 16px;
    gap: 20px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
@media screen and (min-width: 1200px) {
  .page-top .link-list__btn {
    padding: 19px 16px;
    gap: min(10px, 0.6944444444vw);
    width: min(240px, 16.6666666667vw);
  }
}
.page-top .link-list__btn:hover {
  opacity: 1;
  background: #2B52A2;
  color: #fff;
}
.page-top .link-list__btn:hover .icon-normal {
  opacity: 0;
}
.page-top .link-list__btn:hover .link-list__btn-icon {
  color: #fff;
}
.page-top .link-list__btn:hover .link-list__btn-icon svg {
  fill: none;
  stroke: #fff;
}
.page-top .link-list__btn:hover .link-list__btn-icon.insurance svg path {
  -webkit-transition: fill 0.2s ease, stroke 0.2s ease;
  transition: fill 0.2s ease, stroke 0.2s ease;
}
.page-top .link-list__btn:hover .link-list__btn-icon.insurance svg path[fill="#2B52A2"] {
  fill: #fff;
}
.page-top .link-list__btn:hover .link-list__btn-icon.insurance svg path[fill=white] {
  fill: #2B52A2;
}
.page-top .link-list__btn:hover .link-list__btn-icon.insurance svg path[stroke="#2B52A2"] {
  stroke: #fff;
}
.page-top .link-list__btn-icon {
  color: #2B52A2;
}
.page-top .link-list__btn-icon svg {
  height: 100%;
  width: 100%;
  fill: none;
  stroke: currentColor;
}
.page-top .link-list__btn-icon.members {
  width: 34px;
  height: 34px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn-icon.members {
    width: 40px;
    height: 40px;
  }
}
.page-top .link-list__btn-icon.members img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
  display: block;
  -webkit-transition: 0 0.3s ease-in-out;
  transition: 0 0.3s ease-in-out;
}
.page-top .link-list__btn-icon.members .icon-normal {
  z-index: 2;
}
.page-top .link-list__btn-icon.application {
  height: 36px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn-icon.application {
    height: 42px;
  }
}
.page-top .link-list__btn-icon.helmet {
  width: 34px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn-icon.helmet {
    width: 41px;
  }
}
.page-top .link-list__btn-icon.insurance {
  width: 34px;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn-icon.insurance {
    width: 41px;
  }
}
.page-top .link-list__btn-title {
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .page-top .link-list__btn-title {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 1200px) {
  .page-top .link-list__btn-title {
    font-size: 1.7rem;
  }
}

.page-news .news-archive {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-news .news-archive {
    margin-bottom: 40px;
  }
}
.page-news .news__lists--archive .news__list {
  padding: 30px 0px;
  border-bottom: 1px solid #C0CCE4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
@media screen and (min-width: 768px) {
  .page-news .news__lists--archive .news__list {
    padding: 40px 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
  }
}
.page-news .news__lists--archive .news__list:first-child {
  padding-top: 0;
}
.page-news .news__lists--archive .news-list__date {
  font-family: "Lato", sans-serif;
  letter-spacing: 0.01em;
}
.page-news .news__lists--archive .news-list__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
}
.page-news .news__lists--archive .news-list__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-news .news__lists--archive .news-list__text {
  font-size: 1.6rem;
  display: inline-block;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  font-weight: 400;
}
.page-news .news__lists--archive .tag {
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0px 10px;
  color: #fff;
  background: #90A4CC;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .page-news .news__lists--archive .tag {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    letter-spacing: 0.02em;
  }
}
.page-news .news__lists--archive .tag--new {
  background: #CC0000;
}
.page-news .news__lists--archive .tag--end {
  background: #666666;
}

.page-news-detail .tag {
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0px 10px;
  color: #fff;
  background: #90A4CC;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .page-news-detail .tag {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    letter-spacing: 0.1em;
  }
}
.page-news-detail .tag--new {
  background: #CC0000;
}
.page-news-detail .tag--end {
  background: #666666;
}
.page-news-detail .article__meta--news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  margin-bottom: 20px;
}
.page-news-detail .article__date {
  font-family: "Lato", sans-serif;
  letter-spacing: 0.01em;
}
.page-news-detail .article__meta-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
}
.page-news-detail .article__title {
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .page-news-detail .article__title {
    margin-bottom: 60px;
  }
}

.page-privacy h2 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-privacy h2 {
    font-size: 3rem;
  }
}
.page-privacy .privacy__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
.page-privacy .privacy__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-privacy .privacy__list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.page-privacy .privacy__list ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  line-height: 1.7;
}
.page-privacy .privacy__list ul li::before {
  content: "";
  display: inline-block;
  margin-top: 8px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #5575B5;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.page-privacy .privacy__description {
  line-height: 1.7;
  margin-bottom: 18px;
}
@media screen and (min-width: 768px) {
  .page-privacy .privacy__description {
    margin-bottom: 40px;
  }
}
.page-privacy .privacy__text {
  line-height: 1.7;
}
.page-privacy .privacy__wrap {
  line-height: 1.7;
}
.page-privacy .privacy__name {
  font-weight: 700;
}
.page-privacy .privacy__note {
  font-size: 14px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  line-height: 1.7;
}
.page-privacy .privacy__note::before {
  content: "※";
}
.page-privacy address {
  font-style: normal;
}

.page-members .member-filter {
  background-color: #EAF1FE;
  border-radius: 0 20px 0 20px;
  padding: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .page-members .member-filter {
    border-radius: 0 30px 0 30px;
    padding: 30px;
    -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: 20px;
  }
}
.page-members .member-filter__select {
  width: 100%;
  max-width: 410px;
  padding: 16px 13px;
  background-color: #fff;
  font-size: 1.4rem;
  /* ▼ 矢印をカスタム */
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  background-image: url("/assets/images/common/icon-select.svg");
  background-repeat: no-repeat;
  background-position: right 13px center;
  background-size: 12px 6px;
}
@media screen and (min-width: 768px) {
  .page-members .member-filter__select {
    font-size: 1.6rem;
    padding: 13px 16px;
    background-size: 16px 8px;
    background-position: right 16px center;
  }
}
.page-members .member-filter__select:focus {
  outline: none;
  border-color: #4c6fff;
  -webkit-box-shadow: 0 0 0 2px rgba(76, 111, 255, 0.2);
          box-shadow: 0 0 0 2px rgba(76, 111, 255, 0.2);
}
.page-members .member-filter__note {
  margin-top: 11px;
}
.page-members .member-filter__note p {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-members .member-filter__note p::before {
  content: "※";
}
.page-members .member-table__wrap {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-members .member-table__wrap {
    margin-top: 39px;
  }
}
.page-members .member-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  position: relative;
}
.page-members .member-table__scroll-icon {
  position: absolute;
  top: 145px;
  right: 90px;
  z-index: 2;
  width: 170px;
  height: auto;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.page-members .member-table__scroll-icon.is-visible {
  opacity: 1;
}
.page-members .member-table caption {
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 1.4;
  margin-bottom: 30px;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .page-members .member-table caption {
    font-size: 3rem;
    margin-bottom: 20px;
  }
}
.page-members .member-table table {
  width: 1100px;
  border-collapse: collapse;
  table-layout: fixed;
  color: #000;
  position: relative;
  table-layout: fixed;
}
.page-members .member-table table tr:nth-child(even) {
  background: #F3F3F3;
}
.page-members .member-table table .col-name,
.page-members .member-table table .col-tel {
  width: 26.3636363636%;
}
.page-members .member-table table .col-address {
  width: 47.2727272727%;
}
.page-members .member-table table th {
  background-color: #2B52A2;
  color: #fff;
  border: 1px solid #BEBEBE;
  border-bottom: none;
  padding: 15px;
  font-weight: 700;
  line-height: 1.7;
}
.page-members .member-table table td {
  border: 1px solid #BEBEBE; /* 外枠グレー */
  padding: 15.5px;
  line-height: 1.7;
}
.page-members .member-table table td:nth-child(2) a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  width: 100%;
}
.page-members .member-table table td:nth-child(2) a::before {
  content: "";
  width: 15px;
  height: 15px;
  background: url("/assets/images/common/icon-tel-main-color.svg") no-repeat center center/contain;
}
.page-members .member-table table td:nth-child(3) a {
  display: block;
  width: 100%;
  position: relative;
}

@media screen and (min-width: 768px) {
  .page-interview .page-interview__title-wrapper {
    padding-inline: 80px;
    max-width: 1260px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .page-interview .page-interview__title-bg {
    background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
    background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
    padding: 70px 60px 170px;
    position: relative;
    z-index: 0;
  }
}
@media screen and (min-width: 1200px) {
  .page-interview .page-interview__title-bg {
    padding-bottom: 71px;
  }
}
.page-interview .page-interview__title-bg::after {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-interview .page-interview__title-bg::after {
    display: block;
    position: absolute;
    content: "";
    width: min(577px, 40.0694444444vw);
    height: min(319px, 22.1527777778vw);
    right: 0;
    bottom: 0;
    background: url(/assets/images/interview/interview-h2-deco-pc.svg) no-repeat center center/contain;
  }
}
.page-interview .page-interview__title {
  padding: 6.6666666667vw 4.8vw 3.7333333333vw;
  background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
  background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .page-interview .page-interview__title {
    padding: 0;
    background: none;
  }
}
.page-interview .page-interview__title .normal {
  font-size: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-bottom: 2px;
}
@media screen and (min-width: 768px) {
  .page-interview .page-interview__title .normal {
    font-size: 2.4rem;
    letter-spacing: 0.04em;
    gap: 23px;
    margin-bottom: 5px;
  }
}
.page-interview .page-interview__title .normal .sm {
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .page-interview .page-interview__title .normal .sm {
    font-size: 2rem;
  }
}
.page-interview .page-interview__title .mincho {
  font-family: "Zen Old Mincho", serif;
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: -0.13em;
}
@media screen and (min-width: 500px) {
  .page-interview .page-interview__title .mincho {
    font-size: min(3rem, 6.4vw);
  }
}
@media screen and (min-width: 900px) {
  .page-interview .page-interview__title .mincho {
    font-size: 4rem;
  }
}
.page-interview .page-interview__title .mincho .lg {
  font-size: 3.5rem;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 500px) {
  .page-interview .page-interview__title .mincho .lg {
    font-size: min(5rem, 9.3333333333vw);
  }
}
@media screen and (min-width: 900px) {
  .page-interview .page-interview__title .mincho .lg {
    font-size: 6rem;
  }
}
.page-interview .page-interview__title .mincho .md {
  font-size: 2.9rem;
  letter-spacing: -0.03em;
}
@media screen and (min-width: 500px) {
  .page-interview .page-interview__title .mincho .md {
    font-size: min(4rem, 7.7333333333vw);
  }
}
@media screen and (min-width: 900px) {
  .page-interview .page-interview__title .mincho .md {
    font-size: 5rem;
  }
}
.page-interview .page-interview__title .normal,
.page-interview .page-interview__title .mincho {
  position: relative;
  z-index: 1;
}
.page-interview .page-interview__title::after {
  position: absolute;
  content: "";
  width: min(298px, 68.5333333333vw);
  height: min(166px, 38.1333333333vw);
  right: 0;
  bottom: 0;
  background: url(/assets/images/interview/interview-h2-deco-sp.svg) no-repeat center center/contain;
  z-index: 0;
}
@media screen and (min-width: 768px) {
  .page-interview .page-interview__title::after {
    display: none;
  }
}
.page-interview .page-interview__title .br {
  display: block;
}
@media screen and (min-width: 640px) {
  .page-interview .page-interview__title .br {
    display: none;
  }
}
.page-interview .interview__main-text {
  text-align: center;
  margin-top: 30px;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .page-interview .interview__main-text {
    text-align: left;
    font-size: 1.8rem;
    margin-top: 24px;
  }
}
.page-interview .interview-list {
  margin: 30px auto 40px;
  max-width: 400px;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-list {
    margin-top: 56px;
    max-width: none;
  }
}
.page-interview .interview-list ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-list ul {
    gap: 60px;
  }
}
.page-interview .interview-list__card article a {
  border-radius: 0 30px 0 30px;
  border: 1px solid #2B52A2;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-list__card article a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media screen and (min-width: 900px) {
  .page-interview .interview-list__card article a {
    padding: 50px 40px;
    gap: 30px;
  }
}
.page-interview .interview-card__img {
  border-radius: 0 30px 0 0;
  aspect-ratio: 310/244;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-card__img {
    max-width: 356px;
    width: 35.6vw;
  }
}
.page-interview .interview-card__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-interview .interview-card__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-interview .interview-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  padding-bottom: 20px;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .page-interview .interview-card__meta {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 14px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-bottom: 28px;
  }
}
.page-interview .interview-card__meta::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  display: block;
  height: 3px;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #2B52A2), color-stop(59.9369085174%, #AABADA));
  background: linear-gradient(to right, #2B52A2 0 59.9369085174%, #AABADA 59.9369085174% 100%);
}
.page-interview .interview-card__company {
  padding: 4px 15px;
  border: 1px solid #2B52A2;
  font-weight: 700;
  line-height: 1.4;
  color: #2B52A2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.page-interview .interview-card__name {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 900px) {
  .page-interview .interview-card__name {
    font-size: 3rem;
  }
}
.page-interview .interview-card__content {
  margin-top: 14px;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-card__content {
    margin-top: 30px;
  }
}
.page-interview .interview-card__title {
  font-size: 1.8rem;
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (min-width: 900px) {
  .page-interview .interview-card__title {
    font-size: 2rem;
  }
}
.page-interview .interview-card__text {
  margin-top: 14px;
  line-height: 1.7;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-card__text {
    margin-top: 30px;
    -webkit-line-clamp: 3;
  }
}
.page-interview .interview-card__link {
  margin-top: 11px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px;
  line-height: 1.7;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
@media screen and (min-width: 768px) {
  .page-interview .interview-card__link {
    gap: 10px;
  }
}
.page-interview .interview-card__link img {
  width: 8px;
}
.page-interview .interview-card__link::after {
  content: "";
  width: 8px;
  height: 15px;
  background: url(/assets/images/common/icon-main-color.svg) no-repeat center center/contain;
}

.page-interview-detail h1.article__title {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-interview-detail h1.article__title {
    margin-bottom: 40px;
  }
}
.page-interview-detail .interview-article__profile {
  background: #EAF1FE;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  padding: 20px;
  margin-bottom: 60px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-interview-detail .interview-article__profile {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(60px, 4.1666666667vw);
    padding: min(50px, 3.4722222222vw);
  }
}
@media screen and (min-width: 900px) {
  .page-interview-detail .interview-article__profile::after {
    position: absolute;
    content: "";
    bottom: 11px;
    right: 25px;
    width: min(259px, 17.9861111111vw);
    height: min(180px, 12.5vw);
    background-image: url(/assets/images/interview/article-profile__deco.webp);
    background-repeat: no-repeat;
    background-size: contain;
  }
}
.page-interview-detail .article-profile__img {
  border-radius: 0 30px 0 0;
  overflow: hidden;
  max-width: 400px;
  margin: 0 auto;
  aspect-ratio: 310/215;
}
@media screen and (min-width: 768px) {
  .page-interview-detail .article-profile__img {
    width: 43%;
    max-width: 430px;
    aspect-ratio: 430/298;
    margin: 0;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.page-interview-detail .article-profile__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-interview-detail .article-profile__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-interview-detail .article-profile__team {
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 10px;
}
@media screen and (min-width: 900px) {
  .page-interview-detail .article-profile__team {
    font-size: 2.6rem;
    margin-bottom: 20px;
  }
}
.page-interview-detail .article-profile__team .department {
  margin-left: 10px;
}
.page-interview-detail .article-profile__info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  padding-bottom: 20px;
  gap: 5px;
}
.page-interview-detail .article-profile__info .name {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 900px) {
  .page-interview-detail .article-profile__info .name {
    font-size: 3.6rem;
  }
}
.page-interview-detail .article-profile__info .name span {
  font-size: 2rem;
}
@media screen and (min-width: 900px) {
  .page-interview-detail .article-profile__info .name span {
    font-size: 2.4rem;
  }
}
.page-interview-detail .article-profile__info .age {
  font-weight: 700;
  line-height: 1.4;
  font-size: 2rem;
}
@media screen and (min-width: 900px) {
  .page-interview-detail .article-profile__info .age {
    font-size: 2.4rem;
  }
}
.page-interview-detail .article-profile__info::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  display: block;
  height: 3px;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #2B52A2), color-stop(83.3333333333%, #AABADA));
  background: linear-gradient(to right, #2B52A2 0 83.3333333333%, #AABADA 83.3333333333% 100%);
}
@media screen and (min-width: 768px) {
  .page-interview-detail .article-profile__info::after {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #2B52A2), color-stop(50%, #AABADA));
    background: linear-gradient(to right, #2B52A2 0 50%, #AABADA 50% 100%);
  }
}
.page-interview-detail .article-profile__info-sub {
  padding-top: 10px;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 900px) {
  .page-interview-detail .article-profile__info-sub {
    padding-top: 20px;
  }
}
.page-interview-detail .article-profile__entry-year {
  font-size: 2rem;
  font-weight: 700;
}
@media screen and (min-width: 900px) {
  .page-interview-detail .article-profile__entry-year {
    font-size: 2.4rem;
  }
}
.page-interview-detail .article-profile__interview-date {
  margin-top: 8px;
}

.page-about .page-about__inner {
  margin-bottom: 80px;
}
@media screen and (min-width: 768px) {
  .page-about .page-about__inner {
    margin-bottom: 120px;
  }
}
.page-about .about__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 31px;
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-about .about__lists {
    max-width: none;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 900px) {
  .page-about .about__lists {
    gap: 60px;
  }
}
.page-about .about__list a {
  display: block;
  border: 1px solid #2B52A2;
  border-radius: 0 30px 0 30px;
  overflow: hidden;
}
.page-about .about-list__img {
  aspect-ratio: 518/260;
  width: 100%;
  overflow: hidden;
}
.page-about .about-list__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-about .about-list__title {
  font-size: 2.2rem;
  line-height: 1.1818181818;
  font-weight: 700;
  padding: 17.5px 26px;
  background: #2B52A2;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 21px;
}
@media screen and (min-width: 768px) {
  .page-about .about-list__title {
    font-size: 2.4rem;
    padding: 20px 30px;
    gap: 24px;
  }
}
.page-about .about-list__title::after {
  content: "";
  background: url(/assets/images/common/icon-white.svg) center center/cover;
  width: 8.75px;
  height: 16.67px;
}
@media screen and (min-width: 768px) {
  .page-about .about-list__title::after {
    width: 10px;
    height: 19px;
  }
}

.page-overview h2 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-overview h2 {
    margin-bottom: 40px;
  }
}
.page-overview .overview-main {
  padding-top: 40px;
  padding-bottom: 30px;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-overview .overview-main {
    padding-top: 0;
    padding-bottom: 40px;
  }
}
.page-overview .overview-main__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
}
.page-overview .background {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-overview .background {
    padding: 40px 0;
  }
}
.page-overview .background__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 18px;
}
@media screen and (min-width: 768px) {
  .page-overview .background__text {
    gap: 19px;
  }
}
.page-overview .history {
  padding-top: 30px;
  padding-bottom: 280px;
  position: relative;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 900px) {
  .page-overview .history {
    padding-top: 40px;
    padding-bottom: 251px;
  }
}
.page-overview .history .history-list {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
  margin-top: 20px;
  padding: 0 10px;
}
@media screen and (min-width: 900px) {
  .page-overview .history .history-list {
    padding: 30px 20px 0px;
  }
}
.page-overview .history .history-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 31px;
  position: relative;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media screen and (min-width: 900px) {
  .page-overview .history .history-list__item {
    gap: 15px;
  }
}
@media screen and (min-width: 1200px) {
  .page-overview .history .history-list__item {
    gap: 26px;
  }
}
.page-overview .history .history-list__item::before {
  content: "";
  position: absolute;
  top: 5px;
  left: 0px;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #90A4CC;
}
.page-overview .history .history-list__item::after {
  content: "";
  position: absolute;
  top: 19px;
  left: 6px;
  width: 2px;
  height: calc(100% + 40px);
  background: #E4E4E4;
}
.page-overview .history .history-list__item:last-child::after {
  display: none;
}
.page-overview .history .history-list__year {
  min-width: 67px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding-left: 23px;
  color: #5575B5;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
  white-space: nowrap;
}
@media screen and (min-width: 900px) {
  .page-overview .history .history-list__year {
    gap: 10px;
    -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;
    width: 235px;
  }
}
.page-overview .history .history-list__year-main {
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 700;
  display: block;
  font-family: "Lato", sans-serif;
}
.page-overview .history .history-list__year-sub {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.1875;
  display: block;
}
.page-overview .history .history-list__text {
  line-height: 1.7;
}
.page-overview .history .history-deco {
  position: absolute;
  bottom: 53px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 333px;
}
@media screen and (min-width: 900px) {
  .page-overview .history .history-deco {
    bottom: 58px;
    left: auto;
    -webkit-transform: none;
            transform: none;
    right: 0;
  }
}
.page-overview .logo {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-overview .logo {
    padding-top: 40px;
  }
}
.page-overview .logo__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  padding-bottom: 20px;
}
@media screen and (min-width: 900px) {
  .page-overview .logo__contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    padding-bottom: 25px;
  }
}
.page-overview .logo__img {
  width: 163px;
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 900px) {
  .page-overview .logo__img {
    width: 22.5%;
  }
}
.page-overview .basic-information {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-overview .basic-information {
    padding-top: 40px;
  }
}
.page-overview .basic-information__table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  border: 1px solid #BEBEBE;
}
.page-overview .basic-information__table .table__header {
  width: 80px;
  background: #E4E4E4;
  padding: 15px 0;
  font-weight: 700;
  line-height: 1.7;
  border: 1px solid #BEBEBE;
}
@media screen and (min-width: 900px) {
  .page-overview .basic-information__table .table__header {
    width: 180px;
  }
}
.page-overview .basic-information__table .table__cell {
  border: 1px solid #BEBEBE;
  padding: 15px;
  line-height: 1.7;
}
.page-overview .access {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-overview .access {
    padding-top: 40px;
  }
}
.page-overview .access iframe {
  width: 100%;
  aspect-ratio: 800/424;
}

.page-guideline__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .page-guideline__contents {
    margin-top: 0;
  }
}
.page-guideline .guideline-chapter__title {
  margin-bottom: 30px;
}
.page-guideline .guideline-chapter__number {
  margin-right: 19px;
}
@media screen and (min-width: 768px) {
  .page-guideline .guideline-chapter__number {
    margin-right: 22px;
  }
}
.page-guideline .guideline-chapter__text {
  text-align: right;
}
.page-guideline .guideline-chapter__contents {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 19px;
}
@media screen and (min-width: 768px) {
  .page-guideline .guideline-chapter__contents {
    margin-top: 13px;
  }
}
.page-guideline .guideline-chapter__list-bottom {
  padding: 0 15px 0 33px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
@media screen and (min-width: 768px) {
  .page-guideline .guideline-chapter__list-bottom {
    padding-left: 28px;
    gap: 10px;
  }
}
.page-guideline .guideline-chapter__list-bottom li {
  padding-left: 16px;
  line-height: 1.7;
}
.page-guideline .guideline-chapter__list-bottom li::marker {
  font-weight: 700;
}
.page-guideline .guideline-article__title {
  font-size: 1.6rem;
  line-height: 1.7;
  font-weight: 400;
  padding: 0;
  margin: 0;
}
.page-guideline .guideline-article__title::after {
  display: none;
}
.page-guideline .guideline__table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  margin-top: 10px;
}
.page-guideline .guideline__article-number {
  width: 80px;
  background: #E4E4E4;
  padding: 16px 0;
  font-weight: 700;
  line-height: 1.7;
  border: 1px solid #BEBEBE;
  border-right: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
@media screen and (min-width: 900px) {
  .page-guideline .guideline__article-number {
    width: 180px;
    line-height: 1.3;
  }
}
.page-guideline .guideline__article-text {
  border: 1px solid #BEBEBE;
  padding: 15px 14px;
  line-height: 1.7;
}
.page-guideline .guideline__article-text > * {
  margin-top: 10px;
}
.page-guideline .guideline__article-text ol {
  padding-left: 23px;
}
@media screen and (min-width: 768px) {
  .page-guideline .guideline__article-text ol {
    padding-left: 10px;
  }
}

.page-organization .heading-lv2 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-organization .heading-lv2 {
    font-size: 2.6rem;
  }
}
@media screen and (min-width: 900px) {
  .page-organization .heading-lv2 {
    font-size: 3rem;
  }
}
.page-organization .heading-lv2 span {
  margin-left: 25px;
}
@media screen and (min-width: 768px) {
  .page-organization .heading-lv2 span {
    margin-left: 30px;
  }
}
.page-organization .organization-chart {
  margin-bottom: 30px;
  margin-top: 41px;
}
@media screen and (min-width: 768px) {
  .page-organization .organization-chart {
    margin-top: 0;
  }
}
.page-organization .organization-chart__body {
  background: #F3F3F3;
  padding: 10px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .page-organization .organization-chart__body {
    padding: 40px;
  }
}
.page-organization .organization-chart__body img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
}
@media screen and (min-width: 768px) {
  .page-organization .organization-chart__body img {
    width: 83.3333333333%;
  }
}
.page-organization .organization-list {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  position: relative;
}
.page-organization .organization-list__scroll-icon {
  position: absolute;
  top: 60px;
  right: 90px;
  z-index: 2;
  width: 170px;
  height: auto;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.page-organization .organization-list__scroll-icon.is-visible {
  opacity: 1;
}
.page-organization .organization-list__table {
  min-width: 800px;
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #BEBEBE;
  table-layout: fixed;
  color: #000;
  position: relative;
}
@media screen and (min-width: 1200px) {
  .page-organization .organization-list__table {
    width: 100%;
  }
}
.page-organization .organization-list__table tr:nth-child(even) {
  background: #F3F3F3;
}
.page-organization .organization-list__table th {
  background-color: #2B52A2;
  color: #fff;
  border: 1px solid #BEBEBE;
  padding: 17px 16px;
  font-weight: 700;
  width: 210px;
}
@media screen and (min-width: 768px) {
  .page-organization .organization-list__table th {
    width: min(200px, 25%);
  }
}
.page-organization .organization-list__table td {
  border: 1px solid #BEBEBE; /* 外枠グレー */
  padding: 19px 17px;
  width: 210px;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .page-organization .organization-list__table td {
    width: 200px;
    padding: 17px;
  }
}
@media screen and (min-width: 768px) {
  .page-organization .organization-list__table td:nth-child(3) {
    padding: 17px 12px;
  }
}

.page-about-activities .heading-lv2 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-about-activities .heading-lv2 {
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 768px) {
  .page-about-activities .heading-lv3 {
    margin-bottom: 40px;
  }
}
.page-about-activities .heading-lv4 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-about-activities .heading-lv4 {
    margin-bottom: 40px;
  }
}
.page-about-activities .text-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-about-activities .text-number-block {
  counter-reset: num;
  list-style: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 19px;
}
.page-about-activities .text-number-block > li {
  counter-increment: num;
}
.page-about-activities .text-number-block > li .text-number-block__title {
  display: grid;
  grid-template-columns: 25px 1fr;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  line-height: 1.7;
}
.page-about-activities .text-number-block > li .text-number-block__title::before {
  content: counter(num) ".";
  font-weight: 700;
  text-align: left;
}
.page-about-activities .text-number-block__title {
  line-height: 1.7;
  margin-bottom: 18px;
}
.page-about-activities .text-number-block.--other .text-number-block__title {
  margin-bottom: 0px;
}
.page-about-activities .text-number-block.--other ul {
  margin-top: 18px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  padding: 0 12px 0 35px;
}
@media screen and (min-width: 768px) {
  .page-about-activities .text-number-block.--other ul {
    padding-left: 40px;
  }
}
.page-about-activities .text-number-block.--other ul li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.7;
}
.page-about-activities .text-number-block.--other ul li::before {
  display: inline-block;
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  border-radius: 50%;
}
.page-about-activities__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .page-about-activities__contents {
    gap: 40px;
    margin-top: 0;
  }
}
.page-about-activities .about-activities__lead-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 19px;
  padding-bottom: 30px;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-about-activities .about-activities__lead-wrap {
    padding-bottom: 40px;
  }
}
.page-about-activities .about-activities__item {
  margin-bottom: 29px;
}
@media screen and (min-width: 768px) {
  .page-about-activities .about-activities__item {
    margin-bottom: 40px;
  }
}
.page-about-activities .about-activities__item:last-of-type {
  margin-bottom: 0;
}
.page-about-activities .about-activities__lists {
  counter-reset: h3-number;
}
.page-about-activities .about-activities__group + .about-activities__group {
  margin-top: 29px;
}
@media screen and (min-width: 768px) {
  .page-about-activities .about-activities__group + .about-activities__group {
    margin-top: 40px;
  }
}
.page-about-activities .about-activities__bottom {
  margin-top: 20px;
}
.page-about-activities .border-list__box {
  padding: 27px;
  border: 3px solid #2B52A2;
  line-height: 1.7;
  margin-top: 30px;
  counter-reset: num;
}
@media screen and (min-width: 768px) {
  .page-about-activities .border-list__box {
    margin-top: 39px;
  }
}
.page-about-activities .border-list__box ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-about-activities .border-list__box ol {
    padding-left: 10px;
  }
}
.page-about-activities .border-list__box ol li {
  counter-increment: num;
  display: grid;
  grid-template-columns: 25px 1fr;
  -webkit-column-gap: 8px;
     -moz-column-gap: 8px;
          column-gap: 8px;
  line-height: 1.7;
}
.page-about-activities .border-list__box ol li::before {
  content: counter(num) ".";
  font-weight: 700;
  text-align: left;
}
.page-about-activities .border-list__title {
  margin-bottom: 20px;
}
.page-about-activities .border-list__text {
  padding-left: 20px;
  margin-bottom: 20px;
}
.page-about-activities .numbered-list {
  list-style: none;
  margin-left: 0;
  padding-left: 0;
  counter-reset: item;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-about-activities .numbered-list li {
  line-height: 1.7;
  counter-increment: item;
  position: relative;
}
.page-about-activities .numbered-list__title {
  position: relative;
  padding-left: 33px;
  margin-bottom: 18px;
}
.page-about-activities .numbered-list__title::before {
  content: counter(item) ".";
  position: absolute;
  left: 0;
  top: 0;
}
@media screen and (min-width: 500px) {
  .page-architecture .architecture__top-wrapper {
    padding-inline: 12px;
  }
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture__top-wrapper {
    padding: 0 80px;
    max-width: 1260px;
    margin: 0 auto;
    position: relative;
  }
}
.page-architecture .architecture__title-wrapper {
  position: relative;
  width: 100%;
  padding: 0 12px;
}
@media screen and (min-width: 500px) {
  .page-architecture .architecture__title-wrapper {
    padding: 0;
  }
}
.page-architecture .architecture__title {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8.77px;
  font-size: 3.6rem;
  line-height: 1.2;
  padding: 15px 0 16.23px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture__title {
    padding: 2.0833333333vw 0 0 0;
    gap: 1px;
    font-size: 3.8333333333vw;
    line-height: 1.4;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture__title {
    padding: 25px 0 0 0;
    gap: 1px;
    font-size: 4.6rem;
    line-height: 1.4;
  }
}
.page-architecture .architecture__title .first {
  padding-left: 24px;
  font-size: 2.4rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture__title .first {
    font-size: 2.1666666667vw;
    padding-left: 4.9166666667vw;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture__title .first {
    font-size: 2.6rem;
    padding-left: 59px;
  }
}
.page-architecture .architecture__title .second {
  padding-left: 21.5px;
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture__title .second {
    padding-left: 4.5833333333vw;
  }
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture__title .second {
    padding-left: 55px;
  }
}
@media (min-width: 600px) {
  .page-architecture .architecture__title .second .br {
    display: none;
  }
}
.page-architecture .architecture__title .sm {
  font-size: 2.4rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture__title .sm {
    font-size: 2.5vw;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture__title .sm {
    font-size: 3rem;
  }
}
.page-architecture .architecture__title::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 3px;
  height: 100%;
  background: #2B52A2;
}
.page-architecture .architecture-title__deco {
  position: absolute;
  right: 0;
  top: 0;
  width: 37.3333333333vw;
  max-width: 200px;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-title__deco {
    width: 27.7777777778vw;
    max-width: none;
    right: 89px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture-title__deco {
    width: 472px;
    right: 89px;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }
}
.page-architecture .architecture__main-text {
  margin-top: 30px;
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 500px) {
  .page-architecture .architecture__main-text {
    margin-top: 0;
    padding: 3.5vw 0 1.25vw 5.0833333333vw;
    line-height: 1.6;
    text-align: left;
  }
  .page-architecture .architecture__main-text::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: #2B52A2;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture__main-text {
    margin-top: 0;
    padding: 42px 0 15px 61px;
    font-size: 1.8rem;
    line-height: 1.6;
    text-align: left;
  }
  .page-architecture .architecture__main-text::before {
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 3px;
    height: 100%;
    background: #2B52A2;
  }
}
.page-architecture .architecture-list {
  max-width: 500px;
  margin: 30px auto 41px;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-list {
    margin: 80px auto 57px;
    max-width: none;
  }
}
.page-architecture .architecture-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-cards {
    gap: 80px;
  }
}
.page-architecture .architecture-card {
  width: 100%;
}
.page-architecture .architecture-card a {
  position: relative;
  display: block;
  padding-top: 24px;
  padding-left: 10px;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card a {
    padding-left: 50px;
  }
}
.page-architecture .architecture-card__image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 310px;
  aspect-ratio: 310/208;
  z-index: 3;
  -webkit-box-shadow: 5px 5px 0 #1F4289;
          box-shadow: 5px 5px 0 #1F4289;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__image {
    aspect-ratio: 380/256;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture-card__image {
    width: 380px;
    aspect-ratio: 380/256;
  }
}
.page-architecture .architecture-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
  z-index: 1;
}
.page-architecture .architecture-card__body {
  margin-left: auto;
  background: #2B52A2;
  color: #fff;
  border-radius: 0 30px 0 30px;
  padding: 202px 40px 24px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__body {
    padding: 48px 30px 56px 280px;
    gap: 30px;
    min-height: 257px;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture-card__body {
    padding: 48px 84px 56px 380px;
    gap: 30px;
  }
}
.page-architecture .architecture-card__body::after {
  content: "";
  width: 12px;
  height: 24px;
  background: url(/assets/images/common/pager-next.svg) no-repeat center center/contain;
  position: absolute;
  bottom: 24px;
  right: 12px;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__body::after {
    width: 14px;
    height: 27px;
    right: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .page-architecture .architecture-card__body::after {
    width: 14px;
    bottom: 56px;
    right: 30px;
  }
}
.page-architecture .architecture-card__title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  padding-bottom: 13px;
  border-bottom: 3px solid #90A4CC;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__title-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 14px;
    padding-bottom: 28px;
    border-bottom: none;
    position: relative;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page-architecture .architecture-card__title-wrap::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #90A4CC), color-stop(44.37%, #5575B5));
    background: linear-gradient(to right, #90A4CC 0 44.37%, #5575B5 44.37% 100%);
  }
}
.page-architecture .architecture-card__label {
  font-weight: 700;
  line-height: 1.4;
  padding: 0 10px;
  border: 1px solid #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.page-architecture .architecture-card__title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__title {
    font-size: 2.8rem;
  }
}
.page-architecture .architecture-card__title-sub {
  font-size: 1.6rem;
  display: block;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__title-sub {
    font-size: 1.8rem;
    display: inline;
  }
}
.page-architecture .architecture-card__text {
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-architecture .architecture-card__text {
    font-size: 2rem;
  }
}

.page-featured-architecture-detail .article__title {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-featured-architecture-detail .article__title {
    margin-bottom: 20px;
  }
}
.page-for-kids .for-kids-main {
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .for-kids-main {
    margin-bottom: 60px;
  }
}
.page-for-kids .for-kids__title {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .for-kids__title {
    margin-bottom: 20px;
  }
}
.page-for-kids .for-kids__title .sm {
  font-size: 1.8rem;
}
.page-for-kids .for-kids__title .color {
  color: #2B52A2;
}
.page-for-kids .for-kids__top-wrap {
  margin-bottom: 80px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .for-kids__top-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 900px) {
  .page-for-kids .for-kids__top-wrap {
    padding-right: 40px;
  }
}
.page-for-kids .for-kids__top-wrap img {
  width: 120px;
  height: auto;
}
.page-for-kids .for-kids__lead {
  font-size: 2rem;
  line-height: 2.3;
}
.page-for-kids .for-kids__flyer {
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .for-kids__flyer {
    margin-bottom: 0;
  }
}
.page-for-kids .section-title--lv3 {
  border-radius: 0 30px 0 30px;
  border: 4px solid #2B52A2;
  color: #2B52A2;
  background-color: #EAF1FE;
  padding: 6px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .section-title--lv3 {
    padding: 16px 26px 18px;
    gap: 15px;
  }
}
.page-for-kids .section-title__icon {
  width: 42px;
  line-height: 1.4;
}
.page-for-kids .title--lv3 {
  font-size: 2.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-for-kids .title--lv3 {
    font-size: 2.6rem;
    -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: 15px;
  }
}
.page-for-kids .title--lv3 .label {
  background: #fff;
  display: block;
  padding: 6px 20px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 2rem;
  border-radius: 10px;
}
.page-for-kids .heading-lv4 {
  font-size: 1.6rem;
  line-height: 1.4;
  font-weight: 700;
  padding-left: 22px;
}
.page-for-kids .heading-lv4::before {
  display: none;
}
.page-for-kids .heading-lv4__text {
  position: relative;
  display: inline-block;
}
.page-for-kids .heading-lv4__text::before {
  content: "";
  position: absolute;
  top: 0;
  left: -22px;
  width: 6px;
  height: 100%;
  background: #2B52A2;
}
.page-for-kids ruby {
  line-height: 1.2;
  ruby-position: over;
}
.page-for-kids ruby rt {
  line-height: 1 !important;
  -webkit-transform: translateY(-0.2em);
          transform: translateY(-0.2em);
}
@supports (-webkit-touch-callout: none) {
  .page-for-kids ruby rt {
    -webkit-transform: translateY(-0.25em);
            transform: translateY(-0.25em);
  }
}
.page-for-kids .find-section {
  margin-bottom: 100px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .find-section {
    margin-bottom: 60px;
  }
}
.page-for-kids .find-section .find-list__top {
  display: grid;
  grid-template-columns: 1fr; /* SP：縦1列 */
  gap: 30px;
  max-width: 400px;
  margin: 0 auto 30px;
}
@media screen and (min-width: 900px) {
  .page-for-kids .find-section .find-list__top {
    grid-template-columns: repeat(3, 1fr);
    max-width: none;
    gap: min(40px, 2.7777777778vw);
  }
}
@media screen and (min-width: 900px) {
  .page-for-kids .find-section .find-list__top .find-list__card-title {
    min-height: 6.72rem;
  }
}
.page-for-kids .find-section .find-list__bottom {
  display: grid;
  grid-template-columns: 1fr; /* SP：縦1列 */
  gap: 30px;
  max-width: 400px;
  margin: 0 auto;
}
@media screen and (min-width: 900px) {
  .page-for-kids .find-section .find-list__bottom {
    grid-template-columns: repeat(2, 1fr);
    max-width: none;
    gap: min(40px, 2.7777777778vw);
  }
}
.page-for-kids .find-section .find-list__card {
  display: grid;
  grid-template-rows: auto auto 1fr;
}
.page-for-kids .find-section .find-list__card-img {
  margin-bottom: 20px;
}
.page-for-kids .find-section .find-list__card-img img {
  width: 100%;
}
.page-for-kids .find-section .find-list__card-title {
  font-size: 2.2rem;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .find-section .find-list__card-title {
    font-size: 2.4rem;
  }
}
.page-for-kids .find-section .find-list__card-title .sm {
  font-size: 1.6rem;
  font-weight: 400;
}
.page-for-kids .find-section .find-list__card-text {
  font-size: 2rem;
  line-height: 2;
}
.page-for-kids .learn-section {
  margin-bottom: 60px;
}
.page-for-kids .learn-section__items {
  max-width: 400px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 60px;
}
@media screen and (min-width: 900px) {
  .page-for-kids .learn-section__items {
    max-width: none;
    gap: 40px;
  }
}
.page-for-kids .learn-section .learn-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 900px) {
  .page-for-kids .learn-section .learn-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.page-for-kids .learn-section .learn-item__title {
  font-size: 2.2rem;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .learn-section .learn-item__title {
    font-size: 2.4rem;
  }
}
.page-for-kids .learn-section .learn-item__title .sm {
  font-size: 1.6rem;
  font-weight: 400;
}
.page-for-kids .learn-section .learn-item__text {
  font-size: 2rem;
  line-height: 2.3;
}
.page-for-kids .learn-section .learn-item__img {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 900px) {
  .page-for-kids .learn-section .learn-item__img {
    width: 41.8181818182%;
    -ms-flex-negative: 0;
        flex-shrink: 0;
  }
}
.page-for-kids .learn-section .learn-item__img img {
  width: 100%;
}
.page-for-kids .learn-section .learn-item__img-note {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-for-kids .learn-section .learn-item__img-note::before {
  content: "※";
}
.page-for-kids .quiz-section .quiz-list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  max-width: 400px;
  margin: 0 auto 40px;
}
@media screen and (min-width: 900px) {
  .page-for-kids .quiz-section .quiz-list {
    max-width: none;
    margin-bottom: 30px;
  }
}
@media screen and (min-width: 1200px) {
  .page-for-kids .quiz-section .quiz-list {
    grid-template-columns: repeat(3, 1fr);
    gap: min(40px, 2.7777777778vw);
  }
}
.page-for-kids .quiz-section .quiz-list__card {
  background: #ECECEC;
  border-radius: 0 30px 0 30px;
  padding: 30px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page-for-kids .quiz-section .quiz-list__card-title {
  background: #7891C7;
  border-radius: 100px;
  text-align: center;
  color: #fff;
  font-size: 2.6rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 20px;
}
.page-for-kids .quiz-section .quiz-list__card-title .number {
  font-size: 3.2rem;
}
.page-for-kids .quiz-section .quiz-list__card-text {
  font-size: 2rem;
  line-height: 2;
  margin-bottom: 20px;
}
.page-for-kids .quiz-section .quiz-list__card-choices {
  font-size: 2rem;
  line-height: 2;
  margin-bottom: 20px;
  list-style: none;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-for-kids .quiz-section .quiz-list__card-choices li {
  list-style: none;
  padding-left: 30px;
  position: relative;
}
.page-for-kids .quiz-section .quiz-list__card-choices li::before {
  position: absolute;
  top: 0;
  left: 0;
}
.page-for-kids .quiz-section .quiz-list__card-choices li:nth-child(1)::before {
  content: "①";
}
.page-for-kids .quiz-section .quiz-list__card-choices li:nth-child(2)::before {
  content: "②";
}
.page-for-kids .quiz-section .quiz-list__card-choices li:nth-child(3)::before {
  content: "③";
}
.page-for-kids .quiz-section .quiz-list__card-img img {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}
.page-for-kids .quiz-section .quiz-list__note {
  font-size: 2rem;
  line-height: 1.7;
}
.page-for-kids .for-kids-next {
  margin-bottom: 80px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .for-kids-next {
    margin-bottom: 40px;
  }
}
.page-for-kids .for-kids-next__text {
  font-size: 2rem;
  line-height: 2;
  margin-bottom: 80px;
}
@media screen and (min-width: 768px) {
  .page-for-kids .for-kids-next__text {
    margin-bottom: 60px;
  }
}
.page-for-kids .quiz-answer {
  font-size: 2rem;
  line-height: 1.3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}

@media screen and (min-width: 768px) {
  .page-site-visit-report__title-wrapper {
    padding-inline: 80px;
    max-width: 1260px;
    margin: 0 auto;
  }
}
.page-site-visit-report__title-bg {
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report__title-bg {
    background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
    background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
    padding: 64px 58px 180px;
    position: relative;
  }
}
@media screen and (min-width: 1200px) {
  .page-site-visit-report__title-bg {
    padding-bottom: 66px;
  }
}
.page-site-visit-report__title-bg::after {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report__title-bg::after {
    display: block;
    position: absolute;
    content: "";
    width: min(431px, 29.9305555556vw);
    height: min(320px, 22.2222222222vw);
    background: url(/assets/images/site-visit-report/site-visit-report-h2-deco-pc.svg) no-repeat center center/contain;
    bottom: 0;
    right: 0;
  }
}
.page-site-visit-report__title {
  font-family: "Zen Old Mincho", serif;
  font-size: 3.5rem;
  line-height: 1.15;
  font-weight: 600;
  padding: 7.7333333333vw 4.8vw 6.6666666667vw;
  background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
  background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
  position: relative;
  z-index: 2;
}
.page-site-visit-report__title::after {
  position: absolute;
  content: "";
  width: clamp(199px, 39.8vw, 300px);
  height: min(224px, 39.4666666667vw);
  background: url(/assets/images/site-visit-report/site-visit-report-h2-deco-sp.svg) no-repeat center center/contain;
  bottom: 0;
  right: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report__title::after {
    display: none;
  }
}
@media screen and (min-width: 500px) {
  .page-site-visit-report__title {
    font-size: 5rem;
    letter-spacing: -0.01em;
  }
}
@media screen and (min-width: 768px) {
  .page-site-visit-report__title {
    padding: 0;
    background: none;
  }
}
.page-site-visit-report__title .sm {
  display: inline-block;
  font-size: 2.4rem;
  line-height: 1.4;
}
@media screen and (min-width: 500px) {
  .page-site-visit-report__title .sm {
    font-size: 3.3rem;
  }
}
.page-site-visit-report__title .md {
  display: block;
}
@media screen and (min-width: 560px) {
  .page-site-visit-report__title .md {
    display: none;
  }
}
.page-site-visit-report__main-text {
  text-align: center;
  margin-top: 27px;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report__main-text {
    font-size: 1.8rem;
    line-height: 1.6;
    text-align: left;
    position: relative;
    z-index: 2;
    margin-top: 37px;
  }
}
.page-site-visit-report .report-list {
  margin: 30px auto 40px;
  max-width: 400px;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report .report-list {
    margin-top: 60px;
    max-width: none;
  }
}
.page-site-visit-report .report-list ul {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report .report-list ul {
    grid-template-columns: repeat(2, 1fr);
    gap: min(60px, 4.1666666667vw);
  }
}
.page-site-visit-report .report-list__card article {
  height: 100%;
}
.page-site-visit-report .report-list__card article a {
  display: block;
  border-radius: 0 30px 0 30px;
  border: 1px solid #2B52A2;
  padding: 20px 20px 30px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  height: 100%;
}
@media screen and (min-width: 900px) {
  .page-site-visit-report .report-list__card article a {
    padding: 50px 40px;
    gap: 30px;
  }
}
.page-site-visit-report .report-card__img {
  border-radius: 0 30px 0 0;
  aspect-ratio: 440/200;
  overflow: hidden;
}
.page-site-visit-report .report-card__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-site-visit-report .report-card__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page-site-visit-report .report-card__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-site-visit-report .report-card__label {
  font-weight: 700;
  line-height: 1.5;
  background: #CC0000;
  color: #fff;
  padding: 0 10px;
}
.page-site-visit-report .report-card__day {
  font-weight: 700;
  line-height: 1.7;
}
.page-site-visit-report .report-card__title {
  margin-top: 10px;
  font-weight: 700;
  line-height: 1.4;
  color: #2B52A2;
  padding-bottom: 16px;
  position: relative;
  font-size: 2.4rem;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report .report-card__title {
    font-size: 3rem;
  }
}
.page-site-visit-report .report-card__title::after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  display: block;
  height: 3px;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, color-stop(0, #2B52A2), color-stop(80.38585209%, #AABADA));
  background: linear-gradient(to right, #2B52A2 0 80.6451612903%, #AABADA 80.38585209% 100%);
}
@media screen and (min-width: 768px) {
  .page-site-visit-report .report-card__title::after {
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #2B52A2), color-stop(56.6893424036%, #AABADA));
    background: linear-gradient(to right, #2B52A2 0 56.8181818182%, #AABADA 56.6893424036% 100%);
  }
}
.page-site-visit-report .report-card__sub-title {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  margin-top: 14px;
}
@media screen and (min-width: 900px) {
  .page-site-visit-report .report-card__sub-title {
    font-size: 3rem;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.page-site-visit-report .report-card__link {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  line-height: 1.7;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}
.page-site-visit-report .report-card__link img {
  width: 8px;
}
.page-site-visit-report .report-card__link::after {
  content: "";
  width: 8px;
  height: 15px;
  background: url(/assets/images/common/icon-main-color.svg) no-repeat center center/contain;
}

.page-site-visit-report-detail .article__meta--report {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report-detail .article__meta--report {
    margin-bottom: 18px;
  }
}
.page-site-visit-report-detail .article__meta--report .article__date {
  font-weight: 700;
  line-height: 1.7;
}
.page-site-visit-report-detail .article__title {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report-detail .article__title {
    margin-bottom: 20px;
  }
}
.page-site-visit-report-detail .report-detail__main-img {
  aspect-ratio: 1100/500;
  margin-bottom: 30px;
}
.page-site-visit-report-detail .report-detail__main-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-site-visit-report-detail .report-detail__main-text {
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .page-site-visit-report-detail .report-detail__main-text {
    margin-bottom: 60px;
  }
}

.page-our-initiatives .initiatives-list {
  max-width: 500px;
  margin: 80px auto 0;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-list {
    max-width: none;
  }
}
.page-our-initiatives .initiatives-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-cards {
    gap: 80px;
  }
}
.page-our-initiatives .initiatives-card {
  width: 100%;
  padding-top: 24px;
  padding-left: 10px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card {
    padding-left: 50px;
  }
}
.page-our-initiatives .initiatives-card__image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 310px;
  aspect-ratio: 310/208;
  z-index: 3;
  -webkit-box-shadow: 5px 5px 0 #1F4289;
          box-shadow: 5px 5px 0 #1F4289;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__image {
    aspect-ratio: 380/256;
  }
}
@media screen and (min-width: 1200px) {
  .page-our-initiatives .initiatives-card__image {
    width: 380px;
    aspect-ratio: 380/256;
  }
}
.page-our-initiatives .initiatives-card__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: relative;
  z-index: 1;
}
.page-our-initiatives .initiatives-card__body {
  margin-left: auto;
  background: #2B52A2;
  color: #fff;
  border-radius: 0 30px 0 30px;
  padding: 202px 40px 24px 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__body {
    padding: 48px 30px 56px 280px;
    gap: 30px;
    min-height: 257px;
  }
}
@media screen and (min-width: 1200px) {
  .page-our-initiatives .initiatives-card__body {
    padding: 48px 84px 56px 380px;
    gap: 30px;
  }
}
.page-our-initiatives .initiatives-card__body::after {
  content: "";
  position: absolute;
  bottom: 24px;
  right: 12px;
  width: 12px;
  height: 24px;
  background: url(/assets/images/common/pager-next.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__body::after {
    width: 14px;
    height: 27px;
    right: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .page-our-initiatives .initiatives-card__body::after {
    bottom: 56px;
    right: 30px;
  }
}
.page-our-initiatives .initiatives-card__title-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 6px;
  padding-bottom: 13px;
  border-bottom: 3px solid #90A4CC;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__title-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 14px;
    padding-bottom: 28px;
    border-bottom: none;
    position: relative;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .page-our-initiatives .initiatives-card__title-wrap::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 3px;
    background: -webkit-gradient(linear, left top, right top, color-stop(0, #90A4CC), color-stop(44.37%, #5575B5));
    background: linear-gradient(to right, #90A4CC 0 44.37%, #5575B5 44.37% 100%);
  }
}
.page-our-initiatives .initiatives-card__title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__title {
    font-size: 2.8rem;
  }
}
.page-our-initiatives .initiatives-card__text {
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__text {
    font-size: 2rem;
  }
}
.page-our-initiatives .initiatives-card__icon {
  position: absolute;
  bottom: 24px;
  right: 12px;
  width: 12px;
}
@media screen and (min-width: 768px) {
  .page-our-initiatives .initiatives-card__icon {
    width: 14px;
    right: 20px;
  }
}
@media screen and (min-width: 1200px) {
  .page-our-initiatives .initiatives-card__icon {
    width: 14px;
    bottom: 56px;
    right: 30px;
  }
}

.page-talent-development .heading-lv2 {
  margin-bottom: 20px;
}
.page-talent-development .heading-lv3 {
  margin-bottom: 30px;
}
.page-talent-development .heading-lv4 {
  margin-bottom: 20px;
}
.page-talent-development .talent-development__lead {
  margin-bottom: 30px;
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__lead {
    margin-bottom: 60px;
  }
}
.page-talent-development .talent-development__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__nav-list {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    background: #AABADA;
  }
}
.page-talent-development .talent-development__nav-item {
  width: 50%;
  position: relative;
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__nav-item {
    width: 25%;
    background: transparent;
  }
}
.page-talent-development .talent-development__nav-item {
  /* 上段・下段それぞれの背景 */
}
.page-talent-development .talent-development__nav-item:nth-child(-n+2), .page-talent-development .talent-development__nav-item:nth-child(n+3) {
  background: #EAF1FE;
}
.page-talent-development .talent-development__nav-item:nth-child(odd)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1px;
  height: 83.3333333333%;
  background: #AABADA;
}
.page-talent-development .talent-development__nav-item:nth-child(n+3) {
  margin-top: 10px;
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__nav-item:nth-child(n+3) {
    margin: 0;
  }
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__nav-item::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1px;
    height: 62.3931623932%;
    background: #AABADA;
  }
}
.page-talent-development .talent-development__nav-item:last-child::after {
  display: none;
}
.page-talent-development .talent-development__nav-item a {
  display: block;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  padding: 17px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  height: 100%;
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__nav-item a {
    gap: 15px;
    line-height: 1.5;
    padding: 22px 0;
  }
}
.page-talent-development .talent-development__nav-item a::after {
  content: "";
  width: 16px;
  height: 8px;
  background: url(/assets/images/common/icon-select.svg) no-repeat center center/contain;
}
.page-talent-development .talent-development__nav-item a .sm {
  font-size: 1.4rem;
}
@media screen and (min-width: 900px) {
  .page-talent-development .talent-development__nav-item a .sm {
    font-size: 1.6rem;
  }
}
.page-talent-development .talent-development__contents-text {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-talent-development .talent-development__contents-text {
    margin-bottom: 40px;
  }
}
.page-talent-development .elementary-junior {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-talent-development .elementary-junior {
    padding: 60px 0;
  }
}
.page-talent-development .elementary-junior__bottom {
  position: relative;
  margin-top: 30px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-talent-development .elementary-junior__bottom {
    margin-top: 40px;
    gap: 5px;
  }
}
.page-talent-development .elementary-junior__bottom p {
  font-size: 2rem;
}
.page-talent-development .elementary-junior__bottom .btn-blue {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .page-talent-development .elementary-junior__bottom .btn-blue {
    width: 600px;
    font-size: 2.6rem;
  }
}
.page-talent-development .elementary-junior__bottom-deco {
  position: absolute;
  width: 88px;
  top: 4px;
  left: calc(50% + 365px);
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
.page-talent-development .highschool {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-talent-development .highschool {
    padding: 60px 0;
  }
}
.page-talent-development .highschool__btn {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-talent-development .highschool__btn {
    margin-top: 40px;
  }
}
.page-talent-development .highschool__img-wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-talent-development .highschool__img-wrap {
    grid-template-columns: repeat(3, 1fr);
    gap: min(30px, 2.0833333333vw);
    max-width: none;
  }
}
.page-talent-development .highschool__img {
  aspect-ratio: 320/200;
  overflow: hidden;
}
.page-talent-development .highschool__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-talent-development .new-employee {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-talent-development .new-employee {
    padding: 60px 0;
  }
}
.page-talent-development .interview {
  padding: 30px 0 0;
}
@media screen and (min-width: 768px) {
  .page-talent-development .interview {
    padding: 60px 0 0;
  }
}
.page-talent-development .interview__btn {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-talent-development .interview__btn {
    margin-top: 40px;
  }
}
.page-talent-development .interview__img-wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 20px;
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-talent-development .interview__img-wrap {
    grid-template-columns: repeat(3, 1fr);
    gap: min(30px, 2.0833333333vw);
    max-width: none;
  }
}
.page-talent-development .interview__img {
  aspect-ratio: 320/245;
  overflow: hidden;
}
.page-talent-development .interview__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-talent-development .contents__box {
  padding: 18px 19px;
  border: 1px solid #2B52A2;
}
@media screen and (min-width: 768px) {
  .page-talent-development .contents__box {
    padding: 40px;
  }
}
.page-talent-development .contents__box-text {
  margin-bottom: 20px;
}
.page-talent-development .contents__img-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-talent-development .contents__img-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(30px, 2.0833333333vw);
    max-width: none;
  }
}
.page-talent-development .contents__img {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-talent-development .contents__img img {
  width: 100%;
}

.page-hitomachi-fukuoka .hitomachi-fukuoka__main-lead {
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .hitomachi-fukuoka__main-lead {
    font-size: 3rem;
    margin-bottom: 40px;
  }
}
.page-hitomachi-fukuoka .hitomachi-fukuoka__sub-lead {
  line-height: 1.7;
  margin-bottom: 70px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .hitomachi-fukuoka__sub-lead {
    margin-bottom: 60px;
  }
}
.page-hitomachi-fukuoka .latest-issue {
  padding: 28px 20px 50px;
  border: 1px solid #2B52A2;
  margin-bottom: 60px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .latest-issue {
    padding: 40px 40px 60px 40px;
  }
}
.page-hitomachi-fukuoka .latest-issue__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 18px;
  border-bottom: 3px solid #2B52A2;
  margin-bottom: 30px;
}
.page-hitomachi-fukuoka .latest-issue__top .label {
  background: #CC0000;
  color: #fff;
  font-weight: 700;
  line-height: 1.5;
  padding: 0 10px;
}
.page-hitomachi-fukuoka .latest-issue__title {
  font-size: 2.2rem;
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .latest-issue__title {
    font-size: 2.4rem;
  }
}
.page-hitomachi-fukuoka .latest-issue__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 900px) {
  .page-hitomachi-fukuoka .latest-issue__bottom {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(40px, 2.7777777778vw);
  }
}
.page-hitomachi-fukuoka .latest-issue__img {
  -webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
  width: 300px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .latest-issue__img {
    max-width: 400px;
  }
}
@media screen and (min-width: 900px) {
  .page-hitomachi-fukuoka .latest-issue__img {
    width: 29.4117647059%;
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
  }
}
.page-hitomachi-fukuoka .latest-issue__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-hitomachi-fukuoka .latest-issue__body .issue-meta {
  line-height: 1.7;
}
.page-hitomachi-fukuoka .latest-issue__section {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.page-hitomachi-fukuoka .latest-issue__section-title {
  font-size: 1.8rem;
  line-height: 1.7;
  font-weight: 700;
}
.page-hitomachi-fukuoka .latest-issue__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 13px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .latest-issue__contents {
    gap: 9px;
  }
}
.page-hitomachi-fukuoka .latest-issue__text {
  line-height: 1.7;
}
.page-hitomachi-fukuoka .latest-issue__section-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 9px;
}
.page-hitomachi-fukuoka .latest-issue__section-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  line-height: 1.7;
}
.page-hitomachi-fukuoka .latest-issue__section-list li::before {
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  border-radius: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 8px;
}
.page-hitomachi-fukuoka .latest-issue .read-btn {
  margin-top: 50px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .latest-issue .read-btn {
    font-size: 2.4rem;
    max-width: 500px;
    margin-inline: auto;
  }
}
.page-hitomachi-fukuoka .latest-issue .read-btn:hover {
  opacity: 1;
  border-color: #fff;
  background: #2AAB39;
  color: #fff;
}
.page-hitomachi-fukuoka .latest-issue .read-btn:hover svg path {
  fill: #fff;
}
.page-hitomachi-fukuoka .past-issues {
  margin-bottom: 40px;
}
.page-hitomachi-fukuoka .past-issues__heading {
  font-size: 3rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 40px;
}
.page-hitomachi-fukuoka .past-issues .past-issue__list {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .past-issues .past-issue__list {
    grid-template-columns: repeat(2, 1fr);
    gap: min(30px, 2.0833333333vw) min(25px, 1.7361111111vw);
  }
}
@media screen and (min-width: 900px) {
  .page-hitomachi-fukuoka .past-issues .past-issue__list {
    grid-template-columns: repeat(3, 1fr);
    gap: min(30px, 2.0833333333vw) min(25px, 1.7361111111vw);
  }
}
.page-hitomachi-fukuoka .past-issues .past-issue__list-item {
  border: 1px solid #2B52A2;
  padding: 28px 20px;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .past-issues .past-issue__list-item {
    padding: 40px 30px;
  }
}
.page-hitomachi-fukuoka .past-issues .past-issue__list-item article {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  width: 100%;
  height: 100%;
}
.page-hitomachi-fukuoka .past-issues .past-issue__title {
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
  padding-bottom: 18px;
  border-bottom: 3px solid #2B52A2;
}
.page-hitomachi-fukuoka .past-issues .past-issue__img {
  -webkit-box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
          box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.15);
}
.page-hitomachi-fukuoka .past-issues .past-issue__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-hitomachi-fukuoka .past-issues .past-issue__meta {
  line-height: 1.7;
}
.page-hitomachi-fukuoka .past-issues .past-issue__contents {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.page-hitomachi-fukuoka .past-issues .past-issue__contents-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  line-height: 1.7;
}
.page-hitomachi-fukuoka .past-issues .past-issue__contents-list::before {
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  border-radius: 50%;
  margin-top: 8px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.page-hitomachi-fukuoka .past-issues .read-btn:hover {
  opacity: 1;
  background: #0B2760;
  color: #fff;
}
.page-hitomachi-fukuoka .past-issues .read-btn:hover svg path {
  fill: #fff;
}
.page-hitomachi-fukuoka .read-btn {
  padding: 10px 20px 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #0B2760;
  border: 2px solid #0B2760;
  font-size: 2rem;
  position: relative;
  width: 290px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-hitomachi-fukuoka .read-btn {
    width: 100%;
  }
}
.page-hitomachi-fukuoka .read-btn::after {
  position: absolute;
  content: "";
  width: 22px;
  height: 22px;
  right: 20px;
  mask: url("/assets/images/common/icon-external-c.svg") no-repeat center/contain;
  -webkit-mask: url("/assets/images/common/icon-external-c.svg") no-repeat center/contain;
  background-color: currentColor;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
}

.page-sdgs .sdgs__lead {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .sdgs__lead {
    margin-bottom: 60px;
  }
}
.page-sdgs .sdgs__contents-lead {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .sdgs__contents-lead {
    margin-bottom: 40px;
  }
}
.page-sdgs .sdgs__contents-text {
  margin-bottom: 20px;
}
.page-sdgs .sdgs__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page-sdgs .sdgs__nav-item {
  width: 50%;
  height: 95px;
  position: relative;
  background: #EAF1FE;
  /* 上段・下段それぞれの背景 */
}
.page-sdgs .sdgs__nav-item:nth-child(odd)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1px;
  height: 83.3333333333%;
  background: #AABADA;
}
@media screen and (min-width: 900px) {
  .page-sdgs .sdgs__nav-item::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1px;
    height: 62.3931623932%;
    background: #AABADA;
  }
}
.page-sdgs .sdgs__nav-item:last-child::after {
  display: none;
}
.page-sdgs .sdgs__nav-item a {
  display: block;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  padding: 17px 0;
  gap: 8px;
  height: 100%;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (min-width: 900px) {
  .page-sdgs .sdgs__nav-item a {
    gap: 15px;
    line-height: 1.5;
  }
}
.page-sdgs .sdgs__nav-item a::after {
  content: "";
  width: 16px;
  height: 8px;
  background: url(/assets/images/common/icon-select.svg) no-repeat center center/contain;
}
.page-sdgs .sdgs__nav-item a .sm {
  font-size: 1.4rem;
}
.page-sdgs .heading-lv2 {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .heading-lv2 {
    margin-bottom: 40px;
  }
}
.page-sdgs .blood-donation {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation {
    padding: 60px 0;
  }
}
.page-sdgs .blood-donation__img-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation__img-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(40px, 2.7777777778vw);
    margin-bottom: 40px;
  }
}
.page-sdgs .blood-donation__img-box img {
  min-width: 0;
  max-width: 100%;
  height: auto;
}
.page-sdgs .blood-donation__thanks-box {
  background: #F2F2F2;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation__thanks-box {
    padding: 50px;
  }
}
.page-sdgs .blood-donation .thanks-box__inner {
  background: #fff;
  padding: 18px 20px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation .thanks-box__inner {
    padding: 30px 50px 20px;
    gap: 20px;
  }
}
.page-sdgs .blood-donation .thanks-box__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 6px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation .thanks-box__title {
    gap: 16px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 2.4rem;
  }
}
.page-sdgs .blood-donation .thanks-box__title img {
  width: 45px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation .thanks-box__title img {
    width: 60px;
  }
}
.page-sdgs .blood-donation .thanks-box__text {
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .page-sdgs .blood-donation .thanks-box__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
  }
}
.page-sdgs .emergency-support {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .emergency-support {
    padding-top: 60px;
  }
}
.page-sdgs .emergency-support__img-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-sdgs .emergency-support__img-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(40px, 2.7777777778vw);
  }
}
.page-sdgs .emergency-support__img-box img {
  min-width: 0;
}

.page-students-and-educators > .inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__title-wrapper {
    padding-inline: 80px;
    max-width: 1260px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__title-bg {
    background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
    background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
    padding: 49px 57px 130px;
    position: relative;
  }
}
@media screen and (min-width: 1200px) {
  .page-students-and-educators__title-bg {
    padding: 49px 57px 27px;
  }
}
.page-students-and-educators__title-bg::after {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__title-bg::after {
    display: block;
    position: absolute;
    content: "";
    width: min(544px, 37.7777777778vw);
    height: min(281px, 19.5138888889vw);
    right: 0;
    bottom: 0;
    background: url(/assets/images/students-and-educators/students-and-educators-h2-deco-pc.svg) no-repeat center center/contain;
  }
}
.page-students-and-educators__title {
  font-family: "Zen Old Mincho", serif;
  font-size: 2.4rem;
  line-height: 1.55;
  font-weight: 600;
  padding: 7.2vw 4.8vw 11.2vw;
  background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
  background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
  position: relative;
  z-index: 2;
}
.page-students-and-educators__title::after {
  position: absolute;
  content: "";
  width: 345px;
  height: 169px;
  right: 0;
  bottom: 0;
  background: url(/assets/images/students-and-educators/students-and-educators-h2-deco-sp.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__title::after {
    display: none;
  }
}
@media screen and (min-width: 500px) {
  .page-students-and-educators__title {
    font-size: min(3.8rem, 6.4vw);
  }
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__title {
    font-size: 3.4rem;
    padding: 0;
    background: none;
    line-height: 1.4;
  }
}
@media screen and (min-width: 900px) {
  .page-students-and-educators__title {
    font-size: 3.8rem;
  }
}
.page-students-and-educators__title .sm {
  display: inline-block;
}
@media screen and (min-width: 500px) {
  .page-students-and-educators__title .sm {
    font-size: 3.3rem;
  }
}
.page-students-and-educators__title .md {
  display: block;
}
@media screen and (min-width: 670px) {
  .page-students-and-educators__title .md {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__title .ls {
    letter-spacing: -0.14em;
  }
}
.page-students-and-educators-title__deco {
  position: absolute;
  bottom: 0;
  right: 0;
  width: max(199px, 33.1666666667vw);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators-title__deco {
    z-index: 1;
    max-width: 431px;
    width: 29.9305555556vw;
  }
}
.page-students-and-educators__main-text {
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__main-text {
    font-size: 1.8rem;
    line-height: 1.6;
    text-align: left;
    position: relative;
    z-index: 2;
    margin-top: 22px;
  }
}
.page-students-and-educators__contents {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators__contents {
    margin-top: 60px;
  }
}
.page-students-and-educators .feature {
  margin-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .feature {
    margin-bottom: 60px;
  }
}
.page-students-and-educators .feature__contents-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .feature__contents-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
    margin-bottom: 60px;
  }
}
.page-students-and-educators .feature__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  line-height: 1.7;
}
.page-students-and-educators .about-construction__lead {
  margin-bottom: 40px;
}
.page-students-and-educators .about-construction__contents-wrap {
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .page-students-and-educators .about-construction__contents-wrap {
    max-width: none;
    grid-template-columns: repeat(3, 1fr);
    gap: min(25px, 1.7361111111vw);
  }
}
.page-students-and-educators .about-construction__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 13px;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .about-construction__card {
    gap: 18px;
  }
}
.page-students-and-educators .about-construction__card-top {
  display: block;
  overflow: hidden;
  border-radius: 0 30px 0 30px;
  border: 1px solid #2B52A2;
}
.page-students-and-educators .about-construction__card-img {
  aspect-ratio: 348/195;
  overflow: hidden;
}
.page-students-and-educators .about-construction__card-img img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.page-students-and-educators .about-construction__card-title {
  padding: 16px 29px 18px;
  font-size: 2rem;
  line-height: 1.2;
  font-weight: 700;
  background: #2B52A2;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px;
}
@media screen and (min-width: 900px) {
  .page-students-and-educators .about-construction__card-title {
    font-size: 2.4rem;
    padding: 21px 30px;
    gap: 24px;
  }
}
.page-students-and-educators .about-construction__card-title::after {
  content: "";
  display: block;
  width: 10px;
  height: 19px;
  background: url(/assets/images/common/icon-white.svg) no-repeat center center/contain;
}
.page-students-and-educators .about-construction__card-text {
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .about-construction__card-text {
    line-height: 1.5;
  }
}
.page-students-and-educators .contact {
  background: #F2F2F2;
  padding: 20px;
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .contact {
    margin-top: 87px;
    padding: 50px;
  }
}
.page-students-and-educators .contact__inner {
  background: #fff;
  padding: 20px 25px;
  text-align: center;
}
.page-students-and-educators .contact__title {
  font-size: 2.4rem;
  line-height: 1.3;
  font-weight: 700;
  padding: 10px 40px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 10px;
  background: #EAF1FE;
}
.page-students-and-educators .contact__text {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .contact__text {
    line-height: 1.3;
  }
}
.page-students-and-educators .contact__tel a {
  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;
  gap: 7.45px;
  font-size: 3rem;
  line-height: 1.7;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .contact__tel a {
    font-size: 3.6rem;
    gap: 10px;
  }
}
.page-students-and-educators .contact__tel a::before {
  content: "";
  width: 52px;
  height: 52px;
  background: url(/assets/images/common/icon-tel-deco.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-students-and-educators .contact__tel a::before {
    width: 50px;
    height: 50px;
  }
}

.page-related-projects .related-projects__contents {
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
}
@media screen and (min-width: 768px) {
  .page-related-projects .related-projects__contents {
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
  }
}
.page-related-projects .related-projects__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-related-projects .related-projects__card-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 13px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  border: 1px solid #2B52A2;
  padding: 20px 30px 36px 20px;
  position: relative;
}
.page-related-projects .related-projects__card-top::after {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: url(/assets/images/common/card-deco.svg) no-repeat center center/contain;
}
.page-related-projects .related-projects__card-icon {
  width: 60px;
  height: 60px;
}
.page-related-projects .related-projects__card-text {
  font-weight: 700;
}
.page-related-projects .related-projects__card-bottom {
  line-height: 1.7;
}

.page-forms-download .heading-lv2 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .heading-lv2 {
    margin-bottom: 20px;
  }
}
@media screen and (min-width: 768px) {
  .page-forms-download .heading-lv4 {
    margin-bottom: 40px;
  }
}
.page-forms-download .text__link {
  margin-top: 20px;
  line-height: 1.6;
}
.page-forms-download .downloads__lead {
  line-height: 1.7;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .downloads__lead {
    margin-bottom: 40px;
  }
}
.page-forms-download .downloads__news-wrap {
  padding-bottom: 30px;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-forms-download .downloads__news-wrap {
    padding-bottom: 60px;
  }
}
.page-forms-download .downloads__news {
  background: rgba(204, 0, 0, 0.1019607843);
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .downloads__news {
    padding: 30px;
  }
}
.page-forms-download .downloads__news-inner {
  background: #fff;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .downloads__news-inner {
    padding: 30px;
  }
}
.page-forms-download .downloads__news-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .downloads__news-top {
    gap: 10px;
    text-align: center;
  }
}
.page-forms-download .downloads__news-title {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
.page-forms-download .downloads__news-text .red {
  color: #CC0000;
}
.page-forms-download .downloads__news-bottom {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .downloads__news-bottom {
    margin: 30px auto 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 40px;
    max-width: 840px;
  }
}
.page-forms-download .downloads__news-bottom a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border: 2px solid #0B2760;
  padding: 9px 20px 15px 28px;
  color: #0B2760;
  position: relative;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-forms-download .downloads__news-bottom a::after {
  content: "";
  width: 12px;
  height: 23px;
  background: url(/assets/images/common/icon-dark-blue.svg) no-repeat center center/contain;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.page-forms-download .downloads__news-bottom .news-btn__right {
  text-decoration: underline;
  text-underline-offset: 0.2em;
}
.page-forms-download .sales-method {
  margin-top: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-forms-download .sales-method {
    margin-top: 60px;
    padding-bottom: 60px;
  }
}
.page-forms-download .sales-method__lead {
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-forms-download .sales-method__note {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .sales-method__note {
    margin-bottom: 60px;
  }
}
.page-forms-download .sales-method__note p {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-forms-download .sales-method__note p::before {
  content: "※";
}
.page-forms-download .sales-method__payment--cod {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .sales-method__payment--cod {
    margin-bottom: 40px;
  }
}
.page-forms-download .sales-method__payment--cod .sales-method__lead {
  margin-bottom: 20px;
}
.page-forms-download .sales-method__payment--cod .heading-lv4:not(:first-of-type) {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .sales-method__payment--cod .heading-lv4:not(:first-of-type) {
    margin-top: 60px;
  }
}
.page-forms-download .documents-list {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .documents-list {
    padding-top: 60px;
  }
}
.page-forms-download .documents-list .table__3column--title-left {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .documents-list .table__3column--title-left {
    margin-top: 60px;
  }
}
.page-forms-download .documents-list .manifest {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .documents-list .manifest {
    margin-bottom: 40px;
  }
}
.page-forms-download .documents-list .manifest-related {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .documents-list .manifest-related {
    margin-bottom: 40px;
  }
}
.page-forms-download .documents-list .manifest-related .table__3column {
  margin-top: 20px;
}
.page-forms-download .documents-list .contract {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-forms-download .documents-list .contract {
    margin-bottom: 80px;
  }
}
.page-forms-download .contact {
  padding: 20px;
  background: #EAF1FE;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .page-forms-download .contact {
    text-align: center;
  }
}
@media screen and (min-width: 1200px) {
  .page-forms-download .contact {
    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;
    gap: 40px;
  }
}
.page-forms-download .contact__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 3.4rem;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) {
  .page-forms-download .contact__link {
    margin: 0;
  }
}
.page-forms-download .contact__link::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: url(/assets/images/common/icon-fax.svg);
}
.page-forms-download .table__3column--title-left table {
  width: 100%;
  table-layout: fixed;
  display: block;
}
@media screen and (min-width: 768px) {
  .page-forms-download .table__3column--title-left table {
    display: table;
    border-collapse: collapse;
  }
}
.page-forms-download .table__3column--title-left table tbody {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .page-forms-download .table__3column--title-left table tbody {
    display: table-row-group;
  }
}
.page-forms-download .table__3column--title-left table tr {
  display: block;
}
@media screen and (min-width: 768px) {
  .page-forms-download .table__3column--title-left table tr {
    display: table-row;
  }
}
.page-forms-download .table__3column--title-left table th {
  text-align: left;
  display: block;
  width: 100%;
  background: #E4E4E4;
  padding: 12px 15px;
  font-weight: 700;
  line-height: 1.7;
  border: 1px solid #BEBEBE;
}
@media screen and (min-width: 768px) {
  .page-forms-download .table__3column--title-left table th {
    text-align: center;
    display: table-cell;
    width: auto;
    padding: 21px 16px;
  }
}
@media screen and (min-width: 900px) {
  .page-forms-download .table__3column--title-left table th {
    width: 180px;
  }
}
.page-forms-download .table__3column--title-left table th:empty {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-forms-download .table__3column--title-left table th:empty {
    display: table-cell;
  }
}
.page-forms-download .table__3column--title-left table td {
  display: block;
  width: 100%;
  border: 1px solid #BEBEBE;
  padding: 14px 15px;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .page-forms-download .table__3column--title-left table td {
    display: table-cell;
    width: auto;
    padding: 21px 16px;
  }
}
.page-forms-download .table__3column--title-left table td a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  width: 100%;
  height: 100%;
}
.page-forms-download .table__3column--title-left table td a::before {
  content: "";
  width: 15px;
  height: 15px;
  background: url(/assets/images/common/icon-tel-main-color.svg) no-repeat center center/contain;
}

.page-guide .heading-lv2 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-guide .heading-lv2 {
    margin-bottom: 40px;
  }
}
.page-guide .heading-lv2.top {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-guide .heading-lv2.top {
    margin-bottom: 20px;
  }
}
.page-guide__nav {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-guide__nav {
    padding: 40px 0 60px;
  }
}
.page-guide__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.page-guide__nav-item {
  width: 50%;
  position: relative;
}
.page-guide__nav-item:last-child {
  width: 100%;
}
.page-guide__nav-item {
  /* 上段・下段それぞれの背景 */
}
.page-guide__nav-item:nth-child(-n+2), .page-guide__nav-item:nth-child(n+3) {
  background: #EAF1FE;
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item:nth-child(-n+2), .page-guide__nav-item:nth-child(n+3) {
    background: transparent;
  }
}
.page-guide__nav-item:nth-child(odd)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1px;
  height: 83.3333333333%;
  background: #AABADA;
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item:nth-child(odd)::after {
    height: 62.3931623932%;
  }
}
.page-guide__nav-item:nth-child(n+3) {
  margin-top: 10px;
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item:nth-child(n+3) {
    margin: 0;
  }
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item:nth-child(-n+4), .page-guide__nav-item:nth-child(n+5) {
    background: #EAF1FE;
  }
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item:nth-child(-n+4) {
    width: 25%;
  }
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item:nth-child(n+5) {
    width: 33.3333333333%;
    margin-top: 10px;
  }
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1px;
    height: 62.3931623932%;
    background: #AABADA;
  }
}
.page-guide__nav-item:last-child::after {
  display: none;
}
.page-guide__nav-item:nth-child(4)::after {
  display: none;
}
.page-guide__nav-item a {
  display: block;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  padding: 17px 0 34px;
  gap: 8px;
  height: 100%;
  position: relative;
}
.page-guide__nav-item a span {
  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;
  height: 44px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .page-guide__nav-item a span {
    height: 48px;
  }
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item a {
    gap: 15px;
    line-height: 1.5;
    padding: 20px 0 50px;
  }
}
.page-guide__nav-item a::after {
  position: absolute;
  content: "";
  width: 16px;
  height: 8px;
  background: url(/assets/images/common/icon-select.svg) no-repeat center center/contain;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 18px;
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item a::after {
    bottom: 23px;
  }
}
.page-guide__nav-item a .sm {
  font-size: 1.4rem;
}
@media screen and (min-width: 900px) {
  .page-guide__nav-item a .sm {
    font-size: 1.6rem;
  }
}
.page-guide__nav-item:last-child span {
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-guide__nav-item:last-child span {
    height: 48px;
  }
}
.page-guide .about {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-guide .about {
    padding: 60px 0;
  }
}
.page-guide .about__text {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-guide .about__text {
    margin-bottom: 40px;
  }
}
.page-guide .about__contents {
  display: grid;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .about__contents {
    grid-template-columns: repeat(3, 1fr);
    gap: min(40px, 2.7777777778vw);
  }
}
.page-guide .about__card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  background: #EAF1FE;
  border: 1px solid #2B52A2;
  padding: 18px 20px 36px 20px;
  position: relative;
}
.page-guide .about__card::after {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: url(/assets/images/common/card-deco.svg) no-repeat center center/contain;
}
.page-guide .about__card-icon {
  width: 60px;
}
.page-guide .about__card-text {
  text-align: center;
  font-weight: 700;
}
.page-guide .membership {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-guide .membership {
    padding: 60px 0;
  }
}
.page-guide .membership__lead {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
}
.page-guide .membership__lead::before {
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  border-radius: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 8px;
}
.page-guide .membership__lead strong {
  color: #CC0000;
  line-height: 1.7;
}
.page-guide .membership__text {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
.page-guide .membership__images {
  margin-top: 30px;
  margin-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .membership__images {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 40px;
    margin-top: 20px;
    margin-bottom: 60px;
  }
}
.page-guide .membership__images figure {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-guide .membership__images .image-figure__img {
  background: #D9D9D9;
  aspect-ratio: 530/300;
  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;
}
.page-guide .membership__images .image-figure__img img {
  width: 60%;
}
.page-guide .membership__images .image-figure__caption {
  margin-top: 14px;
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-guide .membership__images .image-figure__caption {
    margin-top: 20px;
  }
}
.page-guide .membership__images .image-figure__caption::before {
  content: "※";
}
.page-guide .membership__group02 {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-guide .membership__group02 {
    margin-top: 40px;
  }
}
.page-guide .membership .text__link {
  margin-top: 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .membership .text__link {
    margin-top: 40px;
  }
}
.page-guide .membership-group__lead {
  line-height: 1.7;
}
.page-guide .membership-group__contents {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 9px;
}
@media screen and (min-width: 768px) {
  .page-guide .membership-group__contents {
    padding: 0 30px;
  }
}
.page-guide .membership-group__contents li {
  position: relative;
  padding-left: 19px;
  line-height: 1.7;
}
.page-guide .membership-group__contents li::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  border-radius: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  top: 8px;
  left: 0;
}
.page-guide .membership-group__contents li span {
  font-weight: 700;
}
.page-guide .hitori-oyakata-guide {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide {
    padding: 60px 0;
  }
}
.page-guide .hitori-oyakata-guide__list {
  margin-top: 20px;
  counter-reset: item; /* カウンターを初期化 */
  list-style: none;
  margin-bottom: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide__list {
    margin-bottom: 40px;
  }
}
.page-guide .hitori-oyakata-guide__list li {
  line-height: 1.7;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  counter-increment: item; /* カウントアップ */
  position: relative;
  padding-left: 33px;
}
.page-guide .hitori-oyakata-guide__list li::before {
  content: counter(item) "."; /* 数字を表示 */
  position: absolute;
  left: 0;
}
.page-guide .hitori-oyakata-guide .unions-list-table__wrap {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide .unions-list-table__wrap {
    margin-top: 39px;
  }
}
.page-guide .hitori-oyakata-guide .unions-list-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  position: relative;
}
.page-guide .hitori-oyakata-guide .unions-list-table__scroll-icon {
  position: absolute;
  top: 145px;
  right: 90px;
  z-index: 2;
  width: 170px;
  height: auto;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.page-guide .hitori-oyakata-guide .unions-list-table__scroll-icon.is-visible {
  opacity: 1;
}
.page-guide .hitori-oyakata-guide .unions-list-table table {
  width: 870px;
  border-collapse: collapse;
  table-layout: fixed;
  color: #000;
  position: relative;
  table-layout: fixed;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide .unions-list-table table {
    min-width: 1100px;
  }
}
.page-guide .hitori-oyakata-guide .unions-list-table table tr:nth-child(even) {
  background: #F3F3F3;
}
.page-guide .hitori-oyakata-guide .unions-list-table table .col-name,
.page-guide .hitori-oyakata-guide .unions-list-table table .col-tel {
  width: 290px;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide .unions-list-table table .col-name,
  .page-guide .hitori-oyakata-guide .unions-list-table table .col-tel {
    width: max(367px, 33.3333333333%);
  }
}
.page-guide .hitori-oyakata-guide .unions-list-table table .col-address {
  width: 290px;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide .unions-list-table table .col-address {
    width: max(367px, 33.3333333333%);
  }
}
.page-guide .hitori-oyakata-guide .unions-list-table table th {
  background-color: #2B52A2;
  color: #fff;
  border: 1px solid #BEBEBE;
  border-bottom: none;
  padding: 15px;
  font-weight: 700;
  line-height: 1.7;
  width: 290px;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide .unions-list-table table th {
    width: max(367px, 33.3333333333%);
  }
}
.page-guide .hitori-oyakata-guide .unions-list-table table td {
  border: 1px solid #BEBEBE; /* 外枠グレー */
  padding: 15.5px;
  line-height: 1.7;
  width: 290px;
}
@media screen and (min-width: 768px) {
  .page-guide .hitori-oyakata-guide .unions-list-table table td {
    width: max(367px, 33.3333333333%);
  }
}
.page-guide .hitori-oyakata-guide .unions-list-table table td:nth-child(3) a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  width: 100%;
}
.page-guide .hitori-oyakata-guide .unions-list-table table td:nth-child(3) a::before {
  content: "";
  width: 15px;
  height: 15px;
  background: url("/assets/images/common/icon-tel-main-color.svg") no-repeat center center/contain;
}
.page-guide .kentaikyo-digital-shift {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-guide .kentaikyo-digital-shift {
    padding: 60px 0;
  }
}
.page-guide .kentaikyo-digital-shift__contents {
  background: rgba(204, 0, 0, 0.1);
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .kentaikyo-digital-shift__contents {
    padding: 30px;
  }
}
.page-guide .kentaikyo-digital-shift__contents-inner {
  background: #fff;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .kentaikyo-digital-shift__contents-inner {
    padding: 30px;
    gap: 30px;
  }
}
.page-guide .kentaikyo-digital-shift__lead {
  font-size: 2rem;
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-guide .kentaikyo-digital-shift__lead {
    gap: 10px;
  }
}
.page-guide .kentaikyo-digital-shift ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.page-guide .kentaikyo-digital-shift ul li {
  line-height: 1.7;
  padding-left: 18px;
  position: relative;
}
.page-guide .kentaikyo-digital-shift ul li::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  top: 8px;
  left: 0;
  border-radius: 50%;
}
.page-guide .kentaikyo-digital-shift .red {
  color: #CC0000;
}
.page-guide .kentaikyo-digital-shift .bold {
  font-weight: 700;
}
.page-guide .benefits {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-guide .benefits {
    padding: 60px 0;
  }
}
.page-guide .benefits__text {
  margin-bottom: 24px;
}
@media screen and (min-width: 768px) {
  .page-guide .benefits__text {
    margin-bottom: 40px;
  }
}
.page-guide .benefits__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  counter-reset: item; /* カウンターを初期化 */
  list-style: none;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-guide .benefits__lists {
    gap: 30px;
    margin-bottom: 40px;
  }
}
.page-guide .benefits__lists li {
  line-height: 1.7;
  counter-increment: item; /* カウントアップ */
  position: relative;
  padding-left: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-guide .benefits__lists li {
    padding-left: 60px;
  }
}
.page-guide .benefits__lists li::before {
  content: counter(item); /* 数字を表示 */
  position: absolute;
  left: 0;
  font-size: 2.4rem;
  width: 40px;
  height: 40px;
  background: #EAF1FE;
  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;
  border-radius: 50%;
  color: #2B52A2;
  font-weight: 700;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .page-guide .benefits__lists li::before {
    width: 50px;
    height: 50px;
    font-size: 3rem;
  }
}
.page-guide .benefits__lists-title {
  font-size: 2rem;
  line-height: 1.4;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-guide .benefits__lists-title {
    font-size: 2.4rem;
  }
}
.page-guide .faq {
  padding: 30px 0;
}
@media screen and (min-width: 768px) {
  .page-guide .faq {
    padding: 60px 0 40px;
  }
}
.page-guide .contact {
  background: #F2F2F2;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .contact {
    padding: 50px;
  }
}
.page-guide .contact__inner {
  background: #fff;
  padding: 20px;
}
.page-guide .contact__title {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 700;
  padding: 10px 15px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 10px;
  background: #EAF1FE;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__title {
    font-size: 2.4rem;
    padding: 10px 40px;
  }
}
.page-guide .contact__address {
  line-height: 1.3;
  margin: 0 auto 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.page-guide .contact__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  margin-bottom: 10px;
}
@media screen and (min-width: 1200px) {
  .page-guide .contact__contents {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 62px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.page-guide .contact__tel a {
  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;
  gap: 6px;
  font-size: 2.16rem;
  line-height: 1.7;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__tel a {
    font-size: 3.6rem;
    gap: 10px;
  }
}
.page-guide .contact__tel a::before {
  content: "";
  width: 30px;
  height: 30px;
  background: url(/assets/images/common/icon-tel-deco.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__tel a::before {
    width: 50px;
    height: 50px;
  }
}
.page-guide .contact__fax {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  font-size: 2.16rem;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__fax {
    font-size: 3.6rem;
    gap: 10px;
    margin: 0;
  }
}
.page-guide .contact__fax::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(/assets/images/common/icon-fax.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__fax::before {
    width: 50px;
    height: 50px;
  }
}
.page-guide .contact__text {
  line-height: 1.3;
  max-width: 440px;
  margin: 0 auto 10px;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__text {
    text-align: center;
    max-width: none;
  }
}
.page-guide .contact__note {
  font-size: 1.4rem;
  line-height: 1.7;
  max-width: 440px;
  margin: 0 auto 20px;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__note {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 5px;
    max-width: none;
  }
}
.page-guide .contact__link {
  display: block;
  border: 1px solid #2B52A2;
  padding: 8px 9.5px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 440px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-guide .contact__link {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.page-guide .contact__link-text::after {
  display: inline-block;
  vertical-align: bottom;
  content: "";
  width: 17px;
  height: 21px;
  background: url(/assets/images/common/icon-external-c.svg) no-repeat center center/contain;
}
.page-guide .contact__link-img {
  width: 67px;
}

.page-membership-and-certificate .heading-lv2 {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .heading-lv2 {
    margin-bottom: 20px;
  }
}
.page-membership-and-certificate .heading-lv3 {
  margin-bottom: 20px;
}
.page-membership-and-certificate .red {
  color: #CC0000;
}
.page-membership-and-certificate .red-bold {
  color: #CC0000;
  font-size: 1.8rem;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .red-bold {
    font-size: 2rem;
    padding-left: 10px;
  }
}
.page-membership-and-certificate .bold {
  font-weight: 700;
}
.page-membership-and-certificate .underline {
  text-decoration: underline;
  text-underline-offset: 5px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .membership-and-certificate__nav {
    padding-top: 40px;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.page-membership-and-certificate .membership-and-certificate__nav-item {
  width: 50%;
  position: relative;
  /* 上段・下段それぞれの背景 */
}
.page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(-n+2), .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(n+3) {
  background: #EAF1FE;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(-n+2), .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(n+3) {
    background: transparent;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(odd)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1px;
  height: 83.3333333333%;
  background: #AABADA;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(odd)::after {
    height: 62.3931623932%;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(n+3) {
  margin-top: 10px;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(n+3) {
    margin: 0;
  }
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(-n+3), .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(n+4) {
    background: #EAF1FE;
  }
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(-n+3) {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(n+4) {
    width: 33.3333333333%;
    margin-top: 10px;
  }
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item::after {
    content: "";
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 1px;
    height: 62.3931623932%;
    background: #AABADA;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item:last-child::after {
  display: none;
}
.page-membership-and-certificate .membership-and-certificate__nav-item:nth-child(3)::after {
  display: none;
}
.page-membership-and-certificate .membership-and-certificate__nav-item a {
  display: block;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  padding: 17px 0 34px;
  gap: 8px;
  height: 100%;
  position: relative;
}
.page-membership-and-certificate .membership-and-certificate__nav-item a .nav-item__contents {
  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;
  height: 44px;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item a .nav-item__contents {
    height: 48px;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item a .nav-item__contents span.pc {
  display: inline-block;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item a {
    gap: 15px;
    line-height: 1.5;
    padding: 20px 0 50px;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item a::after {
  position: absolute;
  content: "";
  width: 16px;
  height: 8px;
  background: url(/assets/images/common/icon-select.svg) no-repeat center center/contain;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  bottom: 18px;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item a::after {
    bottom: 23px;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item a strong {
  color: #CC0000;
  font-size: 1.4rem;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item a strong {
    font-size: 1.6rem;
  }
}
.page-membership-and-certificate .membership-and-certificate__nav-item:last-child p {
  height: auto;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .membership-and-certificate__nav-item:last-child p {
    height: 48px;
  }
}
.page-membership-and-certificate .important {
  padding-top: 30px;
  counter-increment: section; /* カウンターを増やす */
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important {
    padding-top: 60px;
  }
}
.page-membership-and-certificate .important:not(.is-open) .important__contents {
  cursor: pointer;
}
.page-membership-and-certificate .important.is-open .important__lead {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important.is-open .important__lead {
    margin-bottom: 40px;
  }
}
.page-membership-and-certificate .important.is-open .important__btn::before {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.page-membership-and-certificate .important.is-open .important__contents-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page-membership-and-certificate .important__contents {
  background: rgba(204, 0, 0, 0.1);
  padding: 20px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important__contents {
    padding: 30px;
  }
}
.page-membership-and-certificate .important__contents-inner {
  background: #fff;
  padding: 20px 21px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important__contents-inner {
    padding: 30px;
    gap: 30px;
  }
}
.page-membership-and-certificate .important__contents-wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  counter-reset: section;
  display: none;
}
.page-membership-and-certificate .important__contents-wrap > section h3.heading-lv3 {
  counter-increment: section;
}
.page-membership-and-certificate .important__contents-wrap > section h3.heading-lv3::before {
  content: counter(section) ". ";
  font-weight: bold;
}
.page-membership-and-certificate .important__lead {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important__lead {
    font-size: 3rem;
    gap: 10px;
  }
}
.page-membership-and-certificate .important__lead .sm {
  font-size: 1.6rem;
  line-height: 1.4;
  margin-top: -2px;
  display: block;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important__lead .sm {
    display: inline;
    margin: 0;
  }
}
@media screen and (min-width: 1200px) {
  .page-membership-and-certificate .important__lead .br {
    display: none;
  }
}
.page-membership-and-certificate .important__btn {
  position: absolute;
  top: 67px;
  right: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
  width: 50px;
  font-size: 1.1rem;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important__btn {
    font-size: 2rem;
    gap: 10px;
    right: 30px;
    width: 92px;
    top: 114px;
  }
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .important__btn {
    top: 67px;
  }
}
@media screen and (min-width: 1200px) {
  .page-membership-and-certificate .important__btn {
    right: 60px;
  }
}
.page-membership-and-certificate .important__btn::before {
  content: "";
  width: 12px;
  height: 22px;
  background-color: #000; /* ←ここで色変更 */
  -webkit-mask: url("/assets/images/common/icon-select.svg") no-repeat center/contain;
  mask: url("/assets/images/common/icon-select.svg") no-repeat center/contain;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}
.page-membership-and-certificate .important__text {
  line-height: 1.7;
}
.page-membership-and-certificate .important__text a {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.page-membership-and-certificate .important__text a::after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 18px;
  vertical-align: middle;
  background-color: currentColor; /* 表示したい色 */
  margin-left: 5px;
  margin-right: 3px;
  /* SVGをマスクとして使う */
  -webkit-mask: url(/assets/images/common/icon-external-bold.svg) no-repeat center;
  -webkit-mask-size: contain;
  -webkit-mask: url(/assets/images/common/icon-external-bold.svg) no-repeat center;
          mask: url(/assets/images/common/icon-external-bold.svg) no-repeat center;
  mask-size: contain;
}
.page-membership-and-certificate .important__note {
  font-size: 1.4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-membership-and-certificate .important__note::before {
  content: "※";
}
.page-membership-and-certificate .important p + p {
  margin-top: 20px;
}
.page-membership-and-certificate .important__red-bold-text {
  color: #CC0000;
  font-size: 1.8rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .important__red-bold-text {
    font-size: 2rem;
  }
}
.page-membership-and-certificate .important__red-bold-text span {
  display: inline-block;
  margin-left: 5px;
  margin-right: 5px;
}
.page-membership-and-certificate .important .heading-lv4 {
  margin-top: 20px;
}
.page-membership-and-certificate .important .list__normal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin-block: 20px;
}
.page-membership-and-certificate .important .list__normal li {
  line-height: 1.7;
  padding-left: 18px;
  position: relative;
}
.page-membership-and-certificate .important .list__normal li::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  top: 8px;
  left: 0;
  border-radius: 50%;
}
.page-membership-and-certificate .important .list-number {
  margin-top: 20px;
}
.page-membership-and-certificate .pre-application-check {
  padding: 60px 0 50px;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .pre-application-check {
    padding: 60px 0;
  }
}
.page-membership-and-certificate .pre-application-check .heading-lv2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  font-size: 2.4rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .pre-application-check .heading-lv2 {
    font-size: 3rem;
    gap: 30px;
    margin-bottom: 20px;
  }
}
.page-membership-and-certificate .pre-application-check .heading-lv2 span {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  background: #CC0000;
  color: #fff;
  font-size: 2rem;
  line-height: 1.4;
  padding: 4px 10px;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .pre-application-check .heading-lv2 span {
    font-size: 2.6rem;
  }
}
.page-membership-and-certificate .pre-application-check__text {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .pre-application-check__text {
    margin-bottom: 40px;
  }
}
.page-membership-and-certificate .pre-application-check .check-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
  max-width: 400px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .pre-application-check .check-list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: none;
    gap: min(40px, 2.7777777778vw);
  }
}
.page-membership-and-certificate .pre-application-check .check-list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-membership-and-certificate .pre-application-check .check-list__img {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 20px;
}
.page-membership-and-certificate .certificate-criteria {
  padding: 30px 0 50px;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .certificate-criteria {
    padding: 60px 0;
  }
}
.page-membership-and-certificate .certificate-criteria__lead {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .certificate-criteria__lead {
    margin-bottom: 20px;
  }
}
.page-membership-and-certificate .certificate-criteria__note {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-top: 20px;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .certificate-criteria__note {
    margin-top: 60px;
  }
}
.page-membership-and-certificate .certificate-criteria__note::before {
  content: "※";
}
.page-membership-and-certificate .certificate-criteria__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 40px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .certificate-criteria__wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.page-membership-and-certificate .certificate-criteria__wrap section {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-membership-and-certificate .application-documents {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .application-documents {
    padding: 60px 0;
  }
}
.page-membership-and-certificate .application-documents .card-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  max-width: 500px;
  margin: 0 auto;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .application-documents .card-list {
    max-width: none;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: min(40px, 2.7777777778vw);
  }
}
.page-membership-and-certificate .application-documents .card-list li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-membership-and-certificate .application-documents .card-list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  border: 2px solid #2B52A2;
  padding: 18px 20px;
  text-align: center;
}
.page-membership-and-certificate .application-documents .card-list .list__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 2rem;
}
@media screen and (min-width: 900px) {
  .page-membership-and-certificate .application-documents .card-list .list__text {
    font-size: min(2.4rem, 1.6666666667vw);
  }
}
.page-membership-and-certificate .application-documents .card-list .link__text {
  font-weight: 700;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.page-membership-and-certificate .application-documents .card-list .link__text::after {
  content: "";
  background: url(/assets/images/common/icon-main-color.svg) no-repeat center center/contain;
  width: 8px;
  height: 16px;
}
.page-membership-and-certificate .application-documents .download-list .list__text::after {
  content: "";
  background: url(/assets/images/common/icon-xls.svg) no-repeat center center/contain;
  width: 30px;
  height: 30px;
}
.page-membership-and-certificate .application-documents .sample-list {
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .application-documents .sample-list {
    margin-top: 80px;
  }
}
.page-membership-and-certificate .application-documents .sample-list .list__text::after {
  content: "";
  background: url(/assets/images/common/icon-pdf.svg) no-repeat center center/contain;
  width: 30px;
  height: 30px;
}
.page-membership-and-certificate .application-documents .submission-list {
  counter-reset: submission-counter;
  margin-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .application-documents .submission-list {
    margin-top: 80px;
  }
}
.page-membership-and-certificate .application-documents .submission-list .heading-lv4 {
  counter-increment: submission-counter; /* h4ごとにカウントアップ */
  position: relative;
  padding-left: 23px;
}
.page-membership-and-certificate .application-documents .submission-list .heading-lv4::before {
  position: static;
  content: counter(submission-counter) ". "; /* 数字とドットを表示 */
  font-weight: bold;
  margin-right: 7px;
  width: auto;
  height: auto;
  background: transparent;
}
.page-membership-and-certificate .application-documents .submission-list .heading-lv4::after {
  position: absolute;
  content: "";
  width: 6px;
  height: 100%;
  background: #2B52A2;
  top: 0;
  left: 0;
}
.page-membership-and-certificate .application-documents .submission-list__text {
  line-height: 1.7;
}
.page-membership-and-certificate .application-documents .submission-list__note {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-membership-and-certificate .application-documents .submission-list__note::before {
  content: "※";
}
.page-membership-and-certificate .application-documents .list-box {
  border: 1px solid #2B52A2;
  padding: 38px 19px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .application-documents .list-box {
    padding: 38px;
  }
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .application-documents .list-box {
    grid-template-columns: repeat(2, 1fr);
    -webkit-column-gap: 20px;
       -moz-column-gap: 20px;
            column-gap: 20px;
  }
}
.page-membership-and-certificate .list-circle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.page-membership-and-certificate .list-circle li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 8px;
  line-height: 1.7;
}
.page-membership-and-certificate .list-circle li::before {
  content: "";
  width: 10px;
  height: 10px;
  background: #5575B5;
  border-radius: 50%;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  margin-top: 8px;
}
.page-membership-and-certificate .list-number {
  counter-reset: li; /* カウンター初期化 */
  list-style: none; /* デフォルトのマーカーを消す */
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
.page-membership-and-certificate .list-number li {
  counter-increment: li; /* カウンターを1つ増やす */
  position: relative;
  padding-left: 33px;
  line-height: 1.7;
}
.page-membership-and-certificate .list-number li::before {
  content: counter(li) ". ";
  position: absolute;
  left: 0;
  font-weight: bold;
}
.page-membership-and-certificate .common-errors {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .common-errors {
    padding: 60px 0;
  }
}
.page-membership-and-certificate .common-errors__lead {
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .common-errors__lead {
    margin-bottom: 40px;
  }
}
.page-membership-and-certificate .common-errors__lists {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .common-errors__lists {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    font: 40px;
  }
}
.page-membership-and-certificate .common-errors__lists section {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.page-membership-and-certificate .common-errors__lists-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  line-height: 1.7;
}
.page-membership-and-certificate .common-errors ul li {
  line-height: 1.7;
}
.page-membership-and-certificate .common-errors .faq {
  margin-top: 50px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .common-errors .faq {
    margin-top: 40px;
  }
}
.page-membership-and-certificate .special-bid {
  padding: 30px 0;
  border-bottom: 1px solid #AABADA;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .special-bid {
    padding: 60px 0;
  }
}
.page-membership-and-certificate .special-bid__lead {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .special-bid__lead {
    margin-bottom: 40px;
  }
}
.page-membership-and-certificate .contact {
  padding: 30px 0 0;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact {
    padding: 60px 0 0;
  }
}
.page-membership-and-certificate .contact__contents {
  background: #F2F2F2;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__contents {
    padding: 50px;
  }
}
.page-membership-and-certificate .contact__inner {
  background: #fff;
  padding: 20px;
}
.page-membership-and-certificate .contact__title {
  font-size: 2rem;
  line-height: 1.3;
  font-weight: 700;
  padding: 10px 15px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 10px;
  background: #EAF1FE;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__title {
    font-size: 2.4rem;
    padding: 10px 40px;
  }
}
.page-membership-and-certificate .contact__title .sm {
  display: block;
  font-size: 1.4rem;
  margin-top: -3px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__title .sm {
    display: inline;
    font-size: 2.4rem;
  }
}
.page-membership-and-certificate .contact__lead {
  line-height: 1.3;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__lead {
    text-align: center;
  }
}
.page-membership-and-certificate .contact__address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__address {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 10px;
  }
}
.page-membership-and-certificate .contact__address-label {
  font-weight: 700;
  line-height: 1.7;
  border: 1px solid #2B52A2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 1px 10px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__address-label {
    font-size: 1.8rem;
  }
}
.page-membership-and-certificate .contact__address-text {
  line-height: 1.7;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.page-membership-and-certificate .contact__tel-fax {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  margin-bottom: 13px;
}
@media screen and (min-width: 1200px) {
  .page-membership-and-certificate .contact__tel-fax {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 62px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.page-membership-and-certificate .contact__tel a {
  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;
  gap: 6px;
  font-size: 2.16rem;
  line-height: 1.7;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__tel a {
    font-size: 3.6rem;
    gap: 10px;
  }
}
.page-membership-and-certificate .contact__tel a::before {
  content: "";
  width: 30px;
  height: 30px;
  background: url(/assets/images/common/icon-tel-deco.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__tel a::before {
    width: 50px;
    height: 50px;
  }
}
.page-membership-and-certificate .contact__fax {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  font-size: 2.16rem;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__fax {
    font-size: 3.6rem;
    gap: 10px;
    margin: 0;
  }
}
.page-membership-and-certificate .contact__fax::before {
  content: "";
  display: inline-block;
  width: 30px;
  height: 30px;
  background: url(/assets/images/common/icon-fax.svg) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__fax::before {
    width: 50px;
    height: 50px;
  }
}
.page-membership-and-certificate .contact__text {
  font-size: 1.4rem;
  line-height: 1.3;
  max-width: 440px;
}
@media screen and (min-width: 768px) {
  .page-membership-and-certificate .contact__text {
    text-align: center;
    max-width: none;
    font-size: 1.6rem;
  }
}

.page-career > .inner {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .page-career__title-wrapper {
    padding-inline: 80px;
    max-width: 1260px;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .page-career__title-bg {
    background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
    background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
    padding: 71px 61px 180px;
    position: relative;
  }
}
@media screen and (min-width: 1200px) {
  .page-career__title-bg {
    padding-bottom: 88px;
  }
}
.page-career__title-bg::after {
  display: none;
}
@media screen and (min-width: 768px) {
  .page-career__title-bg::after {
    display: block;
    position: absolute;
    content: "";
    width: min(577px, 40.0694444444vw);
    height: min(319px, 22.1527777778vw);
    right: 0;
    bottom: 0;
    background: url(/assets/images/career/career-h2-deco-pc.svg) no-repeat center center/contain;
  }
}
.page-career__title {
  padding: 7.7333333333vw 5.0666666667vw 6.1333333333vw;
  background: -webkit-gradient(linear, left top, left bottom, from(#E7F6FB), to(#FFFFFF));
  background: linear-gradient(to bottom, #E7F6FB 0%, #FFFFFF 100%);
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.page-career__title .normal {
  font-size: 1.4rem;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .page-career__title .normal {
    font-size: 2rem;
  }
}
.page-career__title .normal .lg {
  font-size: 1.8rem;
  letter-spacing: -0.01em;
}
@media screen and (min-width: 768px) {
  .page-career__title .normal .lg {
    font-size: 2.4rem;
  }
}
.page-career__title .mincho {
  font-family: "Zen Old Mincho", serif;
  font-size: 3.2rem;
  line-height: 1.2;
  font-weight: 600;
  margin-top: 8px;
}
@media screen and (min-width: 500px) {
  .page-career__title .mincho {
    font-size: max(2.4rem, 6.4vw);
  }
}
@media screen and (min-width: 768px) {
  .page-career__title .mincho {
    font-size: 5rem;
    line-height: 1.55;
    margin-top: 0;
  }
}
.page-career__title .mincho .sm {
  font-size: 2.4rem;
}
@media screen and (min-width: 768px) {
  .page-career__title .mincho .sm {
    font-size: 4rem;
  }
}
.page-career__title .mincho .ls {
  letter-spacing: -0.24em;
}
@media screen and (min-width: 768px) {
  .page-career__title .mincho .ls {
    letter-spacing: -0.1em;
  }
}
@media screen and (min-width: 500px) {
  .page-career__title .mincho .br {
    display: none;
  }
}
.page-career__title::after {
  position: absolute;
  content: "";
  width: 232px;
  height: 168px;
  right: 0;
  bottom: 0;
  background: url(/assets/images/career/career-h2-deco-sp.svg) no-repeat center center/contain;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page-career__title::after {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .page-career__title {
    padding: 0;
    background: none;
    gap: 2px;
  }
}
@media screen and (min-width: 768px) {
  .page-career__title img {
    width: 338px;
  }
}
.page-career__title .sm {
  display: inline-block;
}
@media screen and (min-width: 500px) {
  .page-career__title .sm {
    font-size: 4rem;
  }
}
.page-career__title .md {
  display: block;
}
@media screen and (min-width: 670px) {
  .page-career__title .md {
    display: none;
  }
}
.page-career-title__deco {
  position: absolute;
  bottom: 0;
  right: 0;
  width: max(199px, 33.1666666667vw);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .page-career-title__deco {
    z-index: 1;
    max-width: 431px;
    width: 29.9305555556vw;
  }
}
.page-career__main-text {
  text-align: center;
  font-size: 1.4rem;
  letter-spacing: 0.04em;
}
@media screen and (min-width: 768px) {
  .page-career__main-text {
    font-size: 1.8rem;
    line-height: 1.6;
    text-align: left;
    position: relative;
    z-index: 2;
    margin-top: 11px;
  }
}
.page-career .career__nav {
  margin-top: 60px;
}
.page-career .career__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #EAF1FE;
}
.page-career .career__nav-item {
  width: 50%;
  position: relative;
}
.page-career .career__nav-item:nth-child(odd)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 1px;
  height: 83.3333333333%;
  background: #AABADA;
}
@media screen and (min-width: 768px) {
  .page-career .career__nav-item:nth-child(odd)::after {
    height: 62.3931623932%;
  }
}
.page-career .career__nav-item:nth-child(2) {
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .page-career .career__nav-item:nth-child(2) {
    font-size: 1.6rem;
  }
}
.page-career .career__nav-item a {
  display: block;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
  padding: 18px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 8px;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .page-career .career__nav-item a {
    padding: 18px;
  }
}
@media screen and (min-width: 900px) {
  .page-career .career__nav-item a {
    padding: 30px 15px 23px;
    gap: 30px;
    line-height: 1.5;
  }
}
.page-career .career__nav-item a::after {
  content: "";
  width: 16px;
  height: 8px;
  background: url(/assets/images/common/icon-select.svg) no-repeat center center/contain;
}
.page-career .career__text {
  margin-bottom: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  line-height: 1.7;
}
.page-career .career-support__qualification {
  padding-top: 30px;
}
@media screen and (min-width: 768px) {
  .page-career .career-support__qualification {
    padding-top: 60px;
  }
}
.page-career .career-support__qualification__lead {
  line-height: 1.7;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-career .career-support__qualification__lead {
    margin-bottom: 40px;
  }
}
.page-career .qualification-filter {
  background-color: #EAF1FE;
  border-radius: 0 30px 0 30px;
  padding: 24px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-filter {
    -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: 20px;
    padding: 30px;
  }
}
.page-career .qualification-filter__select {
  width: 100%;
  max-width: 410px;
  padding: 13px 16px;
  background-color: #fff;
  /* ▼ 矢印をカスタム */
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  background-image: url("/assets/images/common/icon-select.svg");
  background-repeat: no-repeat;
  background-position: right 13px center;
  background-size: 16px 8px;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-filter__select {
    padding: 13px 16px;
  }
}
.page-career .qualification-filter__select:focus {
  outline: none;
  border-color: #4c6fff;
  -webkit-box-shadow: 0 0 0 2px rgba(76, 111, 255, 0.2);
          box-shadow: 0 0 0 2px rgba(76, 111, 255, 0.2);
}
.page-career .qualification-filter__note {
  font-size: 1.4rem;
  line-height: 1.7;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  margin-top: 10px;
}
.page-career .qualification-filter__note::before {
  content: "※";
}
.page-career .qualification-table__wrap {
  margin-top: 40px;
}
.page-career .qualification-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  max-width: 100%;
  position: relative;
}
.page-career .qualification-table caption {
  font-weight: 700;
  font-size: 2.4rem;
  margin-bottom: 20px;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table caption {
    font-size: 3rem;
  }
}
.page-career .qualification-table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
  color: #000;
  position: relative;
  table-layout: fixed;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table {
    border: 1px solid #BEBEBE;
  }
}
@media screen and (min-width: 1200px) {
  .page-career .qualification-table table {
    width: 100%;
  }
}
.page-career .qualification-table table thead {
  position: absolute;
  left: -9999px;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table thead {
    position: static;
    left: auto;
    display: table-header-group;
  }
}
.page-career .qualification-table table tbody {
  display: block;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table tbody {
    display: table-row-group;
  }
}
.page-career .qualification-table table tr {
  display: block;
  width: 100%;
  margin-bottom: 20px;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table tr {
    display: table-row;
    margin-bottom: 0;
  }
}
.page-career .qualification-table table tr:last-child {
  margin-bottom: 0;
}
.page-career .qualification-table table tr:nth-child(even) {
  background: #F3F3F3;
}
.page-career .qualification-table table th {
  background-color: #2B52A2;
  color: #fff;
  border: 1px solid #BEBEBE;
  padding: 16px;
  font-weight: 700;
  width: 290px;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table th {
    width: max(290px, 33.3333333333%);
  }
}
.page-career .qualification-table table td {
  border: 1px solid #BEBEBE;
  padding: 15px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 16px;
  line-height: 1.7;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table td {
    display: table-cell;
    width: max(290px, 33.3333333333%);
  }
}
.page-career .qualification-table table td:nth-child(2) {
  border-top: none;
  border-bottom: none;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table td:nth-child(2) {
    border: 1px solid #BEBEBE;
  }
}
.page-career .qualification-table table td:nth-child(2) a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  width: 100%;
  position: relative;
  text-decoration: underline;
  text-underline-offset: 0.2em;
  position: relative;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table td:nth-child(2) a {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.page-career .qualification-table table td:nth-child(2) a::after {
  content: "";
  width: 15px;
  height: 15px;
  background: url("/assets/images/common/icon-external.svg") no-repeat center center/contain;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.page-career .qualification-table table td:nth-child(3) a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  width: 100%;
}
.page-career .qualification-table table td:nth-child(3) a::before {
  content: "";
  width: 15px;
  height: 15px;
  background: url("/assets/images/common/icon-tel-main-color.svg") no-repeat center center/contain;
}
.page-career .qualification-table table td:before {
  background: #2f5597;
  color: #fff;
  width: 128px;
  text-align: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  padding: 12px;
  font-weight: bold;
  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;
  margin: -15px 0 -15px -16px;
  border-right: 1px solid #BEBEBE;
}
@media screen and (min-width: 768px) {
  .page-career .qualification-table table td:before {
    display: none;
  }
}
.page-career .qualification-table table td:nth-child(1)::before {
  content: "資格検定名";
}
.page-career .qualification-table table td:nth-child(2)::before {
  content: "問い合わせ先";
}
.page-career .qualification-table table td:nth-child(3)::before {
  content: "連絡先";
}
.page-career .CCUS {
  padding-top: 60px;
}
.page-career .btn-c {
  padding: 11px 10px 11px 20px;
  gap: 10px;
  width: 310px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-career .btn-c {
    width: 600px;
    gap: 20px;
  }
}

.page-search__inner {
  margin-bottom: 120px;
}
@media screen and (min-width: 768px) {
  .page-search__inner {
    padding-bottom: 145px;
  }
}
.page-search .search__lead {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-search .search__lead {
    font-size: 3rem;
  }
}
.page-search .search__lead .blue {
  color: #2B52A2;
  font-weight: 700;
}
@media screen and (min-width: 768px) {
  .page-search .search__lead .blue {
    font-size: 4rem;
  }
}
.page-search .search__lead .number {
  font-size: 3.6rem;
}
@media screen and (min-width: 768px) {
  .page-search .search__lead .number {
    font-size: 4.8rem;
  }
}
.page-search .search-archive {
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .page-search .search-archive {
    margin-bottom: 40px;
  }
}
.page-search .search__lists--archive .tag {
  font-size: 1.6rem;
  font-weight: 700;
  padding: 0px 10px;
  color: #fff;
  background: #90A4CC;
  letter-spacing: 0.01em;
}
@media screen and (min-width: 768px) {
  .page-search .search__lists--archive .tag {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    letter-spacing: 0.02em;
  }
}
.page-search .search__lists--archive .tag--new {
  background: #CC0000;
}
.page-search .search__lists--archive .tag--end {
  background: #666666;
}
.page-search .search__list {
  padding: 30px 0px;
  border-bottom: 1px solid #C0CCE4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 12px;
}
@media screen and (min-width: 768px) {
  .page-search .search__list {
    padding: 40px 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 30px;
  }
}
.page-search .search__list:first-child {
  padding-top: 0;
}
.page-search .search-list__date {
  font-family: "Lato", sans-serif;
  letter-spacing: 0.01em;
}
.page-search .search-list__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 15px;
}
.page-search .search-list__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
}
.page-search .search-list__text {
  font-size: 1.6rem;
  display: inline-block;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  font-weight: 400;
}
.page-search .search-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  width: 316px;
  height: 51px;
  background: #fff;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .page-search .search-box {
    width: 550px;
    height: 54px;
    margin: 0;
  }
}
.page-search .search-box__input {
  min-width: 0;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  padding: 0 20px;
  font-size: 1.6rem;
  border: none;
  outline: none;
  color: #222;
  border-radius: 0 0 0 20px;
  border: 1.14px solid #222;
  cursor: text;
}
@media screen and (min-width: 768px) {
  .page-search .search-box__input {
    border-radius: 0 0 0 30px;
  }
}
.page-search .search-box__input::-webkit-input-placeholder {
  color: #999;
}
.page-search .search-box__input::-moz-placeholder {
  color: #999;
}
.page-search .search-box__input:-ms-input-placeholder {
  color: #999;
}
.page-search .search-box__input::-ms-input-placeholder {
  color: #999;
}
.page-search .search-box__input::placeholder {
  color: #999;
}
.page-search .search-box__button {
  width: 56px;
  height: 100%;
  background-color: #222;
  border-radius: 0 20px 0 0;
  border: none;
  cursor: pointer;
  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;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
@media screen and (min-width: 768px) {
  .page-search .search-box__button {
    width: 50px;
    border-radius: 0 30px 0 0;
  }
}
.page-search .search-box__button img {
  display: block;
  width: 27px;
  height: 27px;
}

/* レスポンシブ設定
------------------------------------- */
.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp {
    display: block !important;
  }
}

.pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}/*# sourceMappingURL=style.css.map */