@charset "UTF-8";
/* e_updates
======================================= */
.updates__item {
  list-style: none;
  padding: 0 0.625em 1.25em;
  border-bottom: 1px solid #fff;
}
.updates__item + .updates__item {
  margin-top: 1.875em;
}
.updates__item.--thumb a {
  display: flex;
  align-items: flex-start;
  gap: 1.875em;
}
@media (max-width: 768px) {
  .updates__item.--thumb a {
    gap: 1.25em;
  }
}
.updates__item.--thumb a:hover img {
  transform: scale(1.05);
}
.updates__item-image {
  width: 160px;
  flex-shrink: 0;
  border: 2px solid #F4F4F4;
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .updates__item-image {
    width: 100px;
  }
}
.updates__item-image img {
  aspect-ratio: 16/9;
  transition: 0.3s;
}
@media (max-width: 768px) {
  .updates__item-image img {
    aspect-ratio: 3/2;
  }
}
.updates__item-contents {
  flex: 1;
}
.updates__item a {
  transition: 0.3s;
}
.updates__item a:hover {
  color: #204DA4;
}
.updates__item a:hover .updates__item-tag {
  background-color: #204DA4;
}
.updates__item-info {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5em 1.25em;
  margin-bottom: 1em;
}
.updates__item-tags {
  display: flex;
  gap: 0.625em;
}
.updates__item-tag {
  font-size: 0.75em;
  min-width: 70px;
  text-align: center;
  border-radius: 4px;
  color: #fff;
  background-color: #3C3C3C;
  padding: 3px;
  transition: 0.3s;
}
.updates__item-date {
  font-size: 0.75em;
}
.updates__item-title {
  font-weight: 500;
}

.cv {
  height: min(29vw, 418px);
}
@media (max-width: 768px) {
  .cv {
    height: min(120vw, 452px);
  }
}
.cv__inner {
  display: flex;
  height: 100%;
}
@media (max-width: 768px) {
  .cv__inner {
    flex-direction: column;
  }
}
.cv__link {
  width: 50%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
@media (max-width: 768px) {
  .cv__link {
    width: 100%;
  }
}
.cv__link.--contact {
  background: url(../img/common/cv_contact_bg.png) no-repeat center center/cover;
}
.cv__link.--career {
  background: url(../img/common/cv_career_bg.png) no-repeat center center/cover;
}
.cv__link.--career:hover .cv__link-btn span {
  color: #204DA4;
  background-color: #fff;
}
.cv__link.--career:hover .cv__link-btn span::after {
  background: url(../img/common/btn_arrow-navy-outer.svg) no-repeat center center/contain;
}
.cv__link a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 2.5em 3.75em;
}
.cv__link a:hover .cv__link-btn span {
  color: #204DA4;
  background-color: #fff;
}
.cv__link a:hover .cv__link-btn span::after {
  background: url(../img/common/btn_arrow-navy.svg) no-repeat center center/contain;
}
.cv__link .text {
  font-size: 2.5em;
  color: #fff;
  font-weight: 500;
}
@media (max-width: 768px) {
  .cv__link .text {
    font-size: 1.5em;
  }
}
.cv__link-btn {
  width: 100%;
  position: absolute;
  bottom: 2.5em;
  right: 3.75em;
}
@media (max-width: 768px) {
  .cv__link-btn {
    bottom: 1em;
    right: 1.5em;
  }
}

/* FV
======================================= */
.top-hero__inner {
  padding-top: 2.5em;
  padding-bottom: 0;
  position: relative;
}
@media (max-width: 768px) {
  .top-hero__inner {
    padding-top: 1.25em;
    padding-bottom: 7em;
  }
}
.top-hero__image img {
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 12px;
}
@media (max-width: 768px) {
  .top-hero__image img {
    border-radius: 10px;
  }
}
.top-hero__catch {
  font-size: 1.5em;
  font-weight: 500;
  margin-bottom: 2.5rem;
}
@media (max-width: 768px) {
  .top-hero__catch {
    font-size: 1.25em;
    line-height: 1.6;
    margin-bottom: 1.5rem;
  }
}
.top-hero__catch .blue {
  color: #204DA4;
}
.top-hero__news {
  padding: 0.75em 5em 0.75em 1em;
  position: absolute;
  bottom: 2.5em;
  right: calc(50% - 50vw);
  background-color: #204DA4;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 1.25em;
  border-radius: 8px 0 0 8px;
}
@media (max-width: 768px) {
  .top-hero__news {
    width: 100vw;
    border-radius: 0;
    padding: 0.75em 2.5em;
    bottom: 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.75em;
  }
}
.top-hero__news a {
  color: #fff;
}
.top-hero__news::after {
  content: "";
  display: block;
  width: 0.875em;
  height: 0.875em;
  background: url(../img/common/arrow-white.svg) no-repeat center center/contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 3em;
}
@media (max-width: 768px) {
  .top-hero__news::after {
    display: none;
  }
}
.top-hero__news-title {
  font-size: 0.875em;
  font-weight: 500;
}
.top-hero__news-heading {
  display: flex;
  align-items: center;
  gap: 1.25em;
}
.top-hero__news-heading-date {
  display: none;
  font-size: 0.75em;
}
@media (max-width: 768px) {
  .top-hero__news-heading-date {
    display: block;
  }
}
.top-hero__news-item-date {
  font-size: 0.75em;
  margin-bottom: 4px;
}
@media (max-width: 768px) {
  .top-hero__news-item-date {
    display: none;
  }
}
.top-hero__news-item-title {
  font-size: 0.875em;
  text-decoration: underline;
}

.top-members__inner {
  padding-top: 2.5em;
  padding-bottom: 2.5em;
}
.top-members__title {
  font-weight: 500;
  text-align: center;
  color: #204DA4;
  margin-bottom: 2.5em;
}
@media (max-width: 768px) {
  .top-members__title {
    margin-bottom: 1.25em;
  }
}
.top-members__container {
  margin: 0 calc(50% - 50vw);
}
.top-members .splide__slide img {
  height: auto;
  width: 100%;
}

.top-about__inner {
  padding-top: 2.5em;
}
.top-about__upper {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 2.5em;
}
@media (max-width: 768px) {
  .top-about__upper {
    flex-direction: column;
    gap: 1.25em;
  }
}
.top-about__title {
  margin-bottom: 0;
}
.top-about__text {
  width: 50%;
}
@media (max-width: 768px) {
  .top-about__text {
    width: 100%;
  }
}
.top-about__list {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2.5em;
}
@media (max-width: 768px) {
  .top-about__list {
    flex-direction: column;
    gap: 1em;
  }
}
.top-about__item {
  width: 31.25%;
  background-color: #F0F0F0;
  border-radius: 15px;
  padding: 1.25em;
}
@media (max-width: 768px) {
  .top-about__item {
    width: 100%;
  }
}
.top-about__item-icon {
  width: 5em;
  height: 5em;
  margin-bottom: 1.25em;
}
.top-about__item-title {
  font-size: 1.5em;
  font-weight: 500;
  line-height: 1.333;
  margin-bottom: 1.25em;
}
@media (max-width: 768px) {
  .top-about__item-title {
    margin-bottom: 0.75em;
  }
}
.top-about__item-list {
  display: flex;
  flex-direction: column;
}
.top-about__item-list-item {
  display: flex;
  align-items: flex-start;
  line-height: 1.5;
}
.top-about__item-list-item::before {
  content: "・";
  display: inline-block;
}
.top-about__btns {
  display: flex;
  justify-content: center;
  gap: 1.25em;
}
@media (max-width: 768px) {
  .top-about__btns {
    align-items: flex-end;
    flex-direction: column;
  }
}
.top-about__btn {
  max-width: inherit;
  width: 200px;
}

.top-research__container {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media (max-width: 768px) {
  .top-research__container {
    flex-direction: column;
    gap: 5em;
  }
}
.top-research__movie {
  width: 45.3125%;
}
@media (max-width: 768px) {
  .top-research__movie {
    width: 100%;
  }
}
.top-research__movie iframe {
  aspect-ratio: 16/9;
}
.top-research__contents {
  width: 50%;
  display: flex;
  flex-direction: column;
}
@media (max-width: 768px) {
  .top-research__contents {
    width: 100%;
  }
}
.top-research__list {
  margin-bottom: 3.125em;
}
.top-research__btn {
  width: 100%;
}

.top-people {
  position: relative;
  z-index: 1;
}
.top-people::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  background: url(../img/top/people_bg.jpg) no-repeat center center/cover;
}
@media (max-width: 768px) {
  .top-people::before {
    background: #F4F4F4 url(../img/top/people_bg-sp.jpg) no-repeat top center/contain;
  }
}
.top-people__inner {
  padding-top: 10em;
  padding-bottom: 0;
}
@media (max-width: 768px) {
  .top-people__inner {
    padding-top: 8.75em;
  }
}
.top-people__container {
  background-color: #fff;
  padding: 3.125em 2.5em;
  border-radius: 15px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  transform: translateY(57.8%);
}
@media (max-width: 768px) {
  .top-people__container {
    flex-direction: column;
    gap: 1em;
    transform: translateY(0);
    padding: 3em 1.25em;
  }
}
.top-people__contents {
  width: 50%;
}
@media (max-width: 768px) {
  .top-people__contents {
    width: 100%;
  }
}
.top-people__title {
  margin-bottom: 0;
}
.top-people__text {
  margin-bottom: 2.5em;
}

.top-career__inner {
  padding-top: 16.125em;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .top-career__inner {
    padding-top: 5em;
    flex-direction: column;
    gap: 2.5em;
  }
}
.top-career__left {
  width: 45.3125%;
}
@media (max-width: 768px) {
  .top-career__left {
    width: 100%;
  }
}
.top-career__right {
  width: 50%;
}
@media (max-width: 768px) {
  .top-career__right {
    width: 100%;
  }
}
.top-career__box {
  background-color: #204DA4;
  padding: 2.5em;
  border-radius: 15px;
  margin-bottom: 2.5em;
}
@media (max-width: 768px) {
  .top-career__box {
    padding: 2.5em 1.25em;
  }
}
.top-career__box-title {
  color: #fff;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.25em;
  font-weight: 500;
  margin-bottom: 2.5em;
}
@media (max-width: 768px) {
  .top-career__box-title {
    gap: 0.625em;
  }
}
.top-career__box-title::before, .top-career__box-title::after {
  content: "";
  flex: 1;
  height: 1px;
  background-color: #fff;
  display: inline-block;
}
.top-career__box-list {
  display: flex;
  flex-wrap: wrap;
  gap: 2%;
}
.top-career__box-list-item {
  min-width: 49%;
  font-size: 0.875em;
  color: #fff;
  white-space: nowrap;
}

.top-news__container {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 768px) {
  .top-news__container {
    flex-direction: column;
    gap: 0.625em;
  }
}
.top-news__left {
  width: 45.3125%;
}
@media (max-width: 768px) {
  .top-news__left {
    width: 100%;
    border-bottom: 1px solid #F4F4F4;
  }
}
.top-news__left a:hover img {
  transform: scale(1.05);
}
.top-news__left a:hover .updates__item-title {
  color: #204DA4;
}
.top-news__left a:hover .updates__item-date {
  color: #204DA4;
}
.top-news__left a:hover .updates__item-tag {
  background-color: #204DA4;
}
.top-news__item-image {
  border: 2px solid #F4F4F4;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 1.875em;
}
@media (max-width: 768px) {
  .top-news__item-image {
    margin-bottom: 1.25em;
  }
}
.top-news__item-image img {
  transition: 0.3s;
}
.top-news__right {
  width: 50%;
}
@media (max-width: 768px) {
  .top-news__right {
    width: 100%;
  }
}
.top-news__list {
  margin-bottom: 2.5em;
}
@media (max-width: 768px) {
  .top-news__list .updates__item {
    padding: 1.25em 0 1.875em;
    border-bottom: 1px solid #F4F4F4;
  }
}

.top-faq__inner {
  display: flex;
}
@media (max-width: 768px) {
  .top-faq__inner {
    flex-direction: column;
    gap: 2.5em;
  }
}
.top-faq__contents {
  width: 45.3125%;
}
@media (max-width: 768px) {
  .top-faq__contents {
    width: 100%;
  }
}
.top-faq__container {
  width: 50%;
}
@media (max-width: 768px) {
  .top-faq__container {
    width: 100%;
  }
}
.top-faq__list {
  margin-bottom: 2.5em;
}
.top-faq__item {
  border-radius: 15px;
  overflow: hidden;
  cursor: pointer;
}
.top-faq__item:nth-child(n+2) {
  margin-top: 1.25em;
}
.top-faq__item-question {
  background-color: #fff;
  padding: 1em 1.25em;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5em;
}
.top-faq__item-question-text {
  color: #222222;
}
.top-faq__item-question-icon {
  width: 0.875em;
  height: 0.875em;
  position: relative;
  flex-shrink: 0;
}
.top-faq__item-question-icon::before, .top-faq__item-question-icon::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #204DA4;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.top-faq__item-question-icon::before {
  transform: translate(-50%, -50%);
}
.top-faq__item-question-icon::after {
  transform: translate(-50%, -50%) rotate(-90deg);
  transition: transform 0.25s ease, opacity 0.25s ease;
}
.top-faq__item.is-open .top-faq__item-question-icon::after {
  opacity: 0;
}
.top-faq__item.is-open .top-faq__item-question-icon::before {
  background-color: #fff;
}
.top-faq__item.is-open .top-faq__item-question {
  background-color: #204DA4;
}
.top-faq__item.is-open .top-faq__item-question-text {
  color: #fff;
}
.top-faq__item-answer {
  height: 0;
  overflow: hidden;
  transition: height 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  background-color: #fff;
}
.top-faq__item-answer-text {
  padding: 1.25em;
  line-height: 1.5;
}