@charset "utf-8";

/*-------------------------------------
リセットCSS
-------------------------------------*/

p,
table,
blockquote,
address,
pre,
iframe,
form,
figure,
dl {
  margin: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  line-height: inherit;
  font-weight: inherit;
  margin: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.p-sustainability-main img {
  width: 100%;
  height: auto;
  object-fit: cover;
}

.p-sustainability-main a {
  border: none;
  display: inline-block;
}
.p-sustainability-main a:hover {
  text-decoration: none;
}

.p-sustainability-main a {
  transition: 0.6s;
}
.p-sustainability-main a:hover {
  opacity: 0.6;
}




/*-------------------------------------
共通
-------------------------------------*/

:root {
  --NotoSans: 'Noto Sans JP', sans-serif;
  --NotoSerif: 'Noto Serif JP', serif;
}

.p-sustainability-main {
  padding-top: 70px;
  overflow: hidden;
}

.p-sustainability-common__fv {
  display: flex;
}

.p-sustainability-common__fv__body {
  padding-left: min(calc(100 / 1400 * 100vw), 100px);
  width: 47%;
  background-color: #009fe6;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.p-sustainability-common__fv__image {
  width: 53%;
}

.p-sustainability-common-lead {
  margin-top: 75px;
}

.p-sustainability-common-lead__text {
  font-size: 18px;
  line-height: calc(34 / 18);
  color: #222222;
}

.p-sustainability-common-inner {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 min(calc(100 / 1400 * 100vw), 100px);
}

.p-sustainability-breadcrumbs {
  margin-top: 13px;
}

.p-sustainability-breadcrumbs__list {
  display: flex;
  flex-wrap: wrap;
}

.p-sustainability-breadcrumbs__item {
  font-size: 14px;
  color: #282728;
}
.p-sustainability-breadcrumbs__item:not(:first-child) {
  margin-left: 25px;
  position: relative;
}
.p-sustainability-breadcrumbs__item:not(:first-child)::before {
  position: absolute;
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
  content: "＞";
  font-size: 14px;
}

.p-sustainability-breadcrumbs__link {
  color: #282728;
}
.p-sustainability-main .p-sustainability-breadcrumbs__link {
  transition: 0s;
}
.p-sustainability-main .p-sustainability-breadcrumbs__link:hover {
  text-decoration: underline;
  opacity: 1;
}

.p-sustainability-common-title {
  font-size: 34px;
  letter-spacing: 0.01em;
  color: #222222;
  padding-bottom: 15px;
  position: relative;
}
.p-sustainability-common-title::before {
  position: absolute;
  bottom: 2px;
  left: 0;
  transform: translateY(-50%);
  content: "";
  width: 100%;
  height: 1px;
  background-color: #333333;
}
.p-sustainability-common-title::after {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 140px;
  height: 5px;
}
.p-sustainability-common-title--orange::after {
  background-color: #c09f57;
}
.p-sustainability-common-title--blue::after {
  background-color: #0279c4;
}
.p-sustainability-common-title--black::after {
  background-color: #333333;
}

.p-sustainability-common-heading {
  padding-left: 20px;
  font-weight: bold;
  font-size: 24px;
  line-height: calc(34 / 24);
  letter-spacing: 0.04em;
  color: #222222;
  position: relative;
}
.p-sustainability-common-heading::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 5px;
  height: 100%;
  background-color: #a07f48;
}

.p-sustainability-common-content {
  margin-top: 25px;
}

.p-sustainability-common-content__text {
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}

.p-sustainability-common-content__text__small {
  font-size: 12px;
}

.p-sustainability-common-content__text--red {
  color: #1a741e;
}

.p-sustainability-common-dot-list {
  padding-left: 20px;
  font-size: 16px;
  color: #222222;
  position: relative;
}
.p-sustainability-common-dot-list::before {
  position: absolute;
  top: 5px;
  left: 0;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #a07f48;
}
.p-sustainability-common-dot-list:not(:first-child) {
  margin-top: 10px;
}

.p-sustainability-common-button-zone {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 25px 30px;
}
.p-sustainability-common-button-zone.p-sustainability-common-button-zone--environment {
  column-gap: 25px;
}

.p-sustainability-main .p-sustainability-common-button {
  width: 300px;
  height: 80px;
  border: 4px solid #ededed;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-sustainability-main .p-sustainability-common-button.p-sustainability-common-button--current {
  border: 4px solid #e8dcc2;
}
.p-sustainability-main .p-sustainability-common-button-zone--environment .p-sustainability-common-button {
  width: 220px;
}

.p-sustainability-common-button span {
  padding-left: 15px;
  font-size: 16px;
  color: #222222;
  position: relative;
}
.p-sustainability-common-button.p-sustainability-common-button--current span {
  padding-left: 0;
}
.p-sustainability-common-button span::before {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 6px solid transparent;
  border-bottom: 6px solid transparent;
  border-left: 10px solid #222222;
  border-right: 0;
}
.p-sustainability-common-button.p-sustainability-common-button--current span::before {
  display: none;
}

.p-sustainability-common-content__block {
  margin-top: 20px;
}

.p-sustainability-common-content__block__title {
  font-weight: 700;
  font-size: 22px;
  color: #a07f48;
}

.u-md-show {
  display: none;
}


@media screen and (max-width: 904px) {

  .p-sustainability-main {
    padding-top: 120px;
  }

}


@media screen and (max-width: 767px) {

  .p-sustainability-main {
    padding-top: 70px;
  }

  .p-sustainability-common__fv__body {
    width: 55%;
  }

  .p-sustainability-common__fv__image {
    width: 45%;
    height: auto;
    aspect-ratio: 5 / 3;
  }

  .p-sustainability-main .p-sustainability-common__fv__image img {
    height: 100%;
  }

  .p-sustainability-common-lead {
    margin-top: 40px;
  }

  .p-sustainability-common-lead__text {
    font-size: 14px;
  }

  .p-sustainability-common-inner {
    padding: 0 15px;
  }

  .p-sustainability-breadcrumbs__item {
    font-size: 10px;
  }
  .p-sustainability-breadcrumbs__item:not(:first-child) {
    margin-left: 18px;
  }
  .p-sustainability-breadcrumbs__item:not(:first-child)::before {
    left: -13px;
    font-size: 10px;
  }

  .p-sustainability-common-title {
    font-size: 24px;
    padding-bottom: 8px;
  }
  .p-sustainability-common-title::after {
    width: 80px;
  }

  .p-sustainability-common-heading {
    padding-left: 15px;
    font-size: 20px;
  }

  .p-sustainability-common-content {
    margin-top: 15px;
  }

  .p-sustainability-common-content__text {
    font-size: 14px;
  }

  .p-sustainability-common-content__text__small {
    font-size: 10px;
  }

  .p-sustainability-main .p-sustainability-common-button,
  .p-sustainability-main .p-sustainability-common-button-zone--environment .p-sustainability-common-button {
    width: 240px;
    height: 65px;
  }

  .p-sustainability-common-button span {
    font-size: 14px;
  }
  .p-sustainability-common-button span::before {
    top: 49%;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-left: 8px solid #222222;
  }

  .u-md-show {
    display: block;
  }
  .u-md-none {
    display: none;
  }

}





/*-------------------------------------
サステナビリティ トップ
-------------------------------------*/

.p-sustainability-top__fv {
  width: 100%;
  height: 265px;
  background-image: url(../img/index/top_fv.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  display: flex;
  justify-content: center;
  align-items: center;
}

.p-sustainability-top__fv__body {
  padding-top: 18px;
}

.p-sustainability-top__fv__title {
  text-align: center;
  font-size: 46px;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1.217;
  text-shadow: 0px 0px 55.9px rgba(115, 155, 166, 0.38);
}

.p-sustainability-top__fv__subTitle {
  margin: 5px 0 0;
  text-align: center;
  font-size: 20px;
  color: #fff;
  letter-spacing: 0.1em;
}


@media screen and (max-width: 767px) {

  .p-sustainability-top__fv__title {
    font-size: 32px;
  }

  .p-sustainability-top__fv__subTitle {
    font-size: 16px;
  }

}





/*-------------------------------------
山九のサステナビリティ
-------------------------------------*/

.p-sustainability-top__sustainability {
  padding-top: 73px;
}

.p-sustainability-top__sustainability__container {
  margin-top: 35px;
  display: flex;
  justify-content: space-between;
}

.p-sustainability-main .p-sustainability-top__sustainability__link {
  width: calc((100% - 40px) / 2);
  border: 1px solid rgb(232, 232, 232);
  box-shadow: 0px 3px 9.8px 0.2px rgba(0, 0, 0, 0.06);
}

.p-sustainability-top__sustainability__text {
  padding: 20px;
  font-weight: bold;
  font-size: 24px;
  letter-spacing: 0.04em;
  color: #222222;
}


@media screen and (max-width: 767px) {

  .p-sustainability-top__sustainability__container {
    flex-direction: column;
    row-gap: 30px;
  }

  .p-sustainability-main .p-sustainability-top__sustainability__link {
    width: 100%;
  }

  .p-sustainability-top__sustainability__text {
    padding: 12px;
    font-size: 16px;
  }

}





/*-------------------------------------
「特集」人が動かす山九のビジネス
-------------------------------------*/

.p-sustainability-top__special {
  margin-top: 76px;
}

.p-sustainability-top__special-bgTitle {
  display: inline-block;
  padding: 5px 10px;
  background-color: #333;
  font-size: 20px;
  line-height: 1;
  color: #fff;
  margin-right: 11px;
}

.p-sustainability-top__special-wrapper {
  margin-top: 13px;
  padding: 24px 21px 21px;
  background-color: #e2edf1;
}

.p-sustainability-top__special-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 14px;
}

.p-sustainability-top__special-item {
  width: 220px;
}

.p-sustainability-main a.p-sustainability-top-special-link {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.p-sustainability-top__special-body {
  flex: 1;
  background-color: #fff;
  padding: 8px;
  position: relative;
}
.p-sustainability-top__special-body::before {
  position: absolute;
  bottom: 5px;
  right: 5px;
  content: "";
  width: 14px;
  height: auto;
  aspect-ratio: 1 / 1;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
  background-color: #0279c4;
}
.p-sustainability-top__special-item:nth-child(1) .p-sustainability-top__special-body::before {
  background-color: #ad842c;
}

.p-sustainability-top__special-title {
  margin-top: 12px;
  text-align: center;
  font-weight: 700;
  font-size: 14px;
  color: #0279c4;
}
.p-sustainability-top__special-item:nth-child(1) .p-sustainability-top__special-title {
  color: #ad842c;
}

.p-sustainability-top__special-text {
  padding: 5px;
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #333;
}


@media screen and (max-width: 767px) {


}





/*-------------------------------------
サステナビリティ活動
-------------------------------------*/

.p-sustainability-top__activity {
  margin-top: 76px;
  padding: 68px 0 75px;
  background-color: #e2edf1;
}

.p-sustainability-top__activity__list {
  margin-top: 35px;
  display: flex;
  flex-wrap: wrap;
  gap: 38px;
}

.p-sustainability-top__activity__item {
  width: 374px;
  display: flex;
  flex-direction: column;
}

.p-sustainability-top__activity__heading {
  aspect-ratio: 374 / 200;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}
.p-sustainability-top__activity__item:nth-child(1) .p-sustainability-top__activity__heading {
  background-image: url(../img/index/top_environment.jpg);
}
.p-sustainability-top__activity__item:nth-child(2) .p-sustainability-top__activity__heading {
  background-image: url(../img/index/top_society.jpg);
}
.p-sustainability-top__activity__item:nth-child(3) .p-sustainability-top__activity__heading {
  background-image: url(../img/index/top_governance.jpg);
}

.p-sustainability-top__activity__subTitle {
  padding-top: 7%;
  font-weight: bold;
  font-size: 32px;
  color: #fff;
  text-transform: uppercase;
}

.p-sustainability-top__activity__title {
  font-size: 20px;
  color: #fff;
  letter-spacing: 0.1em;
}

.p-sustainability-top__activity__link-list {
  flex: 1;
  padding: 24px 30px 30px;
  background-color: #fff;
}

.p-sustainability-top__activity__link-item {
  padding-left: 20px;
  position: relative;
}
.p-sustainability-top__activity__link-item::before {
  position: absolute;
  top: 7px;
  left: 0;
  transform: rotate(45deg);
  content: "";
  width: 9px;
  height: 9px;
  border-top: 1px solid #0279c4;
  border-right: 1px solid #0279c4;
}
.p-sustainability-top__activity__link-item:not(:first-child) {
  margin-top: 8px;
}

.p-sustainability-top__activity__link {
  font-size: 16px;
  line-height: 1.5;
  color: #222222;
}


@media screen and (max-width: 767px) {

  .p-sustainability-top__activity__item {
    width: 100%;
  }

  .p-sustainability-top__special-list {
    gap: 25px;
  }

  .p-sustainability-top__special-item {
    width: 100%;
    max-width: 500px;
    margin-inline: auto;
  }

}





/*-------------------------------------
統合報告書
-------------------------------------*/

.p-sustainability-top__bottom {
  padding-top: 85px;
  padding-bottom: 105px;
}

.p-sustainability-top__bottom__item {
  width: 420px;
  margin-inline: auto;
  height: 80px;
}

.p-sustainability-main .p-sustainability-top__bottom__link {
  width: 100%;
  height: 100%;
  border: 4px solid #ededed;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--NotoSans);
  font-weight: 700;
  font-size: 24px;
  letter-spacing: 0.04em;
  color: #333;
  position: relative;
}
.p-sustainability-top__bottom__link::before {
  position: absolute;
  top: 7px;
  right: 9px;
  content: "";
  width: 15px;
  height: 13px;
  background-image: url(../img/index/icon_newTab.png);
  background-repeat: no-repeat;
  background-size: contain;
}


@media screen and (max-width: 767px) {

  .p-sustainability-top__bottom {
    padding-top: 50px;
    padding-bottom: 50px;
  }

  .p-sustainability-top__bottom__item {
    width: 300px;
  }

}





/*-------------------------------------
サステナビリティ マネジメント
-------------------------------------*/

.p-sustainability-management__fv__title {
  padding-top: 1vw;
  font-size: calc(42 / 1400 * 100vw);
  line-height: calc(56 / 42);
  letter-spacing: 0.04em;
  color: #fff;
}

.p-sustainability-management__fv__subTitle {
  margin-top: 0.5vw;
  font-size: calc(16 / 1400 * 100vw);
  letter-spacing: 0.1em;
  color: #99d5f0;
}

.p-sustainability-management__wrapper {
  margin-top: 45px;
}

.p-sustainability-management__wrapper__container {
  padding: 0 8px 8px;
  background-color: #f4ede0;
}

.p-sustainability-management__wrapper__body {
  padding: 0 25px 30px;
  background-color: #fff;
  position: relative;
}
.p-sustainability-management__wrapper__body::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 8px;
  background-color: #f4ede0;
  z-index: 1;
}

.p-sustainability-management__wrapper__en {
  font-family: var(--NotoSerif);
  font-weight: 500;
  font-size: 55px;
  color: #f4ede0;
  margin-left: -34px;
  letter-spacing: 0.01em;
  transform: translateY(-10px);
}

.p-sustainability-management__wrapper__title {
  text-align: center;
  margin-top: -8px;
  font-size: min(3.4vw, 34px);
  color: #222222;
  margin-bottom: 20px;
}

.p-sustainability-management__wrapper__text {
  margin-top: 20px;
  font-size: 18px;
  line-height: calc(34 / 18);
  color: #222222;
}

.p-sustainability-management__wrapper__bottom {
  padding: 40px 52px 30px;
}

.p-sustainability-management__wrapper__bottom-title {
  font-weight: 700;
  font-size: 24px;
  line-height: calc(34 / 24);
  color: #222222;
}

.p-sustainability-management__wrapper__list {
  margin-top: 40px;
}

.p-sustainability-management__wrapper__item:not(:first-child) {
  margin-top: 20px;
  padding-top: 25px;
  border-top: 1px solid #b6ad9c;
}

.p-sustainability-management__wrapper__heading-zone {
  display: flex;
  padding-left: 5px;
}

.p-sustainability-management__wrapper__number {
  width: 26px;
  height: 26px;
  padding-bottom: 1px;
  background-color: #a07f48;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: var(--NotoSans);
  font-weight: 700;
  font-size: 20px;
  color: #fff;
}

.p-sustainability-management__wrapper__heading {
  flex: 1;
  margin-left: 10px;
  font-weight: 700;
  font-size: 20px;
  line-height: calc(26 / 20);
  color: #222222;
}

.p-sustainability-management__wrapper__detail {
  margin-top: 5px;
  margin-left: 35px;
  font-size: 16px;
  line-height: 1.5;
  color: #222222;
}

.p-sustainability-management__section {
  margin-top: 53px;
}

.p-sustainability-management__section__image {
  margin: 40px auto 0;
  max-width: 940px;
}

.p-sustainability-management__bottom {
  margin-top: 95px;
  padding-bottom: 70px;
  position: relative;
  z-index: 9;
}

.p-sustainability-management__materiality-image__title {
  margin-top: 80px;
  margin-bottom: 10px;
  padding-left: 12px;
  font-size: 16px;
  color: #222222;
  position: relative;
}
.p-sustainability-management__materiality-image__title::before {
  position: absolute;
  top: 5px;
  left: 0;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #983334;
}

.p-sustainability-management__mapping {
  margin-top: 80px;
  padding-bottom: 57px;
}

.p-sustainability-management__mapping__container {
  padding: 36px 33px 33px;
  background-color: #f4ede0;
}

.p-sustainability-management__mapping__title {
  font-size: min(3.4vw, 34px);
  color: #222222;
}

.p-sustainability-management__mapping__wrapper {
  margin-top: 26px;
  padding: 45px 13% 40px;
  background-color: #fff;
}


@media screen and (max-width: 767px) {

  .p-sustainability-management__fv__title {
    font-size: 4.5vw;
  }

  .p-sustainability-management__fv__subTitle {
    font-size: 2.3vw;
  }

  .p-sustainability-management__wrapper__body {
    padding: 0 0 20px;
  }

  .p-sustainability-management__wrapper__body .p-sustainability-management__materiality-scroll {
    padding-inline: 9%;
  }

  .p-sustainability-management__wrapper__en {
    font-size: 26px;
    margin-left: -3px;
    transform: translateY(-1px);
  }

  .p-sustainability-management__wrapper__title {
    margin-top: 10px;
    font-size: 18px;
  }

  .p-sustainability-management__wrapper__text {
    font-size: 14px;
  }

  .p-sustainability-management__wrapper__bottom {
    padding: 20px 10px;
  }

  .p-sustainability-management__wrapper__bottom-title {
    font-weight: 700;
    font-size: 18px;
  }

  .p-sustainability-management__wrapper__list {
    margin-top: 30px;
  }

  .p-sustainability-management__wrapper__number {
    width: 20px;
    height: 20px;
    font-size: 16px;
  }

  .p-sustainability-management__wrapper__heading {
    font-size: 16px;
  }

  .p-sustainability-management__wrapper__detail {
    margin-left: 30px;
    font-size: 14px;
  }

  .p-sustainability-management__bottom {
    margin-top: 60px;
  }

  .p-sustainability-management__mapping {
    padding-bottom: 40px;
  }

  .p-sustainability-management__mapping__container {
    padding: 20px 15px;
  }

  .p-sustainability-management__mapping__title {
    font-size: 20px;
  }

  .p-sustainability-management__mapping__wrapper {
    margin-top: 16px;
    padding: 25px 9%;
  }

  .p-sustainability-management__mapping__image {
    width: 500px;
    margin: 0 auto;
  }

  .p-sustainability-management__materiality-scroll {
    overflow: auto;
  }

  .p-sustainability-management__materiality-image01,
  .p-sustainability-management__materiality-image02 {
    width: 800px;
  }

}





/*-------------------------------------
環境マネジメント
-------------------------------------*/

.p-sustainability-environment__fv__subTitle {
  margin-top: 1.2vw;
  font-size: calc(16 / 1400 * 100vw);
  letter-spacing: 0.1em;
  color: #fff;
  text-transform: uppercase;
}

.p-sustainability-environment__fv__title {
  padding-top: 1vw;
  font-size: calc(42 / 1400 * 100vw);
  line-height: calc(56 / 42);
  letter-spacing: 0.04em;
  color: #fff;
}

.p-sustainability-environment__wrapper {
  margin-top: 35px;
}

.p-sustainability-environment__wrapper__container {
  padding: 50px 53px 55px;
  background-color: #f4ede0;
}

.p-sustainability-environment01__flex {
  display: flex;
}
.p-sustainability-environment01__flex:not(:first-child) {
  margin-top: 50px;
}

.p-sustainability-environment01__body {
  flex: 1;
}

.p-sustainability-environment__title {
  font-weight: 700;
  font-size: 24px;
  color: #222222;
}

.p-sustainability-environment__text {
  margin-top: 5px;
  font-size: 18px;
  line-height: calc(34 / 18);
  color: #222222;
}
.p-sustainability-environment__text__small {
  font-size: 14px;
}

.p-sustainability-environment01__list {
  margin-top: 30px;
}

.p-sustainability-environment01__image01 {
  width: 26%;
  margin-top: 8px;
  margin-left: 52px;
}

.p-sustainability-environment01__image02 {
  width: 26%;
  margin-left: 35px;
  margin-top: 5px;
}

.p-sustainability-environment__small-text {
  margin-top: 5px;
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}
.p-sustainability-environment__small-text__caution {
  font-size: 10px;
  display: inline-block;
  transform: translateY(-5px);
}

.p-sustainability-environment__caution-text {
  margin-top: 12px;
  padding-left: 15px;
  font-size: 14px;
  line-height: calc(24 / 14);
  color: #666666;
  position: relative;
}
.p-sustainability-environment__caution-text::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "※";
  font-size: 14px;
  color: #666666;
}

.p-sustainability-environment__bottom-image {
  margin-top: 40px;
}

.p-sustainability-environment01__group-list {
  margin-top: 30px;
  display: flex;
}

.p-sustainability-environment01__group-item01 {
  width: 440px;
  margin-right: 55px;
}

.p-sustainability-environment01__group-item02 {
  width: 705px;
  flex: 1;
}

.p-sustainability-environment01__group-item__name {
  margin-top: 16px;
  font-size: 14px;
  color: #222222;
}


@media screen and (max-width: 767px) {

  .p-sustainability-environment__fv__title {
    font-size: 4.5vw;
  }

  .p-sustainability-environment__fv__subTitle {
    font-size: 2.3vw;
  }

  .p-sustainability-environment__wrapper__container {
    padding: 15px;
  }

  .p-sustainability-environment01__flex {
    flex-direction: column;
  }

  .p-sustainability-environment__title {
    font-size: 18px;
  }

  .p-sustainability-environment__text {
    font-size: 16px;
  }
  .p-sustainability-environment__text__small {
    font-size: 12px;
  }

  .p-sustainability-environment__caution-text {
    font-size: 12px;
  }

  .p-sustainability-environment01__image01,
  .p-sustainability-environment01__image02 {
    width: 170px;
    margin: 30px auto 0;
  }

  .p-sustainability-common-content__block__title {
    font-size: 20px;
  }

  .p-sustainability-environment01__group-list {
    flex-direction: column;
  }

  .p-sustainability-environment01__group-item01 {
    width: 100%;
    margin-right: 0;
  }
  .p-sustainability-environment01__group-item02 {
    width: 100%;
    margin-right: 0;
    margin-top: 30px;
  }

  .p-sustainability-environment01__group-item__name {
    margin-top: 8px;
    font-size: 12px;
  }

}





/*-------------------------------------
カーボンニュートラルへの対応
-------------------------------------*/

.p-sustainability-environment02__flex01 {
  margin-top: 30px;
  display: flex;
}

.p-sustainability-environment02__flex01__image01 img {
  margin-top: 30px;
}

.p-sustainability-environment02__flex01__text01 {
  font-weight: 700;
  font-size: min(2.2vw, 22px);
  letter-spacing: 0.04em;
  color: #010101;
}
.p-sustainability-environment02__flex01__text01__small {
  font-size: min(1.8vw, 18px);
}

.p-sustainability-environment02__flex01__image02 {
  margin-top: 62px;
}

.p-sustainability-environment02__flex01__text02 {
  text-align: right;
  font-size: 17px;
}

.p-sustainability-environment02__flex02 {
  margin-top: 60px;
  display: flex;
  column-gap: 36px;
}

.p-sustainability-environment02__flex02__body,
.p-sustainability-environment02__flex02__image {
  width: 50%;
}

.p-sustainability-environment02__flex02__list {
  margin-top: 20px;
}

.p-sustainability-environment02__flex02__text {
  font-weight: 700;
  font-size: 17px;
  line-height: 1;
}


@media screen and (max-width: 767px) {

  .environment02-title-br {
    display: none;
  }

  .p-sustainability-environment02__flex01 {
    flex-direction: column;
  }

  .p-sustainability-environment02__flex01__text01 {
    font-size: 16px;
  }
  .p-sustainability-environment02__flex01__text01__small {
    font-size: 12px;
  }

  .p-sustainability-environment02__flex01__text02 {
    font-size: 12px;
  }

  .p-sustainability-environment02__flex02 {
    flex-direction: column;
    row-gap: 20px;
  }

  .p-sustainability-environment02__flex02__body,
  .p-sustainability-environment02__flex02__image {
    width: 100%;
  }

  .p-sustainability-environment02__flex02__text {
    font-size: 12px;
  }

}





/*-------------------------------------
資源循環への取り組み
-------------------------------------*/

.p-sustainability-environment03__flex {
  margin-top: 35px;
  display: flex;
}

.p-sustainability-environment03__flex__body {
  flex: 1;
}

.p-sustainability-environment03__flex__body .p-sustainability-common-content__text {
  margin-top: 8px;
}

.p-sustainability-environment03__flex__image01 {
  width: 350px;
  max-width: 40%;
  margin-top: 8px;
  margin-left: 25px;
}
.p-sustainability-environment03__flex__image02 {
  width: 250px;
  max-width: 30%;
  margin-top: 2px;
  margin-left: 25px;
}

.p-sustainability-environment03__flex__detail {
  margin-top: 10px;
  font-size: 14px;
  color: #222222;
}


@media screen and (max-width: 767px) {

  .p-sustainability-environment03__flex {
    flex-direction: column;
  }

  .p-sustainability-environment03__flex__image01 {
    width: 100%;
    max-width: 400px;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }

  .p-sustainability-environment03__flex__image02 {
    width: 80%;
    max-width: 300px;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }

}





/*-------------------------------------
生物多様性への対応
-------------------------------------*/

.p-sustainability-environment05__flex {
  display: flex;
  gap: 25px 30px;
}

.p-sustainability-environment05__flex__body {
  width: calc((100% - 30px * 2) / 3);
}

.p-sustainability-environment05__flex__detail {
  margin-top: 10px;
  font-size: 14px;
  color: #222222;
}


@media screen and (max-width: 767px) {

  .p-sustainability-environment05__flex {
    flex-direction: column;
  }

  .p-sustainability-environment05__flex__body {
    width: 100%;
    max-width: 500px;
    margin-inline: auto;
  }

}




/*-------------------------------------
お客様とともに
-------------------------------------*/

.p-sustainability-anchorLink {
  margin-top: 85px;
  border: 4px solid #ededed;
}

.p-sustainability-anchorLink__list {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 20px 10px;
  gap: 20px 40px;
}

.p-sustainability-anchorLink__link {
  padding-left: 24px;
  font-size: 18px;
  color: #222222;
  position: relative;
}
.p-sustainability-anchorLink__link::before {
  position: absolute;
  top: 9px;
  left: 0;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 7px solid transparent;
  border-left: 7px solid transparent;
  border-top: 10px solid #222222;
  border-bottom: 0;
}

.p-sustainability-society__quality {
  margin-top: -40px;
  padding-top: 80px;
}

.p-sustainability-society__quality__flex {
  display: flex;
  column-gap: 55px;
}

.p-sustainability-society__quality__body01 {
  width: 35%;
  max-width: 370px;
}

.p-sustainability-society__quality__image01 {
  width: 79%;
  margin: 35px auto 0;
}

.p-sustainability-society__quality__body02 {
  flex: 1;
}

.p-sustainability-society__quality__image02 {
  width: 90%;
  margin: 35px auto 0;
}

.p-sustainability-society__block01 {
  margin-top: 70px;
}

.p-sustainability-society__block02 {
  margin-top: 35px;
}

.p-sustainability-society__block03 {
  margin-top: 20px;
  margin-left: 10px;
}

.p-sustainability-society__bottom-block {
  display: flex;
}
.p-sustainability-society__bottom-block:not(:first-child) {
  margin-top: 17px;
}

.p-sustainability-society__bottom-body {
  flex: 1;
}

.p-sustainability-society__bottom-image {
  width: 275px;
  max-width: 40%;
  margin-top: 10px;
  margin-left: 50px;
}

.p-sustainability-society__satisfaction {
  padding-top: 80px;
}

.p-sustainability-common-button.p-sustainability-common-button--four {
  width: 277px;
}

.p-sustainability-society__respect {
  margin-top: -40px;
  padding-top: 80px;
}

.p-sustainability-society__respectLink {
  font-size: 16px;
  color: #3399cc;
  text-decoration-line: underline;
}

.p-sustainability-society__harassment,
.p-sustainability-society__diversity {
  padding-top: 70px;
}

.p-sustainability-society__workplace {
  padding-top: 80px;
}

.p-sustainability-society__workplace__container {
  margin-top: 22px;
  border: 2px solid #a07f48;
  padding: 30px 4.2% 40px;
}

.p-sustainability-society__workplace__container-title {
  font-weight: 700;
  font-size: 20px;
  color: #222222;
  padding-bottom: 20px;
  border-bottom: 2px solid #a07f48;
}

.p-sustainability-society__workplace__container-list {
  margin-top: 30px;
  display: flex;
  flex-wrap: wrap;
  width: 97%;
  gap: 7px 8px;
}

.p-sustainability-society__workplace__container-list .p-sustainability-common-dot-list:not(:first-child) {
  margin-top: 0;
}

.p-sustainability-society__workplace__container-item {
  width: calc((100% - 8px) / 2);
}

.p-sustainability-society__workplace__flex {
  margin-top: 55px;
  display: flex;
  justify-content: space-between;
  column-gap: 46px;
}

.p-sustainability-society__workplace__name {
  font-size: 20px;
  padding-bottom: 15px;
  border-bottom: 2px solid #000;
}

.p-sustainability-society__workplace__image {
  margin-top: 15px;
}

.p-sustainability-society__development {
  padding-top: 80px;
}

.p-sustainability-society__development__image {
  width: 90%;
  margin: 50px auto 0;
}

.p-sustainability-society__development__caution {
  display: inline-block;
  margin-left: 5%;
  margin-top: 13px;
  font-size: 14px;
  color: #222222;
}

.p-sustainability-society__development__space {
  margin-top: 60px;
}

.p-sustainability-society__development__facility-list {
  margin-top: 10px;
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}

.p-sustainability-society__development__facility-item {
  width: 370px;
  max-width: 100%;
}

.p-sustainability-society__development__facility-name {
  margin-top: 18px;
  margin-left: 5px;
  padding-left: 25px;
  font-size: 20px;
  color: #222222;
  position: relative;
}
.p-sustainability-society__development__facility-name::before {
  position: absolute;
  top: 7px;
  left: 0;
  content: "";
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background-color: #a07f48;
}

.p-sustainability-society__development__facility-text {
  margin-top: 10px;
  font-size: 16px;
  line-height: calc(26 / 16);
  color: #222222;
}

.p-sustainability-society__development__facility-container {
  margin-top: 75px;
  padding: 40px 45px 30px;
  background-color: #f0f0f0;
  display: flex;
}

.p-sustainability-society__development__facility-container-body {
  flex: 1;
}

.p-sustainability-society__development__facility-container-text {
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}

.p-sustainability-society__development__facility-container-image {
  width: 330px;
  max-width: 40%;
  margin-left: 50px;
}

.p-sustainability-society__safety {
  padding-top: 100px;
}

.p-sustainability-society__safety__flex01 {
  display: flex;
}

.p-sustainability-society__safety__flex01-body {
  width: 70%;
}

.p-sustainability-society__safety__flex01-bottom {
  margin-bottom: 30px;
}

.p-sustainability-society__safety__flex01-image {
  flex: 1;
  margin-top: 25px;
  margin-left: 3%;
}

.p-sustainability-society__safety__column-title {
  margin-top: 35px;
  font-weight: 700;
  font-size: 20px;
  color: #222222;
}

.p-sustainability-society__safety__column-image {
  margin-top: 10px;
}

.p-sustainability-society__safety__flex02-zone-br {
  display: none;
}

.p-sustainability-society__safety__flex02 {
  display: flex;
  margin-top: 10px;
}

.p-sustainability-society__safety__flex02-wide {
  width: 100%;
}

.p-sustainability-society__safety__flex02-left {
  width: 43%;
}

.p-sustainability-society__safety__flex02-right {
  margin-left: 1.5%;
  flex: 1;
  max-width: 470px;
}

.p-sustainability-society__safety__flex02-title {
  display: inline-block;
  font-weight: 700;
  font-size: 18px;
  line-height: calc(30 / 16);
  color: #222222;
}
.p-sustainability-society__safety__flex02-title01,
.p-sustainability-society__safety__flex02-title02 {
  position: relative;
}
.p-sustainability-society__safety__flex02-title01::before,
.p-sustainability-society__safety__flex02-title02::before {
  position: absolute;
  top: 0;
  left: calc(100% - 5px);
  width: max-content;
  font-size: 14px;
  color: #cc3333;
}
.p-sustainability-society__safety__flex02-title01::before {
  content: "＊1";
}
.p-sustainability-society__safety__flex02-title02::before {
  content: "＊2";
}

.p-sustainability-society__safety__flex02 .p-sustainability-common-content__text {
  padding-left: 8px;
}

.p-sustainability-society__safety__flex02-caution {
  margin-top: 45px;
}

.p-sustainability-society__safety__flex02-cautionItem {
  display: inline-block;
  padding-left: 8px;
  font-size: 14px;
  line-height: calc(24 / 14);
  color: #cc3333;
}

.p-sustainability-society__safety__flex02-box {
  margin-top: 24px;
  margin-left: 8px;
}

.p-sustainability-society__safety__flex02-boxTitle {
  padding: 12px 20px;
  background-color: #2d6798;
  font-weight: 700;
  font-size: 18px;
  color: #fff;
}

.p-sustainability-society__safety__flex02-boxItem {
  padding: 3px 20px;
  background-color: #fff;
  border: 1px solid #c9c9c9;
  border-top: none;
  font-size: 16px;
}

.p-sustainability-society__safety__flex02-bottom {
  margin-top: 45px;
  margin-left: 8px;
  font-size: 16px;
}

.p-sustainability-society__safety__flex02-bottomLink {
  color: #3399cc;
  padding-bottom: 1px;
  position: relative;
}
.p-sustainability-society__safety__flex02-bottomLink::before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background-color: #3399cc;
}

.p-sustainability-society__safety__flex02-bottomLink:hover {
  color: #3399cc;
}

.p-sustainability-society__safety__flex03 {
  margin-top: 70px;
  display: flex;
  justify-content: space-between;
}

.p-sustainability-society__safety__flex03-left {
  width: 47%;
}

.p-sustainability-society__safety__flex03-right--sp {
  display: none;
}
.p-sustainability-society__safety__flex03-right {
  margin-top: 15px;
  width: 50%;
}

.p-sustainability-society__safety__flex03-title {
  font-weight: 700;
  font-size: 24px;
  color: #252e57;
  margin-bottom: 8px;
}

.p-sustainability-society__safety__flex03__caution {
  margin-top: 35px;
  margin-left: 1%;
  font-size: 14px;
  line-height: 1.7;
  color: #222222;
  display: inline-block;
}

.p-sustainability-society__safety__list {
  margin-top: 30px;
}

.p-sustainability-society__safety__item-detail {
  margin-top: 7px;
  font-size: 16px;
  line-height: calc(26 / 16);
  color: #222222;
}

.p-sustainability-society__safety__flex04 {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
}

.p-sustainability-society__safety__flex04-title {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.5;
  color: #222222;
  margin-bottom: 20px;
}

.p-sustainability-society__safety__bottom {
  margin-top: 60px;
}

.p-sustainability-society__client {
  padding-top: 80px;
}

.p-sustainability-society__client-wrapper__list {
  margin-top: 30px;
}

.p-sustainability-society__client-wrapper__item:not(:first-child) {
  margin-top: 55px;
}

.p-sustainability-society__client__heading-zone {
  padding-bottom: 15px;
  border-bottom: 1px solid #b6ad9c;
}

.p-sustainability-society__client-wrapper__detail {
  margin-top: 20px;
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}

.p-sustainability-society__client-wrapper__flex {
  margin-top: 30px;
  display: flex;
}

.p-sustainability-society__client-wrapper__left {
  width: 106px;
}

.p-sustainability-society__client-wrapper__left-text {
  margin-top: 5px;
  height: 49px;
  background-color: #fff;
  text-align: center;
  font-weight: 700;
  font-size: 18px;
  line-height: 49px;
  color: #222222;
}

.p-sustainability-society__client-wrapper__right {
  margin-left: 33px;
  flex: 1;
}

.p-sustainability-society__client-number__list {
  margin-top: 45px;
}

.p-sustainability-society__client-number__item:not(:first-child) {
  margin-top: 20px;
}

.p-sustainability-society__client-number__title {
  font-weight: 700;
  font-size: 18px;
  color: #222222;
}

.p-sustainability-society__client-number__text {
  margin-top: 5px;
  padding-left: 24px;
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}

.p-sustainability-society__client-bottom__list {
  margin-top: 20px;
}

.p-sustainability-society__partner {
  margin-top: -30px;
  padding-top: 100px;
}

.p-sustainability-society__client-group__list {
  margin-top: 70px;
}

.p-sustainability-society__client-group__item:not(:first-child) {
  margin-top: 30px;
}

.p-sustainability-society__client-group__name {
  font-weight: 700;
  font-size: 18px;
  color: #222222;
}

.p-sustainability-society__client-flex {
  margin-top: 25px;
  display: flex;
}

.p-sustainability-society__client-flex .p-sustainability-common-content__text {
  flex: 1;
}

.p-sustainability-society__client-flex__image {
  width: 285px;
  max-width: 40%;
  margin-left: 55px;
}

.p-sustainability-society__region {
  padding-top: 80px;
}

.p-sustainability-society__region__flex {
  margin-top: 15px;
  display: flex;
}

.p-sustainability-society__region__body {
  flex: 1;
}

.p-sustainability-society__region__body .p-sustainability-common-content__text {
  margin-top: 6px;
}

.p-sustainability-society__region__image {
  width: 280px;
  max-width: 40%;
  margin-left: 50px;
  margin-top: 20px;
}

.p-sustainability-society__region__image figure:not(:first-child) {
  margin-top: 15px;
}

.p-sustainability-society__picFlex {
  display: flex;
  gap: 24px 54px;
}

.p-sustainability-society__picFlex .p-sustainability-common-content__text {
  flex: 1;
}

.p-sustainability-society__picture {
  width: 288px;
}


@media screen and (max-width: 922px) {
  .p-sustainability-society__partner {
    margin-top: -80px;
    padding-top: 150px;
  }
}


@media screen and (max-width: 767px) {

  .p-sustainability-anchorLink {
    margin-top: 35px;
  }

  .p-sustainability-anchorLink__list {
    padding: 15px;
    gap: 15px 40px;
    flex-direction: column;
  }

  .p-sustainability-society__quality__flex {
    flex-direction: column;
    row-gap: 45px;
  }

  .p-sustainability-society__quality__body01 {
    width: 100%;
    max-width: none;
  }

  .p-sustainability-society__quality__image01 {
    width: 70%;
    margin: 25px auto 0;
  }

  .p-sustainability-society__quality__image02 {
    margin-top: 25px;
    width: 100%;
  }

  .p-sustainability-society__bottom-block {
    flex-direction: column;
  }

  .p-sustainability-society__bottom-block:not(:first-child) {
    margin-top: 40px;
  }

  .p-sustainability-society__bottom-image {
    width: 100%;
    max-width: 400px;
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }

  .p-sustainability-main .p-sustainability-common-button.p-sustainability-common-button--four {
    width: 240px;
  }

  .p-sustainability-society__workplace__container-item {
    width: 100%;
  }

  .p-sustainability-society__workplace__flex {
    flex-direction: column;
    row-gap: 40px;
  }

  .p-sustainability-society__development__image {
    width: 100%;
  }

  .p-sustainability-society__development__caution {
    margin-left: 0%;
  }

  .p-sustainability-society__development__facility-item {
    width: 100%;
  }

  .p-sustainability-society__development__facility-container {
    padding: 15px;
    flex-direction: column;
  }

  .p-sustainability-society__development__facility-container-image {
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20px;
  }

  .p-sustainability-society__safety__flex01 {
    flex-direction: column;
  }

  .p-sustainability-society__safety__flex01-body {
    width: 100%;
  }

  .p-sustainability-society__safety__flex01-bottom {
    margin-bottom: 0;
  }

  .p-sustainability-society__safety__flex01-image {
    margin-left: 0;
    max-width: 300px;
    width: 100%;
    margin-inline: auto;
  }

  .p-sustainability-society__safety__column {
    margin-top: 40px;
  }

  .p-sustainability-society__safety__flex02-zone-br {
    display: block;
  }

  .p-sustainability-society__safety__flex02 {
    margin-top: 20px;
    flex-direction: column;
    row-gap: 20px;
  }

  .p-sustainability-society__safety__flex02-left {
    width: 100%;
  }

  .p-sustainability-society__safety__flex02-right {
    margin-left: 0;
    max-width: none;
  }

  .p-sustainability-society__safety__flex02-caution {
    margin-top: 25px;
  }

  .p-sustainability-society__safety__flex02-cautionItem {
    font-size: 13px;
  }

  .p-sustainability-society__safety__flex02-box {
    margin-left: 0;
  }

  .p-sustainability-society__safety__flex02-boxItem {
    padding: 3px 15px;
    font-size: 14px;
  }

  .p-sustainability-main a.p-sustainability-society__safety__flex02-bottomLink {
    display: inline;
    text-decoration: underline;
  }
  .p-sustainability-society__safety__flex02-bottomLink::before {
    display: none;
  }

  .p-sustainability-society__safety__flex03 {
    flex-direction: column;
  }

  .p-sustainability-society__safety__flex03-left {
    width: 100%;
  }

  .p-sustainability-society__safety__flex03-right {
    width: 100%;
  }

  .p-sustainability-society__safety__flex03-right--sp {
    display: block;
  }
  .p-sustainability-society__safety__flex03-right--pc {
    display: none;
  }

  .p-sustainability-society__safety__flex03-title {
    font-size: 20px;
  }

  .p-sustainability-society__safety__flex04 {
    flex-direction: column;
    row-gap: 30px;
  }

  .p-sustainability-society__client-wrapper__flex {
    flex-direction: column;
  }

  .p-sustainability-society__client-wrapper__right {
    margin-top: 15px;
    margin-left: 0;
  }

  .p-sustainability-society__partner {
    margin-top: -30px;
    padding-top: 100px;
  }

  .p-sustainability-society__client-flex {
    flex-direction: column;
  }

  .p-sustainability-society__client-flex__image {
    margin-top: 20px;
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }

  .p-sustainability-society__region__flex {
    flex-direction: column;
  }

  .p-sustainability-society__region__image {
    width: 100%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }

  .p-sustainability-society__picFlex {
    flex-direction: column;
  }

  .p-sustainability-society__picture {
    width: 100%;
  }

  .p-sustainability-governance__orange-table {
    width: 100%;
  }

}

.p-sustainability-rightText {
  text-align: right;
}
.p-sustainability-rightText span {
  text-align: left;
  display: inline-block;
  font-size: 16px;
  line-height: calc(34 / 16);
}

.p-sustainability-society__risk-container__item {
  width: calc((100% - 40px) / 2);
}
@media screen and (max-width: 767px) {
  .p-sustainability-society__risk-container__item {
    width: 100%;
  }
}

.p-sustainability-main--society02 .p-sustainability-governance__risk-container__text {
  padding-left: 13px;
}

.p-sustainability-society__dot-list {
  padding-left: 38px;
}



/*-------------------------------------
コーポレート・ガバナンス
-------------------------------------*/

.p-sustainability-governance {
  margin-top: 85px;
}

.p-sustainability-governance__wrapper-title {
  font-weight: 700;
  font-size: 20px;
  color: #222222;
}

.p-sustainability-governance__wrapper-image {
  width: 98%;
  margin-inline: auto;
}

.p-sustainability-governance__wrapper-caution {
  text-align: right;
  font-size: 13px;
}

.p-sustainability-governance__space {
  margin-top: 55px;
}

.p-sustainability-governance__flex01 {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 40px;
}

.p-sustainability-governance__flex01__block {
  width: calc((100% - 40px) / 2);
}

.p-sustainability-governance__flex01__item {
  padding: 12px 12px 10px;
  font-size: 16px;
  line-height: calc(26 / 16);
  color: #222222;
  border-top: 1px solid #333333;
  display: flex;
}
.p-sustainability-governance__flex01__item:last-child {
  border-bottom: 1px solid #333333;
}

.p-sustainability-governance__flex01__year {
  width: 60px;
}

.p-sustainability-governance__flex01__detail {
  margin-left: 7%;
  flex: 1;
}

.p-sustainability-governance__flex01__detail-item {
  padding-left: 20px;
  line-height: normal;
  position: relative;
}
.p-sustainability-governance__flex01__detail-item::before {
  position: absolute;
  top: 5px;
  left: 0;
  content: "";
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #a07f48;
}

.p-sustainability-governance__block__title {
  font-weight: 700;
  font-size: 22px;
  color: #a07f48;
  padding-bottom: 3px;
  border-bottom: 1px solid #333333;
}
.p-sustainability-governance__block__title.p-sustainability-governance__block__title--black {
  color: #000;
}
.p-sustainability-governance__block__title.p-sustainability-governance__block__title--noLine {
  border-bottom: none;
}

.p-sustainability-governance__body {
  margin-top: 15px;
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}
.p-sustainability-governance__body .p-sustainability-common-dot-list {
  line-height: normal;
}

.p-sustainability-governance__body__text {
  margin-top: 13px;
}

.p-sustainability-governance__body p span {
  display: inline-block;
}

.p-sustainability-governance__flex02 {
  margin-top: 50px;
  display: flex;
  justify-content: space-between;
}

.p-sustainability-governance__flex02__left {
  width: 64%;
}
.p-sustainability-governance__flex02__right {
  width: 31.5%;
  display: flex;
  flex-direction: column;
}

.p-sustainability-governance__flex02__text {
  margin-left: 3px;
  margin-top: 6px;
  margin-bottom: 6px;
  font-weight: 700;
  font-size: 20px;
  color: #222222;
}

.p-sustainability-governance__flex02__caution {
  display: inline-block;
  margin-top: auto;
  font-size: 14px;
  color: #222222;
}

.p-sustainability-governance__risk {
  padding-top: 50px;
}

.p-sustainability-governance__risk__list {
  margin-top: 24px;
  display: flex;
  justify-content: space-between;
}

.p-sustainability-governance__risk__list .p-sustainability-common-dot-list {
  width: 32%;
}
.p-sustainability-governance__risk__list .p-sustainability-common-dot-list:not(:first-child) {
  margin-top: 0;
}

.p-sustainability-governance__risk__image {
  width: 80%;
  margin: 25px auto 0;
}

.p-sustainability-governance__risk-flex {
  margin-top: 50px;
  display: flex;
  justify-content: space-between;
}

.p-sustainability-governance__risk-flex__body {
  width: 30%;
}

.p-sustainability-governance__risk-flex__small-text {
  margin-top: -8px;
  width: 77%;
}

.p-sustainability-governance__risk-list {
  margin-top: 20px;
}

.p-sustainability-governance__risk-item {
  display: flex;
}
.p-sustainability-governance__risk-item:not(:first-child) {
  margin-top: 20px;
}

.p-sustainability-governance__risk-item__number {
  width: 38px;
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}

.p-sustainability-governance__risk-item__text {
  flex: 1;
  margin-left: 3px;
  font-size: 16px;
  line-height: calc(30 / 16);
  color: #222222;
}

.p-sustainability-governance__risk-flex__image {
  width: 67.6%;
  margin-top: 7px;
}

.p-sustainability-governance__risk-container {
  margin-top: 50px;
  padding: 55px 50px;
  border: 1px solid #a07f48;
  border-radius: 5px;
}

.p-sustainability-governance__risk-container__title {
  text-align: center;
  font-weight: 700;
  font-size: 24px;
  color: #a07f48;
}

.p-sustainability-governance__risk-container__list {
  margin-top: 42px;
  display: flex;
  flex-wrap: wrap;
  gap: 25px 40px;
}

.p-sustainability-governance__risk-container__item {
  width: calc((100% - 40px) / 2);
}
.p-sustainability-governance__risk-container__item:nth-child(1) {
  order: 1;
}
.p-sustainability-governance__risk-container__item:nth-child(2) {
  order: 3;
}
.p-sustainability-governance__risk-container__item:nth-child(3) {
  order: 5;
}
.p-sustainability-governance__risk-container__item:nth-child(4) {
  order: 2;
}
.p-sustainability-governance__risk-container__item:nth-child(5) {
  order: 4;
}
.p-sustainability-governance__risk-container__item:nth-child(6) {
  order: 6;
}

.p-sustainability-governance__risk-container__text {
  margin-top: 10px;
  margin-left: 25px;
  font-size: 16px;
  line-height: calc(34 / 16);
  color: #222222;
}

.p-sustainability-governance__compliance {
  padding-top: 50px;
}

.p-sustainability-governance__compliance__flex01 {
  display: flex;
  column-gap: 50px;
}

.p-sustainability-governance__compliance__left,
.p-sustainability-governance__compliance__right {
  width: calc((100% - 50px) / 2);
}

.p-sustainability-governance__compliance__left-item:nth-child(2) {
  margin-top: 40px;
}

.p-sustainability-governance__compliance__flex02 {
  display: flex;
}

.p-sustainability-governance__compliance__flex02 p {
  flex: 1;
}

.p-sustainability-governance__compliance__image01 {
  width: 39%;
  margin-top: 10px;
  margin-left: 30px;
}

.p-sustainability-governance__compliance__image02 {
  margin-top: 10px;
}

.p-sustainability-governance__compliance__image03 {
  margin-top: 70px;
}

.p-sustainability-governance__compliance__image04 {
  width: 50%;
}

.p-sustainability-governance__flex-member {
  margin-top: 30px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 20px;
}

.p-sustainability-governance__flex01__memberLeft {
  flex: 1;
}

.p-sustainability-governance__flex01__memberRight {
  width: 51.5%;
}

.p-sustainability-governance__review-action {
  margin-top: 15px;
}

.p-sustainability-governance__min-title {
  margin-top: 15px;
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #222;
}

.p-sustainability-governance__review-table {
  margin-top: 10px;
  max-width: 1140px;
}

.p-sustainability-governance__review-dt {
  border-top: 1px solid #aeaeae;
  border-bottom: 1px solid #aeaeae;
  background-color: #f4ede0;
  padding: 18px 28px;
  display: flex;
  gap: 20px;
}
.p-sustainability-governance__review-dl {
  border-bottom: 1px solid #aeaeae;
  padding: 12px 25px;
  display: flex;
  gap: 20px;
}

.p-sustainability-governance__review-text {
  font-size: 16px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #222;
  display: flex;
  align-items: center;
}
.p-sustainability-governance__review-text:nth-child(1) {
  width: 39.5%;
}
.p-sustainability-governance__review-text:nth-child(2) {
  flex: 1;
}

.p-sustainability-governance__review-block {
  margin-top: 35px;
}

.p-sustainability-governance__review-wrapper {
  margin-top: 10px;
  padding: 35px 55px 50px;
  background-color: #f4ede0;
}

.p-sustainability-governance__review-wrapper .p-sustainability-common-dot-list {
  font-size: 18px;
  letter-spacing: 0.04em;
  line-height: 1.4;
}
.p-sustainability-governance__review-wrapper .p-sustainability-common-dot-list span {
  font-weight: 700;
}

.p-sustainability-governance__review-flex {
  margin-top: 10px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.p-sustainability-governance__review-flexTitle {
  width: 265px;
  text-align: center;
  background-color: #f4ede0;
  padding: 18px 10px;
  font-size: 20px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #222;
}

.p-sustainability-governance__review-flex p:nth-child(2) {
  flex: 1;
}

.p-sustainability-governance__review-task {
  margin-top: 40px;
}

.p-sustainability-governance__review-taskTitle {
  font-size: 18px;
  letter-spacing: 0.04em;
  color: #222;
}

.p-sustainability-governance__review-taskWrapper {
  margin-top: 16px;
  border: 1px solid #a07f48;
  padding: 28px 60px;
}

.p-sustainability-governance__review-taskBlock:not(:first-child) {
  margin-top: 25px;
}

.p-sustainability-governance__review-taskNumber {
  font-size: 24px;
  line-height: calc(34 / 24);
  color: #222;
}

.p-sustainability-governance__review-taskDetail {
  margin-top: 5px;
  font-size: 18px;
  line-height: calc(34 / 18);
  letter-spacing: 0.04em;
  color: #222;
}

.p-sustainability-governance__training .p-sustainability-governance__flex01 {
  margin-top: 5px;
}

.p-sustainability-governance__training .p-sustainability-governance__flex01__year {
  width: 100px;
}

.p-sustainability-governance__training .p-sustainability-governance__flex01__detail {
  margin-left: 3%;
}

.p-sustainability-governance__action01 {
  margin-top: 75px;
}
.p-sustainability-governance__action02 {
  margin-top: 40px;
}

.p-sustainability-governance__action-title {
  font-weight: 700;
  font-size: 22px;
  color: #a07f48;
  line-height: calc(34 / 22);
  letter-spacing: 0.04em;
  margin-bottom: 10px;
}

.p-sustainability-governance__action-wrapper {
  margin-top: 10px;
  padding: 40px;
  background-color: #f4ede0;
}

.p-sustainability-governance__action-wrapperTitle {
  font-weight: 700;
  font-size: 20px;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #222;
}

.p-sustainability-governance__action01 .p-sustainability-governance__action-scroll {
  margin-top: -20px;
}
.p-sustainability-governance__action02 .p-sustainability-governance__action-scroll {
  margin-top: 12px;
}

.p-sustainability-governance__action-caution {
  display: block;
  text-align: right;
  font-size: 12px;
}

.p-sustainability-governance__orange-block {
  margin-top: 25px;
}

.p-sustainability-governance__orange-title {
  margin-bottom: 10px;
  font-weight: 700;
  font-size: 22px;
  line-height: calc(34 / 22);
  letter-spacing: 0.04em;
  color: #a07f48;
}

.p-sustainability-governance__orange-table {
  margin-top: 36px;
  width: 90%;
}


@media screen and (max-width: 999px) {
  .p-sustainability-governance__compliance__flex02 {
    flex-direction: column;
  }
  .p-sustainability-governance__compliance__image01 {
    width: 50%;
    margin-left: 0;
  }
  .p-sustainability-governance__flex01__detail-br {
    display: none;
  }
}


@media screen and (max-width: 767px) {

  .p-sustainability-governance__wrapper-caution {
    font-size: 12px;
    text-align: left;
  }

  .p-sustainability-governance__flex01 {
    flex-direction: column;
  }

  .p-sustainability-governance__flex01__detail-br {
    display: block;
  }

  .p-sustainability-governance__flex01__block {
    width: 100%;
  }

  .p-sustainability-governance__flex01--sp {
    row-gap: 0;
  }
  .p-sustainability-governance__flex01--sp .p-sustainability-governance__flex01__block:first-child .p-sustainability-governance__flex01__item:last-child {
    border-bottom: none;
  }

  .p-sustainability-governance__flex02 {
    flex-direction: column;
    row-gap: 30px;
  }

  .p-sustainability-governance__flex02__left,
  .p-sustainability-governance__flex02__right {
    width: 100%;
  }

  .p-sustainability-governance__block__title {
    font-size: 18px;
  }

  .p-sustainability-governance__flex02__caution {
    margin-top: 8px;
    font-size: 12px;
  }

  .p-sustainability-governance__risk__list {
    flex-direction: column;
  }

  .p-sustainability-governance__risk__list .p-sustainability-common-dot-list {
    width: 100%;
  }
  .p-sustainability-governance__risk__list .p-sustainability-common-dot-list:not(:first-child) {
    margin-top: 20px;
  }

  .p-sustainability-governance__risk__image {
    width: 100%;
  }

  .p-sustainability-governance__risk-flex {
    flex-direction: column;
  }

  .p-sustainability-governance__risk-flex__body {
    width: 100%;
  }

  .p-sustainability-governance__risk-flex__image {
    width: 100%;
    margin-top: 15px;
  }

  .p-sustainability-governance__risk-container {
    padding: 15px;
  }

  .p-sustainability-governance__risk-container__title {
    font-size: 22px;
  }

  .p-sustainability-governance__risk-container__list {
    flex-direction: column;
  }

  .p-sustainability-governance__risk-container__item {
    width: 100%;
  }
  .p-sustainability-governance__risk-container__item:nth-child(1) {
    order: 1;
  }
  .p-sustainability-governance__risk-container__item:nth-child(2) {
    order: 2;
  }
  .p-sustainability-governance__risk-container__item:nth-child(3) {
    order: 3;
  }
  .p-sustainability-governance__risk-container__item:nth-child(4) {
    order: 4;
  }
  .p-sustainability-governance__risk-container__item:nth-child(5) {
    order: 5;
  }
  .p-sustainability-governance__risk-container__item:nth-child(6) {
    order: 6;
  }

  .p-sustainability-governance__compliance__flex01 {
    flex-direction: column;
  }

  .p-sustainability-governance__compliance__left,
  .p-sustainability-governance__compliance__right {
    width: 100%;
  }
  .p-sustainability-governance__compliance__right {
    margin-top: 35px;
  }

  .p-sustainability-governance__compliance__image01 {
    width: 50%;
    max-width: 250px;
    margin-inline: auto;
  }

  .p-sustainability-governance__flex-member {
    flex-direction: column;
  }

  .p-sustainability-governance__flex01__memberRight {
    width: 100%;
  }

  .p-sustainability-governance__min-title {
    font-size: 18px;
  }

  .p-sustainability-governance__review-dt,
  .p-sustainability-governance__review-dl {
    padding: 12px 15px;
  }

  .p-sustainability-governance__review-text {
    font-size: 14px;
  }

  .p-sustainability-governance__review-wrapper {
    padding: 15px 25px 25px;
  }

  .p-sustainability-governance__review-flex {
    flex-direction: column;
    align-items: flex-start;
  }

  .p-sustainability-governance__review-taskWrapper {
    padding: 25px;
  }

  .p-sustainability-governance__review-taskNumber {
    font-size: 20px;
  }

  .p-sustainability-governance__review-taskDetail {
    font-size: 16px;
  }

  .p-sustainability-governance__action-scroll {
    overflow: auto;
  }

  .p-sustainability-governance__action-image {
    width: 700px;
  }

  .p-sustainability-governance__action-wrapper {
    padding: 20px 15px;
  }

  .p-sustainability-governance__action-wrapperTitle {
    font-size: 16px;
  }

  .p-sustainability-governance__action01 .p-sustainability-governance__action-scroll {
    margin-top: 0;
  }

  .p-sustainability-governance__action-caution {
    font-size: 9px;
  }

}


@media screen and (max-width: 389px) {
  .p-sustainability-governance__flex01__detail-br {
    display: none;
  }
}





/*-------------------------------------
社外取締役座談会
-------------------------------------*/

.p-sustainability-discussion__spShow {
  display: none;
}

.p-sustainability-discussion-fv {
  margin-top: 10px;
  padding-top: calc(387 / 1400 * 100vw);
  padding-bottom: calc(265 / 1400 * 100vw);
  position: relative;
  z-index: 1;
}
.p-sustainability-discussion-fv::before {
  position: absolute;
  top: 67%;
  right: 0%;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 1313 / 536;
  background-image: url(../img/discussion/discussion_deco_right01.jpg);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}
.p-sustainability-discussion-fv::after {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 700 / 439;
  background-image: url(../img/discussion/discussion_mv.png);
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  z-index: 1;
}

.p-sustainability-discussion-fv__body {
  position: relative;
  z-index: 2;
}

.p-sustainability-discussion-fv__en {
  position: absolute;
  top: 7%;
  left: 11.5%;
  width: calc(220 / 1400 * 100vw);
}

.p-sustainability-discussion-fv__subTitle {
  width: calc(180 / 1400 * 100vw);
  margin: 0 auto;
  transform: translateX(-7%);
}

.p-sustainability-discussion-fv__title {
  margin-top: 15px;
  text-align: center;
  font-size: calc(46 / 1400 * 100vw);
  letter-spacing: 0.04em;
  color: #fff;
}
.p-sustainability-discussion-fv__text {
  margin-top: 8px;
  text-align: center;
  font-size: calc(18 / 1400 * 100vw);
  letter-spacing: 0.04em;
  line-height: 2;
  color: #fff;
}

.p-sustainability-discussion-person {
  margin-top: calc(-235 / 1400 * 100vw);
  position: relative;
  z-index: 2;
}

.p-sustainability-discussion-person__list {
  display: flex;
  justify-content: space-between;
}

.p-sustainability-discussion-person__item {
  width: 31.8%;
  box-shadow: 0px 0px 8.28px 0.72px rgba(0, 0, 0, 0.11);
}

.p-sustainability-discussion-person__body {
  background-color: #fff;
  padding: 18px min(calc(25 / 1400 * 100vw), 25px) 18px min(calc(30 / 1400 * 100vw), 30px);
  position: relative;
}
.p-sustainability-discussion-person__body::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  width: 33%;
  height: 6px;
}
.p-sustainability-discussion-person__body--01::before {
  background-color: #1a741e;
}
.p-sustainability-discussion-person__body--02::before {
  background-color: #a07f48;
}
.p-sustainability-discussion-person__body--03::before {
  background-color: #0066a6;
}

.p-sustainability-discussion-person__name {
  font-weight: 700;
  font-size: 22px;
  color: #222222;
}

.p-sustainability-discussion-person__text {
  margin-top: 10px;
  font-size: 14px;
  letter-spacing: -0.02em;
  line-height: calc(24 / 14);
  color: #222222;
}

.p-sustainability-discussion-section {
  margin-top: 80px;
  position: relative;
  z-index: 2;
}

.p-sustainability-discussion-section__body {
  margin-top: 30px;
}

.p-sustainability-discussion-section__block:not(:first-child) {
  margin-top: 25px;
}

.p-sustainability-discussion-section__text {
  font-size: 16px;
  line-height: calc(26 / 16);
  color: #222222;
}
.p-sustainability-discussion-section__text--01 {
  font-weight: 700;
  color: #1a741e;
}
.p-sustainability-discussion-section__text--02 {
  font-weight: 700;
  color: #a77a30;
}
.p-sustainability-discussion-section__text--03 {
  font-weight: 700;
  color: #0066a6;
}

.p-sustainability-discussion-section--01 {
  position: relative;
  z-index: 1;
}
.p-sustainability-discussion-section--01::before {
  position: absolute;
  top: 30%;
  left: 0;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 2598 / 1072;
  background-image: url(../img/discussion/discussion_deco_left.png);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}

.p-sustainability-discussion-section--02 {
  position: relative;
  z-index: 1;
}
.p-sustainability-discussion-section--02::before {
  position: absolute;
  top: 100%;
  right: 0;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 2684 / 1072;
  background-image: url(../img/discussion/discussion_deco_right02.png);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}

.p-sustainability-discussion-section--03 {
  position: relative;
  z-index: 1;
}
.p-sustainability-discussion-section--03::before {
  position: absolute;
  top: 85%;
  left: 0%;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 2598 / 1072;
  background-image: url(../img/discussion/discussion_deco_left.png);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}

.p-sustainability-discussion-section--04 {
  position: relative;
  z-index: 1;
}
.p-sustainability-discussion-section--04::before {
  position: absolute;
  top: 46%;
  right: 0;
  content: "";
  width: 100%;
  height: auto;
  aspect-ratio: 2684 / 1072;
  background-image: url(../img/discussion/discussion_deco_right02.png);
  background-repeat: no-repeat;
  background-size: contain;
  z-index: -1;
}


@media screen and (max-width: 767px) {

  .p-sustainability-discussion__spShow {
    display: block;
  }

  .p-sustainability-discussion-fv::after {
    aspect-ratio: 1674 / 1756;
    background-image: url(../img/discussion/discussion_mv_sp.png);
  }

  .p-sustainability-discussion-fv {
    padding-top: 44vw;
    padding-bottom: 15vw;
  }

  .p-sustainability-discussion-fv__en {
    top: 0%;
    left: 5%;
    width: 22vw;
  }

  .p-sustainability-discussion-fv__subTitle {
    width: 35vw;
  }

  .p-sustainability-discussion-fv__title {
    margin-top: 20px;
    font-size: 5.5vw;
  }

  .p-sustainability-discussion-fv__text {
    margin-top: 15px;
    font-size: 3.5vw;
    line-height: 1.8;
    filter: drop-shadow(0 3px 10px #000);
  }

  .p-sustainability-discussion-person {
    margin-top: 0;
  }

  .p-sustainability-discussion-person__list {
    flex-direction: column;
    row-gap: 6vw;
  }

  .p-sustainability-discussion-person__item {
    width: 80%;
    margin: 0 auto;
  }

  .p-sustainability-discussion-person__name {
    font-size: 20px;
  }

  .p-sustainability-discussion-person__text {
    margin-top: 5px;
    font-size: 12px;
  }

}
