@charset "UTF-8";
body,
a,
button,
input,
textarea,
select {
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  color: #212429;
}

.animation_fade {
  opacity: 0;
  transition: opacity 2s, transform 2s;
}
.animation_fade.top {
  transform: translateY(-100px);
}
.animation_fade.bottom {
  transform: translateY(100px);
}
.animation_fade.left {
  transform: translateX(-100px);
}
.animation_fade.right {
  transform: translateX(100px);
}
.animation_fade.fadein {
  opacity: 1;
  transform: translate(0);
}

.hamburger_menu .hamburger_menu_btn {
  position: relative;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  width: 3.25rem;
  aspect-ratio: 52/18;
  transition: all 0.3s ease;
  cursor: pointer;
}
.hamburger_menu .hamburger_menu_btn .bar {
  display: block;
  width: 100%;
  height: 0.125rem;
  background-color: #071575;
  transition: all 0.5s ease;
}
.hamburger_menu .hamburger_menu_btn .bar:nth-child(3) {
  width: 50%;
}
.hamburger_menu .hamburger_menu_list_wrapper {
  display: block;
  position: fixed;
  z-index: -1;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  padding: 0 1.5rem;
  overflow-x: auto;
  transition: all 0.5s ease;
  opacity: 0;
  visibility: hidden;
}
@media screen and (max-width: 768px) {
  .hamburger_menu .hamburger_menu_list_wrapper {
    padding: 0 0.9375rem;
  }
}
.hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list {
  display: block;
}
.hamburger_menu.open .hamburger_menu_btn {
  justify-content: center;
  transition: all 0.3s ease;
}
.hamburger_menu.open .hamburger_menu_btn .bar {
  transform: translateY(0.0625rem) rotate(30deg);
  background-color: #fff;
}
.hamburger_menu.open .hamburger_menu_btn .bar:nth-child(2) {
  display: none;
}
.hamburger_menu.open .hamburger_menu_btn .bar:nth-child(3) {
  width: 100%;
  transform: translateY(-0.0625rem) rotate(-30deg);
}
.hamburger_menu.open .hamburger_menu_list_wrapper {
  z-index: 999;
  opacity: 1;
  visibility: visible;
  transition: all 0.5s ease;
}

.horizontal_scroll {
  overflow-x: clip;
}
@media screen and (max-width: 768px) {
  .horizontal_scroll {
    padding: 0 0.9375rem;
  }
}
.horizontal_scroll .horizontal_scroll_inner {
  --sticky-container-height: 100vh;
  height: var(--sticky-container-height);
}
.horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__sticky {
  position: sticky;
  top: 5.375rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: calc(100vh - 4.375rem - 2rem);
}
@media screen and (max-width: 768px) {
  .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__sticky {
    min-height: initial;
    position: initial;
  }
}
.horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller {
  display: flex;
  overflow: auto;
}
@media screen and (max-width: 768px) {
  .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller {
    display: block;
  }
}
.horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller::before, .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller::after {
  content: "";
  width: calc((100vw - 1180px) / 2);
  flex-shrink: 0;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller::before, .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller::after {
    width: 1rem;
    display: none;
  }
}
.horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller.nobar {
  overflow: hidden;
}
.horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller .scroller_item {
  flex-basis: 35vw;
  flex-shrink: 0;
  height: calc(100vh - 4.375rem - 2rem);
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller .scroller_item {
    width: 100%;
    height: 32rem;
  }
}
.horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller .scroller_item:not(:first-child) {
  margin-left: 1%;
}
@media screen and (max-width: 768px) {
  .horizontal_scroll .horizontal_scroll_inner .horizontal_scroll__scroller .scroller_item:not(:first-child) {
    margin-left: 0;
    margin-top: 0.9375rem;
  }
}

.slider {
  width: 100%;
  margin: 0 auto;
}
.slider .slide_item {
  margin-bottom: 0.5rem !important;
  transition: all 0.5s ease;
}
.slider.center_slider .slide_item {
  width: 50vw;
  transform: scale(0.8);
  opacity: 0.5;
}
.slider.center_slider .slide_item.slick-center {
  transform: scale(1);
  opacity: 1;
}
.slider .slick-arrow {
  position: absolute;
  z-index: 500;
  width: 3rem;
  height: 3rem;
  cursor: pointer;
  outline: none;
  background-color: #071575;
  border-radius: 50%;
  top: 42%;
}
@media screen and (max-width: 768px) {
  .slider .slick-arrow {
    width: 2rem;
    height: 2rem;
  }
}
.slider .slick-arrow::before, .slider .slick-arrow::after {
  content: "";
  display: block;
  position: absolute;
  width: 30%;
  height: 0.125rem;
  background-color: #fff;
  border-radius: 0.125rem;
}
.slider .slick-arrow::before {
  top: 38%;
}
.slider .slick-arrow::after {
  bottom: 38%;
}
.slider .slick-arrow.slick-prev {
  left: 0.25rem;
}
.slider .slick-arrow.slick-prev::before, .slider .slick-arrow.slick-prev::after {
  left: 32%;
}
.slider .slick-arrow.slick-prev::before {
  transform: rotate(-45deg);
}
.slider .slick-arrow.slick-prev::after {
  transform: rotate(45deg);
}
.slider .slick-arrow.slick-next {
  right: 0.25rem;
}
.slider .slick-arrow.slick-next::before, .slider .slick-arrow.slick-next::after {
  right: 32%;
}
.slider .slick-arrow.slick-next::before {
  transform: rotate(45deg);
}
.slider .slick-arrow.slick-next::after {
  transform: rotate(-45deg);
}
.slider .slick-dots {
  display: flex;
  justify-content: center;
  gap: 0.5rem;
  margin-top: 1rem;
}
.slider .slick-dots li {
  display: inline-block;
}
.slider .slick-dots li button {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  color: transparent;
  background: #d9d9d9;
  border-radius: 50%;
  outline: none;
}
.slider .slick-dots li.slick-active button {
  background: #071575;
}

.tab_buttons {
  display: flex;
}
.tab_buttons .tab_button {
  background: unset;
}

.tab_contents .tab_content {
  display: none;
}
.tab_contents .tab_content.active {
  display: block;
}

/* リセットCSS */
* {
  margin: 0;
  padding: 0;
}

*,
::before,
::after {
  border-style: solid;
  box-sizing: border-box;
  border-width: 0;
}

html {
  height: 100%;
  scroll-behavior: smooth;
}

body {
  min-height: 100vh;
  line-height: 2;
  text-rendering: optimizeSpeed;
}

ul,
ol {
  list-style: none;
}

a {
  color: inherit;
  background-color: transparent;
  text-decoration: none;
  text-decoration-skip-ink: auto;
}

img,
video,
iframe {
  display: block;
  max-width: 100%;
  width: 100%;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

html {
  font-size: 1.4134275618vw;
}
@media screen and (max-width: 768px) {
  html {
    font-size: 16px;
  }
}
@media (min-width: 1132px) {
  html {
    font-size: 16px;
  }
}
@media screen and (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}

/* ホバー */
a,
button,
.btn {
  cursor: pointer;
  transition: 0.3s;
}
a:hover,
button:hover,
.btn:hover {
  opacity: 0.8;
}
@media screen and (max-width: 768px) {
  a:hover,
button:hover,
.btn:hover {
    opacity: 1;
  }
}

/* レスポンシブ */
@media screen and (max-width: 768px) {
  .u_pc {
    display: none !important;
  }
}

.u_sp,
.u_sp_b {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u_sp,
.u_sp_b {
    display: block !important;
  }
}

.u_sp_i {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u_sp_i {
    display: inline !important;
  }
}

.u_sp_ib {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u_sp_ib {
    display: inline-block !important;
  }
}

.u_sp_f {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u_sp_f {
    display: flex !important;
  }
}

.u_sp_t {
  display: none !important;
}
@media screen and (max-width: 768px) {
  .u_sp_t {
    display: table-row !important;
  }
}

/* インナーボックス */
.innerbox_1240 {
  max-width: calc(1240px + 2rem);
  margin: 0 auto;
  padding: 0 1rem;
}
@media screen and (max-width: 768px) {
  .innerbox_1240 {
    padding: 0 0.9375rem;
  }
}

.innerbox_1180 {
  max-width: calc(1180px + 2rem);
  margin: 0 auto;
  padding: 0 1rem;
}
@media screen and (max-width: 768px) {
  .innerbox_1180 {
    padding: 0 0.9375rem;
  }
}

.innerbox_980 {
  max-width: calc(980px + 2rem);
  margin: 0 auto;
  padding: 0 1rem;
}
@media screen and (max-width: 768px) {
  .innerbox_980 {
    padding: 0 0.9375rem;
  }
}

.innerbox_890 {
  max-width: calc(890px + 2rem);
  margin: 0 auto;
  padding: 0 1rem;
}
@media screen and (max-width: 768px) {
  .innerbox_890 {
    padding: 0 0.9375rem;
  }
}

/* その他頻出パーツ */
.flexbox {
  display: flex;
}

.flex_center {
  display: flex;
  justify-content: center;
  align-items: center;
}

.btn {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 100%;
}
.btn:hover {
  opacity: 1;
}
.btn.return_btn {
  width: 12.5rem;
  height: 4rem;
  color: #fff;
  background-color: #071575;
  border-radius: 2rem;
}
.btn.white_btn, .btn.navy_btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 3.75rem;
  border: 1px solid #071575;
  padding: 0.5rem 2rem;
  font-size: 1rem;
}
.btn.white_btn {
  color: #071575;
  background-color: #fff;
}
.btn.white_btn:hover {
  color: #fff;
  background-color: #071575;
  border-color: #fff;
}
.btn.navy_btn {
  color: #fff;
  background-color: #071575;
}
.btn.navy_btn:hover {
  color: #071575;
  background-color: #fff;
}
.btn.arrow_btn {
  gap: 1rem;
}
.btn.arrow_btn::after {
  content: "";
  display: block;
  width: 2.25rem;
  height: 0.375rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.btn.arrow_btn.navy_btn::after {
  background-image: url(../../assets/img/common/icon_arrow_white.webp);
}
.btn.arrow_btn.navy_btn:hover::after {
  background-image: url(../../assets/img/common/icon_arrow_navy.webp);
}
.btn.arrow_btn.white_btn::after {
  background-image: url(../../assets/img/common/icon_arrow_navy.webp);
}
.btn.arrow_btn.white_btn:hover::after {
  background-image: url(../../assets/img/common/icon_arrow_white.webp);
}
.btn.link_btn::after {
  content: "";
  display: block;
  width: 1.5625rem;
  height: 1.5625rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.btn.link_btn.navy_btn::after {
  background-image: url(../../assets/img/common/icon_link_white.webp);
}
.btn.link_btn.navy_btn:hover::after {
  background-image: url(../../assets/img/common/icon_link_navy.webp);
}
.btn.link_btn.white_btn::after {
  background-image: url(../../assets/img/common/icon_link_navy.webp);
}
.btn.link_btn.white_btn:hover::after {
  background-image: url(../../assets/img/common/icon_link_white.webp);
}

ol {
  list-style: decimal;
  padding-left: 1em;
}
ol > li > ul {
  list-style: lower-alpha;
  padding-left: 1em;
}
ol > li > ul > li > ul {
  list-style: lower-roman;
  padding-left: 1em;
}

ul.dot_list > li {
  display: block;
  position: relative;
  padding-left: 1em;
}
ul.dot_list > li::before {
  content: "・";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
}

/* WordPress用パーツ */
.index_php {
  padding: 11.25rem 1rem 6.25rem;
  text-align: center;
}
.index_php .return_btn {
  margin: 2rem auto 0;
}

.not_open {
  font-size: 1.125rem;
  font-weight: 700;
  text-align: center;
  padding: 2.5rem;
}

.page_contents_wrapper {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  .page_contents_wrapper {
    padding-top: 4.375rem;
  }
}

.breadcrumb_wrapper {
  padding: 1rem 1.5rem;
}
@media screen and (max-width: 768px) {
  .breadcrumb_wrapper {
    padding: 0.8125rem 1rem;
  }
}
.breadcrumb_wrapper .breadcrumb_inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item {
  display: inline-flex;
  align-items: center;
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  color: #8f8f8f;
  margin-right: 1.0625rem;
}
@media screen and (max-width: 768px) {
  .breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item {
    font-size: 0.875rem;
    line-height: 1.4;
    margin-right: 0.9375rem;
  }
}
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item a,
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item span {
  font-size: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  font-weight: inherit;
  font-family: inherit;
  color: inherit;
}
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item:nth-child(n+2)::before {
  content: "";
  display: inline-block;
  width: 0.875rem;
  height: 0.0625rem;
  background-color: #8f8f8f;
  margin-right: 1.0625rem;
}
@media screen and (max-width: 768px) {
  .breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item:nth-child(n+2)::before {
    margin-right: 0.9375rem;
  }
}
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item:nth-last-child(1) {
  text-overflow: ellipsis;
  color: #071575;
}
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item:nth-last-child(1) a,
.breadcrumb_wrapper .breadcrumb_inner .breadcrumb_item:nth-last-child(1) span {
  pointer-events: none;
}
.wpcf7-response-output {
  padding: 1.5rem !important;
  text-align: center;
  font-weight: 700;
  background-color: #fff;
  box-shadow: 0.25rem 0.25rem 0.25rem rgba(0, 0, 0, 0.05);
}

body:not(#page__contact-us) .grecaptcha-badge {
  visibility: hidden;
}

.grecaptcha-badge {
  z-index: 9999;
}

/* body(全体) */
/* ヘッダー */
header#header {
  position: fixed;
  z-index: 900;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 4.375rem;
  background-color: #fff;
  transition: all 0.3s ease;
}
@media screen and (max-width: 768px) {
  header#header {
    height: 3.5625rem;
    background-color: unset;
  }
}
header#header .header_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  height: 100%;
  padding: 0 1.5rem;
}
header#header .header_inner .hamburger_menu_btn_label {
  font-size: 0.875rem;
  line-height: 2;
  letter-spacing: 0.03em;
  font-weight: 500;
  color: #071575;
}
header#header .header_inner .header_main_logo,
header#header .header_inner .hamburger_menu_logo {
  width: 11.625rem;
  height: 2.75rem;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_main_logo,
header#header .header_inner .hamburger_menu_logo {
    width: 6.6875rem;
    height: 1.5625rem;
  }
}
header#header .header_inner .header_left {
  display: flex;
  align-items: center;
  gap: 4.375rem;
}
@media screen and (max-width: 1099px) {
  header#header .header_inner .header_left {
    gap: 3rem;
  }
}
header#header .header_inner .header_left .header_menu_main {
  display: flex;
  align-items: center;
  gap: 2.125rem;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_left .header_menu_main {
    display: none;
  }
}
header#header .header_inner .header_right .hamburger_menu {
  display: flex;
  align-items: center;
}
header#header .header_inner .header_right .hamburger_menu .header_menu_cta {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item {
    width: 100%;
  }
}
header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 3rem;
  border: 1px solid #071575;
  padding: 0.5rem 2rem;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.5;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item > a {
    width: 100%;
    height: 5.375rem;
    font-size: 1.5rem;
  }
}
header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item.header_menu__recruit > a {
  color: #071575;
  background-color: #fff;
}
header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item.header_menu__recruit > a:hover {
  color: #fff;
  background-color: #071575;
  opacity: 1;
}
header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item.header_menu__contact > a {
  color: #fff;
  background-color: #071575;
}
header#header .header_inner .header_right .hamburger_menu .header_menu_cta > .menu-item.header_menu__contact > a:hover {
  color: #071575;
  background-color: #fff;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu > .menu-header_cta-container {
    display: none;
  }
}
header#header .header_inner .header_right .hamburger_menu > .hamburger_menu_btn_label {
  margin: 0 0.625rem 0 1.4375rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper {
  color: #fff;
  background: linear-gradient(103.14deg, #166dca -0.34%, #071575 101.41%);
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 4.375rem;
  padding-right: 3.875rem;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_header {
    height: 3.5625rem;
  }
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_header .hamburger_menu_btn_label {
  position: fixed;
  right: 5.3125rem;
  top: 1.25rem;
  color: #fff;
  opacity: 0;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_header .hamburger_menu_btn_label {
    top: 0.875rem;
  }
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner {
  display: flex;
  gap: 5rem;
  padding: 5rem 3.875rem 4rem;
  min-width: max-content;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner {
    flex-direction: column;
    gap: 4rem;
    padding: 2.3125rem 0 4rem;
    min-width: initial;
  }
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner > .menu-header_cta-container {
  display: none;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner > .menu-header_cta-container {
    display: block;
  }
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list {
  width: 19.1875rem;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list {
    width: 100%;
  }
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > a {
  position: relative;
  z-index: 400;
  display: block;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 700;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > a::before {
  content: "";
  position: absolute;
  right: 0;
  top: 1.375rem;
  display: block;
  width: 1.5625rem;
  height: 0.25rem;
  background-image: url(../../assets/img/common/icon_arrow_white.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > a::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background: linear-gradient(91.45deg, #cde5ff 1.57%, #7583e1 100.93%);
  margin-top: 1.5rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > .sub-menu {
  padding-top: 1rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > .sub-menu > .menu-item > a {
  display: block;
  font-size: 1rem;
  line-height: 2;
  font-weight: 700;
  margin-top: 0.5rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > .sub-menu > .menu-item > .sub-menu {
  padding-bottom: 1rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item > a {
  display: flex;
  align-items: center;
  font-size: 0.875rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 0.5rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item > .sub-menu > .menu-item > .sub-menu > .menu-item > a::before {
  content: "";
  display: block;
  width: 0.90625rem;
  height: 1px;
  background-color: #fff;
  margin-right: 0.625rem;
  flex-shrink: 0;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_list_inner .hamburger_menu_list > .menu-item:nth-child(n+2) {
  margin-top: 4rem;
}
header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_pp_link_wrapper {
  padding: 0 3.875rem 4rem;
}
@media screen and (max-width: 768px) {
  header#header .header_inner .header_right .hamburger_menu .hamburger_menu_list_wrapper .hamburger_menu_pp_link_wrapper {
    padding: 0 0 6.875rem;
  }
}
header#header .header_inner .header_right .hamburger_menu.open .hamburger_menu_list_wrapper .hamburger_menu_header .hamburger_menu_btn_label {
  opacity: 1;
}
@media screen and (max-width: 768px) {
  header#header.scroll {
    background-color: rgba(255, 255, 255, 0.7);
  }
}

/* フッター */
footer#footer {
  background-color: #071575;
  color: #fff;
  padding-top: 4.375rem;
}
@media screen and (max-width: 768px) {
  footer#footer {
    padding-top: 2.1875rem;
  }
}
footer#footer .footer_upper {
  padding-bottom: 6.875rem;
  border-bottom: 1px solid #ced8ea;
}
@media screen and (max-width: 768px) {
  footer#footer .footer_upper {
    padding-bottom: 3.375rem;
  }
}
footer#footer .footer_upper .footer_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
footer#footer .footer_upper .footer_left .footer_logo {
  display: block;
  width: 19rem;
}
@media screen and (max-width: 768px) {
  footer#footer .footer_upper .footer_left .footer_logo {
    width: 15.375rem;
  }
}
footer#footer .footer_upper .footer_left .footer_info {
  font-size: 1rem;
  font-weight: 500;
  line-height: 2.2;
  color: #dde6ff;
  margin-top: 2.875rem;
}
@media screen and (max-width: 768px) {
  footer#footer .footer_upper .footer_left .footer_info {
    margin-top: 1.5rem;
  }
}
footer#footer .footer_upper .footer_right {
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  footer#footer .footer_upper .footer_right {
    margin-top: 3rem;
  }
}
footer#footer .footer_upper .footer_right .footer_menu_list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem 3rem;
}
@media screen and (max-width: 639px) {
  footer#footer .footer_upper .footer_right .footer_menu_list {
    grid-template-columns: repeat(2, 1fr);
  }
}
footer#footer .footer_upper .footer_right .footer_menu_list > .menu-item > a {
  display: block;
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 2;
}
footer#footer .footer_upper .footer_right .footer_menu_list > .menu-item > .sub-menu {
  padding-top: 0.625rem;
}
footer#footer .footer_upper .footer_right .footer_menu_list > .menu-item > .sub-menu > .menu-item {
  margin-top: 0.625rem;
}
footer#footer .footer_upper .footer_right .footer_menu_list > .menu-item > .sub-menu > .menu-item > a {
  display: block;
  font-size: 1rem;
  font-weight: 500;
  line-height: 2.2;
  color: #dde6ff;
}
footer#footer .footer_lower {
  padding-top: 3.625rem;
  padding-bottom: 3.625rem;
  color: #dde6ff;
}
@media screen and (max-width: 768px) {
  footer#footer .footer_lower {
    padding-top: 4rem;
    padding-bottom: 1.25rem;
  }
}
footer#footer .footer_lower .terms_link_wrapper > a {
  display: inline-block;
  font-size: 1rem;
  line-height: 2.2;
  font-weight: 500;
  margin-right: 1em;
}
footer#footer .footer_lower .copyright {
  font-size: 0.75rem;
  line-height: 2.2;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  margin-top: 0.375rem;
}

/* CTA */
section.cta {
  margin-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  section.cta {
    margin-top: 4.375rem;
  }
}
section.cta .support_banner_wrapper .support_banner_01 {
  background-color: #f1f6fe;
  padding-top: 1.4375rem;
  padding-bottom: 1.4375rem;
}
section.cta .support_banner_wrapper .support_banner_01 .slide_item {
  margin-left: 1.375rem;
  margin-right: 1.375rem;
}
@media screen and (max-width: 768px) {
  section.cta .support_banner_wrapper .support_banner_01 .slide_item {
    margin-left: 1.25rem;
    margin-right: 1.25rem;
  }
}
section.cta .support_banner_wrapper .support_banner_01 .slide_item img {
  height: auto;
  aspect-ratio: 200/85;
  object-fit: contain;
}
section.cta .support_banner_wrapper .support_banner_02 {
  background-color: #071575;
  padding-top: 1.75rem;
  padding-bottom: 1.75rem;
}
section.cta .support_banner_wrapper .support_banner_02 .slide_item {
  height: auto;
  aspect-ratio: 348/73;
}
section.cta .support_banner_wrapper .support_banner_02 .slide_item img {
  height: 100%;
  object-fit: contain;
}
section.cta .support_banner_wrapper .support_banner_02 .slide_item .banner_text {
  height: 100%;
  line-height: 2;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
}
section.cta .support_banner_wrapper .support_banner_02 .slide_item .banner_text.banner_text__en {
  font-size: 1.75rem;
  font-family: "Roboto Condensed", sans-serif;
}
section.cta .support_banner_wrapper .support_banner_02 .slide_item .banner_text.banner_text__ja {
  font-size: 1.5rem;
}
section.cta .main_cta_wrapper {
  background-image: url(../../assets/img/common/cta_bg.webp);
  background-position: top center;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-color: #071575;
  padding-top: 20rem;
  padding-bottom: 5rem;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper {
    background-image: url(../../assets/img/common/cta_bg_sp.webp);
    padding-top: 8.6875rem;
    padding-bottom: 2.1875rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner {
  background-color: rgba(255, 255, 255, 0.9);
  padding: 4.375rem 4.0625rem;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner {
    padding: 4.375rem 0.9375rem 2.1875rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper {
    gap: 0.75rem;
    margin-top: 1.6875rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link {
  flex-direction: column;
  gap: 2.5rem;
  width: calc((100% - 1.25rem) / 2);
  height: 14.8125rem;
  color: #fff;
  background-color: #071575;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link {
    gap: 1.5rem;
    width: 100%;
    height: 12.5rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__label {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__label {
    font-size: 1.25rem;
    line-height: 1.4;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 2.5rem;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel {
    gap: 1.875rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel::before {
  content: "";
  display: block;
  position: absolute;
  left: 4.125rem;
  top: 50%;
  transform: translateY(-50%);
  width: 1px;
  height: 86%;
  background-color: rgba(255, 255, 255, 0.1);
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel::before {
    left: 3.25rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_icon {
  width: 2.875rem;
  height: 3.75rem;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_icon {
    width: 2.25rem;
    height: 2.875rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_number > span {
  display: block;
  line-height: 1;
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_number .tel_number__upper {
  font-size: 2.55rem;
  font-weight: 400;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_number .tel_number__upper {
    font-size: 2rem;
  }
}
section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_number .tel_number__lower {
  font-size: 0.9875rem;
  letter-spacing: 0.04em;
  font-weight: 300;
  margin-top: 0.75rem;
}
@media screen and (max-width: 768px) {
  section.cta .main_cta_wrapper .main_cta_inner .cta_links_wrapper .cta_link .cta_link__btn__tel .tel_number .tel_number__lower {
    font-size: 0.875rem;
    margin-top: 0.5rem;
  }
}

/* 投稿リスト */
.works_list_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 2.5rem 1.25rem;
}
@media screen and (max-width: 639px) {
  .works_list_wrapper {
    gap: 2.1875rem;
  }
}

.works_co {
  width: calc((100% - 2.5rem) / 3);
}
@media screen and (max-width: 639px) {
  .works_co {
    width: 100%;
  }
}
.works_co .works_co__image {
  height: auto;
  aspect-ratio: 380/240;
  object-fit: cover;
}
.works_co .works_co__date {
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 500;
  color: #888888;
  margin: 0.75rem 0;
}
.works_co .works_co__title {
  font-size: 1.125rem;
  line-height: 1;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .works_co .works_co__title {
    font-size: 1rem;
  }
}

.post_co {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
  padding: 2.5rem 0;
  border-bottom: 1px solid #ced8ea;
}
.post_co:nth-child(1) {
  border-top: 1px solid #ced8ea;
}
.post_co .post_co_inner {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.25rem;
}
.post_co .post_co_inner .post_co__date {
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  color: #888888;
  flex-shrink: 0;
}
.post_co .post_co_inner .post_co__title {
  width: 100%;
  font-size: 1.125rem;
  font-weight: 500;
}
.post_co .post_co__arrow {
  width: 3rem;
  height: 3rem;
  object-fit: contain;
  background-color: #fff;
  padding: 1.375rem 0.75rem;
  flex-shrink: 0;
}

.job_list_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 3.5rem 2.5rem;
}
@media screen and (max-width: 768px) {
  .job_list_wrapper {
    gap: 2.5rem;
  }
}

.job_co {
  width: calc((100% - 2.5rem) / 2);
  background-color: #fff;
  box-shadow: 0 0.296875rem 0.890625rem 0 rgba(0, 0, 0, 0.2);
}
@media screen and (max-width: 480px) {
  .job_co {
    width: 100%;
  }
}
.job_co .job_co__image {
  height: auto;
  aspect-ratio: 570/298.36;
  object-fit: cover;
}
.job_co .job_co__text {
  padding: 1rem 2.5rem 1.5rem;
}
@media screen and (max-width: 768px) {
  .job_co .job_co__text {
    padding: 1rem;
  }
}
.job_co .job_co__title {
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 700;
  margin-top: 0.5rem;
}
/* カテゴリー等一覧 */
.categories_wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.125rem;
}
@media screen and (max-width: 768px) {
  .post_categories_wrapper {
    gap: 0.5rem;
  }
}

.cat_item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 2.375rem;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
  color: #697a8d;
  background-color: #eff4fb;
  border: 1px solid #e0e7f0;
  padding: 0.375rem 1.25rem;
  border-radius: 0.1875rem;
}
@media screen and (max-width: 768px) {
  .cat_item {
    height: 2rem;
    padding: 0.25rem 0.5rem;
  }
}
.cat_item.current {
  color: #071575;
  background-color: #fff;
}

.job_cat_item {
  display: inline-block;
  font-size: 0.875rem;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
  color: #071575;
  background-color: #fff;
  border: 1px solid #071575;
  padding: 0.5rem 1.25rem;
  border-radius: 0.1875rem;
}

.works_categories_wrapper {
  gap: 0.75rem;
}

.works_cat_item {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 1.875rem;
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  white-space: nowrap;
  color: #071575;
  background-color: #fff;
  border: 1px solid #071575;
  border-radius: 0.1875rem;
  padding: 0.25rem 1.25rem;
}
.works_cat_item.current {
  color: #fff;
  background-color: #071575;
  pointer-events: none;
}

/* その他パーツ */
section#page_head {
  position: relative;
  z-index: 100;
  padding-top: 4.375rem;
}
@media screen and (max-width: 768px) {
  section#page_head {
    padding-top: 3.5625rem;
  }
}
section#page_head::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 47.5rem;
  background-image: url(../../assets/img/common/page_title_bg.webp);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 768px) {
  section#page_head::before {
    background-image: url(../../assets/img/common/page_title_bg_sp.webp);
    height: 41.25rem;
  }
}

.page_title {
  padding-top: 4rem;
  padding-bottom: 5rem;
  border-bottom: 1px solid #ced8ea;
}
@media screen and (max-width: 768px) {
  .page_title {
    padding-top: 4.5625rem;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.page_title .page_title_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .page_title .page_title_inner {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .page_title .page_title_inner .page_title__text {
    width: 100%;
  }
}
.page_title .page_title_inner .page_title__text span {
  display: block;
}
.page_title .page_title_inner .page_title__text span.en_title {
  font-size: 7.5rem;
  line-height: 1.5;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  background: linear-gradient(91.45deg, #166dca 1.57%, #071575 100.93%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (max-width: 768px) {
  .page_title .page_title_inner .page_title__text span.en_title {
    font-size: 3.375rem;
  }
}
.page_title .page_title_inner .page_title__text span.ja_title {
  font-size: 1.75rem;
  font-weight: 600;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .page_title .page_title_inner .page_title__text span.ja_title {
    font-size: 1.5rem;
  }
}
.page_title .page_title_inner .page_title__image {
  width: 22.375rem;
  height: auto;
  aspect-ratio: 358/187;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
}
@media screen and (max-width: 768px) {
  .page_title .page_title_inner .page_title__image {
    width: 100%;
    aspect-ratio: 360/188;
    margin-top: 2.8125rem;
  }
}

body.page-child:not(#page__thanks) section#page_head,
body#page__archive_job-description section#page_head {
  background-color: #f1f6fe;
  border-bottom: none;
}
@media screen and (max-width: 768px) {
  body.page-child:not(#page__thanks) .page_title .page_title_inner,
body#page__archive_job-description .page_title .page_title_inner {
    position: relative;
    z-index: 400;
    padding-bottom: 4rem;
  }
}
body.page-child:not(#page__thanks) .page_title .page_title_inner .page_title__text,
body#page__archive_job-description .page_title .page_title_inner .page_title__text {
  display: flex;
  flex-direction: column-reverse;
}
body.page-child:not(#page__thanks) .page_title .page_title_inner .page_title__text span.en_title,
body#page__archive_job-description .page_title .page_title_inner .page_title__text span.en_title {
  font-size: 2.25rem;
}
@media screen and (max-width: 768px) {
  body.page-child:not(#page__thanks) .page_title .page_title_inner .page_title__text span.en_title,
body#page__archive_job-description .page_title .page_title_inner .page_title__text span.en_title {
    font-size: 1.5rem;
    margin-top: 1rem;
  }
}
body.page-child:not(#page__thanks) .page_title .page_title_inner .page_title__text span.ja_title,
body#page__archive_job-description .page_title .page_title_inner .page_title__text span.ja_title {
  font-size: 4rem;
  line-height: 2;
}
@media screen and (max-width: 768px) {
  body.page-child:not(#page__thanks) .page_title .page_title_inner .page_title__text span.ja_title,
body#page__archive_job-description .page_title .page_title_inner .page_title__text span.ja_title {
    font-size: 2.25rem;
    line-height: 1;
  }
}

.section_title {
  display: flex;
  align-items: flex-end;
  gap: 1.5rem;
}
@media screen and (max-width: 768px) {
  .section_title {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.3125rem;
  }
}
.section_title span {
  display: block;
}
.section_title span.en_title {
  font-size: 4.7625rem;
  line-height: 1;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  color: #ced8ea;
}
@media screen and (max-width: 768px) {
  .section_title span.en_title {
    font-size: 3rem;
    line-height: 1.4;
  }
}
.section_title span.ja_title {
  font-size: 1rem;
  line-height: 2.2;
  font-weight: 500;
  color: #071575;
}
.section_title span.ja_title::before {
  content: "/ ";
}

.service_info__links_wrapper {
  display: flex;
  flex-wrap: wrap;
}
.service_info__links_wrapper .service_info__link_item {
  position: relative;
  z-index: 400;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.service_info__links_wrapper .service_info__link_item:hover {
  opacity: 1;
}
.service_info__links_wrapper .service_info__link_item .link_item__image {
  position: absolute;
  z-index: -1;
  inset: 0;
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  .service_info__links_wrapper .service_info__link_item#link__boiler-car .btn {
    height: 6rem;
  }
}

section#service_child_links {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.25rem;
  padding-top: 3.125rem;
  padding-bottom: 6.875rem;
}
@media screen and (max-width: 768px) {
  section#service_child_links {
    gap: 0.625rem;
    padding-top: 3.875rem;
    padding-bottom: 4.375rem;
  }
}
section#service_child_links .service_child_link {
  height: 5.4375rem;
  font-size: 1.5rem;
  line-height: 1.5;
  text-align: center;
  padding: 0.5rem;
}
@media screen and (max-width: 768px) {
  section#service_child_links .service_child_link {
    height: 4.625rem;
    font-size: 1rem;
  }
}
section#service_child_links .service_child_link.small_text {
  font-size: 1.25rem;
}
@media screen and (max-width: 768px) {
  section#service_child_links .service_child_link.small_text {
    font-size: 1rem;
  }
}
section#service_child_links.flex_4 .service_child_link {
  width: calc((100% - 3.75rem) / 4);
}
@media screen and (max-width: 768px) {
  section#service_child_links.flex_4 .service_child_link {
    width: calc((100% - 0.625rem) / 2);
  }
}
@media screen and (max-width: 480px) {
  section#service_child_links.flex_4 .service_child_link {
    width: 100%;
  }
}
section#service_child_links.flex_3 .service_child_link {
  width: calc((100% - 2.5rem) / 3);
}
@media screen and (max-width: 768px) {
  section#service_child_links.flex_3 .service_child_link {
    width: calc((100% - 0.625rem) / 2);
  }
}
@media screen and (max-width: 480px) {
  section#service_child_links.flex_3 .service_child_link {
    width: 100%;
  }
}
section#service_child_links.flex_2 .service_child_link {
  width: calc((100% - 1.25rem) / 2);
}
@media screen and (max-width: 480px) {
  section#service_child_links.flex_2 .service_child_link {
    width: 100%;
  }
}

body#page__fft-s a#btn__fft-s,
body#page__crystal-lining a#btn__crystal-lining,
body#page__ass a#btn__ass,
body#page__magma-rock a#btn__magma-rock,
body#page__civil-concrete a#btn__civil-concrete,
body#page__pavement a#btn__pavement,
body#page__pv-2300 a#btn__pv-2300,
body#page__boiler-car a#btn__boiler-car,
body#page__drilling-robot a#btn__drilling-robot,
body#page__pressure-wash-truck a#btn__pressure-wash-truck,
body#page__powerful-suction a#btn__powerful-suction {
  color: #fff;
  background-color: #071575;
  pointer-events: none;
}

body#page__fft-s a#link__fft-s,
body#page__magma-rock a#link__magma-rock,
body#page__ass a#link__ass,
body#page__crystal-lining a#link__crystal-lining,
body#page__civil-concrete a#link__civil-concrete,
body#page__pavement a#link__pavement,
body#page__pv-2300 a#link__pv-2300,
body#page__boiler-car a#link__boiler-car,
body#page__drilling-robot a#link__drilling-robot,
body#page__pressure-wash-truck a#link__pressure-wash-truck,
body#page__powerful-suction a#link__powerful-suction {
  display: none;
}

h3.h3_title_style {
  position: relative;
  z-index: 400;
  font-size: 1.25rem;
  line-height: 2;
  color: #071575;
  background-color: #f1f6fe;
  padding: 0.34375rem 1.5rem 0.34375rem 2rem;
}
@media screen and (max-width: 768px) {
  h3.h3_title_style {
    line-height: 1.4;
    padding: 0.625rem 1.125rem 0.625rem 1.875rem;
  }
}
h3.h3_title_style::before {
  content: "";
  display: block;
  position: absolute;
  z-index: 600;
  left: 0;
  top: 0;
  bottom: 0;
  width: 0.4375rem;
  height: 100%;
  background: linear-gradient(91.45deg, #166dca 1.57%, #071575 100.93%);
}

table.main_table {
  width: 100%;
}
table.main_table .table_row {
  border-bottom: 1px solid rgba(8, 24, 81, 0.1);
}
table.main_table .table_row:nth-child(1) {
  border-top: 1px solid rgba(8, 24, 81, 0.1);
}
table.main_table .table_row .table_row__title,
table.main_table .table_row .table_row__content {
  font-size: 1rem;
  line-height: 2;
  text-align: left;
}
table.main_table .table_row .table_row__title {
  width: 30%;
  font-weight: 700;
  padding: 1.5rem 3.125rem 1.5rem 0;
}
@media screen and (max-width: 768px) {
  table.main_table .table_row .table_row__title {
    padding-right: 1.5rem;
  }
}
table.main_table .table_row .table_row__content {
  width: 70%;
  font-weight: 500;
}
table.main_table .table_row .table_row__content .table_row__content_inner {
  position: relative;
  display: flex;
  align-items: center;
  padding: 1.5rem 0 1.5rem 3.125rem;
}
@media screen and (max-width: 768px) {
  table.main_table .table_row .table_row__content .table_row__content_inner {
    padding: 1.5rem 0 1.5rem 1.5rem;
  }
}
table.main_table .table_row .table_row__content .table_row__content_inner::before {
  content: "";
  position: absolute;
  left: 0;
  top: 1.5rem;
  width: 2px;
  height: calc(100% - 3rem);
  background: linear-gradient(91.45deg, #166dca 1.57%, #071575 100.93%);
}

a.link {
  color: #071575;
  text-decoration: underline;
}

.pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 3.125rem;
  gap: 1.5rem;
  width: 100%;
}
.pagination .page-numbers {
  font-size: 1.125rem;
  color: rgba(7, 21, 117, 0.5);
}
.pagination .page-numbers.current {
  font-weight: 700;
  color: #071575;
}
.pagination .page-numbers.prev, .pagination .page-numbers.next {
  font-weight: 700;
  color: #071575;
}

/* トップページ */
body#page__frontpage section#fv {
  position: relative;
  z-index: 400;
  width: 100%;
  height: auto;
  aspect-ratio: 1440/821;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv {
    aspect-ratio: 780/1518;
  }
}
body#page__frontpage section#fv .fv_bg_slider {
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
}
body#page__frontpage section#fv .fv_bg_slider .slick-list,
body#page__frontpage section#fv .fv_bg_slider .slick-track {
  width: 100%;
  height: 100%;
}
body#page__frontpage section#fv .fv_bg_slider .slide_item {
  position: relative;
  z-index: 300;
  width: 100%;
  height: 100%;
  padding: 4.4375rem 2.5rem 5.125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item {
    padding: 3.625rem 0.9375rem 5.125rem;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item::before {
  content: "";
  position: absolute;
  z-index: 1;
  top: 4.4375rem;
  right: 2.5rem;
  bottom: 5.125rem;
  left: 2.5rem;
  display: block;
  background: linear-gradient(221.59deg, rgba(15, 47, 255, 0) 50.18%, rgba(0, 57, 143, 0.5) 100%);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item::before {
    top: 3.625rem;
    right: 0.9375rem;
    left: 0.9375rem;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item::after {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0;
  display: block;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  filter: blur(1.75rem);
}
body#page__frontpage section#fv .fv_bg_slider .slide_item img {
  height: 100%;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item_1 img {
    object-position: 80% center;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item_1::after {
  background-image: url(../../assets/img/top/fv_slide_01.webp);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item_2 img {
    object-position: 25% center;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item_2::after {
  background-image: url(../../assets/img/top/fv_slide_02.webp);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item_3 img {
    object-position: 60% center;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item_3::after {
  background-image: url(../../assets/img/top/fv_slide_03.webp);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item_4 img {
    object-position: 75% center;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item_4::after {
  background-image: url(../../assets/img/top/fv_slide_04.webp);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_bg_slider .slide_item_5 img {
    object-position: center;
  }
}
body#page__frontpage section#fv .fv_bg_slider .slide_item_5::after {
  background-image: url(../../assets/img/top/fv_slide_05.webp);
}
body#page__frontpage section#fv .fv_inner {
  position: relative;
  z-index: 400;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: 1.6875rem 0;
  height: 100%;
  padding: 4.375rem 6.25rem 7.6875rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_inner {
    gap: 1rem 0;
    padding: 4.375rem 0 6.25rem;
  }
}
body#page__frontpage section#fv .fv_title_wrapper .fv_subtitle {
  display: inline-block;
  font-size: 1.25rem;
  line-height: 1.87;
  font-weight: 500;
  color: #071575;
  text-shadow: 0 0 0.5625rem #fff;
  box-shadow: 0 0 0.8125rem rgba(166, 202, 240, 0.4);
  background-color: rgba(255, 255, 255, 0.7);
  padding: 0 2.6875rem 0 1.0625rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_title_wrapper .fv_subtitle {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.625rem;
    box-shadow: none;
    background-color: unset;
    padding: 0;
  }
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_title_wrapper .fv_subtitle > span {
    display: block;
    box-shadow: 0 0 0.8125rem rgba(166, 202, 240, 0.4);
    background-color: rgba(255, 255, 255, 0.7);
  }
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_title_wrapper .fv_subtitle > span:nth-child(1) {
    padding: 0.25rem 0.5rem 0.25rem 1.625rem;
  }
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_title_wrapper .fv_subtitle > span:nth-child(2) {
    padding: 0.25rem 1.5rem 0.25rem 1.625rem;
  }
}
body#page__frontpage section#fv .fv_title_wrapper .fv_title {
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.56;
  color: #fff;
  text-shadow: 0.125rem 0.25rem 1.25rem rgba(7, 21, 117, 0.5);
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_title_wrapper .fv_title {
    font-size: 1.75rem;
    padding: 0 1.3125rem;
    margin-top: 1rem;
  }
}
body#page__frontpage section#fv .fv_btn_wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 0.625rem 0.8125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_btn_wrapper {
    padding: 0 1.875rem;
  }
}
body#page__frontpage section#fv .fv_btn_wrapper > .btn {
  width: 12.125rem;
  height: 3.5rem;
  padding: 0;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_btn_wrapper > .btn {
    width: 13.5rem;
    height: 3.875rem;
  }
}
body#page__frontpage section#fv .fv_scroll {
  position: absolute;
  right: 3.25rem;
  bottom: 10.9375rem;
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 1.25rem;
  line-height: 2;
  font-family: "Bacasime Antique", serif;
  color: #071575;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#fv .fv_scroll {
    right: 0.9375rem;
    bottom: 3rem;
    font-size: 1.125rem;
  }
}
body#page__frontpage section#fv .fv_scroll::after {
  content: "";
  display: block;
  width: 1px;
  height: 6.25rem;
  background-color: #071575;
}
body#page__frontpage section#our_mission {
  position: relative;
  z-index: 500;
  padding-top: 3rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission {
    padding-top: 0;
    margin-top: -3rem;
  }
}
body#page__frontpage section#our_mission .innerbox_1180 {
  position: relative;
  z-index: 500;
  display: flex;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .innerbox_1180 {
    flex-direction: column-reverse;
  }
}
body#page__frontpage section#our_mission .our_mission_inner {
  width: 44.3125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_inner {
    width: 100%;
    margin-top: 4.375rem;
  }
}
body#page__frontpage section#our_mission .our_mission_inner .our_mission_explain {
  font-size: 1.125rem;
  line-height: 2.2;
  font-weight: 500;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_inner .our_mission_explain {
    margin-top: 2.1875rem;
  }
}
body#page__frontpage section#our_mission .our_mission_vertical {
  display: flex;
  flex-direction: row-reverse;
  align-items: flex-start;
  gap: 2.3125rem;
  width: calc(100% - 44.3125rem);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_vertical {
    width: 100%;
    justify-content: center;
  }
}
body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item {
  display: block;
  writing-mode: vertical-rl;
  font-size: 2.25rem;
  line-height: 1;
  letter-spacing: 0.3em;
  font-weight: 500;
  color: #fff;
  padding: 0.875rem 1.25rem 0.625rem;
  background: linear-gradient(180deg, #166dca 0%, #071575 100%);
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item {
    font-size: 1.6625rem;
    padding: 1rem 0.875rem 0.75rem;
  }
}
body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item:nth-child(1) {
  margin-top: -11.5625rem;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item:nth-child(1) {
    margin-top: 0;
  }
}
body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item:nth-child(2) {
  margin-top: -7.375rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item:nth-child(2) {
    margin-top: 3.0625rem;
  }
}
body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item:nth-child(3) {
  margin-top: -3.1875rem;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_vertical .om_vertical_item:nth-child(3) {
    margin-top: 6.1875rem;
  }
}
body#page__frontpage section#our_mission .our_mission_image_wrapper {
  position: relative;
  z-index: 400;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: -2rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_image_wrapper {
    position: initial;
    display: block;
    margin-top: 4rem;
  }
}
body#page__frontpage section#our_mission .our_mission_image_wrapper > img {
  height: auto;
}
body#page__frontpage section#our_mission .our_mission_image_wrapper .our_mission_image_01 {
  width: 49%;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_image_wrapper .our_mission_image_01 {
    width: 80%;
  }
}
body#page__frontpage section#our_mission .our_mission_image_wrapper .our_mission_image_02 {
  width: 42.5%;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
  margin-top: 7.8125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_image_wrapper .our_mission_image_02 {
    width: 81.5%;
    margin-top: 3.6875rem;
    margin-left: auto;
  }
}
body#page__frontpage section#our_mission .our_mission_image_wrapper .our_mission_image_bg {
  position: absolute;
  z-index: -1;
  right: 0;
  top: -14.0625rem;
  width: 78.75rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#our_mission .our_mission_image_wrapper .our_mission_image_bg {
    top: -4rem;
  }
}
body#page__frontpage section#about_us {
  position: relative;
  z-index: 400;
  padding-bottom: 7.5rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us {
    padding-bottom: 4.375rem;
  }
}
body#page__frontpage section#about_us .innerbox_1180 {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .innerbox_1180 {
    flex-direction: column;
  }
}
body#page__frontpage section#about_us .about_us_image_wrapper {
  position: relative;
  width: calc(100% - 44.3125rem - 4.125rem - 3.125rem);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .about_us_image_wrapper {
    width: 100%;
    margin-top: 5.0625rem;
  }
}
body#page__frontpage section#about_us .about_us_image_wrapper .about_us_image {
  position: absolute;
  top: -3.625rem;
  right: 0;
  width: 21vw;
  max-width: initial;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .about_us_image_wrapper .about_us_image {
    position: initial;
    width: 51%;
    max-width: 100%;
  }
}
body#page__frontpage section#about_us .about_us_inner {
  width: 44.3125rem;
  padding-top: 11.25rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .about_us_inner {
    width: 100%;
    padding-top: 4.375rem;
  }
}
body#page__frontpage section#about_us .about_us_inner .about_us_explain {
  font-size: 1.125rem;
  line-height: 2.2;
  font-weight: 500;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .about_us_inner .about_us_explain {
    margin-top: 1.6875rem;
  }
}
body#page__frontpage section#about_us .about_us_inner .btn {
  margin-top: 2.1875rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .about_us_inner .btn {
    margin: 1.875rem auto 0;
  }
}
body#page__frontpage section#about_us .about_us_bg {
  position: absolute;
  z-index: -1;
  left: 0;
  bottom: -21.5625rem;
  width: 69.15625rem;
  height: auto;
  aspect-ratio: 2213/1739;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#about_us .about_us_bg {
    aspect-ratio: 390/997;
    bottom: 42.5rem;
  }
}
body#page__frontpage section#service {
  background-color: rgba(235, 242, 254, 0.7);
  padding-top: 6.875rem;
  padding-bottom: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
}
body#page__frontpage section#service .section_title_wrapper {
  position: relative;
  z-index: 800;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 3.125rem 2rem;
  padding-bottom: 2rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .section_title_wrapper {
    gap: 2.1875rem;
  }
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .section_title_wrapper .section_title {
    order: 1;
  }
}
body#page__frontpage section#service .section_title_wrapper .btn {
  position: relative;
  z-index: 800;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .section_title_wrapper .btn {
    order: 3;
    margin: 0 auto;
  }
}
body#page__frontpage section#service .section_title_wrapper .section_explain {
  width: 100%;
  font-size: 1.125rem;
  line-height: 2.2;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .section_title_wrapper .section_explain {
    order: 2;
  }
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item {
  position: relative;
  z-index: 400;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item a {
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: 100%;
  padding: 2.5rem 1.875rem;
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__image {
  position: absolute;
  z-index: -1;
  inset: 0;
  height: 100%;
  object-fit: cover;
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__text {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__title > span {
  display: block;
  line-height: 1;
  color: #fff;
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__title .upper {
  font-size: 1.25rem;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__title .upper {
    font-size: 0.875rem;
  }
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__title .lower {
  font-size: 2rem;
  font-weight: 700;
  margin-top: 1.5625rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__title .lower {
    font-size: 1.5rem;
    margin-top: 0.625rem;
  }
}
body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__arrow {
  width: 3rem;
  height: 3rem;
  aspect-ratio: 1/1;
  padding: 1.375rem 0.6875rem;
  background-color: #fff;
  object-fit: contain;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#service .horizontal_scroll__scroller .scroller_item .scroller_item__arrow {
    width: 2.375rem;
    height: 2.375rem;
    padding: 1.0625rem 0.5625rem;
  }
}
body#page__frontpage section#works {
  padding-top: 9.4375rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#works {
    padding-top: 4.375rem;
  }
}
body#page__frontpage section#works .section_title_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 7.5rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#works .section_title_wrapper {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.6875rem;
  }
}
body#page__frontpage section#works .section_title_wrapper .section_title {
  flex-shrink: 0;
  white-space: nowrap;
}
body#page__frontpage section#works .section_title_wrapper .section_explain {
  font-size: 1.125rem;
  line-height: 2.2;
  font-weight: 500;
}
body#page__frontpage section#works .works_contents_wrapper {
  position: relative;
  z-index: 800;
  margin-top: 3rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#works .works_contents_wrapper {
    margin-top: 2.1875rem;
  }
}
body#page__frontpage section#works .btn {
  position: relative;
  z-index: 800;
  margin-top: 3.125rem;
  margin-left: auto;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#works .btn {
    margin-top: 2.1875rem;
    margin-right: auto;
  }
}
body#page__frontpage section#recruit {
  padding-top: 6.875rem;
  padding-bottom: 6.875rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
}
body#page__frontpage section#recruit .recruit_upper,
body#page__frontpage section#recruit .recruit_lower {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_upper,
body#page__frontpage section#recruit .recruit_lower {
    display: block;
  }
}
body#page__frontpage section#recruit .recruit_upper .recruit_text,
body#page__frontpage section#recruit .recruit_lower .recruit_text {
  width: calc(100% - 21.875rem - 7.5rem);
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_upper .recruit_text,
body#page__frontpage section#recruit .recruit_lower .recruit_text {
    width: 100%;
  }
}
body#page__frontpage section#recruit .recruit_upper .recruit_text .section_explain,
body#page__frontpage section#recruit .recruit_lower .recruit_text .section_explain {
  font-size: 1.125rem;
  line-height: 2.2;
  font-weight: 500;
}
body#page__frontpage section#recruit .recruit_upper .recruit_image,
body#page__frontpage section#recruit .recruit_lower .recruit_image {
  width: 21.875rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_upper .recruit_image,
body#page__frontpage section#recruit .recruit_lower .recruit_image {
    width: 100%;
  }
}
body#page__frontpage section#recruit .recruit_upper .recruit_image img,
body#page__frontpage section#recruit .recruit_lower .recruit_image img {
  height: auto;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
}
body#page__frontpage section#recruit .recruit_upper .recruit_text .section_explain {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_upper .recruit_text .section_explain {
    margin-top: 2.1875rem;
  }
}
body#page__frontpage section#recruit .recruit_upper .recruit_image {
  position: relative;
  margin-top: 5rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_upper .recruit_image {
    margin-top: 4rem;
  }
}
body#page__frontpage section#recruit .recruit_upper .recruit_image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 30.0625rem;
  max-width: initial;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_upper .recruit_image img {
    position: initial;
    width: 83.5vw;
    margin-left: auto;
    margin-right: -1rem;
  }
}
body#page__frontpage section#recruit .recruit_lower {
  margin-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_lower {
    margin-top: 3.0625rem;
  }
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_lower .recruit_image {
    padding-left: 1.25rem;
  }
}
body#page__frontpage section#recruit .recruit_lower .recruit_image img {
  width: 19.8125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_lower .recruit_image img {
    width: 57vw;
  }
}
body#page__frontpage section#recruit .recruit_lower .recruit_text {
  margin-top: 5.125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#recruit .recruit_lower .recruit_text {
    margin-top: 4rem;
  }
}
body#page__frontpage section#recruit .recruit_lower .recruit_text .btn {
  margin-top: 2.1875rem;
}
body#page__frontpage .bg_area {
  position: relative;
  z-index: 300;
}
body#page__frontpage .bg_area .bridge_image {
  display: block;
  position: absolute;
  z-index: -1;
  height: 100%;
}
body#page__frontpage .bg_area .bridge_image.bridge_image_01 {
  top: -6rem;
  right: 0;
  width: 75rem;
  object-fit: contain;
  object-position: right top;
}
@media screen and (max-width: 768px) {
  body#page__frontpage .bg_area .bridge_image.bridge_image_01 {
    top: 10.75rem;
  }
}
body#page__frontpage .bg_area .bridge_image.bridge_image_02 {
  bottom: -21.5rem;
  left: 0;
  width: 55.625rem;
  object-fit: contain;
  object-position: left bottom;
}
@media screen and (max-width: 768px) {
  body#page__frontpage .bg_area .bridge_image.bridge_image_02 {
    bottom: -1.5rem;
  }
}
body#page__frontpage section#news {
  background-color: #ebf2fe;
  padding-top: 6.875rem;
  padding-bottom: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#news {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
}
body#page__frontpage section#news .news_title_wrapper {
  position: relative;
  z-index: 800;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  width: 100%;
  gap: 1.6875rem;
}
body#page__frontpage section#news .news_title_wrapper .tab_buttons .tab_button {
  padding: 0.75rem 2.3125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#news .news_title_wrapper .tab_buttons .tab_button {
    padding: 0.25rem 0.5rem;
  }
}
body#page__frontpage section#news .news_title_wrapper .tab_buttons .tab_button.active {
  color: #071575;
  background-color: #fff;
}
body#page__frontpage section#news .news_contents_wrapper {
  position: relative;
  z-index: 800;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#news .news_contents_wrapper {
    margin-top: 2.1875rem;
  }
}
body#page__frontpage section#news .btn {
  margin: 2.1875rem 0 0 auto;
}
@media screen and (max-width: 768px) {
  body#page__frontpage section#news .btn {
    margin-right: auto;
  }
}

/* 下層ページ */
body:not(#page__frontpage) main#main > div {
  position: relative;
  z-index: 400;
}

body#page__privacy-policy h3,
body.single h3 {
  font-size: 1.5rem;
  font-weight: 700;
  border-bottom: 1px solid #ced8ea;
  padding-bottom: 0.625rem;
  margin-top: 3.125rem;
  margin-bottom: 0.625rem;
}

body.single section#single_thumbnail_image {
  margin-top: 4rem;
}
body.single section#signle_title {
  border-bottom: 1px solid #ced8ea;
  padding-bottom: 1.5625rem;
  margin-top: 3.125rem;
}
body.single section#signle_title .signle_title__meta {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
body.single section#signle_title .signle_title__meta .signle_title__meta__date {
  font-size: 1rem;
  line-height: 1;
  font-weight: 500;
  color: #888888;
}
body.single section#signle_title .single_title__main {
  font-size: 2.25rem;
  line-height: 1.5;
  font-weight: 500;
  margin-top: 1.5625rem;
}
body.single section#single_contents {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 3.125rem;
}
body.single section#single_contents .single_contents_table {
  margin-top: 3.125rem;
}
body.single .single_return_btn {
  margin: 6.875rem auto 0;
}
@media screen and (max-width: 768px) {
  body.single .single_return_btn {
    margin-top: 4.375rem;
  }
}

body#page__about-us section#message {
  padding-top: 5.875rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#message {
    padding-top: 4.375rem;
  }
}
body#page__about-us section#message .message_inner {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
body#page__about-us section#message .message_image_wrapper {
  width: 23.75rem;
  padding-top: 1rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#message .message_image_wrapper {
    width: 100%;
    padding-top: 0;
  }
}
body#page__about-us section#message .message_image_wrapper .ceo_name {
  margin-top: 1rem;
}
body#page__about-us section#message .message_image_wrapper .ceo_name > span {
  display: block;
  line-height: 1.4;
  font-weight: 600;
}
body#page__about-us section#message .message_image_wrapper .ceo_name .ceo_name__position {
  font-size: 1rem;
}
body#page__about-us section#message .message_image_wrapper .ceo_name .ceo_name__name {
  font-size: 1.5rem;
}
body#page__about-us section#message .message_text_wrapper {
  width: calc(100% - 23.75rem - 4.1875rem);
}
@media screen and (max-width: 768px) {
  body#page__about-us section#message .message_text_wrapper {
    width: 100%;
    margin-top: 3rem;
  }
}
body#page__about-us section#message .message_text_wrapper .message_title {
  font-size: 2.25rem;
  line-height: 1.6;
  font-weight: 600;
}
body#page__about-us section#message .message_text_wrapper .message_main_text {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 3rem;
}
body#page__about-us section#profile {
  padding-top: 6.875rem;
  padding-bottom: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#profile {
    padding-top: 4.375rem;
  }
}
body#page__about-us section#profile .profile_table_wrapper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#profile .profile_table_wrapper {
    margin-top: 3.625rem;
  }
}
body#page__about-us section#map iframe {
  height: 27.25rem;
}
body#page__about-us section#history {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history {
    padding-top: 4.375rem;
  }
}
body#page__about-us section#history .history_list_wrapper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list_wrapper {
    margin-top: 3.625rem;
  }
}
body#page__about-us section#history .history_list {
  position: relative;
}
body#page__about-us section#history .history_list .list_item {
  position: relative;
  z-index: 400;
  display: grid;
  grid-template-columns: 8.125rem 6.25rem 1fr;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item {
    grid-template-columns: 5.625rem 3.5rem 1fr;
    align-items: flex-start;
  }
}
body#page__about-us section#history .history_list .list_item > div {
  padding-top: 1.5625rem;
  padding-bottom: 1.5625rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item > div {
    padding-top: 1.09375rem;
    padding-bottom: 1.09375rem;
  }
}
body#page__about-us section#history .history_list .list_item .list_item__year {
  font-size: 3.4375rem;
  line-height: 1;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  color: rgba(7, 21, 117, 0.6);
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item .list_item__year {
    font-size: 2.25rem;
  }
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item .list_item__dot {
    margin-top: 0.875rem;
  }
}
body#page__about-us section#history .history_list .list_item .list_item__dot span {
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  background-color: #071575;
  border-radius: 50%;
  margin: 0 auto;
}
body#page__about-us section#history .history_list .list_item .list_item__details {
  display: grid;
  grid-template-columns: 6.25rem max-content;
  align-items: center;
  gap: 0 2.875rem;
}
@media screen and (max-width: 639px) {
  body#page__about-us section#history .history_list .list_item .list_item__details {
    display: block;
  }
}
body#page__about-us section#history .history_list .list_item .list_item__day {
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 700;
  color: #071575;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item .list_item__day {
    padding-top: 0.1875rem;
  }
}
body#page__about-us section#history .history_list .list_item .list_item__content {
  font-size: 1.125rem;
  line-height: 2;
}
@media screen and (max-width: 480px) {
  body#page__about-us section#history .history_list .list_item .list_item__content {
    font-size: 1.0625rem;
  }
}
body#page__about-us section#history .history_list .list_item::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  left: 11.1875rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0.125rem;
  height: 100%;
  background-color: #071575;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item::before {
    left: 7.3125rem;
  }
}
body#page__about-us section#history .history_list .list_item:nth-child(1)::before {
  top: 50%;
  transform: none;
  height: 50%;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item:nth-child(1)::before {
    top: 2.21875rem;
    height: calc(100% - 2.21875rem);
  }
}
body#page__about-us section#history .history_list .list_item:nth-last-child(1)::before {
  top: 0;
  transform: none;
  height: 50%;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#history .history_list .list_item:nth-last-child(1)::before {
    height: 2.21875rem;
  }
}
body#page__about-us section#qualified {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified {
    padding-top: 4.375rem;
  }
}
body#page__about-us section#qualified .qualified_contents_wrapper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified .qualified_contents_wrapper {
    margin-top: 2.1875rem;
  }
}
body#page__about-us section#qualified .qualified_category:nth-child(n+2) {
  margin-top: 2.25rem;
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents {
  display: flex;
  flex-wrap: wrap;
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item {
  display: flex;
  align-items: center;
  width: 50%;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
  border-bottom: 1px solid #ced8ea;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item.empty {
    display: none;
  }
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item:nth-child(2n+1) {
  padding-right: 2.625rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item:nth-child(2n+1) {
    padding-right: 0;
  }
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item:nth-child(2n) {
  padding-left: 2.625rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item:nth-child(2n) {
    padding-left: 0;
  }
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item > span {
  display: flex;
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  white-space: nowrap;
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item .qualified_item__number {
  width: 100%;
  align-items: center;
}
body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item .qualified_item__number::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  border-top: 1px dashed #585858;
  margin: 1px 1.875rem 0;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#qualified .qualified_category .qualified_category_contents .qualified_item .qualified_item__number::before {
    margin: 1px 1.125rem 0;
  }
}
body#page__about-us section#support {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#support {
    padding-top: 4.375rem;
  }
}
body#page__about-us section#support .support_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#support .support_inner {
    display: block;
  }
}
body#page__about-us section#support .support_left {
  flex-shrink: 0;
}
body#page__about-us section#support .support_left .section_explain {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  margin: 3.125rem 0 2.1875rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#support .support_left .btn {
    margin: 0 auto;
  }
}
body#page__about-us section#support .support_right > img {
  width: 29.75rem;
}
@media screen and (max-width: 768px) {
  body#page__about-us section#support .support_right > img {
    width: 22.5rem;
    margin: 2.1875rem auto 0;
  }
}

body#page__service .service__page_contents_wrapper {
  padding-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  body#page__service .service__page_contents_wrapper {
    padding-top: 4.375rem;
  }
}
body#page__service .service__page_contents_wrapper > .innerbox_1180 {
  display: flex;
  align-items: flex-start;
  gap: 5.1875rem;
}
@media screen and (max-width: 768px) {
  body#page__service .service__page_contents_wrapper > .innerbox_1180 {
    display: block;
  }
}
body#page__service .service_sticky_contents {
  position: sticky;
  top: 5.375rem;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  body#page__service .service_sticky_contents {
    position: initial;
  }
}
body#page__service .service_sticky_contents > .btn {
  height: 3.0625rem;
  margin-top: 0.625rem;
}
@media screen and (max-width: 768px) {
  body#page__service .service_sticky_contents > .btn {
    width: 100%;
  }
}
body#page__service .service_main_contents {
  width: 100%;
}
@media screen and (max-width: 768px) {
  body#page__service .service_main_contents {
    margin-top: 3.375rem;
  }
}
body#page__service section#service_title .service_title__text {
  font-size: 2.25rem;
  line-height: 1.6;
  font-weight: 600;
}
body#page__service section#service_title .service_title__explain {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 3rem;
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.5rem;
  line-height: 1;
  font-weight: 500;
  color: #071575;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper {
    position: relative;
    margin-top: 3rem;
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper .service_title__btn__upper__inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper .service_title__btn__upper__inner {
    flex-wrap: wrap;
    gap: 0.25rem 0;
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper .small {
  font-size: 1.125rem;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper .small {
    width: 100%;
    text-align: center;
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper .big {
  font-size: 3rem;
  font-weight: 700;
  padding: 0 0.5rem 0.25em 1.3125rem;
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::before, body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::after {
  content: "";
  display: block;
  width: 1px;
  height: 2.5rem;
  background-color: #071575;
  margin: 0.25rem 2rem 0;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::before, body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::after {
    position: absolute;
    top: calc(50% + 0.25rem);
    margin: 0;
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::before {
  transform: rotate(-28.5deg);
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::before {
    left: 2rem;
    transform: rotate(-28.5deg) translateY(-50%);
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::after {
  transform: rotate(28.5deg);
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_title__btn__upper::after {
    right: 2rem;
    transform: rotate(28.5deg) translateY(-50%);
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_btn {
  position: relative;
  z-index: 400;
  gap: 2.625rem;
  width: 100%;
  height: 7rem;
  background-color: #071575;
  font-size: 1.5rem;
  line-height: 2;
  font-weight: 500;
  color: #fff;
  margin-top: 0.625rem;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_title .service_title__btn_wrapper .service_btn {
    gap: 1.5rem;
  }
}
body#page__service section#service_title .service_title__btn_wrapper .service_btn::before {
  content: "";
  display: block;
  width: 2.1875rem;
  height: 2.375rem;
  background-image: url(../../assets/img/common/icon_pdf_white.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
body#page__service section#service_title .service_title__btn_wrapper .service_btn::after {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  inset: 0;
  width: 100%;
  height: 100%;
  background-color: #071575;
  transition: all 0.3s ease;
}
body#page__service section#service_title .service_title__btn_wrapper .service_btn .service_btn_bg {
  display: block;
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 36%;
}
body#page__service section#service_title .service_title__btn_wrapper .service_btn:hover::after {
  background-color: rgba(7, 21, 117, 0.6);
}
body#page__service section#service_info {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info {
    margin-top: 1.75rem;
  }
}
body#page__service section#service_info .service_info_content {
  padding-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info .service_info_content {
    padding-top: 2.625rem;
  }
}
body#page__service section#service_info .service_info_content .service_info_content_inner {
  background-color: rgba(235, 242, 254, 0.7);
}
body#page__service section#service_info .service_info_content .service_info__title {
  display: flex;
  align-items: center;
  gap: 0.625rem 3.125rem;
  padding: 1.5rem 1.875rem;
  border-bottom: 1px solid #ced8ea;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info .service_info_content .service_info__title {
    flex-wrap: wrap;
    padding: 1.875rem 0.9375rem 1.5rem;
  }
}
body#page__service section#service_info .service_info_content .service_info__title > span {
  line-height: 1;
  color: #071575;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info .service_info_content .service_info__title > span {
    width: 100%;
  }
}
body#page__service section#service_info .service_info_content .service_info__title > .number {
  font-size: 1.125rem;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  flex-shrink: 0;
}
body#page__service section#service_info .service_info_content .service_info__title > .title {
  font-size: 1.5rem;
  font-weight: 700;
}
body#page__service section#service_info .service_info_content .service_info__explain {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  padding: 1.875rem 1.875rem 0;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info .service_info_content .service_info__explain {
    padding: 1.5rem 0.9375rem 0;
  }
}
body#page__service section#service_info .service_info_content .service_info__links_wrapper {
  gap: 1.875rem;
  padding: 1.875rem;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info .service_info_content .service_info__links_wrapper {
    gap: 1.25rem;
    padding: 1.875rem 0.9375rem;
  }
}
body#page__service section#service_info .service_info_content .service_info__links_wrapper .service_info__link_item {
  width: calc((100% - 1.875rem) / 2);
  height: 15.5rem;
}
@media screen and (max-width: 768px) {
  body#page__service section#service_info .service_info_content .service_info__links_wrapper .service_info__link_item {
    width: 100%;
  }
}

body.parent-pageid-34 .flex__even_width {
  display: flex;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 .flex__even_width {
    flex-wrap: wrap;
  }
}
body.parent-pageid-34 .flex__even_width > * {
  flex: 1;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 .flex__even_width > * {
    flex: initial;
  }
}
body.parent-pageid-34 .caption_text {
  display: block;
  font-size: 0.875rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 400;
  margin-top: 0.375rem;
}
body.parent-pageid-34 section#about .about_contents_wrapper {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-top: 2.5rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#about .about_contents_wrapper {
    flex-wrap: wrap;
    gap: 1.5rem 0;
  }
}
body.parent-pageid-34 section#about .about_contents_wrapper .about_content__text {
  width: calc(100% - 28.875rem - 3.125rem);
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#about .about_contents_wrapper .about_content__text {
    width: 100%;
  }
}
body.parent-pageid-34 section#about .about_contents_wrapper .about_content__text .underline {
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 0.75em;
  text-decoration-color: #e7eefa;
  text-underline-offset: -0.3em;
  text-decoration-skip-ink: none;
}
body.parent-pageid-34 section#about .about_contents_wrapper .about_content__image {
  width: 28.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#about .about_contents_wrapper .about_content__image {
    width: 100%;
  }
}
body.parent-pageid-34 section#about .about_contents_wrapper .about_content__image img {
  height: auto;
}
body.parent-pageid-34 section#about .about_image_wrapper {
  display: flex;
  gap: 1.25rem;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#about .about_image_wrapper {
    margin-top: 1.25rem;
  }
}
body.parent-pageid-34 section#about .about_image_wrapper .about_image_item {
  width: calc((100% - 2.5rem) / 3);
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#about .about_image_wrapper .about_image_item {
    width: 100%;
  }
}
body.parent-pageid-34 section#about .about_image_wrapper img {
  height: 100%;
  object-fit: cover;
}
body.parent-pageid-34 section#about .about_table_wrapper {
  margin-top: 3.125rem;
}
body.parent-pageid-34 section#about .about_table_wrapper .about_table .table_row:nth-child(1) {
  border-top: none;
}
body.parent-pageid-34 section#about .about_table_wrapper .about_table .table_row:nth-last-child(1) {
  border-bottom: none;
}
body.parent-pageid-34 section#about .about_table_wrapper .table_caption_text {
  font-size: 1rem;
  line-height: 2;
  padding-top: 1.5rem;
  border-top: 1px solid rgba(8, 24, 81, 0.1);
}
body.parent-pageid-34 section#about .about_table_wrapper .about_sub_content {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  border-bottom: 1px solid #ced8ea;
  padding: 1.5rem 0;
  margin-bottom: 3.125rem;
}
body.parent-pageid-34 section#feature {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature {
    padding-top: 4.375rem;
  }
}
body.parent-pageid-34 section#feature .feature_contents_wrapper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_contents_wrapper {
    margin-top: 2.1875rem;
  }
}
body.parent-pageid-34 section#feature .feature_item {
  background-color: #f1f6fe;
}
body.parent-pageid-34 section#feature .feature_item:nth-child(n+2) {
  margin-top: 2.25rem;
}
body.parent-pageid-34 section#feature .feature_item .feature_item__title {
  display: flex;
  align-items: center;
  gap: 0.625rem 3.125rem;
  padding: 1.5rem 1.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__title {
    flex-wrap: wrap;
    padding: 1.875rem 0.9375rem 1.5rem;
  }
}
body.parent-pageid-34 section#feature .feature_item .feature_item__title > span {
  display: block;
  line-height: 1;
  color: #071575;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__title > span {
    width: 100%;
  }
}
body.parent-pageid-34 section#feature .feature_item .feature_item__title > .title_number {
  font-size: 1.125rem;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  flex-shrink: 0;
}
body.parent-pageid-34 section#feature .feature_item .feature_item__title > .title_text {
  font-size: 1.5rem;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__title > .title_text {
    line-height: 1.4;
  }
}
body.parent-pageid-34 section#feature .feature_item .feature_item__textcontent {
  padding-top: 1.875rem;
  border-top: 1px solid #ced8ea;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__textcontent {
    padding-top: 1.25rem;
  }
}
body.parent-pageid-34 section#feature .feature_item .feature_item__explain {
  font-size: 1rem;
  font-weight: 500;
  padding: 0 1.875rem 1.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__explain {
    padding: 0 0.9375rem 1.5rem;
  }
}
body.parent-pageid-34 section#feature .feature_item .feature_item__images_wrapper {
  display: flex;
  gap: 0.9375rem;
  padding: 0 1.875rem 2rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__images_wrapper {
    flex-wrap: wrap;
    padding: 0 0.9375rem 1.875rem;
  }
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item .feature_item__images_wrapper .feature_item__image {
    width: 100%;
  }
}
body.parent-pageid-34 section#feature .feature_item .feature_item__images_wrapper .feature_item__image > img {
  height: auto;
  object-fit: cover;
}
body.parent-pageid-34 section#feature .feature_item .feature_item__images_wrapper .feature_item__image .caption_text {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
}
body.parent-pageid-34 section#feature .feature_item.feature_item_04 .feature_item__images_wrapper .feature_item__image {
  width: 24.5625rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#feature .feature_item.feature_item_04 .feature_item__images_wrapper .feature_item__image {
    width: 100%;
  }
}
body.parent-pageid-34 section#method {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method {
    padding-top: 4.375rem;
  }
}
body.parent-pageid-34 section#method .method_contents_wrapper {
  margin-top: 3.125rem;
  border-top: 1px solid rgba(206, 216, 234, 0.8);
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_contents_wrapper {
    margin-top: 2.1875rem;
  }
}
body.parent-pageid-34 section#method .method_item {
  position: relative;
  z-index: 400;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item {
    align-items: flex-start;
  }
}
body.parent-pageid-34 section#method .method_item::before {
  content: "";
  display: block;
  position: absolute;
  z-index: -1;
  top: 50%;
  transform: translateY(-50%);
  left: 2.375rem;
  width: 1px;
  height: calc(100% - 2px);
  border-right: 2px dashed #071575;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item::before {
    left: 1.5rem;
  }
}
body.parent-pageid-34 section#method .method_item:nth-child(1)::before, body.parent-pageid-34 section#method .method_item:nth-last-child(1)::before {
  height: 50%;
  transform: translateY(0);
}
body.parent-pageid-34 section#method .method_item:nth-child(1)::before {
  top: initial;
  bottom: 1px;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item:nth-child(1)::before {
    height: calc(100% - 2rem - 0.5rem);
  }
}
body.parent-pageid-34 section#method .method_item:nth-last-child(1)::before {
  top: 1px;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item:nth-last-child(1)::before {
    height: 2.5rem;
  }
}
body.parent-pageid-34 section#method .method_item .method_item__number {
  width: 4.8125rem;
  height: auto;
  aspect-ratio: 1/1;
  font-size: 2rem;
  line-height: 1;
  font-weight: 400;
  font-family: "Libre Baskerville", serif;
  color: #071575;
  background-color: #fff;
  border: 1px solid #071575;
  border-radius: 50%;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__number {
    width: 3.125rem;
    font-size: 1.3125rem;
    margin-top: 1.875rem;
  }
}
body.parent-pageid-34 section#method .method_item .method_item__main {
  width: calc(100% - 4.8125rem - 3.4375rem);
  padding: 3.125rem 0;
  border-bottom: 1px solid rgba(206, 216, 234, 0.8);
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main {
    width: calc(100% - 3.125rem - 1.5rem);
    padding: 1.875rem 0;
  }
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 2rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_inner {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_text {
    width: 100%;
  }
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_text .method_item__title {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-weight: 700;
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_text .method_item__explain {
  font-size: 1rem;
  line-height: 1.8;
  letter-spacing: 0.05em;
  font-weight: 400;
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_text .method_item__explain {
    margin-top: 1rem;
  }
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_media {
  width: 26.5625rem;
  flex-shrink: 0;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_media {
    width: 100%;
  }
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_media img,
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_media video,
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_media iframe {
  height: auto;
  object-fit: cover;
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main_media iframe {
  aspect-ratio: 16/9;
}
body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main__subimages {
  gap: 1.875rem;
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main__subimages {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#method .method_item .method_item__main .method_item__main__subimages .method_item__subimage {
    width: 100%;
  }
}
body.parent-pageid-34 section#related_links {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#related_links {
    padding-top: 4.375rem;
  }
}
body.parent-pageid-34 section#related_links .service_info__links_wrapper {
  gap: 1.25rem;
}
body.parent-pageid-34 section#related_links .service_info__links_wrapper .service_info__link_item {
  width: calc((100% - 2.5rem) / 3);
  height: 14.6875rem;
}
@media screen and (max-width: 768px) {
  body.parent-pageid-34 section#related_links .service_info__links_wrapper .service_info__link_item {
    width: 100%;
  }
}

body#page__magma-rock section#method .method_item.method_item_02 .method_item__number {
  margin-bottom: 18.5rem;
}
body#page__magma-rock section#method .method_item.method_item_03::before {
  height: calc(50% - 13.625rem);
}
@media screen and (max-width: 768px) {
  body#page__magma-rock section#method .method_item.method_item_03::before {
    height: 2.5rem;
  }
}
body#page__magma-rock section#method .method_item.method_item_03 .method_item__number {
  margin-bottom: 27.25rem;
}

body#page__ass section#method .method_item .method_item__main .method_item__main_media img {
  aspect-ratio: 425/296;
}

body#page__crystal-lining section#method .method_item .method_item__main .method_item__main_media {
  width: 31.25rem;
  gap: 0.671875rem;
}
@media screen and (max-width: 768px) {
  body#page__crystal-lining section#method .method_item .method_item__main .method_item__main_media {
    width: 100%;
    padding-right: 2.625rem;
  }
}

body#page__civil-concrete section#related_links .service_info__links_wrapper,
body#page__pavement section#related_links .service_info__links_wrapper {
  justify-content: center;
}

body#page__recruit section#recruit_values {
  padding-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values {
    padding-top: 4rem;
  }
}
body#page__recruit section#recruit_values .recruit_values_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values .recruit_values_inner {
    flex-wrap: wrap;
  }
}
body#page__recruit section#recruit_values .values_text_wrapper {
  width: 32.625rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values .values_text_wrapper {
    width: 100%;
  }
}
body#page__recruit section#recruit_values .values_title {
  font-size: 2.25rem;
  line-height: 1.6;
  font-weight: 600;
}
body#page__recruit section#recruit_values .values_explain {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 3.875rem;
  padding-right: 1.125rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values .values_explain {
    padding-right: 0;
  }
}
body#page__recruit section#recruit_values .values_item_wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0 1.0625rem;
  width: calc(100% - 32.625rem - 2rem);
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values .values_item_wrapper {
    width: 100%;
    margin-top: 1.875rem;
  }
}
body#page__recruit section#recruit_values .values_item_wrapper .values_item {
  width: calc((100% - 2.125rem) / 3);
  height: auto;
  aspect-ratio: 1/1;
  background-color: #fff;
  border-radius: 50%;
  box-shadow: 0 0 3rem 0 rgba(82, 128, 204, 0.3);
  font-size: 0.9375rem;
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values .values_item_wrapper .values_item {
    font-size: 0.75rem;
  }
}
body#page__recruit section#recruit_values .recruit__values_btn_wrapper {
  margin-top: 3.75rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_values .recruit__values_btn_wrapper {
    margin-top: 2.5rem;
  }
}
body#page__recruit section#recruit_values .recruit__values_btn_wrapper .recruit_values_btn {
  margin: 0 auto;
}
body#page__recruit section#recruit_message {
  padding-top: 6.875rem;
  padding-bottom: 6.875rem;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
}
body#page__recruit section#recruit_message .message_upper,
body#page__recruit section#recruit_message .message_lower {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
body#page__recruit section#recruit_message .message_upper .message_text,
body#page__recruit section#recruit_message .message_lower .message_text {
  width: calc(100% - 27.0625rem - 6.25rem);
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message .message_upper .message_text,
body#page__recruit section#recruit_message .message_lower .message_text {
    width: 100%;
  }
}
body#page__recruit section#recruit_message .message_upper .message_text .section_explain,
body#page__recruit section#recruit_message .message_lower .message_text .section_explain {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
}
body#page__recruit section#recruit_message .message_upper .message_image,
body#page__recruit section#recruit_message .message_lower .message_image {
  position: relative;
  width: 27.0625rem;
  height: 25.125rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message .message_upper .message_image,
body#page__recruit section#recruit_message .message_lower .message_image {
    width: 100%;
    height: auto;
    aspect-ratio: 360/257;
    margin-top: 2.5rem;
  }
}
body#page__recruit section#recruit_message .message_upper .message_image img,
body#page__recruit section#recruit_message .message_lower .message_image img {
  position: absolute;
  top: 0;
  width: 35.1875rem;
  max-width: initial;
  height: 100%;
  box-shadow: 0 0 0.875rem 0 rgba(51, 68, 87, 0.1);
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message .message_upper .message_image img,
body#page__recruit section#recruit_message .message_lower .message_image img {
    position: initial;
    width: 100%;
    max-width: 100%;
  }
}
body#page__recruit section#recruit_message .message_upper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message .message_upper {
    margin-top: 2.1875rem;
  }
}
body#page__recruit section#recruit_message .message_upper .message_image img {
  left: 0;
}
body#page__recruit section#recruit_message .message_lower {
  margin-top: 6.25rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message .message_lower {
    flex-direction: column-reverse;
    margin-top: 2.5rem;
  }
}
body#page__recruit section#recruit_message .message_lower .message_image img {
  right: 0;
}
body#page__recruit section#recruit_message .message_lower .message_text .section_explain {
  padding-right: 6.875rem;
}
@media screen and (max-width: 1099px) {
  body#page__recruit section#recruit_message .message_lower .message_text .section_explain {
    padding-right: 0;
  }
}
body#page__recruit section#recruit_message .message_lower .message_text .btn {
  margin-top: 1.875rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_message .message_lower .message_text .btn {
    margin-left: auto;
    margin-right: auto;
  }
}
body#page__recruit section#recruit_youtube {
  background-color: rgba(235, 242, 254, 0.7);
  padding-top: 6.25rem;
  padding-bottom: 6.25rem;
}
@media screen and (max-width: 768px) {
  body#page__recruit section#recruit_youtube {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem;
  }
}
body#page__recruit section#recruit_youtube iframe {
  height: auto;
  aspect-ratio: 16/9;
}
body#page__recruit section.cta {
  margin-top: 0;
}

body#page__data-of-shigeno section#numbers_data {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data {
    padding-top: 4.375rem;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_inner {
  display: flex;
  flex-wrap: wrap;
  gap: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_inner {
    gap: 2.8125rem;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item {
  display: flex;
  flex-direction: column;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__title {
  width: fit-content;
  height: 2.75rem;
  padding: 0.5rem 1.5rem;
  background: linear-gradient(91.45deg, #166dca 1.57%, #071575 100.93%);
  font-size: 1.25rem;
  line-height: 1;
  font-weight: 700;
  color: #fff;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__box {
  position: relative;
  z-index: 400;
  flex: 1;
  background-color: #fff;
  border: 2px solid #ced8ea;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__label {
  width: 100%;
  height: 2.0625rem;
  font-size: 1rem;
  line-height: 1;
  font-weight: 700;
  color: #fff;
  background-color: #071575;
  margin-bottom: 0.625rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__number {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 0.75rem;
  line-height: 1;
  font-weight: 700;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__number > .number {
  font-weight: 900;
  color: #071575;
  transform: translateY(0.05em);
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__explain {
  font-size: 1rem;
  line-height: 2;
  font-weight: 500;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__btn {
  margin-top: 1.25rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__image {
  margin-top: 0.875rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__image {
    width: 10.3125rem;
    margin-left: auto;
    margin-right: auto;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item .numbers_data_item__bgimage {
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 10.6875rem;
  height: 12.375rem;
  object-fit: contain;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big {
  width: calc((100% - 3.125rem) / 2);
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big {
    width: 100%;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big .numbers_data_item__box {
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding: 2.4375rem 1.8125rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big .numbers_data_item__box {
    padding: 2.4375rem 1.625rem 2.125rem;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_01 .numbers_data_item__number {
  font-size: 1.1875rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_01 .numbers_data_item__number > .number {
  font-size: 3.625rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_01 .box_left {
  width: 10.3125rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_01 .box_left {
    width: 100%;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_01 .box_right {
  width: calc(100% - 10.3125rem - 2.125rem);
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_01 .box_right {
    width: 100%;
    margin-top: 2.125rem;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .numbers_data_item__number {
  font-size: 1.5rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .numbers_data_item__number > .number {
  font-size: 4.5rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .numbers_data_item__explain {
  margin-top: 1.875rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_left {
  width: calc(100% - 11.625rem - 2.75rem);
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_left {
    width: 100%;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right {
  width: 11.625rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right {
    width: 100%;
    display: flex;
    justify-content: space-between;
    margin-top: 1.875rem;
  }
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right .box_right__child {
    width: calc((100% - 1.5625rem) / 2);
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right .box_right__child:nth-child(n+2) {
  margin-top: 1.25rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right .box_right__child:nth-child(n+2) {
    margin-top: 0;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right .numbers_data_item__label {
  background-color: #166dca;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right .numbers_data_item__number {
  font-size: 1rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_big.item_02 .box_right .numbers_data_item__number > .number {
  font-size: 3.125rem;
  color: #166dca;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_small {
  width: calc((100% - 6.25rem) / 3);
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_small {
    width: 100%;
  }
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_small .numbers_data_item__box {
  flex-direction: column;
  padding: 3.5rem 2.8125rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_small .numbers_data_item__number {
  font-size: 1.5rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_small .numbers_data_item__number > .number {
  font-size: 4.5rem;
}
body#page__data-of-shigeno section#numbers_data .numbers_data_item.item_small .numbers_data_item__explain {
  margin-top: 2rem;
}
body#page__data-of-shigeno section#benefits {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#benefits {
    padding-top: 4.375rem;
  }
}
body#page__data-of-shigeno section#benefits .benefits_table_wrapper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno section#benefits .benefits_table_wrapper {
    margin-top: 2.1875rem;
  }
}
body#page__data-of-shigeno .cta__data_of_shigeno {
  margin-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__data-of-shigeno .cta__data_of_shigeno {
    margin-top: 4.375rem;
  }
}
body#page__data-of-shigeno .cta__data_of_shigeno .btn {
  margin: 0 auto;
}

body#page__archive_job-description section#flow .flow_contents_wrapper {
  display: flex;
  justify-content: center;
  gap: 2.75rem;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#flow .flow_contents_wrapper {
    flex-direction: column;
    align-items: center;
    margin-top: 2.1875rem;
  }
}
body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item {
  position: relative;
  width: calc((100% - 8.25rem) / 4);
  border: 1px solid #ced8ea;
  box-shadow: 0.125rem 0.25rem 0.625rem 0 rgba(0, 0, 0, 0.08);
  padding: 1.5rem 2rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item {
    width: 16.375rem;
  }
}
body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item:nth-child(n+2)::before {
  content: "";
  display: block;
  position: absolute;
  left: -2.25rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 1.75rem solid transparent;
  border-bottom: 1.75rem solid transparent;
  border-left: 1.3125rem solid #ced8ea;
  border-right: 0;
  margin-left: 0.4375rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item:nth-child(n+2)::before {
    top: -3rem;
    left: 50%;
    transform: translateX(-50%) rotate(90deg);
  }
}
body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item .flow_item__title {
  display: flex;
  align-items: center;
  gap: 1.125rem;
}
body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item .flow_item__title > img {
  width: 3.125rem;
  height: 3.125rem;
  object-fit: contain;
  flex-shrink: 0;
}
body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item .flow_item__title > span {
  font-size: 1.25rem;
  line-height: 1.6;
  font-weight: 700;
}
body#page__archive_job-description section#flow .flow_contents_wrapper .flow_item .flow_item__content {
  font-size: 0.9375rem;
  line-height: 2;
  font-weight: 500;
  margin-top: 1rem;
}
body#page__archive_job-description section#job_list {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#job_list {
    padding-top: 4.375rem;
  }
}
body#page__archive_job-description section#job_list .job_list_contents_wrapper {
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#job_list .job_list_contents_wrapper {
    margin-top: 2.1875rem;
  }
}
body#page__archive_job-description section#external_links {
  padding-top: 6.875rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#external_links {
    padding-top: 4.375rem;
  }
}
body#page__archive_job-description section#external_links .external_links_inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 1.25rem 2.8125rem;
}
body#page__archive_job-description section#external_links .navy_btn {
  width: 27.6875rem;
  height: 8.0625rem;
  font-size: 1.5rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#external_links .navy_btn {
    font-size: 1rem;
    height: 5.875rem;
  }
}
body#page__archive_job-description section#external_links .navy_btn::after {
  width: 3rem;
  height: 3rem;
}
@media screen and (max-width: 768px) {
  body#page__archive_job-description section#external_links .navy_btn::after {
    width: 2.125rem;
    height: 2.125rem;
  }
}

body#page__contact-us .contact_title,
body#page__thanks .contact_title {
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 1rem;
}
body#page__contact-us .contact_explain,
body#page__thanks .contact_explain {
  font-size: 1.125rem;
  font-weight: 500;
  text-align: center;
}
@media screen and (max-width: 768px) {
  body#page__contact-us .contact_explain,
body#page__thanks .contact_explain {
    font-size: 1rem;
  }
}
body#page__contact-us .contact_form_wrapper,
body#page__thanks .contact_form_wrapper {
  background-color: #fff;
  border: 1px solid #ced8ea;
  border-radius: 1rem;
  box-shadow: 0.125rem 0.25rem 0.9375rem rgba(0, 0, 0, 0.06);
  padding: 2.75rem 5rem;
  margin-top: 3.125rem;
}
@media screen and (max-width: 768px) {
  body#page__contact-us .contact_form_wrapper,
body#page__thanks .contact_form_wrapper {
    margin-top: 4.375rem;
    padding: 2rem 1rem;
  }
}
body#page__contact-us .required,
body#page__thanks .required {
  display: inline-block;
  font-size: 0.8125rem;
  line-height: 1;
  font-weight: 500;
  color: #fff;
  background-color: #ce2d45;
  padding: 0.1875rem 0.25rem;
}
body#page__contact-us input:not([type=radio]):not([type=checkbox]):not([type=submit]),
body#page__contact-us textarea,
body#page__contact-us select,
body#page__thanks input:not([type=radio]):not([type=checkbox]):not([type=submit]),
body#page__thanks textarea,
body#page__thanks select {
  width: 100%;
  max-width: 100%;
  background-color: #f6f6f6;
  border: 1px solid #d5d5d5;
  padding: 0.5rem 1rem;
  border-radius: 0.25rem;
}
body#page__contact-us input[type=radio],
body#page__contact-us input[type=checkbox],
body#page__thanks input[type=radio],
body#page__thanks input[type=checkbox] {
  width: 1.5rem;
  height: 1.5rem;
  accent-color: #071575;
}
@media screen and (max-width: 768px) {
  body#page__contact-us table,
body#page__contact-us tbody,
body#page__contact-us tr,
body#page__contact-us th,
body#page__contact-us td,
body#page__thanks table,
body#page__thanks tbody,
body#page__thanks tr,
body#page__thanks th,
body#page__thanks td {
    display: block;
  }
}
body#page__contact-us .contact_form_table,
body#page__thanks .contact_form_table {
  width: 100%;
}
@media screen and (max-width: 768px) {
  body#page__contact-us .contact_form_table tr:nth-child(n+2),
body#page__thanks .contact_form_table tr:nth-child(n+2) {
    margin-top: 1.875rem;
  }
}
body#page__contact-us .contact_form_table tr#cf_select select,
body#page__thanks .contact_form_table tr#cf_select select {
  width: 20.625rem;
}
body#page__contact-us .contact_form_table tr#cf_post_code input,
body#page__thanks .contact_form_table tr#cf_post_code input {
  width: 10.25rem;
}
body#page__contact-us .contact_form_table .form_row__title,
body#page__contact-us .contact_form_table .form_row__content,
body#page__thanks .contact_form_table .form_row__title,
body#page__thanks .contact_form_table .form_row__content {
  text-align: left;
  padding-top: 1.25rem;
  padding-bottom: 1.25rem;
}
@media screen and (max-width: 768px) {
  body#page__contact-us .contact_form_table .form_row__title,
body#page__contact-us .contact_form_table .form_row__content,
body#page__thanks .contact_form_table .form_row__title,
body#page__thanks .contact_form_table .form_row__content {
    padding: 0;
  }
}
body#page__contact-us .contact_form_table .form_row__title .form_row__title_inner,
body#page__thanks .contact_form_table .form_row__title .form_row__title_inner {
  display: flex;
  align-items: center;
  gap: 0.875rem;
}
@media screen and (max-width: 768px) {
  body#page__contact-us .contact_form_table .form_row__content,
body#page__thanks .contact_form_table .form_row__content {
    margin-top: 0.625rem;
  }
}
body#page__contact-us .acceptance_wrapper,
body#page__thanks .acceptance_wrapper {
  margin-top: 1.25rem;
}
body#page__contact-us .acceptance_wrapper span,
body#page__contact-us .acceptance_wrapper label,
body#page__thanks .acceptance_wrapper span,
body#page__thanks .acceptance_wrapper label {
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0;
}
body#page__contact-us .acceptance_wrapper label,
body#page__thanks .acceptance_wrapper label {
  gap: 1.125rem;
}
body#page__contact-us .submit_btn_wrapper,
body#page__thanks .submit_btn_wrapper {
  position: relative;
  z-index: 400;
  display: block;
  width: fit-content;
  margin: 2.5rem auto 0;
  cursor: pointer;
}
body#page__contact-us .submit_btn_wrapper input[type=submit],
body#page__thanks .submit_btn_wrapper input[type=submit] {
  display: flex;
  justify-content: center;
  align-items: center;
  width: fit-content;
  height: 3.75rem;
  font-size: 1rem;
  color: #fff;
  background-color: #071575;
  border: 1px solid #071575;
  padding: 0.5rem 4.75rem 0.5rem 2rem;
}
body#page__contact-us .submit_btn_wrapper::after,
body#page__thanks .submit_btn_wrapper::after {
  content: "";
  display: block;
  position: absolute;
  right: 1.5rem;
  top: 50%;
  transform: translateY(-50%);
  width: 2.25rem;
  height: 0.375rem;
  background-image: url(../../assets/img/common/icon_arrow_white.webp);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
body#page__contact-us .submit_btn_wrapper .wpcf7-spinner,
body#page__thanks .submit_btn_wrapper .wpcf7-spinner {
  position: absolute;
  bottom: -1.5rem;
  left: 50%;
  transform: translateX(-50%);
}
body#page__contact-us .submit_btn_wrapper:hover input[type=submit],
body#page__thanks .submit_btn_wrapper:hover input[type=submit] {
  color: #071575;
  background-color: #fff;
}
body#page__contact-us .submit_btn_wrapper:hover::after,
body#page__thanks .submit_btn_wrapper:hover::after {
  background-image: url(../../assets/img/common/icon_arrow_navy.webp);
}
body#page__contact-us .contact_thanks_attention,
body#page__thanks .contact_thanks_attention {
  position: relative;
  z-index: 400;
  margin-top: 2.5rem;
  padding: 2rem 3rem 2rem 4rem;
  font-weight: 700;
  color: #071575;
  text-align: center;
  box-shadow: 0.125rem 0.25rem 0.9375rem rgba(0, 0, 0, 0.06);
}
@media screen and (max-width: 768px) {
  body#page__contact-us .contact_thanks_attention,
body#page__thanks .contact_thanks_attention {
    padding: 2rem 1rem;
  }
}
body#page__contact-us .contact_thanks_attention::before, body#page__contact-us .contact_thanks_attention::after,
body#page__thanks .contact_thanks_attention::before,
body#page__thanks .contact_thanks_attention::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
body#page__contact-us .contact_thanks_attention::before,
body#page__thanks .contact_thanks_attention::before {
  z-index: -1;
  width: 100%;
  height: 100%;
  background: #fff;
}
body#page__contact-us .contact_thanks_attention::after,
body#page__thanks .contact_thanks_attention::after {
  z-index: -2;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  background: linear-gradient(91.45deg, #166dca 1.57%, #071575 100.93%);
}
body#page__contact-us .thanks_return_btn,
body#page__thanks .thanks_return_btn {
  margin: 2.5rem auto 0;
}

body#page__home .single_head_categories,
body.archive .single_head_categories {
  justify-content: right;
}
@media screen and (max-width: 768px) {
  body#page__home .single_head_categories,
body.archive .single_head_categories {
    justify-content: left;
  }
}
body#page__home .single_head_categories .cat_item,
body.archive .single_head_categories .cat_item {
  height: 2.25rem;
  padding: 0.375rem 2.3125rem;
}
@media screen and (max-width: 768px) {
  body#page__home .single_head_categories .cat_item,
body.archive .single_head_categories .cat_item {
    height: 2rem;
    padding: 0.25rem 0.5rem;
  }
}
body#page__home .single_head_categories .works_cat_item,
body.archive .single_head_categories .works_cat_item {
  height: 2.25rem;
  padding: 0.375rem 2.3125rem;
}
@media screen and (max-width: 768px) {
  body#page__home .single_head_categories .works_cat_item,
body.archive .single_head_categories .works_cat_item {
    padding: 0.25rem 1rem;
  }
}
@media screen and (max-width: 768px) {
  body#page__home .works_categories_wrapper .works_cat_item,
body.archive .works_categories_wrapper .works_cat_item {
    width: calc((100% - 1.5rem) / 3);
  }
}
body#page__home .post_list_wrapper,
body#page__home .works_list_wrapper,
body.archive .post_list_wrapper,
body.archive .works_list_wrapper {
  margin-top: 3.125rem;
}

@media screen and (max-width: 480px) {
  body#page__privacy-policy .page_title .page_title_inner .page_title__text span.en_title {
    font-size: 2.625rem;
  }
}

/*# sourceMappingURL=style.css.map */
