@charset "utf-8";
/* CSS Document */

/* ================================

　  記事一覧

================================= */

.section-news-list__item {
  padding-left: 0 !important;
}
.section-news-list__item:before {
  display: none;
}
.section-news-list__item:not(:first-of-type) {
  margin-top: 28px;
}
.section-news-list__link {
  display: block;
  padding-bottom: 31px;
}
.section-news-list__link:hover .section-news-list__time,
.section-news-list__link:focus .section-news-list__time,
.section-news-list__link:hover .section-news-list__text,
.section-news-list__link:focus .section-news-list__text {
  color: #2b55a0;
}
.section-news-list__link-border {
  position: relative;
}
.section-news-list__link-border::before {
  position: absolute;
  content: "";
  width: 100%;
  height: 1px;
  bottom: 0;
  left: 0;
  background: #d5d5d5;
}
.section-news-list__link-border::after {
  position: absolute;
  content: "";
  width: 0%;
  height: 2px;
  bottom: 0;
  left: 0;
  background: #2b55a0;
  transition: width ease 0.4s;
}
.section-news-list__link-border:hover::after,
.section-news-list__link-border:focus::after {
  width: 100%;
  height: 2px;
}
.section-news-list__category-wrapper {
  display: flex;
  justify-content: flex-start;
  flex-wrap: nowrap;
  gap: 10px 19px;
  align-items: center;
}
.section-news-list__time {
  transition: color ease .4s;
  width: 90px;
}

/* 通常記事 */
.page-news .section-news-list__category,
.post .section-news-list__category {
  font-size: 1.2rem;
  padding: 8px 10px;
  background: #f8f8f8;
  text-align: center;
  width: 132px;
}
.page-news .section-news-list__text,
.post .section-news-list__text {
  margin-top: 0 !important;
  transition: color ease .4s;
  width: 940px;
}
/* 採用記事 */
.information .section-news-list__category {
  font-size: 1.2rem;
  background: #2B55A0;
  text-align: center;
  width: 70px;
  color: #fff;
  padding: 3px 0 6px;
  border-radius: 2px;
}
.information .section-news-list__text {
  margin-top: 0 !important;
  transition: color ease .4s;
  width: 940px;
}

/*  ページネーション  */
.post_wrap .pagination {
  margin: 40px 0 0;
}
.post_wrap .pagination h2 {
  display: none;
}
.post_wrap .nav-links {
  display: flex;
  justify-content: center;
  position: relative;
}
.post_wrap .pagination .page-numbers {
  display: inline-block;
  font-weight: 400;
  margin: 0 5px;
  color: #000;
  background: #fff;
  border: 1px solid #000;
  width: 30px;
  height: 30px;
  text-align: center;
  transition-property: opacity, color, background-color, filter;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transition-delay: 0s;
}
.post_wrap .pagination .dots {
  border: none;
}
.post_wrap .pagination .nav-links a.page-numbers:hover {
  background-color: #000;
  color: #fff;
}
.post_wrap .pagination .current {
  background: #000;
  color: #fff;
}
.post_wrap .pagination .prev,
.post_wrap .pagination .next {
  background: transparent;
  color: #000;
  border: none;
  width: auto;
}
.post_wrap .pagination .nav-links a:before {
  background-color: transparent;
}
.post_wrap .pagination .nav-links a.prev,
.post_wrap .pagination .nav-links a.next {
  transition-property: opacity, color, background-color, filter;
  transition-duration: 0.2s;
  transition-timing-function: ease-in-out;
  transition-delay: 0s;
}
.post_wrap .pagination .nav-links a.prev:hover,
.post_wrap .pagination .nav-links a.next:hover {
  background-color: transparent;
  color: #000;
  opacity: 0.6;
}
.post_wrap .pagination .prev {
  margin-right: 20px;
  margin-left: 0;
}
.post_wrap .pagination .next {
  margin-left: 20px;
  margin-right: 0;
}
.post_wrap .pagination .dots {
  background: transparent;
  box-shadow: none;
}

/* ~1240px
--------------------------------- */
@media screen and (max-width: 1240px) {
  
  .section-news-list__category-wrapper {
    flex-wrap: wrap;
  }
  .section-news-list__text {
    width: 100% !important;
  }
  
}

@media screen and (max-width: 767px) {
  
}

@media screen and (max-width: 375px) {

  /* newsセクション *******************/
  .section-news-list__item:not(:first-of-type) {
    margin-top: 24px;
  }
  .section-news-list__link {
    padding-bottom: 25px;
  }
  .section-news-list__time {
    font-size: 1.4rem;
    line-height: 1.857;
  }
  .section-news-list__category {
    padding: 7px 13px;
  }
  .section-news-list__text {
    margin-top: 9px;
  }
  
  /*  ページネーション  */
  .post_wrap .pagination .page-numbers {
    font-size: 14px;
  }

}/* /.max-width:375px */


/* ================================

　  投稿レイアウト

================================= */

.post_wrap {
  max-width: 1248px;
  padding: 70px 24px 110px;
  width: 100%;
  margin: 0 auto;
  font-size: 1.6rem;
  line-height: 26px;
}

.post_wrap p:not(:first-child) {
	margin-top: 0.8em;
}


/* ~1024px
--------------------------------- */
@media screen and (max-width: 1024px) {
  
  
}

/* ~767px
--------------------------------- */
@media screen and (max-width: 767px) {
  
}

/* ~375px
--------------------------------- */
@media screen and (max-width: 375px) {
  
  .post_wrap {
    padding: 50px 24px 100px;
  }
  
  .post_wrap p {
    font-size: 1.4rem;
    line-height: 26px;
  }
  
}


/* ================================

　  投稿見出し

================================= */

.post_wrap h2 {
  position: relative;
  font-size: 32px;
  font-weight: 400;
  padding-left: 0.5em;
  margin-bottom: 25px;
  border-left: 5px solid #2B55A0;
  line-height: 1.6;
}

.post_wrap h3 {
  position: relative;
  font-size: 24px;
  font-weight: 400;
  padding-left: 0.8em;
  margin-bottom: 25px;
  line-height: 1.6;
}
.post_wrap h3:before {
  position: absolute;
  content: '';
  background-color: #2B55A0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  top: 15px;
  left: 0;
}

.post_wrap h4 {
  color: #2B55A0;
  font-size: 22px;
  font-weight: 500;
  margin-bottom: 20px;
  line-height: 1.6;
}

/* ~1024px
--------------------------------- */
@media screen and (max-width: 1024px) {
  
  
}

/* ~767px
--------------------------------- */
@media screen and (max-width: 767px) {
  
  .post_wrap h2 {
    font-size: 24px;
  }
  
  .post_wrap h4 {
    font-size: 16px;
  }
  
}

/* ~375px
--------------------------------- */
@media screen and (max-width: 375px) {
  
  .post_wrap h3 {
    font-size: 18px;
  }
  .post_wrap h3:before {
    width: 8px;
    height: 8px;
    top: 12px;
    left: 0;
  }
  
}


/* ================================

　  投稿記事

================================= */

.single_back_button {
  display: flex;
  justify-content: center;
  margin-top: 90px;
}

/* ~1024px
--------------------------------- */
@media screen and (max-width: 1024px) {
  
  
}

/* ~767px
--------------------------------- */
@media screen and (max-width: 767px) {
  
  
}

/* ~375px
--------------------------------- */
@media screen and (max-width: 375px) {
  
  
}


/*==================================================
entryエリア
======================================================*/
.entry-area {
  color: #fff;
  text-align: center;
  background: url(../img/recruit/entry_bg.png) no-repeat center center / cover;
}
.entry-area__inner {
  padding: 152px 24px 121px;
  max-width: 1920px;
  margin: auto;
}
.entry-area__text {
  font-size: 3rem;
  font-weight: 500;
  line-height: 2.267;
}
.entry-area-only-mobile {
  display: none;
}
.entry-area__link-wrapper {
  margin-top: 59px;
}
.entry-area__link {
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.333;
}
.entry-link-arrow {
  position: relative;
}
.entry-link-arrow::before {
  position: absolute;
  content: "";
  right: 59px;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 58px;
  height: 100%;
  background: url(../img/recruit/entry_icon_link_arrow_right_white.svg) no-repeat center center / contain;
  transition: background-image ease 0.4s;
}
.entry__link-anim-round {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 4.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
  border-radius: 200px;
  padding: 40px 176px 34px 180px;
  width: 100%;
  max-width: 1200px;
  border: 2px solid #2b55a0;
  background-color: #2b55a0;
  transition: color ease 0.4s, background-color ease 0.4s;
  margin: auto;
}
.entry-link-arrow:hover::before,
.entry-link-arrow:focus::before {
  background: url(../img/recruit/entry_icon_link_arrow_right_blue.svg) no-repeat center center / contain;
}
.entry__link-anim-round:hover,
.entry__link-anim-round:focus {
  background-color: #fff;
  color: #2b55a0;
}

@media screen and (max-width: 1280px) {
  
  /* entryエリア *******************/
  .entry-area-only-mobile {
    display: inline;
  }
  
} /* max-width:1280px */

@media screen and (max-width: 767px) {
  /* ハンバーガーメニューボタン *******************/
  .information .hamburgur-btn {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 35px;
    height: 27px;
    margin: 18px 10px 0 auto;
    position: absolute;
    right: 0;
  }
  .information .hamburgur-btn__line-top,
  .information .hamburgur-btn__line-center,
  .information .hamburgur-btn__line-bottom {
    width: 100%;
    height: 1px;
    background: #000;
    visibility: visible;
    transition: transform ease 0.4s, opacity ease 0.4s, visibility ease 0.4s;
  }
  .information .hamburgur-btn-is-open .hamburgur-btn__line-top {
    transform: translateY(15px) rotate(45deg);
  }
  .information .hamburgur-btn-is-open .hamburgur-btn__line-center {
    visibility: hidden;
    opacity: 0;
  }
  .information .hamburgur-btn-is-open .hamburgur-btn__line-bottom {
    transform: translateY(-10px) rotate(-45deg);
  }

  /* entryエリア *******************/
  .entry-area {
    background: url(../img/recruit/entry_bg_sp.png) no-repeat center center / cover;
  }
  .entry-area__inner {
    padding: 152px 6.4% 121px;
  }
  .entry-area__text {
    font-size: clamp(1.8rem, 4vw, 3rem);
    line-height: clamp(133.3%, 2vw, 226.7%);
  }
  .entry__link-anim-round {
    font-weight: 700;
    font-size: clamp(2rem, 6.26vw, 4.8rem);
    padding: 20px 96px 20px 100px;
  }
  .entry-link-arrow::before {
    right: 10px;
    width: clamp(20px, 6.52vw, 50px);
  }

} /* max-width:767px */

@media screen and (max-width: 375px) {
  
  /* entryエリア *******************/
  .entry-area__inner {
    padding: 99px 24px 99px;
  }
  .entry-area__text {
    font-size: clamp(1.6rem, 4.8vw, 1.8rem);
    line-height: 1.333;
  }
  .entry-area__link-wrapper {
    margin-top: 44px;
  }
  .entry__link-anim-round {
    font-size: 2rem;
    padding: 14px 96px 12px 100px;
    letter-spacing: 0;
  }
  .entry-link-arrow::before {
    right: 15px;
    width: 20px;
  }

} /* max-width:375px */


/* ================================

　  メインビジュアル

================================= */

.main-visual {
  background: #f8f8f8;
  border-bottom-right-radius: 150px;
}
.main-visual__inner {
  width: 100%;
  max-width: 1248px;
  padding-top: 50px;
  padding-bottom:50px;
  padding-left: 24px;
  padding-right: 24px;
  margin-left: auto;
  margin-right: auto;
  min-height: 300px;
  display: flex;
  justify-content: flex-start;
}
.main-visual__body {
  margin: auto 0;
}
.main-visulal__level2-txt {
  font-size: clamp(4.5rem, 3.752rem + 1.56vw, 5rem);
  line-height: 1.44;
  margin-top: -11px;
  margin-bottom: -11px;
  font-weight: 500;
}
.main-visulal__subcopy {
  font-size: 1.4rem;
  line-height: 1.714;
  margin-bottom: 12px;
  display: inline-block;
  font-weight: 500;
}
.main-visulal__subcopy--blue {
  color: #2b55a0;
}

/* ================================

　  パンくずリスト

================================= */

.bread-crumbs {
  font-size: 1.2rem;
  width: 100%;
}
.bread-crumbs__inner {
  max-width: 1248px;
  padding-top: 11px;
  padding-bottom: 11px;
  padding-left: 24px;
  padding-right: 24px;
  margin: 0 auto;
}
.bread-crumbs__list {
  color: #000;
  display: flex;
  flex-wrap: wrap;
}
.bread-crumbs__list-item {
  display: flex;
  align-items: flex-start;
}
/* パンくずの最後の要素 */
.bread-crumbs__list-item:last-of-type {
  color:#6c6c6c;
}
/* パンくずの三角マーク */
.bread-crumbs__triangle:not(:first-of-type)::before {
  content:"";
  background: url(../img/under/icon_bread-crumbs-triangle.svg) no-repeat center center / contain;
  width: 8px;
  height: 10px;
  top: 4px;
  left: -16px;
  color: #000;
  padding: 0 14px;
  margin-top: 10px;
}
.bread-crumbs__link {
  line-height: 2.167;
  color: inherit;
  transition: color ease .4s;
}
.bread-crumbs__link:hover,
.bread-crumbs__link:focus {
  color:#2b55a0;
}
