@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Racing+Sans+One&family=Roboto:wght@500;700&display=swap");
.figure-center-box {
  display: inline-block;
  position: relative;
  left: 50%;
  transform: translateX(-50%); }
  .figure-center-box .m-list-attention {
    text-align: left; }

.materiality {
  padding-block: 55px;
  border-image-source: linear-gradient(#fafafa, #fafafa);
  border-image-slice: 0 fill;
  border-image-outset: 0 100vw 0 100vw; }
  @media screen and (max-width: 640px) {
    .materiality {
      padding-block: 50px; } }
  .materiality .m-title-borderleft {
    margin-top: unset; }

.relation {
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  padding-top: 30px; }
  @media screen and (max-width: 640px) {
    .relation {
      flex-direction: column;
      gap: 15px;
      padding-top: 20px; } }
  .relation-item {
    flex: 1;
    text-align: center;
    font-weight: bold;
    border: 2px solid #c2c4cc;
    border-top: 7px solid #000;
    background-color: #fff;
    padding: 20px 10px; }
    @media screen and (max-width: 640px) {
      .relation-item {
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 15px;
        text-align: left;
        border-width: 1px;
        border-left-width: 7px !important; } }
    @media screen and (max-width: 640px) {
      .relation-item img {
        width: 43px; } }
    .relation-item__title {
      font-size: 20px;
      font-size: calc($size / 16)rem;
      letter-spacing: 0.06em;
      padding-top: 10px; }
      @media screen and (max-width: 640px) {
        .relation-item__title {
          width: 3.5em;
          font-size: 17px;
          font-size: calc($size / 16)rem;
          padding-top: unset; } }
    .relation-item__text {
      font-size: 14px;
      font-size: calc($size / 16)rem;
      letter-spacing: 0.06em;
      line-height: calc($lin / $fontsize); }
      @media screen and (max-width: 640px) {
        .relation-item__text {
          flex: 1; } }
    .relation-item:nth-of-type(1) {
      border-top-color: #31a85c; }
      @media screen and (max-width: 640px) {
        .relation-item:nth-of-type(1) {
          border-top-color: #c2c4cc;
          border-left-color: #31a85c; } }
      .relation-item:nth-of-type(1) .relation-item__title {
        color: #31a85c; }
    .relation-item:nth-of-type(2) {
      padding: 0;
      border-color: #008cd6;
      background-color: rgba(0, 140, 214, 0.1); }
      @media screen and (max-width: 640px) {
        .relation-item:nth-of-type(2) {
          border-top-color: #008cd6;
          border-width: 2px; } }
      .relation-item:nth-of-type(2) a {
        width: 215px;
        display: block;
        padding: 20px 10px; }
        @media screen and (max-width: 640px) {
          .relation-item:nth-of-type(2) a {
            width: 100%;
            display: flex;
            align-items: center;
            padding: 20px 10px;
            gap: 15px; } }
        .relation-item:nth-of-type(2) a:hover {
          text-decoration: none; }
          .relation-item:nth-of-type(2) a:hover img {
            opacity: 1; }
        .relation-item:nth-of-type(2) a .relation-item__title {
          color: #008cd6; }
    .relation-item:nth-of-type(3) {
      border-top-color: #9c6fde; }
      @media screen and (max-width: 640px) {
        .relation-item:nth-of-type(3) {
          border-top-color: #c2c4cc;
          border-left-color: #9c6fde; } }
      .relation-item:nth-of-type(3) .relation-item__title {
        color: #9c6fde; }
    .relation-item:nth-of-type(4) {
      border-top-color: #e6983c; }
      @media screen and (max-width: 640px) {
        .relation-item:nth-of-type(4) {
          border-top-color: #c2c4cc;
          border-left-color: #e6983c; } }
      .relation-item:nth-of-type(4) .relation-item__title {
        color: #e6983c; }
    .relation-item:nth-of-type(5) {
      border-top-color: #e68abc; }
      @media screen and (max-width: 640px) {
        .relation-item:nth-of-type(5) {
          border-top-color: #c2c4cc;
          border-left-color: #e68abc; } }
      .relation-item:nth-of-type(5) .relation-item__title {
        color: #e68abc; }

.m-title-borderleft .label,
.m-title-borderbottom .label {
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
  color: #fff;
  font-size: 11px;
  font-size: calc($size / 16)rem;
  font-weight: bold;
  letter-spacing: 0.06em;
  background-color: #01709a;
  padding: 2px 5px 0; }

.mfp-zoom-out-cur button {
  font-size: 50px;
  background: #5f6471;
  border-radius: 4px;
  text-align: center !important;
  padding-right: 0 !important;
  width: 50px !important;
  height: 50px;
  right: auto !important;
  left: 0;
  top: 20px;
  position: fixed; }
  @media screen and (max-width: 640px) {
    .mfp-zoom-out-cur button {
      width: 13.33333333333333vw !important;
      height: 13.33333333333333vw;
      top: 5.33333333333333vw; } }
.mfp-zoom-out-cur .mfp-container {
  padding-left: 0 !important;
  padding-right: 0 !important; }

/***********************
排出抑制
***********************/
#csr_ecology_emission .m-pagehead-nav {
  border-image-source: linear-gradient(#fafafa, #fafafa);
  border-image-slice: 0 fill;
  border-image-outset: 0 100vw 0 100vw; }
#csr_ecology_emission .m-section {
  padding-top: unset; }

/***********************
気候変動への対応
***********************/
#csr_ecology_warming .m-pagehead-nav {
  border-image-source: linear-gradient(#fafafa, #fafafa);
  border-image-slice: 0 fill;
  border-image-outset: 0 100vw 0 100vw; }
#csr_ecology_warming .m-section {
  padding-top: unset; }
#csr_ecology_warming .relation-item:nth-of-type(1) {
  padding: 0;
  background-color: rgba(49, 168, 92, 0.1);
  border-color: #31a85c; }
  @media screen and (max-width: 640px) {
    #csr_ecology_warming .relation-item:nth-of-type(1) {
      border-width: 2px; } }
  #csr_ecology_warming .relation-item:nth-of-type(1) a {
    width: 215px;
    display: block;
    padding: 20px 10px; }
    @media screen and (max-width: 640px) {
      #csr_ecology_warming .relation-item:nth-of-type(1) a {
        width: 100%;
        display: flex;
        align-items: center;
        padding: 20px 10px;
        gap: 15px; } }
    #csr_ecology_warming .relation-item:nth-of-type(1) a:hover {
      text-decoration: none; }
      #csr_ecology_warming .relation-item:nth-of-type(1) a:hover img {
        opacity: 1; }
    #csr_ecology_warming .relation-item:nth-of-type(1) a .relation-item__title {
      color: #31a85c; }
#csr_ecology_warming .m-table .m-list-disc {
  padding-top: unset; }
#csr_ecology_warming .m-table__th {
  text-align: center;
  border-right: solid 1px #cdd0d8; }
  @media screen and (max-width: 640px) {
    #csr_ecology_warming .m-table__th {
      width: 140px; } }
  #csr_ecology_warming .m-table__th.b-right-none {
    border-right: none; }
#csr_ecology_warming .warming-images {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 50px;
  padding-top: 50px; }
  @media screen and (max-width: 640px) {
    #csr_ecology_warming .warming-images {
      padding-top: 30px;
      gap: 30px; } }
  @media screen and (max-width: 640px) {
    #csr_ecology_warming .warming-images__item {
      width: calc(50% - 15px);
      text-align: center; } }
@media screen and (max-width: 640px) {
  #csr_ecology_warming .sp-pT15 {
    padding-top: 15px !important; } }
#csr_ecology_warming #sec02 .m-column--col3 {
  justify-content: center; }

/***********************
環境マネジメント
***********************/
#csr_ecology_management .m-pagehead-nav {
  border-image-source: linear-gradient(#fafafa, #fafafa);
  border-image-slice: 0 fill;
  border-image-outset: 0 100vw 0 100vw; }
#csr_ecology_management .m-section {
  padding-top: unset; }
#csr_ecology_management .policy-list {
  counter-reset: number 0;
  padding-top: 30px; }
  @media screen and (max-width: 640px) {
    #csr_ecology_management .policy-list {
      padding-top: 20px; } }
  #csr_ecology_management .policy-list__item {
    font-size: 17px;
    font-size: calc($size / 16)rem;
    letter-spacing: 0.06em;
    line-height: 1.75;
    padding-left: 2.5em;
    position: relative; }
    @media screen and (max-width: 640px) {
      #csr_ecology_management .policy-list__item {
        font-size: 14px;
        font-size: calc($size / 16)rem; } }
    #csr_ecology_management .policy-list__item::before {
      content: '';
      counter-increment: number 1;
      content: "（" counter(number) "）";
      position: absolute;
      left: 0; }
@media screen and (max-width: 640px) {
  #csr_ecology_management img.mT30 {
    margin-top: 15px !important; } }

/***********************
生物多様性保全
***********************/
#csr_ecology_protection #sec01 .m-column--col3 {
  justify-content: center; }
#csr_ecology_protection .protection-img {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 720px;
  margin: auto;
  gap: 23px; }
  @media screen and (max-width: 640px) {
    #csr_ecology_protection .protection-img {
      width: 100%; } }
