.p-materiality .materiality_head {
  margin-bottom: 2.5rem;
  font-size: 1.5rem;
  line-height: 1.5;
  letter-spacing: 0.04em;
}
@media (min-width: 751px) {
  .p-materiality .materiality_head {
    margin-block: -0.9375rem 2.5rem;
    font-size: 1.5rem;
  }
}
.p-materiality .materiality_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 5rem;
}
@media (min-width: 751px) {
  .p-materiality .materiality_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 4rem 2.5rem;
  }
}
.p-materiality .materiality_item {
  font-size: 0.875rem;
  line-height: 1.75;
  letter-spacing: 0.02em;
  font-weight: 400;
}
@media (min-width: 751px) {
  .p-materiality .materiality_item {
    width: 31.25rem;
    font-size: 0.875rem;
  }
  .p-materiality .materiality_item.--04 p, .p-materiality .materiality_item.--05 p {
    min-height: 5.25em;
  }
}
.p-materiality .materiality_img {
  border-radius: 1rem;
  overflow: hidden;
}
@media (min-width: 751px) {
  .p-materiality .materiality_img {
    border-radius: 1rem;
  }
}
.p-materiality .materiality_ttl {
  margin-block: 0.875rem 0.375rem;
  font-size: 1.125rem;
  font-weight: 500;
}
@media (min-width: 751px) {
  .p-materiality .materiality_ttl {
    margin-block: 1.3125rem 0.375rem;
    font-size: 1.125rem;
  }
}
.p-materiality .materiality_links {
  margin-top: 1.0625rem;
  list-style: none;
}
@media (min-width: 751px) {
  .p-materiality .materiality_links {
    margin-top: 1.5rem;
  }
}
@media (min-width: 751px) {
  .p-materiality .materiality_row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.p-materiality .materiality_row li {
  width: 100%;
  border: 1px dashed #AEB2B2;
  border-width: 1px 0;
}
.p-materiality .materiality_row li:not(:first-of-type) {
  margin-top: -1px;
}
@media (min-width: 751px) {
  .p-materiality .materiality_row li.col-6 {
    width: 15.3125rem;
  }
}
.p-materiality .materiality_link {
  padding: 0.9375rem 0.5rem 0.9375rem 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-weight: 500;
  color: inherit;
  text-decoration: none;
}
.p-materiality .materiality_link span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (min-width: 751px) {
  .p-materiality .materiality_link {
    padding: 0.75rem 0.5rem 0.6875rem 0;
    gap: 0;
    white-space: nowrap;
  }
}
@media (min-width: 751px) and (hover: hover) {
  .p-materiality .materiality_link:hover .ico-arrow:after {
    -webkit-transform: translateX(0.125rem);
            transform: translateX(0.125rem);
  }
}
.p-materiality .materiality_link .ico-arrow {
  background-image: none;
  position: relative;
}
.p-materiality .materiality_link .ico-arrow:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("../common/images/ico_arrow_white.svg") center center no-repeat;
  background-size: 0.75rem auto;
  -webkit-transition: -webkit-transform ease 0.3s;
  transition: -webkit-transform ease 0.3s;
  transition: transform ease 0.3s;
  transition: transform ease 0.3s, -webkit-transform ease 0.3s;
}

.ico-arrow {
  border-radius: 100%;
  width: 1.5rem;
  height: 1.5rem;
  background: #009FB9 url("../common/images/ico_arrow_white.svg") center center no-repeat;
  background-size: 0.75rem auto;
}
.ico-arrow.--orange {
  background-color: #F29700;
}
.ico-arrow.--red {
  background-color: #EA4740;
}
.ico-arrow.--yellow {
  background-color: #E7D100;
}
.ico-arrow.--green {
  background-color: #04CB54;
}
.ico-arrow.--green-light {
  background-color: #B0E201;
}
.ico-arrow.--blue {
  background-color: #00BAD6;
}
.ico-arrow.--purple {
  background-color: #DE9DDF;
}

ruby rt {
  margin-bottom: 1px;
  font-size: 0.4375rem;
  line-height: 175%;
  letter-spacing: -8%;
}

.symbol {
  position: relative;
  font-size: 1.35em;
  line-height: 1;
  top: 0.125rem;
}

@media (max-width: 750px) {
  .special-char {
    margin-left: -0.5em;
  }
}

.c-btn.btn_link {
  -webkit-box-shadow: none;
          box-shadow: none;
}
.c-btn.btn_link span {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
@media (min-width: 751px) {
  .c-btn.btn_link + .btn_link {
    margin-left: 0.5rem;
  }
}
@media (max-width: 750px) {
  .c-btn.btn_link {
    width: auto;
    min-width: 15.625rem;
    padding: 0.3125rem 1rem 0.3125rem 1.375rem;
    line-height: 1.23;
    gap: 1rem;
  }
  .c-btn.btn_link + .btn_link {
    margin-top: 0.5rem;
  }
  .c-btn.btn_link.w-100 {
    width: 100%;
  }
  .c-btn.btn_link.--btn-lg {
    border-radius: 3.75rem;
    gap: 0.3125rem;
  }
  .c-btn.btn_link.--btn-small {
    min-width: 12.125rem;
  }
}

/*
* PAGE MATERIALITY DETAIL
*/
.tab-scroll {
  --scrollbar-height: 0.25rem;
  --scrollbar-track: rgba(#fff, 0);
  --scrollbar-thumb: #000;
  position: relative;
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  -ms-touch-action: pan-x;
      touch-action: pan-x;
  position: relative;
}
.tab-scroll__viewport {
  width: 100%;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.tab-scroll__viewport::-webkit-scrollbar {
  display: none;
  width: 0;
  height: 0;
}
.tab-scroll__content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 100%;
}
.tab-scroll__bar {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: var(--scrollbar-height);
  pointer-events: none;
}
.--nav-bottom .tab-scroll__bar {
  top: 0;
  bottom: auto;
}
.tab-scroll__track {
  width: 100%;
  height: 100%;
  position: relative;
  background: var(--scrollbar-track);
  border-radius: 6.1875rem;
}
.tab-scroll__thumb {
  position: absolute;
  top: 0;
  left: 0;
  width: 5.1875rem;
  height: 100%;
  opacity: 0.6;
  visibility: hidden;
  background: var(--scrollbar-thumb);
  border-radius: inherit;
  pointer-events: auto;
  cursor: -webkit-grab;
  cursor: grab;
  -ms-touch-action: none;
      touch-action: none;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
.tab-scroll__thumb:active {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
@media (min-width: 751px) and (hover: hover) {
  .tab-scroll__thumb:hover {
    opacity: 0.75;
  }
}
.tab-nav {
  position: relative;
  margin-bottom: 0.25rem;
}
.tab-nav.--nav-bottom {
  margin-block: 0.25rem 0;
}
.tab-nav.--nav-bottom .ico-circle-arrow {
  margin-top: -1.25rem;
}
@media (min-width: 751px) {
  .tab-nav {
    margin-bottom: 0.25rem;
  }
}
.tab-nav .ico-circle-arrow {
  right: 0;
  margin-top: -0.625rem;
  width: 2rem;
  height: 2rem;
  border: 1px solid #009FB9;
}
@media (max-width: 750px) {
  .tab-nav .ico-circle-arrow {
    display: none;
  }
}
.tab-nav .ico-circle-arrow:before {
  background-size: 0.75rem;
}
.tab-nav .ico-circle-arrow.is-end {
  right: auto;
  left: 0;
  -webkit-transform: translateX(-50%) scaleX(-1);
          transform: translateX(-50%) scaleX(-1);
}
@media (max-width: 750px) {
  .tab-nav .ico-circle-arrow {
    display: none !important;
  }
}
.tab-nav-list {
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  min-width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 0.25rem;
}
.--nav-bottom .tab-nav-list {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
@media (min-width: 751px) {
  .tab-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 0.25rem;
  }
}
.tab-nav-item a {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 0.6875rem 1rem;
  min-height: 3.5rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: inherit;
  text-decoration: none;
  font-size: 0.75rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
  font-weight: 600;
  color: #fff;
  background-color: #009FB9;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
  border-radius: 1rem 1rem 0 0;
}
@media (min-width: 751px) and (hover: hover) {
  .tab-nav-item a:hover {
    color: #009FB9;
    background-color: #fff;
  }
}
@media (min-width: 751px) {
  .tab-nav-item a {
    padding: 1.125rem 2.5rem 0.875rem;
    font-size: 1rem;
    line-height: 1.5;
    border-radius: 1rem 1rem 0 0;
  }
  .tab-nav-item a:focus-visible {
    outline-offset: -2px;
  }
}
.--nav-bottom .tab-nav-item a {
  padding-block: 0.875rem 1.125rem;
  border-radius: 0 0 1rem 1rem;
}
@media (max-width: 750px) {
  .--nav-bottom .tab-nav-item a {
    padding-block: 0.6875rem 1rem;
  }
}
.tab-nav-item.is-active.--nav-bottom a {
  padding-block: 1.125rem 1.375rem;
}
@media (max-width: 750px) {
  .tab-nav-item.is-active.--nav-bottom a {
    padding-block: 1.125rem 1rem;
  }
}
.tab-nav-item.is-active a {
  padding: 1.25rem 1rem 1rem;
  min-height: 4rem;
  color: #009FB9;
  background-color: #fff;
}
@media (min-width: 751px) {
  .tab-nav-item.is-active a {
    padding: 1.375rem 2.5rem 1.125rem;
  }
}
.tab-container {
  background-color: #fff;
  padding: 2.5rem 1.5rem;
}
@media (min-width: 751px) {
  .tab-container {
    padding: 2.5625rem 0 6.4375rem;
  }
}

@media (min-width: 751px) {
  .materiality_wrap {
    width: 82rem;
    margin-inline: auto;
  }
}
.materiality_tab {
  margin-bottom: 7.5rem;
}
@media (min-width: 751px) {
  .materiality_tab {
    margin-bottom: 7.5rem;
  }
}
.materiality_article p a {
  color: inherit;
}
@media (min-width: 751px) {
  .materiality_article {
    padding-right: 3.5rem;
  }
}
.materiality_article .card_block {
  margin-block: 2.5rem;
  padding: 1.125rem 1rem 1.5rem;
  border-radius: 1rem;
  background-color: #E6EAEB;
  overflow: hidden;
}
.materiality_article .card_block:last-child {
  margin-bottom: 0;
}
@media (min-width: 751px) {
  .materiality_article .card_block {
    margin-block: 5rem 0;
    padding: 1.5rem 1.5rem;
    border-radius: 1rem;
  }
  .materiality_article .card_block.mt-66 {
    margin-block: 4.125rem;
  }
}
.materiality_article .card_ttl {
  margin-bottom: 1rem;
  padding-left: 1.75rem;
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 700;
  color: #009FB9;
  background: url("../img/materiality/voice_dot.webp") no-repeat left 0.5625rem center;
  background-size: 0.5rem auto;
}
@media (min-width: 751px) {
  .materiality_article .card_ttl {
    margin-bottom: 1.5rem;
    padding-left: 1.8125rem;
    font-size: 1.5rem;
  }
}
.materiality_article .card_list--bg {
  background-color: #fff;
  padding: 2.5rem 1.5rem;
  border-radius: 0.5rem;
}
@media (max-width: 750px) {
  .materiality_article .card_list--bg {
    padding: 1.5rem 1.5rem;
  }
}
.materiality_article .card_list--bg .card_item {
  padding: 0;
}
.materiality_article .card_item {
  padding: 1.5rem 1.5rem;
  font-size: 0.875rem;
  line-height: 2;
  font-weight: 400;
  border-radius: 0.5rem;
  background-color: #fff;
}
@media (min-width: 751px) {
  .materiality_article .card_item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 2.5rem;
    padding: 2.5rem 1.5rem;
    border-radius: 0.5rem;
    font-size: 0.875rem;
  }
  .materiality_article .card_item.--reverse .card_desc {
    -webkit-box-ordinal-group: 0;
        -ms-flex-order: -1;
            order: -1;
  }
}
@media (max-width: 750px) {
  .materiality_article .card_img {
    margin-bottom: 1.5rem;
  }
}
@media (min-width: 751px) {
  .materiality_article .card_img {
    width: 10.25rem;
  }
}
.materiality_article .card_desc {
  letter-spacing: 0;
}
@media (min-width: 751px) {
  .materiality_article .card_desc {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.materiality_article .card_pos {
  display: block;
  font-weight: 500;
  font-size: 0.75rem;
  line-height: 1.5;
  letter-spacing: 0;
}
@media (max-width: 750px) {
  .materiality_article .card_pos {
    margin-bottom: 0.25rem;
  }
}
@media (min-width: 751px) {
  .materiality_article .card_pos {
    font-size: 0.75rem;
    letter-spacing: 0.02em;
  }
}
.materiality_article .card_name {
  padding-bottom: 0.75rem;
  margin-bottom: 1rem;
  font-size: 1.125rem;
  line-height: 1.5;
  font-weight: 700;
  border-bottom: 0.125rem solid #E6EAEB;
  letter-spacing: 0;
}
@media (min-width: 751px) {
  .materiality_article .card_name {
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 0.125rem solid #E6EAEB;
    font-size: 1.25rem;
    letter-spacing: 2%;
  }
}
.materiality_article .card_name.--txt-lg {
  font-weight: 500;
}
@media (min-width: 751px) {
  .materiality_article .card_name.--txt-lg {
    font-size: 1.5rem;
    letter-spacing: 4%;
  }
}
.materiality_article .card_note {
  margin-top: 1rem;
}
@media (min-width: 751px) {
  .materiality_article .card_note {
    margin-top: 1rem;
  }
}
.materiality_article .card_btn {
  margin-top: 1rem;
}
@media (min-width: 751px) {
  .materiality_article .card_btn {
    margin-block: 1rem 0;
  }
}
@media (max-width: 750px) {
  .materiality_article .topic_block .card_name {
    padding-bottom: 1rem;
  }
}
.materiality_article .topic_img--bg {
  background-color: #F3F5F5;
  border-radius: 0.375rem;
  padding: 0.625rem;
}
@media (max-width: 750px) {
  .materiality_article .topic_img {
    margin-top: 1.5rem;
  }
}
@media (min-width: 751px) {
  .materiality_article .topic_img {
    width: 18.1875rem;
  }
}
.materiality_article .testimonial_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2.5rem;
}
@media (max-width: 750px) {
  .materiality_article .testimonial_list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.5rem;
  }
}
.materiality_article .testimonial_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.75rem;
}
.materiality_article .testimonial_item .testimonial_img {
  width: 5rem;
  min-width: 5rem;
  border-radius: 0.25rem;
}
.materiality_article .article_data {
  color: #009FB9;
  text-align: center;
  background-color: #F3F5F5;
  border-radius: 0.5rem;
  min-height: 9.375rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.materiality_article .article_data p {
  font-size: 0.875rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 8%;
}
@media (max-width: 750px) {
  .materiality_article .article_data p {
    font-size: 0.75rem;
  }
}
.materiality_article .article_data .txt_lg {
  font-size: 1.25rem;
  font-weight: bold;
}
.materiality_article .article_data .txt_lg .number {
  font-size: 2.625rem;
  font-family: Inter, "Outfit", sans-serif;
}
@media (max-width: 750px) {
  .materiality_article .article_data .txt_lg {
    font-size: 0.9375rem;
  }
  .materiality_article .article_data .txt_lg .number {
    font-size: 1.875rem;
  }
}
.materiality_article .article_data .txt_note {
  margin-top: 0;
}
.materiality_article .card_block .article_data {
  min-height: auto;
}

.materiality_h3 {
  margin-bottom: 2.5rem;
  font-weight: 600;
  font-size: 1.125rem;
  line-height: 1.75;
  letter-spacing: 0.04em;
}
@media (min-width: 751px) {
  .materiality_h3 {
    margin-bottom: 2.5rem;
    font-size: 1.5rem;
  }
}

.relation {
  padding-block: 2.5rem 1.5rem;
  border-radius: 1rem;
  background-color: #E6EAEB;
}
@media (min-width: 751px) {
  .relation {
    padding-block: 2.5rem;
    border-radius: 2rem;
  }
}
.relation_head {
  text-align: center;
}
.relation_list {
  width: 21.5rem;
  margin-inline: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 0.25rem;
  list-style: none;
}
@media (min-width: 751px) {
  .relation_list {
    width: 66.625rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 1.375rem 1.375rem;
  }
}
.relation_item {
  position: relative;
  border-radius: 0.5rem;
  background: #fff;
  background-size: 100% 100%;
}
@media (min-width: 751px) {
  .relation_item {
    width: 15.625rem;
    border-radius: 0.5rem;
    background: #fff url(../img/materiality/relation_bg_orange.webp) no-repeat;
    background-size: 100% 100%;
  }
}
.relation_item:after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 0.5rem;
  border: 0.125rem solid #E6EAEB;
  pointer-events: none;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}
.relation_item.is-current:after {
  border-color: currentColor;
}
@media (min-width: 751px) and (hover: hover) {
  .relation_item:hover:after {
    border-color: currentColor;
  }
}
.relation_item a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  color: inherit;
  text-decoration: none;
  font-weight: 500;
  font-size: 0.875rem;
  line-height: 1.4;
  letter-spacing: 0.04em;
}
@media (max-width: 750px) {
  .relation_item a {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 1rem;
    padding: 1.25rem 2.9375rem;
    height: 4.75rem;
  }
}
@media (min-width: 751px) {
  .relation_item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-flow: column;
            flex-flow: column;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    height: 6.375rem;
    padding: 1.125rem;
  }
}
.relation_item.--orange {
  color: #F29700;
  background-image: url("../img/materiality/relation_bg_orange.webp");
}
@media (max-width: 750px) {
  .relation_item.--orange {
    background-image: url("../img/materiality/relation_bg_orange_sp.webp");
  }
}
.relation_item.--red {
  color: #EA4740;
  background-image: url("../img/materiality/relation_bg_red.webp");
}
@media (max-width: 750px) {
  .relation_item.--red {
    background-image: url("../img/materiality/relation_bg_red_sp.webp");
  }
}
.relation_item.--yellow {
  color: #E7D100;
  background-image: url("../img/materiality/relation_bg_yellow.webp");
}
@media (max-width: 750px) {
  .relation_item.--yellow {
    background-image: url("../img/materiality/relation_bg_yellow_sp.webp");
  }
}
.relation_item.--green {
  color: #04CB54;
  background-image: url("../img/materiality/relation_bg_green_dark.webp");
}
@media (max-width: 750px) {
  .relation_item.--green {
    background-image: url("../img/materiality/relation_bg_green_dark_sp.webp");
  }
}
.relation_item.--green-light {
  color: #B0E201;
  background-image: url("../img/materiality/relation_bg_green.webp");
}
@media (max-width: 750px) {
  .relation_item.--green-light {
    background-image: url("../img/materiality/relation_bg_green_sp.webp");
  }
}
.relation_item.--blue {
  color: #00BAD6;
  background-image: url("../img/materiality/relation_bg_blue.webp");
}
@media (max-width: 750px) {
  .relation_item.--blue {
    background-image: url("../img/materiality/relation_bg_blue_sp.webp");
  }
}
.relation_item.--purple {
  color: #DE9DDF;
  background-image: url("../img/materiality/relation_bg_purple.webp");
}
@media (max-width: 750px) {
  .relation_item.--purple {
    background-image: url("../img/materiality/relation_bg_purple_sp.webp");
  }
}
.relation_item .number {
  line-height: 1.5;
  font-size: 0.875rem;
  font-weight: 700;
  font-family: "Outfit", sans-serif;
}
@media (min-width: 751px) {
  .relation_item .number {
    font-size: 0.875rem;
  }
}
.relation_item span {
  color: #464B4D;
}
.relation_item .ico-arrow {
  position: absolute;
  top: 50%;
  right: 1rem;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background-image: url("../common/images/ico_arrow_right.svg");
  background-size: 0.4375rem auto;
  background-position: left 0.5625rem center;
}
@media (max-width: 750px) {
  .relation_item .ico-arrow {
    right: 1.875rem;
  }
}

.column {
  padding-block: 5rem 2.5rem;
}
@media (min-width: 751px) {
  .column {
    padding-block: 7.5rem 1.0625rem;
  }
}
.column_head {
  text-align: center;
}
@media (min-width: 751px) {
  .column_inner {
    width: 78.375rem;
    margin-inline: auto;
  }
}
.column_list:not(.slick-initialized) {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media (max-width: 750px) {
  .column_list:not(.slick-initialized) .column_item {
    margin-left: -1.5rem;
  }
}
@media (min-width: 751px) {
  .column_list:not(.slick-initialized) .column_item {
    width: 26.125rem;
  }
}
.column_item {
  position: relative;
  padding-inline: 1.5rem 0;
}
@media (max-width: 750px) {
  .column_item {
    width: 21.75rem;
  }
}
@media (min-width: 751px) {
  .column_item {
    padding-inline: 1.6875rem;
  }
}
.column_img {
  width: 100%;
  border-radius: 1rem;
  overflow: hidden;
  -webkit-transition: opacity 0.2s;
  transition: opacity 0.2s;
}
@media (max-width: 750px) {
  .column_img {
    margin-bottom: 1.1875rem;
  }
}
@media (min-width: 751px) {
  .column_img {
    width: 100%;
    border-radius: 1rem;
  }
}
@media (min-width: 751px) and (hover: hover) {
  .column_img:hover {
    opacity: 0.7;
  }
}
.column_label {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: 600;
  color: #009FB9;
  background-color: #F3F5F5;
  letter-spacing: 2%;
  left: 1.5rem;
  min-width: 5.8125rem;
  padding: 0 0.5rem;
  font-size: 0.8125rem;
  height: 1.875rem;
  line-height: 1.875rem;
  border-radius: 0 0 0.5rem 0;
}
@media (min-width: 751px) {
  .column_label {
    left: 1.6875rem;
    min-width: 6.5rem;
    padding: 0 0.625rem;
    font-size: 0.875rem;
    height: 2.0625rem;
    line-height: 2.0625rem;
    border-radius: 0 0 0.5rem 0;
  }
}
.column_link {
  display: inline-block;
  color: #464B4D;
  text-decoration: none;
}
@media (max-width: 750px) {
  .column_link {
    padding-inline: 0.9375rem;
  }
}
@media (min-width: 751px) {
  .column_link {
    margin: 1rem 1rem 0;
    letter-spacing: 2%;
  }
  .column_link:after {
    width: 0.875rem;
    height: 0.875rem;
    margin-left: 0.5625rem;
  }
}
@media (min-width: 751px) {
  .column .slick-arrow {
    -webkit-box-shadow: 0rem 0.125rem 1.5rem 0.1875rem rgba(0, 78, 91, 0.04);
            box-shadow: 0rem 0.125rem 1.5rem 0.1875rem rgba(0, 78, 91, 0.04);
  }
}
.column .slick-prev {
  margin-top: -1.875rem;
  left: 0;
}
@media (min-width: 751px) {
  .column .slick-prev {
    left: -0.5625rem;
  }
}
.column .slick-next {
  margin-top: -1.875rem;
  right: 0;
}
@media (min-width: 751px) {
  .column .slick-next {
    right: -0.5625rem;
  }
}

.--video-large {
  margin-inline: auto;
  max-width: 42.5rem;
}
.--video-large + .btn_link {
  margin-top: 0;
}

.img_bg {
  border-radius: 0.5rem;
  overflow: hidden;
  background-color: #F4F2EB;
}

.img_outline {
  padding: 0.5rem;
  border-radius: 0.5rem;
  overflow: hidden;
  border: 0.125rem solid #E6EAEB;
}
@media (min-width: 751px) {
  .img_outline {
    padding: 0.9375rem;
  }
}

.img_rounded {
  border-radius: 0.5rem;
  overflow: hidden;
}
@media (max-width: 750px) {
  .img_rounded {
    border-radius: 0.375rem;
  }
}

.img_border {
  border: 0.0625rem solid #E6EAEB;
}

.--img-styl02 {
  padding: 2.5rem 1.5rem;
}
.--img-styl02 .img_wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 1.5rem;
}
@media (min-width: 751px) {
  .--img-styl02 .img_wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
  }
  .--img-styl02 .img_wrapper .article_img {
    width: 23.3125rem;
  }
}
.--img-styl02 .article_img {
  margin: 0;
}
.--img-styl02 .article_caption {
  margin-block: 0.5rem 0;
}

@media (max-width: 750px) {
  .--img-styl03 .article_img {
    margin-inline: auto;
    width: 16.25rem;
    text-align: center;
  }
}

@media (max-width: 750px) {
  .--img-styl04 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row wrap;
            flex-flow: row wrap;
    gap: 2.5rem 1.25rem;
  }
  .--img-styl04 .article_col {
    width: calc(50% - 0.625rem);
  }
}

@media (min-width: 751px) {
  .article_row .article_col {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 0px;
            flex: 1 1 0;
    min-width: 0;
  }
  .article_row .w-467 {
    width: 29.1875rem;
  }
  .article_row .w-260 {
    width: 16.25rem;
  }
  .article_row .w-238 {
    width: 14.875rem;
  }
  .article_row .w-238 img {
    width: 100%;
  }
}
@media (max-width: 750px) {
  .article_row .article_col:not(:first-child) .article_ttl {
    margin-top: 0;
  }
}
.article_dl.--border {
  padding: 0.875rem 0.875rem 1rem;
  border: 0.125rem solid #E6EAEB;
  border-radius: 0.5rem;
}
.article_dl.--border-grey {
  padding: 1rem;
  border: 0.125rem solid #E6EAEB;
  border-radius: 0.5rem;
}
.article_dl.--border-grey:first-of-type {
  margin-top: 2.5rem;
}
.article_dl.--border-grey + .--border-grey {
  margin-top: 0.5rem;
}
.article_dl.--dot-rect dt:before {
  content: "";
  display: inline-block;
  vertical-align: middle;
  width: 3rem;
  min-width: 3rem;
  height: 3rem;
  border-radius: 100%;
  background: url(../img/materiality/ico_dot_blue.webp) no-repeat;
  background-size: 100% auto;
}
.article_dl dt {
  margin-bottom: 0.3125rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  gap: 0.5rem;
  font-size: 1.125rem;
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 600;
}
.article_dl dt em {
  min-width: 3rem;
  height: 3rem;
  padding-inline: 0.625rem;
  text-align: center;
  font-style: normal;
  font-size: 1rem;
  line-height: 3rem;
  color: #009FB9;
  letter-spacing: 8%;
  background-color: #EDF9FA;
  border-radius: 1.5rem;
}
.article_dl dd {
  padding-left: 3.5rem;
  letter-spacing: 0;
}

.p-technology-innovation .graph {
  margin-top: 2.5rem;
  font-size: 1.125rem;
  line-height: 1.75;
  letter-spacing: 0;
}
.p-technology-innovation .graph_ttl {
  padding: 0.625rem;
  text-align: center;
  color: #fff;
  font-weight: 500;
  letter-spacing: 0;
  background-color: #00BAD6;
  border-radius: 0.5rem;
}
.p-technology-innovation .graph_subtll {
  position: relative;
  z-index: 2;
  margin-block: 0.5rem 0;
  padding: 1rem;
  background-color: #F3F5F5;
  border: 0.125rem solid #E6EAEB;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 1rem;
  border-radius: 0.5rem;
}
@media (min-width: 751px) {
  .p-technology-innovation .graph_subtll {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row;
            flex-flow: row;
    gap: 1rem;
  }
}
.p-technology-innovation .graph_subtll_left {
  text-align: center;
  color: #fff;
  background-color: #00BAD6;
  border-radius: 0.25rem;
}
@media (max-width: 750px) {
  .p-technology-innovation .graph_subtll_left {
    padding: 0.625rem;
  }
}
@media (min-width: 751px) {
  .p-technology-innovation .graph_subtll_left {
    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;
    min-width: 7.5rem;
    min-height: 4rem;
  }
}
.p-technology-innovation .graph_subtll_right {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.p-technology-innovation .graph .article_dl_list {
  overflow: hidden;
  padding-top: 0.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-flow: column;
          flex-flow: column;
  gap: 0.5rem;
}
.p-technology-innovation .graph .article_dl_subttl {
  font-weight: 500;
  font-size: 1rem;
}
.p-technology-innovation .graph .article_dl {
  position: relative;
  z-index: 0;
  width: 50.375rem;
  margin-left: auto;
  font-size: 0.875rem;
  line-height: 1.75;
  font-weight: 400;
  padding-block: 0.875rem 0.875rem;
}
@media (max-width: 750px) {
  .p-technology-innovation .graph .article_dl {
    width: 18.875rem;
  }
}
.p-technology-innovation .graph .article_dl:before {
  content: "";
  position: absolute;
  top: 50%;
  right: 100%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 5rem;
  height: 0.125rem;
  background-color: #E6EAEB;
}
@media (max-width: 750px) {
  .p-technology-innovation .graph .article_dl:before {
    width: 1.25rem;
  }
}
.p-technology-innovation .graph .article_dl:after {
  content: "";
  position: absolute;
  z-index: -1;
  bottom: 50%;
  left: -5rem;
  width: 0.125rem;
  height: 150%;
  background-color: #E6EAEB;
}
@media (max-width: 750px) {
  .p-technology-innovation .graph .article_dl:after {
    left: -1.25rem;
  }
}

@media (max-width: 750px) {
  .p-safety-traffic .topic_block .topic_img {
    margin-block: 0 1.5rem;
  }
}

@media (min-width: 751px) {
  .p-urban-renewal .materiality_article {
    max-width: 55rem;
    margin-inline: auto;
    padding: 0;
  }
}

@media (min-width: 751px) {
  .p-urban-community .--equal-height {
    min-height: 3.5em;
  }
}

@media (min-width: 751px) {
  .p-environment-biodiversity .--equal-height {
    min-height: 16.25rem;
  }
}
@media (max-width: 750px) {
  .p-environment-biodiversity .--img-04 .w-147 img {
    width: 9.75rem;
  }
}
@media (min-width: 751px) {
  .p-environment-biodiversity .--img-04 {
    gap: 0.5rem;
  }
  .p-environment-biodiversity .--img-04 .w-147 {
    width: 9.1875rem;
  }
  .p-environment-biodiversity .--img-04 .col-right {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}

@media (min-width: 751px) {
  .p-environment-decarbonization .--equal-height {
    height: 100%;
  }
}

.p-growth-infrastructure-support .--equal-height {
  border: 0.125rem solid #E6EAEB;
}
@media (min-width: 751px) {
  .p-growth-infrastructure-support .--equal-height {
    height: 14.5625rem;
  }
}

@media (min-width: 751px) {
  .p-foundation-workplace .--img-02 {
    width: 32.6875rem;
  }
  .p-foundation-workplace .--img-03 {
    width: 21.375rem;
  }
}

@media (max-width: 750px) {
  .p-environment-communication .--img-01 img {
    width: 100%;
  }
}
@media (min-width: 751px) {
  .p-environment-communication .--img-01 .col_right img {
    height: 10.8125rem;
    width: auto;
  }
}

.p-foundation-corporate-finance .--row-01 {
  gap: 1rem;
}
.p-foundation-corporate-finance .article_table .--table-01 th, .p-foundation-corporate-finance .article_table .--table-01 td {
  padding-inline: 0.75rem;
}
.p-foundation-corporate-finance .article_table .--table-01 .txt-right {
  padding-inline: 0 1.25rem;
}
.p-foundation-corporate-finance .article_table .--table-02 tbody th {
  padding-inline: 0.9375rem;
}
.p-foundation-corporate-finance .article_table thead th {
  text-align: center;
}
.p-foundation-corporate-finance .article_table .txt-right {
  text-align: right;
}
@media (min-width: 751px) {
  .p-foundation-corporate-finance .--row-01 {
    -webkit-box-pack: stretch;
        -ms-flex-pack: stretch;
            justify-content: stretch;
  }
  .p-foundation-corporate-finance .--row-01 .article_video {
    width: 21.875rem;
  }
}

.p-service-customer .--table-01 .--th-01 {
  border-bottom: 0;
}
.p-service-customer .--table-01 .--th-02 {
  padding: 0;
}
.p-service-customer .--table-01 .--th-02 span {
  position: relative;
  margin-left: auto;
  display: block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.625rem;
  border-left: 1px solid #E6EAEB;
  background: rgba(255, 255, 255, 0.5);
}
@media (min-width: 751px) {
  .p-service-customer .--table-01 .--th-02 span {
    width: 50%;
    padding: 0.625rem 1.5rem;
  }
}
.p-service-customer .--table-01 .--th-02 span:before {
  content: "";
  position: absolute;
  top: -1px;
  right: 0;
  width: 100%;
  border-top: 1px solid #E6EAEB;
}