@charset "UTF-8";
#environment {
  /* カテゴリ設定 */ }
  #environment .cont__header .box__cat_ttl {
    background: url("../environment/img/img_mv.jpg") no-repeat center top;
    background-size: cover; }
  #environment .cont__header .box__cat_ttl.box__cat_ttl_envi .cat_ttl .en_ttl {
    font-size: 98px;
    font-size: 9.8rem; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment .cont__header .box__cat_ttl.box__cat_ttl_envi .cat_ttl .en_ttl {
        font-size: 52px;
        font-size: 5.2rem; } }
  #environment.index .cont__header .box__cont_ttl {
    margin-bottom: 40px; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.index .cont__header .box__cont_ttl {
        margin-bottom: 20px; } }
  #environment.index .list_revo {
    padding: 20px 0 56px; }
    #environment.index .list_revo dl dt {
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold;
      margin-top: 20px;
      letter-spacing: 0.05em;
      position: relative;
      padding-left: 1.3em; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.index .list_revo dl dt {
          font-size: 17px;
          font-size: 1.7rem;
          line-height: 1.4; } }
      #environment.index .list_revo dl dt:before {
        content: "●";
        display: inline-block;
        color: #6693c7;
        position: absolute;
        left: 0;
        top: 0; }
    #environment.index .list_revo dl dd {
      margin-top: 5px; }
  #environment.index .sec__2 {
    padding: 80px 0; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.index .sec__2 {
        padding: 60px 0; } }
    #environment.index .sec__2 .list_work {
      position: relative; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.index .sec__2 .list_work {
          padding-bottom: 200px; } }
      #environment.index .sec__2 .list_work:after {
        content: "";
        display: block;
        width: 220px;
        height: 110%;
        background: url("../img/img_alpaca.png") no-repeat center bottom;
        background-size: contain;
        position: absolute;
        right: 0;
        top: -5%; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          #environment.index .sec__2 .list_work:after {
            width: 100%;
            height: 200px;
            right: 0;
            top: auto;
            bottom: 0; } }
      #environment.index .sec__2 .list_work li {
        font-size: 21px;
        font-size: 2.1rem;
        font-weight: bold;
        padding-left: 34px;
        position: relative;
        letter-spacing: 0.05em;
        margin: 20px 0; }
        #environment.index .sec__2 .list_work li:before {
          content: "";
          display: inline-block;
          width: 21px;
          height: 21px;
          background: url("../img/icon_check.svg") no-repeat 0 0;
          background-size: 21px 21px;
          position: absolute;
          left: 0;
          top: 0.3em; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          #environment.index .sec__2 .list_work li {
            font-size: 17px;
            font-size: 1.7rem;
            line-height: 1.4; }
            #environment.index .sec__2 .list_work li:before {
              width: 17px;
              height: 17px;
              background-size: 17px 17px; } }
  #environment.index .sec__3 {
    background-color: #e8eff7;
    overflow: hidden;
    padding: 80px 0 100px; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.index .sec__3 {
        padding: 60px 0 50px; } }
    #environment.index .sec__3 .txt_chyu {
      margin-top: 50px;
      font-size: 13px;
      font-size: 1.3rem;
      text-align: right; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.index .sec__3 .txt_chyu {
          margin-top: 60px;
          text-align: center; } }
    #environment.index .sec__3 .box__voice {
      margin-top: 50px;
      padding-left: 214px;
      background-position: left center;
      background-repeat: no-repeat;
      background-size: 164px 164px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.index .sec__3 .box__voice {
          padding-left: 0;
          padding-bottom: 204px;
          background-position: center bottom; } }
      #environment.index .sec__3 .box__voice .txt_voice {
        background-color: #fff;
        padding: 25px;
        position: relative; }
        #environment.index .sec__3 .box__voice .txt_voice:before {
          display: block;
          content: "";
          position: absolute;
          left: -27px;
          top: 50%;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 11px 27px 11px 0;
          border-color: transparent #fff transparent transparent;
          margin-top: -11px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            #environment.index .sec__3 .box__voice .txt_voice:before {
              border-width: 27px 11px 0 11px;
              border-color: #fff transparent transparent transparent;
              margin-top: 0;
              left: 50%;
              top: auto;
              bottom: -26px;
              margin-left: -11px; } }
        #environment.index .sec__3 .box__voice .txt_voice .txt_profile {
          margin-top: 20px; }
          #environment.index .sec__3 .box__voice .txt_voice .txt_profile h4 {
            font-size: 18px;
            font-size: 1.8rem;
            font-weight: bold;
            color: #6693c7;
            letter-spacing: 0.05em;
            margin: 20px 0 10px; }
          #environment.index .sec__3 .box__voice .txt_voice .txt_profile p {
            color: #6693c7; }
  #environment.training .training_system_ttl {
    margin-top: 60px;
    margin-bottom: 20px;
    font-size: 22px;
    font-size: 2.2rem;
    text-align: center;
    font-weight: bold; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.training .training_system_ttl {
        margin-top: 30px;
        margin-bottom: 10px;
        font-size: 18px;
        font-size: 1.8rem; } }
  #environment.training .sp_scroller {
    display: flex;
    width: 100%;
    overflow: auto; }
    #environment.training .sp_scroller_item {
      flex: 0 0 auto; }
      #environment.training .sp_scroller_item img {
        max-width: unset; }
  #environment.training .training_flow {
    margin-top: 40px; }
    #environment.training .training_flow_ttl {
      margin-bottom: 20px;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: bold; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.training .training_flow_ttl {
          margin-bottom: 10px;
          font-size: 18px;
          font-size: 1.8rem; } }
    #environment.training .training_flow_item {
      position: relative;
      z-index: 0;
      padding-bottom: 30px; }
      #environment.training .training_flow_item::before {
        content: '';
        display: block;
        position: absolute;
        top: 0;
        bottom: 0;
        z-index: -1;
        left: 8px;
        width: 3px;
        background-color: #ccc; }
      #environment.training .training_flow_item_first::before {
        top: 20px; }
      #environment.training .training_flow_item_last {
        padding-bottom: 0; }
        #environment.training .training_flow_item_last::before {
          bottom: 50%; }
      #environment.training .training_flow_item_ttl {
        display: flex;
        align-items: center;
        margin-bottom: 10px; }
        #environment.training .training_flow_item_ttl::before {
          content: '';
          flex: 0 0 auto;
          display: block;
          width: 20px;
          height: 20px;
          margin-right: 54px;
          background-color: #6693C7;
          border-radius: 10px; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            #environment.training .training_flow_item_ttl::before {
              margin-right: 20px; } }
        #environment.training .training_flow_item_ttl > span {
          flex: 1 1 auto;
          position: relative;
          display: block;
          padding: 15px 20px;
          background-color: #ccc;
          color: #fff;
          background-color: #6693C7;
          border: 3px;
          font-size: 22px;
          font-size: 2.2rem;
          font-weight: bold; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            #environment.training .training_flow_item_ttl > span {
              font-size: 18px;
              font-size: 1.8rem; } }
          #environment.training .training_flow_item_ttl > span::before {
            content: '';
            position: absolute;
            top: 50%;
            right: 100%;
            display: block;
            width: 0;
            height: 0;
            border-style: solid;
            border-width: 11px 27px 11px 0;
            border-color: transparent #6693C7 transparent transparent;
            margin-top: -11px; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              #environment.training .training_flow_item_ttl > span::before {
                border-width: 6px 16px 6px 0;
                margin-top: -6px; } }
        #environment.training .training_flow_item_ttl_last > span {
          display: flex;
          align-items: center;
          justify-content: space-between; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            #environment.training .training_flow_item_ttl_last > span {
              display: block; } }
          #environment.training .training_flow_item_ttl_last > span > span {
            font-size: 18px;
            font-size: 1.8rem;
            display: block;
            color: #fff;
            padding: 6px 20px;
            border: 1px solid #fff;
            color: #fff;
            font-weight: bold; }
            @media only screen and (max-width: 768px), print and (min-width: 2cm) {
              #environment.training .training_flow_item_ttl_last > span > span {
                margin-top: 10px;
                font-size: 14px;
                font-size: 1.4rem; } }
      #environment.training .training_flow_item_body {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: calc(100% - 74px);
        margin-left: 74px;
        margin-bottom: 10px;
        padding: 15px 20px;
        background-color: #fff; }
        @media only screen and (max-width: 768px), print and (min-width: 2cm) {
          #environment.training .training_flow_item_body {
            display: block;
            margin-left: 44px;
            width: calc(100% - 44px); } }
        #environment.training .training_flow_item_body:last-child {
          margin-bottom: 0; }
        #environment.training .training_flow_item_body dl {
          flex: 1 1 auto; }
        #environment.training .training_flow_item_body dt {
          font-size: 22px;
          font-size: 2.2rem;
          font-weight: bold;
          color: #6693C7; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            #environment.training .training_flow_item_body dt {
              font-size: 18px;
              font-size: 1.8rem; } }
        #environment.training .training_flow_item_body p {
          flex: 0 0 auto;
          padding: 6px 20px;
          border: 1px solid #6693C7;
          color: #6693C7;
          font-weight: bold;
          font-size: 18px;
          font-size: 1.8rem; }
          @media only screen and (max-width: 768px), print and (min-width: 2cm) {
            #environment.training .training_flow_item_body p {
              margin-top: 10px;
              font-size: 14px;
              font-size: 1.4rem; } }
  #environment.training .training_topic {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    width: 100%;
    margin-top: 30px; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.training .training_topic {
        margin-top: 10px; } }
    #environment.training .training_topic_ttl {
      flex: 0 0 auto;
      padding: 8px 1.5em;
      background-color: #52bcde;
      color: #fff;
      font-weight: bold;
      transform: translate(0, 50%);
      font-size: 22px;
      font-size: 2.2rem; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.training .training_topic_ttl {
          font-size: 15px;
          font-size: 1.5rem;
          width: 100%;
          text-align: center;
          padding: 12px 0.5em; } }
    #environment.training .training_topic_body {
      flex: 0 0 auto;
      padding: 40px 30px 20px;
      width: 100%;
      background-color: #fff; }
  #environment.training .sec__1, #environment.training .sec__2, #environment.training .sec__3, #environment.training .sec__4, #environment.training .sec__6 {
    padding: 100px 0; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.training .sec__1, #environment.training .sec__2, #environment.training .sec__3, #environment.training .sec__4, #environment.training .sec__6 {
        padding: 80px 0; } }
  #environment.training .sec__1 {
    padding-top: 0; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.training .sec__1 {
        padding-top: 0; } }
  #environment.training .sec__2, #environment.training .sec__4, #environment.training .sec__5 {
    background-color: #eef8fc; }
  #environment.training .sec__1 .training_topic, #environment.training .sec__3 .training_topic, #environment.training .sec__6 .training_topic {
    height: 100%; }
    #environment.training .sec__1 .training_topic_body, #environment.training .sec__3 .training_topic_body, #environment.training .sec__6 .training_topic_body {
      background-color: #eef8fc; }
  #environment.training .sec__5 {
    padding-top: 150px; }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.training .sec__5 {
        padding-top: 120px; } }
  #environment.training .box_program h3 {
    font-size: 20px;
    font-size: 2rem;
    font-weight: bold; }
  #environment.training .box_program dl {
    margin-bottom: 20px; }
    #environment.training .box_program dl dt {
      font-size: 18px;
      font-size: 1.8rem;
      font-weight: bold;
      color: #52bcde;
      margin-top: 15px; }
      #environment.training .box_program dl dt:before {
        content: "■";
        display: inline-block;
        margin-right: 0.4em; }
  #environment.training .table_academy {
    border-bottom: none; }
    #environment.training .table_academy tr {
      border-top: solid 1px rgba(7, 107, 172, 0.3); }
      #environment.training .table_academy tr:first-child {
        border-top: none; }
    #environment.training .table_academy th {
      width: 140px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.training .table_academy th {
          display: block;
          padding-bottom: 5px;
          width: 100%; } }
    @media only screen and (max-width: 768px), print and (min-width: 2cm) {
      #environment.training .table_academy td {
        display: block;
        padding-top: 0; } }
    #environment.training .table_academy.table_academy_2 th {
      width: 210px; }
      @media only screen and (max-width: 768px), print and (min-width: 2cm) {
        #environment.training .table_academy.table_academy_2 th {
          width: 100%; } }
  #environment.training .img_training_5 {
    max-width: 480px;
    margin: 3em auto; }
  #environment.training .img_training_6 {
    max-width: 700px;
    margin: 1em auto 0; }

/*# sourceMappingURL=environment.css.map */
