@charset "UTF-8";

@import "settings.css";

/*============================================================================================
      Header
=============================================================================================*/
#header {
	background: transparent;
	-webkit-transition: background 0.5s ease;
	-o-transition: background 0.5s ease;
	transition: background 0.5s ease;
}

#header.is-white {
	background: #fff;
}
.header {
      position: fixed;
      top: 0;
      width: 100%;
      z-index: 10;
}
.header_inr {
      position: relative;
      z-index: 10001;
}
.header_logo {
      position: relative;
      z-index: 1;
      padding: 2.4rem 5.6rem;
      background-color: var(--color-reverse);
      border-radius: 0 0 3.2rem 0;
      @media (max-width:1240px) {
            padding: 1.935vw 4.516vw;
      }
}
.header_gnav {
      position: relative;
      padding-right: 1.6rem;
}
.header_btn_wrap {
      position: relative;
      z-index: 1;
      -webkit-transition: var(--transition) ease;
      -o-transition: var(--transition) ease;
      transition: var(--transition) ease;
}
.header_btn_wrap.is-hidden {
      opacity: 0;
      pointer-events: none;
}
.header_btn {
      border: 1px solid var(--color-reverse);
      width: 23.2rem;
      height: 4.8rem;
      border-radius: 4.8rem;
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      @media (max-width:1240px) {
            width: 18.709vw;
            height: 3.870vw;
      }
}
.header_btn_close {
      display: none;
}
.header_btn:has(.header_btn__search) {
      background-color: var(--color-sub);
}
.header_btn:has(.header_btn__consult) {
      color: var(--color-reverse);
      background-color: var(--color-blue);
}
.header_btn__search,
.header_btn__consult {
      font-size: 1.6rem;
      padding-left: calc(2.4rem + 0.8rem);
      @media (max-width:1240px) {
            font-size: 1.290vw;
            padding-left: calc(1.935vw + 0.645vw);
      }
}
.header_btn__search::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      width: 2.4rem;
      height: 2.4rem;
      -webkit-mask-image: url(../img/common/ico_search.svg);
              mask-image: url(../img/common/ico_search.svg);
      -webkit-mask-repeat: no-repeat;
              mask-repeat: no-repeat;
      -webkit-mask-size: cover;
              mask-size: cover;
      -webkit-mask-position: center;
              mask-position: center;
      background-color: var(--color-text);
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      @media (max-width:1240px) {
            width: 1.935vw;
            height: 1.935vw;
      }
}
.header_btn__consult::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      width: 2.4rem;
      height: 2.4rem;
      -webkit-mask-image: url(../img/common/ico_balloon.svg);
              mask-image: url(../img/common/ico_balloon.svg);
      -webkit-mask-repeat: no-repeat;
              mask-repeat: no-repeat;
      -webkit-mask-size: cover;
              mask-size: cover;
      -webkit-mask-position: center;
              mask-position: center;
      background-color: var(--color-reverse);
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      @media (max-width:1240px) {
            width: 1.935vw;
            height: 1.935vw;
      }
}
.js_sldNav {
      opacity: 0;
      visibility: hidden;
      -webkit-transition: opacity var(--transition) ease, var(--transition) ease;
      -o-transition: opacity var(--transition) ease, var(--transition) ease;
      transition: opacity var(--transition) ease, var(--transition) ease;
}
.js_sldNav.is-visible {
      opacity: 1;
      visibility: visible;
}

@media (any-hover:hover) {
      .header_btn:has(.header_btn__search):hover {
            color: var(--color-reverse);
            background-color: var(--color-green);
      }
      .header_btn:hover .header_btn__search::before {
            background-color: var(--color-reverse);
      }
      .header_btn:has(.header_btn__consult):hover {
            background-color: var(--color-dark-blue);
      }
}
@media (max-width:896px) {
      .header_logo {
            padding: 4.102vw;
            border-radius: 0 0 1.6rem 0;
      }
      .header_logo img {
            max-width: 20.512vw;
      }
      .header_btn_wrap {
            position: fixed;
            left: 50%;
            -webkit-transform: translateX(-50%);
                -ms-transform: translateX(-50%);
                    transform: translateX(-50%);
            bottom: 0;
            width: 100%;
            padding: 3.076vw 4.102vw;
            background-color: rgba(230, 248, 244, 0.80);
            z-index: -1;
      }
      .header_btn {
            width: 44.871vw;
            height: 10.256vw;
            font-size: 3.589vw;
      }
      .header_btn:has(.header_btn__search) {
            padding: 0 2.678vw;
      }
      .header_btn:has(.header_btn__consult) {
            padding: 0 1.897vw;
      }
      .header_btn__search,
      .header_btn__consult {
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
            padding-left: 6.153vw;
      }
      .header_btn__search::before,
      .header_btn__consult::before {
            width: 4.102vw;
            height: 4.102vw;
      }
      .header_btn_close {
            display: block;
            position: absolute;
            top: 1.025vw;
            right: 1.025vw;
            width: 2.564vw;
            height: 2.564vw;
            background: transparent;
            cursor: pointer;
            color: var(--color-text);
            -webkit-user-select: none;
               -moz-user-select: none;
                -ms-user-select: none;
                    user-select: none;
      }
}

/* ハンバーガーメニュー */
.hamb_overlay {
      position: fixed;
      top: 0;
      left: 0;
      width: 100vw;
      height: 100vh;
      background: rgba(0, 0, 0, 0.4);
      z-index: 9999;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: opacity 0.3s ease, visibility 0.3s ease;
      -o-transition: opacity 0.3s ease, visibility 0.3s ease;
      transition: opacity 0.3s ease, visibility 0.3s ease;
      pointer-events: none;
}
.hamb_overlay.is_active {
      opacity: 1;
      visibility: visible;
      pointer-events: auto;
}
.nav_box__body {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      width: 83.8rem;
      height: -webkit-fit-content;
      height: -moz-fit-content;
      height: fit-content;
      max-height: 100vh;
      background-color: var(--color-reverse);
      border-radius: 6.4rem 0 0 6.4rem;
      position: absolute;
      top: -1.4rem;
      right: 0;
      overflow-y: auto;
}
.nav_box__nav {
      width: 100%;
      padding: 16rem 12rem 12rem;
}
.nav_box__nav_lst {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 4rem;
}
.nav_box__nav_item {
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
}
.nav_menu__ttl {
      padding-left: 3.2rem;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0.1rem;
      white-space: nowrap;
}
.nav_menu__ttl::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      width: 1.6rem;
      height: 1.6rem;
      border-radius: 50%;
      background-color: var(--color-green);
}

@media (any-hover:hover) {
      .nav_box__nav_item:hover {
            color: var(--color-green);
      }
}
@media (max-width:1400px) {
      .nav_box__body {
            width: 59.857vw;
      }
      .nav_box__nav {
            padding: 11.428vw 8.571vw 8.571vw;
      }
      .nav_box__nav_lst {
            gap: 2.857vw;
      }
      .nav_menu__ttl {
            font-size: 1.428vw;
            padding-left: 2.285vw;
      }
      .nav_menu__ttl::before {
            width: 1.142vw;
            height: 1.142vw;
      }
}
@media (max-width:896px) {
      .hamb_overlay {
            background-color: var(--color-reverse);
      }
      .nav_box__body {
            width: 100vw;
            height: 100vh;
            top: -12%;
            border-radius: 0 0 2.4rem 2.4rem;
            padding-bottom: 20.512vw;
            overflow-y: scroll;
            overflow-x: hidden;
      }
      .nav_box__nav {
            padding-top: 26.666vw;
            padding-left: 16.410vw;
            padding-right: 16.410vw;
            padding-bottom: 20.512vw;
      }
      .nav_menu__ttl {
            font-size: 4.102vw;
            line-height: 1.5;
            letter-spacing: 0.08rem;
            padding-left: 5.128vw;
      }
      .nav_menu__ttl::before {
            top: 3.333vw;
            width: 3.076vw;
            height: 3.076vw;
      }
      .nav_box__nav_lst {
            gap: 8.205vw;
      }
}

/*============================================================================================
      Footer
=============================================================================================*/
.footer_body {
      padding: 4.8rem 8rem 4rem;
}
.footer_logo {
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
}
.copy_txt {
      line-height: 1.5;
      letter-spacing: 0.06rem;
}
@media (max-width:896px) {
      .footer_body {
            padding: 4rem 2.4rem 3.2rem;
      }
      .copy_txt {
            letter-spacing: 0.05rem;
      }
}


/*============================================================================================
      Contents
=============================================================================================*/
/*=========================
      装飾
=========================*/
.top_mv .illust_img {
      opacity: 0;
      -webkit-transition: opacity var(--transition) ease;
      -o-transition: opacity var(--transition) ease;
      transition: opacity var(--transition) ease;
}
.top_mv .illust_img.loaded {
      opacity: 1;
}
.illust_wrap {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
      left: 0;
}
.illust_img {
      position: absolute;
      z-index: -1;
}
.illustration_01 {
      width: 49.386vw;
      top: 0;
      left: 0;
}
.illustration_02 {
      width: 7.822vw;
      top: 18%;
      left: 22%;
}
.illustration_03 {
      width: 13.696vw;
      right: 0;
      bottom: 21%;
}
.illustration_04 {
      width: 15.216rem;
      top: -20%;
      right: 5%;
      @media (max-width:1240px) {
            width: 12.271vw;
      }
}
.illustration_05 {
      width: 20.2rem;
      left: 5%;
      bottom: -20%;
      @media (max-width:1240px) {
            width: 16.451vw;
      }
}
.illustration_06 {
      width: 49rem;
      right: -4%;
      bottom: -40%;
      @media (max-width:1240px) {
            width: 39.516vw;
      }
}
.illustration_07 {
      width: 30.8rem;
      top: 8%;
      right: -15%;
      @media (max-width:1240px) {
            width: 24.838vw;
      }
}
.illustration_08 {
      width: 50.535rem;
      left: -17%;
      bottom: -15%;
      @media (max-width:1240px) {
            width: 40.752vw;
      }
}
.illustration_09 {
      width: 57.9rem;
      top: -12%;
      right: -19%;
      @media (max-width:1240px) {
            width: 52.8187vw;
      }
}
.illustration_10 {
      width: 47.962rem;
      left: -29%;
      bottom: -2%;
      @media (max-width:1240px) {
            width: 38.679vw;
      }
}

@media (max-width:896px) {
      .illustration_01 {
            width: 73.333vw;
            top: 0;
            left: 0;
      }
      .illustration_02 {
            width: 11.538vw;
            top: 6.8%;
            left: 53%;
      }
      .illustration_03 {
            width: 21.365vw;
            right: 0;
            bottom: 9%;
      }
      .illustration_04,
      .illustration_05,
      .illustration_06,
      .illustration_07,
      .illustration_08,
      .illustration_09,
      .illustration_10 {
            display: none;
      }
}


/*=========================
      共通パーツ
=========================*/
/* リードテキスト */
.lead_txt {
      letter-spacing: 0.08rem;
}

@media (max-width:896px) {
      .lead_txt {
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
      }
}

/* 矢印 */
.arrow_btn {
      position: relative;
}
.arrow_img {
      position: absolute;
      top: 50%;
      left: 50%;
      width: 1.6rem;
      height: 1.6rem;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      -webkit-transition: opacity 0.5s ease, -webkit-transform 0.4s ease;
      transition: opacity 0.5s ease, -webkit-transform 0.4s ease;
      -o-transition: transform 0.4s ease, opacity 0.5s ease;
      transition: transform 0.4s ease, opacity 0.5s ease;
      transition: transform 0.4s ease, opacity 0.5s ease, -webkit-transform 0.4s ease;
      pointer-events: none;
      z-index: 1;
}

/* --右斜め上に動く */
.arrow_img.normal {
      opacity: 1;
      -webkit-transform: translate(-50%, -50%) translate(0, 0);
          -ms-transform: translate(-50%, -50%) translate(0, 0);
              transform: translate(-50%, -50%) translate(0, 0);
      z-index: 2;
}
.arrow_img.hover {
      opacity: 0;
      -webkit-transform: translate(-50%, -50%) translate(-1.6rem, 1.6rem);
          -ms-transform: translate(-50%, -50%) translate(-1.6rem, 1.6rem);
              transform: translate(-50%, -50%) translate(-1.6rem, 1.6rem);
      z-index: 1;
}
.arrow_btn:hover .arrow_img.normal {
      -webkit-transform: translate(-50%, -50%) translate(1.6rem, -1.6rem);
          -ms-transform: translate(-50%, -50%) translate(1.6rem, -1.6rem);
              transform: translate(-50%, -50%) translate(1.6rem, -1.6rem);
      opacity: 0;
}
.arrow_btn:hover .arrow_img.hover {
      -webkit-transform: translate(-50%, -50%) translate(0, 0);
          -ms-transform: translate(-50%, -50%) translate(0, 0);
              transform: translate(-50%, -50%) translate(0, 0);
      opacity: 1;
}

/* --下に動く */
.arrow_btn--down .arrow_img.normal {
      opacity: 1;
      z-index: 1;
}
.arrow_btn--down .arrow_img.hover {
      opacity: 0;
      z-index: 0;
      -webkit-transform: translate(-50%, -50%) translateY(-100%);
          -ms-transform: translate(-50%, -50%) translateY(-100%);
              transform: translate(-50%, -50%) translateY(-100%);
}
.arrow_btn--down:hover .arrow_img.normal {
      opacity: 0;
      -webkit-transform: translate(-50%, -50%) translateY(100%);
          -ms-transform: translate(-50%, -50%) translateY(100%);
              transform: translate(-50%, -50%) translateY(100%);
}
.arrow_btn--down:hover .arrow_img.hover {
      opacity: 1;
      -webkit-transform: translate(-50%, -50%) translateY(0);
          -ms-transform: translate(-50%, -50%) translateY(0);
              transform: translate(-50%, -50%) translateY(0);
}

/* テキストマーカー */
.txt_marker {
      background:-webkit-gradient(linear, left top, left bottom, color-stop(45%, transparent), color-stop(0, var(--color-sub)));
      background:-o-linear-gradient(transparent 45%, var(--color-sub) 0);
      background:linear-gradient(transparent 45%, var(--color-sub) 0);
}

/*=========================
      mv
=========================*/
#top {
      background-color: var(--color-bg-yellow);
}
.top_mv {
      position: relative;
      z-index: 0;
}
.top_mv_img {
      position: relative;
}
.mv_img {
      padding-left: 42vw;
      overflow: hidden;
}
.mv_img img {
      border-radius: 0 0 0 1.6rem;
}
.mv_copy {
      position: absolute;
      width: 42.296vw;
      height: auto;
      left: 3.9vw;
      bottom: 2.979vw;
}
.top_mv_body {
      padding: 3.561vw 3.779vw 2.906vw;
      gap: 4.505vw;
}
.mv_lst {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: 1.162vw;
}
.mv_lst_item {
      position: relative;
      background-color: var(--color-green);
      padding: 2.906vw 1.744vw;
      border-radius: 1.6rem;
      width: 21.511vw;
}
.mv_lst_mark {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      position: absolute;
      top: -10%;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      background-image: url(../img/common/mark_balloon.svg);
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      width: 3.488vw;
      height: 3.779vw;
}
.mv_lst_mark img {
      width: 2.325vw;
      height: 2.325vw;
}
.mv_lst_ttl {
      font-size: 1.453vw;
      line-height: 1;
      letter-spacing: 0.1rem;
      background-color: var(--color-sub);
      width: 100%;
      padding: 0.654vw;
      border-radius: 4rem;
}
.mv_lst_txt {
      margin-top: 1.162vw;
      font-size: 1.744vw;
      line-height: 1.5;
      letter-spacing: 0.12rem;
}
.mv_btn {
      gap: 1.308vw;
}
.mv_btn_copy {
      font-size: 1.453vw;
      line-height: 1.5;
      letter-spacing: 0.1rem;
}
.mv_btn_copy::before,
.mv_btn_copy::after {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 1.744vw;
      height: 0.145vw;
      background-color: var(--color-text);
      border-radius: 3px;
}
.mv_btn_copy::before {
      left: -23%;
      rotate: 45deg;
}
.mv_btn_copy::after {
      right: -23%;
      rotate: -45deg;
}
.interview_btn {
      background-color: var(--color-reverse);
      border: 1px solid var(--color-green);
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      border-radius: 8rem;
}
.interview_btn a {
      display: block;
      width: 100%;
      height: 100%;
      padding: 1.162vw 1.162vw 1.162vw 1.744vw;
      border-radius: 8rem;
}
.interview_btn span {
      gap: 1.744vw;
}
.interview_btn_body {
      gap: 1.162vw;
}
.interview_btn_body img {
      aspect-ratio: 24/40;
      width: 1.962vw;
      height: auto;
}
.interview_btn_txt {
      font-size: 1.162vw;
      line-height: 1.5;
      letter-spacing: 0.08rem;
      white-space: nowrap;
}
.interview_btn_arrow {
      position: relative;
      aspect-ratio: 1/1;
      width: 4.8rem;
      border-radius: 50%;
      background-color: var(--color-green);
      @media (max-width:1240) {
            width: 3.428vw;
      }
}

@media (any-hover:hover) {
      .interview_btn:hover {
            background-color: var(--color-light-green);
      }
}
@media (max-width:896px) {
      .mv_img {
            padding-top: 58.102vw;
            padding-left: 0;
      }
      .mv_img img {
            border-radius: 0;
      }
      .mv_copy {
            width: 87.692vw;
            top: 18.5vw;
            left: 50%;
            -webkit-transform: translateX(-50%);
                -ms-transform: translateX(-50%);
                    transform: translateX(-50%);
      }
      .top_mv_body {
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            -webkit-box-orient: vertical;
            -webkit-box-direction: reverse;
                -ms-flex-direction: column-reverse;
                    flex-direction: column-reverse;
            padding: 6.153vw 0 0;
            gap: 8.717vw;
      }
      .mv_lst {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
            gap: 4.615vw;
      }
      .mv_lst_item {
            padding: 4.102vw 6.153vw;
            border-radius: 0.8rem;
            width: 87.692vw;
      }
      .mv_lst_mark {
            left: 16.410vw;
            width: 10.256vw;
            height: 11.111vw;
      }
      .mv_lst_mark img {
            width: 6.837vw;
            height: 6.837vw;
      }
      .mv_lst_ttl {
            font-size: 4.102vw;
            line-height: 1.5;
            letter-spacing: 0.08rem;
            padding: 0 1.666vw;
      }
      .mv_lst_txt {
            font-size: 4.102vw;
            margin-top: 4.102vw;
            letter-spacing: 0.08rem;
            white-space: nowrap;
      }
      .mv_btn {
            gap: clamp(0.8rem, 1.785vw, 1.6rem);
      }
      .mv_btn_copy {
            font-size: clamp(1.4rem, 2.232vw, 2rem);
            line-height: 1.75;
            letter-spacing: 0.07rem;
      }
      .mv_btn_copy::before,
      .mv_btn_copy::after {
            width: 2.4rem;
      }
      .mv_btn_copy::before {
            left: -28%;
      }
      .mv_btn_copy::after {
            right: -28%;
      }
      .interview_btn a {
            padding: 0.8rem 1.6rem 0.8rem 2.4rem;
      }
      .interview_btn span {
            gap: 6.153vw;
      }
      .interview_btn_body {
            gap: 2.051vw;
      }
      .interview_btn_body img {
            width: 4.358vw;
      }
      .interview_btn_txt {
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
      }
      .interview_btn_arrow {
            padding: 2.051vw;
            width: 8.205vw;
            height: 8.205vw;
      }
      .interview_btn_arrow img {
            width: 4.102vw;
            height: auto;
      }
}


/*=========================
      リードセクション
=========================*/
.lead_wrap {
      position: relative;
}
.lead_wrap .lead_txt {
      font-size: 2rem;
      line-height: 2.5;
      @media (max-width:1240px) {
            font-size: 1.612vw;
      }
}
.lead_img_01 {
      position: absolute;
      top: -28%;
      left: 9%;
      width: 24rem;
      @media (max-width:1240px) {
            width: 19.354vw;
      }
}
.lead_img_02 {
      position: absolute;
      right: 0;
      bottom: -12%;
      width: 32.4rem;
      @media (max-width:1240px) {
            width: 26.129vw;
      }
}
.lead_img img {
      border-radius: 1.6rem;
}

@media (max-width:896px) {
      .lead_wrap .lead_txt {
            font-size: 4.102vw;
            line-height: 2;
      }
      .lead_img  {
            width: 100%;
      }
      .lead_img_01,
      .lead_img_02 {
            position: static;
            width: calc(50% - 0.8rem);
            max-width: 100%;
      }
      .lead_img img {
            display: block;
            border-radius: 0.8rem;
      }
}


/*=========================
      選ばれる9つの理由
=========================*/
.reason_lst_item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: justify;
          -ms-flex-pack: justify;
              justify-content: space-between;
      background-color: var(--color-reverse);
      height: 36rem;
      padding: 4rem 2.4rem;
      border-radius: 0.8rem;
      @media (max-width:1376px) {
            height: 26.162vw;
            padding: 2.906vw 1.744vw;
      }
}
.reason_lst_item.not-has_note {
      gap: 3rem;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      @media (max-width:1376px) {
            gap: 2.180vw;
      }
}
.reason_img {
      aspect-ratio: 1/1;
      width: 8rem;
      height: auto;
      margin-left: auto;
      margin-right: auto;
      @media (max-width:1376px) {
            width: 5.813vw;
      }
}
.reason_ttl {
      margin-top: 2rem;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 0.1rem;
      text-align: center;
      @media (max-width:1376px) {
            margin-top: 1.744vw;
            font-size: 1.453vw;
      }
}
.num_ttl {
      font-size: 8.8rem;
      font-weight: 700;
      line-height: 0.9;
      font-family: var(--font-en);
      -webkit-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease;
      @media (max-width:1376px) {
            font-size: 6.395vw;
      }
}
.num_ttl--low {
      line-height: 0.8;
}
.num_point {
      font-size: 5.6rem;
      @media (max-width:1376px) {
            font-size: 4.069vw;
      }
}
.num_unit {
      font-size: 3.2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.16rem;
      font-family: var(--font-jp);
      @media (max-width:1376px) {
            font-size: 2.325vw;
      }
}
.num_txt {
      font-size: 2.4rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.12rem;
      font-family: var(--font-jp);
      white-space: nowrap;
      @media (max-width:1376px) {
            font-size: 1.744vw;
      }
}
.resaon_note {
      font-size: 1.4rem;
      letter-spacing: 0.07rem;
      -ms-flex-item-align: end;
          align-self: flex-end;
      text-align: right;
      @media (max-width:1376px) {
            font-size: 1.0174vw;
      }
}
.support-vacation_gap {
      gap: 2.4rem;
      @media (max-width:1376px) {
            gap: 1.744vw;
      }
}
.support-certified_gap {
      gap: 1.6rem;
      @media (max-width:1376px) {
            gap: 1.162vw;
      }
}
.support-certified_gap--2 {
      gap: 0.8rem;
      @media (max-width:1376px) {
            gap: 0.581vw;
      }
}

@media (max-width:896px) {
      .reason_lst_item {
            height: auto;
            padding: 8.205vw 6.153vw;
            gap: 6.153vw;
      }
      .reason_img {
            width: 16.410vw;
      }
      .reason_ttl {
            margin-top: 4.102vw;
            font-size: 4.102vw;
            line-height: 1;
      }
      .num_ttl {
            font-size: 12.307vw;
            line-height: 1;
      }
      .num_txt {
            font-size: 4.615vw;
            letter-spacing: 0.09rem;
            line-height: 1.5;
      }
      .num_point {
            font-size: 8.205vw;
      }
      .num_unit {
            font-size: 5.128vw;
            letter-spacing: 0.1rem;
      }
      .support-vacation_gap {
            gap: 6.153vw;
      }
      .resaon_note {
            font-size: 3.076vw;
            line-height: 1;
            letter-spacing: 0.06rem;
      }
      .support-certified_gap {
            gap: 4.102vw;
      }
      .support-certified_gap--2 {
            gap: 2.051vw;
      }
}


/*=========================
      職場環境
=========================*/
.environment_wrap {
      position: relative;
}
.we_lst {
      counter-reset: we_num 0;
      margin-top: 8rem;
}
.we_lst .we_lst_item + .we_lst_item {
      margin-top: 4rem;
}

@media (max-width:896px) {
      .we_lst {
            margin-top: 10.256vw;
      }
}

/* アコーディオンタイトル */
.we_item_head {
      font-size: 3.2rem;
      font-weight: 700;
      line-height: 1.25;
      letter-spacing: 0.16rem;
      color: var(--color-sub);
      background-color: var(--color-green);
      padding: 3.6rem 4rem;
      border-radius: 1.6rem;
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      cursor: pointer;
}
.we_item_head::before {
      width: 18px;
      height: 4px;
      right: calc(4rem + 1.2rem);
}
.we_item_head::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 4rem;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      background-color: var(--color-light-green);
}
.we_item_head::after {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: calc(4rem + 1.2rem);
      width: 2.4rem;
      height: 2.4rem;
      background-image: url(../img/common/ico_plus.svg);
      background-position: center;
      background-repeat: no-repeat;
      -webkit-transition: all 0.2s linear;
      -o-transition: all 0.2s linear;
      transition: all 0.2s linear;
      z-index: 1;
}
.we_lst_item.js_open .we_item_head {
      border-radius: 1.6rem 1.6rem 0 0;
}
.we_lst_item.js_open .we_item_head::after {
      background-image: url(../img/common/icon_minus.svg);
      background-position: center;
      background-repeat: no-repeat;
}
.we_lst_item.js_acd .we_item_body.js_acd_trg {
      display: none;
}
.we_item_head__ttl {
      position: relative;
      width: 100%;
      padding-left: 7.2rem;
}
.we_item_head__ttl::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      background-color: var(--color-reverse);
}
.we_item_head__ttl::after {
      content: counter(we_num, decimal-leading-zero);
      counter-increment: we_num 1;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 1.2rem;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.01rem;
      font-family: var(--font-en);
      color: var(--color-green);
}

@media (any-hover:hover) {
      .we_item_head:hover {
            background-color: var(--color-main);
      }
}
@media (max-width:896px) {
      .we_item_head {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            font-size: clamp(2.4rem, 3.571vw, 3.2rem);
            letter-spacing: 0.12rem;
            padding: 3.461vw 20.512vw 3.461vw 4.102vw;
            border-radius: 0.8rem;
            height: 26.666vw;
      }
      .we_item_head__ttl {
            padding-left: 10.256vw;
      }
      .we_item_head__ttl::before {
            width: 8.205vw;
            height: 8.205vw;
      }
      .we_item_head__ttl::after {
            left: 1.8vw;
            font-size: 3.589vw;
            line-height: 1.5;
            letter-spacing: 0.07rem;
      }
      .we_item_head::before {
            right: 1.6rem;
            width: 8.205vw;
            height: 8.205vw;
      }
      .we_item_head::after {
            right: calc(1.6rem + 2.051vw);
            width: 4.102vw;
            height: 4.102vw;
      }
      .we_lst_item.js_open .we_item_head {
            border-radius: 0.8rem 0.8rem 0 0;
      }
}

/* アコーディオン中身 */
.we_item_body {
      background-color: var(--color-light-green);
      padding: 4rem;
      border-radius: 0 0 1.6rem 1.6rem;
}
.weInr_lst__item {
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: 2.4rem;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: start;
          -ms-flex-pack: start;
              justify-content: flex-start;
      background-color: var(--color-reverse);
      padding: 4rem;
      border-radius: 0.8rem;
}
.weInr_lst__item--row {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
          -ms-flex-direction: row;
              flex-direction: row;
      gap: 3.2rem;
}
.weInr_lst__item--row .weInr_txt {
      gap: 2.4rem;
}
.weInr_txt {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      gap: 3.2rem;
}
.weInr_txt__ttl {
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      text-align: center;
}
.weInr_lst__item--row .weInr_txt__ttl {
      text-align: left;
}
.weInr_txt__lead {
      font-size: 1.6rem;
      font-weight: 500;
      letter-spacing: 0.08rem;
}
.weInr_img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      width: 8rem;
      height: 8rem;
}
.weInr_img img {
      -ms-flex-negative: 0;
          flex-shrink: 0;
      width: 8rem;
      height: 8rem;
}

@media (max-width: 1240px) {
      .we_item_body {
            padding: 3.225vw;
      }
      .weInr_lst__item {
            gap: 6.153vw;
            padding: 4.102vw;
      }
      .weInr_lst__item--row {
            gap: 2.580vw;
      }
      .weInr_lst__item--row .weInr_txt {
            gap: 1.935vw;
      }
      .weInr_txt {
            gap: 2.580vw;
      }
      .weInr_txt__ttl {
            font-size: 1.612vw;
      }
      .weInr_txt__lead {
            font-size: 1.290vw;
      }
      .weInr_img {
            width: 6.451vw;
            height: 6.451vw;
      }
      .weInr_img img {
            width: 6.451vw;
            height: 6.451vw;
      }
}
@media (max-width:896px) {
      .we_item_body  {
            padding: 4.102vw;
            border-radius: 0 0 0.4rem 0.4rem;
      }
      .weInr_lst__item {
            gap: 4.102vw;
            padding: 4.102vw;
            border-radius: 0 0 0.4rem 0.4rem;
      }
      .weInr_lst__item--row {
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
      }
      .weInr_txt__lead {
            font-size: 3.589vw;
      }
      .weInr_txt__ttl {
            font-size: 4.102vw;
      }
      .weInr_lst__item--row .weInr_txt__ttl {
            text-align: center;
      }
      .weInr_img {
            width: 16.410vw;
            height: 16.410vw;
      }
      .weInr_img img {
            width: 16.410vw;
            height: 16.410vw;
      }
}


/*=========================
      研修制度
=========================*/
.training_wrap {
      margin-top: 8rem;
}
.training_wrap .training_wrap__item + .training_wrap__item {
      margin-top: 8rem;
}
.training-menu_ttl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      position: relative;
      font-size: 2.4rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.12rem;
      margin-left: auto;
      margin-right: auto;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
}
.training-menu_ttl .ttl_num {
      position: relative;
      font-size: 2rem;
      letter-spacing: 0.1rem;
      color: var(--color-sub);
      font-family: var(--font-en);
      z-index: 1;
}
.training-menu_ttl .ttl_num::before {
      position: absolute;
      content: "";
      top: 50%;
      -webkit-transform: translateY(-50%) translateX(-50%);
          -ms-transform: translateY(-50%) translateX(-50%);
              transform: translateY(-50%) translateX(-50%);
      left: 50%;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      z-index: -1;
}
.training_wrap__item.item_green .ttl_num::before {
      background-color: var(--color-green);
}
.training_wrap__item.item_blue .ttl_num::before {
      background-color: var(--color-blue);
}
.training-menu_body {
      margin-top: 3.2rem;
      padding: 4rem;
      border-radius: 1.6rem;
      @media (max-width:1240px) {
            padding: 3.225vw;
      }
}
.training-menu_body--column {
      display: -ms-grid;
      display: grid;
      gap: 5.6rem;
      @media (max-width:1240px) {
            gap: 4.516vw;
      }
}
.training-menu_body--row {
      gap: 1.6rem;
      @media (max-width:1240px) {
            gap: 1.290vw;
      }
}
.training_wrap__item.item_green .training-menu_body {
      background-color: var(--color-light-green);
}
.training_wrap__item.item_blue .training-menu_body {
      background-color: var(--color-light-blue);
}
.training-menu_body__item {
      position: relative;
      gap: 1.6rem;
}
.training_wrap__item.item_green .training-menu_body__item::before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      bottom: calc(-2.4rem - 1.6rem);
      width: 2.4rem;
      height: 2.4rem;
      content: "";
      background-image: url(../img/common/arrow-btm.svg);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      @media (max-width:1240px) {
            bottom: calc(-1.935vw - 1.290vw);
            width: 1.935vw;
            height: 1.935vw;
      }
}
.training_wrap__item.item_green .training-menu_body__item:last-child:before {
      content: none;
}
.training_time {
      font-size: 2rem;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      border-radius: 0.8rem;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      @media (max-width:1240px) {
            font-size: 1.612vw;
      }
}
.training_wrap__item.item_green .training_time {
      background-color: var(--color-green);
      padding: 1.85rem;
      width: 12rem;
      text-orientation: upright;
      white-space: nowrap;
      @media (max-width:1240px) {
            padding: 1.491vw;
            width: 9.677vw;
      }
}
.training_wrap__item.item_blue .training_time {
      background-color: var(--color-blue);
      height: 5.6rem;
      @media (max-width:1240px) {
            height: 4.516vw;
      }
}
.training_ttl {
      gap: 2.4rem;
      width: 25.8rem;
      @media (max-width:1240px) {
            gap: 1.935vw;
            width: 20.806vw;
      }
}
.training_ttl_txt {
      font-size: 2rem;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      @media (max-width:1240px) {
            font-size: 1.612vw;
            line-height: 1;
      }
}
.training_menu {
      gap: 1.6rem;
      @media (max-width:1240px) {
            gap: 1.290vw;
      }
}
.training_menu__item {
      background-color: var(--color-reverse);
      border-radius: 0.8rem;
      padding: 4rem;
      gap: 4rem;
      @media (max-width:1240px) {
            padding: 3.225vw;
            gap: 3.225vw;
      }
}
.training_img img {
      width: 8rem;
      @media (max-width:1240px) {
            width: 6.451vw;
      }
}
.training_txt {
      font-size: 1.6rem;
      letter-spacing: 0.08rem;
      @media (max-width:1240px) {
            font-size: 1.290vw;
      }
}
.training_txt span {
      font-size: 1.4rem;
      @media (max-width:1240px) {
            font-size: 1.129vw;
      }
}

@media (max-width:896px) {
      .training_wrap {
            margin-top: 10.256vw;
      }
      .training_wrap .training_wrap__item + .training_wrap__item {
            margin-top: 10.256vw;
      }
      .training-menu_ttl {
            font-size: 5.128vw;
            letter-spacing: 0.1rem;
      }
      .training-menu_ttl .ttl_num {
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
      }
      .training-menu_ttl .ttl_num::before {
            width: 8.205vw;
            height: 8.205vw;
      }
      .training-menu_body {
            padding: 4.102vw;
            border-radius: 0.8rem;
            margin-top: 2.4rem;
      }
      .training-menu_body--column {
            gap: 8.205vw;
      }
      .training-menu_body--row {
            gap: 4.102vw;
      }
      .training-menu_body__item {
            gap: 2.051vw;
      }
      .training_time {
            font-size: 4.102vw;
            line-height: 1.25;
            border-radius: 0.4rem;
      }
      .training_wrap__item.item_green .training_time {
            letter-spacing: 0.8rem;
            -webkit-writing-mode: vertical-rl;
                -ms-writing-mode: tb-rl;
                    writing-mode: vertical-rl;
      }
      .training_wrap__item.item_blue .training_time {
            letter-spacing: 0.08rem;
            height: 8.205vw;
      }
      .training_menu {
            gap: 2.051vw;
      }
      .training_menu__item {
            border-radius: 0.4rem;
            padding: 4.102vw;
            gap: 6.153vw;
      }
      .training_ttl {
            gap: 4.102vw;
            width: 100%;
      }
      .training_img img {
            width: 16.410vw;
      }
      .training_ttl_txt {
            font-size: 4.102vw;
            letter-spacing: 0.08rem;
      }
      .training_txt {
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
      }
      .training_wrap__item.item_green .training-menu_body__item::before {
            bottom: calc(-4.102vw - 2.051vw);
            width: 4.102vw;
            height: 4.102vw;
      }
      .training_txt span {
            font-size: 3.076vw;
      }
}


/*=========================
      キャリアイメージ
=========================*/
.table_heading {
      margin-top: 9.6rem;
      width: 12rem;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      @media (max-width:1240px) {
            margin-top: 7.5vw;
            width: 9.375vw;
      }
}
.table_body {
      position: relative;
}
.table_body::before {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      position: absolute;
      top: 10.4rem;
      left: 0;
      content: "ケアマネジャー";
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      width: calc(27.377rem * 2 + 0.8rem);
      height: 8rem;
      color: var(--color-reverse);
      background-color: var(--color-blue);
      border-radius: 0.8rem;
      z-index: 1;
      background-image: url(../img/common/arrow_space.svg);
      background-repeat: no-repeat;
      background-size: auto;
      background-position: center right -0.1rem;
      @media (max-width:1280px) {
            top: 8.125vw;
            font-size: 1.612vw;
            width: 49.6%;
            height: 6.25vw;
      }
}
.table_body::after {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      position: absolute;
      top: 0;
      right: 0;
      content: "6年目～";
      font-size: 2rem;
      font-weight: 700;
      width: 55.6rem;
      height: 9.6rem;
      color: var(--color-reverse);
      background-color: var(--color-green);
      border-radius: 0.8rem 0.8rem 0 0;
      z-index: 1;
      @media (max-width:1280px) {
            font-size: 1.612vw;
            width: 49.6%;
            height: 7.5vw;
      }
}
.table_item {
      position: relative;
      -webkit-box-flex: 1;
          -ms-flex: 1;
              flex: 1;
      background-color: var(--color-reverse);
      border-radius: 0.8rem 0.8rem 0 0;
}
.table_item::before {
      position: absolute;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      bottom: 17.5rem;
      content: "";
      height: 0.05rem;
      width: 85%;
      background-color: var(--color-text);
      @media (max-width:1240px) {
            bottom: 13.671vw;
      }
}
.career_year {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      border-radius: 0.8rem 0.8rem 0 0;
      font-size: 2rem;
      font-weight: 700;
      text-align: center;
      color: var(--color-reverse);
      background-color: var(--color-green);
      height: 9.6rem;
      @media (max-width:1240px) {
            font-size: 1.562vw;
            height: 7.5vw;
      }
}
.career_year-opacity {
      opacity: 0;
}
.career_post_ttl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      border-radius: 0.8rem 0 0 0.8rem;
      font-size: 2rem;
      font-weight: 700;
      text-align: center;
      color: var(--color-green);
      background-color: var(--color-light-green);
      height: 9.6rem;
      @media (max-width:1248px) {
            font-size: 1.562vw;
            height: 7.5vw;
      }
}
.career_post_item {
      position: relative;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border-radius: 0.8rem;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      text-align: center;
      color: var(--color-reverse);
      background-color: var(--color-blue);
      height: 8rem;
      width: 100%;
      @media (max-width:1240px) {
            font-size: 1.562vw;
            height: 6.25vw;
      }
}
.career_post_item::after {
      position: absolute;
      right: -0.4%;
      bottom: 0;
      content: "";
      background-image: url(../img/common/arrow_space.svg);
      background-position: center;
      background-repeat: no-repeat;
      background-size: cover;
      width: 3.4rem;
      height: 8rem;
      @media (max-width:1280px) {
            width: 2.656vw;
            height: 6.25vw;
      }
}
.career_post_item-opacity {
      opacity: 0;
}
.career_txt {
      width: 100%;
}
.career_job_ttl,
.career_follow_ttl {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      border-radius: 0.8rem 0 0 0.8rem;
      font-size: 2rem;
      font-weight: 700;
      text-align: center;
      color: var(--color-green);
      background-color: var(--color-light-green);
      height: 17.1rem;
      @media (max-width:1280px) {
            font-size: 1.562vw;
            height: 13.359vw;
      }
}
.career_job_detail,
.career_follow_detail {
      font-size: 1.6rem;
      letter-spacing: 0.08rem;
      padding: 2.4rem;
      height: 17.1rem;
      @media (max-width:1280px) {
            font-size: 1.25vw;
            letter-spacing: 0;
            padding: 1.875vw;
            height: 13.359vw;
      }
}
.career_lead_txt {
      letter-spacing: 0.07rem;
}

@media (max-width:896px) {
      .table_body::before {
            content: none;
      }
      .table_item:first-child {
                  height: 73.846vw;
            &.career_year {
                  height: 10.256vw;
            }
            &.career_post_item {
                  height: 64.871vw;
            }
      }
      .table_item:nth-child(2) {
            height: 61.025vw;
            &.career_year {
                  height: 61.025vw;
            }
            &.career_post_item {
                  height: 52.051vw;
            }
      }
      .table_item:nth-child(3) {
            height: 67.435vw;
            &.career_year {
                  height: 67.435vw;
            }
            &.career_post_item {
                  height: 58.461vw;
            }
      }
      .table_item:last-child {
            height: 67.435vw;
            &.career_year {
                  height: 67.435vw;
            }
            &.career_post_item {
                  height: 58.461vw;
            }
      }
      .table_item::before,
      .table_body::after {
            content: none;
      }
      .table_wrap {
            padding: 0 0.8rem;
      }
      
      .career_year {
            border-radius: 0.4rem;
            text-orientation: upright;
            -webkit-writing-mode: vertical-rl;
                -ms-writing-mode: tb-rl;
                    writing-mode: vertical-rl;
      }
      .career_year .vertical_md {
            -webkit-transform: rotate(90deg);
                -ms-transform: rotate(90deg);
                    transform: rotate(90deg);
      }
      .career_post_wrap {
            -webkit-writing-mode: vertical-rl;
                -ms-writing-mode: tb-rl;
                    writing-mode: vertical-rl;
            text-orientation: upright;
            width: 10.256vw;
      }
      .career_post_ttl {
            -webkit-writing-mode: horizontal-tb;
                -ms-writing-mode: lr-tb;
                    writing-mode: horizontal-tb;
            -ms-flex-negative: 0;
                flex-shrink: 0;
            border-radius: 0.4rem;
            font-size: 4.102vw;
            line-height: 1.25;
            letter-spacing: 0.08rem;
            height: 6.923vw;
            padding: 0.3rem;
      }
      .career_year {
            font-size: 4.102vw;
            line-height: 1.25;
            letter-spacing: 0.5rem;
            padding: 0.8rem;
            width: 8.205vw;
            height: 100%;
      }
      .career_year-opacity {
            opacity: 1;
      }
      .career_post_item {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            font-size: 4.102vw;
            line-height: 1.25;
            letter-spacing: 0.5rem;
            height: 100%;
            border-radius: 0.4rem;
            white-space: nowrap;
      }
      .career_post_item::after {
            position: absolute;
            right: 0;
            bottom: 0;
            content: "";
            background-image: url(../img/common/arrow_space_sp.svg);
            background-position: center;
            background-repeat: no-repeat;
            background-size: cover;
            width: 100%;
            height: 3.589vw;
      }
      .career_post_item-opacity {
            opacity: 1;
      }
      .career_job_ttl,
      .career_follow_ttl {
            border-radius: 0.4rem;
            font-size: 4.102vw;
            letter-spacing: 0.08rem;
            height: 6.923vw;
      }
      .career_job_detail,
      .career_follow_detail {
            font-size: 3.589vw;
            margin: 0;
            border: none;
            height: -webkit-fit-content;
            height: -moz-fit-content;
            height: fit-content;
      }
}

/*=========================
      力を活かせる場所
=========================*/
#section_06 {
      position: relative;
      z-index: 3;
}
.circle_wrap {
      position: relative
}
.person_img {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translateY(-50%) translateX(-50%);
          -ms-transform: translateY(-50%) translateX(-50%);
              transform: translateY(-50%) translateX(-50%);
      width: 15rem;
}
.circle_lst {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      width: calc(var(--r) * 2px);
      height: calc(var(--r) * 2px);
      border: 2px solid var(--color-green);
      border-radius: 50%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      margin-top: 20rem;
      margin-bottom: 12rem;
}
.circle_lst_item {
      position: absolute;
      width: 24.8rem;
      height: 24.8rem;
      background-color: var(--color-reverse);
      border: 2px solid var(--color-green);
      border-radius: 50%;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      --a2: calc(var(--a) * 1deg - 90deg);
      --x: calc(cos(var(--a2)) * var(--r) * 1px);
      --y: calc(sin(var(--a2)) * var(--r) * 1px);
      translate: var(--x) var(--y);
}
.circle_item_txt {
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.12rem;
}
.circle_item_hl {
      font-size: 2.4rem;
}

@media (max-width:896px) {
      .person_img {
            position: relative;
            top: 0;
            -webkit-transform: translateY(0) translateX(-50%);
                -ms-transform: translateY(0) translateX(-50%);
                    transform: translateY(0) translateX(-50%);
            width: 26.153vw;
            margin-top: 4rem;
      }
      .circle_lst {
            gap: 4.102vw;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
            width: -webkit-fit-content;
            width: -moz-fit-content;
            width: fit-content;
            height: -webkit-fit-content;
            height: -moz-fit-content;
            height: fit-content;
            border: none;
            border-radius: 0;
            margin-top: 2.4rem;
            margin-bottom: 0;
      }
      .circle_lst_item {
            position: static;
            width: 87.692vw;
            height: 10.256vw;
            --a2: 0;
            --x: 0;
            --y: 0;
            border-radius: 16rem;
      }
      .circle_item_txt {
            font-size: 4.102vw;
            letter-spacing: 0.08rem;
      }
      .circle_item_hl {
            font-size: 5.128vw;
            line-height: 1.5;
            letter-spacing: 0.1rem;
      }
}


/*=========================
      活躍中のケアマネ
=========================*/
.introduction_cont {
      position: relative;
}
.interview_wrap {
      margin-top: 8rem;
}
.thumbnail_cont {
      gap: 8rem;
}
.thumbnail_img {
      position: relative;
      border-radius: 1.6rem;
}
.thumbnail_img img {
      max-width: 50rem;
      border-radius: 1.6rem;
}
.btn_play {
      position: absolute;
      content: "";
      top: 50%;
      left: 50%;
      -webkit-transform: translateX(-50%) translateY(-50%);
          -ms-transform: translateX(-50%) translateY(-50%);
              transform: translateX(-50%) translateY(-50%);
      background-image: url(../img/top/btn_play.png);
      background-repeat: no-repeat;
      background-position: center;
      background-size: cover;
      width: 8rem;
      height: 8rem;
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      cursor: pointer;
}
.view-more_btn {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      width: 40rem;
      height: 7.2rem;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.08rem;
      border-radius: 7.2rem;
      background-color: var(--color-reverse);
      border: 0.1rem solid var(--color-green);
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      margin-top: 4rem;
}
.view-more_btn a {
      display: block;
      width: 100%;
      height: 100%;
      padding:  1.2rem 1.2rem 1.2rem 3.2rem;
      border-radius: 7.2rem;
}

@media (any-hover:hover) {
      .btn_play:hover {
            background-image: url(../img/top/btn_play_green.png);
      }
}
@media (max-width:1080px) {
      .btn_play {
            width: 7.407vw;
            height: 7.407vw;
      }
}
@media (max-width:896px) {
      .interview_wrap {
            margin-top: 10.256vw;
      }
      .thumbnail_cont {
            gap: 10.256vw;
      }
      .thumbnail_img {
            border-radius: 0.8rem;
      }
      .thumbnail_img img {
            max-width: 100%;
            border-radius: 0.8rem;
      }
      .view-more_btn {
            width: 87.692vw;
            height: 14.358vw;
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
      }
      .view-more_btn::before {
            width: 8.205vw;
            height: 8.205vw;
      }
      .view-more_btn::after {
            width: 4.102vw;
            height: 4.102vw;
      }
      .view-more_btn a {
            padding: 3.076vw 3.076vw 3.076vw 6.153vw;
      }
      .btn_play {
            width: 14.358vw;
            height: 14.358vw;
      }
}

/* モーダル */
.modal_cont {
      position: absolute;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
          -ms-transform: translate(-50%, -50%);
              transform: translate(-50%, -50%);
      max-height: 76.2rem;
      max-width: 124rem;
      overflow: hidden;
      padding: 10rem 12rem;
      scrollbar-width: none;
      -webkit-box-sizing: border-box;
              box-sizing: border-box;
      overflow: hidden;
      max-height: 82.5vh;
      width: calc(100% - 4rem);
      height: auto;
      aspect-ratio: 620/381;
      background-color: var(--color-medium-yellow);
      border-radius: 6.4rem;
      @media (max-width:1240px) {
            padding: 8.064vw 9.677vw;
      }
}
.modal_cont__inr {
      height: 100%;
      max-height: 100%;
}
.modal_close_icon {
      position: absolute;
      top: 2.8rem;
      right: 4rem;
      width: 6.4rem;
      height: 6.4rem;
      z-index: 2;
      background-color: var(--color-reverse);
      border: 0.1rem solid var(--color-green);
      border-radius: 50%;
}
.modal_close_icon::before {
      content: "";
      position: absolute;
      width: 2.4rem;
      height: 0.2rem;
      top: 50%;
      right: 50%;
      -webkit-transform: translate(50%, -50%) rotate(45deg);
          -ms-transform: translate(50%, -50%) rotate(45deg);
              transform: translate(50%, -50%) rotate(45deg);
      background-color: var(--color-green);
      border-radius: 3px;
}
.modal_close_icon::after {
      content: "";
      position: absolute;
      width: 2.4rem;
      height: 0.2rem;
      top: 50%;
      right: 50%;
      -webkit-transform: translate(50%, -50%) rotate(-45deg);
          -ms-transform: translate(50%, -50%) rotate(-45deg);
              transform: translate(50%, -50%) rotate(-45deg);
      background-color: var(--color-green);
      border-radius: 3px;
}
.modal_cont__inr img {
      display: block;
      border-radius: 2.4rem;
      width: auto;
      max-width: 100%;
      height: auto;
      max-height: 100%;
      -o-object-fit: contain;
         object-fit: contain;
}
.video_placeholder {
      width: 100%;
      height: 100%;
}
.video_placeholder img {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      width: 100%;
      height: 100%;
}
.video_iframe_container {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      width: 100%;
      height: 100%;
      aspect-ratio: 16 / 9;
      line-height: 0;
}
.movie_item {
      width: 100%;
      height: auto;
      aspect-ratio: 16 / 9;
}

@media (any-hover:hover) {
      .view-more_btn:hover {
            background-color: var(--color-light-green);
      }
}
@media (max-width:896px) {
      .modal_cont {
            height: 100%;
            width: 100%;
            max-width: 100%;
            border-radius: 0;
            padding: initial;
            aspect-ratio: auto;
      }
      .modal_cont__inr img {
            border-radius: 0;
      }
      .modal_close_icon {
            top: 1.2rem;
            right: 1rem;
            width: 10.256vw;
            height: 10.256vw;
      }
      .modal_close_icon::before,
      .modal_close_icon::after {
            width: 4.615vw;
            height: 0.487vw;
      }
}
@media screen and (max-width: 896px) and (orientation: landscape) {
      .modal_cont {
            width: 100%;
            height: auto;
            max-height: 100vh;
            overflow: visible;
            padding: 0 13.589vw;
      }
      .modal_cont__inr {
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            max-height: 100vh;
            line-height: 0;
      }
      .modal_cont__inr img {
            height: 100%;
            max-height: 100vh;
            width: auto;
            max-width: 100%;
            display: block;
            margin: 0 auto;
      }
      .video_iframe_container {
            display: none;
            width: 100%;
            height: 100%;
            aspect-ratio: 16 / 9;
            line-height: 0;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
      }
}



/* 1日の流れ */
#section_07 .l_wrap_inr {
      max-width: 1080px;
}
.flow-day_wrap {
      margin-top: 8rem;
      @media (max-width:1240px) {
            margin-top: 6.451vw;
      }
}
.flow-day_ttl {
      font-size: 2rem;
      line-height: 1.5;
      letter-spacing: 0.12rem;
      padding-left: calc(1.6rem + 1.6rem);
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      @media (max-width:1240px) {
            font-size: 1.612vw;
            padding-left: calc(1.290vw + 1.290vw);
      }
}
.flow-day_ttl::after {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      width: 1.6rem;
      height: 1.6rem;
      border-radius: 50%;
      background-color: var(--color-green);
      @media (max-width:1240px) {
            width: 1.290vw;
            height: 1.290vw;
      }
}
.flow_lst::before {
      display: block;
      top: 0;
      left: 5.2rem;
      width: 0.2rem;
      height: 98%;
      z-index: -1;
      background-image: url(../img/common/line.svg);
      @media (max-width:1240px) {
            left: 4.193vw;
            width: 0.161vw;
      }
}
.flow_lst_item {
      gap: 4rem;
      @media (max-width: 1240px) {
            gap: 3.226vw;
      }
}
.flow_lst_item + .flow_lst_item {
      margin-top: 3.2rem;
      @media (max-width:1240px) {
            margin-top: 2.580vw;
      }
}
.flow_lst .flow_head {
      cursor: pointer;
}
.flow_time {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-flex: 0;
          -ms-flex: 0 0 10.4rem;
              flex: 0 0 10.4rem;
      height: 4.8rem;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      background-color: var(--color-green);
      border-radius: 4.8rem;
      @media (max-width:1240px) {
            -webkit-box-flex: 0;
                -ms-flex: 0 0 8.387vw;
                    flex: 0 0 8.387vw;
            height: 3.870vw;
            font-size: 1.612vw;
      }
}
.flow_txt {
      -webkit-box-flex: 0;
          -ms-flex: 0 0 80rem;
              flex: 0 0 80rem;
      max-width: 80rem;
      @media (max-width:1080px) {
            -webkit-box-flex: 0;
                -ms-flex: 0 0 74.074vw;
                    flex: 0 0 74.074vw;
            max-width: 74.074vw;
      }
}
.flow_head {
      gap: 2.4rem;
      @media (max-width:1240px) {
            gap: 1.935vw;
      }
}
.flow_ttl {
      line-height: 1.5;
      letter-spacing: 0.1rem;
}
.flow_detail {
      letter-spacing: 0.08rem;
      padding-left: 12.8rem;
      font-weight: 500;
      @media (max-width:1240px) {
            padding-left: 10.322vw;
      }
}
.flow_img {
      width: 24rem;
      -ms-flex-negative: 0;
          flex-shrink: 0;
      @media (max-width:1240px) {
            width: 19.354vw;
      }
}
.flow_img img {
      border-radius: 1.6rem;
}
.flow_img--2 {
      position: relative;
      top: -6.9rem;
}

@media (max-width:896px) {
      .flow-day_wrap {
            margin-top: 10.256vw;
      }
      .flow-day_ttl {
            font-size: 5.128vw;
            letter-spacing: 0.1rem;
            padding-left: calc(3.076vw + 2.051vw);
      }
      .flow-day_ttl::after {
            top: 26%;
            width: 3.076vw;
            height: 3.076vw;
      }
      .flow_lst::before {
            width: 0;
      }
      .flow_lst_item {
            gap: 4.102vw;
      }
      .flow_lst_item + .flow_lst_item {
            margin-top: 8.205vw;
      }
      .flow_time {
            -webkit-box-flex: 0;
                -ms-flex: 0 0 20.512vw;
                    flex: 0 0 20.512vw;
            font-size: 4.102vw;
            letter-spacing: 0.08rem;
            border-radius: 3.2rem;
            height: 8.205vw;
      }
      .flow_txt {
            -webkit-box-flex: 0;
                -ms-flex: 0 0 auto;
                    flex: 0 0 auto;
            width: 100%;
            max-width: 100%;
            margin-right: 0;
      }
      .flow_ttl {
            font-size: 4.102vw;
            letter-spacing: 0.08rem;
      }
      .flow_detail {
            font-size: 3.58vw;
            letter-spacing: 0.07rem;
            padding-left: 0;
            margin-top: 4.102vw;
      }
      .flow_img {
            width: 100%;
            max-width: 100%;
      }
      .flow_img--2 {
            top: 0;
      }
      .flow_head  {
            gap: 1.6rem;
      }
}


/*=========================
      よくある質問
=========================*/
.faq_lst {
      max-width: 92.6rem;
      width: 100%;
}
.faq_lst .faq_lst_item + .faq_lst_item {
      margin-top: 4rem;
}

@media (max-width:1240px) {
      .faq_lst .faq_lst_item + .faq_lst_item {
            margin-top: 3.224vw;
      }
}

/* アコーディオンタイトル */
.faq_item_head {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      color: var(--color-reverse);
      background-color: var(--color-green);
      padding: 3.6rem calc(4rem + 4.8rem + 4rem) 3.6rem 4rem;
      border-radius: 1.6rem;
      height: 12rem;
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
      cursor: pointer;
}
.faq_item_head::before {
      width: 18px;
      height: 4px;
      right: calc(4rem + 1.2rem);
}
.faq_item_head::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: 4rem;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      background-color: var(--color-light-green);
}
.faq_item_head::after {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      right: calc(4rem + 1.2rem);
      width: 2.4rem;
      height: 2.4rem;
      background-image: url(../img/common/ico_plus.svg);
      background-position: center;
      background-repeat: no-repeat;
      -webkit-transition: all 0.2s linear;
      -o-transition: all 0.2s linear;
      transition: all 0.2s linear;
      z-index: 1;
}
.faq_lst_item.js_open .faq_item_head {
      border-radius: 1.6rem 1.6rem 0 0;
}
.faq_lst_item.js_open .faq_item_head::after {
      background-image: url(../img/common/icon_minus.svg);
      background-position: center;
      background-repeat: no-repeat;
}
.faq_lst_item.js_acd .faq_item_body.js_acd_trg {
      display: none;
}
.faq_item_head__ttl {
      position: relative;
      width: 100%;
      padding-left: 7.2rem;
}
.faq_item_head__ttl::before {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      background-color: var(--color-reverse);
}
.faq_item_head__ttl::after {
      content: "Q";
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 1.6rem;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      font-family: var(--font-en);
      color: var(--color-green);
}

@media (any-hover:hover) {
      .faq_item_head:hover {
            background-color: var(--color-main);
      }
}
@media (max-width:1240px) {
      .faq_item_head {
            font-size: 1.612vw;
            padding: 2.903vw calc(3.224vw + 3.870vw + 3.224vw) 2.903vw 3.224vw;
            height: 9.677vw;
      }
      .faq_item_head::before {
            width: 1.451vw;
            height: 0.322vw;
            right: calc(3.224vw + 0.968vw);
      }
      .faq_item_head::before {
            right: 3.224vw;
            width: 3.870vw;
            height: 3.870vw;
      }
      .faq_item_head::after {
            right: calc(3.224vw + 0.968vw);
            width: 1.935vw;
            height: 1.935vw;
      }
      .faq_item_head__ttl {
            padding-left: 5.806vw;
      }
      .faq_item_head__ttl::before {
            width: 3.870vw;
            height: 3.870vw;
      }
      .faq_item_head__ttl::after {
            left: 1.290vw;
            font-size: 1.612vw;
      }
}
@media (max-width:896px) {
      .faq_item_head {
            font-size: 4.102vw;
            padding: 4.102vw 18.461vw 4.102vw 4.102vw;
            height: 26.666vw;
            border-radius: 0.8rem;
      }
      .faq_item_head::before {
            width: 8.205vw;
            height: 8.205vw;
            right: 4.102vw;
      }
      .faq_item_head::after {
            width: 4.102vw;
            height: 4.102vw;
            right: calc(2.051vw + 4.102vw);
      }
      .faq_item_head__ttl {
            padding-left: 10.256vw;
      }
      .faq_item_head__ttl::before {
            width: 8.205vw;
            height: 8.205vw;
      }
      .faq_item_head__ttl::after {
            width: 4.102vw;
            height: 4.102vw;
            font-size: 4.102vw;
            left: 2.564vw;
            top: 46%;
      }
      .faq_lst_item.js_open .faq_item_head {
            border-radius: 0.8rem 0.8rem 0 0;
      }
}

/* アコーディオン中身 */
.faq_item_body {
      background-color: var(--color-light-green);
      padding: 4rem 4rem 4rem calc(4rem + 4.8rem + 2.4rem);
      border-radius: 0 0 1.6rem 1.6rem;
}
.faq_item_body::before {
      top: 4rem;
      left: 4rem;
      width: 4.8rem;
      height: 4.8rem;
      border-radius: 50%;
      background-color: var(--color-reverse);
}
.faq_item_body::after {
      content: "A";
      top: 5rem;
      left: 5.8rem;
      font-size: 2rem;
      font-weight: 700;
      line-height: 1.5;
      letter-spacing: 0.1rem;
      font-family: var(--font-en);
      color: var(--color-blue);
}
.faq_item_body.faq_item_body--txt1::before,
.faq_item_body.faq_item_body--txt1::after {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
}
.faq_item_body__txt {
      font-size: 1.6rem;
      letter-spacing: 0.08rem;
}
.faq_item_body__txt--lead {
      font-size: 1.4rem;
      line-height: 1.5;
      letter-spacing: 0.07rem;
      margin-top: 2.4rem;
}

@media (max-width:1240px) {
      .faq_item_body {
            padding: 3.225vw 3.225vw 3.225vw calc(3.225vw + 3.870vw + 1.935vw);
      }
      .faq_item_body::before {
            top: 3.225vw;
            left: 3.225vw;
            width: 3.870vw;
            height: 3.870vw;
      }
      .faq_item_body::after {
            top: 4.032vw;
            left: 4.677vw;
            font-size: 1.612vw;
      }
      .faq_item_body__txt {
            font-size: 1.290vw;
            letter-spacing: 0.065vw;
      }
      .faq_item_body__txt--lead {
            font-size: 1.129vw;
            letter-spacing: 0.056vw;
            margin-top: 1.935vw;
      }
}
@media (max-width:896px) {
      .faq_item_body__txt {
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
      }
      .faq_item_body__txt--lead {
            font-size: 3.076vw;
            letter-spacing: 0.06rem;
            margin-top: 4.102vw;
      }
      .faq_item_body {
      padding: 6.15vw 4.10vw 6.15vw 14.36vw;
      }
      .faq_item_body::before {
            width: 8.21vw;
            height: 8.21vw;
            top: 6.15vw;
            left: 4.10vw;
      }
      .faq_item_body::after {
            font-size: 4.10vw;
            top: 7.18vw;
            left: 6.92vw;
      }
}


/*=========================
      求人はこちら
=========================*/
.g_sec__last .lead_ttl {
      font-size: 2.4rem;
      line-height: 1.5;
      letter-spacing: 0.12rem;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
}
.g_sec__last .lead_ttl::before,
.g_sec__last .lead_ttl::after {
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      width: 1.744vw;
      height: 0.145vw;
      background-color: var(--color-reverse);
      border-radius: 3px;
}
.g_sec__last .lead_ttl::before {
      left: -13%;
      rotate: 45deg;
}
.g_sec__last .lead_ttl::after {
      right: -13%;
      rotate: -45deg;
}
.map_area {
      position: relative;
      width: -webkit-fit-content;
      width: -moz-fit-content;
      width: fit-content;
      height: 63.3rem;
}
.map_img {
      position: relative;
}
.map_img img {
      width: 61.1rem;
}
.prefecture_lst {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      -webkit-box-align: start;
          -ms-flex-align: start;
              align-items: flex-start;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      position: absolute;
      gap: 1.6rem;
      line-height: 0.7;
      padding: 2.4rem;
      border-radius: 0.8rem;
}
.prefecture_lst_item {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      gap: 1.6rem;
      font-size: 1.6rem;
      letter-spacing: 0.08rem;
}
.prefecture_txt {
      position: relative;
      white-space: nowrap;
      -webkit-transition: var(--transition);
      -o-transition: var(--transition);
      transition: var(--transition);
}
.prefecture_txt::after {
      position: absolute;
      content: "";
      width: 0;
      height: 0.1rem;
      left: 0;
      bottom: -0.7rem;
      background-color: var(--color-reverse);
      -webkit-transition: width .5s;
      -o-transition: width .5s;
      -webkit-transition: width .5;
      -o-transition: width .5;
      transition: width .5;
}
.prefecture_txt:hover {
      color: var(--color-green);
}
.prefecture_txt:hover::after{
      width: 100%;
      background-color: var(--color-green);
}
#area_01.prefecture_lst {
      width: 9.8rem;
      height: 5.9rem;
      top: 3%;
      right: -13rem;
      border: 0.2rem solid var(--color-area_01);
}
#area_01.prefecture_lst::before {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                  transform: translateY(-50%);
      left: -4rem;
      content: "";
      width: 4rem;
      height: 0.16rem;
      background-color: var(--color-area_01);
}
#area_02.prefecture_lst {
      width: 16.4rem;
      height: 11.3rem;
      top: 22%;
      right: -16rem;
      border: 0.2rem solid var(--color-area_02);
}
#area_02.prefecture_lst::before {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                  transform: translateY(-50%);
      left: -4rem;
      content: "";
      width: 4rem;
      height: 0.16rem;
      background-color: var(--color-area_02);
}
#area_03.prefecture_lst {
      width: 16.4rem;
      height: 14rem;
      top: 45%;
      right: -16rem;
      border: 0.2rem solid var(--color-area_03);
}
#area_03.prefecture_lst::before {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                  transform: translateY(-50%);
      left: -4rem;
      content: "";
      width: 4rem;
      height: 0.16rem;
      background-color: var(--color-area_03);
}
#area_04.prefecture_lst {
      width: 16.4rem;
      height: 16.7rem;
      right: 17.5%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      bottom: 70%;
      border: 0.2rem solid var(--color-area_04);
}
#area_04.prefecture_lst::before {
      position: absolute;
      right: 5rem;
      bottom: -5rem;
      content: "";
      width: 0.16rem;
      height: 5rem;
      background-color: var(--color-area_04);
}
#area_05.prefecture_lst {
      width: 23rem;
      height: 11.3rem;
      left: 45%;
      bottom: 1%;
      border: 0.2rem solid var(--color-area_05);
}
#area_05.prefecture_lst::before {
      position: absolute;
      top: -4rem;
      left: 8rem;
      content: "";
      width: 0.16rem;
      height: 4rem;
      background-color: var(--color-area_05);
}
#area_06.prefecture_lst {
      width: 16.4rem;
      height: 11.3rem;
      right: 62%;
      bottom: 56%;
      border: 0.2rem solid var(--color-area_06);
}
#area_06.prefecture_lst::before {
      position: absolute;
      right: 2rem;
      bottom: -5rem;
      content: "";
      width: 0.16rem;
      height: 5rem;
      background-color: var(--color-area_06);
}
#area_07.prefecture_lst {
      width: 16.4rem;
      height: 8.6rem;
      right: 59%;
      bottom: 5%;
      border: 0.2rem solid var(--color-area_07);
}
#area_07.prefecture_lst::before {
      position: absolute;
      top: -4rem;
      right: 2rem;
      content: "";
      width: 0.16rem;
      height: 4rem;
      background-color: var(--color-area_07);
}
#area_08.prefecture_lst {
      width: 18.1rem;
      height: 14rem;
      right: 100%;
      bottom: 36%;
      border: 0.2rem solid var(--color-area_08);
}
#area_08.prefecture_lst::before {
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                  transform: translateY(-50%);
      right: -4rem;
      content: "";
      width: 4rem;
      height: 0.16rem;
      background-color: var(--color-area_08);
}
.job_btn_arrow, .consult_btn_arrow {
      position: relative;
      aspect-ratio: 1/1;
      width: 5.6rem;
      border-radius: 50%;
}
.job_btn_arrow {
      background-color: var(--color-green);
      
}
.consult_btn_arrow {
      background-color: var(--color-sub);
}

@media (any-hover:hover) {
      .arrow_btn:hover .job_btn_arrow  {
            background-color: var(--color-reverse);
      }
      .arrow_btn:hover .consult_btn_arrow  {
            background-color: var(--color-reverse);
      }
}
@media (max-width:1240px) {
      .map_area {
            height: clamp(47rem, 50.967vw, 63.2rem);
      }
      .map_img img {
            width: 49.274vw;
      }
      .prefecture_lst {
            gap: 1.290vw;
            padding: 1.935vw;
      }
      .prefecture_lst_item {
            font-size: 1.290vw;
      }
      #area_01.prefecture_lst {
            width: 7.903vw;
            height: 4.758vw;
            right: -10.483vw;
      }
      #area_02.prefecture_lst {
            width: 13.225vw;
            height: 9.112vw;
            right: -13vw;
      }
      #area_03.prefecture_lst {
            width: 13.225vw;
            height: 11.290vw;
            right: -13vw;
      }
      #area_04.prefecture_lst {
            width: 13.225vw;
            height: 13.467vw;
      }
      #area_04.prefecture_lst::before {
            left: clamp(3.5rem, 8.467vw, 10.5rem);
      }
      #area_05.prefecture_lst {
            width: 18.548vw;
            height: 9.112vw;
      }
      #area_05.prefecture_lst::before {
            left: clamp(6rem, 7vw, 8rem);
      }
      #area_06.prefecture_lst {
            width: 13.225vw;
            height: 9.112vw;
      }
      #area_07.prefecture_lst {
            width: 13.225vw;
            height: 6.935vw;
      }
      #area_08.prefecture_lst {
            width: 14.596vw;
            height: 11.290vw;
            right: 98%;
      }
      .job_btn_arrow, .consult_btn_arrow {
            width: 3.428vw;
      }
}
@media (max-width:896px) {
      .g_sec__last .lead_txt {
            padding: 0 6.153vw;
      }
      .map_area {
            width: 100%;
      }
      .prefecture--acd_item_head {
            padding: 4.102vw;
            border-bottom: 0.1rem solid var(--color-text);
            cursor: pointer;
      }
      .prefecture--acd_item_head__ttl {
            position: relative;
            font-size: 4.102vw;
            font-weight: 700;
            line-height: 1.5;
            letter-spacing: 0.08rem;
      }
      .prefecture--acd_item_head__ttl::before {
            top: 50%;
            -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                    transform: translateY(-50%);
            right: 0;
            width: 8.205vw;
            height: 8.205vw;
            border-radius: 50%;
            background-color: var(--color-light-green);
      }
      .prefecture--acd_item_head__ttl::after {
            top: 50%;
            -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                    transform: translateY(-50%);
            right: 2.051vw;
            width: 4.102vw;
            height: 4.102vw;
            background-image: url(../img/common/ico_plus.svg);
            background-position: center;
            background-repeat: no-repeat;
            -webkit-transition: all 0.2s linear;
            -o-transition: all 0.2s linear;
            transition: all 0.2s linear;
            z-index: 1;
      }
      .prefecture_lst--acd_item.js_acd .prefecture--acd_item_body.js_acd_trg {
            display: none;
      }
      .prefecture_lst--acd_item.js_open .prefecture--acd_item_head__ttl::after {
            background-image: url(../img/common/icon_minus.svg);
            background-position: center;
            background-repeat: no-repeat;
      }
      .prefecture--acd_item_body {
            padding: 4.102vw;
      }
      .prefecture--acde_item_body__txt {
            display: -ms-grid;
            display: grid;
            -ms-grid-columns: 1fr 2.051vw 1fr 2.051vw 1fr;
            grid-template-columns: repeat(3, 1fr);
            gap: 2.051vw;
      }
      .prefecture--acde_item_body__txt li {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            width: 25.128vw;
            height: 10.256vw;
            font-size: 3.589vw;
            letter-spacing: 0.07rem;
            background-color: var(--color-green);
            color: var(--color-reverse);
            border-radius: 0.4rem;
      }
      .prefectur_name a {
            width: 100%;
            height: 100%;
      }
      .prefectur_name span {
            display: -webkit-box;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
                -ms-flex-align: center;
                    align-items: center;
            -webkit-box-pack: center;
                -ms-flex-pack: center;
                    justify-content: center;
            width: 100%;
            height: 100%;
      }
      .g_sec__last .lead_ttl {
            font-size: 2rem;
            letter-spacing: 0.1rem;
      }
      .g_sec__last .lead_ttl::before,
      .g_sec__last .lead_ttl::after {
            width: 2.4rem;
            height: 0.2rem;
      }
      .g_sec__last .lead_ttl::before {
            left: -11%;
      }
      .g_sec__last .lead_ttl::after {
            right: -11%;
      }
      .job_btn_arrow, .consult_btn_arrow {
            width: 10.256vw;
      }
}