


@charset "UTF-8";

/*
 =========================================================
swiper_css（サステナビリティ内のスワイパー用スタイル）

2021.08.15
 =========================================================
*/

.swiper {
	position: static;
	max-width: 450px;
	width: 100%;
	height: auto;
}

.swiper-sustainability {
	max-width: 556px;
}


@media screen and (min-width: 980px) {
	.swiper-sustainability {
		max-width: none;
	}

	.swiper {
		max-width: 800px;
	}
}

@media screen and (min-width: 1280px) {
	.swiper {
		max-width: 1144px;
	}
}

@media screen and (max-width: 767px) {
	.swiper-sustainability {
		max-width: 556px;
	}
}

@media screen and (max-width: 600px) {
	.swiper-sustainability {
		max-width: 262px;
	}
}

.swiper-wrapper {
	align-items: stretch;
}

.swiper-slide {
	height: 100%;
	display: flex;
	flex-direction: column;
}

.swiper-slide a {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s;
}

.swiper-slide a:hover {
	opacity: 0.6;
}

/* サステナビリティのメインビジュアルで使用 (begin) */
.swiper-mainvisual {
	max-width: 100vw;
	width: 100%;
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
	height: 20px;
	bottom: 0px;
}

.swiper-pagination--mainvisual .swiper-pagination-bullet {
	width: 14px;
	height: 14px;
	margin-right: 8px !important;
	margin-left: 8px !important;
	background-color: #e3e3e3;
	opacity: 1;
}

.swiper-pagination-bullet-active {
	background-color: #CC0022 !important;
}
/* サステナビリティのメインビジュアルで使用 (end) */

.swiper__picture {
	width: 100%;
	height: 100%;
}

.swiper__picture-sustainability {
	max-width: 262px;
	max-height: 206px;
	width: 100%;
	height: 100%;
}

.swiper__picture img {
	aspect-ratio: 353 / 277;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.swiper__picture-sustainability img {
	aspect-ratio: 262 / 140;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.swiper__body {
	min-height: 215px;
	background: #fff;
	padding: 15px 20px 30px;
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.swiper__body {
		min-height: 238px;
	}
}

@media screen and (max-width: 767px) {
	.swiper__body {
		min-height: 170px;
		padding: 12px 20px 24px;
	}
}

.swiper__body-sustainability {
	min-height: 135px;
	background: #fff;
	padding: 20px 18px;
}



.swiper-grow {
	flex-grow: 1;
}

.swiper__heading {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #000;
	color: #fff;
	font-size: 15px;
	line-height: 1.5;
	font-weight: bold;
	padding: 8px 10px;
	min-height: 61px;
}

@media screen and (max-width: 767px) {
	.swiper__heading {
		font-size: 14px;
	}
}

.swiper__title {
	font-size: 20px;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.swiper__title {
		font-size: 18px;
	}
}

.swiper__text {
	margin-top: 10px;
  font-size: 14px;
  line-height: 1.7;
}

.swiper__text-sustainability {
  font-size: 14px;
	font-weight: bold;
  line-height: 1.7;
}

.swiper-button-prev {
	background-color: #fff;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	top: 54.5%;
	left: 0;
}

.swiper-button-prev-mainvisual {
	background-color: transparent;
	width: auto;
	height: auto;
	top: 50%;
	left: 2.6vw;
	transform: translateY(-50%);
}

.swiper-button-prev::after {
	content: "";
}

.swiper-button-prev-mainvisual::after {
	content: 'prev';
	color: #333;
}

.swiper-button-next {
	background-color: #fff;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	top: 54.5%;
	right: 0;
}

.swiper-button-next-mainvisual {
	background-color: transparent;
	width: auto;
	height: auto;
	top: 50%;
	transform: translateY(-50%);
	right: 2.6vw;
}

.swiper-button-next::after {
	content: "";
}

.swiper-button-next-mainvisual::after {
	content: 'next';
	color: #333;
}

@media screen and (min-width: 768px) {

}

.swiper__arrow {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.swiper-button-prev .swiper__arrow::before {
	content: "";
	position: absolute;
	top: 15px;
  left: 13px;
	transform: rotate(-45deg);
	width: 11px;
	height: 2px;
	border-radius: 1px;
	background-color: #333;
}

.swiper-button-prev .swiper__arrow::after {
	content: "";
	position: absolute;
	bottom: 15px;
  left: 13px;
	transform: rotate(45deg);
	width: 11px;
	height: 2px;
	border-radius: 1px;
	background-color: #333;
}

.swiper-button-next .swiper__arrow::before {
	content: "";
	position: absolute;
	top: 15px;
  right: 13px;
	transform: rotate(45deg);
	width: 11px;
	height: 2px;
	border-radius: 1px;
	background-color: #333;
}

.swiper-button-next .swiper__arrow::after {
	content: "";
	position: absolute;
	bottom: 15px;
  right: 13px;
	transform: rotate(-45deg);
	width: 11px;
	height: 2px;
	border-radius: 1px;
	background-color: #333;
}

@media screen and (max-width: 600px) {
	.swiper-button-prev {
		top: 50%;
	}

	.swiper-button-next {
		top: 50%;
	}
}

/*
 =========================================================
sus-extra_css（日立ソリューションズ初期環境用スタイル）

2023.07.15

 =========================================================
*/
.sustainability-content {
  line-height: 2;
}

.anchor-nav ul li {
  margin-top: 0;
  margin-bottom: 0;
}

.anchor-nav ul li a {
  display: inline-block;
}

.link-list li.is-blank {
  position: relative;
  padding-left: 20px;
}

.link-list li.is-blank::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -7px;
  width: 14px;
  height: 14px;
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/icon-blank.png");
  background-size: contain;
}

.hs-pagetop {
  margin: 0 auto 2rem;
  max-width: 1240px;
}

.hs-group-links dt {
  max-width: 160px;
  text-align: left;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
}

.side-bar ul li.current {
  background-color: #F5F5F5;
  pointer-events: none;
}

.mlr0 {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px;
}

.mb20 {
  margin-bottom: 20px;
}

.mb30 {
  margin-bottom: 30px;
}

.mb40 {
  margin-bottom: 40px;
}

.mb50 {
  margin-bottom: 50px;
}

.mb60 {
  margin-bottom: 60px;
}

.mb70 {
  margin-bottom: 70px;
}

.mb100 {
  margin-bottom: 100px;
}

.pt0 {
  padding-top: 0;
}

.pt5 {
  padding-top: 5px;
}

.pt10 {
  padding-top: 10px;
}

.pt15 {
  padding-top: 15px;
}

.pb0 {
  padding-bottom: 0;
}

.fs12 {
  font-size: 12px;
}

.title-fs16,
.title-fs18,
.title-fs20,
.title-fs28 {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
  line-height: 1.6;
  color: #333333;
}

.title-fs16.col-red,
.title-fs18.col-red,
.title-fs20.col-red,
.title-fs28.col-red {
  color: #E60026;
}

.title-fs60 {
  line-height: 1.6;
  color: #333333;
}

.title-fs18 {
  font-size: 18px;
  font-weight: bold;
  display: block;
}

.title-fs24 {
  font-size: 24px;
  font-weight: bold;
  display: block;
  line-height: 1.6;
}

.title-fs28 {
  font-size: 28px;
  font-weight: bold;
  display: block;
}

.title-red-top-icon {
  padding-top: 5px;
}

.title-red-top-icon.col-red {
  color: #E60026;
}

@media screen and (max-width: 767px) {
  .fs12 {
    font-size: 2.8vw;
  }
  .title-fs18 {
    font-size: 3.45vw;
  }
  .title-fs24 {
    font-size: 3.6vw;
  }
  .title-fs28 {
    font-size: 4.4vw;
  }
  .mb10-sp {
    margin-bottom: 10px;
  }
  .mb20-sp {
    margin-bottom: 20px;
  }
  .mb30-sp {
    margin-bottom: 30px;
  }
  .mb40-sp {
    margin-bottom: 40px;
  }
  .mb50-sp {
    margin-bottom: 50px;
  }
  .mb60-sp {
    margin-bottom: 60px;
  }
  .mb70-sp {
    margin-bottom: 70px;
  }
  .mb80-sp {
    margin-bottom: 80px;
  }
  .mb90-sp {
    margin-bottom: 90px;
  }
  .mb100-sp {
    margin-bottom: 100px;
  }
  .anchor-nav {
    padding-left: 4vw;
    padding-right: 4vw;
  }
  .anchor-nav ul > li > a {
    white-space: nowrap;
    word-break: keep-all;
  }
  .nub-list li .nub-list-number::after {
    top: 50%;
    margin-top: -1.75vw;
  }
}

.bold {
  font-weight: bold;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
}

.fs-min {
  font-size: 10px;
  line-height: 1.8;
}

.sustainability .link-blue {
  color: #0097E3;
  word-break: break-all;
}

.border-radius {
  border-radius: 8px;
}

.border-top--gray {
  border-top: 1px solid #959595;
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.d-flex.justify-content-between {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.d-inline-block {
  display: inline-block;
}

.sdgs .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-1.png");
}

.management .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-2.png");
  max-width: 100%;
}

.eco .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-3.png");
}

.worklifebalance .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-4.png");
  max-width: 90%;
}

.health .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-5.png");
}

.community .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-6.png");
}

.partner .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-7.png");
  max-width: 100%;
}

.customer-satisfy .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-8.png");
}

.compliance .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-9.png");
  max-width: 100%;
}

@media screen and (max-width: 767px) {
  .compliance .main-title {
    max-width: 90%;
  }
}

.governance .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-10.png");
  max-width: 91%;
}

.security .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-11.png");
  max-width: 91%;
}

.bcp .main-title {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-12.png");
}

.main-title-wrap::before {
  background-size: cover;
}

.sus-top .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-top.png");
  background-position: bottom;
}

.sdgs .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-sdgs.png");
  background-position: bottom;
}

.management .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-management.png");
  background-position: bottom;
}

.eco .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-eco.png");
}

.worklifebalance .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-worklifebalance.png");
  background-position: bottom;
}

.health .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-health.png");
  background-position: bottom;
}

.community .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-community.png");
  background-position: bottom;
}

.partner .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-partner.png");
}

.customer-satisfy .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-cs.png");
}

.compliance .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-compliance.png");
}

.governance .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-governance.png");
}

.security .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-security.png");
}

.bcp .main-title-wrap::before {
  background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-bcp.png");
  background-position: bottom;
}

@media screen and (max-width: 767px) {
  .sus-top .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-top-sp.png");
    background-position: bottom;
  }
  .sdgs .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-sdgs-sp.png");
  }
  .management .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-management-sp.png");
  }
  .eco .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-eco-sp.png");
  }
  .worklifebalance .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-worklifebalance-sp.png");
  }
  .health .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-health-sp.png");
    background-position: bottom;
  }
  .partner .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-partner-sp.png");
  }
  .customer-satisfy .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-cs-sp.png");
    background-position: center;
  }
  .compliance .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-compliance-sp.png");
  }
  .governance .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-governance-sp.png");
  }
  .security .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-security-sp.png");
  }
  .bcp .main-title-wrap::before {
    background-image: url("/-/media/Project/DefaultSite/Company/sustainability/main-bcp-sp.png");
  }
}

.list-num {
  width: 93%;
  margin-left: 7%;
}

.list-num__item {
  margin-bottom: 10px;
}

.marker-bold .list-num__item::marker {
  font-weight: bold;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W6", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
}

.list-history__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 5px;
}

.list-history__date {
  width: 6em;
  display: inline-block;
}

.list-history__text {
  width: calc(100% - 6em);
  display: inline-block;
}

.link-list .icon-pdf {
  width: 15px;
  height: 16.5px;
}

.list--dot > li,
.list--line > li {
  position: relative;
  padding-left: 1em;
  margin-bottom: 0.5em;
}

.list--dot > li:last-child,
.list--line > li:last-child {
  margin-bottom: 0;
}

.list--dot > li::before,
.list--line > li::before {
  content: "";
  display: block;
  background-color: #E60026;
  border-radius: 50%;
  width: 0.4em;
  height: 0.4em;
  position: absolute;
  left: 0;
  top: 0.8em;
}

.list--line > li::before {
  width: 1em;
  height: 1px;
  top: 1em;
  margin-left: -0.2em;
}

@media screen and (max-width: 767px) {
  .list--dot > li::before {
    width: 1vw;
    height: 1vw;
  }
}

.fadein {
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 2s ease-out 2s, -webkit-filter 2s ease-out 2s;
  transition: opacity 0.6s ease-out, -webkit-transform 2s ease-out 2s, -webkit-filter 2s ease-out 2s;
  transition: opacity 0.6s ease-out, transform 2s ease-out 2s, filter 2s ease-out 2s;
  transition: opacity 0.6s ease-out, transform 2s ease-out 2s, filter 2s ease-out 2s, -webkit-transform 2s ease-out 2s, -webkit-filter 2s ease-out 2s;
  overflow: visible;
}

.fadein.zoom {
  overflow: visible;
  -webkit-transform: none;
          transform: none;
  position: relative;
}

.fadein.zoom .zoom-img {
  -o-object-fit: cover;
     object-fit: cover;
  left: 0;
  top: 0;
  -webkit-transform: scale(1.2, 1.2);
          transform: scale(1.2, 1.2);
  z-index: 1;
  width: 100%;
  height: 100%;
  font-family: "ofject-fit:cover;";
  -webkit-filter: grayscale(1);
          filter: grayscale(1);
}

.fadein.zoom .zoom-img-wrap {
  overflow: hidden;
  z-index: 1;
}

.fadein.zoom > .wrap {
  position: relative;
  z-index: 2;
}

.fadein.show {
  -webkit-transform: translateY(0);
          transform: translateY(0);
  opacity: 1;
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 1s ease-out;
  transition: opacity 0.6s ease-out, -webkit-transform 1s ease-out;
  transition: opacity 0.6s ease-out, transform 1s ease-out;
  transition: opacity 0.6s ease-out, transform 1s ease-out, -webkit-transform 1s ease-out;
}

.fadein.show.zoom {
  -webkit-transform: none;
          transform: none;
}

.fadein.show.zoom .zoom-img {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transition: -webkit-transform 1.0s ease-out , -webkit-filter 1s ease-out 0.8s;
  transition: -webkit-transform 1.0s ease-out , -webkit-filter 1s ease-out 0.8s;
  transition: transform 1.0s ease-out , filter 1s ease-out 0.8s;
  transition: transform 1.0s ease-out , filter 1s ease-out 0.8s , -webkit-transform 1.0s ease-out , -webkit-filter 1s ease-out 0.8s;
  -webkit-filter: grayscale(0);
          filter: grayscale(0);
}

.fadein.show.zoom-link:hover {
  opacity: 0.8;
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

.fadein.show.zoom-link:hover .zoom-img {
  -webkit-transform: scale(1.1, 1.1);
          transform: scale(1.1, 1.1);
  -webkit-transition: -webkit-transform 0.3s ease-out;
  transition: -webkit-transform 0.3s ease-out;
  transition: transform 0.3s ease-out;
  transition: transform 0.3s ease-out, -webkit-transform 0.3s ease-out;
}

.show.delay1 {
  -webkit-transition-delay: 0.3s;
          transition-delay: 0.3s;
}

.show.delay2 {
  -webkit-transition-delay: 0.6s;
          transition-delay: 0.6s;
}

.show.delay3 {
  -webkit-transition-delay: 0.9s;
          transition-delay: 0.9s;
}

.management .sec-sdgs {
  text-align: center;
}

.management .sec-sdgs__inner {
  display: inline-block;
  width: 100%;
  max-width: 850px;
}

.management .sec-sdgs__logo-wrap {
  width: 90%;
  max-width: 475px;
  margin-bottom: 1.8em;
  text-align: center;
  margin-left: auto;
  margin-right: auto;
}

.management .sec-sdgs__logo-wrap img {
  width: 100%;
  height: auto;
}

.management .sec-sdgs__icon-wrap {
  width: 100%;
  margin-bottom: 1.8em;
}

.management .sec-sdgs__icon-wrap img {
  width: 100%;
  height: auto;
}

.management .sec-sdgs p {
  text-align: left;
}

.green-procure .link-list {
  width: 75%;
  max-width: 460px;
}

.green-procure .link-list__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  float: none;
  margin-bottom: 15px;
}

.green-procure .link-list__item .icon-pdf {
  margin-right: 10px;
}

.green-procure .link-list__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 45%;
  max-width: 212px;
  margin-right: 5%;
  padding-top: 7px;
  background-position-y: 0.9em;
}

.green-procure .image-wrap {
  width: 25%;
  margin-top: -2em;
}

.green-procure .image-wrap img {
  width: 100%;
  max-width: 106px !important;
  height: auto;
}

.anti-hazard__text {
  width: calc(100% - 220px);
}

.anti-hazard__image-wrap {
  width: 200px;
  text-align: right;
}

.anti-hazard__image-wrap img {
  width: 100%;
  max-width: 174px;
  margin-right: 0;
  margin-left: auto;
}

@media screen and (max-width: 767px) {
  .text-slogan {
    text-align: center;
  }
  .text-slogan__inner {
    display: inline-block;
    text-align: left;
  }
  .green-procure .link-list {
    width: 85%;
  }
  .green-procure .link-list .icon-pdf {
    width: 10px;
    height: 11px;
    margin-right: 5px;
  }
  .green-procure .link-list__item a {
    width: 55%;
    margin-right: 0;
    word-break: keep-all;
    white-space: nowrap;
  }
  .green-procure .link-list__item a:first-child {
    width: 37%;
    margin-right: 3%;
  }
  .green-procure .image-wrap {
    width: 20%;
  }
  .anti-hazard__text {
    width: 75%;
  }
  .anti-hazard__image-wrap {
    width: 25%;
  }
}

.governance .image-internal-control {
  width: 100%;
  max-width: 670px;
  height: auto;
}

.compliance .flex-box-harf-width {
  overflow: hidden;
}

.compliance .flex-box-harf-width .bac-col-gray {
  height: 100%;
}

@media screen and (max-width: 767px) {
  .width-window-full-sp {
    width: 100%;
    position: relative;
    z-index: 1;
  }
  .width-window-full-sp * {
    position: relative;
    z-index: 1;
  }
  .width-window-full-sp::before {
    content: "";
    background: #F5F5F5;
    width: 110vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: -5vw;
    z-index: 0;
  }
}

@media screen and (max-width: 1050px) {
  .security-flow {
    margin-left: auto;
    width: 100%;
  }
}

.security-flow__item {
  background: #f5f5f5;
  border-radius: 1em;
  position: relative;
}

@media screen and (max-width: 1050px) {
  .security-flow__item {
    width: 100%;
    margin-bottom: 30px;
  }
}

.security-flow__item:last-child::before {
  display: none;
}

.security-flow__item::before {
  content: "";
  display: block;
  width: 45px;
  height: 45px;
  border-top: solid 1px #3EBB9B;
  border-right: solid 1px #3EBB9B;
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  position: absolute;
  bottom: -26px;
  left: 50%;
  margin-left: -23px;
}

@media screen and (max-width: 1050px) {
  .security-flow__item::before {
    bottom: -15px;
  }
}

.security .flex-privacy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

@media screen and (max-width: 767px) {
  .security .flex-privacy {
    display: block;
  }
}

.security .flex-privacy .sec-para__image-wrap {
  width: 145px;
}

@media screen and (max-width: 767px) {
  .security .flex-privacy .sec-para__image-wrap {
    width: 100%;
    text-align: center;
  }
}

.security .flex-privacy .sec-para__text-wrap {
  width: calc(100% - 150px);
}

@media screen and (max-width: 767px) {
  .security .flex-privacy .sec-para__text-wrap {
    width: 100%;
  }
}

.health-system-image {
  max-width: 100%;
  width: auto;
  height: auto;
}

.health-system-image-wrap {
  display: inline-block;
}

.health-guide-image {
  max-width: 100%;
  width: auto;
  height: auto;
}

.health-guide-image-wrap {
  text-align: center;
}

.health .bac-col-gray {
  position: relative;
}

.health .bac-col-gray img,
.health .bac-col-gray div {
  position: relative;
  z-index: 2;
}

@media screen and (max-width: 767px) {
  .health .bac-col-gray {
    padding-top: 1.5em;
    padding-bottom: 1.5em;
  }
  .health .bac-col-gray::before {
    content: "";
    width: 110vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: -5vw;
    background: #f5f5f5;
  }
}

@media screen and (max-width: 767px) {
  .health h2.title-fs16 {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 1em;
  }
}

.sus-top.sustainability {
  width: 100%;
  max-width: 100%;
}

.sus-top .sustainability-content {
  margin: 0 auto;
  max-width: 100%;
}

.sus-top .main-title {
  background: none;
  padding-left: 0;
  padding-right: 0;
  padding-bottom: 550px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  display: block;
  text-align: right;
}

.sus-top .main-title-wrap::before {
  top: auto;
  bottom: 0;
  margin-right: -0.9375rem;
  width: calc(100% + 0.9375rem);
  height: calc(100% -  140px);
}

.sus-top .main-title__text {
  text-align-last: left;
  display: inline-block;
}

.sus-top .main-title__sub {
  font-size: 16px;
  display: block;
  line-height: 2em;
}

.sus-top-wrap {
  max-width: 930px;
  margin-left: auto;
  margin-right: auto;
}

.sus-top .sec-top {
  position: relative;
  margin-bottom: 200px;
}

.sus-top .sec-top__text {
  max-width: 550px;
  position: absolute;
  left: 0;
  bottom: -90px;
  width: 80%;
  background: #fff;
  padding: 1em;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.sus-top .link-card {
  position: relative;
  width: 48%;
  max-width: 410px;
  height: 240px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
}

.sus-top .link-card:hover {
  opacity: 1;
}

.sus-top .link-card:hover::before {
  -webkit-transform: scale(1);
          transform: scale(1);
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
  transition: transform 0.3s, filter 0.3s, opacity 0.3s;
  transition: transform 0.3s, filter 0.3s, opacity 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
}

.sus-top .link-card:hover::after {
  opacity: 0.7;
}

.sus-top .link-card:hover .link-card__arrow {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

.sus-top .link-card__text {
  position: relative;
  z-index: 2;
  text-align: center;
  text-decoration: none;
  font-size: 2em;
  line-height: 1.4em;
}

.sus-top .link-card::before, .sus-top .link-card::after {
  content: "";
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  margin: auto;
  z-index: 0;
  -webkit-transition: opacity 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
  transition: opacity 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
  transition: transform 0.3s, filter 0.3s, opacity 0.3s;
  transition: transform 0.3s, filter 0.3s, opacity 0.3s, -webkit-transform 0.3s, -webkit-filter 0.3s;
}

.sus-top .link-card::after {
  z-index: 1;
  background-color: #3c3c3c;
  opacity: 0;
  mix-blend-mode: multiply;
}

.sus-top .link-card.message::before {
  background-image: url(/-/media/Project/DefaultSite/Company/sustainability/item-top-02.png);
}

.sus-top .link-card.management::before {
  background-image: url(/-/media/Project/DefaultSite/Company/sustainability/item-top-01.png);
}

.sus-top .link-card-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sus-top .link-card__more {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  right: -30px;
  bottom: -25px;
  z-index: 3;
  background: #333;
  padding: 10px 20px;
  font-size: 0.8em;
}

.sus-top .link-card__arrow {
  margin-left: 10px;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.sus-top .sec-sdgs {
  position: relative;
  width: 100%;
}

.sus-top .sec-sdgs::before {
  content: "";
  background: #F2F2F2;
  position: absolute;
  left: -1rem;
  height: 100%;
  width: 50%;
  z-index: 0;
}

.sus-top .sec-sdgs .sus-top-wrap {
  position: relative;
  z-index: 1;
  padding-top: 2em;
  padding-bottom: 21px;
  background-color: #F2F2F2;
  border-radius: 16px;
  max-width: 1060px;
  padding-left: calc(50vw - 480px);
  margin-left: 0;
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.sus-top .sdgs__header {
  margin-bottom: 1.5em;
  margin-top: -80px;
  position: relative;
}

.sus-top .sdgs__header-bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.sus-top .sdgs__header .link-to-sdgs {
  position: static;
  color: #ffffff;
  text-decoration: none;
  white-space: nowrap;
}

.sus-top .sdgs__typo {
  width: 100%;
  height: auto;
}

.sus-top .sdgs__typo-wrap {
  max-width: 290px;
  padding-bottom: 0;
  margin-bottom: 0;
  padding-left: 100px;
  position: relative;
}

.sus-top .sdgs__typo-wrap::before {
  content: "";
  width: 75px;
  height: 75px;
  background: url("/-/media/Project/DefaultSite/Company/sustainability/side-bar-icon-1.png") no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}

.sus-top .sdgs__desc {
  display: inline-block;
  width: auto;
  padding-right: 40px;
}

.sus-top .sdgs__desc p {
  display: inline-block;
}

.sus-top .sdgs__list {
  width: 100%;
  width: 1200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

.sus-top .sdgs__list-wrap {
  overflow-x: scroll;
  overflow-y: hidden;
}

.sus-top .sdgs-card {
  text-decoration: none;
  display: inline-block;
  margin-right: 1em;
  width: 220px;
  margin-bottom: 1em;
}

.sus-top .sdgs-card .card__feature {
  margin-bottom: 0.8em;
}

.sus-top .sdgs-card .card__image {
  width: 100%;
}

.sus-top .sdgs-card .card__title {
  line-height: 1.6em;
  color: #1a1a1a;
  margin-bottom: 0.8em;
}

.sus-top .sdgs-card .card__data {
  display: inline-block;
  color: #A5A5A5;
  border: 1px solid currentColor;
  border-radius: 20px;
  font-size: 0.8em;
  line-height: 1.5em;
  padding: 0.2em 1.2em;
}

.sus-top .heading-effort {
  font-size: 2em;
  text-align: center;
  background: none;
}

.sus-top .effort-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
}

.sus-top .effort-list__item {
  width: 50%;
  border: 1px solid #ccc;
}

.sus-top .effort-list__item:nth-child(even) {
  border-left: 0;
}

.sus-top .effort-list__item:nth-child(n+3) {
  border-top: 0;
}

.sus-top .effort-list__item.wide {
  width: 100%;
}

.sus-top .effort-list__item.wide .effort-link {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.sus-top .effort-list__item.wide .effort-link__icon {
  width: 11%;
  margin-right: 2.5%;
}

.sus-top .effort-link {
  height: 100%;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 45px 35px;
  color: #1a1a1a;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  text-decoration: none;
  font-size: 1.15em;
  line-height: 1.6em;
  position: relative;
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  background-color: #fff;
}

.sus-top .effort-link__icon {
  margin-right: 5%;
  width: 22%;
  height: auto;
}

.sus-top .effort-link::before {
  content: "";
  width: 40px;
  height: 8px;
  display: block;
  background: url(/-/media/Project/DefaultSite/Company/sustainability/link-list-icon.png) no-repeat;
  background-size: contain;
  position: absolute;
  right: 35px;
  bottom: 15px;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.sus-top .effort-link:hover {
  -webkit-transition: background-color 0.3s;
  transition: background-color 0.3s;
  background-color: #F4F4F4;
  opacity: 1;
}

.sus-top .effort-link:hover::before {
  -webkit-transform: translateX(25px);
          transform: translateX(25px);
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

@media screen and (max-width: 940px) {
  .sus-top .sdgs__desc {
    max-width: 600px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .sus-top .sdgs__desc p br.pc {
    display: none;
  }
}

@media screen and (max-width: 767px) {
  .sus-top .main-title {
    width: 100%;
    margin: 0;
    text-align: left;
    padding-bottom: 100vw;
  }
  .sus-top .main-title-wrap::before {
    width: calc(100% + 10vw);
    height: 86%;
  }
  .sus-top .main-title__sub {
    font-size: 10px;
  }
  .sus-top .sec-top__text {
    width: 95%;
    left: -5vw;
    bottom: -30vw;
    margin-bottom: 0;
  }
  .sus-top .link-card {
    width: 100%;
    max-width: 480px;
    height: 50vw;
    margin-bottom: 80px;
  }
  .sus-top .link-card__more {
    right: -15px;
  }
  .sus-top .link-card-list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    width: 90%;
    margin: 0 auto;
  }
  .sus-top .sec-sdgs::before {
    left: -10vw;
  }
  .sus-top .sdgs__typo-wrap {
    background: none;
    width: 100%;
    max-width: 240px;
    padding-left: 100px;
    height: 84px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .sus-top .sdgs__header {
    display: block;
    margin-top: -15vw;
    background: none;
    padding-left: 0;
  }
  .sus-top .sdgs__header-bottom {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
  }
  .sus-top .sdgs__header-bottom .link-to-sdgs {
    margin-top: 1.5em;
  }
  .sus-top .sdgs__desc {
    width: 80%;
    margin-top: 1em;
    padding-right: 0;
  }
  .sus-top .sdgs-card .card__data {
    font-size: 0.6em;
    padding-top: 0.6em;
    padding-bottom: 0.6em;
  }
  .sus-top .effort-list__item {
    width: 100%;
    border-bottom: 0;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
  }
  .sus-top .effort-list__item:nth-child(even), .sus-top .effort-list__item:nth-child(n+2) {
    border-left: 1px solid #ccc;
    border-top: 1px solid #ccc;
  }
  .sus-top .effort-list__item:last-child {
    border-bottom: 1px solid #ccc;
  }
  .sus-top .effort-list__item.wide .effort-link {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
  .sus-top .effort-list__item.wide .effort-link__icon {
    width: 16%;
    margin-right: 5%;
  }
  .sus-top .effort-link {
    padding: 2vw;
  }
  .sus-top .effort-link__icon {
    width: 16%;
    height: auto;
  }
}

.community .d-flex__image-wrap.ml10per {
  margin-left: 10%;
}

.community .d-flex__image-wrap.ml5per {
  margin-left: 5%;
}

.community .d-flex__image-wrap img {
  width: auto;
  max-width: initial;
}

.JS #Contents .community .d-flex__image-wrap img {
  max-width: initial;
}

.community .list-educate-support {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.community .list-educate-support__item {
  width: 49%;
  margin-bottom: 1em;
}

.community .list-educate-support__item:last-child {
  margin-bottom: 0;
}

.community .list-educate-support__item:last-child .sec-para {
  margin-bottom: 0;
}

.community .list-educate-support__item .bor-bot-red {
  width: auto;
  border-bottom: 0;
  position: relative;
  display: inline-block;
}

.community .list-educate-support__item .bor-bot-red::before {
  content: "";
  display: block;
  height: 1px;
  width: 100%;
  border-bottom: 2px solid #E60026;
  position: absolute;
  bottom: 0;
}

.community .list-educate-support__item .sec-para {
  margin-bottom: 1em;
}

.community-dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin-bottom: 1.5em;
}

.community-dl dt {
  width: 11em;
}

.community-dl dd {
  width: calc(100% - 11em);
}

@media screen and (max-width: 767px) {
  .JS #Contents .community img {
    max-width: 100%;
    height: auto;
  }
  .community .mb70-sp {
    margin-bottom: 70px;
  }
  .community .d-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .community .d-flex__image-wrap {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 30px;
    margin-left: 0;
  }
  .community .d-flex__image-wrap.ml5per, .community .d-flex__image-wrap.ml10per {
    margin-left: 0;
  }
  .community .list-educate-support {
    display: block;
  }
  .community .list-educate-support__item {
    width: 100%;
    margin-bottom: 30px;
  }
  .community-dl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .community-dl dt,
  .community-dl dd {
    width: 100%;
  }
  .community .bac-col-gray.wide-full-sp {
    position: relative;
  }
  .community .bac-col-gray.wide-full-sp::before {
    content: "";
    width: calc(110vw);
    height: 100%;
    position: absolute;
    left: -5vw;
    top: 0;
    background: #F5F5F5;
    z-index: 0;
  }
  .community .bac-col-gray.wide-full-sp ul,
  .community .bac-col-gray.wide-full-sp dl,
  .community .bac-col-gray.wide-full-sp section {
    position: relative;
    z-index: 2;
  }
}

.worklifebalance .graph-sec {
  background: #F5F5F5;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}

.worklifebalance .graph-card {
  width: 48%;
  max-width: 390px;
}

.worklifebalance .diver-table-sec {
  text-align: center;
}

.worklifebalance .diver-table-sec__inner {
  display: inline-block;
  text-align: left;
}

.worklifebalance .diver-table-sec__inner img {
  width: auto;
  height: auto;
  max-width: 100%;
}

.worklifebalance .diver-table-sec__att {
  text-align-last: left;
}

.worklifebalance .diver-kurumin {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .worklifebalance .diver-kurumin {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.worklifebalance .diver-kurumin .text-wrap {
  width: calc(100% - 200px);
}

@media screen and (max-width: 768px) {
  .worklifebalance .diver-kurumin .text-wrap {
    width: calc(100% - 120px);
  }
}

.worklifebalance .diver-kurumin .image-wrap {
  max-width: 145px;
}

@media screen and (max-width: 768px) {
  .worklifebalance .diver-kurumin .image-wrap {
    width: 100px;
  }
}

.worklifebalance .diver-kurumin .image-wrap img {
  width: 100%;
  height: auto;
}

.worklifebalance .diver-lecture {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

@media screen and (max-width: 768px) {
  .worklifebalance .diver-lecture {
    display: block;
  }
}

.worklifebalance .diver-lecture .text-wrap {
  width: calc(100% - 350px);
}

@media screen and (max-width: 768px) {
  .worklifebalance .diver-lecture .text-wrap {
    width: 100%;
  }
}

.worklifebalance .diver-lecture .image-wrap {
  max-width: 320px;
}

@media screen and (max-width: 768px) {
  .worklifebalance .diver-lecture .image-wrap {
    width: 70%;
    margin: 20px auto 0;
  }
}

.worklifebalance .diver-lecture .image-wrap img {
  width: 100%;
  height: auto;
}

.worklifebalance .diver-lgbtq {
  width: 90%;
  margin: 0 auto 20px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.worklifebalance .diver-lgbtq .image-wrap {
  margin: 0 2%;
}

.chart-2-sec.sec-education {
  padding-left: 30px;
  padding-right: 30px;
}

@media screen and (max-width: 768px) {
  .chart-2-sec.sec-education {
    padding-left: 3.33vw;
    padding-right: 3.33vw;
  }
}

.sdgs .main-title-wrap {
  position: relative;
  z-index: 2;
}

.sdgs .sec-top__content .text-wrap {
  width: 30%;
}

.sdgs .sec-top__content .image-wrap {
  position: relative;
  padding-bottom: 50px;
  width: 70%;
}

.sdgs .sec-top__content .image-wrap::before {
  content: "";
  width: 80%;
  height: 120%;
  display: block;
  background: #f5f5f5;
  position: absolute;
  z-index: 1;
  bottom: 0;
  right: 0;
}

.sdgs .sec-top__content .image-wrap img {
  margin-top: -130px;
  position: relative;
  max-width: 520px;
  width: 100%;
  height: auto;
  z-index: 3;
}

.sdgs .sec-sdgs {
  text-align: justify;
  position: relative;
  padding-bottom: 30px;
  width: 50%;
}

.sdgs .sec-sdgs::after {
  content: "";
  display: block;
  position: absolute;
  width: 98vw;
  height: 1px;
  border-bottom: 1px solid #707070;
  bottom: 0;
  left: 50%;
  margin-left: -49vw;
}

.sdgs .sec-sdgs img {
  max-width: 100%;
}

.sdgs .sec-sdgs__main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
}

.sec-sdgs-01 .sdgs .sec-sdgs__main {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.sdgs .sec-sdgs__image-main-wrap {
  width: 62%;
}

.sdgs .sec-sdgs__image-num {
  position: absolute;
  right: -7vw;
  bottom: 5em;
  mix-blend-mode: multiply;
  width: 10vw;
  max-width: 146px;
  height: auto;
  z-index: 2;
}

.sdgs .sec-sdgs__image-text {
  max-width: 674px;
  margin-bottom: 2.5em;
}

.sdgs .sec-sdgs__image-text-wrap {
  position: absolute;
  left: -3em;
  bottom: 0;
  z-index: 2;
}

.sdgs .sec-sdgs__image-text-wrap img {
  display: block;
}

.sdgs .sec-sdgs__image-icon {
  width: 12vw;
  height: auto;
}

.sdgs .sec-sdgs__image-icon.column-4 {
  max-width: 352px;
  width: 28vw;
  height: auto;
}

.sdgs .sec-sdgs__image-icon.column-1 {
  max-width: 74px;
  width: 5.8vw;
  height: auto;
}

.sdgs .sec-sdgs__content {
  padding-left: 5%;
  padding-right: 5%;
}

.sdgs .sec-sdgs .d-flex-text {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.sdgs .sec-sdgs .d-flex-text .sec-para {
  width: 47%;
}

.sdgs .sec-sdgs__more {
  color: #E60026 !important;
  text-decoration: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: auto;
  margin-right: 0;
  padding-top: 1em;
}

.sdgs .sec-sdgs__more:link {
  color: #E60026 !important;
  text-decoration: none;
}

.sdgs .sec-sdgs__more:hover .sec-sdgs__arrow {
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

.sdgs .sec-sdgs__arrow {
  margin-left: 1em;
  margin-bottom: 0.7em;
  -webkit-transition: -webkit-transform 0.3s;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
}

.sdgs .sec-sdgs-01 {
  padding-left: 10.5vw;
  padding-right: 10.5vw;
  width: 100%;
  overflow: visible;
}

.sdgs .sec-sdgs-01 .sec-sdgs__main {
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.sdgs .sec-sdgs-01 .sec-sdgs__content {
  padding-left: 0;
  padding-right: 0;
}

.sdgs .sec-sdgs-01 .sec-sdgs__image-text {
  max-width: 674px;
  width: 47vw;
  height: auto;
}

.sdgs .sec-sdgs-02 {
  padding-left: 20px;
}

.sdgs .sec-sdgs-02::before {
  content: "";
  display: block;
  width: 1px;
  height: 98%;
  border-right: 1px solid #707070;
  position: absolute;
  right: 0;
  top: 1%;
}

.sdgs .sec-sdgs-02 .sec-sdgs__main {
  padding-top: 105px;
  padding-bottom: 100px;
}

.sdgs .sec-sdgs-02 .sec-sdgs__image-icon {
  position: absolute;
  left: 0;
  bottom: 0;
  max-width: 152px;
}

.sdgs .sec-sdgs-02 .sec-sdgs__image-text {
  position: absolute;
  right: 0;
  top: 0;
  width: 18vw;
  height: auto;
  max-width: 259px;
}

.sdgs .sec-sdgs-02 .sec-sdgs__image-text-wrap {
  right: 0;
  top: 0;
  left: auto;
  width: 100%;
}

.sdgs .sec-sdgs-02 .sec-sdgs__image-num {
  left: 0;
  top: 23px;
  right: auto;
  bottom: auto;
}

.sdgs .sec-sdgs-02 .sec-sdgs__image-main-wrap {
  width: 90%;
  margin-left: -55px;
}

.sdgs .sec-sdgs-03 {
  padding-right: 20px;
}

.sdgs .sec-sdgs-03 .sec-sdgs__main {
  padding-bottom: 100px;
}

.sdgs .sec-sdgs-03 .sec-sdgs__image-icon {
  position: absolute;
  left: 0;
  top: 0;
}

.sdgs .sec-sdgs-03 .sec-sdgs__image-text {
  position: absolute;
  left: 0;
  bottom: 0;
  margin-bottom: 0;
  width: 35vw;
  max-width: 510px;
  height: auto;
}

.sdgs .sec-sdgs-03 .sec-sdgs__image-text-wrap {
  top: 0;
  left: auto;
  width: 100%;
}

.sdgs .sec-sdgs-03 .sec-sdgs__image-num {
  left: 16%;
  top: 183px;
  right: auto;
  bottom: auto;
}

.sdgs .sec-sdgs-03 .sec-sdgs__main {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.sdgs .sec-sdgs-03 .sec-sdgs__image-main-wrap {
  width: 70%;
}

.sdgs .sec-sdgs-04 {
  width: 45%;
  padding-left: 20px;
}

.sdgs .sec-sdgs-04::before {
  content: "";
  display: block;
  width: 1px;
  height: 98%;
  border-right: 1px solid #707070;
  position: absolute;
  right: 0;
  top: 1%;
}

.sdgs .sec-sdgs-04 .sec-sdgs__main {
  padding-top: 120px;
  padding-bottom: 100px;
  display: block;
}

.sdgs .sec-sdgs-04 .sec-sdgs__image-icon {
  position: absolute;
  right: 0;
  top: 0;
}

.sdgs .sec-sdgs-04 .sec-sdgs__image-text {
  position: absolute;
  left: 0;
  bottom: 0;
  margin-bottom: 0;
  width: 34vw;
  max-width: 560px;
}

.sdgs .sec-sdgs-04 .sec-sdgs__image-text-wrap {
  left: 0;
  top: 0;
  left: auto;
  width: 100%;
}

.sdgs .sec-sdgs-04 .sec-sdgs__image-num {
  left: 10%;
  top: 45px;
  right: auto;
  bottom: auto;
}

.sdgs .sec-sdgs-04 .sec-sdgs__main {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.sdgs .sec-sdgs-04 .sec-sdgs__image-main-wrap {
  width: 105%;
  margin-left: -55px;
}

.sdgs .sec-sdgs-05 {
  width: 55%;
  padding-right: 20px;
}

.sdgs .sec-sdgs-05 .sec-sdgs__main {
  padding-top: 220px;
  padding-bottom: 100px;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-icon {
  position: absolute;
  left: 45%;
  top: 7%;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-text {
  position: absolute;
  left: 0;
  top: 0;
  margin-bottom: 0;
  width: 20vw;
  max-width: 286px;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-text-wrap {
  left: 0;
  top: 0;
  left: auto;
  width: 100%;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-num {
  left: auto;
  top: auto;
  right: 30%;
  bottom: 5%;
}

.sdgs .sec-sdgs-05 .sec-sdgs__main {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-main-wrap {
  width: 73%;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-sub {
  width: 55%;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-sub.sub-02 {
  right: 0;
  top: 0;
}

.sdgs .sec-sdgs-05 .sec-sdgs__image-sub-wrap {
  margin-top: 30px;
  padding-top: 40px;
  padding-bottom: 30px;
  position: relative;
}

.sdgs .sec-sdgs-05 .sub-02-wrap {
  width: 100%;
  position: absolute;
  top: 0;
  text-align: right;
}

.sdgs .d-flex-sec-sdgs-last {
  border-bottom: 0;
}

.sdgs .d-flex-sec-sdgs-last::before {
  display: none;
}

.sdgs .d-flex-sec-sdgs-last .sec-sdgs::after {
  display: none;
}

@media screen and (max-width: 767px) {
  .sdgs .sec-top .d-flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .sdgs .sec-top__content {
    margin-bottom: 2vw;
  }
  .sdgs .sec-top__content .image-wrap {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 5vw;
  }
  .sdgs .sec-top__content .image-wrap::before {
    right: -5vw;
    bottom: -24vw;
    width: 65%;
  }
  .sdgs .sec-top__content .image-wrap img {
    margin-top: -15vw;
  }
  .sdgs .sec-top__content .text-wrap {
    width: 100%;
    position: relative;
    z-index: 3;
  }
  .sdgs .sec-sdgs {
    padding-top: 5vw;
    border-bottom: 1px solid #707070;
  }
  .sdgs .sec-sdgs::before, .sdgs .sec-sdgs::after {
    display: none !important;
  }
  .sdgs .sec-sdgs__image-num {
    right: 0;
    top: 0;
    left: auto;
    bottom: auto;
    z-index: 3;
    width: 22vw;
    height: auto;
  }
  .sdgs .sec-sdgs__image-icon {
    width: 22vw;
    height: auto;
  }
  .sdgs .sec-sdgs__image-icon.column-1 {
    width: 11vw;
    height: auto;
  }
  .sdgs .sec-sdgs__image-icon.column-4 {
    width: 50vw;
    height: auto;
  }
  .sdgs .sec-sdgs__content {
    padding-left: 0;
    padding-right: 0;
  }
  .sdgs .sec-sdgs .d-flex-text {
    display: block;
  }
  .sdgs .sec-sdgs .d-flex-text .sec-para {
    width: 100%;
  }
  .sdgs .sec-sdgs-01 {
    padding-left: 0;
    padding-right: 0;
  }
  .sdgs .sec-sdgs-01 .sec-sdgs__main {
    display: block;
    padding-top: 8vw;
  }
  .sdgs .sec-sdgs-01 .sec-sdgs__image-main-wrap {
    width: 100%;
    width: calc(100% + 10.5vw);
    margin-left: -5vw;
  }
  .sdgs .sec-sdgs-01 .sec-sdgs__image-text {
    width: 100%;
    max-width: 674px;
  }
  .sdgs .sec-sdgs-01 .sec-sdgs__image-text-wrap {
    position: relative;
    left: 0;
    margin-top: -18vw;
  }
  .sdgs .sec-sdgs-02 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .sdgs .sec-sdgs-02::before {
    display: none;
  }
  .sdgs .sec-sdgs-02 .sec-sdgs__main {
    display: block;
    padding-top: 20vw;
    padding-bottom: 15vw;
    margin-bottom: 15vw;
  }
  .sdgs .sec-sdgs-02 .sec-sdgs__image-main-wrap {
    width: 83%;
    margin-left: -5vw;
  }
  .sdgs .sec-sdgs-02 .sec-sdgs__image-text {
    width: 45%;
    max-width: 259px;
  }
  .sdgs .sec-sdgs-02 .sec-sdgs__image-text-wrap {
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 1vw;
  }
  .sdgs .sec-sdgs-02 .sec-sdgs__image-num {
    margin-top: 4vw;
  }
  .sdgs .sec-sdgs-03 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .sdgs .sec-sdgs-03 .sec-sdgs__main {
    padding-top: 0;
    padding-bottom: 15vw;
    margin-bottom: 8vw;
  }
  .sdgs .sec-sdgs-03 .sec-sdgs__image-main-wrap {
    width: 83%;
    margin-right: -5vw;
  }
  .sdgs .sec-sdgs-03 .sec-sdgs__image-text {
    width: 90%;
    max-width: 510px;
  }
  .sdgs .sec-sdgs-03 .sec-sdgs__image-text-wrap {
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 1vw;
  }
  .sdgs .sec-sdgs-03 .sec-sdgs__image-num {
    margin-top: 0;
    top: 12vw;
  }
  .sdgs .sec-sdgs-04 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }
  .sdgs .sec-sdgs-04::before {
    display: block;
    width: 100%;
  }
  .sdgs .sec-sdgs-04 .sec-sdgs__main {
    display: block;
    padding-top: 0;
    padding-bottom: 15vw;
    margin-bottom: 5vw;
  }
  .sdgs .sec-sdgs-04 .sec-sdgs__image-main-wrap {
    width: 87%;
    margin-left: -5vw;
  }
  .sdgs .sec-sdgs-04 .sec-sdgs__image-text {
    width: 100%;
    max-width: 560px;
  }
  .sdgs .sec-sdgs-04 .sec-sdgs__image-text-wrap {
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 1vw;
  }
  .sdgs .sec-sdgs-04 .sec-sdgs__image-num {
    margin-top: 9vw;
    right: -1vw;
    position: absolute;
    left: auto;
    top: 25vw;
  }
  .sdgs .sec-sdgs-04 .sec-sdgs__image-icon {
    top: 1vw;
    right: -1vw;
  }
  .sdgs .sec-sdgs-05 {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    border-bottom: 0;
  }
  .sdgs .sec-sdgs-05::before {
    display: block;
  }
  .sdgs .sec-sdgs-05 .sec-sdgs__main {
    padding-top: 42vw;
    padding-bottom: 15vw;
    margin-bottom: 0;
  }
  .sdgs .sec-sdgs-05 .sec-sdgs__image-main-wrap {
    width: 83%;
    margin-right: -5vw;
  }
  .sdgs .sec-sdgs-05 .sec-sdgs__image-text {
    width: 45%;
    max-width: 344px;
    left: 2vw;
  }
  .sdgs .sec-sdgs-05 .sec-sdgs__image-text-wrap {
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 1vw;
  }
  .sdgs .sec-sdgs-05 .sec-sdgs__image-num {
    margin-top: 9vw;
  }
  .sdgs .sec-sdgs-05 .sec-sdgs__image-icon {
    top: 16vw;
  }
  .sdgs .d-flex-sec-sdgs {
    display: block;
  }
}

.hs-group {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}

.font-feature-settings-palt {
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  letter-spacing: 0.1em;
}

.sustainability img {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.heading-num,
.heading-slogan {
  display: block;
  position: relative;
  padding-bottom: 0.4em;
  margin-bottom: 10px;
}

.heading-num::before,
.heading-slogan::before {
  content: "";
  width: 96px;
  height: 1px;
  display: block;
  background: #E60026;
  position: absolute;
  bottom: 0;
  left: 0;
}

.heading-num {
  font-size: 24px;
}

.bg-gray {
  background: #f5f5f5;
}

br.sp {
  display: none;
}

@media screen and (max-width: 767px) {
  br.sp {
    display: block;
  }
  .heading-num {
    font-size: 4vw;
  }
}

/*
 =========================================================
common_css（sustainability共通用スタイル）

2023.07.15

 =========================================================
*/

/* ヘッドライン枠：既存企業情報コンテンツのレイアウトに合わせる */
.hs-headline {padding-top: 0;}

@media screen and (max-width: 767px) {
	.hs-contents-not-padding--767 {padding-top: 0 !important;}
}

/* フッターの表示 */
@media screen and (max-width: 767px) {
	.hs-group {
		display: block !important;
		padding-left: 1.25rem;
	}

	.hs-group-links {
		display: block;
	}

	.hs-group-links dt {
		max-width: 100vw !important;
		margin-right: 0;
		margin-bottom: 1rem;
		margin-left: -1.25rem;
	}

	.hs-group-links dd ul li {
		display: block;
	}

	.hs-group-links dd ul li > a {
		padding-left: 0;
		background: none;
	}
}

#Contents .hs-container {
  width: 100%;
  max-width: 100%;
}

.hs-container{
  padding: 0;
}

.hs-headline,
.hs-breadcrumb {
	padding-right: 0.9375rem;
  padding-left: 0.9375rem;
}

@media screen and (max-width: 767px) {
	.hs-headline,
	.hs-breadcrumb {
		padding-right: 5%;
		padding-left: 5%;
	}
}


.inner-1280 {
	max-width: calc(1280px + 50px * 2);
	width: 100%;
	padding: 0 50px;
	margin: 0 auto;
}

.inner-1280--padding-30 {
	max-width: calc(1280px + 30px * 2);
	width: 100%;
	padding: 0 30px;
	margin: 0 auto;
}

.inner-958 {
	max-width: calc(958px + 50px * 2);
	width: 100%;
	padding: 0 50px;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.inner-1280 {
		padding: 0 30px;
	}

	.inner-958 {
		padding: 0 30px;
	}
}

@media screen and (max-width: 600px) {
	.inner-1280 {
		padding: 0 16px;
	}

	.inner-958 {
		padding: 0 16px;
	}
}

.common-inclusion__margin {
	margin-top: 50px;
}

@media screen and (min-width: 1024px) {
	.common-inclusion__margin {
		margin-top: 0;
		margin-left: 50px !important;
	}
}

.common-link-item-arrow {
	max-width: 28px;
	max-height: 28px;
	width: 100%;
	height: 100%;
	margin: 4px auto 0;
}

.common-link-item-arrow img {
	width: 100%;
	height: 100%;
}

/* 対談特集のスワイパー */
.common__conversation {
	background-color: #4B4B4B;
	width: 100vw;
	margin: 8.9375rem calc(50% - 50VW) 0;
	padding: 3.875rem 1.875rem 6.25rem;
}

@media screen and (max-width: 767px) {
	.common__conversation {
		margin-top: 6.25rem;
		padding: 3rem 1rem 5rem;
	}
}

.common__conversation--under {
	margin-top: 10.5rem;
}

@media screen and (max-width: 767px) {
	.common__conversation--under {
		margin-top: 7.5rem;
	}
}

.common__conversation-title {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 210px;
	height: 50px;
	margin: 0 auto;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2px;
	background-color: #000;
	color: #fff;
}

.common__conversation-title--sustainability {
	max-width: 357px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.common__conversation-title {
		width: 200px;
		font-size: 18px;
	}

	.common__conversation-title--sustainability {
		max-width: 280px;
		width: 100%;
	}
}

.common__swiper {
	position: relative;
	/* swiper + padding-left + padding-right */
	max-width: calc(450px + 4.0625rem * 2);
	padding: 0 4.0625rem;
	margin: 2.5rem auto 0;
}

.common__swiper--sustainability {
	max-width: calc(556px + 4.0625rem * 2);
}

@media screen and (max-width: 600px) {
	.common__swiper {
		max-width: calc(450px + 1.1875rem * 2);
		padding: 0 1.1875rem;
		margin-top: 2rem;
	}
}

@media screen and (min-width: 980px) {
	.common__swiper {
		max-width: calc(800px + 4.0625rem * 2);
	}
}

@media screen and (min-width: 1280px) {
	.common__swiper {
		max-width: calc(1144px + 4.0625rem * 2);
	}

	.common__swiper--under {
		max-width: calc(800px + 4.0625rem * 2);
	}

	.common__swiper--sustainability {
		max-width: 1280px;
	}
}

/* ヘッダーA の共通パーツ */
.common-mainvisual__circle {
	display: flex;
	align-items: center;
	height: 287px;
}

@media screen and (max-width: 767px) {
	.common-mainvisual__circle {
		height: 240px;
	}
}

@media screen and (max-width: 600px) {
	.common-mainvisual__circle {
		height: 130px;
	}
}

.common-mainvisual__circle-picture {
	max-width: 150px;
	max-height: 150px;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.common-mainvisual__circle-picture {
		max-width: 185px;
		max-height: 185px;
	}
}

@media screen and (max-width: 767px) {
	.common-mainvisual__circle-picture {
		max-width: 150px;
		min-width: 150px;
		max-height: 150px;
		width: 100%;
		height: 100%;
	}
}

@media screen and (max-width: 600px) {
	.common-mainvisual__circle-picture {
		max-width: 85px;
		min-width: 85px;
		max-height: 85px;
		width: 100%;
		height: 100%;
	}
}

.common-mainvisual__circle-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.common-mainvisual__circle-text {
	margin-left: 47px;
	font-size: 32px;
	line-height: 1.3;
	color: #fff;
	font-weight: bold;
	letter-spacing: 1px;
	width: calc(100% - 185px - 47px);
	margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
	.common-mainvisual__circle-text {
		font-size: 40px;
	}
}

@media screen and (max-width: 767px) {
	.common-mainvisual__circle-text {
		margin-left: 32px;
		font-size: 32px;
		color: #fff;
		font-weight: bold;
		width: calc(100% - 150px - 32px);
	}
}

@media screen and (max-width: 600px) {
	.common-mainvisual__circle-text {
		margin-left: 30px;
		font-size: 22px;
		color: #fff;
		font-weight: bold;
		width: calc(100% - 85px - 20px);
	}
}

/* ヘッダーB の共通パーツ */
.common__menus-b {
	width: 100%;
	padding: 0 1.875rem;
	margin: 6.25rem auto 0;
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #333;
}

.common__menus-b--foot {
	border-bottom: none;
}

@media screen and (max-width: 767px) {
	.common__menus-b {
		flex-wrap: wrap;
		padding: 0;
		margin: 0 auto;
	}

	.common__menus-b-no-wrap {
		flex-wrap: nowrap;
	}
}

.common__menu-b {
	max-width: 320px;
	width: 100%;
	height: 100px;
}

.common__menu-b-w-400 {
	max-width: 427px;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.common__menu-b {
		max-width: none;
		width: 50%;
		height: 70px;
	}

	.common__menu-b-w-400 {
		width: 100%;
		height: auto;
	}


	.common__menu-b-w-400 br {
		display: none;
	}
}

.common__menu-b--active {
	border: none;
	background-color: #cc0022;
}


.common__menu-b a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	color: inherit;
	height: 100%;
	color: #333;
	font-size: 16px;
	letter-spacing: 2px;
	font-weight: bold;
	transition: all 0.3s;
}

.common__menu-b--center a {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.common__menu-b a {
		font-size: 14px;
	}
}

@media screen and (max-width: 600px) {
	.common__menu-b--center a {
		font-size: 12px;
	}
}

.common__menu-b--active a {
	cursor: default;
	color: #fff;
}

.common__menu-b a:hover {
	opacity: 0.6;
}

.common__menu-b--active a:hover {
	opacity: 1;
}

@media screen and (min-width: 1024px) {
	.common__menu-b a {
		font-size: 20px;
	}

	.common__menu-b--center a {
		font-size: 20px;
		line-height: 1.4;
	}
}

@media screen and (max-width: 767px) {
	.common__menu-b a {
		padding: 0 0.625rem;
	}

	.common__menu-b-w-400 a {
		padding: 0.5rem;
		text-align: left;
	}
}

@media screen and (min-width: 768px) {
	.common__menu-b-border-top-right-left-pc {
		border: 1px solid #333;
		border-bottom: none;
	}

	.common__menu-b-border-top-right-pc {
		border-top: 1px solid #333;
		border-right: 1px solid #333;
	}

	.common__menu-b-border-bottom-pc {
		border-bottom: 1px solid #333;
	}
}

@media screen and (max-width: 767px) {
	.common__menu-b-border-top-right-left-sp {
		border: 1px solid #333;
		border-bottom: none;
	}

	.common__menu-b-border-right-left-sp {
		border-right: 1px solid #333;
		border-left: 1px solid #333;
	}

	.common__menu-b-border-top-left-sp {
		border-top: 1px solid #333;
		border-left: 1px solid #333;
	}

	.common__menu-b-border-bottom-sp {
		border-bottom: 1px solid #333;
	}

	/* プロジェクト終盤で白線にする必要があったので上書き */
	.common__menu-b-border-left--white {
		border-left: 1px solid #fff;
	}

	.common__menu-b-border-right--white {
		border-right: 1px solid #fff;
	}

	.common__menu-b-border-left--active {
		border-left: 1px solid #cc0022;
	}

	.common__menu-b-border-right--active {
		border-right: 1px solid #cc0022;
	}

	.common__menu-b-border-right-left--white {
		border-right: 1px solid #fff;
		border-left: 1px solid #fff;
	}

	.common__menu-b-border-right-left--none {
		border-right: none;
		border-left: none;
	}
}

.common__menu-b-border-bottom {
	border-bottom: 1px solid #333;
}

.common__links-c {
	padding: 1.625rem 0;
}

.common__links-c-border-top {
	border-top: 1px solid #333;
}

.common__links-c-border-bottom {
	border-bottom: 1px solid #333;
}

.common__link-flex-c {
	display: flex;
	flex-wrap: wrap;
}

@media screen and (max-width: 600px) {
	.common__link-flex-c {
		display: block;
	}

	.common__link-flex-c:not(:last-child) {
		margin-bottom: 1.5rem;
	}
}

.common__link-c:not(:last-child) {
	margin-right: 2.6875rem;
}

@media screen and (max-width: 600px) {
	.common__link-c:not(:last-child) {
		margin-bottom: 1.5rem;
	}
}

@media screen and (max-width: 600px) {
	.common__link-c:not(:last-child) {
		margin-right: 0;
	}
}

.common__links-c {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.common__link-c a {
	position: relative;
	display: block;
	text-decoration: none;
	color: inherit;
	padding-right: 36px;
	font-size: 16px;
	line-height: 45px;
	letter-spacing: 2px;
	font-weight: bold;
	transition: all 0.3s;
}

.common__link-c a:hover {
	opacity: 0.6;
}

@media screen and (min-width: 1024px) {
	.common__link-c a {
		font-size: 20px;
		line-height: 56px;
	}
}

@media screen and (max-width: 600px) {
	.common__link-c a {
		display: inline-block;
		line-height: 24px;
	}
}

.common__link-c a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/human-inclusion-arrow.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.common__link-c a::before {
		width: 28px;
		height: 28px;
	}
}

@media screen and (max-width: 600px) {
	.common__link-c a::before {
		top: 0;
		transform: none;
	}
}

/* 見出しA の共通パーツ */
.common__heading-a {
	font-size: 32px;
	letter-spacing: 4px;
	line-height: 1.5;
	font-weight: bold;
	color: #333;
	margin-right: 0 !important;
	margin-left: 0 !important;
	background-image: none !important;
}

.common__heading-a--white {
	color: #fff;
}

@media screen and (min-width: 1024px) {
	.common__heading-a {
		font-size: 40px;
	}
}

@media screen and (max-width: 767px) {
	.common__heading-a {
		font-size: 30px;
		letter-spacing: 1px;
	}
}

.common__heading-a-mt-78 {
	margin-top: 4.875rem;
}

@media screen and (max-width: 767px) {
	.common__heading-a-mt-78 {
		margin-top: 4rem;
	}
}

/* 見出しB の共通パーツ */
.common__heading-b {
	display: flex;
	margin-top: 2.6875rem;
}

.common__heading-b--materiality {
	align-items: center;
}

.common__heading-b-mini {
	display: flex;
	margin-top: 2.6875rem;
}

.common__heading-b-container {
	display: flex;
	margin-top: 2.5rem;
}

.common__heading-b-container--mt-0 {
	margin-top: 0;
}

.common__heading-b-clip-path {
	margin-top: 4px;
	max-width: 49px;
	max-height: 30px;
	min-width: 49px;
	min-height: 30px;
	clip-path: polygon(60% 0, 100% 0%, 40% 100%, 0% 100%);
	background-color: #cc0022;
}

.common__heading-b--materiality .common__heading-b-clip-path {
	margin-top: 0;
}

@media screen and (min-width: 1024px) {
	.common__heading-b-clip-path {
		margin-top: 8px;
	}

	.common__heading-b--materiality .common__heading-b-clip-path {
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.common__heading-b-clip-path {
		margin-top: 6px;
		max-width: 32px;
		max-height: 20px;
		min-width: 32px;
		min-height: 20px;
	}

	.common__heading-b--materiality .common__heading-b-clip-path {
		margin-top: 0;
	}
}

.common__heading-b-clip-path-mini {
	min-width: 33px;
	min-height: 20px;
	clip-path: polygon(60% 0, 100% 0%, 40% 100%, 0% 100%);
	background-color: #cc0022;
}

.common__heading-b-clip-path-container {
	margin-top: 4px;
	width: 18px;
	height: 18px;
	min-width: 18px;
	min-height: 18px;
	background-color: #cc0022;
}

.common__heading-b-clip-path-container-ex {
	margin-top: 5px;
	width: 18px;
	height: 18px;
	min-width: 18px;
	min-height: 18px;
	background-color: #cc0022;
}

.common__heading-b-clip-path-container-dx {
	margin-top: 5px;
	width: 18px;
	height: 18px;
	min-width: 18px;
	min-height: 18px;
	background-color: #cc0022;
}

@media screen and (max-width: 767px) {
	.common__heading-b-clip-path-container-mt-sp-03 {
		margin-top: 3px;
	}
}

.common__heading-b-clip-path-container--20 {
	margin-top: 7px;
	width: 18px;
	height: 18px;
	min-width: 18px;
	min-height: 18px;
	background-color: #cc0022;
}

@media screen and (max-width: 767px) {
	.common__heading-b-clip-path-container--20 {
		margin-top: 3px;
	}
}

.common__heading-b-clip-path-container-mini {
	margin-top: 7px;
	width: 18px;
	height: 18px;
	min-width: 18px;
	min-height: 18px;
	background-color: #cc0022;
}

.common__heading-b p {
	margin-left: 0.5rem;
	font-size: 25px;
	font-weight: bold;
	letter-spacing: 2.5px;
}

.common__heading-b .common__heading-b-title {
	margin: 0 0 0 0.625rem;
	font-size: 24px;
	font-weight: bold;
	letter-spacing: 2.5px;
	background: none;
	color: #333;
}

.common__heading-b .common__heading-b-title--black {
	color: black;
}

.common__heading-b .common__heading-b-icon {
	width: 60px;
	height: 60px;
	object-fit: cover;
	object-position: center;
	border-radius: 50%;
	display: block;
	margin-left: 16px;
}

.common__heading-b-mini p {
	margin-left: 0.625rem;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2.5px;
}

.common__heading-b-mini h3,
.common__heading-b-mini h5 {
	margin-left: 0.625rem;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2.5px;
	margin-bottom: 0 !important;
	color: #333;
}

.common__heading-b-container p {
	margin-left: 0.625rem;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 2.5px;
}

.common__heading-b-container .common__heading-b-container-title {
	margin-left: 0.625rem;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 2.5px;
}

@media screen and (min-width: 1024px) {
	.common__heading-b .common__heading-b-title {
		font-size: 30px;
	}
}

@media screen and (max-width: 767px) {
	.common__heading-b p {
		font-size: 18px;
	}

	.common__heading-b .common__heading-b-title {
		font-size: 20px;
	}

	.common__heading-b-mini p {
		font-size: 16px;
	}

	.common__heading-b-container p {
		font-size: 16px;
	}

	.common__heading-b .common__heading-b-icon {
		width: 40px;
		height: 40px;
	}
}

.common__heading-c {
	display: flex;
	flex-direction: column;
	gap: 16px;
}

@media screen and (min-width: 1024px) {
	.common__heading-c {
		flex-direction: row;
		gap: 24px;
	}
}

.common__heading-c-clip-path {
	position: relative;
	display: flex;
	align-items: center;
	width: fit-content;
	min-width: 300px;
	font-size: 20px;
	padding: 10px 14px;
	background-color: #71BDB5;
	color: #fff;
	margin-right: 30px;
}

.common__heading-c-clip-path--w-max {
	min-width: calc(100% - 30px);
	margin-right: 0;
}

.common__heading-c-clip-path--report-03,
.common__heading-c-clip-path--innovation {
	letter-spacing: 0.1em;
	font-weight: 700;
}

@media screen and (min-width: 1024px) {
	.common__heading-c-clip-path {
		width: auto;
	}
}

@media screen and (max-width: 767px) {
	.common__heading-c-clip-path {
		min-width: 270px;
		padding: 8px 14px;
		font-size: 19px;
	}

	.common__heading-c-clip-path--w-max {
		min-width: calc(100% - 25px);
	}
}

@media screen and (max-width: 600px) {
	.common__heading-c-clip-path {
		min-width: 240px;
		padding: 6px 14px;
		font-size: 18px;
	}

	.common__heading-c-clip-path--w-max {
		min-width: calc(100% - 20px);
	}
}

.common__heading-c-clip-path::before {
	content: "";
	position: absolute;
	top: 0;
	left: calc(100% - 1px);
	width: 30px;
	height: 100%;
	background-color: #71BDB5;
	clip-path: polygon(0 0, 0% 100%, 100% 50%);
}

@media screen and (max-width: 767px) {
	.common__heading-c-clip-path::before {
		width: 25px;
	}
}


@media screen and (max-width: 600px) {
	.common__heading-c-clip-path::before {
		width: 20px;
	}
}

.common__heading-c-title {
	font-size: 24px;
	line-height: 1.5;
	font-weight: 500;
	margin: 0;
	font-weight: 700;
	color: #333 !important;
}

@media screen and (min-width: 1024px) {
	.common__heading-c-title {
		padding-top: 8px;
	}
}

@media screen and (max-width: 767px) {
	.common__heading-c-title {
		font-size: 20px;
	}
}

@media screen and (max-width: 600px) {
	.common__heading-c-title {
		font-size: 18px;
	}
}

/* 中央揃え */
.center {
	text-align: center;
}

.margin-center {
	margin-right: auto;
	margin-left: auto;
}

/* 本文A の共通パーツ */
.common__texts-a {
	margin-top: 1.875rem;
}

.common__texts-a--group {
	margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
	.common__texts-a--group {
		margin-top: 1.5rem;
	}
}

.common__texts-a--white {
	color: #fff;
}

.common__text-a {
	font-size: 16px;
	line-height: calc(27 / 16);
	letter-spacing: 0px;
}

/* 改行用クラス common__text-a--mt */
.common__text-a--mt {
	margin-top: calc(16px * 27 / 16);
}

@media screen and (max-width: 767px) {
	.common__text-a {
		font-size: 14px;
	}

	.common__text-a--mt {
		margin-top: calc(14px * 27 / 16);
	}
}

.common__text-a--20 {
	font-size: 20px;
}

@media screen and (max-width: 767px) {
	.common__text-a--20 {
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.common__text-a--20 {
		font-size: 16px;
	}
}

.common__text-a--mini {
	font-size: 12px;
}

@media screen and (max-width: 767px) {
	.common__text-a--mini {
		font-size: 10px;
	}
}

.common__text-a--up {
	vertical-align: super;
	font-size: 2px;

}

.common__text-a--right {
	text-align: right;
}

.common__text-a--center {
	text-align: center;
}

.common__text-a--under {
	font-size: 2px;
}

.common__text-a--bold {
	font-weight: 700;
}

.common__link-animation {
	background-image: linear-gradient(to right, rgba(0,0,0,0) 50%, #cc0022 50%);
	background-position: 0 0;
	background-size: 200% auto;
	transition: all 0.3s;
	color: #cc0022;
}

.common__link-animation:hover {
	background-position: -100% 0;
	color: #fff;
}

.common__text-a-line-height-2 {
	line-height: 2;
}

/* 本文B の共通パーツ */
.common__red-bar-b {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.common__title-b {
	display: inline-block;
	margin: 1rem 0 0 !important;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: calc(34 / 20);
	color: #fff;
	background-color: #000;
	padding: 8px 30px;
	width: fit-content;
	background-image: none !important;
}

@media screen and (max-width: 767px) {
	.common__title-b {
		font-size: 18px;
		line-height: 1.5;
		padding: 6.5px 24px;
	}
}

@media screen and (max-width: 600px) {
	.common__title-b {
		font-size: 16px;
		padding: 6.5px 15px;
	}
}

/* 本文C の共通パーツ */
.common__title-c {
	display: flex;
	font-size: 25px;
	line-height: 1.5;
}

@media screen and (max-width: 767px) {
	.common__title-c {
		font-size: 20px;
	}
}

.common__title-c-number {
	background-color: #000;
	color: #fff;
	display: flex;
	justify-content: center;
	width: 53px;
	padding-top: 8px;
}

@media screen and (max-width: 767px) {
	.common__title-c-number {
		width: 35px;
	}
}

.common__title-c-main {
	background-color: #d8d8d8;
	color: #000;
	padding: 8px 16px;
	width: calc(100% - 53px);
	margin-bottom: 0 !important;
	font-weight: 400;
}

@media screen and (max-width: 767px) {
	.common__title-c-main {
		width: calc(100% - 35px);
	}
}

.common__title-c-main-width-all {
	width: 100%;
}

.common__title-c-heading {
	background-color: #d8d8d8;
	color: #000;
	padding: 8px 16px;
	width: 100%;
	font-size: 20px;
	line-height: calc(34 / 20);
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.common__title-c-heading {
		font-size: 18px;
    line-height: 1.5;
	}
}

.common__text-c {
	font-size: 16px;
	line-height: calc(27 / 16);
	letter-spacing: 0px;
}

.common__sup {
	font-size: 8px;
}

.common__sup--table {
	font-size: 12px;
	vertical-align: top;
	position: relative;
	top: -0.5em;
}

@media screen and (max-width: 767px) {
	.common__sup--table {
		font-size: 10px;
	}
}

@media screen and (max-width: 600px) {
	.common__sup--table {
		font-size: 8px;
	}
}

.common__co2 {
	font-size: 12px;
}

@media screen and (max-width: 767px) {

	.common__text-c {
		font-size: 14px;
	}
}

/* 本文D の共通パーツ */
.common__title-d {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 25px;
	line-height: 1.5;
	padding: 8px 16px;
	background-color: #333;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.common__title-d {
		font-size: 20px;
	}
}

/* 図表B */
.common__table-b {
	display: flex;
}

.common__table-b--overflow {
	overflow: hidden;
	overflow-x: auto;
}

.common__table-b-heading {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2px;
}

.common__table-b-heading--lh-2 {
	line-height: 2;
}

@media screen and (max-width: 767px) {
	.common__table-b-heading {
		font-size: 18px;
	}
}

.common__table-b-heading--fs-18 {
	font-size: 18px;
}

@media screen and (max-width: 767px) {
	.common__table-b-heading--fs-18 {
		font-size: 16px;
	}
}

.common__table-b-heading--red {
	color: #cc0022;
}

.common__table-b-heading-mt-50 {
	margin-top: 3.125rem;
}

@media screen and (max-width: 767px) {
	.common__table-b-heading-mt-50 {
		margin-top: 1.875rem;
	}
}

.common-table-b-column-w-100 {
	min-width: 100px;
}

.common-table-b-column-w-200 {
	min-width: 200px;
}

.common-table-b-column-w-210 {
	min-width: 210px;
}

.common-table-b-column-w-250 {
	min-width: 250px;
}

.common-table-b-column-w-300 {
	min-width: 300px;
}

.common-table-b-column-w-320 {
	min-width: 320px;
}

.common-table-b-column-w-403 {
	min-width: 403px;
}

@media screen and (max-width: 767px) {
	.common-table-b-column-w-230-sp {
		min-width: 230px;
	}

	.common-table-b-column-w-220-sp {
		min-width: 220px;
	}

	.common-table-b-column-w-200-sp {
		min-width: 200px;
	}

	.common-table-b-column-w-180-sp {
		min-width: 180px;
	}

	.common-table-b-column-w-160-sp {
    min-width: 160px;
	}

	.common-table-b-column-w-150-sp {
		min-width: 150px;
	}

	.common-table-b-column-w-140-sp {
		min-width: 140px;
	}

	.common-table-b-column-w-130-sp {
		min-width: 130px;
	}

	.common-table-b-column-w-120-sp {
		min-width: 120px;
	}

	.common-table-b-column-w-100-sp {
		min-width: 100px;
	}
}

@media screen and (max-width: 600px) {
	.common-table-b-column-w-180-sp-mini {
		max-width: 180px;
		min-width: 180px;
	}

	.common-table-b-column-w-160-sp-mini {
		max-width: 160px;
		min-width: 160px;
	}

	.common-table-b-column-w-150-sp-mini {
		max-width: 150px;
		min-width: 150px;
	}

	.common-table-b-column-w-120-sp-mini {
		max-width: 120px;
		min-width: 120px;
	}

	.common-table-b-column-w-110-sp-mini {
		max-width: 110px;
		min-width: 110px;
	}

	.common-table-b-column-w-100-sp-mini {
		max-width: 100px;
		min-width: 100px;
	}

	.common-table-b-column-w-90-sp-mini {
		max-width: 90px;
		min-width: 90px;
	}

	.common-table-b-column-w-80-sp-mini {
		max-width: 80px;
		min-width: 80px;
	}

	.common-table-b-column-w-70-sp-mini {
		max-width: 70px;
		min-width: 70px;
	}
}

.common-table-column-b:not(:first-child) {
	margin-left: 4px;
}

.common-table-column-b-flex {
	display: flex;
}

.common__table-title-b {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #000;
	color: #fff;
	font-size: 20px;
	letter-spacing: 2px;
	padding: 0 16px;
}

@media screen and (max-width: 767px) {
	.common__table-title-b {
		font-size: 16px;
		padding: 0 10px;
	}
}

@media screen and (max-width: 600px) {
	.common__table-title-b {
		font-size: 12px;
	}
}

.common__table-title-b-font-14 {
	font-size: 14px;
}

@media screen and (max-width: 767px) {
	.common__table-title-b-font-14 {
		font-size: 12px;
	}
}

@media screen and (max-width: 600px) {
	.common__table-title-b-font-14 {
		font-size: 10px;
	}
}

.common__table-title-h-66-b {
	height: 66px;
}

.common__table-title-b:not(:first-child) {
	margin-left: 4px;
}

.common__table-title-b-not-ml {
	margin-left: 0;
}

.common__table-title-b-h-136 {
	height: 136px;
}

.common__table-item-b {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 4px;
	background-color: #fff;
	color: #000;
	font-size: 20px;
	letter-spacing: 2px;
	padding: 0 16px;
}

@media screen and (max-width: 767px) {
	.common__table-item-b {
		font-size: 16px;
		padding: 0 10px;
	}
}

@media screen and (max-width:600px) {
	.common__table-item-b {
		font-size: 12px;
	}
}

.common__table-item-h-66-b {
	height: 66px;
}

/* 背景とコンテナーの共通クラス */
.common__background--inner-break {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

.common__container-background {
	display: inline-block;
	background-color: #f2f2f2;
	padding: 20px;
}

.common__container-background--p-30 {
	padding: 30px;
}

@media screen and (max-width:767px) {
	.common__container-background--p-30 {
		padding: 24px;
	}
}

@media screen and (max-width:600px) {
	.common__container-background--p-30 {
		padding: 20px;
	}
}

.common__background--white {
	background-color: #fff;
}

.common__background--gray {
	background-color: #f2f2f2;
}

.common__background--gray {
	background-color: #f2f2f2;
}

.common__background--light-gray {
	background-color: #DBDCDC;
}

.common__background--light-blue {
	background-color: #CBE3F1;
}

.common__background--light-gray {
	background-color: #DBDCDC;
}

.common__container {
	padding: 3.125rem 0;
}

.common__container-background--report-2023 {
	display: flex;
	gap: 40px;
	flex-direction: column;
}

@media screen and (min-width: 1024px) {
	.common__container-background--report-2023 {
		flex-direction: row;
	}
}

@media screen and (max-width: 767px) {
	.common__container-background--report-2023 {
		gap: 32px;
	}
}

.common__container-background--materiality {
	display: flex;
	align-items: center;
	gap: 6%;
	padding: 24px 40px;
}

@media screen and (min-width: 1024px) {
	.common__container-background--materiality {
		gap: 10%;
	}
}

@media screen and (max-width: 767px) {
	.common__container-background--materiality {
		flex-direction: column;
		gap: 20px;
		padding: 32px 30px;
	}
}

@media screen and (max-width: 600px) {
	.common__container-background--materiality {
		padding: 28px 20px;
	}
}

.common__container-background--width-max {
	width: 100%;
}

.common__container-background--diversity-inclusion {
	display: inline-block;
	background-color: #f2f2f2;
	padding: 40px 70px;
}

.common__container-item:not(:first-child) {
	margin-top: 4rem;
}

@media screen and (max-width: 767px) {
	.common__container {
		padding: 2.5rem 0;
	}
	.common__container-item:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.common__container-delimiter {
	margin: 6.25rem 0;
	width: 100%;
	height: 1px;
	background-color: #000;
}

@media screen and (max-width: 767px) {
	.common__container-delimiter {
		margin: 4.375rem 0;
	}
}

/* サステナビリティ用で使っているflexパーツ */
.common-parts__flex {
	display: block;
}

.common-parts__flex-between {
	justify-content: space-between;
}

@media screen and (min-width: 1024px) {
	.common-parts__flex {
		display: flex;
	}
}

.common-parts__flex-reverse {
	flex-direction: row-reverse;
}

.common-parts__flex-main {
	margin-top: 2.5rem;
	max-width: none;
	width: 100%;
	min-width: 372px;
}

.common-parts__flex-main--sx {
	max-width: none;
}

@media screen and (min-width: 1024px) {
	.common-parts__flex-main {
		max-width: 460px;
		margin-left: 1.875rem;
		margin-top: 0;
	}

	.common-parts__flex-main--sx {
		max-width: 470px;
	}
}

.common-parts__flex-main--management {
	max-width: 470px;
}

.common-parts__flex-main--dx {
	max-width: 510px;
}

.common-parts__flex-reverse .common-parts__flex-main {
	margin-left: 0;
}

@media screen and (max-width: 767px) {
	.common-parts__flex-main {
		margin-left: 0;
		max-width: none;
		min-width: auto;
		margin-top: 1.25rem;
	}
	.common-parts__flex-reverse .common-parts__flex-main {
		margin-top: 1.25rem;
	}
}

.common-parts__flex-picture {
	margin-right: 0;
	height: 300px;
	margin-left: calc(50% - 50vw);
}

@media screen and (min-width: 1024px) {
	.common-parts__flex-picture {
		height: 420px;
	}
}

.common-parts__flex-picture--ideathon {
	height: 582px;
}

.common-parts__flex-reverse .common-parts__flex-picture {
	margin-right: calc(50% - 50vw);
	margin-left: 1.875rem;
}

@media screen and (min-width: 1024px) {
	.common-parts__flex-picture--management {
		position: relative;
	}

	.common-parts__flex-picture--management::before {
		content: "";
		position: absolute;
		top: 0;
		left: -1px;
		max-width: 185px;
		max-height: 420px;
		width: 100%;
		height: 100%;
		background-color: #fff;
		clip-path: polygon(0 0, 0% 100%, 100% 0);
	}

	.common-parts__flex-reverse .common-parts__flex-picture-sx-right {
		margin-left: -5rem;
	}

	.common-parts__flex-picture-sx-left {
		position: relative;
	}

	.common-parts__flex-picture-sx-left::before {
		content: "";
		position: absolute;
		bottom: -1px;
		right: -1px;
		max-width: 185px;
		max-height: 420px;
		width: 100%;
		height: 100%;
		background-color: #fff;
		clip-path: polygon(100% 0, 0 100%, 100% 100%);
	}


	.common-parts__flex-picture-sx-left--tentative::before {
		max-width: 288px;
	}
}

@media screen and (min-width: 1024px) {
	.common-parts__flex-reverse .common-parts__flex-picture-sx-right {
		margin-left: 1.875rem;
	}
}

@media screen and (max-width: 767px) {
	.common-parts__flex-picture {
		margin-top: 0;
		margin-left: -30px;
		margin-right: calc(50% - 50vw);
		height: 162px;
	}

	.common-parts__flex-picture--ideathon {
		height: 300px;
	}

	.common-parts__flex-reverse .common-parts__flex-picture {
		margin-left: -30px;
	}
}

@media screen and (max-width: 600px) {
	.common-parts__flex-picture {
		margin-right: -16px;
		margin-left: -16px;
	}

	.common-parts__flex-reverse .common-parts__flex-picture {
		margin-left: -16px;
	}
}

.common-parts__flex-picture img {
	width: 100vw;
	height: 100% !important;
	object-fit: cover;
	object-position: right center;
}

.common-parts__flex-reverse .common-parts__flex-picture img {
	object-position: left center;
}

.common-parts__flex-reverse .common-parts__flex-picture--management img {
	object-position: left center;
}

.common-parts__flex-reverse .common-parts__flex-picture-sx-right img {
	object-position: left center;
}

.common-parts__flex-picture-sx-left img {
	object-position: 100% 50%;
}

@media screen and (min-width: 1024px) {
	.common-parts__flex-picture-sx-left img {
		object-position: 53% 50%;
	}

	.common-parts__flex-reverse .common-parts__flex-picture--management img {
		object-position: 65% 50%;
	}
}

.common-parts__flex-picture--ideathon img {
	object-position: 35% 50%;
}

.common-parts__flex-reverse .common-parts__flex-picture--ideathon img {
	object-position: 43% 100%;
}

@media screen and (max-width: 767px) {
	.common-parts__flex-picture--ideathon img {
		object-position: center center;
	}

	.common-parts__flex-reverse .common-parts__flex-picture--ideathon img {
		object-position: center bottom;
	}

	.common-parts__flex-reverse .common-parts__flex-picture--management img {
		object-position: left center;
	}
}

@media screen and (max-width: 600px) {
	.common-parts__flex-picture-sx-left img {
		object-position: right center;
	}
}

/* ESG カテゴリリンク 共通パーツ */
.common-category__links {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 2.25rem;
	max-width: calc(838px + 50px * 2);
	margin: 8rem auto 9.35rem;
	padding: 0px 50px;
}

.common-category__links--group {
	max-width: 100%;
	margin: 1.25rem auto 0;
	padding: 0;
}

.common-category__link {
	width: calc((100% - 2.25rem) / 2);
}

.common-category__link--group {
	width: calc((100% - 2.25rem) / 2);
}

@media screen and (max-width: 767px) {
	.common-category__links {
		max-width: 500px;
		margin: 6.4rem auto 7.48rem;
		padding: 0px 20px;
	}

	.common-category__links--group {
		margin: 0;
		margin: 1rem auto 0;
		padding: 0;
	}

	.common-category__link {
		width: 100%;
	}
}

@media screen and (min-width: 1024px) {
	.common-category__links {
		max-width: calc(1275px + 50px * 2);
		margin: 10rem auto 11.6875rem;
	}

	.common-category__links--group {
		max-width: 100%;
		margin: 1.25rem auto 0;
	}

	.common-category__link {
		width: calc((100% - 2.25rem * 2) / 3);
	}

	.common-category__link--group {
		width: calc((100% - 2.25rem) / 2);
	}
}

.common-category__link a {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s;
}

.common-category__link a:hover {
	opacity: 0.6;
}

.common-category__link-name {
	display: flex;
	justify-content: center;
	background-color: #000;
	color: #fff;
	width: 100%;
	padding: 10px 20px;
	font-size: 20px;
	letter-spacing: 1px;
}

.common-category__links--group .common-category__link-name {
	font-size: 17px;
	margin: 0 !important;
}

@media screen and (min-width: 1024px) {
	.common-category__links--group .common-category__link-name {
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {
	.common-category__link-name {
		font-size: 18px;
		padding: 10px 16px;
	}

	.common-category__links--group .common-category__link-name {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.common-category__links--group .common-category__link-name {
		font-size: 15px;
	}
}

.common-category__link-picture {
	position: relative;
	width: 100%;
	height: 100%;
}

.common-category__link-picture img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
}

.common-category__link-more-info {
	position: absolute;
	display: flex;
	justify-content: space-between;
	align-items: center;
	right: 0;
	bottom: 0;
	max-width: 100%;
	min-width: 75%;
	height: 50px;
	padding-right: 5%;
	padding-left: 8%;
	background-color: #cc0022;
}

.common-category__link-more-info-text {
	color: #fff;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.common-category__link-more-info-text {
		font-size: 18px;
	}
}

.common-category__link-more-info-arrow {
	position: relative;
	width: 7px;
	height: 16px;
}

.common-category__link-more-info-arrow img {
	width: 100%;
	height: 100%;
}

.common-category__link-arrow {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #cc0022;
}

@media screen and (max-width: 767px) {
	.common-category__link-arrow {
		width: 45px;
		height: 45px;
	}
}

@media screen and (max-width: 767px) {
	.common-category__link-arrow {
		width: 40px;
		height: 40px;
	}
}

.common-category__link-arrow-icon {
	width: 7px;
	height: 16px;
}

/* ESG カテゴリリンク 単体の共通パーツ */
.common-category__link-double {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px;
}

@media screen and (max-width: 767px) {
	.common-category__link-double {
		grid-template-columns: 1fr;
		gap: 30px;
	}
}

.common-category__link-single {
	position: relative;
	max-width: 609px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.common-category__link-single a {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s;
}

.common-category__link-single a:hover {
	opacity: 0.6;
}

.common-category__link-picture--single img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.common-category__link-more-info-single {
	position: absolute;
	display: flex;
	justify-content: space-between;
	align-items: center;
	right: 0;
	bottom: 0;
	width: 300px;
	height: 50px;
	padding-right: 20px;
	padding-left: 20px;
	background-color: #cc0022;
}

@media screen and (max-width: 600px) {
	.common-category__link-more-info-single {
		max-width: 75%;
	}
}

/* アイコンリンク用の共通パーツ */
.common__icon-link-flame {
	max-width: 966px;
	width: 100%;
	padding: 30px 20px;
	margin: 0 auto 6.25rem;
	border-radius: 8px;
	box-shadow: 0px 0px 10px rgba(0 , 0, 0 , 0.1);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.common__icon-link-flame {
		margin: 0 auto 4rem;
	}
}

.common__icon-link-items {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 708px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}


@media screen and (min-width: 1024px) {
	.common__icon-link-items--sustainability {
		max-width: 892px;
	}
}

.common__icon-link-item {
	display: flex;
	justify-content: center;
}

.common__icon-link-item--sustainability {
	width: calc((100% - 50px) / 5);
}

@media screen and (min-width: 1024px) {
	.common__icon-link-item--sustainability {
		width: calc((100% - 128px) / 5);
	}
}

.common__icon-link-item-w-233 {
	width: 233px;
}

@media screen and (max-width: 767px) {
	.common__icon-link-item {
		width: 100%;
	}

	.common__icon-link-item:not(:first-child) {
		margin-top: 1.875rem;
	}
}

@media screen and (max-width: 600px) {
	.common__icon-link-item--center {
		width: 100%;
	}

	.common__icon-link-item--center:not(:first-child) {
		margin-top: 2.5rem;
	}
}

.common__icon-link-item a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s;
}


@media screen and (max-width: 767px) {
	.common__icon-link-item a {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		width: 100%;
	}
}

@media screen and (min-width: 1024px) {
	.common__icon-link-item--sustainability a {
		flex-direction: column;
		text-decoration: none;
		color: inherit;
		transition: all 0.3s;
	}
}

.common__icon-link-item a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 767px) {
	.common__icon-link-item a {
		margin-right: auto;
		margin-left: auto;
	}
}

.common__icon-link-item-picture {
	max-width: 126px;
	max-height: 126px;
	width: 100%;
	height: 100%;
	margin-right: auto;
	margin-left: auto;
}

.common__icon-link-item--sustainability .common__icon-link-item-picture {
	max-width: 90px;
	max-height: 90px;
}

@media screen and (min-width: 1024px) {
	.common__icon-link-item--sustainability .common__icon-link-item-picture {
		max-width: 126px;
		max-height: 126px;
	}
}

@media screen and (max-width: 767px) {
	.common__icon-link-item--sustainability .common__icon-link-item-picture {
		max-width: 126px;
		max-height: 126px;
	}
}

@media screen and (max-width: 600px) {
	.common__icon-link-item-picture {
		max-width: 85px;
		max-height: 85px;
	}

	.common__icon-link-item--sustainability .common__icon-link-item-picture {
		max-width: 85px;
		max-height: 85px;
	}
}

.common__icon-link-item-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.common__icon-link-item--foot .common__icon-link-item-picture img {
	min-width: 126px;
}

@media screen and (max-width: 600px) {
	.common__icon-link-item--foot .common__icon-link-item-picture img {
		min-width: 85px;
	}
}

.common__icon-link-item-title {
	margin-top: 10px;
	font-size: 18px;
	line-height: calc(26 / 18);
	font-weight: bold;
	text-align: center;
	flex-grow: 1;
	display: flex;
	align-items: center;
	justify-content: center;
}

.common__icon-link-item-title--sustainability-four {
	font-size: 16px;
}

.common__icon-link-item--sustainability .common__icon-link-item-title {
	font-size: 16px;
}

@media screen and (min-width: 1024px) {
	.common__icon-link-item-title--sustainability-four {
		font-size: 18px;
	}

	.common__icon-link-item--sustainability .common__icon-link-item-title {
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {
	.common__icon-link-item-title {
		font-size: 16px;
		margin-top: 0;
		margin-right: 1rem;
		margin-left: 2rem;
		justify-content: start;
		text-align: left;
	}
}

@media screen and (max-width: 600px) {
	.common__icon-link-item-title {
		margin-left: 1rem;
	}
}

.common__icon-link-item-arrow {
	max-width: 28px;
	max-height: 28px;
	width: 100%;
	height: 100%;
	margin: 4px auto 0;
}

.common__icon-link-item-arrow img {
	width: 100%;
	height: 100%;
}

/* リンクA の共通パーツ */
.common__link-a {
	display: inline-block;
	background-color: #cc0022;
	margin-right: auto;
	margin-left: auto;
}

.common__link-a--link-single {
	display: block;
	max-width: 609px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.common__link-a-width-all {
	width: 100%;
}

.common__link-a a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
	color: inherit;
	padding: 10px 20px;
	transition: all 0.3s;
}

.common__link-a-sustainability {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
	color: inherit;
	padding: 10px 20px 10px 34px;
}

.common__link-a-not-link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
	color: inherit;
	padding: 10px 20px 10px 34px;
}

.common__link-a a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 767px) {
	.common__link-a a {
		padding: 10px 20px;
	}
}

.common__link-a-text {
	color: #fff;
	line-height: 1.5;
	letter-spacing: 2px;
	font-size: 18px;
	font-weight: bold;
}

@media screen and (min-width: 1024px) {
	.common__link-a-text {
		font-size: 20px;
	}
}

@media screen and (max-width: 767px) {
	.common__link-a-text {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.common__link-a-text {
		font-size: 14px;
	}
}

.common__link-a-arrow {
	max-width: 8px;
	max-height: 14px;
	width: 100%;
	height: 100%;
	margin-left: 30px;
}

.common__link-a-external {
	max-width: 20px;
	max-height: 20px;
	width: 100%;
	height: 100%;
	margin-left: 18px;
}

@media screen and (max-width: 767px) {
	.common__link-a-arrow {
		margin-left: 16px;
	}
}

.common__link-a-arrow img {
	width: 100%;
	height: 100%;
}

.common__link-a-external img {
	width: 100%;
	height: 100%;
}

/* 共通のナビゲーション */
.common__nav {
	max-width: calc(1280px + 3.125rem * 2) ;
	width: 100%;
	margin: 5.9375rem auto 0px;
	padding: 0 3.125rem;
}

@media screen and (max-width: 767px) {
	.common__nav {
		margin: 4.75rem auto 0px;
		padding: 0;
	}
}

.common__nav-lists {
	display: flex;
	flex-wrap: wrap;
}

.common__nav-list {
	position: relative;
	width: 50%;
	border: 1px solid #707070;
	padding: 0;
	vertical-align: top;
}

.common__nav-list:nth-child(even) {
	border-left: none;
}

.common__nav-list:nth-child(n+3) {
	border-top: none;
}

.common__nav-list:nth-child(5) {
	width: 100%;
}

.common__nav-list a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
  color: inherit;
	padding: 2.75rem 1.25rem 3.5625rem;
	transition: all 0.3s;
}

.common__nav-list a:hover {
	opacity: 0.6;
}

.common__nav-list:nth-child(4) a {
	padding: 2.75rem 1.25rem 1.9375rem;
}

.common__nav-list .common__list-picture {
	max-width: 185px;
	width: 100%;
	max-height: 183px;
	width: 100%;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.common__nav-list .common__list-picture {
		max-width: 148px;
		max-height: 147px;
	}
}

@media screen and (max-width: 600px) {
	.common__nav-list .common__list-picture {
		max-width: 100px;
    max-height: 100px;
	}
}

.common__nav-list .common__list-picture img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.common__nav-text {
	margin-top: 19px;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.common__nav-text {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.common__nav-text {
		font-size: 14px;
	}
}

.common__nav-arrow {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	background-color: #cc0022;
}

@media screen and (max-width: 767px) {
	.common__nav-arrow {
		position: absolute;
    right: 0;
    bottom: 0;
    width: 40px;
    height: 40px;
	}
}

.common__nav-arrow-bar {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.common__nav-arrow-bar::before {
	content: "";
	position: absolute;
	top: 21px;
  left: 20px;
	transform: rotate(45deg);
	width: 10px;
	height: 2px;
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.common__nav-arrow-bar::before {
		top: 16px;
    left: 17px;
    width: 8px;
	}
}

.common__nav-arrow-bar::after {
	content: "";
	position: absolute;
	bottom: 21px;
  left: 20px;
	transform: rotate(-45deg);
	width: 10px;
	height: 2px;
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.common__nav-arrow-bar::after {
    bottom: 16px;
    left: 17px;
    width: 8px;
	}
}

/* Top Dialogue セクションで使う共通パーツ */
.common__top-dialogue a {
  display: block;
  height: 300px;
  width: 100vw;
  background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sustainability-top-dialog.jpg);
  background-size: cover;
  background-position: center center;
  text-decoration: none;
  transition: all 0.3s;
}

.common__top-dialogue--president {
	max-width: 800px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.common__top-dialogue--president a {
	width: 100%;
	margin: 0 auto;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sustainability-top-dialog-president.jpg);
}

.common__banner a {
	display: block;
  height: 400px;
  width: 100vw;
  background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sdgs-banner.jpg);
  background-size: cover;
  background-position: center center;
  text-decoration: none;
  transition: all 0.3s;
}

@media screen and (min-width: 1024px) {
  .common__top-dialogue a {
    height: 400px;
  }
}

@media screen and (max-width: 767px) {
  .common__top-dialogue a {
    height: 250px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sustainability-top-dialog-sp.jpg);
  }

	.common__top-dialogue--president a {
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sustainability-top-dialog-president.jpg);
	}

	.common__banner a {
		height: 238px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sdgs-banner-sp.jpg);
	}
}

@media screen and (max-width: 600px) {
  .common__top-dialogue a {
    height: 238px;
  }
}

.common__top-dialogue-relative {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.common__banner-relative {
	position: relative;
  width: 100%;
  height: 100%;
}

.common__top-dialogue-absolute,
.common__president-absolute {
  position: absolute;
  right: 50px;
  bottom: 0;
}

.common__president-absolute {
	right: 1.875rem;
}

.common__banner-absolute {
  position: absolute;
  right: 50px;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  .common__top-dialogue-absolute {
    right: 1.875rem;
  }

	.common__banner-absolute {
    right: 1.875rem;
	}

	.common__president-absolute {
		right: 1.5rem;
	}
}

@media screen and (max-width: 600px) {
  .common__top-dialogue-absolute {
    right: 0;
  }

	.common__banner-absolute {
    right: 0;
	}
}

.common__top-dialogue-black-title,
.common__president-black-title {
	position: absolute;
	left: 50px;
  display: flex;
  justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 16px;
	width: 200px;
	height: 200px;
  background-color: #000;
  padding: 16px;
  font-family: "Helvetica", sans-serif;
	text-align: center;
  color: #fff;
}

.common__president-black-title {
	position: static;
	width: auto;
	height: auto;
	display: flex;
	justify-content: center;
	font-size: 28px;
	line-height: 1;
	letter-spacing: 3px;
	font-weight: bold;
	font-family: "Helvetica", sans-serif;
	padding: 14px 22px;
	color: #fff;
	background-color: #000;
}

@media screen and (min-width: 1024px) {
	.common__president-black-title {
		font-size: 34px;
	}
}

.common__top-dialogue-black-title .title-en {
	font-size: 36px;
	line-height: calc(48 / 44);
	letter-spacing: 0.06em;
}

.common__top-dialogue-black-title .title-ja {
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.1em;
}

@media screen and (min-width: 1024px) {
  .common__top-dialogue-black-title {
		width: 270px;
		height: 270px;
		left: 70px;
  }

	.common__top-dialogue-black-title .title-en {
		font-size: 44px;
	}

	.common__top-dialogue-black-title .title-ja {
		font-size: 17px;
	}
}

@media screen and (max-width: 767px) {
  .common__top-dialogue-black-title {
		width: 170px;
		height: 170px;
		left: 36px;
		gap: 14px;
  }

	.common__top-dialogue-black-title .title-en {
		font-size: 28px;
	}

	.common__top-dialogue-black-title .title-ja {
		font-size: 15px;
	}
}

@media screen and (max-width: 600px) {
  .common__top-dialogue-black-title {
		width: 115px;
		height: 115px;
		left: 24px;
		gap: 10px;
  }

	.common__top-dialogue-black-title .title-en {
		font-size: 19px;
	}

	.common__top-dialogue-black-title .title-ja {
		font-size: 10px;
	}
}

.common__top-dialogue a:hover {
  opacity: 0.6;
}

.common__banner a:hover {
	opacity: 0.6;
}

/* インナー幅を解除するクラス */

@media screen and (max-width: 600px) {
	.common__inner-break--600 {
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
	}
}

/* margin の共通パーツ */
.common-mt--04 {
	margin-top: 4px;
}

.common-mt--06 {
	margin-top: 0.375rem;
}

@media screen and (max-width: 600px) {
	.common-mt--06 {
		margin-top: 0.1875rem;
	}
}

.common-mt--10 {
	margin-top: 0.625rem;
}

.common-mt--12 {
	margin-top: 0.75rem;
}

.common-mt--16 {
	margin-top: 1rem;
}

.common-mt--20 {
	margin-top: 1.25rem;
}

.common-mt--24 {
	margin-top: 1.5rem;
}

.common-mt--30 {
	margin-top: 1.875rem;
}

.common-mt--40 {
	margin-top: 2.5rem;
}

@media screen and (max-width: 767px) {
	.common-mt--40 {
		margin-top: 1.875rem;
	}
}

.common-mt--50 {
	margin-top: 3.125rem;
}

@media screen and (max-width: 767px) {
	.common-mt--50 {
		margin-top: 1.875rem;
	}
}

.common-mt--70 {
	margin-top: 4.375rem;
}

@media screen and (max-width: 767px) {
	.common-mt--70 {
		margin-top: 3.125rem;
	}
}

.common-mt--80 {
	margin-top: 5rem;
}

@media screen and (max-width: 767px) {
	.common-mt--80 {
		margin-top: 3.125rem;
	}
}

.common-mt--100 {
	margin-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.common-mt--100 {
		margin-top: 4.375rem;
	}
}

.common-mt--120 {
	margin-top: 7.5rem;
}

@media screen and (max-width: 767px) {
	.common-mt--120 {
		margin-top: 6.25rem;
	}
}

.common-mt--124 {
	margin-top: 6.25rem;
}

@media screen and (min-width: 1280px) {
	.common-mt--124 {
		margin-top: 7.75rem;
	}
}

@media screen and (max-width: 767px) {
	.common-mt--124 {
		margin-top: 5rem;
	}
}

.common-mt--150 {
	margin-top: 7.5rem;
}

@media screen and (min-width: 1280px) {
	.common-mt--150 {
		margin-top: 9.375rem;
	}
}

@media screen and (max-width: 767px) {
	.common-mt--150 {
		margin-top: 6.25rem;
	}
}

.common-mb--100 {
	margin-bottom: 6.25rem;
}

@media screen and (max-width: 767px) {
	.common-mb--100 {
		margin-bottom: 4.375rem;
	}
}

.common-mb--120 {
	margin-bottom: 7.5rem;
}

@media screen and (max-width: 767px) {
	.common-mb--120 {
		margin-bottom: 6.25rem;
	}
}

.common-ml--none {
	margin-left: 0 !important;
}

/* padding の共通パーツ */
.padding-rl-48 {
	padding-right: 3rem;
	padding-left: 3rem;
}


@media screen and (max-width: 767px) {
	.padding-rl-50 {
		padding-right: 1.875rem;
		padding-left: 1.875rem;
	}
}

/* レスポンシブの表示非表示 */
.common__display-pc {
	display: block;
}

@media screen and (max-width: 767px) {
	.common__display-pc {
		display: none !important;
	}
}

.common__display-sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.common__display-sp {
		display: block;
	}
}

.common__display-1024 {
	display: none;
}

@media screen and (min-width: 1024px) {
	.common__display-1024 {
		display: block;
	}
}

.common__display-not-1024 {
	display: block;
}

@media screen and (min-width: 1024px) {
	.common__display-not-1024 {
		display: none;
	}
}

.common__display-1280 {
	display: none;
}

@media screen and (min-width: 1280px) {
	.common__display-1280 {
		display: block;
	}
}

/* 2カラムレイアウト */

.common__column-02 {
	display: block;
	gap: 2.5rem;
}

@media screen and (min-width: 1024px) {
	.common__column-02 {
		display: flex;
		justify-content: space-between;
		gap: 3.125rem;
	}

	.common__column-02-main {
		width: calc(100% - 400px - 3.125rem);
	}

	.common__column-02-main--550 {
		width: calc(100% - 500px - 3.125rem);
	}

	.common__column-02-main--300 {
		width: calc(100% - 300px - 3.125rem);
	}
}

.common__column-02-picture {
	margin: 3.125rem auto 0;
	max-width: 450px;
}

.common__column-02-picture--300 {
	max-width: 300px;
}

.common__column-02-picture--550 {
	max-width: 550px;
}

@media screen and (min-width: 1024px) {
	.common__column-02-picture {
		margin: 0;
		max-width: 400px;
	}

	.common__column-02-picture--300 {
		max-width: 300px;
	}

	.common__column-02-picture--550 {
		max-width: 500px;
	}
}

/*
 =========================================================
activity_css（サステナビリティに貢献する事業活動用スタイル）

2023.07.25

 =========================================================
*/

.activity__mainvisual {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/business-mainvisual.png);
	background-size: cover;
	background-position: center center;
	height: 400px;
	width: 100vw;
}

@media screen and (min-width: 1024px) {
	.activity__mainvisual {
		height: 600px;
	}
}

@media screen and (max-width: 767px) {
	.activity__mainvisual {
		height: 600px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/business-mainvisual-sp.png);
		background-position: center bottom;
	}
}

@media screen and (max-width: 600px) {
	.activity__mainvisual {
		height: 500px;
	}
}

.activity__mainvisual-container {
	max-width: 410px;
	padding-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.activity__mainvisual-container {
		padding-top: 2.8125rem;
	}
}

.activity__vertical {
	display: flex;
	flex-direction: column;
}

/*
 =========================================================
bcp_css（BCP用スタイル）

2023.7.15

 =========================================================
*/

.bcp__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-bcp.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.bcp__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-bcp-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.bcp__mainvisual {
		height: 130px;
	}
}

/*
 =========================================================
community_css（社会貢献用スタイル）

2023.7.15

 =========================================================
*/

.community__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-contributions.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.community__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-contributions-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.community__mainvisual {
		height: 130px;
	}
}

.community__security {
	display: flex;
}

@media screen and (max-width: 767px) {
	.community__security {
		display: block;
	}
}

.community__security-picture {
	width: 180px;
	min-width: 180px;
	margin-left: 2.5rem;
}

@media screen and (max-width: 767px) {
	.community__security-picture {
		margin: 2.5rem auto 0;
	}
}

.community__security-picture img {
	max-width: 180px;
	max-height: 292px;
	width: 100%;
	height: 100%;
}

.community__school {
	display: block;
}

@media screen and (min-width: 1024px) {
	.community__school {
		display: flex;
		justify-content: space-between;
	}

	.community__school-main {
		width: calc(100% - 400px - 3.125rem);
	}
}

.community__school-picture {
	margin: 3.125rem auto 0;
	max-width: 450px;
}

@media screen and (min-width: 1024px) {
	.community__school-picture {
		margin: 0;
		margin-left: 3.125rem;
		max-width: 400px;
	}
}

.community__educational-support {
	display: block;
}

.community__educational-support .common__heading-b-container {
	margin-top: 1.875rem;
}

@media screen and (min-width: 1024px) {
	.community__educational-support {
		display: flex;
		justify-content: space-between;
	}

	.community__educational-support-main {
		max-width: 780px;
		width: calc(100% - 400px - 3.125rem);
	}
}

.community__educational-support-picture {
	margin: 3.125rem auto 0;
	max-width: 450px;
}

@media screen and (min-width: 1024px) {
	.community__educational-support-picture {
		margin: 0;
		margin-top: 1.875rem;
		margin-left: 3.125rem;
		max-width: 400px;
		max-height: 300px;
	}
}

.community__educational-support-picture img {
	width: 100%;
	height: 100%
}

.community__local-contribution {
	display: block;
}

@media screen and (min-width: 1024px) {
	.community__local-contribution {
		display: flex;
		justify-content: space-between;
	}


	.community__local-contribution-main {
		width: calc(100% - 400px - 3.125rem);
	}
}

.community__local-contribution-picture {
	margin: 3.125rem auto 0;
	max-width: 450px;
}

@media screen and (min-width: 1024px) {
	.community__local-contribution-picture {
		margin: 0;
		margin-left: 3.125rem;
		max-width: 400px;
		max-height: 300px;
	}
}

.community__local-contribution-picture img {
	width: 100%;
	height: 100%;
}

.community__pictures {
	display: flex;
	align-items: center;
	flex-direction: column;
	gap: 3.125rem;
}

.community__pictures--w-1150 {
	max-width: 1150px;
	width: 100%;
}

@media screen and (min-width: 1024px) {
	.community__pictures {
		flex-direction: row;
		align-items: flex-start;
	}
}


.community__globals {
	display: flex;
	gap: 2.8125rem;
}

@media screen and (max-width: 767px) {
	.community__globals {
		flex-direction: column;
		gap: 1.875rem;
	}
}

.community__global {
	width: calc((100% - 2.8125rem) / 2);
}

@media screen and (max-width: 767px) {
	.community__global {
		width: 100%;
	}
}


/*
 =========================================================
compliance_css（イノベーション戦略用スタイル）

2023.7.14

 =========================================================
*/

.compliance__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/compliance-mainvisual.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.compliance__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/compliance-mainvisual-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.compliance__mainvisual {
		height: 130px;
	}
}

.compliance__graph {
	display: block;
}

.compliance__graph-background {
	margin-top: 2.5rem;
}

.compliance__graph-text {
	font-size: 20px;
	line-height: calc(30 / 20);
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.compliance__graph-text {
		font-size: 16px;
	}
}

.compliance__graph-picture {
	max-width: 732px;
}

.compliance__graph-picture img {
	width: 100%;
	height: 100%;
}

.compliance__apac {
	margin-top: 1.875rem;
	display: block;
}

@media screen and (min-width: 1024px) {
	.compliance__apac {
		display: flex;
	}
}

@media screen and (min-width: 1024px) {
	.compliance__apac-main {
		width: calc(100% - 2.5rem - 513px);
	}
}

.compliance__apac-background {
	margin-top: 2.5rem;
	text-align: center;
}

@media screen and (min-width: 1024px) {
	.compliance__apac-background {
		margin-top: 0;
		margin-left: 2.5rem;
	}
}


.compliance__apac-picture {
	max-width: 500px;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.compliance__apac-picture {
		margin-top: 0;
		max-width: 513px;
	}
}

.compliance__apac-picture img {
	width: 100%;
	height: 100%;
}

.compliance__dx-lab {
	max-width: 1280px;
	max-height: 584px;
}

.compliance__dx-lab img {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.compliance__silicon-valley-main {
		width: calc(100% - 2.5rem - 517px);
	}
}

.compliance__silicon-valley-background {
	margin-top: 2.5rem;
	text-align: center;
}

@media screen and (min-width: 1024px) {
	.compliance__silicon-valley-background {
		margin-top: 0;
		margin-left: 2.5rem;
		text-align-last: left;
	}
}

@media screen and (max-width: 767px) {
	.compliance__silicon-valley-background {
		margin-top: 2.5rem;
		margin-right: auto;
		margin-left: auto;
		max-width: 462px;
		width: 100%;
	}
}

.compliance__silicon-valley {
	margin-top: 1.875rem;
}

@media screen and (min-width: 1024px) {
	.compliance__silicon-valley {
		display: flex;
	}
}

@media screen and (max-width: 767px) {
	.compliance__silicon-valley {
		display: block;
	}
}

.compliance__silicon-valley-flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.compliance__silicon-valley-flex {
		flex-direction: column;
	}
}

.compliance__silicon-valley-picture {
	margin-left: 2rem;
	max-width: 224px;
	max-height: 224px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.compliance__silicon-valley-picture {
		margin: 1.875rem auto 0;
		max-width: 180px;
		max-height: 180px;
	}
}

.compliance__silicon-valley-picture img {
	width: 100%;
	height: 100%;
}

.compliance__silicon-valley-title {
	width: calc(100% - 224px - 1.875rem);
	font-size: 20px;
	line-height: calc(33 / 24);
	font-weight: bold;
	text-align: left;
}

@media screen and (max-width: 767px) {
	.compliance__silicon-valley-title {
		width: 100%;
		font-size: 16px;
	}
}

/*
 =========================================================
compliance-under_css（対談特集　グローバル人財育成用スタイル）

2023.7.17

 =========================================================
*/

.compliance-under__mainvisual {
	display: flex;
	flex-direction: column;
	align-items: center;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mainvisual {
		flex-direction: row;
		margin-right: calc(50% - 50vw);
	}
}

.compliance-under__mainvisual-main {
	display: flex;
	order: 2;
	margin-top: 3.125rem;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mainvisual-main {
		margin-top: 0;
		order: 1;
		display: block;
		width: 368px;
		margin-right: 2.25rem;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__mainvisual-main {
		display: block;
	}
}

.compliance-under__mainvisual-black-titles {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mainvisual-black-titles {
		position: relative;
		display: flex;
		margin-right: calc(50% - 50vw);
	}
}

.compliance-under__mainvisual-black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 1px;
	background-color: #000;
	color: #fff;
	padding: 12px 30px;
	margin-right: auto;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mainvisual-black-title {
		font-size: 24px;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__mainvisual-black-title {
		font-size: 18px;
		padding: 12px 16px;
		margin-right: auto;
	}
}

.compliance-under__mainvisual-black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.compliance-under__mainvisual-texts {
	margin-left: 3.125rem;
	max-width: 308px;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mainvisual-texts {
		margin-top: 1.5rem;
		margin-left: 0;
		max-width: 344px;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__mainvisual-texts {
		margin-top: 2.5rem;
		max-width: 600px;
		margin-left: 0;
	}
}

.compliance-under__mainvisual-text {
	font-size: 16px;
	font-weight: bold;
	line-height: calc(33 / 16);
}

.compliance-under__mainvisual-picture {
	order: 1;
	width: 100vw;
	max-height: 660px;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mainvisual-picture {
		order: 2;
		width: calc(100% - 368px - 2.25rem);
	}
}

@media screen and (min-width: 1024px) {
	.compliance-under__mainvisual-picture {
		max-height: 660px;
	}
}

.compliance-under__mainvisual-picture img {
	max-height: 400px;
	height: 400px;
	width: 	100vw;
	object-fit: cover;
	object-position: center center;
}

@media screen and (min-width: 1024px) {
	.compliance-under__mainvisual-picture img {
		max-height: 660px;
		height: 660px;
	}
}

.compliance-under__profiles {
	max-width: 800px;
	margin-top: 6.25rem;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.compliance-under__profiles {
		max-width: none;
		margin: 0;
		margin-top: 7.625rem;
		display: flex;
		justify-content: space-between;
	}
}

.compliance-under__profile {
	display: flex;
	width: 100%;
}

@media screen and (max-width: 600px) {
	.compliance-under__profile {
		display: block;
	}
}

@media screen and (min-width: 1280px) {
	.compliance-under__profile {
		width: calc((100% - 3.75rem) / 2);
	}
}

.compliance-under__profile:not(:first-child) {
	margin-top: 4.375rem;
}

@media screen and (min-width: 1280px) {
	.compliance-under__profile:not(:first-child) {
		margin-top: 0;
		margin-left: 3.75rem;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__profile:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.compliance-under__profile-picture {
	max-width: 246px;
	max-height: 281px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 600px) {
	.compliance-under__profile-picture {
		margin-right: auto;
		margin-left: auto;
	}
}

.compliance-under__profile-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.compliance-under__profile-main {
	width: 100%;
	margin-left: 1.875rem;
}

@media screen and (max-width: 600px) {
	.compliance-under__profile-main {
		margin-top: 1.875rem;
		margin-left: 0;
	}
}

.compliance-under__profile-company {
	font-size: 16px;
	line-height: 1.5;
}

.compliance-under__profile-name {
	margin-top: 0.875rem;
	font-size: 28px;
	font-weight: bold;
	line-height: 1;
	padding-left: 3px;
	letter-spacing: 3px;
}

@media screen and (max-width: 767px) {
	.compliance-under__profile-name {
		font-size: 24px;
	}
}

.compliance-under__profile-career {
	margin-top: 0.875rem;
	font-size: 16px;
	line-height: calc(27 / 16);
  padding-left: 4px;
}

.compliance-under__conversation {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.compliance-under__conversation {
		flex-direction: row;
	}
}

.compliance-under__conversation-mt-124 {
	margin-top: 6.25rem;
}

@media screen and (min-width: 1280px) {
	.compliance-under__conversation-mt-124 {
		margin-top: 7.75rem;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__conversation-mt-124 {
		margin-top: 5rem;
	}
}

.compliance-under__conversation-main {
	margin-top: 3.125rem;
	margin-right: auto;
	margin-left: auto;
	order: 2;
	max-width: 800px;
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.compliance-under__conversation-main {
		margin: 0;
		order: 1;
		max-width: 622px;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__conversation-main {
		margin-top: 3.125rem;
	}
}

.compliance-under__bar {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.compliance-under__black-titles {
	display: flex;
	flex-direction: column;
	margin-top: 1rem;
}

.compliance-under__black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 30px;
	background-color: #000;
	color: #fff;
	letter-spacing: 1px;
	margin-right: auto;
}

@media screen and (max-width: 767px) {
	.compliance-under__black-title {
		font-size: 18px;
		padding: 10px 16px;
	}
}

.compliance-under__black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.compliance-under__conversation-title {
	display: flex;
}

.compliance-under__conversation-title-mt {
	margin-top: 1.375rem;
}

.compliance-under__conversation-title-bar {
	width: 20px;
	height: 1px;
	background-color: #cc0022;
	margin-top: 17px;
}

.compliance-under__conversation-title-text {
	margin-left: 5px;
	font-size: 20px;
	font-weight: bold;
	line-height: calc(34 / 20);
}

@media screen and (max-width: 767px) {
	.compliance-under__conversation-title-text {
		font-size: 18px;
	}
}

.compliance-under__conversation-texts {
	margin-top: 3px;
}

.compliance-under__conversation-texts:not(:first-child) {
	margin-top: 1.5rem;
}

.compliance-under__onversation-text {
	font-size: 16px;
	line-height: calc(27 / 16);
}

.compliance-under__conversation-text--name {
	font-weight: bold;
}

.compliance-under__conversation-picture {
	position: relative;
	order: 1;
	max-height: 550px;
	max-width: 550px;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.compliance-under__conversation-picture {
		order: 2;
		margin-left: 0;
		max-height: 812px;
		max-width: 588px;
	}
}

.compliance-under__conversation-picture::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.compliance-under__conversation-picture::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.compliance-under__conversation-picture::before {
		width: 30px;
		height: 30px;
	}

	.compliance-under__conversation-picture::after {
		width: 30px;
		height: 30px;
	}
}

.compliance-under__conversation-picture img {
	aspect-ratio: 550 / 550;
	max-height: 550px;
	max-width: 550px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

@media screen and (min-width: 1280px) {
	.compliance-under__conversation-picture img {
		aspect-ratio: 588 / 812;
		max-height: 812px;
		max-width: 588px;
	}
}

.compliance-under__contents {
	max-width: 800px;
	width: 100%;
	margin: 6.25rem auto 0;
}

@media screen and (min-width: 1280px) {
	.compliance-under__contents {
		max-width: 966px;
		margin-top: 7.5rem;
	}
}

@media screen and (max-width: 767px) {
	.compliance-under__contents {
		margin-top: 1.875rem;
	}
}

.compliance-under__content:not(:first-child) {
	margin-top: 5rem;
}

.compliance-under__delimiter {
	margin-top: 6.75rem;
	width: 100%;
	height: 1px;
	background-color: #333;
}

.compliance-under__delimiter--content {
	margin-bottom: 6.75rem;
}

@media screen and (max-width: 767px) {
	.compliance-under__delimiter {
		margin-top: 4.375rem;
	}

	.compliance-under__delimiter--content {
		margin-bottom: 4.375rem;
	}
}

.compliance-under__conversation-reverse .compliance-under__conversation-picture {
	order: 1;
}

.compliance-under__conversation-reverse .compliance-under__conversation-main {
	order: 2;
}

.compliance-under__after-discussion {
	position: relative;
	max-width: 966px;
	max-height: 841px;
	width: 100%;
	height: 100%;
}

.compliance-under__after-discussion::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.compliance-under__after-discussion::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.compliance-under__after-discussion::before {
		width: 30px;
		height: 30px;
	}

	.compliance-under__after-discussion::after {
		width: 30px;
		height: 30px;
	}
}

.compliance-under__after-discussion img {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1280px) {
	.compliance-under__mr-70 {
		margin-right: 4.375rem;
	}
}

/*
 =========================================================
conversation_css（対談用スタイル）

2023.7.15

 =========================================================
*/

.conversation__mainvisual {
	display: flex;
	flex-direction: column;
	align-items: center;
}

@media screen and (min-width: 1280px) {
	.conversation__mainvisual {
		flex-direction: row;
		margin-right: calc(50% - 50vw);
	}
}

.conversation__mainvisual-main {
	display: flex;
	order: 2;
	margin-top: 3.125rem;
}

@media screen and (min-width: 1280px) {
	.conversation__mainvisual-main {
		margin-top: 0;
		order: 1;
		display: block;
		width: 534px;
		margin-right: 2.25rem;
	}

	.conversation__mainvisual-main--diversity {
		width: 344px;
	}

	.conversation__mainvisual-main--report-01 {
		width: 454px;
	}
}

@media screen and (max-width: 767px) {
	.conversation__mainvisual-main {
		display: block;
	}
}

.conversation__mainvisual-black-titles {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.conversation__mainvisual-black-titles {
		display: inline-block;
	}

	.conversation__mainvisual-black-titles--diversity {
		position: relative;
    display: flex;
		flex-direction: column;
		margin-right: calc(50% - 50vw);
	}
}

.conversation__mainvisual-black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 1px;
	background-color: #000;
	color: #fff;
	padding: 12px 30px;
	margin-right: auto;
}

.conversation__mainvisual-black-title-sp {
	display: none;
}

.conversation__mainvisual-black-title .co2 {
	font-size: 12px;
}

@media screen and (min-width: 1280px) {
	.conversation__mainvisual-black-title {
		font-size: 24px;
	}
}

@media screen and (max-width: 767px) {
	.conversation__mainvisual-black-title {
		font-size: 18px;
		padding: 12px 16px;
		margin-right: auto;
	}

	.conversation__mainvisual-black-title-pc {
		display: none;
	}

	.conversation__mainvisual-black-title-sp {
		display: inline-block;
	}
}

.conversation__mainvisual-black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.conversation__mainvisual-texts {
	margin-left: 3.125rem;
	max-width: 344px;
}

@media screen and (min-width: 1280px) {
	.conversation__mainvisual-texts {
		margin-top: 1.5rem;
		margin-left: 0;
	}

	.conversation__mainvisual-texts--report-01 {
		max-width: 454px;
	}
}

@media screen and (max-width: 767px) {
	.conversation__mainvisual-texts {
		margin-top: 2.5rem;
		max-width: 600px;
		margin-left: 0;
	}
}

.conversation__mainvisual-text {
	font-size: 16px;
	font-weight: bold;
	line-height: calc(33 / 16);
}

.conversation__mainvisual-picture {
	order: 1;
	width: 100vw;
	max-height: 660px;
}

.conversation__mainvisual-picture--report-01 {
	order: 1;
	width: 100vw;
	max-height: 751px;
}


.conversation__mainvisual-picture--report-02 {
	order: 1;
	width: 100vw;
	max-height: 750px;
}

@media screen and (min-width: 1280px) {
	.conversation__mainvisual-picture {
		order: 2;
		width: calc(100% - 534px - 2.25rem);
	}

	.conversation__mainvisual-picture--diversity {
		order: 2;
		width: calc(100% - 344px - 2.25rem);
	}

	.conversation__mainvisual-picture--report-01 {
		order: 2;
		width: calc(100% - 454px - 2.25rem);
	}

	.conversation__mainvisual-picture--report-02 {
		order: 2;
		width: calc(100% - 454px - 2.25rem);
	}
}

.conversation__mainvisual-picture img {
	max-height: 400px;
	height: 400px;
	width: 	100vw;
	object-fit: cover;
	object-position: center center;
}

.conversation__mainvisual-picture--dice img {
	object-position: bottom center;
}

.conversation__mainvisual-picture--report-01 img {
	max-height: 400px;
	height: 400px;
}

.conversation__mainvisual-picture--report-02 img {
	max-height: 400px;
	height: 400px;
}

@media screen and (min-width: 1024px) {
	.conversation__mainvisual-picture img {
		max-height: 660px;
		height: 660px;
	}

	.conversation__mainvisual-picture--report-01 img {
		height: 751px;
		max-height: 751px;
	}

	.conversation__mainvisual-picture--report-02 img {
		height: 750px;
		max-height: 750px;
	}
}

.conversation__profiles {
	max-width: 800px;
	margin-top: 6.25rem;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.conversation__profiles {
		max-width: none;
		margin: 0;
		margin-top: 7.625rem;
		display: flex;
		justify-content: space-between;
	}

	.conversation__profiles:not(:first-child) {
		margin-top: 2.5rem;
	}
}

.conversation__profile {
	display: flex;
	width: 100%;
}

@media screen and (max-width: 600px) {
	.conversation__profile {
		display: block;
	}
}

@media screen and (min-width: 1280px) {
	.conversation__profile {
		width: calc((100% - 3.75rem) / 2);
	}
}

.conversation__profile:not(:first-child) {
	margin-top: 4.375rem;
}

@media screen and (min-width: 1280px) {
	.conversation__profile:not(:first-child) {
		margin-top: 0;
		margin-left: 3.75rem;
	}
}

@media screen and (max-width: 767px) {
	.conversation__profile:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.conversation__profile-picture {
	max-width: 246px;
	max-height: 281px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 600px) {
	.conversation__profile-picture {
		margin-right: auto;
		margin-left: auto;
	}
}

.conversation__profile-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.conversation__profile-main {
	width: 100%;
	margin-left: 1.875rem;
}

@media screen and (max-width: 600px) {
	.conversation__profile-main {
		margin-top: 1.875rem;
		margin-left: 0;
	}
}

.conversation__profile-company {
	font-size: 16px;
	line-height: 1.5;
}

.conversation__profile-name {
	margin-top: 0.875rem;
	font-size: 28px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 3px;
}

@media screen and (max-width: 767px) {
	.conversation__profile-name {
		font-size: 24px;
	}
}

.conversation__profile-career {
	margin-top: 0.875rem;
	font-size: 16px;
	line-height: calc(27 / 16);
}

.conversation__conversation {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.conversation__conversation {
		flex-direction: row;
	}
}

.conversation__conversation-mt-124 {
	margin-top: 6.25rem;
}

@media screen and (min-width: 1280px) {
	.conversation__conversation-mt-124 {
		margin-top: 7.75rem;
	}
}

@media screen and (max-width: 767px) {
	.conversation__conversation-mt-124 {
		margin-top: 5rem;
	}
}

@media screen and (min-width: 1280px) {
	.conversation__inner-break-right {
		margin-right: calc(50% - 50vw);
	}
}

@media screen and (min-width: 1280px) {
	.conversation__inner-break-left {
		margin-left: calc(50% - 50vw);
	}
}

.conversation__conversation-main {
	margin-top: 3.125rem;
	margin-right: auto;
	margin-left: auto;
	order: 2;
	max-width: 800px;
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.conversation__conversation-main {
		margin: 0;
		order: 1;
		max-width: 600px;
	}
}

@media screen and (max-width: 767px) {
	.conversation__conversation-main {
		margin-top: 3.125rem;
	}
}

@media screen and (min-width: 1280px) {
	.conversation__conversation-main-mr-70 {
		margin-right: 4.375rem;
	}
}

.conversation__conversation-source {
	width: fit-content;
	margin-left: auto;
	text-align: left;
}

.conversation__bar {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.conversation__black-titles {
	display: flex;
	flex-direction: column;
	margin-top: 1rem;
}

.conversation__black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 30px;
	background-color: #000;
	color: #fff;
	letter-spacing: 1px;
	margin-right: auto;
}

.conversation__black-title .co2 {
	font-size: 12px;
}

@media screen and (max-width: 767px) {
	.conversation__black-title {
		font-size: 18px;
		padding: 10px 16px;
	}
}

.conversation__black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.conversation__conversation-title {
	display: flex;
}

.conversation__conversation-title-mt {
	margin-top: 1.375rem;
}

.conversation__conversation-title-bar {
	width: 20px;
	height: 1px;
	background-color: #cc0022;
	margin-top: 17px;
}

.conversation__conversation-box {
	margin-top: 7px;
	width: 20px;
	height: 20px;
	background-color: #cc0022;
}

@media screen and (max-width: 767px) {
	.conversation__conversation-box {
		margin-top: 6px;
		width: 18px;
		height: 18px;
	}
}

.conversation__conversation-title-text {
	margin-left: 4px;
	font-size: 20px;
	font-weight: bold;
	line-height: calc(34 / 20);
}

@media screen and (max-width: 767px) {
	.conversation__conversation-title-text {
		font-size: 18px;
	}
}

.conversation__conversation-texts {
	margin-top: 3px;
}

.conversation__conversation-texts:not(:first-child) {
	margin-top: 1.5rem;
}

.conversation__conversation-text {
	font-size: 16px;
	line-height: calc(27 / 16);
}

.conversation__conversation-text-mini {
	font-size: 14px;
	line-height: calc(24 / 14);
}

.conversation__conversation-text-mini--center {
	text-align: center;
}

.conversation__conversation-text--name {
	font-weight: bold;
}

.conversation__conversation-picture {
	order: 1;
	max-height: 423px;
	position: relative;
}

@media screen and (min-width: 1024px) {
	.conversation__conversation-picture {
		margin: 0 calc(50% - 50vw);
	}
}

.conversation__conversation-picture-dx img {
	width: 100%;
	height: 100%;
}

.conversation__conversation-picture-report-01 img {
	width: 100%;
	height: 100%;
}

.conversation__conversation-picture-report-01-lysithea img {
	width: 100%;
	height: 100%;
}

.conversation__conversation-picture-report-01-step img {
	width: 100%;
	height: 100%;
}

.conversation__conversation-picture-co2 img {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1280px) {
	.conversation__conversation-picture {
		margin-left: 0;
		margin-right: calc(50% - 50vw);
		width: calc(100% - 600px - 4.375rem);
		order: 2;
	}
}

@media screen and (max-width: 767px) {
	.conversation__conversation-picture {
		margin: 0;
	}
}

.conversation__conversation-picture::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.conversation__conversation-picture::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.conversation__conversation-picture::before {
		width: 30px;
		height: 30px;
	}

	.conversation__conversation-picture::after {
		width: 30px;
		height: 30px;
	}
}

.conversation__conversation-picture img {
	max-height: 423px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.conversation__contents {
	max-width: 800px;
	width: 100%;
	margin: 6.25rem auto 0;
}

@media screen and (min-width: 1280px) {
	.conversation__contents {
		max-width: 966px;
		margin-top: 7.5rem;
	}
}

@media screen and (max-width: 767px) {
	.conversation__contents {
		margin-top: 5rem;
	}
}

.conversation__content:not(:first-child) {
	margin-top: 5rem;
}

.conversation__delimiter {
	margin-top: 6.75rem;
	width: 100%;
	height: 1px;
	background-color: #333;
}

.conversation__delimiter--content {
	margin-bottom: 6.75rem;
}

@media screen and (max-width: 767px) {
	.conversation__delimiter {
		margin-top: 4.375rem;
	}

	.conversation__delimiter--content {
		margin-bottom: 4.375rem;
	}
}

.conversation__conversation-reverse .conversation__conversation-picture {
	order: 1;
}

.conversation__conversation-reverse .conversation__conversation-main {
	order: 2;
	margin-left: auto;
}

.conversation__group-photo {
	position: relative;
	max-width: 958px;
	margin-right: auto;
	margin-left: auto;
}

.conversation__group-photo img {
	max-width: 958px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.conversation__group-photo::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.conversation__group-photo::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -2px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.conversation__group-photo::before {
		width: 30px;
		height: 30px;
	}

	.conversation__group-photo::after {
		width: 30px;
		height: 30px;
	}
}

/*
 =========================================================
dx_css（デジタルトランスフォーメーション用スタイル）

2023.7.15

 =========================================================
*/

.dx__mainvisual {
	width: 100%;
	height: 810px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-dx.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.dx__mainvisual {
		height: auto;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-dx-sp.svg);
	}
}

.dx__mainvisual-container {
	display: flex;
	justify-content: center;
	flex-direction: column;
	max-width: 475px;
	height: 810px;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.dx__mainvisual-container {
		padding: 2.5rem 0;
		height: auto;
		justify-content: center;
	}
}

.dx__mainvisual-container-text-a {
	line-height: calc(30 / 16);
}

.dx__mainvisual-container-heading-a {
	margin-left: 8px;
	font-size: 20px;
	letter-spacing: 1px;
}

.dx__mainvisual-container-attention {
	margin-top: 1.25rem;
	font-size: 14px;
	line-height: calc(25 / 14);
}

@media screen and (min-width: 1024px) {
	.dx__message {
		display: flex;
	}
}

.dx__message-picture {
	margin: 3.125rem auto 0;
	max-width: 375px;
	max-height: 375px;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.dx__message-picture {
		margin-top: 0;
		margin-left: 2.5rem;
		max-width: 375px;
		max-height: 375px;
	}
}

.dx__message-picture img {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.dx__message-picture img {
		min-width: 375px;
	}
}

@media screen and (min-width: 1024px) {
	.dx__certification {
		display: flex;
		flex-direction: row-reverse;
	}
}

.dx__certification-picture {
	margin: 3.125rem auto 0 0;
	max-width: 375px;
	max-height: 102px;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.dx__certification-picture {
		margin-top: 0;
		margin-left: 2.5rem;
		max-width: 375px;
		max-height: 102px;
	}
}

@media screen and (max-width: 767px) {
	.dx__certification-picture {
		margin-top: 1.875rem;
		max-width: 300px;
	}
}

.dx__certification-picture img {
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.dx__certification-picture img {
		min-width: 375px;
	}
}

.dx__certification-main {
	margin-top: 3.125rem;
}

@media screen and (min-width: 1024px) {
	.dx__certification-main {
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.dx__certification-main {
		margin-top: 1.875rem;
	}
}

.dx__cumulative {
	width: 916px;
	font-size: 16px;
	color: #000;
	text-align: right;
	overflow: hidden;
	overflow-x: scroll;
}

@media screen and (max-width: 767px) {
	.dx__cumulative {
		width: 635px;
	}
}

@media screen and (max-width: 600px) {
	.dx__cumulative {
		width: 444px;
	}
}

.dx__table-b {
	display: inline-block;
	background: #f2f2f2;
	margin-top: 16px;
	padding: 4px;
}

@media screen and (max-width: 767px) {
	.dx__table-b {
		margin-top: 8px;
	}
}

/*
 =========================================================
eco_css（環境ページ用スタイル）

2023.7.13

 =========================================================
*/

.eco__mainvisual {
	width: 100vw;
	height: 810px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/eco-environment.jpg);
	background-size: cover;
	background-position: center center;
	margin: 0 calc(50% - 50vw);
}

@media screen and (max-width: 767px) {
	.eco__mainvisual {
		height: auto;
		min-height: 770px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/eco-environment-sp.jpg);
	}
}

.eco__mainvisual-container {
	height: 810px;
	max-width: 600px;
	color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media screen and (min-width: 1024px) {
	.eco__mainvisual-container {
		max-width: 477px;
	}
}

@media screen and (max-width: 767px) {
	.eco__mainvisual-container {
		height: auto;
		min-height: 770px;
		justify-content: space-between;
		padding: 2.8125rem 0 1.25rem;
	}
}

@media screen and (max-width: 600px) {
	.eco__mainvisual {
		height: auto;
	}
}

.eco__mainvisual-container-texts {
	margin-top: 0.625rem;
}

.eco__mainvisual-container-text {
	font-size: 16px;
	line-height: calc(30 / 16);
}

@media screen and (max-width: 767px) {
	.eco__mainvisual-container-text {
		font-size: 14px;
		line-height: calc(26 / 14);
	}
}

.eco__mainvisual-items {
	margin-top: 1.75rem;
}

.eco__mainvisual-item {
	display: flex;
	background-color: rgba(0, 0, 0, 0.64);
	padding: 20px;
	padding-left: 0;
}

.eco__mainvisual-item:not(:first-child) {
	margin-top: 1.25rem;
}

.eco__mainvisual-bar {
	background-color: #cc0022;
	min-width: 28px;
	height: 1px;
	margin-top: 15px;
}

.eco__mainvisual-item-text {
	margin-left: 16px;
	font-size: 14px;
	line-height: calc(25 / 14);
}

.eco__text-slogan {
	margin-top: 2.5rem;
	font-size: 28px;
	line-height: 1.5;
}

@media screen and (max-width: 767px) {
	.eco__text-slogan {
		font-size: 24px;
	}
}

.eco__text-a {
	margin-top: 3.125rem;
}

@media screen and (max-width: 767px) {
	.eco__text-a {
		margin-top: 1.875rem;
	}
}

.eco__hazardous-substance {
	display: flex;
	align-items: end;
}

@media screen and (max-width: 767px) {
	.eco__hazardous-substance {
		align-items: center;
	}
}

@media screen and (max-width: 500px) {
	.eco__hazardous-substance {
		display: block;
	}
}

.eco__container-flex {
	display: flex;
	align-items: center;
}

@media screen and (min-width: 900px) {
	.eco__container-flex {
		align-items: end;
	}
}

.eco__container-links {
	display: grid;
	grid-template-columns: 250px;
	gap: 1.875rem;
}

@media screen and (min-width: 900px) {
	.eco__container-links {
		grid-template-columns: 250px 250px;
	}
}

@media screen and (max-width: 500px) {
	.eco__container-links {
		grid-template-columns: 210px;
		margin-right: auto;
		margin-left: auto;
	}
}

.eco__guidelines {
	max-width: 202px;
  max-height: 270px;
	width: 100%;
	height: 100%;
	margin-left: 3.125rem;
}

.eco__guidelines img {
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 500px) {
	.eco__guidelines {
		margin: 2.5rem auto 0 1rem;
	}
}

.eco__hazardous-substance-picture {
	max-width: 170px;
	max-height: 170px;
	width: 100%;
	height: 100%;
	margin-left: 3.125rem;
}

@media screen and (max-width: 767px) {
	.eco__hazardous-substance-picture {
		margin-left: 1.875rem;
	}
}

@media screen and (max-width: 500px) {
	.eco__hazardous-substance-picture {
		margin: 2.5rem auto 0;
	}
}

.eco__hazardous-substance-picture img {
	width: 100%;
	height: 100%;
}

.eco__container-item-flex {
	display: flex;
}

.eco__container-item-flex .common__text-a:nth-child(1) {
	font-weight: bold;
	min-width: 75px;
}

@media screen and (max-width: 767px) {
	.eco__container-item-flex .common__text-a:nth-child(1) {
		font-weight: bold;
		min-width: 65px;
	}
}

.eco__container-item-flex .common__text-a:nth-child(2) {
	margin-left: 1.25rem;
}

.eco__container-padding {
	padding: 3.125rem 0;
}

.eco__carbon-neutral-background {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #f2f2f2;
	max-width: 966px;
	width: 100%;
	margin: 5rem auto 0;
	padding: 1.25rem 1.875rem;
}

@media screen and (max-width: 767px) {
	.eco__carbon-neutral-background {
		display: block;
	}
}

.eco__carbon-neutral-main {
	max-width: 400px;
}

@media screen and (max-width: 767px) {
	.eco__carbon-neutral-main {
		max-width: none;
	}
}

.eco__carbon-neutral-title {
	font-size: 24px;
	line-height: calc(33 / 24);
	font-weight: bold;
}

.eco__carbon-neutral-text {
	margin-top: 1rem;
	font-size: 16px;
	line-height: calc(27 / 16);
}

@media screen and (max-width: 767px) {
	.eco__carbon-neutral-title {
		font-size: 20px;
	}

	.eco__carbon-neutral-text {
		font-size: 14px;
	}
}

.eco__carbon-neutral-picture {
	margin-left: 2.25rem;
	max-width: 224px;
	max-height: 224px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.eco__carbon-neutral-picture {
		margin: 1.875rem auto 0;
		max-width: 180px;
		max-height: 180px;
	}
}

.eco__carbon-neutral-picture img {
	width: 100%;
	height: 100%;
}

.eco__energy-conservation-background {
	max-width: 966px;
	background-color: #f2f2f2;
	margin: 6rem auto 0;
	padding: 2.1875rem;
}

.eco__energy-conservation-title {
	font-size: 24px;
	line-height: calc(33 / 24);
	font-weight: bold;
}

.eco__energy-conservation-pictures {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 790px;
	width: 100%;
	margin: 2.5rem auto 0;
}

@media screen and (max-width: 600px) {
	.eco__energy-conservation-pictures {
		display: block;
	}
}

.eco__energy-conservation-picture {
	max-width: 224px;
	max-height: 224px;
	width: 100%;
	height: 100%;
}

.eco__energy-conservation-picture:not(:first-child) {
	margin-left: 1.785rem;
}

@media screen and (max-width: 600px) {
	.eco__energy-conservation-picture {
		margin-right: auto;
		margin-left: auto;
	}

	.eco__energy-conservation-picture:not(:first-child) {
		margin: 1.875rem auto 0	;
	}
}

.eco__energy-conservation-picture img {
	width: 100%;
	height: 100%;
}

.eco__energy-conservation-links {
	max-width: 866px;
	margin-right: auto;
	margin-left: auto;
}

.eco__energy-conservation-links .common__link-a {
	width: 100%;
}

.eco__energy-conservation-links .common__link-a-text {
	max-width: 765px;
}

.eco__plastic-container {
	padding: 3.125rem 0;
}

.eco__calendar {
	margin-top: 1.875rem;
	display: flex;
}

@media screen and (max-width: 767px) {
	.eco__calendar {
		display: block;
	}
}

.eco__calendar-main {
	width: calc(100% - 2.5rem - 300px);
}

@media screen and (max-width: 767px) {
	.eco__calendar-main {
		width: 100%;
	}
}

.eco__calendar-picture {
	margin-left: 2.5rem;
	max-width: 300px;
}

.eco__calendar-picture img {
	min-width: 300px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.eco__calendar-picture {
		margin-right: auto;
		margin-left: auto;
		margin-top: 1.875rem;
	}
}

/*
 =========================================================
evaluation_css（社会貢献用スタイル）

2023.7.24

 =========================================================
*/

.evaluation__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-evaluation.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.evaluation__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-evaluation-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.evaluation__mainvisual {
		height: 130px;
	}
}

@media screen and (min-width: 1024px) {
	.evaluation__flex {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
	}
}

.evaluation__flex-main {
	margin-top: 2.5rem;
	width: 100%;
}

@media screen and (min-width: 1024px) {
	.evaluation__flex-main {
		margin-top: 0;
		width: calc(100% - 350px - 3.125rem);
	}

	.evaluation__flex-main--kurumin {
		margin-top: 2.5rem;
	}
}

.evaluation__flex-picture {
	max-width: 350px;
}

@media screen and (min-width: 1024px) {
	.evaluation__flex-picture {
		max-width: 350px;
	}
}

.evaluation__excellent-corporation img {
	object-fit: cover;
	object-position: center center;
	width: 100%;
	height: 100%;
}

.evaluation__eruboshi img {
	max-width: 350px;
	width: 280px;
	height: 100%;
	margin-right: 2.1875rem;
}

.evaluation__work-with-pride img {
	width: 100%;
	height: 100%;
	margin-top: -30px;
}

/*
 =========================================================
governance_css（コーポレート・ガバナンス／内部統制用スタイル）

2023.7.15

 =========================================================
*/

.governance__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-governance.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.governance__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-governance-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.governance__mainvisual {
		height: 130px;
	}
}

.governance__link-c-title {
	font-size: 24px;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.governance__link-c-title {
		margin-bottom: 0.625rem;
	}
}

.governance__policy-picture {
	max-width: 100%;
	width: 100%;
	height: 100%;
	margin: 5rem auto 0;
	padding: 20px;
	background-color: #f2f2f2;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.governance__policy-picture {
		margin-top: 3.125rem;
	}
}

.governance__mt-60 {
	margin-top: 3.75rem;
}

@media screen and (max-width: 767px) {
	.governance__mt-60 {
		margin-top: 3.125rem;
	}
}

/*
 =========================================================
human-adoption_css（人財/採用活動用スタイル）

2023.7.10

 =========================================================
*/
.human-adoption__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.human-adoption__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.human-adoption__mainvisual {
		height: 130px;
	}
}

.human-adoption__link-picture img {
	object-position: top center;
}

.human-adoption__graphs {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 3.125rem;
}

@media screen and (max-width: 767px) {
	.human-adoption__graphs {
		gap: 1.25rem;
	}
}

@media screen and (max-width: 600px) {
	.human-adoption__graphs {
		grid-template-columns: 1fr;
	}
}

/*
 =========================================================
common_css（アルムナイネットワーク用スタイル）

2023.7.10

 =========================================================
*/

.human-adoption-under__mainvisual {
	display: flex;
	flex-direction: column;
	align-items: center;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__mainvisual {
		flex-direction: row;
		margin-right: calc(50% - 50vw);
	}
}

.human-adoption-under__mainvisual-main {
	display: flex;
	order: 2;
	margin-top: 3.125rem;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__mainvisual-main {
		margin-top: 0;
		order: 1;
		display: block;
		width: 368px;
		margin-right: 2.25rem;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__mainvisual-main {
		display: block;
	}
}

.human-adoption-under__mainvisual-black-titles {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__mainvisual-black-titles {
		display: inline-block;
	}
}

.human-adoption-under__mainvisual-black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 1px;
	background-color: #000;
	color: #fff;
	padding: 12px 30px;
	margin-right: auto;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__mainvisual-black-title {
		font-size: 24px;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__mainvisual-black-title {
		font-size: 18px;
		max-width: 324px;
		padding: 12px 16px;
		margin-right: auto;
	}
}

.human-adoption-under__mainvisual-black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.human-adoption-under__mainvisual-texts {
	margin-left: 3.125rem;
	max-width: 308px;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__mainvisual-texts {
		margin-top: 1.5rem;
		margin-left: 0;
		max-width: 344px;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__mainvisual-texts {
		margin-top: 2.5rem;
		max-width: 600px;
		margin-left: 0;
	}
}

.human-adoption-under__mainvisual-text {
	font-size: 16px;
	font-weight: bold;
	line-height: calc(33 / 16);
}

.human-adoption-under__mainvisual-picture {
	order: 1;
	width: 100vw;
	max-height: 400px;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__mainvisual-picture {
		order: 2;
		width: calc(100% - 368px - 2.25rem);
	}
}

@media screen and (min-width: 1024px) {
	.human-adoption-under__mainvisual-picture {
		max-height: 660px;
	}
}

.human-adoption-under__mainvisual-picture img {
	max-height: 400px;
	height: 400px;
	width: 	100vw;
	object-fit: cover;
	object-position: center center;
}

@media screen and (min-width: 1024px) {
	.human-adoption-under__mainvisual-picture img {
		max-height: 660px;
		height: 660px;
	}
}

.human-adoption-under__profiles {
	max-width: 800px;
	margin-top: 6.25rem;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__profiles {
		max-width: none;
		margin: 0;
		margin-top: 7.625rem;
		display: flex;
		justify-content: space-between;
	}
}

.human-adoption-under__profile {
	display: flex;
	width: 100%;
}

@media screen and (max-width: 600px) {
	.human-adoption-under__profile {
		display: block;
	}
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__profile {
		width: calc((100% - 3.75rem) / 2);
	}
}

.human-adoption-under__profile:not(:first-child) {
	margin-top: 4.375rem;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__profile:not(:first-child) {
		margin-top: 0;
		margin-left: 3.75rem;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__profile:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.human-adoption-under__profile-picture {
	max-width: 246px;
	max-height: 281px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 600px) {
	.human-adoption-under__profile-picture {
		margin-right: auto;
		margin-left: auto;
	}
}

.human-adoption-under__profile-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.human-adoption-under__profile-main {
	width: 100%;
	margin-left: 1.875rem;
}

@media screen and (max-width: 600px) {
	.human-adoption-under__profile-main {
		margin-top: 1.875rem;
		margin-left: 0;
	}
}

.human-adoption-under__profile-company {
	font-size: 16px;
	line-height: 1.5;
}

.human-adoption-under__profile-name {
	margin-top: 0.875rem;
	font-size: 28px;
	font-weight: bold;
	line-height: 1;
	padding-left: 3px;
	letter-spacing: 3px;
}

@media screen and (max-width: 767px) {
	.human-adoption-under__profile-name {
		font-size: 24px;
	}
}

.human-adoption-under__profile-career {
	margin-top: 0.875rem;
	font-size: 16px;
	line-height: calc(27 / 16);
  padding-left: 4px;
}

.human-adoption-under__conversation {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__conversation {
		flex-direction: row;
	}
}

.human-adoption-under__conversation-mt-124 {
	margin-top: 6.25rem;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__conversation-mt-124 {
		margin-top: 7.75rem;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__conversation-mt-124 {
		margin-top: 5rem;
	}
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__inner-break-right {
		margin-right: calc(50% - 50vw);
	}
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__inner-break-left {
		margin-left: calc(50% - 50vw);
	}
}

.human-adoption-under__conversation-main {
	margin-top: 3.125rem;
	margin-right: auto;
	margin-left: auto;
	order: 2;
	max-width: 800px;
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__conversation-main {
		margin: 0;
		order: 1;
		max-width: 600px;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__conversation-main {
		margin-top: 3.125rem;
	}
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__conversation-main-mr-70 {
		margin-right: 4.375rem;
	}
}

.human-adoption-under__bar {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.human-adoption-under__black-titles {
	display: flex;
	flex-direction: column;
	margin-top: 1rem;
}

.human-adoption-under__black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 30px;
	background-color: #000;
	color: #fff;
	letter-spacing: 1px;
	margin-right: auto;
}

@media screen and (max-width: 767px) {
	.human-adoption-under__black-title {
		font-size: 18px;
		padding: 10px 16px;
	}
}

.human-adoption-under__black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.human-adoption-under__conversation-title {
	display: flex;
}

.human-adoption-under__conversation-title-mt {
	margin-top: 1.375rem;
}

.human-adoption-under__conversation-title-bar {
	width: 20px;
	height: 1px;
	background-color: #cc0022;
	margin-top: 17px;
}

.human-adoption-under__conversation-title-text {
	margin-left: 5px;
	font-size: 20px;
	font-weight: bold;
	line-height: calc(34 / 20);
}

@media screen and (max-width: 767px) {
	.human-adoption-under__conversation-title-text {
		font-size: 18px;
	}
}

.human-adoption-under__conversation-texts {
	margin-top: 3px;
}

.human-adoption-under__conversation-texts:not(:first-child) {
	margin-top: 1.5rem;
}

.human-adoption-under__conversation-text {
	font-size: 16px;
	line-height: calc(27 / 16);
}

.human-adoption-under__conversation-text--name {
	font-weight: bold;
}

.human-adoption-under__conversation-picture {
	order: 1;
	max-height: 423px;
	position: relative;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__conversation-picture {
		margin-left: 0;
		margin-right: calc(50% - 50vw);
		width: calc(100% - 600px - 4.375rem);
		order: 2;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__conversation-picture {
		margin: 0;
	}
}

.human-adoption-under__conversation-picture::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.human-adoption-under__conversation-picture::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.human-adoption-under__conversation-picture::before {
		width: 30px;
		height: 30px;
	}

	.human-adoption-under__conversation-picture::after {
		width: 30px;
		height: 30px;
	}
}

.human-adoption-under__conversation-picture img {
	max-height: 423px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.human-adoption-under__contents {
	max-width: 800px;
	width: 100%;
	margin: 6.25rem auto 0;
}

@media screen and (min-width: 1280px) {
	.human-adoption-under__contents {
		max-width: 966px;
		margin-top: 7.5rem;
	}
}

@media screen and (max-width: 767px) {
	.human-adoption-under__contents {
		margin-top: 5rem;
	}
}

.human-adoption-under__content:not(:first-child) {
	margin-top: 5rem;
}

.human-adoption-under__delimiter {
	margin-top: 6.75rem;
	width: 100%;
	height: 1px;
	background-color: #333;
}

.human-adoption-under__delimiter--content {
	margin-bottom: 6.75rem;
}

@media screen and (max-width: 767px) {
	.human-adoption-under__delimiter {
		margin-top: 4.375rem;
	}

	.human-adoption-under__delimiter--content {
		margin-bottom: 4.375rem;
	}
}

.human-adoption-under__conversation-reverse .human-adoption-under__conversation-picture {
	order: 1;
}

.human-adoption-under__conversation-reverse .human-adoption-under__conversation-main {
	order: 2;
	margin-left: auto;
}

/*
 =========================================================
human-ex_css（人財/EX向上用スタイル）

2023.7.12

 =========================================================
*/

.human-ex__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.human-ex__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.human-ex__mainvisual {
		height: 130px;
	}
}

.human-ex__kurumin {
	display: flex;
}

@media screen and (max-width: 767px) {
	.human-ex__kurumin {
		display: block;
	}
}

.human-ex__kurumin-picture {
	margin-left: 3.125rem;
	max-width: 170px;
	max-height: 170px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.human-ex__kurumin-picture {
		margin-top: 1.875rem;
		margin-right: auto;
		margin-left: auto;
	}
}

.human-ex__kurumin-picture img {
	width: 100%;
	height: 100%;
}

.human-ex__table-heading-free-work {
	margin-top: 3.125rem;
	font-size: 24px;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.human-ex__table-heading-free-work {
		font-size: 20px;
	}
}

.human-ex__table-title-free-work {
	flex-direction: column;
}

.human-ex__education-picture {
	max-width: 850px;
	min-width: 700px;
	width: 100%;
	height: 100%;
}

.human-ex__education-picture img {
	width: 100%;
	height: 100%;
}

.human-ex__upbringing-picture,
.human-ex__upbringing-text {
	max-width: 850px;
	width: 100%;
}

.human-ex__upbringing-picture img {
	width: 100%;
	height: auto;
}

.human-ex__feedback {
	max-width: 760px;
}

.human-ex__feedback img {
	width: 100%;
	height: 100%;
}

.human-ex__feedback-text {
	font-size: 12px;
	line-height: calc(20 / 12);
}

.human-ex__office {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1.25rem;
}

@media screen and (max-width: 767px) {
	.human-ex__office {
		grid-template-columns: 1fr;
	}
}

.human-ex__office-picture {
	max-height: 310px;
}

.human-ex__office-picture img {
	max-height: 100%;
	object-fit: cover;
	object-position: center center;
}

.human-ex__flex-01 {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px 30px;
}

@media screen and (max-width: 767px) {
	.human-ex__flex-01 {
		gap: 20px 24px;
	}
}

@media screen and (max-width: 600px) {
	.human-ex__flex-01 {
		gap: 20px;
	}
}

.human-ex__flex-item-01 img {
	display: block;
	margin-top: 10px;
	max-height: 100px;
}

.human-ex__w-700 {
	max-width: 700px;
	width: 100%;
}

.human-ex__grid-01 {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 10px;
	max-width: 700px;
}

.human-ex__grid-01:nth-child(2) {
	margin-top: 10px;
}

@media screen and (max-width: 767px) {
	.human-ex__grid-01 {
		grid-template-columns: 1fr 1fr;
		max-width: 550px;
		margin-right: auto;
		margin-left: auto;
	}

	.human-ex__grid-01:nth-child(2) {
		margin-top: 0px;
	}
}

@media screen and (max-width: 600px) {
	.human-ex__grid-01 {
		max-width: 300px;
		margin-right: auto;
		margin-left: auto;
		grid-template-columns: 1fr;
	}
}

/*
 =========================================================
human-health_css（人財/従業員の安全と健康用スタイル）

2023.7.12

 =========================================================
*/

.human-health__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.human-health__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.human-health__mainvisual {
		height: 130px;
	}
}

.human-health__flex {
	display: flex;
}

@media screen and (max-width: 767px) {
	.human-health__flex {
		display: block;
	}
}

.human-health__excellent-corporation {
	margin-left: 1.875rem;
	max-width: 277px;
	max-height: 190px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.human-health__excellent-corporation {
		max-height: none;
		margin-top: 1.875rem;
		margin-right: auto;
		margin-left: auto;
	}
}

.human-health__excellent-corporation img {
	width: 100%;
	height: 100%;
	min-width: 200px;
}

.human-health__text--managing-director {
	margin-top: 1.25rem;
}

.human-health__management-strategy-title {
	margin-top: 3.125rem;
	font-size: 24px;
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.human-health__management-strategy-title {
		margin-top: 2.5em;
		font-size: 20px;
	}
}

.human-health__management-strategy-picture {
	max-width: 1100px;
	min-width: 800px;
	width: 100%;
	height: 100%;
}

.human-health__management-strategy-picture img {
	width: 100%;
	height: 100%;
}

.human-health__management-system-picture {
	max-width: 800px;
	width: 100%;
	height: 100%;
}

.human-health__management-system-picture img {
	width: 100%;
	height: 100%;
}

.human-health__steering-committee-picture {
	max-width: 750px;
	max-height: 311px;
	width: 100%;
	height: 100%;
}

.human-health__steering-committee-picture img {
	width: 100%;
	height: 100%;
}

.human-health__mental-support-picture {
	max-width: 725px;
	width: 100%;
	height: 100%;
}

.human-health__mental-support-picture img {
	width: 100%;
	height: 100%;
}

.human-health__table-gray {
	display: inline-block;
	background-color: #f2f2f2;
	padding: 0 4px 4px;
}

.human-health__index-table-flex {
	margin-top: 4px;
	display: flex;
}

.human-health__index-table-attention {
	margin-top: 8px;
	font-size: 12px;
}

@media screen and (max-width: 767px) {
	.human-health__index-table-attention {
		margin-top: 3px;
		font-size: 10px;
	}
}

@media screen and (max-width: 600px) {
	.human-health__index-table-attention {
		margin-top: 0px;
	}
}

.human-health__index-table-flex-item {
	background-color: #fff;
	font-size: 20px;
	letter-spacing: 2px;
	display: flex;
	justify-content: center;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.human-health__index-table-flex-item {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.human-health__index-table-flex-item {
		font-size: 12px;
	}
}

.human-health__index-table-flex-item:nth-child(2) {
	margin-top: 3px;
}

.human-health__index-table-adjustment-first {
	min-width: 400px;
}

@media screen and (max-width: 767px) {
	.human-health__index-table-adjustment-first {
		min-width: 220px;
	}
}

@media screen and (max-width: 600px) {
	.human-health__index-table-adjustment-first {
		min-width: 164px;
	}
}

.human-health__index-table-flex-items:nth-child(1) {
	min-width: 252px;
}

@media screen and (max-width: 767px) {
	.human-health__index-table-flex-items:nth-child(1) {
		min-width: 117px;
	}
}

@media screen and (max-width: 600px) {
	.human-health__index-table-flex-items:nth-child(1) {
		min-width: 80px;
	}
}

.human-health__index-table-flex-items:nth-child(2) {
	margin-left: 4px;
	min-width: 147px;
	display: flex;
	flex-direction: column;
}

@media screen and (max-width: 767px) {
	.human-health__index-table-flex-items:nth-child(2) {
		min-width: 100px;
	}
}

@media screen and (max-width: 600px) {
	.human-health__index-table-flex-items:nth-child(2) {
		min-width: 80px;
	}
}

.human-health__remote-competition {
	max-width: 800px;
	width: 100%;
	height: 100%;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (max-width: 767px) {
	.human-health__remote-competition {
		max-width: 600px;
	}
}

@media screen and (max-width: 600px) {
	.human-health__remote-competition {
		max-width: 480px;
	}
}

.human-health__remote-competition img {
	width: 100%;
	height: 100%;
}

/*
 =========================================================
human-inclusion_css（ワークライフバランス用スタイル）

2023.7.10

 =========================================================
*/

.human-inclusion__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.human-inclusion__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-human-resources-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__mainvisual {
		height: 130px;
	}
}

.human-inclusion__circle {
	display: flex;
	align-items: center;
	height: 287px;
}

.human-inclusion__circle-picture {
	max-width: 185px;
	max-height: 185px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.human-inclusion__circle-picture {
		max-width: 150px;
		max-height: 150px;
		width: 100%;
		height: 100%;
	}
}

.human-inclusion__circle-text {
	margin-left: 47px;
	font-size: 40px;
	color: #fff;
	font-weight: bold;
	letter-spacing: 6px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__circle-text {
		margin-left: 32px;
		font-size: 32px;
		color: #fff;
		font-weight: bold;
	}
}

.human-inclusion__menus {
	width: 100%;
	padding: 0 1.875rem;
	margin: 6.25rem auto 0;
	display: flex;
	justify-content: center;
	border-bottom: 1px solid #333;
}

@media screen and (max-width: 767px) {
	.human-inclusion__menus {
		flex-wrap: wrap;
		padding: 0 1rem;
		margin: 4rem auto 0;
	}
}

.human-inclusion__menu {
	max-width: 320px;
	width: 100%;
	height: 100px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__menu {
		max-width: none;
		width: 50%;
	}
}

.human-inclusion__menu:nth-child(2) {
	border: 1px solid #333;
	border-bottom: none;
}

.human-inclusion__menu:nth-child(n + 3) {
	border-top: 1px solid #333;
	border-right: 1px solid #333;
}

@media screen and (max-width: 767px) {
	.human-inclusion__menu:nth-child(3) {
		border-right: none;
		border-left: 1px solid #333;
	}

	.human-inclusion__menu:nth-child(4) {
		border-left: 1px solid #333;
	}
}

.human-inclusion__menu a {
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	color: inherit;
	height: 100%;
	color: #333;
	font-size: 1rem;
	letter-spacing: 2px;
	font-weight: bold;
	transition: all 0.3s;
}

.human-inclusion__menu a:hover {
	opacity: 0.6;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__menu a {
		font-size: 1.25rem;
	}
}

@media screen and (max-width: 767px) {
	.human-inclusion__menu a {
		padding: 0 0.625rem;
	}
}

.human-inclusion__menu--active {
	background-color: #cc0022;
}

.human-inclusion__menu--active a {
	cursor: default;
	color: #fff;
}

.human-inclusion__menu--active a:hover {
	opacity: 1;
}

.human-inclusion__links {
	padding: 1.625rem 0;
	border-bottom: 1px solid #333;
}

.human-inclusion__link-flex {
	display: flex;
	flex-wrap: wrap;
}

@media screen and (max-width: 600px) {
	.human-inclusion__link-flex {
		display: block;
	}

	.human-inclusion__link-flex:not(:last-child) {
		margin-bottom: 1.5rem;
	}
}

.human-inclusion__link:not(:last-child) {
	margin-right: 2.6875rem;
}

@media screen and (max-width: 600px) {
	.human-inclusion__link:not(:last-child) {
		margin-bottom: 1.5rem;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__link:not(:last-child) {
		margin-right: 0;
	}
}

.human-inclusion__link a {
	position: relative;
	display: block;
	text-decoration: none;
	color: inherit;
	padding-right: 36px;
	font-size: 16px;
	line-height: 45px;
	letter-spacing: 2px;
	font-weight: bold;
	transition: all 0.3s;
}

.human-inclusion__link a:hover {
	opacity: 0.6;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__link a {
		font-size: 20px;
		line-height: 56px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__link a {
		display: inline-block;
		line-height: 24px;
	}
}

.human-inclusion__link a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 24px;
	height: 24px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/human-inclusion/human-inclusion-arrow.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__link a::before {
		width: 28px;
		height: 28px;
	}
}

.human-inclusion__heading {
	margin-top: 4.875rem;
	font-size: 32px;
	letter-spacing: 4px;
	line-height: 1.5;
	font-weight: bold;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__heading {
		font-size: 40px;
	}
}

@media screen and (max-width: 767px) {
	.human-inclusion__heading {
		margin-top: 4rem;
		font-size: 24px;
	}
}

.human-inclusion__title {
	display: flex;
	align-items: center;
	margin-top: 2.6875rem;
}

.human-inclusion__clip-path {
	width: 46px;
	height: 28px;
	clip-path: polygon(60% 0, 100% 0%, 40% 100%, 0% 100%);
	background-color: #cc0022;
}

.human-inclusion__title p {
	margin-left: 0.625rem;
	font-size: 25px;
	font-weight: bold;
	letter-spacing: 2.5px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__title p {
		font-size: 18px;
	}
}

.human-inclusion__texts {
	margin-top: 0.5625rem;
}

.human-inclusion__text {
	font-size: 16px;
	line-height: calc(27 / 16);
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__text {
		font-size: 14px;
	}
}

.human-inclusion__diversity-inclusion {
	margin-top: 2.875rem;
	max-width: 1280px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.human-inclusion__diversity-inclusion {
		max-height: none;
	}
}

.human-inclusion__diversity-inclusion img {
	max-width: 1140px;
	min-width: 1140px;
	height: 100%;
}

.human-inclusion__diversity-history {
	max-width: 1280px;
	width: 100%;
	height: 100%;
}

.human-inclusion__diversity-history img {
	width: 100%;
	height: 100%;
}

.human-inclusion__link-a {
	display: flex;
	justify-content: center;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.human-inclusion__link-a--992 {
	max-width: 992px;
}

.human-inclusion__link-a--1125 {
	max-width: 1125px;
}

.human-inclusion__red-link a {
	display: flex;
	align-items: center;
	justify-content: space-between;
	text-decoration: none;
	color: inherit;
	padding: 10px 20px 10px 34px;
	transition: all 0.3s;
}

.human-inclusion__red-link a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 767px) {
	.human-inclusion__red-link a {
		padding: 10px 20px;
	}
}

.human-inclusion__red-link-text {
	color: #fff;
	line-height: 1.5;
	letter-spacing: 2px;
	font-size: 18px;
	font-weight: bold;
}

.human-inclusion__red-link--1068 .human-inclusion__red-link-text {
	letter-spacing: 0.8px;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__red-link-text {
		font-size: 20px;
	}
}

@media screen and (max-width: 767px) {
	.human-inclusion__red-link-text {
		font-size: 16px;
	}
}

.human-inclusion__red-link-arrow {
	max-width: 8px;
	max-height: 16px;
	width: 100%;
	height: 100%;
	margin-left: 30px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__red-link-arrow {
		margin-left: 16px;
	}
}

.human-inclusion__red-link-arrow img {
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.human-inclusion__item:not(:first-child) {
		margin-top: 6.25rem;
	}
}

.human-inclusion__item-background {
	background-color: #f2f2f2;
	margin: 1.25rem calc(50% - 50vw) 0;
}

.human-inclusion__item-container {
	padding: 8.125rem 0 12.625rem;
}

@media screen and (max-width: 767px) {
	.human-inclusion__item-container {
		padding: 6.25rem 0;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__item-container {
		padding: 5rem 0;
	}
}

.human-inclusion__item-flex {
	display: block;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__item-flex {
		display: flex;
		justify-content: space-between;
	}
}

.human-inclusion__item-flex-margin-124 {
	margin-top: 7.75rem;
}

.human-inclusion__item-flex-margin-164 {
	margin-top: 10.25rem;
}

.human-inclusion__item-flex-margin-176 {
	margin-top: 11rem;
}

@media screen and (max-width: 767px) {
	.human-inclusion__item-flex-margin-124 {
		margin-top: 6.25rem;
	}

	.human-inclusion__item-flex-margin-164 {
		margin-top: 6.25rem;
	}

	.human-inclusion__item-flex-margin-176 {
		margin-top: 6.25rem;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__item-flex-margin-124 {
		margin-top: 5rem;
	}

	.human-inclusion__item-flex-margin-164 {
		margin-top: 5rem;
	}

	.human-inclusion__item-flex-margin-176 {
		margin-top: 5rem;
	}
}

.human-inclusion__item-flex--start {
	align-items: start;
}

.human-inclusion__item-flex--center {
	align-items: center;
}

.human-inclusion__item-card {
	max-width: 609px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__item-card {
		margin-left: 0;
	}
}

.human-inclusion__item-card a {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s;
}

.human-inclusion__item-card a:hover {
	opacity: 0.6;
}

.human-inclusion__name {
	display: flex;
	justify-content: center;
	background-color: #000;
	color: #fff;
	width: 100%;
	padding: 9px 20px;
	font-size: 20px;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__name {
		font-size: 18px;
	}
}

.human-inclusion__more-info {
	position: absolute;
	display: flex;
	justify-content: space-between;
	align-items: center;
	right: 0;
	bottom: 0;
	width: 300px;
	height: 50px;
	padding-right: 20px;
	padding-left: 30px;
	background-color: #cc0022;
}

@media screen and (max-width: 600px) {
	.human-inclusion__more-info {
		max-width: 75%;
	}
}

.human-inclusion__more-info-text {
	color: #fff;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__more-info-text {
		font-size: 18px;
	}
}

.human-inclusion__more-info-arrow {
	position: relative;
	max-width: 7px;
	max-height: 16px;
	width: 100%;
	height: 100%;
}

.human-inclusion__more-info-arrow img {
	width: 100%;
	height: 100%;
}

.human-inclusion__explanation {
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__explanation {
		margin-left: 0;
	}
}

.human-inclusion__red-bar {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.human-inclusion__black-title {
	display: inline-block;
	margin-top: 1rem;
	font-size: 20px;
	letter-spacing: 4px;
	line-height: calc(34 / 20);
	color: #fff;
	background-color: #000;
	padding: 8px 36px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__black-title {
		font-size: 18px;
		line-height: 1.5;
		padding: 6.5px 30px;
	}
}

.human-inclusion__women {
	max-width: calc(968px + 50px * 2);
	width: 100%;
	margin: 8.375rem auto 0;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__women {
		padding: 0 50px;
	}
}

@media screen and (max-width: 767px) {
	.human-inclusion__women {
		margin-top: 6.25rem;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__women {
		margin-top: 5rem;
	}
}

.human-inclusion__woman:not(:first-child) {
	margin-top: 4.375rem;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.human-inclusion__woman-title {
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman-title {
		font-size: 18px;
	}
}

.human-inclusion__woman-table {
	display: flex;
	margin-top: 1.25rem;
}

.human-inclusion__woman-column {
	max-width: 320px;
	width: 100%;
}

.human-inclusion__woman-column:not(:first-child) {
	margin-left: 4px;
}

.human-inclusion__woman-year {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 64px;
	background-color: #333;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman-year {
		font-size: 18px;
	}
}

.human-inclusion__woman-year span {
	display: inline-block;
	margin-top: 4px;
  margin-left: 2px;
	font-size: 15px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman-year span {
		font-size: 14px;
	}
}

.human-inclusion__woman-ratio {
	margin-top: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 66px;
	background-color: #fff;
	color: #333;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman-ratio {
		font-size: 18px;
	}
}

.human-inclusion__woman-ratio span {
	display: inline-block;
	margin-top: 4px;
  margin-left: 2px;
	font-size: 15px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman-ratio span {
		font-size: 14px;
	}
}

.human-inclusion__woman-point-in-time {
	margin-top: 1rem;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 1.5px;
	text-align: right;
}

@media screen and (max-width: 767px) {
	.human-inclusion__woman-point-in-time {
		font-size: 12px;
	}
}

.human-inclusion__man {
	margin-top: 38px;
	max-width: 623px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man {
		margin-top: 3.125rem;
	}
}

@media screen and (min-width: 1024px) {
	.human-inclusion__man {
		margin-right: 0;
	}
}

.human-inclusion__man-title {
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-title {
		font-size: 18px;
	}
}

.human-inclusion__man-table {
	display: flex;
}

.human-inclusion__man-item {
	height: 64px;
	background-color: #000;
}

.human-inclusion__man-year {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 64px;
	background-color: #000;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-year {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-year {
		font-size: 12px;
	}
}

.human-inclusion__man-year span {
	display: inline-block;
	margin-top: 4px;
  margin-left: 2px;
	font-size: 15px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-year span {
		font-size: 12px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-year span {
		font-size: 10px;
	}
}

.human-inclusion__man-number {
	margin-top: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 66px;
	background-color: #fff;
	color: #333;
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-number {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-number {
		font-size: 12px;
	}
}

.human-inclusion__man-number span {
	display: inline-block;
	margin-top: 4px;
	font-size: 15px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-number span {
		margin-top: 2px;
		font-size: 12px;
	}
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-number span {
		margin-top: 3px;
		font-size: 10px;
	}
}

.human-inclusion__man-number--ratio {
	font-size: 29px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-number--ratio {
		font-size: 24px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-number--ratio {
		font-size: 20px;
	}
}

.human-inclusion__man-number--ratio span {
	font-size: 22px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-number--ratio span {
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-number--ratio span {
		font-size: 14px;
	}
}

.human-inclusion__man-text {
	background-color: #fff;
	color: #333;
	width: 100%;
	height: 66px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 2px;
}

.human-inclusion__man-text--foot {
	max-width: 457px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-text {
		font-size: 16px;
	}

	.human-inclusion__man-text--foot {
		max-width: 304px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-text {
		font-size: 12px;
	}
}

.human-inclusion__man-text:not(:first-child) {
	margin-top: 4px;
}

.human-inclusion__man-text--big {
	font-size: 25px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__man-text--big {
		font-size: 20px;
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__man-text--big {
		font-size: 16px;
	}
}

.human-inclusion__employment {
	max-width: 624px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__employment {
		margin-right: 0;
	}
}

.human-inclusion__employment-title {
	font-size: 20px;
	line-height: 1;
	font-weight: bold;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__employment-title {
		font-size: 18px;
	}
}

.human-inclusion__employment-table {
	display: flex;
	margin-top: 1.25rem;
}

.human-inclusion__employment-column {
	max-width: 310px;
	width: 100%;
}

.human-inclusion__employment-column:not(:first-child) {
	margin-left: 4px;
}

.human-inclusion__employment-year {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 64px;
	background-color: #333;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__employment-year {
		font-size: 18px;
	}
}

.human-inclusion__inclusion__employmentwoman-year span {
	display: inline-block;
	margin-top: 4px;
  margin-left: 2px;
	font-size: 15px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__inclusion__employmentwoman-year span {
		font-size: 14px;
	}
}

.human-inclusion__employment-ratio {
	margin-top: 4px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 66px;
	background-color: #fff;
	color: #333;
	font-size: 20px;
	line-height: 1;
	font-weight: 600;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__employment-ratio {
		font-size: 18px;
	}
}

.human-inclusion__employment-ratio span {
	display: inline-block;
	margin-top: 4px;
  margin-left: 2px;
	font-size: 15px;
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__employment-ratio span {
		font-size: 14px;
	}
}

.human-inclusion__employment-point-in-time {
	margin-top: 1rem;
	font-size: 14px;
	line-height: 1;
	letter-spacing: 1.5px;
	text-align: left;
}

@media screen and (max-width: 767px) {
	.human-inclusion__employment-point-in-time {
		font-size: 12px;
	}
}

.human-inclusion__performance-row {
	display: flex;
}

.human-inclusion__performance-row:not(:first-child) {
	margin-top: 3px;
}

.human-inclusion__performance-row .human-inclusion__performance-title:nth-child(1) {
	min-width: 884px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-row .human-inclusion__performance-title:nth-child(1) {
		min-width: 650px;
	}
}

.human-inclusion__performance-row .human-inclusion__performance-title:nth-child(2) {
	min-width: 353px;
	margin-left: 3px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-row .human-inclusion__performance-title:nth-child(2) {
		min-width: 260px;
	}
}

.human-inclusion__performance-item {
	background-color: #fff;
	min-height: 135px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-item {
		min-height: 100px;
	}
}

.human-inclusion__performance-row .human-inclusion__performance-item:nth-child(1) {
	min-width: 884px;
	display: flex;
	align-items: center;
	padding: 16px 14px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-row .human-inclusion__performance-item:nth-child(1) {
		min-width: 650px;
		padding: 16px 14px;
	}
}

.human-inclusion__performance-row .human-inclusion__performance-item:nth-child(2) {
	min-width: 353px;
	margin-left: 3px;
	padding: 16px 36px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-row .human-inclusion__performance-item:nth-child(2) {
		min-width: 260px;
		padding: 16px;
	}
}

.human-inclusion__performance-title {
	display: flex;
	justify-content: center;
	background-color: #333;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	padding: 16px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-title {
		font-size: 18px;
	}
}

.human-inclusion__performance-genre {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #333;
	color: #fff;
	min-width: 280px;
	min-height: 100px;
	font-size: 20px;
	font-weight: bold;
	line-height: calc(34 / 20);
	text-align: center;
	letter-spacing: 4px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-genre {
		font-size: 16px;
		padding: 16px 0;
		min-width: 200px;
		min-height: 87px;
	}
}

.human-inclusion__performance-texts {
	margin-left: 1.875rem;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-texts {
		margin-left: 1rem;
	}
}

.human-inclusion__performance-text {
	font-size: 20px;
	font-weight: bold;
	line-height: calc(35 / 20);
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-text {
		font-size: 16px;
	}
}

.human-inclusion__performance-text--mini {
	font-size: 16px;
	line-height: calc(25 / 16);
	letter-spacing: 0px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-text--mini {
		font-size: 14px;
	}
}

.human-inclusion__performance-text-flex {
	display: flex;
}

.human-inclusion__performance-text-flex .human-inclusion__performance-text--mini:nth-child(1) {
	min-width: 64px;
}

.human-inclusion__performance-director {
	font-size: 16px;
	line-height: calc(25 / 16);
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-director {
		font-size: 14px;
	}
}

.human-inclusion__performance-name {
	font-size: 20px;
	line-height: calc(35 / 20);
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.human-inclusion__performance-name {
		font-size: 16px;
	}
}

.human-inclusion__notes {
	margin-top: 0.25rem;
	font-size: 14px;
	line-height: calc(24 / 14);
}

@media screen and (max-width: 767px) {
	.human-inclusion__notes {
		font-size: 12px;
	}
}

.human-inclusion__kpi {
	display: flex;
}

@media screen and (max-width: 600px) {
	.human-inclusion__kpi {
		display: block;
	}
}

.human-inclusion__kpi-clip-path {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	width: 200px;
	height: 60px;
	background-color: #68B9B7;
	clip-path: polygon(0% 0%, 90% 0%, 100% 50%, 90% 100%, 0% 100%);
}

.human-inclusion__kpi-clip-path span {
	margin-top: 4px;
	margin-left: 4px;
	font-size: 16px;
}

@media screen and (max-width: 767px) {
	.human-inclusion__kpi-clip-path {
		font-size: 18px;
		width: 150px;
	}

	.human-inclusion__kpi-clip-path span {
		font-size: 14px;
	}
}

.human-inclusion__kpi-main {
	margin-left: 2.5rem;
	width: calc(100% - 200px - 2.5rem);
}


@media screen and (max-width: 767px) {
	.human-inclusion__kpi-main {
		margin-left: 1.875rem;
		width: calc(100% - 150px - 1.875rem);
	}
}

@media screen and (max-width: 600px) {
	.human-inclusion__kpi-main {
		margin-left: 0;
		margin-top: 1.875rem;
		width: 100%;
	}
}

.human-inclusion__kpi-text {
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__lgbtq {
		display: flex;
		flex-direction: row-reverse;
		margin-top: 1.875rem;
	}
}

.human-inclusion__lgbtq-main {
	width: 100%;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__lgbtq-main {
		width: calc(100% - 350px - 3.125rem);
	}
}

.human-inclusion__lgbtq-picutre {
	max-width: 350px;
}

@media screen and (min-width: 1024px) {
	.human-inclusion__lgbtq-picutre {
		margin-left: 3.125rem;
	}
}

.human-inclusion__update {
	text-align: center;
	margin-top: 0.5rem;
}

/*
 =========================================================
human-rights_css（人権用スタイル）

2023.7.14

 =========================================================
*/

.human-rights__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/human-rights-mainvisual.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.human-rights__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/human-rights-mainvisual-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.human-rights__mainvisual {
		height: 130px;
	}
}

.human-rights__links-way-to-think {
	display: flex;
}

@media screen and (max-width: 767px) {
	.human-rights__links-way-to-think {
		flex-direction: column;
	}
}

.human-rights__links-way-to-think .common__link-a {
	margin: 0;
}

.human-rights__links-way-to-think .common__link-a:nth-child(2) {
	margin-left: 1.875rem;
}

@media screen and (max-width: 767px) {
	.human-rights__links-way-to-think .common__link-a {
		margin-right: auto;
	}

	.human-rights__links-way-to-think .common__link-a:nth-child(2) {
		margin-left: 0;
		margin-top: 1.875rem;
	}
}

@media screen and (min-width: 1024px) {
	.human-rights__way-to-think-flex {
		display: flex;
		justify-content: space-between;
	}
}

.human-rights__way-to-think-main {
	max-width: 850px;
}

.human-rights__way-to-think-picture {
	max-width: 400px;
	max-height: 320px;
	width: 100%;
	height: 100%;
	margin-top: 2.5rem;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.human-rights__way-to-think-picture {
		min-width: 330px;
		margin-top: 0;
		margin-right: 0;
		margin-left: 2.5rem;
	}
}

@media screen and (max-width: 767px) {
	.human-rights__way-to-think-picture {
		margin-top: 1.875rem;
	}
}

.human-rights__way-to-think-picture img {
	min-width: 240px;
	width: 100%;
	height: 100%;
}

.human-rights__table-background {
	background-color: #f2f2f2;
	padding: 4px 4px;
	display: inline-block;
}

.human-rights__respect {
	display: block;
}

@media screen and (min-width: 1024px) {
	.human-rights__respect {
		display: flex;
	}
}

.human-rights__respect-main {
	width: 100%;
}

@media screen and (min-width: 1024px) {
	.human-rights__respect-main {
		width: calc(100% - 500px - 2.5rem);
	}
}

.human-rights__respect-picture {
	margin-top: 2.5rem;
	text-align: center;
}

@media screen and (min-width: 1024px) {
	.human-rights__respect-picture {
		margin-top: 0;
		margin-left: 2.5rem;
		max-width: 500px;
		max-height: 273px;
	}
}

.human-rights__respect-picture img {
	max-width: 500px !important;
	max-height: 273px;
}

/*
 =========================================================
management_css（サステナビリティマネジメント用スタイル）

2021.2.xx

 =========================================================
*/

.management__mainvisual,
.materiality__mainvisual {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-management.png);
	height: 400px;
	width: 100vw;
	background-size: cover;
	background-position: 35% 50%;
}

@media screen and (min-width: 1024px) {
	.management__mainvisual,
	.materiality__mainvisual {
		height: 600px;
		background-position: center center;
	}
}

@media screen and (max-width: 600px) {
	.management__mainvisual,
	.materiality__mainvisual {
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-management-sp.png);
		height: 700px;
		background-position: bottom center;
	}
}

.management__mainvisual-body {
	display: flex;
	flex-direction: column;
	padding-top: 5rem;
	max-width: 360px;
	height: 400px;
}

@media screen and (min-width: 1024px) {
	.management__mainvisual-body {
		max-width: 460px;
	}
}

@media screen and (max-width: 600px) {
	.management__mainvisual-body {
		justify-content: start;
		height: auto;
		min-height: 700px;
		padding-top: 1.25rem;
	}
}

.management__mainvisual-heading {
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 357px;
	font-size: 16px;
	height: 35px;
	border: 1px solid #333;
}

@media screen and (max-width: 600px) {
	.management__mainvisual-heading {
		font-size: 14px;
		line-height: calc(24 / 14);
		max-width: 308px;
		height: 30px;
	}
}

.management__mainvisual-title {
	margin-top: 0.875rem;
	font-size: 30px;
	line-height: calc(40 / 30);
	letter-spacing: 4px;
	color: #333;
	font-weight: bold;
}

@media screen and (min-width: 1024px) {
	.management__mainvisual-title {
		font-size: 40px;
		line-height: 1.5;
	}
}

.management__mainvisual-text {
	margin-top: 1rem;
	font-size: 16px;
	line-height: calc(30 / 16);
	font-weight: bold;
}

@media screen and (max-width: 600px) {
	.management__mainvisual-text {
		font-size: 14px;
		line-height: calc(26 / 14);
	}
}

.management__item:not(:first-child) {
	margin-top: 3.5rem;
}

.management__black-title {
	background-color: #000;
	font-size: 20px;
	line-height: calc(34 / 20);
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.management__black-title {
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.management__black-title {
		font-size: 15px;
	}
}

.management__body-gray {
	align-items: center;
	padding: 35px 5%;
	background-color: #EAEAEA;
}

.management__body-flex {
	display: flex;
}

.management__body-flex:not(:first-child) {
	margin-top: 1.6875rem;
}

.management__red-circle {
	margin-top: 4px;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	background-color: #CC0022;
}

.management__body-texts {
	margin-left: 5px;
	width: calc(100% - 5px - 16px);
}

.management__sdgs {
	max-width: 1060px;
	max-height: 627px;
	width: 100%;
	height: 100%;
	margin: 10.5rem auto 0;
}

@media screen and (max-width: 767px) {
	.management__sdgs {
		margin-top: 6.25rem;
	}
}

@media screen and (max-width: 600px) {
	.management__sdgs {
		max-height: 1238px;
	}
}

.management__sdgs img {
	width: 100%;
	height: 100%;
}

.management__sdgs-text {
	max-width: 1050px;
	margin-top: 4.375rem;
	margin-right: auto;
	margin-left: auto;
	font-size: 16px;
	line-height: calc(35 / 16);
}

@media screen and (max-width: 767px) {
	.management__sdgs-text {
		margin-top: 3.125rem;
		font-size: 14px;
		line-height: calc(24 / 14);
	}
}

/*
 =========================================================
management-compliance_css（コンプライアンス）

2023.7.15

 =========================================================
*/

.management-compliance__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-compliance.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.management-compliance__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-compliance-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.management-compliance__mainvisual {
		height: 130px;
	}
}

.management-compliance__text {
	margin-top: 0.75rem;
	max-width: 1056px;
	text-align: right;
}

/*
 =========================================================
management-governance_css（経営ガバナンス用スタイル）

2023.7.15

 =========================================================
*/

.management-governance__mainvisual {
	width: 100%;
	height: 400px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/management-governance-mainvisual.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.management-governance__mainvisual {
		height: 700px;
	}
}

@media screen and (max-width: 767px) {
	.management-governance__mainvisual {
		height: 500px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/management-governance-mainvisual-sp.svg);
	}
}

.management-governance__mainvisual-container {
	display: flex;
	flex-direction: column;
	max-width: 500px;
	padding-top: 2rem;
}

@media screen and (min-width: 1024px) {
	.management-governance__mainvisual-container {
		max-width: 750px;
		padding-top: 6.25rem;
	}
}

@media screen and (max-width: 600px) {
	.management-governance__mainvisual-container {
		padding-top: 0;
		height: 500px;
		justify-content: center;
	}
}

/*
 =========================================================
management-partner_css（バリューチェーンマネジメント/ビジネスパートナーとの連携用スタイル）

2023.7.10

 =========================================================
*/

.management-partner__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/management-mainvisual.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.management-partner__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/management-mainvisual-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.management-partner__mainvisual {
		height: 130px;
	}
}

.management-stakeholder__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/management-mainvisual.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.management-stakeholder__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/management-mainvisual-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.management-stakeholder__mainvisual {
		height: 130px;
	}
}

.management-stakeholder__premium-service-pictures {
	display: flex;
}

@media screen and (max-width: 767px) {
	.management-stakeholder__premium-service-pictures {
		display: block;
	}
}

.management-stakeholder__premium-service-picture {
	max-width: 400px;
	max-height: 267px;
	width: 100%;
	height: 100%;
}

.management-stakeholder__premium-service-picture:nth-child(2) {
	margin-left: 1.875rem;
}

@media screen and (max-width: 767px) {
	.management-stakeholder__premium-service-picture:nth-child(1) {
		margin: 0 auto;
	}
	.management-stakeholder__premium-service-picture:nth-child(2) {
		margin: 1.875rem auto 0;
	}
}

.management-stakeholder__premium-service-picture img {
	width: 100%;
	height: 100%;
}

.management-stakeholder__premium-service-links {
	display: flex;
	flex-direction: column;
}

.management-stakeholder__business-forum-main {
	width: 100%;
}

.management-stakeholder__business-forum-picture {
	margin-top: 3.125rem;
	max-width: 450px;
}

@media screen and (min-width: 1024px) {
	.management-stakeholder__flex {
		display: flex;
		justify-content: space-between;
	}

	.management-stakeholder__business-forum-main {
		max-width: 780px;
	}

	.management-stakeholder__business-forum-picture {
		margin-top: 1.875rem;
		margin-left: 3.125rem;
		max-width: 400px;
		max-height: 267px;
	}
}

@media screen and (max-width: 767px) {
	.management-stakeholder__business-forum-picture {
		margin: 1.875rem auto 0;
	}
}

.management-stakeholder__business-forum-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.management-stakeholder__forum {
	max-width: 500px;
}

.management-stakeholder__forum img {
	object-fit: cover;
	object-position: center center;
}

/*
 =========================================================
president_css（トップメッセージ用スタイル）

2023.07.25

 =========================================================
*/

.president__mainvisual {
	width: 100vw;
	height: 400px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/president-mainvisual.jpg);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.president__mainvisual {
		height: 600px;
	}
}

@media screen and (max-width: 767px) {
	.president__mainvisual {
		height: 250px;
	}
}

@media screen and (max-width: 600px) {
	.president__mainvisual {
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/president-mainvisual-sp.jpg);
	}
}

.president__container {
	padding-top: 3rem;
}

@media screen and (min-width: 1024px) {
	.president__container {
		padding-top: 6.25rem;
	}
}

@media screen and (max-width: 767px) {
	.president__container {
		padding-top: 2rem;
	}
}

@media screen and (max-width: 600px) {
	.president__container {
		padding-top: 3rem;
	}
}

.president__heading-white {
	color: #fff;
}

.president__body {
	max-width: none;
}

@media screen and (max-width: 767px) {
	.president__body {
		background-color: transparent;
		padding: 0px;
	}
}

.president__texts {
	font-weight: bold;
	margin-top: 1.25rem;
}

@media screen and (min-width: 1024px) {
	.president__texts {
		margin-top: 1.875rem;
	}
}

@media screen and (max-width: 767px) {
	.president__texts {
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.president__mainvisual-under-sp {
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/president-mainvisual-under-sp.png);
		padding: 30px 30px 40px;
		background-size: cover;
		background-position: center center;
	}
}

@media screen and (max-width: 600px) {
	.president__mainvisual-under-sp {
		padding: 30px 16px 40px;
	}
}

@media screen and (min-width: 1280px) {
	.president__conversation {
		display: flex;
		justify-content: space-between;
		margin-left: calc(50% - 50vw);
	}
}

.president__conversation-picture {
	position: relative;
	max-height: 700px;
	max-width: 800px;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.president__conversation-picture {
		max-width: none;
		margin-left: 0;
		width: calc(100% - 600px - 3.125rem);
		margin-right: calc(50% - 50vw);
	}
}

.president__conversation-picture::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.president__conversation-picture::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.president__conversation-picture::before {
		width: 40px;
		height: 40px;
	}

	.president__conversation-picture::after {
		width: 40px;
		height: 40px;
	}
}

.president__conversation-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.president__conversation-main {
	max-width: 800px;
	margin-top: 3.125rem;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.president__conversation-main {
		margin: 0;
		max-width: 600px;
		margin-left: 3.125rem;
	}
}

/*
 =========================================================
president-nuder_css（トップ対談用スタイル）

2023.7.14

 =========================================================
*/

.president-nuder__mainvisual {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1024px) {
	.president-nuder__mainvisual {
		display: flex;
		flex-direction: row;
		margin-right: calc(50% - 50vw);
	}
}

.president-nuder__mainvisual-main {
	display: block;
	order: 2;
}

@media screen and (min-width: 1024px) {
	.president-nuder__mainvisual-main {
		width: 368px;
		margin-right: 2.25rem;
		order: 1;
	}
}

@media screen and (min-width: 1280px) {
	.president-nuder__mainvisual-main {
		margin-top: 3.125rem;
	}
}

@media screen and (max-width: 767px) {
	.president-nuder__mainvisual-main {
		display: block;
	}
}

.president-nuder__mainvisual-black-titles {
	display: flex;
	flex-direction: column;
	margin-top: 3.125rem;
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.president-nuder__mainvisual-black-titles {
		margin-top: 2.75rem;
	}
}

@media screen and (min-width: 1024px) {
	.president-nuder__mainvisual-black-titles {
		position: relative;
		margin-right: calc(50% - 50vw);
		width: auto;
	}
}

@media screen and (max-width: 767px) {
	.president-nuder__mainvisual-black-titles {
		margin-top: 1.25rem;
		margin-right: auto;
		margin-left: auto;
	}
}

.president-nuder__mainvisual-black-title {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 1px;
	background-color: #000;
	color: #fff;
	padding: 12px 30px;
	margin-right: auto;
}

.president-nuder__mainvisual-title img {
	max-height: 64px;
	padding: 12px 0px;
	margin-right: auto;
}

@media screen and (min-width: 1280px) {
	.president-nuder__mainvisual-black-title {
		font-size: 24px;
	}

	.president-nuder__mainvisual-title img {
		max-height: 74px;
	}
}

@media screen and (min-width: 1024px) {
	.president-nuder__mainvisual-black-title {
		margin-left: 0;
	}
}

@media screen and (max-width: 767px) {
	.president-nuder__mainvisual-black-title {
		font-size: 18px;
		padding: 12px 16px;
	}
}

@media screen and (max-width: 600px) {
	.president-nuder__mainvisual-title img {
		max-height: 57px;
	}
}

.president-nuder__mainvisual-black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.president-nuder__mainvisual-picture {
	order: 1;
	width: 100vw;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

@media screen and (min-width: 1024px) {
	.president-nuder__mainvisual-picture {
		margin-right: 0;
		margin-left: 0;
		width: calc(100% - 100px);
		order: 2;
	}
}

@media screen and (min-width: 1280px) {
	.president-nuder__mainvisual-picture {
		width: calc(100% - 368px - 2.25rem);
	}
}

.president-nuder__mainvisual-picture img {
	height: 440px;
	width: 100%;
	object-fit: cover;
	object-position: center center;
}

@media screen and (min-width: 1280px) {
	.president-nuder__mainvisual-picture img {
		height: 660px;
	}
}

.president-nuder__profiles {
	max-width: 800px;
	margin-top: 5rem;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.president-nuder__profiles {
		max-width: none;
		margin: 0;
		margin-top: 6.25rem;
		display: flex;
		justify-content: space-between;
	}
}

.president-nuder__profile {
	display: flex;
	width: 100%;
}

@media screen and (max-width: 600px) {
	.president-nuder__profile {
		display: block;
	}
}

@media screen and (min-width: 1280px) {
	.president-nuder__profile {
		width: calc((100% - 2.5rem) / 2);
	}
}

.president-nuder__profile:not(:first-child) {
	margin-top: 4.375rem;
}

@media screen and (min-width: 1280px) {
	.president-nuder__profile:not(:first-child) {
		margin-top: 0;
		margin-left: 2.5rem;
	}
}

@media screen and (max-width: 767px) {
	.president-nuder__profile:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.president-nuder__profile-picture {
	max-width: 206px;
	max-height: 206px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 600px) {
	.president-nuder__profile-picture {
		margin-right: auto;
		margin-left: auto;
	}
}

.president-nuder__profile-picture img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.president-nuder__profile-main {
	width: 100%;
	margin-left: 1.5rem;
}

@media screen and (max-width: 600px) {
	.president-nuder__profile-main {
		margin-top: 1.875rem;
		margin-left: 0;
	}
}

.president-nuder__profile-company {
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 2px;
}

.president-nuder__profile-name {
	margin-top: 0.875rem;
	font-size: 28px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 3px;
}

@media screen and (max-width: 767px) {
	.president-nuder__profile-name {
		font-size: 24px;
	}
}

.president-nuder__profile-career {
	margin-top: 0.875rem;
	font-size: 14px;
	line-height: calc(24 / 14);
}

.president-nuder__cta {
	margin-top: 6rem;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	background-color: #4b4b4b;
	padding: 3.75rem 3.125rem 4.5625rem;
}

@media screen and (max-width: 767px) {
	.president-nuder__cta {
		margin-top: 5rem;
		padding: 3.125rem 1.875rem 4rem;
	}
}

@media screen and (max-width: 600px) {
	.president-nuder__cta {
		padding: 3.125rem 1rem 4rem;
	}
}

.president-nuder__cta-container {
	max-width: 1280px;
	width: 100%;
	margin: 1.5rem auto 0;
}

.president-nuder__cta-picture {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

.president-nuder__cta-picture img {
	width: 100vw;
	max-height: 494px;
	min-height: 200px;
	object-fit: cover;
	object-position: center center;
}

.president-nuder__heading {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	line-height: calc(34 / 20);
	letter-spacing: 2px;
	color: #fff;
	background-color: #000;
	padding: 0.5rem 1.25rem;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.president-nuder__heading--703 {
	max-width: 703px;
}

.president-nuder__heading--415 {
	max-width: 415px;
}

@media screen and (max-width: 767px) {
	.president-nuder__heading {
		font-size: 18px;
	}
}

.president-nuder__text {
	font-size: 16px;
	line-height: calc(35 / 16);
	color: #fff;
}

@media screen and (max-width: 767px) {
	.president-nuder__text {
		font-size: 14px;
	}
}

.president-nuder__text-mini {
	font-size: 12px;
	margin-top: 1rem;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.president-nuder__text-mini {
		font-size: 10px;
	}
}

.president-nuder__conversation {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.president-nuder__conversation {
		flex-direction: row;
	}
}

@media screen and (min-width: 1280px) {
	.president-nuder__inner-break-right {
		margin-right: calc(50% - 50vw);
	}
}

@media screen and (min-width: 1280px) {
	.president-nuder__inner-break-left {
		margin-left: calc(50% - 50vw);
	}
}

.president-nuder__conversation-main {
	margin-top: 3.125rem;
	margin-right: auto;
	margin-left: auto;
	order: 2;
	max-width: 800px;
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.president-nuder__conversation-main {
		margin: 0;
		order: 1;
		max-width: 600px;
	}
}

@media screen and (max-width: 767px) {
	.president-nuder__conversation-main {
		margin-top: 3.125rem;
	}
}

@media screen and (min-width: 1280px) {
	.president-nuder__conversation-main-mr-70 {
		margin-right: 4.375rem;
	}
}

.president-nuder__bar {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.president-nuder__black-titles {
	display: flex;
	flex-direction: column;
	margin-top: 1rem;
}

.president-nuder__black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 30px;
	background-color: #000;
	color: #fff;
	letter-spacing: 4px;
	margin-right: auto;
}

@media screen and (max-width: 767px) {
	.president-nuder__black-title {
		font-size: 18px;
	}
}

.president-nuder__black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.president-nuder__conversation-title {
	display: flex;
}

.president-nuder__conversation-title-mt {
	margin-top: 1.375rem;
}

.president-nuder__conversation-texts {
	margin-top: 1.875rem;
}

.president-nuder__conversation-text {
	font-size: 16px;
	line-height: calc(27 / 16);
}

.president-nuder__conversation-text--mini {
	margin-top: 1.25rem;
	font-size: 12px;
}

.president-nuder__conversation-text--name {
	font-weight: bold;
}

.president-nuder__conversation-picture {
	order: 1;
	max-height: 650px;
	position: relative;
	margin: 0 calc(50% - 50vw);
	padding: 0 50px;
}

@media screen and (min-width: 1280px) {
	.president-nuder__conversation-picture {
		margin-left: 0;
		margin-right: calc(50% - 50vw);
		width: calc(100% - 600px - 4.375rem);
		order: 2;
	}
}

@media screen and (min-width: 1024px) {
	.president-nuder__conversation-picture {
		padding: 0;
	}
}

.president-nuder__conversation-picture::before {
	position: absolute;
	content: "";
	top: -1px;
	left: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 0 0, 0 100%);
	background-color: #fff;
}

.president-nuder__conversation-picture::after {
	position: absolute;
	content: "";
	bottom: -1px;
	right: -1px;
	width: 65px;
	height: 65px;
	clip-path: polygon(100% 0, 100% 100%, 0 100%);
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.president-nuder__conversation-picture {
		padding: 0 30px;
	}

	.president-nuder__conversation-picture::before {
		width: 30px;
		height: 30px;
	}

	.president-nuder__conversation-picture::after {
		width: 30px;
		height: 30px;
	}
}

@media screen and (max-width: 600px) {
	.president-nuder__conversation-picture {
		padding: 0 20px;
	}
}

.president-nuder__conversation-picture img {
	max-height: 650px;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.president-nuder__contents {
	max-width: 800px;
	width: 100%;
	margin: 6.25rem auto 0;
}

@media screen and (min-width: 1280px) {
	.president-nuder__contents {
		max-width: 966px;
		margin-top: 7.5rem;
	}
}

@media screen and (max-width: 767px) {
	.president-nuder__contents {
		margin-top: 5rem;
	}
}

.president-nuder__content:not(:first-child) {
	margin-top: 5rem;
}

.president-nuder__delimiter {
	margin-top: 6.75rem;
	width: 100%;
	height: 1px;
	background-color: #333;
}

.president-nuder__delimiter--content {
	margin-bottom: 6.75rem;
}

@media screen and (max-width: 767px) {
	.president-nuder__delimiter {
		margin-top: 4.375rem;
	}

	.president-nuder__delimiter--content {
		margin-bottom: 4.375rem;
	}
}

.president-nuder__conversation-reverse .president-nuder__conversation-picture {
	order: 1;
}

.president-nuder__conversation-reverse .president-nuder__conversation-main {
	order: 2;
	margin-left: auto;
}

/*
 =========================================================
sdgs_css（SDGs達成への貢献用スタイル）

2021.2.xx

 =========================================================
*/

.sdgs__mainvisual {
	width: 100vw;
	height: 400px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sdgs-mainvisual.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.sdgs__mainvisual {
		background-position: center center;
		height: 600px;
	}
}

@media screen and (max-width: 767px) {
	.sdgs__mainvisual {
		height: 600px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sdgs-mainvisual-sp.png);
		background-position: center bottom;
	}
}

@media screen and (max-width: 600px) {
	.sdgs__mainvisual {
		height: 500px;
	}
}

.sdgs__mainvisual-container {
	padding-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.sdgs__mainvisual-container {
		padding-top: 2.8125rem;
	}
}

.sdgs__picture-sdgs {
	max-width: 966px;
	max-height: 580px;
	width: 100%;
	height: 100%;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (max-width: 600px) {
	.sdgs__picture-sdgs {
		max-height: 1238px;
	}
}

.sdgs__picture-sdgs img {
  width: 100%;
  height: 100%;
}

.sdgs__body {
	max-width: 450px;
	padding: 0 20px 30px 0;
}

@media screen and (min-width: 1024px) {
	.sdgs__body {
		padding: 30px 20px;
	}
}

@media screen and (max-width: 767px) {
	.sdgs__body {
		background-color: transparent;
		padding: 0px;
	}
}

.sdgs__container {
	background-color: #4B4B4B;
	padding: 4.375rem 0;
}

@media screen and (min-width: 1280px) {
	.sdgs__container {
		padding: 6.25rem 0;
	}
}

@media screen and (max-width: 767px) {
	.sdgs__container {
		padding: 3.125rem 0;
	}
}
.sdgs__flex {
	display: block;
}

@media screen and (min-width: 1024px) {
	.sdgs__flex {
		display: flex;
		flex-wrap: wrap;
		gap: 2.8125rem;
	}
}


@media screen and (min-width: 1024px) {
	.sdgs__grid {
		grid-template-columns: 1fr 1fr;
	}
}

.sdgs__item--display-none {
	display: none;
}

.fade-in {
	opacity: 0;
	animation: fadeInAnimation 1s ease-in forwards; /* アニメーションを適用 */
}

/* キーフレームを定義 */
@keyframes fadeInAnimation {
	from {
			opacity: 0; /* アニメーション開始時の透明度 */
	}
	to {
			opacity: 1; /* アニメーション終了時の透明度 */
	}
}

.sdgs__item {
	width: 100%;
}

.sdgs__item:not(:first-child) {
	margin-top: 2.8125rem;
}

@media screen and (min-width: 1024px) {
	.sdgs__item {
		width: calc((100% - 2.8125rem) / 2);
	}

	.sdgs__item:not(:first-child) {
		margin-top: 0;
	}
}

.sdgs__item a {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.sdgs__item a:hover .sdgs__item-picture img {
	transform: scale(1.1);
}

.sdgs__item-picture {
	overflow: hidden;
}

.sdgs__item-picture img {
	width: 100%;
	height: 100%;
	transition: all 0.3s;
}


@media screen and (min-width: 1024px) {
	.sdgs__item-picture img {
		max-height: 319px;
	}
}

.sdgs__item a {
	text-decoration: none;
	color: inherit;
}

.sdgs__item-company {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 20px;
	color: #fff;
	background-color: #000;
}

@media screen and (max-width: 767px) {
	.sdgs__item-company {
		font-size: 18px;
	}
}

.sdgs__item-main {
	flex-grow: 1;
	display: flex;
	flex-direction: column;
	padding: 30px 20px;
	background-color: #fff;
}

.sdgs__item-body {
	flex-grow: 1;
}

.sdgs__item-title {
	font-size: 24px;
	line-height: calc(30 / 24);
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.sdgs__item-title {
		font-size: 20px;
	}
}

.sdgs__item-text {
	margin-top: 1rem;
	font-size: 14px;
	line-height: calc(24 / 14);
}

.sdgs__item-icons {
	margin-top: 0.625rem;
	display: flex;
	justify-content: end;
}

.sdgs__item-icon {
	max-width: 100px;
	max-height: 100px;
}

.sdgs__item-icon:not(:first-child) {
	margin-left: 10px;
}

.sdgs__item-icon img {
	max-width: 100px;
	max-height: 100px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.sdgs__item-icon {
		max-width: 80px;
		max-height: 80px;
	}

	.sdgs__item-icon img {
		max-width: 80px;
		max-height: 80px;
		width: 100%;
		height: 100%;
	}
}

.sdgs__link-a {
	margin-top: 1.875rem;
	text-align: right;
}

.sdgs__display-block-bar {
	cursor: pointer;
	position: relative;
	max-width: 966px;
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 3.125rem;
	margin-right: auto;
	margin-left: auto;
	background-color: #CC0022;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 35px;
	padding: 5px 20px;
}

@media screen and (max-width: 767px) {
	.sdgs__display-block-bar {
		font-size: 16px;
	}
}

.sdgs__arrow-absolute {
	position: absolute;
	top: 16px;
	right: 30px;
	transform: rotate(90deg);
	width: 8px;
	height: 16px;
}

@media screen and (max-width: 767px) {
	.sdgs__arrow-absolute {
		right: 20px;
	}
}

.sdgs__banner-container {
	padding-top: 7.5rem;
}

@media screen and (max-width: 767px) {
	.sdgs__banner-container {
		padding-top: 3.625rem;
	}
}

.sdgs__banner-text {
	font-size: 24px;
	line-height: 1.5;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.sdgs__banner-text {
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.sdgs__banner-text {
		font-size: 14px;
		line-height: calc(20 / 14);
	}
}

.sdgs__banner-heading {
	display: inline-block;
	max-width: 340px;
	width: 100%;
	margin-top: 1.25rem;
	padding: 4px 16px;
	text-align: center;
	font-size: 34px;
	font-weight: bold;
	background-color: #000;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.sdgs__banner-heading {
		max-width: 250px;
		font-size: 25px;
	}
}

@media screen and (max-width: 767px) {
	.sdgs__banner-heading {
		max-width: 180px;
		font-size: 16px;
	}
}

/*
 =========================================================
security_css（情報セキュリティ用スタイル）

2023.7.15

 =========================================================
*/

.security__mainvisual {
	width: 100%;
	height: 287px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-security.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.security__mainvisual {
		height: 240px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-security-sp.svg);
	}
}

@media screen and (max-width: 600px) {
	.security__mainvisual {
		height: 130px;
	}
}

.security__privacy-flex {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1024px) {
	.security__privacy-flex {
		display: flex;
		flex-direction: row-reverse;
	}
}

.security__privacy-main {
	margin-top: 1.875rem;
}

@media screen and (min-width: 1024px) {
	.security__privacy-main {
		margin-top: 0;
	}
}

.security__privacy-picture {
	max-width: 150px;
	min-width: 150px;
	max-height: 150px;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 1024px) {
	.security__privacy-picture {
		margin-left: 2.5rem;
	}
}

.security__privacy-picture img {
	width: 100%;
	height: 100%;
}

/*
 =========================================================
social_css（社会用スタイル）

2021.2.xx

 =========================================================
*/

/* overflow: hidden; を解除するため */
.hs-container-social {
	overflow: visible;
}

.social__mainvisual {
	width: 100%;
	height: 400px;
	margin: 0 calc(50% - 50vw);
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/social-mainvisual.jpg);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.social__mainvisual {
		height: 600px;
	}
}

@media screen and (max-width: 767px) {
	.social__mainvisual {
		height: 500px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/social-mainvisual-sp.jpg);
	}
}

.social__mainvisual-container {
	padding-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.social__mainvisual-container {
		padding-top: 2.8125rem;
		padding-bottom: 4.6875rem;
		height: 500px;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
}

.social__mainvisual-texts {
	color: #fff;
	max-width: 480px;
}

@media screen and (max-width: 767px) {
	.social__mainvisual img {
		max-height: 785px;
	}
}

.social__nav {
	max-width: calc(1280px + 50px * 2) ;
	width: 100%;
	margin: 5.9375rem auto 0px;
	padding: 0 50px;
}

@media screen and (max-width: 767px) {
	.social__nav {
		margin: 4.75rem auto 0px;
		padding: 0 30px;
	}
}

@media screen and (max-width: 600px) {
	.social__nav {
		padding: 0 16px;
	}
}

.social__lists {
	display: flex;
	flex-wrap: wrap;
}

.social__list {
	position: relative;
	width: 50%;
	border: 1px solid #707070;
	padding: 0;
	vertical-align: top;
}

.social__list:nth-child(even) {
	border-left: none;
}

.social__list:nth-child(n+3) {
	border-top: none;
}

.social__list:last-child {
	width: 100%;
}

.social__list a {
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
  color: inherit;
	padding: 2.75rem 1.25rem 3.5625rem;
	transition: all 0.3s;
}

@media screen and (max-width: 767px) {
	.social__list a {
		padding: 1.875rem 1.25rem 2rem;
	}
}

.social__list a:hover {
	opacity: 0.6;
}

.social__list:nth-child(4) a {
	padding: 2.75rem 1.25rem 1.9375rem;
}

@media screen and (max-width: 767px) {
	.social__list:nth-child(4) a {
		padding: 1.875rem 1rem 2rem;
	}
}

.social__list .social__picture {
	max-width: 185px;
	max-height: 183px;
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.social__list .social__picture {
		max-width: 148px;
		max-height: 147px;
	}
}

@media screen and (max-width: 600px) {
	.social__list .social__picture {
		max-width: 100px;
		max-height: 100px;
	}
}

.social__list .social__picture img {
	width: 100%;
	height: 100%;
}

.social__text {
	margin-top: 19px;
	font-size: 18px;
	line-height: 1.4;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.social__text {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.social__text {
		font-size: 14px;
	}
}

.social__arrow {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	background-color: #cc0022;
}

@media screen and (max-width: 767px) {
	.social__arrow {
		position: absolute;
		right: 0;
		bottom: 0;
		width: 40px;
		height: 40px;
	}
}

.social__arrow-bar {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
}

.social__arrow-bar::before {
	content: "";
	position: absolute;
	top: 21px;
  left: 20px;
	transform: rotate(45deg);
	width: 10px;
	height: 2px;
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.social__arrow-bar::before {
		top: 16px;
    left: 17px;
		width: 8px;
	}
}

.social__arrow-bar::after {
	content: "";
	position: absolute;
	bottom: 21px;
  left: 20px;
	transform: rotate(-45deg);
	width: 10px;
	height: 2px;
	background-color: #fff;
}

@media screen and (max-width: 767px) {
	.social__arrow-bar::after {
		bottom: 16px;
		left: 17px;
		width: 8px;
	}
}

.social__items {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	gap: 2.25rem;
	max-width: calc(838px + 50px * 2);
	margin: 8rem auto 9.35rem;
	padding: 0px 50px;
}

.social__item {
	width: calc((100% - 2.25rem) / 2);
}

@media screen and (max-width: 767px) {
	.social__items {
		max-width: 500px;
		margin: 6.4rem auto 7.48rem;
		padding: 0px;
	}

	.social__item {
		width: 100%;
	}
}

@media screen and (min-width: 1024px) {
	.social__items {
		max-width: calc(1275px + 50px * 2);
		margin: 10rem auto 11.6875rem;
	}

	.social__item {
		width: calc((100% - 2.25rem * 2) / 3);
	}
}

.social__item a {
	display: flex;
	flex-direction: column;
	width: 100%;
	height: 100%;
	text-decoration: none;
	color: inherit;
	transition: all 0.3s;
}

.social__item a:hover {
	opacity: 0.6;
}

.social__name {
	display: flex;
	justify-content: center;
	background-color: #000;
	color: #fff;
	width: 100%;
	padding: 10px 20px;
	font-size: 20px;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.social__name {
		font-size: 18px;
	}
}

.social__picture {
	position: relative;
	width: 100%;
	height: 100%;
}

.social__picture img {
	object-fit: cover;
	object-position: center center;
}

.social__more-info {
	position: absolute;
	display: flex;
	justify-content: space-between;
	align-items: center;
	right: 0;
	bottom: 0;
	max-width: 100%;
	min-width: 75%;
	height: 50px;
	padding-right: 5%;
	padding-left: 8%;
	background-color: #cc0022;
}

.social__more-info-text {
	color: #fff;
	font-size: 20px;
	line-height: 1;
	letter-spacing: 2px;
}

@media screen and (max-width: 767px) {
	.social__more-info-text {
		font-size: 18px;
	}
}

.social__more-info-arrow {
	position: relative;
	width: 7px;
	height: 16px;
}

.social__more-info-arrow::before {
	content: "";
	position: absolute;
	top: 3.25px;
  left: -2px;
	width: 11px;
	height: 2px;
	background-color: #fff;
	transform: rotate(45deg);
}

.social__more-info-arrow::after {
	content: "";
	position: absolute;
	bottom: 3.25px;
  left: -2px;
	width: 11px;
	height: 2px;
	background-color: #fff;
	transform: rotate(-45deg);
}

/*
 =========================================================
sustainability_css（サステナビリティトップ用スタイル）

2021.2.xx

 =========================================================
*/

.sustainability__mainvisual {
  padding-bottom: 3.75rem;
  position: relative;
}

@media screen and (min-width: 1024px) {
  .sustainability__mainvisual {
    padding-bottom: 5rem;
  }
}

@media screen and (max-width: 767px) {
  .sustainability__mainvisual {
    padding-bottom: 2.5rem;
  }
}

@media screen and (max-width: 600px) {
  .sustainability__mainvisual {
    padding-bottom: 1.875rem;
  }
}

.sustainability__mainvisual-picture img {
  width: 100vw;
  height: 100%;
  object-position: center center;
  object-fit: cover;
}

@media screen and (max-width: 600px) {
  .sustainability__mainvisual-picture img {
    max-width: 430px;
    width: 100%;
    height: 100%;
  }
}

@media screen and (min-width: 768px) {
  .sustainability__menus {
    display: flex;
    gap: 2.8125rem;
  }
}

.sustainability__menus:not(:first-child) {
  margin-top: 2.8125rem;
}

.sustainability__menu {
  display: flex;
  width: calc((100% - 2.8125rem) / 2);
}

@media screen and (max-width: 767px) {
  .sustainability__menu {
    width: 100%;
  }

  .sustainability__menu:not(:first-child) {
    margin-top: 2.8125rem;
  }
}

.sustainability__menu a {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: inherit;
  width: 100%;
  transition: all 0.3s;
}

.sustainability__menu a:hover {
  opacity: 0.6;
}

.sustainability__menu-haeding {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 1;
  background-color: #000;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  padding: 15px 30px;
}

@media screen and (max-width: 767px) {
  .sustainability__menu-haeding {
    font-size: 18px;
  }
}

.sustainability__menu-picture img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  max-width: 618px;
  min-height: 250px;
}

.sustainability__menu-picture-position-left img {
  object-position: center center;
}

.sustainability__evaluation {
  display: flex;
  max-width: 966px;
  margin-right: auto;
  margin-left: auto;
  background-color: #333;
  text-decoration: none !important;
  transition: all 0.3s;
}

.sustainability__evaluation:hover {
  opacity: 0.6;
}

.sustainability__evaluation-flex {
  display: flex;
  justify-content: space-between;
  width: calc(100% - 130px);
}

@media screen and (max-width: 767px) {
  .sustainability__evaluation-flex {
    width: calc(100% - 100px);
  }
}

@media screen and (max-width: 600px) {
  .sustainability__evaluation-flex {
    width: calc(100% - 88px);
    flex-direction: column;
  }
}

.sustainability__evaluation-picture {
  max-width: 130px;
}

@media screen and (max-width: 767px) {
  .sustainability__evaluation-picture {
    max-width: 100px;
  }
}

@media screen and (max-width: 600px) {
  .sustainability__evaluation-picture {
    max-width: 88px;
  }
}

.sustainability__evaluation-text {
  display: flex;
  align-items: center;
  font-size: 30px;
  font-weight: bold;
  letter-spacing: 5px;
  color: #fff;
  margin-left: 1.5625rem;
}

@media screen and (max-width: 767px) {
  .sustainability__evaluation-text {
    margin-right: 1rem;
    margin-left: 1.25rem;
    font-size: 20px;
    letter-spacing: 4px;
    line-height: calc(44 / 20);
  }
}

.sustainability__arrow {
  margin-top: auto;
  margin-right: 0;
}

.sustainability__sx-background {
	background-color: #F2F2F2;
	padding: 55px 0;
}

@media screen and (max-width: 767px) {
	.sustainability__sx-background {
		padding: 40px 0;
	}
}

.sustainability__sx-heading {
  font-size: 26px;
	line-height: calc(40 / 26);
	letter-spacing: 0.1em;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
	.sustainability__sx-heading {
		font-size: 23px;
	}
}

@media screen and (max-width: 600px) {
	.sustainability__sx-heading {
		font-size: 20px;
	}
}

@media screen and (min-width: 1024px) {
  .sustainability__sx-flex {
    display: flex;
		align-items: center;
		justify-content: space-between;
    max-width: calc(1200px + 50px * 2);
    margin-right: auto;
    margin-left: auto;
		padding-right: 50px;
		padding-left: 50px;
		gap: 2.5rem;
  }
}

.sustainability__sx-picture {
  max-width: 702px;
  max-height: 489px;
  width: 100%;
  height: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 1024px) {
  .sustainability__sx-picture {
    margin: 0;
  }
}

.sustainability__sx-picture img {
  width: 100%;
  height: 100%;
}

.sustainability__sx-main {
	max-width: 400px;
  margin-top: 3.125rem;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (min-width: 1024px) {
  .sustainability__sx-main {
    margin: 0;
		min-width: 415px;
  }
}

@media screen and (max-width: 767px) {
  .sustainability__sx-main {
    display: block;
    margin-top: 1.875rem;
  }
}

.sustainability__sx-box {
  border: 1px solid #333;
  padding: 30px 20px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.sustainability__sx-download {
  background-color: #CC0022;
}

.sustainability__sx-download--white {
	background-color: #fff;
}

.sustainability__sx-download--white--border {
	background-color: #fff;
	border: 1px solid #CC0022;
}

@media screen and (max-width: 767px) {
  .sustainability__sx-download {
    margin-right: auto;
    margin-left: auto;
  }
}

.sustainability__sx-download a {
  display: flex;
  justify-content: space-between;
  align-items: center;
	gap: 20px;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
	font-size: 16px;
	line-height: calc(30 / 16);
  font-weight: bold;
	letter-spacing: 0.1em;
  transition: all 0.3s;
	padding: 15px 20px;
}

.sustainability__sx-download--white a {
	color: #cc0222;
}

.sustainability__sx-download a img {
	width: 20px;
	height: 20px;
}

.sustainability__sx-download a:hover {
  opacity: 0.6;
}

.sustainability__sx-texts {
  margin-left: 2rem;
  width: calc(100% - 127px - 2rem);
}

.sustainability__sx-text {
	font-size: 16px;
	line-height: calc(26 / 16);
	color: #333;
}

.sustainability__sx-text--mt-30 {
	margin-top: 1.875rem;
}

@media screen and (max-width: 767px) {
	.sustainability__sx-text--mt-30 {
		margin-top: 1.5rem;
	}
}

@media screen and (max-width: 600px) {
	.sustainability__sx-text--mt-30 {
		margin-top: 1.25rem
	}
}

.sustainability__icon-link-flame {
  position: relative;
  z-index: 1;
	margin-top: 2.5rem;
}

@media screen and (min-width: 1024px) {
	.sustainability__icon-link-flame {
		margin-top: -1.875rem;
	}
}

@media screen and (max-width: 767px) {
  .sustainability__icon-link-flame {
    margin-top: 2.5rem;
  }
}

.sustainability__conversation-texts {
  margin-top: 2.5rem;
  color: #fff;
  max-width: 800px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
}

@media screen and (max-width: 600px) {
  .sustainability__conversation-texts {
    margin-top: 2rem;
  }
}

.sustainability__conversation-more-info {
  width: 100%;
  text-align: center;
}

/*
 =========================================================
sx-project-story_css（SXプロジェクトストーリー用スタイル）

2023.7.10

 =========================================================
*/

.sx-project-story__mainvisual {
	width: 100vw;
	height: 600px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sx-project-story-mainvisual.png);
	background-size: cover;
	background-position: center bottom;
}

@media screen and (max-width: 767px) {
	.sx-project-story__mainvisual {
		height: auto;
		min-height: 650px;
	}
}

@media screen and (max-width: 600px) {
	.sx-project-story__mainvisual {
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sx-project-story-mainvisual-sp.png);
	}
}

.sx-project-story__mainvisual-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 600px;
}

@media screen and (max-width: 767px) {
	.sx-project-story__mainvisual-container {
		height: auto;
		min-height: 650px;
	}
}

.sx-project-story__mainvisual-br {
	display: none;
}

@media screen and (min-width: 928px) {
	.sx-project-story__mainvisual-br {
		display: block;
	}
}

.sx-project-story__mainvisual-title {
	font-size: 23px;
	line-height: calc(40 / 23);
	font-weight: bold;
	text-align: center;
	color: #333;
}

@media screen and (max-width: 767px) {
	.sx-project-story__mainvisual-title {
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.sx-project-story__mainvisual-title {
		font-size: 16px;
	}
}

.sx-project-story__mainvisual-heading {
	font-size: 45px;
	line-height: 1;
	color: #333;
	text-align: center;
}

@media screen and (min-width: 1024px) {
	.sx-project-story__mainvisual-heading {
		font-size: 67px;
	}
}

@media screen and (max-width: 767px) {
	.sx-project-story__mainvisual-heading {
		font-size: 38px;
	}
}

@media screen and (max-width: 600px) {
	.sx-project-story__mainvisual-heading {
		font-size: 32px;
	}
}

@media screen and (min-width: 1024px) {
	.sx-project-story__triangle {
		position: relative;
		z-index: 1;
		margin-right: calc(50% - 50vw);
		margin-left: calc(50% - 50vw);
	}

	.sx-project-story__triangle:before {
		content: "";
		position: absolute;
		z-index: -1;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 83%;
		clip-path: polygon(50% 0%, 0 100%, 100% 100%);
		background: linear-gradient(#DFF6FC, #E3F9FF);
	}
}

.sx-project-story__three-values {
	text-align: center;
}

.sx-project-story__three-values img {
	max-width: 966px;
	width: 100%;
}

@media screen and (min-width: 1024px) {
	.sx-project-story__value-items {
		max-width: 1028px;
		width: 100%;
		margin-right: auto;
		margin-left: auto;
		display: flex;
		gap: 3.125rem;
	}
}
.sx-project-story__value-item {
	display: flex;
	flex-direction: column;
	max-width: 460px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.sx-project-story__value-item:not(:first-child) {
	margin-top: 2.5rem;
}

@media screen and (min-width: 1024px) {
	.sx-project-story__value-item {
		width: calc((100% - 3.125rem * 2) / 3);
		margin: 0;
	}

	.sx-project-story__value-item:not(:first-child) {
		margin: 0;
	}
}

.sx-project-story__value-item-body {
	flex-grow: 1;
	background-color: #0186C9;
	padding: 20px;
}

.sx-project-story__value-item-title {
	font-size: 20px;
	font-weight: bold;
	line-height: calc(30 / 20);
	text-align: center;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.sx-project-story__value-item-title {
		font-size: 18px;
	}
}

.sx-project-story__value-item-text {
	margin-top: 1rem;
	font-size: 14px;
	line-height: calc(24 / 14);
	color: #fff;
}

.sx-project-story__three-values-title {
	font-size: 34px;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.sx-project-story__three-values-title {
		font-size: 24px;
	}
}

@media screen and (min-width: 1024px) {
	.sx-project-story__projects {
		display: flex;
		gap: 2.25rem;
	}
}

.sx-project-story__project {
	max-width: 500px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.sx-project-story__project:not(:first-child) {
	margin-top: 2.5rem;
}

@media screen and (min-width: 1024px) {
	.sx-project-story__project {
		width: calc((100% - 2.25rem * 2) / 3);
		display: flex;
		flex-direction: column;
	}

	.sx-project-story__project:not(:first-child) {
		margin-top: 0;
	}
}

.sx-project-story__project-links {
	display: flex;
	flex-direction: column;
	gap: 1.875rem;
	max-width: 450px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.sx-project-story__project-link .common__link-a {
	width: 100%;
}

.sx-project-story__project-body {
	background-color: #f2f2f2;
	padding: 20px;
	flex-grow: 1;
}

.sx-project-story__project-title {
	font-size: 20px;
	line-height: calc(30 / 20);
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
}

@media screen and (min-width: 1024px) {
	.sx-project-story__project-title {
		min-height: 60px;
	}
}

@media screen and (max-width: 767px) {
	.sx-project-story__project-title {
		font-size: 18px;
	}
}

/*
 =========================================================
sx-report_css（SXプロジェクトの活動報告用スタイル）

2023.7.10

 =========================================================
*/

.sx-report__mainvisual {
	width: 100vw;
	height: 400px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sx-report-mainvisual.jpg);
	background-size: cover;
	background-position: center center;
}

@media screen and (min-width: 1024px) {
	.sx-report__mainvisual {
		height: 600px;
	}
}

@media screen and (max-width: 767px) {
	.sx-report__mainvisual {
		height: auto;
		min-height: 500px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/sx-report-mainvisual-sp.jpg);
	}
}

.sx-report__mainvisual-container {
	max-width: 600px;
	width: 100%;
	padding-top: 4.375rem;
}

@media screen and (max-width: 767px) {
	.sx-report__mainvisual-container {
		padding-top: 3.5rem;
		padding-bottom: 3.5rem;
	}
}

.sx-report__mainvisual-title {
	margin-bottom: 0.625rem;
	font-size: 20px;
	line-height: calc(30 / 20);
	color: #fff;
}

@media screen and (max-width: 767px) {
	.sx-report__mainvisual-title {
		font-size: 16px;
	}
}

.sx-report__mainvisual-texts {
	margin-top: 0.625rem;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.sx-report__mainvisual-texts {
		margin-top: 5.5rem;
	}
}

.sx-report__corporate-statement {
	background-color: #F2F2F2;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-top: 3.125rem;
	padding-bottom: 4.375rem;
}

.sx-report__black-center {
	text-align: center;
}

.sx-report__black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: calc(34 / 20);
	color: #fff;
	background-color: #000;
	padding: 8px 30px;
}

@media screen and (max-width: 767px) {
	.sx-report__black-title {
		font-size: 18px;
	}
}

@media screen and (min-width: 1024px) {
	.sx-report__corporate-statement-flex {
		display: flex;
		align-items: center;
	}
}


.sx-report__corporate-statement-picture {
	min-width: calc((100% - 86px) / 2);
	max-width: 592px;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.sx-report__corporate-statement-picture {
		margin: 0;
	}
}

.sx-report__corporate-statement-picture img {
	max-width: 592px;
	width: 100%;
}

.sx-report__corporate-statement-triangle {
	width: 172px;
	height: 46px;
	background-color: #CC0022;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	margin: 20px auto;
}

@media screen and (min-width: 1024px) {
	.sx-report__corporate-statement-triangle {
		width: 46px;
		height: 172px;
		clip-path: polygon(0 0, 0% 100%, 100% 50%);
		margin: 0;
		margin-right: 20px;
		margin-left: 20px;
	}
}

.sx-report__signpost {
	position: relative;
}

.sx-report__signpost-picture--left img {
	position: absolute;
	top: 30px;
	left: -35px;
}

.sx-report__signpost-picture--right img {
	position: absolute;
	top: 30px;
	right: -35px;
}

@media screen and (min-width: 1024px) {
	.sx-report__signpost-picture--left img {
		left: 0;
	}

	.sx-report__signpost-picture--right img {
		right: 0;
	}
}

@media screen and (max-width: 767px) {
	.sx-report__signpost-picture--left img {
		position: static;
	}

	.sx-report__signpost-picture--right img {
		position: static;
		margin-left: 1.875rem;
	}

	.sx-report__signpost-flex-sp {
		margin-top: 1.875rem;
		display: flex;
		justify-content: center;
	}
}

.sx-report__signpost-picture img {
	max-width: 130px !important;
}

@media screen and (min-width: 1024px) {
	.sx-report__signpost-picture img {
		max-width: 170px !important;
	}
}

.sx-report__signpost-texts {
	max-width: calc(817px + 140px * 2);
	padding: 0 140px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.sx-report__signpost-texts {
		max-width: calc(817px + 200px * 2);
		padding: 0 200px;
	}
}

@media screen and (max-width: 767px) {
	.sx-report__signpost-texts {
		max-width: 100%;
		padding: 0;
	}
}

.sx-report__signpost-items {
	display: flex;
	justify-content: space-between;
	gap: 48px;
	margin-top: 3.75rem;
}

@media screen and (max-width: 767px) {
	.sx-report__signpost-items {
		flex-direction: column;
	}
}

.sx-report__signpost-item {
	display: flex;
	flex-direction: column;
	width: calc((100% - 48px) / 2);
}

@media screen and (max-width: 767px) {
	.sx-report__signpost-item {
		margin-right: auto;
		margin-left: auto;
		max-width: 500px;
		width: 100%;
	}
}

.sx-report__signpost-item-body {
	background-color: #F2F2F2;
	padding: 25px 20px 20px;
	flex-grow: 1;
}

.sx-report__signpost-item-title {
	font-size: 20px;
	font-weight: bold;
	line-height: calc(30 / 20);
	display: flex;
	justify-content: center;
	align-items: center;
}

@media screen and (max-width: 767px) {
	.sx-report__signpost-item-title {
		font-size: 18px;
	}
}

.sx-report__signpost-item-text {
	margin-top: 25px;
	font-size: 14px;
	line-height: calc(24 / 14);
}

.sx-report__red-text {
	font-size: 20px;
	font-weight: bold;
	line-height: calc(46 / 22);
	color: #CC0022;
	text-align: center;
}

@media screen and (min-width: 1024px) {
	.sx-report__red-text {
		font-size: 24px;
	}
}

@media screen and (max-width: 767px) {
	.sx-report__red-text {
		font-size: 18px;
	}
}

.sx-report__red-text-br {
	display: none;
}

@media screen and (min-width: 1131px) {
	.sx-report__red-text-br {
		display: block;
	}
}

.sx-report__link {
	display: block;
	max-width: 966px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.sx-report__corporate-philosophy-triangle {
	margin-top: 4.375rem;
	margin-right: auto;
	margin-left: auto;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	width: 172px;
	height: 46px;
	background-color: #CC0022;
}

.sx-report__attempt {
	margin-top: 4.375rem;
	background-color: #F2F2F2;
	padding: 40px 40px 50px;
}

@media screen and (max-width: 767px) {
	.sx-report__attempt {
		margin-top: 3.125rem;
		padding: 30px 20px 40px;
	}
}

.sx-report__attempt-text {
	font-size: 24px;
	font-weight: bold;
	line-height: calc(46 / 24);
	display: flex;
	justify-content: center;
	margin-top: 25px;
}

@media screen and (max-width: 767px) {
	.sx-report__attempt-text {
		font-size: 20px;
	}
}

.sx-report__decarbonization {
	background-color: #F2F2F2;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding-top:  4.375rem;
	padding-bottom: 4.375rem;
}

.sx-report__decarbonization-title {
	font-size: 25px;
	font-weight: bold;
	display: flex;
	justify-content: center;
}

@media screen and (max-width: 767px) {
	.sx-report__decarbonization-title {
		font-size: 20px;
	}
}

.sx-report__decarbonization-text {
	text-align: center;
}

.sx-report__decarbonization-text-br {
	display: none;
}

@media screen and (min-width: 946px) {
	.sx-report__decarbonization-text-br {
		display: block;
	}
}

.sx-report__decarbonization-items {
	max-width: 966px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
	display: flex;
	gap: 46px;
}

@media screen and (max-width: 767px) {
	.sx-report__decarbonization-items {
		flex-direction: column;
		gap: 20px;
		align-items: center;
	}
}

.sx-report__decarbonization-item {
	width: calc((100% - 46px) / 2);
}

@media screen and (max-width: 767px) {
	.sx-report__decarbonization-item {
		max-width: 400px;
		width: 100%;
	}
}

.sx-report__ideathon-body {
	background-color: #F2F2F2;
	padding: 30px;
}

.sx-report__ideathon-body--back {
	display: flex;
	flex-direction: column;
	justify-content: center;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.sx-report__ideathon-body--back {
		width: 100%;
	}
}

.sx-report__ideathon-title {
	font-size: 20px;
	line-height: calc(34 / 20);
	font-weight: bold;
}

@media screen and (max-width: 767px) {
	.sx-report__ideathon-title {
		font-size: 18px;
	}
}

.sx-report__ideathon-text {
	margin-top: 16px;
	font-size: 18px;
	line-height: calc(30 / 18);
}

@media screen and (max-width: 767px) {
	.sx-report__ideathon-text {
		font-size: 16px;
	}
}

.sx-report__ideathon-text--back {
	margin-top: 1.875rem;
}

.sx-report__business-expansion-grid {
	display: grid;
	grid-template-columns: 1fr;
	gap: 2.5rem;
}

@media screen and (min-width: 1024px) {
	.sx-report__business-expansion-grid {
		grid-template-columns: 1fr 1fr;
		grid-template-rows: 1fr;
		align-items: center;
	}
}

.sx-report__business-expansion-item {
	display: flex;
	flex-direction: column;
}

@media screen and (max-width: 767px) {
	.sx-report__business-expansion-item {
		flex-direction: column;
		align-items: center;
		width: 100%;
	}
}

.sx-report__business-expansion-back {
	height: 100%;
}

.sx-report__business-expansion-block:not(:first-child) {
	margin-top: 2.5rem;
}


@media screen and (max-width: 767px) {
	.sx-report__business-expansion-block {
		width: 100%;
	}
}

.sx-report__business-expansion-item-back {
	height: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.sx-report__item:not(:first-child) {
	margin-top: 4rem;
}

@media screen and (max-width: 767px) {
	.sx-report__item:not(:first-child) {
		margin-top: 3.125rem;
	}
}

.sx-report__gird {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 0.625rem;
	margin-top: 4rem;
}

@media screen and (max-width: 767px) {
	.sx-report__gird {
		margin-top: 3.125rem;
		grid-template-columns: 1fr 1fr;
	}
}

.sx-report__gird-picture img {
	display: block;
	width: 100%;
	height: 100%;
	max-height: 300px;
	object-fit: cover;
	object-position: center center;
}

*:focus {
	outline: none;
}

.materiality__mainvisual {
	background-color: #F6F6F6;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/materiality-mainvisual.png);
}

@media screen and (max-width: 767px) {
	.materiality__mainvisual {
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/materiality-mainvisual-sp.png);
		background-position: 35% 50%;
		height: 680px;
	}
}

.materiality__mainvisual-main {
	max-width: 500px;
	width: 100%;
	padding-top: 70px;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

@media screen and (min-width: 1024) {
	.materiality__mainvisual-main {
		padding-top: 150px;
	}
}

@media screen and (max-width: 767px) {
	.materiality__mainvisual-main {
		margin: 0 auto;
		padding-top: 30px;
	}

	.materiality__mainvisual-main .common__texts-a {
		margin-top: 1.5rem;
	}
}

.materiality__picture img {
	max-width: 550px;
	max-height: 550px;
	width: 100%;
	height: 100%;
}

.materiality__layout {
	max-width: 1160px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.materiality__head {
	margin-top: 36px;
	font-size: 26px;
	letter-spacing: 0.02em;
	font-weight: bold;
	color: #000;
}

.materiality__head--cta {
	margin: 0;
	padding-top: 32px;
	position: relative;
	z-index: 1;
	text-align: center;
}


@media screen and (min-width: 1024px) {
	.materiality__head--cta {
		padding: 0;
		text-align: left;
	}
}

@media screen and (max-width: 767px) {
	.materiality__head {
		margin-top: 30px;
		font-size: 18px;
	}

	.materiality__head--cta {
		margin: 0;
		padding-top: 36px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__head--cta {
		margin: 0;
		padding-top: 40px;
	}
}

.materiality__items {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.materiality__item {
	display: flex;
	flex-direction: column;
	border: 1px solid #D8D8D8;
	padding: 16px;
}

@media screen and (min-width: 1024px) {
	.materiality__item {
		flex-direction: row;
		padding: 20px;
	}
}

.materiality__title {
	display: flex;
	justify-content: center;
	align-items: center;
	text-align: center;
	background-color: #000;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: calc(34 / 20);
	letter-spacing: 0.2em;
	padding: 14px 16px;
	width: 100%;
}

@media screen and (min-width: 1024px) {
	.materiality__title {
		width: 380px;
		min-height: 140px;
		padding: 32px 16px;
	}
}

@media screen and (max-width: 767px) {
	.materiality__title {
		font-size: 16px;
		min-height: auto;
		padding: 14px;
	}
}

.materiality__body {
	display: flex;
	flex-direction: column-reverse;
	gap: 40px;
	width: 100%;
	padding: 24px 30px 24px 20px;
}

@media screen and (min-width: 1024px) {
	.materiality__body {
		width: calc(100% - 380px);
		gap: 16px;
		flex-direction: row;
	}
}

@media screen and (max-width: 767px) {
	.materiality__body {
		padding: 16px;
		gap: 16px;
	}
}

.materiality__links  {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 16px;
}

@media screen and (max-width: 767px) {
	.materiality__links  {
		margin-top: 14px;
	}
}

.materiality__link a {
	position: relative;
	display: block;
	text-decoration: none;
	color: inherit;
	padding-right: 36px;
	font-size: 16px;
	line-height: calc(24 / 16);
	letter-spacing: 2px;
	font-weight: bold;
	color: #cc0022;
	width: fit-content;
	transition: all 0.3s;
}

@media screen and (max-width: 767px) {
	.materiality__link a {
		font-size: 14px;
		line-height: calc(21 / 14);
		padding-right: 27px;
	}
}

.materiality__link a:hover {
	opacity: 0.6;
}

.materiality__link a::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%) rotate(-90deg);
	width: 20px;
	height: 20px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/human-inclusion-arrow.png);
	background-size: cover;
	background-position: center center;
}

@media screen and (max-width: 767px) {
	.materiality__link a::before {
		width: 17px;
		height: 17px;
	}
}

.materiality__icons {
	display: flex;
	justify-content: center;
	flex-direction: row;
	gap: 10px;
}

.materiality__icon img {
	display: block;
	aspect-ratio: 1 / 1;
	width: 90px;
	min-width: 90px;
}

.materiality__hah-mt {
	min-width: 1100px;
	width: 100%;
	height: auto;
}

.materiality__sdgs-title {
	position: relative;
	z-index: 1;
	max-width: 810px;
	width: 100%;
	font-size: 24px;
	line-height: calc(50 / 24);
	font-weight: bold;
	text-align: center;
	margin-right: auto;
	margin-left: auto;
	padding: 80px 0 66px;
}

@media screen and (max-width: 767px) {
	.materiality__sdgs-title {
		width: calc(100% - 20px * 2);
		padding: 40px 0 32px;
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__sdgs-title {
		padding-top: 32px;
	}

	.materiality__sdgs-title br {
		display: none;
	}
}

.materiality__sdgs-title::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	background-color: #E5F7FC;
}

.materiality__picture-sdgs {
	display: flex;
	justify-content: center;
	margin-top: 24px;
}

.materiality__picture-sdgs img {
	max-width: 742px;
	width: 100%;
}

.materiality__mainvisual-main .se-link-list01-t {
	font-size: 12.48px;
}

.materiality__mainvisual-main .right {
	width: fit-content;
	margin-left: auto;
}

.materiality__mainvisual-main .se-link-list01-t a {
	color: #08427c;
}

.materiality__mainvisual-main .se-link-list01-t a:visited {
	color: #551a8b;
  text-decoration: underline;
}

.materiality__cta {
	position: relative;
	background-color: #e5f6fd;
	height: 200px;
}

@media screen and (min-width: 1024px) {
	.materiality__cta {
		height: 240px;
		display: flex;
		align-items: center;
	}
}

@media screen and (max-width: 600px) {
	.materiality__cta {
		height: 200px;
	}
}

.materiality__cta img {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	max-width: 380px !important;
	width: 100%;
	height: auto;
}

@media screen and (min-width: 1024px) {
	.materiality__cta img {
		max-width: 700px !important;
		width: 40%;
		right: 10%;
		left: auto;
		transform: none;
	}
}

@media screen and (max-width: 600px) {
	.materiality__cta img {
		width: 90%;
	}
}

.materiality__flows {
	max-width: 1160px;
	width: 100%;
	margin: 2.5rem auto 0;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

@media screen and (max-width: 767px) {
	.materiality__flows {
		gap: 32px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__flows {
		gap: 24px;
	}
}

.materiality__flow-head {
	position: relative;
	background-color: #7cbadc;
	padding: 40px;
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1024px) {
	.materiality__flow-head {
		flex-direction: row;
	}
}

@media screen and (max-width: 767px) {
	.materiality__flow-head {
		padding: 36px 30px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__flow-head {
		padding: 28px 20px;
	}
}

.materiality__flow-head-main {
	display: flex;
	gap: 50px;
}

@media screen and (max-width: 767px) {
	.materiality__flow-head-main {
		gap: 24px;
	}
}

.materiality__step {
	background-color: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	width: 110px;
	height: 110px;
	border-radius: 50%;
}

@media screen and (min-width: 1024px) {
	.materiality__step {
		width: 140px;
		height: 140px;
	}
}

@media screen and (max-width: 767px) {
	.materiality__step {
		width: 80px;
		height: 80px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__step {
		width: 64px;
		height: 64px;
	}
}

.materiality__step-en {
	font-size: 16px;
	line-height: 1;
	letter-spacing: 0.06em;
	font-weight: 500;
	color: #fff;
}

.materiality__step-number {
	margin-top: 0.5rem;
	font-size: 36px;
	line-height: 1;
	letter-spacing: 0.06em;
	font-weight: 500;
	color: #fff;
}

@media screen and (min-width: 1024px) {
	.materiality__step-en {
		font-size: 18px;
	}

	.materiality__step-number {
		font-size: 44px;
	}
}

@media screen and (max-width: 767px) {
	.materiality__step-en {
		font-size: 12px;
	}

	.materiality__step-number {
		margin-top: 0.5rem;
		font-size: 24px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__step-en {
		font-size: 10px;
	}

	.materiality__step-number {
		margin-top: 0.25rem;
		font-size: 20px;
	}
}

.materiality__flow-head-body {
	color: #fff;
	width: calc(100% - 110px - 50px);
}

@media screen and (min-width: 1024px) {
	.materiality__flow-head-body {
		width: calc(100% - 140px - 50px);
	}
}

@media screen and (max-width: 767px) {
	.materiality__flow-head-body {
		width: calc(100% - 80px - 24px);
	}
}

@media screen and (max-width: 600px) {
	.materiality__flow-head-body {
		width: calc(100% - 64px - 24px);
	}
}

.materiality__flow-head-body .common__texts-a {
	margin-top: 1.25rem;
}

@media screen and (max-width: 600px) {
	.materiality__flow-head-body .common__texts-a {
		margin-left: calc(-64px + -24px);
	}
}

.materiality__flow-title {
	font-size: 18px;
	line-height: calc(42 / 18);
	letter-spacing: 0.02em;
	color: #fff;
	margin: 0;
}

.materiality__flow-title span {
	font-size: 30px;
	line-height: calc(42 / 30);
}

@media screen and (max-width: 767px) {
	.materiality__flow-title {
		font-size: 17px;
		line-height: calc(32 / 17);
	}

	.materiality__flow-title span {
		font-size: 28px;
		line-height: calc(48 / 28);
	}
}


@media screen and (max-width: 600px) {
	.materiality__flow-title {
		font-size: 16px;
		line-height: calc(24 / 16);
	}

	.materiality__flow-title span {
		font-size: 24px;
		line-height: calc(40 / 24);
	}
}

.materiality__flow-head-picture {
	max-width: 500px;
	margin: 0 auto -40px;
}

@media screen and (min-width: 1024px) {
	.materiality__flow-head-picture {
		margin: 0;
		position: absolute;
		bottom: 0;
		right: 3%;
		max-width: 400px;
		width: 35%;
	}
}

@media screen and (max-width: 767px) {
	.materiality__flow-head-picture {
		margin-bottom: -32px;
		max-width: 400px;
		width: 60%;
	}
}

@media screen and (max-width: 600px) {
	.materiality__flow-head-picture {
		width: 85%;
		margin-bottom: -28px;
	}
}

.materiality__content {
	display: flex;
	gap: 24px;
}

@media screen and (max-width: 767px) {
	.materiality__content {
		gap: 0px;
	}
}

.materiality__content-arrow {
	width: 80px;
}

@media screen and (min-width: 1024px) {
	.materiality__content-arrow {
		width: 200px;
	}
}

@media screen and (max-width: 767px) {
	.materiality__content-arrow {
		width: 65px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__content-arrow {
		width: 50px;
	}
}

.materiality__content-arrow-bar {
	width: 8px;
	margin: 0 auto;
	height: calc(100% - 16px);
	background-color: #7cbadc;
}

.materiality__content-arrow-triangle {
	background-color: #7cbadc;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	width: 32px;
	height: 24px;
	margin: -1px auto 0;
}

.materiality__content-main {
	width: calc(100% - 80px - 24px);
	padding: 64px 40px 50px 0;
}

.materiality__content-main--last {
	width: 100% !important;
}

@media screen and (min-width: 1024px) {
	.materiality__content-main {
		width: calc(100% - 200px - 24px);
	}
}

@media screen and (max-width: 767px) {
	.materiality__content-main {
		padding: 40px 30px 50px 0;
		width: calc(100% - 65px);
	}
}

@media screen and (max-width: 600px) {
	.materiality__content-main {
		padding: 32px 20px 40px 0;
		width: calc(100% - 50px);
	}
}

.materiality__black-title {
	background-color: #000;
	color: #fff;
	font-size: 16px;
	line-height: 1;
	padding: 7px 22px;
	width: fit-content;
}

.materiality__content-title {
	font-size: 22px;
	line-height: calc(34 / 22);
	font-weight: bold;
	letter-spacing: 0.02em;
	color: #000;
}

@media screen and (max-width: 767px) {
	.materiality__content-title {
		font-size: 20px;
		line-height: calc(31 / 20);
	}
}

@media screen and (max-width: 600px) {
	.materiality__content-title {
		font-size: 18px;
		line-height: calc(28 / 18);
	}
}

.materiality__block-a {
	max-width: 280px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.materiality__block-a {
		max-width: none;
	}
}

.materiality__block-b {
	max-width: 340px;
	width: calc(100% - 280px - 40px);
}

@media screen and (max-width: 767px) {
	.materiality__block-b {
		max-width: none;
		width: 100%;
	}
}

.materiality__block-b img {
	display: block;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.materiality__block-b img {
		max-width: 350px !important;
		margin-right: auto;
		margin-left: auto;
	}

	.materiality__block-b .common-text-a {
		text-align: center;
	}
}

.materiality__content-flex-a {
	display: flex;
	align-items: center;
	gap: 3%;
}

@media screen and (min-width: 1024px) {
	.materiality__content-flex-a {
		gap: 8%;
	}
}

@media screen and (max-width: 767px) {
	.materiality__content-flex-a {
		flex-direction: column;
		gap: 20px;
	}
}

.materiality__block-c {
	max-width: 420px;
	width: 100%;
}

@media screen and (max-width: 767px) {
	.materiality__block-c {
		max-width: none;
	}
}

.materiality__block-d {
	max-width: 340px;
	width: calc(100% - 3% - 420px);
}

@media screen and (min-width: 1024px) {
	.materiality__block-d {
		width: calc(100% - 8% - 420px);
	}
}

@media screen and (max-width: 767px) {
	.materiality__block-d {
		max-width: 400px;
		margin: 0 auto;
		width: 100%;
	}
}

.materiality__content-flex-b {
	display: flex;
	gap: 40px;
	flex-wrap: wrap;
}

@media screen and (min-width: 1024px) {
	.materiality__content-flex-b {
		gap: 50px;
	}
}

@media screen and (max-width: 767px) {
	.materiality__content-flex-b {
		gap: 40px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__content-flex-b {
		gap: 30px;
	}
}

.materiality__block-e .common-text-a span,
.materiality__block-f .common-text-a span {
	color: #cc0022;
}

.materiality__block-e-items {
	margin-top: 1.5rem;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 20px;
}

@media screen and (max-width: 767px) {
	.materiality__block-e-items {
		margin-top: 1.25rem;
	}
}

@media screen and (max-width: 600px) {
	.materiality__block-e-items {
		margin-top: 1rem;
		grid-template-columns: 1fr;
		gap: 10px;
	}
}

.materiality__block-e-item-text {
	padding: 20px;
	border-radius: 10px;
	background-color: #d8d8d8;
	font-size: 14px;
	line-height: calc(20 / 14);
	font-weight: bold;
	text-align: center;
}

.materiality__block-e-item-e-triangle {
	background-color: #d8d8d8;
	clip-path: polygon(0 0, 100% 0, 0 100%);
	width: 20px;
	height: 20px;
	margin-top: -1px;
	margin-left: 20%;
}

.materiality__text-percent img {
	width: 194px;
	height: auto;
}

.materiality__content-flex-c {
	display: flex;
	gap: 5%;
	padding: 0 3% 0 8%;
}

@media screen and (min-width: 1024px) {
	.materiality__content-flex-c {
		gap: 8%;
	}
}

@media screen and (max-width: 767px) {
	.materiality__content-flex-c {
		flex-direction: column;
		gap: 20px;
		padding: 0;
		padding-left: 30px;
	}
}

@media screen and (max-width: 600px) {
	.materiality__content-flex-c {
		padding-left: 20px;
	}
}

.materiality__block-f {
	max-width: 520px;
}

@media screen and (max-width: 767px) {
	.materiality__block-g {
		max-width: 400px;
		width: 100%;
		margin: 0 auto;
	}
}

/*
 =========================================================
メインビジュアル_css（メインビジュアル用のスタイル）

2024.7.19

 =========================================================
*/

.mainvisual {
	width: 100%;
	background-size: cover;
	background-position: center;
}

.mainvisual--report-download {
	height: 600px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/report-download-mainvisual.jpg);
}

.mainvisual--group {
	height: 600px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/group-mainvisual-pc.jpg);
}

.mainvisual--report-2023 {
	height: 600px;
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/report2023-mainvisual-pc.jpg);
}

.mainvisual--group .inner-1280,
.mainvisual--report-2023 .inner-1280 {
	height: inherit;
}

@media screen and (max-width: 767px) {
	.mainvisual--report-download {
		height: 530px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/report-download-mainvisual-sp.jpg);
	}

	.mainvisual--group {
		height: 530px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/group-mainvisual-sp.jpg);
	}

	.mainvisual--report-2023 {
		height: 530px;
		background-image: url(/-/media/Project/DefaultSite/Company/sustainability/report2023-mainvisual-sp.jpg);
	}
}

@media screen and (max-width: 600px) {
	.mainvisual--report-download,
	.mainvisual--group {
		height: 460px;
	}
}

.mainvisual__main--report-download {
	padding-top: 80px;
	color: #fff;
}

.mainvisual__main--group,
.mainvisual__main--report-2023 {
	display: flex;
	flex-direction: column;
	color: #fff;
	justify-content: center;
	gap: 20px;
	height: 100%;
	padding: 20px 0;
	max-width: 400px;
}

.mainvisual__main--report-2023 {
	max-width: 600px;
	padding: 20px 0 100px;
}

@media screen and (max-width: 767px) {
	.mainvisual__main--report-download {
		padding-top: 50px;
		color: #fff;
	}

	.mainvisual__main--group {
		max-width: none;
	}

	.mainvisual__main--report-2023 {
		padding: 20px 0;
	}
}

@media screen and (max-width: 600px) {
	.mainvisual__main--report-download {
		padding-top: 32px;
		color: #fff;
	}

	.mainvisual__main--group,
	.mainvisual__main--report-2023 {
		padding: 32px 0 16px;
		justify-content: space-between;
	}
}

.mainvisual__heading {
	font-size: 40px;
	line-height: calc(52 / 40);
	font-weight: bold;
	letter-spacing: 0.1em;
}

.mainvisual__heading--white {
	color: #fff;
}

@media screen and (max-width: 767px) {
	.mainvisual__heading {
		font-size: 32px;
		line-height: calc(46 / 32);
	}
}

@media screen and (max-width: 600px) {
	.mainvisual__heading {
		font-size: 24px;
		line-height: calc(40 / 24);
	}
}

.mainvisual__texts--w-460 {
	max-width: 460px;
}

.mainvisual__texts--mt-24 {
	margin-top: 24px;
}

.mainvisual__texts--report-2023 {
	display: none;
}

@media screen and (max-width: 767px) {
	.mainvisual__texts--mt-24 {
		margin-top: 16px;
	}

	.mainvisual__main--report-2023 .mainvisual__texts {
		display: none;
	}

	.mainvisual__texts--report-2023 {
		display: block;
		margin-top: 24px;
	}
}

@media screen and (max-width: 600px) {
	.mainvisual__texts--mt-24 {
		margin-top: 8px;
	}
}

.mainvisual__text {
	font-size: 16px;
	line-height: calc(28 / 16);
	letter-spacing: 0.02em;
	font-weight: 500;
}

.mainvisual__group-text {
	font-size: 18px;
	font-weight: 700;
	line-height: calc(42 / 18);
	letter-spacing: 0.02em;
}


@media screen and (max-width: 767px) {
	.mainvisual__text {
		font-size: 15px;
		line-height: calc(28 / 15);
	}

	.mainvisual__text br {
		display: none;
	}
}

@media screen and (max-width: 600px) {
	.mainvisual__text {
		font-size: 14px;
		line-height: calc(28 / 14);
	}
}


/*
 =========================================================
heading_css（見出し用のスタイル）

2024.7.19

 =========================================================
*/

.heading-02 .fs-24 {
	margin: 0;
	padding: 0;
	font-size: 24px;
	line-height: calc(40 / 24);
	font-weight: bold;
	letter-spacing: 0.1em;
	background: none;
	color: #000;
}

.heading-02 .fs-26 {
	margin: 0;
	padding: 0;
	font-size: 26px;
	line-height: calc(32 / 26);
	font-weight: bold;
	letter-spacing: 0.1em;
	background: none;
	color: #000;
}

.heading-02 .fs-30 {
	margin: 0;
	padding: 0;
	font-size: 30px;
	line-height: calc(36 / 30);
	font-weight: bold;
	letter-spacing: 0.07em;
	background: none;
	color: #000;
}

@media screen and (max-width: 767px) {
	.heading-02 .fs-30--report-2023 {
		font-size: 24px;
	}
}

@media screen and (max-width: 600px) {
	.heading-02 .fs-30--report-2023 {
		font-size: 18px;
	}
}

.heading-02 .fs-26--group {
	font-size: 22px;
}

.heading-02 .fs-24 .mini {
	display: none;
}

@media screen and (max-width: 767px) {
	.heading-02 .fs-24 {
		font-size: 22px;
		line-height: calc(35 / 22);
	}

	.heading-02 .fs-26--group {
		font-size: 19px;
		line-height: calc(26 / 21);
	}
}

@media screen and (max-width: 600px) {
	.heading-02 .fs-24 {
		font-size: 20px;
		line-height: calc(30 / 20);
	}

	.heading-02 .fs-24 .mini {
		display: block;
	}

	.heading-02 .fs-26--group {
		font-size: 16px;
		line-height: calc(20 / 16);
	}
}

@media screen and (min-width: 1024px) {
	.heading-02 .fs-26 {
		font-size: 26px;
		line-height: calc(32 / 26);
	}
}

.heading-02 .fs-20,
.heading-03 .fs-20 {
	margin: 0;
	padding: 0;
	font-size: 20px;
	line-height: calc(40 / 20);
	font-weight: bold;
	letter-spacing: 0.1em;
	background: none;
	color: #000;
}

.heading-02 .heading-center {
	text-align: center;
}

@media screen and (max-width: 767px) {

	.heading-03 .fs-20 {
		font-size: 18px;
	}
}

@media screen and (max-width: 600px) {
	.heading-03 .fs-20 {
		font-size: 15px;
	}
}
@media screen and (min-width: 768px) {
	.heading-02 .heading-center-pc {
		text-align: center;
	}
}

/*
 =========================================================
text_css（テキスト用のスタイル）

2024.7.19

 =========================================================
*/

.text-fs16-a {
	font-size: 16px;
	line-height: calc(26 / 16);
	letter-spacing: 0.01em;
}

@media screen and (min-width: 768px) {
	.text-center-pc {
		text-align: center;
	}
}

.text-mt-16 {
	margin-top: 16px;
}

@media screen and (max-width: 768px) {
	.text-mt-16 {
		margin-top: 14px;
	}
}

@media screen and (max-width: 600px) {
	.text-mt-16 {
		margin-top: 12px;
	}
}

.text-mt-12 {
	margin-top: 12px;
}

@media screen and (max-width: 768px) {
	.text-mt-12 {
		margin-top: 11px;
	}
}

@media screen and (max-width: 600px) {
	.text-mt-12 {
		margin-top: 10px;
	}
}

/*
 =========================================================
link-pdf_css（PDFリンク用のスタイル）

2024.7.19

 =========================================================
*/

.link-pdfs {
	display: flex;
	flex-direction: column;
	gap: 32px;
}

.link-pdfs--mt-40 {
	margin-top: 40px;
}

@media screen and (max-width: 767px) {
	.link-pdfs--mt-40 {
		margin-top: 32px;
	}
}

@media screen and (max-width: 600px) {
	.link-pdfs--mt-40 {
		margin-top: 24px;
	}
}

.link-pdfs--600 {
	max-width: 600px;
	width: 100%;
}

.link-pdfs--center {
	margin-right: auto;
	margin-left: auto;
}

.link-pdf {
  background-color: #CC0022;
}

.link-pdf a {
  display: flex;
  justify-content: space-between;
  align-items: center;
	gap: 20px;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
	font-size: 16px;
	line-height: calc(30 / 16);
  font-weight: bold;
	letter-spacing: 0.1em;
  transition: all 0.3s;
	padding: 15px 20px;
}

.link-pdf a img {
	width: 20px;
	height: 20px;
}

.link-pdf a:hover {
  opacity: 0.6;
}

/*
 =========================================================
link-text_css（PDFリンクテキスト用のスタイル）

2024.7.19

 =========================================================
*/

.link-text-mt-10 {
	margin-top: 10px;
}

.link-text a {
	display: flex;
	align-items: flex-start;
	width: fit-content;
	gap: 20px;
	text-decoration: none;
	transition: all 0.3s;
}

.link-text a:hover {
	opacity: 0.7;
}

.link-text a p {
	font-size: 16px;
	line-height: calc(26 / 16);
	letter-spacing: 0.1em;
}

.link-text a p br {
	display: none;
}

@media screen and (max-width: 600px) {
	.link-text a p br {
		display: block;
	}
}

.link-text a img {
	width: 20px;
	height: 23px;
	padding-top: 3px;
}

/*
 =========================================================
layout_css（ページレイアウトのスタイル）

2024.7.19

 =========================================================
*/

.layout--report-download {
	margin: 6.25rem auto 10rem;
	max-width: calc(600px + 50px * 2);
}

.layout--group,
.layout--group-hse,
.layout--group-hsw,
.layout--report,
.layout--cyber-resilience  {
	margin: 6.25rem auto 10rem;
}

@media screen and (max-width: 767px) {
	.layout--report-download,
	.layout--group,
	.layout--group-hse,
	.layout--group-hsw,
	.layout--report,
	.layout--cyber-resilience {
		margin: 4.5rem auto 7.5rem;
	}

	.layout--group {
		max-width: 500px;
	}
}

@media screen and (max-width: 600px) {
	.layout--report-download,
	.layout--group,
	.layout--group-hse,
	.layout--group-hsw,
	.layout--report,
	.layout--cyber-resilience {
		margin: 3.125rem auto 5rem;
	}
}

.layout--center {
	margin-right: auto;
	margin-left: auto;
}

/*
 =========================================================
report-download_css（SXレポートダウンロード用スタイル）

2024.07.19
 =========================================================
*/
.report-download-mt-150 {
	margin-top: 9.375rem;
}

@media screen and (max-width: 767px) {
	.report-download-mt-150 {
		margin-top: 6.25rem;
	}
}

@media screen and (max-width: 600px) {
	.report-download-mt-150 {
		margin-top: 4.375rem;
	}
}

.report-download-mt-50 {
	margin-top: 3.125rem;
}

@media screen and (max-width: 767px) {
	.report-download-mt-50 {
		margin-top: 2.5rem;
	}
}

@media screen and (max-width: 600px) {
	.report-download-mt-50 {
		margin-top: 1.875rem;
	}
}

.report-download-mt-24 {
	margin-top: 1.5rem;
}

@media screen and (max-width: 767px) {
	.report-download-mt-24 {
		margin-top: 1.25rem;
	}
}

@media screen and (max-width: 600px) {
	.report-download-mt-24 {
		margin-top: 1rem;
	}
}

/*
 =========================================================
group_css（グループ会社のサステナビリティの取り組みページ用スタイル）

2024.07.19
 =========================================================
*/

.group-mt-100 {
	margin-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.group-mt-100 {
		margin-top: 5rem;
	}
}

@media screen and (max-width: 600px) {
	.group-mt-100 {
		margin-top: 3.75rem;
	}
}

/*
 =========================================================
report-2023_css（SXプロジェクトの活動報告　2023年度ページ用スタイル）

2024.07.19
 =========================================================
*/

.report-2023__layout {
	max-width: 1160px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.report-2023__mt-80 {
	margin-top: 5rem;
}

@media screen and (max-width: 767px) {
	.report-2023__mt-80 {
		margin-top: 3rem;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__mt-80 {
		margin-top: 2rem;
	}
}

.report-2023__mt-50 {
	margin-top: 3.125rem;
}

@media screen and (max-width: 767px) {
	.report-2023__mt-50 {
		margin-top: 2.5rem;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__mt-50 {
		margin-top: 2rem;
	}
}

.report-2023__picture {
	max-width: 420px;
	width: 100%;
}

.report-2023-background-blue {
	background-color: #7cbadc;
}

.report-2023-background-gray {
	background-color: #D8D8D8;
}

.report-2023__layout-blue {
	padding: 5rem 0;
}

@media screen and (max-width: 767px) {
	.report-2023__layout-blue {
		padding: 3rem 0;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__layout-blue {
		padding: 2rem 0;
	}
}

.report-2023__heading-02 {
	font-size: 30px;
	line-height: calc(36 / 30);
}

.report-2023__items {
	margin-top: 40px;
	display: flex;
	flex-direction: column;
	gap: 30px;
}

@media screen and (max-width: 767px) {
	.report-2023__items {
		margin-top: 32px;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__items {
		margin-top: 24px;
	}
}

.report-2023__item {
	background-color: #fff;
	display: flex;
	gap: 30px;
	align-items: center;
	padding: 30px 24px;
}

@media screen and (max-width: 767px) {
	.report-2023__item {
		flex-direction: column;
		align-items: flex-start;
		gap: 16px;
		padding: 25px 22px;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__item {
		gap: 10px;
		padding: 20px;
	}
}

.report-2023__title {
	width: 40%;
	font-size: 20px;
	line-height: calc(30 / 20);
	color: #000;
	text-align: center;
	margin: 0;
}

@media screen and (max-width: 767px) {
	.report-2023__title {
		width: 100%;
		text-align: left;
		font-size: 18px;
	}
}

.report-2023__title br {
	display: none;
}

@media screen and (min-width: 1024px) {
	.report-2023__title br {
		display: block;
	}
}

.report-2023__body {
	width: calc(100% - 30px - 40%);
}

@media screen and (max-width: 767px) {
	.report-2023__body {
		width: 100%;
	}
}

.report-2023__list {
	position: relative;
	padding-left: 20px;
}

@media screen and (max-width: 767px) {
	.report-2023__list {
		padding-left: 18px;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__list {
		padding-left: 16px;
	}
}

.report-2023__list-sub {
	padding-left: 0;
}

.report-2023__list,
.report-2023__list-sub {
	list-style: none;
	font-size: 16px;
	line-height: calc(26 / 16);
	letter-spacing: 0.02em;
}

@media screen and (max-width: 767px) {
	.report-2023__list,
	.report-2023__list-sub {
		font-size: 14px;
		line-height: calc(24 / 14);
	}
}

.report-2023__list::before {
	content: "";
	position: absolute;
	top: 8px;
	left: 0;
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background-color: #000;
}

@media screen and (max-width: 767px) {
	.report-2023__list::before {
		top: 7px;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__list::before {
		top: 6px;
	}
}

.report-2023__lists-sub {
	padding-left: 0;
}

.report-2023__link-margin {
	margin: 7.5rem 0;
}

@media screen and (max-width: 767px) {
	.report-2023__link-margin {
		margin: 3.125rem 0 5rem;
	}
}

@media screen and (max-width: 600px) {
	.report-2023__link-margin {
		margin: 2.5rem 0 4rem;
	}
}

/*
 =========================================================
dialogue_css（対談ページ用のスタイル）

2024.07.21
 =========================================================
*/

.dialogue__mainvisual-a-background {
	position: relative;
	width: 100%;
	height: 500px;
}

@media screen and (min-width: 1024px) {
	.dialogue__mainvisual-a-background {
		height: 600px;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-a-background {
		height: 400px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__mainvisual-a-background {
		height: 290px;
	}
}

.dialogue__mainvisual-a-background .dialogue__mainvisual-titles {
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 5%;
}

@media screen and (min-width: 1024px) {
	.dialogue__mainvisual-a-background .dialogue__mainvisual-titles {
		top: 55%;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-a-background .dialogue__mainvisual-titles {
		display: none;
	}
}

.dialogue__mainvisual-a .dialogue__mainvisual-foot-title {
	position: absolute;
	left: 16px;
	bottom: 0;
	width: 678px;
	height: 96px;
}

.dialogue__mainvisual-a .dialogue__mainvisual-foot-title img {
	object-fit: cover;
	height: auto !important;
}

@media screen and (min-width: 1024px) {
	.dialogue__mainvisual-a .dialogue__mainvisual-foot-title {
		width: 864px;
		height: 120px;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-a .dialogue__mainvisual-foot-title {
		left: 6px;
		width: 512px;
		height: 72px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__mainvisual-a .dialogue__mainvisual-foot-title {
		width: 345px;
		height: 48px;
	}
}

.dialogue__mainvisual-a-background img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	object-position: center;
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-a-background img {
		object-position: 65% 50%;
	}
}

.dialogue__mainvisual-b {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.dialogue__mainvisual-b--young-a,
.dialogue__mainvisual-b--project-kite,
.dialogue__mainvisual-b--nursing-care {
	align-items: flex-start;
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-b--young-a,
	.dialogue__mainvisual-b--project-kite,
	.dialogue__mainvisual-b--nursing-care {
		align-items: center;
	}
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b {
		flex-direction: row;
		margin-right: calc(50% - 50vw);
	}
}

.dialogue__mainvisual-b-main {
	display: flex;
	order: 2;
	margin-top: 3.125rem;
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b-main {
		margin-top: 0;
		order: 1;
		display: block;
		width: 368px;
		margin-right: 2.25rem;
	}

	.dialogue__mainvisual-b--young-a .dialogue__mainvisual-b-main,
	.dialogue__mainvisual-b--women-empowerment .dialogue__mainvisual-b-main,
	.dialogue__mainvisual-b--project-kite .dialogue__mainvisual-b-main,
	.dialogue__mainvisual-b--nursing-care .dialogue__mainvisual-b-main {
		width: 450px;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-b-main {
		display: block;
	}
}

.dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts {
	margin-left: 3.125rem;
	max-width: 308px;
}

.dialogue__mainvisual-b--young-a .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts,
.dialogue__mainvisual-b--project-kite .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts,
.dialogue__mainvisual-b--nursing-care .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts,
.dialogue__mainvisual-b--women-empowerment .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts {
	max-width: 420px;
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b--project-kite .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts {
		margin-top: 5rem;
	}
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts {
		margin-top: 1.5rem;
		margin-left: 0;
		max-width: 344px;
	}
	.dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts--women-empowerment {
		margin-top: 3.125rem;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts {
		margin-top: 2.5rem;
		max-width: 600px;
		margin-left: 0;
	}
	.dialogue__mainvisual-b--young-a .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts,
	.dialogue__mainvisual-b--project-kite .dialogue__mainvisual-b-main .dialogue__mainvisual-b-texts {
		max-width: none;
	}
}

.dialogue__mainvisual-b-main .dialogue__mainvisual-b-text {
	font-size: 16px;
	font-weight: bold;
	line-height: calc(33 / 16);
}

.dialogue__mainvisual-b-main .dialogue__mainvisual-b-text--mt {
	margin-top: 33px;
}

.dialogue__mainvisual-b-text--url {
	word-break: break-all;
}


.dialogue__mainvisual-b-black-titles {
	display: flex;
	flex-direction: column;
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b-black-titles--project-kite,
	.dialogue__mainvisual-b-black-titles--nursing-care {
		margin-top: 2.5rem;
	}
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b-black-titles {
		position: relative;
		display: flex;
		margin-right: calc(50% - 50vw);
	}
}

.dialogue__mainvisual-b-black-title {
	display: inline-block;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 1px;
	background-color: #000;
	color: #fff;
	padding: 12px 30px;
	margin-right: auto;
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b-black-title {
		font-size: 24px;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-b-black-title {
		font-size: 18px;
		padding: 12px 16px;
		margin-right: auto;
	}
}

.dialogue__mainvisual-b-black-title:not(:first-child) {
	margin-top: 0.75rem;
}

.dialogue__mainvisual-b-picture {
	order: 1;
	width: 100vw;
	max-height: 660px;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

@media screen and (min-width: 1280px) {
	.dialogue__mainvisual-b-picture {
		order: 2;
		width: calc(100% - 368px - 2.25rem);
		margin-right: 0;
		margin-left: 0;
	}

	.dialogue__mainvisual-b--women-empowerment .dialogue__mainvisual-b-picture {
		width: calc(100% - 450px - 2.25rem);
	}
}

@media screen and (min-width: 1024px) {
	.dialogue__mainvisual-b-picture {
		max-height: 660px;
	}
}

.dialogue__mainvisual-b-picture img {
	max-height: 400px;
	height: 400px;
	width: 	100vw;
	object-fit: cover;
	object-position: center center;
}

.dialogue__mainvisual-b-picture--hse-topriver img {
	object-fit: cover;
	object-position: 20% 50%;
}

@media screen and (min-width: 1024px) {
	.dialogue__mainvisual-b-picture img {
		max-height: 660px;
		height: 660px;
	}
}


.dialogue__mainvisual-titles {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.dialogue__mainvisual-title {
	background-color: #000;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: 0.16em;
	padding: 12px 30px;
	width: fit-content;
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-title {
		font-size: 21px;
		line-height: calc(32 / 21);
		padding: 9px 24px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__mainvisual-title {
		font-size: 18px;
		line-height: calc(28 / 18);
		padding: 11px 20px;
	}
}

.dialogue__mainvisual-foot-title {
	font-size: 102px;
	line-height: 1;
	letter-spacing: 0.03em;
	color: #fff;
}

@media screen and (min-width: 1024px) {
	.dialogue__mainvisual-foot-title {
		font-size: 130px;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-foot-title {
		font-size: 77px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__mainvisual-foot-title {
		font-size: 52px;
	}
}

.dialogue__mainvisual-a .dialogue__mainvisual-foot-sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.dialogue__mainvisual-a .dialogue__mainvisual-foot-sp {
		display: block;
		padding: 2rem 0 4rem;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__mainvisual-a .dialogue__mainvisual-foot-sp {
		padding: 1.25rem 0 3.125rem;
	}
}

.dialogue__cta-a {
	background-color: #4b4b4b;
	padding: 3rem 0;
}

@media screen and (max-width: 767px) {
	.dialogue__cta-a {
		padding: 2.5rem 0;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__cta-a {
		padding: 2rem 0;
	}
}

.dialogue__cta-a .dialogue__cta-text {
	font-size: 16px;
	line-height: calc(35 / 16);
	letter-spacing: 0.02em;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.dialogue__cta-a .dialogue__cta-text {
		font-size: 15px;
		line-height: calc(32 / 15);
	}
}

@media screen and (max-width: 600px) {
	.dialogue__cta-a .dialogue__cta-text {
		font-size: 14px;
		line-height: calc(28 / 14);
	}
}

.dialogue__introduction-a {
	padding-top: 5rem;
}

@media screen and (max-width: 767px) {
	.dialogue__introduction-a {
		padding-top: 4rem;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__introduction-a {
		padding-top: 3.125rem;
	}
}

.dialogue__introduction-a .dialogue__items {
	display: grid;
	grid-template-columns: 1fr;
	gap: 50px;
}

@media screen and (min-width: 1024px) {
	.dialogue__introduction-a .dialogue__items {
		grid-template-columns: 1fr 1fr 1fr;
		gap: 40px;
	}
}

.dialogue__introduction-a .dialogue__item {
	text-align: center;
	max-width: 500px;
	margin-right: auto;
	margin-left: auto;
}

.dialogue__introduction-a .dialogue__face-photo {
	max-width: 250px;
	height: auto;
	margin-right: auto;
	margin-left: auto;
}

@media screen and (min-width: 1024px) {
	.dialogue__introduction-a .dialogue__face-photo {
		max-width: 206px;
	}
}

@media screen and (max-width: 767px) {
	.dialogue__introduction-a .dialogue__face-photo {
		max-width: 206px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__introduction-a .dialogue__face-photo {
		max-width: 190px;
	}
}

.dialogue__introduction-a .dialogue__affiliation {
	font-size: 16px;
	line-height: calc(24 / 16);
	letter-spacing: 0.13em;
	font-weight: 500;
}

@media screen and (max-width: 767px) {
	.dialogue__introduction-a .dialogue__affiliation {
		font-size: 14px;
		line-height: calc(24 / 14);
	}
}

.dialogue__introduction-a .dialogue__name {
	font-size: 28px;
	line-height: 1;
	letter-spacing: 0.11em;
	font-weight: 700;
}

.dialogue__introduction-a .dialogue__name-en {
	font-size: 14px;
	line-height: 1;
	letter-spacing: 0.11em;
	font-weight: 700;
}

@media screen and (max-width: 767px) {
	.dialogue__introduction-a .dialogue__name {
		font-size: 24px;
	}

	.dialogue__introduction-a .dialogue__name-en {
		font-size: 12px;
	}
}

.dialogue__introduction-a .dialogue__introduction-text {
	font-size: 14px;
	line-height: calc(24 / 14);
	letter-spacing: 0.04em;
	font-weight: 500;
	text-align: left;
}

.dialogue__introduction-b .dialogue__items {
	margin: 6.25rem auto 0;
	display: grid;
	grid-template-columns: 1fr;
	gap: 3.75rem;
	max-width: 800px;
}

@media screen and (min-width: 1280px) {
	.dialogue__introduction-b .dialogue__items {
		margin-top: 7.625rem;
		grid-template-columns: 1fr 1fr;
		max-width: none;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__introduction-b .dialogue__items {
		gap: 3.125rem;
	}
}

.dialogue__introduction-b .dialogue__item {
	display: flex;
	gap: 1.875rem;
}

@media screen and (max-width: 600px) {
	.dialogue__introduction-b .dialogue__item {
		flex-direction: column;
	}
}

.dialogue__introduction-b .dialogue__face-photo {
	max-width: 246px;
	max-height: 281px;
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 600px) {
	.dialogue__introduction-b .dialogue__face-photo {
		margin-right: auto;
		margin-left: auto;
	}
}

.dialogue__introduction-b .dialogue__face-photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center center;
}

.dialogue__introduction-b .dialogue__item-main {
	width: calc(100% - 246px - 1.875rem);
}

@media screen and (max-width: 600px) {
	.dialogue__introduction-b .dialogue__item-main {
		width: 100%;
	}
}

.dialogue__introduction-b .dialogue__affiliation {
	font-size: 16px;
	line-height: 1.5;
}

.dialogue__introduction-b .dialogue__name {
	margin-top: 0.875rem;
	font-size: 28px;
	font-weight: bold;
	line-height: 1;
	letter-spacing: 3px;
}

@media screen and (max-width: 767px) {
	.dialogue__introduction-b .dialogue__name {
		font-size: 24px;
	}
}

.dialogue__introduction-b .dialogue__introduction-text {
	margin-top: 0.875rem;
	font-size: 16px;
	line-height: calc(27 / 16);
}

.dialogue__bar-red {
	width: 50px;
	height: 2px;
	background-color: #cc0022;
}

.dialogue__black-titles {
	display: flex;
	flex-direction: column;
	gap: 0.75rem;
}

.dialogue__black-title {
	width: fit-content;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	padding: 10px 30px;
	background-color: #000;
	color: #fff;
	letter-spacing: 1px;
	margin-right: auto;
}

.dialogue__black-title .mini {
	display: none;
}

@media screen and (max-width: 767px) {
	.dialogue__black-titles {
		margin: 1rem 0 0 !important;
	}
	.dialogue__black-title {
		font-size: 18px;
		padding: 10px 16px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__black-title {
		width: 100%;
	}

	.dialogue__black-title .mini {
		display: block;
	}
}

.dialogue__texts .dialogue__text--mt-27 {
	margin-top: 1.6875rem;
}

.dialogue__text {
	font-size: 16px;
	line-height: calc(27 / 16);
}

.dialogue__text-14 {
	font-size: 14px;
	line-height: calc(24 / 14);
}

.dialogue__topics {
	display: block;
	text-decoration: none;
	color: #000;
	background-color: #f2f2f2;
	max-width: 610px;
	width: 100%;
	padding: 24px 20px;
	transition: all 0.3s;
}

.dialogue__topics a:hover {
	opacity: 0.7;
}

.dialogue__topics--mt-50 {
	margin-top: 3.125rem;
}

.dialogue__topics-head {
	display: flex;
	gap: 16px;
}

@media screen and (max-width: 600px) {
	.dialogue__topics-head {
		flex-direction: column;
		gap: 8px;
	}
}

.dialogue__topics-head .dialogue__topics-number {
	font-size: 14px;
	font-weight: 700;
	line-height: calc(20 / 14);
	letter-spacing: 0.11em;
	background-color: #cc0022;
	color: #fff;
	padding: 0 24px 0 8px;
	width: fit-content;
	height: fit-content;
}

.dialogue__topics-head .dialogue__topics-title {
	font-size: 20px;
	line-height: calc(24 / 20);
	letter-spacing: 0.03em;
	font-weight: 700;
	color: #000;
	text-decoration: none;
}

.dialogue__topics-main {
	display: flex;
	gap: 3%;
}

@media screen and (max-width: 600px) {
	.dialogue__topics-main {
		flex-direction: column;
		gap: 20px;
	}
}

.dialogue__topics-main .dialogue__topics-texts {
	width: calc(100% - 3% - 39%);
}

@media screen and (max-width: 600px) {
	.dialogue__topics-main .dialogue__topics-texts {
		width: 100%;
	}
}

.dialogue__topics-main .dialogue__topics-text {
	color: #000;
	font-size: 16px;
	line-height: calc(21 / 14);
	letter-spacing: 0.08em;
}

.dialogue__topics-main .dialogue__topics-text--mini {
	font-size: 10px;
}

.dialogue__topics-main .dialogue__topics-picture {
	width: 39%;
}

.dialogue__topics-main .dialogue__topics-picture img {
	width: 100%;
	height: 140px;
	object-fit: cover;
	object-position: center;
}

@media screen and (max-width: 600px) {
	.dialogue__topics-main .dialogue__topics-picture {
		max-width: 450px;
		width: 100%;
		height: auto;
		/* height: auto; */
		margin: 0 auto;
	}

	.dialogue__topics-main .dialogue__topics-picture img {
		height: auto;
	}
}

.dialogue__separator {
	margin: 6.25rem 0;
	height: 1px;
	background-color: #333;
}

@media screen and (max-width: 767px) {
	.dialogue__separator {
		margin: 5rem 0;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__separator {
		margin: 4.375rem 0;
	}
}

.dialogue__block {
	max-width: calc(960px + 50px * 2);
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.dialogue__conversation {
	display: flex;
	flex-direction: column-reverse;
}

.dialogue__conversation-left-nursing-care .dialogue__conversation-left {
	margin-top: 3.125rem;
}

.dialogue__conversation-left-nursing-care .dialogue__picture img {
	height: 400px;
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation-left-nursing-care {
		position: relative;
		display: flex;
		flex-direction: column;
		padding-left: 23.4375%;
	}

	.dialogue__conversation-left-nursing-care .dialogue__picture img {
		height: 500px;
	}

	.dialogue__conversation-left-nursing-care .dialogue__conversation-left {
		position: absolute;
		z-index: 1;
		top: 0;
		left: 0;
		margin-top: 0;
	}
}

.dialogue__conversation-left-nursing-care .dialogue__picture {
	position: relative;
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation {
		flex-direction: row;
		align-items: flex-start;
		gap: 3.125rem;
		max-width: none;
	}

	.dialogue__conversation--reverse {
		flex-direction: row-reverse;
	}

	.dialogue__conversation--reverse .dialogue__conversation-right {
		position: relative;
	}

	.dialogue__conversation--reverse .dialogue__conversation-absolute {
		position: absolute;
		top: 0;
		right: 0;
	}
}

.dialogue__conversation-left {
	margin-top: 3.125rem;
	max-width: none;
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation-left {
		margin-top: 0;
		max-width: 750px;
	}

	.dialogue__conversation-left--nursing-care {
		max-width: 700px;
	}
}

.dialogue__conversation-right {
	width: 100%;
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation-right {
		width: calc(100% - 750px - 3.125rem);
	}
}

.dialogue__conversation-right .dialogue__topics,
.dialogue__conversation-right--hsc-topriver .dialogue__gantt-chart {
	display: none;
}

.dialogue__conversation-left .dialogue__topics,
.dialogue__conversation-left .dialogue__gantt-chart {
	display: block;
}


.dialogue__conversation-left .dialogue__gantt-chart {
	max-width: 700px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.dialogue__conversation-right--hsc-topriver .dialogue__gantt-chart {
	margin-top: 1.875rem;
}

.dialogue__gantt-chart p {
	font-size: 14px;
	line-height: calc(24 / 14);
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation-right .dialogue__topics,
	.dialogue__conversation-right .dialogue__gantt-chart {
		display: block;
	}

	.dialogue__conversation-left .dialogue__topics,
	.dialogue__conversation-left .dialogue__gantt-chart {
		display: none;
	}
}

@media screen and (min-width: 1024px) {
	.dialogue__conversation-right .dialogue__picture {
		margin: 0 calc(50% - 50vw);
	}
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation-right .dialogue__picture {
		margin: 0;
	}

	.dialogue__inner-break-right {
		margin-left: 0;
		margin-right: calc(50% - 50vw);
	}

	.dialogue__inner-break-left {
		margin-right: 0;
		margin-left: calc(50% - 50vw);
	}
}

@media screen and (min-width: 768px) {
	.dialogue__conversation-right--hsc-topriver .dialogue__picture,
	.dialogue__conversation-right--young-development-02 .dialogue__picture,
	.dialogue__conversation-right--project-kite .dialogue__picture,
	.dialogue__conversation-right--nursing-care .dialogue__picture {
		max-width: 700px;
		margin-right: auto;
		margin-left: auto;
	}
}

@media screen and (min-width: 1024px) {
	.dialogue__conversation-right--hsc-topriver .dialogue__picture,
	.dialogue__conversation-right--young-development-02 .dialogue__picture,
	.dialogue__conversation-right--project-kite .dialogue__picture,
	.dialogue__conversation-right--nursing-care .dialogue__picture {
		max-width: 700px;
	}
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation-right--hsc-topriver .dialogue__picture,
	.dialogue__conversation-right--young-development-02 .dialogue__picture,
	.dialogue__conversation-right--project-kite .dialogue__picture,
	.dialogue__conversation-right--nursing-care .dialogue__picture {
		max-width: none;
	}
}


.dialogue__conversation-right--hsc-topriver .dialogue__picture img {
	height: auto;
}

.dialogue__picture {
	position: relative;
}

.dialogue__picture--single-hse-topriver,
.dialogue__picture--single-young-development-02,
.dialogue__picture--single-women-empowerment,
.dialogue__picture--single-project-kite {
	max-width: 900px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.dialogue__picture::before {
	content: "";
	position: absolute;
	top: -1px;
	left: -1px;
	background-color: #fff;
	clip-path: polygon(0 0, 100% 0, 0 100%);
	width: 65px;
	height: 65px;
}

.dialogue__picture--single-hse-topriver::before,
.dialogue__picture--single-young-development-02::before,
.dialogue__picture--single-women-empowerment::before,
.dialogue__picture--single-project-kite::before {
	display: none;
}

.dialogue__picture::after {
	content: "";
	position: absolute;
	bottom: -1px;
	right: -1px;
	background-color: #fff;
	clip-path: polygon(0 100%, 100% 0, 100% 100%);
	width: 65px;
	height: 65px;
}

.dialogue__picture--single-hse-topriver::after,
.dialogue__picture--single-young-development-02::after,
.dialogue__picture--single-women-empowerment::after,
.dialogue__picture--single-project-kite::after {
	display: none;
}

.dialogue__conversation-right--hsc-topriver .dialogue__picture::before,
.dialogue__conversation-right--young-development-02 .dialogue__picture::before,
.dialogue__conversation-right--project-kite .dialogue__picture::before,
.dialogue__conversation-right--nursing-care .dialogue__picture::before,
.dialogue__conversation-left-nursing-care .dialogue__picture::before {
	display: none;
}

.dialogue__conversation-right--hsc-topriver .dialogue__picture::after,
.dialogue__conversation-right--young-development-02 .dialogue__picture::after,
.dialogue__conversation-right--project-kite .dialogue__picture::after,
.dialogue__conversation-right--nursing-care .dialogue__picture::after,
.dialogue__conversation-left-nursing-care .dialogue__picture::after {
	display: none;
}

@media screen and (max-width: 767px) {
	.dialogue__picture::before {
		width: 30px;
		height: 30px;
	}

	.dialogue__picture::after {
		width: 30px;
		height: 30px;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__picture::before {
		width: 40px;
		height: 40px;
	}

.dialogue__picture::after {
		width: 40px;
		height: 40px;
	}
}

.dialogue__picture img {
	width: 100%;
	height: 650px;
	object-fit: cover;
	object-position: center center;
}

.dialogue__picture--single-women-empowerment img,
.dialogue__picture--single-project-kite img,
.dialogue__conversation-right--nursing-care img {
	height: auto;
}

@media screen and (min-width: 1280px) {
	.dialogue__picture img {
		height: 650px;
	}

	.dialogue__picture--single-women-empowerment img {
		height: auto;
	}

	.dialogue__picture--single-project-kite img {
		height: auto;
	}

	.dialogue__conversation-right--nursing-care img {
		height: auto;
	}
}

.dialogue__picture--single-hse-topriver img,
.dialogue__conversation-right--young-development-02 img,
.dialogue__conversation-right--project-kite img {
	height: auto;
}

.dialogue__conversation-topics {
	width: fit-content;
}

.dialogue__inner-break-right .dialogue__conversation-topics {
	padding-right: 50px;
}

.dialogue__inner-break-left .dialogue__conversation-topics {
	padding-left: 50px;
	margin-left: auto;
}

@media screen and (min-width: 1280px) {
	.dialogue__conversation .dialogue__conversation-right .dialogue__conversation-picture img {
		max-width: 100%;
		width: 100%;
	}

	.dialogue__conversation--reverse .dialogue__conversation-right .dialogue__conversation-picture {
		margin-left: auto;
		margin-right: 0;
	}

	.dialogue__conversation--reverse .dialogue__conversation-right .dialogue__topics {
		margin-left: auto;
	}
}

.dialogue__banner img {
	width: 100%;
	max-height: 494px;
	min-height: 160px;
	object-fit: cover;
	object-position: center center;
}

.dialogue__topics-mt-20 {
	margin-top: 20px;
}

@media screen and (max-width: 600px) {
	.dialogue__topics-mt-20 {
		margin-top: 16px;
	}
}

.dialogue__conversation-title {
	display: flex;
	gap: 10px;
}

.dialogue__conversation-title-bar {
	width: 20px;
	height: 1px;
	background-color: #cc0022;
	margin-top: 17px;
}

.dialogue__conversation-title-text {
	width: calc(100% - 20px - 5px);
	font-size: 20px;
	font-weight: bold;
	line-height: calc(34 / 20);
	color: #333;
}

@media screen and (max-width: 767px) {
	.dialogue__conversation-title-text {
		font-size: 18px;
	}
}

.dialogue__w-800 {
	max-width: 800px;
	width: 100%;
}

.dialogue__w-800--center {
	margin-right: auto;
	margin-left: auto;
}

.dialogue__mt-100 {
	margin-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.dialogue__mt-100 {
		margin-top: 5rem;
	}
}

@media screen and (max-width: 600px) {
	.dialogue__mt-100 {
		margin-top: 4.375rem;
	}
}

.dialogue__w-900 {
	max-width: 900px;
	width: 100%;
}

.dialogue__w-900--center {
	margin-right: auto;
	margin-left: auto;
}



/*
 =========================================================
report.css（サステナビリティに貢献する事業活動の取材以外のページ用スタイル）
group.css（グループ会社の取り組みページ用スタイル）

2024.07.19
 =========================================================
*/

/* グループ会社の取り組みで使用 */

.group__mainvisual,
.report__mainvisual {
	width: 100%;
	color: #fff;
	background-size: cover;
	background-position: c;
}

.group__mainvisual--hse {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-hse.jpg);
}

.group__mainvisual--hsw {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-hsw.jpg);
}

.group__mainvisual--hsc {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-hsc.jpg);
}

.group__mainvisual--hst {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-hst.jpg);
}

.group__mainvisual--europe {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-europe.jpg);
}

.group__mainvisual--apac {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-apac.jpg);
}

.group__mainvisual--north-america {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-group-north-america.jpg);
}

.report__mainvisual--sbom {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-report-sbom.jpg);
}

.report__mainvisual--cyber-resilience {
	background-image: url(/-/media/Project/DefaultSite/Company/sustainability/mainvisual-report-cyber-resilience.jpg);
}

.group__mainvisual-main {
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
	height: 290px;
}

@media screen and (max-width: 767px) {
	.group__mainvisual-main {
		height: 240px;
	}
}

@media screen and (max-width: 600px) {
	.group__mainvisual-main {
		height: 200px;
	}
}

.group__items-a {
	display: flex;
	flex-direction: column;
	gap: 50px;
}

.group__pikotto,
.group__area-power,
.group__hsc,
.group__hst,
.report__sbom,
.report__cyber-resilience {
	margin-right: auto;
	margin-left: auto;
	width: 100%;
	padding: 30px;
}

.report__point {
	margin-right: auto;
	margin-left: auto;
	width: 100%;
}

.group__pikotto,
.group__hsc,
.group__hst{
	max-width: 700px;
}

.report__cyber-resilience {
	max-width: 800px;
}

.report__cyber-resilience--improvement img {
	display: block;
	max-width: 500px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}

.report__sbom {
	max-width: 900px;
}

.group__apac {
	max-width: 758px;
}

.group__area-power,
.group__north-america,
.report__point{
	max-width: 1000px;
}

.group__north-america,
.group__apac {
	margin-right: auto;
	margin-left: auto;
}

@media screen and (max-width: 767px) {
	.group__pikotto,
	.group__area-power,
	.group__hsc,
	.group__hst {
		padding: 24px;
	}
}

@media screen and (max-width: 600px) {
	.group__pikotto,
	.group__area-power,
	.group__hsc,
	.group__hst {
		padding: 20px;
	}
}

.report__point-items {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px 20px;
}

@media screen and (max-width: 767px) {
	.report__point-items {
		grid-template-columns: 1fr;
		gap: 24px;
	}
}

.report__point-item {
	display: flex;
	gap: 20px;
	align-items: center;
}

.report__point-item .report__point-number {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #71BDB5;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
}

@media screen and (max-width: 767px) {
	.report__point-item .report__point-number {
		width: 56px;
		height: 56px;
	}
}

@media screen and (max-width: 600px) {
	.report__point-item .report__point-number {
		width: 48px;
		height: 48px;
	}
}

.report__point-item .report__point-text {
	font-size: 24px;
	letter-spacing: 0.05em;
	line-height: calc(30 / 26);
	width: calc(100% - 64px - 20px);
}

@media screen and (max-width: 767px) {
	.report__point-item .report__point-text {
		font-size: 21px;
		line-height: calc(28 / 22);
	}
}

@media screen and (max-width: 600px) {
	.report__point-item .report__point-text {
		font-size: 18px;
		line-height: calc(24 / 18);
	}
}

/*
 =========================================================
vc-management_css（バリューチェーンマネジメントページ用スタイル）

2024.08.21
 =========================================================
*/
.vc-management__column-2 {
	display: flex;
	flex-direction: column;
	gap: 2.5rem;
}

.vc-management__column-2-picture {
	max-width: 500px;
	width: 100%;
	margin: 0 auto;
}

@media screen and (min-width: 1024px) {
	.vc-management__column-2 {
		flex-direction: row;
	}

	.vc-management__column-2-main {
		width: calc(100% - 2.5rem - 513px);
	}

	.vc-management__column-2-picture {
		margin: 0;
		max-width: 513px;
	}
}

/*
 =========================================================
innovation_css（イノベーション創出活動ページ用スタイル）

2024.09.04
 =========================================================
*/

.innovation__point-items {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 40px 20px;
}

@media screen and (max-width: 767px) {
	.innovation__point-items {
		grid-template-columns: 1fr;
		gap: 24px;
	}
}

.innovation__point-item {
	display: flex;
	gap: 20px;
	align-items: center;
}

.innovation__point-item .innovation__point-number {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: #71BDB5;
	width: 64px;
	height: 64px;
	border-radius: 50%;
	color: #fff;
	font-size: 20px;
	font-weight: 700;
}

@media screen and (max-width: 767px) {
	.innovation__point-item .innovation__point-number {
		width: 56px;
		height: 56px;
	}
}

@media screen and (max-width: 600px) {
	.innovation__point-item .innovation__point-number {
		width: 48px;
		height: 48px;
	}
}

.innovation__point-item .innovation__point-text {
	font-size: 24px;
	letter-spacing: 0.05em;
	line-height: calc(30 / 26);
	width: calc(100% - 64px - 20px);
}

.innovation__point-item .innovation__point-text--fs-18 {
	font-size: 18px;
}

@media screen and (max-width: 767px) {
	.innovation__point-item .innovation__point-text {
		font-size: 21px;
		line-height: calc(28 / 22);
	}

	.innovation__point-item .innovation__point-text--fs-18 {
		font-size: 16px;
	}
}

@media screen and (max-width: 600px) {
	.innovation__point-item .innovation__point-text {
		font-size: 18px;
		line-height: calc(24 / 18);
	}

	.innovation__point-item .innovation__point-text--fs-18 {
		font-size: 14px;
	}
}

.innovation__w-1100 {
	max-width: 1100px;
	width: 100%;
}

.innovation__center {
	margin-right: auto;
	margin-left: auto;
}

.innovation__flex-lists {
	display: grid;
	grid-template-columns: 350px auto;
	gap: 4px 20px;
}

@media screen and (max-width: 767px) {
	.innovation__flex-lists {
		grid-template-columns: auto;
	}
}

.innovation__robust-intelligence {
	margin-right: auto;
	margin-left: auto;
	max-width: 800px;
	width: 100%;
	padding: 30px;
}

@media screen and (max-width: 767px) {
	.innovation__robust-intelligence {
		padding: 24px;
	}
}

@media screen and (max-width: 600px) {
	.innovation__robust-intelligence {
		padding: 20px;
	}
}
