@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  margin: 0;
  padding: 0; }

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

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: none; }

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

.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.clearfix {
  display: inline-block; }

/* Hides from IE Mac */
* html .clearfix {
  height: 1%; }

.clearfix {
  display: block; }

/* ---------- 初期 ---------- */
body {
  letter-spacing: 0;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; }

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  line-height: 0; }

a {
  text-decoration: none; }

strong {
  font-weight: bold; }

/* ---------- /共通部分 ---------- */
#jougetyuou {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  margin: auto; }

#kadomaru {
  border-radius: 10px;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px; }

#resbtn {
  -webkit-appearance: none; }

.ancr {
  position: relative;
  transition: 0.5s; }

.anca {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 10;
  cursor: pointer; }

.ancr:hover {
  opacity: 0.75;
  transition: 0.5s;
  cursor: pointer; }

/* ---------- /参考タグ部分 ---------- */
.font_Montserrat {
  font-family: "Montserrat", sans-serif; }

.font_notoserif {
  font-family: "Noto Serif JP", serif; }

.font_notosans {
  font-family: "Noto Sans JP", serif; }

/* PC */
@media screen and (min-width: 1024px) {
  .sponly, .tabonly {
    display: none !important; }

  html {
    font-size: calc(1vw * 100 / 1440);
    overscroll-behavior-y: none; }

  header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10; }
    header .inner {
      box-sizing: border-box;
      display: flex;
      justify-content: space-between; }
      header .inner .header_logo a {
        display: flex;
        justify-content: flex-start;
        align-items: center; }
        header .inner .header_logo a img {
          display: block;
          width: 297rem;
          margin-right: 32rem; }
        header .inner .header_logo a .on {
          display: block; }
        header .inner .header_logo a .off {
          display: none; }
        header .inner .header_logo a .logo_txt {
          font-size: 12rem;
          letter-spacing: 0.08em;
          font-weight: 600;
          color: #fff; }
      header .inner .header_nav {
        display: flex;
        justify-content: flex-end;
        align-items: center; }
        header .inner .header_nav .cp_top {
          font-size: 14rem;
          margin-right: 23rem; }
          header .inner .header_nav .cp_top a {
            display: inline-block;
            line-height: 2.285em;
            color: #fff;
            padding-right: 27rem;
            background: url("../img/icon_cp.png") no-repeat right center;
            background-size: 17rem; }
            header .inner .header_nav .cp_top a.blue {
              color: #2B80FF;
              background: url("../img/icon_cp_blue.png") no-repeat right center;
              background-size: 17rem; }
        header .inner .header_nav ul {
          display: flex;
          justify-content: flex-start;
          position: relative;
          z-index: 22; }
          header .inner .header_nav ul li {
            width: 134rem;
            font-size: 13rem;
            letter-spacing: 0.08em;
            line-height: 1.23em;
            font-weight: bold; }
            header .inner .header_nav ul li:first-child {
              margin-right: 14rem; }
            header .inner .header_nav ul li a {
              display: block;
              width: 100%;
              color: #fff;
              text-align: center;
              padding: 8rem 0;
              border-radius: 16rem; }
              header .inner .header_nav ul li a.green {
                background: #00C7C3; }
              header .inner .header_nav ul li a.blue {
                background: #2B80FF; }
    header.top_header {
      transition: background 0.4s ease; }
      header.top_header.is-scrolled {
        background: #fff;
        box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
        header.top_header.is-scrolled .inner .header_logo .on {
          display: none; }
        header.top_header.is-scrolled .inner .header_logo .off {
          display: block; }
        header.top_header.is-scrolled .inner .header_logo .logo_txt {
          color: #2B80FF; }
        header.top_header.is-scrolled .inner .header_nav .cp_top a {
          color: #2B80FF;
          background: url("../img/icon_cp_blue.png") no-repeat right center;
          background-size: 17rem; }
        header.top_header.is-scrolled .toggle_btn img.on {
          display: none; }
        header.top_header.is-scrolled .toggle_btn img.off {
          display: block; }
        header.top_header.is-scrolled .open .toggle_btn img.on {
          display: none; }
        header.top_header.is-scrolled .open .toggle_btn img.off {
          display: none; }
      header.top_header .inner {
        padding: 0 103rem 0 19rem; }
        header.top_header .inner .header_logo {
          padding: 18rem 0 8rem; }
        header.top_header .inner .header_nav {
          padding: 23rem 0; }
    header.under_header {
      background: #fff;
      box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
      header.under_header .inner {
        padding: 0 86rem 0 19rem; }
        header.under_header .inner .header_logo {
          width: 232rem;
          padding: 14rem 0 13rem; }
          header.under_header .inner .header_logo a img {
            display: block;
            width: 232rem;
            margin-right: 23rem; }
          header.under_header .inner .header_logo a .on {
            display: block; }
          header.under_header .inner .header_logo a .off {
            display: none; }
          header.under_header .inner .header_logo a .logo_txt {
            color: #2B80FF; }
        header.under_header .inner .header_nav {
          padding: 19rem 0 20rem; }

  #navArea {
    position: relative; }

  /*ハンバーガー メニュー*/
  nav.hum {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    /*bottom: 0;*/
    width: 100%;
    height: auto;
    overflow-x: hidden;
    overflow-y: auto;
    background: #fff;
    -webkit-overflow-scrolling: touch;
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease;
    z-index: 21;
    box-sizing: border-box;
    padding: 7rem 0 71rem 19rem;
    border-radius: 0 0 30rem 30rem;
    box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
    nav.hum .hum_logo {
      width: 232rem;
      margin-bottom: 17rem; }
    nav.hum .hum_cont {
      width: 748rem;
      margin: 0 auto; }
      nav.hum .hum_cont .hum_entry.tabsp {
        display: none !important; }
      nav.hum .hum_cont .hum_menu {
        display: flex;
        justify-content: space-between;
        margin-bottom: 36rem;
        position: relative; }
        nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl {
          margin-bottom: 20rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl span {
            display: block;
            color: #2B80FF; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl .en {
            font-size: 32rem;
            line-height: 1.21875em;
            font-weight: 600;
            margin-bottom: 6rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl .ja {
            font-size: 14rem;
            line-height: 1.5em;
            font-weight: bold; }
        nav.hum .hum_cont .hum_menu .hum_menu_box ul li a {
          display: inline-block;
          padding-left: 20rem;
          position: relative; }
          nav.hum .hum_cont .hum_menu .hum_menu_box ul li a::before {
            position: absolute;
            content: "";
            width: 10rem;
            height: 10rem;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            border-radius: 100%;
            background: #2B80FF; }
        nav.hum .hum_cont .hum_menu .hum_menu_box.about {
          margin-right: 74rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li {
            margin-bottom: 15rem; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li:last-child {
              margin-bottom: 0; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li a {
              font-size: 16rem;
              line-height: 1.5em;
              font-weight: bold;
              color: #1C1C1C; }
        nav.hum .hum_cont .hum_menu .hum_menu_box.people {
          width: 500rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul {
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li {
              min-width: 236rem;
              margin-bottom: 17rem; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(1) {
                order: 1; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(2) {
                order: 3; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(3) {
                order: 5;
                margin-bottom: 0; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(4) {
                order: 2; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(5) {
                order: 4; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(6) {
                order: 6;
                margin-bottom: 0; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li a {
                display: flex;
                justify-content: flex-start;
                align-items: center; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li span {
                display: inline-block; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li .name {
                font-size: 19rem;
                line-height: 1.63em;
                font-weight: bold;
                color: #1C1C1C;
                margin-right: 10rem; }
              nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li .role {
                font-size: 13rem;
                line-height: 2.38em;
                color: #848484; }
      nav.hum .hum_cont .hum_link {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        flex-wrap: wrap; }
        nav.hum .hum_cont .hum_link .hum_btn {
          width: 282rem;
          margin-right: 40rem; }
          nav.hum .hum_cont .hum_link .hum_btn a {
            display: block;
            width: 100%;
            font-size: 14rem;
            line-height: 1;
            font-weight: bold;
            color: #2B80FF;
            box-sizing: border-box;
            padding: 15rem 0 15rem 28rem;
            border-radius: 42rem;
            border: solid 1rem #2B80FF;
            background: url("../img/btn_arrow_01.png") no-repeat right 9rem center #fff;
            background-size: 28rem; }
        nav.hum .hum_cont .hum_link .cp_link a {
          display: inline-block;
          font-size: 14rem;
          line-height: 1;
          color: #2B80FF;
          padding-right: 27rem;
          background: url("../img/icon_cp_blue.png") no-repeat right center;
          background-size: 17rem; }
          nav.hum .hum_cont .hum_link .cp_link a:hover {
            text-decoration: underline; }
        nav.hum .hum_cont .hum_link ul {
          width: 100%;
          display: flex;
          justify-content: flex-start;
          margin-top: 36rem; }
          nav.hum .hum_cont .hum_link ul li {
            font-size: 14rem;
            line-height: 2.14em;
            border-right: solid 1rem #1C1C1C; }
            nav.hum .hum_cont .hum_link ul li:first-child {
              border-left: solid 1rem #1C1C1C; }
            nav.hum .hum_cont .hum_link ul li a {
              display: inline-block;
              color: #1C1C1C;
              padding: 0 20rem; }
              nav.hum .hum_cont .hum_link ul li a:hover {
                text-decoration: underline; }

  .open nav.hum {
    transform: translateY(0);
    opacity: 1;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease; }

  /*============
  .toggle_btn
  =============*/
  .toggle_btn {
    display: block;
    position: fixed;
    width: 48rem;
    height: 25rem;
    transition: all .5s;
    cursor: pointer;
    z-index: 23; }

  .top_header .toggle_btn {
    top: 27rem;
    right: 21rem; }
    .top_header .toggle_btn img {
      transition: all .5s; }
      .top_header .toggle_btn img.on {
        display: block; }
      .top_header .toggle_btn img.off {
        display: none; }
      .top_header .toggle_btn img.close {
        display: none; }

  .top_header .open .toggle_btn img.on {
    display: none; }
  .top_header .open .toggle_btn img.off {
    display: none; }
  .top_header .open .toggle_btn img.close {
    display: block; }

  .under_header .toggle_btn {
    top: 22rem;
    right: 17rem; }
    .under_header .toggle_btn img {
      transition: all .5s; }
      .under_header .toggle_btn img.on {
        display: block; }
      .under_header .toggle_btn img.close {
        display: none; }

  .under_header .open .toggle_btn img {
    transition: all .5s; }
    .under_header .open .toggle_btn img.on {
      display: none; }
    .under_header .open .toggle_btn img.close {
      display: block; }

  /*============
  #mask
  =============*/
  #mask {
    display: none;
    transition: all .5s; }

  .open #mask {
    display: block;
    transition: all .5s;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    z-index: 20; }

  #top_video {
    position: fixed;
    z-index: -1;
    width: 100%;
    top: 0;
    left: 0; }
    #top_video .video {
      width: 2050rem;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
      #top_video .video video {
        width: 100%;
        height: auto; }

  #top_mv {
    position: relative;
    z-index: 2; }
    #top_mv .inner {
      width: 1180rem;
      margin: 0 auto 56rem;
      padding: 223rem 0 0; }
      #top_mv .inner h2 {
        width: 650rem; }

  #top_message {
    position: relative;
    z-index: 2;
    background: url("../img/top_message_bg.png") no-repeat center;
    background-size: cover; }
    #top_message .inner {
      width: 1024rem;
      margin-left: 244rem;
      padding: 247rem 0 178rem; }
      #top_message .inner .top_message_cont {
        position: relative;
        color: #fff; }
        #top_message .inner .top_message_cont h3 {
          font-size: 90rem;
          letter-spacing: 0.1em;
          line-height: 1.22em;
          font-weight: 600;
          margin-bottom: 23rem; }
        #top_message .inner .top_message_cont .top_message_txt {
          width: 442rem;
          font-size: 16rem;
          line-height: 2.1875em; }
        #top_message .inner .top_message_cont .top_message_img {
          width: 535rem;
          position: absolute;
          top: 74rem;
          right: 0; }

  .top_white_bg {
    width: 100%;
    margin-top: -218rem;
    background: url("../img/white_bg.png") no-repeat center top;
    background-size: 100% auto;
    position: relative;
    z-index: 3; }
    .top_white_bg .top_sec_ttl {
      font-size: 0;
      color: #2B80FF; }
      .top_white_bg .top_sec_ttl .en {
        font-size: 90rem;
        letter-spacing: 0.01em;
        line-height: 1.22em;
        font-weight: 600;
        vertical-align: middle;
        margin-right: 33rem; }
      .top_white_bg .top_sec_ttl .ja {
        font-size: 16rem;
        line-height: 1.9375em;
        font-weight: bold;
        vertical-align: middle; }

  #top_about .inner {
    width: 1150rem;
    margin: 0 auto;
    padding: 246rem 0 147rem; }
    #top_about .inner h3 {
      margin-bottom: 45rem; }
    #top_about .inner .top_about_boxes {
      width: 901rem;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 58rem 0; }
      #top_about .inner .top_about_boxes .top_about_box {
        display: block;
        width: 426rem;
        position: relative;
        transition: 0.3s; }
        #top_about .inner .top_about_boxes .top_about_box:hover {
          opacity: 0.8; }
          #top_about .inner .top_about_boxes .top_about_box:hover .top_about_box_img img {
            transform: scale(1.1); }
        #top_about .inner .top_about_boxes .top_about_box::before {
          position: absolute;
          content: "";
          width: 36rem;
          height: 36rem;
          right: 13rem;
          bottom: 14rem;
          background: url("../img/top_about_arrow.png") no-repeat;
          background-size: contain;
          z-index: 2; }
        #top_about .inner .top_about_boxes .top_about_box .top_about_box_img {
          overflow: hidden; }
          #top_about .inner .top_about_boxes .top_about_box .top_about_box_img img {
            transition: 0.3s; }
        #top_about .inner .top_about_boxes .top_about_box h4 {
          width: 100%;
          color: #fff;
          text-align: center;
          position: absolute;
          top: 109rem;
          left: 50%;
          transform: translateX(-50%); }
          #top_about .inner .top_about_boxes .top_about_box h4 span {
            display: inline-block; }
          #top_about .inner .top_about_boxes .top_about_box h4 .en {
            font-size: 19rem;
            line-height: 1.22em;
            font-weight: 600;
            margin-bottom: 13rem; }
          #top_about .inner .top_about_boxes .top_about_box h4 .ja {
            font-size: 22rem;
            line-height: 1.45em;
            font-weight: bold; }

  #top_people .inner {
    width: 1150rem;
    margin: 0 auto;
    padding: 0 0 99rem; }
    #top_people .inner h3 {
      margin-bottom: 12rem; }
    #top_people .inner .top_people_txt {
      font-size: 20rem;
      line-height: 2em;
      font-weight: 500;
      color: #2B80FF; }
    #top_people .inner .top_people_boxes {
      width: 1106rem;
      margin: 0 auto;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #top_people .inner .top_people_boxes .top_people_box {
        width: 340rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(1) {
          margin-top: 100rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(2) {
          margin-top: 50rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(4) {
          margin-top: 100rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(5) {
          margin-top: 50rem; }
        #top_people .inner .top_people_boxes .top_people_box a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #top_people .inner .top_people_boxes .top_people_box a:hover {
            opacity: 0.8; }
            #top_people .inner .top_people_boxes .top_people_box a:hover .top_people_box_img img {
              transform: scale(1.05); }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_head {
          position: relative;
          margin-bottom: 9rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_img {
            border-radius: 40rem;
            overflow: hidden; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_img img {
              transition: 0.3s; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600;
            color: #2B80FF;
            position: absolute;
            top: 16rem;
            left: 22rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt {
            position: absolute;
            bottom: 23rem;
            left: -13rem; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt span {
              display: inline-block;
              font-size: 17rem;
              line-height: 1.82em;
              font-weight: bold;
              color: #fff;
              padding: 0 11rem;
              background: #2B80FF; }
              #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt span:last-child {
                margin-top: 8rem; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm {
          background: url("../img/btn_arrow_01.png") no-repeat right center;
          background-size: 40rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .role {
            font-size: 14rem;
            line-height: 1.78em;
            color: #848484; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .name {
            font-size: 19rem;
            line-height: 1.63em;
            font-weight: bold;
            color: #2B80FF;
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .name span {
              display: inline-block;
              font-size: 16rem;
              line-height: 1.9375em;
              font-weight: 400;
              vertical-align: middle;
              margin-left: 10rem; }

  /*前ページ共通*/
  #banner {
    padding-bottom: 77rem; }
    #banner .banner_cont {
      width: 900rem;
      margin: 0 auto;
      padding: 18rem 0 32rem;
      border-radius: 20rem;
      background: url("../img/banner_bg.png") no-repeat center;
      background-size: cover;
      text-align: center; }
      #banner .banner_cont .banner_ttl {
        font-size: 90rem;
        line-height: 1.222em;
        font-weight: 600;
        color: #fff; }
      #banner .banner_cont .banner_txt {
        font-size: 15rem;
        line-height: 2.266em;
        font-weight: bold;
        color: #fff;
        margin: 4rem 0 23rem; }
      #banner .banner_cont .banner_btn {
        width: 405rem;
        margin: 0 auto; }
        #banner .banner_cont .banner_btn a {
          display: block;
          width: 100%;
          font-size: 16rem;
          line-height: 1.375em;
          font-weight: bold;
          color: #2B80FF;
          text-align: left;
          box-sizing: border-box;
          padding: 21rem 0 21rem 68rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_01.png") no-repeat right 12rem center #fff;
          background-size: 40rem; }

  .pagetop {
    width: 100%; }
    .pagetop a {
      display: block;
      width: 100%;
      font-size: 14rem;
      line-height: 1.21em;
      color: #2B80FF;
      box-sizing: border-box;
      padding: 10rem 0 11rem 697rem;
      border-top: solid 1rem #2B80FF;
      background: url("../img/pagetop_arrow.png") no-repeat left 660rem center;
      background-size: 20rem; }

  .float_banner {
    width: 172rem;
    position: fixed;
    bottom: 14rem;
    left: 17rem;
    z-index: 10;
    display: none; }
    .float_banner a {
      display: block;
      width: 100%;
      line-height: 0;
      filter: drop-shadow(3rem 3rem 10rem rgba(0, 0, 0, 0.24)); }

  footer {
    background: #fff; }
    footer .footer_menu {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      box-sizing: border-box;
      padding: 28rem 39rem 31rem 61rem;
      background: #2B80FF; }
      footer .footer_menu ul {
        display: flex;
        justify-content: flex-start; }
        footer .footer_menu ul li {
          font-size: 15rem;
          line-height: 2em;
          font-weight: 500;
          border-right: solid 1rem #fff; }
          footer .footer_menu ul li:first-child {
            border-left: solid 1rem #fff; }
          footer .footer_menu ul li a {
            display: inline-block;
            color: #fff;
            padding: 0 20rem; }
            footer .footer_menu ul li a:hover {
              text-decoration: underline; }
      footer .footer_menu .cp_link a {
        display: inline-block;
        font-size: 14rem;
        line-height: 1;
        color: #fff;
        padding-right: 27rem;
        background: url("../img/icon_cp.png") no-repeat right center;
        background-size: 17rem; }
        footer .footer_menu .cp_link a:hover {
          text-decoration: underline; }
    footer .footer_btm {
      position: relative;
      box-sizing: border-box;
      padding: 30rem 0 11rem 32rem; }
      footer .footer_btm .footer_logo {
        width: 232rem; }
        footer .footer_btm .footer_logo .logo {
          width: 232rem;
          margin-bottom: 6rem; }
        footer .footer_btm .footer_logo .logo_txt {
          font-size: 9rem;
          font-weight: 600;
          text-align: center;
          color: #2B80FF; }
          footer .footer_btm .footer_logo .logo_txt.tabsp {
            display: none !important; }
      footer .footer_btm .copyright {
        font-size: 11rem;
        line-height: 2.36em;
        font-weight: 500;
        color: #2B80FF;
        position: absolute;
        bottom: 7rem;
        right: 10rem; }

  /*インタビュー共通*/
  #inter .mv {
    width: 100%;
    margin-top: 72rem;
    position: relative; }
    #inter .mv .mv_cont {
      position: absolute;
      bottom: 37rem; }
      #inter .mv .mv_cont.left {
        left: 220rem; }
      #inter .mv .mv_cont.right {
        left: 678rem; }
      #inter .mv .mv_cont .num {
        font-size: 48rem;
        letter-spacing: 0.08em;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        margin-bottom: 15rem; }
      #inter .mv .mv_cont .mv_ttl {
        margin-bottom: 25rem; }
        #inter .mv .mv_cont .mv_ttl span {
          display: inline-block;
          font-size: 30rem;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          padding: 8rem 10rem; }
          #inter .mv .mv_cont .mv_ttl span.bg01 {
            background: #2B80FF;
            margin-bottom: 11rem; }
          #inter .mv .mv_cont .mv_ttl span.bg02 {
            background: #293AFA; }
      #inter .mv .mv_cont .mv_box {
        display: inline-block; }
        #inter .mv .mv_cont .mv_box .mv_info {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          padding: 0 14rem;
          background: #fff; }
          #inter .mv .mv_cont .mv_box .mv_info .role {
            font-size: 14rem;
            line-height: 31rem;
            color: #848484; }
          #inter .mv .mv_cont .mv_box .mv_info .name {
            font-size: 19rem;
            line-height: 31rem;
            font-weight: bold;
            color: #2B80FF;
            margin: 0 15rem; }
          #inter .mv .mv_cont .mv_box .mv_info .year {
            font-size: 16rem;
            line-height: 31rem;
            color: #2B80FF; }
  #inter .inter_boxes {
    padding: 100rem 0; }
    #inter .inter_boxes .inter_box {
      width: 1000rem;
      margin: 100rem auto 0;
      position: relative; }
      #inter .inter_boxes .inter_box h3 {
        font-size: 28rem;
        line-height: 1.428em;
        font-weight: bold;
        color: #2B80FF;
        margin-bottom: 20rem; }
      #inter .inter_boxes .inter_box .inter_box_txt {
        font-size: 16rem;
        line-height: 1.875em;
        color: #040000; }
      #inter .inter_boxes .inter_box .inter_box_left {
        width: 542rem; }
      #inter .inter_boxes .inter_box .inter_box_img {
        width: 620rem;
        position: absolute;
        top: 0;
        right: -220rem; }
      #inter .inter_boxes .inter_box.box01 {
        margin-top: 0; }
        #inter .inter_boxes .inter_box.box01 .inter_box_left {
          margin-left: auto; }
        #inter .inter_boxes .inter_box.box01 .inter_box_img {
          left: -220rem;
          right: inherit; }
  #inter .inter_sch {
    background: #EFF5FF; }
    #inter .inter_sch .inner {
      width: 870rem;
      margin: 0 auto;
      padding: 40rem 0 80rem; }
      #inter .inter_sch .inner h3 {
        font-size: 30rem;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 42rem; }
      #inter .inter_sch .inner .sch_boxes .sch_box {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 15rem; }
        #inter .inter_sch .inner .sch_boxes .sch_box:last-child {
          margin-bottom: 0; }
        #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_time {
          width: 130rem;
          font-size: 40rem;
          letter-spacing: 0.08em;
          line-height: 1.225em;
          font-weight: 600;
          color: #2B80FF; }
        #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right {
          width: 740rem;
          box-sizing: border-box;
          padding: 25rem 36rem;
          border-radius: 20rem;
          background: #fff;
          position: relative; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right::before {
            position: absolute;
            content: "";
            width: 18rem;
            height: 18rem;
            top: 50%;
            left: -9rem;
            transform: translateY(-50%);
            border-radius: 100%;
            background: #2B80FF; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right h4 {
            font-size: 22rem;
            line-height: 1.818em;
            font-weight: bold;
            color: #2B80FF; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right .sch_box_txt {
            font-size: 16rem;
            line-height: 1.875em;
            color: #040000; }
  #inter .inter_career {
    background: #EFF5FF; }
    #inter .inter_career .inner {
      width: 953rem;
      margin: 0 auto;
      padding: 40rem 0 80rem; }
      #inter .inter_career .inner h3 {
        font-size: 30rem;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 40rem; }
      #inter .inter_career .inner .career_boxes .career_box {
        min-height: 118rem;
        color: #fff;
        display: flex;
        justify-content: space-between;
        align-items: center;
        box-sizing: border-box;
        padding: 0 65rem;
        border-radius: 8rem;
        position: relative;
        margin-bottom: 35rem; }
        #inter .inter_career .inner .career_boxes .career_box::before {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          bottom: -23rem;
          left: 50%;
          transform: translateX(-50%);
          border-style: solid;
          border-right: 25px solid transparent;
          border-left: 25px solid transparent;
          border-bottom: 0; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(1) {
          background: #00A2ED; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(1)::before {
            border-top: 25px solid #00A2ED; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(2) {
          background: #2B80FF; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(2)::before {
            border-top: 25px solid #2B80FF; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(3) {
          background: #2B44FF; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(3)::before {
            border-top: 25px solid #2B44FF; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(4) {
          background: #0109DE;
          margin-bottom: 0; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(4)::before {
            display: none !important; }
        #inter .inter_career .inner .career_boxes .career_box .career_box_year {
          width: 201rem;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 16rem;
          line-height: 2.5em;
          font-weight: bold; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_year span {
            display: inline-block; }
            #inter .inter_career .inner .career_boxes .career_box .career_box_year span.year {
              display: flex;
              justify-content: flex-start;
              align-items: center; }
            #inter .inter_career .inner .career_boxes .career_box .career_box_year span.num {
              font-size: 38rem;
              letter-spacing: 0.08em;
              font-weight: 600;
              margin: 0 8rem;
              line-height: 1; }
        #inter .inter_career .inner .career_boxes .career_box .career_box_right {
          flex: 1; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_right .career_box_ttl {
            font-size: 17rem;
            line-height: 1.76em;
            font-weight: bold; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_right .career_box_txt {
            font-size: 15rem;
            line-height: 2em; }
  #inter .inter_prof {
    background: linear-gradient(130deg, #438EFF, #024DBF); }
    #inter .inter_prof .inner {
      width: 891rem;
      margin: 0 auto;
      padding: 69rem 0 92rem;
      color: #fff; }
      #inter .inter_prof .inner h3 {
        font-size: 32rem;
        letter-spacing: 0.08em;
        line-height: 1.218em;
        font-weight: 600;
        text-align: center;
        margin-bottom: 20rem; }
      #inter .inter_prof .inner .prof_box {
        display: flex;
        justify-content: space-between;
        align-items: flex-start; }
        #inter .inter_prof .inner .prof_box .prof_box_img {
          width: 318rem;
          padding-top: 50rem; }
        #inter .inter_prof .inner .prof_box .prof_box_right {
          width: 500rem; }
          #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_message {
            width: 100%;
            margin-bottom: 17rem; }
          #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_name {
            font-size: 24rem;
            line-height: 1.29em;
            font-weight: bold;
            margin-bottom: 12rem; }
            #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_name span {
              display: inline-block;
              font-size: 16rem;
              line-height: 1;
              font-weight: 400;
              margin-left: 25rem; }
          #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_txt {
            font-size: 16rem;
            line-height: 1.875em; }
  #inter .inter_people .inner {
    width: 1100rem;
    margin: 0 auto;
    padding: 100rem 0; }
    #inter .inter_people .inner h3 {
      color: #2B80FF;
      margin-bottom: 50rem;
      font-weight: 600;
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      #inter .inter_people .inner h3 span {
        display: inline-block; }
      #inter .inter_people .inner h3 .en {
        font-size: 30rem;
        letter-spacing: 0.08em;
        line-height: 1.233em;
        margin-right: 24rem; }
      #inter .inter_people .inner h3 .ja {
        font-size: 16rem;
        font-weight: bold; }
    #inter .inter_people .inner .people_boxes {
      width: 1086rem;
      margin-left: auto;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 39rem 0; }
      #inter .inter_people .inner .people_boxes .people_box {
        width: 340rem; }
        #inter .inter_people .inner .people_boxes .people_box a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #inter .inter_people .inner .people_boxes .people_box a:hover {
            opacity: 0.8; }
            #inter .inter_people .inner .people_boxes .people_box a:hover .people_box_img img {
              transform: scale(1.05); }
          #inter .inter_people .inner .people_boxes .people_box a.active {
            pointer-events: none; }
            #inter .inter_people .inner .people_boxes .people_box a.active .people_box_head::before {
              position: absolute;
              content: "";
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              background: #2B80FF;
              border-radius: 45rem;
              opacity: 0.47; }
        #inter .inter_people .inner .people_boxes .people_box .people_box_head {
          position: relative;
          margin-bottom: 9rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_img {
            border-radius: 45rem;
            overflow: hidden; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_img img {
              transition: 0.3s; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600;
            color: #2B80FF;
            position: absolute;
            top: 16rem;
            left: 22rem;
            z-index: 2; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt {
            position: absolute;
            bottom: 23rem;
            left: -13rem; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt span {
              display: inline-block;
              font-size: 17rem;
              line-height: 1.82em;
              font-weight: bold;
              color: #fff;
              padding: 0 11rem;
              background: #2B80FF; }
              #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt span:last-child {
                margin-top: 8rem; }
        #inter .inter_people .inner .people_boxes .people_box .people_box_btm {
          background: url("../img/btn_arrow_01.png") no-repeat right center;
          background-size: 40rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_btm .role {
            font-size: 14rem;
            line-height: 1.78em;
            color: #848484; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_btm .name {
            font-size: 19rem;
            line-height: 1.63em;
            font-weight: bold;
            color: #2B80FF;
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_btm .name span {
              display: inline-block;
              font-size: 16rem;
              line-height: 1.9375em;
              font-weight: 400;
              vertical-align: middle;
              margin-left: 10rem; }

  /*下層共通（インタビュー以外）*/
  .under {
    position: relative; }
    .under .punkuzu {
      display: inline-block;
      padding: 0 15rem;
      border-radius: 5rem;
      background: #fff;
      position: absolute;
      top: 17rem;
      left: 17rem;
      z-index: 5; }
      .under .punkuzu ul {
        display: flex;
        justify-content: flex-start; }
        .under .punkuzu ul li {
          font-size: 12rem;
          line-height: 2em;
          color: #929292;
          position: relative; }
          .under .punkuzu ul li:first-child {
            margin-right: 30rem; }
            .under .punkuzu ul li:first-child::before {
              position: absolute;
              content: "";
              width: 1rem;
              height: 14rem;
              right: -16rem;
              top: 50%;
              transform: translateY(-50%);
              background: #929292; }
          .under .punkuzu ul li a {
            color: #929292; }
    .under .under_mv {
      width: 100%;
      position: relative;
      margin-top: 71rem; }
      .under .under_mv .under_mv_img {
        position: relative; }
        .under .under_mv .under_mv_img::before {
          position: absolute;
          content: "";
          width: 100%;
          height: 313rem;
          bottom: 0;
          left: 0;
          background: linear-gradient(to bottom, rgba(43, 128, 255, 0), #2B80FF); }
      .under .under_mv .under_mv_ttl {
        width: 1000rem;
        color: #fff;
        position: absolute;
        top: 172rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 2; }
        .under .under_mv .under_mv_ttl span {
          display: inline-block; }
        .under .under_mv .under_mv_ttl .en {
          font-size: 32rem;
          letter-spacing: 0.08em;
          line-height: 1.21875em;
          font-weight: 600;
          margin-bottom: 23rem; }
        .under .under_mv .under_mv_ttl .ja {
          font-size: 48rem;
          line-height: 1;
          font-weight: bold; }

  /*代表メッセージ*/
  #message .message_body {
    padding: 100rem 0; }
    #message .message_body .message_boxes {
      width: 1000rem;
      margin: 0 auto 100rem; }
      #message .message_body .message_boxes .message_box {
        margin-bottom: 100rem; }
        #message .message_body .message_boxes .message_box:last-child {
          margin-bottom: 0; }
        #message .message_body .message_boxes .message_box h3 {
          font-size: 32rem;
          line-height: 1.25em;
          font-weight: bold;
          color: #2B80FF;
          margin-bottom: 20rem; }
        #message .message_body .message_boxes .message_box .message_box_txt {
          font-size: 16rem;
          line-height: 1.875em;
          color: #040000; }
    #message .message_body .message_people {
      width: 612rem;
      margin: 0 auto;
      display: flex;
      justify-content: space-between; }
      #message .message_body .message_people .message_people_box {
        width: 220rem;
        color: #1C1C1C; }
        #message .message_body .message_people .message_people_box .role {
          font-size: 14rem;
          line-height: 2.21em;
          margin: 9rem 0 3rem; }
        #message .message_body .message_people .message_people_box .name {
          width: 110%;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 20rem;
          line-height: 1.55em;
          font-weight: bold; }
          #message .message_body .message_people .message_people_box .name span {
            display: inline-block;
            font-size: 11rem;
            letter-spacing: 0.08em;
            line-height: 1.18em;
            font-weight: 500;
            color: #2B80FF;
            margin-left: 10rem; }

  /*会社を知る*/
  #about .about_body {
    padding: 58rem 0 100rem;
    color: #040000; }
    #about .about_body .inner {
      width: 1000rem;
      margin: 0 auto; }
    #about .about_body .phil {
      margin-bottom: 90rem; }
      #about .about_body .phil h3 {
        margin-bottom: 20rem; }
        #about .about_body .phil h3 span {
          display: inline-block; }
        #about .about_body .phil h3 .en {
          font-size: 17rem;
          letter-spacing: 0.08em;
          line-height: 1.23em;
          font-weight: 600;
          color: #2B80FF;
          margin-bottom: 22rem; }
        #about .about_body .phil h3 .ja {
          font-size: 48rem;
          line-height: 1;
          font-weight: bold; }
          #about .about_body .phil h3 .ja span {
            color: #2B80FF; }
      #about .about_body .phil .phil_txt {
        font-size: 20rem;
        line-height: 2em;
        margin-bottom: 24rem; }
      #about .about_body .phil .phil_img {
        width: 768rem;
        margin: 0 auto 33rem; }
      #about .about_body .phil .phil_cont {
        width: 727rem;
        margin: 0 auto; }
        #about .about_body .phil .phil_cont .phil_box {
          margin-bottom: 24rem; }
          #about .about_body .phil .phil_cont .phil_box ul {
            display: flex;
            justify-content: space-between;
            align-items: center; }
            #about .about_body .phil .phil_cont .phil_box ul li {
              width: 200rem;
              font-size: 34rem;
              line-height: 1;
              font-weight: bold;
              color: #0088FF;
              text-align: center;
              padding: 16rem 0;
              border-radius: 5rem;
              border: solid 2rem #0088FF; }
              #about .about_body .phil .phil_cont .phil_box ul li.icon {
                width: 27rem;
                border: none; }
          #about .about_body .phil .phil_cont .phil_box .arrow {
            width: 34rem;
            margin: 18rem auto; }
          #about .about_body .phil .phil_cont .phil_box .phil_box_txt {
            font-size: 34rem;
            line-height: 1;
            font-weight: bold;
            color: #fff;
            text-align: center;
            padding: 21rem 0 20rem;
            background: #0088FF; }
      #about .about_body .phil .phil_cont_txt {
        font-size: 16rem;
        line-height: 1.875em;
        text-align: center; }
    #about .about_body .data {
      padding: 85rem 0 146rem;
      border-radius: 60rem;
      background: #E7F0FF; }
      #about .about_body .data .data_txt {
        font-size: 20rem;
        line-height: 2em;
        margin-bottom: 40rem; }
      #about .about_body .data .data_cont {
        margin-bottom: 50rem; }
        #about .about_body .data .data_cont:last-child {
          margin-bottom: 0; }
        #about .about_body .data .data_cont .data_cont_ttl {
          display: inline-block;
          font-size: 28rem;
          line-height: 1.2857em;
          color: #fff;
          padding: 5rem 15rem 6rem;
          background: #2B80FF; }
          #about .about_body .data .data_cont .data_cont_ttl span {
            font-weight: bold; }
        #about .about_body .data .data_cont .data_boxes {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          #about .about_body .data .data_cont .data_boxes .data_box {
            width: 50%;
            box-sizing: border-box;
            padding: 8rem 0 0;
            background: #fff;
            border: solid 3rem #2B80FF;
            position: relative; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_box_ttl {
              width: 400rem;
              margin: 0 auto;
              font-size: 20rem;
              line-height: 1.5em;
              font-weight: bold;
              color: #2B80FF;
              text-align: center;
              padding-bottom: 10rem;
              border-bottom: solid 1rem #2B80FF; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_num {
              font-weight: bold;
              text-align: center; }
              #about .about_body .data .data_cont .data_boxes .data_box .data_num span {
                display: inline-block; }
                #about .about_body .data .data_cont .data_boxes .data_box .data_num span.blue {
                  color: #2B80FF; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_box_txt {
              font-size: 16rem;
              line-height: 1.875em;
              font-weight: 400; }
            #about .about_body .data .data_cont .data_boxes .data_box .date {
              position: absolute;
              bottom: 5rem;
              right: 7rem;
              font-size: 13rem;
              line-height: 2.3em; }
            #about .about_body .data .data_cont .data_boxes .data_box.box01 {
              padding-bottom: 50rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_box_ttl {
                margin-bottom: 45rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num {
                font-size: 24rem;
                line-height: 1.25em;
                margin-bottom: 8rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num:last-child {
                  margin-bottom: 0; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num .num {
                  font-size: 80rem;
                  line-height: 1.225em;
                  font-weight: 600; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num .small {
                  font-size: 30rem;
                  margin-left: 9rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box02 {
              border-left: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_box_ttl {
                margin-bottom: 45rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num {
                font-size: 24rem;
                line-height: 1.25em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .num {
                  font-size: 80rem;
                  line-height: 1.225em;
                  font-weight: 600;
                  margin: 0 7rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .small_num {
                  font-size: 54rem;
                  line-height: 1.22em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .small {
                  font-size: 30rem;
                  margin-left: 3rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_box_txt {
                width: 345rem;
                margin: 0 auto; }
            #about .about_body .data .data_cont .data_boxes .data_box.box03 {
              padding-bottom: 40rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_box_ttl {
                margin-bottom: 38rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num {
                font-size: 16rem;
                line-height: 1.875em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .num {
                  font-size: 64rem;
                  line-height: 1.225em;
                  font-weight: 600; }
                  #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .num.num_small {
                    font-size: 43rem;
                    margin: 0 3rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .digit {
                  font-size: 48rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .small {
                  font-size: 30rem;
                  margin-left: 9rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .middle {
                  font-size: 19rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box04 {
              border-left: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_box_ttl {
                margin-bottom: 61rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .num {
                font-size: 64rem;
                line-height: 1.225em;
                font-weight: 600; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .digit {
                font-size: 48rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .small {
                font-size: 30rem;
                margin-left: 9rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box05 {
              width: 100%;
              border-top: none;
              padding: 45rem 55rem;
              display: flex;
              justify-content: space-between;
              align-items: center; }
              #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_ttl {
                width: auto;
                margin: 0;
                padding: 0;
                border: none;
                text-align: left; }
              #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_img {
                width: 692rem;
                box-sizing: border-box;
                border-left: solid 1rem #2B80FF;
                text-align: right; }
                #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_img img {
                  width: 631rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box06 {
              width: 100%;
              padding-bottom: 50rem;
              border-top: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_box_ttl {
                width: 900rem;
                margin-bottom: 29rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num {
                display: flex;
                justify-content: center;
                align-items: center;
                position: relative;
                left: 30rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .num {
                  font-size: 80rem;
                  line-height: 1.225em;
                  font-weight: 600; }
                #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .small {
                  font-size: 60rem;
                  margin-left: 9rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .data_box_txt {
                  width: 456rem;
                  text-align: left;
                  margin-left: 85rem; }

  /*仕事を知る*/
  #job .job_body {
    padding: 40rem 0 100rem;
    color: #040000; }
    #job .job_body .inner {
      width: 1000rem;
      margin: 0 auto 60rem; }
      #job .job_body .inner .job_txt {
        font-size: 20rem;
        line-height: 2em;
        margin-bottom: 80rem; }
      #job .job_body .inner h3 {
        font-size: 37rem;
        line-height: 1.35em;
        font-weight: bold;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 44rem; }
      #job .job_body .inner .job_boxes .job_box {
        width: 933rem;
        box-sizing: border-box;
        padding: 122rem 0 46rem 57rem;
        border-radius: 33rem;
        background: #FFFAEC;
        margin-left: auto;
        margin-bottom: 76rem;
        position: relative; }
        #job .job_body .inner .job_boxes .job_box h4 {
          width: 688rem;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 28rem;
          line-height: 1.428em;
          font-weight: bold;
          color: #fff;
          box-sizing: border-box;
          padding: 13rem 0 13rem 38rem;
          border-radius: 41rem;
          position: absolute;
          top: 32rem;
          left: -67rem; }
          #job .job_body .inner .job_boxes .job_box h4.bg01 {
            background: #FFA000; }
          #job .job_body .inner .job_boxes .job_box h4.bg02 {
            background: #00CD58; }
          #job .job_body .inner .job_boxes .job_box h4.bg03 {
            background: #00B2D5; }
          #job .job_body .inner .job_boxes .job_box h4.bg04 {
            background: #0068FF; }
          #job .job_body .inner .job_boxes .job_box h4 span {
            font-size: 16rem;
            font-weight: 400;
            margin-left: 16rem; }
        #job .job_body .inner .job_boxes .job_box h5 {
          font-size: 24rem;
          line-height: 1.25em;
          font-weight: bold;
          margin-bottom: 15rem; }
          #job .job_body .inner .job_boxes .job_box h5.color01 {
            color: #FFA000; }
          #job .job_body .inner .job_boxes .job_box h5.color02 {
            color: #00CD58; }
          #job .job_body .inner .job_boxes .job_box h5.color03 {
            color: #00B2D5; }
          #job .job_body .inner .job_boxes .job_box h5.color04 {
            color: #0068FF; }
        #job .job_body .inner .job_boxes .job_box .job_box_list li {
          font-size: 16rem;
          line-height: 1.875em;
          font-weight: bold;
          box-sizing: border-box;
          padding-left: 20rem;
          position: relative;
          margin-bottom: 8rem; }
          #job .job_body .inner .job_boxes .job_box .job_box_list li:last-child {
            margin-bottom: 0; }
          #job .job_body .inner .job_boxes .job_box .job_box_list li::before {
            position: absolute;
            content: "";
            width: 11rem;
            height: 11rem;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            border-radius: 100%;
            background-color: #000; }
        #job .job_body .inner .job_boxes .job_box .job_box_arrow {
          width: 397rem;
          position: absolute;
          bottom: -92rem;
          left: 202rem;
          z-index: 3;
          font-size: 16rem; }
        #job .job_body .inner .job_boxes .job_box .job_box_icons {
          width: 551rem;
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          gap: 15rem 0; }
          #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon {
            width: 171rem;
            height: 171rem;
            box-sizing: border-box;
            padding-top: 35rem;
            border-radius: 100%;
            background: #fff; }
            #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon .icon {
              width: 80rem;
              margin: 0 auto; }
            #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon .txt {
              font-size: 15rem;
              line-height: 1.4em;
              font-weight: bold;
              color: #0068FF;
              text-align: center; }
        #job .job_body .inner .job_boxes .job_box.box01 .job_box_list {
          width: 496rem;
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap;
          position: relative; }
          #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li {
            min-width: 228rem; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(1) {
              order: 1; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(2) {
              order: 3; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(3) {
              order: 5;
              margin-bottom: 0; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(4) {
              order: 2; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(5) {
              order: 4; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(6) {
              order: 6;
              margin-bottom: 0; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li.etc {
              font-size: 15rem;
              min-width: inherit;
              position: absolute;
              right: 30rem;
              bottom: 0; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li.etc::before {
                display: none !important; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li::before {
              background-color: #FFA000; }
        #job .job_body .inner .job_boxes .job_box.box01 .job_box_img {
          width: 180rem;
          position: absolute;
          top: 36rem;
          right: 50rem; }
        #job .job_body .inner .job_boxes .job_box.box02 h4 span {
          margin-left: 0; }
        #job .job_body .inner .job_boxes .job_box.box02 .job_box_list li::before {
          background-color: #00CD58; }
        #job .job_body .inner .job_boxes .job_box.box02 .job_box_img {
          width: 207rem;
          position: absolute;
          top: 32rem;
          right: 23rem; }
        #job .job_body .inner .job_boxes .job_box.box03 .job_box_list li::before {
          background-color: #00B2D5; }
        #job .job_body .inner .job_boxes .job_box.box03 .job_box_img {
          width: 319rem;
          position: absolute;
          top: 84rem;
          right: -14rem; }
        #job .job_body .inner .job_boxes .job_box.box04 .job_box_list li::before {
          background-color: #0068FF; }
        #job .job_body .inner .job_boxes .job_box.box04 .job_box_img {
          width: 428rem;
          position: absolute;
          top: 4rem;
          right: -80rem; }
      #job .job_body .inner .job_btm {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        #job .job_body .inner .job_btm .job_btm_txt {
          width: 504rem;
          font-size: 28rem;
          line-height: 1.78em;
          font-weight: bold;
          color: #2B80FF; }
        #job .job_body .inner .job_btm .job_btm_boxes {
          width: 460rem;
          display: flex;
          justify-content: space-between; }
          #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box {
            width: 216rem;
            height: 216rem;
            box-sizing: border-box;
            border-radius: 100%;
            border: solid 1rem #2B80FF; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box .txt {
              font-size: 17rem;
              line-height: 1.588em;
              font-weight: bold;
              color: #2B80FF;
              text-align: center; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:first-child {
              padding-top: 49rem; }
              #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:first-child .icon {
                width: 85rem;
                margin: 0 auto 12rem; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:last-child {
              padding-top: 40rem; }
              #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:last-child .icon {
                width: 78rem;
                margin: 0 auto 15rem; }
    #job .job_body .job_banner {
      padding: 51rem 0 88rem;
      text-align: center;
      background: #E7F0FF; }
      #job .job_body .job_banner .job_banner_ttl {
        font-size: 26rem;
        line-height: 1.73em;
        color: #2B80FF;
        margin-bottom: 44rem; }
      #job .job_body .job_banner .job_banner_btn {
        width: 405rem;
        margin: 0 auto; }
        #job .job_body .job_banner .job_banner_btn a {
          display: block;
          width: 100%;
          font-size: 16rem;
          line-height: 1.375em;
          font-weight: bold;
          color: #fff;
          text-align: left;
          box-sizing: border-box;
          padding: 21rem 0 21rem 133rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_02.png") no-repeat right 12rem center #2B80FF;
          background-size: 40rem; }

  .float_job_banner {
    width: 179rem;
    position: fixed;
    bottom: 21rem;
    right: 21rem;
    z-index: 10;
    display: none; }
    .float_job_banner a {
      display: block;
      width: 100%;
      line-height: 0;
      filter: drop-shadow(3rem 3rem 10rem rgba(0, 0, 0, 0.24)); }

  /*働く環境・学ぶ環境*/
  #work .work_body {
    padding-bottom: 100rem;
    color: #040000; }
    #work .work_body .inner {
      width: 1000rem;
      margin: 0 auto;
      position: relative; }
      #work .work_body .inner h3 {
        font-size: 40rem;
        line-height: 1;
        font-weight: bold;
        color: #2B80FF; }
    #work .work_body .work .inner {
      padding: 40rem 0 78rem; }
    #work .work_body .work .work_txt {
      font-size: 20rem;
      line-height: 2em;
      margin-bottom: 70rem; }
    #work .work_body .work .work_ttl {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      margin-bottom: 37rem; }
      #work .work_body .work .work_ttl .now {
        font-size: 13rem;
        line-height: 1; }
    #work .work_body .work .work_boxes {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 35rem 0;
      margin-bottom: 36rem; }
      #work .work_body .work .work_boxes .work_box {
        width: 306rem;
        min-height: 371rem;
        color: #2B80FF;
        text-align: center;
        box-sizing: border-box;
        padding: 35rem 0 0;
        border-radius: 20rem;
        background: #E7F0FF;
        position: relative; }
        #work .work_body .work .work_boxes .work_box h4 {
          width: 237rem;
          margin: 0 auto 158rem;
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: bold;
          padding: 9rem 0;
          border-radius: 28rem;
          background: #fff;
          position: relative;
          z-index: 3; }
        #work .work_body .work .work_boxes .work_box .work_box_img {
          width: 242rem;
          position: absolute;
          top: 67rem;
          left: 50%;
          transform: translateX(-50%); }
        #work .work_body .work .work_boxes .work_box .work_box_num {
          position: relative;
          z-index: 3; }
          #work .work_body .work .work_boxes .work_box .work_box_num span {
            display: inline-block; }
          #work .work_body .work .work_boxes .work_box .work_box_num .num {
            font-size: 65rem;
            line-height: 1.21em;
            font-weight: 600; }
          #work .work_body .work .work_boxes .work_box .work_box_num .unit {
            font-size: 25rem;
            line-height: 1.2em;
            margin-left: 5rem; }
            #work .work_body .work .work_boxes .work_box .work_box_num .unit.ja {
              font-weight: bold; }
        #work .work_body .work .work_boxes .work_box .work_box_txt {
          font-size: 14rem;
          line-height: 1.5em;
          position: relative;
          z-index: 3; }
          #work .work_body .work .work_boxes .work_box .work_box_txt span {
            font-weight: bold; }
        #work .work_body .work .work_boxes .work_box.box05 h4 {
          margin-bottom: 141rem; }
        #work .work_body .work .work_boxes .work_box.box05 .work_box_num .num {
          font-size: 55rem;
          line-height: 1.21em;
          font-weight: 600; }
          #work .work_body .work .work_boxes .work_box.box05 .work_box_num .num .small_num {
            font-size: 36rem; }
        #work .work_body .work .work_boxes .work_box.box05 .work_box_num .unit {
          font-size: 25rem;
          line-height: 1.2em;
          margin-left: 0; }
        #work .work_body .work .work_boxes .work_box.box05 .work_box_num .gender {
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: bold;
          margin-right: 10rem; }
        #work .work_body .work .work_boxes .work_box.box05 .work_box_num:last-child {
          margin-top: -10rem; }
        #work .work_body .work .work_boxes .work_box.box06 h4 {
          margin-bottom: 138rem; }
    #work .work_body .work .work_btm {
      display: flex;
      justify-content: space-between;
      padding: 44rem 0 30rem;
      border-radius: 48rem;
      border: solid 1rem #2B80FF;
      position: relative; }
      #work .work_body .work .work_btm::before {
        position: absolute;
        content: "";
        width: 1rem;
        height: 238rem;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        background: #2B80FF; }
      #work .work_body .work .work_btm .work_btm_box {
        width: 50%;
        position: relative;
        text-align: center; }
        #work .work_body .work .work_btm .work_btm_box h4 {
          width: 300rem;
          margin: 0 auto;
          font-size: 20rem;
          line-height: 1.5em;
          font-weight: bold;
          color: #fff;
          padding: 9rem 0;
          border-radius: 28rem;
          background: #2B80FF; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_box_img {
          width: 362rem;
          position: absolute; }
        #work .work_body .work .work_btm .work_btm_box.box01 .work_btm_box_img {
          top: 64rem;
          left: 61rem; }
        #work .work_body .work .work_btm .work_btm_box.box02 .work_btm_box_img {
          top: 33rem;
          left: 93rem; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_num {
          display: flex;
          justify-content: center;
          color: #2B80FF;
          gap: 0 33rem;
          margin-top: 126rem; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .num {
            font-size: 65rem;
            line-height: 1.21em;
            font-weight: 600; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .unit {
            font-size: 25rem;
            line-height: 1.2em; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .gender {
            font-size: 20rem;
            line-height: 1.5em;
            font-weight: bold;
            margin-right: 10rem; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_now {
          font-size: 14rem;
          line-height: 1.25em;
          color: #2B80FF;
          position: relative;
          z-index: 3; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_txt {
          font-size: 16rem;
          line-height: 1.875em;
          position: relative;
          z-index: 3;
          margin-top: 158rem; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_txt span {
            font-size: 24rem;
            line-height: 1.25em;
            font-weight: bold;
            color: #2B80FF; }
    #work .work_body .work .chara {
      width: 154rem;
      position: absolute; }
      #work .work_body .work .chara.chara01 {
        bottom: -13rem;
        left: -54rem; }
      #work .work_body .work .chara.chara02 {
        bottom: -15rem;
        right: -62rem; }
    #work .work_body .learn {
      padding: 90rem 0 130rem;
      background: #E7F0FF; }
      #work .work_body .learn h3 {
        margin-bottom: 49rem; }
      #work .work_body .learn .learn_boxes {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 34rem 39rem; }
        #work .work_body .learn .learn_boxes .learn_box {
          width: 480rem;
          padding: 32rem 0 27rem;
          border-radius: 20rem;
          background: #fff;
          position: relative; }
          #work .work_body .learn .learn_boxes .learn_box h4 {
            width: 367rem;
            margin: 0 auto 165rem;
            font-size: 20rem;
            line-height: 1.5em;
            font-weight: bold;
            color: #2B80FF;
            text-align: center;
            padding: 9rem 0;
            border-radius: 28rem;
            background: #EAF3FF;
            position: relative;
            z-index: 2; }
          #work .work_body .learn .learn_boxes .learn_box .learn_box_img {
            width: 243rem;
            position: absolute;
            top: 49rem;
            left: 115rem; }
          #work .work_body .learn .learn_boxes .learn_box .learn_box_txt {
            width: 380rem;
            margin: 0 auto;
            font-size: 15rem;
            line-height: 1.8em;
            position: relative;
            z-index: 2; }
          #work .work_body .learn .learn_boxes .learn_box.box01 .learn_box_txt {
            font-size: 16rem;
            line-height: 1.8em;
            text-align: center; }
            #work .work_body .learn .learn_boxes .learn_box.box01 .learn_box_txt span {
              display: inline-block;
              font-size: 24rem;
              line-height: 1.25em;
              font-weight: bold;
              color: #2B80FF; } }
/* タブレット */
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .sponly, .pconly {
    display: none !important; }

  html {
    font-size: calc(1vw * 100 / 768);
    overscroll-behavior-y: none; }

  header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20; }
    header .inner {
      box-sizing: border-box;
      display: flex;
      justify-content: space-between; }
      header .inner .header_logo a {
        display: flex;
        justify-content: flex-start;
        align-items: center; }
        header .inner .header_logo a img {
          display: block;
          width: 198rem;
          margin-right: 21rem; }
        header .inner .header_logo a .on {
          display: block; }
        header .inner .header_logo a .off {
          display: none; }
        header .inner .header_logo a .logo_txt {
          font-size: 12rem;
          letter-spacing: 0.08em;
          font-weight: 600;
          color: #fff; }
      header .inner .header_nav ul {
        display: flex;
        justify-content: flex-start;
        position: relative; }
        header .inner .header_nav ul li {
          width: 117rem;
          font-size: 13rem;
          letter-spacing: 0.08em;
          line-height: 1.23em;
          font-weight: bold; }
          header .inner .header_nav ul li a {
            display: block;
            width: 100%;
            color: #fff;
            text-align: center;
            padding: 4rem 0;
            border-radius: 16rem; }
            header .inner .header_nav ul li a.green {
              background: #00C7C3; }
            header .inner .header_nav ul li a.blue {
              background: #2B80FF; }
    header.top_header {
      transition: background 0.4s ease; }
      header.top_header.is-scrolled {
        background: #fff;
        box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
        header.top_header.is-scrolled .inner .header_logo .on {
          display: none; }
        header.top_header.is-scrolled .inner .header_logo .off {
          display: block; }
        header.top_header.is-scrolled .inner .header_logo .logo_txt {
          color: #2B80FF; }
        header.top_header.is-scrolled .toggle_btn img.on {
          display: none; }
        header.top_header.is-scrolled .toggle_btn img.off {
          display: block; }
        header.top_header.is-scrolled .open .toggle_btn img.on {
          display: none; }
        header.top_header.is-scrolled .open .toggle_btn img.off {
          display: none; }
      header.top_header .inner {
        padding: 0 103rem 0 19rem; }
        header.top_header .inner .header_logo {
          padding: 16rem 0 8rem; }
        header.top_header .inner .header_nav {
          padding: 21rem 0; }
    header.under_header {
      background: #fff;
      box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
      header.under_header .inner {
        height: 71rem;
        box-sizing: border-box;
        padding: 0 86rem 0 19rem; }
        header.under_header .inner .header_logo {
          width: 232rem;
          padding: 15rem 0 14rem; }
          header.under_header .inner .header_logo a img {
            width: 232rem; }
          header.under_header .inner .header_logo a .logo_txt {
            color: #2B80FF; }
        header.under_header .inner .header_nav ul {
          display: none !important; }

  #navArea {
    position: relative; }

  /*ハンバーガー メニュー*/
  nav.hum {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    /*bottom: 0;*/
    width: 100%;
    height: auto;
    overflow-x: hidden;
    overflow-y: auto;
    background: #fff;
    -webkit-overflow-scrolling: touch;
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease;
    z-index: 21;
    box-sizing: border-box;
    padding: 15rem 0 34rem 19rem;
    border-radius: 0 0 30rem 30rem;
    box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
    nav.hum .hum_logo {
      width: 232rem;
      margin-bottom: 45rem; }
    nav.hum .hum_cont {
      width: 585rem;
      margin: 0 auto;
      position: relative; }
      nav.hum .hum_cont .hum_entry {
        width: 282rem;
        display: flex;
        justify-content: space-between;
        position: absolute;
        top: -85rem;
        right: 0; }
        nav.hum .hum_cont .hum_entry .hum_entry_btn {
          width: 134rem;
          text-align: center; }
          nav.hum .hum_cont .hum_entry .hum_entry_btn a {
            display: block;
            width: 100%;
            font-size: 13rem;
            letter-spacing: 0.08em;
            line-height: 1.38em;
            font-weight: bold;
            color: #fff;
            padding: 8rem 0;
            border-radius: 20rem; }
            nav.hum .hum_cont .hum_entry .hum_entry_btn a.bg01 {
              background: #00C7C3; }
            nav.hum .hum_cont .hum_entry .hum_entry_btn a.bg02 {
              background: #2B80FF; }
      nav.hum .hum_cont .hum_menu {
        display: flex;
        justify-content: flex-start;
        margin-bottom: 30rem;
        position: relative; }
        nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl {
          margin-bottom: 20rem;
          display: flex;
          justify-content: flex-start;
          align-items: center; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl span {
            display: block;
            color: #2B80FF; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl .en {
            font-size: 20rem;
            line-height: 1.2em;
            font-weight: 600;
            margin-right: 10rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl .ja {
            font-size: 11rem;
            line-height: 1.45em;
            font-weight: bold; }
        nav.hum .hum_cont .hum_menu .hum_menu_box ul li a {
          display: inline-block;
          padding-left: 21rem;
          position: relative; }
          nav.hum .hum_cont .hum_menu .hum_menu_box ul li a::before {
            position: absolute;
            content: "";
            width: 10rem;
            height: 10rem;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            border-radius: 100%;
            background: #2B80FF; }
        nav.hum .hum_cont .hum_menu .hum_menu_box.about {
          margin-right: 83rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li {
            margin-bottom: 15rem; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li:last-child {
              margin-bottom: 0; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li a {
              font-size: 16rem;
              line-height: 1.5em;
              font-weight: bold;
              color: #1C1C1C; }
        nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li {
          margin-bottom: 10rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(6) {
            margin-bottom: 0; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li a {
            display: flex;
            justify-content: flex-start;
            align-items: center; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li span {
            display: inline-block; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li .name {
            font-size: 16rem;
            line-height: 1.93em;
            font-weight: bold;
            color: #1C1C1C;
            margin-right: 10rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li .role {
            font-size: 14rem;
            line-height: 2.38em;
            color: #848484; }
      nav.hum .hum_cont .hum_link {
        display: flex;
        justify-content: space-between;
        align-items: center;
        flex-wrap: wrap; }
        nav.hum .hum_cont .hum_link .hum_btn {
          width: 282rem; }
          nav.hum .hum_cont .hum_link .hum_btn a {
            display: block;
            width: 100%;
            font-size: 14rem;
            line-height: 1;
            font-weight: bold;
            color: #2B80FF;
            box-sizing: border-box;
            padding: 15rem 0 15rem 28rem;
            border-radius: 42rem;
            border: solid 1rem #2B80FF;
            background: url("../img/btn_arrow_01.png") no-repeat right 9rem center #fff;
            background-size: 28rem; }
        nav.hum .hum_cont .hum_link .cp_link a {
          display: inline-block;
          font-size: 14rem;
          line-height: 1;
          color: #2B80FF;
          padding-right: 27rem;
          background: url("../img/icon_cp_blue.png") no-repeat right center;
          background-size: 17rem; }
          nav.hum .hum_cont .hum_link .cp_link a:hover {
            text-decoration: underline; }
        nav.hum .hum_cont .hum_link ul {
          width: 100%;
          display: flex;
          justify-content: flex-start;
          margin-top: 22rem; }
          nav.hum .hum_cont .hum_link ul li {
            font-size: 14rem;
            line-height: 2.14em;
            border-right: solid 1rem #1C1C1C; }
            nav.hum .hum_cont .hum_link ul li:first-child {
              border-left: solid 1rem #1C1C1C; }
            nav.hum .hum_cont .hum_link ul li a {
              display: inline-block;
              color: #1C1C1C;
              padding: 0 20rem; }
              nav.hum .hum_cont .hum_link ul li a:hover {
                text-decoration: underline; }

  .open nav.hum {
    transform: translateY(0);
    opacity: 1;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease; }

  /*============
  .toggle_btn
  =============*/
  .toggle_btn {
    display: block;
    position: fixed;
    top: 21rem;
    right: 17rem;
    width: 47rem;
    height: 25rem;
    transition: all .5s;
    cursor: pointer;
    z-index: 23; }

  .toggle_btn img {
    transition: all .5s; }
    .toggle_btn img.on {
      display: block; }
    .toggle_btn img.off {
      display: none; }
    .toggle_btn img.close {
      display: none; }

  .open .toggle_btn img.on {
    display: none; }
  .open .toggle_btn img.close {
    display: block; }

  /*============
  #mask
  =============*/
  #mask {
    display: none;
    transition: all .5s; }

  .open #mask {
    display: block;
    transition: all .5s;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    z-index: 20; }

  #top_video {
    position: fixed;
    z-index: -1;
    width: 100%;
    top: 0;
    left: 0; }
    #top_video .video {
      width: 1500rem;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
      #top_video .video video {
        width: 100%;
        height: auto; }

  #top_mv {
    position: relative;
    z-index: 2; }
    #top_mv .inner {
      width: 548rem;
      margin: 0 auto 45rem;
      padding: 232rem 0 0; }
      #top_mv .inner h2 {
        width: 442rem; }

  #top_message {
    position: relative;
    z-index: 3;
    background: url("../img/top_message_bg_tab.png") no-repeat center;
    background-size: cover; }
    #top_message .inner {
      width: 582rem;
      margin: 0 auto;
      padding: 137rem 0 568rem; }
      #top_message .inner .top_message_cont {
        position: relative;
        color: #fff; }
        #top_message .inner .top_message_cont h3 {
          font-size: 90rem;
          letter-spacing: 0.08em;
          line-height: 1.22em;
          font-weight: 600;
          margin-bottom: 23rem; }
        #top_message .inner .top_message_cont .top_message_txt {
          width: 439rem;
          font-size: 16rem;
          line-height: 2.1875em; }
        #top_message .inner .top_message_cont .top_message_img {
          width: 535rem;
          position: absolute;
          bottom: -433rem;
          right: -33rem; }

  .top_white_bg {
    width: 100%;
    margin-top: -125rem;
    background: #fff;
    position: relative;
    z-index: 2; }
    .top_white_bg .top_sec_ttl {
      font-size: 0;
      color: #2B80FF; }
      .top_white_bg .top_sec_ttl .en {
        font-size: 90rem;
        line-height: 1.22em;
        font-weight: 600;
        vertical-align: middle;
        margin-right: 33rem; }
      .top_white_bg .top_sec_ttl .ja {
        font-size: 16rem;
        line-height: 1.9375em;
        font-weight: bold;
        vertical-align: middle; }

  #top_about .inner {
    width: 718rem;
    margin: 0 auto;
    padding: 182rem 0 61rem; }
    #top_about .inner h3 {
      margin-bottom: 26rem; }
    #top_about .inner .top_about_boxes {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 46rem 0; }
      #top_about .inner .top_about_boxes .top_about_box {
        display: block;
        width: 340rem;
        position: relative;
        transition: 0.3s; }
        #top_about .inner .top_about_boxes .top_about_box:hover {
          opacity: 0.8; }
          #top_about .inner .top_about_boxes .top_about_box:hover .top_about_box_img img {
            transform: scale(1.1); }
        #top_about .inner .top_about_boxes .top_about_box::before {
          position: absolute;
          content: "";
          width: 29rem;
          height: 29rem;
          right: 10rem;
          bottom: 11rem;
          background: url("../img/top_about_arrow.png") no-repeat;
          background-size: contain;
          z-index: 2; }
        #top_about .inner .top_about_boxes .top_about_box .top_about_box_img {
          overflow: hidden; }
          #top_about .inner .top_about_boxes .top_about_box .top_about_box_img img {
            transition: 0.3s; }
        #top_about .inner .top_about_boxes .top_about_box h4 {
          width: 100%;
          color: #fff;
          text-align: center;
          position: absolute;
          top: 96rem;
          left: 50%;
          transform: translateX(-50%); }
          #top_about .inner .top_about_boxes .top_about_box h4 span {
            display: inline-block; }
          #top_about .inner .top_about_boxes .top_about_box h4 .en {
            font-size: 19rem;
            line-height: 1em;
            font-weight: 600;
            margin-bottom: 11rem; }
          #top_about .inner .top_about_boxes .top_about_box h4 .ja {
            font-size: 22rem;
            line-height: 1.18em;
            font-weight: bold; }

  #top_people .inner {
    width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0 23rem 63rem 25rem; }
    #top_people .inner h3 {
      margin-bottom: 12rem; }
    #top_people .inner .top_people_txt {
      font-size: 20rem;
      line-height: 2em;
      font-weight: 500;
      color: #2B80FF; }
    #top_people .inner .top_people_boxes {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #top_people .inner .top_people_boxes .top_people_box {
        width: 340rem;
        margin-bottom: 30rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(1) {
          margin-top: 50rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(3) {
          margin-top: 50rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(5) {
          margin-top: 50rem; }
        #top_people .inner .top_people_boxes .top_people_box:nth-child(n+5) {
          margin-bottom: 0; }
        #top_people .inner .top_people_boxes .top_people_box a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #top_people .inner .top_people_boxes .top_people_box a:hover {
            opacity: 0.8; }
            #top_people .inner .top_people_boxes .top_people_box a:hover .top_people_box_img img {
              transform: scale(1.05); }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_head {
          position: relative;
          margin-bottom: 9rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_img {
            border-radius: 40rem;
            overflow: hidden; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_img img {
              transition: 0.3s; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600;
            color: #2B80FF;
            position: absolute;
            top: 16rem;
            left: 22rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt {
            position: absolute;
            bottom: 23rem;
            left: -13rem; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt span {
              display: inline-block;
              font-size: 17rem;
              line-height: 1.82em;
              font-weight: bold;
              color: #fff;
              padding: 0 11rem;
              background: #2B80FF; }
              #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt span:last-child {
                margin-top: 8rem; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm {
          background: url("../img/btn_arrow_01.png") no-repeat right center;
          background-size: 40rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .role {
            font-size: 14rem;
            line-height: 1.78em;
            color: #848484; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .name {
            font-size: 19rem;
            line-height: 1.63em;
            font-weight: bold;
            color: #2B80FF;
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .name span {
              display: inline-block;
              font-size: 16rem;
              line-height: 1.9375em;
              font-weight: 400;
              vertical-align: middle;
              margin-left: 10rem; }

  /*前ページ共通*/
  #banner {
    padding-bottom: 50rem; }
    #banner .banner_cont {
      width: 720rem;
      margin: 0 auto;
      padding: 18rem 0 32rem;
      background: url("../img/banner_bg_tab.png") no-repeat center;
      background-size: cover;
      border-radius: 20rem;
      text-align: center; }
      #banner .banner_cont .banner_ttl {
        font-size: 90rem;
        line-height: 1.222em;
        font-weight: 600;
        color: #fff; }
      #banner .banner_cont .banner_txt {
        font-size: 15rem;
        line-height: 2.266em;
        font-weight: bold;
        color: #fff;
        margin: 4rem 0 22rem; }
      #banner .banner_cont .banner_btn {
        width: 324rem;
        margin: 0 auto; }
        #banner .banner_cont .banner_btn a {
          display: block;
          width: 100%;
          font-size: 16rem;
          line-height: 1.375em;
          font-weight: bold;
          color: #2B80FF;
          text-align: left;
          box-sizing: border-box;
          padding: 21rem 0 21rem 30rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_01.png") no-repeat right 10rem center #fff;
          background-size: 40rem; }

  .pagetop {
    width: 100%; }
    .pagetop a {
      display: block;
      width: 100%;
      font-size: 14rem;
      line-height: 1.21em;
      color: #2B80FF;
      box-sizing: border-box;
      padding: 10rem 0 11rem 353rem;
      border-top: solid 1rem #2B80FF;
      background: url("../img/pagetop_arrow.png") no-repeat left 316rem center;
      background-size: 20rem; }

  .float_banner {
    width: 119rem;
    position: fixed;
    bottom: 13rem;
    left: 9rem;
    z-index: 10;
    display: none; }
    .float_banner a {
      display: block;
      width: 100%;
      line-height: 0;
      filter: drop-shadow(3rem 3rem 10rem rgba(0, 0, 0, 0.24)); }

  footer {
    background: #fff; }
    footer .footer_menu {
      box-sizing: border-box;
      padding: 35rem 0;
      background: #2B80FF; }
      footer .footer_menu ul {
        display: flex;
        justify-content: center;
        margin-bottom: 17rem; }
        footer .footer_menu ul li {
          font-size: 15rem;
          line-height: 2em;
          font-weight: 500;
          border-right: solid 1rem #fff; }
          footer .footer_menu ul li:first-child {
            border-left: solid 1rem #fff; }
          footer .footer_menu ul li a {
            display: inline-block;
            color: #fff;
            padding: 0 14rem; }
            footer .footer_menu ul li a:hover {
              text-decoration: underline; }
      footer .footer_menu .cp_link {
        text-align: center; }
        footer .footer_menu .cp_link a {
          display: inline-block;
          font-size: 14rem;
          line-height: 2.28em;
          color: #fff;
          padding-right: 27rem;
          background: url("../img/icon_cp.png") no-repeat right center;
          background-size: 17rem; }
          footer .footer_menu .cp_link a:hover {
            text-decoration: underline; }
    footer .footer_btm {
      position: relative;
      box-sizing: border-box;
      padding: 22rem 0 0;
      text-align: center; }
      footer .footer_btm .footer_logo {
        margin-bottom: 6rem; }
        footer .footer_btm .footer_logo .logo {
          width: 237rem;
          margin: 0 auto 8rem; }
        footer .footer_btm .footer_logo .logo_txt {
          font-size: 9rem;
          font-weight: 600;
          color: #2B80FF; }
      footer .footer_btm .copyright {
        font-size: 9rem;
        line-height: 2.77em;
        font-weight: 500;
        color: #2B80FF; }

  /*インタビュー共通*/
  #inter .mv {
    width: 100%;
    margin-top: 71rem;
    position: relative; }
    #inter .mv .mv_cont {
      position: absolute;
      bottom: 49rem; }
      #inter .mv .mv_cont.left {
        left: 27rem; }
      #inter .mv .mv_cont.right {
        left: 27rem; }
      #inter .mv .mv_cont .num {
        font-size: 48rem;
        letter-spacing: 0.08em;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        margin-bottom: 15rem; }
      #inter .mv .mv_cont .mv_ttl {
        margin-bottom: 25rem; }
        #inter .mv .mv_cont .mv_ttl span {
          display: inline-block;
          font-size: 30rem;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          padding: 8rem 10rem; }
          #inter .mv .mv_cont .mv_ttl span.bg01 {
            background: #2B80FF;
            margin-bottom: 11rem; }
          #inter .mv .mv_cont .mv_ttl span.bg02 {
            background: #293AFA; }
      #inter .mv .mv_cont .mv_box {
        display: inline-block; }
        #inter .mv .mv_cont .mv_box .mv_info {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          padding: 0 14rem;
          background: #fff; }
          #inter .mv .mv_cont .mv_box .mv_info .role {
            font-size: 14rem;
            line-height: 31rem;
            color: #848484; }
          #inter .mv .mv_cont .mv_box .mv_info .name {
            font-size: 19rem;
            line-height: 31rem;
            font-weight: bold;
            color: #2B80FF;
            margin: 0 15rem; }
          #inter .mv .mv_cont .mv_box .mv_info .year {
            font-size: 16rem;
            line-height: 31rem;
            color: #2B80FF; }
  #inter .inter_boxes {
    padding: 100rem 0; }
    #inter .inter_boxes .inter_box {
      width: 720rem;
      margin: 0 auto 100rem;
      position: relative; }
      #inter .inter_boxes .inter_box:last-child {
        margin-bottom: 0; }
      #inter .inter_boxes .inter_box h3 {
        font-size: 30rem;
        line-height: 1.5em;
        font-weight: bold;
        color: #2B80FF;
        margin-bottom: 29rem; }
      #inter .inter_boxes .inter_box .inter_box_txt {
        font-size: 16rem;
        line-height: 1.875em;
        color: #040000; }
      #inter .inter_boxes .inter_box .inter_box_left {
        width: 100%; }
      #inter .inter_boxes .inter_box .inter_box_img {
        width: 520rem;
        margin: 25rem auto 0; }
  #inter .inter_sch {
    background: #EFF5FF; }
    #inter .inter_sch .inner {
      width: 720rem;
      margin: 0 auto;
      padding: 42rem 0 69rem; }
      #inter .inter_sch .inner h3 {
        font-size: 30rem;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 38rem; }
      #inter .inter_sch .inner .sch_boxes .sch_box {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 15rem; }
        #inter .inter_sch .inner .sch_boxes .sch_box:last-child {
          margin-bottom: 0; }
        #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_time {
          width: 108rem;
          font-size: 34rem;
          letter-spacing: 0.08em;
          line-height: 1.205em;
          font-weight: 600;
          color: #2B80FF; }
        #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right {
          width: 612rem;
          box-sizing: border-box;
          padding: 25rem 24rem 25rem 36rem;
          border-radius: 20rem;
          background: #fff;
          position: relative; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right::before {
            position: absolute;
            content: "";
            width: 16rem;
            height: 16rem;
            top: 50%;
            left: -8rem;
            transform: translateY(-50%);
            border-radius: 100%;
            background: #2B80FF; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right h4 {
            font-size: 22rem;
            line-height: 1.818em;
            font-weight: bold;
            color: #2B80FF; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right .sch_box_txt {
            font-size: 16rem;
            line-height: 1.875em;
            color: #040000; }
  #inter .inter_career {
    background: #EFF5FF; }
    #inter .inter_career .inner {
      width: 720rem;
      margin: 0 auto;
      padding: 40rem 0 72rem; }
      #inter .inter_career .inner h3 {
        font-size: 30rem;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 40rem; }
      #inter .inter_career .inner .career_boxes .career_box {
        min-height: 118rem;
        color: #fff;
        display: flex;
        justify-content: space-between;
        align-items: center;
        box-sizing: border-box;
        padding: 0 36rem 0 65rem;
        border-radius: 8rem;
        position: relative;
        margin-bottom: 35rem; }
        #inter .inter_career .inner .career_boxes .career_box::before {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          bottom: -23rem;
          left: 50%;
          transform: translateX(-50%);
          border-style: solid;
          border-right: 25px solid transparent;
          border-left: 25px solid transparent;
          border-bottom: 0; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(1) {
          background: #00A2ED; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(1)::before {
            border-top: 25px solid #00A2ED; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(2) {
          background: #2B80FF; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(2)::before {
            border-top: 25px solid #2B80FF; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(3) {
          background: #2B44FF; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(3)::before {
            border-top: 25px solid #2B44FF; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(4) {
          background: #0109DE;
          margin-bottom: 0; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(4)::before {
            display: none !important; }
        #inter .inter_career .inner .career_boxes .career_box .career_box_year {
          width: 191rem;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 16rem;
          line-height: 2.5em;
          font-weight: bold; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_year span {
            display: inline-block; }
            #inter .inter_career .inner .career_boxes .career_box .career_box_year span.year {
              display: flex;
              justify-content: flex-start;
              align-items: center; }
            #inter .inter_career .inner .career_boxes .career_box .career_box_year span.num {
              font-size: 38rem;
              letter-spacing: 0.08em;
              font-weight: 600;
              margin: 0 8rem;
              line-height: 1; }
        #inter .inter_career .inner .career_boxes .career_box .career_box_right {
          flex: 1; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_right .career_box_ttl {
            font-size: 17rem;
            line-height: 1.76em;
            font-weight: bold; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_right .career_box_txt {
            font-size: 15rem;
            line-height: 2em; }
  #inter .inter_prof {
    background: linear-gradient(130deg, #438EFF, #024DBF); }
    #inter .inter_prof .inner {
      width: 614rem;
      margin: 0 auto;
      padding: 50rem 0 69rem;
      color: #fff; }
      #inter .inter_prof .inner h3 {
        font-size: 32rem;
        letter-spacing: 0.08em;
        line-height: 1.218em;
        font-weight: 600;
        text-align: center;
        margin-bottom: 20rem; }
      #inter .inter_prof .inner .prof_box .prof_box_img {
        width: 287rem;
        margin: 0 auto 13rem; }
      #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_message {
        width: 500rem;
        margin-bottom: 17rem; }
      #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_name {
        font-size: 24rem;
        line-height: 1.29em;
        font-weight: bold;
        margin-bottom: 8rem; }
        #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_name span {
          display: inline-block;
          font-size: 16rem;
          line-height: 1;
          font-weight: 400;
          margin-left: 31rem; }
      #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_txt {
        font-size: 16rem;
        line-height: 1.875em; }
  #inter .inter_people .inner {
    width: 720rem;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 100rem 0; }
    #inter .inter_people .inner h3 {
      color: #2B80FF;
      margin-bottom: 40rem;
      font-weight: 600;
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      #inter .inter_people .inner h3 span {
        display: inline-block; }
      #inter .inter_people .inner h3 .en {
        font-size: 30rem;
        letter-spacing: 0.08em;
        line-height: 1.233em;
        margin-right: 22rem; }
      #inter .inter_people .inner h3 .ja {
        font-size: 16rem;
        font-weight: bold; }
    #inter .inter_people .inner .people_boxes {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #inter .inter_people .inner .people_boxes .people_box {
        width: 340rem;
        margin-bottom: 40rem; }
        #inter .inter_people .inner .people_boxes .people_box:nth-child(n+5) {
          margin-bottom: 0; }
        #inter .inter_people .inner .people_boxes .people_box a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #inter .inter_people .inner .people_boxes .people_box a:hover {
            opacity: 0.8; }
            #inter .inter_people .inner .people_boxes .people_box a:hover .top_people_box_img img {
              transform: scale(1.05); }
          #inter .inter_people .inner .people_boxes .people_box a.active {
            pointer-events: none; }
            #inter .inter_people .inner .people_boxes .people_box a.active .people_box_head::before {
              position: absolute;
              content: "";
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              background: #2B80FF;
              border-radius: 45rem;
              opacity: 0.47; }
        #inter .inter_people .inner .people_boxes .people_box .people_box_head {
          position: relative;
          margin-bottom: 9rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_img {
            border-radius: 45rem;
            overflow: hidden; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_img img {
              transition: 0.3s; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600;
            color: #2B80FF;
            position: absolute;
            top: 16rem;
            left: 22rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt {
            position: absolute;
            bottom: 23rem;
            left: -13rem; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt span {
              display: inline-block;
              font-size: 17rem;
              line-height: 1.82em;
              font-weight: bold;
              color: #fff;
              padding: 0 11rem;
              background: #2B80FF; }
              #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt span:last-child {
                margin-top: 8rem; }
        #inter .inter_people .inner .people_boxes .people_box .people_box_btm {
          background: url("../img/btn_arrow_01.png") no-repeat right center;
          background-size: 40rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_btm .role {
            font-size: 14rem;
            line-height: 1.78em;
            color: #848484; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_btm .name {
            font-size: 19rem;
            line-height: 1.63em;
            font-weight: bold;
            color: #2B80FF;
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_btm .name span {
              display: inline-block;
              font-size: 16rem;
              line-height: 1.9375em;
              font-weight: 400;
              vertical-align: middle;
              margin-left: 10rem; }

  /*下層共通（インタビュー以外）*/
  .under {
    position: relative; }
    .under .punkuzu {
      display: inline-block;
      padding: 0 15rem;
      border-radius: 5rem;
      background: #fff;
      position: absolute;
      top: 12rem;
      left: 11rem;
      z-index: 5; }
      .under .punkuzu ul {
        display: flex;
        justify-content: flex-start; }
        .under .punkuzu ul li {
          font-size: 12rem;
          line-height: 2em;
          color: #929292;
          position: relative; }
          .under .punkuzu ul li:first-child {
            margin-right: 30rem; }
            .under .punkuzu ul li:first-child::before {
              position: absolute;
              content: "";
              width: 1rem;
              height: 14rem;
              right: -16rem;
              top: 50%;
              transform: translateY(-50%);
              background: #929292; }
          .under .punkuzu ul li a {
            color: #929292; }
    .under .under_mv {
      width: 100%;
      position: relative;
      margin-top: 71rem; }
      .under .under_mv .under_mv_img {
        position: relative; }
        .under .under_mv .under_mv_img::before {
          position: absolute;
          content: "";
          width: 100%;
          height: 313rem;
          bottom: 0;
          left: 0;
          background: linear-gradient(to bottom, rgba(43, 128, 255, 0), #2B80FF); }
      .under .under_mv .under_mv_ttl {
        width: 718rem;
        color: #fff;
        position: absolute;
        top: 172rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 2; }
        .under .under_mv .under_mv_ttl span {
          display: inline-block; }
        .under .under_mv .under_mv_ttl .en {
          font-size: 32rem;
          letter-spacing: 0.08em;
          line-height: 1.21875em;
          font-weight: 600;
          margin-bottom: 17rem; }
        .under .under_mv .under_mv_ttl .ja {
          font-size: 48rem;
          line-height: 1;
          font-weight: bold; }

  /*代表メッセージ*/
  #message .message_body {
    padding: 51rem 0 100rem; }
    #message .message_body .message_boxes {
      width: 719rem;
      margin: 0 auto 100rem; }
      #message .message_body .message_boxes .message_box {
        margin-bottom: 100rem; }
        #message .message_body .message_boxes .message_box:last-child {
          margin-bottom: 0; }
        #message .message_body .message_boxes .message_box h3 {
          font-size: 32rem;
          line-height: 1.25em;
          font-weight: bold;
          color: #2B80FF;
          margin-bottom: 20rem; }
        #message .message_body .message_boxes .message_box .message_box_txt {
          font-size: 16rem;
          line-height: 1.875em;
          color: #040000; }
    #message .message_body .message_people {
      width: 612rem;
      margin: 0 auto;
      display: flex;
      justify-content: space-between; }
      #message .message_body .message_people .message_people_box {
        width: 220rem;
        color: #1C1C1C; }
        #message .message_body .message_people .message_people_box .role {
          font-size: 14rem;
          line-height: 2.21em;
          margin: 9rem 0 3rem; }
        #message .message_body .message_people .message_people_box .name {
          width: 110%;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 20rem;
          line-height: 1.55em;
          font-weight: bold; }
          #message .message_body .message_people .message_people_box .name span {
            display: inline-block;
            font-size: 11rem;
            letter-spacing: 0.08em;
            line-height: 1.18em;
            font-weight: 500;
            color: #2B80FF;
            margin-left: 10rem; }

  /*会社を知る*/
  #about .about_body {
    padding: 60rem 0 100rem;
    color: #040000; }
    #about .about_body .inner {
      width: 720rem;
      margin: 0 auto; }
    #about .about_body .phil {
      margin-bottom: 100rem; }
      #about .about_body .phil h3 {
        margin-bottom: 20rem; }
        #about .about_body .phil h3 span {
          display: inline-block; }
        #about .about_body .phil h3 .en {
          font-size: 17rem;
          letter-spacing: 0.08em;
          line-height: 1.25em;
          font-weight: 600;
          color: #2B80FF;
          margin-bottom: 20rem; }
        #about .about_body .phil h3 .ja {
          font-size: 48rem;
          line-height: 1em;
          font-weight: bold; }
          #about .about_body .phil h3 .ja span {
            color: #2B80FF; }
      #about .about_body .phil .phil_txt {
        font-size: 20rem;
        line-height: 2em;
        margin-bottom: 37rem; }
      #about .about_body .phil .phil_img {
        width: 732rem;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        margin-bottom: 30rem; }
      #about .about_body .phil .phil_cont .phil_box {
        margin-bottom: 14rem; }
        #about .about_body .phil .phil_cont .phil_box ul {
          display: flex;
          justify-content: space-between;
          align-items: center; }
          #about .about_body .phil .phil_cont .phil_box ul li {
            width: 197rem;
            font-size: 34rem;
            line-height: 1;
            font-weight: bold;
            color: #0088FF;
            text-align: center;
            padding: 16rem 0;
            border-radius: 5rem;
            border: solid 2rem #0088FF; }
            #about .about_body .phil .phil_cont .phil_box ul li.icon {
              width: 27rem;
              border: none; }
        #about .about_body .phil .phil_cont .phil_box .arrow {
          width: 34rem;
          margin: 18rem auto; }
        #about .about_body .phil .phil_cont .phil_box .phil_box_txt {
          font-size: 34rem;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          text-align: center;
          padding: 20rem 0;
          background: #0088FF; }
      #about .about_body .phil .phil_cont_txt {
        font-size: 15rem;
        line-height: 1.866em;
        text-align: center; }
    #about .about_body .data {
      padding: 45rem 0 80rem;
      border-radius: 40rem;
      background: #E7F0FF; }
      #about .about_body .data .data_txt {
        font-size: 20rem;
        line-height: 2em;
        margin-bottom: 38rem; }
      #about .about_body .data .data_cont {
        margin-bottom: 40rem; }
        #about .about_body .data .data_cont:last-child {
          margin-bottom: 0; }
        #about .about_body .data .data_cont .data_cont_ttl {
          display: inline-block;
          font-size: 23rem;
          line-height: 1.565em;
          color: #fff;
          padding: 2rem 15rem;
          background: #2B80FF; }
          #about .about_body .data .data_cont .data_cont_ttl span {
            font-weight: bold; }
        #about .about_body .data .data_cont .data_boxes {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          #about .about_body .data .data_cont .data_boxes .data_box {
            width: 50%;
            box-sizing: border-box;
            padding: 6rem 0 0;
            background: #fff;
            border: solid 2rem #2B80FF;
            position: relative; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_box_ttl {
              width: 287rem;
              margin: 0 auto;
              font-size: 20rem;
              line-height: 1.5em;
              font-weight: bold;
              color: #2B80FF;
              text-align: center;
              padding-bottom: 5rem;
              border-bottom: solid 1rem #2B80FF; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_num {
              font-weight: bold;
              text-align: center; }
              #about .about_body .data .data_cont .data_boxes .data_box .data_num span {
                display: inline-block; }
                #about .about_body .data .data_cont .data_boxes .data_box .data_num span.blue {
                  color: #2B80FF; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_box_txt {
              font-size: 14rem;
              line-height: 1.85em;
              font-weight: 400; }
            #about .about_body .data .data_cont .data_boxes .data_box .date {
              position: absolute;
              bottom: 3rem;
              right: 6rem;
              font-size: 10rem;
              line-height: 3em; }
            #about .about_body .data .data_cont .data_boxes .data_box.box01 {
              padding-bottom: 30rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_box_ttl {
                margin-bottom: 15rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num {
                font-size: 16rem;
                line-height: 1.875em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num .num {
                  font-size: 60rem;
                  line-height: 1.216em;
                  font-weight: 600; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num .small {
                  font-size: 26rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box02 {
              border-left: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_box_ttl {
                margin-bottom: 12rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num {
                font-size: 16rem;
                line-height: 1.875em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num:nth-of-type(2) {
                  margin-top: -5rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .num {
                  font-size: 60rem;
                  line-height: 1.216em;
                  font-weight: 600;
                  margin: 0 7rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .small_num {
                  font-size: 40rem;
                  line-height: 1.22em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .small {
                  font-size: 26rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_box_txt {
                width: 269rem;
                margin: 0 auto; }
            #about .about_body .data .data_cont .data_boxes .data_box.box03 {
              padding-bottom: 40rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_box_ttl {
                margin-bottom: 23rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num {
                font-size: 15rem;
                line-height: 1.875em;
                margin-bottom: 3rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num:nth-of-type(2) {
                  margin-bottom: 0; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .num {
                  font-size: 42rem;
                  line-height: 1.225em;
                  font-weight: 600; }
                  #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .num.num_small {
                    font-size: 28rem;
                    margin: 0 3rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .digit {
                  font-size: 32rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .small {
                  font-size: 20rem;
                  line-height: 1.5em;
                  margin-left: 9rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box04 {
              border-left: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_box_ttl {
                margin-bottom: 40rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .num {
                font-size: 42rem;
                line-height: 1.225em;
                font-weight: 600; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .digit {
                font-size: 32rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .small {
                font-size: 20rem;
                line-height: 1.5em;
                margin-left: 9rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box05 {
              width: 100%;
              border-top: none;
              padding-bottom: 15rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_ttl {
                width: 575rem;
                margin-bottom: 10rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_img {
                width: 486rem;
                margin: 0 auto; }
            #about .about_body .data .data_cont .data_boxes .data_box.box06 {
              width: 100%;
              padding-bottom: 50rem;
              border-top: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_box_ttl {
                width: 575rem;
                margin-bottom: 30rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num {
                display: flex;
                justify-content: center;
                align-items: center;
                position: relative;
                left: 15rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .num {
                  font-size: 60rem;
                  line-height: 1.225em;
                  font-weight: 600; }
                #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .small {
                  font-size: 40rem;
                  line-height: 1.225em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .data_box_txt {
                  width: 384rem;
                  text-align: left;
                  margin-left: 40rem; }

  /*仕事を知る*/
  #job .job_body {
    padding: 40rem 0 110rem;
    color: #040000; }
    #job .job_body .inner {
      width: 718rem;
      margin: 0 auto 60rem; }
      #job .job_body .inner .job_txt {
        font-size: 20rem;
        line-height: 2em;
        margin-bottom: 80rem; }
      #job .job_body .inner h3 {
        font-size: 34rem;
        line-height: 1.47em;
        font-weight: bold;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 44rem; }
      #job .job_body .inner .job_boxes {
        margin-bottom: 60rem; }
        #job .job_body .inner .job_boxes .job_box {
          width: 682rem;
          box-sizing: border-box;
          padding: 122rem 0 46rem 57rem;
          border-radius: 33rem;
          background: #FFFAEC;
          margin-left: auto;
          margin-bottom: 76rem;
          position: relative; }
          #job .job_body .inner .job_boxes .job_box:last-child {
            margin-bottom: 0; }
          #job .job_body .inner .job_boxes .job_box h4 {
            width: 688rem;
            display: flex;
            justify-content: flex-start;
            align-items: center;
            font-size: 28rem;
            line-height: 1.428em;
            font-weight: bold;
            color: #fff;
            box-sizing: border-box;
            padding: 13rem 0 13rem 38rem;
            border-radius: 41rem;
            position: absolute;
            top: 32rem;
            left: -37rem; }
            #job .job_body .inner .job_boxes .job_box h4.bg01 {
              background: #FFA000; }
            #job .job_body .inner .job_boxes .job_box h4.bg02 {
              background: #00CD58; }
            #job .job_body .inner .job_boxes .job_box h4.bg03 {
              background: #00B2D5; }
            #job .job_body .inner .job_boxes .job_box h4.bg04 {
              background: #0068FF; }
            #job .job_body .inner .job_boxes .job_box h4 span {
              font-size: 16rem;
              font-weight: 400;
              margin-left: 16rem; }
          #job .job_body .inner .job_boxes .job_box h5 {
            font-size: 24rem;
            line-height: 1.25em;
            font-weight: bold;
            margin-bottom: 15rem; }
            #job .job_body .inner .job_boxes .job_box h5.color01 {
              color: #FFA000; }
            #job .job_body .inner .job_boxes .job_box h5.color02 {
              color: #00CD58; }
            #job .job_body .inner .job_boxes .job_box h5.color03 {
              color: #00B2D5; }
            #job .job_body .inner .job_boxes .job_box h5.color04 {
              color: #0068FF; }
          #job .job_body .inner .job_boxes .job_box .job_box_list li {
            font-size: 16rem;
            line-height: 1.875em;
            font-weight: bold;
            box-sizing: border-box;
            padding-left: 20rem;
            position: relative;
            margin-bottom: 8rem; }
            #job .job_body .inner .job_boxes .job_box .job_box_list li:last-child {
              margin-bottom: 0; }
            #job .job_body .inner .job_boxes .job_box .job_box_list li::before {
              position: absolute;
              content: "";
              width: 11rem;
              height: 11rem;
              left: 0;
              top: 50%;
              transform: translateY(-50%);
              border-radius: 100%;
              background-color: #000; }
          #job .job_body .inner .job_boxes .job_box .job_box_arrow {
            width: 397rem;
            position: absolute;
            bottom: -88rem;
            left: 123rem;
            z-index: 3;
            font-size: 16rem; }
          #job .job_body .inner .job_boxes .job_box .job_box_icons {
            width: 551rem;
            margin-top: 50rem;
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 15rem 0; }
            #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon {
              width: 171rem;
              height: 171rem;
              box-sizing: border-box;
              padding-top: 35rem;
              border-radius: 100%;
              background: #fff; }
              #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon .icon {
                width: 80rem;
                margin: 0 auto; }
              #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon .txt {
                font-size: 15rem;
                line-height: 1.4em;
                font-weight: bold;
                color: #0068FF;
                text-align: center; }
          #job .job_body .inner .job_boxes .job_box.box01 .job_box_list {
            width: 496rem;
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            position: relative; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li {
              min-width: 228rem; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(1) {
                order: 1; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(2) {
                order: 3; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(3) {
                order: 5;
                margin-bottom: 0; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(4) {
                order: 2; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(5) {
                order: 4; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li:nth-child(6) {
                order: 6;
                margin-bottom: 0; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li.etc {
                font-size: 15rem;
                min-width: inherit;
                position: absolute;
                right: 35rem;
                bottom: 0; }
                #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li.etc::before {
                  display: none !important; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li::before {
                background-color: #FFA000; }
          #job .job_body .inner .job_boxes .job_box.box01 .job_box_img {
            width: 124rem;
            position: absolute;
            top: 125rem;
            right: 16rem; }
          #job .job_body .inner .job_boxes .job_box.box02 h4 span {
            margin-left: 0; }
          #job .job_body .inner .job_boxes .job_box.box02 .job_box_list li::before {
            background-color: #00CD58; }
          #job .job_body .inner .job_boxes .job_box.box02 .job_box_img {
            width: 142rem;
            position: absolute;
            top: 118rem;
            right: 18rem; }
          #job .job_body .inner .job_boxes .job_box.box03 .job_box_list li::before {
            background-color: #00B2D5; }
          #job .job_body .inner .job_boxes .job_box.box03 .job_box_img {
            width: 220em;
            position: absolute;
            top: 138rem;
            right: 1rem; }
          #job .job_body .inner .job_boxes .job_box.box04 .job_box_list li::before {
            background-color: #0068FF; }
          #job .job_body .inner .job_boxes .job_box.box04 .job_box_img {
            width: 266rem;
            position: absolute;
            top: 52rem;
            right: -16rem; }
      #job .job_body .inner .job_btm {
        width: 460rem;
        margin: 0 auto; }
        #job .job_body .inner .job_btm .job_btm_txt {
          font-size: 24rem;
          line-height: 1.958em;
          font-weight: bold;
          color: #2B80FF;
          text-align: center;
          margin-bottom: 24rem; }
        #job .job_body .inner .job_btm .job_btm_boxes {
          display: flex;
          justify-content: space-between; }
          #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box {
            width: 216rem;
            height: 216rem;
            box-sizing: border-box;
            border-radius: 100%;
            border: solid 1rem #2B80FF; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box .txt {
              font-size: 17rem;
              line-height: 1.588em;
              font-weight: bold;
              color: #2B80FF;
              text-align: center; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:first-child {
              padding-top: 49rem; }
              #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:first-child .icon {
                width: 85rem;
                margin: 0 auto 12rem; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:last-child {
              padding-top: 40rem; }
              #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:last-child .icon {
                width: 78rem;
                margin: 0 auto 15rem; }
    #job .job_body .job_banner {
      padding: 59rem 0 88rem;
      text-align: center;
      background: #E7F0FF; }
      #job .job_body .job_banner .job_banner_ttl {
        font-size: 26rem;
        line-height: 1.73em;
        color: #2B80FF;
        margin-bottom: 36rem; }
      #job .job_body .job_banner .job_banner_btn {
        width: 405rem;
        margin: 0 auto; }
        #job .job_body .job_banner .job_banner_btn a {
          display: block;
          width: 100%;
          font-size: 16rem;
          line-height: 1.375em;
          font-weight: bold;
          color: #fff;
          text-align: left;
          box-sizing: border-box;
          padding: 21rem 0 21rem 133rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_02.png") no-repeat right 12rem center #2B80FF;
          background-size: 40rem; }

  .float_job_banner {
    width: 179rem;
    position: fixed;
    bottom: 22rem;
    right: 16rem;
    z-index: 10;
    display: none; }
    .float_job_banner a {
      display: block;
      width: 100%;
      line-height: 0;
      filter: drop-shadow(3rem 3rem 10rem rgba(0, 0, 0, 0.24)); }

  /*働く環境・学ぶ環境*/
  #work .work_body {
    padding-bottom: 87rem;
    color: #040000;
    overflow: hidden; }
    #work .work_body .inner {
      width: 720rem;
      margin: 0 auto;
      position: relative; }
      #work .work_body .inner h3 {
        font-size: 40rem;
        line-height: 1;
        font-weight: bold;
        color: #2B80FF; }
    #work .work_body .work .inner {
      padding: 40rem 0 70rem; }
    #work .work_body .work .work_txt {
      font-size: 20rem;
      line-height: 2em;
      margin-bottom: 40rem; }
    #work .work_body .work .work_ttl {
      display: flex;
      justify-content: space-between;
      align-items: baseline;
      margin-bottom: 37rem; }
      #work .work_body .work .work_ttl .now {
        font-size: 13rem;
        line-height: 1; }
    #work .work_body .work .work_boxes {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      gap: 15rem 0;
      margin-bottom: 28rem; }
      #work .work_body .work .work_boxes .work_box {
        width: 229rem;
        min-height: 310rem;
        color: #2B80FF;
        text-align: center;
        box-sizing: border-box;
        padding: 35rem 0 0;
        border-radius: 20rem;
        background: #E7F0FF;
        position: relative; }
        #work .work_body .work .work_boxes .work_box h4 {
          width: 200rem;
          margin: 0 auto 138rem;
          font-size: 18rem;
          line-height: 1.66em;
          font-weight: bold;
          padding: 6rem 0 5rem;
          border-radius: 28rem;
          background: #fff;
          position: relative;
          z-index: 3; }
        #work .work_body .work .work_boxes .work_box .work_box_img {
          width: 220rem;
          position: absolute;
          top: 57rem;
          left: 50%;
          transform: translateX(-50%); }
        #work .work_body .work .work_boxes .work_box .work_box_num {
          position: relative;
          z-index: 3; }
          #work .work_body .work .work_boxes .work_box .work_box_num span {
            display: inline-block; }
          #work .work_body .work .work_boxes .work_box .work_box_num .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600; }
          #work .work_body .work .work_boxes .work_box .work_box_num .unit {
            font-size: 18rem;
            line-height: 1.2em;
            margin-left: 5rem; }
            #work .work_body .work .work_boxes .work_box .work_box_num .unit.ja {
              font-weight: bold; }
        #work .work_body .work .work_boxes .work_box .work_box_txt {
          font-size: 14rem;
          line-height: 1.5em;
          position: relative;
          z-index: 3;
          margin-top: 5rem; }
          #work .work_body .work .work_boxes .work_box .work_box_txt span {
            font-weight: bold; }
        #work .work_body .work .work_boxes .work_box.box05 h4 {
          margin-bottom: 113rem; }
        #work .work_body .work .work_boxes .work_box.box05 .work_box_img {
          top: 44rem; }
        #work .work_body .work .work_boxes .work_box.box05 .work_box_num {
          display: flex;
          justify-content: center;
          align-items: baseline; }
          #work .work_body .work .work_boxes .work_box.box05 .work_box_num .num {
            font-size: 40rem;
            line-height: 1.21em;
            font-weight: 600; }
            #work .work_body .work .work_boxes .work_box.box05 .work_box_num .num .small_num {
              font-size: 28rem; }
          #work .work_body .work .work_boxes .work_box.box05 .work_box_num .unit {
            font-size: 20rem;
            line-height: 1.2em;
            margin-left: 0; }
          #work .work_body .work .work_boxes .work_box.box05 .work_box_num .gender {
            font-size: 20rem;
            line-height: 1.2em;
            font-weight: bold;
            margin-right: 3rem;
            position: relative;
            top: -1rem; }
          #work .work_body .work .work_boxes .work_box.box05 .work_box_num:last-child {
            margin-top: -5rem; }
        #work .work_body .work .work_boxes .work_box.box06 h4 {
          margin-bottom: 115rem; }
        #work .work_body .work .work_boxes .work_box.box06 .work_box_img {
          top: 46rem; }
    #work .work_body .work .work_btm {
      display: flex;
      justify-content: space-between;
      padding: 32rem 0 20rem;
      border-radius: 31rem;
      border: solid 1rem #2B80FF;
      position: relative; }
      #work .work_body .work .work_btm::before {
        position: absolute;
        content: "";
        width: 1rem;
        height: 170rem;
        top: 50%;
        left: 50%;
        transform: translateX(-50%) translateY(-50%);
        background: #2B80FF; }
      #work .work_body .work .work_btm .work_btm_box {
        width: 50%;
        position: relative;
        text-align: center; }
        #work .work_body .work .work_btm .work_btm_box h4 {
          width: 240rem;
          margin: 0 auto;
          font-size: 18rem;
          line-height: 1.666em;
          font-weight: bold;
          color: #fff;
          padding: 2rem 0;
          border-radius: 28rem;
          background: #2B80FF; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_box_img {
          width: 258rem;
          position: absolute; }
        #work .work_body .work .work_btm .work_btm_box.box01 .work_btm_box_img {
          top: 48rem;
          left: 53rem; }
        #work .work_body .work .work_btm .work_btm_box.box02 .work_btm_box_img {
          top: 24rem;
          left: 56rem; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_num {
          display: flex;
          justify-content: center;
          color: #2B80FF;
          gap: 0 22rem;
          margin-top: 90rem;
          position: relative;
          left: 5rem; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .unit {
            font-size: 18rem;
            line-height: 1.2em; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .gender {
            font-size: 18rem;
            line-height: 1.5em;
            font-weight: bold;
            margin-right: 4rem; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_now {
          font-size: 14rem;
          line-height: 1.25em;
          color: #2B80FF;
          position: relative;
          z-index: 3; }
        #work .work_body .work .work_btm .work_btm_box .work_btm_txt {
          font-size: 16rem;
          line-height: 1.5em;
          position: relative;
          z-index: 3;
          margin-top: 113rem; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_txt span {
            font-size: 20rem;
            line-height: 1em;
            font-weight: bold;
            color: #2B80FF; }
    #work .work_body .work .chara {
      width: 110rem;
      position: absolute; }
      #work .work_body .work .chara.chara01 {
        bottom: -22rem;
        left: -37rem; }
      #work .work_body .work .chara.chara02 {
        bottom: -15rem;
        right: -37rem; }
    #work .work_body .learn {
      padding: 64rem 0 85rem;
      background: #E7F0FF; }
      #work .work_body .learn h3 {
        margin-bottom: 49rem; }
      #work .work_body .learn .learn_boxes {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
        gap: 34rem 28rem; }
        #work .work_body .learn .learn_boxes .learn_box {
          width: 345rem;
          padding: 32rem 0 16rem;
          border-radius: 20rem;
          background: #fff;
          position: relative; }
          #work .work_body .learn .learn_boxes .learn_box h4 {
            width: 263rem;
            margin: 0 auto 165rem;
            font-size: 18rem;
            line-height: 1.666em;
            font-weight: bold;
            color: #2B80FF;
            text-align: center;
            padding: 9rem 0;
            border-radius: 28rem;
            background: #EAF3FF;
            position: relative;
            z-index: 2; }
          #work .work_body .learn .learn_boxes .learn_box .learn_box_img {
            width: 206rem;
            position: absolute;
            top: 68rem;
            left: 67rem; }
          #work .work_body .learn .learn_boxes .learn_box .learn_box_txt {
            width: 273rem;
            margin: 0 auto;
            font-size: 15rem;
            line-height: 1.866em;
            position: relative;
            z-index: 2; }
          #work .work_body .learn .learn_boxes .learn_box.box01 {
            padding-bottom: 35rem; }
            #work .work_body .learn .learn_boxes .learn_box.box01 h4 {
              margin-bottom: 168rem; }
            #work .work_body .learn .learn_boxes .learn_box.box01 .learn_box_txt {
              font-size: 16rem;
              line-height: 1.875em;
              text-align: center; }
              #work .work_body .learn .learn_boxes .learn_box.box01 .learn_box_txt span {
                display: inline-block;
                font-size: 24rem;
                line-height: 1.25em;
                font-weight: bold;
                color: #2B80FF;
                margin-top: 5rem; }
          #work .work_body .learn .learn_boxes .learn_box.box04 h4 {
            margin-bottom: 145rem; }
          #work .work_body .learn .learn_boxes .learn_box.box05 {
            width: 550rem;
            padding-bottom: 50rem; }
            #work .work_body .learn .learn_boxes .learn_box.box05 h4 {
              width: 420rem;
              margin: 0 auto 165rem; }
            #work .work_body .learn .learn_boxes .learn_box.box05 .learn_box_img {
              width: 189rem;
              position: absolute;
              top: 77rem;
              left: 185rem; }
            #work .work_body .learn .learn_boxes .learn_box.box05 .learn_box_txt {
              width: 436rem; } }
/* SP */
@media screen and (max-width: 767px) {
  .pconly, .tabonly, .pctab {
    display: none !important; }

  html {
    font-size: calc(1vw * 100 / 375);
    overscroll-behavior-y: none; }

  header {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99; }
    header .inner {
      box-sizing: border-box;
      display: flex;
      justify-content: space-between;
      height: 60rem;
      box-sizing: border-box; }
      header .inner .header_logo a {
        display: block;
        line-height: 0;
        text-align: center; }
      header .inner .header_logo .on {
        display: block; }
      header .inner .header_logo .off {
        display: none; }
      header .inner .header_nav ul {
        display: flex;
        justify-content: flex-start;
        position: relative;
        z-index: 22; }
        header .inner .header_nav ul li {
          width: 117rem;
          font-size: 13rem;
          letter-spacing: 0.08em;
          line-height: 1.23em;
          font-weight: bold; }
          header .inner .header_nav ul li a {
            display: block;
            width: 100%;
            color: #fff;
            text-align: center;
            padding: 4rem 0;
            border-radius: 16rem; }
            header .inner .header_nav ul li a.green {
              background: #00C7C3; }
            header .inner .header_nav ul li a.blue {
              background: #2B80FF; }
    header.top_header {
      transition: background 0.4s ease; }
      header.top_header.is-scrolled {
        background: #fff;
        box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
        header.top_header.is-scrolled .inner .header_logo {
          width: 152rem; }
          header.top_header.is-scrolled .inner .header_logo img {
            width: 152rem; }
          header.top_header.is-scrolled .inner .header_logo .on {
            display: none; }
          header.top_header.is-scrolled .inner .header_logo .off {
            display: block; }
          header.top_header.is-scrolled .inner .header_logo .logo_txt {
            font-size: 5rem;
            color: #2B80FF;
            margin-top: 0; }
        header.top_header.is-scrolled .toggle_btn img.on {
          display: block; }
      header.top_header .inner {
        padding: 0 49rem 0 14rem; }
        header.top_header .inner .header_logo {
          padding: 13rem 0 0;
          width: 182rem; }
          header.top_header .inner .header_logo img {
            width: 182rem; }
          header.top_header .inner .header_logo .logo_txt {
            font-size: 8rem;
            letter-spacing: 0.08em;
            line-height: 1.25em;
            color: #fff;
            margin-top: 6rem; }
            header.top_header .inner .header_logo .logo_txt.pctab {
              display: none !important; }
        header.top_header .inner .header_nav {
          padding: 23rem 0; }
    header.under_header {
      background: #fff;
      box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
      header.under_header .inner {
        height: 60rem;
        box-sizing: border-box;
        padding: 0 86rem 0 16rem; }
        header.under_header .inner .header_logo {
          width: 152rem;
          padding: 13rem 0 11rem; }
          header.under_header .inner .header_logo a img {
            width: 152rem; }
          header.under_header .inner .header_logo a .logo_txt {
            font-size: 5rem;
            letter-spacing: 0.08em;
            line-height: 1.25em;
            color: #1C1C1C; }
            header.under_header .inner .header_logo a .logo_txt.pctab {
              display: none !important; }
        header.under_header .inner .header_nav ul {
          display: none !important; }

  #navArea {
    position: relative; }

  /*ハンバーガー メニュー*/
  nav.hum {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    /*bottom: 0;*/
    width: 100%;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    background: #fff;
    -webkit-overflow-scrolling: touch;
    transform: translateY(-100%);
    opacity: 0;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease;
    z-index: 21;
    box-sizing: border-box;
    border-radius: 0 0 30rem 30rem;
    box-shadow: 0 0 7rem rgba(0, 0, 0, 0.18); }
    nav.hum .hum_inner {
      padding: 16rem 0 50rem; }
    nav.hum .hum_logo {
      width: 182rem;
      text-align: center;
      margin-left: 14rem;
      margin-bottom: 17rem; }
      nav.hum .hum_logo .logo_txt {
        font-size: 8rem;
        letter-spacing: 0.05em;
        line-height: 1.25em;
        font-weight: 600;
        margin-top: 5rem; }
    nav.hum .hum_cont {
      width: 317rem;
      margin: 0 auto; }
      nav.hum .hum_cont .hum_entry {
        display: flex;
        justify-content: space-between;
        margin-bottom: 30rem; }
        nav.hum .hum_cont .hum_entry .hum_entry_btn {
          width: 150rem;
          text-align: center; }
          nav.hum .hum_cont .hum_entry .hum_entry_btn a {
            display: block;
            width: 100%;
            font-size: 13rem;
            letter-spacing: 0.08em;
            line-height: 1.38em;
            font-weight: bold;
            color: #fff;
            padding: 9rem 0;
            border-radius: 20rem; }
            nav.hum .hum_cont .hum_entry .hum_entry_btn a.bg01 {
              background: #00C7C3; }
            nav.hum .hum_cont .hum_entry .hum_entry_btn a.bg02 {
              background: #2B80FF; }
      nav.hum .hum_cont .hum_menu {
        width: 280rem;
        margin: 0 auto 27rem; }
        nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl {
          display: flex;
          justify-content: flex-start;
          align-items: center;
          margin-bottom: 10rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl span {
            display: block;
            color: #2B80FF; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl .en {
            font-size: 20rem;
            line-height: 1.2em;
            font-weight: 600;
            margin-right: 13rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box .hum_menu_box_ttl .ja {
            font-size: 11rem;
            line-height: 1;
            font-weight: bold; }
        nav.hum .hum_cont .hum_menu .hum_menu_box ul li a {
          display: inline-block;
          padding-left: 21rem;
          position: relative; }
          nav.hum .hum_cont .hum_menu .hum_menu_box ul li a::before {
            position: absolute;
            content: "";
            width: 10rem;
            height: 10rem;
            left: 0;
            top: 50%;
            transform: translateY(-50%);
            border-radius: 100%;
            background: #2B80FF; }
        nav.hum .hum_cont .hum_menu .hum_menu_box.about {
          margin-bottom: 36rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li {
            margin-bottom: 15rem; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li:last-child {
              margin-bottom: 0; }
            nav.hum .hum_cont .hum_menu .hum_menu_box.about ul li a {
              font-size: 16rem;
              line-height: 1.4375em;
              font-weight: bold;
              color: #1C1C1C; }
        nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li {
          min-width: 236rem;
          margin-bottom: 10rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(1) {
            order: 1; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(2) {
            order: 3; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(3) {
            order: 5; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(4) {
            order: 2; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(5) {
            order: 4; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li:nth-child(6) {
            order: 6;
            margin-bottom: 0; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li a {
            display: flex;
            justify-content: flex-start;
            align-items: center; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li span {
            display: inline-block; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li .name {
            font-size: 16rem;
            line-height: 1.9375em;
            font-weight: bold;
            color: #1C1C1C;
            margin-right: 11rem; }
          nav.hum .hum_cont .hum_menu .hum_menu_box.people ul li .role {
            font-size: 12rem;
            line-height: 2.38em;
            color: #848484; }
      nav.hum .hum_cont .hum_link .hum_btn {
        width: 282rem;
        margin: 0 auto 12rem; }
        nav.hum .hum_cont .hum_link .hum_btn a {
          display: block;
          width: 100%;
          font-size: 14rem;
          line-height: 1;
          font-weight: bold;
          color: #2B80FF;
          box-sizing: border-box;
          padding: 14rem 0 14rem 28rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_01.png") no-repeat right 8rem center #fff;
          background-size: 28rem; }
      nav.hum .hum_cont .hum_link .cp_link {
        text-align: center; }
        nav.hum .hum_cont .hum_link .cp_link a {
          display: inline-block;
          font-size: 14rem;
          line-height: 1;
          color: #2B80FF;
          padding-right: 27rem;
          background: url("../img/icon_cp_blue.png") no-repeat right center;
          background-size: 17rem; }
          nav.hum .hum_cont .hum_link .cp_link a:hover {
            text-decoration: underline; }
      nav.hum .hum_cont .hum_link ul {
        display: none !important;
        display: flex;
        justify-content: flex-start; }
        nav.hum .hum_cont .hum_link ul li {
          font-size: 14rem;
          line-height: 2.14em;
          border-right: solid 1rem #1C1C1C; }
          nav.hum .hum_cont .hum_link ul li:first-child {
            border-left: solid 1rem #1C1C1C; }
          nav.hum .hum_cont .hum_link ul li a {
            display: inline-block;
            color: #1C1C1C;
            padding: 0 32rem; }
            nav.hum .hum_cont .hum_link ul li a:hover {
              text-decoration: underline; }

  .open nav.hum {
    transform: translateY(0);
    opacity: 1;
    transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.5s ease; }

  /*============
  .toggle_btn
  =============*/
  .toggle_btn {
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    width: 60rem;
    height: 60rem;
    background: #2B80FF;
    border-radius: 0 0 0 14rem;
    transition: all .5s;
    cursor: pointer;
    z-index: 23; }

  .open .toggle_btn {
    background: #fff; }

  .toggle_btn img {
    display: block;
    width: 27rem;
    position: absolute;
    top: 22rem;
    right: 16rem;
    transition: all .5s; }
    .toggle_btn img.on {
      display: block; }
    .toggle_btn img.pctab {
      display: none !important; }
    .toggle_btn img.close {
      display: none; }

  .open .toggle_btn img {
    width: 27rem;
    position: absolute;
    top: 22rem;
    right: 16rem; }
    .open .toggle_btn img.on {
      display: none; }
    .open .toggle_btn img.pctab {
      display: none !important; }
    .open .toggle_btn img.close {
      display: block; }

  /*============
  #mask
  =============*/
  #mask {
    display: none;
    transition: all .5s; }

  .open #mask {
    display: block;
    transition: all .5s;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    z-index: 20; }

  #top_video {
    position: fixed;
    z-index: -1;
    width: 100%;
    top: 0;
    left: 0; }
    #top_video .video {
      width: 1307rem;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
      #top_video .video video {
        width: 100%;
        height: auto; }

  #top_mv {
    position: relative;
    z-index: 2; }
    #top_mv .inner {
      width: 356rem;
      margin: 0 auto 125rem;
      padding: 211rem 0 0; }
      #top_mv .inner h2 {
        width: 100%; }

  #top_message {
    width: 100%;
    position: relative;
    z-index: 3;
    background: url("../img/top_message_bg_sp.png") no-repeat center;
    background-size: 100% 100%; }
    #top_message .inner {
      width: 328rem;
      margin: 0 auto;
      padding: 156rem 0 362rem; }
      #top_message .inner .top_message_cont {
        position: relative;
        color: #fff; }
        #top_message .inner .top_message_cont h3 {
          font-size: 60rem;
          letter-spacing: 0.05em;
          line-height: 1.18em;
          font-weight: 600;
          margin-bottom: 18rem; }
        #top_message .inner .top_message_cont .top_message_txt {
          font-size: 15rem;
          line-height: 2.133em; }
        #top_message .inner .top_message_cont .top_message_img {
          width: 333rem;
          position: absolute;
          bottom: -318rem;
          left: -6rem; }

  .top_white_bg {
    width: 100%;
    margin-top: -150rem;
    background: #fff;
    position: relative;
    z-index: 2; }
    .top_white_bg .top_sec_ttl {
      width: 325rem;
      margin: 0 auto;
      font-size: 0;
      color: #2B80FF; }
      .top_white_bg .top_sec_ttl span {
        display: block; }
      .top_white_bg .top_sec_ttl .en {
        font-size: 60rem;
        line-height: 1.18em;
        font-weight: 600;
        margin-bottom: 6rem; }
      .top_white_bg .top_sec_ttl .ja {
        font-size: 16rem;
        line-height: 1.9375em;
        font-weight: bold; }

  #top_about .inner {
    width: 335rem;
    margin: 0 auto;
    padding: 155rem 0 100rem; }
    #top_about .inner h3 {
      margin-bottom: 12rem; }
    #top_about .inner .top_about_boxes {
      width: 100%;
      margin: 0 auto; }
      #top_about .inner .top_about_boxes .top_about_box {
        display: block;
        width: 100%;
        position: relative;
        transition: 0.3s; }
        #top_about .inner .top_about_boxes .top_about_box:nth-child(n+2) {
          margin-top: 19rem; }
        #top_about .inner .top_about_boxes .top_about_box:hover {
          opacity: 0.8; }
          #top_about .inner .top_about_boxes .top_about_box:hover .top_about_box_img img {
            transform: scale(1.1); }
        #top_about .inner .top_about_boxes .top_about_box::before {
          position: absolute;
          content: "";
          width: 28rem;
          height: 28rem;
          right: 15rem;
          bottom: 11rem;
          background: url("../img/top_about_arrow.png") no-repeat;
          background-size: contain;
          z-index: 2; }
        #top_about .inner .top_about_boxes .top_about_box .top_about_box_img {
          overflow: hidden; }
          #top_about .inner .top_about_boxes .top_about_box .top_about_box_img img {
            transition: 0.3s; }
        #top_about .inner .top_about_boxes .top_about_box h4 {
          width: 100%;
          color: #fff;
          text-align: center;
          position: absolute;
          top: 85rem;
          left: 50%;
          transform: translateX(-50%); }
          #top_about .inner .top_about_boxes .top_about_box h4 span {
            display: inline-block; }
          #top_about .inner .top_about_boxes .top_about_box h4 .en {
            font-size: 19rem;
            line-height: 1em;
            font-weight: 600;
            margin-bottom: 10rem; }
          #top_about .inner .top_about_boxes .top_about_box h4 .ja {
            font-size: 18rem;
            line-height: 1.4em;
            font-weight: bold; }

  #top_people .inner {
    width: 340rem;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0 0 50rem; }
    #top_people .inner h3 {
      margin-bottom: 7rem; }
    #top_people .inner .top_people_txt {
      width: 325rem;
      margin: 0 auto 30rem;
      font-size: 14rem;
      line-height: 2em;
      font-weight: 400;
      color: #2B80FF; }
    #top_people .inner .top_people_boxes .top_people_box {
      margin-bottom: 34rem; }
      #top_people .inner .top_people_boxes .top_people_box:last-child {
        margin-bottom: 0; }
      #top_people .inner .top_people_boxes .top_people_box a {
        display: block;
        width: 100%;
        transition: 0.3s; }
        #top_people .inner .top_people_boxes .top_people_box a:hover {
          opacity: 0.8; }
          #top_people .inner .top_people_boxes .top_people_box a:hover .top_people_box_img img {
            transform: scale(1.05); }
      #top_people .inner .top_people_boxes .top_people_box .top_people_box_head {
        position: relative;
        margin-bottom: 5rem; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_img {
          border-radius: 25rem;
          overflow: hidden; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_img img {
            transition: 0.3s; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .num {
          font-size: 42rem;
          line-height: 1.21em;
          font-weight: 600;
          color: #2B80FF;
          position: absolute;
          top: 15rem;
          left: 18rem; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt {
          position: absolute;
          bottom: 21rem;
          left: -13rem; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt span {
            display: inline-block;
            font-size: 17rem;
            line-height: 1.82em;
            font-weight: bold;
            color: #fff;
            padding: 0 11rem;
            background: #2B80FF; }
            #top_people .inner .top_people_boxes .top_people_box .top_people_box_head .top_people_box_txt span:last-child {
              margin-top: 6rem; }
      #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm {
        background: url("../img/btn_arrow_01.png") no-repeat right center;
        background-size: 40rem; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .role {
          font-size: 13rem;
          line-height: 1.466em;
          color: #848484; }
        #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .name {
          font-size: 15rem;
          line-height: 1.466em;
          font-weight: bold;
          color: #2B80FF;
          display: flex;
          justify-content: flex-start;
          align-items: center; }
          #top_people .inner .top_people_boxes .top_people_box .top_people_box_btm .name span {
            display: inline-block;
            vertical-align: middle;
            margin-left: 10rem; }

  /*前ページ共通*/
  #banner {
    padding-bottom: 44rem; }
    #banner .banner_cont {
      width: 100%;
      padding: 45rem 0 65rem;
      background: url("../img/banner_bg_sp.png") no-repeat center;
      background-size: cover;
      text-align: center;
      border-radius: 20rem; }
      #banner .banner_cont .banner_ttl {
        font-size: 57rem;
        line-height: 1.21em;
        font-weight: 600;
        color: #fff; }
      #banner .banner_cont .banner_txt {
        font-size: 14rem;
        line-height: 2em;
        font-weight: bold;
        color: #fff;
        margin: 15rem 0 32rem; }
      #banner .banner_cont .banner_btn {
        width: 310rem;
        margin: 0 auto; }
        #banner .banner_cont .banner_btn a {
          display: block;
          width: 100%;
          font-size: 14rem;
          line-height: 1.4285em;
          font-weight: bold;
          color: #2B80FF;
          text-align: left;
          box-sizing: border-box;
          padding: 24rem 0 24rem 38rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_01.png") no-repeat right 18rem center #fff;
          background-size: 36rem; }

  .pagetop {
    width: 100%; }
    .pagetop a {
      display: block;
      width: 100%;
      font-size: 14rem;
      line-height: 1.21em;
      color: #2B80FF;
      box-sizing: border-box;
      padding: 11rem 0 12rem 156rem;
      border-top: solid 1rem #2B80FF;
      background: url("../img/pagetop_arrow.png") no-repeat left 119rem center;
      background-size: 20rem; }

  .float_banner {
    width: 105rem;
    position: fixed;
    bottom: 10rem;
    left: 5rem;
    z-index: 10;
    display: none; }
    .float_banner a {
      display: block;
      width: 100%;
      line-height: 0;
      filter: drop-shadow(3rem 3rem 10rem rgba(0, 0, 0, 0.24)); }

  footer {
    background: #fff; }
    footer .footer_menu {
      box-sizing: border-box;
      padding: 32rem 0 37rem;
      background: #2B80FF; }
      footer .footer_menu ul {
        width: 341rem;
        margin: 0 auto 21rem; }
        footer .footer_menu ul li {
          font-size: 15rem;
          line-height: 2em;
          font-weight: bold; }
          footer .footer_menu ul li:nth-child(n+2) {
            margin-top: 7rem; }
          footer .footer_menu ul li a {
            display: inline-block;
            color: #fff; }
      footer .footer_menu .cp_link {
        width: 333rem;
        margin: 0 auto; }
        footer .footer_menu .cp_link a {
          display: inline-block;
          font-size: 14rem;
          line-height: 2.28em;
          color: #fff;
          padding-right: 27rem;
          background: url("../img/icon_cp.png") no-repeat right center;
          background-size: 17rem; }
          footer .footer_menu .cp_link a:hover {
            text-decoration: underline; }
    footer .footer_btm {
      position: relative;
      box-sizing: border-box;
      padding: 21rem 0 0;
      text-align: center; }
      footer .footer_btm .footer_logo {
        margin-bottom: 15rem; }
        footer .footer_btm .footer_logo .logo {
          width: 259rem;
          margin: 0 auto 7rem; }
        footer .footer_btm .footer_logo .logo_txt {
          font-size: 9rem;
          font-weight: 600;
          color: #2B80FF; }
      footer .footer_btm .copyright {
        font-size: 10rem;
        line-height: 2.6em;
        font-weight: 500;
        color: #2B80FF; }

  /*インタビュー共通*/
  #inter .mv {
    width: 100%;
    margin-top: 60rem;
    position: relative; }
    #inter .mv .mv_cont {
      position: absolute;
      bottom: -57rem; }
      #inter .mv .mv_cont.left {
        left: 20rem; }
      #inter .mv .mv_cont.right {
        left: 20rem; }
      #inter .mv .mv_cont .num {
        font-size: 40rem;
        letter-spacing: 0.08em;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        margin-bottom: 8rem; }
      #inter .mv .mv_cont .mv_ttl {
        margin-bottom: 8rem; }
        #inter .mv .mv_cont .mv_ttl span {
          display: inline-block;
          font-size: 26rem;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          padding: 10rem 8rem; }
          #inter .mv .mv_cont .mv_ttl span.bg01 {
            background: #2B80FF; }
          #inter .mv .mv_cont .mv_ttl span.bg02 {
            background: #293AFA; }
          #inter .mv .mv_cont .mv_ttl span:nth-child(n+2) {
            margin-top: 7rem; }
      #inter .mv .mv_cont .mv_box .mv_info {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        background: #fff; }
        #inter .mv .mv_cont .mv_box .mv_info .role {
          font-size: 12rem;
          line-height: 31rem;
          color: #848484; }
        #inter .mv .mv_cont .mv_box .mv_info .name {
          font-size: 19rem;
          line-height: 31rem;
          font-weight: bold;
          color: #2B80FF;
          margin: 0 15rem; }
        #inter .mv .mv_cont .mv_box .mv_info .year {
          font-size: 15rem;
          line-height: 31rem;
          color: #2B80FF; }
  #inter .inter_boxes {
    padding: 88rem 0 60rem; }
    #inter .inter_boxes .inter_box {
      width: 335rem;
      margin: 0 auto 60rem;
      position: relative; }
      #inter .inter_boxes .inter_box:last-child {
        margin-bottom: 0; }
      #inter .inter_boxes .inter_box h3 {
        font-size: 26rem;
        line-height: 1.57em;
        font-weight: bold;
        color: #2B80FF;
        margin-bottom: 14rem; }
      #inter .inter_boxes .inter_box .inter_box_txt {
        font-size: 15rem;
        line-height: 1.866em;
        color: #040000; }
      #inter .inter_boxes .inter_box .inter_box_left {
        width: 100%; }
      #inter .inter_boxes .inter_box .inter_box_img {
        width: 100%;
        margin: 14rem auto 0; }
  #inter.inter01 .mv .mv_cont {
    bottom: -66rem; }
  #inter.inter01 .inter_boxes {
    padding-top: 108rem; }
  #inter.inter03 .mv .mv_cont {
    bottom: -120rem; }
  #inter.inter03 .inter_boxes {
    padding-top: 160rem; }
  #inter.inter04 .mv .mv_cont {
    bottom: -120rem; }
  #inter.inter04 .inter_boxes {
    padding-top: 180rem; }
  #inter.inter06 .mv .mv_cont {
    bottom: -65rem; }
    #inter.inter06 .mv .mv_cont .mv_ttl {
      font-size: 0; }
      #inter.inter06 .mv .mv_cont .mv_ttl span.bg01 {
        background: #2B80FF;
        padding-right: 0; }
  #inter.inter06 .inter_boxes {
    padding-top: 105rem; }
  #inter.inter05 .mv .mv_cont {
    bottom: -64rem; }
  #inter.inter05 .inter_boxes {
    padding-top: 104rem; }
  #inter .inter_sch {
    background: #EFF5FF; }
    #inter .inter_sch .inner {
      width: 335rem;
      margin: 0 auto;
      padding: 32rem 0 56rem; }
      #inter .inter_sch .inner h3 {
        font-size: 26rem;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 33rem; }
      #inter .inter_sch .inner .sch_boxes .sch_box {
        margin-bottom: 20rem; }
        #inter .inter_sch .inner .sch_boxes .sch_box:last-child {
          margin-bottom: 0; }
        #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_time {
          font-size: 28rem;
          letter-spacing: 0.08em;
          line-height: 1.21em;
          font-weight: 600;
          color: #2B80FF;
          text-align: center;
          margin-bottom: 12rem; }
        #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right {
          width: 100%;
          box-sizing: border-box;
          padding: 18rem 36rem;
          border-radius: 20rem;
          background: #fff;
          position: relative; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right::before {
            position: absolute;
            content: "";
            width: 18rem;
            height: 18rem;
            top: -9rem;
            left: 50%;
            transform: translateX(-50%);
            border-radius: 100%;
            background: #2B80FF; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right h4 {
            font-size: 20rem;
            line-height: 2em;
            font-weight: bold;
            color: #2B80FF; }
            #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right h4.long {
              width: 115%; }
          #inter .inter_sch .inner .sch_boxes .sch_box .sch_box_right .sch_box_txt {
            font-size: 15rem;
            line-height: 1.733em;
            color: #040000; }
  #inter .inter_career {
    background: #EFF5FF; }
    #inter .inter_career .inner {
      width: 335rem;
      margin: 0 auto;
      padding: 40rem 0 72rem; }
      #inter .inter_career .inner h3 {
        font-size: 30rem;
        letter-spacing: 0.08em;
        line-height: 1.23em;
        font-weight: 600;
        color: #2B80FF;
        text-align: center;
        margin-bottom: 23rem; }
      #inter .inter_career .inner .career_boxes .career_box {
        min-height: 90rem;
        color: #fff;
        display: flex;
        justify-content: space-between;
        align-items: center;
        box-sizing: border-box;
        padding: 20rem 17rem 20rem 28rem;
        border-radius: 8rem;
        position: relative;
        margin-bottom: 27rem; }
        #inter .inter_career .inner .career_boxes .career_box::before {
          position: absolute;
          content: "";
          width: 0;
          height: 0;
          bottom: -16rem;
          left: 50%;
          transform: translateX(-50%);
          border-style: solid;
          border-right: 17rem solid transparent;
          border-left: 17rem solid transparent;
          border-bottom: 0; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(1) {
          background: #00A2ED; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(1)::before {
            border-top: 17rem solid #00A2ED; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(2) {
          background: #2B80FF; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(2)::before {
            border-top: 17rem solid #2B80FF; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(3) {
          background: #2B44FF; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(3)::before {
            border-top: 17rem solid #2B44FF; }
        #inter .inter_career .inner .career_boxes .career_box:nth-child(4) {
          background: #0109DE;
          margin-bottom: 0; }
          #inter .inter_career .inner .career_boxes .career_box:nth-child(4)::before {
            display: none !important; }
        #inter .inter_career .inner .career_boxes .career_box .career_box_year {
          flex: 1;
          display: flex;
          justify-content: flex-start;
          flex-wrap: wrap;
          flex-direction: column;
          font-size: 14rem;
          line-height: 1em;
          font-weight: bold; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_year span.txt {
            padding-left: 6rem;
            margin-bottom: 3rem; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_year span.year {
            display: flex;
            justify-content: flex-start;
            align-items: center; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_year span.num {
            font-size: 27rem;
            letter-spacing: 0;
            line-height: 1;
            font-weight: 600;
            margin-right: 3rem;
            line-height: 1; }
        #inter .inter_career .inner .career_boxes .career_box .career_box_right {
          width: 188rem; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_right .career_box_ttl {
            font-size: 15rem;
            line-height: 1.76em;
            font-weight: bold; }
          #inter .inter_career .inner .career_boxes .career_box .career_box_right .career_box_txt {
            width: 105%;
            font-size: 14rem;
            line-height: 1.64em; }
  #inter .inter_prof {
    background: linear-gradient(130deg, #438EFF, #024DBF); }
    #inter .inter_prof .inner {
      width: 335rem;
      margin: 0 auto;
      padding: 37rem 0 62rem;
      color: #fff; }
      #inter .inter_prof .inner h3 {
        font-size: 26rem;
        letter-spacing: 0.08em;
        line-height: 1.23em;
        font-weight: 600;
        text-align: center;
        margin-bottom: 33rem; }
      #inter .inter_prof .inner .prof_box .prof_box_img {
        width: 202rem;
        margin: 0 auto 13rem; }
      #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_message {
        width: 106%;
        margin-bottom: 23rem; }
      #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_name {
        font-size: 24rem;
        line-height: 1.29em;
        font-weight: bold;
        margin-bottom: 16rem; }
        #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_name span {
          display: inline-block;
          font-size: 16rem;
          line-height: 1;
          font-weight: 400;
          margin-left: 31rem; }
      #inter .inter_prof .inner .prof_box .prof_box_right .prof_box_txt {
        font-size: 15rem;
        line-height: 1.866em; }
  #inter .inter_people .inner {
    width: 335rem;
    margin: 0 auto;
    box-sizing: border-box;
    padding: 60rem 0 85rem; }
    #inter .inter_people .inner h3 {
      color: #2B80FF;
      margin-bottom: 25rem;
      font-weight: 600;
      display: flex;
      justify-content: flex-start;
      align-items: center; }
      #inter .inter_people .inner h3 span {
        display: inline-block; }
      #inter .inter_people .inner h3 .en {
        font-size: 26rem;
        letter-spacing: 0.08em;
        line-height: 1.233em;
        margin-right: 13rem; }
      #inter .inter_people .inner h3 .ja {
        font-size: 13rem;
        font-weight: bold; }
    #inter .inter_people .inner .people_boxes {
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      #inter .inter_people .inner .people_boxes .people_box {
        width: 100%;
        margin-bottom: 30rem; }
        #inter .inter_people .inner .people_boxes .people_box:last-child {
          margin-bottom: 0; }
        #inter .inter_people .inner .people_boxes .people_box a {
          display: block;
          width: 100%;
          transition: 0.3s; }
          #inter .inter_people .inner .people_boxes .people_box a:hover {
            opacity: 0.8; }
            #inter .inter_people .inner .people_boxes .people_box a:hover .top_people_box_img img {
              transform: scale(1.05); }
          #inter .inter_people .inner .people_boxes .people_box a.active {
            pointer-events: none; }
            #inter .inter_people .inner .people_boxes .people_box a.active .people_box_head::before {
              position: absolute;
              content: "";
              width: 100%;
              height: 100%;
              top: 0;
              left: 0;
              background: #2B80FF;
              border-radius: 25rem;
              opacity: 0.47; }
        #inter .inter_people .inner .people_boxes .people_box .people_box_head {
          position: relative;
          margin-bottom: 9rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_img {
            border-radius: 25rem;
            overflow: hidden; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_img img {
              transition: 0.3s; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .num {
            font-size: 42rem;
            line-height: 1.21em;
            font-weight: 600;
            color: #2B80FF;
            position: absolute;
            top: 15rem;
            left: 18rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt {
            position: absolute;
            bottom: 21rem;
            left: -13rem; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt span {
              display: inline-block;
              font-size: 17rem;
              line-height: 1.82em;
              font-weight: bold;
              color: #fff;
              padding: 0 11rem;
              background: #2B80FF; }
              #inter .inter_people .inner .people_boxes .people_box .people_box_head .people_box_txt span:last-child {
                margin-top: 6rem; }
        #inter .inter_people .inner .people_boxes .people_box .people_box_btm {
          background: url("../img/btn_arrow_01.png") no-repeat right center;
          background-size: 40rem; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_btm .role {
            font-size: 13rem;
            line-height: 1.78em;
            color: #848484; }
          #inter .inter_people .inner .people_boxes .people_box .people_box_btm .name {
            font-size: 15rem;
            line-height: 2.066em;
            font-weight: bold;
            color: #2B80FF;
            display: flex;
            justify-content: flex-start;
            align-items: center; }
            #inter .inter_people .inner .people_boxes .people_box .people_box_btm .name span {
              display: inline-block;
              margin-left: 10rem; }

  /*下層共通（インタビュー以外）*/
  .under {
    position: relative; }
    .under .punkuzu {
      display: inline-block;
      padding: 0 9rem;
      border-radius: 5rem;
      background: #fff;
      position: absolute;
      top: 9rem;
      left: 8rem;
      z-index: 5; }
      .under .punkuzu ul {
        display: flex;
        justify-content: flex-start; }
        .under .punkuzu ul li {
          font-size: 10rem;
          line-height: 2em;
          color: #929292;
          position: relative; }
          .under .punkuzu ul li:first-child {
            margin-right: 20rem; }
            .under .punkuzu ul li:first-child::before {
              position: absolute;
              content: "";
              width: 1rem;
              height: 9rem;
              right: -10rem;
              top: 50%;
              transform: translateY(-50%);
              background: #929292; }
          .under .punkuzu ul li a {
            color: #929292; }
    .under .under_mv {
      width: 100%;
      position: relative;
      margin-top: 60rem; }
      .under .under_mv .under_mv_img {
        position: relative; }
        .under .under_mv .under_mv_img::before {
          position: absolute;
          content: "";
          width: 100%;
          height: 152rem;
          bottom: 0;
          left: 0;
          background: linear-gradient(to bottom, rgba(43, 128, 255, 0), #2B80FF); }
      .under .under_mv .under_mv_ttl {
        width: 335rem;
        color: #fff;
        position: absolute;
        top: 126rem;
        left: 50%;
        transform: translateX(-50%);
        z-index: 2; }
        .under .under_mv .under_mv_ttl span {
          display: inline-block; }
        .under .under_mv .under_mv_ttl .en {
          font-size: 20rem;
          letter-spacing: 0.08em;
          line-height: 1.21875em;
          font-weight: 600;
          margin-bottom: 12rem; }
        .under .under_mv .under_mv_ttl .ja {
          font-size: 32rem;
          line-height: 1;
          font-weight: bold; }

  /*代表メッセージ*/
  #message .message_body {
    padding: 50rem 0 80rem; }
    #message .message_body .message_boxes {
      width: 335rem;
      margin: 0 auto 80rem; }
      #message .message_body .message_boxes .message_box {
        margin-bottom: 80rem; }
        #message .message_body .message_boxes .message_box:last-child {
          margin-bottom: 0; }
        #message .message_body .message_boxes .message_box h3 {
          font-size: 24rem;
          line-height: 1.7em;
          font-weight: bold;
          color: #2B80FF;
          margin-bottom: 14rem; }
        #message .message_body .message_boxes .message_box .message_box_txt {
          font-size: 15rem;
          line-height: 1.866em;
          color: #040000; }
    #message .message_body .message_people {
      width: 220rem;
      margin: 0 auto; }
      #message .message_body .message_people .message_people_box {
        width: 220rem;
        color: #1C1C1C;
        margin-bottom: 50rem; }
        #message .message_body .message_people .message_people_box:last-child {
          margin-bottom: 0; }
        #message .message_body .message_people .message_people_box .role {
          font-size: 14rem;
          line-height: 2.21em;
          margin: 9rem 0 3rem; }
        #message .message_body .message_people .message_people_box .name {
          width: 110%;
          display: flex;
          justify-content: flex-start;
          align-items: center;
          font-size: 20rem;
          line-height: 1.55em;
          font-weight: bold; }
          #message .message_body .message_people .message_people_box .name span {
            display: inline-block;
            font-size: 11rem;
            letter-spacing: 0.08em;
            line-height: 1.18em;
            font-weight: 500;
            color: #2B80FF;
            margin-left: 10rem; }

  /*会社を知る*/
  #about .about_body {
    padding: 40rem 0 80rem;
    color: #040000; }
    #about .about_body .inner {
      width: 335rem;
      margin: 0 auto; }
    #about .about_body .phil {
      margin-bottom: 60rem; }
      #about .about_body .phil h3 {
        margin-bottom: 7rem; }
        #about .about_body .phil h3 span {
          display: inline-block; }
        #about .about_body .phil h3 .en {
          font-size: 12rem;
          letter-spacing: 0.08em;
          line-height: 1.25em;
          font-weight: 600;
          color: #2B80FF;
          margin-bottom: 7rem; }
        #about .about_body .phil h3 .ja {
          font-size: 26rem;
          line-height: 1.53em;
          font-weight: bold; }
          #about .about_body .phil h3 .ja span {
            color: #2B80FF; }
      #about .about_body .phil .phil_txt {
        font-size: 15rem;
        line-height: 1.866em;
        margin-bottom: 12rem; }
      #about .about_body .phil .phil_img {
        width: 363rem;
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        margin-bottom: 25rem; }
      #about .about_body .phil .phil_cont .phil_box {
        margin-bottom: 14rem; }
        #about .about_body .phil .phil_cont .phil_box ul {
          display: flex;
          justify-content: space-between;
          align-items: center; }
          #about .about_body .phil .phil_cont .phil_box ul li {
            width: 92rem;
            font-size: 20rem;
            line-height: 1;
            font-weight: bold;
            color: #0088FF;
            text-align: center;
            padding: 11rem 0;
            border-radius: 5rem;
            border: solid 1rem #0088FF; }
            #about .about_body .phil .phil_cont .phil_box ul li.icon {
              width: 13rem;
              border: none; }
        #about .about_body .phil .phil_cont .phil_box .arrow {
          width: 16rem;
          margin: 8rem auto; }
        #about .about_body .phil .phil_cont .phil_box .phil_box_txt {
          font-size: 22rem;
          line-height: 1;
          font-weight: bold;
          color: #fff;
          text-align: center;
          padding: 19rem 0;
          background: #0088FF; }
      #about .about_body .phil .phil_cont_txt {
        font-size: 15rem;
        line-height: 1.866em;
        text-align: center; }
    #about .about_body .data {
      padding: 60rem 0;
      border-radius: 40rem;
      background: #E7F0FF; }
      #about .about_body .data .data_txt {
        font-size: 15rem;
        line-height: 1.866em;
        margin-bottom: 25rem; }
      #about .about_body .data .data_cont {
        margin-bottom: 40rem; }
        #about .about_body .data .data_cont:last-child {
          margin-bottom: 0; }
        #about .about_body .data .data_cont .data_cont_ttl {
          display: inline-block;
          font-size: 23rem;
          line-height: 1.565em;
          color: #fff;
          padding: 4rem 15rem;
          background: #2B80FF; }
          #about .about_body .data .data_cont .data_cont_ttl span {
            font-weight: bold; }
        #about .about_body .data .data_cont .data_boxes {
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          #about .about_body .data .data_cont .data_boxes .data_box {
            width: 100%;
            box-sizing: border-box;
            padding: 6rem 0 0;
            background: #fff;
            border: solid 2rem #2B80FF;
            position: relative; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_box_ttl {
              width: 268rem;
              margin: 0 auto;
              font-size: 16rem;
              line-height: 1.875em;
              font-weight: bold;
              color: #2B80FF;
              text-align: center;
              border-bottom: solid 1rem #2B80FF; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_num {
              font-weight: bold;
              text-align: center; }
              #about .about_body .data .data_cont .data_boxes .data_box .data_num span {
                display: inline-block; }
                #about .about_body .data .data_cont .data_boxes .data_box .data_num span.blue {
                  color: #2B80FF; }
            #about .about_body .data .data_cont .data_boxes .data_box .data_box_txt {
              font-size: 14rem;
              line-height: 1.85em;
              font-weight: 400; }
            #about .about_body .data .data_cont .data_boxes .data_box .date {
              position: absolute;
              bottom: 3rem;
              right: 6rem;
              font-size: 10rem;
              line-height: 3em; }
            #about .about_body .data .data_cont .data_boxes .data_box.box01 {
              padding-bottom: 30rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_box_ttl {
                margin-bottom: 20rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num {
                font-size: 16rem;
                line-height: 1.875em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num .num {
                  font-size: 60rem;
                  line-height: 1.216em;
                  font-weight: 600; }
                #about .about_body .data .data_cont .data_boxes .data_box.box01 .data_num .small {
                  font-size: 26rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box02 {
              border-top: none;
              padding-bottom: 18rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_box_ttl {
                margin-bottom: 12rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num {
                font-size: 16rem;
                line-height: 1.875em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num:nth-of-type(2) {
                  margin-top: -5rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .num {
                  font-size: 60rem;
                  line-height: 1.216em;
                  font-weight: 600;
                  margin: 0 7rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .small_num {
                  font-size: 40rem;
                  line-height: 1.22em; }
                #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_num .small {
                  font-size: 26rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box02 .data_box_txt {
                width: 283rem;
                margin: 3rem auto 0; }
            #about .about_body .data .data_cont .data_boxes .data_box.box03 {
              padding-bottom: 40rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_box_ttl {
                margin-bottom: 23rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num {
                font-size: 15rem;
                line-height: 1.875em;
                margin-bottom: 5rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num:nth-of-type(2) {
                  margin-bottom: 0; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .num {
                  font-size: 42rem;
                  line-height: 1.225em;
                  font-weight: 600; }
                  #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .num.num_small {
                    font-size: 28rem;
                    margin: 0 3rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .digit {
                  font-size: 32rem; }
                #about .about_body .data .data_cont .data_boxes .data_box.box03 .data_num .small {
                  font-size: 20rem;
                  line-height: 1.5em; }
            #about .about_body .data .data_cont .data_boxes .data_box.box04 {
              border-top: none;
              padding-bottom: 60rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_box_ttl {
                margin-bottom: 43rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .num {
                font-size: 42rem;
                line-height: 1.225em;
                font-weight: 600; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .digit {
                font-size: 32rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box04 .data_num .small {
                font-size: 20rem;
                line-height: 1.5em;
                margin-left: 9rem; }
            #about .about_body .data .data_cont .data_boxes .data_box.box05 {
              width: 100%;
              border-top: none;
              padding-bottom: 49rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_ttl {
                margin-bottom: 18rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box05 .data_box_img {
                width: 309rem;
                margin: 0 auto; }
            #about .about_body .data .data_cont .data_boxes .data_box.box06 {
              width: 100%;
              padding-bottom: 38rem;
              border-top: none; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_box_ttl {
                margin-bottom: 30rem; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .num {
                font-size: 60rem;
                line-height: 1.225em;
                font-weight: 600; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .small {
                font-size: 40rem;
                line-height: 1.225em; }
              #about .about_body .data .data_cont .data_boxes .data_box.box06 .data_num .data_box_txt {
                width: 283rem;
                text-align: left;
                margin: 12rem auto 0; }

  /*仕事を知る*/
  #job .job_body {
    padding: 12rem 0 83rem;
    color: #040000; }
    #job .job_body .inner {
      width: 355rem;
      margin: 0 auto 37rem; }
      #job .job_body .inner .job_txt {
        width: 335rem;
        margin: 0 auto 45rem;
        font-size: 15rem;
        line-height: 1.866em; }
      #job .job_body .inner h3 {
        width: 335rem;
        margin: 0 auto 45rem;
        font-size: 28rem;
        line-height: 1.428em;
        font-weight: bold;
        color: #2B80FF; }
      #job .job_body .inner .job_boxes {
        margin-bottom: 43rem; }
        #job .job_body .inner .job_boxes .job_box {
          box-sizing: border-box;
          padding: 85rem 0 173rem 32rem;
          border-radius: 20rem;
          background: #FFFAEC;
          margin-bottom: 145rem;
          position: relative; }
          #job .job_body .inner .job_boxes .job_box:last-child {
            margin-bottom: 0; }
          #job .job_body .inner .job_boxes .job_box h4 {
            width: 333rem;
            display: flex;
            justify-content: flex-start;
            flex-direction: column;
            font-size: 22rem;
            line-height: 1.81em;
            font-weight: bold;
            color: #fff;
            box-sizing: border-box;
            padding: 13rem 0 26rem 38rem;
            border-radius: 46rem;
            position: absolute;
            top: -21rem;
            left: 50%;
            transform: translateX(-50%); }
            #job .job_body .inner .job_boxes .job_box h4.bg01 {
              background: #FFA000; }
            #job .job_body .inner .job_boxes .job_box h4.bg02 {
              background: #00CD58; }
            #job .job_body .inner .job_boxes .job_box h4.bg03 {
              background: #00B2D5; }
            #job .job_body .inner .job_boxes .job_box h4.bg04 {
              background: #0068FF; }
            #job .job_body .inner .job_boxes .job_box h4 span {
              font-size: 14rem;
              line-height: 1;
              font-weight: 400; }
          #job .job_body .inner .job_boxes .job_box h5 {
            font-size: 20rem;
            line-height: 1.5em;
            font-weight: bold;
            margin-bottom: 12rem; }
            #job .job_body .inner .job_boxes .job_box h5.color01 {
              color: #FFA000; }
            #job .job_body .inner .job_boxes .job_box h5.color02 {
              color: #00CD58; }
            #job .job_body .inner .job_boxes .job_box h5.color03 {
              color: #00B2D5; }
            #job .job_body .inner .job_boxes .job_box h5.color04 {
              color: #0068FF; }
          #job .job_body .inner .job_boxes .job_box .job_box_list {
            position: relative; }
            #job .job_body .inner .job_boxes .job_box .job_box_list li {
              font-size: 15rem;
              line-height: 2em;
              font-weight: bold;
              box-sizing: border-box;
              padding-left: 20rem;
              position: relative;
              margin-bottom: 5rem; }
              #job .job_body .inner .job_boxes .job_box .job_box_list li.mb0 {
                margin-bottom: 0; }
              #job .job_body .inner .job_boxes .job_box .job_box_list li:last-child {
                margin-bottom: 0; }
              #job .job_body .inner .job_boxes .job_box .job_box_list li::before {
                position: absolute;
                content: "";
                width: 11rem;
                height: 11rem;
                left: 0;
                top: 50%;
                transform: translateY(-50%);
                border-radius: 100%;
                background-color: #000; }
          #job .job_body .inner .job_boxes .job_box .job_box_arrow {
            width: 335rem;
            position: absolute;
            bottom: -104rem;
            left: 50%;
            transform: translateX(-50%);
            z-index: 3;
            font-size: 16rem; }
          #job .job_body .inner .job_boxes .job_box .job_box_icons {
            width: 287rem;
            margin-top: 233rem;
            display: flex;
            justify-content: space-between;
            flex-wrap: wrap;
            gap: 12rem 0; }
            #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon {
              width: 136rem;
              height: 136rem;
              box-sizing: border-box;
              padding-top: 27rem;
              border-radius: 100%;
              background: #fff; }
              #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon .icon {
                width: 64rem;
                margin: 0 auto; }
              #job .job_body .inner .job_boxes .job_box .job_box_icons .job_box_icon .txt {
                font-size: 13rem;
                line-height: 1.45em;
                font-weight: bold;
                color: #0068FF;
                text-align: center; }
          #job .job_body .inner .job_boxes .job_box.box01 {
            padding-bottom: 179rem; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_list {
              position: relative; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li.etc {
                font-size: 15rem;
                min-width: inherit;
                position: absolute;
                right: 40%;
                bottom: 0; }
                #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li.etc::before {
                  display: none !important; }
              #job .job_body .inner .job_boxes .job_box.box01 .job_box_list li::before {
                background-color: #FFA000; }
            #job .job_body .inner .job_boxes .job_box.box01 .job_box_img {
              width: 97rem;
              position: absolute;
              bottom: -7rem;
              left: 50%;
              transform: translateX(-50%); }
          #job .job_body .inner .job_boxes .job_box.box02 .job_box_list li::before {
            background-color: #00CD58; }
          #job .job_body .inner .job_boxes .job_box.box02 .job_box_img {
            width: 103rem;
            position: absolute;
            bottom: -11rem;
            left: 50%;
            transform: translateX(-50%); }
          #job .job_body .inner .job_boxes .job_box.box03 .job_box_list li::before {
            background-color: #00B2D5; }
          #job .job_body .inner .job_boxes .job_box.box03 .job_box_img {
            width: 168em;
            position: absolute;
            bottom: 26rem;
            right: 87rem; }
          #job .job_body .inner .job_boxes .job_box.box04 {
            padding-bottom: 40rem; }
            #job .job_body .inner .job_boxes .job_box.box04 .job_box_list li::before {
              background-color: #0068FF; }
            #job .job_body .inner .job_boxes .job_box.box04 .job_box_img {
              width: 207rem;
              position: absolute;
              top: 226rem;
              left: 67rem; }
      #job .job_body .inner .job_btm {
        width: 335rem;
        margin: 0 auto; }
        #job .job_body .inner .job_btm .job_btm_txt {
          width: 324rem;
          margin: 0 auto 17rem;
          font-size: 18rem;
          line-height: 1.833em;
          font-weight: bold;
          color: #2B80FF; }
        #job .job_body .inner .job_btm .job_btm_boxes {
          display: flex;
          justify-content: space-between; }
          #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box {
            width: 157rem;
            height: 157rem;
            box-sizing: border-box;
            border-radius: 100%;
            border: solid 1rem #2B80FF; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box .txt {
              font-size: 13rem;
              line-height: 1.384em;
              font-weight: bold;
              color: #2B80FF;
              text-align: center; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:first-child {
              padding-top: 35rem; }
              #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:first-child .icon {
                width: 62rem;
                margin: 0 auto 9rem; }
            #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:last-child {
              padding-top: 29rem; }
              #job .job_body .inner .job_btm .job_btm_boxes .job_btm_box:last-child .icon {
                width: 57rem;
                margin: 0 auto 11rem; }
    #job .job_body .job_banner {
      padding: 32rem 0 50rem;
      box-sizing: border-box;
      text-align: center;
      background: #E7F0FF; }
      #job .job_body .job_banner .job_banner_ttl {
        font-size: 18rem;
        line-height: 1.944em;
        color: #2B80FF;
        margin-bottom: 30rem; }
      #job .job_body .job_banner .job_banner_btn {
        width: 326rem;
        margin: 0 auto; }
        #job .job_body .job_banner .job_banner_btn a {
          display: block;
          width: 100%;
          font-size: 16rem;
          line-height: 1.375em;
          font-weight: bold;
          color: #fff;
          text-align: left;
          box-sizing: border-box;
          padding: 21rem 0 21rem 103rem;
          border-radius: 42rem;
          border: solid 1rem #2B80FF;
          background: url("../img/btn_arrow_02.png") no-repeat right 12rem center #2B80FF;
          background-size: 40rem; }

  .float_job_banner {
    width: 120rem;
    position: fixed;
    bottom: 14rem;
    right: 11rem;
    z-index: 10;
    display: none; }
    .float_job_banner a {
      display: block;
      width: 100%;
      line-height: 0;
      filter: drop-shadow(3rem 3rem 10rem rgba(0, 0, 0, 0.24)); }

  /*働く環境・学ぶ環境*/
  #work .work_body {
    padding-bottom: 100rem;
    color: #040000; }
    #work .work_body .inner {
      width: 335rem;
      margin: 0 auto;
      position: relative; }
      #work .work_body .inner h3 {
        font-size: 30rem;
        line-height: 1.33em;
        font-weight: bold;
        color: #2B80FF; }
    #work .work_body .work {
      overflow: hidden; }
      #work .work_body .work .inner {
        padding: 12rem 0 70rem; }
      #work .work_body .work .work_txt {
        font-size: 15rem;
        line-height: 1.866em;
        margin-bottom: 40rem; }
      #work .work_body .work .work_ttl {
        display: flex;
        justify-content: space-between;
        align-items: baseline;
        margin-bottom: 20rem; }
        #work .work_body .work .work_ttl .now {
          font-size: 13rem;
          line-height: 1; }
      #work .work_body .work .work_boxes {
        width: 280rem;
        margin: 0 auto 30rem; }
        #work .work_body .work .work_boxes .work_box {
          width: 100%;
          min-height: 280rem;
          color: #2B80FF;
          text-align: center;
          box-sizing: border-box;
          padding: 24rem 0 0;
          border-radius: 20rem;
          background: #E7F0FF;
          position: relative;
          margin-bottom: 20rem; }
          #work .work_body .work .work_boxes .work_box:last-child {
            margin-bottom: 0; }
          #work .work_body .work .work_boxes .work_box h4 {
            width: 245rem;
            margin: 0 auto 119rem;
            font-size: 18rem;
            line-height: 1.66em;
            font-weight: bold;
            padding: 6rem 0 5rem;
            border-radius: 28rem;
            background: #fff;
            position: relative;
            z-index: 3; }
          #work .work_body .work .work_boxes .work_box .work_box_img {
            width: 224rem;
            position: absolute;
            top: 32rem;
            left: 50%;
            transform: translateX(-50%); }
          #work .work_body .work .work_boxes .work_box .work_box_num {
            position: relative;
            z-index: 3; }
            #work .work_body .work .work_boxes .work_box .work_box_num span {
              display: inline-block; }
            #work .work_body .work .work_boxes .work_box .work_box_num .num {
              font-size: 42rem;
              line-height: 1.21em;
              font-weight: 600; }
            #work .work_body .work .work_boxes .work_box .work_box_num .unit {
              font-size: 18rem;
              line-height: 1.2em;
              margin-left: 5rem; }
              #work .work_body .work .work_boxes .work_box .work_box_num .unit.ja {
                font-weight: bold; }
          #work .work_body .work .work_boxes .work_box .work_box_txt {
            font-size: 14rem;
            line-height: 1.5em;
            position: relative;
            z-index: 3; }
            #work .work_body .work .work_boxes .work_box .work_box_txt span {
              font-weight: bold; }
          #work .work_body .work .work_boxes .work_box.box05 h4 {
            margin-bottom: 132rem; }
          #work .work_body .work .work_boxes .work_box.box05 .num_box {
            display: flex;
            justify-content: center;
            gap: 0 12rem; }
          #work .work_body .work .work_boxes .work_box.box05 .work_box_num {
            display: flex;
            justify-content: center;
            align-items: baseline; }
            #work .work_body .work .work_boxes .work_box.box05 .work_box_num .num {
              font-size: 36rem;
              line-height: 1.21em;
              font-weight: 600; }
              #work .work_body .work .work_boxes .work_box.box05 .work_box_num .num .small_num {
                font-size: 28rem; }
            #work .work_body .work .work_boxes .work_box.box05 .work_box_num .unit {
              font-size: 25rem;
              line-height: 1.2em;
              margin-left: 0; }
            #work .work_body .work .work_boxes .work_box.box05 .work_box_num .gender {
              font-size: 15rem;
              line-height: 1.2em;
              font-weight: bold;
              margin-right: 3rem;
              position: relative;
              top: -2rem; }
          #work .work_body .work .work_boxes .work_box.box06 h4 {
            margin-bottom: 110rem; }
      #work .work_body .work .work_btm {
        padding: 32rem 0;
        border-radius: 31rem;
        border: solid 1rem #2B80FF;
        position: relative; }
        #work .work_body .work .work_btm::before {
          position: absolute;
          content: "";
          width: 276rem;
          height: 1rem;
          top: 50%;
          left: 50%;
          transform: translateX(-50%) translateY(-50%);
          background: #2B80FF; }
        #work .work_body .work .work_btm .work_btm_box {
          width: 276rem;
          margin: 0 auto;
          position: relative;
          text-align: center; }
          #work .work_body .work .work_btm .work_btm_box h4 {
            width: 240rem;
            margin: 0 auto;
            font-size: 18rem;
            line-height: 1.666em;
            font-weight: bold;
            color: #fff;
            padding: 2rem 0;
            border-radius: 28rem;
            background: #2B80FF; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_box_img {
            width: 258rem;
            position: absolute; }
          #work .work_body .work .work_btm .work_btm_box.box01 {
            margin-bottom: 68rem; }
            #work .work_body .work .work_btm .work_btm_box.box01 .work_btm_box_img {
              top: 46rem;
              left: 9rem; }
          #work .work_body .work .work_btm .work_btm_box.box02 .work_btm_box_img {
            top: 24rem;
            left: 9rem; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_num {
            display: flex;
            justify-content: center;
            color: #2B80FF;
            gap: 0 22rem;
            margin-top: 90rem;
            position: relative;
            left: 5rem; }
            #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .num {
              font-size: 42rem;
              line-height: 1.21em;
              font-weight: 600; }
            #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .unit {
              font-size: 18rem;
              line-height: 1.2em; }
            #work .work_body .work .work_btm .work_btm_box .work_btm_num .num_box .gender {
              font-size: 18rem;
              line-height: 1.5em;
              font-weight: bold;
              margin-right: 4rem; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_now {
            font-size: 14rem;
            line-height: 1.25em;
            color: #2B80FF;
            position: relative;
            z-index: 3; }
          #work .work_body .work .work_btm .work_btm_box .work_btm_txt {
            font-size: 16rem;
            line-height: 1.5em;
            position: relative;
            z-index: 3;
            margin-top: 113rem; }
            #work .work_body .work .work_btm .work_btm_box .work_btm_txt span {
              font-size: 20rem;
              line-height: 1em;
              font-weight: bold;
              color: #2B80FF; }
      #work .work_body .work .chara {
        width: 110rem;
        position: absolute; }
        #work .work_body .work .chara.chara01 {
          bottom: 28rem;
          left: -26rem; }
        #work .work_body .work .chara.chara02 {
          bottom: 40rem;
          right: -41rem; }
    #work .work_body .learn {
      padding: 40rem 0 64rem;
      background: #E7F0FF; }
      #work .work_body .learn h3 {
        margin-bottom: 30rem; }
      #work .work_body .learn .learn_boxes .learn_box {
        width: 100%;
        min-height: 353rem;
        box-sizing: border-box;
        padding: 32rem 0 0;
        border-radius: 20rem;
        background: #fff;
        position: relative;
        margin-bottom: 20rem; }
        #work .work_body .learn .learn_boxes .learn_box:last-child {
          margin-bottom: 0; }
        #work .work_body .learn .learn_boxes .learn_box h4 {
          width: 255rem;
          margin: 0 auto 160rem;
          font-size: 18rem;
          line-height: 1.666em;
          font-weight: bold;
          color: #2B80FF;
          text-align: center;
          padding: 9rem 0;
          border-radius: 28rem;
          background: #EAF3FF;
          position: relative;
          z-index: 2; }
        #work .work_body .learn .learn_boxes .learn_box .learn_box_img {
          width: 203rem;
          position: absolute;
          top: 69rem;
          left: 63rem; }
        #work .work_body .learn .learn_boxes .learn_box .learn_box_txt {
          width: 278rem;
          margin: 0 auto;
          font-size: 15rem;
          line-height: 1.866em;
          position: relative;
          z-index: 2; }
        #work .work_body .learn .learn_boxes .learn_box.box01 {
          padding-bottom: 35rem; }
          #work .work_body .learn .learn_boxes .learn_box.box01 h4 {
            margin-bottom: 168rem; }
          #work .work_body .learn .learn_boxes .learn_box.box01 .learn_box_txt {
            font-size: 16rem;
            line-height: 1.875em;
            text-align: center; }
            #work .work_body .learn .learn_boxes .learn_box.box01 .learn_box_txt span {
              display: inline-block;
              font-size: 24rem;
              line-height: 1.25em;
              font-weight: bold;
              color: #2B80FF;
              margin-top: 5rem; }
        #work .work_body .learn .learn_boxes .learn_box.box03 .learn_box_img {
          top: 73rem; }
        #work .work_body .learn .learn_boxes .learn_box.box04 h4 {
          margin-bottom: 126rem; }
        #work .work_body .learn .learn_boxes .learn_box.box04 .learn_box_img {
          top: 57rem; }
        #work .work_body .learn .learn_boxes .learn_box.box05 h4 {
          width: 313rem;
          margin: 0 auto 160rem; }
        #work .work_body .learn .learn_boxes .learn_box.box05 .learn_box_img {
          width: 214rem;
          position: absolute;
          top: 65rem;
          left: 60rem; } }
