@media print {

  html,
  body {
    height: auto !important;
  }

  body {
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
  }

  .Header,
  .subContents,
  .Footer,
  .topicPath,
  .PageTop,
  .esg_vc_tab,
  .ancherNav,
  .non-print,
  .esg_sub_tab {
    display: none !important;
  }

  .mainContents {
    border-top: none !important;
  }

  .sectionBlock {
    margin-bottom: 50px;
  }

  .pcNone {
    display: none !important;
  }

  .spNone {
    display: block !important;
  }

  .spNone.esg-db_print {
    display: block !important;
  }

  .esg-topLink {
    display: block !important;
  }

  .esg-topLink > div {
    float: left !important;
  }

  .esg-topLink_in {
    width: 70% !important;
    padding-right: 20px !important;
  }

  .esg-topLink_in_2 {
    width: 30% !important;
    padding-top: 10px !important;
    padding-bottom: 5px !important;
    padding-left: 10px !important;
  }

  .top_sectionBlock.topImg {
    background: url(/esg/img/img_top_fig01.jpg) center !important;
    height: 280px !important;
    background-size: contain !important;
    background-repeat: no-repeat !important;
  }

  body {
    min-width: 100% !important;
  }

  .esg-sup {
    font-size: 100% !important;
    vertical-align: top !important;
    position: relative !important;
    top: -0.2em !important;
  }

  .l-column {
    min-width: 100% !important;
  }

  .mainContents {
    width: 100% !important;
  }

  .articleContents {
    width: 100% !important;
  }

  .esg-grid00 {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: start !important;
    justify-content: space-between !important;
    overflow-y: visible !important;
  }

  .esg-ie-flex {
    display: block !important;
  }

  .esg-ie-flex > div {
    display: inline-block !important;
    margin-right: 3px !important;
  }

  .esg-grid00_2 {
    display: flex !important;
    justify-content: space-between !important;
  }

  .esg-grid01 {
    display: flex !important;
    flex-flow: row wrap !important;
    align-items: start !important;
    justify-content: space-between !important;
  }

  .esg-grid02-Col_txt {
    width: 59% !important;
    justify-content: space-between !important;
  }

  .esg-grid02-txt {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    line-height: 2 !important;
  }

  .esg-grid02-Col {
    width: 49% !important;
    justify-content: space-between !important;
    overflow-y: visible !important;
  }

  .esg-grid02-Col_img {
    width: 38% !important;
    justify-content: space-between !important;
    overflow-y: visible !important;
  }

  .esg-grid-jc_unset {
    justify-content: unset !important;
  }

  .esg-grid04-Col {
    width: calc(25% - 25px) !important;
    position: relative !important;
    cursor: pointer !important;
  }

  .esg-grid03-Col {
    width: 32% !important;
  }

  .esg-grid03-2-Col {
    width: 32% !important;
    margin-right: 18px !important;
  }

  .esg-grid03-Col.esg-top-feature {
    width: 33.3% !important;
  }

  img {
    border-style: none !important;
    max-width: 100% !important;
    height: auto !important;
  }

  .ArticleLabelWrap {
    display: -ms-flexbox !important;
    display: flex !important;
  }

  .ArticleLabel {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
    -ms-flex-pack: end !important;
    justify-content: end !important;
    margin: 0 0 0px !important;
  }

  .ArticleLabel {
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-direction: column !important;
    flex-direction: column !important;
    -ms-flex-pack: end !important;
    justify-content: end !important;
    margin: 0 0 30px !important;
  }

  .ArticleLabelWrap {
    margin-bottom: 0px !important;
  }

  /*
	.ArticleLabel {
		height: 0px !important;
	}
*/
  .esg-grid02m-txt {
    width: 79% !important;
  }

  .esg-grid02m-img {
    width: 20% !important;
  }

  .barLabel {
    margin-top: 20px !important;
  }

  .barLabel {
    font-size: 1.8rem !important;
  }

  .esg-Panel01 {
    padding: 40px 65px !important;
    background: #f7fbfe !important;
  }

  .esg-linkList04 {
    margin-bottom: 20px;
  }

  .esg-linkList04 li {
    position: relative;
    display: inline-block;
    text-align: left;
    width: 49%;
    padding-left: 15px;
    padding-right: 15px;
    margin-bottom: 10px;
    vertical-align: top;
  }

  .esg-scroll {
    overflow: inherit !important;
    white-space: inherit !important;
    clear: both;
  }

  .esg-Table02 {
    width: 100% !important;
  }

  /*追加*/
  .esgp-width-05 {
    width: 5% !important;
  }

  .esgp-width-10 {
    width: 10% !important;
  }

  .esgp-width-15 {
    width: 15% !important;
  }

  .esgp-width-20 {
    width: 20% !important;
  }

  .esgp-width-25 {
    width: 25% !important;
  }

  .esgp-width-30 {
    width: 30% !important;
  }

  .esgp-width-35 {
    width: 35% !important;
  }

  .esgp-width-50 {
    width: 50% !important;
  }

  .esgp-width-60 {
    width: 60% !important;
  }

  .esgp-width-70 {
    width: 70% !important;
  }

  .esgp-width-75 {
    width: 75% !important;
  }

  .esgp-width-80 {
    width: 80% !important;
  }

  .esgp-width-90 {
    width: 90% !important;
  }

  .esgp-height-24cm {
    height: 24.5cm !important;
    max-width: unset;
    width: auto;
  }
  .esgp-height-23cm {
    height: 23cm !important;
    max-width: unset;
    width: auto;
  }

  .esgp-margin-0 {
    margin: 0 !important;
    margin-top: 0 !important;
  }

  /*高さ揃え*/
  .esg-grid00--h {
    flex-flow: nowrap !important;
    justify-content: left !important;
    gap: 0.4cm !important;
  }

  .esg-grid00--h.esg-p {
    width: fit-content;
  }

  /*
.esg-grid02-Col--h {
	width: fit-content !important;
}*/

  .esg-tabwidth--250,
  .esg-tabwidth--300 {
    width: unset;
  }

  .esg-img--h,
  .esg-height--250 {
    height: 5cm !important;
    width: auto !important;
  }

  .esg-height--180 {
    height: 4cm !important;
    width: auto !important;
    object-fit: cover !important;
  }

  .esg-height--200 {
    height: 5cm !important;
    width: auto !important;
    object-fit: cover !important;
  }

  .esg-img--h3 {
    height: 5cm !important;
    width: auto !important;
  }

  .esg-pcwidth--300 {
    width: 7.5cm !important;
  }

  .esg-pcwidth--380.esg-p {
    width: 7.5cm !important;
  }

  /*esg*/
  .esg-imgTit01.esgp-tac {
    text-align: center !important;
  }

  /*social*/

  .esg-bg-gr {
    background-color: #f7fef7 !important;
  }

  .esg-grid--qr.esg-p {
    width: 55% !important;
    flex-flow: nowrap !important;
  }

  /*改行*/
  .esg-bba {
    break-before: avoid;
  }

  .esg-baa {
    break-after: avoid;
  }

  .esg-bbp {
    break-before: page !important;
  }

  .esg-bia {
    break-inside: avoid;
  }

  h2,
  h3 {
    break-after: avoid;
  }

  .esg-figTit01,
  .esg-flostR,
  .esg-flostL {
    break-after: avoid;
  }

  .esg-notice00,
  .esg-notice01,
  .esg-notice02,
  .esg-notice03 {
    break-before: avoid;
    break-inside: avoid;
  }

  .mainContents {
    padding-inline: 0;
  }

  .ArticleLabel {
    min-height: unset;
  }
}

/** toppage **/

.esg-topTop {
  width: 36%;
  padding-left: 20px;
}

.esg_top_blue {
  background: #e5f1f9;
  padding: 30px 25px;
  margin: 0 auto;
  text-align: center;
}

.esg_top_blue p {
  text-align: center;
  width: auto;
  display: inline;
  padding-left: 20px;
}

.esg_top_gray {
  background: #f1f1f1;
  border: 3px solid #e5f1f9;
  border-bottom: none;
}

.esg-grid03-Col.esg-top-btn {
  background: #e5f1f9;
  margin-bottom: 20px;
  font-size: 1.5rem !important;
  text-align: center;
}

.esg-grid03-Col.esg-top-btn a {
  display: block;
  padding: 30px 0px;
}

.esg-grid03-Col.esg-top-btn:nth-child(4) {
  margin-bottom: 0px;
}

.esg-grid03-Col.esg-top-btn:nth-child(5) {
  margin-bottom: 0px;
}

.esg-grid03-Col.esg-top-btn:nth-child(6) {
  margin-bottom: 0px;
}

.esg-grid03-Col.esg-top-feature {
  width: 32%;
  margin-left: 1%;
  margin-bottom: 1%;
}

/*.esg-grid03-Col.esg-top-feature {
    width: 33.3%;
}

.esg-topTop_in > div > a{
    display: block;
    width: 100%;
    background: #e5f1f9;
    padding: 25.5px;
    border: 1px solid #cfcfcf;
    border-top: none;
}

.esg-topTop_in > div:first-child > a{
    display: block;
    width: 100%;
    background: #e5f1f9;
    padding: 25.5px;
    border: 1px solid #cfcfcf;
}
*/

.img_hov:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

.top_sectionBlock {
  margin-bottom: 100px;
}

.top_sectionBlock.topImg {
  background: url(/esg/img/img_top_fig01.jpg) center;
  background-size: contain;
  background-repeat: no-repeat;
  height: 800px;
}

.topImg .text01 {
  margin-bottom: 0px !important;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
}

.branchBox {
  margin: 0 auto;
  width: 1170px;
}

.branchBox h2 {
  margin: 0 0 35px;
  font-size: 3.5rem;
  font-weight: normal;
  text-align: center;
  letter-spacing: 6px;
}

.branchBox h2 span {
  margin-top: 5px;
  display: block;
  color: #65a1d6;
  font-size: 2rem;
  letter-spacing: 2px;
}

.branchBox .text01 {
  margin-bottom: 47px;
  font-size: 1.6rem;
  line-height: 2;
  text-align: center;
}

.branchBox h2.esg_top_txt {
  margin: 0 0 35px;
  font-size: 3rem !important;
  font-weight: normal;
  text-align: center;
  letter-spacing: 6px;
}

.branchBox h2.esg_top_txt_2 {
  margin: 0 0 35px;
  font-size: 2rem !important;
  font-weight: normal;
  text-align: center;
  letter-spacing: 6px;
}

.branchBox h2.esg_top_txt span {
  margin-top: 5px;
  display: block;
  color: #65a1d6;
  font-size: 1.8rem !important;
  letter-spacing: 2px;
}

.esg-grid00_2 {
  display: flex;
  justify-content: space-between;
}

.esg-grid04-Col {
  width: calc(25% - 25px);
  position: relative;
  cursor: pointer;
}

.top_label li a {
  display: block;
  padding: 10px 7px;
  text-align: center;
  border: 1px solid #0063b6;
  border-bottom: none;
  color: #0063b6;
  font-size: 1.4rem;
  -webkit-transition: all 0.2s ease;
  transition: all 0.2s ease;
}

.top_label li:last-child > a {
  border-bottom: 1px solid #0063b6 !important;
}

.top_label li a:hover {
  background: #0063b6;
  color: #fff;
  text-decoration: none;
}

.esg-topDl {
  display: table;
  background-color: #e5f1f9;
  width: 100%;
  padding: 10px 20px;
}

.esg-topDl > div {
  display: table-cell;
  vertical-align: middle;
}

.esg-topDl-in {
  width: 30%;
  font-size: 1.7rem;
  border-right: 1px solid #dddddd;
}

.esg-topDl-in_2 {
  width: 70%;
  padding-left: 3%;
}

.esg-topDl-in_2 p {
  margin: 0;
}

.esg-topDl-in_2 a {
  font-size: 2rem;
  text-decoration: underline;
}

.esg-topDl-in_2 a:hover {
  text-decoration: none;
}

.esg-topLink {
  display: block;
}

.esg-topLink > div {
  float: left;
}

.esg-topLink_in {
  width: 70%;
  padding-right: 20px;
}

.esg-topLink_in table {
  background-color: #eeeeee;
  width: 100%;
  height: 140px;
  border: 1px solid #cfcfcf;
}

.esg-topLink_in table td {
  border: 1px solid #cfcfcf;
  text-align: center;
}

.esg-topLink_in table td a {
  text-decoration: underline;
}

.esg-topLink_in table td a:hover {
  text-decoration: none;
}

.esg-topLink_in_3 {
  width: 100%;
  margin-bottom: 25px;
}

.esg-topLink_in_3 table {
  background-color: #eeeeee;
  width: 100%;
  height: 100px;
  border: 1px solid #cfcfcf;
}

.esg-topLink_in_3 table td {
  border: 1px solid #cfcfcf;
  text-align: center;
}

.esg-topLink_in_3 table td a {
  text-decoration: underline;
}

.esg-topLink_in_3 table td a:hover {
  text-decoration: none;
}

.esg-topLink_in_2 {
  background-color: #eeeeee;
  border: 1px solid #cfcfcf;
  width: 30%;
  height: 140px;
  padding-top: 8px;
  padding-bottom: 10px;
  padding-left: 20px;
}

.esg-topLink_in_2 p {
  margin: 3px;
}

.esg-topFeature a {
  padding-bottom: 25px;
  display: block;
}

.esg-topGrid_001 {
  width: 49%;
  margin: auto;
}

@media (max-width: 767px) {
  .esg-topGrid_001 {
    width: 100%;
    padding: 10px 10px 0 10px;
  }

  .esg-topGrid_001 .esg_top_gray {
    background: none;
  }
}

.esg-topGrid_italic {
  font-style: italic;
}

.esg-topGrid_pl50 {
  padding-left: 50px;
}

/** KJWblock **/

.esg-kjwBlock01 {
  margin-bottom: 2em;
}

.esg-kjwBlock01-inner {
  width: 200px;
  background: #f7fbfe;
  padding: 10px 20px;
  border-radius: 10px;
  margin-left: auto;
  letter-spacing: normal !important;
}

.esg-kjwBlock01-inner02 {
  width: 50%;
  background: #f7fbfe;
  padding: 10px 20px;
  border-radius: 10px;
}

.esg-kjwtrxt {
  width: 200px;
  display: inline-block;
}

.esg-kjwBlock01-inner li {
  letter-spacing: 3px;
}

.esg-kjwCircle01 {
  display: inline-block;
  width: 30px;
  height: 30px;
  text-align: center;
  line-height: 30px;
  margin-right: 10px;
  border-radius: 50%;
  background: #ffffff;
}

ul.esg-kjw01 li {
  display: inline-block;
  font-size: 150%;
  color: #999;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  vertical-align: middle;
  border-radius: 50%;
  background: #ffffff;
}

li.esg-k-on01 {
  color: #003366 !important;
}

li.esg-j-on01 {
  color: #ff0000 !important;
}

li.esg-w-on01 {
  color: #00b050 !important;
}

ul.esg-kjw01 {
  position: absolute;
  top: 16.5%;
  bottom: 0;
  right: 2%;
}

.esg-titleBlock01 {
  position: relative;
}

/** image grid **/

.esg-grid00 {
  display: flex;
  flex-flow: row wrap;
  align-items: start;
  justify-content: space-between;
}

.esg-grid00.esg-top-feature {
  justify-content: center !important;
}

.esg-grid01 {
  display: flex;
  flex-flow: row wrap;
  align-items: start;
  justify-content: space-between;
}

.esg-grid01-Col {
  width: 100%;
  text-align: center;
}

.esg-grid02-Col {
  width: 49%;
  justify-content: space-between;
}

.esg-grid03-Col {
  width: 32%;
}

.esg-grid03-2-Col {
  width: 32%;
  margin-right: 18px;
}

/*.esg-grid04-Col {
    width: 24%;
}*/

.esg-grid02-Col_txt {
  width: 59%;
  justify-content: space-between;
}

.esg-grid02-Col_img {
  width: 38%;
  justify-content: space-between;
}

.esg-grid02-txt {
  margin-top: 0px !important;
  margin-bottom: 0px !important;
  line-height: 2;
}

.esg-grid02m-txt {
  width: 79%;
}

.esg-grid02m-img {
  width: 20%;
}

.esg-imgTit01 {
  margin-top: 10px;
  font-size: 85%;
  text-align: left !important;
}

.esg-figTit01 {
  position: relative;
  text-align: left;
  padding-left: 20px;
}

.esg-figTit01::before {
  position: absolute;
  content: "\25A0";
  width: 20px;
  height: 20px;
  left: 0;
  color: #0063b6;
}

.esg-figTit-pink {
  position: relative;
  text-align: left;
  padding-left: 20px;
}

.esg-figTit-pink::before {
  position: absolute;
  content: "\25A0";
  width: 20px;
  height: 20px;
  left: 0;
  color: #dd7687;
}

.esg-figTit-green {
  position: relative;
  text-align: left;
  padding-left: 20px;
}

.esg-figTit-green::before {
  position: absolute;
  content: "\25A0";
  width: 20px;
  height: 20px;
  left: 0;
  color: #93b843;
}

.esg-figTit-orenge {
  position: relative;
  text-align: left;
  padding-left: 20px;
}

.esg-figTit-orenge::before {
  position: absolute;
  content: "\25A0";
  width: 20px;
  height: 20px;
  left: 0;
  color: #e1a82c;
}

.esg-topEsgBtn:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

/** notice text **/

.esg-notice00 {
  line-height: 1.5;
  text-indent: -1.3em;
  margin-left: 1em;
  font-size: 85%;
}

.esg-notice01 {
  line-height: 1.5;
  text-indent: -3.2em;
  margin-left: 3.2em;
  font-size: 85%;
}

.esg-notice02 {
  line-height: 1.5;
  text-indent: -2em;
  margin-left: 2em;
  font-size: 85%;
}

.esg-notice03 {
  line-height: 1.5;
  text-indent: -2em;
  margin-left: 2em;
  font-size: 85%;
}

.esg-noticeX {
  line-height: 1.5;
  font-size: 85%;
}

.esg-noticeflex, .esg-noticeflex--reg {
  display: flex;
  gap: 0.5em;
}
.esg-noticeflex--reg > span {
  display: block;
}
.esg-noticeflex--reg {
  margin-bottom: 0;
}
.esg-noticeflex--reg + .esg-noticeflex--reg {
  margin-top: 0.5em;
}
.esg-noticeflex > span {
  display: block;
  font-size: 85%;
}

.esg-noticeflex > span:first-of-type, .esg-noticeflex--reg > span:first-of-type {
  flex-shrink: 0;
}

/** text **/

.esg-txtkanekablue {
  position: relative;
  color: #004ea2 !important;
  padding-left: 23px;
}

.esg-txtkanekablue::before {
  position: absolute;
  content: "\25A0";
  width: 20px;
  height: 20px;
  left: 0px;
  color: #0063b6;
}

.esg-txtknkblue {
  color: #004ea2 !important;
}

.esg-txtgray01 {
  color: #d0d0d0 !important;
}

.esg-txtblue01 {
  color: #20b3d3 !important;
}

.esg-txtgreen01 {
  color: #92b742 !important;
}

.esg-txtgreen02 {
  color: #009836 !important;
}

.esg-txtlinegreen02 {
  text-decoration: underline #009836;
}

.esg-txtpink01 {
  color: #dd7686 !important;
}

.esg-txtyellow01 {
  color: #e0a82b !important;
}

.esg-txtCenter {
  text-align: center !important;
}

.esg-txtRight {
  text-align: right !important;
}

.esg-txtLeft {
  text-align: left !important;
}

.esg-flostL {
  float: left;
}

.esg-flostR {
  float: right;
}

.esg-clear {
  clear: both;
}

/** table **/

.esg-Table01 {
  width: 100%;
}

.esg-Table01 tbody th {
  font-weight: 400;
  background-color: #eee;
}

.esg-Table01 tbody td,
.esg-Table01 tbody th {
  text-align: left;
  vertical-align: middle;
  padding: 14px 20px;
  border: solid 1px #ddd;
}

.esg-Table01 thead th {
  text-align: center;
  vertical-align: middle;
  padding: 14px 20px;
  border: solid 1px #ddd;
  background-color: #eee;
}

.esg-Table02 {
  width: 100%;
}

.esg-Table02 tbody th {
  font-weight: 400;
  background-color: #eee;
}

.esg-Table02 tbody th {
  text-align: left;
  vertical-align: middle;
  padding: 14px 20px;
  border: solid 1px #ddd;
}

.esg-Table02 tbody td {
  text-align: right;
  vertical-align: middle;
  padding: 14px 20px;
  border: solid 1px #ddd;
}

.esg-Table02 thead th {
  text-align: center;
  vertical-align: middle;
  padding: 14px 20px;
  border: solid 1px #ddd;
  background-color: #eee;
}

/* h2 title */

.esg-ttl01 {
  padding: 25px 20px;
  margin: 1em 0;
  border: 2px solid #005ca2;
  border-radius: 6px;
  font-size: 2.5rem;
  text-align: center;
  line-height: 1;
  font-weight: 700;
  color: #006abc;
}

span.esg-ttl01-bd {
  border-bottom: 1px solid #7fb4dd;
  display: inline-block;
  vertical-align: bottom;
  margin-left: 20px;
  margin-right: 20px;
  width: 50px !important;
}

span.esg-ttl01-bd_2 {
  border-bottom: 1px solid #7fb4dd;
  display: inline-block;
  vertical-align: middle;
  margin-left: 20px;
  margin-right: 20px;
  width: 50px !important;
}

span.esg-txtEn01 {
  font-size: 1.5rem;
  color: #7fb4dd;
}

/* link button*/

.esg-list_box01 {
  margin-bottom: 10px;
  align-items: stretch;
  clear: both;
  display: flex;
  flex-wrap: wrap;
  margin-right: -1%;
  margin-left: -1%;
}

.esg-list_box01 li {
  list-style-type: none;
  display: flex;
  box-sizing: border-box;
  margin-bottom: 16px;
  flex: 0 0 48%;
  max-width: 48%;
  margin-right: 1%;
  margin-left: 1%;
  border: 1px solid #ccc;
  border-left: 3px solid #0272c0;
}

.esg-list_box01 a {
  height: 60px;
  padding: 1em 0.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: #eee;
  max-width: 100%;
  box-sizing: border-box;
  text-align: center;
  text-decoration: none;
  position: relative;
  vertical-align: middle;
  line-height: 1.4;
}

.esg-list_box02 {
  margin-bottom: 10px;
  align-items: stretch;
  clear: both;
  display: flex;
  flex-wrap: wrap;
  margin-right: -1%;
  margin-left: -1%;
}

.esg-list_box02 li {
  list-style-type: none;
  display: flex;
  box-sizing: border-box;
  margin-bottom: 16px;
  flex: 0 0 31%;
  max-width: 31%;
  margin-right: 1%;
  margin-left: 1%;
  border: 1px solid #ccc;
  border-left: 3px solid #0272c0;
}

.esg-list_box02 a {
  height: 60px;
  padding: 1em 0.5em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background-color: #eee;
  max-width: 100%;
  box-sizing: border-box;
  text-align: center;
  text-decoration: none;
  position: relative;
  vertical-align: middle;
  line-height: 1.4;
}

.ov {
  transition: opacity 0.3s;
}

/* linkList */

.esg-linkList01 {
  margin-bottom: 20px;
}

.esg-linkList01 li {
  position: relative;
  display: inline-block;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
}

.esg-linkList01 li::before {
  position: absolute;
  content: "";
  border-left: 9px solid #0063b6;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  width: 0px;
  height: 0px;
  top: 5px;
  left: 0;
}

.esg-linkList02 {
  position: relative;
  text-align: left;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 10px;
}

.esg-linkList02::before {
  position: absolute;
  content: "";
  border-left: 9px solid #0063b6;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  width: 0px;
  height: 0px;
  top: 5px;
  left: 0;
}

.esg-linkList03 {
  margin-bottom: 20px;
}

.esg-linkList03 li {
  position: relative;
  display: inline-block;
  text-align: left;
  width: 49%;
  padding-right: 15px;
  margin-bottom: 10px;
}

.esg-linkList04 {
  margin-bottom: 20px;
}

.esg-linkList04 li {
  position: relative;
  display: inline-block;
  text-align: left;
  width: 49%;
  padding-left: 15px;
  padding-right: 15px;
  margin-bottom: 10px;
  vertical-align: top;
}

.esg-linkList04 li::before {
  position: absolute;
  content: "";
  border-left: 9px solid #0063b6;
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  width: 0px;
  height: 0px;
  top: 5px;
  left: 0;
}

ol.esg-linkList05 {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}

ol.esg-linkList05 li {
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}

ol.esg-linkList05 li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #b3d4fc;
  color: #fff;
  display: block;
  float: left;
  line-height: 22px;
  margin-left: -30px;
  text-align: center;
  height: 22px;
  width: 22px;
  border-radius: 50%;
}

ol.esg-linkList-green {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}

ol.esg-linkList-green li {
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}

ol.esg-linkList-green li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color: #93b843;
  color: #fff;
  display: block;
  float: left;
  line-height: 22px;
  margin-left: -30px;
  text-align: center;
  height: 22px;
  width: 22px;
  border-radius: 50%;
}

ol.esg-report-list {
  text-indent: 1em;
}

.esg-report-list li {
  margin-bottom: 10px;
}

.ancherNav {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
}

.ancherNav li {
  position: relative;
  box-sizing: border-box;
  padding-right: 2em;
  list-style-type: none;
  margin-top: 10px;
  padding-left: 1.5em;
  white-space: nowrap;
}

.ancherNav li a {
  color: #0063b6;
  font-size: 95%;
}

.ancherNav li:before {
  position: absolute;
  content: "";
  border-left: 5px solid transparent;
  border-top: 9px solid #0063b6;
  border-right: 5px solid transparent;
  width: 0px;
  height: 0px;
  top: 7px;
  left: 0;
}

/* box */

.esg-ListPanel01 {
  padding: 40px;
  border: 1px solid #ddd;
}

.esg-ListPanel02 {
  padding: 20px 40px;
  border: 2px solid #005ca2;
}

.esg-Panel01 {
  padding: 40px 65px;
  background: #f7fbfe;
}

.esg-topics {
  padding: 20px 40px 30px 50px;
}

span.esg-topics_ttl {
  display: block;
  font-size: 15px;
  padding: 2px 10px;
  color: #fff;
  width: 76px;
}

span.esg-topics_ttl-2 {
  display: block;
  font-size: 15px;
  padding: 2px 10px;
  color: #fff;
  width: 178px;
}

span.esg-txtbig {
  font-size: 125%;
  font-weight: bold;
}

.-blue {
  background: #0063b6;
}

.-blueline {
  border: 1px solid #0063b6;
}

.-green {
  background: #93b843;
}

.-greenline {
  border: 1px solid #93b843;
}

.-greentxt {
  color: #93b843 !important;
}

.-pinkline {
  border: 1px solid #dd7687;
}

.-pinktxt {
  color: #dd7687 !important;
}

/* policybox */

.esg-policy01 {
  border: 1px solid #d0d0d0;
  border-top: none !important;
}

.esg-policy01-ttl {
  padding: 10px 20px;
  margin: 0 !important;
  background: #006abc;
  color: #fff;
  text-align: center;
  font-size: 1.8rem;
  line-height: 2;
  font-weight: 700;
}

.esg-policy01-txt {
  line-height: 2;
  padding: 0px 25px;
}

/* list */

.esg-list01 {
  padding-left: 30px;
  margin-bottom: 20px;
}

.esg-list01 li {
  position: relative;
  padding-left: 12px;
}

.esg-list01 li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 2px;
  width: 3px;
  height: 3px;
  border-radius: 3px;
  background: #333;
}

.esg-linktxt01 {
  color: #0272c0;
  text-decoration: underline;
}

.esg-list02 {
  margin-bottom: 20px;
}

.esg-list02 li {
  position: relative;
  margin-bottom: 7px;
  padding-left: 12px;
}

.esg-list02 li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 2px;
  width: 3px;
  height: 3px;
  border-radius: 3px;
  background: #333;
}

.esg-list03 {
  margin-bottom: 10px;
}

.esg-list03 li {
  position: relative;
  margin-bottom: 7px;
  padding-left: 16px;
}

.esg-list03 li::before {
  content: "";
  position: absolute;
  top: 0.6em;
  left: 2px;
  width: 5px;
  height: 5px;
  border-radius: 2px;
  background: #004ea2;
}

li.esg-blank::before {
  display: none;
}

/* list_dl */

dl.esg-dl {
  display: flex;
  flex-flow: row wrap;
  align-items: start;
  margin-left: 2em;
}

dl.esg-dl dt {
  width: 25%;
  padding-bottom: 1em;
  color: #0063b6;
}

dl.esg-dl dd {
  width: 75%;
  padding-bottom: 1em;
}

/* philosophy_link */

.philosophy_bg {
  width: 100%;
  background: #e9f3fb;
}

.philosophy_link .esg-linkList02 {
  margin-left: 10%;
}

/* strategy */

.esg_str_ttl {
  color: #004ea2 !important;
  font-size: 3rem;
  text-align: center;
  margin-bottom: 10px;
}

.esg_str_ttl_2 {
  text-align: center;
}

.esg_balloon_right {
  position: relative;
  display: inline-block;
  margin: 1.5em 15px 1.5em 0;
  padding: 25px 23px;
  border-radius: 10px;
  min-width: 120px;
  max-width: 100%;
  color: #fff;
  font-size: 16px;
  background: #004ea2;
}

.esg_balloon_right:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 100%;
  margin-top: -15px;
  border: 15px solid transparent;
  border-left: 15px solid #004ea2;
}

.esg_balloon_right p {
  margin: 0;
  padding: 0;
}

.esg_balloon_right h3 {
  margin-top: 0px;
  margin-bottom: 10px;
}

.esg-parent {
  position: relative;
}

.esg-parent .balloon1 {
  position: absolute;
  top: -10px;
  left: 155px;
}

.esg-parent .balloon2 {
  position: absolute;
  top: -10px;
  left: 155px;
}

@media (max-width: 767px) {
  .esg-parent .balloon1 {
    position: absolute;
    top: -10px;
    left: 105px;
  }

  .esg-parent .balloon2 {
    position: absolute;
    top: -10px;
    left: 105px;
  }
}

/* value-creation_tab */

.esg_vc_tab {
  display: flex;
  flex-flow: row wrap;
  align-items: start;
  margin-bottom: 90px;
}

.esg_vc_tab > div {
  width: 50%;
  border: 1px solid #0063b6;
  text-align: center;
  font-weight: bold;
}

.esg_vc_tab > div > a {
  display: block;
  padding: 17px 0px;
}

.esg_vc_tab_on {
  color: #fff;
  background: #0063b6;
  padding: 17px 0px;
}

.tab_2 > div {
  border-left: none;
}

.tab_2 > div:nth-child(2n + 1) {
  border-left: 1px solid #0063b6;
}

.tab_2 > div:nth-child(n + 3) {
  border-top: none;
}

.tab_2_line {
  padding: 27.5px 0px;
}

.tab_2_line > a {
  display: block;
  padding: 0px 0px !important;
}

.tab_3 > div {
  width: 33.3%;
  border: 1px solid #0063b6;
  text-align: center;
  font-weight: bold;
  border-right: none;
}

.tab_3 > div:last-child {
  border-right: 1px solid #0063b6;
}

.tab_4 > div {
  width: 25%;
  border: 1px solid #0063b6;
  text-align: center;
  font-weight: bold;
  border-right: none;
}

.tab_4 > div:last-child {
  border-right: 1px solid #0063b6;
}

.tab_6 > div {
  width: 33.3%;
  border: 1px solid #0063b6;
  text-align: center;
  font-weight: bold;
  border-left: none;
}

.tab_6 > div:nth-child(3n + 1) {
  border-left: 1px solid #0063b6;
}

.tab_6 > div:nth-child(n + 4) {
  border-top: none;
}

.tab_6 > div:last-child {
  border-right: 1px solid #0063b6;
}

/*

.first_tab {
  margin-bottom: 0px !important;
}

.first_tab > div {
  border-right: none;
  border-bottom: none;
}

.first_tab > div:last-child {
  border-right: 1px solid #0063b6;
  border-bottom: 1px solid #0063b6;
}

.first_tab > div:nth-child(3) {
  border-bottom: 1px solid #0063b6;
}

*/

/* history */

.esg_vc_ttl {
  font-size: 2.4rem;
  color: #0063b6;
}

.esg_history01_tab {
  padding: 10px 30px;
  margin: 0 !important;
  background: #64a9de;
  color: #fff;
  text-align: left;
}

.esg_history01_tab p,
.esg_history02_tab p,
.esg_history03_tab p {
  margin-top: 0px;
  font-size: 1.6rem;
}

.esg_history_ttl {
  color: #fff !important;
  margin-bottom: 5px !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  margin-top: 15px !important;
}

.esg_history_ttl02 {
  color: #0063b6;
}

.esg_history01_panel {
  padding: 20px 30px;
  border: 2px solid #64a9de;
  margin-bottom: 20px;
}

.esg_history01_panel p {
  color: #64a9de;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 5px;
}

.esg_history02_tab {
  padding: 10px 30px;
  margin: 0 !important;
  background: #3d80c2;
  color: #fff;
  text-align: left;
}

.esg_history02_panel {
  padding: 20px 30px;
  border: 2px solid #3d80c2;
  margin-bottom: 20px;
}

.esg_history02_panel p {
  color: #3d80c2;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 5px;
}

.esg_history03_tab {
  padding: 10px 30px;
  margin: 0 !important;
  background: #004ea2;
  color: #fff;
  text-align: left;
}

.esg_history03_panel {
  padding: 20px 30px;
  border: 2px solid #004ea2;
  margin-bottom: 20px;
}

.esg_history03_panel p {
  color: #004ea2;
  font-weight: bold;
  margin-bottom: 5px;
  margin-top: 5px;
}

/* report */

.esg_report_list {
  padding-left: 1em;
  font-size: 1.35rem;
  margin-top: 5px;
  text-align: left;
}

/* highlight */

.esg_ht_mb > div {
  margin-bottom: 50px;
}

/* topcomittment */

.ArticleLabelWrap_tc {
  margin-bottom: 60px;
}

.sectionBlock_tc {
  margin-bottom: 40px;
}

/* 調整用 */

.esg-mT00 {
  margin-top: 0 !important;
}

.esg-mT10 {
  margin-top: 10px !important;
}

.esg-mT20 {
  margin-top: 20px !important;
}

.esg-mT30 {
  margin-top: 30px !important;
}

.esg-mT40 {
  margin-top: 40px !important;
}

.esg-mT50 {
  margin-top: 50px !important;
}

.esg-mB00 {
  margin-bottom: 0 !important;
}

.esg-mB10 {
  margin-bottom: 10px !important;
}

.esg-mB20 {
  margin-bottom: 20px !important;
}

.esg-mB25 {
  margin-bottom: 25px !important;
}

.esg-mB30 {
  margin-bottom: 30px !important;
}

.esg-mB40 {
  margin-bottom: 40px !important;
}

.esg-mB50 {
  margin-bottom: 50px !important;
}

.esg-mL10 {
  margin-left: 10px !important;
}

.esg-mL20 {
  margin-left: 20px !important;
}

.esg-mL30 {
  margin-left: 30px !important;
}

.pct0 {
  width: 0%;
}

.pct1 {
  width: 1%;
}

.pct2 {
  width: 2%;
}

.pct3 {
  width: 3%;
}

.pct4 {
  width: 4%;
}

.pct5 {
  width: 5%;
}

.pct6 {
  width: 6%;
}

.pct7 {
  width: 7%;
}

.pct8 {
  width: 8%;
}

.pct9 {
  width: 9%;
}

.pct10 {
  width: 10%;
}

.pct11 {
  width: 11%;
}

.pct12 {
  width: 12%;
}

.pct13 {
  width: 13%;
}

.pct14 {
  width: 14%;
}

.pct15 {
  width: 15%;
}

.pct16 {
  width: 16%;
}

.pct17 {
  width: 17%;
}

.pct18 {
  width: 18%;
}

.pct19 {
  width: 19%;
}

.pct20 {
  width: 20%;
}

.pct21 {
  width: 21%;
}

.pct22 {
  width: 22%;
}

.pct23 {
  width: 23%;
}

.pct24 {
  width: 24%;
}

.pct25 {
  width: 25%;
}

.pct26 {
  width: 26%;
}

.pct27 {
  width: 27%;
}

.pct28 {
  width: 28%;
}

.pct29 {
  width: 29%;
}

.pct30 {
  width: 30%;
}

.pct31 {
  width: 31%;
}

.pct32 {
  width: 32%;
}

.pct33 {
  width: 33%;
}

.pct34 {
  width: 34%;
}

.pct35 {
  width: 35%;
}

.pct36 {
  width: 36%;
}

.pct37 {
  width: 37%;
}

.pct38 {
  width: 38%;
}

.pct39 {
  width: 39%;
}

.pct40 {
  width: 40%;
}

.pct41 {
  width: 41%;
}

.pct42 {
  width: 42%;
}

.pct43 {
  width: 43%;
}

.pct44 {
  width: 44%;
}

.pct45 {
  width: 45%;
}

.pct46 {
  width: 46%;
}

.pct47 {
  width: 47%;
}

.pct48 {
  width: 48%;
}

.pct49 {
  width: 49%;
}

.pct50 {
  width: 50%;
}

.pct51 {
  width: 51%;
}

.pct52 {
  width: 52%;
}

.pct53 {
  width: 53%;
}

.pct54 {
  width: 54%;
}

.pct55 {
  width: 55%;
}

.pct56 {
  width: 56%;
}

.pct57 {
  width: 57%;
}

.pct58 {
  width: 58%;
}

.pct59 {
  width: 59%;
}

.pct60 {
  width: 60%;
}

.pct61 {
  width: 61%;
}

.pct62 {
  width: 62%;
}

.pct63 {
  width: 63%;
}

.pct64 {
  width: 64%;
}

.pct65 {
  width: 65%;
}

.pct66 {
  width: 66%;
}

.pct67 {
  width: 67%;
}

.pct68 {
  width: 68%;
}

.pct69 {
  width: 69%;
}

.pct70 {
  width: 70%;
}

.pct71 {
  width: 71%;
}

.pct72 {
  width: 72%;
}

.pct73 {
  width: 73%;
}

.pct74 {
  width: 74%;
}

.pct75 {
  width: 75%;
}

.pct76 {
  width: 76%;
}

.pct77 {
  width: 77%;
}

.pct78 {
  width: 78%;
}

.pct79 {
  width: 79%;
}

.pct80 {
  width: 80%;
}

.pct81 {
  width: 81%;
}

.pct82 {
  width: 82%;
}

.pct83 {
  width: 83%;
}

.pct84 {
  width: 84%;
}

.pct85 {
  width: 85%;
}

.pct86 {
  width: 86%;
}

.pct87 {
  width: 87%;
}

.pct88 {
  width: 88%;
}

.pct89 {
  width: 89%;
}

.pct90 {
  width: 90%;
}

.pct91 {
  width: 91%;
}

.pct92 {
  width: 92%;
}

.pct93 {
  width: 93%;
}

.pct94 {
  width: 94%;
}

.pct95 {
  width: 95%;
}

.pct96 {
  width: 96%;
}

.pct97 {
  width: 97%;
}

.pct98 {
  width: 98%;
}

.pct99 {
  width: 99%;
}

.pct100 {
  width: 100%;
}

.esg-history_mB {
  margin-bottom: 15px;
}

.esg-grid-jc_unset {
  justify-content: unset;
}

/*.pcNone {
  display: none;
}*/

@media (max-width: 767px) {
  /** toppage **/

  .esg-scroll table {
    width: 100%;
  }

  .esg-scroll {
    overflow: auto;
    white-space: nowrap;
    clear: both;
  }

  .esg-scroll::-webkit-scrollbar {
    height: 5px;
  }

  .esg-scroll::-webkit-scrollbar-track {
    background: #f1f1f1;
  }

  .esg-scroll::-webkit-scrollbar-thumb {
    background: #bcbcbc;
  }

  .top_sectionBlock.topImg {
    background: none;
    height: auto;
  }

  .top_sectionBlock {
    margin-bottom: 50px;
  }

  .esg-grid03-Col.esg-top-btn {
    width: 49%;
  }

  .esg-grid03-Col.esg-top-btn:nth-child(4) {
    margin-bottom: 20px;
  }

  .esg-grid03-Col.esg-top-feature {
    width: 100%;
  }

  .mB20_sp {
    margin-bottom: 20px;
  }

  .mB50_sp {
    margin-bottom: 50px !important;
  }

  .branchBox {
    width: 100%;
  }

  .branchBox h2 {
    margin-bottom: 20px;
    font-size: 2.6rem;
  }

  .branchBox h2 span {
    margin: 0;
    font-size: 1.5rem;
  }

  .branchBox .text01 {
    margin-bottom: 30px;
    font-size: 1.6rem;
    text-align: center;
  }

  .branchBox h2.esg_top_txt span {
    margin-top: 5px;
    display: block;
    color: #65a1d6;
    font-size: 1.2rem !important;
    letter-spacing: 2px;
  }

  .branchBox h2.esg_top_txt {
    margin: 0 0 35px;
    font-size: 2rem !important;
    font-weight: normal;
    text-align: center;
    letter-spacing: 6px;
  }

  .esg-topTop_in > div:first-child > a {
    padding: 11px;
  }

  .esg-topTop_in > div > a {
    padding: 11px;
  }

  .esg-topDl {
    display: table;
    background-color: #e5f1f9;
    width: 100%;
    padding: 10px;
  }

  .esg-topDl-in {
    width: 35%;
    font-size: 1.6rem;
    padding-right: 10px;
    border-right: 1px solid #dddddd;
  }

  .esg-topDl-in_2 {
    width: 65%;
    padding-left: 3%;
  }

  .esg-topDl-in_2 a {
    font-size: 1.7rem;
    text-decoration: underline;
  }

  .esg-grid00_2 {
    display: block;
    justify-content: space-between;
  }

  .esg-grid04-Col {
    width: 100%;
    margin-bottom: 20px;
    margin-right: 0px;
    margin-left: 0px;
    position: relative;
    cursor: pointer;
  }

  .esg-topLink > div {
    float: none;
  }

  .esg-topLink_in {
    width: 100%;
    padding-right: 0px;
    margin-bottom: 20px;
  }

  .esg-topLink_in_2 {
    background-color: #eeeeee;
    border: 1px solid #cfcfcf;
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
  }

  .esg-topLink_in_2 {
    height: auto;
  }

  .esg-topLink_in_3 table {
    background-color: #eeeeee;
    width: 100%;
    height: 60px;
    border: 1px solid #cfcfcf;
  }

  .esg-topLink_in table {
    background-color: #eeeeee;
    width: 100%;
    height: 100px;
    border: 1px solid #cfcfcf;
  }

  .esg-topLink_in_3 {
    width: 100%;
    margin-bottom: 20px;
  }

  .esg-topLink_in table td {
    border: 1px solid #cfcfcf;
    text-align: center;
    padding: 0px 5px;
  }

  .esg-topFeature a {
    padding-bottom: 10px;
    display: block;
  }

  .spNone {
    display: none !important;
  }

  /*.pcNone {
  display: block !important;
}*/

  .sectionBlock.topImg {
    padding: 29px 5px;
  }

  .esg-topTop {
    margin-top: 10px;
    text-align: center;
    width: 100%;
    padding-left: 0px;
  }

  .branchBox h2.esg_top_txt_2 {
    margin: 0 0 20px;
    font-size: 2rem !important;
    font-weight: normal;
    text-align: center;
    letter-spacing: 6px;
  }

  .esg_top_blue {
    background: #e5f1f9;
    padding: 10px 15px;
  }

  /** subpage **/

  .ancherNav li {
    min-width: 20%;
    white-space: inherit;
  }

  table {
    width: 100%;
  }

  .scroll {
    overflow-x: auto;
  }

  .scroll::-webkit-scrollbar {
    height: 5px;
  }

  .scroll::-webkit-scrollbar-track {
    border-radius: 5px;
    background: #eee;
  }

  .scroll::-webkit-scrollbar-thumb {
    border-radius: 5px;
    background: #666;
  }

  .esg-list01 li {
    position: relative;
    padding-left: 12px;
    text-align: left;
  }

  .esg-linkList03 li {
    position: relative;
    display: block;
    text-align: left;
    width: 100%;
    padding-right: 0px;
    margin-bottom: 10px;
  }

  .esg-linkList04 li {
    position: relative;
    display: block;
    text-align: left;
    width: auto;
    padding-left: 12px;
  }

  #sec01,
  #sec02,
  #sec03,
  #sec04,
  #sec05,
  #sec06,
  #sec07,
  #sec08,
  #sec09,
  #sec10 {
    margin-top: -57px;
    padding-top: 57px;
  }

  /** KJWblock **/

  ul.esg-kjw01 {
    position: absolute;
    top: 14.5%;
    bottom: 0;
    right: 2%;
  }

  ul.esg-kjw01 li {
    display: inline-block;
    font-size: 150%;
    color: #999;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    vertical-align: middle;
    border-radius: 50%;
    background: #ffffff;
  }

  .esg-kjwBlock01-inner {
    width: 180px;
    background: #f7fbfe;
    padding: 10px 15px;
    border-radius: 10px;
    margin-left: auto;
  }

  .esg-kjwBlock01-inner02 {
    width: auto;
    background: #f7fbfe;
    padding: 5px 7px;
    border-radius: 10px;
  }

  .esg-kjwCircle01 {
    display: inline-block;
    width: 20px;
    height: 20px;
    text-align: center;
    line-height: 20px;
    margin-right: 10px;
    border-radius: 50%;
    background: #ffffff;
  }

  /** h2 title **/

  .esg-ttl01 {
    padding: 10px 15px;
    margin: 1em 0;
    border: 2px solid #005ca2;
    border-radius: 6px;
    font-size: 1.8rem;
    text-align: center;
    line-height: 1;
    font-weight: 700;
    color: #006abc;
  }

  span.esg-ttl01-bd {
    border-bottom: 1px solid #7fb4dd;
    display: inline-block;
    vertical-align: bottom;
    margin-left: 10px;
    margin-right: 10px;
    width: 30px !important;
  }

  span.esg-txtEn01 {
    font-size: 1rem;
    color: #7fb4dd;
  }

  /** table **/

  .esg-Table01 tbody td,
  .esg-Table01 tbody th {
    text-align: left;
    vertical-align: top;
    padding: 5px 7px;
    border: solid 1px #ddd;
  }

  .esg-Table01 thead th {
    text-align: center;
    vertical-align: middle;
    padding: 5px 7px;
    border: solid 1px #ddd;
    background-color: #eee;
  }

  .esg-Table02 tbody th {
    text-align: left;
    vertical-align: top;
    padding: 5px 7px;
    border: solid 1px #ddd;
  }

  .esg-Table02 tbody td {
    text-align: right;
    vertical-align: top;
    padding: 5px 7px;
    border: solid 1px #ddd;
  }

  .esg-Table02 thead th {
    text-align: center;
    vertical-align: middle;
    padding: 5px 7px;
    border: solid 1px #ddd;
    background-color: #eee;
  }

  .esg-grid01 {
    margin-bottom: 20px;
  }

  .esg-grid02-Col {
    width: 100%;
    /*text-align: center;*/
    margin-bottom: 20px;
  }

  .esg-grid02-Col_txt {
    width: 100%;
    justify-content: space-between;
    margin-bottom: 1em;
  }

  .esg-grid02-Col_img {
    width: 100%;
    justify-content: space-between;
  }

  .esg-grid02-txt {
    margin-top: 0px !important;
    margin-bottom: 0px !important;
    line-height: 2;
    text-align: left;
  }

  .esg-grid02m-txt {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 1em;
  }

  .esg-grid02m-img {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
    text-align: center;
  }

  .esg-grid03-Col {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 20px;
  }

  .esg-grid03-2-Col {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 20px;
  }

  .esg-grid04-Col {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 20px;
  }

  .esg-policy01-txt {
    line-height: 2;
    padding: 0px 15px;
  }

  /* panelbox */

  .esg-Panel01 {
    padding: 15px;
  }

  .esg-ListPanel01,
  .esg-ListPanel02 {
    padding: 20px;
  }

  .esg-topics {
    padding: 20px 25px 20px 25px;
  }

  /* リスト */

  .esg-linkList01 li::before {
    top: 4.5px;
  }

  .esg-linkList02::before {
    top: 4.5px;
  }

  dl.esg-dl {
    display: flex;
    flex-flow: row wrap;
    align-items: start;
    margin-left: 1em;
  }

  dl.esg-dl dt {
    width: 30%;
    padding-bottom: 1em;
    color: #0063b6;
  }

  dl.esg-dl dd {
    width: 70%;
    padding-bottom: 1em;
  }

  /* strategy */

  .esg_balloon_right {
    margin: 0em 0px 1.5em 0 !important;
  }

  .esg_balloon_right:before {
    content: "";
    position: absolute;
    margin-top: 0px !important;
    border: 15px solid transparent;
    border-top: 15px solid #004ea2;
    top: 100% !important;
    left: 50% !important;
    margin-left: -15px;
  }

  /* value-creation_tab */

  .esg_vc_tab {
    display: flex;
    flex-flow: row wrap;
    align-items: start;
    margin-bottom: 45px;
    font-size: 1.2rem;
  }

  .esg_vc_tab > div > a {
    display: block;
    padding: 15px 0px;
  }

  .esg_vc_tab_on {
    color: #fff;
    background: #0063b6;
    padding: 15px 0px;
  }

  .esg_vc_tab.tab_3 > div {
    width: 50%;
    border-right: 1px solid #0063b6;
    padding: 15px 0px;
  }

  .esg_vc_tab.tab_3 > div:first-child {
    border-right: none !important;
  }

  .esg_vc_tab.tab_3 > div > a {
    display: block;
    padding: 0px;
  }

  .tab_3 > div:last-child {
    border-right: 1px solid #0063b6;
    border-top: 0px solid #0063b6;
  }

  .esg_vc_tab.tab_4 > div {
    width: 50%;
    border-bottom: 0px;
    border-right: 0px;
    padding: 15px 0px;
  }

  .esg_vc_tab.tab_4 > div:nth-child(2n) {
    border-right: 1px solid #0063b6;
  }

  .esg_vc_tab.tab_4 > div:nth-child(3) {
    border-bottom: 1px solid #0063b6;
  }

  .esg_vc_tab.tab_4 > div:nth-child(4) {
    border-bottom: 1px solid #0063b6;
  }

  .esg_vc_tab.tab_4.first_tab > div:nth-child(3) {
    border-bottom: none;
  }

  .esg_vc_tab.tab_4.first_tab > div:nth-child(4) {
    border-bottom: none;
  }

  .esg_vc_tab.tab_4 > div > a {
    display: block;
    padding: 0px;
  }

  .esg_vc_tab.tab_4.last_tab {
    border-bottom: 1px solid #0063b6;
  }

  .tab_6 > div {
    width: 50%;
    border: 1px solid #0063b6;
    text-align: center;
    font-weight: bold;
    border-left: none;
  }

  .tab_6 > div:nth-child(3n + 1) {
    border-left: none;
  }

  .tab_6 > div:nth-child(2n + 1) {
    border-left: 1px solid #0063b6;
  }

  .tab_6 > div:nth-child(n + 3) {
    border-top: none;
  }

  .tab_3_line_sp > a {
    padding: 20px 0px !important;
  }

  .tab_1_col_sp {
    display: block;
  }

  .tab_1_col_sp > div {
    width: 100%;
    border: 1px solid #0063b6;
    text-align: center;
    font-weight: bold;
  }

  .tab_1_col_sp.tab_2 > div {
    border-left: 1px solid #0063b6;
  }

  .tab_1_col_sp.tab_2 > div:nth-child(n + 1) {
    border-top: none;
  }

  .tab_1_col_sp.tab_2 > div:first-child {
    border-top: 1px solid #0063b6;
  }

  .tab_2_line {
    padding: 15px 0px !important;
  }

  /*history*/

  .esg_history01_tab {
    padding: 5px 20px;
  }

  .esg_Hhistory_ttl {
    color: #fff !important;
    margin-bottom: 10px !important;
    font-size: 2rem !important;
    font-weight: 700 !important;
    margin-top: 15px !important;
  }

  .esg_history01_panel {
    padding: 5px 20px;
    border: 2px solid #64a9de;
  }

  .esg-history_mB {
    margin-bottom: -20px;
  }

  /* topcomittment */

  .ArticleLabelWrap_tc {
    margin-bottom: 30px;
  }

  .sectionBlock_tc {
    margin-bottom: 20px;
  }

  /* social */
  span.esg-ttl01-bd_2 {
    border-bottom: 1px solid #7fb4dd;
    display: inline-block;
    vertical-align: middle;
    margin-left: 20px;
    margin-right: 20px;
    width: 20px !important;
  }
}

.esg-grid--qr {
  display: flex;
  flex-flow: row wrap;
  justify-content: left;
  align-items: flex-end;
}

/*
20220201 esg/governance/corporate/ */
.esg-list02 .list-roman-numerals {
  position: relative;
  margin-bottom: 7px;
  padding-left: 30px;
}

.esg-list02 .list-roman-numerals::before {
  content: "";
  position: absolute;
  left: 2px;
  top: 0;
  width: 0;
  height: 0;
  border-radius: 0;
}

.esg-list02 .list-roman-numerals:nth-child(1):before {
  content: "i";
}

.esg-list02 .list-roman-numerals:nth-child(2):before {
  content: "ii";
}

.esg-list02 .list-roman-numerals:nth-child(3):before {
  content: "iii";
}

.esg-list02 .list-roman-numerals:nth-child(4):before {
  content: "iv";
}

.esg-list02 .list-roman-numerals:nth-child(5):before {
  content: "v";
}

.esg-list02 .list-roman-numerals:nth-child(6):before {
  content: "vi";
}

.esg-list02 .list-roman-numerals:nth-child(7):before {
  content: "vii";
}

.esg-list02 .list-roman-numerals:nth-child(8):before {
  content: "viii";
}

/*
20220214 data/outline/history */
.esg-grid05-Col_txt {
  display: flex;
  width: 65%;
  justify-content: space-between;
}

.esg-grid05_year {
  width: 20%;
}

.esg-grid05_txt {
  width: 80%;
}

.esg-grid05-Col_img {
  width: 30%;
}

@media (max-width: 767px) {
  .esg-grid05-Col_txt {
    width: 100%;
  }

  .esg-grid05-Col_img {
    width: 100%;
    margin-right: 0px;
    margin-left: 0px;
    margin-bottom: 20px;
  }
}


/*
20220427 esg/strategy/rb/fusion.html */
.esg-txtknkgreen {
  color: #4db56a;
}

.esg-list03green li::before {
  background: #4db56a;
}

.esg-txtknkorange {
  color: #fd7e00;
}

.esg-list03orange li::before {
  background: #fd7e00;
}

.esg-txtknkpink {
  color: #fc0fc0;
}

.esg-list03pink li::before {
  background: #fc0fc0;
}

.esg-txtknklightblue {
  color: #71c5e8;
}

.esg-list03lightblue li::before {
  background: #71c5e8;
}

.esg-txtknklightred {
  color: #dd7687;
}

.esg-grid-fusion {
  display: flex;
  align-items: stretch;
  width: 500px;
  margin: auto;
  justify-content: space-around;
  margin-bottom: 40px;
}

.esg-grid-fusion img:first-child {
  width: 28%;
}

.esg-grid-fusion img:last-child {
  width: 68%;
}

.esg-img-small img {
  width: 25%;
}

.esg-width-10 {
  width: 10%;
}

.esg-width-15 {
  width: 15%;
}

.esg-width-20 {
  width: 20%;
}

.esg-width-25 {
  width: 25%;
}

.esg-width-30 {
  width: 30%;
}

.esg-width-35 {
  width: 35%;
}

.esg-width-40 {
  width: 40%;
}
.esg-width-45 {
  width: 45%;
}
.esg-width-50 {
  width: 50%;
}

.esg-width-55 {
  width: 55%;
}

.esg-width-60 {
  width: 60%;
}

.esg-width-65 {
  width: 65%;
}

.esg-width-70 {
  width: 70%;
}

.esg-width-80 {
  width: 80%;
}

.esg-width-90 {
  width: 90%;
}

.esg-width-100 {
  width: 100%;
}

.esg-parent .balloon99 {
  position: absolute;
  top: -33px;
  left: 155px;
}

.esg-parent .balloon99 img {
  width: 150px;
}

.esg-parent .balloon100 {
  position: absolute;
  top: -33px;
  right: 118px;
}

.esg-parent .balloon100 img {
  width: 150px;
}


@media only screen and (max-width: 767px) {
  .esg-grid-fusion {
    width: 100%;
  }

  .esg-img-small img {
    width: 50%;
  }

  .esg-width-30,
  .esg-width-35,
  .esg-width-40,
  .esg-width-45,
  .esg-width-50,
  .esg-width-55,
  .esg-width-60,
  .esg-width-65,
  .esg-width-70,
  .esg-width-80,
  .esg-width-90,
  .esg-width-100 {
    width: 100%;
  }

  .esg-width-60-sp {
    width: 60%;
  }

  .esg-parent .balloon99 {
    position: absolute;
    top: -29px;
    left: 105px;
  }

  .esg-parent .balloon99 img {
    width: 130px;
  }

  .esg-parent .balloon100 {
    position: absolute;
    top: -38px;
    right: 0;
  }

  .esg-parent .balloon100 img {
    width: 130px;
  }
}

@media (min-width: 1160px) {
  .esg-parent .balloon100 {
    right: 262px;
  }
}

.esg-font-bold {
  font-weight: bold;
}


/*20220509 esg/strategy/hr/ */
.hr__table {
  border: solid 1px blue;
  text-align: center;
}

.hr__table th {
  background-color: aliceblue;
}

.hr__table caption {
  caption-side: bottom;
  text-align: left;
}

.hr__table .oneLine td {
  padding: 10px 0;
}

.hr__table .oneLine th {
  padding: 10px 0;
}

.blue__table {
  border: solid 1px #004ea2;
}

.blue__table td {
  padding: 10px;
  border: solid 1px #004ea2;
}

.blue__tag {
  background-color: #004ea2;
  color: white;
  padding: 5px;
}


/*20220510 esg/strategy/makeitreal/ */
.carbon__table {
  border-collapse: separate;
  border-spacing: 0;
}

.carbon__table tr td,
.carbon__table tr th {
  border: 1px solid gray;
  border-bottom: 0;
  border-right: 0;
}

.carbon__table tr:last-child th,
.carbon__table tr:last-child td {
  border-bottom: 1.0px solid gray;
}

.carbon__table tr td:last-child {
  border-right: 1.0px solid gray;
}

.carbon__table td {
  padding: 10px;
}

.carbon__ol li {
  text-indent: -1em;
  padding-left: 2em;
}

.carbon__ul li {
  margin-left: 1em;
}

.tcfd__table {
  border-collapse: separate;
  border-spacing: 0;
}

.tcfd__table tr td,
.tcfd__table tr th {
  border: 1px solid gray;
  border-bottom: 0;
  border-right: 0;
}

.tcfd__table tr:last-child th,
.tcfd__table tr:last-child td {
  border-bottom: 1.0px solid gray;
}

.tcfd__table tr td:last-child,
.tcfd__table tr th:last-child {
  border-right: 1.0px solid gray;
}

.tcfd__table th {
  background: #e8f0d5;
  padding: 10px;
}

.tcfd__table td {
  padding: 10px;
}

.tcfd__table .esg-list03 li::before {
  left: 18px;
  background: #000000;
}

.tcfd__table .esg-list03 li {
  padding-left: 35px;
}

.add-mb30 {
  margin-bottom: 30px;
}

.add-mb50 {
  margin-bottom: 50px;
}

.green__flexBox {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.green__flexBox figcaption {
  font-size: 13px;
}

.green01 {
  width: 100%;
  margin-bottom: 20px;
}

.green01 img {
  width: 70%;
  margin-bottom: 10px;
}

.green02 img {
  margin-bottom: 10px;
}

.green02 {
  width: 49%;
}

.green01 figure {
  text-align: center;
}

.green02 figure {
  text-align: center;
}

/*20220629 esg/strategy/makeitreal/ nabigation */
.esg_sub_tab {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  font-weight: bold;
  margin-bottom: 90px;
}

.col_2pc {
  width: 50%;
  min-height: 76px;
}

.col_2pc:nth-child(n+2) {
  border-left: 0;
}

.col_2pc:nth-child(n+3) {
  border-top: 0;
}

.col_2pc:nth-child(2n+1) {
  border-left: 1px solid #0063b6;
}

.esg_sub_box {
  inset: 0;
  display: flex;
  border: 1px solid #0063b6;
  text-align: center;
  justify-content: center;
  align-items: center;
}

.esg_sub_box a {
  display: flex;
  min-height: 76px;
  width: 100%;
  justify-content: center;
  align-items: center;
}

.esg_sub_on {
  color: #fff;
  background: #0063b6;
}

@media (max-width: 767px) {
  .esg_sub_tab {
    font-size: 1.2rem;
    margin-bottom: 47px;
  }

  .esg_sub_box a {
    min-height: 47px;
  }

  .col_1sp {
    width: 100%;
    min-height: 47px;
  }

  .col_1sp:nth-child(n) {
    border-left: 1px solid #0063b6;
  }

  .col_2pc:nth-child(n+2) {
    border-top: 0;
  }
}

/*20220629 esg/strategy/makeitreal/ nabigation end */

@media (min-width: 768px) {
  .esg-add > div:first-child {
    margin-bottom: 20px;
  }

  .esg-add > div:nth-child(2) {
    margin-bottom: 20px;
  }

  .esg-add > div:nth-child(3) {
    margin-bottom: 50px;
  }

  .esg-add > div:last-child {
    margin-bottom: 50px;
  }
}

@media (max-width: 375px) {
  .eag-add-a .esg-top-btn a {
    font-size: 10px;
  }
}

.ip-caption-flex {
  display: flex;
}

.ip-caption-flex p:first-child {
  padding-right: 25%;
}

.box-indent {
  padding-left: 1em;
}

.box-indent .esg-list03 li::before {
  width: 3px;
  height: 3px;
}

.blue-box {
  border: 1px solid #004ea2;
  padding: 0 10px;
}

.align-center {
  text-align: center !important;
}

.img-small-add {
  text-align: center;
}

.img-small-add img {
  width: 60%;
}

.img-small-add p {
  width: 60%;
  margin: auto;
  padding-top: 10px;
}

.text-left {
  text-align: left !important;
  font-size: 90%;
  line-height: normal;
}

.esg-txtknktopred {
  color: #e60033;
}

.flex-align-center {
  align-items: center !important;
}

.font-middle {
  font-size: 1.3em;
}

.esg-top-content {
  background-color: #e5f1f9;
  padding: 10px;
  padding-top: 30px;
}

@media (max-width: 767px) {
  .esg-top-content {
    padding-bottom: 0;
  }
}

.padding-img {
  padding-top: 15px;
}

@media (min-width: 768px) {
  .padding-img-l {
    padding-top: 67%;
  }

  .padding-img-table {
    padding-top: 22px;
  }
}

.top-grid .esg-grid02-Col_txt {
  width: 76%;
}

.top-grid .esg-grid02-Col_img {
  width: 24%;
}

@media print {
  .esg-parent .balloon99 {
    left: 120px;
  }

  .esg-parent .balloon100 {
    right: auto;
    left: 355px;
    top: -23px;
  }
}

.esg_hybrid_ttl_blue {
  font-size: 2.4rem;
  color: #1d9d7c;
  border: 1px solid #1d9d7c;
  text-align: center;
  padding: 0 10px;
  margin-bottom: 50px;
}

.esg_hybrid_ttl_red {
  font-size: 2.4rem;
  color: #d15557;
  border: 1px solid #d15557;
  text-align: center;
  padding: 0 10px;
  margin-bottom: 50px;
}

.esg_strategy_ttl {
  position: relative;
  padding: .3em;
  text-align: center;
}

.esg_strategy_ttl:before,
.esg_strategy_ttl:after {
  position: absolute;
  top: 0;
  content: '';
  width: 8px;
  height: 100%;
  display: inline-block;
  border-top: solid 2px #0063b6;
  border-bottom: solid 2px #0063b6;
}

.esg_strategy_ttl:before {
  border-left: solid 2px #0063b6;
  left: 0;
}

.esg_strategy_ttl:after {
  border-right: solid 2px #0063b6;
  right: 0;
}

.esg_rb_smallTxt {
  font-size: 1.2rem;
  text-align: right;
}

.esg-grid_top {
  display: flex;
  flex-flow: row wrap;
  align-items: stretch;
  justify-content: center;
}

.esg-grid03-white.esg-top-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40%;
  background: #ffffff;
  margin-bottom: 20px;
  font-size: 1.5rem !important;
  text-align: center;
  margin-left: 10px;
  margin-right: 10px;
}

.esg-grid03-white {
  width: 32%;
}

.esg-grid03-white.esg-top-btn a {
  display: block;
  padding: 30px 0px;
}

.align-end {
  align-items: end !important;
}

.name-txt {
  font-weight: bold;
  font-size: 1.3em;
}

.esg-interview-content {
  background-color: #e5f1f9;
  padding: 20px;
  border-radius: 10px;
}

.esg-interview-name {
  display: flex;
  align-items: center;
}

.esg-interview-txt {
  padding-right: 10px;
}

.esg_tm-bgblock {
  display: flex;
  flex-flow: wrap;
  justify-content: stretch;
}

.esg_tm-bgblock__text {
  min-width: 60%;
}

.esg_tm-bgblock__img {
  display: flex;
  justify-content: end;
  align-items: end;
  flex-grow: 1;
}


.esg_tm-bgblock__img--grow {
  flex-grow: 1;

}

.esg_tm-br {
  display: block;
  content: "";
  margin: 1em 0;
}

@media screen and (max-width:638px) {
  .esg_tm-bgblock__img {
    width: 100%;
  }

}

.esg_tm-bgblock__img > img {
  height: auto;
  object-fit: contain;
}

.esg_tm-bgblock__img--70 {
  width: 70px;
}


.esg_tm-bgblock__img--140 {
  width: 140px;
}

.esg_tm-bgblock__img--200 {
  width: 200px;
}

/*画像縦の高さ揃え*/

.esg-grid00--h {
  display: flex;
  flex-flow: row wrap;
  align-items: start;
  justify-content: left;
  gap: 12px;
}

.esg-grid02-Col--h {
  width: fit-content;
}

.esg-img--h {
  height: 199px;
  width: auto;
}

.esg-height--180 {
  width: auto;
  height: 180px;
  object-fit: cover;
}

.esg-height--200 {
  height: 200px;
}

.esg-height--250 {
  height: 250px;
}

.esg-height--300 {
  height: 300px;
}


@media (max-width: 767px) {
  .esg-grid02-Col--h {
    width: 100%;
  }

  .esg-img--h {
    width: min(440px, 100%);
    height: auto;
  }
}



/*画像横ぞろえ*/
.esg-img--150 {
  width: 150px;
}

.esg-img--200 {
  width: 200px;
}

@media (max-width: 767px) {
  .esg-tabwidth-40p {
    width: 40%;
    margin-inline: auto;
  }

  .esg-tabwidth--250,
  .esg-tabwidth--300 {
    width: 100%;
    height: auto;
  }

}

/*キャプション調整*/
.esg-pcwidth--300 {
  width: 300px;
}

.esg-pcwidth--380 {
  width: 380px;
}

@media (max-width: 767px) {

  .esg-pcwidth--300,
  .esg-pcwidth--380 {
    width: 100%;
  }
}

/*/strategy/hybrid/*/
.esg-hybrid_h3 {
  font-size: 36px;
  font-weight: bold;
  text-align: left;
  margin-bottom: 0;
}

.esg-hybrid_p {
  font-size: 24px;
  text-align: left;
  margin: 0.5em 0;
}

/*inline-block*/
.esg-inline-block01 {
  display: inline-block;
  width: 12rem;
}

.esg-inline-block02 {
  display: inline-block;
  width: 20rem;
}

@media (max-width: 767px) {
  .esg-inline-block01 {
    width: 2rem;
  }

  .esg-inline-block02 {
    width: 35rem;
  }
}

@media (max-width: 590px) {
  .esg-inline-block02 {
    width: 20rem;
  }
}

.esg-topm_bold {
  font-family: 'Noto Sans JP';
  font-weight: 900;
}

.esg-fitcontent {
  width: fit-content;
}

@media (max-width:767px) {
  .esg-fitcontent {
    width: 100%;
  }
}

.esg-width-650px {
  width: 650px;
}

@media (max-width:767px) {
  .esg-width-650px {
    width: 100%;
  }
}

@media print {
  .esgp-margin-0 {
    margin: 0 !important;
    margin-top: 0 !important;
  }

  .esgp-mT40 {
    margin-top: 1em !important;
  }
}

.esg-ai-center {
  align-items: center;
}

.esg-ai-unset {
  align-items: unset;
}

.esg-jc-center {
  justify-content: center;
}

.esg-jc-right {
  justify-content: right;
}

@media screen and (max-width: 767px) {
  .esg-jc-right {
    justify-content: center;
  }
}

.esg-mi-auto {
  margin-inline: auto;
}

.esg-flex {
  display: flex !important;
}

.esg-height-100 {
  height: 100%;
}

.esg-h3 {
  margin-bottom: 8px;
}

.esg-h3 + :is(p, h4, div) {
  margin-top: 0;
}

.esg-h4 {
  margin-bottom: 4px;
}

.esg-h4 + :is(p, div) {
  margin-top: 0;
}

.esg-Table-small :is(th, td) {
  padding: 7px 10px !important;
}

.esg-generation__wrapper {
  flex-wrap: nowrap;
}

.esg-generation__item {
  display: flex;
  gap: 12px;
}

@media screen and (max-width:1169px) {
  .esg-generation__wrapper {
    flex-flow: wrap;
  }
}

.esg-generation__grid {
  display: grid;
  width: 100%;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: 1fr, auto;
  grid-column-gap: 12px;
}

.esg-generation__grid > *:nth-child(1) {
  grid-area: 1 / 1 / 2 / 2;
}

.esg-generation__grid > *:nth-child(2) {
  grid-area: 1 / 2 / 2 / 3;
}

.esg-generation__grid > *:nth-child(3) {
  grid-area: 2 / 1 / 3 / 3;
}

.esg-flex--nowrap {
  display: flex;
  flex-flow: nowrap;
}

.esg-flex--nowrap img {
  height: auto;
  object-fit: contain;
  align-self: flex-start;
}

@media only screen and (max-width: 767px) {
  .esg-flex--tabwrap {
    flex-flow: wrap;
  }

  .esg-tabwidth--25 {
    width: 25%;
  }

  .esg-tabwidth--50 {
    width: 50%;
  }
}

.top_sectionBlock.topImg {
  background-position: center top;
  height: 551px;
}

@media screen and (max-width: 768px) {
  .top_sectionBlock.topImg {
    height: 340px;
  }
}

@media screen and (max-width: 520px) {
  .top_sectionBlock.topImg {
    height: 200px;
  }
}

@media screen and (max-width: 375px) {
  .top_sectionBlock.topImg {
    height: 182px;
  }
}

.esg-2024top-2col {
  display: flex;
  justify-content: center;
  margin-inline: auto;
  gap: 60px;
}

@media screen and (max-width: 767px) {
  .esg-2024top-2col {
    flex-direction: column;
    align-items: center;
  }
}

.esg-2024top-topmessage {
  width: 400px;
  max-width: 100%;
}


.esg-2024top-topmessage .esg_top_gray {
  border: none;
}

.esg-2024top-management {
  width: 400px;
  max-width: 100%;
}

.esg-2024top-management .esg-grid00 {
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  height: 461px;
}

@media screen and (max-width: 768px) {
  .esg-2024top-management .esg-grid00 {
    height: 300px;
  }
}

.esg-2024top-management .esg-top-btn {
  width: 100%;
  margin-bottom: 0;
  height: calc((100% - 40px) / 3);
  display: flex;
  align-items: center;
  justify-content: center;
}

.esg-mT35 {
  margin-top: 35px;
}

.esg-2024top-discover {
  background-color: #C9EBF3;
}

.esg-2024top-discover__ttl {
  color: #0066A6;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
  margin-top: 0;
  margin-bottom: 0;
}

.esg-2024top-discover__btn {
  border: 3px solid #3C98A3;
}

.esg-2024top-discover__btn a {
  font-size: 20px;
  padding-block: 0;
  font-weight: 700;
}

@media screen and (max-width: 767px) {
  .esg-2024top-discover .esg-grid_top {
    flex-direction: column;
  }

  .esg-2024top-discover__btn {
    width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}

.esg_vc_ttl--sec {
  font-size: 2rem;
  color: #0066A6;
}

.esg-discover__btn {
  width: 100%;
  border: 3px solid #3C98A3;
  display: flex;
  margin-top: 40px;
  padding-block: 20px;
}

@media screen and (max-width: 767px) {
  .esg-discover__btn {
    flex-direction: column;
    gap: 32px;
  }
}

.esg-discover__btn a {
  display: block;
  font-weight: 700;
  font-size: 16px;
}

.esg-discover__btn a:not(:first-of-type) {
  margin-top: 16px;
}

.esg-discover__btn a + p {
  margin-top: 6px;
}

@media screen and (max-width: 767px) {
  .esg-discover__btn > div {
    width: 100% !important;
  }
}

.esg-discover__btn > div:nth-of-type(1) {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50%;
}

.esg-discover__btn > div:nth-of-type(1) a {
  font-size: 26px;
}

@media screen and (max-width: 767px) {
  .esg-discover__btn > div:nth-of-type(1) a {
    font-size: 22px;
  }
}

.esg-discover__btn > div:nth-of-type(2) {
  width: 50%;
  text-align: center;
}

.esg-vc_ttl--sub {
  font-size: 2rem;
}

.esg-db {
  display: block;
}

.esg-2024top-h3 {
  font-size: 2rem;
  color: #ef442a;
  margin-top: 40px;
}

.esg-2024top-h4 {
  font-size: 1.8rem;
  color: #ef442a;
}

.esg-2024top-col1 {
  display: block;
  width: 100%;
}

.esg-2024top-col1 {
  display: inline-block;
}

.esg-2024top-img--right {
  text-align: right;
}
@media screen and (max-width: 767px) {
  .esg-2024top-img--right {
    text-align: left;
  }

}
.esg-2024top-img--left {
  text-align-last: left;
}

.esg-2024top-col2 {
  display: flex;
  position: relative;
}

@media screen and (max-width: 767px) {
  .esg-2024top-col2:not(.--nowrap) {
    flex-direction: column;
  }
}

.esg-2024top-col2 > div {
  margin-top: 0;
}

.esg-2024top-col2 > div > p:first-child {
  margin-top: 0;
}

.esg-2024topmessage img {
  height: auto;
  object-fit: contain;
  z-index: -1;
}
.esg-2024topmessage .esg-noticeflex {
  column-gap: 0.5em;
}
@media screen and (max-width: 767px) {
  .esg-2024topmessage img:not(.esg-2024top-img00, .esg-2025top-img00) {
    width: 50%;
    position: relative;
    top: unset;
    bottom: unset;
    right: unset;
  }
}

.esg-2024top-img01 {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 40%;
}

.esg-2024top-img02 {
  position: absolute;
  top: -80px;
  right: 0;
  width: 40%;
}

.esg-2024top-img03 {
  position: absolute;
  width: 40%;
  right: 0;
  bottom: 16px;
}

.esg-2024top-img04 {
  position: absolute;
  width: 45%;
  right: 0;
  bottom: 30px;
}

.esg-2024top-img05 {
  position: absolute;
  top: 60px;
  right: 0;
  width: 40%;
}

.esg-2024top-img06 {
  width: 40%;
}
@media screen and (max-width: 767px) {
  .esg-2024top-img06 {
    margin-top: 20px;
  }

}
.esg-2024top-img07 {
  position: absolute;
  width: 30%;
  top: 30px;
  right: 0;
}

.esg-2024top-img08 {
  position: absolute;
  width: 20%;
  bottom: 160px;
  right: 0;
}
@media print {
  .esg-2024top-img08 {
    bottom: 120px;
  }
}

.esg-2024top-img09 {
  position: absolute;
  width: 20%;
  bottom: -30px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .esg-2024top-img07, .esg-2024top-img08, .esg-2024top-img09, .esg-2024top-img10, .esg-2024top-img11 {
    width: 30% !important;
  }
}
.esg-2024top-img10 {
  position: absolute;
  width: 20%;
  bottom: 180px;
  right: 0;
}

.esg-2024top-img11 {
  position: absolute;
  width: 10%;
  bottom: 0;
  right: 5%;
}

.esg-2024top-img12 {
  position: absolute;
  width: 35%;
  bottom: -30px;
  right: 0;
}

.esg-2024top-img13 {
  width: 30%;
  position: absolute;
  right: 0;
  bottom: 1em;
}

.esg-2024top-img14 {
  position: absolute;
  width: 20%;
  bottom: 0;
  right: 0;
}

.esg-2024top-img15 {
  position: absolute;
  width: 20%;
  top: 80px;
  right: 0;
}

.esg-2024top-img16 {
  position: absolute;
  width: 40%;
  bottom: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .esg-2024top-img06, .esg-2024top-img13, .esg-2024top-img16 {
    width: 50% !important;
  }
}
@media screen and (max-width: 600px) {
  .esg-2024top-img06, .esg-2024top-img13, .esg-2024top-img16 {
    width: 100% !important;
  }
}
.esg-2024top-img17 {
  position: absolute;
  width: 30%;
  top: 50px;
  right: 0;
}

.esg-2024top-img18 {
  margin-top: 40px;
  width: 40%;
}

.esg-2024top-img19 {
  position: absolute;
  bottom: 1em;
  right: 0;
  width: 25%;
}

.esg-2024top-img20 {
  position: absolute;
  bottom: 150px;
  right: 0;
  width: 25%;
}

.esg-2024top-img21 {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 30%;
}
.esg-2024top-grid {
  display: grid;
  grid-template-columns: fit-content(50%) 1fr;
  row-gap: 0.4em;
}
.esg-2024top-grid span {
  display: block;
}

.esg-box-bd {
  border: 2px solid #0063b6;
  padding: 2rem;
  margin-top: 40px;
}
.esg-box-bd *:first-child {
  margin-top: 0;
}

.esg-bg-bl {
  background-color: #f3f8fc;
  width: fit-content;
  padding: 1em 2em;
  border-radius: 10px;
}

.esg-2024top-ol {}
.esg-2024top-ol li {
  list-style: decimal;
  margin-left: 1.25em;
  line-height: 2;
}
@media print {
  .esg-2024top-management .esg-grid00 {
    flex-direction: column !important;
  }
  .esg-2024top-management .esg-grid00 .esg-grid03-Col {
    width: 100% !important;

  }
}
.esg_vc_ttl sup {
  font-size: 60%;
}
.esg-2024top-h3 sup {
  font-size: 60%;
}
.esg-flex-system01 {
  gap: 20px;
  justify-content: center;
  margin-inline: auto;
}
.esg-ase {
  align-self: end;
}
.esg-gap-20 {
  gap: 20px;
}
/*2025*/
.esg-gap-10 {
  gap: 10px;
}
.esg-list_mark {
  width: 100%;
  padding-left: 1em;
}
.esg-list_mark li {
  display: flex;
  width: 100%;
  gap: 0.5em;
}
.esg-list_mark li span:first-child {
  flex-shrink: 0;
}
.esg-ListPanel02.--esg-p-min {
  padding: 16px 16px;
}
.esg-jc-left {
  justify-content: left;
}
.esg-bd-none, .esg-bd-none td {
  border: none !important;
}
.esg-bdt-none {
  border-top: none !important;
}
.esg-bdb-none {
  border-bottom: none !important;
}
.esg-br-pc {
  display: inline;
}
.esg-br-sp {
  display: none;
}
@media (max-width:767px) {
  .esg-br-pc {
    display: none;
  }
  .esg-br-sp {
    display: inline;
  }
}
.esg-va-m {
  vertical-align: middle !important;
}
@media (max-width:767px) {
  .esg-tabwidth--860 {
    width: 860px !important;
    justify-content: left;
  }
  .esg-tabwidth--860 .esg-width-45 {
    width: 45%;
  }
  .esg-tabwidth--860 .esg-width-55 {
    width: 55%;
  }
  .esg-tabwidth--860 * {
    text-wrap: auto;
    line-break: anywhere;
    word-break: break-all;
    overflow-wrap: break-word;
    overflow-wrap: anywhere;
  }
}
.esg-list02 li.normalText::before {
  top: 0.95em;
}
.esgp-procurement {
  /* gap: 18px; */
}

@media (max-width:767px) {
  .esg-onlypc {
    display: none;
  }
}
.esg-onlysp {
  display: none;
}
@media (max-width:767px) {
  .esg-onlysp {
    display: block;
  }
}
.esg-grid03-2-Col:last-of-type {
  margin-bottom: 0;
}

.esg-width-600px {
  width: 600px;
}

@media (max-width:767px) {
  .esg-width-600px {
    width: 100%;
  }
}
@media print {
  .esg-tabwidth--860 {
    max-width: 100%;
  }
  .esgp-procurement {
    flex-wrap: nowrap !important;
    justify-content: left !important;
  }
  .esgp-procurement > .esg-grid03-2-Col {
    width: fit-content !important;
  }
  .esgp-procurement .esg-height--200 {
    object-fit: contain !important;
  }
  .esgp-none {
    display: none !important;
  }
  .esgp-block {
    display: block !important;
  }
  .esg-width-600px {
    width: 85%;
  }
}
.esg-list02 > li:last-child {
  margin-bottom: 0;
}
.esg-flex--colmn {
  display: flex;
  flex-direction: column;
}
@media not print {
  .iconPdf {
    vertical-align: bottom;
  }
  .esg-linkList04 li {
    margin-bottom: 12px;
  }
}
.esg-w-33 {
  width: calc((100% - 40px) / 3);
  height: auto;
}
@media print {
  .esg-w-33 {
    width: calc((100% - 40px) / 3) !important;
    height: auto !important;
  }
}
@media (max-width:767px) {
  .esg-w-33 {
    width: 100%;
  }
}
/*2025*/
.esg-color--bl, .esg-color--bl * {
  color: #0077c1;
}
.esg-2025top-h4 {
  margin-bottom: 6px;
  font-size: 16px;
  color: #21b784;
  font-weight: bold;
}

.esg-2025top-img01 {
  position: absolute;
  width: 30%;
  top: 30px;
  right: 0;
}

.esg-2025top-img02 {
  position: absolute;
  width: 30%;
  top: 62px;
  right: 0;
}
.esg-2025top-img03 {
  position: absolute;
  width: 25%;
  bottom: 0;
  right: 0;
}
.esg-2025top-img04 {
  width: 40%;
  margin-top: 20px;
}
.esg-2025top-img05 {
  display: block;
  margin-left: auto;
  width: 30%;
  position: absolute;
  right: 0;
  bottom: 0;
}
.esg-2025top-img06 {
  position: absolute;
  width: 36%;
  top: 50px;
  right: 0;
}
.esg-2025top-img07 {
  position: absolute;
  width: 30%;
  bottom: 45%;
  right: 0;
}
.esg-2025top-img08 {
  width: 40%;
  display: block;
  position: absolute;
  right: 0;
  bottom: 0;
}
.esg-2025top-img09 {
  width: 23%;
  margin-left: auto;
  margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img09 {
    width: 40% !important;
    margin-top: 0;
    margin-bottom: 20px;
  }
}
.esg-2025top-img10 {
  width: 45%;
  display: block;
  margin-right: auto;
}
.esg-2025top-img11 {
  position: absolute;
  width: 22%;
  bottom: 20px;
  right: 0;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img11 {
    display: block;
    width: 30% !important;
    margin-left: auto;
  }
}
.esg-2025top-img12 {
  display: block;
  width: 65%;
  margin-top: 40px;
  margin-inline: auto;
}
.esg-2025top-img13 {
  width: 30%;
  margin-left: auto;
  margin-top: 140px;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img13 {
    margin-top: 0;
  }
}
.esg-2025top-img14 {
  position: absolute;
  width: 30%;
  top: 0;
  right: 0;
}

.esg-2025top-img15 {
  width: 23%;
  margin-left: auto;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img15 {
    width: 40% !important;
    margin-top: 0;
  }
}
.esg-2025top-img16 {
  display: block;
  width: 30%;
  margin-left: auto;
}
.esg-2025top-img17 {
  width: 30%;
  margin-left: auto;
  margin-top: -20px;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img17 {
    margin-top: 0;
  }
}
.esg-2025top-img18 {
  width: 30%;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img18 {
    margin-top: 0;
  }
}
.esg-2025top-img19 {
  width: 20%;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img19 {
    width: 40% !important;
    margin-top: 10px;
  }
}
.esg-2025top-img20 {
  position: absolute;
  width: 14%;
  right: 0;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img20 {
    width: 25% !important;
    margin-left: auto;
  }
}
.esg-2025top-img21 {
  position: absolute;
  top: 10px;
  right: 0;
  width: 20%;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img21 {
    width: 35% !important;
    margin-left: auto;
  }
}
.esg-2025top-img22 {
  display: block;
  width: 55%;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img22 {
    width: 80% !important;
    margin-inline: auto;
    margin-top: 40px;
  }
}

.esg-2025top-img23 {
  display: block;
  width: 30%;
  margin-inline: auto;
  margin-top: 200px;
}
@media screen and (max-width: 767px) {
  .esg-2025top-img23 {
    margin-top: 80px;
  }
}
.esg-color-red {
  color: red;
}
.esg-color-bl {
  color: blue;
}
.esg-strategy-linkarea {
  background: url(/esg/strategy/img/img_strategy_02.jpg) no-repeat center/contain;
}
.esg-strategy-linkarea .esg-flex {
  gap: 24px;
  margin-block: 30px;
}
.esg-strategy-linkarea .esg-flex a {
  color: #21b784;
  font-weight: bold;
  font-size: 24px;
}
.esg-strategy-linkarea .esg-flex p {
  margin-block: 0;
  font-weight: bold;
  font-size: 24px;
}
.esg-strategy-link {
  display: flex;
  gap: 0.25em;
  font-size: 16px;
  margin-top: 10px;
  &::before {
    content: "■";
    display: block;
    color: #21b784;
  }
}
@media screen and (max-width: 767px) {
  .esg-strategy-linkarea .esg-flex {
    flex-direction: column;
    gap: 10px;
    margin-bottom: 16px;
  }
  .esg-strategy-linkarea .esg-flex :is(a, p) {
    font-size: 12px;
  }
  .esg-strategy-link {
    font-size: 12px;
  }
}
.esg-fz-22 {
  font-size: 22px;
}
.esg-fz-18 {
  font-size: 18px;
}
.esg-tm-discoverfuture {
  display: block;
  width: fit-content;
  margin-inline: auto;
  margin-top: 100px;
  margin-bottom: 100px;
}
@media screen and (max-width: 767px) {
  .esg-tm-discoverfuture {
    margin-top: 40px;
    margin-bottom: 40px;
  }
  .esg-fz-22 {
    font-size: 18px;
  }
  .esg-fz-18 {
    font-size: 14px;
  }
    .esg-scroll-960 {
      white-space: unset !important;
    }
    .esg-scroll-960 table {
      max-width: 960px;
    }
  .esg-tabwidth--100 {
    width: 100%;
    height: auto;
  }
}

.esg-2025top-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto 1fr;
  column-gap: 40px;
  row-gap: 18px;
}
.esg-2025top-grid h2.esg_top_txt {
  margin-bottom: 20px;
}
.esg-2025top-grid .esg-top-btn {
  border: 1px solid #cfcfcf;
  background-color: #eeeeee;
  ;
  margin: 0;
}

.esg-2025top-grid .esg-grid03-white.esg-top-btn a {
  padding-block: 28px;
}
.esg-2025top-topmessage {
  grid-area: 1 / 1 / 2 / 2;
  background-color: #e5f1f9;
  padding: 30px 24px 20px;
}
.esg-2025top-topmessage img {
  width: 67%;
}
.esg-2025top-management {
  grid-area: 2 / 1 / 3 / 2;
  background-color: #e5f1f9;
  padding: 30px 24px 20px;
}
.esg-2025top-management .esg-flex--colmn {
  gap: 20px;
}
.esg-2025top-management .esg-top-btn {
  width: 100%;
}
.esg-2025top-discover {
  grid-area: 1 / 2 / 3 / 3;
  background-color: #e5f1f9;
  padding: 30px 24px 20px;
}
.esg-2025top-discover .esg-grid_top {
  flex-direction: column;
  gap: 20px;
}
.esg-2025top-discover .esg-grid_top .esg-grid03-white {
  width: 100%;
}
.esg-2025top-subttl {
  color: #65a1d6;
  text-align: center;
  font-weight: bold;
  font-size: 32px !important;
  margin-top: 0;
}
.esg-top-btn a {
  width: 100%;
}
.top_sectionBlock.topImg.top_mv2025 {
  background: unset;
  height: fit-content;
}
@media screen and (max-width: 767px) {
  .esg-2025top-grid {
    grid-template-columns: 1fr;
  }
  .esg-2025top-topmessage {
    grid-area: 1 / 1 / 2 / 2;
    padding-inline: 16px;
  }
  .esg-2025top-management {
    grid-area: 2 / 1 / 3 / 2;
    padding-inline: 16px;
  }
  .esg-2025top-discover {
    grid-area: 3 / 1 / 4 / 2;
    padding-inline: 16px;
  }
  .esg-2025top-subttl {
    font-size: 24px !important;
  }
}
@media print {
  .esg-tm-discoverfuture .esg-br-sp {
    display: none;
  }
}
.esg-width-75{
  width: 75%;
}
@media screen and (max-width: 767px) {
.esg-width-75{
  width: 100%;
}
}
