@charset "UTF-8";
/* default */
/****************************************************************/
/* font family */
/****************************************************************/
/****************************************************************/
/* コンテンツ幅を保って背景全画面 */
/****************************************************************/
/****************************************************************/
/* コンテンツ幅を保って左寄せ */
/****************************************************************/
/****************************************************************/
/* コンテンツ幅を保って右寄せ */
/****************************************************************/
/****************************************************************/
/* コンテンツ幅 */
/****************************************************************/
/****************************************************************/
/* px rem変換 */
/****************************************************************/
/****************************************************************/
/* margin-responsive */
/****************************************************************/
/****************************************************************/
/* padding-responsive */
/****************************************************************/
/****************************************************************/
/* theme-color */
/****************************************************************/
/****************************************************************/
/* font-size */
/****************************************************************/
/****************************************************************/
/* foundation */
html:has(body.-rnew) {
  color: #333;
  font-weight: 500;
  line-break: strict;
}

html:has(body.-rnew), body.-rnew {
  font-size: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-weight: 500;
  color: #333;
}

body span, body object, body iframe,
body h1, body h2, body h3, body h4, body h5, body h6, body p, body blockquote, body pre,
body abbr, body address, body cite, body code,
body del, body dfn, body em, body img, body ins, body kbd, body q, body samp,
body small, body strong, body sub, body sup, body var,
body b, body i,
body dl, body dt, body dd, body ol, body ul, body li,
body fieldset, body form, body label, body legend,
body table, body caption, body tbody, body tfoot, body thead, body tr, body th, body td,
body article, body aside, body canvas, body details, body figcaption, body figure,
body hgroup, body menu, body summary,
body time, body mark, body audio, body video, body picture {
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
}

body.-rnew.common span, body.-rnew.common object, body.-rnew.common iframe,
body.-rnew.common h1, body.-rnew.common h2, body.-rnew.common h3, body.-rnew.common h4, body.-rnew.common h5, body.-rnew.common h6, body.-rnew.common p, body.-rnew.common blockquote, body.-rnew.common pre,
body.-rnew.common abbr, body.-rnew.common address, body.-rnew.common cite, body.-rnew.common code,
body.-rnew.common del, body.-rnew.common dfn, body.-rnew.common em, body.-rnew.common img, body.-rnew.common ins, body.-rnew.common kbd, body.-rnew.common q, body.-rnew.common samp,
body.-rnew.common small, body.-rnew.common strong, body.-rnew.common sub, body.-rnew.common sup, body.-rnew.common var,
body.-rnew.common b, body.-rnew.common i,
body.-rnew.common dl, body.-rnew.common dt, body.-rnew.common dd, body.-rnew.common ol, body.-rnew.common ul, body.-rnew.common li,
body.-rnew.common fieldset, body.-rnew.common form, body.-rnew.common label, body.-rnew.common legend,
body.-rnew.common table, body.-rnew.common caption, body.-rnew.common tbody, body.-rnew.common tfoot, body.-rnew.common thead, body.-rnew.common tr, body.-rnew.common th, body.-rnew.common td,
body.-rnew.common article, body.-rnew.common aside, body.-rnew.common canvas, body.-rnew.common details, body.-rnew.common figcaption, body.-rnew.common figure,
body.-rnew.common hgroup, body.-rnew.common menu, body.-rnew.common summary,
body.-rnew.common time, body.-rnew.common mark, body.-rnew.common audio, body.-rnew.common video, body.-rnew.common picture {
  font-size: 100%;
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-weight: 500;
  color: #333;
}

div, section, nav, footer, header {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
  font-weight: 500;
}

a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

div.btn a {
  -webkit-transition: none;
  transition: none;
}

body.-rnew #dcms_layoutPageBlockPasteArea p {
  color: #333;
}

.container {
  margin-top: 24px;
  margin-bottom: 24px;
}

/* layout */
.l-rn-header {
  background-color: rgba(255, 255, 255, 0.3);
  position: fixed;
  width: 100%;
  left: 0;
  top: 0;
  z-index: 200;
  height: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .l-rn-header {
    height: 90px;
  }
}
.l-rn-header__height {
  height: 60px;
}
@media screen and (min-width: 768px) {
  .l-rn-header__height {
    height: 90px;
  }
}
.l-rn-header__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 1760px;
  padding: 0 16px;
  width: 100%;
  position: static;
}
@media screen and (min-width: 1120px) {
  .l-rn-header__inner {
    padding: 0 24px;
    margin: auto;
  }
}
.l-rn-header__inner__logo {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  max-width: 220px;
}
@media screen and (min-width: 768px) {
  .l-rn-header__inner__logo {
    max-width: 288px;
    gap: 16px;
  }
}
@media screen and (min-width: 1024px) {
  .l-rn-header__inner__logo {
    width: 25%;
  }
}
.l-rn-header__inner__logo a {
  color: #777777;
}
.l-rn-header__inner__logo a:hover {
  opacity: 0.6;
}
.l-rn-header__inner__logo a img {
  display: block;
}
.l-rn-header__inner__nav {
  width: auto;
  margin: auto 0 auto auto;
}
@media (min-width: 1024.9px) {
  .l-rn-header__inner__nav {
    display: block !important;
    position: static;
  }
}
@media (max-width: 1024.8px) {
  .l-rn-header__inner__nav {
    width: 100%;
    padding: 3vw 3vw 5vw 3vw;
    background-color: #ffffff;
    max-height: calc(100vh - 90px);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
}
@media (max-width: 767.8px) {
  .l-rn-header__inner__nav {
    max-height: calc(100vh - 60px);
  }
}

body:has(.p-rn-mv) .l-rn-header__height {
  display: none;
}

body:has(.is-open) .l-rn-header {
  background-color: white;
}

body:not(:has(.p-rn-mv)) .l-rn-header {
  background-color: white;
}

body.is-scrolled .l-rn-header {
  background-color: white;
}

@media (min-width: 1024.9px) {
  .hnav > ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
  }
}
.hnav > ul > li > a {
  color: #333;
  padding: 16px 8px;
}
@media (min-width: 1024.9px) {
  .hnav > ul > li > a {
    padding: 24px 8px;
  }
}
.hnav > ul > li > a:hover {
  text-decoration: underline;
  color: #0A51A2;
}
@media (min-width: 1024.9px) {
  .hnav > ul > li.-custom {
    margin-left: 24px;
  }
}
@media (max-width: 1024.8px) {
  .hnav > ul > li.-custom {
    margin-top: 24px;
  }
  .hnav > ul > li.-custom .dropdown {
    display: -webkit-box !important;
    display: -webkit-flex !important;
    display: -ms-flexbox !important;
    display: flex !important;
    gap: 8px;
    background-color: transparent;
    padding: 0;
  }
  .hnav > ul > li.-custom .dropdown li {
    width: 50%;
  }
  .hnav > ul > li.-custom .dropdown li::before {
    display: none;
  }
  .hnav > ul > li.-custom .dropdown li a {
    padding: 16px 8px;
    background-color: #F5AF2A;
    color: #0A51A2;
    text-align: center;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 8px;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    border-radius: 6px;
  }
  .hnav > ul > li.-custom .dropdown li a::before {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #0A51A2;
    border-right: 2px solid #0A51A2;
    -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
            transform: rotate(45deg);
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}
@media (min-width: 1024.9px) {
  .hnav > ul li.has-child {
    position: relative;
  }
}
@media (max-width: 1024.8px) {
  .hnav > ul li.has-child {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    width: 100%;
  }
  .hnav > ul li.has-child:not([class*=-custom]) {
    border-bottom: 1px solid #dddddd;
  }
}
.hnav > ul li.has-child > a, .hnav > ul li.has-child > .-btn {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  font-weight: 500;
  font-family: "Zen Kaku Gothic New", "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", sans-serif;
}
@media (min-width: 1024.9px) {
  .hnav > ul li.has-child > a::after, .hnav > ul li.has-child > .-btn::after {
    content: "";
    width: 6px;
    height: 6px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg);
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}
.hnav > ul li.has-child > a:hover::after {
  border-color: #0A51A2;
}
.hnav > ul li.has-child .-btn {
  cursor: pointer;
  color: #0A51A2;
  font-size: 18px;
  padding: 24px 32px;
  font-weight: 900;
  border-radius: 6px;
  background-color: #ffc866;
  border: 1px solid #ffc866;
}
@media screen and (min-width: 1025px) and (max-width: 1120px) {
  .hnav > ul li.has-child .-btn {
    padding: 24px 16px;
  }
}
@media (max-width: 1024.8px) {
  .hnav > ul li.has-child .-btn {
    display: none;
  }
}
.hnav > ul li.has-child .-btn::after {
  border-color: #0A51A2;
}
.hnav > ul li.has-child .-btn:hover {
  background-color: transparent;
}
@media (min-width: 1024.9px) {
  .hnav > ul li.has-child .acc-btn {
    display: none;
  }
}
@media (max-width: 1024.8px) {
  .hnav > ul li.has-child .acc-btn {
    width: 32px;
    height: 32px;
    cursor: pointer;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: auto;
  }
  .hnav > ul li.has-child .acc-btn::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg);
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .hnav > ul li.has-child .acc-btn.is-open::after {
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }
}

body.-rnew.common .dropdown, body .dropdown {
  display: none;
}
@media (min-width: 1024.9px) {
  body.-rnew.common .dropdown, body .dropdown {
    position: absolute;
    top: 100%;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    background: #ffffff;
    z-index: 9999;
    -webkit-box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
            box-shadow: 0 0 20px 0 rgba(0, 0, 0, 0.1);
    padding: 16px 24px;
    border-radius: 10px;
  }
  body.-rnew.common .dropdown::before, body .dropdown::before {
    content: "";
    position: absolute;
    top: -6px;
    left: 50%;
    -webkit-transform: translateX(-50%) rotate(45deg);
        -ms-transform: translateX(-50%) rotate(45deg);
            transform: translateX(-50%) rotate(45deg);
    width: 16px;
    height: 16px;
    background-color: #ffffff;
    -webkit-box-shadow: -3px -3px 5px rgba(0, 0, 0, 0.04);
            box-shadow: -3px -3px 5px rgba(0, 0, 0, 0.04);
    z-index: -1;
  }
}
@media (max-width: 1024.8px) {
  body.-rnew.common .dropdown, body .dropdown {
    position: static;
    background: #f8f8f8;
    width: 100%;
    padding: 16px;
  }
}
body.-rnew.common .dropdown li, body .dropdown li {
  margin: 3px 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
body.-rnew.common .dropdown li::before, body .dropdown li::before {
  content: "";
  width: 6px;
  height: 6px;
  border-top: 2px solid #0A51A2;
  border-right: 2px solid #0A51A2;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.-rnew.common .dropdown li a, body .dropdown li a {
  display: block;
  text-decoration: none;
  white-space: nowrap;
  font-size: 15px;
  color: #333;
}
@media (min-width: 1024.9px) {
  body.-rnew.common .dropdown li a, body .dropdown li a {
    padding: 10px 20px 10px 8px;
  }
}
@media (max-width: 1024.8px) {
  body.-rnew.common .dropdown li a, body .dropdown li a {
    width: 100%;
    padding: 5px 10px;
  }
}
body.-rnew.common .dropdown li a:hover, body .dropdown li a:hover {
  color: #0A51A2;
}

@media (max-width: 1024.8px) {
  body.-rnew .l-hamburger, body .l-hamburger {
    display: block;
    margin-left: auto;
    z-index: 11;
    border: none;
    background-color: #0A51A2;
    overflow: hidden;
    border-radius: 100vh;
    position: relative;
  }
}
@media screen and (max-width: 640px) {
  body.-rnew .l-hamburger, body .l-hamburger {
    width: 38px;
    height: 38px;
  }
}
@media screen and (min-width: 640px) and (max-width: 1024.8px) {
  body.-rnew .l-hamburger, body .l-hamburger {
    width: 48px;
    height: 48px;
  }
}
@media (min-width: 1024.9px) {
  body.-rnew .l-hamburger, body .l-hamburger {
    display: none;
  }
}
body.-rnew .l-hamburger__line, body .l-hamburger__line {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 50%;
  height: 2px;
  border-radius: 100vh;
  background-color: #ffffff;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.-rnew .l-hamburger__line:nth-child(1), body .l-hamburger__line:nth-child(1) {
  -webkit-transform: translate(-50%, -8px);
      -ms-transform: translate(-50%, -8px);
          transform: translate(-50%, -8px);
}
@media screen and (min-width: 768px) and (max-width: 1024.8px) {
  body.-rnew .l-hamburger__line:nth-child(1), body .l-hamburger__line:nth-child(1) {
    -webkit-transform: translate(-50%, -9px);
        -ms-transform: translate(-50%, -9px);
            transform: translate(-50%, -9px);
  }
}
body.-rnew .l-hamburger__line:nth-child(3), body .l-hamburger__line:nth-child(3) {
  -webkit-transform: translate(-50%, 6px);
      -ms-transform: translate(-50%, 6px);
          transform: translate(-50%, 6px);
}
@media screen and (min-width: 768px) and (max-width: 1024.8px) {
  body.-rnew .l-hamburger__line:nth-child(3), body .l-hamburger__line:nth-child(3) {
    -webkit-transform: translate(-50%, 7px);
        -ms-transform: translate(-50%, 7px);
            transform: translate(-50%, 7px);
  }
}
body.-rnew .l-hamburger.is-open .l-hamburger__line:nth-child(1), body .l-hamburger.is-open .l-hamburger__line:nth-child(1) {
  -webkit-transform: rotate(45deg) translate(-35%, 6px);
      -ms-transform: rotate(45deg) translate(-35%, 6px);
          transform: rotate(45deg) translate(-35%, 6px);
}
@media screen and (min-width: 768px) and (max-width: 1024.8px) {
  body.-rnew .l-hamburger.is-open .l-hamburger__line:nth-child(1), body .l-hamburger.is-open .l-hamburger__line:nth-child(1) {
    -webkit-transform: rotate(45deg) translate(-35%, 8px);
        -ms-transform: rotate(45deg) translate(-35%, 8px);
            transform: rotate(45deg) translate(-35%, 8px);
  }
}
body.-rnew .l-hamburger.is-open .l-hamburger__line:nth-child(2), body .l-hamburger.is-open .l-hamburger__line:nth-child(2) {
  display: none;
}
body.-rnew .l-hamburger.is-open .l-hamburger__line:nth-child(3), body .l-hamburger.is-open .l-hamburger__line:nth-child(3) {
  -webkit-transform: rotate(-45deg) translate(-35%, -7px);
      -ms-transform: rotate(-45deg) translate(-35%, -7px);
          transform: rotate(-45deg) translate(-35%, -7px);
}
@media screen and (min-width: 768px) and (max-width: 1024.8px) {
  body.-rnew .l-hamburger.is-open .l-hamburger__line:nth-child(3), body .l-hamburger.is-open .l-hamburger__line:nth-child(3) {
    -webkit-transform: rotate(-45deg) translate(-35%, -9px);
        -ms-transform: rotate(-45deg) translate(-35%, -9px);
            transform: rotate(-45deg) translate(-35%, -9px);
  }
}

.l-rn-cta__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.l-rn-cta .cta-item {
  width: 100%;
  text-align: center;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 32px 24px;
}
@media screen and (min-width: 768px) {
  .l-rn-cta .cta-item {
    width: 33.333%;
    padding: 5vw 8px;
  }
}
.l-rn-cta .cta-item__inner {
  background-color: rgba(255, 255, 255, 0.85);
  padding: 24px 16px;
  border-radius: 10px;
  max-width: 480px;
  width: 94%;
  margin: auto;
}
@media screen and (min-width: 1024px) {
  .l-rn-cta .cta-item__inner {
    padding: 40px 32px;
    width: 88%;
  }
}
.l-rn-cta .cta-item__inner .-title {
  color: #0A51A2;
  font-size: 24px;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 4px;
}
@media screen and (min-width: 768px) {
  .l-rn-cta .cta-item__inner .-title {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 1024px) {
  .l-rn-cta .cta-item__inner .-title {
    font-size: 28px;
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .l-rn-cta .cta-item__inner .-title {
    font-size: 40px;
    margin-bottom: 10px;
  }
}
.l-rn-cta .cta-item__inner .-text {
  margin-bottom: 8px;
  font-size: 14px;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .l-rn-cta .cta-item__inner .-text {
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 1024px) {
  .l-rn-cta .cta-item__inner .-text {
    font-size: 16px;
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 1120px) {
  .l-rn-cta .cta-item__inner .-text {
    font-size: 20px;
    margin-bottom: 16px;
  }
}
.l-rn-cta .cta-item__inner .-banner img {
  -webkit-box-shadow: 0 0 15px 0 rgba(10, 81, 162, 0.25);
          box-shadow: 0 0 15px 0 rgba(10, 81, 162, 0.25);
}
@media screen and (max-width: 767.8px) {
  .l-rn-cta .cta-item__inner .-banner img {
    max-height: 80px;
    width: auto;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023.8px) {
  .l-rn-cta .cta-item__inner .-banner img {
    max-height: 60px;
    width: auto;
  }
}
.l-rn-cta .cta-item__inner .-banner a:hover {
  opacity: 0.7;
}
.l-rn-cta .-newgraduates {
  background-image: url(../image/recruit-new-cta-bg-newgraduates.webp);
}
.l-rn-cta .-retirees {
  background-image: url(../image/recruit-new-cta-bg-retirees.webp);
}
.l-rn-cta .-midcareer {
  background-image: url(../image/recruit-new-cta-bg-midcareer.webp);
}

.l-rn-cta {
  margin-top: 80px;
}

body.-rnew .l-rn-cta {
  margin-top: 0;
}

.l-rn-footer {
  margin-top: 0;
  padding: 24px 0 0;
  background-color: #F0F9FF;
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .l-rn-footer {
    padding: 40px 0 0;
  }
}
.l-rn-footer__logo {
  text-align: center;
  max-width: 160px;
  margin: auto auto 8px;
}
@media screen and (min-width: 768px) {
  .l-rn-footer__logo {
    margin: auto auto 40px;
    max-width: 200px;
  }
}
.l-rn-footer__logo a:hover {
  opacity: 0.6;
}
.l-rn-footer__nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .l-rn-footer__nav {
    gap: 40px 24px;
  }
}
@media screen and (min-width: 1024px) {
  .l-rn-footer__nav {
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (max-width: 767.8px) {
  .l-rn-footer__nav .fnav-item {
    width: 100%;
    border-bottom: 1px solid #dddddd;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023.8px) {
  .l-rn-footer__nav .fnav-item {
    width: calc(33.333% - 16px);
  }
}
.l-rn-footer__nav .fnav-item p {
  color: #0A51A2;
  font-weight: 700;
}
@media screen and (max-width: 767.8px) {
  .l-rn-footer__nav .fnav-item p {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.l-rn-footer__nav .fnav-item p.is-open::after {
  -webkit-transform: translateY(-50%) rotate(-45deg);
      -ms-transform: translateY(-50%) rotate(-45deg);
          transform: translateY(-50%) rotate(-45deg);
}
.l-rn-footer__nav .fnav-item p a {
  color: #0A51A2;
  font-weight: 700;
}
@media screen and (max-width: 767.8px) {
  .l-rn-footer__nav .fnav-item p a {
    display: block;
    padding: 15px 0 10px;
    width: 100%;
  }
}
.l-rn-footer__nav .fnav-item p a:hover {
  text-decoration: underline;
}
.l-rn-footer__nav .fnav-item p .-a {
  display: block;
  color: #0A51A2;
  font-weight: 700;
}
@media screen and (max-width: 767.8px) {
  .l-rn-footer__nav .fnav-item p:not(:has(a)) {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .l-rn-footer__nav .fnav-item p:not(:has(a)) .-a {
    width: 100%;
    padding: 15px 0 10px;
  }
}
@media screen and (min-width: 768px) {
  .l-rn-footer__nav .fnav-item .acc-btn {
    display: none;
  }
}
@media screen and (max-width: 767.8px) {
  .l-rn-footer__nav .fnav-item .acc-btn {
    width: 32px;
    height: 32px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    cursor: pointer;
  }
  .l-rn-footer__nav .fnav-item .acc-btn::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg);
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}
@media screen and (max-width: 767.8px) {
  .l-rn-footer__nav .fnav-item ul {
    display: none;
    padding-bottom: 24px;
  }
}
@media screen and (min-width: 768px) {
  .l-rn-footer__nav .fnav-item ul {
    display: block !important;
    margin-top: 12px;
  }
}
.l-rn-footer__nav .fnav-item ul li {
  margin-top: 10px;
}
.l-rn-footer__nav .fnav-item ul li a {
  text-decoration: none;
  color: #333;
  font-size: 14px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  font-weight: 500;
}
.l-rn-footer__nav .fnav-item ul li a::before {
  content: "";
  width: 6px;
  height: 6px;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}
.l-rn-footer__nav .fnav-item ul li a:hover {
  text-decoration: underline;
}
.l-rn-footer__ban {
  text-align: center;
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .l-rn-footer__ban {
    text-align: right;
  }
}
.l-rn-footer__ban a:hover {
  opacity: 0.7;
}
.l-rn-footer__ban a img {
  -webkit-box-shadow: 0 0 15px 0 rgba(10, 81, 162, 0.25);
          box-shadow: 0 0 15px 0 rgba(10, 81, 162, 0.25);
  border-radius: 4px;
}
.l-rn-footer__copy {
  text-align: center;
  padding-top: 24px;
  border-top: 1px solid #C8DBEE;
  margin-bottom: 0;
  margin-top: 24px;
}
.l-rn-footer__copy small {
  color: #777777 !important;
  font-size: 12px !important;
  letter-spacing: 0.1em;
  display: block;
  line-height: 1.4;
}

.l-section {
  margin-top: 48px;
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1023.8px) {
  .l-section {
    margin-top: 33.6px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section {
    margin-top: 24px;
  }
}
.l-section--m-none {
  margin-top: 0;
}
.l-section--m-xs {
  margin-top: 16px;
}
@media screen and (max-width: 1023.8px) {
  .l-section--m-xs {
    margin-top: 11.2px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section--m-xs {
    margin-top: 8px;
  }
}
.l-section--m-s {
  margin-top: 24px;
}
@media screen and (max-width: 1023.8px) {
  .l-section--m-s {
    margin-top: 16.8px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section--m-s {
    margin-top: 12px;
  }
}
.l-section--m-m {
  margin-top: 50px;
}
@media screen and (max-width: 1023.8px) {
  .l-section--m-m {
    margin-top: 35px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section--m-m {
    margin-top: 25px;
  }
}
.l-section--m-xm {
  margin-top: 64px;
}
@media screen and (max-width: 1023.8px) {
  .l-section--m-xm {
    margin-top: 44.8px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section--m-xm {
    margin-top: 32px;
  }
}
.l-section--m-l {
  margin-top: 80px;
}
@media screen and (max-width: 1023.8px) {
  .l-section--m-l {
    margin-top: 56px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section--m-l {
    margin-top: 40px;
  }
}
.l-section--m-xl {
  margin-top: 100px;
}
@media screen and (max-width: 1023.8px) {
  .l-section--m-xl {
    margin-top: 70px;
  }
}
@media screen and (max-width: 767.8px) {
  .l-section--m-xl {
    margin-top: 50px;
  }
}
.l-section .container {
  margin-top: 0;
  margin-bottom: 0;
}
.l-section .container > h1,
.l-section .container > h2,
.l-section .container > h3,
.l-section .container > h4,
.l-section .container > h5,
.l-section .container > h6 {
  margin-bottom: 16px;
}

/* js */
.p-rn-episode__items .swiper {
  padding: 16px 0 0;
}
@media screen and (min-width: 768px) {
  .p-rn-episode__items .swiper {
    padding: 40px 0 0;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-episode__items .swiper {
    padding: 56px 0 0;
  }
}
.p-rn-episode__items .swiper-btns {
  text-align: center;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 24px;
  margin-left: calc(50% - 50vw);
}
@media screen and (min-width: 768px) {
  .p-rn-episode__items .swiper-btns {
    margin-top: 32px;
    margin-left: calc(50% - 55vw);
  }
}
.p-rn-episode__items .swiper-btns .swiper-button-prev, .p-rn-episode__items .swiper-btns .swiper-button-next {
  position: static;
  margin: 0 16px;
  border: 1px solid #ffffff;
  border-radius: 100vh;
  width: 40px;
  height: 40px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .p-rn-episode__items .swiper-btns .swiper-button-prev, .p-rn-episode__items .swiper-btns .swiper-button-next {
    width: 50px;
    height: 50px;
  }
}
.p-rn-episode__items .swiper-btns .swiper-button-prev::after, .p-rn-episode__items .swiper-btns .swiper-button-next::after {
  font-size: 12px;
  color: #ffffff;
  font-weight: 900;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .p-rn-episode__items .swiper-btns .swiper-button-prev::after, .p-rn-episode__items .swiper-btns .swiper-button-next::after {
    font-size: 20px;
  }
}
.p-rn-episode__items .swiper-btns .swiper-button-prev:hover, .p-rn-episode__items .swiper-btns .swiper-button-next:hover {
  background-color: #ffffff;
}
.p-rn-episode__items .swiper-btns .swiper-button-prev:hover::after, .p-rn-episode__items .swiper-btns .swiper-button-next:hover::after {
  color: #0A51A2;
}
.p-rn-episode__items .swiper-btns .swiper-pagination {
  position: static;
  display: inline-block;
  width: auto;
}
.p-rn-episode__items .swiper-btns .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background-color: rgba(255, 255, 255, 0.3);
  margin: 0 4px;
  opacity: 1;
}
.p-rn-episode__items .swiper-btns .swiper-pagination-bullet:hover {
  background-color: #ffffff;
}
.p-rn-episode__items .swiper-btns .swiper-pagination-bullet-active {
  background-color: #ffffff;
}
.p-rn-episode__items .swiper-slide {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.p-rn-episode__items .swiper-slide img {
  width: 100%;
  height: auto;
  border-radius: 10px 10px 0 0;
  display: block;
}

.is-editor .swiper-wrapper,
body.dcms_editor .swiper-wrapper,
body#tinymce .swiper-wrapper {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
}
.is-editor .swiper-slide,
body.dcms_editor .swiper-slide,
body#tinymce .swiper-slide {
  width: 25%;
}

/* utility */
.l-pagetop {
  bottom: 24px;
  right: 24px;
  width: 60px;
  height: 60px;
  z-index: 10;
  position: fixed;
  background: url(../other/icon-pagetop.svg) no-repeat center;
  background-size: cover;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  border: none;
}
@media screen and (max-width: 639.8px) {
  .l-pagetop {
    display: none;
  }
}
.l-pagetop:hover {
  cursor: pointer;
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

/* project */
.p-page-hero {
  margin-top: 120px;
  margin-bottom: 0;
}

/* page */
body.-rnew.common h1, body.-rnew.common .h1 {
  font-size: clamp(24px, 16.8px + 2.25vw, 42px);
  font-weight: 700;
}
body.-rnew.common h2, body.-rnew.common .h2 {
  font-size: clamp(20px, 12px + 2.5vw, 40px);
  font-weight: 700;
}
body.-rnew.common h2.c-rn-title, body.-rnew.common .h2.c-rn-title {
  color: #333 !important;
  font-size: clamp(20px, 12.8px + 2.25vw, 38px);
  margin-bottom: 16px;
  position: relative;
  padding-left: 20px;
}
@media screen and (min-width: 768px) {
  body.-rnew.common h2.c-rn-title, body.-rnew.common .h2.c-rn-title {
    margin-bottom: 24px;
    padding-left: 30px;
  }
}
body.-rnew.common h2.c-rn-title::before, body.-rnew.common .h2.c-rn-title::before {
  content: "";
  width: 11px;
  height: 10px;
  background-color: #0A51A2;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  border-radius: 100vh;
}
@media screen and (min-width: 768px) {
  body.-rnew.common h2.c-rn-title::before, body.-rnew.common .h2.c-rn-title::before {
    width: 16px;
    height: 16px;
  }
}
body.-rnew.common h2 .-color, body.-rnew.common .h2 .-color {
  color: #27A7FE;
  font-weight: 700;
}
body.-rnew.common h3, body.-rnew.common .h3 {
  font-size: clamp(20px, 18.4px + 0.5vw, 24px);
  font-weight: 700;
  line-height: 1.6;
}
body.-rnew.common h3.c-rn-title, body.-rnew.common .h3.c-rn-title {
  color: #0A51A2 !important;
  font-size: clamp(20px, 18.4px + 0.5vw, 24px);
  margin-bottom: 24px;
  position: relative;
  padding-left: 22px;
}
@media screen and (min-width: 768px) {
  body.-rnew.common h3.c-rn-title, body.-rnew.common .h3.c-rn-title {
    padding-left: 20px;
  }
}
body.-rnew.common h3.c-rn-title::before, body.-rnew.common .h3.c-rn-title::before {
  content: "";
  width: 11px;
  height: 10px;
  background-color: #0A51A2;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  left: 0;
  border-radius: 100vh;
}
@media screen and (min-width: 768px) {
  body.-rnew.common h3.c-rn-title::before, body.-rnew.common .h3.c-rn-title::before {
    width: 11px;
    height: 10px;
  }
}
body.-rnew.common p.c-rn-subtitle {
  color: #0A51A2 !important;
  font-family: "Jost", sans-serif;
  letter-spacing: 0.05em;
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  body.-rnew.common p.c-rn-subtitle {
    font-size: 20px;
    margin-bottom: 32px;
  }
}
@media screen and (min-width: 1120px) {
  body.-rnew.common p.c-rn-subtitle {
    margin-bottom: 48px;
  }
}
body.-rnew.common .l-hero__timg {
  background-color: #F0F9FF;
  padding: 24px 0 0;
}
@media screen and (min-width: 768px) {
  body.-rnew.common .l-hero__timg {
    padding: 32px 0;
  }
}
body.-rnew.common .l-hero__timg__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
@media screen and (max-width: 767.8px) {
  body.-rnew.common .l-hero__timg__inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 24px;
  }
}
@media screen and (max-width: 767.8px) {
  body.-rnew.common .l-hero__timg__inner .-title {
    width: 100%;
  }
}
@media screen and (max-width: 767.8px) {
  body.-rnew.common .l-hero__timg__inner .-img {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
  body.-rnew.common .l-hero__timg__inner .-img img {
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    height: 120px;
    width: 100vw;
  }
}
@media screen and (min-width: 768px) {
  body.-rnew.common .l-hero__timg__inner .-img {
    width: 40%;
    max-width: 532px;
    margin-left: auto;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
  body.-rnew.common .l-hero__timg__inner .-img img {
    border-radius: 10px;
  }
}
body.-rnew.common .l-hero__timg__inner .-img img {
  display: block;
}
body.-rnew.common .l-hero__timg + #locator {
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  body.-rnew.common .l-hero__timg + #locator {
    margin-bottom: 48px;
  }
}
@media screen and (min-width: 1120px) {
  body.-rnew.common .l-hero__timg + #locator {
    margin-bottom: 96px;
  }
}
body.-rnew.common .c-rn-link a {
  background: url(../other/recruit-new-icon-btn.svg) no-repeat right 3px center;
  background-size: 32px;
  padding: 10px 45px 10px 0;
  font-weight: 700;
  color: #333;
}
@media screen and (min-width: 768px) {
  body.-rnew.common .c-rn-link a {
    background-size: 40px;
    padding: 12px 55px 12px 0;
  }
}
body.-rnew.common .c-rn-link a:hover {
  text-decoration: underline;
  background-position: right center;
}
body.-rnew.common .c-btn {
  margin-top: auto;
}
body.-rnew.common .c-btn a {
  padding: 16px 4px;
  font-weight: 700;
  color: #333;
  text-align: center;
  display: block;
  border-radius: 10px;
  border: 1px solid #0A51A2;
}
body.-rnew.common .c-btn a:hover {
  text-decoration: underline;
  text-decoration: none;
}
body.-rnew.common .c-btn a:hover .-icon {
  background-position: right center;
}
body.-rnew.common .c-btn a .-icon {
  background: url(../other/recruit-new-icon-btn.svg) no-repeat right 3px center;
  background-size: 30px;
  padding: 5px 45px 5px 8px;
  font-weight: 700;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
body.-rnew.common .u-rn-list__disc {
  margin-left: 18px;
  list-style-type: disc;
}
body.-rnew.common .u-rn-list__disc li {
  line-height: 1.7;
}
body.-rnew.common .u-rn-list__disc li + li {
  margin-top: 8px;
}
body.-rnew.common .u-rn-list__decimal {
  margin-left: 27px;
  list-style-type: decimal;
}
body.-rnew.common .u-rn-list__decimal li + li {
  margin-top: 10px;
}
body.-rnew.common .u-small {
  font-size: 14px;
}
body.-rnew.common #locator {
  background-color: transparent;
  border: none;
}

.p-rn-team {
  background: #0A51A2 url(../other/recruit-new-team-bg.svg) no-repeat center bottom;
  background-size: 100% auto;
}
.p-rn-team__inner {
  margin: 0 auto;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .p-rn-team__inner {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-team__inner {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
.p-rn-team__inner__title {
  text-align: center;
  color: #ffffff !important;
  font-size: 28px !important;
  line-height: 1.4;
  font-weight: 700;
  margin-bottom: 16px !important;
}
@media screen and (min-width: 768px) {
  .p-rn-team__inner__title {
    font-size: 32px !important;
    margin-bottom: 24px !important;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-team__inner__title {
    margin-bottom: 32px !important;
    font-size: 40px !important;
  }
}
.p-rn-team__inner__text {
  text-align: center;
  color: #ffffff !important;
  margin-bottom: 24px !important;
}
@media screen and (min-width: 1024px) {
  .p-rn-team__inner__text {
    margin-bottom: 40px !important;
    font-size: 20px;
  }
}
.p-rn-team__inner__list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 24px 16px;
}
@media screen and (min-width: 768px) {
  .p-rn-team__inner__list {
    gap: 40px 24px;
  }
}
.p-rn-team .team-item {
  width: calc(50% - 8px);
  background-color: #ffffff;
  padding: 16px 16px;
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .p-rn-team .team-item {
    padding: 24px 16px;
    width: calc(33.333% - 16px);
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-team .team-item {
    width: calc(20% - 19.2px);
  }
}
.p-rn-team .team-item .-img {
  text-align: center;
}
.p-rn-team .team-item .-img img {
  width: 60%;
  max-width: 100px;
  border-radius: 100vh;
  border: 2px solid #dddddd;
}
.p-rn-team .team-item .-name {
  text-align: center;
  font-size: 20px;
  margin: 4px auto 4px;
  font-weight: 700;
}
@media screen and (max-width: 767.8px) {
  .p-rn-team .team-item .-text {
    font-size: 14px;
  }
}

.p-rn-crosstalk .container {
  margin-top: 0;
  margin-bottom: 0;
}
.p-rn-crosstalk + .p-rn-crosstalk .container {
  margin-top: -32px;
}
.p-rn-crosstalk + .p-rn-crosstalk .crosstalk-item {
  border-radius: 0 0 10px 10px;
}
.p-rn-crosstalk + .p-rn-crosstalk .crosstalk-item__inner {
  border-top: 1px solid #C8DBEE;
  padding-top: 32px;
}
.p-rn-crosstalk .crosstalk-item {
  background-color: #F0F9FF;
  border-radius: 10px;
  padding: 32px 24px;
}
@media screen and (min-width: 768px) {
  .p-rn-crosstalk .crosstalk-item {
    padding: 32px;
  }
}
.p-rn-crosstalk .crosstalk-item__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .p-rn-crosstalk .crosstalk-item__inner {
    gap: 24px;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-crosstalk .crosstalk-item__inner .-img {
    width: 40.5%;
  }
}
.p-rn-crosstalk .crosstalk-item__inner .-img img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
}
@media screen and (min-width: 768px) {
  .p-rn-crosstalk .crosstalk-item__inner .-texts {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.p-rn-crosstalk .crosstalk-item__inner .-texts .-subtitle {
  font-weight: 700;
  color: #0A51A2 !important;
  margin-bottom: 8px;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (min-width: 768px) {
  .p-rn-crosstalk .crosstalk-item__inner .-texts .-subtitle {
    font-size: 18px;
  }
}
.p-rn-crosstalk .crosstalk-item__inner .-texts .-title {
  margin-bottom: 8px;
  font-weight: 700;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}
@media screen and (min-width: 1024px) {
  .p-rn-crosstalk .crosstalk-item__inner .-texts .-title {
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-crosstalk .crosstalk-item__inner .-texts .-title {
    font-size: 28px;
  }
}
.p-rn-crosstalk .crosstalk-item__inner .-texts .c-rn-link {
  margin-top: 24px;
}
@media screen and (min-width: 1024px) {
  .p-rn-crosstalk .crosstalk-item__inner .-texts .c-rn-link {
    margin-top: 32px;
  }
}
@media screen and (max-width: 767.8px) {
  .p-rn-crosstalk .crosstalk-item__inner .-texts .c-rn-link {
    text-align: right;
    margin-top: 16px;
  }
}
.p-rn-education {
  padding: 16px;
  background-color: #F0F9FF;
  border: 1.5px solid #F0F9FF;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: relative;
  border-radius: 10px;
  cursor: pointer;
}
@media screen and (min-width: 1120px) {
  .p-rn-education {
    padding: 24px;
  }
}
.p-rn-education:hover {
  border-color: #0A51A2;
}
.p-rn-education__title .c-rn-title {
  margin-bottom: 0 !important;
  color: #0A51A2 !important;
  padding-right: 24px;
}
.p-rn-education__title::after {
  content: "＋";
  position: absolute;
  top: 20px;
  right: 20px;
  font-weight: 900;
  font-size: 20px;
  color: #0A51A2;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .p-rn-education__title::after {
    top: 24px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-education__title::after {
    font-size: 28px;
    top: 28px;
  }
}
.p-rn-education__title.is-open::after {
  content: "ー";
}
.p-rn-education__con {
  padding: 24px 0 16px 0;
}
@media screen and (min-width: 768px) {
  .p-rn-education__con {
    padding: 24px 40px 0 40px;
  }
}

.toggle-con {
  display: none;
  padding-top: 24px;
}

.p-rn-comment {
  border-radius: 10px;
  background-color: #ffffff;
  padding: 56px 24px 16px 24px;
  margin-top: 16px;
  position: relative;
  width: 104%;
  margin-left: -2%;
}
.p-rn-comment .-title {
  position: absolute;
  font-size: 18px;
  top: 0;
  left: 0;
  line-height: 1;
  font-weight: 700;
  background-color: #0A51A2;
  color: #ffffff !important;
  border-radius: 10px 0 10px 0;
  padding: 8px 16px;
  display: inline-block;
}

.p-rn-education-course {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 768px) {
  .p-rn-education-course {
    gap: 24px;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-education-course {
    gap: 48px;
  }
}
.p-rn-education-course .course-item {
  padding: 24px;
  border-radius: 10px;
  border: 1.5px solid #0A51A2;
}
@media screen and (min-width: 1024px) {
  .p-rn-education-course .course-item {
    padding: 40px;
  }
}
.p-rn-education-course .course-item .c-rn-title {
  margin-bottom: 8px;
}

.p-rn-education-nav {
  background-color: #F0F9FF;
  padding: 48px 0;
}
@media screen and (min-width: 768px) {
  .p-rn-education-nav {
    padding: 80px 0;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-education-nav {
    padding: 100px 0;
  }
}
.p-rn-education-nav__inner {
  display: grid;
  gap: 16px;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 768px) {
  .p-rn-education-nav__inner {
    gap: 24px;
    grid-template-columns: repeat(3, 1fr);
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-education-nav__inner {
    gap: 32px;
  }
}
.p-rn-education-nav__inner .nav-item .-img img {
  border-radius: 10px;
  display: block;
}
.p-rn-education-nav__inner .nav-item .-link {
  margin-top: 12px;
}
.p-rn-education-nav__inner .nav-item .-link a {
  background: url(../other/recruit-new-icon-btn.svg) no-repeat right 5px top;
  background-size: 22px;
  padding: 0 25px 0 0;
  font-weight: 700;
  font-size: 18px;
  display: block;
  color: #333;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .p-rn-education-nav__inner .nav-item .-link a {
    font-size: 20px;
    background-size: 32px;
    padding: 2px 45px 2px 0;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-education-nav__inner .nav-item .-link a {
    font-size: 24px;
    background-size: 40px;
  }
}
.p-rn-education-nav__inner .nav-item .-link a:hover {
  text-decoration: underline;
  background-position: right center;
}

p.course-itemT {
  margin-left: 24px !important;
  margin-top: 8px !important;
}
@media screen and (min-width: 768px) {
  p.course-itemT {
    margin-left: calc(50% + 8px + 24px) !important;
  }
}
@media screen and (min-width: 1024px) {
  p.course-itemT {
    margin-left: calc(50% + 24px + 40px) !important;
  }
}

.is-editor .toggle-con,
body.dcms_editor .toggle-con,
#tinymce .toggle-con {
  display: block;
}

.p-rn-interview__main {
  background-color: #F0F9FF;
  padding: 40px 0;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main {
    padding: 64px 0;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-interview__main {
    padding: 100px 0;
  }
}
.p-rn-interview__main__intro {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__main__intro {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 24px;
  }
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__main__intro .-text {
    width: 100%;
  }
}
.p-rn-interview__main__intro .-text__genus {
  color: #0A51A2 !important;
  font-size: 16px !important;
  font-weight: 700;
  margin-bottom: 4px !important;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main__intro .-text__genus {
    font-size: 18px !important;
    margin-bottom: 8px !important;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__main__intro .-text__genus {
    font-size: 20px !important;
  }
}
.p-rn-interview__main__intro .-text__name {
  font-weight: 900;
  font-size: 24px !important;
  line-height: 1.5 !important;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main__intro .-text__name {
    font-size: 32px !important;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__main__intro .-text__name {
    font-size: 38px !important;
  }
}
.p-rn-interview__main__intro .-text__year {
  font-size: 14px !important;
  margin-top: 4px !important;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main__intro .-text__year {
    margin-top: 8px !important;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main__intro .-img {
    width: 50%;
    max-width: 580px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.p-rn-interview__main__intro .-img img {
  border-radius: 10px;
  display: block;
  width: 100%;
  height: auto;
}
.p-rn-interview__main__oneword {
  padding: 24px;
  border-radius: 10px;
  border: 2px solid #0A51A2;
  text-align: center;
  margin-top: 32px;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main__oneword {
    padding: 32px;
    margin-top: 48px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__main__oneword {
    padding: 40px;
  }
}
.p-rn-interview__main__oneword p {
  font-weight: 500;
}
.p-rn-interview__main__oneword .-title {
  color: #0A51A2 !important;
  font-size: 20px !important;
  font-weight: 700;
  margin-bottom: 12px !important;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__main__oneword .-title {
    font-size: 24px !important;
    margin-bottom: 16px !important;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__main__oneword .-title {
    font-size: 28px !important;
  }
}

.p-rn-interview__con {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__con {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__con {
    gap: 40px;
  }
}
.p-rn-interview__con .-text .c-rn-title {
  color: #333 !important;
}
.p-rn-interview__con .-img {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__con .-img {
    width: 45%;
    max-width: 580px;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-interview__con .-img {
    width: 55%;
  }
}
.p-rn-interview__con .-img img {
  border-radius: 10px;
  display: block;
  width: 100%;
  height: auto;
}

.p-rn-interview__thoughts {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 40px 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__thoughts {
    padding: 64px 0;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__thoughts {
    padding: 100px 0;
  }
}
.p-rn-interview__thoughts::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  -webkit-backdrop-filter: blur(6px);
          backdrop-filter: blur(6px);
}
.p-rn-interview__thoughts__inner {
  position: relative;
  z-index: 2;
  text-align: center;
}
.p-rn-interview__thoughts__inner .-subtitle {
  color: #0A51A2 !important;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 12px;
  line-height: 1.6;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__thoughts__inner .-subtitle {
    font-size: 24px;
    margin-bottom: 16px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview__thoughts__inner .-subtitle {
    font-size: 28px;
  }
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__thoughts__inner .-subtitle {
    margin-top: 40px;
  }
}

.p-rn-interview__end {
  background-color: #0A51A2;
  padding: 40px 0;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__end {
    padding: 80px 0;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-interview__end {
    padding: 100px 0;
  }
}
.p-rn-interview__end__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 40px;
  background-color: #ffffff;
  border-radius: 10px;
  gap: 16px;
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__end__inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    padding: 24px;
    gap: 24px;
  }
}
.p-rn-interview__end__inner .-text .c-rn-title {
  color: #333 !important;
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__end__inner .-text .c-rn-title {
    margin-bottom: 8px;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-interview__end__inner .-img {
    max-width: 400px;
    width: 40%;
    -webkit-flex-shrink: 0;
        -ms-flex-negative: 0;
            flex-shrink: 0;
  }
}
.p-rn-interview__end__inner .-img img {
  width: 100%;
  height: auto;
  border-radius: 10px;
  display: block;
}

.p-rn-interview {
  background-color: #F0F9FF;
  position: relative;
  padding-bottom: 32px;
}
@media screen and (min-width: 768px) {
  .p-rn-interview {
    padding-bottom: 48px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-interview {
    padding-bottom: 64px;
  }
}
.p-rn-interview.-last {
  padding-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .p-rn-interview.-last {
    padding-bottom: 80px;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-interview.-last {
    padding-bottom: 100px;
  }
}
.p-rn-interview.-last::before {
  content: "";
  z-index: 1;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #F0F9FF;
  height: 40px;
}
@media screen and (min-width: 768px) {
  .p-rn-interview.-last::before {
    height: 80px;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-interview.-last::before {
    height: 100px;
  }
}
.p-rn-interview::after {
  content: "";
  width: 2px;
  height: 100%;
  background-color: #0A51A2;
  position: absolute;
  top: 0;
  left: 29px;
}
@media (min-width: 576px) {
  .p-rn-interview::after {
    left: calc(50% - 240px);
  }
}
@media screen and (min-width: 768px) {
  .p-rn-interview::after {
    left: 50%;
  }
}
.p-rn-interview + .p-rn-interview {
  padding-top: 0;
}
.p-rn-interview__title {
  background-color: #F0F9FF;
  text-align: center;
  padding: 40px 0 10px;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__title {
    padding-top: 80px;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-interview__title {
    padding-top: 100px;
  }
}
.p-rn-interview__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 100px;
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__inner {
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    gap: 24px;
    padding-left: 60px;
  }
}
.p-rn-interview__inner .-text {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__inner .-text {
    width: calc(50% - 50px);
  }
  .p-rn-interview__inner .-text::before, .p-rn-interview__inner .-text::after {
    content: "";
    position: absolute;
    left: 100%;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    border: 24px solid transparent;
  }
  .p-rn-interview__inner .-text::before {
    border-left-color: #0A51A2;
  }
  .p-rn-interview__inner .-text::after {
    margin-left: -2px;
    border-left-color: #ffffff;
  }
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__inner .-text::before, .p-rn-interview__inner .-text::after {
    left: auto;
    right: 100%;
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    border: 18px solid transparent;
  }
  .p-rn-interview__inner .-text::before {
    border-right-color: #0A51A2;
  }
  .p-rn-interview__inner .-text::after {
    margin-right: -2px;
    border-right-color: #ffffff;
  }
}
.p-rn-interview__inner .-text__inner {
  padding: 24px;
  background-color: #ffffff;
  border-radius: 10px;
  border: 2px solid #0A51A2;
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__inner .-text__inner {
    padding: 16px;
  }
}
.p-rn-interview__inner .-text__inner::before {
  content: "";
  width: 14px;
  height: 14px;
  background-color: #0A51A2;
  border-radius: 100vh;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__inner .-text__inner::before {
    left: -52px;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-interview__inner .-text__inner::before {
    right: -60px;
    width: 20px;
    height: 20px;
  }
}
.p-rn-interview__inner .-text__inner::after {
  content: "";
  width: 30px;
  height: 30px;
  background-color: rgba(10, 81, 162, 0.5);
  border-radius: 100vh;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media screen and (max-width: 767.8px) {
  .p-rn-interview__inner .-text__inner::after {
    left: -60px;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-interview__inner .-text__inner::after {
    right: -70px;
    width: 40px;
    height: 40px;
  }
}
.p-rn-interview__inner .-text__inner__time {
  font-size: 14px;
  color: #0A51A2 !important;
  margin-bottom: 8px;
  font-weight: 700;
}
.p-rn-interview__inner .-text__inner__title {
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__inner .-img {
    width: calc(50% - 50px);
  }
}
.p-rn-interview__inner .-img img {
  border-radius: 10px;
  display: block;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .p-rn-interview__inner.-reverse .-text {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
  }
  .p-rn-interview__inner.-reverse .-text::before, .p-rn-interview__inner.-reverse .-text::after {
    left: auto;
    right: 100%;
    border-left: none;
    margin-left: auto;
  }
  .p-rn-interview__inner.-reverse .-text::before {
    border-right-color: #0A51A2;
  }
  .p-rn-interview__inner.-reverse .-text::after {
    margin-right: -2px;
    border-right-color: #ffffff;
  }
  .p-rn-interview__inner.-reverse .-text__inner::before {
    left: -60px;
    right: auto;
  }
  .p-rn-interview__inner.-reverse .-text__inner::after {
    left: -70px;
    right: auto;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-interview__inner.-reverse .-img {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
  }
}

.p-rn-works {
  display: grid;
  gap: 32px 16px;
  grid-template-columns: repeat(1, 1fr);
}
@media screen and (min-width: 768px) {
  .p-rn-works {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-works {
    gap: 32px 20px;
    grid-template-columns: repeat(3, 1fr);
  }
}
.p-rn-works .works-item {
  position: relative;
  padding: 0 30px 30px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-rn-works .works-item::after {
  content: "";
  width: 100%;
  height: 80%;
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #F0F9FF;
  border-radius: 10px;
}
.p-rn-works .works-item .-img {
  position: relative;
  z-index: 2;
}
.p-rn-works .works-item .-img img {
  border-radius: 10px;
  display: block;
}
.p-rn-works .works-item .-texts {
  position: relative;
  z-index: 2;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: 100%;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.p-rn-works .works-item .-texts .-title {
  margin-top: 24px;
  margin-bottom: 8px;
  text-align: center;
}
.p-rn-works .works-item .-texts .-text {
  margin-bottom: 16px;
}

.p-rn-mv {
  background: url(../image/recruit-new-mv-bg.webp) no-repeat center;
  background-size: cover;
  padding-top: 80px;
}
@media screen and (min-width: 640px) {
  .p-rn-mv {
    padding-top: 120px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-mv {
    padding-top: 100px;
  }
}
@media screen and (min-width: 640px) {
  .p-rn-mv__inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 0;
  }
}
@media screen and (max-width: 639.8px) {
  .p-rn-mv__inner {
    position: relative;
    padding-bottom: 80px;
  }
}
.p-rn-mv__inner .-text {
  margin-top: 0;
}
@media screen and (min-width: 640px) {
  .p-rn-mv__inner .-text {
    margin-top: -80px;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-mv__inner .-text {
    margin-top: -100px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-mv__inner .-text {
    margin-top: -140px;
  }
}
.p-rn-mv__inner .-text .-title {
  font-size: clamp(24px, 5.6px + 5.75vw, 70px);
}
@media screen and (min-width: 640px) and (max-width: 767.8px) {
  .p-rn-mv__inner .-text .-title {
    font-size: 40px;
  }
}
.p-rn-mv__inner .-text .-title .-top, .p-rn-mv__inner .-text .-title .-bottom {
  display: inline-block;
  margin: 0;
  background-color: #ffffff;
  padding: 5px 10px;
  -webkit-box-shadow: 0 0 15px 0 rgba(10, 81, 162, 0.08);
          box-shadow: 0 0 15px 0 rgba(10, 81, 162, 0.08);
}
@media screen and (min-width: 640px) {
  .p-rn-mv__inner .-text .-title .-top, .p-rn-mv__inner .-text .-title .-bottom {
    padding: 10px 16px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-mv__inner .-text .-title .-top, .p-rn-mv__inner .-text .-title .-bottom {
    padding: 16px 20px;
  }
}
.p-rn-mv__inner .-text .-title .-dcolor, .p-rn-mv__inner .-text .-title .-color {
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.05em;
}
.p-rn-mv__inner .-text .-title .-dcolor {
  color: #0A51A2;
}
.p-rn-mv__inner .-text .-title .-color {
  color: #27A7FE;
}
.p-rn-mv__inner .-text .-subtitle {
  margin-top: 8px;
  color: #C0D2E5 !important;
  font-size: 14px;
  font-weight: 900;
  letter-spacing: 0.1em;
  line-height: 1.4 !important;
}
@media screen and (min-width: 640px) and (max-width: 767.8px) {
  .p-rn-mv__inner .-text .-subtitle {
    font-size: 18px;
  }
}
@media screen and (min-width: 768px) {
  .p-rn-mv__inner .-text .-subtitle {
    margin-top: 16px;
    font-size: clamp(16px, 12.8px + 1vw, 24px);
  }
}
@media screen and (max-width: 639.8px) {
  .p-rn-mv__inner .-img {
    width: 50%;
    position: absolute;
    bottom: 0;
    right: -15px;
    max-width: 320px;
  }
}
@media screen and (min-width: 640px) {
  .p-rn-mv__inner .-img {
    width: 50%;
    margin-left: auto;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-mv__inner .-img {
    width: 55%;
  }
}
.p-rn-mv__inner .-img img {
  display: block;
  width: 100%;
  height: auto;
}

/* --- 動き --- */
.p-rn-mv .-top,
.p-rn-mv .-bottom {
  position: relative;
  overflow: hidden;
}
.p-rn-mv .-top > span,
.p-rn-mv .-bottom > span {
  opacity: 0;
  -webkit-animation: revealContent 0s forwards 0.4s;
          animation: revealContent 0s forwards 0.4s;
}
.p-rn-mv .-top::before,
.p-rn-mv .-bottom::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #0A51A2;
  -webkit-transform: translateX(-101%);
      -ms-transform: translateX(-101%);
          transform: translateX(-101%);
  z-index: 2;
}

.p-rn-mv .-top::before {
  -webkit-animation: slideStrip 0.8s cubic-bezier(0.65, 0, 0.35, 1) forwards 0.2s;
          animation: slideStrip 0.8s cubic-bezier(0.65, 0, 0.35, 1) forwards 0.2s;
}

.p-rn-mv .-bottom::before {
  -webkit-animation: slideStrip 0.8s cubic-bezier(0.65, 0, 0.35, 1) forwards 0.5s;
          animation: slideStrip 0.8s cubic-bezier(0.65, 0, 0.35, 1) forwards 0.5s;
}

@-webkit-keyframes slideStrip {
  0% {
    -webkit-transform: translateX(-101%);
            transform: translateX(-101%);
  }
  50% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(101%);
            transform: translateX(101%);
  }
}

@keyframes slideStrip {
  0% {
    -webkit-transform: translateX(-101%);
            transform: translateX(-101%);
  }
  50% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(101%);
            transform: translateX(101%);
  }
}
@-webkit-keyframes revealContent {
  to {
    opacity: 1;
  }
}
@keyframes revealContent {
  to {
    opacity: 1;
  }
}
.p-rn-mv .-subtitle {
  display: block;
  opacity: 0;
  -webkit-transform: translateX(-20px);
      -ms-transform: translateX(-20px);
          transform: translateX(-20px);
  -webkit-animation: subtitleFadeIn 1.2s cubic-bezier(0.22, 1, 0.36, 1) forwards 1.2s;
          animation: subtitleFadeIn 1.2s cubic-bezier(0.22, 1, 0.36, 1) forwards 1.2s;
}

@-webkit-keyframes subtitleFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
    -webkit-filter: blur(4px);
            filter: blur(4px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}

@keyframes subtitleFadeIn {
  0% {
    opacity: 0;
    -webkit-transform: translateX(-20px);
            transform: translateX(-20px);
    -webkit-filter: blur(4px);
            filter: blur(4px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateX(0);
            transform: translateX(0);
    -webkit-filter: blur(0);
            filter: blur(0);
  }
}
.is-editor .p-rn-mv__inner .-text,
body.dcms_editor .p-rn-mv__inner .-text,
body#tinymce .p-rn-mv__inner .-text {
  margin-top: 0;
}
.is-editor .p-rn-mv .-top,
.is-editor .p-rn-mv .-bottom,
body.dcms_editor .p-rn-mv .-top,
body.dcms_editor .p-rn-mv .-bottom,
body#tinymce .p-rn-mv .-top,
body#tinymce .p-rn-mv .-bottom {
  overflow: auto;
}
.is-editor .p-rn-mv__inner .-text .-title .-dcolor,
.is-editor .p-rn-mv__inner .-text .-title .-color,
body.dcms_editor .p-rn-mv__inner .-text .-title .-dcolor,
body.dcms_editor .p-rn-mv__inner .-text .-title .-color,
body#tinymce .p-rn-mv__inner .-text .-title .-dcolor,
body#tinymce .p-rn-mv__inner .-text .-title .-color {
  opacity: 1;
}

.p-rn-episode {
  background-color: #F0F9FF;
  padding-top: 40px;
  padding-bottom: 40px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-rn-episode {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-episode {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
.p-rn-episode::after {
  content: "";
  width: 100%;
  height: 35%;
  background-color: #0A51A2;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .p-rn-episode::after {
    height: 25%;
  }
}
.p-rn-episode__info {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -webkit-align-items: flex-end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 24px;
}
.p-rn-episode__info .-titles .c-rn-subtitle {
  margin-bottom: 0;
}
@media screen and (max-width: 767.8px) {
  .p-rn-episode__info .c-btn {
    display: none;
  }
}
.p-rn-episode .c-btn.-sp {
  display: none;
}
@media screen and (max-width: 767.8px) {
  .p-rn-episode .c-btn.-sp {
    display: block;
    max-width: 440px;
    width: 82%;
    margin: 24px auto 0;
    position: relative;
    z-index: 2;
  }
}
.p-rn-episode .c-btn.-sp a {
  background-color: #ffffff;
}
.p-rn-episode .c-btn.-sp a .-icon {
  color: #0A51A2;
}
.p-rn-episode__items__inner {
  margin-right: calc(50% - 50vw);
  overflow: hidden;
  padding: 10px;
}
.p-rn-episode .swiper-slide {
  background-color: #ffffff;
  border-radius: 10px;
  height: 100%;
  -webkit-box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
          box-shadow: 0 0 15px 0 rgba(0, 0, 0, 0.15);
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  height: auto !important;
}
.p-rn-episode .swiper-slide a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  text-decoration: none;
  position: relative;
}
.p-rn-episode .swiper-slide a::before {
  content: "";
  width: 30px;
  height: 30px;
  position: absolute;
  right: 24px;
  bottom: 16px;
  border-radius: 100vh;
  border: 1px solid #0A51A2;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .p-rn-episode .swiper-slide a::before {
    width: 40px;
    height: 40px;
    bottom: 24px;
  }
}
.p-rn-episode .swiper-slide a::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 2px solid #0A51A2;
  border-right: 2px solid #0A51A2;
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  position: absolute;
  bottom: 27px;
  right: 37px;
}
@media screen and (min-width: 768px) {
  .p-rn-episode .swiper-slide a::after {
    width: 10px;
    height: 10px;
    bottom: 40px;
    right: 40px;
  }
}
.p-rn-episode .swiper-slide a .-texts {
  padding: 8px 24px 50px 24px;
}
@media screen and (min-width: 768px) {
  .p-rn-episode .swiper-slide a .-texts {
    padding: 16px 24px 68px 24px;
  }
}
.p-rn-episode .swiper-slide a .-texts .-title {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  font-size: 18px;
  line-height: 1.4 !important;
}
@media screen and (min-width: 768px) {
  .p-rn-episode .swiper-slide a .-texts .-title {
    font-size: 20px;
  }
}
.p-rn-episode .swiper-slide a .-texts .-genus {
  font-size: 18px;
  line-height: 1.4 !important;
  margin-top: 8px;
  color: #777 !important;
}
@media screen and (min-width: 768px) {
  .p-rn-episode .swiper-slide a .-texts .-genus {
    font-size: 20px;
    margin-top: 16px;
  }
}
.p-rn-episode .swiper-slide a .-texts .-name {
  font-size: 14px;
  line-height: 1.5 !important;
  margin-top: 8px;
  color: #777 !important;
}
.p-rn-episode .swiper-slide a .-img {
  overflow: hidden;
  height: 160px;
}
@media screen and (min-width: 640px) {
  .p-rn-episode .swiper-slide a .-img {
    height: 200px;
  }
}
@media screen and (min-width: 1120px) {
  .p-rn-episode .swiper-slide a .-img {
    height: 240px;
  }
}
.p-rn-episode .swiper-slide a .-img img {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-rn-episode .swiper-slide a:hover::before {
  background-color: #0A51A2;
}
.p-rn-episode .swiper-slide a:hover::after {
  border-color: #ffffff;
}
.p-rn-episode .swiper-slide a:hover .-img img {
  -webkit-transform: scale(1.1);
      -ms-transform: scale(1.1);
          transform: scale(1.1);
}

.p-rn-prologue {
  background: url(../image/recruit-new-mv-sub.webp) no-repeat center;
  background-size: cover;
  padding-top: 40px;
  padding-bottom: 40px;
}
@media screen and (min-width: 768px) {
  .p-rn-prologue {
    padding-top: 64px;
    padding-bottom: 64px;
  }
}
@media screen and (min-width: 1024px) {
  .p-rn-prologue {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
.p-rn-prologue__inner {
  background-color: rgba(255, 255, 255, 0.7);
  padding: 40px 24px;
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .p-rn-prologue__inner {
    padding: 48px;
  }
}
.p-rn-prologue__inner .-title {
  text-align: center;
  margin-bottom: 24px !important;
}
@media screen and (min-width: 768px) {
  .p-rn-prologue__inner .-title {
    margin-bottom: 40px !important;
  }
}
.p-rn-prologue__inner .-title .-color {
  display: block;
}
.p-rn-prologue__inner p {
  margin-top: 8px;
  line-height: 2 !important;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-rn-prologue__inner p {
    font-size: 18px;
    margin-top: 24px;
  }
}