@charset "UTF-8";
* {
  box-sizing: border-box;
}
*::before, *::after {
  box-sizing: inherit;
}

body, h1, h2, h3, h4, h5, h6, p, ul, ol, dl, dd, figure, fieldset, legend, input, textarea, select, button {
  margin: 0;
  padding: 0;
}

button {
  cursor: pointer;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
  border-style: none;
  width: 100%;
}

html {
  font-size: 62.5%;
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 1.6rem;
  color: #000;
  letter-spacing: 0.07rem;
  font-weight: 500;
  -webkit-font-smoothing: antialiased;
}
@media print {
  body {
    zoom: 0.8;
  }
}

a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  color: inherit;
  text-decoration: none;
}

ul {
  list-style: none;
}

.container {
  max-width: 1645px;
  margin: 0 auto;
  padding: 0 15px;
}
@media screen and (max-width: 1540px) {
  .container {
    max-width: 1310px;
  }
}
@media screen and (max-width: 1350px) {
  .container {
    max-width: 960px;
  }
}
@media screen and (max-width: 991px) {
  .container {
    max-width: 720px;
  }
}
@media screen and (max-width: 767px) {
  .container {
    max-width: 570px;
  }
}
@media screen and (max-width: 574px) {
  .container {
    max-width: 100%;
  }
}

.id-target {
  display: block;
  scroll-margin-top: 10rem;
}
@media screen and (max-width: 574px) {
  .id-target {
    scroll-margin-top: 7rem;
  }
}

br.pc {
  display: none;
}
@media screen and (max-width: 1540px) {
  br.pc {
    display: block;
  }
}
br.xl {
  display: none;
}
@media screen and (max-width: 1350px) {
  br.xl {
    display: block;
  }
}
br.lg {
  display: none;
}
@media screen and (max-width: 991px) {
  br.lg {
    display: block;
  }
}
br.md {
  display: none;
}
@media screen and (max-width: 767px) {
  br.md {
    display: block;
  }
}
br.sm {
  display: none;
}
@media screen and (max-width: 574px) {
  br.sm {
    display: block;
  }
}
br.xs {
  display: none;
}
@media screen and (max-width: 450px) {
  br.xs {
    display: block;
  }
}

@media screen {
  .blur {
    filter: blur(15px);
    opacity: 0;
    transition-duration: 1.3s;
  }
  .blur.is-show {
    filter: blur(0);
    opacity: 1;
  }
  .fadein {
    opacity: 0;
    transition-duration: 1s;
  }
  .fadein.is-show {
    opacity: 1;
  }
  .fadein_top {
    opacity: 0;
    transition-duration: 1s;
    transform: translateY(-15px);
  }
  .fadein_top.is-show {
    transform: translateY(0);
    opacity: 1;
  }
  .fadein_bottom {
    opacity: 0;
    transition-duration: 1s;
    transform: translateY(15px);
  }
  .fadein_bottom.is-show {
    transform: translateY(0);
    opacity: 1;
  }
  .fadein_left {
    opacity: 0;
    transition-duration: 1s;
    transform: translateX(-15px);
  }
  .fadein_left.is-show {
    transform: translateX(0);
    opacity: 1;
  }
  .fadein_right {
    opacity: 0;
    transition-duration: 1s;
    transform: translateX(15px);
  }
  .fadein_right.is-show {
    transform: translateX(0);
    opacity: 1;
  }
  .delay1 {
    transition-delay: 0.1s;
  }
  .delay2 {
    transition-delay: 0.2s;
  }
  .delay3 {
    transition-delay: 0.3s;
  }
  .delay4 {
    transition-delay: 0.4s;
  }
  .delay5 {
    transition-delay: 0.5s;
  }
  .delay6 {
    transition-delay: 0.6s;
  }
  .delay7 {
    transition-delay: 0.7s;
  }
  .delay8 {
    transition-delay: 0.8s;
  }
  .delay9 {
    transition-delay: 0.9s;
  }
  .delay10 {
    transition-delay: 1s;
  }
  .delay11 {
    transition-delay: 1.1s;
  }
  .delay12 {
    transition-delay: 1.2s;
  }
  .delay13 {
    transition-delay: 1.3s;
  }
  .delay14 {
    transition-delay: 1.4s;
  }
  .delay15 {
    transition-delay: 1.5s;
  }
  .delay16 {
    transition-delay: 1.6s;
  }
  .delay17 {
    transition-delay: 1.7s;
  }
  .delay18 {
    transition-delay: 1.8s;
  }
  .delay19 {
    transition-delay: 1.9s;
  }
  .delay20 {
    transition-delay: 2s;
  }
}
header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 100;
  padding: 0 3rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 9.5rem;
  transition: 0.3s ease;
  z-index: 800;
}
@media screen and (max-width: 1350px) {
  header {
    height: 8rem;
    padding: 0 2.5rem;
  }
}
@media screen and (max-width: 574px) {
  header {
    height: 6rem;
  }
}
header .logo {
  position: relative;
  width: 24.4rem;
  z-index: 2;
  transition: opacity 0.3s ease;
}
@media (min-width: 992px) {
  header .logo:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 1350px) {
  header .logo {
    width: 18rem;
  }
}
@media screen and (max-width: 991px) {
  header .logo {
    width: 22rem;
  }
}
@media screen and (max-width: 574px) {
  header .logo {
    width: 17rem;
  }
}
header .logo.open a.base {
  opacity: 1;
}
header .logo.open a.white {
  opacity: 0;
}
header .logo a {
  display: block;
}
header .logo a.base {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: center;
     object-position: center;
  opacity: 0;
  transition: opacity 0.3s ease;
}
header .logo a.white {
  opacity: 1;
  transition: opacity 0.3s ease;
}
header.scroll {
  background: #fff;
}
header.scroll .logo a.white {
  opacity: 0;
}
header.scroll .logo a.base {
  opacity: 1;
}
header.bottom_page {
  background: #fff;
}
@media screen and (max-width: 767px) {
  header.bottom_page {
    background: none;
  }
  header.bottom_page.scroll {
    background: #fff;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  header.bottom_page.scroll .logo a.white {
    opacity: 0;
  }
}
@media screen and (max-width: 767px) and (max-width: 767px) {
  header.bottom_page.scroll .logo a.base {
    opacity: 1;
  }
}
header.bottom_page .logo a.white {
  opacity: 0;
}
@media screen and (max-width: 767px) {
  header.bottom_page .logo a.white {
    opacity: 1;
  }
}
header.bottom_page .logo a.base {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  header.bottom_page .logo a.base {
    opacity: 0;
  }
}
header.bottom_page nav a {
  transition: 0.3s;
}
@media (min-width: 992px) {
  header.bottom_page nav a:hover {
    opacity: 1;
    color: #008cb4;
  }
}
header nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 5rem;
  margin-right: 26rem;
}
@media screen and (max-width: 1350px) {
  header nav {
    gap: 3rem;
    margin-right: 18rem;
  }
}
header nav a {
  font-size: 1.7rem;
  font-weight: 700;
  transition: opacity 0.3s ease;
}
@media screen and (max-width: 1350px) {
  header nav a {
    font-size: 1.6rem;
  }
}
@media (min-width: 992px) {
  header nav a:hover {
    opacity: 0.6;
  }
}
header nav a.active {
  color: #008cb4;
}
@media screen and (max-width: 991px) {
  header nav {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: #fff;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4rem;
    margin-right: 0;
    z-index: 0;
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.5s ease;
  }
  header nav.open {
    opacity: 1;
    pointer-events: all;
  }
}
header nav .sp_contact {
  display: flex;
  flex-direction: column;
  gap: 0.7rem;
}
header nav .sp_contact .recruit_btn {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 7.2rem;
  padding: 0 1.4rem;
  background: #f9cc50;
  border-radius: 5rem;
  border: 3px solid #000;
  gap: 1.6rem;
  width: 22.4rem;
  transition: 0.3s;
}
header nav .sp_contact .recruit_btn-text {
  font-size: 2rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  flex: 1;
  text-align: center;
}
header nav .sp_contact .recruit_btn-icon {
  width: 3rem;
  height: 3rem;
  background: #000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
header nav .sp_contact .recruit_btn-icon svg {
  width: 1.8rem;
}
@media (min-width: 992px) {
  header nav .sp_contact .recruit_btn:hover {
    background: #fff;
  }
}
header .toggle {
  display: none;
  width: 4.3rem;
  height: 1.7rem;
  position: relative;
  cursor: pointer;
  z-index: 2;
}
@media screen and (max-width: 574px) {
  header .toggle {
    width: 2.15rem;
    height: 0.85rem;
  }
}
header .toggle span {
  display: block;
  width: 100%;
  height: 2px;
  background: #000;
  position: absolute;
  transition-duration: 0.4s;
}
header .toggle span:nth-of-type(1) {
  top: 0;
}
header .toggle span:nth-of-type(2) {
  bottom: 0;
}
header .toggle.open span:nth-of-type(1) {
  top: 50%;
  transform: translateY(-50%) rotate(25deg);
}
header .toggle.open span:nth-of-type(2) {
  top: 50%;
  transform: translateY(-50%) rotate(-25deg);
}
@media screen and (max-width: 991px) {
  header .toggle {
    display: block;
  }
}

.header_contact {
  position: fixed;
  right: 0;
  top: 3.2rem;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  z-index: 900;
}
@media screen and (max-width: 1350px) {
  .header_contact {
    top: 1.8rem;
    gap: 0.7rem;
  }
}
@media screen and (max-width: 991px) {
  .header_contact {
    position: fixed;
    top: auto;
    bottom: 0;
    left: 0;
    width: 100%;
    background: rgba(0, 0, 0, 0.8);
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2.3rem;
    height: 8rem;
  }
}
@media screen and (max-width: 574px) {
  .header_contact {
    gap: 1.2rem;
    height: 6rem;
    padding: 0 3rem;
  }
}
.header_contact .recruit_btn {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 7.2rem;
  padding: 0 1.4rem;
  background: #f9cc50;
  border-radius: 5rem 0 0 5rem;
  border: 3px solid #000;
  border-right: 0;
  gap: 1.6rem;
  width: 22.4rem;
  transition: 0.3s;
}
@media screen and (max-width: 1350px) {
  .header_contact .recruit_btn {
    height: 5.5rem;
    width: 19rem;
    gap: 1rem;
  }
}
@media screen and (max-width: 991px) {
  .header_contact .recruit_btn {
    height: 6rem;
    width: 26rem;
    border-radius: 5rem;
    border-right: 3px solid #000;
  }
}
@media screen and (max-width: 574px) {
  .header_contact .recruit_btn {
    height: 4rem;
    width: auto;
    flex: 1;
  }
}
.header_contact .recruit_btn-text {
  font-size: 2rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  flex: 1;
  text-align: center;
}
@media screen and (max-width: 1350px) {
  .header_contact .recruit_btn-text {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 991px) {
  .header_contact .recruit_btn-text {
    font-size: 2rem;
  }
}
@media screen and (max-width: 574px) {
  .header_contact .recruit_btn-text {
    font-size: 1.3rem;
  }
}
.header_contact .recruit_btn-icon {
  width: 3rem;
  height: 3rem;
  background: #000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header_contact .recruit_btn-icon svg {
  width: 1.8rem;
}
@media screen and (max-width: 574px) {
  .header_contact .recruit_btn-icon svg {
    transform: scale(0.6);
  }
}
@media screen and (max-width: 574px) {
  .header_contact .recruit_btn-icon {
    width: 2rem;
    height: 2rem;
  }
}
@media (min-width: 992px) {
  .header_contact .recruit_btn:hover {
    background: #fff;
  }
}

.title h2 {
  font-weight: 700;
  letter-spacing: 0.1rem;
  line-height: 1.4;
  font-size: 5rem;
}
@media screen and (max-width: 1350px) {
  .title h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 991px) {
  .title h2 {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 767px) {
  .title h2 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 574px) {
  .title h2 {
    font-size: 2.1rem;
  }
}
.title.center {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  gap: 1rem;
}
@media screen and (max-width: 574px) {
  .title.center {
    gap: 0;
  }
}
.title.center::before, .title.center::after {
  content: "";
  width: 7.3rem;
  height: 6.2rem;
  background: url(../images/common/title_left.png) no-repeat;
  background-size: contain;
  background-position: center;
  transform: translateY(1.5rem);
}
@media screen and (max-width: 1350px) {
  .title.center::before, .title.center::after {
    width: 6rem;
    height: 5rem;
  }
}
@media screen and (max-width: 767px) {
  .title.center::before, .title.center::after {
    width: 5rem;
    height: 4rem;
  }
}
@media screen and (max-width: 574px) {
  .title.center::before, .title.center::after {
    width: 3.1rem;
    height: 2.5rem;
    transform: translateY(0.5rem);
  }
}
.title.center::after {
  background: url(../images/common/title_right.png) no-repeat;
  background-size: contain;
  background-position: center;
}
.title.white {
  color: #fff;
}
.title.white::before, .title.white::after {
  background: url(../images/common/title_white-left.png) no-repeat;
  background-size: contain;
  background-position: center;
}
.title.white::after {
  background: url(../images/common/title_white-right.png) no-repeat;
  background-size: contain;
  background-position: center;
}

main {
  overflow: hidden;
}

.footer {
  padding: 10rem 0;
  background: #008cb4;
  color: #fff;
}
@media screen and (max-width: 1350px) {
  .footer {
    padding: 8rem 0;
  }
}
@media screen and (max-width: 991px) {
  .footer {
    padding: 8rem 0 10rem;
  }
}
@media screen and (max-width: 574px) {
  .footer {
    padding: 3.7rem 0 8rem 0;
  }
}
.footer_inner {
  display: flex;
  justify-content: space-between;
  gap: 4rem;
}
@media screen and (max-width: 991px) {
  .footer_inner {
    flex-direction: column;
    align-items: flex-start;
    gap: 6rem;
  }
}
.footer_left .logo {
  width: 29rem;
}
.footer_left .logo a {
  display: block;
  transition: opacity 0.3s ease;
}
@media (min-width: 992px) {
  .footer_left .logo a:hover {
    opacity: 0.6;
  }
}
.footer_left .logo img {
  display: block;
}
@media screen and (max-width: 1350px) {
  .footer_left .logo {
    width: 23rem;
  }
}
@media screen and (max-width: 574px) {
  .footer_left .logo {
    width: 16rem;
  }
}
.footer_left .add {
  font-size: 1.7rem;
  line-height: 1.8;
  letter-spacing: 0.05rem;
  margin-top: 5.2rem;
}
@media screen and (max-width: 1350px) {
  .footer_left .add {
    font-size: 1.5rem;
    margin-top: 3.5rem;
  }
}
.footer_left .corp {
  font-size: 1.7rem;
  letter-spacing: 0.05rem;
  text-decoration: underline;
  margin-top: 4rem;
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  transition: opacity 0.3s ease;
}
@media (min-width: 992px) {
  .footer_left .corp:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 1350px) {
  .footer_left .corp {
    font-size: 1.5rem;
    margin-top: 2.5rem;
  }
}
@media screen and (max-width: 991px) {
  .footer_left .corp {
    margin: 2rem 0 0;
  }
}
@media screen and (max-width: 574px) {
  .footer_left .corp {
    font-size: 1.3rem;
  }
}
.footer_right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 991px) {
  .footer_right {
    width: 100%;
  }
}
.footer_nav {
  display: flex;
  align-items: center;
  gap: 4.5rem;
}
@media screen and (max-width: 1350px) {
  .footer_nav {
    gap: 3rem;
  }
}
@media screen and (max-width: 574px) {
  .footer_nav {
    gap: 1.5rem;
    flex-wrap: wrap;
    max-width: 31rem;
  }
}
.footer_nav a {
  font-size: 1.7rem;
  transition: opacity 0.3s ease;
}
@media screen and (max-width: 1350px) {
  .footer_nav a {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  .footer_nav a {
    font-size: 1.3rem;
    display: block;
  }
}
@media (min-width: 992px) {
  .footer_nav a:hover {
    opacity: 0.6;
  }
}
@media screen and (max-width: 574px) {
  .footer_nav a:nth-of-type(odd)::after {
    content: "／";
    margin-left: 1.5rem;
  }
}
.footer_contact {
  display: flex;
  justify-content: flex-end;
  gap: 1.6rem;
}
@media screen and (max-width: 991px) {
  .footer_contact {
    justify-content: center;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 574px) {
  .footer_contact {
    display: none;
  }
}
.footer_contact .recruit_btn {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  height: 7.2rem;
  padding: 0 1.4rem;
  background: #f9cc50;
  color: #000;
  border-radius: 5rem;
  border: 3px solid #000;
  gap: 1.6rem;
  width: 22.4rem;
  transition: 0.3s;
}
@media screen and (max-width: 1350px) {
  .footer_contact .recruit_btn {
    height: 6rem;
    width: 18rem;
  }
}
@media screen and (max-width: 991px) {
  .footer_contact .recruit_btn {
    width: 22rem;
  }
}
.footer_contact .recruit_btn-text {
  font-size: 2rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  flex: 1;
  text-align: center;
}
@media screen and (max-width: 1350px) {
  .footer_contact .recruit_btn-text {
    font-size: 1.6rem;
  }
}
.footer_contact .recruit_btn-icon {
  width: 3rem;
  height: 3rem;
  background: #000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer_contact .recruit_btn-icon svg {
  width: 1.8rem;
}
@media screen and (max-width: 1350px) {
  .footer_contact .recruit_btn-icon {
    width: 2.5rem;
    height: 2.5rem;
  }
}
@media (min-width: 992px) {
  .footer_contact .recruit_btn:hover {
    background: #fff;
  }
}
.footer .copy {
  text-align: right;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.05rem;
}
@media screen and (max-width: 991px) {
  .footer .copy {
    text-align: center;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  .footer .copy {
    font-size: 1.1rem;
    margin-top: 5.5rem;
    width: 100%;
  }
}

main:not(#top) .entry {
  height: 60rem;
  background: url(../images/company/entry_bg.jpg) no-repeat;
  background-size: cover;
  background-position: center;
  padding-bottom: 10.5rem;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  main:not(#top) .entry {
    height: 40rem;
  }
}
@media screen and (max-width: 574px) {
  main:not(#top) .entry {
    height: 29rem;
    padding-bottom: 4.6rem;
  }
}
main:not(#top) .entry_btn {
  width: 48rem;
  height: 11.2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #f9cc50;
  color: #000;
  border-radius: 5rem;
  border: 3px solid #000;
  gap: 1.6rem;
  position: relative;
  transition: 0.3s;
}
@media screen and (max-width: 574px) {
  main:not(#top) .entry_btn {
    width: 32rem;
    height: 7rem;
  }
}
main:not(#top) .entry_btn-text {
  font-size: 2.3rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  flex: 1;
  text-align: center;
}
@media screen and (max-width: 574px) {
  main:not(#top) .entry_btn-text {
    font-size: 1.6rem;
  }
}
main:not(#top) .entry_btn-icon {
  width: 3rem;
  height: 3rem;
  background: #000;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  right: 3.2rem;
  transform: translateY(-50%);
}
main:not(#top) .entry_btn-icon svg {
  width: 1.8rem;
}
@media screen and (max-width: 574px) {
  main:not(#top) .entry_btn-icon svg {
    transform: scale(0.7);
  }
}
@media screen and (max-width: 574px) {
  main:not(#top) .entry_btn-icon {
    width: 2.4rem;
    height: 2.4rem;
    right: 1.5rem;
  }
}
@media (min-width: 992px) {
  main:not(#top) .entry_btn:hover {
    background: #fff;
  }
}

#top .mv {
  background: #008cb4;
  height: 100vh;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  z-index: 0;
  overflow: hidden;
}
@media screen and (min-width: 1600px) and (max-height: 980px) {
  #top .mv {
    min-height: 80rem;
  }
}
@media screen and (min-height: 1100px) and (max-width: 1350px) {
  #top .mv {
    max-height: 75rem;
    min-height: 0;
  }
}
@media screen and (max-width: 1350px) {
  #top .mv {
    height: 71rem;
    min-height: 0;
  }
}
@media screen and (max-width: 1100px) {
  #top .mv {
    height: 60rem;
  }
}
@media screen and (max-width: 767px) {
  #top .mv {
    height: 80rem;
    max-height: none;
  }
}
@media screen and (max-width: 574px) {
  #top .mv {
    height: 115vw;
  }
}
@media screen and (max-width: 450px) {
  #top .mv {
    max-height: 49.2rem;
  }
}
#top .mv::after {
  content: "";
  width: 100%;
  height: 3.2rem;
  background: #fff;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
}
#top .mv .mv_text {
  position: absolute;
  top: 50%;
  left: 0;
  width: 50%;
  transform: translateY(-65%);
  color: #fff;
  z-index: 2;
}
@media screen and (min-width: 1200px) and (max-height: 980px) {
  #top .mv .mv_text {
    transform: translateY(-70%);
  }
}
@media screen and (max-width: 991px) {
  #top .mv .mv_text {
    transform: translateY(-75%);
  }
}
@media screen and (max-width: 767px) {
  #top .mv .mv_text {
    width: 100%;
    transform: translateY(0);
    top: 8rem;
  }
}
#top .mv .mv_text h1 {
  font-size: 6.14vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.08rem;
  text-shadow: 2.229px 2.007px 0px rgba(1, 100, 128, 0.74), 2.229px 2.007px 20px rgba(1, 100, 128, 0.74);
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
@media screen and (min-width: 1200px) and (max-height: 980px) {
  #top .mv .mv_text h1 {
    font-size: 5vw;
  }
}
@media screen and (max-width: 767px) {
  #top .mv .mv_text h1 {
    font-size: 9.4vw;
  }
}
#top .mv .mv_text h1 .yellow {
  color: #f9cc50;
}
@media screen and (max-width: 767px) {
  #top .mv .mv_text h1 .sp_none {
    display: none;
  }
}
#top .mv .mv_text h1 .md {
  display: none;
}
@media screen and (max-width: 767px) {
  #top .mv .mv_text h1 .md {
    display: block;
  }
}
#top .mv .mv_text:after {
  content: "";
  width: 60%;
  height: 105%;
  background: url(../images/top/mv_title-dot.png) no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 0;
  left: 2rem;
  z-index: -1;
}
@media screen and (max-width: 574px) {
  #top .mv .mv_text:after {
    background: url(../images/top/mv_title-dot_sp.png) no-repeat;
    background-size: contain;
    background-position: center;
    width: 90%;
    height: 81%;
  }
}
#top .mv .mv_image {
  position: absolute;
  top: 0;
  right: 0;
  width: 66vw;
}
@media screen and (max-width: 1350px) {
  #top .mv .mv_image {
    width: 60vw;
    top: 8rem;
  }
}
@media screen and (max-width: 991px) {
  #top .mv .mv_image {
    width: 70vw;
    right: -3rem;
  }
}
@media screen and (max-width: 767px) {
  #top .mv .mv_image {
    width: 95vw;
    top: 38%;
  }
}
#top .mv .mv_image .interview_btn {
  position: absolute;
  right: 1.8vw;
  top: 49vh;
  width: 36.4rem;
  height: 20.4rem;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: 0.1rem;
  clip-path: polygon(100% 0, 0 44%, 52% 100%);
  z-index: 3;
  transition: 0.3s;
}
@media screen and (min-width: 1600px) and (max-height: 980px) {
  #top .mv .mv_image .interview_btn {
    top: 38%;
  }
}
@media screen and (min-width: 1200px) and (max-height: 1015px) {
  #top .mv .mv_image .interview_btn {
    top: 30%;
    width: 30.4rem;
    height: 17.4rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .mv .mv_image .interview_btn {
    width: 30rem;
    height: 15rem;
    font-size: 2rem;
    top: 40%;
  }
}
@media screen and (max-width: 991px) {
  #top .mv .mv_image .interview_btn {
    width: 25rem;
    height: 13rem;
    font-size: 1.8rem;
    right: 5vw;
  }
}
@media screen and (max-width: 767px) {
  #top .mv .mv_image .interview_btn {
    left: -3rem;
    right: auto;
    top: 40%;
  }
}
@media screen and (max-width: 574px) {
  #top .mv .mv_image .interview_btn {
    font-size: 1.2rem;
    width: 16rem;
    height: 9rem;
    top: 37%;
  }
}
@media (min-width: 992px) {
  #top .mv .mv_image .interview_btn:hover {
    color: #000;
    background: #000;
  }
  #top .mv .mv_image .interview_btn:hover::after {
    background: #f9cc50;
  }
  #top .mv .mv_image .interview_btn:hover .arrow {
    background: #000;
  }
  #top .mv .mv_image .interview_btn:hover .arrow svg path {
    fill: #fff;
  }
}
#top .mv .mv_image .interview_btn::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  clip-path: polygon(100% 0, 0 44%, 52% 100%);
  z-index: -1;
  transform: scale(0.96);
  transition: 0.3s;
}
#top .mv .mv_image .interview_btn .arrow {
  width: 4.2rem;
  height: 4.2rem;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 1.2rem;
  flex-shrink: 0;
  transition: 0.3s;
}
@media screen and (max-width: 991px) {
  #top .mv .mv_image .interview_btn .arrow {
    width: 3rem;
    height: 3rem;
    margin-top: 0.8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .mv .mv_image .interview_btn .arrow {
    transform: scale(0.6);
    margin-top: 0.5rem;
  }
}
#top .mv .mv_image .interview_btn .arrow svg {
  transition: 0.3s;
}
#top .mv .mv_image .interview_btn .arrow svg path {
  transition: 0.3s;
}
#top .mv .mv_image .interview_btn-text {
  transform: rotate(-13deg);
  display: block;
  padding-top: 1.5rem;
}
#top .mv .flow_slider {
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
#top .mv .flow_slider .flow_slider_swiper {
  width: 100%;
}
#top .mv .flow_slider .flow_slider_swiper .swiper-wrapper {
  transition-timing-function: linear;
}
#top .mv .flow_slider .flow_slider_item {
  width: 100%;
  aspect-ratio: 455/257;
  overflow: hidden;
  border-radius: 1.5rem;
}
@media screen and (min-width: 1200px) and (max-height: 980px) {
  #top .mv .flow_slider .flow_slider_item {
    aspect-ratio: 455/200;
  }
}
@media screen and (max-width: 574px) {
  #top .mv .flow_slider .flow_slider_item {
    border-radius: 0.75rem;
  }
}
#top .mv .flow_slider .flow_slider_item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}
#top .catch {
  padding: 14.5rem 0 24rem;
}
@media screen and (max-width: 1350px) {
  #top .catch {
    padding: 10rem 0 18rem;
  }
}
@media screen and (max-width: 767px) {
  #top .catch {
    padding: 8rem 0 10rem;
  }
}
@media screen and (max-width: 574px) {
  #top .catch {
    padding: 4rem 0 5rem;
  }
}
#top .catch h2 {
  position: relative;
  font-weight: 900;
  font-size: 5rem;
  line-height: 1.5;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #top .catch h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 991px) {
  #top .catch h2 {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .catch h2 {
    font-size: 2.5rem;
  }
}
#top .catch h2 span {
  position: relative;
}
#top .catch h2 span::after {
  content: "";
  width: 8rem;
  height: 7rem;
  background: url(../images/common/title_right.png) no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  bottom: -1rem;
  left: -0.5rem;
}
@media screen and (max-width: 1350px) {
  #top .catch h2 span::after {
    width: 6rem;
    height: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .catch h2 span::after {
    width: 3.5rem;
    height: 2.5rem;
    bottom: 0;
  }
}
#top .catch .catch_text {
  font-size: 2rem;
  line-height: 2;
  letter-spacing: -0.05rem;
  margin-top: 4.5rem;
  font-weight: 500;
  flex: 1;
}
@media screen and (max-width: 1540px) {
  #top .catch .catch_text {
    font-size: 1.8rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 991px) {
  #top .catch .catch_text {
    margin-top: 0;
  }
}
@media screen and (max-width: 574px) {
  #top .catch .catch_text {
    font-size: 1.3rem;
  }
}
#top .catch_content {
  display: flex;
  justify-content: space-between;
  gap: 1.5rem;
}
@media screen and (max-width: 991px) {
  #top .catch_content {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  #top .catch_content {
    flex-direction: column;
  }
}
@media screen and (max-width: 574px) {
  #top .catch_content {
    margin-top: 2.5rem;
    gap: 3rem;
  }
}
#top .catch .catch_image {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 56%;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  #top .catch .catch_image {
    width: 40%;
  }
}
@media screen and (max-width: 767px) {
  #top .catch .catch_image {
    margin-left: auto;
    width: 100%;
  }
}
#top .catch .catch_image img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 991px) {
  #top .catch .catch_image img {
    aspect-ratio: 375/280;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 767px) {
  #top .catch .catch_image img {
    width: 90%;
    margin-left: auto;
    aspect-ratio: auto;
  }
}
#top .catch .catch_image-2 {
  position: absolute;
  left: 0;
  bottom: 0;
  transform: translate(-90%, 30%);
  width: 65%;
  z-index: -1;
}
@media screen and (max-width: 1350px) {
  #top .catch .catch_image-2 {
    transform: translate(-90%, 60%);
  }
}
@media screen and (max-width: 991px) {
  #top .catch .catch_image-2 {
    width: 90%;
    transform: translate(-90%, 70%);
  }
}
@media screen and (max-width: 767px) {
  #top .catch .catch_image-2 {
    transform: translate(0, 0);
    position: static;
    width: 65% !important;
    margin-left: 0 !important;
    margin-right: auto;
  }
}
#top .about_content {
  background: #008cb4;
  padding: 9% 11% 11%;
  border-radius: 3rem;
}
@media screen and (max-width: 1540px) {
  #top .about_content {
    padding: 7% 5% 9%;
  }
}
@media screen and (max-width: 767px) {
  #top .about_content {
    padding: 5rem 1.2rem 5.5rem;
  }
}
#top .about ul {
  display: flex;
  flex-wrap: wrap;
  gap: 5rem 6rem;
  margin-top: 13rem;
}
@media screen and (max-width: 1540px) {
  #top .about ul {
    gap: 3rem 4rem;
    margin-top: 10rem;
    justify-content: space-between;
  }
}
@media screen and (max-width: 1350px) {
  #top .about ul {
    gap: 3rem 2rem;
  }
}
@media screen and (max-width: 991px) {
  #top .about ul {
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  #top .about ul {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about ul {
    margin-top: 5rem;
  }
}
#top .about ul li {
  width: calc(33.333% - 4rem);
}
@media screen and (max-width: 1540px) {
  #top .about ul li {
    width: calc(33.333% - 3rem);
  }
}
@media screen and (max-width: 1350px) {
  #top .about ul li {
    width: calc(33.333% - 2rem);
  }
}
@media screen and (max-width: 991px) {
  #top .about ul li {
    width: calc(50% - 1rem);
  }
}
#top .about_item {
  background: url(../images/top/about_bg.png) no-repeat;
  background-size: contain;
  background-position: center;
  position: relative;
  z-index: 0;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: 0.5rem;
  aspect-ratio: 375/324;
}
#top .about_item .num {
  position: absolute;
  left: 0;
  top: -1rem;
  width: 12.5rem;
  height: 9.9rem;
  background: #000;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: bold;
  font-size: 3.6rem;
  letter-spacing: 0.1rem;
  padding-top: 0.5rem;
  clip-path: polygon(100% 0, 0 44%, 56% 100%);
}
@media screen and (max-width: 1540px) {
  #top .about_item .num {
    top: -2rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .about_item .num {
    width: 10rem;
    height: 7rem;
    font-size: 2.6rem;
    padding-top: 0;
    left: -1rem;
  }
}
@media screen and (max-width: 767px) {
  #top .about_item .num {
    width: 8rem;
    height: 6rem;
    font-size: 2.2rem;
    top: -0.5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item .num {
    font-size: 1.5rem;
    width: 5.35rem;
    height: 4.2rem;
  }
}
#top .about_item-image {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 1rem;
}
@media screen and (max-width: 574px) {
  #top .about_item-image {
    gap: 0.5rem;
  }
}
#top .about_item-image p {
  text-align: center;
  font-size: 2.3rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.6;
}
@media screen and (max-width: 1350px) {
  #top .about_item-image p {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item-image p {
    font-size: 1.1rem;
  }
}
#top .about_item-image p small {
  font-size: 1.6rem;
  display: block;
  line-height: 1.3;
  margin-bottom: -0.5rem;
}
@media screen and (max-width: 1350px) {
  #top .about_item-image p small {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item-image p small {
    font-size: 1rem;
    transform: scale(0.8);
    margin-bottom: -0.25rem;
  }
}
#top .about_item-image img {
  height: 8.8rem;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
@media screen and (max-width: 1350px) {
  #top .about_item-image img {
    height: 7rem;
  }
}
@media screen and (max-width: 767px) {
  #top .about_item-image img {
    width: 100%;
    height: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item-image img {
    height: 3.8rem;
  }
}
#top .about_item h3 {
  font-size: 2.8rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.6;
  text-align: center;
  color: #008cb4;
}
@media screen and (max-width: 1350px) {
  #top .about_item h3 {
    font-size: 2rem;
    letter-spacing: 0.05rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item h3 {
    font-size: 1.3rem;
  }
}
#top .about_item h3 .en {
  font-size: 3.2rem;
}
@media screen and (max-width: 1350px) {
  #top .about_item h3 .en {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item h3 .en {
    font-size: 1.4rem;
  }
}
#top .about_item h3 .count {
  font-size: 7rem;
  line-height: 1;
}
@media screen and (max-width: 1350px) {
  #top .about_item h3 .count {
    font-size: 5rem;
  }
}
@media screen and (max-width: 767px) {
  #top .about_item h3 .count {
    font-size: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item h3 .count {
    font-size: 3.05rem;
    margin-top: -0.5rem;
    display: inline-block;
  }
}
#top .about_item h3 .count sup {
  font-size: 4rem;
}
@media screen and (max-width: 1350px) {
  #top .about_item h3 .count sup {
    font-size: 3rem;
    margin-right: -0.5rem;
  }
}
@media screen and (max-width: 767px) {
  #top .about_item h3 .count sup {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item h3 .count sup {
    font-size: 1.75rem;
  }
}
#top .about_item h3 small {
  font-weight: bold;
  font-size: 2.6rem;
}
@media screen and (max-width: 1350px) {
  #top .about_item h3 small {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item h3 small {
    font-size: 1.1rem;
  }
}
#top .about_item h3 .cap {
  display: inline-block;
  font-weight: bold;
  font-size: 1.8rem;
  color: #000;
  line-height: 1.1;
}
@media screen and (max-width: 1350px) {
  #top .about_item h3 .cap {
    font-size: 1.5rem;
    margin-right: -0.25rem;
  }
}
@media screen and (max-width: 574px) {
  #top .about_item h3 .cap {
    font-size: 1rem;
    transform: scale(0.8);
  }
}
#top .initiative {
  padding: 16rem 0 17.5rem;
  background: #74cfe3;
  position: relative;
  z-index: 0;
  margin-top: 17rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative {
    padding: 12rem 0 14rem;
    margin-top: 12rem;
  }
}
@media screen and (max-width: 767px) {
  #top .initiative {
    padding: 5rem 0 7rem;
    margin-top: 5rem;
  }
}
#top .initiative_bg {
  position: absolute;
  top: 0;
  right: 0;
  width: 55%;
  z-index: -1;
}
@media screen and (max-width: 1350px) {
  #top .initiative_bg {
    right: -5%;
    top: 8rem;
  }
}
@media screen and (max-width: 991px) {
  #top .initiative_bg {
    top: 25rem;
  }
}
@media screen and (max-width: 767px) {
  #top .initiative_bg {
    width: 95%;
    top: 42rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_bg {
    top: 26rem;
  }
}
#top .initiative h2 {
  font-weight: bold;
  font-size: 5rem;
  line-height: 1.5;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative h2 {
    font-size: 2rem;
    line-height: 0;
  }
}
#top .initiative h2 strong {
  font-size: 8rem;
  line-height: 1;
  letter-spacing: 0.1rem;
  font-weight: 900;
  margin: 0 0.25rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative h2 strong {
    font-size: 6rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative h2 strong {
    font-size: 4rem;
  }
}
#top .initiative_text {
  font-size: 2rem;
  line-height: 2;
  letter-spacing: -0.05rem;
  margin-top: 5.5rem;
  font-weight: 500;
  flex: 1;
}
@media screen and (max-width: 1350px) {
  #top .initiative_text {
    font-size: 1.8rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_text {
    margin-top: 3.4rem;
    font-size: 1.3rem;
    letter-spacing: 0.1rem;
  }
}
#top .initiative .if {
  font-size: 4rem;
  line-height: 1.8;
  letter-spacing: 0.1rem;
  margin-top: 5.5rem;
  font-weight: bold;
  background: #f9cc50;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 2rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative .if {
    font-size: 3.2rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative .if {
    margin-top: 3rem;
    font-size: 2rem;
  }
}
#top .initiative ul {
  display: flex;
  flex-wrap: wrap;
  gap: 1.7rem;
  margin-top: 12rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative ul {
    margin-top: 6rem;
  }
}
@media screen and (max-width: 767px) {
  #top .initiative ul {
    margin-top: 30rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative ul {
    margin-top: 19rem;
    gap: 0.55rem 0.75rem;
  }
}
#top .initiative_item {
  flex: 1;
  background: #fff;
  border-radius: 80rem;
  padding: 7rem 0 10.7rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative_item {
    padding: 5rem 0 7rem;
  }
}
@media screen and (max-width: 991px) {
  #top .initiative_item {
    flex: none;
    width: calc(50% - 1rem);
  }
}
@media screen and (max-width: 767px) {
  #top .initiative_item {
    padding: 4rem 0;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_item {
    padding: 3.4rem 0 3.9rem;
    width: calc(50% - 0.4rem);
  }
}
#top .initiative_item-image {
  height: 13.2rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative_item-image {
    height: 10rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_item-image {
    height: 6rem;
  }
}
#top .initiative_item-image img {
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  display: block;
}
#top .initiative_item p {
  font-size: 2.4rem;
  line-height: 1.8;
  letter-spacing: 0.1rem;
  font-weight: 500;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 2rem;
}
@media screen and (max-width: 1540px) {
  #top .initiative_item p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .initiative_item p {
    font-size: 1.6rem;
    letter-spacing: 0;
    margin-top: 1rem;
  }
}
@media screen and (max-width: 991px) {
  #top .initiative_item p {
    font-size: 2.2rem;
    margin-top: 3rem;
  }
}
@media screen and (max-width: 767px) {
  #top .initiative_item p {
    font-size: 1.8rem;
    align-items: flex-start;
    margin-top: 2.4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_item p {
    margin-top: 2rem;
    font-size: 1.1rem;
  }
}
#top .initiative_link {
  margin-top: 10rem;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3.2rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative_link {
    margin-top: 7rem;
    gap: 2.5rem;
  }
}
@media screen and (max-width: 991px) {
  #top .initiative_link {
    flex-direction: column;
    gap: 1.6rem;
  }
}
#top .initiative_link-btn {
  background: #fff;
  width: 62rem;
  height: 14.5rem;
  border-radius: 15rem;
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  padding: 0.8rem;
}
@media screen and (max-width: 1350px) {
  #top .initiative_link-btn {
    width: 48rem;
    height: 11rem;
  }
}
@media (min-width: 992px) {
  #top .initiative_link-btn:hover .initiative_link-btn-text {
    border-color: #f9cc50;
  }
  #top .initiative_link-btn:hover .initiative_link-btn-icon {
    background: #f9cc50;
    color: #000;
  }
  #top .initiative_link-btn:hover .initiative_link-btn-icon .arrow {
    background: #000;
  }
  #top .initiative_link-btn:hover .initiative_link-btn-icon svg path {
    fill: #fff;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_link-btn {
    width: 34rem;
    height: 8rem;
  }
}
#top .initiative_link-btn-text {
  font-size: 2.6rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  flex: 1;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  border: 3px solid #008cb4;
  border-radius: 15rem 0 0 15rem;
  transition: 0.3s;
}
@media screen and (max-width: 1350px) {
  #top .initiative_link-btn-text {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_link-btn-text {
    font-size: 1.5rem;
  }
}
#top .initiative_link-btn-icon {
  width: 20rem;
  height: 100%;
  background: #008cb4;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 2.2rem;
  gap: 1rem;
  border-radius: 0 15rem 15rem 0;
  transition: 0.3s;
}
@media screen and (max-width: 1350px) {
  #top .initiative_link-btn-icon {
    width: 16rem;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .initiative_link-btn-icon {
    width: 10.7rem;
    font-size: 1.2rem;
    gap: 0.5rem;
  }
}
#top .initiative_link-btn-icon .arrow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 3.1rem;
  height: 3.1rem;
  background: #fff;
  border-radius: 50%;
  transition: 0.3s;
}
@media screen and (max-width: 574px) {
  #top .initiative_link-btn-icon .arrow {
    transform: scale(0.6);
  }
}
#top .initiative_link-btn-icon svg {
  width: 1.8rem;
  display: block;
  transition: 0.3s;
}
#top .initiative_link-btn-icon svg path {
  transition: 0.3s;
}
#top .interview {
  background: #f5f5f5;
  padding: 17.2rem 0;
}
@media screen and (max-width: 1350px) {
  #top .interview {
    padding: 12rem 0;
  }
}
@media screen and (max-width: 767px) {
  #top .interview {
    padding: 5rem 0;
  }
}
#top .interview_question {
  font-size: 4rem;
  line-height: 1.8;
  letter-spacing: 0.1rem;
  font-weight: bold;
  background: #008cb4;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8.5rem auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  padding: 4rem 7rem 4rem 4.5rem;
  gap: 1.6rem;
  border-radius: 3rem;
  position: relative;
}
@media screen and (max-width: 1350px) {
  #top .interview_question {
    font-size: 3.2rem;
    margin-top: 6rem;
    padding: 3rem 5rem 3rem 3.5rem;
    gap: 1.2rem;
    border-radius: 2rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview_question {
    font-size: 2.4rem;
    padding: 2rem 3rem 2rem 2.5rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview_question {
    font-size: 1.8rem;
    padding: 1.8rem 2rem 2rem 2rem;
  }
}
#top .interview_question::before {
  content: "";
  width: 2.4rem;
  height: 2.8rem;
  background: #008cb4;
  position: absolute;
  bottom: 0;
  left: 45%;
  transform: translateY(99%);
  clip-path: polygon(100% 0, 0 0, 5% 100%);
}
@media screen and (max-width: 767px) {
  #top .interview_question::before {
    height: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview_question::before {
    width: 1.7rem;
    height: 1.5rem;
  }
}
#top .interview_question span {
  font-size: 8.4rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  padding-bottom: 1rem;
  display: block;
}
@media screen and (max-width: 1350px) {
  #top .interview_question span {
    font-size: 6.5rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview_question span {
    font-size: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview_question span {
    font-size: 3.8rem;
    padding-bottom: 0.5rem;
  }
}
#top .interview_question span small {
  font-weight: bold;
  font-size: 7rem;
  margin-left: 0.5rem;
}
@media screen and (max-width: 1350px) {
  #top .interview_question span small {
    font-size: 5.5rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview_question span small {
    font-size: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview_question span small {
    font-size: 3.2rem;
  }
}
#top .interview .answer_list {
  display: flex;
  justify-content: center;
  gap: 10rem 5%;
  flex-wrap: wrap;
  margin-top: 12rem;
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_list {
    gap: 6rem 5%;
    margin-top: 8rem;
  }
}
#top .interview .answer_item {
  width: 30%;
  position: relative;
  display: block;
}
@media (min-width: 992px) {
  #top .interview .answer_item:hover .answer_inner img {
    transform: scale(1.1);
  }
  #top .interview .answer_item:hover .name {
    background: #f9cc50;
    color: #000;
  }
  #top .interview .answer_item:hover .name .arrow {
    background: #000;
  }
  #top .interview .answer_item:hover .name .arrow svg path {
    fill: #fff;
  }
}
@media screen and (max-width: 991px) {
  #top .interview .answer_item {
    width: 47.5%;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item {
    width: 100%;
    margin: 0 1rem;
  }
}
#top .interview .answer_item .job {
  padding: 2rem 1.7rem 2rem 2rem;
  background: #008cb4;
  color: #fff;
  font-weight: 500;
  font-size: 3rem;
  letter-spacing: 0.1rem;
  position: absolute;
  left: -1.5rem;
  bottom: 8rem;
  transform: translateY(-50%);
  border-right: 1px solid #008cb4;
  z-index: 2;
}
@media screen and (max-width: 1540px) {
  #top .interview .answer_item .job {
    font-size: 2.2rem;
    bottom: 6rem;
    padding: 1.5rem 1.4rem 1.5rem 1.6rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_item .job {
    font-size: 1.6rem;
    bottom: 4rem;
    padding: 1rem 1.2rem 1rem 1.4rem;
  }
}
@media screen and (max-width: 991px) {
  #top .interview .answer_item .job {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .job {
    font-size: 1.6rem;
    padding-right: 0rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .job {
    font-size: 1.5rem;
    bottom: 2rem;
  }
}
#top .interview .answer_item .job::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background: #007293;
  position: absolute;
  left: 0;
  bottom: -1.5rem;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
}
#top .interview .answer_item .job::after {
  content: "";
  width: 2rem;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(100%);
  background: #008cb4;
  clip-path: polygon(0 0, 100% 0, 4% 100%, 0% 100%);
  display: block;
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .job::after {
    width: 1.5rem;
  }
}
#top .interview .answer_item .answer_inner {
  border-radius: 0 0 4rem 4rem;
  overflow: hidden;
  z-index: 0;
  box-shadow: 0px 10px 40px 0px rgba(201, 200, 200, 0.5);
}
#top .interview .answer_item .answer_inner img {
  transition: 0.5s;
  position: relative;
  z-index: 0;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.01);
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer_inner img {
    height: 25rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top center;
       object-position: top center;
  }
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer_inner img.pc {
    display: none;
  }
}
#top .interview .answer_item .answer_inner img.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer_inner img.sp {
    display: block;
  }
}
#top .interview .answer_item .answer {
  writing-mode: vertical-rl;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  position: absolute;
  top: -1.5rem;
  left: -2.4rem;
  gap: 1rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer {
    gap: 0.5rem;
    left: -1.2rem;
  }
}
#top .interview .answer_item .answer span {
  background: #fff;
}
#top .interview .answer_item .answer span.single {
  font-size: 12.6rem;
  font-weight: bold;
  padding: 1rem 0;
  line-height: 1.3;
}
@media screen and (max-width: 1540px) {
  #top .interview .answer_item .answer span.single {
    font-size: 9rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_item .answer span.single {
    font-size: 8rem;
  }
}
@media screen and (max-width: 991px) {
  #top .interview .answer_item .answer span.single {
    font-size: 10rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer span.single {
    font-size: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .answer span.single {
    font-size: 6.5rem;
  }
}
#top .interview .answer_item .answer span.double {
  font-size: 6.8rem;
  font-weight: 800;
  padding: 1rem 0;
  line-height: 1.3;
}
@media screen and (max-width: 1540px) {
  #top .interview .answer_item .answer span.double {
    font-size: 5.2rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_item .answer span.double {
    font-size: 4rem;
  }
}
@media screen and (max-width: 991px) {
  #top .interview .answer_item .answer span.double {
    font-size: 6rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer span.double {
    font-size: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .answer span.double {
    font-size: 4.4rem;
  }
}
#top .interview .answer_item .answer span.triple {
  font-size: 6rem;
  font-weight: 800;
  padding: 1rem 0;
  line-height: 1.2;
}
@media screen and (max-width: 1540px) {
  #top .interview .answer_item .answer span.triple {
    font-size: 4.5rem;
  }
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_item .answer span.triple {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 991px) {
  #top .interview .answer_item .answer span.triple {
    font-size: 4.5rem;
  }
}
@media screen and (max-width: 767px) {
  #top .interview .answer_item .answer span.triple {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .answer span.triple {
    font-size: 3.1rem;
  }
}
#top .interview .answer_item .name {
  position: relative;
  width: 100%;
  height: 10.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #000;
  transition: 0.5s;
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_item .name {
    height: 8.5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .name {
    height: 5.04rem;
  }
}
#top .interview .answer_item .name p {
  text-align: center;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #top .interview .answer_item .name p {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .name p {
    font-size: 1.3rem;
  }
}
#top .interview .answer_item .name .arrow {
  position: absolute;
  top: 50%;
  right: 2.4rem;
  transform: translateY(-50%);
  width: 3.1rem;
  height: 3.1rem;
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  transition: 0.5s;
  align-items: center;
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .name .arrow {
    width: 1.9rem;
    height: 1.9rem;
  }
}
#top .interview .answer_item .name .arrow svg {
  transition: 0.5s;
}
@media screen and (max-width: 574px) {
  #top .interview .answer_item .name .arrow svg {
    transform: scale(0.6);
  }
}
#top .interview .answer_item .name .arrow svg path {
  transition: 0.5s;
}
#top .instagram {
  background: #008cb4;
  padding: 14.3rem 0 17rem;
}
@media screen and (max-width: 1350px) {
  #top .instagram {
    padding: 10rem 0 12rem;
  }
}
@media screen and (max-width: 574px) {
  #top .instagram {
    padding: 5.7rem 0 7.3rem;
  }
}
#top .instagram_feed {
  max-width: 1280px;
  margin: 10rem auto 6rem;
}
@media screen and (max-width: 767px) {
  #top .instagram_feed {
    margin: 3.8rem auto 1.8rem;
  }
}
#top .instagram_feed #sbi_mod_link, #top .instagram_feed #sbi_mod_error {
  float: none;
}
#top .instagram_feed #sb_instagram.sbi_mob_col_2 #sbi_images {
  gap: 3.2rem !important;
}
@media screen and (max-width: 574px) {
  #top .instagram_feed #sb_instagram.sbi_mob_col_2 #sbi_images {
    justify-content: center;
    display: flex;
    flex-wrap: wrap;
    gap: 2.4rem 2rem !important;
  }
}
@media screen and (max-width: 574px) {
  #top .instagram_feed #sb_instagram #sbi_images .sbi_item {
    width: calc(50% - 1rem);
  }
}
#top .instagram_link {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 2px solid #fff;
  background: linear-gradient(90deg, rgb(234, 67, 90) 0%, rgb(234, 51, 133) 32%, rgb(234, 52, 174) 56%, rgb(233, 51, 98) 100%);
  box-shadow: 0 8px 0 0 #016480;
  border-radius: 15rem;
  width: 33.2rem;
  height: 7.6rem;
  margin: 0 auto;
  position: relative;
  top: 0;
  left: 0;
  transition: 0.4s;
}
@media screen and (max-width: 574px) {
  #top .instagram_link {
    width: 19rem;
    height: 5rem;
  }
}
#top .instagram_link img {
  display: block;
  width: 24.6rem;
}
@media screen and (max-width: 574px) {
  #top .instagram_link img {
    width: 15rem;
  }
}
@media screen and (max-width: 574px) {
  #top .instagram_link img.pc {
    display: none;
  }
}
#top .instagram_link img.sp {
  display: none;
}
@media screen and (max-width: 574px) {
  #top .instagram_link img.sp {
    display: block;
  }
}
@media (min-width: 992px) {
  #top .instagram_link:hover {
    top: 8px;
    box-shadow: 0 0 0 0 #016480;
  }
}
#top .guide {
  margin-top: 16.7rem;
}
@media screen and (max-width: 1350px) {
  #top .guide {
    margin-top: 12rem;
  }
}
#top .guide h2 {
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-weight: bold;
  font-size: 5rem;
  letter-spacing: 0.1rem;
  border-bottom: 2px solid #000;
  padding-bottom: 2rem;
  line-height: 1;
}
@media screen and (max-width: 1350px) {
  #top .guide h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .guide h2 {
    font-size: 2.1rem;
    padding-bottom: 1.5rem;
  }
}
#top .guide_inner {
  display: flex;
  flex-wrap: wrap;
  max-width: 1280px;
  margin: 10rem auto 0;
}
@media screen and (max-width: 1350px) {
  #top .guide_inner {
    margin-top: 7rem;
  }
}
@media screen and (max-width: 991px) {
  #top .guide_inner {
    gap: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #top .guide_inner {
    flex-direction: column;
    gap: 4.8rem;
    margin-top: 4rem;
    align-items: center;
  }
}
#top .guide_item {
  width: 50%;
  padding: 0 5rem;
}
@media screen and (max-width: 1350px) {
  #top .guide_item {
    padding: 0 3rem;
  }
}
@media screen and (max-width: 991px) {
  #top .guide_item {
    padding: 0;
    flex: 1;
  }
}
@media screen and (max-width: 574px) {
  #top .guide_item {
    width: 24rem;
  }
}
#top .guide_item h3 {
  text-align: center;
  font-weight: bold;
  font-size: 3rem;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #top .guide_item h3 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .guide_item h3 {
    font-size: 1.5rem;
  }
}
#top .guide_item-link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 3.2rem;
  background: #008cb4;
  color: #fff;
  font-weight: bold;
  border-radius: 2rem;
  height: 12.7rem;
  padding: 0 2.7rem 0 4rem;
  transition: 0.3s;
}
@media screen and (max-width: 1350px) {
  #top .guide_item-link {
    height: 10rem;
    gap: 2rem;
    padding: 0 2rem 0 3rem;
  }
}
@media (min-width: 992px) {
  #top .guide_item-link:hover {
    background: #f9cc50;
    color: #000;
  }
  #top .guide_item-link:hover .guide_item-link-icon {
    background: #000;
  }
  #top .guide_item-link:hover .guide_item-link-icon svg path {
    fill: #fff;
  }
}
@media screen and (max-width: 574px) {
  #top .guide_item-link {
    height: 6.5rem;
    border-radius: 1rem;
  }
}
#top .guide_item-link-text {
  font-size: 2rem;
  font-weight: 500;
  letter-spacing: 0.1rem;
  flex: 1;
}
@media screen and (max-width: 1350px) {
  #top .guide_item-link-text {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 574px) {
  #top .guide_item-link-text {
    font-size: 1.3rem;
  }
}
#top .guide_item-link-icon {
  width: 3.1rem;
  height: 3.1rem;
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  align-items: center;
  transition: 0.3s;
}
@media screen and (max-width: 574px) {
  #top .guide_item-link-icon {
    transform: scale(0.6);
  }
}
#top .guide_item-link-icon svg {
  width: 1.8rem;
  display: block;
}
#top .guide_item-link-icon svg path {
  transition: 0.3s;
}
#top .guide_item-empty {
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.1rem;
}
#top .guide ul {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  margin-top: 5.6rem;
}
@media screen and (max-width: 1350px) {
  #top .guide ul {
    gap: 2rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #top .guide ul {
    margin-top: 2.7rem;
  }
}
#top .entry {
  margin-top: 18rem;
  margin-bottom: 15rem;
}
@media screen and (max-width: 1350px) {
  #top .entry {
    margin-top: 12rem;
    margin-bottom: 10rem;
  }
}
@media screen and (max-width: 574px) {
  #top .entry {
    margin: 9rem 0 6.5rem;
  }
}
@media screen and (max-width: 574px) {
  #top .entry .container {
    padding: 0;
  }
}
#top .entry h2 {
  text-align: center;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  font-weight: bold;
  font-size: 4rem;
  letter-spacing: 0.1rem;
  border-bottom: 2px solid #000;
  padding-bottom: 2rem;
  line-height: 1;
}
@media screen and (max-width: 1350px) {
  #top .entry h2 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  #top .entry h2 {
    font-size: 2.1rem;
    padding-bottom: 1.5rem;
  }
}
#top .entry_form {
  max-width: 795px;
  margin: 10rem auto 0;
}
@media screen and (max-width: 1350px) {
  #top .entry_form {
    margin-top: 7rem;
  }
}
@media screen and (max-width: 767px) {
  #top .entry_form {
    margin-top: 3rem;
  }
}
#top .entry_form .entry_table {
  width: 100%;
  border-collapse: collapse;
}
#top .entry_form .entry_table .entry_row.bg td, #top .entry_form .entry_table .entry_row.bg th {
  background: #e5f3f7;
}
#top .entry_form .entry_table th {
  white-space: nowrap;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.4;
  text-align: left;
  padding: 2rem 2.5rem;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_table th {
    font-size: 1.3rem;
    padding: 1.9rem 4.1rem 0 4.1rem;
  }
}
#top .entry_form .entry_table th em {
  color: #ca0404;
}
#top .entry_form .entry_table td {
  padding: 2rem;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_table td {
    padding: 1rem 4.1rem 1.9rem 4.1rem;
  }
}
#top .entry_form .entry_table td .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 2rem;
}
#top .entry_form .entry_table td .wpcf7-radio span {
  margin: 0;
}
#top .entry_form .entry_table td .entry_input {
  width: 100%;
  max-width: 36rem;
  height: 5.2rem;
  padding: 1rem;
  background: #f8f8f8;
  border: 1px solid #adadad;
  border-radius: 1rem;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_table td .entry_input {
    height: 3.5rem;
    border-radius: 0.5rem;
  }
}
#top .entry_form .entry_table td .entry_input--full {
  max-width: 100%;
}
#top .entry_form .entry_table td .entry_input--middle {
  max-width: 44rem;
}
#top .entry_form .entry_table td .entry_input--short {
  max-width: 29rem;
}
#top .entry_form .entry_table td .entry_textarea {
  width: 100%;
  max-width: 100%;
  height: 18rem;
  background: #f8f8f8;
  border: 1px solid #adadad;
  border-radius: 1rem;
  padding: 1rem;
}
#top .entry_form .entry_table td .entry_radio_group {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 1rem 2rem;
}
#top .entry_form .entry_table td .entry_radio_group .entry_radio {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
#top .entry_form .entry_table td .entry_radio_group input {
  width: 2rem;
  height: 2rem;
  accent-color: #000;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_table td .entry_radio_group input {
    width: 1.25rem;
    height: 1.25rem;
  }
}
#top .entry_form .entry_table td .entry_radio_group span {
  font-size: 1.9rem;
  line-height: 1;
  letter-spacing: -0.05rem;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_table td .entry_radio_group span {
    font-size: 1.3rem;
  }
}
#top .entry_form .entry_table td .entry_note {
  font-size: 1.5rem;
  color: #555555;
  margin-top: 1rem;
}
#top .entry_form .entry_table .entry_row--grouped td, #top .entry_form .entry_table .entry_row--grouped th {
  padding-top: 0;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_table th, #top .entry_form .entry_table td {
    display: block;
    width: 100%;
  }
}
#top .entry_form .privacy {
  padding: 2rem 2.5rem;
}
#top .entry_form .privacy h3 {
  white-space: nowrap;
  font-weight: bold;
  font-size: 2rem;
  line-height: 1.4;
  text-align: left;
}
@media screen and (max-width: 574px) {
  #top .entry_form .privacy h3 {
    font-size: 1.3rem;
  }
}
#top .entry_form .privacy h3 em {
  color: #ca0404;
}
#top .entry_form .privacy_text {
  overflow-y: auto;
  height: 20rem;
  padding: 2rem 1.6rem 0.5rem 1.6rem;
  padding-right: 2.5rem;
  background: #fff;
  border: 1px solid #adadad;
  margin-top: 2rem;
}
#top .entry_form .privacy_text p {
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2;
  margin: 0 0 1em;
}
@media screen and (max-width: 574px) {
  #top .entry_form .privacy_text p {
    font-size: 1.2rem;
  }
}
#top .entry_form .privacy_text::-webkit-scrollbar {
  width: 10px;
}
#top .entry_form .privacy_text::-webkit-scrollbar-track {
  background-color: #eee;
}
#top .entry_form .privacy_text::-webkit-scrollbar-thumb {
  background-color: rgba(0, 0, 0, 0.6);
}
#top .entry_form .entry_agree {
  margin-top: 3.5rem;
  text-align: center;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_agree {
    margin-top: 2.7rem;
  }
}
#top .entry_form .entry_agree p {
  margin: 0;
  text-align: center;
}
#top .entry_form .entry_agree .wpcf7-list-item {
  margin: 0 auto;
}
#top .entry_form .entry_agree .wpcf7-list-item label {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1rem;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
#top .entry_form .entry_agree .wpcf7-list-item label input {
  width: 2rem;
  height: 2rem;
  accent-color: #000;
  border-radius: 0;
  outline: none;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_agree .wpcf7-list-item label input {
    width: 1.5rem;
    height: 1.5rem;
  }
}
#top .entry_form .entry_agree .wpcf7-list-item label .wpcf7-list-item-label {
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: -0.05rem;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_agree .wpcf7-list-item label .wpcf7-list-item-label {
    font-size: 1.25rem;
  }
}
#top .entry_form .entry_submit p {
  margin: 0;
}
#top .entry_form .entry_submit {
  margin-top: 7rem;
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_submit {
    margin-top: 3.6rem;
  }
}
#top .entry_form .entry_submit .entry_btn {
  width: 100%;
  max-width: 24.2rem;
  height: 6.3rem;
  background: #008cb4;
  border: none;
  border-radius: 1rem;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  margin: 0 auto;
  transition: 0.3s;
}
@media (min-width: 992px) {
  #top .entry_form .entry_submit .entry_btn:hover {
    background: #f9cc50;
    color: #000;
  }
}
@media screen and (max-width: 574px) {
  #top .entry_form .entry_submit .entry_btn {
    width: 16rem;
    height: 4.2rem;
    border-radius: 0.5rem;
    font-size: 1.3rem;
  }
}

.subhead {
  height: 50vh;
  max-height: 55rem;
  margin-top: 9.5rem;
  background-color: #008cb4;
  position: relative;
}
.subhead::before {
  content: "";
  background: url(../images/common/subhead_bg.jpg) no-repeat;
  background-size: cover;
  background-position: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 574px) {
  .subhead::before {
    background: url(../images/common/subhead_bg_sp.jpg) no-repeat;
    background-size: cover;
    background-position: center;
  }
}
@media screen and (max-width: 1350px) {
  .subhead {
    margin-top: 8rem;
    height: 45vh;
    max-height: 30rem;
  }
}
@media screen and (max-width: 767px) {
  .subhead {
    height: 35vh;
    max-height: 25rem;
    margin-top: 0;
  }
}
@media screen and (max-width: 574px) {
  .subhead {
    max-height: 28rem;
  }
}
.subhead .subhead_text {
  position: relative;
  z-index: 1;
  text-align: center;
  color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  width: 100%;
}
.subhead .subhead_text h1 {
  font-size: 4.8rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 3rem;
}
@media screen and (max-width: 767px) {
  .subhead .subhead_text h1 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  .subhead .subhead_text h1 {
    font-size: 2.1rem;
    gap: 1.5rem;
  }
}
.subhead .subhead_text h1::before, .subhead .subhead_text h1::after {
  content: "";
  width: 6rem;
  height: 3px;
  background: #fff;
  display: block;
}
@media screen and (max-width: 767px) {
  .subhead .subhead_text h1::before, .subhead .subhead_text h1::after {
    width: 4rem;
    height: 2px;
  }
}
@media screen and (max-width: 574px) {
  .subhead .subhead_text h1::before, .subhead .subhead_text h1::after {
    width: 2.4rem;
  }
}

.flow_slider {
  margin-top: -6rem;
  width: 100%;
  overflow: hidden;
  position: relative;
  z-index: 2;
}
.flow_slider .flow_slider_swiper {
  width: 100%;
}
.flow_slider .flow_slider_swiper .swiper-wrapper {
  transition-timing-function: linear;
}
.flow_slider .flow_slider_item {
  width: 100%;
  aspect-ratio: 455/257;
  overflow: hidden;
  border-radius: 1.5rem;
}
@media screen and (max-width: 574px) {
  .flow_slider .flow_slider_item {
    border-radius: 0.75rem;
  }
}
.flow_slider .flow_slider_item img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
}

#company .philosophy {
  padding: 15rem 0 19rem;
}
@media screen and (max-width: 1350px) {
  #company .philosophy {
    padding: 10rem 0 10rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy {
    padding: 7rem 0;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy {
    padding: 4rem 0;
  }
}
#company .philosophy_image {
  max-width: 97.5rem;
  margin: 12.5rem auto 0;
}
@media screen and (max-width: 1540px) {
  #company .philosophy_image {
    width: 90%;
  }
}
@media screen and (max-width: 1350px) {
  #company .philosophy_image {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy_image {
    margin-top: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy_image {
    margin-top: 3.5rem;
    width: 98%;
  }
}
#company .philosophy_image .pc {
  display: block;
}
@media screen and (max-width: 574px) {
  #company .philosophy_image .pc {
    display: none;
  }
}
#company .philosophy_image .sp {
  display: none;
}
@media screen and (max-width: 574px) {
  #company .philosophy_image .sp {
    display: block;
  }
}
#company .philosophy_content {
  max-width: 128rem;
  margin: 12rem auto 0;
}
@media screen and (max-width: 1350px) {
  #company .philosophy_content {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy_content {
    margin-top: 5rem;
  }
}
#company .philosophy_content h3 {
  font-size: 5rem;
  font-weight: 900;
  letter-spacing: 0.1rem;
  text-align: center;
  line-height: 1.72;
}
@media screen and (max-width: 1540px) {
  #company .philosophy_content h3 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 1350px) {
  #company .philosophy_content h3 {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy_content h3 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy_content h3 {
    font-size: 2rem;
  }
}
#company .philosophy_content-text {
  margin-top: 5.6rem;
  font-size: 2rem;
  line-height: 2;
  letter-spacing: 0.1rem;
  text-align: center;
}
@media screen and (max-width: 1540px) {
  #company .philosophy_content-text {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy_content-text {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy_content-text {
    font-size: 1.3rem;
    margin-top: 2.4rem;
  }
}
#company .philosophy_content-list {
  margin-top: 8rem;
  display: flex;
  gap: 5.6rem;
}
@media screen and (max-width: 1540px) {
  #company .philosophy_content-list {
    gap: 3rem;
  }
}
@media screen and (max-width: 1350px) {
  #company .philosophy_content-list {
    gap: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy_content-list {
    gap: 2rem;
    margin-top: 5rem;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy_content-list {
    margin-top: 4.4rem;
    gap: 1.5rem;
  }
}
#company .philosophy_content-list li {
  flex: 1;
  background: #008cb4;
  color: #fff;
  height: 40rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 4rem;
  border-radius: 0 4rem 0 4rem;
  box-shadow: 0px 10px 40px 0px rgba(201, 200, 200, 0.5);
}
@media screen and (max-width: 1350px) {
  #company .philosophy_content-list li {
    height: 30rem;
    gap: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  #company .philosophy_content-list li {
    flex: none;
    width: calc(50% - 1rem);
    gap: 2rem;
    height: 200px;
    border-radius: 0 2rem 0 2rem;
  }
}
#company .philosophy_content-list li .num {
  font-weight: 900;
  font-size: 6rem;
  letter-spacing: 0.1rem;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1;
  padding-bottom: 1rem;
  border-bottom: 2px solid #fff;
}
@media screen and (max-width: 574px) {
  #company .philosophy_content-list li .num {
    font-size: 3rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid #fff;
  }
}
#company .philosophy_content-list li h4 {
  font-weight: 500;
  font-size: 2.6rem;
  letter-spacing: 0.1rem;
  line-height: 1.8;
  text-align: center;
}
@media screen and (max-width: 1540px) {
  #company .philosophy_content-list li h4 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 1350px) {
  #company .philosophy_content-list li h4 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy_content-list li h4 {
    font-size: 1.2rem;
    letter-spacing: 0;
  }
}
#company .philosophy_content-list li .text {
  width: 30.6rem;
  max-width: 90%;
  background: #fff;
  color: #000;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 7.2rem;
  font-weight: bold;
  font-size: 2.6rem;
  letter-spacing: 0.1rem;
  border-radius: 5px;
}
@media screen and (max-width: 1540px) {
  #company .philosophy_content-list li .text {
    width: 20rem;
  }
}
@media screen and (max-width: 1350px) {
  #company .philosophy_content-list li .text {
    height: 5.5rem;
    width: 18rem;
  }
}
@media screen and (max-width: 574px) {
  #company .philosophy_content-list li .text {
    width: 12.25rem;
    height: 3.6rem;
    border-radius: 2.5px;
    font-size: 1.3rem;
  }
}
#company .company {
  padding: 16rem 0;
  background: #f5f5f5;
}
@media screen and (max-width: 767px) {
  #company .company {
    padding: 7rem 0;
  }
}
@media screen and (max-width: 574px) {
  #company .company {
    padding: 6rem 0;
  }
}
#company .company table {
  width: 84.2rem;
  max-width: 100%;
  margin: 13rem auto 0;
  border-collapse: separate;
  border-spacing: 8.5rem 0;
}
@media screen and (max-width: 767px) {
  #company .company table {
    margin-top: 5rem;
    border-spacing: 2rem 0;
    width: 100%;
  }
}
#company .company table tbody {
  width: 100%;
}
#company .company table th, #company .company table td {
  padding: 3.2rem 0 2.8rem;
  border-bottom: 1px solid #939393;
}
@media screen and (max-width: 574px) {
  #company .company table th, #company .company table td {
    display: block;
    font-size: 1.3rem;
  }
}
#company .company table th {
  width: 16.5rem;
  text-align: center;
  white-space: nowrap;
  width: 24.5%;
}
@media screen and (max-width: 574px) {
  #company .company table th {
    border-bottom: none;
    padding: 2.5rem 1.6rem 0;
    width: 100%;
    text-align: left;
  }
}
#company .company table td {
  max-width: 42.5rem;
  width: 63%;
  padding-left: 2.4rem;
}
@media screen and (max-width: 574px) {
  #company .company table td {
    padding: 1.6rem 1.6rem 2.5rem;
    width: 100%;
  }
}
@media screen and (max-width: 574px) {
  #company .company table td ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0.8rem;
  }
}
#company .company table td span {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #008cb4;
  margin-right: 0.8rem;
  vertical-align: middle;
}
@media screen and (max-width: 574px) {
  #company .company table td span {
    margin-right: 0.4rem;
  }
}
#company .history {
  padding: 16rem 0 22rem;
}
@media screen and (max-width: 767px) {
  #company .history {
    padding: 7rem 0;
  }
}
@media screen and (max-width: 574px) {
  #company .history {
    padding: 6rem 0;
  }
}
#company .history_inner {
  padding-top: 6rem;
  padding-bottom: 2rem;
  max-width: 128rem;
  margin: 0 auto;
}
#company .history_since {
  margin-bottom: 1.6rem;
  color: #ace2ee;
  line-height: 1;
}
#company .history_since .since_label {
  display: block;
  font-size: 3.7rem;
  font-weight: 900;
}
@media screen and (max-width: 991px) {
  #company .history_since .since_label {
    font-size: 3rem;
  }
}
@media screen and (max-width: 574px) {
  #company .history_since .since_label {
    font-size: 1.9rem;
  }
}
#company .history_since .since_year {
  display: block;
  font-size: 12rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 991px) {
  #company .history_since .since_year {
    font-size: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #company .history_since .since_year {
    font-size: 6rem;
    margin-top: -0.5rem;
  }
}
#company .history_list {
  list-style: none;
  padding: 0;
  position: relative;
  margin-top: 1.2rem;
}
@media screen and (max-width: 767px) {
  #company .history_list {
    padding-left: 2rem;
    margin-top: 2rem;
  }
}
#company .history_list::before {
  content: "";
  position: absolute;
  left: 24rem;
  top: 0;
  bottom: 0;
  width: 7px;
  background: url(../images/company/line.png) repeat;
  background-size: contain;
  background-position: center;
}
@media screen and (max-width: 1540px) {
  #company .history_list::before {
    left: 15.5rem;
  }
}
@media screen and (max-width: 767px) {
  #company .history_list::before {
    left: 2rem;
  }
}
#company .history_item {
  display: flex;
  align-items: flex-start;
  margin-bottom: 5rem;
  position: relative;
  gap: 8rem;
}
@media screen and (max-width: 991px) {
  #company .history_item {
    margin-bottom: 3.2rem;
  }
}
@media screen and (max-width: 767px) {
  #company .history_item {
    flex-direction: column;
    transform: translateY(-1.2rem);
    gap: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #company .history_item {
    gap: 0.8rem;
    margin-bottom: 2.4rem;
  }
}
#company .history_item::before {
  content: "";
  position: absolute;
  left: 23.5rem;
  top: 1.2rem;
  width: 1.6rem;
  height: 1.6rem;
  border-radius: 50%;
  background: #fff;
  border: 2px solid #008cb4;
  z-index: 1;
}
@media screen and (max-width: 1540px) {
  #company .history_item::before {
    left: 15rem;
  }
}
@media screen and (max-width: 767px) {
  #company .history_item::before {
    left: -0.5rem;
  }
}
#company .history_item.long {
  margin-bottom: 9rem;
}
@media screen and (max-width: 991px) {
  #company .history_item.long {
    margin-bottom: 3.2rem;
  }
}
#company .history_item_left {
  flex-shrink: 0;
  padding-left: 8rem;
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  padding-top: 0.4rem;
  gap: 0.4rem;
}
@media screen and (max-width: 1540px) {
  #company .history_item_left {
    padding-left: 2rem;
  }
}
@media screen and (max-width: 767px) {
  #company .history_item_left {
    padding-right: 0.8rem;
  }
}
#company .history_item_date {
  font-size: 2rem;
  color: #333;
  white-space: nowrap;
  font-weight: 700;
  width: 14rem;
}
@media screen and (max-width: 1540px) {
  #company .history_item_date {
    font-size: 1.8rem;
    width: 11rem;
  }
}
@media screen and (max-width: 767px) {
  #company .history_item_date {
    width: auto;
  }
}
@media screen and (max-width: 574px) {
  #company .history_item_date {
    font-size: 1.3rem;
  }
}
#company .history_item_arrow {
  color: #00b4d8;
  font-size: 1.3rem;
  flex-shrink: 0;
}
#company .history_item_right {
  flex: 1;
  padding-top: 0.2rem;
  display: flex;
  align-items: flex-start;
  gap: 1.6rem;
  flex-wrap: wrap;
  position: relative;
}
@media screen and (max-width: 991px) {
  #company .history_item_right {
    flex-direction: column;
    gap: 0.8rem;
  }
}
@media screen and (max-width: 767px) {
  #company .history_item_right {
    padding-left: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #company .history_item_right {
    gap: 1.5rem;
  }
}
#company .history_item_event {
  font-size: 2rem;
  color: #333;
  line-height: 1.8;
  position: relative;
  font-weight: 500;
}
@media screen and (max-width: 1540px) {
  #company .history_item_event {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #company .history_item_event {
    font-size: 1.3rem;
  }
}
#company .history_item_event::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -1rem;
  width: 4rem;
  transform: translateY(-50%) translateX(-100%);
  height: 2px;
  background: #008cb4;
}
@media screen and (max-width: 1540px) {
  #company .history_item_event::before {
    top: 17px;
    transform: translateX(-100%);
  }
}
@media screen and (max-width: 574px) {
  #company .history_item_event::before {
    top: 12px;
  }
}
#company .history_item_event::after {
  content: "";
  position: absolute;
  top: 50%;
  left: -1rem;
  width: 8px;
  height: 8px;
  background: #008cb4;
  border-radius: 50%;
  transform: translateY(-50%) translateX(-100%);
}
@media screen and (max-width: 1540px) {
  #company .history_item_event::after {
    top: 14px;
    transform: translateX(-100%);
  }
}
@media screen and (max-width: 574px) {
  #company .history_item_event::after {
    top: 9px;
  }
}
#company .history_item_note {
  background: #008cb4;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.7;
  padding: 0.8rem 1.4rem;
  border-radius: 1.2rem;
  position: relative;
  max-width: 62rem;
  transform: translateY(-25%);
}
@media screen and (max-width: 1540px) {
  #company .history_item_note {
    font-size: 1.5rem;
    max-width: 46rem;
  }
}
@media screen and (max-width: 991px) {
  #company .history_item_note {
    transform: translate(0);
  }
}
@media screen and (max-width: 767px) {
  #company .history_item_note {
    max-width: 100%;
  }
}
#company .history_item_note::before {
  content: "";
  position: absolute;
  left: -0.7rem;
  top: 50%;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0.6rem 0.7rem 0.6rem 0;
  border-color: transparent #008cb4 transparent transparent;
}
@media screen and (max-width: 991px) {
  #company .history_item_note::before {
    top: 0;
    left: 1.6rem;
    transform: translateY(-100%);
    border-width: 0 0.6rem 0.7rem 0.6rem;
    border-color: transparent transparent #008cb4 transparent;
  }
}
#company .history_item_note.single {
  transform: translateY(-10%);
}
@media screen and (max-width: 574px) {
  #company .history_item_note.single {
    transform: translateY(0);
  }
}
#company .history_item_note.long {
  transform: translateY(0);
}
#company .history_item_note.long::before {
  top: 1.4rem;
  transform: translateY(0);
}
@media screen and (max-width: 991px) {
  #company .history_item_note.long::before {
    top: 0;
    transform: translateY(-100%);
  }
}

#interview .interview {
  background: #f5f5f5;
  padding: 17.2rem 0;
}
@media screen and (max-width: 1350px) {
  #interview .interview {
    padding: 12rem 0;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview {
    padding: 5rem 0;
  }
}
#interview .interview_question {
  font-size: 4rem;
  line-height: 1.8;
  letter-spacing: 0.1rem;
  font-weight: bold;
  background: #008cb4;
  color: #fff;
  width: -moz-fit-content;
  width: fit-content;
  margin: 8.5rem auto 0;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  padding: 4rem 7rem 4rem 4.5rem;
  gap: 1.6rem;
  border-radius: 3rem;
  position: relative;
}
@media screen and (max-width: 1350px) {
  #interview .interview_question {
    font-size: 3.2rem;
    margin-top: 6rem;
    padding: 3rem 5rem 3rem 3.5rem;
    gap: 1.2rem;
    border-radius: 2rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview_question {
    font-size: 2.4rem;
    padding: 2rem 3rem 2rem 2.5rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview_question {
    font-size: 1.8rem;
    padding: 1.8rem 2rem 2rem 2rem;
  }
}
#interview .interview_question::before {
  content: "";
  width: 2.4rem;
  height: 2.8rem;
  background: #008cb4;
  position: absolute;
  bottom: 0;
  left: 45%;
  transform: translateY(99%);
  clip-path: polygon(100% 0, 0 0, 5% 100%);
}
@media screen and (max-width: 767px) {
  #interview .interview_question::before {
    height: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview_question::before {
    width: 1.7rem;
    height: 1.5rem;
  }
}
#interview .interview_question span {
  font-size: 8.4rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
  padding-bottom: 1rem;
  display: block;
}
@media screen and (max-width: 1350px) {
  #interview .interview_question span {
    font-size: 6.5rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview_question span {
    font-size: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview_question span {
    font-size: 3.8rem;
    padding-bottom: 0.5rem;
  }
}
#interview .interview_question span small {
  font-weight: bold;
  font-size: 7rem;
  margin-left: 0.5rem;
}
@media screen and (max-width: 1350px) {
  #interview .interview_question span small {
    font-size: 5.5rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview_question span small {
    font-size: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview_question span small {
    font-size: 3.2rem;
  }
}
#interview .interview .answer_list {
  display: flex;
  justify-content: center;
  gap: 10rem 5%;
  flex-wrap: wrap;
  margin-top: 12rem;
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_list {
    gap: 6rem 5%;
    margin-top: 8rem;
  }
}
#interview .interview .answer_list.detail_interview {
  margin-top: 0;
}
#interview .interview .answer_item {
  width: 30%;
  position: relative;
  display: block;
}
@media (min-width: 992px) {
  #interview .interview .answer_item:hover .answer_inner img {
    transform: scale(1.1);
  }
  #interview .interview .answer_item:hover .name {
    background: #f9cc50;
    color: #000;
  }
  #interview .interview .answer_item:hover .name .arrow {
    background: #000;
  }
  #interview .interview .answer_item:hover .name .arrow svg path {
    fill: #fff;
  }
}
@media screen and (max-width: 991px) {
  #interview .interview .answer_item {
    width: 47.5%;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item {
    width: 100%;
    margin: 0 1rem;
  }
}
#interview .interview .answer_item .job {
  padding: 2rem 1.7rem 2rem 2rem;
  background: #008cb4;
  color: #fff;
  font-weight: 500;
  font-size: 3rem;
  letter-spacing: 0.1rem;
  position: absolute;
  left: -1.5rem;
  bottom: 8rem;
  transform: translateY(-50%);
  border-right: 1px solid #008cb4;
  z-index: 2;
}
@media screen and (max-width: 1540px) {
  #interview .interview .answer_item .job {
    font-size: 2.2rem;
    bottom: 6rem;
    padding: 1.5rem 1.4rem 1.5rem 1.6rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_item .job {
    font-size: 1.6rem;
    bottom: 4rem;
    padding: 1rem 1.2rem 1rem 1.4rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .interview .answer_item .job {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .job {
    font-size: 1.6rem;
    padding-right: 0rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .job {
    font-size: 1.5rem;
    bottom: 2rem;
  }
}
#interview .interview .answer_item .job::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background: #007293;
  position: absolute;
  left: 0;
  bottom: -1.5rem;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
}
#interview .interview .answer_item .job::after {
  content: "";
  width: 2rem;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(100%);
  background: #008cb4;
  clip-path: polygon(0 0, 100% 0, 4% 100%, 0% 100%);
  display: block;
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .job::after {
    width: 1.5rem;
  }
}
#interview .interview .answer_item .answer_inner {
  border-radius: 0 0 4rem 4rem;
  overflow: hidden;
  z-index: 0;
  box-shadow: 0px 10px 40px 0px rgba(201, 200, 200, 0.5);
}
#interview .interview .answer_item .answer_inner img {
  transition: 0.5s;
  position: relative;
  z-index: 0;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.01);
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer_inner img {
    height: 25rem;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: top center;
       object-position: top center;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer_inner img.pc {
    display: none;
  }
}
#interview .interview .answer_item .answer_inner img.sp {
  display: none;
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer_inner img.sp {
    display: block;
  }
}
#interview .interview .answer_item .answer {
  writing-mode: vertical-rl;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  position: absolute;
  top: -1.5rem;
  left: -2.4rem;
  gap: 1rem;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer {
    gap: 0.5rem;
    left: -1.2rem;
  }
}
#interview .interview .answer_item .answer span {
  background: #fff;
}
#interview .interview .answer_item .answer span.single {
  font-size: 12.6rem;
  font-weight: bold;
  padding: 1rem 0;
  line-height: 1.3;
}
@media screen and (max-width: 1540px) {
  #interview .interview .answer_item .answer span.single {
    font-size: 9rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_item .answer span.single {
    font-size: 8rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .interview .answer_item .answer span.single {
    font-size: 10rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer span.single {
    font-size: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .answer span.single {
    font-size: 6.5rem;
  }
}
#interview .interview .answer_item .answer span.double {
  font-size: 6.8rem;
  font-weight: 800;
  padding: 1rem 0;
  line-height: 1.3;
}
@media screen and (max-width: 1540px) {
  #interview .interview .answer_item .answer span.double {
    font-size: 5.2rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_item .answer span.double {
    font-size: 4rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .interview .answer_item .answer span.double {
    font-size: 6rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer span.double {
    font-size: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .answer span.double {
    font-size: 4.4rem;
  }
}
#interview .interview .answer_item .answer span.triple {
  font-size: 6rem;
  font-weight: 800;
  padding: 1rem 0;
  line-height: 1.2;
}
@media screen and (max-width: 1540px) {
  #interview .interview .answer_item .answer span.triple {
    font-size: 4.5rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_item .answer span.triple {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .interview .answer_item .answer span.triple {
    font-size: 4.5rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .interview .answer_item .answer span.triple {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .answer span.triple {
    font-size: 3.1rem;
  }
}
#interview .interview .answer_item .name {
  position: relative;
  width: 100%;
  height: 10.8rem;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  background: #000;
  transition: 0.5s;
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_item .name {
    height: 8.5rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .name {
    height: 5.04rem;
  }
}
#interview .interview .answer_item .name p {
  text-align: center;
  font-size: 2.2rem;
  font-weight: 500;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #interview .interview .answer_item .name p {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .name p {
    font-size: 1.3rem;
  }
}
#interview .interview .answer_item .name .arrow {
  position: absolute;
  top: 50%;
  right: 2.4rem;
  transform: translateY(-50%);
  width: 3.1rem;
  height: 3.1rem;
  background: #fff;
  border-radius: 50%;
  display: flex;
  justify-content: center;
  transition: 0.5s;
  align-items: center;
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .name .arrow {
    width: 1.9rem;
    height: 1.9rem;
  }
}
#interview .interview .answer_item .name .arrow svg {
  transition: 0.5s;
}
@media screen and (max-width: 574px) {
  #interview .interview .answer_item .name .arrow svg {
    transform: scale(0.6);
  }
}
#interview .interview .answer_item .name .arrow svg path {
  transition: 0.5s;
}
#interview .detail {
  padding: 12rem 0 0;
}
@media screen and (max-width: 1350px) {
  #interview .detail {
    padding: 8rem 0 0;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail {
    padding: 4rem 0 0;
  }
}
#interview .detail .interview_question {
  margin-top: 0;
}
#interview .detail_main {
  margin: 13rem auto 0;
  max-width: 97%;
  position: relative;
}
@media screen and (max-width: 767px) {
  #interview .detail_main {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main {
    max-width: calc(100% - 2rem);
    margin-top: 4.5rem;
  }
}
#interview .detail_main img {
  border-radius: 5rem;
  box-shadow: 0px 12px 0px 0px rgb(144, 217, 233);
}
@media screen and (max-width: 991px) {
  #interview .detail_main img {
    aspect-ratio: 14/11;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main img {
    border-radius: 2.5rem;
  }
}
#interview .detail_main h2 {
  writing-mode: vertical-rl;
  display: flex;
  align-items: flex-start;
  justify-content: center;
  flex-direction: column;
  position: absolute;
  top: -4rem;
  right: 8vw;
  gap: 1rem;
  z-index: 2;
}
@media screen and (max-width: 1350px) {
  #interview .detail_main h2 {
    right: 5vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main h2 {
    gap: 0.5rem;
  }
}
#interview .detail_main h2 span {
  background: #fff;
  box-shadow: 0 0 110px 0 rgba(0, 0, 0, 0.05);
}
#interview .detail_main h2 span.single {
  font-size: 28rem;
  font-weight: bold;
  padding: 1rem 0;
  line-height: 1.3;
}
@media screen and (max-width: 1540px) {
  #interview .detail_main h2 span.single {
    font-size: 20rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .detail_main h2 span.single {
    font-size: 16rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_main h2 span.single {
    font-size: 14rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main h2 span.single {
    font-size: 12rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main h2 span.single {
    font-size: 6rem;
  }
}
#interview .detail_main h2 span.double {
  font-size: 13rem;
  font-weight: 800;
  padding: 1rem 0;
  line-height: 1.3;
}
@media screen and (max-width: 1540px) {
  #interview .detail_main h2 span.double {
    font-size: 12rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .detail_main h2 span.double {
    font-size: 10rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_main h2 span.double {
    font-size: 8rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main h2 span.double {
    font-size: 6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main h2 span.double {
    font-size: 4.4rem;
    padding: 0.5rem 0;
  }
}
#interview .detail_main h2 span.double small {
  font-size: 13rem;
  height: 32rem;
  display: inline-block;
  margin-top: -7rem;
}
@media screen and (max-width: 1540px) {
  #interview .detail_main h2 span.double small {
    font-size: 12rem;
    height: 30rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .detail_main h2 span.double small {
    font-size: 10rem;
    margin-top: -5.5rem;
    height: 24rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_main h2 span.double small {
    font-size: 8rem;
    margin-top: -3rem;
    height: 21rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main h2 span.double small {
    font-size: 6rem;
    height: 16rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main h2 span.double small {
    font-size: 4.4rem;
    margin-top: -1.6rem;
    height: 12rem;
  }
}
#interview .detail_main h2 span.triple {
  font-size: 12rem;
  font-weight: 800;
  padding: 1rem 0;
  line-height: 1.2;
}
@media screen and (max-width: 1540px) {
  #interview .detail_main h2 span.triple {
    font-size: 8rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .detail_main h2 span.triple {
    font-size: 6rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_main h2 span.triple {
    font-size: 7rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main h2 span.triple {
    font-size: 6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main h2 span.triple {
    font-size: 3.2rem;
  }
}
#interview .detail_main-name {
  position: absolute;
  bottom: -4rem;
  right: 8vw;
  min-width: 47rem;
  padding: 0 4.8rem;
  height: 30rem;
  background: #008cb4;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  box-shadow: 7.713px 9.193px 0px 0px rgb(255, 255, 255);
  gap: 3.5rem;
}
@media screen and (max-width: 1540px) {
  #interview .detail_main-name {
    height: 24rem;
  }
}
@media screen and (max-width: 1350px) {
  #interview .detail_main-name {
    min-width: 35rem;
    height: 20rem;
    gap: 2rem;
    right: 5vw;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main-name {
    min-width: 30rem;
    height: 15rem;
    gap: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main-name {
    min-width: -moz-fit-content;
    min-width: fit-content;
    padding: 0 1.5rem;
    height: 9rem;
    box-shadow: 4.5px 5.362px 0px 0px rgb(255, 255, 255);
    gap: 1.25rem;
    bottom: -2rem;
  }
}
#interview .detail_main-name .year {
  text-align: center;
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #interview .detail_main-name .year {
    font-size: 3rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main-name .year {
    font-size: 2.6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main-name .year {
    font-size: 1.4rem;
  }
}
#interview .detail_main-name span {
  display: block;
  background: #fff;
  width: 100%;
  height: 1px;
}
#interview .detail_main-name .name {
  text-align: center;
  font-size: 3rem;
  font-weight: 500;
  letter-spacing: 0.07rem;
}
@media screen and (max-width: 1540px) {
  #interview .detail_main-name .name {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_main-name .name {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_main-name .name {
    font-size: 1.2rem;
  }
}
#interview .detail_content {
  padding: 55rem 0 19rem;
  background: #74cfe3;
  margin-top: -30rem;
}
@media screen and (max-width: 574px) {
  #interview .detail_content {
    padding: 17.5rem 0 7.5rem;
    margin-top: -7rem;
  }
}
#interview .detail_content .container {
  display: flex;
  flex-direction: column;
  gap: 12rem;
}
@media screen and (max-width: 574px) {
  #interview .detail_content .container {
    gap: 5.5rem;
  }
}
#interview .detail_content-item {
  background: #fff;
  border-radius: 4rem;
  box-shadow: 0px 12px 0px 0px rgb(144, 217, 233);
  padding: 15rem 6rem 8rem;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 1700px) {
  #interview .detail_content-item {
    padding: 10rem 4rem 6rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item {
    padding: 8rem 2rem 4rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item {
    border-radius: 2.5rem;
    box-shadow: 0px 6px 0px 0px rgb(144, 217, 233);
    padding: 6rem 1.5rem 3rem;
  }
}
#interview .detail_content-item .question {
  position: absolute;
  left: 0;
  top: 0;
  transform: translateY(-45%);
  background: #008cb4;
  color: #fff;
  display: flex;
  align-items: center;
  border-radius: 10rem 0 0 10rem;
  padding: 1rem 0 2rem 6rem;
  gap: 2rem;
  box-shadow: 0px 12px 0px 0px rgb(144, 217, 233);
  z-index: 0;
  max-width: calc(100% - 6rem);
}
@media screen and (max-width: 1700px) {
  #interview .detail_content-item .question {
    gap: 1rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .question {
    padding: 1rem 0 2rem 4rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .question {
    padding: 1rem 0 1.5rem 2rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .question {
    max-width: calc(100% - 3rem);
    gap: 0.5rem;
    padding: 0.5rem 0 1rem 1.5rem;
    box-shadow: 0px 6px 0px 0px rgb(144, 217, 233);
  }
}
#interview .detail_content-item .question.rev {
  padding: 1rem 6rem 2rem 0;
  border-radius: 0 10rem 10rem 0;
  left: auto;
  right: 0;
  transform: translateY(-45%);
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .question.rev {
    padding: 1rem 4rem 2rem 0;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .question.rev {
    padding: 1rem 2rem 1.5rem 0;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .question.rev {
    padding: 0.5rem 1.5rem 1rem 0;
  }
}
#interview .detail_content-item .question.rev::before {
  right: auto;
  left: 0;
}
#interview .detail_content-item .question.rev::after {
  right: auto;
  left: 0;
  background: url(../images/interview/baloon_rev.png) no-repeat;
  background-size: 100% 100%;
  background-position: top left;
  transform: translateX(-99%);
}
#interview .detail_content-item .question.rev .en {
  margin-left: -2rem;
}
#interview .detail_content-item .question.rev h3 {
  margin: 0;
}
#interview .detail_content-item .question::before {
  content: "";
  width: 2rem;
  height: 100%;
  position: absolute;
  right: 0;
  top: 0;
  background: #008cb4;
  z-index: -1;
}
#interview .detail_content-item .question::after {
  z-index: -2;
  content: "";
  width: 6rem;
  height: calc(100% + 0.4rem);
  background: url(../images/interview/baloon.png) no-repeat;
  background-size: 100% 100%;
  background-position: top left;
  position: absolute;
  right: 0;
  top: 0;
  transform: translateX(99%);
  filter: drop-shadow(0 12px 0px rgb(144, 217, 233));
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .question::after {
    width: 5rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .question::after {
    right: 0.5rem;
    width: 3.5rem;
    height: calc(100% + 0.25rem);
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .question::after {
    filter: drop-shadow(0 6px 0px rgb(144, 217, 233));
  }
}
#interview .detail_content-item .question .en {
  font-size: 8.6rem;
  font-weight: 700;
  line-height: 1;
}
@media screen and (max-width: 1700px) {
  #interview .detail_content-item .question .en {
    font-size: 7.6rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .question .en {
    font-size: 6rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .question .en {
    font-size: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .question .en {
    font-size: 4rem;
  }
}
#interview .detail_content-item .question .en span {
  font-size: 5.6rem;
}
@media screen and (max-width: 1700px) {
  #interview .detail_content-item .question .en span {
    font-size: 4.6rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .question .en span {
    font-size: 4rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .question .en span {
    font-size: 3.6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .question .en span {
    font-size: 2.4rem;
  }
}
#interview .detail_content-item .question h3 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1.7;
  letter-spacing: 0.1rem;
  padding-top: 1rem;
}
@media screen and (max-width: 1700px) {
  #interview .detail_content-item .question h3 {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .question h3 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .question h3 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .question h3 {
    font-size: 1.3rem;
    letter-spacing: 0;
    margin-right: -1.5rem;
  }
}
#interview .detail_content-item .answer h4 {
  font-weight: bold;
  font-size: 2.8rem;
  letter-spacing: 0.1rem;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .answer h4 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .answer h4 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .answer h4 {
    font-size: 1.4rem;
  }
}
#interview .detail_content-item .answer p {
  margin-top: 3.2rem;
  font-size: 2rem;
  font-weight: 500;
  line-height: 2.5;
  letter-spacing: 0;
}
@media screen and (max-width: 991px) {
  #interview .detail_content-item .answer p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #interview .detail_content-item .answer p {
    margin-top: 2.4rem;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .answer p {
    font-size: 1.3rem;
    margin-top: 1.8rem;
    line-height: 1.8;
  }
}
@media screen and (max-width: 574px) {
  #interview .detail_content-item .answer p .sp_none {
    display: none;
  }
}

#career .catch {
  padding: 14.5rem 0 24rem;
}
@media screen and (max-width: 1350px) {
  #career .catch {
    padding: 10rem 0 18rem;
  }
}
@media screen and (max-width: 767px) {
  #career .catch {
    padding: 4rem 0 5rem;
  }
}
#career .catch h2 {
  position: relative;
  font-weight: 900;
  font-size: 5rem;
  line-height: 1.5;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #career .catch h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 991px) {
  #career .catch h2 {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .catch h2 {
    font-size: 2.5rem;
  }
}
#career .catch h2 span {
  position: relative;
}
#career .catch h2 span::after {
  content: "";
  width: 8rem;
  height: 7rem;
  background: url(../images/common/title_right.png) no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  bottom: -1rem;
  left: -0.5rem;
}
@media screen and (max-width: 1350px) {
  #career .catch h2 span::after {
    width: 6rem;
    height: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .catch h2 span::after {
    width: 3.5rem;
    height: 2.5rem;
    bottom: 0;
  }
}
#career .catch .catch_text {
  font-size: 2rem;
  line-height: 2;
  letter-spacing: -0.05rem;
  margin-top: 4.5rem;
  font-weight: 500;
  flex: 1;
}
@media screen and (max-width: 1540px) {
  #career .catch .catch_text {
    font-size: 1.8rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 574px) {
  #career .catch .catch_text {
    font-size: 1.3rem;
  }
}
#career .catch_content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 991px) {
  #career .catch_content {
    margin-top: 4rem;
    flex-direction: column;
  }
}
@media screen and (max-width: 574px) {
  #career .catch_content {
    margin-top: 2.5rem;
    gap: 3rem;
  }
}
#career .catch .catch_image {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 41%;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  #career .catch .catch_image {
    width: 100%;
    margin-left: 3rem;
  }
}
#career .catch .catch_image img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 991px) {
  #career .catch .catch_image img {
    aspect-ratio: 375/280;
    -o-object-fit: cover;
       object-fit: cover;
    width: 58%;
  }
}
@media screen and (max-width: 767px) {
  #career .catch .catch_image img {
    aspect-ratio: auto;
    width: 65%;
  }
}
#career .catch .catch_image-bottom {
  margin-top: 10rem;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 991px) {
  #career .catch .catch_image-bottom {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  #career .catch .catch_image-bottom {
    flex-direction: column;
    align-items: center;
  }
}
#career .catch .catch_image-bottom img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 991px) {
  #career .catch .catch_image-bottom img {
    aspect-ratio: 375/280;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 767px) {
  #career .catch .catch_image-bottom img {
    aspect-ratio: auto;
  }
}
#career .catch .catch_image-bottom-1 {
  width: 53%;
}
@media screen and (max-width: 991px) {
  #career .catch .catch_image-bottom-1 {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  #career .catch .catch_image-bottom-1 {
    width: 99%;
  }
}
#career .catch .catch_image-bottom-2 {
  width: 40%;
  margin-left: -2.5rem;
  margin-bottom: -9rem;
}
@media screen and (max-width: 767px) {
  #career .catch .catch_image-bottom-2 {
    width: 65%;
    margin-left: auto;
    margin-bottom: 0;
    margin-top: -1.5rem;
    margin-right: 2rem;
  }
}
#career .department {
  padding: 17rem 0;
  background: #74cfe3;
}
@media screen and (max-width: 1540px) {
  #career .department {
    padding: 10rem 0;
  }
}
@media screen and (max-width: 767px) {
  #career .department {
    padding: 3rem 0 6rem;
  }
}
#career .department .title {
  color: #000;
}
#career .department_list {
  margin-top: 15rem;
  display: flex;
  flex-direction: column;
  gap: 6.4rem;
}
@media screen and (max-width: 1350px) {
  #career .department_list {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_list {
    margin-top: 5rem;
    gap: 3.9rem;
  }
}
#career .department_item {
  position: relative;
  background: #fff;
  box-shadow: -10.607px 10.607px 0px 0px rgba(0, 140, 180, 0.2);
  border-radius: 5rem 0 0 5rem;
  display: flex;
  align-items: center;
  gap: 9rem;
  padding: 10rem 0 10rem 8rem;
  z-index: 0;
}
@media screen and (max-width: 1540px) {
  #career .department_item {
    gap: 4.8rem;
    padding: 8rem 0 8rem 4.8rem;
  }
}
@media screen and (max-width: 991px) {
  #career .department_item {
    flex-direction: column;
    border-radius: 3rem 0 0 3rem;
    padding: 4.5rem 1rem 4.5rem 3rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item {
    gap: 3rem;
    box-shadow: -5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#career .department_item::before {
  content: "";
  width: 55%;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#career .department_item:after {
  content: "";
  width: calc((100vw - 100%) / 2 + 1rem);
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  right: 2px;
  z-index: -2;
  transform: translateX(100%);
  box-shadow: -10.607px 10.607px 0px 0px rgba(0, 140, 180, 0.2);
}
@media screen and (max-width: 574px) {
  #career .department_item:after {
    box-shadow: -5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#career .department_item .num {
  position: absolute;
  left: 7.2rem;
  top: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-size: 12rem;
  letter-spacing: 0.07rem;
}
@media screen and (max-width: 767px) {
  #career .department_item .num {
    font-size: 6rem;
    left: 3rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item .num {
    font-size: 4.5rem;
  }
}
#career .department_item.rev {
  box-shadow: 11.147px 10.037px 0px 0px rgba(0, 140, 180, 0.2);
  border-radius: 0 5rem 5rem 0;
  padding: 15rem 8rem 15rem 0;
  justify-content: flex-end;
}
@media screen and (max-width: 1540px) {
  #career .department_item.rev {
    padding: 8rem 4.8rem 8rem 0;
  }
}
@media screen and (max-width: 991px) {
  #career .department_item.rev {
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 767px) {
  #career .department_item.rev {
    border-radius: 0 3rem 3rem 0;
    padding: 4.5rem 3rem 4.5rem 1rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item.rev {
    box-shadow: 5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#career .department_item.rev::before {
  content: "";
  width: 55%;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
#career .department_item.rev:after {
  content: "";
  width: calc((100vw - 100%) / 2 + 1rem);
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: 2px;
  right: auto;
  z-index: -2;
  transform: translateX(-100%);
  box-shadow: 11.147px 10.037px 0px 0px rgba(0, 140, 180, 0.2);
}
@media screen and (max-width: 574px) {
  #career .department_item.rev:after {
    box-shadow: 5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#career .department_item.rev .num {
  right: 7.2rem;
  left: auto;
}
@media screen and (max-width: 767px) {
  #career .department_item.rev .num {
    right: 3rem;
  }
}
#career .department_item-image {
  width: 55rem;
}
@media screen and (max-width: 991px) {
  #career .department_item-image {
    width: 100%;
    height: 40rem;
  }
}
@media screen and (max-width: 767px) {
  #career .department_item-image {
    height: auto;
  }
}
#career .department_item-image img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 991px) {
  #career .department_item-image img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item-image img {
    border-radius: 0.75rem;
  }
}
#career .department_item-ballon {
  position: relative;
  width: 78.6rem;
  height: 14.5rem;
  background: url(../images/career/ballon.png) no-repeat;
  background-size: contain;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 0 2.4rem 1rem;
}
@media screen and (max-width: 1540px) {
  #career .department_item-ballon {
    width: 50rem;
    height: 9rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item-ballon {
    width: 100%;
    height: 7rem;
    background: url(../images/career/ballon_sp.png) no-repeat;
    background-size: contain;
    background-position: center;
  }
}
#career .department_item-ballon.rev {
  background: url(../images/career/ballon_rev.png) no-repeat;
  background-size: contain;
  background-position: center;
}
@media screen and (max-width: 574px) {
  #career .department_item-ballon.rev {
    width: 100%;
    background: url(../images/career/ballon_rev_sp.png) no-repeat;
    background-size: contain;
    background-position: center;
  }
}
#career .department_item-ballon p {
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.8;
}
@media screen and (max-width: 1540px) {
  #career .department_item-ballon p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item-ballon p {
    font-size: 1.5rem;
  }
}
#career .department_item-text h3 {
  font-size: 7.6rem;
  font-weight: 700;
  letter-spacing: 0;
  margin-top: 6.4rem;
}
@media screen and (max-width: 1540px) {
  #career .department_item-text h3 {
    font-size: 4.8rem;
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 1350px) {
  #career .department_item-text h3 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item-text h3 {
    margin-top: 2.4rem;
    font-size: 2.4rem;
  }
}
#career .department_item-text > p {
  margin-top: 5.6rem;
  font-size: 1.9rem;
  line-height: 2.2;
  letter-spacing: 0.1rem;
  font-weight: 500;
}
@media screen and (max-width: 1540px) {
  #career .department_item-text > p {
    font-size: 1.6rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #career .department_item-text > p {
    margin-top: 2.4rem;
    font-size: 1.25rem;
    letter-spacing: 0;
  }
}
#career .career {
  padding: 15rem 0 9rem;
  background: #f5f5f5;
}
@media screen and (max-width: 1540px) {
  #career .career {
    padding: 10rem 0 5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career {
    padding: 6rem 0 4rem;
  }
}
#career .career_lead {
  text-align: center;
  margin-top: 7.2rem;
  font-size: 2.2rem;
  letter-spacing: 0.1rem;
  line-height: 2;
  font-weight: bold;
}
@media screen and (max-width: 574px) {
  #career .career_lead {
    margin-top: 3.5rem;
    font-size: 1.4rem;
  }
}
#career .career_image {
  margin-top: 15rem;
}
@media screen and (max-width: 1540px) {
  #career .career_image {
    margin-top: 6.4rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image {
    margin-top: 3rem;
  }
}
#career .career_image-title {
  display: flex;
  align-items: center;
  gap: 1rem 2.5rem;
  flex-wrap: wrap;
}
#career .career_image-title h3 {
  font-size: 3.8rem;
  font-weight: 900;
  letter-spacing: 0.1rem;
  line-height: 1.5;
  display: flex;
  align-items: center;
  gap: 1rem;
  padding-right: 2.5rem;
  border-right: 1px solid #000;
}
@media screen and (max-width: 991px) {
  #career .career_image-title h3 {
    font-size: 2.4rem;
    padding-right: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-title h3 {
    padding-right: 0;
    border-right: none;
    font-size: 1.5rem;
    gap: 0.5rem;
  }
}
#career .career_image-title h3::before {
  content: "";
  width: 3rem;
  height: 3rem;
  background: #000;
  display: block;
  border-radius: 50%;
}
@media screen and (max-width: 991px) {
  #career .career_image-title h3::before {
    width: 2rem;
    height: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-title h3::before {
    width: 1.5rem;
    height: 1.5rem;
  }
}
#career .career_image-title p {
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.5;
}
@media screen and (max-width: 991px) {
  #career .career_image-title p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-title p {
    font-size: 1.3rem;
  }
}
#career .career_image-list {
  margin-top: 5.6rem;
  display: flex;
  gap: 1.6rem;
}
@media screen and (max-width: 1350px) {
  #career .career_image-list {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 991px) {
  #career .career_image-list {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-list {
    gap: 1rem;
  }
}
#career .career_image-item {
  flex: 1;
  height: 100%;
}
@media screen and (max-width: 1350px) {
  #career .career_image-item {
    flex: none;
    width: calc(50% - 0.8rem);
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item {
    width: calc(50% - 0.5rem);
  }
}
#career .career_image-item:first-child .career_image-item-step {
  clip-path: polygon(93% 0, 100% 50%, 93% 100%, 0% 100%, 0% 50%, 0% 0%);
}
#career .career_image-item-step {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.4rem;
  background: #008cb4;
  flex-wrap: wrap;
  clip-path: polygon(93% 0, 100% 50%, 93% 100%, 0% 100%, 7% 50%, 0% 0%);
  width: calc(100% + 3.2rem);
}
@media screen and (max-width: 767px) {
  #career .career_image-item-step {
    width: calc(100% + 1.6rem);
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-step {
    gap: 0.7rem;
  }
}
#career .career_image-item-step .year {
  font-size: 3.8rem;
  font-weight: 700;
  padding-top: 1rem;
}
#career .career_image-item-step .year span {
  font-size: 120%;
}
@media screen and (max-width: 1540px) {
  #career .career_image-item-step .year {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-step .year {
    font-size: 1.9rem;
    margin-right: -1rem;
  }
}
#career .career_image-item-step .num {
  color: #fff;
  display: flex;
  align-items: flex-start;
  font-weight: 700;
  font-size: 12.6rem;
  line-height: 0.8;
  gap: 0.5rem;
}
@media screen and (max-width: 1540px) {
  #career .career_image-item-step .num {
    font-size: 10rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_image-item-step .num {
    font-size: 6rem;
  }
}
#career .career_image-item-step .num span {
  font-size: 2rem;
  font-weight: 900;
  letter-spacing: 0.1rem;
  padding-top: 2.5rem;
  display: block;
}
@media screen and (max-width: 767px) {
  #career .career_image-item-step .num span {
    font-size: 1.6rem;
    padding-top: 1rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-step .num span {
    font-size: 1rem;
    padding-top: 0.75rem;
  }
}
#career .career_image-item-step h4 {
  width: 100%;
  background: #000;
  padding: 1.5rem 0;
  text-align: center;
  color: #fff;
  font-size: 3rem;
  font-weight: bold;
}
@media screen and (max-width: 1540px) {
  #career .career_image-item-step h4 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_image-item-step h4 {
    font-size: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-step h4 {
    font-size: 1.5rem;
    padding: 0.75rem 0;
  }
}
#career .career_image-item:nth-of-type(2) .career_image-item-step {
  background: #1b9a7f;
}
#career .career_image-item:nth-of-type(2) .career_image-item-content {
  background: #a9d5cc;
}
#career .career_image-item:nth-of-type(2) .career_image-item-content-text ul li .ttl {
  background: #1b9a7f;
}
#career .career_image-item:nth-of-type(3) .career_image-item-step {
  background: #e58a2d;
}
#career .career_image-item:nth-of-type(3) .career_image-item-content {
  background: #f1dac3;
}
#career .career_image-item:nth-of-type(3) .career_image-item-content-text ul li .ttl {
  background: #e58a2d;
}
#career .career_image-item:nth-of-type(4) .career_image-item-step {
  background: #ce5656;
}
#career .career_image-item:nth-of-type(4) .career_image-item-content {
  background: #ebcdcd;
}
#career .career_image-item:nth-of-type(4) .career_image-item-content-text ul li .ttl {
  background: #ce5656;
}
#career .career_image-item-content {
  margin-top: 1.6rem;
  padding: 3.5rem 1.1rem 1.2rem;
  background: #b8dbe5;
}
@media screen and (max-width: 767px) {
  #career .career_image-item-content {
    padding: 2rem 1rem 1.2rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content {
    padding: 1.5rem 0.25rem 1rem;
  }
}
#career .career_image-item-content h5 {
  font-size: 2.8rem;
  letter-spacing: 0.1rem;
  text-align: center;
  line-height: 1.3;
  font-weight: 700;
}
@media screen and (max-width: 1540px) {
  #career .career_image-item-content h5 {
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_image-item-content h5 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content h5 {
    font-size: 1.35rem;
    letter-spacing: 0;
  }
}
#career .career_image-item-content-text {
  margin-top: 2.4rem;
  background: #fff;
  padding: 2rem 0.5rem 2rem 1rem;
  border-radius: 1.2rem;
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content-text {
    margin-top: 1.3rem;
    padding: 1.1rem 0.5rem;
  }
}
#career .career_image-item-content-text ul {
  display: flex;
  flex-direction: column;
  gap: 1.8rem;
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content-text ul {
    gap: 1.3rem;
  }
}
#career .career_image-item-content-text ul li {
  display: flex;
  align-items: baseline;
  gap: 1rem;
}
@media screen and (max-width: 767px) {
  #career .career_image-item-content-text ul li {
    flex-direction: column;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content-text ul li {
    gap: 0.7rem;
  }
}
#career .career_image-item-content-text ul li .ttl {
  border-radius: 0.8rem;
  color: #fff;
  background: #008cb4;
  padding: 0.8rem 1.5rem;
  font-size: 1.8rem;
  letter-spacing: 0.1rem;
  font-weight: 700;
}
@media screen and (max-width: 1540px) {
  #career .career_image-item-content-text ul li .ttl {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_image-item-content-text ul li .ttl {
    padding: 0.5rem 1rem;
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content-text ul li .ttl {
    font-size: 1rem;
    line-height: 1;
    border-radius: 0.4rem;
  }
}
#career .career_image-item-content-text ul li .txt {
  font-size: 1.8rem;
  font-weight: bold;
  flex: 1;
  line-height: 2;
  letter-spacing: 0;
}
@media screen and (max-width: 1540px) {
  #career .career_image-item-content-text ul li .txt {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_image-item-content-text ul li .txt {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_image-item-content-text ul li .txt {
    font-size: 1rem;
  }
}
#career .career_image-item-content-text ul li .txt .d-inline-block {
  display: inline-block;
}
#career .career_image-item-content-text ul li.last {
  flex-direction: column;
}
#career .career_detail {
  margin-top: 15rem;
  display: flex;
  flex-direction: column;
  gap: 9.6rem;
}
@media screen and (max-width: 574px) {
  #career .career_detail {
    margin-top: 3.5rem;
  }
}
#career .career_detail-item {
  position: relative;
}
#career .career_detail-item:nth-of-type(2) .career_detail-image img {
  box-shadow: 10.706px 11.89px 0px 0px rgba(27, 154, 127, 0.4);
}
#career .career_detail-item:nth-of-type(2) .career_detail-title {
  background: #1b9a7f;
}
#career .career_detail-item:nth-of-type(2) .career_detail-title::after {
  background: #1b9a7f;
}
#career .career_detail-item:nth-of-type(2) .career_detail-title::before {
  background: #0e866c;
}
#career .career_detail-item:nth-of-type(2) .career_detail-content {
  box-shadow: 10.706px 11.89px 0px 0px rgba(27, 154, 127, 0.4);
}
#career .career_detail-item:nth-of-type(2) .career_detail-content table th {
  background: #a9d5cc;
}
#career .career_detail-item:nth-of-type(3) .career_detail-image img {
  box-shadow: 10.706px 11.89px 0px 0px rgba(229, 138, 45, 0.4);
}
#career .career_detail-item:nth-of-type(3) .career_detail-title {
  background: #e58a2d;
}
#career .career_detail-item:nth-of-type(3) .career_detail-title::after {
  background: #e58a2d;
}
#career .career_detail-item:nth-of-type(3) .career_detail-title::before {
  background: #d57a1d;
}
#career .career_detail-item:nth-of-type(3) .career_detail-content {
  box-shadow: 10.706px 11.89px 0px 0px rgba(229, 138, 45, 0.4);
}
#career .career_detail-item:nth-of-type(3) .career_detail-content table th {
  background: #f1dac3;
}
#career .career_detail-item:nth-of-type(4) .career_detail-image img {
  box-shadow: 10.706px 11.89px 0px 0px rgba(206, 86, 86, 0.4);
}
#career .career_detail-item:nth-of-type(4) .career_detail-title {
  background: #ce5656;
}
#career .career_detail-item:nth-of-type(4) .career_detail-title::after {
  background: #ce5656;
}
#career .career_detail-item:nth-of-type(4) .career_detail-title::before {
  background: #b83838;
}
#career .career_detail-item:nth-of-type(4) .career_detail-content {
  box-shadow: 10.706px 11.89px 0px 0px rgba(206, 86, 86, 0.4);
}
#career .career_detail-item:nth-of-type(4) .career_detail-content table th {
  background: #ebcdcd;
}
#career .career_detail-image {
  height: 65rem;
  width: 100%;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 1540px) {
  #career .career_detail-image {
    height: 50rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_detail-image {
    height: 40rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-image {
    height: 22rem;
  }
}
#career .career_detail-image img {
  box-shadow: 11.147px 10.037px 0px 0px rgba(0, 140, 180, 0.2);
  border-radius: 4rem 4rem 0 0;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
#career .career_detail-title {
  position: absolute;
  top: 50%;
  left: -1.5rem;
  transform: translateY(-100%);
  color: #fff;
  background: #008cb4;
  height: 20rem;
  padding: 0 2rem 0 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
@media screen and (max-width: 991px) {
  #career .career_detail-title {
    padding: 0 1.5rem 0 3rem;
    height: 15rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-title {
    height: 8rem;
    left: -0.6rem;
  }
}
#career .career_detail-title::after {
  content: "";
  width: 4rem;
  height: 100%;
  position: absolute;
  right: 1px;
  top: 0;
  transform: translateX(100%);
  background: #008cb4;
  clip-path: polygon(0 0, 100% 0%, 0 100%);
}
@media screen and (max-width: 574px) {
  #career .career_detail-title::after {
    width: 2rem;
  }
}
#career .career_detail-title::before {
  content: "";
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  left: 0;
  bottom: 1px;
  transform: translateY(100%);
  background: #007293;
  clip-path: polygon(0 0, 100% 0%, 100% 100%);
}
@media screen and (max-width: 574px) {
  #career .career_detail-title::before {
    width: 0.7rem;
    height: 0.7rem;
  }
}
#career .career_detail-title h3 {
  font-size: 4rem;
  font-weight: 700;
  letter-spacing: 0.1rem;
  line-height: 1.5;
  text-align: center;
  width: 100%;
  padding-bottom: 2.4rem;
  border-bottom: 1px solid #fff;
  padding: 0 2.4rem 2.4rem;
}
@media screen and (max-width: 1540px) {
  #career .career_detail-title h3 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_detail-title h3 {
    font-size: 2.4rem;
    padding: 0 1.5rem 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-title h3 {
    font-size: 1.5rem;
    padding: 0 1rem 1rem;
  }
}
#career .career_detail-title h3 span {
  display: inline-block;
}
#career .career_detail-title p {
  margin-top: 2rem;
  font-size: 3rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
}
@media screen and (max-width: 1540px) {
  #career .career_detail-title p {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_detail-title p {
    font-size: 2rem;
    margin-top: 1.5rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-title p {
    font-size: 1.3rem;
    margin-top: 1rem;
  }
}
#career .career_detail-content {
  padding: 4.8rem 5rem;
  background: #fff;
  border-radius: 0 0 4rem 4rem;
  z-index: 1;
  position: relative;
  box-shadow: 11.147px 10.037px 0px 0px rgba(0, 140, 180, 0.2);
}
@media screen and (max-width: 991px) {
  #career .career_detail-content {
    padding: 3.2rem 3rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-content {
    padding: 2rem 1.25rem;
  }
}
#career .career_detail-content h4 {
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.4;
}
@media screen and (max-width: 1540px) {
  #career .career_detail-content h4 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_detail-content h4 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-content h4 {
    font-size: 1.9rem;
  }
}
#career .career_detail-content h4 span {
  display: inline-block;
}
#career .career_detail-content table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 1.5rem;
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  #career .career_detail-content table {
    margin-top: 0;
  }
}
#career .career_detail-content table th {
  background: #ace2ee;
  width: 15.6rem;
  text-align: center;
  border-radius: 0.5rem;
  height: 6.5rem;
  font-weight: bold;
  font-size: 1.8rem;
}
@media screen and (max-width: 1540px) {
  #career .career_detail-content table th {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_detail-content table th {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_detail-content table th {
    height: auto;
    padding: 1rem;
    width: -moz-fit-content;
    width: fit-content;
    min-width: 85px;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-content table th {
    font-size: 1.3rem;
    padding: 0.75rem 1rem;
    min-width: 7.5rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_detail-content table th br {
    display: none;
  }
}
#career .career_detail-content table td {
  width: calc(100% - 15.6rem);
  padding-left: 2.5rem;
  font-size: 1.8rem;
  line-height: 1.7;
}
@media screen and (max-width: 1540px) {
  #career .career_detail-content table td {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 991px) {
  #career .career_detail-content table td {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_detail-content table td {
    width: 100%;
    padding-left: 0;
    padding-top: 1rem;
  }
}
@media screen and (max-width: 574px) {
  #career .career_detail-content table td {
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  #career .career_detail-content table th, #career .career_detail-content table td {
    display: block;
  }
}

#effort .d-inline-block {
  display: inline-block;
}
#effort .catch {
  padding: 14.5rem 0 24rem;
}
@media screen and (max-width: 1350px) {
  #effort .catch {
    padding: 10rem 0 18rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .catch {
    padding: 4rem 0 5rem;
  }
}
#effort .catch h2 {
  position: relative;
  font-weight: 900;
  font-size: 5rem;
  line-height: 1.5;
  letter-spacing: 0.1rem;
}
@media screen and (max-width: 1350px) {
  #effort .catch h2 {
    font-size: 4rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .catch h2 {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .catch h2 {
    font-size: 2.5rem;
  }
}
#effort .catch h2 .line {
  position: relative;
}
#effort .catch h2 .line::after {
  content: "";
  width: 8rem;
  height: 7rem;
  background: url(../images/common/title_right.png) no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  bottom: -1rem;
  left: -0.5rem;
}
@media screen and (max-width: 1350px) {
  #effort .catch h2 .line::after {
    width: 6rem;
    height: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .catch h2 .line::after {
    width: 3.5rem;
    height: 2.5rem;
    bottom: 0;
  }
}
#effort .catch .catch_text {
  font-size: 2rem;
  line-height: 2;
  letter-spacing: -0.05rem;
  margin-top: 4.5rem;
  font-weight: 500;
  flex: 1;
}
@media screen and (max-width: 1540px) {
  #effort .catch .catch_text {
    font-size: 1.8rem;
    padding-right: 3rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .catch .catch_text {
    font-size: 1.3rem;
  }
}
#effort .catch .catch_text .strong {
  font-weight: bold;
}
#effort .catch .catch_text .line {
  margin-right: 0.25rem;
  position: relative;
  display: inline-block;
  z-index: -1;
}
#effort .catch .catch_text .line::before {
  content: "";
  width: 95%;
  height: 15px;
  background: #f4c542;
  position: absolute;
  bottom: 0.2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  opacity: 0.6;
}
@media screen and (max-width: 574px) {
  #effort .catch .catch_text .line::before {
    height: 1rem;
  }
}
#effort .catch_content {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 1.5rem;
}
@media screen and (max-width: 991px) {
  #effort .catch_content {
    margin-top: 4rem;
    flex-direction: column;
  }
}
@media screen and (max-width: 574px) {
  #effort .catch_content {
    margin-top: 2.5rem;
    gap: 3rem;
  }
}
#effort .catch .catch_image {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  width: 41%;
  position: relative;
  z-index: 0;
}
@media screen and (max-width: 991px) {
  #effort .catch .catch_image {
    width: 100%;
    margin-left: 3rem;
  }
}
#effort .catch .catch_image img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 991px) {
  #effort .catch .catch_image img {
    aspect-ratio: 375/280;
    -o-object-fit: cover;
       object-fit: cover;
    width: 58%;
  }
}
@media screen and (max-width: 767px) {
  #effort .catch .catch_image img {
    aspect-ratio: auto;
    width: 65%;
  }
}
#effort .catch .catch_image-bottom {
  margin-top: 10rem;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 991px) {
  #effort .catch .catch_image-bottom {
    margin-top: 4rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .catch .catch_image-bottom {
    flex-direction: column;
    align-items: center;
  }
}
#effort .catch .catch_image-bottom img {
  border-radius: 1.5rem;
}
@media screen and (max-width: 991px) {
  #effort .catch .catch_image-bottom img {
    aspect-ratio: 375/280;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media screen and (max-width: 767px) {
  #effort .catch .catch_image-bottom img {
    aspect-ratio: auto;
  }
}
#effort .catch .catch_image-bottom-1 {
  width: 53%;
}
@media screen and (max-width: 991px) {
  #effort .catch .catch_image-bottom-1 {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  #effort .catch .catch_image-bottom-1 {
    width: 99%;
  }
}
#effort .catch .catch_image-bottom-2 {
  width: 40%;
  margin-left: -2.5rem;
  margin-bottom: -9rem;
}
@media screen and (max-width: 767px) {
  #effort .catch .catch_image-bottom-2 {
    width: 65%;
    margin-left: auto;
    margin-bottom: 0;
    margin-top: -1.5rem;
    margin-right: 2rem;
  }
}
#effort .department {
  padding: 17rem 0;
  background: #74cfe3;
}
@media screen and (max-width: 1540px) {
  #effort .department {
    padding: 10rem 0;
  }
}
@media screen and (max-width: 767px) {
  #effort .department {
    padding: 3rem 0 6rem;
  }
}
#effort .department .title {
  color: #000;
}
#effort .department_list {
  margin-top: 15rem;
  display: flex;
  flex-direction: column;
  gap: 6.4rem;
}
@media screen and (max-width: 1350px) {
  #effort .department_list {
    margin-top: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_list {
    margin-top: 5rem;
    gap: 3.9rem;
  }
}
#effort .department_item {
  position: relative;
  background: #fff;
  box-shadow: -10.607px 10.607px 0px 0px rgba(0, 140, 180, 0.2);
  border-radius: 5rem 0 0 5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 9rem;
  padding: 10rem 12rem;
  z-index: 0;
}
@media screen and (max-width: 1540px) {
  #effort .department_item {
    gap: 4.8rem;
    padding: 8rem 4.8rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .department_item {
    border-radius: 3rem 0 0 3rem;
    padding: 4.5rem 3rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .department_item {
    gap: 2.4rem;
    align-items: flex-start;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item {
    gap: 1rem;
    padding: 3.2rem 0.2rem 3.2rem 1.3rem;
    box-shadow: -5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#effort .department_item::before {
  content: "";
  width: 55%;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
#effort .department_item:after {
  content: "";
  width: calc((100vw - 100%) / 2 + 1rem);
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  right: 2px;
  z-index: -2;
  transform: translateX(100%);
  box-shadow: -10.607px 10.607px 0px 0px rgba(0, 140, 180, 0.2);
}
@media screen and (max-width: 574px) {
  #effort .department_item:after {
    box-shadow: -5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#effort .department_item .num {
  position: absolute;
  left: 7.2rem;
  top: 0;
  transform: translateY(-50%);
  font-weight: bold;
  font-size: 12rem;
  letter-spacing: 0.07rem;
}
@media screen and (max-width: 767px) {
  #effort .department_item .num {
    font-size: 6rem;
    left: 3rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item .num {
    font-size: 4.5rem;
  }
}
#effort .department_item.rev {
  box-shadow: 11.147px 10.037px 0px 0px rgba(0, 140, 180, 0.2);
  border-radius: 0 5rem 5rem 0;
  justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  #effort .department_item.rev {
    border-radius: 0 3rem 3rem 0;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item.rev {
    box-shadow: 5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
    padding: 3.2rem 1.3rem 3.2rem 0.2rem;
  }
}
#effort .department_item.rev::before {
  content: "";
  width: 55%;
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
#effort .department_item.rev:after {
  content: "";
  width: calc((100vw - 100%) / 2 + 1rem);
  height: 100%;
  background: #fff;
  position: absolute;
  top: 0;
  left: 2px;
  right: auto;
  z-index: -2;
  transform: translateX(-100%);
  box-shadow: 11.147px 10.037px 0px 0px rgba(0, 140, 180, 0.2);
}
@media screen and (max-width: 574px) {
  #effort .department_item.rev:after {
    box-shadow: 5.607px 5.607px 0px 0px rgba(0, 140, 180, 0.2);
  }
}
#effort .department_item.rev .num {
  right: 7.2rem;
  left: auto;
}
@media screen and (max-width: 767px) {
  #effort .department_item.rev .num {
    right: 3rem;
  }
}
#effort .department_item-title {
  display: flex;
  align-items: center;
  flex-direction: column;
}
#effort .department_item-title .icon {
  width: 21rem;
  height: 21rem;
  display: flex;
  justify-content: center;
  align-items: center;
  background: url(../images/effort/icon_bfg.png) no-repeat;
  background-size: contain;
  background-position: center;
}
@media screen and (max-width: 1350px) {
  #effort .department_item-title .icon {
    width: 15rem;
    height: 15rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .department_item-title .icon {
    width: 10rem;
    height: 10rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-title .icon {
    width: 8.4rem;
    height: 8.4rem;
  }
}
#effort .department_item-title .icon img {
  width: 15rem;
  display: block;
}
@media screen and (max-width: 1350px) {
  #effort .department_item-title .icon img {
    width: 10rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .department_item-title .icon img {
    width: 7.5rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-title .icon img {
    width: 5.5rem;
  }
}
#effort .department_item-title h2 {
  writing-mode: vertical-rl;
  font-size: 8.8rem;
  font-weight: bold;
  letter-spacing: 0.07rem;
}
@media screen and (max-width: 1350px) {
  #effort .department_item-title h2 {
    font-size: 6rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .department_item-title h2 {
    font-size: 5rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-title h2 {
    font-size: 3.5rem;
    margin-top: -2rem;
  }
}
#effort .department_item-title h2 .en {
  font-size: 10.5rem;
  writing-mode: vertical-rl;
  text-orientation: upright;
  letter-spacing: -0.4rem;
}
@media screen and (max-width: 1350px) {
  #effort .department_item-title h2 .en {
    font-size: 8rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .department_item-title h2 .en {
    font-size: 6rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-title h2 .en {
    font-size: 4.1rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .department_item-title h2 br {
    display: none;
  }
}
#effort .department_item-ballon {
  position: relative;
  width: 78.6rem;
  height: 14.5rem;
  background: url(../images/career/ballon.png) no-repeat;
  background-size: contain;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  padding: 0 2.4rem 1rem;
  margin-bottom: 5rem;
}
@media screen and (max-width: 1350px) {
  #effort .department_item-ballon {
    width: 55rem;
    height: 12rem;
  }
}
@media screen and (max-width: 991px) {
  #effort .department_item-ballon {
    height: 9rem;
    width: 45rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .department_item-ballon {
    width: 100%;
    height: 9rem;
    background: url(../images/effort/ballon_sp.png) no-repeat;
    background-size: contain;
    background-position: center;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-ballon {
    height: 7rem;
    padding: 0 1.4rem 0.5rem;
  }
}
#effort .department_item-ballon.rev {
  background: url(../images/career/ballon_rev.png) no-repeat;
  background-size: contain;
  background-position: center;
}
@media screen and (max-width: 767px) {
  #effort .department_item-ballon.rev {
    width: 100%;
    background: url(../images/effort/ballon_rev_sp.png) no-repeat;
    background-size: contain;
    background-position: center;
  }
}
#effort .department_item-ballon p {
  font-size: 3rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.8;
}
@media screen and (max-width: 1350px) {
  #effort .department_item-ballon p {
    font-size: 2rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-ballon p {
    font-size: 1.45rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .department_item-text {
    flex: 1;
  }
}
#effort .department_item-text h3 {
  font-weight: 700;
  letter-spacing: 0;
  margin-top: 6.4rem;
  font-size: 4rem;
  font-weight: bold;
}
@media screen and (max-width: 1540px) {
  #effort .department_item-text h3 {
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 1350px) {
  #effort .department_item-text h3 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 767px) {
  #effort .department_item-text h3 {
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-text h3 {
    margin-top: 2.4rem;
    font-size: 1.8rem;
  }
}
#effort .department_item-text > p {
  margin-top: 2.4rem;
  font-size: 1.9rem;
  line-height: 2.2;
  letter-spacing: 0.1rem;
  font-weight: 500;
}
@media screen and (max-width: 1540px) {
  #effort .department_item-text > p {
    font-size: 1.6rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-text > p {
    margin-top: 2.4rem;
    font-size: 1.25rem;
    letter-spacing: 0;
  }
}
@media screen and (max-width: 1350px) {
  #effort .department_item-text .pc_only {
    display: none;
  }
}
#effort .department_item-text ul {
  margin-top: 4.8rem;
  display: flex;
  flex-direction: column;
  gap: 4.8rem;
}
@media screen and (max-width: 991px) {
  #effort .department_item-text ul {
    gap: 2.4rem;
    margin-top: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-text ul {
    gap: 1.6rem;
  }
}
#effort .department_item-text ul li h3 {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  margin-top: 0;
}
@media screen and (max-width: 574px) {
  #effort .department_item-text ul li h3 {
    gap: 0.5rem;
  }
}
#effort .department_item-text ul li h3::before {
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background: #000;
  display: block;
  border-radius: 50%;
}
@media screen and (max-width: 574px) {
  #effort .department_item-text ul li h3::before {
    width: 0.7rem;
    height: 0.7rem;
  }
}
#effort .department_item-text ul li p {
  padding-left: 3rem;
  margin-top: 1.6rem;
  font-size: 1.9rem;
  line-height: 2.2;
  letter-spacing: 0.1rem;
  font-weight: 500;
}
@media screen and (max-width: 1540px) {
  #effort .department_item-text ul li p {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .department_item-text ul li p {
    font-size: 1.25rem;
    letter-spacing: 0;
    padding-left: 0;
    margin-top: 1rem;
  }
}
#effort .challenge {
  padding: 18rem 0;
}
@media screen and (max-width: 991px) {
  #effort .challenge {
    padding: 15rem 0;
  }
}
@media screen and (max-width: 767px) {
  #effort .challenge {
    padding: 10rem 0;
  }
}
@media screen and (max-width: 574px) {
  #effort .challenge {
    padding: 6.2rem 0 7.5rem;
  }
}
#effort .challenge h3 {
  text-align: center;
  margin-top: 11rem;
  font-size: 4.8rem;
  line-height: 1.8;
  letter-spacing: 0.1rem;
  font-weight: bold;
}
@media screen and (max-width: 1540px) {
  #effort .challenge h3 {
    font-size: 3.2rem;
    margin-top: 8rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .challenge h3 {
    font-size: 2.4rem;
    margin-top: 5.6rem;
  }
}
#effort .challenge p {
  margin-top: 5.6rem;
  text-align: center;
  line-height: 2;
  letter-spacing: 0.1rem;
  font-size: 2rem;
  font-weight: 500;
}
@media screen and (max-width: 1540px) {
  #effort .challenge p {
    font-size: 1.6rem;
    margin-top: 4rem;
  }
}
@media screen and (max-width: 574px) {
  #effort .challenge p {
    font-size: 1.25rem;
    margin-top: 2.4rem;
    letter-spacing: 0;
  }
}
#effort .challenge_last {
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  margin-top: 4.8rem;
}
@media screen and (max-width: 574px) {
  #effort .challenge_last {
    font-size: 1.55rem;
  }
}
#effort .challenge_last span {
  position: relative;
  display: inline-block;
  z-index: -1;
}
#effort .challenge_last span::before {
  content: "";
  width: 100%;
  height: 19px;
  background: #f4c542;
  position: absolute;
  bottom: -0.5rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
  opacity: 0.6;
}
@media screen and (max-width: 574px) {
  #effort .challenge_last span::before {
    height: 1.2rem;
  }
}

#recruit .subhead_text h1 {
  line-height: 1.2;
  gap: 1rem;
}
#recruit .subhead_text h1 span span {
  font-size: 80%;
}
#recruit .recruit {
  padding: 15rem 0 20rem;
}
@media screen and (max-width: 574px) {
  #recruit .recruit {
    padding: 4rem 0 8rem;
  }
}
#recruit .recruit h2 {
  text-align: center;
  font-size: 5rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  #recruit .recruit h2 {
    font-size: 3.2rem;
  }
}
@media screen and (max-width: 574px) {
  #recruit .recruit h2 {
    font-size: 2.1rem;
  }
}
#recruit .recruit h2 span {
  display: inline-block;
}
@media screen and (max-width: 767px) {
  #recruit .recruit h2 span {
    font-size: 1.8rem;
    display: block;
  }
}
@media screen and (max-width: 574px) {
  #recruit .recruit h2 span {
    font-size: 1.8rem;
  }
}
#recruit .recruit_table {
  margin-top: 10rem;
}
@media screen and (max-width: 574px) {
  #recruit .recruit_table {
    margin-top: 3.7rem;
  }
}
#recruit .recruit_table ul {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 5.4rem;
}
@media screen and (max-width: 1350px) {
  #recruit .recruit_table ul {
    gap: 4.8rem;
  }
}
@media screen and (max-width: 574px) {
  #recruit .recruit_table ul {
    gap: 2rem;
  }
}
#recruit .recruit_table ul li {
  display: flex;
  align-items: baseline;
  gap: 6.4rem;
}
@media screen and (max-width: 1350px) {
  #recruit .recruit_table ul li {
    gap: 4.8rem;
  }
}
@media screen and (max-width: 574px) {
  #recruit .recruit_table ul li {
    flex-direction: column;
    gap: 1.6rem;
  }
}
#recruit .recruit_table ul li:first-child {
  margin-top: 0;
}
#recruit .recruit_table ul li:last-child .txt {
  border-bottom: none;
  padding-bottom: 0;
}
#recruit .recruit_table ul li .ttl {
  width: 21.2rem;
  height: 5.5rem;
  background: #008cb4;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (max-width: 1350px) {
  #recruit .recruit_table ul li .ttl {
    width: 18rem;
    height: 4.5rem;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 991px) {
  #recruit .recruit_table ul li .ttl {
    width: 16rem;
    height: 4rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #recruit .recruit_table ul li .ttl {
    width: auto;
    min-width: 10rem;
    padding: 0 1.5rem;
    font-size: 1.3rem;
  }
}
#recruit .recruit_table ul li .txt {
  font-size: 2rem;
  flex: 1;
  line-height: 2;
  padding-bottom: 5.4rem;
  border-bottom: 1px solid rgba(0, 0, 0, 0.4);
}
@media screen and (max-width: 1350px) {
  #recruit .recruit_table ul li .txt {
    font-size: 1.8rem;
    padding-bottom: 4.8rem;
  }
}
@media screen and (max-width: 991px) {
  #recruit .recruit_table ul li .txt {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 574px) {
  #recruit .recruit_table ul li .txt {
    padding-bottom: 2.4rem;
    font-size: 1.3rem;
    width: 100%;
  }
}

#confirm .confirm {
  padding: 8rem 0 15rem;
}
@media screen and (max-width: 1350px) {
  #confirm .confirm {
    padding: 6rem 0 10rem;
  }
}
@media screen and (max-width: 574px) {
  #confirm .confirm {
    padding: 4rem 0 7rem;
  }
}
#confirm .confirm .container {
  max-width: 795px;
}
#confirm .confirm_lead {
  font-size: 1.8rem;
  line-height: 1.8;
  margin-bottom: 4rem;
}
@media screen and (max-width: 574px) {
  #confirm .confirm_lead {
    font-size: 1.4rem;
    margin-bottom: 2.5rem;
  }
}
#confirm .confirm_table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 6rem;
}
@media screen and (max-width: 574px) {
  #confirm .confirm_table {
    margin-bottom: 2rem;
  }
}
#confirm .confirm_table tr {
  border-bottom: 1px solid #ddd;
}
#confirm .confirm_table tr:first-child {
  border-top: 1px solid #ddd;
}
#confirm .confirm_table th, #confirm .confirm_table td {
  padding: 2rem 2.5rem;
  text-align: left;
  vertical-align: top;
  font-size: 1.8rem;
  line-height: 1.7;
}
@media screen and (max-width: 574px) {
  #confirm .confirm_table th, #confirm .confirm_table td {
    display: block;
    width: 100%;
    font-size: 1.3rem;
  }
}
#confirm .confirm_table th {
  white-space: nowrap;
  font-weight: bold;
  background: #e5f3f7;
  width: 22rem;
}
@media screen and (max-width: 767px) {
  #confirm .confirm_table th {
    width: 16rem;
  }
}
@media screen and (max-width: 574px) {
  #confirm .confirm_table th {
    padding: 1.5rem 1.6rem;
    border-bottom: none;
    width: 100%;
  }
}
@media screen and (max-width: 574px) {
  #confirm .confirm_table td {
    padding: 0.5rem 1.6rem 1.5rem;
  }
}
#confirm .confirm_actions p {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
}
@media screen and (max-width: 574px) {
  #confirm .confirm_actions p {
    flex-direction: column-reverse;
    gap: 1.5rem;
  }
}
#confirm .confirm_actions p br {
  display: none;
}
#confirm .confirm_back_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24.2rem;
  height: 6.3rem;
  background: #fff;
  border: 2px solid #008cb4;
  border-radius: 1rem;
  color: #008cb4;
  font-size: 1.7rem;
  font-weight: bold;
  letter-spacing: 0.05rem;
  cursor: pointer;
  transition: 0.3s;
}
@media (min-width: 992px) {
  #confirm .confirm_back_btn:hover {
    background: #008cb4;
    color: #fff;
  }
}
@media screen and (max-width: 574px) {
  #confirm .confirm_back_btn {
    width: 16rem;
    height: 4.2rem;
    border-radius: 0.5rem;
    font-size: 1.3rem;
  }
}
#confirm .confirm_send_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24.2rem;
  height: 6.3rem;
  background: #008cb4;
  border: none;
  border-radius: 1rem;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  cursor: pointer;
  transition: 0.3s;
}
@media (min-width: 992px) {
  #confirm .confirm_send_btn:hover {
    background: #f9cc50;
    color: #000;
  }
}
@media screen and (max-width: 574px) {
  #confirm .confirm_send_btn {
    width: 16rem;
    height: 4.2rem;
    border-radius: 0.5rem;
    font-size: 1.4rem;
  }
}
#confirm .wpcf7 {
  margin: 0;
}
#confirm .wpcf7-response-output {
  display: none !important;
}

#thanks .thanks,
#thanks .notfound,
#notfound .thanks,
#notfound .notfound {
  padding: 10rem 0 15rem;
}
@media screen and (max-width: 1350px) {
  #thanks .thanks,
  #thanks .notfound,
  #notfound .thanks,
  #notfound .notfound {
    padding: 8rem 0 10rem;
  }
}
@media screen and (max-width: 574px) {
  #thanks .thanks,
  #thanks .notfound,
  #notfound .thanks,
  #notfound .notfound {
    padding: 6rem 0 8rem;
  }
}
#thanks .thanks_content,
#thanks .notfound_content,
#notfound .thanks_content,
#notfound .notfound_content {
  text-align: center;
}
#thanks .thanks_content p,
#thanks .notfound_content p,
#notfound .thanks_content p,
#notfound .notfound_content p {
  font-size: 1.8rem;
  line-height: 2;
  margin-bottom: 1rem;
}
@media screen and (max-width: 574px) {
  #thanks .thanks_content p,
  #thanks .notfound_content p,
  #notfound .thanks_content p,
  #notfound .notfound_content p {
    font-size: 1.4rem;
  }
}
#thanks .thanks_content .entry_btn,
#thanks .notfound_content .entry_btn,
#notfound .thanks_content .entry_btn,
#notfound .notfound_content .entry_btn {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 1.2rem;
  padding: 0 3rem;
  width: -moz-fit-content;
  width: fit-content;
  height: 6.3rem;
  background: #008cb4;
  border: none;
  border-radius: 1rem;
  color: #fff;
  text-decoration: none;
  font-size: 2rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  margin-top: 5rem;
  transition: background 0.3s, color 0.3s;
}
@media (min-width: 992px) {
  #thanks .thanks_content .entry_btn:hover,
  #thanks .notfound_content .entry_btn:hover,
  #notfound .thanks_content .entry_btn:hover,
  #notfound .notfound_content .entry_btn:hover {
    background: #f9cc50;
    color: #000;
  }
}
@media screen and (max-width: 574px) {
  #thanks .thanks_content .entry_btn,
  #thanks .notfound_content .entry_btn,
  #notfound .thanks_content .entry_btn,
  #notfound .notfound_content .entry_btn {
    height: 4.2rem;
    border-radius: 0.5rem;
    font-size: 1.3rem;
    padding: 0 2rem;
    gap: 0.8rem;
    margin-top: 3.5rem;
  }
}
#thanks .thanks_content .entry_btn .entry_btn-icon,
#thanks .notfound_content .entry_btn .entry_btn-icon,
#notfound .thanks_content .entry_btn .entry_btn-icon,
#notfound .notfound_content .entry_btn .entry_btn-icon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  transition: filter 0.3s;
}