body {
  overflow-x: clip;
}
table, th, td {
  line-height: 1.75;
  vertical-align: middle;
}
.flex.type02 .flex-title-text {
  font-size: 14px;
}

.symbol-circle {
  display: inline-flex;
  width: .5em;
  justify-content: center;
}
.relationship-tbl .list-indentation,
.materiality-chart .chart-tbl ul li:has(.symbol-circle) {
  position: relative;
  text-indent: 0;
  padding-left: 1em;
}
.relationship-tbl .list-indentation .symbol-circle,
.materiality-chart .chart-tbl ul li .symbol-circle{
  position: absolute;
  left: .25em;
}
.materiality-chart li span:is(.brown, .green) {
  font-size: 120%;
  line-height: 1;
  margin-right: 1px;
}
.symbol-circle-big {
  font-size: 200%;
  line-height: .5 !important;
  position: relative;
  padding-top: 0 !important;
}

.color-blue {
  color: #004098;
}
.p-sustainability__message__text.color-blue {
  font-weight: bold;
}
.p-sustainability__message__text {
  display: inline-block;
  width: 100%;
  white-space: normal;
  /*word-break: break-all;*/
  overflow-wrap: break-word;
}

.box-rating__lcol .box-rating-inner ul li,
.box-rating__rcol .box-rating-inner ul li {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}
.box-rating__lcol .box-rating-inner ul li figure,
.box-rating__rcol .box-rating-inner ul li figure {
  width: 100%;
  justify-content: flex-start;
  padding-left: 20px;
  height: auto;
  min-height: 100px;
}
.box-rating__lcol .box-rating-inner ul li > p,
.box-rating__rcol .box-rating-inner ul li > p {
  padding-left: 20px;
  width: 100%;
}

.box-rating__lcol .box-rating-inner ul li h6::before,
.box-rating__rcol .box-rating-inner ul li h6::before {
  display: none;
}
.box-rating-inner__title-inner{
  background: linear-gradient(transparent 55%, #f2f2f2 -20px);
  box-decoration-break: clone;
  padding-left: 7px;
  padding-right: 7px;
  padding-bottom: 4px;
}
.box-line .box-rating__lcol .box-rating-inner ul li figure img,
.box-line .box-rating__rcol .box-rating-inner ul li figure img {
  width: 100% !important;
  height: auto;
  object-fit: contain;
  max-width: 200px;
  max-height: 100px;
}
@media screen and (min-width: 1025px) {
  .box-rating__lcol .box-rating-inner ul li,
  .box-rating__rcol .box-rating-inner ul li {
    margin-bottom: 60px;
  }
}


.box-rating__lcol .box-rating-inner ul li h6, .box-rating__rcol .box-rating-inner ul li h6 {
  min-height: 45px;
}

@media screen and (max-width: 767px) {
  .box-rating__lcol .box-rating-inner ul li h6, .box-rating__rcol .box-rating-inner ul li h6 {
    min-height: 1px;
    text-align: center;
  }
  .box-rating__lcol .box-rating-inner ul li,
  .box-rating__rcol .box-rating-inner ul li {
    margin-bottom: 60px;
    justify-content: center;
  }
  .box-line .box-rating__lcol .box-rating-inner ul li figure img, .box-line .box-rating__rcol .box-rating-inner ul li figure img {
    object-position: center;
    padding-left: 0;
    margin: 0 auto;
  }
  .box-rating__lcol .box-rating-inner ul li > p, .box-rating__rcol .box-rating-inner ul li > p {
    padding-left: 0;
    text-align: center;
  }
  .box-rating__lcol .box-rating-inner ul li p.single, .box-rating__rcol .box-rating-inner ul li p.single {
    justify-content: center;
  }
}

.materiality-group-txt.txt-wht {
  font-size: min(1.68cqw,14px);
}
.materiality-group-txt.txt-wht.txt01 {
  top: 12.5cqw;
  letter-spacing: -0.05em;
}
.materiality-group-txt.list,
.materiality-group-txt.list.list02,
.materiality-group-txt.list.list03 {
  font-size: min(1.6cqw,15px);
}
.materiality-group-txt.list.list02 {
    left: 2.3cqw;
}
.materiality-group-txt.list.list03 {
    left: 25.3cqw;
}


/* ------------------------------------------------------------
  追従アンカーリンク
------------------------------------------------------------ */
#section-01 {
  padding-top: 80px;
}
#section-01,
#section-02,
#section-03,
#section-04,
#section-05,
#section-06,
#section-07 {
  padding-bottom: 80px;
}
#section-02,
#section-03,
#section-04,
#section-05,
#section-06,
#section-07,
#section-08  {
  padding-top: 100px;
  margin-top: -100px;
}
.p-sustainability .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
.p-sustainability section + section .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1) {
  margin-top: 0!important;
}

@media print, screen and (min-width:641px) {
  .p-sustainability section + section#section-02 .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
  .p-sustainability section + section#section-03 .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
  .p-sustainability section + section#section-04 .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
  .p-sustainability section + section#section-05 .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
  .p-sustainability section + section#section-06 .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
  .p-sustainability section + section#section-07 .f-container .c-heading-2.c-heading-2--ribbon:nth-of-type(1),
  .p-sustainability section + section#section-08 .f-container .c-heading-2__subtitle:nth-of-type(1) {
    margin-top: 0;
  }
  .intro.p-sustainability__message__text,
  section:has(#section-01) {
    padding-bottom: 60px;
  }
  section:has(#section-01) {
    padding-bottom: 100px;
  }
  #section-01 {
    padding-top: 200px;
    margin-top: -120px;
  }
  #section-02,
  #section-03,
  #section-04,
  #section-05,
  #section-06,
  #section-07,
  #section-08  {
    padding-top: 890px;
    margin-top: -890px;
    padding-top: 940px;
    margin-top: -940px;
  }

  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-01 {
    padding-top: 330px;
    margin-top: -330px;
  }
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-02,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-03,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-04,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-05,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-06,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-07,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-08  {
    padding-top: 450px;
    margin-top: -450px;
  }
  .p-sustainability section:has(#section-01),
  .p-sustainability #section-02,
  .p-sustainability #section-03,
  .p-sustainability #section-04,
  .p-sustainability #section-05,
  .p-sustainability #section-06,
  .p-sustainability #section-07 {
    padding-bottom: 130px;
  }
}

@media print, screen and (min-width:768px) {
  #section-01 {
    padding-top: 200px;
    margin-top: -120px;
  }
  #section-02,
  #section-03,
  #section-04,
  #section-05,
  #section-06,
  #section-07,
  #section-08  {
    padding-top: 520px;
    margin-top: -520px;
    padding-top: 500px;
    margin-top: -500px;
  }


  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-01 {
    padding-top: 220px;
    margin-top: -220px;
  }
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-02,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-03,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-04,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-05,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-06,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-07,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-08  {
    padding-top: 260px;
    margin-top: -260px;
  }
  .p-sustainability section:has(#section-01),
  .p-sustainability #section-02,
  .p-sustainability #section-03,
  .p-sustainability #section-04,
  .p-sustainability #section-05,
  .p-sustainability #section-06,
  .p-sustainability #section-07 {
    padding-bottom: 120px;
  }
}

@media print, screen and (min-width:980px) {
  .intro.p-sustainability__message__text,
  section:has(#section-01) {
    padding-bottom: 100px;
  }
  section:has(#section-01) {
    padding-bottom: 100px;
  }
  #section-01 {
    padding-top: 180px;
    margin-top: -100px;
  }
  #section-02,
  #section-03,
  #section-04,
  #section-05,
  #section-06,
  #section-07,
  #section-08  {
    padding-top: 520px;
    margin-top: -520px;
  }

  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-01 {
    padding-top: 80px;
    margin-top: -80px;
  }
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-02,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-03,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-04,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-05,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-06,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-07,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-08 {
    padding-top: 300px;
    margin-top: -300px;
    padding-top: 240px;
    margin-top: -240px;
  }
  .p-sustainability section:has(#section-01),
  .p-sustainability #section-02,
  .p-sustainability #section-03,
  .p-sustainability #section-04,
  .p-sustainability #section-05,
  .p-sustainability #section-06,
  .p-sustainability #section-07 {
    padding-bottom: 100px;
  }
}

@media print, screen and (min-width: 1280px) {
  .intro.p-sustainability__message__text,
  section:has(#section-01) {
    padding-bottom: 60px;
  }
  section:has(#section-01) {
    padding-bottom: 100px;
  }
  #section-01 {
    padding-top: 150px;
    margin-top: -70px;
  }
  #section-02,
  #section-03,
  #section-04,
  #section-05,
  #section-06,
  #section-07,
  #section-08  {
    padding-top: 420px;
    margin-top: -420px;
  }

  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-01 {
    padding-top: 30px;
    margin-top: -30px;
  }
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-02,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-03,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-04,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-05,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-06,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-07,
  .l-root-container:has(.p-zeroshock-localnavi-section.is-fixed) #section-08  {
    padding-top: 240px;
    margin-top: -240px;
  }
}