@charset "UTF-8";
/*============================ 

Sustainability

============================ */
.rn_sstn_index .card__image img {
  object-fit: cover;
  height: 10em; }
.rn_sstn_index .section-header {
  margin-bottom: 1.8em;
  margin-top: 1.1em; }
  .rn_sstn_index .section-header .multi-title--vertical .multi-title__pri {
    font-size: 110%; }
  .rn_sstn_index .section-header .multi-title--vertical .multi-title__sec {
    font-size: 60%;
    letter-spacing: .01em; }
.rn_sstn_index .card__link:hover {
  color: #ed6c00; }
.rn_sstn_index .link-list--button .link-list__item a.card__link.icon::before {
  left: calc(100% - 3em);
  top: 50%;
  transform: translateY(-50%); }
.rn_sstn_index.sub .card--img-small {
  margin-bottom: 0; }
  .rn_sstn_index.sub .card--img-small .card__image {
    width: 25%; }
    .rn_sstn_index.sub .card--img-small .card__image img {
      height: 100%; }
  .rn_sstn_index.sub .card--img-small .card__content {
    width: 75%;
    min-height: auto; }
    .rn_sstn_index.sub .card--img-small .card__content .multi-title {
      margin-bottom: 0; }
      .rn_sstn_index.sub .card--img-small .card__content .multi-title .multi-title__pri {
        font-size: 100%; }
      .rn_sstn_index.sub .card--img-small .card__content .multi-title .multi-title__sec {
        font-size: 60%;
        letter-spacing: .01em; }
  .rn_sstn_index.sub .card--img-small .card__link.icon {
    padding-bottom: 0; }
    .rn_sstn_index.sub .card--img-small .card__link.icon::before {
      left: auto;
      right: 1.5em;
      top: 50%;
      transform: translateY(-50%); }
.rn_sstn_index .card__image img {
  object-fit: cover;
  height: 10em; }
.rn_sstn_index .section-header {
  margin-bottom: 1.8em;
  margin-top: 1.1em; }
  .rn_sstn_index .section-header .multi-title--vertical .multi-title__pri {
    font-size: 110%; }
  .rn_sstn_index .section-header .multi-title--vertical .multi-title__sec {
    font-size: 60%;
    letter-spacing: .01em; }
.rn_sstn_index .card__link:hover {
  color: #ed6c00; }
.rn_sstn_index .link-list--button .link-list__item a.card__link.icon::before {
  left: calc(100% - 3em);
  top: 50%;
  transform: translateY(-50%); }
.rn_sstn_index.sub .card--img-small {
  margin-bottom: 0; }
  .rn_sstn_index.sub .card--img-small .card__image {
    width: 25%; }
    .rn_sstn_index.sub .card--img-small .card__image img {
      height: 100%; }
  .rn_sstn_index.sub .card--img-small .card__content {
    width: 75%;
    min-height: auto; }
    .rn_sstn_index.sub .card--img-small .card__content .multi-title {
      margin-bottom: 0; }
      .rn_sstn_index.sub .card--img-small .card__content .multi-title .multi-title__pri {
        font-size: 100%; }
      .rn_sstn_index.sub .card--img-small .card__content .multi-title .multi-title__sec {
        font-size: 60%;
        letter-spacing: .01em; }
  .rn_sstn_index.sub .card--img-small .card__link.icon {
    padding-bottom: 0; }
    .rn_sstn_index.sub .card--img-small .card__link.icon::before {
      left: auto;
      right: 1.5em;
      top: 50%;
      transform: translateY(-50%); }

/*============================ 

IR

============================ */
.sec-border-bottom {
  border-bottom: 1px solid #999; }

#ir-data .section-header {
  margin-bottom: 3em; }
#ir-data .column {
  margin-bottom: 2em; }
  #ir-data .column .column__item {
    margin-bottom: 3em; }
#ir-data .ir-data-card {
  background: #fff;
  padding: 2em;
  text-align: center; }
  #ir-data .ir-data-card .content {
    font-weight: 500;
    margin-bottom: 1.7em; }
    #ir-data .ir-data-card .content .ttl {
      font-size: 130%; }
    #ir-data .ir-data-card .content .data {
      margin-bottom: -.5em; }
      #ir-data .ir-data-card .content .data .num {
        font-size: 330%;
        font-family: "Barlow", sans-serif; }
      #ir-data .ir-data-card .content .data .uni {
        font-size: 160%;
        padding-left: .1em; }
    #ir-data .ir-data-card .content .capt {
      color: #999; }
  #ir-data .ir-data-card .button--arrow {
    font-size: 80%; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  #ir-data .column .column__item {
    margin-bottom: 1em; }
  #ir-data .ir-data-card {
    padding: 2em 1em 1em; }
    #ir-data .ir-data-card .content .ttl {
      font-size: 100%; }
    #ir-data .ir-data-card .content .data .num {
      font-size: 230%;
      letter-spacing: -.02em; }
    #ir-data .ir-data-card .content .data .uni {
      font-size: 110%; }
    #ir-data .ir-data-card .content .capt {
      font-size: 80%; }
    #ir-data .ir-data-card a.button--arrow {
      padding: 1em;
      padding-right: 2em; }
      #ir-data .ir-data-card a.button--arrow span {
        right: .8em; } }
/*============================ 

Service

============================ */
@media not screen and (max-width: 768px) and (orientation: portrait) {
  #service .rn_header .left {
    width: 20%;
    padding: 3em 3em 2em 0; }
  #service .rn_header .right {
    width: 80%; }
    #service .rn_header .right .visual figure img {
      object-position: left; } }
@media screen and (min-width: 1440px) and (orientation: landscape) {
  #service .rn_header .left {
    min-width: 30vw; }
  #service .rn_header .right {
    max-width: 70vw; }
  #service .rn_header .breadcrumb_abs {
    --width-margin:calc(100vw - 1440px);
    --margin:calc(var(--width-margin) / 2);
    right: calc(var(--margin) + 3em); } }
#service .service_overview .banner_wrapper .card {
  background: #fff;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); }
  #service .service_overview .banner_wrapper .card .card_content {
    width: 67%;
    padding: 2.5em 3em; }
    #service .service_overview .banner_wrapper .card .card_content ._title .ff-en-cds {
      display: block;
      color: #ed6c00;
      margin-bottom: .2em; }
#service .service_overview .banner_wrapper .card--img-small .card__link.icon::before {
  left: auto;
  right: 2.5em;
  bottom: 2.5em; }
#service .service_index .column__item {
  margin-bottom: 3.5em; }
  #service .service_index .column__item .card {
    background: #fff;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); }
    #service .service_index .column__item .card .card__link.icon {
      padding-bottom: 0; }
      #service .service_index .column__item .card .card__link.icon::before {
        left: auto;
        right: 2em; }
    #service .service_index .column__item .card .card__image {
      padding: 2.5em 2.5em 3em 7em;
      position: relative; }
      #service .service_index .column__item .card .card__image::before {
        position: absolute;
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background-image: url(/_assets/images/RN/service/svc_01.jpg);
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
        transition: all .2s ease-out; }
      #service .service_index .column__item .card .card__image::after {
        content: "";
        background-image: url(/_assets/images/RN/service/svc_icon_w_01.svg);
        background-size: contain;
        background-repeat: no-repeat;
        position: absolute;
        left: 2.5em;
        top: 2.5em;
        width: 4em;
        height: 4em; }
      #service .service_index .column__item .card .card__image ._title {
        position: relative;
        color: #fff; }
        #service .service_index .column__item .card .card__image ._title .ff-en-cds {
          display: block;
          color: #ed6c00; }
    #service .service_index .column__item .card .card_content {
      padding: 2.5em;
      min-height: 8.25em; }
      #service .service_index .column__item .card .card_content ._subtitle {
        width: 70%;
        font-size: 90%; }
  #service .service_index .column__item:nth-child(2) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_02.jpg); }
  #service .service_index .column__item:nth-child(2) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_02.svg); }
  #service .service_index .column__item:nth-child(3) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_03.jpg); }
  #service .service_index .column__item:nth-child(3) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_03.svg); }
  #service .service_index .column__item:nth-child(4) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_04.jpg); }
  #service .service_index .column__item:nth-child(4) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_04.svg); }
  #service .service_index .column__item:nth-child(5) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_05.jpg); }
  #service .service_index .column__item:nth-child(5) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_05.svg); }
  #service .service_index .column__item:nth-child(6) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_06.jpg); }
  #service .service_index .column__item:nth-child(6) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_06.svg); }
  #service .service_index .column__item:nth-child(7) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_07.jpg); }
  #service .service_index .column__item:nth-child(7) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_07.svg); }
  #service .service_index .column__item:nth-child(8) .card .card__image::before {
    background-image: url(/_assets/images/RN/service/svc_08.jpg); }
  #service .service_index .column__item:nth-child(8) .card .card__image::after {
    background-image: url(/_assets/images/RN/service/svc_icon_w_08.svg); }

@media screen and (max-width: 768px) and (orientation: portrait) {
  #service .service_overview .banner_wrapper .card .card_content {
    padding: 2em 2em 3em; }
  #service .service_overview .banner_wrapper .card--img-small .card__link.icon::before {
    bottom: 2em;
    left: 2em;
    right: auto; } }
@media not screen and (max-width: 768px) and (orientation: portrait) {
  #service .service_index .column__item .card__link:hover .card__image::before {
    transform: scale(1.05); } }
@media screen and (max-width: 768px) and (orientation: portrait) {
  #service .service_index .column__item {
    margin-bottom: 2em; }
    #service .service_index .column__item .card .card__image {
      padding: 1.5em 1.5em 1.5em 5.8em; }
      #service .service_index .column__item .card .card__image::after {
        left: 1.5em;
        top: 1.5em;
        width: 3.5em;
        height: 3.5em; }
      #service .service_index .column__item .card .card__image ._title .ff-en-cds {
        line-height: 1; }
    #service .service_index .column__item .card .card_content {
      padding: 1.5em;
      min-height: 5.88em; } }
/* サービス詳細共通 */
.ter-content.service-content .rn_header .left {
  position: relative; }
  .ter-content.service-content .rn_header .left::before {
    content: "";
    background: url(/_assets/images/RN/service/kiden/img_visual_icon.svg) no-repeat;
    background-size: contain;
    position: absolute;
    width: 20em;
    height: 20em;
    right: -5em;
    bottom: 0;
    z-index: 0; }
  .ter-content.service-content .rn_header .left .ttl {
    z-index: +1;
    position: relative; }
    .ter-content.service-content .rn_header .left .ttl .visual__catch__tl {
      background-color: transparent; }
.ter-content.service-content .rn_header .visual__catch {
  white-space: normal; }
  .ter-content.service-content .rn_header .visual__catch .visual__catch__tl {
    font-size: 1.2em; }
.ter-content.service-content .content-area {
  position: relative; }
  .ter-content.service-content .content-area .content-warp-side {
    padding-right: 25em; }
  .ter-content.service-content .content-area .page-menu {
    top: 3em; }
  .ter-content.service-content .content-area .service_overview .figure_area .figure_box {
    background: #FFF9F4;
    height: 100%; }
    .ter-content.service-content .content-area .service_overview .figure_area .figure_box figure {
      padding: 1.5em;
      margin-bottom: .5em;
      display: flex;
      justify-content: center;
      align-items: center; }
  .ter-content.service-content .content-area .service_detail .service_header {
    padding: .3em 0;
    border-top: 2px solid #ed6c00;
    border-bottom: 2px solid #ed6c00; }
  .ter-content.service-content .content-area .service_detail .cmp_header {
    background: #F5F5F5;
    display: flex;
    padding: 1em 0; }
    .ter-content.service-content .content-area .service_detail .cmp_header .logo_img {
      width: 16%;
      display: flex;
      align-items: center;
      justify-content: center; }
    .ter-content.service-content .content-area .service_detail .cmp_header .logo_contents {
      padding: 1em 2em;
      border-left: 1px solid #ed6c00;
      display: flex;
      flex-direction: column;
      justify-content: center; }
  .ter-content.service-content .content-area .service_detail .dsc .icon--bar {
    font-size: 1.3em; }
    .ter-content.service-content .content-area .service_detail .dsc .icon--bar::before {
      width: .35em; }
  .ter-content.service-content .content-area .service_detail .dsc p {
    line-height: 2; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .ter-content.service-content .rn_header .left::before {
    right: 0;
    width: 15em;
    height: 15em; } }
@media not screen and (max-width: 768px) and (orientation: portrait) {
  .ter-content.service-content .content-area .service_detail .dsc .d-md-flex {
    display: flex; }
    .ter-content.service-content .content-area .service_detail .dsc .d-md-flex .col-md-7 {
      width: 60%; }
    .ter-content.service-content .content-area .service_detail .dsc .d-md-flex .col-md-5 {
      width: 40%;
      padding-left: 3em; } }
@media screen and (max-width: 768px) and (orientation: portrait) {
  .ter-content.service-content .rn_header .visual__catch .visual__catch__tl {
    font-size: .8em; }
  .ter-content.service-content .content-area .content-warp-side {
    padding-right: 1.5em; }
  .ter-content.service-content .content-area .service_overview .figure_area {
    margin-bottom: 3em; }
    .ter-content.service-content .content-area .service_overview .figure_area .figure_box {
      height: auto; }
  .ter-content.service-content .content-area .service_detail .cmp_header .logo_img {
    width: 25%; }
  .ter-content.service-content .content-area .service_detail .cmp_header .logo_contents {
    padding: 0em 1.4em; } }
/*　機電　*/
.voice_box {
  margin: 50px 0 40px;
  background: #FFF9F4; }
  .voice_box .box_title {
    padding: .5em 1em;
    background: #ed6c00;
    color: #fff;
    font-size: 1.2em;
    font-weight: 700; }
  .voice_box .graph_wrap {
    display: flex;
    gap: 2em;
    padding: 2em; }
    .voice_box .graph_wrap .graph_img {
      width: 20%; }
    .voice_box .graph_wrap .graph_text {
      width: 80%; }
      .voice_box .graph_wrap .graph_text p {
        margin: 0;
        font-size: 1.05em; }
        .voice_box .graph_wrap .graph_text p.caution {
          margin-top: 1em;
          font-size: .8em; }
  .voice_box .box_sub_title {
    width: calc(100% - 4em);
    margin: 0 auto 1em;
    padding: .6em;
    background: #4C4948;
    color: #fff;
    font-size: 1em;
    font-weight: 700;
    text-align: center; }
  .voice_box .voice_wrap {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    padding: 0 2em 2em; }
    .voice_box .voice_wrap .voice_item {
      width: calc(100% / 3);
      padding: 1em;
      background-image: url("/_assets/images/RN/service/kiden/review_icon_bg.svg");
      background-repeat: no-repeat;
      background-size: 4em;
      background-position: top left; }
      .voice_box .voice_wrap .voice_item p {
        margin-bottom: 2em;
        font-size: .9em; }
      .voice_box .voice_wrap .voice_item .profile {
        display: flex;
        justify-content: flex-start;
        align-items: center;
        gap: 1em;
        padding: 0.8em 1em;
        background: #fff; }
        .voice_box .voice_wrap .voice_item .profile img {
          width: 2em; }
        .voice_box .voice_wrap .voice_item .profile p {
          margin-bottom: 0;
          font-size: .8em;
          line-height: 1.5;
          opacity: .7; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .voice_box {
    margin: 3em 0; }
    .voice_box .box_title {
      padding: .8em 1.5em;
      font-size: 1em; }
    .voice_box .graph_wrap {
      flex-direction: column;
      justify-content: center;
      align-items: center;
      padding: 1em; }
      .voice_box .graph_wrap .graph_img {
        width: 12em; }
      .voice_box .graph_wrap .graph_text {
        width: 100%; }
        .voice_box .graph_wrap .graph_text p.caution {
          margin-top: .9em; }
    .voice_box .box_sub_title {
      width: calc(100% - 2em);
      margin: 0 auto 1em;
      padding: .6em 1em;
      text-align: center; }
    .voice_box .voice_wrap {
      flex-direction: column;
      justify-content: center;
      align-items: center;
      gap: 1.5em;
      padding: 0 .5em 1.5em; }
      .voice_box .voice_wrap .voice_item {
        width: 100%;
        padding: .3em .8em; }
        .voice_box .voice_wrap .voice_item p {
          margin-bottom: .8em;
          font-size: .9em; } }
/* グループ企業リスト */
#group_rn .group_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 1.25em 1.25em; }
  #group_rn .group_list li {
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
    width: calc((100% - 1.625em) / 2); }
  #group_rn .group_list a {
    display: flex;
    width: 100%;
    height: 100%;
    text-decoration: none; }
    #group_rn .group_list a .logo_img {
      background-color: #FFFFFF;
      width: 33%;
      border-right: solid 3px #ED6C00;
      display: flex;
      justify-content: center;
      align-items: center;
      overflow: hidden; }
      #group_rn .group_list a .logo_img img {
        transition: all .3s; }
    #group_rn .group_list a:hover .logo_img img {
      transform: scale(1.05); }
    #group_rn .group_list a .logo_contents {
      background-color: #EBEBEB;
      background-image: url("/_assets/images/RN/top/noun-share.png");
      background-repeat: no-repeat;
      background-position: right bottom;
      background-size: 18%;
      width: 67%;
      display: flex;
      justify-content: center;
      flex-direction: column;
      padding: 1em 2em; }
      #group_rn .group_list a .logo_contents ._title {
        font-weight: bold;
        font-size: 1.1em; }
      #group_rn .group_list a .logo_contents ._text {
        font-size: .75em;
        color: rgba(76, 73, 72, 0.7);
        margin-top: .4em; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  #group_rn .group_list {
    gap: 1em 0; }
    #group_rn .group_list li {
      width: 100%; }
    #group_rn .group_list a .logo_img {
      width: 30%; }
    #group_rn .group_list a .logo_contents {
      width: 70%; } }
/*　ITインフラ　*/
.it-infrastructure-content.ter-content.service-content .rn_header .left::before {
  background: url(/_assets/images/RN/service/it-infrastructure/img_visual_icon.svg) no-repeat; }
.it-infrastructure-content .figure_area figure.topics {
  flex-direction: column; }
.it-infrastructure-content .figure_area .d-flex {
  display: flex;
  gap: 1.5em; }
  .it-infrastructure-content .figure_area .d-flex .col-5 {
    width: 40%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 5em; }
    .it-infrastructure-content .figure_area .d-flex .col-5 img {
      height: 100%;
      object-fit: contain; }
  .it-infrastructure-content .figure_area .d-flex .col-7 {
    width: 60%; }

/*　ITインフラ　*/
.it-development-content.ter-content.service-content .rn_header .left::before {
  background: url(/_assets/images/RN/service/it-development/img_visual_icon.svg) no-repeat; }
.it-development-content .bg-log {
  background: #FFF9F4;
  padding: 2em;
  margin-top: 2em; }
  .it-development-content .bg-log .fw-bold {
    margin-bottom: 2em; }
  .it-development-content .bg-log .list li {
    margin-right: 2em; }

@media not screen and (max-width: 768px) and (orientation: portrait) {
  .it-development-content .rn_h-3.separate {
    text-align: left; }
    .it-development-content .rn_h-3.separate .border-right {
      display: inline-block;
      padding: 0 1em;
      margin-right: 1em;
      border-right: 1px solid #fff; } }
@media screen and (max-width: 768px) and (orientation: portrait) {
  .it-development-content .rn_h-3.separate .border-right {
    border-bottom: 1px solid #fff;
    padding-bottom: .5em;
    margin-bottom: .5em;
    display: inline-block; }
  .it-development-content .rn_h-3.separate .sp-d-block {
    display: block; } }
@media not screen and (max-width: 768px) and (orientation: portrait) {
  .it-development-content .bg-log .d-md-flex {
    display: flex;
    justify-content: space-between;
    gap: 3em; }
    .it-development-content .bg-log .d-md-flex .col-md-7 {
      width: 65%; }
    .it-development-content .bg-log .d-md-flex .col-md-5 {
      width: 35%; } }
@media screen and (max-width: 768px) and (orientation: portrait) {
  .it-development-content .bg-log {
    margin-top: 1em;
    padding: 2em; }
    .it-development-content .bg-log .fw-bold, .it-development-content .bg-log .list {
      margin-bottom: 1em; } }
/*　建設　*/
.construction-content.ter-content.service-content .rn_header .left {
  padding-bottom: 1em; }
  .construction-content.ter-content.service-content .rn_header .left::before {
    background: url(/_assets/images/RN/service/construction/img_visual_icon.svg) no-repeat; }
  .construction-content.ter-content.service-content .rn_header .left .ttl {
    margin-bottom: 4em; }
  .construction-content.ter-content.service-content .rn_header .left .caption {
    position: relative;
    line-height: 1.5;
    display: block; }
.construction-content .service_detail h4.bg-gray-92 {
  padding: .4em 1.4em;
  font-size: .9em;
  display: inline-block; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .construction-content.ter-content.service-content .rn_header .left .ttl {
    margin-bottom: 2em; } }
/*　製造　*/
.manufacture-content.ter-content.service-content .rn_header .left::before {
  background: url(/_assets/images/RN/service/manufacture/img_visual_icon.svg) no-repeat; }
.manufacture-content #group_rn .no_logo {
  box-shadow: none;
  border: 1px solid #ccc; }
  .manufacture-content #group_rn .no_logo a {
    cursor: initial; }
    .manufacture-content #group_rn .no_logo a:hover {
      color: #595757; }
    .manufacture-content #group_rn .no_logo a .logo_img {
      border-right: none;
      background-color: #EDECEC; }
    .manufacture-content #group_rn .no_logo a .logo_contents {
      background: #fff; }
      .manufacture-content #group_rn .no_logo a .logo_contents .text {
        font-size: 1em;
        margin-top: 0; }
.manufacture-content .manu_box {
  border: 1px solid #ed6c00;
  background: transparent;
  color: #ed6c00;
  padding: 1em;
  font-weight: 500; }
  .manufacture-content .manu_box .heading {
    text-align: center;
    font-size: 1.4em;
    margin-bottom: .8em; }
    .manufacture-content .manu_box .heading span {
      font-size: .8em;
      margin-right: 1em; }
  .manufacture-content .manu_box ul {
    text-align: center;
    margin-bottom: 0; }
    .manufacture-content .manu_box ul li {
      display: inline-block;
      padding: 0 2em;
      text-align: center; }
      .manufacture-content .manu_box ul li:not(:first-child) {
        border-left: 1px solid #ed6c00; }
      .manufacture-content .manu_box ul li .fz-14 {
        color: #595757; }
.manufacture-content .manu_heading {
  font-size: 1.4em;
  font-weight: 500;
  margin-left: 0;
  text-align: center; }
  .manufacture-content .manu_heading .strong {
    color: #ed6c00; }
    .manufacture-content .manu_heading .strong strong {
      font-family: "Barlow", sans-serif; }
.manufacture-content .content-area .service_overview .figure_area .figure_box.graph {
  background: transparent;
  height: auto; }
  .manufacture-content .content-area .service_overview .figure_area .figure_box.graph figure {
    padding: 0; }
  .manufacture-content .content-area .service_overview .figure_area .figure_box.graph .d-flex {
    display: flex;
    width: 100%; }
    .manufacture-content .content-area .service_overview .figure_area .figure_box.graph .d-flex > div {
      padding: 1em;
      text-align: center; }
      .manufacture-content .content-area .service_overview .figure_area .figure_box.graph .d-flex > div .txt {
        font-weight: 500;
        font-size: 1.8em;
        font-family: "Barlow", sans-serif; }
        .manufacture-content .content-area .service_overview .figure_area .figure_box.graph .d-flex > div .txt .jp {
          font-size: .6em;
          padding-right: .4em;
          font-family: "Noto Sans JP", sans-serif; }
    .manufacture-content .content-area .service_overview .figure_area .figure_box.graph .d-flex .col-4 {
      width: 40%;
      background: #EDECEC; }
    .manufacture-content .content-area .service_overview .figure_area .figure_box.graph .d-flex .col-6 {
      width: 60%;
      background: #ed6c00;
      color: #fff; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .manufacture-content .manu_box .heading {
    font-size: 1.3em; }
  .manufacture-content .manu_box ul li {
    padding: 0 1.5em;
    margin-bottom: 1em; }
    .manufacture-content .manu_box ul li:nth-child(3) {
      border-left: none; } }
/* 海外 */
.abroad-content.ter-content.service-content .rn_header .left::before {
  background: url(/_assets/images/RN/service/abroad/img_visual_icon.svg) no-repeat; }
.abroad-content .content-area .service_overview .figure_area .figure_box.clear {
  background: #fff;
  border: 1px solid #ccc;
  display: flex; }
  .abroad-content .content-area .service_overview .figure_area .figure_box.clear figure {
    flex-direction: column; }
    .abroad-content .content-area .service_overview .figure_area .figure_box.clear figure .fz-18 {
      text-align: center;
      margin-top: 1.5em;
      line-height: 2; }

/* 教育 */
.education-content.ter-content.service-content .rn_header .left::before {
  background: url(/_assets/images/RN/service/education/img_visual_icon.svg) no-repeat; }

/* 障害者雇用 */
.handicapped-content.ter-content.service-content .rn_header .left {
  display: flex; }
  .handicapped-content.ter-content.service-content .rn_header .left .content-wrapper {
    display: flex; }
  .handicapped-content.ter-content.service-content .rn_header .left::before {
    background: url(/_assets/images/RN/service/handicapped/img_visual_icon.svg) no-repeat; }
  .handicapped-content.ter-content.service-content .rn_header .left .ttl {
    display: flex;
    flex-direction: column;
    justify-content: center; }
.handicapped-content .sdgs .row {
  display: flex;
  gap: 2em;
  border-bottom: 1px solid #ccc;
  padding: 1.5em 0; }
  .handicapped-content .sdgs .row .col-md-2 {
    --col-2:calc(100% / 6);
    width: var(--col-2); }
    .handicapped-content .sdgs .row .col-md-2.d-b-pc {
      text-align: right; }
      .handicapped-content .sdgs .row .col-md-2.d-b-pc img {
        max-width: 40%; }
  .handicapped-content .sdgs .row .col-md-8 {
    --col-2:calc(100% / 6);
    width: calc(var(--col-2) * 4); }
    .handicapped-content .sdgs .row .col-md-8 ul {
      margin-bottom: 0; }
  .handicapped-content .sdgs .row.border-none {
    border-bottom: none;
    justify-content: space-between; }
    .handicapped-content .sdgs .row.border-none img {
      max-width: 7em; }
    .handicapped-content .sdgs .row.border-none .col-md-6 {
      width: 50%; }
      .handicapped-content .sdgs .row.border-none .col-md-6 .d-flex {
        display: flex;
        gap: 1em; }
        .handicapped-content .sdgs .row.border-none .col-md-6 .d-flex .col-3 {
          width: calc(100% / 3); }
        .handicapped-content .sdgs .row.border-none .col-md-6 .d-flex .col-9 {
          width: calc(200% / 3); }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .handicapped-content .sdgs .row {
    display: block; }
    .handicapped-content .sdgs .row .col-md-2 {
      margin-bottom: 1.5em;
      width: 100%; }
      .handicapped-content .sdgs .row .col-md-2 img {
        display: inline-block;
        width: 15%; }
        .handicapped-content .sdgs .row .col-md-2 img:not(:first-child) {
          margin-left: 1em; }
    .handicapped-content .sdgs .row .col-md-8 {
      width: 100%; }
    .handicapped-content .sdgs .row.border-none .col-md-6 {
      width: 100%; }
    .handicapped-content .sdgs .row.border-none .ta-right {
      text-align: left; } }
/* ==========================

トップページ

_____________________________*/
.site-header._new {
  background-color: rgba(255, 255, 255, 0.6); }
  .site-header._new.is-scroll {
    background-color: #fff; }

.home-content .page-header.rn_page_header {
  padding: 0 0 3em; }
.home-content .rn_page_header .kv_area {
  position: relative;
  width: 100%;
  height: auto;
  min-height: 580px;
  overflow: hidden;
  background-color: transparent; }
.home-content .rn_page_header video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; }
.home-content .rn_page_header .kv_area .content-wrapper {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center; }

.kv_area .rn_flexbox {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  flex-wrap: wrap;
  color: #FFFFFF; }
  .kv_area .rn_flexbox .__sub_title {
    font-size: 125%;
    font-weight: bold;
    margin-bottom: 48px; }
  .kv_area .rn_flexbox .__titleimg {
    width: 33.6vw; }
  .kv_area .rn_flexbox ._right {
    padding-top: 70px; }
    .kv_area .rn_flexbox ._right a {
      display: block;
      font-size: 1.125em;
      font-weight: bold;
      line-height: 1;
      text-decoration: none;
      color: #FFFFFF;
      background: #ff7400;
      background: linear-gradient(90deg, #ff7400 0%, #ffc400 100%);
      border-radius: 3em;
      padding: 1.25em 3.75em 1.25em 2.5em;
      box-shadow: 0px 3px 12px rgba(0, 0, 0, 0.5);
      transition: all .3s;
      position: relative; }
      .kv_area .rn_flexbox ._right a::after {
        content: '';
        width: 4%;
        height: 1em;
        background-image: url(/_assets/images/RN/top/ico_arrow_s_02.svg);
        background-repeat: no-repeat;
        background-size: cover;
        display: inline-block;
        margin-left: 1em;
        position: absolute;
        top: 50%;
        right: 1.58em;
        transform: translateY(-50%); }
      .kv_area .rn_flexbox ._right a:hover {
        transform: scale(1.03); }

.flex_titlebox {
  display: flex; }

#news_area .flex_titlebox .section-header, #pickup .flex_titlebox .section-header {
  width: 25%; }

.flex_titlebox .block_contents {
  max-width: 75%; }
.flex_titlebox .multi-title {
  flex-direction: column;
  align-items: flex-start; }
.flex_titlebox .multi-title__pri {
  color: #9F9D9D;
  font-weight: 500; }
.flex_titlebox .multi-title__sec {
  font-size: 58%; }
.flex_titlebox .multi-title__pri._big {
  font-size: 2.4em;
  line-height: 1; }

.rn_title ._big {
  font-size: 2.4em;
  line-height: 1; }

a.button--arrow {
  position: relative;
  padding-right: 4em; }
  a.button--arrow span {
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%); }

.rn_title .multi-title__pri {
  color: #9F9D9D;
  font-weight: 500; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .flex_titlebox {
    flex-wrap: wrap; }
    .flex_titlebox .section-header {
      width: 100%; }
    .flex_titlebox .block_contents {
      max-width: 100%; }
    .flex_titlebox .multi-title {
      flex-direction: row;
      align-items: baseline; }

  a.button--arrow {
    display: block; } }
#numbers::before {
  content: "";
  display: block;
  width: 14vw;
  height: auto;
  aspect-ratio: 183/291;
  background-image: url("/_assets/images/RN/top/bg_logo_pc.svg");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0;
  left: 0; }
#numbers .flex_titlebox {
  justify-content: space-between; }
  #numbers .flex_titlebox .section-header {
    width: auto; }
#numbers .multi-title__sec {
  font-size: 58%; }
#numbers .button--white {
  background: #FFFFFF;
  color: #ed6c00;
  display: inline-block;
  transition: all .3s; }
  #numbers .button--white:hover {
    transform: scale(1.03); }
  #numbers .button--white span {
    display: inline-block; }
#numbers .block_num {
  color: #FFFFFF; }
#numbers .block_num__inner {
  display: flex;
  justify-content: space-between;
  gap: 0 1em; }
#numbers .block_num_item {
  min-width: 250px;
  padding: 0 0 0 2em;
  border-left: solid 1px #FFFFFF; }
  #numbers .block_num_item span.num_icon {
    display: inline-block;
    width: 3.5em;
    margin-bottom: 1.2em; }
  #numbers .block_num_item p {
    margin-bottom: 0; }
    #numbers .block_num_item p._nump {
      font-size: 2em;
      line-height: 1.3; }
      #numbers .block_num_item p._nump strong {
        font-size: 2em;
        margin-right: 10px; }
#numbers .button--white._sp {
  display: none; }

/* タブのスタイル */
#block_tabArea {
  flex-grow: 1;
  margin-top: 2em;
  max-width: 75%; }

.tab-nav {
  list-style: none;
  padding: 0;
  margin: 0; }
  .tab-nav li {
    display: inline-block;
    margin-right: 10px; }
    .tab-nav li .tab-list-item {
      display: inline-block;
      padding: 10px;
      text-decoration: none; }
      .tab-nav li .tab-list-item.active {
        border-bottom: solid 2px #ED6C00;
        border-radius: 1px; }
      .tab-nav li .tab-list-item:hover {
        cursor: pointer; }

/* タブコンテンツのスタイル */
.tab-content {
  display: none;
  width: 100%;
  margin-top: 2em; }
  .tab-content.is-active {
    display: block;
    animation-name: displayAnime;
    animation-duration: 2s;
    animation-fill-mode: forwards; }

@keyframes displayAnime {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
.newsList li.newsList_item {
  position: relative;
  margin-bottom: 0.5em;
  border: 0;
  border-radius: 0.25em; }
  .newsList li.newsList_item > a {
    padding: 1em 1.5em;
    text-decoration: none;
    display: flex;
    align-items: flex-start;
    color: #4c4948;
    background-color: #f5f5f5; }
    .newsList li.newsList_item > a:hover {
      background-color: #fafafa; }
.newsList .news_date span {
  min-width: 6em;
  white-space: nowrap;
  color: rgba(76, 73, 72, 0.5);
  font-size: 0.75em; }
.newsList .news_cate span {
  display: inline-block;
  padding: 0.4em 0.7em;
  background-color: #9F9D9D;
  font-size: .8em;
  font-weight: normal;
  line-height: 1;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
  width: 6em;
  margin-left: 1.5em; }
.newsList .news_ttl span {
  margin-left: 1.5em;
  display: inline-block; }
.newsList li.newsList_item > a:hover .news_ttl span {
  color: #ed6c00; }

#pickup .pickup--col-3 {
  display: flex;
  gap: 0 4%; }
  #pickup .pickup--col-3 li {
    display: flex;
    width: 30.6%; }
#pickup .card._pickup {
  background: #ED6C00; }
#pickup ._pickup .card__content {
  background: #ED6C00;
  color: #FFFFFF; }
  #pickup ._pickup .card__content .card__label span.label {
    border: 0.125em solid #FFFFFF;
    background-color: #FFFFFF;
    color: #ED6C00; }
  #pickup ._pickup .card__content .card__status .card__date {
    color: rgba(255, 255, 255, 0.5); }

.slanted-content_cover {
  aspect-ratio: 1366 / 478;
  color: #FFFFFF;
  transform: skew(0deg, 7deg); }

.slanted-content {
  width: 100%;
  transform: skew(0deg, -7deg);
  display: flex;
  justify-content: flex-start;
  align-items: center; }

#service_rn {
  background: white;
  background: linear-gradient(180deg, white 0%, white 50%, whitesmoke 50%, whitesmoke 100%);
  z-index: 1; }
  #service_rn .slanted-content_cover {
    background-image: url("/_assets/images/RN/top/service_rn.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 85%; }
  #service_rn .content-wrapper {
    width: 100%; }

#case_study {
  background-color: #F5F5F5; }
  #case_study .section-footer._sp {
    display: none; }
  #case_study .swiper {
    margin-top: 2em;
    margin-right: -3em; }
  #case_study .swiper-slide {
    width: 328px; }
  #case_study ._case_study {
    background-color: #FFFFFF;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); }
    #case_study ._case_study .card__image {
      aspect-ratio: 328/179;
      overflow: hidden; }
    #case_study ._case_study .card__content {
      background-color: #FFFFFF;
      color: inherit; }
    #case_study ._case_study .card__label {
      font-size: 1em; }
    #case_study ._case_study .label {
      background-color: #ED6C00;
      border-radius: 0;
      border: 0;
      padding: 0 .8em;
      font-size: .8em; }
    #case_study ._case_study .card__status span {
      font-size: .75em;
      color: #999999; }
  #case_study .swiper_controller {
    margin-top: 1em;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    #case_study .swiper_controller .swiper-pagination {
      top: 50% !important;
      left: 0 !important;
      bottom: 0 !important;
      min-width: 1000px !important;
      width: auto !important;
      -webkit-transform: translateY(-50%) !important;
      transform: translateY(-50%) !important;
      text-align: left; }
    #case_study .swiper_controller ._navbtn {
      position: relative; }
    #case_study .swiper_controller ._npbtn {
      position: relative;
      width: 4.8em; }
    #case_study .swiper_controller .swiper-pagination-bullet {
      width: 7px !important;
      height: 7px !important; }
      #case_study .swiper_controller .swiper-pagination-bullet::before {
        border-radius: 0;
        border: 0;
        background: rgba(159, 157, 157, 0.5); }
      #case_study .swiper_controller .swiper-pagination-bullet.swiper-pagination-bullet-active::before {
        background: #ED6C00; }
    #case_study .swiper_controller .swiper-button-prev, #case_study .swiper_controller .swiper-button-next {
      width: 2.25em !important;
      height: 2.25em !important;
      background-color: #FFFFFF;
      margin: 0 !important;
      border-radius: 0;
      border: solid 1px rgba(76, 73, 72, 0.3);
      z-index: 1; }
    #case_study .swiper_controller .swiper-button-prev:hover {
      border: solid 1px #ED6C00; }
    #case_study .swiper_controller .swiper-button-next:hover {
      border: solid 1px #ED6C00; }
    #case_study .swiper_controller .swiper-button-next::after {
      color: transparent;
      background-image: url("/_assets/images/RN/top/swiper_next_btn.svg");
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain; }
    #case_study .swiper_controller .swiper-button-prev::after {
      color: transparent;
      background-image: url("/_assets/images/RN/top/swiper_prev_btn.svg");
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain; }
  #case_study .swiper-wrapper {
    height: inherit; }
  #case_study ._case_study .card__title {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical; }

@media screen and (min-width: 1441px) {
  #case_study .swiper {
    margin-right: calc((100vw - 1344px) / 2 * -1); } }
#purpose_rn {
  background-color: #F5F5F5;
  z-index: 1; }
  #purpose_rn .content-wrapper {
    width: 100%; }
  #purpose_rn .slanted-content_cover {
    background-image: url("/_assets/images/RN/top/purpose_rn.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center top; }

.purpose_btn {
  padding-top: calc(tan(-3) * 100vw / 2); }
  .purpose_btn a {
    display: flex;
    align-items: center;
    text-decoration: none;
    width: 23em;
    background-color: #FFFFFF;
    position: relative;
    margin-bottom: 1em;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.16); }
    .purpose_btn a ._btnimg {
      display: inline-block;
      aspect-ratio: 103/99;
      width: 27%;
      overflow: hidden; }
      .purpose_btn a ._btnimg img {
        object-fit: cover; }
    .purpose_btn a ._btntext {
      margin-left: 1em; }
    .purpose_btn a span {
      position: absolute;
      top: 50%;
      right: 1em;
      transform: translateY(-50%);
      width: 8%;
      aspect-ratio: 1/1; }

#engineer_data {
  background-color: #F5F5F5; }
  #engineer_data .section-footer._sp {
    display: none; }
  #engineer_data .engineer_data_list_cover {
    margin-right: -3em;
    margin-top: 2em; }
    #engineer_data .engineer_data_list_cover::-webkit-scrollbar {
      display: none; }
  #engineer_data .engineer_data_list {
    height: inherit; }
    #engineer_data .engineer_data_list li.swiper-slide {
      width: 242px; }
  #engineer_data .card {
    background-color: #FFFFFF;
    box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
    padding: 10px;
    text-align: center;
    display: flex;
    flex-direction: column; }
  #engineer_data .engineer_data__num {
    width: 64px;
    height: 64px;
    color: #FFFFFF;
    text-align: left;
    font-size: 1.5em;
    font-weight: 500;
    padding: 4%;
    background: #ff7400;
    background: linear-gradient(135deg, #ff7400 0%, #ff7400 50%, rgba(255, 116, 0, 0) 50%, rgba(255, 116, 0, 0) 100%);
    position: absolute;
    top: 0;
    left: 0; }
  #engineer_data .engineer_data__title {
    font-size: 1.06em;
    font-weight: bold;
    margin-bottom: .5em; }
  #engineer_data .engineer_data__result {
    font-size: 1.06em;
    font-weight: bold;
    margin-bottom: 1em;
    color: #ED6C00; }
    #engineer_data .engineer_data__result strong {
      font-size: 3em;
      margin-right: .03em; }
  #engineer_data .engineer_data__time span {
    font-size: .75em;
    color: #9F9D9D; }

@media screen and (min-width: 1441px) {
  #engineer_data .engineer_data_list_cover {
    margin-right: calc((100vw - 1344px) / 2 * -1); } }
#sustainability_rn {
  background-image: url("/_assets/images/RN/top/sustainability.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center; }
  #sustainability_rn .section-footer {
    margin-top: 4em; }

#group_rn {
  background-color: #F5F5F5; }
  #group_rn .flex_titlebox {
    justify-content: space-between;
    align-items: center; }
  #group_rn .section-footer._sp {
    display: none; }
  #group_rn .tab-group-nav {
    display: flex; }
    #group_rn .tab-group-nav .tab-group-item {
      display: block;
      font-weight: bold;
      color: #9F9D9D;
      padding: .5em;
      min-width: 5em;
      text-decoration: none;
      text-align: center; }
      #group_rn .tab-group-nav .tab-group-item.active {
        background-color: #4C4948;
        color: #FFFFFF;
        border-bottom: solid 2px #ED6C00; }
      #group_rn .tab-group-nav .tab-group-item:hover {
        cursor: pointer; }
  #group_rn .tab-group-content {
    display: none;
    width: 100%;
    margin-top: 2em; }
    #group_rn .tab-group-content.is-active {
      display: block;
      animation-name: displayAnime;
      animation-duration: 2s;
      animation-fill-mode: forwards; }

/* タブコンテンツのスタイル */
@keyframes displayAnime {
  from {
    opacity: 0; }
  to {
    opacity: 1; } }
@media screen and (max-width: 768px) and (orientation: portrait) {
  .kv_area .rn_flexbox {
    justify-content: center;
    align-items: center;
    flex-direction: column; }
    .kv_area .rn_flexbox .__titleimg {
      width: 100%; }
    .kv_area .rn_flexbox ._right a {
      width: 100%;
      max-width: 370px;
      font-size: 1em; }

  #numbers::before {
    display: none; }
  #numbers .flex_titlebox {
    flex-direction: column; }
    #numbers .flex_titlebox h2 .multi-title__pri {
      margin-right: 0;
      letter-spacing: -0.001em; }
  #numbers .button--white {
    display: none; }
  #numbers .block_num {
    width: 100%;
    margin-top: 1em; }
  #numbers .block_num_item {
    min-width: inherit;
    width: calc(50% - 5px);
    padding: 0 0 0 1em; }
    #numbers .block_num_item p._nump {
      font-size: 1.7em; }
  #numbers .button--white._pc {
    display: none; }
  #numbers .button--white._sp {
    display: block; }
  #numbers .sp_row {
    margin-top: 2em; }

  #block_tabArea {
    margin-top: 0;
    max-width: 100%; }

  .newsList li.newsList_item > a {
    flex-wrap: wrap; }
  .newsList .news_ttl span {
    width: 100%;
    margin-left: 0;
    margin-top: .5em; }

  #pickup .pickup_wrap {
    overflow-x: scroll;
    margin-right: -1.5em;
    -ms-overflow-style: none;
    scrollbar-width: none; }
    #pickup .pickup_wrap::-webkit-scrollbar {
      display: none; }
  #pickup .pickup--col-3 {
    width: calc(720px + 1.5em);
    padding-right: 1.5em; }

  .slanted-content_cover {
    transform: none; }

  .slanted-content {
    transform: none;
    padding: 4em 0 1.5em; }

  #case_study .section-footer._sp {
    display: inline; }
  #case_study .section-footer._pc {
    display: none; }
  #case_study .swiper {
    margin-right: -1.5em;
    margin-top: 1em; }
  #case_study .swiper-slide {
    width: 245px; }
  #case_study .swiper_controller {
    display: none; }

  .purpose_btn a {
    width: 100%; }

  #engineer_data .section-footer._sp {
    display: block; }
  #engineer_data .section-footer._pc {
    display: none; }
  #engineer_data .engineer_data_list_cover {
    margin-right: -1.5em;
    margin-top: 1em; }

  #sustainability_rn {
    background-image: url("/_assets/images/RN/top/sustainability_sp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center; }

  #group_rn .section-footer._sp {
    display: block; }
  #group_rn .section-footer._pc {
    display: none; }
  #group_rn .tab-group-nav .tab-group-item {
    min-width: 4.2em; }
  #group_rn .group_list {
    gap: 1em 0; }
    #group_rn .group_list li {
      width: 100%; }
    #group_rn .group_list a .logo_img {
      width: 30%; }
    #group_rn .group_list a .logo_contents {
      width: 70%; } }
/* 230627追加　*/
.home-content main {
  padding-top: 6em; }
.home-content .rn_page_header::before {
  background-color: #00000026;
  z-index: +1;
  height: 100%; }
.home-content .rn_page_header .kv_area {
  min-height: 440px;
  height: 100vh;
  max-height: 55vh; }
  .home-content .rn_page_header .kv_area .content-wrapper {
    z-index: +1; }
  .home-content .rn_page_header .kv_area .rn_flexbox {
    padding-top: 2em; }
    .home-content .rn_page_header .kv_area .rn_flexbox .__titleimg {
      max-width: 30em; }
.home-content #numbers {
  overflow: hidden; }
.home-content #service_rn {
  position: relative; }
  .home-content #service_rn .slanted-image {
    height: 35em;
    transform: skew(0deg, 7deg);
    overflow: hidden; }
    .home-content #service_rn .slanted-image img {
      height: 140%;
      object-position: center;
      object-fit: cover;
      transform-origin: 0 0;
      transform: skew(0deg, -7deg); }
  .home-content #service_rn .content-wrapper {
    position: absolute;
    top: 8em;
    left: 50%;
    transform: translateX(-50%);
    color: #fff; }
    .home-content #service_rn .content-wrapper .section-header .rn_title {
      margin-bottom: 1.75em; }
.home-content #purpose_rn .slanted-content {
  padding-top: 3em; }
  .home-content #purpose_rn .slanted-content .purpose_ttl p {
    max-width: 30em; }
  .home-content #purpose_rn .slanted-content .section-header .rn_title {
    margin-bottom: 1.75em; }
.home-content #engineer_data .engineer_data_list a {
  text-decoration: none; }
.home-content #engineer_data .engineer_data_list .card {
  padding: 3em 0 2em; }
  .home-content #engineer_data .engineer_data_list .card .engineer_data__title {
    font-size: .95em;
    padding: 0 2em;
    position: relative;
    z-index: +1;
    height: 4em; }
    .home-content #engineer_data .engineer_data_list .card .engineer_data__title::before {
      content: "Q";
      font-family: "Barlow",sans-serif;
      font-size: 4em;
      line-height: 0;
      color: #ed6c00;
      opacity: .2;
      text-align: center;
      position: absolute;
      top: 40%;
      left: 50%;
      transform: translate(-50%);
      z-index: -1; }
  .home-content #engineer_data .engineer_data_list .card figure {
    margin-bottom: .5em; }
  .home-content #engineer_data .engineer_data_list .card .engineer_data__num {
    line-height: 1;
    width: 2em;
    height: 2em; }
  .home-content #engineer_data .engineer_data_list .card .engineer_data__footer {
    text-align: center; }
    .home-content #engineer_data .engineer_data_list .card .engineer_data__footer span {
      display: inline-block;
      background: #EBEBEB;
      color: #7C7A79;
      font-size: .75em;
      font-weight: 500;
      padding: .1em 1em .15em;
      border-radius: 1em; }
.home-content #group_rn .group_list a[disabled="disabled"]:hover {
  color: #595757; }
  .home-content #group_rn .group_list a[disabled="disabled"]:hover .logo_img img {
    transform: none; }
.home-content #group_rn .group_list a[disabled="disabled"] .logo_contents {
  background-image: none; }
.home-content #group_rn .group_list a .logo_img {
  height: 6em; }
  .home-content #group_rn .group_list a .logo_img img {
    height: 100%; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .home-content main {
    padding-top: 4em; }
  .home-content #pickup .flex_titlebox .section-header {
    width: 100%; }
  .home-content #service_rn .slanted-image {
    height: 30em; }
    .home-content #service_rn .slanted-image img {
      object-position: 60%; }
  .home-content #service_rn .content-wrapper {
    top: 3.5em; }
  .home-content #group_rn .group_list a .logo_img {
    height: auto; }
  .home-content #group_rn .group_list a .logo_contents {
    padding: 1em; }
    .home-content #group_rn .group_list a .logo_contents ._title {
      font-size: .875em; } }
/*============================

Purpose

=============================*/
.rn_h-3.ta-left {
  text-align: left;
  padding-left: 1em; }

.effort-content #non-financial .row {
  margin-bottom: 4em; }
.effort-content #non-financial .purpose-index {
  margin: 1em 0;
  padding: 2.5em 0 2em; }
  .effort-content #non-financial .purpose-index .purpose-index__caption {
    font-size: .9em; }
  .effort-content #non-financial .purpose-index small {
    position: absolute;
    bottom: 1em;
    left: 50%;
    transform: translateX(-50%);
    text-align: center; }

/* エンジニアデータ */
.company-content.ter-content.engineer-data-content .page-section .content-wrapper {
  padding-right: 3em; }

.engineer-data-content .engineer_data_list .row {
  margin-bottom: 3em; }
  .engineer-data-content .engineer_data_list .row .column__item {
    margin-bottom: 0; }
.engineer-data-content .engineer_data_list .card {
  background-color: #FFFFFF;
  box-shadow: 0 0 6px rgba(0, 0, 0, 0.16);
  padding: 5em 5em 3em; }
  .engineer-data-content .engineer_data_list .card .engineer_data__num {
    line-height: 1;
    width: 3em;
    height: 3em;
    color: #FFFFFF;
    text-align: left;
    font-size: 2.5em;
    font-weight: 500;
    padding: .4em;
    background: #ff7400;
    background: linear-gradient(135deg, #ff7400 0%, #ff7400 50%, rgba(255, 116, 0, 0) 50%, rgba(255, 116, 0, 0) 100%);
    position: absolute;
    top: 0;
    left: 0; }
  .engineer-data-content .engineer_data_list .card .engineer_data__header {
    display: inline-block;
    background: #EBEBEB;
    color: #7C7A79;
    font-size: .85em;
    font-weight: 500;
    padding: 0.1em 1em 0.15em;
    border-radius: 1em;
    margin-bottom: 1em; }
  .engineer-data-content .engineer_data_list .card .engineer_data__title {
    font-size: 1.4em;
    font-weight: 500;
    letter-spacing: .05em;
    margin-bottom: 1em;
    position: relative;
    padding-left: 1.3em; }
    .engineer-data-content .engineer_data_list .card .engineer_data__title::before {
      content: "Q";
      font-family: "Barlow",sans-serif;
      font-size: 1.3em;
      line-height: 1.2;
      color: #ed6c00;
      position: absolute;
      top: 0;
      left: 0; }
  .engineer-data-content .engineer_data_list .card .engineer_data__image img {
    height: 20em; }
  .engineer-data-content .engineer_data_list .card .engineer_data__image small {
    text-align: right;
    width: 100%;
    margin-top: 1em; }
  .engineer-data-content .engineer_data_list .card p {
    font-size: 1.1em;
    line-height: 1.8; }

@media screen and (max-width: 768px) and (orientation: portrait) {
  .company-content.ter-content.engineer-data-content .page-section .content-wrapper {
    padding-right: 1.5em; }

  .engineer-data-content .engineer_data_list .row, .engineer-data-content .engineer_data_list .card-vertical {
    margin-bottom: 2em; }
  .engineer-data-content .engineer_data_list .card {
    padding: 3em 2em 1em; }
    .engineer-data-content .engineer_data_list .card .engineer_data__num {
      font-size: 1.5em; }
    .engineer-data-content .engineer_data_list .card .engineer_data__header {
      font-size: .75em; }
    .engineer-data-content .engineer_data_list .card .engineer_data__title {
      font-size: 1.1em; }
    .engineer-data-content .engineer_data_list .card .engineer_data__image img {
      height: 12em; }
    .engineer-data-content .engineer_data_list .card p {
      font-size: .95em; } }
@media not screen and (max-width: 768px) and (orientation: portrait) {
  .engineer-data-content .engineer_data_list .column--col-2 > .column__item:nth-of-type(even) {
    width: calc(50% - 1.5em);
    margin-left: 3em; }
  .engineer-data-content .engineer_data_list .card-vertical {
    height: 100%; }
    .engineer-data-content .engineer_data_list .card-vertical .engineer_data__title, .engineer-data-content .engineer_data_list .card-vertical figure {
      margin-bottom: 2em; } }
/* data */
.data-content .data_list .card {
  padding: 4em;
  background: #fff; }
  .data-content .data_list .card:not(last-child) {
    margin-bottom: 3em; }
  .data-content .data_list .card .data-flex {
    display: flex;
    gap: 4em; }
    .data-content .data_list .card .data-flex .txt {
      width: 50%; }
      .data-content .data_list .card .data-flex .txt .ttl {
        font-weight: 500;
        font-size: 1.3em;
        padding-left: 1.65em;
        position: relative;
        margin-bottom: 2.5em; }
        .data-content .data_list .card .data-flex .txt .ttl::before {
          content: "";
          position: absolute;
          top: 50%;
          left: 0;
          transform: translateY(-50%);
          width: 1em;
          height: 2px;
          background-color: #ed6c00; }
      .data-content .data_list .card .data-flex .txt .data {
        margin-bottom: 1.8em; }
        .data-content .data_list .card .data-flex .txt .data img {
          height: auto;
          width: auto; }
    .data-content .data_list .card .data-flex .media {
      width: 50%; }
    .data-content .data_list .card .data-flex p {
      line-height: 2;
      letter-spacing: .05em; }
@media screen and (max-width: 768px) and (orientation: portrait) {
  .data-content .data_list .card {
    padding: 2em; }
    .data-content .data_list .card:not(last-child) {
      margin-bottom: 1.5em; }
    .data-content .data_list .card .data-flex {
      flex-direction: column;
      gap: 1em; }
      .data-content .data_list .card .data-flex .txt {
        width: 100%; }
        .data-content .data_list .card .data-flex .txt .ttl {
          font-size: 1.2em;
          margin-bottom: 1.8em; }
        .data-content .data_list .card .data-flex .txt .data img {
          max-width: 100%; }
      .data-content .data_list .card .data-flex .media {
        width: 100%; } }
@media not screen and (max-width: 768px) and (orientation: portrait) {
  .data-content.company-content.ter-content .page-section .content-wrapper {
    padding-right: 3em;
    max-width: calc(1066px + 6em); } }

/* advantage */
.advantage-content p {
  line-height: 2;
  letter-spacing: .05em; }
  .advantage-content p:last-child {
    margin-bottom: 0; }
.advantage-content.ter-content.service-content .rn_header .left::before {
  background: none; }
.advantage-content .ovv .section-title {
  color: #ed6c00;
  text-align: center;
  font-weight: 500;
  font-size: 2em;
  margin-bottom: 2.5em; }
.advantage-content .ovv .media {
  margin: 0 auto 3em; }
.advantage-content .ovv .rn_h-3 {
  margin-bottom: 1em; }
.advantage-content .main-content .sec {
  margin-bottom: 5em; }
.advantage-content .main-content .section-header {
  padding: 1em 0 1em 2em;
  border-left: 2px solid #ed6c00;
  border-bottom: 1px solid #E2E2E2;
  display: flex;
  align-items: center;
  margin-bottom: 2em;
  gap: 2em; }
  .advantage-content .main-content .section-header .head {
    color: #ed6c00;
    font-weight: bold;
    line-height: 1;
    text-align: center;
    font-family: "Barlow", sans-serif;
    letter-spacing: 0; }
    .advantage-content .main-content .section-header .head span {
      font-size: .5em;
      display: block; }
    .advantage-content .main-content .section-header .head div {
      font-size: 3em; }
  .advantage-content .main-content .section-header h2 {
    font-weight: 500;
    font-size: 1.8em;
    line-height: 1.4;
    margin-bottom: 0;
    letter-spacing: .05em; }
    .advantage-content .main-content .section-header h2 strong {
      color: #ed6c00; }
.advantage-content .main-content .wrapper .rn_h-3 {
  font-size: .9em;
  padding: .4em; }
.advantage-content .main-content .wrapper .row:not(last-child) {
  margin-bottom: 3em; }
.advantage-content .main-content .wrapper .box {
  padding: 2em;
  text-align: center;
  margin-bottom: 0; }
  .advantage-content .main-content .wrapper .box .ttl {
    font-size: .85em; }
    .advantage-content .main-content .wrapper .box .ttl.u-line {
      display: inline-block;
      color: #ed6c00;
      font-weight: 500;
      padding-bottom: .1em;
      border-bottom: 1px solid #ed6c00; }
  .advantage-content .main-content .wrapper .box .media {
    padding: 1em 0;
    height: 7em; }
    .advantage-content .main-content .wrapper .box .media img {
      height: 100%; }
  .advantage-content .main-content .wrapper .box p {
    font-size: .75em;
    text-align: left; }
  .advantage-content .main-content .wrapper .box .data {
    color: #ed6c00;
    font-weight: 500;
    line-height: 1.2; }
    .advantage-content .main-content .wrapper .box .data span {
      font-size: 2.6em;
      letter-spacing: 0;
      padding-right: .1em;
      font-family: "Barlow", sans-serif; }
  .advantage-content .main-content .wrapper .box small {
    font-size: 60%; }
.advantage-content .main-content .wrapper .uh-1 {
  font-size: 2em;
  font-weight: 500;
  padding: 1em 0; }
.advantage-content .main-content .wrapper .uh-3 {
  font-size: 1.5em;
  font-weight: 500;
  margin-bottom: .5em; }
.advantage-content .main-content .wrapper .bg-lo {
  background-color: #FDF0E5; }
.advantage-content .main-content .wrapper .case .case-header {
  background-color: #F5F5F5;
  padding: 1em;
  border-left: 2px solid #ed6c00;
  margin-bottom: 1em;
  position: relative;
  padding-left: 6.1em; }
  .advantage-content .main-content .wrapper .case .case-header h3 {
    font-size: 1em;
    margin-bottom: 0; }
  .advantage-content .main-content .wrapper .case .case-header::before {
    content: url(/_assets/images/RN/service/advantage/case.svg);
    position: absolute;
    left: 1em;
    top: 50%;
    transform: translateY(-50%); }
.advantage-content .main-content .wrapper .d-flex {
  display: flex;
  flex-wrap: wrap;
  gap: .5em; }
  .advantage-content .main-content .wrapper .d-flex.col-2 > * {
    --widthA: calc(100% - 0.5em);
    width: calc(var(--widthA) / 2); }
.advantage-content .main-content #feature05 .flow_wrapper .flow {
  background-color: #FDF0E5; }
  .advantage-content .main-content #feature05 .flow_wrapper .flow .d-flex {
    gap: 0; }
  .advantage-content .main-content #feature05 .flow_wrapper .flow:not(:last-child) {
    margin-bottom: 2em;
    position: relative; }
    .advantage-content .main-content #feature05 .flow_wrapper .flow:not(:last-child)::after {
      content: "";
      position: absolute;
      bottom: -1.5em;
      left: 50%;
      transform: translateX(-50%);
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 1em 1em 0 1em;
      border-color: #F2984C transparent transparent transparent; }
  .advantage-content .main-content #feature05 .flow_wrapper .flow .ttl {
    background-color: #ED6C00;
    font-weight: 500;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 30%; }
  .advantage-content .main-content #feature05 .flow_wrapper .flow .content {
    padding: 2em;
    width: 70%;
    font-size: .8em; }
.advantage-content .main-content #feature05 .follow .col-md-3:not(:last-child) {
  position: relative; }
  .advantage-content .main-content #feature05 .follow .col-md-3:not(:last-child)::after {
    content: "";
    position: absolute;
    right: -2.5em;
    top: 50%;
    transform: translateY(-50%);
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1em 0 1em 1em;
    border-color: transparent transparent transparent #F2984C; }
.advantage-content .main-content #feature05 .follow .ttl {
  margin-bottom: 1em; }
.advantage-content .main-content #feature05 .follow .follow_ttl {
  font-weight: 500;
  color: #ED6C00;
  text-align: center;
  margin-bottom: 1em; }
.advantage-content .main-content #feature05 .follow p {
  line-height: 1.4;
  text-align: center; }
.advantage-content .main-content #feature05 .follow .d-flex {
  justify-content: center;
  align-items: center; }
.advantage-content .main-content #feature06 .dsc .icon--bar::before {
  width: .3em;
  height: 1.2em; }
.advantage-content .main-content #feature06 .careerup .rn_h-3 {
  margin-bottom: .8em; }
.advantage-content .main-content #feature06 .careerup p {
  font-size: .9em;
  line-height: 1.8; }
.advantage-content .main-content #feature06 .caption .uh-5 {
  font-weight: 500;
  margin-bottom: .5em; }
.advantage-content .main-content #feature06 .caption p {
  font-size: .85em;
  line-height: 1.8; }
.advantage-content .main-content #feature06 .card_wrapper .box {
  text-align: left; }
  .advantage-content .main-content #feature06 .card_wrapper .box .icon {
    font-weight: 500;
    margin-bottom: 1em; }
  .advantage-content .main-content #feature06 .card_wrapper .box p {
    font-size: .9em; }
@media screen and (max-width: 768px) and (orientation: portrait) {
  .advantage-content .main-content .nav-open {
    position: relative; }
    .advantage-content .main-content .nav-open::after {
      content: "+";
      position: absolute;
      right: 4%;
      font-size: 1.5em; }
    .advantage-content .main-content .nav-open.active::after {
      content: "-";
      font-size: 2em; }
  .advantage-content .main-content .nav-content {
    display: none; }
  .advantage-content .main-content .sec {
    margin-bottom: 2em; }
  .advantage-content .main-content .section-header {
    padding: 1em 2.4em 1em 1em;
    gap: 1.4em;
    margin-bottom: 1em; }
    .advantage-content .main-content .section-header h2 {
      font-size: 1.2em; }
  .advantage-content .main-content .wrapper .row:not(:last-child) {
    margin-bottom: 1.5em; }
  .advantage-content .main-content .wrapper .box {
    margin-bottom: 0;
    padding: 1.5em; }
  .advantage-content .main-content .wrapper .uh-1 {
    font-size: 1.5em; }
  .advantage-content .main-content .wrapper .uh-3 {
    font-size: 1.2em; }
  .advantage-content .main-content .wrapper .d-flex.col-md-3 {
    flex-direction: column;
    gap: 2em; }
    .advantage-content .main-content .wrapper .d-flex.col-md-3 .column__item {
      position: relative; }
      .advantage-content .main-content .wrapper .d-flex.col-md-3 .column__item::after {
        content: "";
        position: absolute;
        right: 50%;
        transform: translateX(50%);
        bottom: -2em;
        height: 2em;
        width: 1em;
        background-color: #ed6c00; }
      .advantage-content .main-content .wrapper .d-flex.col-md-3 .column__item.last::after {
        width: 0; }
  .advantage-content .main-content #feature05 .flow_wrapper {
    margin-bottom: 2em; }
  .advantage-content .main-content #feature05 .follow {
    flex-direction: column;
    gap: 2em; }
    .advantage-content .main-content #feature05 .follow .col-md-3:not(:last-child)::after {
      right: auto;
      top: auto;
      left: 50%;
      bottom: -1.5em;
      transform: translateX(-50%);
      border-width: 1em 1em 0 1em;
      border-color: #F2984C transparent transparent transparent; }
  .advantage-content .main-content #feature06 .careerup .col-md-5-1 {
    margin-bottom: 2em; }
  .advantage-content .main-content #feature06 .card_wrapper .col-md-6 {
    margin-bottom: 1.5em; } }
@media not screen and (max-width: 768px) and (orientation: portrait) {
  .advantage-content.ter-content.service-content .rn_header .left {
    width: 50%; }
  .advantage-content .ovv .media {
    max-width: 780px; }
  .advantage-content .main-content .wrapper {
    padding: 1em 3em; }
    .advantage-content .main-content .wrapper .media.padding-md-large {
      padding: 3em 0; }
    .advantage-content .main-content .wrapper .d-flex .box {
      height: 100%; }
    .advantage-content .main-content .wrapper .d-flex.flex-md-row-reverse {
      flex-direction: row-reverse; }
    .advantage-content .main-content .wrapper .d-flex.col-md-6 > * {
      --widthA: calc(100% - 2.5em);
      width: calc(var(--widthA) / 6); }
    .advantage-content .main-content .wrapper .d-flex.col-md-3 {
      gap: 2em; }
      .advantage-content .main-content .wrapper .d-flex.col-md-3 > * {
        --widthA: calc(100% - 4em);
        width: calc(var(--widthA) / 3); }
      .advantage-content .main-content .wrapper .d-flex.col-md-3 .column__item {
        position: relative; }
        .advantage-content .main-content .wrapper .d-flex.col-md-3 .column__item.right::after {
          content: "";
          position: absolute;
          right: -2em;
          top: 50%;
          transform: translateY(-50%);
          height: 1em;
          width: 2em;
          background-color: #ed6c00; }
        .advantage-content .main-content .wrapper .d-flex.col-md-3 .column__item.bottom::before {
          content: "";
          position: absolute;
          right: 50%;
          bottom: -2em;
          transform: translateX(-50%);
          height: 2em;
          width: 1em;
          background-color: #ed6c00; }
    .advantage-content .main-content .wrapper .d-md-flex {
      display: flex;
      gap: 3em; }
    .advantage-content .main-content .wrapper .col-md-5 {
      --widthS:calc(100% / 12);
      width: calc(var(--widthS) * 5); }
    .advantage-content .main-content .wrapper .col-md-7 {
      --widthS:calc(100% / 12);
      width: calc(var(--widthS) * 7); }
    .advantage-content .main-content .wrapper .case .case-header::after {
      content: "";
      position: absolute;
      right: 1em;
      top: 50%;
      transform: translateY(-50%);
      height: 100%;
      width: 6%;
      background-repeat: no-repeat;
      background-position: center;
      background-size: contain; }
    .advantage-content .main-content .wrapper .case .case-header.bnt::after {
      background-image: url(/_assets/images/RN/service/advantage/logo_bnt.png); }
    .advantage-content .main-content .wrapper .case .case-header.yms::after {
      background-image: url(/_assets/images/RN/service/advantage/logo_yms.svg);
      height: 70%; }
    .advantage-content .main-content .wrapper .case .case-header.ope::after {
      background-image: url(/_assets/images/RN/service/advantage/logo_ope.svg); }
  .advantage-content .main-content #feature05 .follow {
    gap: 5%; }
    .advantage-content .main-content #feature05 .follow .col-md-3 {
      --widthS:calc(85% / 12);
      width: calc(var(--widthS) * 3); }
  .advantage-content .main-content #feature06 .dsc .text, .advantage-content .main-content #feature06 .dsc .media {
    width: 50%; }
  .advantage-content .main-content #feature06 .dsc .media img {
    max-width: 25em; }
  .advantage-content .main-content #feature06 .careerup {
    gap: 2.5%; }
  .advantage-content .main-content #feature06 .card_wrapper .d-md-flex {
    flex-wrap: wrap;
    gap: 2em; }
    .advantage-content .main-content #feature06 .card_wrapper .d-md-flex .col-md-6 {
      --widthA:calc(100% - 2em);
      width: calc(var(--widthA) / 2); } }
