@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Zen+Kurenaido&display=swap");
html,
body,
main,
nav,
section,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
input,
textarea,
button,
figure,
blockquote {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

article,
header,
footer,
aside,
figure,
figcaption,
nav,
section {
  display: block;
}

body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

ol,
ul {
  list-style: none;
  list-style-type: none;
  padding: 0;
}

a {
  text-decoration: none;
}

address,
cite {
  font-style: normal;
}

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

/*iOS*/
/* iOSでのデフォルトスタイルをリセット */
input[type=submit],
input[type=button] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
       appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  cursor: pointer;
}

input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration {
  display: none;
}

input[type=submit]::focus,
input[type=button]::focus {
  outline-offset: -2px;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html {
  font-size: 50%;
  overflow-x: hidden;
}
@media print, screen and (min-width: 768px) {
  html {
    font-size: 56%;
  }
}
@media print, screen and (min-width: 1280px) {
  html {
    font-size: 62.5%;
  }
}

body {
  font-size: 16px;
  font-size: 1.6rem;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 500;
  color: #333;
}

main {
  padding-top: 6rem;
}
@media print, screen and (min-width: 1024px) {
  main {
    padding-top: 8.5rem;
  }
}

p,
li,
dt,
dd,
td {
  line-height: 1.5;
  font-weight: 500;
}

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

span {
  font-weight: inherit;
}

a {
  color: #333;
  /*マウスオーバー切り替え秒数*/
  -webkit-transition: 0.3s;
  transition: 0.3s;
  font-weight: inherit;
}

@media print, screen and (min-width: 768px) {
  br.under768 {
    display: none;
  }
}
@media print, screen and (min-width: 1024px) {
  br.under1024 {
    display: none;
  }
}

.inner {
  width: 90%;
  margin: 0 auto;
}
.inner.max1400 {
  max-width: 1400px;
}

h2.top-title {
  font-size: min(8vw, 5.4rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
  color: #003399;
}
h2.top-title::first-letter {
  color: #78b300;
}
h2.top-title span {
  display: block;
  font-size: 2rem;
  color: #333;
}

section.page_top {
  margin-top: clamp(3rem, 4vw, 6.4rem);
  width: 100%;
  aspect-ratio: 10/5;
  max-height: 65.5rem;
  overflow-x: hidden;
}
section.page_top .inner {
  position: relative;
  z-index: -1;
  height: 100%;
  display: grid;
  place-items: center start;
}
section.page_top .inner::before {
  content: "";
  width: 100vw;
  aspect-ratio: 10/5;
  max-height: 65.5rem;
  background: center/cover no-repeat;
  border-top-left-radius: clamp(4rem, 5vw, 8rem);
  border-bottom-left-radius: clamp(4rem, 5vw, 8rem);
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
section.page_top .inner.requirements::before {
  background-image: url(../img/requirements/page_top.webp);
}
section.page_top .inner.benefits::before {
  background-image: url(../img/benefits/page_top.webp);
}
section.page_top h1.page_title {
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(4rem, 5vw, 9rem);
  font-weight: bold;
  text-shadow: 0.5rem 0.5rem 0.3rem rgba(0, 0, 0, 0.5);
  padding-left: clamp(4rem, 5vw, 8rem);
}
@media print, screen and (min-width: 1024px) {
  section.page_top h1.page_title {
    padding-left: calc(clamp(5rem, 6vw, 10rem) + clamp(4rem, 5vw, 8rem));
  }
}

#header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999999999;
  width: 100%;
  height: 6rem;
  background-color: #fff;
}
@media print, screen and (min-width: 1024px) {
  #header {
    height: 8.5rem;
  }
}
#header .inner {
  max-width: 1715px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 4rem;
}
#header p.logo img {
  height: min(6vw, 4rem);
}
@media print, screen and (min-width: 1024px) {
  #header p.logo img {
    height: min(2vw, 4rem);
  }
}
#header nav.pc_nav {
  display: none;
}
@media print, screen and (min-width: 1024px) {
  #header nav.pc_nav {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    max-width: 1080px;
    height: 100%;
    padding: 2rem 0;
  }
}
#header nav.pc_nav ul {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#header nav.pc_nav ul li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -ms-flex-item-align: stretch;
      align-self: stretch;
  -webkit-transform: skewX(-20deg);
          transform: skewX(-20deg);
  border-left: solid 0.1rem #78b300;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#header nav.pc_nav ul li:last-of-type {
  border-right: solid 0.1rem #78b300;
}
#header nav.pc_nav ul li a {
  height: 100%;
  display: grid;
  place-items: center;
  font-weight: bold;
  -webkit-transform: skewX(20deg);
          transform: skewX(20deg);
}
#header nav.pc_nav ul li:hover {
  background-color: #78b300;
}
#header nav.pc_nav ul li:hover a {
  color: #fff;
}
#header button.menu_trigger {
  position: relative;
  width: 30px;
  height: 100%;
  background-color: transparent;
}
@media print, screen and (min-width: 1024px) {
  #header button.menu_trigger {
    display: none;
  }
}
#header button.menu_trigger span {
  display: block;
  width: 30px;
  height: 2px;
  background-color: #78b300;
  position: absolute;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#header button.menu_trigger span:nth-of-type(1) {
  top: 50%;
}
#header button.menu_trigger span:nth-of-type(2) {
  top: calc(50% - 12px);
}
#header button.menu_trigger span:nth-of-type(3) {
  top: calc(50% + 12px);
}
#header button.menu_trigger.active span:nth-of-type(1) {
  opacity: 0;
}
#header button.menu_trigger.active span:nth-of-type(2) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
#header button.menu_trigger.active span:nth-of-type(3) {
  top: 50%;
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
#header .overlay {
  position: fixed;
  top: 6rem;
  left: 0;
  z-index: 99999;
  width: 100%;
  height: calc(100dvh - 6rem);
  background-color: #fff;
  -webkit-transform: translateX(100vw);
          transform: translateX(100vw);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#header .overlay.active {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  opacity: 1;
  visibility: visible;
}
#header nav.sp_menu ul li {
  border-bottom: solid 1px #cccccc;
}
#header nav.sp_menu ul li a {
  display: block;
  padding: 0.8em 0;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
}

#r-top #header nav.pc_nav ul li.menu-recruit,
#r-top #header nav.sp_menu ul li.menu-recruit {
  background-color: #78b300;
}
#r-top #header nav.pc_nav ul li.menu-recruit a,
#r-top #header nav.sp_menu ul li.menu-recruit a {
  color: #fff;
}

#r-requirements #header nav.pc_nav ul li.menu-requirements,
#r-requirements #header nav.sp_menu ul li.menu-requirements {
  background-color: #78b300;
}
#r-requirements #header nav.pc_nav ul li.menu-requirements a,
#r-requirements #header nav.sp_menu ul li.menu-requirements a {
  color: #fff;
}

#r-benefits #header nav.pc_nav ul li.menu-benefits,
#r-benefits #header nav.sp_menu ul li.menu-benefits {
  background-color: #78b300;
}
#r-benefits #header nav.pc_nav ul li.menu-benefits a,
#r-benefits #header nav.sp_menu ul li.menu-benefits a {
  color: #fff;
}

#r-interview #header nav.pc_nav ul li.menu-interview,
#r-interview #header nav.sp_menu ul li.menu-interview {
  background-color: #78b300;
}
#r-interview #header nav.pc_nav ul li.menu-interview a,
#r-interview #header nav.sp_menu ul li.menu-interview a {
  color: #fff;
}

#footer .link-area {
  text-align: center;
}
#footer .link-area p {
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
#footer .link-area .contact-button {
  margin: 0 2rem;
}
#footer .link-area .contact-button a {
  background: #78b300;
  display: block;
  color: #FFF;
  font-size: 1.6rem;
  font-weight: bold;
  border-radius: 5rem;
  padding: 0 3rem;
  border: solid 0.1rem #78b300;
  line-height: 6rem;
  width: 100%;
  max-width: 430px;
  margin: 0 auto;
}
#footer .link-area .contact-button a:hover {
  background-color: #003399;
  border: solid 0.1rem #fff;
}
#footer .link-area .contact-button a::before {
  content: "";
  width: 3rem;
  height: 3rem;
  background: url(../img/icon_mail.png) no-repeat;
  background-size: contain;
  background-position: center;
  display: inline-block;
  vertical-align: middle;
  margin-right: 1rem;
}
#footer .link-area .contact-button a::after {
  display: inline-block;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-top: solid 0.3rem #FFF;
  border-right: solid 0.3rem #FFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-left: 1rem;
  vertical-align: middle;
}
#footer .topBtn {
  display: block;
  position: fixed;
  bottom: 0;
  right: 0;
  width: 50px;
  height: 50px;
  background: #78b300;
}
#footer .topBtn span {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  display: block;
  width: 10px;
  height: 10px;
  border-top: solid 1px #FFF;
  border-left: solid 1px #FFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#footer .footer-contents {
  margin-top: clamp(4rem, 5vw, 8rem);
  background: #003399;
  padding: 1rem 0;
}
#footer .footer-contents .footer-logo_area {
  padding-top: 3rem;
  text-align: center;
  color: #FFF;
}
#footer .footer-contents .footer-logo_area address {
  display: inline-block;
  margin: 2rem;
}
#footer .footer-contents .footer-contact_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 2rem 0;
}
#footer .footer-contents .footer-contact_area p {
  margin: 0 2rem;
}
#footer .footer-contents .footer-contact_area p.ft-tel {
  color: #FFF;
  font-size: 4rem;
  font-weight: bold;
  line-height: 6rem;
}
#footer .footer-contents .footer-contact_area p.ft-tel::before {
  content: "";
  width: 4.6rem;
  height: 4.6rem;
  background: url(../img/icon_tel.png) no-repeat;
  background-size: contain;
  background-position: center;
  display: inline-block;
  vertical-align: middle;
}
#footer .footer-contents .footer-contact_area p.ft-contact a {
  background: #78b300;
  display: block;
  color: #FFF;
  font-size: 1.6rem;
  font-weight: bold;
  border-radius: 5rem;
  padding: 0 3rem;
  border: solid 0.1rem #78b300;
  line-height: 6rem;
}
#footer .footer-contents .footer-contact_area p.ft-contact a:hover {
  background-color: #003399;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  border: solid 0.1rem #fff;
}
#footer .footer-contents .footer-contact_area p.ft-contact a::before {
  content: "";
  width: 3rem;
  height: 3rem;
  background: url(../img/icon_mail.png) no-repeat;
  background-size: contain;
  background-position: center;
  display: inline-block;
  vertical-align: middle;
  margin-right: 1rem;
}
#footer .footer-contents .footer-contact_area p.ft-contact a::after {
  display: inline-block;
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-top: solid 0.3rem #FFF;
  border-right: solid 0.3rem #FFF;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin-left: 1rem;
  vertical-align: middle;
}
#footer .footer-contents .footer-contents_area {
  width: 100%;
}
#footer .footer-contents .footer-contents_area .footer-navi {
  padding: 2rem 0 1rem;
}
#footer .footer-contents .footer-contents_area .footer-navi .menu_list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#footer .footer-contents .footer-contents_area .footer-navi .menu_list li {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  text-align: center;
  border-right: solid 1px #FFF;
  margin-bottom: 1rem;
}
#footer .footer-contents .footer-contents_area .footer-navi .menu_list li:first-of-type {
  border-left: solid 1px #FFF;
}
#footer .footer-contents .footer-contents_area .footer-navi .menu_list li a {
  position: relative;
  display: block;
  color: #FFF;
  padding: 0 1rem;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#footer .footer-contents .footer-contents_area .footer-navi .menu_list li a:hover {
  text-decoration: underline;
}

.copy {
  background: #FFF;
}
.copy p {
  text-align: center;
  line-height: 5rem;
  font-weight: bold;
  color: #003399;
}

/* スライダー全体 */
#r-top .swiper_container {
  position: relative;
  width: 100%;
  overflow: hidden;
}
#r-top .swiper_container .swiper {
  overflow: visible !important;
  padding-bottom: 60px;
}
@media print, screen and (min-width: 1400px) {
  #r-top .swiper_container .swiper {
    padding-bottom: 110px;
  }
}
#r-top .swiper_container .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}
#r-top .swiper_container .swiper .swiper-wrapper .swiper-slide {
  -webkit-transition: -webkit-transform 0.5s ease-in-out;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}
#r-top .swiper_container .swiper .swiper-wrapper .swiper-slide:nth-child(odd) {
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
  /* 数字を大きくするほど差が開きます */
}
#r-top .swiper_container .swiper .swiper-wrapper .swiper-slide {
  /* スライドの画像 */
}
#r-top .swiper_container .swiper .swiper-wrapper .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 20%;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
#r-top .swiper_container .catchwrap {
  position: absolute;
  top: 73%;
  left: 12%;
  z-index: 10;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  max-width: 1400px;
}
@media print, screen and (min-width: 480px) {
  #r-top .swiper_container .catchwrap {
    top: 72%;
    left: 12%;
  }
}
@media print, screen and (min-width: 768px) {
  #r-top .swiper_container .catchwrap {
    top: 71%;
    left: 12%;
  }
}
@media print, screen and (min-width: 1024px) {
  #r-top .swiper_container .catchwrap {
    top: 74%;
    left: 12%;
  }
}
@media print, screen and (min-width: 1280px) {
  #r-top .swiper_container .catchwrap {
    top: 71%;
    left: 12%;
  }
}
@media print, screen and (min-width: 1400px) {
  #r-top .swiper_container .catchwrap {
    top: 74%;
    left: 12%;
  }
}
#r-top .swiper_container .catchwrap p.blue_block {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #2260a6;
  display: inline-block;
  color: #fff;
  font-weight: bold;
  font-size: clamp(16px, 2.5vw, 48px);
  margin: 10px;
}
#r-top .swiper_container02 {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding-bottom: 60px;
  /* ボタンを置くための余白を下に作る */
  /* ボタンの入れ物 */
}
#r-top .swiper_container02 .swiper-button-controls {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  gap: 20px;
  max-width: 1400px;
  margin-top: 90px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 768px) {
  #r-top .swiper_container02 .swiper-button-controls {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 1400px) {
  #r-top .swiper_container02 .swiper-button-controls {
    max-width: 1400px;
    margin: 90px auto 0;
  }
}
#r-top .swiper_container02 .swiper-button-controls {
  /* Swiperデフォルトの絶対配置を解除 */
}
#r-top .swiper_container02 .swiper-button-controls .swiper-button-next,
#r-top .swiper_container02 .swiper-button-controls .swiper-button-prev {
  position: static;
  margin: 0;
  width: 50px;
  height: 50px;
}
@media print, screen and (min-width: 1024px) {
  #r-top .swiper_container02 .swiper-button-controls .swiper-button-next,
  #r-top .swiper_container02 .swiper-button-controls .swiper-button-prev {
    width: 70px;
    height: 70px;
  }
}
#r-top .swiper_container02 .swiper {
  overflow: visible !important;
  padding-bottom: 20px;
}
@media print, screen and (min-width: 1024px) {
  #r-top .swiper_container02 .swiper {
    padding-bottom: 0px;
  }
}
#r-top .swiper_container02 .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}
#r-top .swiper_container02 .swiper .swiper-wrapper .swiper-slide {
  -webkit-transition: -webkit-transform 0.5s ease-in-out;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}
#r-top .swiper_container02 .swiper .swiper-wrapper .swiper-slide:nth-child(odd) {
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
  /* 数字を大きくするほど差が開きます */
}
#r-top .swiper_container02 .swiper .swiper-wrapper .swiper-slide {
  /* スライドの画像 */
}
#r-top .swiper_container02 .swiper .swiper-wrapper .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
#r-top .swiper_container02 .swiper .swiper-wrapper .swiper-slide dl {
  font-size: clamp(16px, 2.5vw, 24px);
  color: #292929;
}
#r-top .swiper_container02 .swiper .swiper-wrapper .swiper-slide dl dt {
  font-weight: bold;
}
#r-top {
  /* リクルートトップセクション01 */
}
#r-top #recruit-top01 {
  max-width: 1400px;
  margin: clamp(6rem, 8vw, 15rem) auto;
}
@media print, screen and (min-width: 1024px) {
  #r-top #recruit-top01 {
    max-width: 1400px;
  }
}
#r-top #recruit-top01 h2.top-title {
  margin-bottom: clamp(5rem, 6vw, 10rem);
}
#r-top #recruit-top01 .message {
  margin-bottom: clamp(5rem, 6vw, 10rem);
}
#r-top .message p {
  font-size: clamp(16px, 2.5vw, 40px);
  font-weight: bold;
  margin: 0 20px;
  margin-bottom: clamp(5rem, 6vw, 10rem);
}
@media print, screen and (min-width: 1400px) {
  #r-top .message p {
    font-weight: bold;
    margin: 0;
    margin-bottom: clamp(5rem, 6vw, 10rem);
  }
}
#r-top .btn {
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background-color: #78b200;
  border: solid 0.1rem #78b200;
  color: #fff;
  font-weight: bold;
  padding: 20px 85px;
  font-size: 1.8rem;
  margin: 0 auto 60px;
}
@media print, screen and (min-width: 768px) {
  #r-top .btn {
    padding: 40px 170px;
  }
}
@media print, screen and (min-width: 1280px) {
  #r-top .btn {
    margin: 0 20px;
  }
}
@media print, screen and (min-width: 1400px) {
  #r-top .btn {
    margin: 0;
  }
}
#r-top .btn:hover {
  background-color: #fff;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #78b200;
  border: solid 0.1rem #78b200;
  cursor: pointer;
}
#r-top .btn_center {
  text-align: center;
  margin: 0 auto;
}
#r-top {
  /* recruit-top02_04 */
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
  #r-top .recruit-top02_04 ul.graybg {
    background-color: #f1f1f1;
  }
}
#r-top .recruit-top02_04 ul .graybg {
  background-color: #f1f1f1;
  padding: clamp(2rem, 4vw, 4rem);
}
#r-top .recruit-top02_04 ul .graybg a {
  margin-top: clamp(2rem, 4vw, 4rem);
  margin-bottom: clamp(2rem, 4vw, 4rem);
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul li {
    width: 50%;
  }
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul li .inner {
    max-width: 85%;
    margin: clamp(20px, 2.5vw, 40px) auto 0;
    line-height: 1;
  }
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul li .inner p {
    margin-bottom: clamp(2rem, 4vw, 4rem);
  }
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul li .inner .fontsize_small {
    font-size: clamp(16px, 2.5vw, 32px);
    color: #292929;
  }
}
#r-top .recruit-top02_04 ul li .inner h2:last-of-type {
  margin-bottom: clamp(3rem, 4vw, 6rem);
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul li h2 {
    text-align: left;
  }
}
#r-top .recruit-top02_04 ul li p {
  color: #003399;
  font-weight: bold;
  font-size: clamp(16px, 2.5vw, 32px);
}
@media print, screen and (min-width: 1440px) {
  #r-top .recruit-top02_04 ul li p {
    color: #003399;
    font-weight: bold;
    font-size: clamp(16px, 2.5vw, 32px);
  }
}
#r-top .recruit-top02_04 ul li .fontsize_small {
  color: #292929;
}
#r-top .recruit-top02_04 ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
#r-top {
  /* recruit-top03 */
}
#r-top #recruit-top03 {
  max-width: 100%;
  /* サイト全体の幅に合わせる */
  margin: clamp(6rem, 8vw, 15rem) auto;
}
#r-top #recruit-top03 p {
  color: #003399;
  font-size: 32px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  margin: clamp(5rem, 6vw, 10rem) 0;
}
#r-top #recruit-top03 p span {
  color: #000;
  font-size: 18px;
}
#r-top #recruit-top04 {
  margin-bottom: clamp(6rem, 7vw, 12rem);
}

#r-requirements section.message {
  margin-top: clamp(5rem, 6vw, 10rem);
}
#r-requirements section.message .flex {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(2rem, 4vw, 4rem) 0;
}
@media print, screen and (min-width: 1024px) {
  #r-requirements section.message .flex {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0 clamp(6rem, 7vw, 12rem);
  }
}
#r-requirements section.message .flex .image_area {
  max-width: 64rem;
  margin: 0 auto;
}
@media print, screen and (min-width: 1024px) {
  #r-requirements section.message .flex .image_area {
    width: 45vw;
    margin: 0;
  }
}
@media print, screen and (min-width: 1024px) {
  #r-requirements section.message .flex .message_area {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
#r-requirements section.message .flex .message_area p {
  font-size: 1.8rem;
}
#r-requirements section.message .flex .message_area p.ceo_name {
  margin: clamp(2rem, 4vw, 4rem) 0 0 auto;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: clamp(1.8rem, 2.4vw, 2.4rem);
}
#r-requirements section.message .flex .message_area p.ceo_name span {
  font-size: clamp(2.4rem, 3.2vw, 3.2rem);
}
#r-requirements section.requirements {
  margin-top: calc(2 * clamp(4rem, 5vw, 8rem));
  padding: clamp(5rem, 6vw, 10rem) 0;
  background-color: #edf1f8;
}
#r-requirements section.requirements .inner {
  max-width: 890px;
}
#r-requirements section.requirements h3.catch {
  margin: clamp(5rem, 6vw, 10rem) auto 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #003399;
  font-size: min(6vw, 3.2rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
#r-requirements section.requirements dl.requirements_list {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 1rem 0;
  border-top: 0.1rem solid #003399;
}
@media print, screen and (min-width: 768px) {
  #r-requirements section.requirements dl.requirements_list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 0;
  }
}
#r-requirements section.requirements dl.requirements_list dt {
  color: #003399;
  font-size: 1.8rem;
  font-weight: bold;
  padding-top: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  #r-requirements section.requirements dl.requirements_list dt {
    width: 20rem;
    border-bottom: 0.1rem solid #003399;
    padding: 1.5rem 0 1.5rem clamp(2rem, 4vw, 4rem);
  }
}
#r-requirements section.requirements dl.requirements_list dd {
  font-size: 1.8rem;
  border-bottom: 0.1rem solid #003399;
  padding-bottom: 1.5rem;
}
@media print, screen and (min-width: 768px) {
  #r-requirements section.requirements dl.requirements_list dd {
    width: calc(100% - 20rem);
    padding: 1.5rem clamp(2rem, 4vw, 4rem) 1.5rem 0;
  }
}
#r-requirements section.work {
  margin: calc(2 * clamp(4rem, 5vw, 8rem)) 0;
}
#r-requirements section.work ul.works_intro {
  margin-top: clamp(5rem, 6vw, 10rem);
  counter-reset: item;
}
#r-requirements section.work ul.works_intro li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  gap: 2rem 0;
}
@media print, screen and (min-width: 1024px) {
  #r-requirements section.work ul.works_intro li {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 0 clamp(4rem, 5vw, 8rem);
  }
}
@media print, screen and (min-width: 1400px) {
  #r-requirements section.work ul.works_intro li {
    gap: 0 calc(2 * clamp(4rem, 5vw, 8rem));
  }
}
#r-requirements section.work ul.works_intro li + li {
  margin-top: clamp(3rem, 4vw, 6rem);
}
#r-requirements section.work ul.works_intro li .image_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 0 clamp(1.6rem, 3.2vw, 3.2rem);
}
@media print, screen and (min-width: 1024px) {
  #r-requirements section.work ul.works_intro li .image_area {
    width: 45%;
    max-width: 62rem;
  }
}
#r-requirements section.work ul.works_intro li .image_area .image {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: -webkit-max-content;
  max-width: -moz-max-content;
  max-width: max-content;
  border-radius: 2rem;
}
#r-requirements section.work ul.works_intro li .image_area .image img {
  border-radius: 2.5rem;
}
@media print, screen and (min-width: 1024px) {
  #r-requirements section.work ul.works_intro li .text_area {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
#r-requirements section.work ul.works_intro li .text_area h3 {
  color: #003399;
  font-size: clamp(2.4rem, 3.2vw, 3.2rem);
  font-weight: bold;
  margin-bottom: 1rem;
}
#r-requirements section.work ul.works_intro li .text_area dl dt {
  font-size: clamp(2rem, 2.4vw, 2.4rem);
  font-weight: bold;
}
#r-requirements section.work ul.works_intro li .text_area dl dt::before {
  counter-increment: item;
  content: counter(item) ".";
}
#r-requirements section.work ul.works_intro li .text_area dl dd {
  margin-top: 0.5rem;
  font-size: 1.8rem;
}
#r-requirements section.work h4 {
  margin-top: clamp(5rem, 6vw, 10rem);
  color: #003399;
  font-size: clamp(2.4rem, 3.2vw, 3.2rem);
  font-weight: bold;
  text-align: center;
}
#r-requirements section.work ul.ability_list {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem clamp(2rem, 4vw, 4rem);
}
#r-requirements section.work ul.ability_list li {
  width: 100%;
}
@media print, screen and (min-width: 480px) {
  #r-requirements section.work ul.ability_list li {
    width: calc((100% - clamp(2rem, 4vw, 4rem)) / 2);
  }
}
@media print, screen and (min-width: 768px) {
  #r-requirements section.work ul.ability_list li {
    width: calc((100% - 2 * clamp(2rem, 4vw, 4rem)) / 3);
  }
}
#r-requirements section.work ul.ability_list li .image img {
  border-radius: 3rem;
}
#r-requirements section.work ul.ability_list li p.caption {
  margin-top: 1rem;
  font-size: clamp(1.8rem, 1.25vw, 2.2rem);
  font-weight: bold;
}

#r-benefits section.benefits {
  margin-top: clamp(5rem, 6vw, 10rem);
}
#r-benefits section.benefits h3 {
  margin-top: clamp(5rem, 6vw, 10rem);
  color: #003399;
  font-size: clamp(2.4rem, 3.2vw, 3.2rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
#r-benefits section.benefits ul.benefits_list {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(2rem, 4vw, 4rem);
}
#r-benefits section.benefits ul.benefits_list li {
  width: 100%;
  max-width: 32rem;
  background-color: #edf1f8;
  padding: clamp(2rem, 4vw, 4rem) 0;
}
@media print, screen and (min-width: 1024px) {
  #r-benefits section.benefits ul.benefits_list li {
    width: calc((100% - 3 * clamp(2rem, 4vw, 4rem)) / 4);
    height: min(25vw, 32rem);
    -ms-flex-item-align: stretch;
        align-self: stretch;
    padding-top: clamp(3rem, 4vw, 6rem);
  }
}
#r-benefits section.benefits ul.benefits_list li dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
#r-benefits section.benefits ul.benefits_list li dl dt {
  color: #003399;
  font-size: clamp(2rem, 2.4vw, 2.4rem);
  font-weight: bold;
}
#r-benefits section.benefits ul.benefits_list li dl dd p {
  font-size: 1.8rem;
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  #r-benefits section.benefits ul.benefits_list li dl dd p {
    font-size: min(1.35vw, 1.8rem);
  }
}
#r-benefits section.benefits ul.benefits_list li dl dd .illust {
  margin: 0 auto;
  background: center/contain no-repeat;
}
#r-benefits section.benefits ul.benefits_list li dl dd .illust.illust01 {
  margin-top: 1rem;
  width: 106px;
  aspect-ratio: 106/93;
  background-image: url(../img/benefits/illust01.webp);
}
#r-benefits section.benefits ul.benefits_list li dl dd .illust.illust02 {
  margin-top: 1rem;
  width: 133px;
  aspect-ratio: 133/71;
  background-image: url(../img/benefits/illust02.webp);
}
#r-benefits section.benefits ul.benefits_list li dl dd .illust.illust03 {
  margin-top: 2rem;
  width: 97px;
  aspect-ratio: 97/63;
  background-image: url(../img/benefits/illust03.webp);
}
#r-benefits section.benefits ul.benefits_list li dl dd .illust.illust04 {
  margin-top: 2rem;
  width: 60px;
  aspect-ratio: 60/87;
  background-image: url(../img/benefits/illust04.webp);
}
#r-benefits section.education {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#r-benefits section.education ul.education_intro {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: clamp(2rem, 4vw, 4rem) 0;
}
@media print, screen and (min-width: 768px) {
  #r-benefits section.education ul.education_intro {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 0 clamp(3rem, 4vw, 6.4rem);
  }
}
#r-benefits section.education ul.education_intro li {
  border-left: 0.8rem solid #78b300;
  padding-left: clamp(1.6rem, 3.2vw, 3.2rem);
}
@media print, screen and (min-width: 768px) {
  #r-benefits section.education ul.education_intro li {
    width: calc((100% - clamp(3rem, 4vw, 6.4rem)) / 2);
    max-width: 52rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
#r-benefits section.education ul.education_intro li h3 {
  font-size: clamp(1.8rem, 2.2vw, 2.2rem);
  font-weight: bold;
}
#r-benefits section.education ul.education_intro li h3::before {
  content: "■";
}
#r-benefits section.education ul.education_intro li p {
  margin-top: 1rem;
}
@media print, screen and (min-width: 1280px) {
  #r-benefits section.education ul.education_intro li p {
    line-height: 2;
  }
}
#r-benefits section.education ul.environment_desc {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem clamp(2rem, 4vw, 4rem);
}
#r-benefits section.education ul.environment_desc li {
  width: 100%;
}
@media print, screen and (min-width: 480px) {
  #r-benefits section.education ul.environment_desc li {
    width: calc((100% - clamp(2rem, 4vw, 4rem)) / 2);
  }
}
@media print, screen and (min-width: 768px) {
  #r-benefits section.education ul.environment_desc li {
    width: calc((100% - 2 * clamp(2rem, 4vw, 4rem)) / 3);
  }
}
#r-benefits section.education ul.environment_desc li .image img {
  border-radius: 3rem;
}
#r-benefits section.education ul.environment_desc li p.caption {
  margin-top: 1rem;
  font-size: clamp(1.8rem, 1.25vw, 2.2rem);
  font-weight: bold;
}
#r-benefits section.flow {
  margin-top: clamp(6rem, 8vw, 15rem);
}
#r-benefits section.flow ul.flow_list {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem 0;
}
@media print, screen and (min-width: 768px) {
  #r-benefits section.flow ul.flow_list {
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(4, auto);
    grid-auto-flow: column;
    gap: 0.5rem clamp(4rem, 5vw, 8rem);
  }
}
#r-benefits section.flow ul.flow_list li {
  border-left: 0.8rem solid #78b300;
  padding-left: clamp(1.6rem, 3.2vw, 3.2rem);
}
#r-benefits section.flow ul.flow_list li dl dt {
  color: #003399;
  font-size: clamp(1.8rem, 2.4vw, 2.4rem);
  font-weight: bold;
}
#r-benefits section.flow ul.flow_list li dl dt span {
  display: inline-block;
  width: 8rem;
}
#r-benefits section.flow ul.flow_list li dl dd {
  margin-top: 1rem;
}
#r-benefits section.flow ul.flow_desc {
  margin-top: clamp(5rem, 6vw, 10rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 2rem clamp(2rem, 4vw, 4rem);
}
#r-benefits section.flow ul.flow_desc li {
  width: 100%;
}
@media print, screen and (min-width: 480px) {
  #r-benefits section.flow ul.flow_desc li {
    width: calc((100% - clamp(2rem, 4vw, 4rem)) / 2);
  }
}
@media print, screen and (min-width: 768px) {
  #r-benefits section.flow ul.flow_desc li {
    width: calc((100% - 2 * clamp(2rem, 4vw, 4rem)) / 3);
  }
}
#r-benefits section.flow ul.flow_desc li .image img {
  border-radius: 3rem;
}
#r-benefits section.flow ul.flow_desc li p.caption {
  margin-top: 1rem;
  font-size: clamp(1.8rem, 1.25vw, 2.2rem);
  font-weight: bold;
}
#r-benefits section.photo {
  margin: clamp(6rem, 8vw, 15rem) 0;
}
#r-benefits section.photo .inner {
  max-width: 1260px;
}
#r-benefits section.photo h3 {
  margin-top: clamp(5rem, 6vw, 10rem);
  color: #003399;
  font-size: clamp(2rem, 3.2vw, 3.2rem);
  font-weight: bold;
  text-align: center;
  line-height: 1.5;
}
#r-benefits section.photo .swiper_container {
  position: relative;
  margin: clamp(5rem, 6vw, 10rem) auto 0;
  width: 100%;
  max-width: 850px;
}
#r-benefits section.photo .swiper_container .swiper {
  border-radius: clamp(2rem, 2vw, 4.5rem);
}
#r-benefits section.photo .swiper_container .swiper-button-prev, #r-benefits section.photo .swiper_container .swiper-button-next {
  width: min(10vw, 6.75rem);
  height: min(10vw, 6.75rem);
  border-radius: 50%;
  background: center/contain no-repeat;
  background-color: #fff;
  margin-top: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
#r-benefits section.photo .swiper_container .swiper-button-prev:hover, #r-benefits section.photo .swiper_container .swiper-button-next:hover {
  background-color: rgba(255, 255, 255, 0.5);
}
#r-benefits section.photo .swiper_container .swiper-button-prev svg, #r-benefits section.photo .swiper_container .swiper-button-next svg {
  display: none;
}
#r-benefits section.photo .swiper_container .swiper-button-prev {
  left: calc(-1 * min(5vw, 3.375rem));
  background-image: url(../img/benefits/left.svg);
}
#r-benefits section.photo .swiper_container .swiper-button-next {
  right: calc(-1 * min(5vw, 3.375rem));
  background-image: url(../img/benefits/right.svg);
}

section {
  scroll-margin-top: 90px;
}

.swiper_container02 {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding-bottom: 60px;
  /* ボタンを置くための余白を下に作る */
  /* ボタンの入れ物 */
}
.swiper_container02 .swiper-button-controls {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: left;
      -ms-flex-pack: left;
          justify-content: left;
  gap: 20px;
  max-width: 1400px;
  margin-top: 90px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .swiper_container02 .swiper-button-controls {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 1400px) {
  .swiper_container02 .swiper-button-controls {
    max-width: 1400px;
    margin: 90px auto 0;
  }
}
.swiper_container02 .swiper-button-controls {
  /* Swiperデフォルトの絶対配置を解除 */
}
.swiper_container02 .swiper-button-controls .swiper-button-next,
.swiper_container02 .swiper-button-controls .swiper-button-prev {
  position: static;
  margin: 0;
  width: 50px;
  height: 50px;
}
@media print, screen and (min-width: 1024px) {
  .swiper_container02 .swiper-button-controls .swiper-button-next,
  .swiper_container02 .swiper-button-controls .swiper-button-prev {
    width: 70px;
    height: 70px;
  }
}
.swiper_container02 .swiper {
  overflow: visible !important;
  padding-bottom: 20px;
}
@media print, screen and (min-width: 1024px) {
  .swiper_container02 .swiper {
    padding-bottom: 0px;
  }
}
.swiper_container02 .swiper .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
          transition-timing-function: linear !important;
}
.swiper_container02 .swiper .swiper-wrapper .swiper-slide {
  -webkit-transition: -webkit-transform 0.5s ease-in-out;
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}
.swiper_container02 .swiper .swiper-wrapper .swiper-slide:nth-child(odd) {
  -webkit-transform: translateY(40px);
          transform: translateY(40px);
  /* 数字を大きくするほど差が開きます */
}
.swiper_container02 .swiper .swiper-wrapper .swiper-slide {
  /* スライドの画像 */
}
.swiper_container02 .swiper .swiper-wrapper .swiper-slide img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 18px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.swiper_container02 .swiper .swiper-wrapper .swiper-slide dl {
  font-size: clamp(16px, 2.5vw, 24px);
  color: #292929;
}
.swiper_container02 .swiper .swiper-wrapper .swiper-slide dl dt {
  font-weight: bold;
}

/* recruit-interview */
#recruit-interview {
  max-width: 100%;
  /* サイト全体の幅に合わせる */
  margin: clamp(4rem, 5vw, 8rem) auto;
}
#recruit-interview p {
  color: #003399;
  font-size: 32px;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  margin: clamp(5rem, 6vw, 10rem) 0;
}
#recruit-interview p span {
  color: #000;
  font-size: 18px;
}

.interviewpage-contents ul {
  margin-bottom: clamp(6rem, 8vw, 15rem);
}
@media print, screen and (min-width: 768px) {
  .interviewpage-contents ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 80px;
    width: 100%;
    max-width: 1400px;
    margin: 0 auto clamp(6rem, 0vw, 15rem);
  }
}
@media print, screen and (min-width: 768px) {
  .interviewpage-contents ul .img_area {
    width: 48%;
  }
}
.interviewpage-contents ul .img_area img {
  width: 100%;
  margin-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
  .interviewpage-contents ul .img_area img {
    width: 100%;
  }
}
.interviewpage-contents ul .img_area ul li.image02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media print, screen and (min-width: 768px) {
  .interviewpage-contents ul .img_area ul li.image02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 20px;
  }
}
.interviewpage-contents ul .img_area ul li.image02 img {
  max-width: none;
  height: auto;
}
@media print, screen and (min-width: 768px) {
  .interviewpage-contents ul .img_area ul li.image02 img {
    width: 50%;
  }
}
.interviewpage-contents ul .img_area ul li.image02 figure img {
  width: 100%;
  margin-bottom: 0;
}
.interviewpage-contents ul .text_area {
  margin: 0 10px;
}
@media print, screen and (min-width: 768px) {
  .interviewpage-contents ul .text_area {
    width: 50%;
  }
}
.interviewpage-contents ul .text_area dt {
  border-left: 0.8rem solid #78b300;
  padding: clamp(1.6rem, 3.2vw, 3.2rem);
  margin-bottom: clamp(1.6rem, 3.2vw, 3.2rem);
}
.interviewpage-contents ul .text_area dt p {
  font-weight: bold;
  font-size: clamp(1.6rem, 2vw, 2.4rem);
}
.interviewpage-contents ul .text_area dd p {
  padding-bottom: clamp(1.6rem, 3.2vw, 3.2rem);
}/*# sourceMappingURL=recruit.css.map */