#Contents{
  overflow: hidden;
}
:root {
  --xxxxsmall: 50%;
  --xxxsmall: 67%;
  --xxsmall: 76%;
  --xsmall: 83%;
  --small: 90%;
  --regular: 100%;
  --large: 110%;
  --xlarge: 150%;
  --xxlarge: 180%;
  --xxxlarge: 200%;
  --xxxxlarge: 300%;
  
  --black: #333333;
  --white: #ffffff;
  --red: #ff0026;
  --red02: #b1000e;
  --red03: #7e000a;
  --gray: #b4b4b4;
  --gray02: #d2d2d2;
  --gray03: #a0a0a0;
  --light: #f2f2f2;
  --darkblue: #141928;
  --linktext: #cc0022;
  --youtubeModal: rgba(1,1,1,0.8);
  
  --env: #30a425;
  --env02: #dfeade;
  --scl: #409ad6;
  --scl02: #cce1ee;
  --gvn: #cea048;
  --gvn02: #e3d6bd;
  }
  .ex {
    background: var(--black);
    color: var(--white);
    padding: 0 10px;
    border-radius: 4px;
  }
  
  .xsmall{font-size: var(--xsmall);}
  .small{font-size: var(--small);}
  .regular{font-size: var(--regular);}
  .large{font-size: var(--large);}
  .xlarge{font-size: var(--xlarge);}
  .xxlarge{font-size: var(--xxlarge);}
  .xxxlarge{font-size: var(--xxxlarge);}

  .color_env{color:var(--env);}
  .color_scl{color:var(--scl);}
  .color_gvn{color:var(--gvn);}

  .bg_red02{background: var(--red02); color: var(--white);}

  .mb0{margin-bottom:0px;}
  .mb10{margin-bottom:10px;}
  .mb20{margin-bottom:20px;}
  .mb30{margin-bottom:30px;}
  .mb40{margin-bottom:40px;}
  .mb50{margin-bottom:50px;}
  .mb60{margin-bottom:60px;}
  .mb70{margin-bottom:70px;}
  .mb80{margin-bottom:80px;}
  .mb90{margin-bottom:90px;}
  .mb100{margin-bottom:100px;}

  .mt10{margin-top:10px;}
  .mt20{margin-top:20px;}
  .mt30{margin-top:30px;}
  .mt40{margin-top:40px;}
  .mt50{margin-top:50px;}
  .mt60{margin-top:60px;}
  .mt70{margin-top:70px;}
  .mt80{margin-top:80px;}
  .mt90{margin-top:90px;}
  .mt100{margin-top:100px;}
  

  .w6{width: 6%;}
  .w10{width: 10%;}
  .w15{width: 15%;}
  .w20{width: 20%;}
  .w25{width: 25%;}
  .w29{width: 29%;}
  .w30{width: 30%;}
  .w35{width: 35%;}
  .w38{width: 38%;}
  .w40{width: 40%;}
  .w45{width: 45%;}
  .w48{width: 48%;}
  .w50{width: 50%;}
  .w60{width: 60%;}
  .w70{width: 70%;}
  .w75{width: 75%;}
  .w80{width: 80%;}
  .w90{width: 90%;}
  .w100{width: 100%;}
  .imgAuto{
    width: auto;
  }
  
  .txt_c{text-align: center;}
  .txt_r{text-align: right;}
  .txt_l{text-align: left;}

  .lh_2em{line-height: 2em;}

  .img_cent{
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .img_brd{
  border:1px solid #ccc;
  }
  .f_box{
  display: flex;
  justify-content: space-between;
  }
  .f_box > div.w38{width: 38%;}
  .f_box > div.w60{width: 60%;}
  .Section{
  margin-bottom: 40px;
  }
  .HeadH1Title + .list_inline:not(.top .list_inline){
    margin-top:0;
  }
  .environment .BoxPatternA{
    border: 1px solid var(--env);
    background: unset;
  }
  .environment .BoxPatternA h2{
  background: var(--env);
  }
  .HeadH1Title {
  font-size: var(--xxxxlarge);
  font-weight: bold;
  padding-top: 50px;
    padding-bottom: 50px;
  }
  h2, .h2{
  background: none;
  font-size: var(--xxxlarge);
  margin: 0;
  margin-bottom: 40px;
  padding: 0 0 0 0;
  font-weight: bold;
  line-height: 100%;
  }
  h2.sustainability-title-3{
  font-size: var(--xxxlarge);
  
  }
  .text-widget h3{
  margin-bottom:60px;
  }
  h3.summary-title-3{
  font-size: var(--xxlarge);
  }
  .environment h3.summary-title-3{
  font-size: var(--xlarge);
  }
  h3.sustainability-title-6{
  font-size: var(--xxlarge);
  margin-bottom:20px;
  margin-top:40px;
  }
  h3.sustainability-title-7{
    font-size: var(--xxlarge);
    margin-bottom:20px;
    margin-top:40px;
    font-weight: bold;
    color: var(--black);
    position: relative;
    padding:0 20px;
  }
  h3.sustainability-title-7:not(.gri h3.sustainability-title-7)::before{
    content: "";
    border-left: 10px solid var(--gray03);
    height: 1em;
    display: inline-block;
    position: absolute;
    top: 5px;
    left: 0;
  }
  .gri h3.sustainability-title-7{
    padding-left: 0;
  }
h3.sustainability-title-7::before{
    top:2px;
  }
  h4.summary-title-4{
  font-size: var(--large);
  }
  img{
  width: 100%;
  height: auto;
  }
  
  p{margin-bottom:16px;}
  .HorizontalInnerLinks{
  padding: 40px 0;
  border-bottom:1px solid #333;
  margin-bottom:40px;
  }
  .sustainability-title-2 + p.TextStyle1{
  margin-bottom:40px;
  }.sustainability-title-2 + p.TextStyle1.mb40{margin-bottom:40px;}
  .TextStyle1.mb20{margin-bottom:20px;}
  .TextStyle1.mb40{margin-bottom:40px;}
  .ImgOnlyStyle + .sustainability-title-2{
  margin-top:60px;
  }
  .box_01{
  border:1px solid #333;
  padding: 20px 20px 0 20px;
  margin-bottom:20px;
  }
  ul.abc{
    margin: 5px 0 0;
    padding-left: 1.8em;
    font-size: 100%;
  }
  ul.abc li{
    margin: 0 0 5px;
    line-height:1.5em;
    list-style-type: lower-alpha;
  }
  ul.iii{
    margin: 5px 0 0;
    padding-left: 1.8em;
    font-size: 100%;
  }
  ul.iii li{
    margin: 0 0 5px;
    line-height:1.5em;
    list-style-type:lower-roman;
  }

  ul.sdgs{
  display: flex;
  margin-bottom:40px
  }
  ul.sdgs li{
  width: 50px;
  }
  ul.sdgs li img{
  width: 100%;
  }
  ul.sdgs li:not(:last-child){
  margin-right: 10px;
  }
  .f_box{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  }
  .f_box.col2 > div{
  width: 48%;
  }
  .button a, .more {
  padding: 10px 40px;
  border-radius: 50px;
  color:  var(--white);
  text-decoration: none;
  display: inline-block;
  transition: .3s;
  background: var(--red02);
  }
  p + .button a{
  margin-top:20px;
  }
  h2.h2_title{
  margin-top:60px;
  }
  
  /* 2022style */
  .sustainability-body {
  padding: 60px 0;
  }
  .learn-more {
  padding: 0 0 60px 0;
  }
  
  .learn-more.learn-more-presentation {
  padding-top: 0;
  }
  
  .learn-more h2 {
  position: relative;
  }
  
  .learn-more h2:before {
  content: "";
  height: 3px;
  width: 40px;
  position: absolute;
  right: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  background-color: #E60027;
  top: 50%;
  }
  
  .learn-more ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  }
  
  .learn-more ul li {
  margin-top: 20px;
  margin-right: 60px;
  }
  .page-navigation .page-navigation-list li a {
  text-decoration: none;
  font-size: 18px;
  line-height: 22px;
  letter-spacing: -0.1px;
  max-width: 175px;
  font-weight: bold;
  display: inline-block;
  position: relative;
  }
  .learn-more ul li a {
  font-weight: bold;
  display: block;
  color: #333333;
  position: relative;
  text-decoration: none;
  padding-left: 45px;
  -webkit-transition: all .4s;
  transition: all .4s;
  }
  
  .learn-more ul li a::before {
  position: absolute;
  content: '';
  background: url("/sustainability/assets/image/icon/arrow.svg");
  left: 0;
  height: 23px;
  width: 34px;
  -webkit-transition: all .4s;
  transition: all .4s;
  background-size: 100%  100%;
  }
  .learn-more ul li.active a::before {
    position: absolute;
    content: '';
    background: url("/sustainability/assets/image/icon/arrow_active.svg");
    left: 0;
    height: 23px;
    width: 34px;
    -webkit-transition: all .4s;
    transition: all .4s;
    background-size: 100%  100%;
    }
  .learn-more ul li a:hover {
  color: #E60027;
  text-decoration: underline;
  }
  
  .learn-more ul li a:hover::before {
  left: 5px;
  }
  
  @media (max-width: 767px) {
  .learn-more {
  padding: 0;
  }
  .learn-more h2 {
  font-size: 42px;
  font-weight: bold;
  line-height: 48px;
  margin-bottom: 0;
  }
  .learn-more h2:before {
  right: 0;
  -webkit-transform: none;
  transform: none;
  background-color: #E60027;
  top: auto;
  bottom: 5px;
  }
  .learn-more ul li {
  margin-top: 4px;
  margin-right: 20px;
  }
  
  }
  
  .socialLinks {
  padding: 60px 0;
  }
  .learn-more ul li a{
  font-weight: unset;
  display: block;
  color: #333333;
  position: relative;
  text-decoration: none;
  padding-left: 45px;
  -webkit-transition: all .4s;
  transition: all .4s;
  }
  .learn-more ul li a::before {
  position: absolute;
  content: '';
  background: url(/sustainability/assets/image/icon/arrow.svg);
  left: 0;
  height: 23px;
  width: 34px;
  -webkit-transition: all .4s;
  transition: all .4s;
  background-size: 100% 100%;
  }
  
  
  .banner-fixHeight{
    height:300px;
  }
  
  .page-navigation {
    margin-top: 0px;
    position: relative;
    z-index: 1;
  }
  
  .page-navigation:before {
    width: 100%;
    content: '';
    background-color: unset;
    position: relative;
  }
  .hero-banner .top-banner-content{
    top: 40%;
    /* left: 50%; */
    transform: translate(-50%, -50%);
    /* -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%); */
  }
  .banner-fixHeight {
    min-height: initial;
    width: 100%;
  }
  .hero-banner {
    position: relative;
    overflow: hidden;
    background-size: cover;
  }
  .hero-banner::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: rgba(0, 0, 0, 0.3);
  }
  
  
  .hero-banner .container{
  width: 1275px;
  position: relative;
  margin: 0 auto;
  display: flex;
  align-items: center;
  height: 100%;
  }
  .hero-banner h1 {
  max-width: 900px;
  color: #fff;
  font-size: var(--xxxxlarge);
  font-weight: bold;
  z-index: 74;
  position: relative;
  }
  .Inner img{
    width: 519px;
    max-width: 100%;
  }
  .BoxPatternA, .BoxPatternB, .BoxPatternC{
    margin: 0 -15px;
  }

  /* 
  ============================================================
  slick
  ============================================================ 
  */
  .slick-slider .slick-track, .slick-slider .slick-list{
  height: 100% !important;
  }
  .slide{
  width: 100%;
  height: 20vw;
  max-height: 360px;
  background: #ccc;
  }
  .slide_01, .slide_02, .slide_03, .slide_04, .slide_05, .slide_06{
  position: relative; 
  width: 100%;
  height: 100%;
  display: block;
  }
  .slide_01 a, .slide_02 a, .slide_03 a, .slide_04 a, .slide_05 a, .slide_06 a{
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  }
  .slide_txt{
  position: absolute;
  top: 50%;
  left: 0%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  padding-left: 2vw;
  color: #fff;
  text-shadow: 0px 0px 25px rgba(0,0,0,0.70);
  }
  .slide_txt h2{
  font-size: 4vw;
  line-height: 1.2em;
  font-weight: bold;
  margin-bottom:10px;
  }
  .slide_txt p{
  margin-bottom:20px;
  }
  .slick-dots{
  display: flex;
  justify-content: center;
  position: absolute;
  bottom:10px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  }
  
  .slick-dots li {
  position: relative;
  display: inline-block;
  height: 20px; 
  width: 20px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer; 
  }
  .slick-dots li button {
  border: 0;
  background:transparent; 
  display: block; 
  height: 20px; 
  width: 20px; 
  outline: none;
  line-height: 0px; 
  font-size: 0px; 
  color: transparent;
  padding: 5px;
  cursor: pointer; 
  }
  .slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
  }
  .slick-dots li button:hover:before, .slick-dots li button:focus:before {
  opacity: 1;
  }
  .slick-dots li button:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "\2022";
  width: 20px;
  height: 20px;
  font-family: "slick";
  font-size: 50px;
  /* line-height: 20px; */
  text-align: center;
  color: black;
  opacity: 0.25;
  -webkit-font-smoothing: antialiased;
  -moz-osx-fontsmoothing: grayscale;
  }
  .slick-dots li
  .slick-active button:before {
  color: var(--black); 
  opacity: 0.75;
  }
  .slick-dots li.slick-active button::before{
  opacity: 1;
  }
  .slide_01 a:hover + div .more, .slide_02 a:hover + div .more, .slide_03 a:hover + div .more, .slide_04 a:hover + div .more, .slide_05 a:hover + div .more, .slide_06 a:hover + div .more{
  background:var(--red03);
  }
  .slide > div .more:hover{
  background: var(--red03);
  cursor: pointer;
  }


  



/*   
  .bannerArea {
    position: relative;
  }
  .bannerArea .hero-banner h1 {
    overflow: visible;
  }
  

  @media (min-width: 996px) {
  .bannerArea .hero-banner {
      min-height: 540px;
    }
  }

  @media (max-width: 767px) {
  .bannerArea .hero-banner .top-banner-content p {
      max-width: 100%;
    }
  } */
  
  
  /* 
  ============================================================
  message
  ============================================================ 
  */
  .message h2.sp{
    /* margin-left:0; */
    line-height: 1.5em;
    font-size:var(--xxlarge);
    margin: 0;
  }
  /* .message .name {
    font-size: var(--xxlarge);
    line-height: 1.6;
    letter-spacing: 0.05em;
  }
  .message #Contents .name img{
    height: 40px;
    width: auto;
    display: inline-block;
    margin-top:10px;
  } */

  .message #Contents .name{
    font-size: 35px;
    line-height: 1.6;
  }
  /* 
  ============================================================
  materiality
  ============================================================ 
  */
  /* .materiality .slide_01{background: url(/sustainability/materiality/image/resilience_bg.jpg) no-repeat center center/cover;}
  .materiality .slide_02{background: url(/sustainability/materiality/image/env_bg.jpg) no-repeat center center/cover;}
  .materiality .slide_03{background: url(/sustainability/materiality/image/safety_bg.jpg) no-repeat center center/cover;}
  .materiality .slide_04{background: url(/sustainability/materiality/image/happy_bg.jpg) no-repeat center center/cover;}
  .materiality .slide_05{background: url(/sustainability/materiality/image/sincerity_bg.jpg) no-repeat center center/cover;}
  .materiality .slide_06{background: url(/sustainability/materiality/image/dei_bg.jpg) no-repeat center top 10%/cover;} */
  
  .materiality .slick-dots{
  z-index: 99;
  bottom:-40px;
  }
  .sect_header{
  margin:60px 0 20px;
  min-height: 185px;
  position: relative
  }
  .sect_header h2{
  font-size: 3vw;
  font-weight: bold;
  margin-bottom:0px;
  line-height: 1.2em;
  background: unset !important;
  }
  .sect_header > div{
  display: inline-block;
  min-width: 30%;
  padding: 20px;
  background: #000;
  height: 100%;
  color: #fff;
  position: absolute;
  top:0;
  left:0;
  }
  /* .materiality_env .sect_header{
  background: url(/sustainability/materiality/image/env_bg.jpg) no-repeat bottom 20% right/70%;
  }
  .materiality_resilience .sect_header{
  background: url(/sustainability/materiality/image/resilience_bg.jpg) no-repeat bottom right/cover;
  }
  .materiality_safety .sect_header{
  background: url(/sustainability/materiality/image/safety_bg.jpg) no-repeat top 44% right/70%;
  }
  .materiality_happy .sect_header{
  background: url(/sustainability/materiality/image/happy_bg.jpg) no-repeat top 43% right/70%;
  }
  .materiality_sincerity .sect_header{
  background: url(/sustainability/materiality/image/sincerity_bg.jpg) no-repeat top 26% right/70%;
  }
  .materiality_dei .sect_header{
  background: url(/sustainability/materiality/image/dei_bg.jpg) no-repeat center right/50%;
  } */
  .materiality .slide_txt h2 {
  background: none ;
  }
  .materiality ul.sdgs{margin: 10px  0 0 0; flex-wrap: wrap;}
  .materiality ul.sdgs img{margin-bottom:10px;}
  .materiality table b{
    display: block;
  }
  .footerBner2{
  padding: 36px 0;
  background: #f1f1f1;
  position: relative;
  }
  .footerBner2 ul{
  display: flex;
  flex-wrap: wrap;
  max-width: 1305px;
  width: 100%;
  padding: 0 15px;
  margin: 0 auto;
  }
  .footerBner2 ul li{
  width: 300px;
  height: 130px;
  position: relative;
  }
  .footerBner2 ul li:not(last-child){
  margin-right:20px;
  }
  .footerBner2 ul li img{
  width: 100%;
  height: 130px !important;
  object-fit:cover ;
  }
  .footerBner2 ul li:last-child img{
  object-position: 50% 100%;
  }
  .footerBner2 ul li h3{
  position: absolute;
  bottom:0;
  left:0;
  width: 100%;
  font-size: 100%;
  line-height: 1;
  margin: 0;
  padding: 12px 30px;
  background: rgba(0, 0, 0, 0.8);
  }
  .footerBner2 ul li h3::after{
  content: "";
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
  width: 10px;
  height: 18px;
  background: url(../images/2022/footer-banner-icon.svg) center/cover no-repeat;
  }
  .footerBner2 ul li h3 span{
  display: inline-block;
  padding-left: 16px;
  border-left: 4px solid #fb0014;
  line-height: 140%;
  color: #fff;
  }
  .footerBner2 ul li a{
  transition: .5s;
  }
  .footerBner2 ul li a:hover{
  opacity: .3;
  }
  
  

  .collaborations .collaborations-slider .collaborations-item .collaborations-inner{
  min-height: 342px;
  }
  .collaborations .collaborations-slider .collaborations-image {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: flex;
  }
  
  
  
  
  .main_img{
  width: 100%;
  height: 20vw;
  max-height: 360px;
  object-fit: cover;
  }
  table {width:100%;}
  table td{
  padding-bottom:10px;
  }
  table .ListStyle1{
  margin:0;
  }
  table .ListStyle1 li:last-child{
  margin-bottom: 0;
  }
  td .LinkListStyle2{
    margin-bottom: 0;
  }
  
  .environment table th.bg_th{
  background: var(--env02);
  font-weight: bold;
  color: #fff;
  border: solid 1px #fff;
  text-align: center;
  }
  .environment table th.bg_th_02{
  border: solid 1px #fff;
  font-weight: bold;
  color: var(--black);
  }
  .social table th.bg_th{
  background: var(--scl);
  color: #fff;
  font-weight: bold;
  border: solid 1px #fff;
  text-align: center;
  }
  .social table th.bg_th_02{
  background: var(--scl02);
  border: solid 1px #fff;
  font-weight: bold;
  color: var(--black);
  }
  .governance table th.bg_th{
  background: var(--gvn);
  font-weight: bold;
  color: #fff;
  border: solid 1px #fff;
  text-align: center;
  }
  .governance table th.bg_th_02{
  background: var(--gvn02);
  border: solid 1px #fff;
  font-weight: bold;
  color: var(--black);
  }
  
  
  
  /* .banner-fixHeight{
  height: 300px;
  }
  
  .page-navigation {
  margin-top: 0px;
  position: relative;
  z-index: 1;
  }
  
  .page-navigation:before {
  width: 100%;
  content: '';
  background-color: unset;
  position: relative;
  }
  .hero-banner .top-banner-content{
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  } */
  ul.list_inline:not(.top .list_inline) {
  display: flex;
  flex-wrap: wrap;
  margin: 40px 0 0 0;
  position: relative;
  padding: 0 0 40px 0;
  /* border-bottom: 1px solid #000; */
  font-weight: bold;
  }
  .list_inline li{
  margin-right:2em;
  line-height: 2em;
  padding-left: 1.2em;
  background: url(/sustainability/assets/image/icon/arrow-down_2.svg) left 0px top 0.6em no-repeat;
  background-size: 15px auto;
  }
  .list_inline a{
  text-decoration: unset;
  color: #000;
  transition: .3s;
  }
  .list_inline a:hover{
  color: #b1000e;
  }
  .text-widget{
  padding: 0;
  }
  .text-widget h3{
  font-size: 130%;
  }
  .JS #Contents img.esg_img{
  
  height: 340px ;
  object-fit: cover;
  }
  .sustainability-title-2{
  padding: 20px;
  border-bottom: 1px solid #333333;
  position: relative;
  margin-top: 40px;
  }
  .sustainability-title-2::before{
  content: "";
  border-left: 10px solid #b1000e;
  height: 1em;
  display: inline-block;
  position: absolute;
  top: 20px;
  left: 0;
  }
  .sustainability-title-2 a{
  color:#fff;
  }
  .sustainability-title-4{
  border-bottom:1px solid #000;
  padding-bottom:20px;
  margin-bottom:20px;
  }
  h3.sustainability-title-5 {
  margin-bottom: 60px;
  margin-top: 40px;
  font-size: var(--xxlarge);
  color: #333;
  position: relative;
  }
  h3.sustainability-title-5:after{
  content: "";
  border-bottom: 3px solid #b1000e;
  width: 80px;
  position: absolute;
  bottom:-20px;
  left:0;
  }
  h2.esg_title{
  font-size: 180%;
  font-weight: bold;
  line-height: 32px;
  border-bottom: 2px solid #E60027;
  padding-bottom: 5px;
  margin-bottom: 20px;
  }
  h2.esg_title + ul{
  margin-bottom:40px;
  }
  h2.esg_title.lh_2em{line-height: 2.2em;}
  .sustainability2022 .pt_40{
  padding-top: 40px;
  }
  .button a:hover{
  background: #7e000a;
  }
  .news .news_list{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  }
  .news .news_list dt{
  width: 15%;
  padding: 5px 20px;
  background: #ededed;
  border-radius: 10px;
  justify-content: center;
  font-weight: bold;
  }
  .news .news_list dd{
  width: 80%;
  }
  .news .news_list dt, .news .news_list dd{
  display: flex;
  align-items: center;
  margin-bottom:10px;
  }
  .news .news_list .LinkListStyle1{
  margin:0;
  }
  
  .LinkListStyle1_2{
    margin: 30px 0 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    font-size: 90%;
  }
  .LinkListStyle1_2 li{
    width: 60%;
    background: var(--light);
    margin-bottom: 10px;
    font-weight: bold;
    font-size: var(--large);
    transition: .5s;
    padding: 0;
    margin: 0;
    line-height: 140%;
  }
  .LinkListStyle1_2 li a{
    padding: 20px;
    display: block;
    background-position: 95% 50%;
    text-decoration: none;
    background-image: url(../../../image/jp/r1/icon/icon_new_window_hd.gif) !important;
    background-repeat: no-repeat;
    font-weight: bold;
    font-size: var(--regular);
    background-size: 16px 16px;
    -moz-background-size: 16px 16px;
    -webkit-background-size: 16px 16px;
    -o-background-size: 16px 16px;
    -ms-background-size: 16px 16px;
  }
  .ClearFix + .ResponsiveTableStyle1{
  margin: 20px 0 0 0;
  }
  .ClearFix + .ResponsiveTableStyle1 > .DataTableStyle1{
  margin:0;
  }
  /* 
  =============================================================================
  DOWNLOAD
  ============================================================================= 
  */

  .downloadpage table th, .downloadpage table td{
    border: none;
  }
  .downloadpage .title{
    font-weight: bold;
  }
  .downloadpage .child-row, .downloadpage .parent-row{
    border-bottom:1px solid #333;
  }
  .report_section{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top:40px;
    margin-bottom:60px;
    background: var(--light);
    padding: 40px;
    box-sizing: border-box;
  }
.report_section .ButtonStyle1 a{
  min-width: 350px;
}
  .report_section > div h5{
    font-weight: bold;
    margin-bottom: 20px;
    font-size: var(--xlarge);
  }

  .downloadpage .child{
    display: none;
    transition: .5s;
  }
  .downloadpage .title.on + ul .child{
    display: block;
  }
  .downloadpage .section{
    display: flex;
    justify-content: space-between;
    background: var(--light);
    margin: 0 0 20px 0;
    align-items: center;
    padding: 10px 20px;
  }
  .downloadpage .section p{
    font-weight: bold;
    margin:0;
  }
  .downloadpage .title .open{
    font-size: var(--xsmall);
    cursor: pointer;
    color: var(--red02);
    font-weight: normal;
    text-decoration: underline;
  }
  .downloadpage .section + ul{
    padding: 0 20px;
  }
  .downloadpage #anc02_1{
    margin-bottom:60px
  }
  .open::after {
    content: "";
    background-image: url(/image/jp/r1/icon/icon_link_bottom_hd.gif);
    display: inline-block;
    width: 15px;
    height: 15px;
    background-size: contain;
    vertical-align: middle;
}
  .on .open::after {
    content: "";
    background-image: url(/image/jp/r1/icon/icon_link_top_hd.gif);
    display: inline-block;
    width: 15px;
    height: 15px;
    background-size: contain;
    vertical-align: middle;
}
  .downloadpage .section .open:hover{
    text-decoration: underline;
  }
  .downloadpage .Pdf span, .downloadpage .Pdf span span{
    color:var(--black);
    margin-left: auto;  
  }
 
  .downloadpage .LinkListStyle1 li.Pdf,.downloadpage .LinkListStyle1 li.Download,.downloadpage .LinkListStyle1 li.link{
    padding: 10px 0;
  }
  .downloadpage .LinkListStyle1 li.Pdf:first-child, 
  .downloadpage .section.on + .LinkListStyle1 li.Pdf.child, 
  .downloadpage .section.on + .LinkListStyle1 li.Download.child,
  .downloadpage .report_body .LinkListStyle1 li.Pdf:not(.child),
   .downloadpage .report_body .on + .LinkListStyle1 li.Pdf.child,
  .downloadpage .report_body .LinkListStyle1 li.Download{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .downloadpage .Pdf + .Pdf, .downloadpage .Pdf+.Download, .downloadpage .link+.link {
    border-top:1px solid #dddddd;
  }
  .downloadpage .report_head{
    display: flex;
    background:var(--light);
    padding: 10px 20px;
  }
  .downloadpage .report_head p{
    margin:0;
  }
  .downloadpage .report_head p:nth-child(1){width: 60%;}
  .downloadpage .report_head p:nth-child(2){width: 20%;}
  .downloadpage .report_head p:nth-child(3){width: 20%;text-align: right;}
.report_body > div{
  display: flex;
  flex-wrap: wrap;
  border-bottom:1px solid #000;

  padding: 0 20px;
}
.report_body .title{
  width: 60%;
  display: flex;
    justify-content: space-between;
    padding-right:20px;
    box-sizing: border-box;
    height: 100%;
    padding-top: 10px;
}
.report_body p{
  margin-bottom:0;
}
.report_body .LinkListStyle1{
  width: 40%;
  margin:0;
}
.report_body{
  margin-bottom:60px;
}
.container + .LinkListStyle1{
  margin: -40px 0 60px 0;
}
.news .learn-more{
  margin-top: 60px;
}
  /* 
  ============================================================
  assessment
  ============================================================ 
  */
  .assessment h2{
    margin-top:60px;
  }
  .assessment .card_box h5{
    font-weight: bold;
    font-size: var(--large);
    min-height: 5em;
  }
  .assessment .card_box h5 span{
    font-size: var(--xxsmall);
    font-weight: normal;
    white-space: nowrap;
  }
  .assessment .card_box{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    box-sizing: border-box;
    margin-bottom:40px;
  }
  .assessment .card:not(.assessment #anc01 .card){
    width: 23%;
    box-sizing: border-box;
    background-color: var(--light);
    min-height: 300px;
    padding: 20px;
    margin-bottom:20px;
  }
  .assessment #anc01 .card{
    width: 23%;
    box-sizing: border-box;
    margin-bottom:20px;
  }
  .assessment #anc01 .card .card_inn{
    background-color: var(--light);
    min-height: 366px;
    padding: 20px;
    box-sizing: border-box;
  }
  .assessment .card .card_img{
    margin-bottom:20px;
    background: var(--white);
    padding: 10px 0;
    box-sizing: border-box;
  }
  .assessment .card ul{margin-bottom:0;}
  .assessment .card p{
    margin:20px 0 0 0;
  }
  .assessment .card p{
    margin:0 0 0 0;
    font-size: var(--xxsmall);
    font-weight: normal;
  }
  .assessment .card p.mb20{
    margin-bottom:20px;
  }
  .assessment #anc03 .card .card_inn > div p.mt10{
    margin-top:10px;
  }
  .assessment .card.pc-tab{
    width: 23%;
    box-sizing: border-box;
    background-color: unset;
    box-shadow: none;
  }
  .assessment #anc03 .card:not(.assessment #anc01 .card){
    width: 48.5%;
  }
  .assessment #anc03 .card .card_inn{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .assessment #anc03 .card .card_inn > div{
    width: 48%;
  }
  .assessment #anc03 .card .card_inn > div p{
    margin:0;
  }
  .assessment #anc03 .card h5{
    min-height: unset;
    margin-bottom:20px;
  }
  .assessment .learn-more{
    margin-top:60px;
  }
  .assessment .hide{
    display: none;
  }
  .assessment .on + .hide{
    display: block;
  }
  .assessment .open{
    color: var(--red02);
    position: relative;
    padding: 0 17px 0 0;
    /* background-image: url(/image/jp/r1/icon/icon_link_bottom_hd.gif);
    background-repeat: no-repeat;
    background-position: right center;
    background-size: 16px 16px;
    -moz-background-size: 16px 16px;
    -webkit-background-size: 16px 16px;
    -o-background-size: 16px 16px;
    -ms-background-size: 16px 16px; */
    font-size: 100%;
    cursor: pointer;
  }
  .assessment .open:hover{
    text-decoration: underline;
  }
  /* .assessment .on .open{
    background-image: url(/image/jp/r1/icon/icon_link_top_hd.gif);
  } */
/* 
  =============================================================================
  disclosure
  ============================================================================= 
  */
  .disclosure .Grid4 .LinkListStyle1:not(.ResponsiveTableStyle2 .LinkListStyle1), 
  .management .Grid4 .LinkListStyle1:not(.ResponsiveTableStyle2 .LinkListStyle1),
  .materiality .Grid4 .LinkListStyle1:not(.ResponsiveTableStyle2 .LinkListStyle1){
    margin:50px 0 100px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
  .materiality .Grid4 .LinkListStyle1:not(.ResponsiveTableStyle2 .LinkListStyle1){
    margin:-20px 0 20px 0;
  }
  .disclosure .Grid4 .LinkListStyle1 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li), 
  .management .Grid4 .LinkListStyle1 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li),
  .materiality .Grid4 .LinkListStyle1 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li){
    width: 48%;
    background: var(--light);
    margin-bottom: 10px;
    font-weight: bold;
    font-size: var(--large);
    transition: .5s;
    padding: 0;
  }
  .disclosure .Grid4 .LinkListStyle1 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a), 
  .management .Grid4 .LinkListStyle1 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a),
  .materiality .Grid4 .LinkListStyle1 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a){
    padding: 20px ;
    display: block;
    background-image: url(../../../image/jp/r1/icon/icon_new_window_hd.gif)no-repeat !important;
    background-position: 95% 50%;
  }
  .disclosure .Grid4 .LinkListStyle1 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a):hover, 
  .management .Grid4 .LinkListStyle1 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a):hover,
  .materiality .Grid4 .LinkListStyle1 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a):hover{
    background-color: #f7f7f7;
  }

  .materiality .Grid4 .LinkListStyle1.ptrn2 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li){
    width: auto;
    background: var(--light);
    margin-bottom: 10px;
    font-weight: normal;
    font-size: var(--regular);
    transition: .5s;
    padding: 0;
  }

  .materiality .Grid4 .LinkListStyle1.ptrn2 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a){
    padding: 20px 40px 20px 20px;
    display: block;
    background-image: url(../../../image/jp/r1/icon/icon_new_window_hd.gif)no-repeat !important;
    background-position: 95% 50%;
  }

  .materiality .Grid4 .LinkListStyle1.ptrn2 li a:not(.ResponsiveTableStyle2 .LinkListStyle1 li a):hover{
    background-color: #f7f7f7;
  }
/* 
  =============================================================================
  esg
  ============================================================================= 
  */
.environment .LinkListStyle1 a,
.social .LinkListStyle1 a,
.governance .LinkListStyle1 a{
  font-size: 180%;
    line-height: 140%;
}
.environment .LinkListStyle1,
.social .LinkListStyle1,
.governance .LinkListStyle1
{
  margin-top:30px;
}
.environment .LinkListStyle1 li a,
.social .LinkListStyle1 li a,
.governance .LinkListStyle1 li a
{
  padding: 0px 37px 0 0;
}
.environment .LinkListStyle1 li a:link,
.social .LinkListStyle1 li a:link,
.governance .LinkListStyle1 li a:link
{
  background-size: 30px 30px;
    -moz-background-size: 30px 30px;
    -webkit-background-size: 30px 30px;
    -o-background-size: 30px 30px;
    -ms-background-size: 30px 30px;
}


.read_2{
  border:1px solid var(--gray03);
  padding: 20px;
  margin-bottom:80px;
}
.read_2 h3{
  margin:0;
}
.environment .BoxPatternA h2{
  text-align: center;
}
/* 
=============================================================================
GRI
============================================================================= 
*/
.griExplanation { margin-bottom: 30px; }
.griExplanation dt {
width: 100%;
margin-bottom: 5px;
font-size: 100%;
}
.griExplanation dd {
display: inline-block;
margin-right: 20px;
font-size: 100%;
}
.gri #Contents table thead th{
background: var(--red02);
color: #fff;
text-align: center;
}
.gri #Contents table tbody th{
font-weight: bold;
}
.dropAllOC a{
padding: 9px 22px 9px 15px;
background-color: #e60027;
color: #fff;
text-decoration: none;
border-right: solid 3px transparent;
display: inline-block;
min-width: 130px;
min-height: 18px;
margin: 0 0 15px;
text-align: center;
font-size: 83%;
line-height: 130%;
background-image: url(../../../image/jp/r1/icon/icon_link_right_l_white_hd.gif);
background-repeat: no-repeat;
background-position: right center;
background-size: 16px 16px;
-moz-background-size: 16px 16px;
-webkit-background-size: 16px 16px;
-o-background-size: 16px 16px;
-ms-background-size: 16px 16px;
word-break: break-all;
}
.dropTitle {
position: relative;
}
.dropTitle::before {
content: "";
background: url(/sustainability/assets/image/icon/plus.png) no-repeat center center;
background-size: 20px;
display: inline-block;
width: 20px;
height: 20px;
margin-right: 10px;
}
.dropTitle.dropFlag::before{
  content: "";
background: url(/sustainability/assets/image/icon/minus2.png) no-repeat center center;background-size: 20px;
display: inline-block;
width: 20px;
height: 20px;
margin-right: 10px;
}

  /* 
  =============================================================================
  PC版〜上
  ============================================================================= 
  */
  @media screen and (min-width: 1001px){
  .tab{display: none !important;}
  .sp{display: none !important;}

  .mb0_pc{margin-bottom:0px;}
  .mb10_pc{margin-bottom:10px;}
  .mb20_pc{margin-bottom:20px;}
  .mb30_pc{margin-bottom:30px;}
  .mb40_pc{margin-bottom:40px;}
  .mb50_pc{margin-bottom:50px;}
  .mb60_pc{margin-bottom:60px;}
  .mb70_pc{margin-bottom:70px;}
  .mb80_pc{margin-bottom:80px;}
  .mb90_pc{margin-bottom:90px;}
  .mb100_pc{margin-bottom:100px;}
  
  .w10_pc{width: 10%;}
  .w20_pc{width: 20%;}
  .w30_pc{width: 30%;}
  .w40_pc{width: 40%;}
  .w50_pc{width: 50%;}
  .w60_pc{width: 60%;}
  .w70_pc{width: 70%;}
  .w80_pc{width: 80%;}
  .w90_pc{width: 90%;}
  .w100_pc{width: 100%;}
  }
  
  /* 
  =============================================================================
  TAB〜PC〜上
  ============================================================================= 
  */
  @media screen and (min-width: 768px){
  .pc{display: block;}
  .sp{display: none !important;}
  }
  /* 
  =============================================================================
  TAB版
  ============================================================================= 
  */
  @media screen and (max-width: 1000px){
  /* common------------------------------------------------------------- */
  .pc-tab{display: none !important;}
  .tab{display: block;}
  /*  assessment  */
  
  .assessment .card:not(.assessment #anc01 .card), .assessment #anc01 .card{
    width: 48.5%;
  }
  .height_cont{height: 3.5em;}
  .assessment #anc03 .card:not(.assessment #anc01 .card){
    width: 100%;
  }
  }
  @media screen and (max-width: 1304px){
  .banner-fixHeight {
  margin: 0 -15px;
  box-sizing: border-box;
  width: 100vw;
  }
  .hero-banner .container{
  padding: 0 15px;
  }
  
  }
  @media screen and (max-width: 1023px){
  .sustainability2022-report .reports-table .table{
  display:block;
  }
  }
  /* 
  =============================================================================
  SP版
  ============================================================================= 
  */
  @media screen and (max-width: 767px){
  /* common------------------------------------------------------------- */

  .w100_sp{width: 100%;}
  .pc{display: none!important;}
  .sp{display: block;}
  .tab{display: none !important;}
  .f_box{display: block;}
  .f_box > div, .f_box.col2 > div{width: 100%;}
  h2.esg_title{
    padding-left:15px;
  }
  h2.esg_title.sp_mlr0{
    padding-left:0px;
    margin-left:0;
    margin-right:0;
  }
  .sustainability-body {
  padding: 20px 0;
  }
  .text-widget h3 {
  font-size: var(--regular);
  }
  .HeadH1Title {
  font-size: var(--xxxxlarge);
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 1.1em;
  }
  h3.sustainability-title-7{
    font-size: var(--xlarge);
  }
  .JS h2.sustainability-title-2{margin-left:0; margin-bottom:20px;font-size: var(--xxxlarge);}
  .slide, .main_img {height: 220px;margin-bottom: 20px;}
  .materiality .slide_txt h2{margin: 0 0px 5px;font-size: 190%;}
  .materiality  .learn-more h2:before{display: none;}
  .materiality  .learn-more h2{margin-bottom:20px;}
  .materiality  .learn-more h2 + ul, .materiality .learn-more ul{margin-top:20px;}
  .footerBner2{margin:0 -15px;}
  .footerBner2 ul li:not(last-child){margin:0 0 20px 0;}
  .footerBner2 ul{justify-content: center;}
  .news .news_list dt{width: unset;}
  .news .news_list dd{width: 100%;}
  .JS #Contents img.esg_img{width: 100%; margin-bottom:20px !important; height: auto; aspect-ratio: 5 / 2;object-position: 50% 50%;}
  .table_scroll{overflow-x:scroll;}
  .hero-banner {
    margin: 0 -15px;
    width: 100vw;
  }
  h2.summary-title-1{
    margin-left:0;
  }
  
  .hero-banner h1{
  /* margin-left:15px; */
    /* font-size: var(--xxxlarge); */
    line-height: 1.1em;
  }
  .banner-fixHeight{
  height:200px;
  }
  .news .news_list dd{
  margin-bottom:30px;
  }
  .learn-more ul li a::before, .learn-more ul li.active a::before {
  height: 24px;
  width: 14px;
  }
  .learn-more ul li a{
  padding-left: 19px;
  font-size: var(--xsmall);
  }.learn-more ul li a:hover::before {
  left: 3px;
  }
  ul.list_inline:not(.top .list_inline){
  margin: 20px 0;
  padding: 0 0 20px 0;
  }
  .learn-more ul li {
  margin-top: 2px;
  }
  .list_inline li{
  margin-right: 1em;
  line-height: 1.5em;
  padding-left: 1.2em;
  background: url(/sustainability/assets/image/icon/arrow-down_2.svg) left 0px top 0.4em no-repeat;
  background-size: 13px auto;
  font-size: var(--small);
  }
  .JS h2.sustainability-title-2{
  margin-left:0;
  margin-right:0;
  font-size: var(--xxxlarge);
  padding: 20px 0 10px 20px;
  }
  .sustainability-title-2 + p.TextStyle1{
  margin-bottom:20px;
  }
  h3.sustainability-title-6 {
  font-size: var(--xlarge);
  margin-bottom: 20px;
  }
  .ImgOnlyStyle + .sustainability-title-2, h2.h2_title {
  margin-top: 20px;
  }
  h2.h2_title, ul.sdgs{
  margin-bottom:20px
  }
  table {width:auto;}
  .Section {
  margin-bottom: 20px;
  }
  .f_box > div.w38, .f_box > div.w60{width: 100%;}
  .assessment .card:not(.assessment #anc01 .card), .assessment #anc01 .card, .assessment #anc01 .card .card_inn{
    width: 100%;
    min-height: unset;
  }
  .height_cont{height: unset;}
  
  .assessment .card,
  .assessment #anc03 .card .card_inn > div{
    width: 100%;
    min-height: unset;
  }
  .assessment .card_box h5 {
    min-height: unset;
    margin-bottom: 10px;
}
.assessment h2{
  margin:40px 0 10px 0;
}
.assessment .card img{
  width: 70%;
  display: block;
  margin: 0 auto 10px auto;
}
.assessment #anc03 .card ul{
  margin-bottom:10px;
}
.news .learn-more{
  margin-top: 20px;
}
.disclosure .Grid4 .LinkListStyle1 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li), 
  .management .Grid4 .LinkListStyle1 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li),
  .materiality .Grid4 .LinkListStyle1 li:not(.ResponsiveTableStyle2 .LinkListStyle1 li){
  width: 100%;
}
.report_section{
  padding:20px;
}
.report_body .title{
  justify-content: left;
}
.report_section .ButtonStyle1 a {
  min-width: unset;
  width: 100%;
  box-sizing: border-box;
}
.downloadpage .title .open{
  margin-left:10px;
}
.BoxPatternA .f_box .w48{width: 100%;}
  }



  @media screen and (max-width: 850px){
  /* 
  =============================================================================
  DOWNLOAD
  ============================================================================= 
  */
  .report_section{
    margin-bottom:40px;
  }
  .report_section > div:first-child{
    width: 100%;
    margin-bottom:40px;
  }
  .report_section > div:last-child,
  .report_body .title,
  .report_body .LinkListStyle1{
    width: 100%;
  }
  .report_body .title{
  padding: 10px 0 0;
  }
  .downloadpage .report_head{
    display: none;
  }
  .report_body > div{
    padding: 0 0px;
  }
  .downloadpage h2{
    padding-left: 15px;
    margin-bottom:20px;
  }

  }


  @media screen and (min-width: 1305px){
    .BoxPatternB{
      margin: 0 -15px 15px;
    }
  }