/* ----------------------------------------------------------------------------
 Home
---------------------------------------------------------------------------- */
.p-top-catch__ttl {
  font-size: 5.2rem;
}
#banner-kv {
  position: absolute;
  width: 90vw;
  height: 90vh;
}
#banner-kv ul {
  width: 300px;
  z-index: 10;
}
#banner-kv li + li {
  margin-top: 10px;
}
#banner-kv a {
  display: block;
}
#banner-kv a:hover,
#banner-kv a:active,
#banner-kv a:focus {
  opacity: 1;
}
#banner-kv img {
  width: 300px;
}
#banner-kv .square img {
  width: 200px;
}
@media print, screen and (min-width: 751px) {
  #banner-kv ul {
    position: absolute;
    bottom: 100px;
    right: 0;
  }
}
@media print, screen and (max-width: 750px) {
  #banner-kv ul {
    position: absolute;
    bottom: 100px;
    left: calc(50% + 5vw);
    transform: translateX(-50%);
  }
}





/* ----------------------------------------------------------------------------
 link
---------------------------------------------------------------------------- */
.l-content a[target="_blank"]:after,
.l-header__conts a[target="_blank"]:after,
.l-footer__cont_2 a[target="_blank"]:after {
  font-family: "Font Awesome 5 Free";
  content: '\f24d';
  font-weight: 500;
  margin-left: 5px;
}
.l-content a[href$=".pdf"]:after,
.l-header__conts a[href$=".pdf"]:after,
.l-footer__cont_2 a[href$=".pdf"]:after {
  display: none;
}
.list-of-offices .l-content a[target="_blank"]:after {
  content: '';
}

/*
.l-content a[href$=".pdf"]:after,
.l-header__conts a[href$=".pdf"]:after,
.l-footer__cont_2 a[href$=".pdf"]:after {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background: url(/assets/img/common/ico_pdf.svg) no-repeat;
  background-size: contain;
}
*/
/*
.news-content a:before {
  font-family: "Font Awesome 5 Free";
  content: '\f054';
  font-weight: 900;
  margin-right: 5px;
}
*/

.news-content a {
  color: #337cbc;
  text-decoration: underline;
}
.news-content a:hover,
.news-content a:active,
.news-content a:focus {
  text-decoration: none;
}

.news-content .p-article-content__detail figure img {
  width: 100%!important;
}
.news-content .p-article-content__detail .block-photo {
  display: flex;
  justify-content: space-between;
}
.news-content .p-article-content__detail .block-photo figure {
  flex: 1;
  margin-top: 4rem;
}
.news-content .p-article-content__detail .block-photo figure + figure {
  margin-left: 20px;
}
.news-content .p-article-content__detail figure figcaption {
  margin-top: 1rem;
  font-size: 1.3rem;
  text-align: left;
}
@media screen and (max-width: 750px) {
  .news-content .p-article-content__detail .block-photo {
    display: block;
  }
  .news-content .p-article-content__detail .block-photo figure + figure {
    margin-left: 0;
  }
}




.c-ordinaryList__link a {
  display: inline-block;
  padding: 5px 10px;
  background-color: #005bab;
  color: #ffffff;
}
.c-ordinaryList__link a[target="_blank"]:after {
  display: none;
}

.link-normal {
  text-decoration: underline;
}
.link-normal:hover,
.link-normal:active,
.link-normal:focus {
  text-decoration: none;
}
.link-normal.before:before {
  content: '－ ';
  color: #005bab;
}




.news-content .gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}
.news-content .gallery .gallery-item {
  margin-top: 30px;
  margin-left: auto;
  margin-right: auto;
  padding: 15px;
  border: 1px solid #eeeeee;
}
.news-content .gallery .gallery-item .gallery-icon a {
  display: block;
}
.news-content .gallery .gallery-caption {
  margin-top: 15px;
  font-size: 14px;
  line-height: 1.6em;
  color: #555555;
}
.news-content .gallery-columns-2 .gallery-item {
  width: calc((100% - 30px) / 2);
  margin-right: 0;
}
.news-content .gallery-columns-2 .gallery-item:nth-of-type(n+2) {
  margin-left: 30px;
}
.news-content .gallery-columns-2 .gallery-item:nth-of-type(2n+1) {
  margin-left: 0;
}
.news-content .gallery-columns-3 .gallery-item {
  width: calc((100% - 60px) / 3);
  margin-right: 0;
}
.news-content .gallery-columns-3 .gallery-item:nth-of-type(n+2) {
  margin-left: 30px;
}
.news-content .gallery-columns-3 .gallery-item:nth-of-type(3n+1) {
  margin-left: 0;
}
@media screen and (max-width: 750px) {
  .news-content .gallery-columns-3 .gallery-item:nth-of-type(3n+1) {
    margin-left: 30px;
  }
}
@media screen and (max-width: 750px) {
  .news-content .gallery-columns-3 .gallery-item {
    width: calc((100% - 30px) / 2);
  }
  .news-content .gallery-columns-3 .gallery-item:nth-of-type(2n+1) {
    margin-left: 0;
  }
}
.news-content .gallery-columns-4 .gallery-item {
  width: calc((100% - 90px) / 4);
  margin-right: 0;
}
.news-content .gallery-columns-4 .gallery-item:nth-of-type(n+2) {
  margin-left: 30px;
}
.news-content .gallery-columns-4 .gallery-item:nth-of-type(4n+1) {
  margin-left: 0;
}
@media screen and (max-width: 750px) {
  .news-content .gallery-columns-4 .gallery-item:nth-of-type(4n+1) {
    margin-left: 30px;
  }
}
@media screen and (max-width: 750px) {
  .news-content .gallery-columns-4 .gallery-item {
    width: calc((100% - 30px) / 2);
  }
  .news-content .gallery-columns-4 .gallery-item:nth-of-type(2n+1) {
    margin-left: 0;
  }
}





/* ----------------------------------------------------------------------------
 #patent-list
---------------------------------------------------------------------------- */
.c-ordinaryList__ttl .btn_detail_pdf {
  display: inline-block;
  margin-left: 10px;
  padding: 5px 10px;
  background-color: #005bab;
  color: #ffffff;
}
.c-ordinaryList__ttl .btn_detail_pdf:before {
  font-family: "Font Awesome 5 Free";
  content: '\f1c1';
  font-weight: 900;
  margin-right: 5px;
}
@media print, screen and (max-width: 750px) {
  .c-ordinaryList__ttl .btn_detail_pdf {
    display: block;
    width: 5em;
    margin-top: 5px;
    margin-left: 0;
    padding: 10px;
    text-align: center;
  }
}





/* ----------------------------------------------------------------------------
 #mpv
---------------------------------------------------------------------------- */
/*
#mpv .c-asideLinkBoxs__list {
  max-width: 1080px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 751px) {
  #mpv .c-asideLinkBoxs__list--b .c-asideLinkBoxs__item {
    width: calc((100% - 240px) / 4);
  }
}
*/





/* ----------------------------------------------------------------------------
 #page_top
---------------------------------------------------------------------------- */
#page_top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  opacity: 0;
  z-index: 5;
}
#page_top a {
  display: inline-block;
  padding: 15px 20px;
  background-color: #005bab;
  color: #ffffff;
  box-shadow: 0px 0px 10px 4px rgba(0,0,0,0.1);
}
#page_top a:before {
  font-family: "Font Awesome 5 Free";
  content: '\f077';
  font-weight: 900;
  font-size: 30px;
}
#page_top a:hover,
#page_top a:active,
#page_top a:focus {
  background-color: #ffffff;
  color: #005bab;
  opacity: 1;
}
@media print, screen and (max-width: 750px) {
  #page_top {
    display: none;
  }
}





/* ----------------------------------------------------------------------------
 #header
---------------------------------------------------------------------------- */
.l-header__conts {
  width: 880px;
}
.l-header__c1 {
  max-width: 716px;
}
.l-header__c2 {
  width: 134px;
}
.l-header__c1List {
  align-items: center;
}
.l-header__c1Item a {
  display: inline-block;
  line-height: 1.2em;
  text-align: center;
}





/* ----------------------------------------------------------------------------
 /corporate-profile/company-history/
---------------------------------------------------------------------------- */
.p-historyCt--04:after {
  top: 370px;
  padding-top: 560px;
}





/* ----------------------------------------------------------------------------
 /esg/governance/ table.cross-highlight
---------------------------------------------------------------------------- */
.cross-highlight {
  position: relative;
  width: 100%;
  table-layout: fixed;
  overflow: hidden;
}
.cross-highlight:after {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  background-color: #f2f3f5;
  z-index: -5;
}
.cross-highlight thead th {
  background-color: #005bab;
  color: #ffffff;
}
.cross-highlight thead td {
  background-color: #eaeaea;
  font-weight: bold;
}
.cross-highlight thead td span {
  display: none;
}
.cross-highlight th,
.cross-highlight td {
  border: 1px solid #ffffff;
  line-height: 1.2em;
  text-align: center;
  vertical-align: middle;
}
.cross-highlight thead th,
.cross-highlight thead div,
.cross-highlight thead tr:nth-of-type(2) td {
  padding: 10px;
}
.cross-highlight thead tr:nth-of-type(1) td {
  vertical-align: top;
}
.cross-highlight thead div {
  color: #323233;
  font-weight: bold;
}
.cross-highlight tbody tr:hover {
  background-color: #dbe6f1;
}
.cross-highlight tbody th,
.cross-highlight tbody td {
  position: relative;
  padding: 10px;
}
.cross-highlight tbody th:nth-of-type(1) {
  background-color: #005bab;
  color: #ffffff;
}
.cross-highlight tbody th:nth-of-type(2) {
  background-color: #eaeaea;
  font-weight: normal;
}
.cross-highlight tbody td:hover {
  background-color: #005bab;
  color: #ffffff;
}
.cross-highlight tbody td:hover:after {
  position: absolute;
  top: -100vh;
  left: 0;
  width: 100%;
  height: 200vh;
  content: '';
  background-color: #dbe6f1;
  z-index: -1;
}
@media screen and (max-width: 750px) {
  .cross-highlight thead tr:nth-of-type(2) td,
  .cross-highlight thead th[rowspan],
  .cross-highlight tbody th {
    writing-mode: vertical-rl;
    text-orientation: upright;
  }
  .cross-highlight thead td span {
    display: inline-block;
  }
  .cross-highlight thead td br {
    display: none;
  }
/*
  .cross-highlight thead {
    display: block;
    width: 100%;
  }
  .cross-highlight thead th[rowspan],
  .cross-highlight thead td {
    width: 99999px;
  }
  .cross-highlight tbody {
    display: block;
    width: 100%;
    height: 175px;
    overflow-y: scroll;
  }
  .cross-highlight tbody th,
  .cross-highlight tbody td {
    width: 99999px;
  }
  .cross-highlight tbody::-webkit-scrollbar {
    width: 15px;
    height: 15px;
  }
  .cross-highlight tbody::-webkit-scrollbar-track {
    border-radius: 10px;
    background: #f2f2f2;
  }
  .cross-highlight tbody::-webkit-scrollbar-thumb {
    border-radius: 10px;
    background: #005bab;
  }
*/
}





/* ----------------------------------------------------------------------------
 ESG / Sustainability
 table.c-commonTable.commonTable01
---------------------------------------------------------------------------- */
.c-kv--sustainability {
  background: url(/assets/img/esg/common/esg_kv_base.png) no-repeat center center;
  background-size: cover;
}

ul.normal {
  list-style: disc;
  margin-left: 20px;
}
ol.normal {
  list-style: deciaml;
  margin-left: 20px;
}
ul.normal li + li,
ol.normal li + li {
  margin-top: 10px;
}
.c-commonTable.commonTable01 th {
  line-height: 1.4em;
  vertical-align: middle;
  white-space: nowrap;
  font-size: 1.6rem;
  font-weight: bold;
}
.c-commonTable.commonTable01 td {
  vertical-align: middle;
  line-height: 1.4em;
}
.c-commonTable.commonTable01 .type01 {
  background-color: #e9c2c2;
}
.c-commonTablecommonTable01 .type02 {
  background-color: #bcdfe0;
}
.c-commonTable.commonTable01 .type03 {
  font-size: 1.8rem;
}
.c-commonTable.commonTable01 .type04 {
  background-color: #b8cde4;
}
@media screen and (max-width: 750px) {
  .c-commonTable.commonTable01,
  .c-commonTable.commonTable01 tbody,
  .c-commonTable.commonTable01 tr,
  .c-commonTable.commonTable01 th,
  .c-commonTable.commonTable01 td {
    display: block;
    width: 100%;
  }
  .c-commonTable.commonTable01 th br {
    display: none;
  }
}






/* ----------------------------------------------------------------------------
 .c-asideLinkBoxs.localNav_footer
---------------------------------------------------------------------------- */
@media screen and (min-width: 751px) {
  .c-asideLinkBoxs.localNav_footer {
    width: 1344px;
    margin-left: auto;
    margin-right: auto;
  }
  .c-asideLinkBoxs.localNav_footer .c-asideLinkBoxs__list {
    justify-content: flex-start;
  }
  .c-asideLinkBoxs.localNav_footer .c-asideLinkBoxs__item a {
    display: block;
  }
}





/* ----------------------------------------------------------------------------
 #climate-action
---------------------------------------------------------------------------- */
#climate-action .l-mainContent2 {
  padding-bottom: 0;
}

#climate-action .c-commonTable.commonTable02 {
  margin-bottom: 20px;
}
#climate-action .c-commonTable.commonTable02 th {
  white-space: nowrap;
  font-weight: bold;
  vertical-align: middle;
}
#climate-action .c-commonTable.commonTable02 td {
  vertical-align: middle;
}
#climate-action .c-commonTable.commonTable02 tr td:last-of-type {
  vertical-align: middle;
  text-align: center;
}
#climate-action .c-commonTable.commonTable02 .type01 {
    background-color: #e9c2c2;
}
#climate-action .c-commonTable.commonTable02 .type02 {
    background-color: #ccdda5;
}
#climate-action .c-commonTable.commonTable02 .type04 {
  background-color: #b8cde4;
}
#climate-action .c-commonTableWrap::-webkit-scrollbar {
  width: 15px;
}
#climate-action .c-commonTableWrap::-webkit-scrollbar-track {
  border-radius: 10px;
  background: #f2f2f2;
}
#climate-action .c-commonTableWrap::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: #095ca8;
}
@media screen and (max-width: 750px) {
  #climate-action .c-commonTableWrap {
    margin-bottom: 20px;
  }
  #climate-action .c-commonTable.commonTable02 {
    width: 950px;
    margin-bottom: 0;
  }
}





