@charset "UTF-8";
.container .section_csr {
  background: #fff; }
  @media only screen and (max-width: 767px) {
    .container .section_csr {
      margin: 0 1.2rem 1.5rem; } }
  .container .section_csr-header {
    border-bottom: 0.1rem solid #edf0ea;
    border-left: 0.5rem solid #009933;
    position: relative; }
    .container .section_csr-header_ttl {
      font-size: 2.8rem;
      padding: 3rem 4rem;
      text-align: left; }
      @media only screen and (max-width: 767px) {
        .container .section_csr-header_ttl {
          font-size: 1.7rem;
          padding: 1.5rem 1.5rem; } }
  .container .section_csr-fig {
    width: 100%;
    height: 43.5rem;
    background: url("../../img/csr/fig_main.jpg") 50% 50%;
    background-size: cover;
    margin-bottom: 3rem; }
    @media only screen and (max-width: 767px) {
      .container .section_csr-fig {
        height: 20rem;
        margin-bottom: 1.5rem; } }
  .container .section_csr-txt {
    padding-bottom: 6rem; }
    @media only screen and (max-width: 767px) {
      .container .section_csr-txt {
        padding-bottom: 2.5rem; } }
    .container .section_csr-txt p {
      font-size: 1.4rem;
      line-height: 1.6;
      padding-bottom: 1.5rem; }
      @media only screen and (max-width: 767px) {
        .container .section_csr-txt p {
          font-size: 1.2rem; } }
      .container .section_csr-txt p strong {
        font-size: 2rem;
        color: #009933; }
        @media only screen and (max-width: 767px) {
          .container .section_csr-txt p strong {
            font-size: 1.7rem; }
            .container .section_csr-txt p strong br {
              display: none; } }
    .container .section_csr-txt > ol {
      margin-bottom: 3rem; }
      @media only screen and (max-width: 767px) {
        .container .section_csr-txt > ol {
          font-size: 1.2rem; } }
      .container .section_csr-txt > ol > li {
        list-style: decimal outside;
        margin-left: 2rem;
        font-weight: 700;
        margin-bottom: 1rem;
        overflow: visible;
        zoom: normal; }
        .container .section_csr-txt > ol > li ol {
          font-weight: 400;
          padding-top: .5rem; }
          .container .section_csr-txt > ol > li ol li {
            display: flex;
            justify-content: flex-start; }
            .container .section_csr-txt > ol > li ol li:before {
              flex-shrink: 0;
              width: 2.5em; }
            .container .section_csr-txt > ol > li ol li:nth-of-type(1):before {
              content: "（1）"; }
            .container .section_csr-txt > ol > li ol li:nth-of-type(2):before {
              content: "（2）"; }
            .container .section_csr-txt > ol > li ol li:nth-of-type(3):before {
              content: "（3）"; }
  .container .section_csr-list_ttl {
    font-size: 2.4rem;
    border-bottom: 1px solid #dce2d7;
    padding: 1.5rem .5rem;
    margin-bottom: 3rem; }
    @media only screen and (max-width: 767px) {
      .container .section_csr-list_ttl {
        font-size: 1.6rem;
        padding: 1rem 0;
        margin-bottom: 1.5rem; } }
  .container .section_csr-list dl {
    display: flex;
    justify-content: flex-start; }
    @media only screen and (max-width: 767px) {
      .container .section_csr-list dl {
        flex-direction: column; } }
    .container .section_csr-list dl > div {
      width: 33.333%;
      padding: 0 1.5rem 4rem; }
      @media only screen and (max-width: 767px) {
        .container .section_csr-list dl > div {
          width: 100%;
          padding: 0 0 2.5rem; } }
      .container .section_csr-list dl > div dt {
        font-size: 1.8rem;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        margin-bottom: 1rem; }
        @media only screen and (max-width: 767px) {
          .container .section_csr-list dl > div dt {
            font-size: 1.4rem;
            flex-direction: row;
            justify-content: flex-start;
            align-items: center; } }
        .container .section_csr-list dl > div dt span {
          background: #dce2d7;
          font-size: 1.5rem;
          padding: 0 .8rem; }
          @media only screen and (max-width: 767px) {
            .container .section_csr-list dl > div dt span {
              font-size: 1.1rem;
              flex-shrink: 0;
              margin-right: 1rem;
              padding: 0 .4rem; } }
      .container .section_csr-list dl > div dd {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        .container .section_csr-list dl > div dd figure {
          width: 12.5rem;
          height: 12.5rem;
          border: 1px solid #dce2d7;
          display: flex;
          justify-content: center;
          align-items: center;
          background: #fff;
          flex-shrink: 0;
          margin-right: 1.5rem; }
          @media only screen and (max-width: 767px) {
            .container .section_csr-list dl > div dd figure {
              width: 10.8rem;
              height: 10.8rem; } }
        .container .section_csr-list dl > div dd p {
          font-size: 1.4rem;
          line-height: 1.6; }
          @media only screen and (max-width: 767px) {
            .container .section_csr-list dl > div dd p {
              font-size: 1.2rem; } }
          .container .section_csr-list dl > div dd p a {
            font-size: 1.2rem;
            color: #fff;
            display: flex;
            justify-content: center;
            align-items: center;
            border-radius: .5rem;
            margin-top: .8rem;
            background: #009933; }
            @media only screen and (max-width: 767px) {
              .container .section_csr-list dl > div dd p a {
                font-size: 1rem; } }
  .container .section_csr-inner {
    padding: 4rem;
    overflow: hidden; }
    @media only screen and (max-width: 767px) {
      .container .section_csr-inner {
        padding: 1.5rem 1.5rem; } }
