@charset "UTF-8";
/*--------------------------------------------------------------------------------
js-pulldownV2
--------------------------------------------------------------------------------*/
.js-pulldownV2-body {
  overflow: hidden;
}

@media print {
  .js-pulldownV2 {
    height: 100% !important;
  }
}

/*--------------------------------------------------------------------------------
js-pulldownV3
--------------------------------------------------------------------------------*/
.js-pulldownV3-body {
  overflow: hidden;
}

@media print {
  .js-pulldownV3 {
    height: 100% !important;
  }
}

/*--------------------------------------------------------------------------------
js-pulldownV5
--------------------------------------------------------------------------------*/
.js-pulldownV5 {
  margin: 25px 0 0;
}

.js-pulldownV5 .articleV2-list {
  margin: 0;
}

.js-pulldownV5-body {
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.js-pulldownV5-trigger {
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1) 400ms;
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1) 400ms;
}

@media print {
  .js-pulldownV5 {
    height: 100% !important;
  }
}

.article[data-category^="about-us-ir-"] .js-pulldownV5 {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .js-pulldownV5 {
    margin: 10px 0 0;
    margin: 3.125vw 0 0;
  }
}

.cell_color_blue > span {
  display: inline-block;
  width: 60px;
  height: 16px;
  background: #d9efff;
}

th.cell_color_blue,
td.cell_color_blue {
  background: #d9efff;
}

/*--------------------------------------------------------------------------------
js-pulldownV6
--------------------------------------------------------------------------------*/
.js-pulldownV6-body {
  overflow: hidden;
}

@media print {
  .js-pulldownV6-body {
    height: 100% !important;
  }
}

/*--------------------------------------------------------------------------------
js-pulldownV7
--------------------------------------------------------------------------------*/
.js-pulldownV7-body {
  overflow: hidden;
}

@media print {
  .js-pulldownV7-body {
    height: 100% !important;
  }
}

/*--------------------------------------------------------------------------------
read-more
--------------------------------------------------------------------------------*/
.read-more {
  height: 30px;
  margin: 100px auto 0;
  text-align: center;
}

.read-more a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #fff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-more a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-more a:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(../images/common/icon-more-white.png);
  background-size: 100% 100%;
}

@media only screen and (max-width: 767px) {
  .read-more {
    height: 45px;
    margin: 50px auto 0;
    margin: 15.625vw auto 0;
  }
  .read-more a {
    padding: 0 0 0 9.5vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 45px;
  }
  .read-more a:before {
    width: 22px;
    width: 7.032vw;
    height: 22px;
    height: 7.032vw;
  }
}

/*--------------------------------------------------------------------------------
read-moreV2
--------------------------------------------------------------------------------*/
.read-moreV2 {
  height: 30px;
  margin: 70px auto 0;
}

.read-moreV2 a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-moreV2 a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-moreV2 a:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(../images/common/icon-more-blue.png);
  background-size: 100% 100%;
}

@media only screen and (max-width: 767px) {
  .read-moreV2 {
    height: 45px;
    margin: 50px auto 0;
    margin: 15.625vw auto 0;
  }
  .read-moreV2 a {
    padding: 0 0 0 9.5vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 45px;
  }
  .read-moreV2 a:before {
    width: 22px;
    width: 7.032vw;
    height: 22px;
    height: 7.032vw;
  }
}

/*--------------------------------------------------------------------------------
read-moreV3
--------------------------------------------------------------------------------*/
.read-moreV3 {
  position: absolute;
  top: 50%;
  right: 22px;
  height: 30px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.read-moreV3 a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-moreV3 a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-moreV3 a:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(../images/common/icon-more-blue.png);
  background-size: 100% 100%;
}

@media only screen and (max-width: 767px) {
  .read-moreV3 {
    height: 22px;
    height: 7.032vw;
    padding: 25px 0;
    padding: 7.8125vw 0;
    position: relative;
    top: 0;
    right: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .read-moreV3 a {
    display: block;
    padding: 0 0 0 30px;
    padding: 0 0 0 9.375vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 22px;
    line-height: 7.032vw;
  }
  .read-moreV3 a:before {
    width: 22px;
    width: 7.032vw;
    height: 22px;
    height: 7.032vw;
  }
}

/*--------------------------------------------------------------------------------
read-moreV4
--------------------------------------------------------------------------------*/
.read-moreV4 {
  margin: 100px 0 0;
  text-align: center;
}

.read-moreV4 a {
  position: relative;
  display: inline-block;
  font-size: 16px;
  color: #66bfff;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-moreV4 a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.read-moreV4 a:before {
  display: block;
  width: 40px;
  height: 40px;
  margin: 0 auto 20px;
  content: '';
  background-image: url(../images/common/icon-plus-white.png);
  background-color: #66bfff;
  background-size: 100% 100%;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  border-radius: 50%;
}

@media only screen and (max-width: 767px) {
  .read-moreV4 {
    margin: 50px 0 0;
    margin: 15.625vw 0 0;
  }
  .read-moreV4 a {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .read-moreV4 a:before {
    width: 30px;
    width: 9.375vw;
    height: 30px;
    height: 9.375vw;
  }
}

/*--------------------------------------------------------------------------------
carousel
--------------------------------------------------------------------------------*/
.carousel {
  overflow: hidden;
  width: 100%;
  position: relative;
  /*
&[data-category="innovation-testing-research"] {
.carousel {
&-figureV2 {
height: 398px;
img {
width: auto;
height: 100%;
margin: 0 auto;
}
video {
height: 398px;
}
}
}
}
*/
}

.carousel-viewer {
  position: relative;
}

.carousel-item {
  float: left;
  position: relative;
  width: 100%;
}

.carousel-figure {
  height: 100vh;
  background-size: cover;
  background-position: center center;
}

.carousel[data-category="front"] .carousel-caption {
  position: absolute;
  top: 50%;
  left: 60px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.4);
  color: #fff;
}

.carousel[data-category="front"] .carousel-caption > h2 {
  margin: 0 0 8px;
}

.carousel[data-category="front"] .carousel-caption > h2 > span {
  display: block;
  margin: 0 0 8px;
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  letter-spacing: 0.5px;
}

.carousel[data-category="front"] .carousel-caption > h2 > i {
  font-size: 18px;
  font-weight: 500;
  font-style: normal;
}

.carousel[data-category="front"] .carousel-caption > p {
  margin: 0 0 20px;
  font-size: 40px;
  font-weight: 400;
  letter-spacing: -1.6px;
}

.carousel[data-category="front"] .carousel-caption > span {
  font-size: 18px;
}

.carousel[data-category="front"] .carousel-thumbnail {
  position: absolute;
  left: 50%;
  bottom: 100px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.carousel[data-category="front"] .carousel-thumbnail-items {
  display: table;
}

.carousel[data-category="front"] .carousel-thumbnail-item {
  display: table-cell;
  padding: 0 5px;
}

.carousel[data-category="front"] .carousel-thumbnail-item.is-active a:before {
  background-color: #599cff;
}

.carousel[data-category="front"] .carousel-thumbnail-item a {
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
  background-color: transparent;
  -webkit-transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.carousel[data-category="front"] .carousel-thumbnail-item a:before {
  position: absolute;
  top: 28px;
  left: 0;
  width: 60px;
  height: 3px;
  background-color: #fff;
  content: '';
}

.carousel[data-category="front"] .carousel-thumbnail-item a:hover {
  background-color: rgba(0, 0, 0, 0.15);
  -webkit-transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.carousel[data-category="csr"] .carousel-caption {
  position: absolute;
  top: 50%;
  left: 60px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.4);
  color: #fff;
}

.carousel[data-category="csr"] .carousel-caption--v2 {
  background: rgba(0, 0, 0, 0.3);
  padding: 10px 20px 20px;
  margin: -10px -20px -20px;
}

.carousel[data-category="csr"] .carousel-caption > h2 > span {
  display: block;
  line-height: 1;
  font-size: 80px;
  font-weight: 600;
  font-family: Arial;
  letter-spacing: 0.5px;
}

.carousel[data-category="csr"] .carousel-caption > h2 > i {
  display: block;
  margin: 5px 0 0;
  font-size: 32px;
  font-weight: 500;
  font-weight: 600;
  font-family: Arial;
  font-style: normal;
}

.carousel[data-category="csr"] .carousel-caption > p:not([class*="-text"]) {
  margin: 20px 0 0;
  font-size: 40px;
  font-weight: 400;
  letter-spacing: -1.6px;
}

.carousel[data-category="csr"] .carousel-caption-text {
  margin: 20px 0 0;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: -0.02em;
}

.carousel[data-category="csr"] .carousel-caption > span {
  font-size: 18px;
}

.carousel[data-category="csr"] .carousel-thumbnail {
  position: absolute;
  left: 50%;
  bottom: 100px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.carousel[data-category="csr"] .carousel-thumbnail-items {
  display: table;
}

.carousel[data-category="csr"] .carousel-thumbnail-item {
  display: table-cell;
  padding: 0 5px;
}

.carousel[data-category="csr"] .carousel-thumbnail-item.is-active a:before {
  background-color: #599cff;
}

.carousel[data-category="csr"] .carousel-thumbnail-item a {
  position: relative;
  display: block;
  width: 60px;
  height: 60px;
  background-color: transparent;
  -webkit-transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.carousel[data-category="csr"] .carousel-thumbnail-item a:before {
  position: absolute;
  top: 28px;
  left: 0;
  width: 60px;
  height: 3px;
  background-color: #fff;
  content: '';
}

.carousel[data-category="csr"] .carousel-thumbnail-item a:hover {
  background-color: rgba(0, 0, 0, 0.15);
  -webkit-transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.carousel[data-category="innovation-production-engineering"] .carousel-item-inner,
.carousel[data-category="innovation-testing-research"] .carousel-item-inner {
  width: 700px;
  margin: 0 auto;
}

.carousel[data-category="innovation-production-engineering"] .carousel-heading,
.carousel[data-category="innovation-testing-research"] .carousel-heading {
  font-size: 24px;
  color: #666;
  text-align: left;
}

.carousel[data-category="innovation-production-engineering"] .carousel-figureV2,
.carousel[data-category="innovation-testing-research"] .carousel-figureV2 {
  margin: 30px 0;
  z-index: 1030;
  height: 398px;
}

.carousel[data-category="innovation-production-engineering"] .carousel-figureV2 img,
.carousel[data-category="innovation-testing-research"] .carousel-figureV2 img {
  display: block;
  width: auto;
  height: 100%;
  margin: 0 auto;
}

.carousel[data-category="innovation-production-engineering"] .carousel-figureV2 video,
.carousel[data-category="innovation-testing-research"] .carousel-figureV2 video {
  height: 398px;
}

.carousel[data-category="innovation-production-engineering"] .carousel-detail,
.carousel[data-category="innovation-testing-research"] .carousel-detail {
  margin: 0 50px;
  font-size: 16px;
  color: #666;
  line-height: 1.4;
  text-align: left;
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn,
.carousel[data-category="innovation-testing-research"] .carousel-btn {
  position: absolute;
  top: 250px;
  left: 50%;
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn:before,
.carousel[data-category="innovation-testing-research"] .carousel-btn:before {
  content: '';
  display: block;
  width: 30px;
  height: 60px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn--prev,
.carousel[data-category="innovation-testing-research"] .carousel-btn--prev {
  -webkit-transform: translate(-440px, 0);
  -ms-transform: translate(-440px, 0);
  transform: translate(-440px, 0);
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn--prev:before,
.carousel[data-category="innovation-testing-research"] .carousel-btn--prev:before {
  background-image: url(../images/common/icon-prev.png);
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn--prev:hover,
.carousel[data-category="innovation-testing-research"] .carousel-btn--prev:hover {
  cursor: pointer;
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn--next,
.carousel[data-category="innovation-testing-research"] .carousel-btn--next {
  -webkit-transform: translate(410px, 0);
  -ms-transform: translate(410px, 0);
  transform: translate(410px, 0);
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn--next:before,
.carousel[data-category="innovation-testing-research"] .carousel-btn--next:before {
  background-image: url(../images/common/icon-next.png);
}

.carousel[data-category="innovation-production-engineering"] .carousel-btn--next:hover,
.carousel[data-category="innovation-testing-research"] .carousel-btn--next:hover {
  cursor: pointer;
}

@media only screen and (max-width: 767px) {
  .carousel {
    /*
&[data-category="innovation-testing-research"] {
.carousel {
&-figureV2 {
height: auto;
img {}
video {
height: auto;
}
}
}
}
*/
  }
  .carousel[data-category="front"] .carousel-figure {
    padding: 50px 10px 0;
    padding: 50px 3.125vw 0;
    height: 370px;
    height: 133.4375vw;
  }
  .carousel[data-category="front"] .carousel-caption {
    position: relative;
    top: 10px;
    top: 3.125vw;
    left: 0;
    width: 100%;
    padding: 20px 10px;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    text-align: center;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.4);
  }
  .carousel[data-category="front"] .carousel-caption > h2 > span {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .carousel[data-category="front"] .carousel-caption > h2 > i {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .carousel[data-category="front"] .carousel-caption > p {
    margin: 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .carousel[data-category="front"] .carousel-caption > span {
    display: none;
  }
  .carousel[data-category="front"] .carousel-thumbnail {
    bottom: 50px;
  }
  .carousel[data-category="csr"] .carousel-figure {
    padding: 50px 10px 0;
    padding: 50px 3.125vw 0;
    height: 370px;
    height: 133.4375vw;
  }
  .carousel[data-category="csr"] .carousel-caption {
    position: relative;
    top: 10px;
    top: 3.125vw;
    left: 0;
    width: 100%;
    padding: 20px 10px;
    -webkit-transform: translate(0, 50px);
    -ms-transform: translate(0, 50px);
    transform: translate(0, 50px);
    text-align: center;
    color: #fff;
    background-color: rgba(0, 0, 0, 0.4);
  }
  .carousel[data-category="csr"] .carousel-caption--v2 {
    background-color: rgba(0, 0, 0, 0.4);
    padding: 20px 10px;
    margin: 0;
  }
  .carousel[data-category="csr"] .carousel-caption > h2 > i {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .carousel[data-category="csr"] .carousel-caption > p:not([class*="-text"]) {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .carousel[data-category="csr"] .carousel-caption-text {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .carousel[data-category="csr"] .carousel-caption > span {
    display: none;
  }
  .carousel[data-category="csr"] .carousel-thumbnail {
    bottom: 10px;
  }
  .carousel[data-category="innovation-production-engineering"],
  .carousel[data-category="innovation-testing-research"] {
    padding: 0 0 120px;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-item-inner,
  .carousel[data-category="innovation-testing-research"] .carousel-item-inner {
    width: 100%;
    padding: 0 20px;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-heading,
  .carousel[data-category="innovation-testing-research"] .carousel-heading {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-figureV2,
  .carousel[data-category="innovation-testing-research"] .carousel-figureV2 {
    margin: 30px 0;
    margin: 4.6875vw 0;
    height: auto;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-figureV2 img,
  .carousel[data-category="innovation-testing-research"] .carousel-figureV2 img {
    width: 100%;
    height: auto;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-figureV2 video,
  .carousel[data-category="innovation-testing-research"] .carousel-figureV2 video {
    height: auto;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-detail,
  .carousel[data-category="innovation-testing-research"] .carousel-detail {
    margin: 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-btn,
  .carousel[data-category="innovation-testing-research"] .carousel-btn {
    position: absolute;
    top: auto;
    bottom: 0;
    left: 50%;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-btn:before,
  .carousel[data-category="innovation-testing-research"] .carousel-btn:before {
    width: 15px;
    width: 4.6875vw;
    height: 15px;
    height: 9.375vw;
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-btn--prev,
  .carousel[data-category="innovation-testing-research"] .carousel-btn--prev {
    -webkit-transform: translate(-50px, 0);
    -ms-transform: translate(-50px, 0);
    transform: translate(-50px, 0);
  }
  .carousel[data-category="innovation-production-engineering"] .carousel-btn--next,
  .carousel[data-category="innovation-testing-research"] .carousel-btn--next {
    -webkit-transform: translate(50px, 0);
    -ms-transform: translate(50px, 0);
    transform: translate(50px, 0);
  }
}

/*--------------------------------------------------------------------------------
section2up
--------------------------------------------------------------------------------*/
.section2up {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.section2up-left {
  display: table-cell;
  vertical-align: middle;
}

.section2up-right {
  display: table-cell;
  vertical-align: middle;
}

@media only screen and (max-width: 1023px) {
  .section2up {
    display: block;
  }
  .section2up-left {
    display: block;
  }
  .section2up-right {
    display: block;
  }
}

/*--------------------------------------------------------------------------------
section2upV2
--------------------------------------------------------------------------------*/
.section2upV2 {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.section2upV2-left {
  display: table-cell;
  vertical-align: middle;
}

.section2upV2-right {
  display: table-cell;
  vertical-align: middle;
}

.section2upV2-cell {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.section2upV2-cell div {
  display: table-cell;
  vertical-align: top;
}

.section2upV2-cell div:nth-child(1) {
  width: 100px;
  padding: 20px 0;
}

.section2upV2-cell div:nth-child(2) {
  padding: 20px;
}

.section2upV2-cell div img {
  margin: 0;
}

.section2upV2-cell div p {
  font-size: 12px;
  line-height: 1.5;
}

@media only screen and (max-width: 767px) {
  .section2upV2 {
    display: block;
  }
  .section2upV2-left {
    display: block;
  }
  .section2upV2-right {
    display: block;
  }
  .section2upV2-cell div:nth-child(1) {
    width: 15.625vw;
  }
  .section2upV2-cell div p {
    font-size: 12px;
    font-size: 3.125vw;
  }
}

/*--------------------------------------------------------------------------------
pickup
--------------------------------------------------------------------------------*/
.pickup a {
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.pickup a img {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.pickup a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.pickup a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.pickup-figure {
  margin: 0 auto;
  max-width: 640px;
  overflow: hidden;
}

.pickup-figure img {
  display: block;
  margin: 0 auto;
}

.pickup-figcaption {
  margin: 0 auto;
  max-width: 640px;
  padding: 20px 30px;
  font-size: 16px;
  color: #666;
  text-align: left;
}

@media only screen and (max-width: 767px) {
  .pickup-figcaption {
    padding: 20px 12px 0;
    padding: 6.25vw 3.75vw 0;
    font-size: 12px;
    font-size: 3.75vw;
    color: #999;
  }
}

/*--------------------------------------------------------------------------------
newsList
--------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------
card
--------------------------------------------------------------------------------*/
.card {
  margin: 0 20px;
  overflow: hidden;
}

.card-heading {
  color: #222;
  padding: 65px 0 45px;
}

.card-heading span {
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.card-heading i {
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.card-headingV2 {
  color: #222;
  padding: 65px 0 45px;
}

.card-headingV2 span {
  font-size: 32px;
  font-weight: 600;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.card-items {
  font-size: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.card-item {
  width: 33.3%;
}

.card-item a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.card-item a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.card-item a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.card-item a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.card-item-figure {
  position: relative;
  overflow: hidden;
}

.card-item-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
  text-align: center;
}

.card-item-captionV2 {
  position: absolute;
  bottom: 25px;
  left: 20px;
  font-size: 18px;
  color: #fff;
}

.card-item-captionV3 {
  position: relative;
  font-size: 24px;
  color: #666;
  text-align: center;
  padding: 30px 0;
}

.card-itemV2 {
  width: 33.3%;
  margin: 0 0 40px;
}

.card-itemV2 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.card-itemV2 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.card-itemV2 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  text-decoration: none;
}

@media only screen and (max-width: 1023px) {
  .card {
    margin: 0 -3px;
  }
  .card-item-caption {
    font-size: 18px;
  }
}

@media only screen and (max-width: 767px) {
  .card-item {
    width: 50%;
  }
  .card-item-caption {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .card-item-captionV3 {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .card-itemV2 {
    width: 50%;
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
  }
}

.android-4-2 .card,
.android-4-3 .card,
.android-4-4 .card {
  margin: 0 0 0 7px;
}

.android-4-2 .card:after,
.android-4-3 .card:after,
.android-4-4 .card:after {
  content: '';
  display: table;
  clear: both;
}

.android-4-2 .card-items,
.android-4-3 .card-items,
.android-4-4 .card-items {
  width: 100%;
  display: block;
  float: left;
}

.android-4-2 .card-item,
.android-4-3 .card-item,
.android-4-4 .card-item {
  display: inline-block;
  width: 49%;
}

.android-4-2 .card-itemV2,
.android-4-3 .card-itemV2,
.android-4-4 .card-itemV2 {
  display: inline-block;
  width: 49%;
  vertical-align: top;
}

/*--------------------------------------------------------------------------------
cardV2
--------------------------------------------------------------------------------*/
.cardV2 {
  margin: 0 20px;
  overflow: hidden;
}

.cardV2-heading {
  color: #222;
  padding: 65px 0 45px;
}

.cardV2-heading span {
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.cardV2-heading i {
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.cardV2-items {
  font-size: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.cardV2-item,
.cardV2-itemV2 {
  width: 33.3%;
}

.cardV2-item[data-cloned="true"],
.cardV2-itemV2[data-cloned="true"] {
  display: none;
}

.cardV2-item a,
.cardV2-itemV2 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV2-item a img,
.cardV2-itemV2 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV2-item a:hover,
.cardV2-itemV2 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV2-item a:hover img,
.cardV2-itemV2 a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV2-item-figure,
.cardV2-itemV2-figure {
  position: relative;
  overflow: hidden;
}

.cardV2-item-caption,
.cardV2-itemV2-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
  text-align: center;
}

.cardV2-item-caption[data-category="csr-value-mid-term-business-plan"],
.cardV2-itemV2-caption[data-category="csr-value-mid-term-business-plan"] {
  top: 82%;
}

.cardV4 > .cardV2-heading:first-child {
  padding-top: 0;
}

.cardV4 > .cardV2-heading:first-child + .article-2upV2 {
  margin: 0 auto 50px;
}

@media only screen and (max-width: 1023px) {
  .cardV4 > .cardV2-heading:first-child {
    padding-top: 0;
  }
  .cardV4 > .cardV2-heading:first-child + .article-2upV2 {
    margin: 0 auto 3.125vw;
  }
}

.cardV2-itemV2-read-more {
  margin: 30px 0 0;
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 18px;
  color: #fff;
  line-height: 30px;
}

.cardV2-itemV2-read-more:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(../images/common/icon-more-white.png);
  background-size: 100% 100%;
}

@media only screen and (max-width: 1023px) {
  .cardV2 {
    margin: 0 -3px;
  }
  .cardV2-item-caption,
  .cardV2-itemV2-caption {
    font-size: 18px;
  }
  .cardV2-item-caption[data-category="csr-value-mid-term-business-plan"],
  .cardV2-itemV2-caption[data-category="csr-value-mid-term-business-plan"] {
    top: 80%;
  }
}

@media only screen and (max-width: 767px) {
  .cardV2 .is-pc {
    display: none;
  }
  .cardV2-items {
    display: block;
  }
  .cardV2-item {
    width: 100%;
    float: left;
  }
  .cardV2-item[data-cloned="true"] {
    display: block;
  }
  .cardV2-item-caption {
    font-size: 12px;
    font-size: 2.75vw;
  }
  .cardV2-itemV2-caption {
    font-size: 11px;
    font-size: 3.4375vw;
  }
  .cardV2-itemV2-read-more {
    display: none;
    margin: 20px auto 0;
    margin: 6.25vw auto 0;
  }
  .cardV2-itemV2-read-more a {
    padding: 0 0 0 9.5vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 45px;
  }
  .cardV2-itemV2-read-more a:before {
    width: 22px;
    width: 7.032vw;
    height: 22px;
    height: 7.032vw;
  }
}

/*--------------------------------------------------------------------------------
cardV3
--------------------------------------------------------------------------------*/
.cardV3 {
  margin: 90px 0 0;
  padding: 90px 0 0;
  border-top: 1px solid #ccc;
  overflow: hidden;
}

.cardV3-heading {
  margin: 0 0 45px;
  color: #999;
  font-size: 40px;
  font-weight: 400;
  text-align: center;
  white-space: nowrap;
}

.cardV3-copy {
  margin: 0 0 100px;
  color: #666;
  font-size: 20px;
  text-align: center;
}

.cardV3-items {
  font-size: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.cardV3-item {
  width: 50%;
}
.cardV3-item.cardV3-item-full{
  width: 100%;
}
.cardV3-item a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV3-item a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV3-item a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}
.cardV3-item a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV3-item-figure {
  position: relative;
  overflow: hidden;
}

.cardV3-item-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
}

.cardV3[data-category="innovation-production-engineering"] .cardV3-item-figure:before {
  position: absolute;
  bottom: 10px;
  right: 10px;
  display: block;
  width: 40px;
  height: 40px;
  content: '';
  background-image: url(../images/common/icon-popup.png);
  background-size: 100% 100%;
}

@media only screen and (max-width: 1023px) {
  .cardV3-item-caption {
    font-size: 24px;
  }
}

@media only screen and (max-width: 767px) {
  .cardV3-heading {
    margin: 0 0 45px;
    color: #999;
    font-size: 20px;
    font-size: 6.25vw;
    text-align: center;
  }
  .cardV3-copy {
    margin: 0 0 100px;
    color: #666;
    font-size: 12px;
    font-size: 3.75vw;
    text-align: center;
  }
  .cardV3-items {
    display: block;
  }
  .cardV3-item {
    width: 100%;
  }
  .cardV3-item-caption {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .cardV3[data-category="innovation-production-engineering"] .cardV3-item-figure:before {
    width: 6.25vw;
    height: 6.25vw;
    min-width: 30px;
    min-height: 30px;
  }
}

/*--------------------------------------------------------------------------------
cardV4
--------------------------------------------------------------------------------*/
.cardV4 {
  margin: 0 21px 0;
  padding: 100px 0 0;
  overflow: hidden;
}

.cardV4-heading {
  padding: 0 2px 40px;
}

.cardV4-heading span {
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.cardV4-heading b {
  font-size: 22px;
  font-weight: 600;
  margin: 0 0 2px;
  display: block;
}

.cardV4-heading i {
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.cardV4-headingV2 {
  padding: 0 2px 40px;
  color: #222;
}

.cardV4-headingV2 span {
  font-size: 32px;
  font-weight: 600;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.cardV4-headingV2 b {
  font-size: 22px;
  font-weight: 600;
  margin: 0 0 2px;
  display: block;
}

.cardV4-headingV2 i {
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.cardV4-headingV2 br {
  display: none;
}

.cardV4-items {
  font-size: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.cardV4-itemsV2 {
  font-size: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.cardV4-itemsV3 {
  padding: 0 0 50px;
  font-size: 0;
  display: block;
}

.cardV4-item {
  width: 50%;
}

.cardV4-item a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-item a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-item a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-item a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-item a + a {
  margin: 5px 3px 3px;
}

.cardV4-item-figure {
  position: relative;
  overflow: hidden;
}

.cardV4-item-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
}

.cardV4-item-caption span {
  font-size: 16px;
}

.cardV4-item-caption p {
  font-size: 32px;
}

.cardV4-item-captionV2 {
  position: absolute;
  bottom: 25px;
  left: 20px;
  font-size: 18px;
  color: #fff;
}

.cardV4-item-captionV3 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
  text-align: center;
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.4);
}

.cardV4-item-text {
  padding: 20px 2px 0px;
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
  margin: 0 0 2px;
  display: block;
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.4);
}

.cardV4-item-heading {
  font-size: 16px;
  font-weight: 600;
}

.cardV4-item-copy {
  margin: 15px 0 0;
  font-size: 32px;
}

.cardV4-item-read-more {
  margin: 30px 0 0;
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 18px;
  color: #fff !important;
  line-height: 30px;
}

.cardV4-item-read-more:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(../images/common/icon-more-white.png);
  background-size: 100% 100%;
}

.cardV4-itemV2 {
  width: 100%;
  list-style: none !important;
}

.cardV4-itemV2 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV2 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV2 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV2 a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV2 a + a {
  margin: 5px 3px 3px;
}

.cardV4-itemV2-figure {
  position: relative;
  overflow: hidden;
}

.cardV4-itemV2-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
}

.cardV4-itemV2-caption span {
  font-size: 16px;
}

.cardV4-itemV2-caption p {
  font-size: 32px;
}

.cardV4-itemV2-captionV2 {
  position: absolute;
  bottom: 25px;
  left: 20px;
  font-size: 18px;
  color: #fff;
}

.cardV4-itemV2-captionV3 {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
  text-align: center;
}

.cardV4-itemV2-heading {
  font-size: 16px;
  font-weight: 600;
}

.cardV4-itemV2-copy {
  margin: 15px 0 0;
  font-size: 32px;
}

.cardV4-itemV2-read-more {
  margin: 50px 0 0;
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 18px;
  color: #fff;
  line-height: 30px;
}

.cardV4-itemV2-read-more:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(../images/common/icon-more-white.png);
  background-size: 100% 100%;
}

@media only screen and (max-width: 1023px) {
  .cardV4-item-caption {
    font-size: 24px;
  }
}

@media only screen and (max-width: 767px) {
  .cardV4 {
    margin: 50px 10px 0;
    margin: 15.625vw 3.125vw 0;
    padding: 0;
  }
  .cardV4-heading {
    margin: 0 0 45px;
    color: #999;
    font-size: 20px;
    font-size: 6.25vw;
    text-align: center;
  }
  .cardV4-headingV2 {
    margin: 0 0 45px;
    font-size: 20px;
    font-size: 6.25vw;
    text-align: center;
  }
  .cardV4-headingV2 i {
    display: block;
    margin: 10px 0 0;
    line-height: 1.4;
  }
  .cardV4-headingV2 br {
    display: block;
  }
  .cardV4-copy {
    margin: 0 0 100px;
    color: #666;
    font-size: 12px;
    font-size: 3.75vw;
    text-align: center;
  }
  .cardV4-items {
    display: block;
  }
  .cardV4-item {
    width: 100%;
  }
  .cardV4-item a {
    margin: 5px 3px 3px;
  }
  .cardV4-item-caption {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .cardV4-item-captionV2 {
    bottom: 12px;
    bottom: 3.75vw;
    left: 10px;
    left: 3.125vw;
    font-size: 14px;
    font-size: 4.375vw;
  }
  .cardV4-item-heading {
    font-size: 15px;
    font-size: 2.3437vw;
  }
  .cardV4-item-copy {
    font-size: 30px;
    font-size: 4.6875vw;
  }
  .cardV4-item-text {
    font-size: 10px;
    font-size: 3.125vw;
    font-size: 9px;
    font-size: 2.8125vw;
    padding: 3.125vw 0 0;
  }
  .cardV4-item-read-more {
    margin: 20px auto 0;
    margin: 6.25vw auto 0;
  }
  .cardV4-item-read-more a {
    padding: 0 0 0 9.5vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 45px;
  }
  .cardV4-item-read-more a:before {
    width: 22px;
    width: 7.032vw;
    height: 22px;
    height: 7.032vw;
  }
}

/*--------------------------------------------------------------------------------
cardV5
--------------------------------------------------------------------------------*/
.cardV5 {
  margin: 0 20px 0 21px;
  overflow: hidden;
}

.cardV5-heading {
  color: #222;
  padding: 65px 0 45px;
}

.cardV5-heading span {
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.cardV5-heading i {
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.cardV5-items {
  font-size: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.cardV5-item {
  width: 33.3%;
}

.cardV5-item a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV5-item a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV5-item a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  text-decoration: none;
}

.cardV5-item a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV5-item-figure {
  position: relative;
  overflow: hidden;
}

.cardV5-item-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
}

.cardV5-item-captionV2 {
  position: absolute;
  bottom: 25px;
  left: 20px;
  font-size: 18px;
  color: #fff;
}

.cardV5-item-captionV3 {
  position: relative;
  padding: 20px 0;
  font-size: 16px;
  color: #666;
  text-align: center;
}

.cardV5[data-category="about-us-ir"] {
  margin: 50px 0 0;
}

.cardV5[data-category="about-us-ir"] .cardV5-item {
  margin: 30px 0 0;
}

@media only screen and (max-width: 767px) {
  .cardV5 {
    margin: 0 10px;
    margin: 0 3.125vw;
  }
  .cardV5-item {
    width: 50%;
  }
  .cardV5-item-captionV2 {
    bottom: 12px;
    bottom: 3.75vw;
    left: 10px;
    left: 3.125vw;
    font-size: 14px;
    font-size: 4.375vw;
  }
  .cardV5-item-captionV3 {
    padding: 15px 0;
    padding: 4.6875vw 0;
    font-size: 12px;
    font-size: 3.75vw;
    color: #666;
  }
  .cardV5[data-category="about-us-ir"] {
    margin: 10px 0 0;
    margin: 3.125vw 0 0;
  }
  .cardV5[data-category="about-us-ir"] .cardV5-item {
    margin: 15px 0 0;
    margin: 4.6875vw 0 0;
  }
}

.android-4-2 .cardV5,
.android-4-3 .cardV5,
.android-4-4 .cardV5 {
  margin: 0 5px 0 12px;
}

.android-4-2 .cardV5:after,
.android-4-3 .cardV5:after,
.android-4-4 .cardV5:after {
  content: '';
  display: table;
  clear: both;
}

.android-4-2 .cardV5-items,
.android-4-3 .cardV5-items,
.android-4-4 .cardV5-items {
  width: 100%;
  display: block;
  float: left;
}

.android-4-2 .cardV5-item,
.android-4-3 .cardV5-item,
.android-4-4 .cardV5-item {
  display: inline-block;
  width: 49%;
  vertical-align: top;
}

/*--------------------------------------------------------------------------------
front
--------------------------------------------------------------------------------*/
.front-inner {
  position: relative;
  max-width: 1190px;
  margin: 0 auto;
  padding: 0 20px;
}

.front-innerV2 {
  position: relative;
  max-width: 1194px;
  margin: 0 auto;
}

.front-heading {
  position: relative;
  top: 50px;
  left: 0;
  color: #fff;
}

.front-heading span {
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  margin: 0 0 2px;
  display: block;
  letter-spacing: 0.5px;
}

.front-heading i {
  font-style: normal;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: -0.5px;
}

.front-body {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  padding: 100px 0 0;
}

.front-copy {
  color: #fff;
  font-size: 40px;
  font-weight: 400;
  text-align: center;
}

.front-detail {
  margin: 60px 0 0;
  color: #fff;
  font-size: 20px;
  text-align: center;
  line-height: 1.8;
}

.front--02 {
  height: 100vh;
  min-height: 800px;
}

.front--02 .section2up {
  height: 100vh;
  min-height: 800px;
}

.front--02 .section2up-left {
  max-width: 76%;
  text-align: center;
}

.front--02 .section2up-right {
  width: 34%;
  padding: 0 0 0 25px;
}

.front--02 .newsList-heading {
  color: #222;
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  letter-spacing: 0.5px;
}

.front--02 .newsList-items {
  margin: 10px 0;
}

.front--02 .newsList-item {
  margin: 20px 0;
}

.front--02 .newsList-item a {
  display: inline-block;
}

.front--02 .newsList-item a:hover {
  text-decoration: none;
}

.front--02 .newsList-item a:hover .newsList-detail {
  text-decoration: underline;
  color: #999;
}

.front--02 .newsList-pubdate {
  display: block;
  margin: 6px 0;
  font-size: 14px;
  color: #666;
  font-family: Arial;
}

.front--02 .newsList-category {
  margin: 6px 0;
  font-size: 12px;
  font-weight: 600;
  color: #66bfff;
}

.front--02 .newsList-detail {
  margin: 6px 0;
  font-size: 14px;
  color: #999;
}

.front--02 .newsList-more-item {
  display: inline-block;
}

.front--02 .newsList-more-item a {
  font-size: 14px;
  color: #66bfff;
  margin: 0 30px 0 0;
}

.front--02 .newsList-more-item a:before {
  content: '\003e\0020';
}

.front--03 {
  background-size: cover;
  background-position: center center;
  height: 100vh;
  min-height: 800px;
}

.front--03 .front-inner {
  height: 100vh;
  min-height: 800px;
}

.front--03 .front-copy {
  text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.5);
}

.front--03 .front-detail {
  text-shadow: 1px 1px 8px rgba(0, 0, 0, 0.7);
}

.front--04 {
  background-size: cover;
  background-position: center center;
  height: 100vh;
  min-height: 800px;
}

.front--04 .front-inner {
  height: 100vh;
  min-height: 800px;
}

.front--04 .front-copy {
  text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2);
}

.front--04 .front-detail {
  text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.2);
}

.front--05 {
  background-color: #fff;
  height: 100vh;
  min-height: 950px;
}

.front--05 .front-heading {
  top: 100px;
  color: #222;
}

.front--05 .front-inner {
  height: 100vh;
  min-height: 950px;
}

.front--06 {
  position: relative;
  height: 585px;
  margin: 0 0 -150px;
}

.front--06 .map {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.front--06 .map-body {
  width: 100%;
  height: 585px;
}

.front--06 .map-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 585px;
  background-color: rgba(0, 0, 0, 0.4);
  mix-blend-mode: soft-light;
}

.front--06 .front-inner {
  height: 0;
}

.front--06 .front-heading {
  display: inline-block;
}

.front--06 .company-info {
  position: absolute;
  top: 350px;
  right: 20px;
  display: block;
  padding: 25px 30px;
  background-color: rgba(0, 0, 0, 0.8);
}

.front--06 .company-name {
  margin: 0 0 15px 0;
  color: #fff;
  font-size: 18px;
}

.front--06 .company-name span {
  display: block;
}

.front--06 .company-address {
  color: #fff;
  font-size: 14px;
}

.front--06 .company-address span {
  display: block;
  margin: 5px 0 0 0;
}

.front--06 .company-links a {
  margin: 0 40px 0 0;
  color: #66bfff;
  font-size: 14px;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.front--06 .company-links a:hover {
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.front--06 .company-links a:before {
  content: '\003e\0020';
}

.front--06 .company-links--01 {
  padding: 25px 0;
  border-bottom: 1px solid rgba(252, 255, 255, 0.4);
}

.front--06 .company-links--02 {
  padding: 25px 0 0;
}

@media only screen and (max-width: 1023px) {
  .front-inner {
    max-width: 100%;
  }
  .front--02 {
    height: auto;
    min-height: auto;
  }
  .front--02 .front-inner {
    padding: 80px 75px;
  }
  .front--02 .section2up {
    height: auto;
    min-height: auto;
  }
  .front--02 .section2up-left {
    max-width: 100%;
  }
  .front--02 .section2up-right {
    max-width: 100%;
    width: 100%;
    padding: 20px 0;
  }
  .front--02 .newsList {
    padding: 40px 20px;
  }
  .front--02 .newsList-item a {
    display: block;
  }
  .front--02 .newsList-more-item a {
    display: inline-block;
    padding: 10px 0;
  }
  .front--05 {
    height: auto;
    min-height: 100%;
  }
  .front--05 .front-inner {
    height: auto;
    min-height: 100%;
  }
  .front--05 .front-heading {
    position: relative;
    top: 0;
    left: 0;
    padding: 50px 0;
  }
  .front--05 .front-body {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    padding: 0 0 60px 0;
  }
}

@media only screen and (min-width: 768px) {
  .front-copy br {
    display: none;
  }
  .front--03 {
    background-image: url(../images/front/bg-front-03.png);
  }
  .front--04 {
    background-image: url(../images/front/bg-front-04.png);
  }
}

@media only screen and (max-width: 767px) {
  .front-inner {
    padding: 0 7px;
    padding: 0 2.3437vw;
  }
  .front-heading {
    display: block;
    top: 28px;
    top: 8.59375vw;
    left: 20px;
    left: 6.25vw;
  }
  .front-heading span {
    font-size: 20px;
    font-size: 6.25vw;
    margin: 0;
  }
  .front-heading i {
    display: none;
  }
  .front-copy {
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .front-detail {
    display: none;
  }
  .front--02 {
    height: auto;
    min-height: auto;
  }
  .front--02 .front-inner {
    padding: 7px;
    padding: 2.3437vw;
  }
  .front--02 .section2up {
    height: auto;
    min-height: auto;
  }
  .front--02 .section2up-left {
    max-width: 100%;
  }
  .front--02 .section2up-right {
    max-width: 100%;
    width: 100%;
    padding: 20px 0;
  }
  .front--02 .newsList {
    padding: 30px 12px 22px;
    padding: 9.375vw 3.75vw 7.032vw;
  }
  .front--02 .newsList-heading {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .front--02 .newsList-item a {
    display: block;
  }
  .front--02 .newsList-pubdate {
    margin: 0 0 10px 0;
    margin: 0 0 3.125vw 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .front--02 .newsList-category {
    margin: 0 0 10px 0;
    margin: 0 0 3.125vw 0;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .front--02 .newsList-detail {
    margin: 0 0 22px 0;
    margin: 0 0 7.032vw 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .front--02 .newsList-more-item a {
    display: inline-block;
    font-size: 12px;
    font-size: 3.75vw;
    padding: 10px 0;
  }
  .front--03 {
    background-image: url(../images/front/bg-front-03-sp.png);
    height: auto;
    min-height: 370px;
    min-height: 100vw;
  }
  .front--03 .front-inner {
    height: 370px;
    height: 100vw;
    min-height: 370px;
    min-height: 100vw;
  }
  .front--04 {
    background-image: url(../images/front/bg-front-04-sp.png);
    height: auto;
    min-height: 370px;
    min-height: 100vw;
  }
  .front--04 .front-inner {
    height: 370px;
    height: 100vw;
    min-height: 370px;
    min-height: 100vw;
  }
  .front--05 .front-heading {
    padding: 30px 12px;
    padding: 9.375vw 3.75vw;
  }
  .front--05 .front-body {
    padding: 0 0 30px 0;
  }
  .front--06 {
    margin: 0 0 -50px;
    margin: 0 0 -15.625vw;
    height: 600px;
    height: 100vh;
  }
  .front--06 .map {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
  }
  .front--06 .map-body {
    width: 100%;
    height: 600px;
    height: 100vh;
  }
  .front--06 .map-overlay {
    height: 600px;
    height: 100vh;
  }
  .front--06 .front-inner {
    padding: 0;
    margin: 0 10px;
    margin: 0 3.125vw;
  }
  .front--06 .front-heading {
    top: 0;
    left: 0;
    padding: 30px 12px;
    padding: 9.375vw 3.75vw;
  }
  .front--06 .company-info {
    top: 370px;
    top: 100vh;
    right: 0;
    width: 100%;
    padding: 25px 24px;
    padding: 7.8125vw 4.375vw;
    margin: -30px 0 0;
    margin: -65vw 0 0;
  }
  .front--06 .company-name {
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.6;
  }
  .front--06 .company-name span {
    display: block;
  }
  .front--06 .company-address {
    font-size: 10px;
    font-size: 3.125vw;
    line-height: 1.6;
  }
  .front--06 .company-links a {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .front--06 .company-links--01 {
    padding: 20px 0;
    padding: 6.25vw 0;
  }
  .front--06 .company-links--02 {
    padding: 20px 0 0;
    padding: 6.25vw 0 0;
  }
}

@media only screen and (max-width: 640px) {
  .front--06 {
    margin: 0 0 -50px;
    margin: 0 0 -15.625vw;
  }
}

/*--------------------------------------------------------------------------------
section
--------------------------------------------------------------------------------*/
/*--------------------------------------------------------------------------------
list (3column)
--------------------------------------------------------------------------------*/
.list {
  width: 700px;
  margin: 100px auto;
}

.list:first-child {
  margin: 0 auto 100px;
}

.list-heading {
  margin: 0 0 60px 0;
  font-size: 32px;
  font-weight: 400;
  color: #999;
}

.list-body dt {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 20px 0;
  color: #444;
}

.list-body dd {
  margin: 0 0 40px 0;
  padding: 0 0 40px 0;
  border-bottom: 1px solid #ccc;
  font-size: 16px;
  color: #666;
}

.list-body dd > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.list-body dd > ul li {
  width: 33%;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .list {
    width: 100%;
    margin: 50px auto;
    margin: 15.625vw auto;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .list:first-child {
    margin: 0 auto 50px;
    margin: 0 auto 15.625vw;
  }
  .list-heading {
    margin: 0 0 30px 0;
    margin: 0 0 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .list-body dt {
    font-size: 12px;
    font-size: 3.75vw;
    margin: 0 0 10px 0;
    margin: 0 0 3.125vw 0;
  }
  .list-body dd {
    margin: 0 0 28px 0;
    margin: 0 0 8.59375vw 0;
    padding: 0 0 28px 0;
    padding: 0 0 8.59375vw 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .list-body dd > ul li {
    width: 50%;
  }
  .list-body dd > ul li:nth-child(odd) {
    padding: 0 .5em 0 0;
  }
  .list-body dd > ul li:nth-child(even) {
    padding: 0 0 0 .5em;
  }
}

.android-4-2 .list-body dd > ul,
.android-4-3 .list-body dd > ul,
.android-4-4 .list-body dd > ul {
  display: block;
  width: 100%;
}

.android-4-2 .list-body dd > ul li,
.android-4-3 .list-body dd > ul li,
.android-4-4 .list-body dd > ul li {
  display: block;
  width: 100%;
}

.android-4-2 .list-body dd > ul li:nth-child(odd),
.android-4-3 .list-body dd > ul li:nth-child(odd),
.android-4-4 .list-body dd > ul li:nth-child(odd) {
  padding: 0;
}

.android-4-2 .list-body dd > ul li:nth-child(even),
.android-4-3 .list-body dd > ul li:nth-child(even),
.android-4-4 .list-body dd > ul li:nth-child(even) {
  padding: 0;
}

/*--------------------------------------------------------------------------------
listV2 (4column)
--------------------------------------------------------------------------------*/
.listV2 {
  width: 700px;
  margin: 100px auto 0;
}

.listV2-heading {
  margin: 0 0 60px 0;
  font-size: 32px;
  font-weight: 400;
  color: #999;
}

.listV2-body dt {
  font-size: 16px;
  font-weight: 600;
  margin: 0 0 20px 0;
  color: #444;
}

.listV2-body dd {
  margin: 0 0 40px 0;
  padding: 0 0 40px 0;
  border-bottom: 1px solid #ccc;
  font-size: 16px;
  color: #666;
}

.listV2-body dd > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.listV2-body dd > ul li {
  width: 25%;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .listV2 {
    width: 100%;
    margin: 50px auto;
    margin: 15.625vw auto;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .listV2-heading {
    margin: 0 0 30px 0;
    margin: 0 0 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV2-body dt {
    font-size: 12px;
    font-size: 3.75vw;
    margin: 0 0 10px 0;
    margin: 0 0 3.125vw 0;
  }
  .listV2-body dd {
    margin: 0 0 28px 0;
    margin: 0 0 8.59375vw 0;
    padding: 0 0 28px 0;
    padding: 0 0 8.59375vw 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV2-body dd > ul li {
    width: 50%;
  }
  .listV2-body dd > ul li:nth-child(odd) {
    padding: 0 .5em 0 0;
  }
  .listV2-body dd > ul li:nth-child(even) {
    padding: 0 0 0 .5em;
  }
}

.android-4-2 .listV2-body dd > ul,
.android-4-3 .listV2-body dd > ul,
.android-4-4 .listV2-body dd > ul {
  display: block;
  width: 100%;
}

.android-4-2 .listV2-body dd > ul li,
.android-4-3 .listV2-body dd > ul li,
.android-4-4 .listV2-body dd > ul li {
  display: block;
  width: 100%;
}

.android-4-2 .listV2-body dd > ul li:nth-child(odd),
.android-4-3 .listV2-body dd > ul li:nth-child(odd),
.android-4-4 .listV2-body dd > ul li:nth-child(odd) {
  padding: 0;
}

.android-4-2 .listV2-body dd > ul li:nth-child(even),
.android-4-3 .listV2-body dd > ul li:nth-child(even),
.android-4-4 .listV2-body dd > ul li:nth-child(even) {
  padding: 0;
}

/*--------------------------------------------------------------------------------
listV3
--------------------------------------------------------------------------------*/
.listV3 {
  padding: 60px 0;
  border-bottom: 1px solid #ccc;
}

.listV3:first-child {
  border-top: 1px solid #ccc;
}

.listV3-heading {
  margin: 0 0 50px 0;
  font-size: 32px;
  font-weight: 400;
  color: #999;
}

.listV3-body dt {
  color: #444;
  font-weight: 600;
  margin: 0 0 10px;
  font-size: 16px;
}

.listV3-body dt span {
  display: block;
  margin: 0 0 10px;
}

.listV3-body dd dl {
  margin: 50px 0 0;
}

.listV3-body dd ol {
  font-size: 16px;
  line-height: 2;
  color: #666;
  margin: 0 0 0 20px;
}

.listV3-body dd ul {
  font-size: 16px;
  line-height: 2;
  color: #666;
  margin: 0 0 0 20px;
}

.listV3-body dd ul li {
  list-style-type: disc;
}

.listV3-body dd + dt {
  margin: 50px 0 10px;
}

.listV3-figure {
  margin: 0 0 50px;
}

.listV3-figure img {
  display: block;
  margin: 0 auto;
}

.listV3 > h4 {
  margin: 20px 0 30px !important;
}
.listV3[data-category="about-us-vision-tagline"] .listV3-figure {
  margin: 70px 0 100px;
}

.listV3[data-category="about-us-vision-logo-concept"] .listV3-figure {
  margin: 110px 0 140px;
}

.listV3[data-category="privacy-policy"] {
  padding: 100px 0;
}

.listV3[data-category="privacy-policy"]:first-child {
  padding: 80px 0 100px;
  border-top: none;
}

.listV3[data-category="privacy-policy"]:nth-child(3) {
  text-align: center;
}

.listV3[data-category="privacy-policy"]:last-child {
  padding: 100px 0 0;
  text-align: right;
  border-bottom: none;
}

.listV3[data-category="privacy-policy"] .listV3-heading {
  font-size: 24px;
}

.listV3[data-category="privacy-policy"] .listV3-body p span {
  margin: 0 0 0 1em;
}

.listV3[data-category="terms-of-use"] {
  padding: 0 0 100px;
  border-top: none;
}
.listV3[data-category="csr-reporting-gri"] {
  padding: 0 0 60px;
  border-top: none;
}

.listV3[data-category="terms-of-use"] .listV3-body dt#idea {
  margin: -70px 0 10px;
  padding: 120px 0 0;
}

.listV3[data-category="terms-of-use"] .listV3-body dd a {
  color: #66bfff;
}

.listV3[data-category="terms-of-use"] .listV3-body dd a:hover {
  text-decoration: underline;
}

.listV3[data-category="faq"] {
  padding: 100px 0;
}

.listV3[data-category="faq"]:first-child {
  padding: 40px 0 100px;
  border-top: none;
}

.listV3[data-category="faq"]:last-child {
  padding: 80px 0 0;
  text-align: center;
  border-bottom: none;
}

.listV3[data-category="faq"]:last-child .read-moreV2 {
  margin: 60px auto 0;
}

.listV3[data-category="faq"]:last-child .listV3-body p br {
  display: none;
}

.listV3[data-category="faq"] .listV3-heading {
  font-size: 24px;
}

.listV3[data-category="faq"] .listV3-heading#product {
  margin: -170px 0 50px 0;
  padding: 170px 0 0;
}

.listV3[data-category="faq"] .listV3-body dt {
  font-size: 20px;
}

.listV3[data-category="faq"] .listV3-body dt:before {
  content: '\0051\00ff1a';
}

.listV3[data-category="faq"] .listV3-body dd {
  margin: 30px 0 0;
}

.listV3[data-category="faq"] .listV3-body dd p:before {
  content: '\0041\00ff1a';
}

.listV3[data-category="faq"] .listV3-body dd p a {
  color: #66bfff;
}

.listV3[data-category="faq"] .listV3-body dd p a:hover {
  text-decoration: underline;
}

@media only screen and (max-width: 1023px) {
  .listV3[data-category="terms-of-use"] .listV3-body dt#idea {
    margin: -50px 0 10px;
    padding: 25px 0 0;
    padding: 7.8125vw 0 0;
  }
  .listV3[data-category="terms-of-use"] .listV3-body dt#idea:before {
    content: '';
    display: block;
    margin: 50px 0 0;
  }
  .listV3[data-category="faq"] .listV3-heading#product {
    margin: -150px 0 50px 0;
    padding: 150px 0 0;
  }
}

@media only screen and (max-width: 767px) {
  .listV3 {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .listV3-heading {
    margin: 0 0 30px 0;
    margin: 0 0 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV3-body dt {
    margin: 0 0 10px;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV3-body dd ol {
    font-size: 12px;
    font-size: 3.75vw;
    margin: 0 0 0 1.2em;
  }
  .listV3-body dd ul {
    font-size: 12px;
    font-size: 3.75vw;
    margin: 0 0 0 1.2em;
  }
  .listV3-body dd + dt {
    margin: 25px 0 10px;
    margin: 7.8125vw 0 10px;
  }
  .listV3-figure {
    margin: 50px 0;
    margin: 15.625vw 0;
  }
  .listV3[data-category="about-us-vision-tagline"] .listV3-figure {
    margin: 65px 0 75px;
    margin: 20.3125vw 0 24.21875vw;
    padding: 0 60px 0;
    padding: 0 19.53125vw 0;
  }
  .listV3[data-category="about-us-vision-logo-concept"] .listV3-figure {
    margin: 90px 0 100px;
    margin: 28.125vw 0 32.03125vw;
    padding: 0 70px 0;
    padding: 0 21.09375vw 0;
  }
  .listV3[data-category="privacy-policy"] {
    padding: 50px 0;
    padding: 15.625vw 0;
  }
  .listV3[data-category="privacy-policy"]:first-child {
    padding: 40px 0 50px;
    padding: 12.5vw 0 15.625vw;
  }
  .listV3[data-category="privacy-policy"]:last-child {
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
  }
  .listV3[data-category="privacy-policy"] .listV3-heading {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .listV3[data-category="privacy-policy"] .listV3-body p span {
    display: block;
    margin: 0;
  }
  .listV3[data-category="terms-of-use"] {
    padding: 0 0 50px;
    padding: 0 0 15.625vw;
  }
  .listV3[data-category="faq"] {
    padding: 50px 0;
    padding: 15.625vw 0;
  }
  .listV3[data-category="faq"]:first-child {
    padding: 20px 0 50px;
    padding: 6.25vw 0 15.625vw;
  }
  .listV3[data-category="faq"]:last-child {
    padding: 40px 0 0;
    padding: 12.5vw 0 0;
  }
  .listV3[data-category="faq"]:last-child .listV3-body p br {
    display: block;
  }
  .listV3[data-category="faq"] .listV3-heading {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .listV3[data-category="faq"] .listV3-heading#product {
    margin: -110px 0 30px 0;
    margin: -110px 0 9.375vw 0;
    padding: 110px 0 0;
  }
  .listV3[data-category="faq"] .listV3-body dt {
    font-size: 14px;
    font-size: 4.375vw;
  }
}

/*--------------------------------------------------------------------------------
listV4
--------------------------------------------------------------------------------*/
.listV4 {
  padding: 60px 0;
  border-bottom: 1px solid #ccc;
}

.listV4-heading {
  margin: 0 0 50px 0;
  font-size: 32px;
  font-weight: 400;
  color: #999;
}

.listV4-headingV2 {
  margin: 0 0 50px;
  padding: 0 0 12px;
  font-size: 32px;
  font-weight: 400;
  color: #999;
  border-bottom: 1px solid #ccc;
}

.listV4-headingV2 span {
  display: block;
  margin: 0 0 5px;
  font-size: 14px;
  font-weight: 500;
}

.listV4-body ol {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-flow: column wrap;
  -ms-flex-flow: column wrap;
  flex-flow: column wrap;
  height: 160px;
  margin: 0 0 0 20px;
  font-size: 16px;
  line-height: 2;
  color: #444;
}

.listV4-body ol > li {
  width: 50%;
}

@media only screen and (max-width: 767px) {
  .listV4 {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .listV4-heading {
    margin: 0 0 30px 0;
    margin: 0 0 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV4-headingV2 {
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    padding: 0 0 15px;
    padding: 0 0 4.6875vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV4-headingV2 span {
    margin: 0 0 7px;
    margin: 0 0 2.3437vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV4-body ol {
    display: block;
    height: auto;
    margin: 0 0 0 1.2em;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV4-body ol > li {
    width: 100%;
  }
}

/*--------------------------------------------------------------------------------
listV5
--------------------------------------------------------------------------------*/
.listV5 {
  max-width: 1190px;
  margin: 0 auto;
  padding: 110px 20px 0;
}

.listV5-heading {
  margin: 0 0 30px;
}

.listV5-heading a {
  font-size: 32px;
  font-weight: 400;
  color: #999;
}

.listV5-heading a:hover {
  cursor: default;
  text-decoration: none;
}

.listV5-heading a span {
  display: block;
  margin: 8px 0 0;
  font-size: 14px;
}

.listV5-wrapper {
  height: 100%;
}

.listV5-category {
  margin: 40px 0 0;
  font-size: 24px;
  color: #999;
}

.listV5-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -22px;
}

.listV5-item {
  position: relative;
  width: 50%;
  padding: 0 22px;
}

.listV5-inner {
  display: table;
  width: 100%;
  height: 100%;
  padding: 30px 0;
  border-bottom: 1px solid #ccc;
}

.listV5-detail {
  display: table-cell;
  vertical-align: top;
  font-size: 14px;
  color: #666;
  line-height: 1.4;
}

.listV5-detail dt {
  font-weight: 600;
  color: #444;
}

.listV5-detail a {
  color: #66bfff;
}

.listV5-detail a:before {
  content: '\003e\0020';
}

.listV5-figure {
  display: table-cell;
  width: 180px;
  vertical-align: top;
  padding: 0 0 0 25px;
}

.listV5-figure img {
  display: block;
}
[data-page-id="global-network-group-companies"] .listV5-item.listV5-item-link {
  width: 100%;
}
[data-page-id="global-network-group-companies"] .listV5-item.listV5-item-link .listV5-inner {
  border-bottom: none;
}

@media only screen and (max-width: 1150px) {
  .listV5-body {
    margin: 0;
  }
  .listV5-item:nth-child(odd) {
    padding: 0 10px 0 0;
  }
  .listV5-item:nth-child(even) {
    padding: 0 0 0 10px;
  }
}

@media only screen and (max-width: 767px) {
  .listV5 {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .listV5:first-child {
    padding: 25px 15px 0;
    padding: 7.8125vw 4.6875vw 0;
  }
  .listV5-heading {
    margin: 0;
  }
  .listV5-heading a {
    position: relative;
    display: block;
    padding: 30px 0;
    padding: 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV5-heading a:hover {
    cursor: pointer;
  }
  .listV5-heading a span {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .listV5-heading a:before {
    position: absolute;
    top: 50%;
    right: 0;
    margin: -15px 0 0;
    margin: -4.6875vw 0 0;
    display: inline-block;
    width: 30px;
    width: 9.375vw;
    height: 30px;
    height: 9.375vw;
    content: '';
    background-image: url(../images/common/icon-plus-white.png);
    background-color: #66bfff;
    background-size: 100% 100%;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    border-radius: 50%;
  }
  .listV5-heading a.is-open:before {
    background-color: #ccc;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .listV5-wrapper {
    height: 0;
    border-bottom: 1px solid #ccc;
  }
  .listV5-wrapper.is-open {
    border-bottom: none;
  }
  .listV5-category {
    margin: 30px 0 0;
    margin: 9.375vw 0 0;
    font-size: 14px;
    font-size: 4.375vw;
  }
  .listV5-body {
    display: block;
    margin: 0;
  }
  .listV5-item {
    width: 100%;
    padding: 0 !important;
  }
  .listV5-inner {
    display: block;
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .listV5-detail {
    display: block;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .listV5-figure {
    display: block;
    width: 100%;
    margin: 30px 0 0;
    margin: 9.375vw 0 0;
    padding: 0;
  }
  .listV5-figure img {
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
}

/*--------------------------------------------------------------------------------
listV6
--------------------------------------------------------------------------------*/
.listV6 {
  width: 700px;
  margin: 60px auto;
}

.listV6-body {
  position: relative;
  border-bottom: 1px solid #ccc;
}

.listV6-body:first-child {
  border-top: 1px solid #ccc;
}

.listV6-body dt {
  position: absolute;
  top: 0;
  left: 0;
  width: 90px;
  padding: 40px 0;
  font-size: 32px;
  font-family: Arial;
  font-weight: 600;
  color: #222;
}

.listV6-body dd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 0 0 0 90px;
  padding: 50px 0;
}

.listV6-body dd + dd {
  border-top: 1px solid #ccc;
}

.listV6-body dd .listV6-detail,
.listV6-body dd .listV6-detailV2 {
  position: relative;
  width: auto;
  padding: 0 0 0 50px;
  line-height: 1.4;
  font-size: 16px;
}

.listV6-body dd .listV6-detail:before,
.listV6-body dd .listV6-detailV2:before {
  position: absolute;
  top: -10px;
  left: 0;
}

.listV6-body dd .listV6-detail span,
.listV6-body dd .listV6-detailV2 span {
  display: block;
  margin: 5px 0 0;
  font-size: 12px;
}

.listV6-body dd .listV6-detailV2 {
  width: 425px;
}

.listV6-body dd .listV6-figure {
  width: 185px;
  padding: 0 8px;
}

.listV6-body dd .listV6-figure img {
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .listV6 {
    width: 100%;
    margin: 30px auto;
    margin: 9.375vw auto;
  }
  .listV6-body dt {
    position: relative;
    width: auto;
    padding: 30px 0;
    padding: 9.375vw 0;
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .listV6-body dd {
    display: block;
    margin: 0;
    padding: 0 0 30px;
    padding: 0 0 9.375vw;
  }
  .listV6-body dd + dd {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .listV6-body dd .listV6-detail,
  .listV6-body dd .listV6-detailV2 {
    position: relative;
    width: auto;
    padding: 0 0 0 40px;
    padding: 0 0 0 12.5vw;
    line-height: 1.4;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV6-body dd .listV6-detail:before,
  .listV6-body dd .listV6-detailV2:before {
    position: absolute;
    top: -7px;
    top: -2.1875vw;
    left: 0;
  }
  .listV6-body dd .listV6-detail span,
  .listV6-body dd .listV6-detailV2 span {
    margin: 5px 0 0;
    margin: 1.5625vw 0 0;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .listV6-body dd .listV6-figure {
    width: auto;
    padding: 30px 55px 0;
    padding: 9.375vw 17.1875vw 0;
  }
  .listV6-body dd .listV6-figure img {
    width: 100%;
  }
}

/*--------------------------------------------------------------------------------
listV7
--------------------------------------------------------------------------------*/
.listV7 {
  width: 700px;
  margin: 0 auto;
}

.listV7-heading {
  font-size: 32px;
  font-weight: 400;
  color: #666;
}

.listV7-category {
  padding: 60px 0;
  border-bottom: 1px solid #ccc;
}

.listV7-category-heading a {
  font-size: 24px;
  font-weight: 400;
  color: #666;
}

.listV7-category > ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.listV7-category > ul > li {
  width: 33%;
  padding: 25px 0 0;
}

.listV7-category > ul > li > a {
  font-size: 16px;
  font-weight: 600;
  color: #444;
}

.listV7-category > ul > li > ul > li {
  margin: 8px 0 0;
}

.listV7-category > ul > li > ul > li > a {
  font-size: 16px;
  color: #666;
}

@media only screen and (max-width: 767px) {
  .listV7 {
    width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .listV7-heading {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV7-category {
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
  }
  .listV7-category-heading a {
    font-size: 15px;
    font-size: 4.6875vw;
    font-weight: 400;
    color: #666;
  }
  .listV7-category > ul {
    display: block;
  }
  .listV7-category > ul > li {
    width: 100%;
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
  }
  .listV7-category > ul > li > a {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV7-category > ul > li > a br {
    display: none;
  }
  .listV7-category > ul > li > ul > li {
    margin: 12px 0 0;
    margin: 3.75vw 0 0;
  }
  .listV7-category > ul > li > ul > li > a {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV7-category > ul > li > ul > li > a br {
    display: none;
  }
}

/*--------------------------------------------------------------------------------
listV8
--------------------------------------------------------------------------------*/
.listV8 {
  margin: 25px 0 0;
}

.listV8 + .listV8 {
  margin: 0;
}

.listV8 .articleV2-list {
  margin: 0;
}

.listV8-heading {
  border-bottom: 1px solid #ccc;
}

.listV8-heading a {
  position: relative;
  display: block;
  padding: 35px 0;
  font-family: Arial;
  font-size: 32px;
  font-weight: 600;
  color: #222;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV8-heading a:before {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -20px 0 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  content: '';
  background-image: url(../images/common/icon-plus-white.png);
  background-color: #66bfff;
  background-size: 100% 100%;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  border-radius: 50%;
}

.listV8-heading a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV8-heading a.is-open:before {
  background-color: #ccc;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV8-headingV2 {
  border-bottom: 1px solid #ccc;
  position: relative;
  display: block;
  padding: 35px 0;
  font-family: Arial;
  font-size: 32px;
  font-weight: 600;
  color: #222;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV8-wrapper {
  height: 0;
}

@media only screen and (max-width: 767px) {
  .listV8:first-child {
    padding: 25px 15px 0;
    padding: 7.8125vw 4.6875vw 0;
  }
  .listV8-heading a {
    padding: 30px 0;
    padding: 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV8-heading a:before {
    position: absolute;
    top: 50%;
    right: 0;
    margin: -30px 0 0;
    margin: -4.6875vw 0 0;
    display: inline-block;
    width: 30px;
    width: 9.375vw;
    height: 30px;
    height: 9.375vw;
    content: '';
    background-image: url(../images/common/icon-plus-white.png);
    background-color: #66bfff;
    background-size: 100% 100%;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    border-radius: 50%;
  }
  .listV8-heading a:hover {
    opacity: 1;
  }
  .listV8-headingV2 {
    padding: 30px 0;
    padding: 9.375vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
}

/*--------------------------------------------------------------------------------
listV9
--------------------------------------------------------------------------------*/
.listV9-heading {
  position: relative;
}

.listV9-heading a {
  position: relative;
  display: block;
  padding: 66px 66px 66px 0;
  font-size: 24px;
  color: #666;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV9-heading a span {
  font-size: 20px;
}

.listV9-heading a:not([class*="-link"]):after {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -20px 0 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  content: '';
  background-image: url(../images/common/icon-plus-white.png);
  background-color: #66bfff;
  background-size: 100% 100%;
  -webkit-transform: rotate(0);
  -ms-transform: rotate(0);
  transform: rotate(0);
  -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  border-radius: 50%;
}

.listV9-heading a:not([class*="-link"]):hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV9-heading a:not([class*="-link"]).is-topics {
  padding: 54px 66px 54px 0;
}

.listV9-heading a:not([class*="-link"]).is-topics:before {
  display: block;
  margin: 0 0 5px;
  content: attr(data-region);
  font-size: 16px;
  font-weight: 600;
}

.listV9-heading a:not([class*="-link"]).is-open:after {
  background-color: #ccc;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV9-heading a[class*="-link"] {
  color: #666;
  border-bottom: 1px solid #ccc;
}

.listV9-heading a[class*="-link"]:after {
  position: absolute;
  top: 50%;
  right: 0;
  margin: -20px 0 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  content: '';
  background-color: #66bfff;
  background-image: url(/assets/images/common/icon-more-blue-large.png);
  background-size: 100% 100%;
  border-radius: 50%;
}

.listV9-heading-icons {
  position: absolute;
  top: 14px;
  left: 0;
  letter-spacing: -0.5em;
}

.listV9-heading-icons > img {
  margin-right: 3px;
}

.listV9-headingV2 {
  position: relative;
  display: block;
  padding: 66px 0;
  font-size: 24px;
  color: #666;
}

.listV9-headingV2 span {
  font-size: 20px;
}

.listV9-headingV2--icon {
  padding-top: 80px;
}

.listV9-headingV2--icon .listV9-heading-icons img {
  margin: 0;
}

.listV9-wrapper {
  height: 0;
  border-bottom: 1px solid #ccc;
}

.listV9-wrapperV2 {
  border-bottom: 1px solid #ccc;
}

.listV9-body {
  padding: 0 0 56px;
}

.listV9-body h4 {
  padding: 50px 0 16px;
  font-size: 24px;
  color: #999;
}

.listV9-body h4:first-child {
  padding: 0 0 16px;
}

.listV9-body h5 {
  padding: 50px 0 16px;
  font-size: 20px;
  color: #999;
}

.listV9-body h5:first-child {
  padding: 0 0 16px;
}

.listV9-body h5 ~ h4 {
  margin: 50px 0 0;
  border-top: 1px solid #ccc;
}

.listV9-body h6 {
  padding: 50px 0 16px;
  font-size: 20px;
  color: #999;
}

.listV9-body h6:first-child {
  padding: 0 0 16px;
}

.listV9-body p {
  font-size: 16px;
  color: #666;
  line-height: 1.8;
}

.listV9-body p b {
  display: inline;
}

.listV9-body p + b {
  margin: 36px 0 16px;
}

.listV9-body p + p {
  margin: 16px 0 0;
}

.listV9-body p + img {
  margin: 36px 0;
}

.listV9-body p + .listV9-body-category {
  margin: 50px 0 16px;
}

.listV9-body p + .tableV3 {
  margin: 20px 0 0;
}

.listV9-body a {
  color: #66bfff;
  word-break: break-all;
}

.listV9-body-center span {
  display: inline-block;
  position: relative;
  text-align: left;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
}

.listV9-body-note {
  display: block;
  font-size: 12px;
}

.listV9-body b {
  display: block;
  font-size: 16px;
  color: #444;
  margin: 0 0 16px;
}

.listV9-body img {
  margin: 36px 0 0;
  vertical-align: middle;
}

.listV9-body img.sdgs-icon {
  margin: 15px 0 0;
  width: 55px;
}

.listV9-body ul {
  margin: 10px 0 0 20px;
  font-size: 16px;
  color: #666;
  line-height: 1.8;
}

.listV9-body ul li {
  list-style-type: disc;
}

.listV9-body ul + p {
  margin: 16px 0 0;
}

.listV9-body ul + b {
  margin: 26px 0 16px;
}

.listV9-body ol {
  margin: 10px 0 0 0;
  font-size: 16px;
  color: #666;
  line-height: 1.8;
}

.listV9-body ol + p {
  margin: 16px 0 0;
}

.listV9-body-category {
  display: block;
  position: relative;
  font-size: 16px;
  font-weight: 600;
  color: #007ac2;
  line-height: 20px;
  margin: 0 0 16px;
  padding-top: .2em;
}

a.listV9-body-category {
  transition: opacity 300ms cubic-bezier(0.75, 0.02, 0.5, 1);
  color: #007ac2;
  display: inline-block;
}

a.listV9-body-category:hover {
  opacity: .55;
  text-decoration: none;
}

.listV9-body-category img {
  margin: 0 10px 0 0;
  vertical-align: top;
}

.listV9-body-category img ~ img {
  margin: 0 10px 0 20px;
}

.listV9-body-category + h4 {
  padding: 0 0 16px;
}

.listV9-body-author {
  display: table;
  margin: 60px 0 0;
}

.listV9-body-author-img {
  display: table-cell;
  width: 225px;
  text-align: center;
  vertical-align: middle;
}

.listV9-body-author-img img {
  margin: 0;
}

.listV9-body-author-name {
  display: table-cell;
  vertical-align: middle;
  padding: 0 20px;
}

.listV9-body-author-name div {
  margin: 10px 0 0;
  font-size: 14px;
  color: #666;
  line-height: 1.6;
}

.listV9-body-author-name span {
  display: block;
  margin: 0 0 5px;
  font-size: 12px;
  color: #666;
  line-height: 1.2;
}

.listV9-body .table-figure {
  margin: 1px;
  display: block;
}

.listV9-body .table-figure img {
  width: 100%;
}

.listV9-body > .listV9-body-author:first-child {
  margin-top: 0;
}

.listV9-headingV2 + .listV9-body-author {
  margin-top: 0;
  margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  .listV9-heading a {
    padding: 30px 30px 30px 0;
    padding: 9.375vw 9.375vw 9.375vw 0;
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-heading a span {
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-heading a:not([class*="-link"]):after {
    position: absolute;
    top: 50%;
    right: 0;
    margin: -30px 0 0;
    margin: -4.6875vw 0 0;
    display: inline-block;
    width: 30px;
    width: 9.375vw;
    height: 30px;
    height: 9.375vw;
    content: '';
    background-image: url(../images/common/icon-plus-white.png);
    background-color: #66bfff;
    background-size: 100% 100%;
    -webkit-transform: rotate(0);
    -ms-transform: rotate(0);
    transform: rotate(0);
    -webkit-transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: background-color, transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    border-radius: 50%;
  }
  .listV9-heading a:not([class*="-link"]):hover {
    opacity: 1;
  }
  .listV9-heading a:not([class*="-link"]).is-topics {
    padding: 24px 30px 24px 0;
    padding: 7.032vw 9.375vw 7.032vw 0;
  }
  .listV9-heading a:not([class*="-link"]).is-topics:before {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV9-heading a[class*="-link"]:after {
    position: absolute;
    top: 50%;
    right: 0;
    margin: -30px 0 0;
    margin: -4.6875vw 0 0;
    display: inline-block;
    width: 30px;
    width: 9.375vw;
    height: 30px;
    height: 9.375vw;
    content: '';
    background-color: #66bfff;
    background-image: url(/assets/images/common/icon-more-blue-large.png);
    background-size: 100% 100%;
    border-radius: 50%;
  }
  .listV9-heading-icons {
    top: 1.875vw;
  }
  .listV9-heading-icons > img {
    width: 9.375vw;
  }
  .listV9-heading-icons + a.is-topics,
  .listV9-heading-icons + a {
    padding-top: 12.5vw;
  }
  .listV9-heading-icons + a.is-topics[data-region],
  .listV9-heading-icons + a[data-region] {
    padding-top: 12.5vw;
  }
  .listV9-headingV2 {
    padding: 30px 0;
    padding: 9.375vw 0;
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-headingV2 span {
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-body {
    padding: 0 0 20px;
  }
  .listV9-body h4 {
    padding: 20px 0 16px;
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-body h5 {
    padding: 20px 0 16px;
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-body h6 {
    padding: 20px 0 16px;
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .listV9-body p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV9-body-note {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .listV9-body b,
  .listV9-body ul,
  .listV9-body ol {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV9-body img.sdgs-icon {
    width: 45px;
  }
  .listV9-body-category {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .listV9-body-author {
    margin: 20px 0 0;
  }
  .listV9-body-author-img {
    width: 20%;
    width: 20vw;
  }
  .listV9-body-author-name div {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .listV9-body-author-name span {
    font-size: 10px;
    font-size: 3.125vw;
  }
}

/*--------------------------------------------------------------------------------
listV10
--------------------------------------------------------------------------------*/
.listV10 {
  width: 1110px;
  margin: 60px auto 0;
  padding: 0 0 24px;
}

.listV10-inner {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
}

.listV10-heading {
  padding: 60px 0;
  font-size: 32px;
  font-weight: 500;
  color: #444;
}

.listV10-body {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -21px;
  font-size: 0;
}

.listV10-body > div {
  width: 33.3%;
}

.listV10-body > div > ul {
  margin: 0 21px;
  padding: 36px 10px;
  border-top: 1px solid #ccc;
}

.listV10-body > div > ul > li {
  margin: 14px 0 0;
}

.listV10-body > div > ul > li:first-child {
  margin: 0;
}

.listV10-body > div > ul > li:first-child > a,
.listV10-body > div > ul > li:first-child > span {
  font-weight: 600;
}

.listV10-body > div > ul > li > a,
.listV10-body > div > ul > li > span {
  font-size: 16px;
  color: #444;
}

@media only screen and (max-width: 1150px) {
  .listV10 {
    width: 100%;
    padding: 0 20px;
  }
}

@media only screen and (max-width: 1023px) {
  .listV10 {
    padding: 0;
  }
  .listV10-body > div {
    width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .listV10 {
    padding: 0 0 30px;
    padding: 0 0 9.375vw;
  }
  .listV10-heading {
    padding: 45px 0 20px;
    padding: 14.0625vw 0 6.25vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .listV10-body {
    display: block;
    margin: 0;
  }
  .listV10-body > div {
    width: 100%;
  }
  .listV10-body > div > ul {
    margin: 0;
    padding: 10px 0;
    padding: 3.125vw 0;
  }
  .listV10-body > div > ul > li {
    margin: 0;
  }
  .listV10-body > div > ul > li > a,
  .listV10-body > div > ul > li > span {
    padding: 10px 0;
    padding: 3.125vw 0;
    font-size: 12px;
    font-size: 3.75vw;
    display: block;
  }
  .listV10-body > div > ul > li > a br,
  .listV10-body > div > ul > li > span br {
    display: none;
  }
}

/*--------------------------------------------------------------------------------
Panel
--------------------------------------------------------------------------------*/
.panel {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  flex-wrap: wrap;
}

.panel-item {
  display: block;
  width: 48%;
  padding: 22px;
  color: #108cc2;
  border: 1px solid #108cc2;
}
.panel-profile-area {
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  margin-bottom: 20px;
}

.listV9-body .panel-profile-area img {
  display: block;
  margin: 0 20px 0 0;
  width: 114px;
  height: 114px;
}

.panel-item:nth-of-type(even) {
  margin-left: 2%;
}

.panel-item:nth-of-type(n+3) {
  margin-top: 25px;
}

.panel-job {
  display: block;
  color: #108cc2;
  font-size: 15px;
  font-weight: bold;
}

.listV9-body b.panel-name {
  margin: 0 0 25px;
  color: #108cc2;
  font-size: 24px;
}

@media only screen and (max-width: 767px) {
  .panel {
    flex-direction: column;
  }

  .listV9-body .panel-profile-area img {
    margin: 0 15px 0 0;
    width: 75px;
    height: 75px;
  }

  .panel-item {
    display: block;
    width: 100%;
    padding: 22px;
    color: #108cc2;
    border: 1px solid #108cc2;
  }

  .panel-item:nth-of-type(even) {
    margin-left: 0;
  }

  .panel-item:nth-of-type(n+3) {
    margin-top: 15px;
  }

  .panel-item:nth-of-type(n+2) {
    margin-top: 15px;
  }

  .panel-job {
    font-size: 3.15vw;
  }

  .listV9-body b.panel-name {
    margin: 0 0 10px;
    font-size: 4.6875vw;
  }
}


/*--------------------------------------------------------------------------------
article
--------------------------------------------------------------------------------*/
.article .is-pc {
  display: block;
}

.article .is-sp {
  display: none;
}

.article-inner {
  width: 700px;
  margin: 0 auto;
}

.article-innerV2 {
  position: relative;
  max-width: 1190px;
  margin: 0 auto;
  padding: 0 20px;
}

.article-innerV3 {
  position: relative;
  max-width: 1190px;
  margin: 0 auto;
}

.article-innerV4 {
  width: 800px;
  margin: 0 auto;
}

.article-footer {
  margin: 60px 0 0;
}

.article-pager.is-pc {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 0 35px;
}

.article-pager.is-pc li {
  padding: 5px 20px 5px 0;
}

.article-pager.is-pc li a {
  color: #666;
  text-decoration: underline;
}

.article-pager.is-pc li a:hover {
  color: #66bfff;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article-mark-list {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin: 60px 0;
}

.article-mark-list li {
  margin: 0 45px 0 0;
  font-size: 12px;
}

.article-mark li,
.article-mark p {
  color: #666;
}

.article-mark li:before,
.article-mark p:before {
  margin: 0 6px 0 0;
  display: inline-block;
  width: 40px;
  height: 40px;
  font-size: 18px;
  font-family: Arial;
  font-weight: 600;
  line-height: 32px;
  text-align: center;
  border-radius: 50%;
}

.article-mark li[data-category="c"]:before,
.article-mark p[data-category="c"]:before {
  content: 'C';
  color: #2b80c8;
  border: 4px solid #2b80c8;
}

.article-mark li[data-category="k"]:before,
.article-mark p[data-category="k"]:before {
  content: 'K';
  color: #fa801f;
  border: 4px solid #fa801f;
}

.article-mark li[data-category="ck"]:before,
.article-mark p[data-category="ck"]:before {
  content: 'CK';
  color: #fff;
  border: 4px solid #007cdc;
  background-color: #007cdc;
}

.article-mark li[data-category="m"]:before,
.article-mark p[data-category="m"]:before {
  content: 'M';
  color: #fff;
  border: 4px solid #002855;
  background-color: #002855;
}

.article-mark-listV2 {
  display: block;
  margin: 0 0 40px;
  font-size: 0;
}

.article-mark-listV2 li {
  position: relative;
  display: inline-block;
  margin: 0 0 10px 0;
  padding: 0 0 0 25px;
  font-size: 12px;
}

.article-mark-listV2 li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 17px;
  height: 15px;
  background-image: url(../images/csr/common/arrow-2.png);
  background-repeat: no-repeat;
  background-position: center center;
}

.article-mark-listV2 li:nth-child(odd) {
  width: 410px;
}

.article-heading {
  font-size: 40px;
  font-weight: 400;
  color: #999;
  padding: 0 0 50px 0;
}

.article-headingV2 {
  font-size: 40px;
  font-weight: 400;
  color: #999;
  padding: 0 0 100px 0;
}

.article-headingV3 {
  color: #666;
}

.article-headingV4 {
  font-size: 32px;
  font-weight: 400;
  color: #999;
  padding: 0 0 70px 0;
}

.article-headingV5 {
  font-size: 40px;
  font-weight: 400;
  color: #999;
  padding: 15px 0 50px;
}

.article-copy {
  margin: 0 0 50px;
  color: #666;
  font-size: 24px;
  line-height: 1.8;
  text-align: center;
  letter-spacing: -1px;
}

.article-copy .is-mobile {
  display: none;
}

.article-copyV2 {
  font-size: 20px;
  line-height: 1.8;
  color: #666;
}

.article-copyV3 {
  font-size: 16px;
  line-height: 1.8;
  color: #666;
}

.article-figure {
  margin: 0 0 50px;
}

.article-figure img {
  display: block;
  margin: 0 auto;
}

.article-figure figcaption {
  color: #666;
}

.article-figureV2 {
  margin: 0 -50px 60px;
}

.article-figureV2 img {
  display: block;
  margin: 0 auto;
}

.article-figureV3 {
  margin: 60px auto;
}

.article-figureV3 img {
  display: block;
  margin: 0 auto;
}

.article-figureV4 {
  margin: 0 auto;
  padding: 100px 0 0;
}

.article-figureV4 img {
  display: block;
  margin: 0 auto;
}
.article-figureV4 figcaption{
  display: block;
  width: 860px;
  margin: 20px auto 0;
  font-size: 16px;
  color: #666;
}

.article-body h4 {
  margin: 60px 0 30px;
  font-size: 32px;
  color: #999;
  line-height: 1.4;
}

.article-body p {
  font-size: 16px;
  line-height: 2;
  color: #666;
}

.article-body p + p {
  margin: 20px 0 0;
}

.article-body a {
  color: #66bfff;
}

.article-bodyV2 p {
  font-size: 20px;
  line-height: 1.8;
  color: #666;
}

.article-bodyV3 p {
  font-size: 18px;
  line-height: 1.6;
  color: #666;
}

.article-bodyV4-heading {
  margin: 10px 0 30px;
  font-size: 32px;
  color: #999;
  line-height: 1.4;
}

.article-bodyV4-category {
  position: relative;
  font-size: 16px;
  font-weight: 600;
  color: #007ac2;
  line-height: 1;
  padding: 0 0 0 22px;
}

.article-bodyV4-category:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 17px;
  height: 16px;
  background-image: url(../images/csr/common/arrow.png);
  background-repeat: no-repeat;
  background-position: center center;
}

.article-bodyV4 p {
  font-size: 16px;
  line-height: 2;
  color: #666;
}

.article-bodyV4 p + p {
  margin: 20px 0 0;
}

.article-bodyV4 img {
  display: block;
  margin: 50px auto 0;
}

.article-section {
  padding: 70px 0;
  border-top: 1px solid #ccc;
}

.article-section:first-child {
  border-top: none;
}

.article-caption {
  margin: 70px 0 0;
  color: #666;
  font-size: 20px;
  line-height: 1.8;
}

.article-caption span {
  margin: 20px 0 0;
  display: block;
  font-size: 18px;
}

.article-2up {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 100px 20px 0;
}

.article-2up--left {
  display: table-cell;
  vertical-align: top;
  width: 50%;
  padding: 0 18px 0 0;
}

.article-2up--right {
  display: table-cell;
  vertical-align: top;
  width: 50%;
  padding: 0 0 0 18px;
}

.article-2up-figure img {
  display: block;
  margin: 0 auto;
}

.article-2up-figure img + img {
  margin: 30px auto 0;
}

.article-2up-body p {
  font-size: 16px;
  color: #666;
  line-height: 1.8;
}

.article-2up-body p + p {
  margin: 25px 0 0;
}

.article-2up-bodyV2 p {
  font-size: 20px;
  color: #666;
  line-height: 1.8;
}

.article-2up-bodyV2 p span {
  display: block;
  font-size: 12px;
}

.article-2up-bodyV2 p + p {
  margin: 30px 0 0;
}

.article-2up-heading {
  margin: 0 0 30px;
  font-size: 32px;
  font-weight: 400;
  color: #999;
  line-height: 1.4;
  letter-spacing: -1px;
}

.article-2up-heading a {
  color: #999;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article-2up-heading a:hover {
  color: #66bfff;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article-2up-headingV2 {
  margin: 0 0 30px;
  font-size: 24px;
  font-weight: 400;
  color: #999;
  line-height: 1.4;
  letter-spacing: -1px;
}

.article-2up .read-moreV2 {
  margin: 30px 0 0;
}

.article-right {
  text-align: right;
  margin: 50px 0 0;
}

.article-center {
  text-align: center;
  margin: 50px 0;
}

.article[data-category="innovation-monozukuri"] .article-copyV2 {
  margin: 100px 0 200px;
}

.article[data-category="innovation-monozukuri"] .article-2up-figure.is-tablet {
  display: none;
}

.article[data-category^="innovation-technical-review-vol-"] .article-heading {
  text-align: center;
}

.article[data-category^="innovation-technical-review-vol-"] .article-copyV2 {
  margin: 0 0 100px;
  padding: 0 30px 100px;
  border-bottom: 1px solid #ccc;
}

.article[data-category^="innovation-technical-review-vol-"] .article-2up {
  padding: 60px 0 0;
}

.article[data-category^="innovation-technical-review-vol-"] .article-2up--right {
  vertical-align: middle;
}

.article[data-category^="innovation-technical-review-vol-"] .article-2up-heading {
  margin: 0;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0;
}

.article[data-category="global-network-our-employee"] .article-innerV2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: column-reverse;
  -ms-flex-direction: column-reverse;
  flex-direction: column-reverse;
}

.article[data-category="global-network-our-employee"] .article-2up {
  counter-increment: count;
  margin: 0;
  padding: 60px 20px 0;
}

.article[data-category="global-network-our-employee"] .article-2up:last-child {
  padding: 0 20px;
}

.article[data-category="global-network-our-employee"] .article-2up-heading {
  border-bottom: 1px solid #ccc;
  padding: 0 0 10px;
}

.article[data-category="global-network-our-employee"] .article-2up-figure {
  position: relative;
  max-height: 337px;
}

.article[data-category^="global-network-our-employee-article-"] .article-2up-figure.is-tablet {
  display: none;
}

.article[data-category="about-us-ir"] .article-heading {
  padding: 0 0 40px 0;
}

.article[data-category="about-us-history"] {
  padding: 100px 0 0;
}

.article[data-category="about-us-history"] .hash-fix {
  display: block;
  margin: -150px auto 0;
  padding: 150px 0 0;
}

.article[data-category="about-us-history"] .articleV2-filter.is-pc {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.article[data-category="about-us-history"] .articleV2-filter.is-pc li {
  display: block;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
}

.article[data-category="about-us-history"] .articleV2-filter.is-pc li a {
  display: block;
  width: auto;
}

.article[data-category="about-us-video"] .lightbox {
  margin-top: 100px;
}

.article[data-category="about-us-video"] .article-video-figure {
  width: 100%;
  margin: 0 auto;
  max-width: 1000px;
  padding: 0 20px;
  text-align: center;
}

.article[data-category="about-us-video"] .article-video-figcaption {
  margin: 0 0 50px;
  font-size: 24px;
  color: #666;
  text-align: left;
}

.article[data-category="about-us-video"] .article-heading {
  padding: 0 20px 50px;
}

.article[data-category="about-us-video"] .article-figure {
  position: relative;
}

.article[data-category="about-us-video"] .article-figcaption {
  position: absolute;
  bottom: 140px;
  width: 100%;
  text-align: center;
}

.article[data-category="about-us-video"] .article-figcaption p {
  position: relative;
  display: inline-block;
  font-size: 16px;
  color: #fff;
  padding: 0 0 0 32px;
  line-height: 25px;
}

.article[data-category="about-us-video"] .article-figcaption p:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  width: 25px;
  height: 25px;
  background-image: url(../images/common/icon-play-02.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.article[data-category="about-us-video"] .article-2up {
  max-width: 720px;
  margin: 60px auto 0;
  padding: 60px 0 0;
  border-top: 1px solid #ccc;
}

.article[data-category="about-us-video"] .article-2up--right {
  vertical-align: middle;
}

.article[data-category="about-us-video"] .article-2up-heading {
  margin: 0;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0;
}

.article[data-category="faq-inquiry"] .article-copy {
  margin: 0 0 60px;
  text-align: left;
  letter-spacing: 0;
}

.article[data-category="faq-inquiry"] .article-list {
  padding: 0 0 100px 20px;
  font-size: 16px;
  line-height: 2;
  color: #666;
  border-bottom: 1px solid #ccc;
}

.article[data-category="faq-inquiry"] .article-list li {
  list-style-type: disc;
}

.article[data-category="faq-inquiry"] .article-list li a {
  color: #666;
  text-decoration: underline;
}

.article[data-category="faq-inquiry"] .article-list li a:hover {
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article[data-category="faq-inquiry"] .article-detail {
  font-size: 16px;
  color: #666;
  line-height: 2;
}

.article[data-category="faq-inquiry"] .article-body {
  padding: 60px 0 0;
}

.article[data-category="faq-inquiry"] .article-body span.required {
  display: inline-block;
  font-size: 16px;
  color: #ff0000;
}

.article[data-category="faq-inquiry"] .read-moreV2 {
  margin: 40px auto 0;
  text-align: center;
}

.article[data-category="csr-stakeholder"] .article-2up-figure.is-tablet {
  display: none;
}

.article[data-category="csr-sustainability"] {
  padding: 50px 0 0;
}

.article[data-category="csr-sustainability"] .hash-fix {
  display: block;
  margin: -100px auto 0;
  padding: 100px 0 0;
}

.article[data-category="csr-action"] {
  padding: 50px 0 0;
}

.article[data-category="csr-action"] .hash-fix {
  display: block;
  margin: -100px auto 0;
  padding: 100px 0 0;
}

.article[data-category="csr-action"] .article-bodyV4 img + .listV3-body {
  margin: 60px 0 0;
}

.article[data-category="csr-report"] .article-2up {
  padding: 0 20px;
}

.article[data-category="csr-report"] .article-2up--right {
  vertical-align: middle;
}

.article[data-category="csr-report"] .article-2up-heading {
  margin: 0;
  font-weight: 500;
  font-size: 16px;
  letter-spacing: 0;
}
.article[data-category="csr-value-cabin"] .article-2up-figure.is-tablet,
.article[data-category="csr-value-electronics-1"] .article-2up-figure.is-tablet,
.article[data-category="csr-value-electronics-2"] .article-2up-figure.is-tablet,
.article[data-category="csr-value-thermal"] .article-2up-figure.is-tablet,
.article[data-category="csr-value-climate"] .article-2up-figure.is-tablet,
.article[data-category="csr-value-exhaust"] .article-2up-figure.is-tablet {
  display: none;
}

@media only screen and (max-width: 850px) {
  .article-innerV4 {
    width: 100%;
    padding: 0 20px;
  }
  .article-figureV2 {
    margin: 0 0 60px;
  }
}

@media only screen and (max-width: 768px) and (min-width: 768px) {
  .article[data-category="innovation-monozukuri"] .article-2up--left {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article[data-category="innovation-monozukuri"] .article-2up--left .article-2up-figure.is-tablet {
    float: right;
    margin: 0 0 40px 20px;
  }
  .article[data-category="innovation-monozukuri"] .article-2up--right {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article[data-category="innovation-monozukuri"] .article-2up--right .article-2up-figure.is-tablet {
    float: left;
    margin: 0 20px 40px 0;
  }
  .article[data-category="innovation-monozukuri"] .article-2up-figure {
    display: none;
  }
  .article[data-category="innovation-monozukuri"] .article-2up-figure.is-tablet {
    display: block;
    width: 50%;
  }
  .article[data-category="innovation-monozukuri"] .article-2up.is-tablet-show .article-2up--left {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    padding: 0 5px 0 0;
  }
  .article[data-category="innovation-monozukuri"] .article-2up.is-tablet-show .article-2up--right {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    padding: 0 0 0 5px;
  }
  .article[data-category="innovation-monozukuri"] .article-2up.is-tablet-show .article-2up-figure {
    display: block;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up--left {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up--left .article-2up-figure.is-tablet {
    float: right;
    margin: 0 0 40px 20px;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up--right {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up--right .article-2up-figure.is-tablet {
    float: left;
    margin: 0 20px 40px 0;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up-figure {
    display: none;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up-figure.is-tablet {
    display: block;
    width: 50%;
  }

  .article[data-category="csr-stakeholder"] .article-2up--left {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article[data-category="csr-stakeholder"] .article-2up--left .article-2up-figure.is-tablet {
    float: right;
    margin: 0 0 40px 20px;
  }
  .article[data-category="csr-stakeholder"] .article-2up--right {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article[data-category="csr-stakeholder"] .article-2up--right .article-2up-figure.is-tablet {
    float: left;
    margin: 0 20px 40px 0;
  }
  .article[data-category="csr-stakeholder"] .article-2up-figure {
    display: none;
  }
  .article[data-category="csr-stakeholder"] .article-2up-figure.is-tablet {
    display: block;
    width: 50%;
  }
  .article[data-category="csr-stakeholder"] .article-2up.is-tablet-show .article-2up--left {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    padding: 0 5px 0 0;
  }
  .article[data-category="csr-stakeholder"] .article-2up.is-tablet-show .article-2up--right {
    display: table-cell;
    vertical-align: top;
    width: 50%;
    padding: 0 0 0 5px;
  }
  .article[data-category="csr-stakeholder"] .article-2up.is-tablet-show .article-2up-figure {
    display: block;
  }
  .article[data-category="csr-value-cabin"] .article-2up--left,
  .article[data-category="csr-value-electronics-1"] .article-2up--left,
  .article[data-category="csr-value-electronics-2"] .article-2up--left,
  .article[data-category="csr-value-thermal"] .article-2up--left,
  .article[data-category="csr-value-climate"] .article-2up--left,
  .article[data-category="csr-value-exhaust"] .article-2up--left {
    display: block;
    width: 100%;
    padding: 0;
  }


  .article[data-category="csr-value-cabin"] .article-2up--left .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-1"] .article-2up--left .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-2"] .article-2up--left .article-2up-figure.is-tablet,
  .article[data-category="csr-value-thermal"] .article-2up--left .article-2up-figure.is-tablet,
  .article[data-category="csr-value-climate"] .article-2up--left .article-2up-figure.is-tablet,
  .article[data-category="csr-value-exhaust"] .article-2up--left .article-2up-figure.is-tablet {
    float: right;
    margin: 0 0 40px 20px;
  }

  .article[data-category="csr-value-cabin"] .article-2up--right,
  .article[data-category="csr-value-electronics-1"] .article-2up--right,
  .article[data-category="csr-value-electronics-2"] .article-2up--right,
  .article[data-category="csr-value-thermal"] .article-2up--right,
  .article[data-category="csr-value-climate"] .article-2up--right,
  .article[data-category="csr-value-exhaust"] .article-2up--right {
    display: block;
    width: 100%;
    padding: 0;
  }

  .article[data-category="csr-value-cabin"] .article-2up--right .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-1"] .article-2up--right .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-2"] .article-2up--right .article-2up-figure.is-tablet,
  .article[data-category="csr-value-thermal"] .article-2up--right .article-2up-figure.is-tablet,
  .article[data-category="csr-value-climate"] .article-2up--right .article-2up-figure.is-tablet,
  .article[data-category="csr-value-exhaust"] .article-2up--right .article-2up-figure.is-tablet {
    float: left;
    margin: 0 20px 40px 0;
  }

  .article[data-category="csr-value-cabin"] .article-2up-figure,
  .article[data-category="csr-value-electronics-1"] .article-2up-figure,
  .article[data-category="csr-value-electronics-2"] .article-2up-figure,
  .article[data-category="csr-value-thermal"] .article-2up-figure,
  .article[data-category="csr-value-climate"] .article-2up-figure,
  .article[data-category="csr-value-exhaust"] .article-2up-figure {
    display: none;
  }
  .article[data-category="csr-value-cabin"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-1"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-2"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-thermal"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-climate"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-exhaust"] .article-2up-figure.is-tablet {
      display: block;
      width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .article .is-pc {
    display: none;
  }
  .article .is-sp {
    display: block;
  }
  .article-inner {
    width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .article-innerV2 {
    width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .article-innerV4 {
    width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .article-heading {
    font-size: 20px;
    font-size: 6.25vw;
    padding: 0 0 30px 0;
    padding: 0 0 9.375vw 0;
  }
  .article-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
  }
  .article-headingV3 {
    font-size: 14px;
    font-size: 4.375vw;
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
  }
  .article-headingV4 {
    font-size: 20px;
    font-size: 6.25vw;
    padding: 0 0 30px 0;
    padding: 0 0 9.375vw 0;
  }
  .article-headingV5 {
    font-size: 20px;
    font-size: 6.25vw;
    padding: 0 0 30px 0;
    padding: 0 0 9.375vw 0;
  }
  .article-mark-list {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .article-mark-list li {
    width: 50%;
    margin: 0;
    font-size: 10px;
    font-size: 2.8vw;
  }
  .article-mark-list li:nth-child(3) {
    margin: 20px 0 0;
    margin: 6.25vw 0 0;
  }
  .article-mark-list li:nth-child(4) {
    margin: 20px 0 0;
    margin: 6.25vw 0 0;
  }
  .article-mark-list li:before,
  .article-mark-list p:before {
    margin: 0 5px 0 0;
    margin: 0 1.5625vw 0 0;
    width: 30px;
    width: 9.375vw;
    height: 30px;
    height: 9.375vw;
    font-size: 14px;
    font-size: 4.375vw;
    line-height: 26px;
    line-height: 8.125vw;
  }
  .article-mark-list li[data-category="c"]:before,
  .article-mark-list p[data-category="c"]:before {
    border: 2px solid #2b80c8;
    border: 0.625vw solid #2b80c8;
  }
  .article-mark-list li[data-category="k"]:before,
  .article-mark-list p[data-category="k"]:before {
    border: 2px solid #fa801f;
    border: 0.625vw solid #fa801f;
  }
  .article-mark-list li[data-category="ck"]:before,
  .article-mark-list p[data-category="ck"]:before {
    border: 2px solid #007cdc;
    border: 0.625vw solid #007cdc;
  }
  .article-mark-list li[data-category="m"]:before,
  .article-mark-list p[data-category="m"]:before {
    border: 2px solid #002855;
    border: 0.625vw solid #002855;
  }
  .article-mark-listV2 li {
    display: block;
    width: 100% !important;
  }
  .article-copy {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
    font-size: 14px;
    font-size: 4.375vw;
    line-height: 1.4;
  }
  .article-copy .is-mobile {
    display: block;
  }
  .article-copyV2 {
    font-size: 14px;
    font-size: 4.375vw;
    line-height: 1.4;
  }
  .article-copyV3 {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article-figure {
    margin: 0 0 25px;
    margin: 0 0 7.8125vw;
  }
  .article-figureV2 {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
  }
  .article-figureV3 {
    margin: 0 0 30px 0;
    margin: 0 0 9.375vw 0;
  }
  .article-body h4 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .article-body p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article-bodyV2 p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article-bodyV3 p {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .article-caption {
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .article-caption span {
    font-size: 15px;
    font-size: 4.6875vw;
  }
  .article-figureV4 figcaption{
    font-size: 3.75vw;
  }
  .article-2up {
    display: block;
    margin: 30px 0;
    margin: 9.375vw 0;
    padding: 0;
  }
  .article-2up--left {
    display: block;
    width: 100%;
    padding: 0;
  }
  .article-2up--right {
    display: block;
    width: 100%;
    margin: 10px 0;
    margin: 3.125vw 0;
    padding: 0;
  }
  .article-2up-figure img {
    display: block;
  }
  .article-2up-figure img + img {
    margin: 10px auto 0;
    margin: 3.125vw auto 0;
  }
  .article-2up-figure + .article-2up-body {
    margin: 30px 0 0;
    margin: 9.375vw 0 0;
  }
  .article-2up-body {
    margin: 30px 0;
    margin: 9.375vw 0;
  }
  .article-2up-body p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article-2up-bodyV2 p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article-2up-bodyV2 p span {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .article-2up-bodyV2 p + p {
    margin: 10px 0 0;
    margin: 3.125vw 0 0;
  }
  .article-2up-heading {
    margin: 0 0 20px;
    margin: 0 0 6.25vw;
    font-size: 18px;
    font-size: 5.46875vw;
    font-weight: 400;
    color: #999;
    line-height: 1.4;
    letter-spacing: -1px;
  }
  .article-2up-headingV2 {
    margin: 0 0 20px;
    margin: 0 0 6.25vw;
    font-size: 35px;
    font-size: 5.46875vw;
    font-weight: 400;
    color: #999;
    line-height: 1.4;
    letter-spacing: -1px;
  }
  .article-right {
    margin: 25px 0 0;
    margin: 7.8125vw 0 0;
  }
  .article[data-category="innovation-monozukuri"] .article-copyV2 {
    margin: 0;
  }
  .article[data-category="innovation-monozukuri"] .article-2up-figure {
    display: block;
  }
  .article[data-category="innovation-monozukuri"] .article-2up-figure.is-pc {
    display: none;
  }
  .article[data-category="innovation-monozukuri"] .article-2up-figure.is-tablet {
    display: none;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-heading {
    text-align: left;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-copyV2 {
    margin: 0 0 50px;
    margin: 0 0 15.625vw;
    padding: 0;
    border-bottom: none;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-2up {
    padding: 0;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-2up--right {
    text-align: center;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-2up-body {
    margin: 0;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-2up-heading {
    display: inline-block;
    font-size: 10px;
    font-size: 3.125vw;
    text-align: left;
  }
  .article[data-category^="innovation-technical-review-vol-"] .article-2up-figure {
    padding: 0 60px;
    padding: 0 18.75vw;
  }
  .article[data-category^="innovation-technical-review-vol-"] .articleV2-itemV2-detail a {
    padding: 0;
    word-wrap: break-word;
  }
  .article[data-category="global-network-our-employee"] .article-2up {
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
  }
  .article[data-category="global-network-our-employee"] .article-2up--right {
    margin: 20px 0;
    margin: 6.25vw 0;
  }
  .article[data-category="global-network-our-employee"] .article-2up:last-child {
    padding: 0;
  }
  .article[data-category="global-network-our-employee"] .article-2up-heading {
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    padding: 0 0 10px;
    padding: 0 0 3.125vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .article[data-category="global-network-our-employee"] .article-2up-figure {
    max-height: 100%;
  }
  .article[data-category="global-network-our-employee"] .article-2up-figure:before {
    bottom: 6px;
    bottom: 2.03125vw;
    left: 9px;
    left: 2.8125vw;
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-copyV2 {
    margin: 0;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up-figure {
    display: block;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up-figure.is-pc {
    display: none;
  }
  .article[data-category^="global-network-our-employee-article-"] .article-2up-figure.is-tablet {
    display: none;
  }
  .article[data-category="about-us-ir"] .article-heading {
    padding: 0 0 25px 0;
    padding: 0 0 7.8125vw 0;
  }
  .article[data-category="about-us-ir"] .article-body p {
    line-height: 1.6;
  }
  .article[data-category="about-us-history"] {
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
  }
  .article[data-category="about-us-history"] .articleV2-filter.is-pc {
    display: none;
  }
  .article[data-category="about-us-video"] .lightbox {
    margin-top: 50px;
  }
  .article[data-category="about-us-video"] .article-video-figure {
    padding: 0 10px;
    padding: 0 3.125vw;
  }
  .article[data-category="about-us-video"] .article-video-figcaption {
    margin: 0 0 25px;
    margin: 0 0 7.8125vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article[data-category="about-us-video"] .article-heading {
    padding: 0 0 30px;
    padding: 0 0 9.375vw;
  }
  .article[data-category="about-us-video"] .article-figure {
    margin: 0 0 25px;
    margin: 0 0 7.8125vw;
  }
  .article[data-category="about-us-video"] .article-figcaption {
    position: relative;
    bottom: 0;
    margin: 15px 0 0;
    margin: 4.6875vw 0 0;
    text-align: left;
  }
  .article[data-category="about-us-video"] .article-figcaption p {
    padding: 0;
    font-size: 10px;
    font-size: 3.125vw;
    color: #999;
  }
  .article[data-category="about-us-video"] .article-figcaption p:before {
    display: none;
  }
  .article[data-category="about-us-video"] .article-2up--right {
    padding: 0 60px;
    padding: 0 18.75vw;
  }
  .article[data-category="about-us-video"] .article-2up-body {
    margin: 0;
  }
  .article[data-category="about-us-video"] .article-2up-heading {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .article[data-category="about-us-video"] .article-2up-figure {
    padding: 0 60px;
    padding: 0 18.75vw;
  }
  .article[data-category="faq-inquiry"] .article-copy {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
  }
  .article[data-category="faq-inquiry"] .article-list {
    font-size: 10px;
    font-size: 3.75vw;
    padding: 0 0 30px 1.2em;
    padding: 0 0 9.375vw 1.2em;
  }
  .article[data-category="faq-inquiry"] .article-detail {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .article[data-category="faq-inquiry"] .article-body {
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
  }
  .article[data-category="faq-inquiry"] .read-moreV2 {
    margin: 20px auto 0;
    margin: 6.25vw auto 0;
  }
  .article[data-category="csr-stakeholder"] .article-copyV2 {
    margin: 0;
  }
  .article[data-category="csr-stakeholder"] .article-2up-figure {
    display: block;
  }
  .article[data-category="csr-stakeholder"] .article-2up-figure.is-pc {
    display: none;
  }
  .article[data-category="csr-stakeholder"] .article-2up-figure.is-tablet {
    display: none;
  }
  .article[data-category="csr-report"] .article-2up--right {
    padding: 0 60px;
    padding: 0 18.75vw;
  }
  .article[data-category="csr-report"] .article-2up-body {
    margin: 0;
  }
  .article[data-category="csr-report"] .article-2up-heading {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .article[data-category="csr-report"] .article-2up-figure {
    padding: 0 60px;
    padding: 0 18.75vw;
  }
  .article[data-category="csr-value-cabin"] .article-copyV2,
  .article[data-category="csr-value-electronics-1"] .article-copyV2,
  .article[data-category="csr-value-electronics-2"] .article-copyV2,
  .article[data-category="csr-value-thermal"] .article-copyV2,
  .article[data-category="csr-value-climate"] .article-copyV2,
  .article[data-category="csr-value-exhaust"] .article-copyV2 {
    margin: 0;
  }

  .article[data-category="csr-value-cabin"] .article-2up-figure,
  .article[data-category="csr-value-electronics-1"] .article-2up-figure,
  .article[data-category="csr-value-electronics-2"] .article-2up-figure,
  .article[data-category="csr-value-thermal"] .article-2up-figure,
  .article[data-category="csr-value-climate"] .article-2up-figure,
  .article[data-category="csr-value-exhaust"] .article-2up-figure {
    display: block;
  }
  .article[data-category="csr-value-cabin"] .article-2up-figure.is-pc,
  .article[data-category="csr-value-electronics-1"] .article-2up-figure.is-pc,
  .article[data-category="csr-value-electronics-2"] .article-2up-figure.is-pc,
  .article[data-category="csr-value-thermal"] .article-2up-figure.is-pc,
  .article[data-category="csr-value-climate"] .article-2up-figure.is-pc,
  .article[data-category="csr-value-exhaust"] .article-2up-figure.is-pc {
    display: none;
  }
  .article[data-category="csr-value-cabin"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-1"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-electronics-2"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-thermal"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-climate"] .article-2up-figure.is-tablet,
  .article[data-category="csr-value-exhaust"] .article-2up-figure.is-tablet {
    display: none;
  }
}

.android-4-2 .article-mark-list,
.android-4-3 .article-mark-list,
.android-4-4 .article-mark-list {
  display: block;
}

.android-4-2 .article-mark-list li,
.android-4-3 .article-mark-list li,
.android-4-4 .article-mark-list li {
  margin: 10px 0;
}

.android-4-2 .article-mark li[data-category="c"]:before,
.android-4-3 .article-mark li[data-category="c"]:before,
.android-4-4 .article-mark li[data-category="c"]:before,
.android-4-2 .article-mark p[data-category="c"]:before,
.android-4-3 .article-mark p[data-category="c"]:before,
.android-4-4 .article-mark p[data-category="c"]:before {
  border: 2px solid #2b80c8;
}

.android-4-2 .article-mark li[data-category="k"]:before,
.android-4-3 .article-mark li[data-category="k"]:before,
.android-4-4 .article-mark li[data-category="k"]:before,
.android-4-2 .article-mark p[data-category="k"]:before,
.android-4-3 .article-mark p[data-category="k"]:before,
.android-4-4 .article-mark p[data-category="k"]:before {
  border: 2px solid #fa801f;
}

.android-4-2 .article-mark li[data-category="ck"]:before,
.android-4-3 .article-mark li[data-category="ck"]:before,
.android-4-4 .article-mark li[data-category="ck"]:before,
.android-4-2 .article-mark p[data-category="ck"]:before,
.android-4-3 .article-mark p[data-category="ck"]:before,
.android-4-4 .article-mark p[data-category="ck"]:before {
  border: 2px solid #007cdc;
}

/*--------------------------------------------------------------------------------
articleV2
--------------------------------------------------------------------------------*/
.articleV2 {
  width: 700px;
  margin: 0 auto;
}

.articleV2-heading {
  font-size: 32px;
  font-weight: 600;
  font-family: Arial;
  color: #222;
  margin: 0 0 60px;
}

.articleV2-pager {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: nowrap;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  margin: 0 0 35px;
}

.articleV2-pager li {
  padding: 0 20px 0 0;
}

.articleV2-pager li a {
  color: #666;
}

.articleV2-pager li a:hover {
  color: #66bfff;
}

.articleV2-pager li.is-active a {
  color: #66bfff;
}

.articleV2-pager li[data-item-id="0"] {
  -webkit-box-ordinal-group: 1;
  -webkit-order: 0;
  -ms-flex-order: 0;
  order: 0;
}

.articleV2-pager li[data-item-id="1"] {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
  -ms-flex-order: 1;
  order: 1;
}

.articleV2-pager li[data-item-id="2"] {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
  -ms-flex-order: 2;
  order: 2;
}

.articleV2-pager li[data-item-id="3"] {
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
  -ms-flex-order: 3;
  order: 3;
}

.articleV2-pager li[data-item-id="4"] {
  -webkit-box-ordinal-group: 5;
  -webkit-order: 4;
  -ms-flex-order: 4;
  order: 4;
}

.articleV2-pager li[data-item-id="5"] {
  -webkit-box-ordinal-group: 6;
  -webkit-order: 5;
  -ms-flex-order: 5;
  order: 5;
}

.articleV2-pager li[data-item-id="6"] {
  -webkit-box-ordinal-group: 7;
  -webkit-order: 6;
  -ms-flex-order: 6;
  order: 6;
}

.articleV2-pager li[data-item-id="7"] {
  -webkit-box-ordinal-group: 8;
  -webkit-order: 7;
  -ms-flex-order: 7;
  order: 7;
}

.articleV2-pager li[data-item-id="8"] {
  -webkit-box-ordinal-group: 9;
  -webkit-order: 8;
  -ms-flex-order: 8;
  order: 8;
}

.articleV2-pager li[data-item-id="9"] {
  -webkit-box-ordinal-group: 10;
  -webkit-order: 9;
  -ms-flex-order: 9;
  order: 9;
}

.articleV2-filter.is-pc {
  display: table;
}

.articleV2-filter.is-pc li {
  display: table-cell;
  padding: 0 3px 0 0;
}

.articleV2-filter.is-pc li a {
  display: block;
  width: 130px;
  padding: 12px 0;
  font-size: 12px;
  border: 1px solid #66bfff;
  color: #66bfff;
  text-align: center;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-filter.is-pc li a:hover {
  color: #fff;
  background-color: #66bfff;
  text-decoration: none;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-filter.is-pc li.is-active a {
  color: #fff;
  background-color: #66bfff;
}

.articleV2-filter.is-pc li.is-active a:hover {
  cursor: default;
}

.articleV2-filter.is-mobile {
  display: none;
}

.articleV2-filterV2.is-pc {
  margin: 0 auto;
  padding: 0 0 50px;
  font-size: 0;
  text-align: center;
}

.articleV2-filterV2.is-pc li {
  display: inline-block;
  padding: 0 3px 3px 0;
}

.articleV2-filterV2.is-pc li a {
  display: block;
  padding: 12px;
  font-size: 12px;
  border: 1px solid #66bfff;
  color: #66bfff;
  text-align: center;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  white-space: nowrap;
}

.articleV2-filterV2.is-pc li a:hover {
  color: #fff;
  background-color: #66bfff;
  text-decoration: none;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-filterV2.is-pc li.is-active a {
  color: #fff;
  background-color: #66bfff;
}

.articleV2-filterV2.is-pc li.is-active a:hover {
  cursor: default;
}

.articleV2-filterV2.is-mobile {
  display: none;
}

.articleV2-pubdate {
  display: block;
  font-size: 18px;
  color: #333;
  margin: 0 0 10px;
  font-family: Arial;
}

.articleV2-category {
  font-size: 16px;
  font-weight: 600;
  color: #66bfff;
  margin: 0 0 10px;
}

.articleV2-detail {
  font-size: 32px;
  font-weight: 400;
  color: #666;
  margin: 0 0 60px;
}

.articleV2-figure {
  margin: 0 -50px 60px;
  line-height: 1 !important;
}

.articleV2-figure img {
  display: block;
  margin: 0 auto;
}

.articleV2-body p {
  font-size: 16px;
  line-height: 2;
  color: #666;
}

.articleV2-body a {
  color: #66bfff;
}

.articleV2-pdf-download {
  padding: 50px 0 100px;
  text-align: right;
}

.articleV2-pdf-download a {
  position: relative;
  color: #66bfff;
  padding: 0 0 0 50px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-pdf-download a:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 30px;
  height: 40px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  background-image: url(../images/common/icon-pdf.png);
}

.articleV2-pdf-download a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-share {
  padding: 40px 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  border-top: 1px solid #ccc;
}

.articleV2-share-heading {
  font-size: 16px;
  color: #666;
  line-height: 45px;
  margin: 0 30px 0 0;
}

.articleV2-share ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 0;
}

.articleV2-share li a {
  display: inline-block;
  margin: 0 0 0 2px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-share li a:before {
  content: '';
  display: block;
  width: 45px;
  height: 45px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-share li a:hover {
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-share li[data-sns="twitter"] a:before {
  background-image: url(../images/news/icon-twitter.png);
}

.articleV2-share li[data-sns="facebook"] a:before {
  background-image: url(../images/news/icon-facebook.png);
}

.articleV2-shareV2 {
  margin: 130px 0 0;
  padding: 40px 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  border-top: 1px solid #ccc;
}

.articleV2-shareV2-heading {
  font-size: 16px;
  color: #666;
  line-height: 45px;
  margin: 0 30px 0 0;
}

.articleV2-shareV2 ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 0;
}

.articleV2-shareV2 li a {
  display: inline-block;
  margin: 0 0 0 2px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-shareV2 li a:before {
  content: '';
  display: block;
  width: 45px;
  height: 45px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-shareV2 li a:hover {
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-shareV2 li[data-sns="twitter"] a:before {
  background-image: url(../images/news/icon-twitter.png);
}

.articleV2-shareV2 li[data-sns="facebook"] a:before {
  background-image: url(../images/news/icon-facebook.png);
}

.articleV2-shareV3 {
  padding: 40px 0 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -webkit-justify-content: flex-end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.articleV2-shareV3-heading {
  font-size: 16px;
  color: #666;
  line-height: 45px;
  margin: 0 30px 0 0;
}

.articleV2-shareV3 ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 0;
}

.articleV2-shareV3 li a {
  display: inline-block;
  margin: 0 0 0 2px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-shareV3 li a:before {
  content: '';
  display: block;
  width: 45px;
  height: 45px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-shareV3 li a:hover {
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-shareV3 li[data-sns="twitter"] a:before {
  background-image: url(../images/news/icon-twitter.png);
}

.articleV2-shareV3 li[data-sns="facebook"] a:before {
  background-image: url(../images/news/icon-facebook.png);
}

.articleV2-list {
  margin: 25px 0 0;
}

.articleV2-item {
  border-bottom: 1px solid #ccc;
}

.articleV2-item a {
  position: relative;
  display: block;
  padding: 20px 0 20px 90px;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-item a:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 60px;
  height: 60px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background-size: 100% 100%;
}

.articleV2-item a .articleV2-item-pubdate {
  display: block;
  margin: 0 0 5px;
  font-size: 16px;
  color: #333;
  font-family: Arial;
}

.articleV2-item a .articleV2-item-category {
  margin: 0 0 5px;
  font-size: 12px;
  color: #66bfff;
}

.articleV2-item a .articleV2-item-detail {
  font-size: 16px;
  color: #999;
}

.articleV2-item a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-item a:hover .articleV2-item-pubdate {
  color: #333;
}

.articleV2-item a:hover .articleV2-item-category {
  color: #66bfff;
}

.articleV2-item a:hover .articleV2-item-detail {
  color: #999;
}

.articleV2-item--release a:before {
  background-image: url(../images/news/icon-release.png);
}

.articleV2-item--topics a:before {
  background-image: url(../images/news/icon-topics.png);
}

.articleV2-item--other a:before {
  background-image: url(../images/news/icon-other.png);
}

.articleV2-listV2-category {
  padding: 50px 0 30px;
  font-size: 16px;
  font-weight: 600;
  color: #444;
}

.articleV2-itemV2 {
  border-bottom: 1px solid #ccc;
}

.articleV2-listV2-category + .articleV2-itemV2 {
  border-top: 1px solid #ccc;
}

.articleV2-itemV2 > a {
  position: relative;
  display: block;
  padding: 24px 50px;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-itemV2 > a:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 30px;
  height: 40px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-itemV2 > a:after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 30px;
  height: 30px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background-image: url(../images/common/icon-more-blue.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-itemV2 > a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-itemV2 div {
  position: relative;
  display: block;
  padding: 24px 14px 24px 50px;
}

.articleV2-itemV2 div a {
  color: #66bfff;
}

.articleV2-itemV2 .articleV2-itemV2-detail {
  margin: 5px 0;
  font-size: 16px;
  color: #999;
  line-height: 1.4;
}

.articleV2-itemV2 .articleV2-itemV2-detail span {
  display: block;
  margin: 5px 0;
  font-size: 12px;
}

.articleV2-itemV2 .articleV2-itemV2-size {
  font-size: 14px;
  color: #999;
  position: absolute;
  display: block;
  top: 50%;
  right: 50px;
  margin: -10px 0 0;
  line-height: 20px;
}

.articleV2-itemV2--pdf > a {
  padding: 24px 150px 24px 50px;
}

.articleV2-itemV2--pdf > a:before {
  background-image: url(../images/common/icon-pdf.png);
}

.articleV2-itemV3 {
  border-bottom: 1px solid #ccc;
}

.articleV2-itemV3 a {
  position: relative;
  display: block;
  padding: 30px 0;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  color: #666;
  font-size: 24px;
}

.articleV2-itemV3 a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-itemV3-url {
  color: #66bfff;
  font-size: 12px;
}

.articleV2-itemV4 > a {
  position: relative;
  display: block;
  padding: 24px 50px;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-itemV4 > a:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  left: 10px;
  width: 30px;
  height: 40px;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-itemV4 > a:after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 30px;
  height: 30px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background-image: url(../images/common/icon-more-blue.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.articleV2-itemV4 > a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.articleV2-itemV4 > a--pdf > a {
  padding: 24px 150px 24px 50px;
}

.articleV2-itemV4 > a--pdf > a:before {
  background-image: url(../images/common/icon-pdf.png);
}

.articleV2-itemV4 div {
  position: relative;
  display: block;
  padding: 24px 14px 24px 50px;
}

.articleV2-itemV4 div a {
  color: #66bfff;
}

.articleV2-itemV4 .articleV2-itemV2-detail {
  margin: 5px 0;
  font-size: 16px;
  color: #999;
  line-height: 1.4;
}

.articleV2-itemV4 .articleV2-itemV2-detail span {
  display: block;
  margin: 5px 0;
  font-size: 12px;
}

.articleV2-itemV4 .articleV2-itemV2-size {
  font-size: 14px;
  color: #999;
  position: absolute;
  display: block;
  top: 50%;
  right: 50px;
  margin: -10px 0 0;
  line-height: 20px;
}

.articleV2-itemV4--pdf > a {
  padding: 24px 150px 24px 50px;
}

.articleV2-itemV4--pdf > a:before {
  background-image: url(../images/common/icon-pdf.png);
}

@media only screen and (max-width: 850px) {
  .articleV2-figure {
    margin: 0 0 60px;
  }
}

@media only screen and (max-width: 767px) {
  .articleV2 {
    width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .articleV2-heading {
    font-size: 20px;
    font-size: 6.25vw;
    margin: 0 0 25px 0;
    margin: 0 0 7.8125vw 0;
  }
  .articleV2-pager {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0 -7px;
    margin: 0 -2.3437vw;
  }
  .articleV2-pager li {
    padding: 0 5px 25px;
    padding: 0 1.5625vw 7.8125vw;
  }
  .articleV2-pager li a {
    color: #666;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-pager li a:hover {
    color: #66bfff;
  }
  .articleV2-pager li.is-active a {
    color: #66bfff;
  }
  .articleV2-pager li[data-item-id="0"] {
    width: 50%;
    -webkit-box-ordinal-group: 1;
    -webkit-order: 0;
    -ms-flex-order: 0;
    order: 0;
    text-align: left;
  }
  .articleV2-pager li[data-item-id="1"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
    -ms-flex-order: 2;
    order: 2;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="2"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
    -ms-flex-order: 3;
    order: 3;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="3"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 5;
    -webkit-order: 4;
    -ms-flex-order: 4;
    order: 4;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="4"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 6;
    -webkit-order: 5;
    -ms-flex-order: 5;
    order: 5;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="5"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 7;
    -webkit-order: 6;
    -ms-flex-order: 6;
    order: 6;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="6"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 8;
    -webkit-order: 7;
    -ms-flex-order: 7;
    order: 7;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="7"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
    -ms-flex-order: 8;
    order: 8;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="8"] {
    width: 12.5%;
    -webkit-box-ordinal-group: 9;
    -webkit-order: 8;
    -ms-flex-order: 8;
    order: 8;
    text-align: center;
  }
  .articleV2-pager li[data-item-id="9"] {
    width: 50%;
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
    -ms-flex-order: 1;
    order: 1;
    text-align: right;
  }
  .articleV2-filter.is-pc {
    display: none;
  }
  .articleV2-filter.is-mobile {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    padding: 7px;
    padding: 2.3437vw;
    border: 1px solid #66bfff;
    border-radius: 0;
    background-image: url(../images/common/bg-selectbox.png);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center right;
    color: #66bfff;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-filter.is-mobile::-ms-expand {
    display: none;
  }
  .articleV2-filter.is-mobile:focus::-ms-value {
    color: #66bfff;
    background-color: rgba(255, 255, 255, 0);
  }
  .articleV2-filterV2.is-pc {
    display: none;
  }
  .articleV2-filterV2.is-mobile {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: block;
    width: 100%;
    padding: 7px;
    padding: 2.3437vw;
    margin: 0 0 50px;
    border: 1px solid #66bfff;
    border-radius: 0;
    background-image: url(../images/common/bg-selectbox.png);
    background-repeat: no-repeat;
    background-size: auto 100%;
    background-position: center right;
    color: #66bfff;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-filterV2.is-mobile::-ms-expand {
    display: none;
  }
  .articleV2-filterV2.is-mobile:focus::-ms-value {
    color: #66bfff;
    background-color: rgba(255, 255, 255, 0);
  }
  .articleV2-pubdate {
    font-size: 12px;
    font-size: 3.75vw;
    m0-0-10margin: 0 0 3.125vw;
  }
  .articleV2-category {
    font-size: 11px;
    font-size: 3.4375vw;
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
  }
  .articleV2-detail {
    font-size: 20px;
    font-size: 6.25vw;
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
  }
  .articleV2-figure {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
  }
  .articleV2-body p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-pdf-download {
    padding: 25px 0 30px;
    padding: 7.8125vw 0 9.375vw;
    text-align: center;
  }
  .articleV2-pdf-download a {
    padding: 0 0 0 45px;
    padding: 0 0 0 14.0625vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-pdf-download a:before {
    width: 30px;
    width: 9.375vw;
    height: 40px;
    height: 12.5vw;
  }
  .articleV2-pdf-download a:hover {
    text-decoration: none;
    opacity: .5;
    -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .articleV2-share,
  .articleV2-shareV2,
  .articleV2-shareV3 {
    padding: 0;
    display: block;
  }
  .articleV2-share-heading,
  .articleV2-shareV2-heading,
  .articleV2-shareV3-heading {
    padding: 25px 0;
    padding: 7.8125vw 0;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1;
    margin: 0;
    text-align: center;
  }
  .articleV2-share ul,
  .articleV2-shareV2 ul,
  .articleV2-shareV3 ul {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .articleV2-share li a:before,
  .articleV2-shareV2 li a:before,
  .articleV2-shareV3 li a:before {
    width: 35px;
    width: 10.9375vw;
    height: 35px;
    height: 10.9375vw;
  }
  .articleV2-right {
    margin: 25px 0 0;
    margin: 7.8125vw 0 0;
  }
  .articleV2-list {
    margin: 10px 0 0;
    margin: 3.125vw 0 0;
  }
  .articleV2-item a {
    padding: 15px 0 15px 65px;
    padding: 4.6875vw 0 4.6875vw 20.3125vw;
  }
  .articleV2-item a:before {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    width: 50px;
    width: 15.625vw;
    height: 50px;
    height: 15.625vw;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }
  .articleV2-item a .articleV2-item-pubdate {
    margin: 0 0 7px;
    margin: 0 0 2.3437vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-item a .articleV2-item-category {
    margin: 0 0 7px;
    margin: 0 0 2.3437vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-item a .articleV2-item-detail {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-listV2-category {
    padding: 30px 0 10px;
    padding: 9.375vw 0 3.125vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-itemV2 a {
    padding: 20px 45px;
    padding: 6.25vw 14.0625vw;
  }
  .articleV2-itemV2 a:before {
    left: 5px;
    left: 1.5625vw;
    width: 30px;
    width: 9.375vw;
    height: 40px;
    height: 12.5vw;
  }
  .articleV2-itemV2 a:after {
    right: 5px;
    right: 1.5625vw;
    width: 22px;
    width: 7.03125vw;
    height: 22px;
    height: 7.03125vw;
  }
  .articleV2-itemV2 div {
    padding: 20px 7px 20px 45px;
    padding: 6.25vw 2.3437vw 6.25vw 14.0625vw;
  }
  .articleV2-itemV2 .articleV2-itemV2-detail {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-itemV2 .articleV2-itemV2-detail span {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-itemV2 .articleV2-itemV2-size {
    right: 25px;
    right: 7.8125vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-itemV2--pdf a {
    padding: 20px 85px 20px 45px;
    padding: 6.25vw 26.5625vw 6.25vw 14.0625vw;
  }
  .articleV2-itemV3 a {
    padding: 15px 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-itemV3-url {
    font-size: 10px;
  }
  .articleV2-itemV4 a {
    padding: 20px 45px;
    padding: 6.25vw 14.0625vw;
  }
  .articleV2-itemV4 a:before {
    left: 5px;
    left: 1.5625vw;
    width: 30px;
    width: 9.375vw;
    height: 40px;
    height: 12.5vw;
  }
  .articleV2-itemV4 a:after {
    right: 5px;
    right: 1.5625vw;
    width: 22px;
    width: 7.03125vw;
    height: 22px;
    height: 7.03125vw;
  }
  .articleV2-itemV4 div {
    padding: 20px 7px 20px 45px;
    padding: 6.25vw 2.3437vw 6.25vw 14.0625vw;
  }
  .articleV2-itemV4 .articleV2-itemV2-detail {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV2-itemV4 .articleV2-itemV2-detail span {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-itemV4 .articleV2-itemV2-size {
    right: 25px;
    right: 7.8125vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .articleV2-itemV4--pdf a {
    padding: 20px 85px 20px 45px;
    padding: 6.25vw 26.5625vw 6.25vw 14.0625vw;
  }
}

@media only screen and (max-width: 520px) {
  .articleV2-filter.is-mobile {
    font-size: 16px;
  }
}

.android-4-2 .articleV2-share ul,
.android-4-3 .articleV2-share ul,
.android-4-4 .articleV2-share ul {
  display: block;
  width: 102px;
  margin: 0 auto;
  text-align: center;
}

.android-4-2 .articleV2-share li,
.android-4-3 .articleV2-share li,
.android-4-4 .articleV2-share li {
  display: inline-block;
  width: 50px;
}

/*--------------------------------------------------------------------------------
articleV3
--------------------------------------------------------------------------------*/
.articleV3 {
  padding: 40px 0 0;
}

.articleV3-inner {
  position: relative;
  max-width: 1190px;
  margin: 0 auto;
  padding: 0 20px;
}

.articleV3-body {
  border-bottom: 1px solid #666;
}

.articleV3-heading {
  margin: 90px 0 30px;
  font-size: 40px;
  font-weight: 400;
  color: #999;
  text-align: center;
}

.articleV3-section {
  display: table;
  table-layout: fixed;
  padding: 60px 0;
  width: 100%;
}

.articleV3-section + .articleV3-section {
  border-top: 1px solid #ccc;
}

.articleV3-figure {
  display: table-cell;
  vertical-align: top;
  width: 50%;
}

.articleV3-figure img {
  display: block;
}

.articleV3-detail {
  display: table-cell;
  vertical-align: top;
  width: 50%;
  padding: 0 20px;
}

.articleV3-detail p {
  font-size: 16px;
  color: #666;
  line-height: 1.8;
}

.articleV3-detailV2 {
  display: block;
  width: 685px;
  margin: 0 auto;
}

.articleV3-detailV2 p {
  font-size: 18px;
  color: #666;
  line-height: 1.6;
}

.articleV3-category {
  margin: 0 0 16px;
  padding: 0 0 12px;
  font-size: 32px;
  font-weight: 400;
  color: #999;
  border-bottom: 1px solid #ccc;
}

.articleV3-category span {
  display: block;
  margin: 0 0 5px;
  font-size: 14px;
  font-weight: 500;
}

.articleV3 .read-moreV2 a {
  line-height: 1.4;
}

.articleV3[data-category="products-subcategory"] {
  position: relative;
  padding: 0;
  background-color: #fff;
  z-index: 30;
}

@media only screen and (max-width: 767px) {
  .articleV3 {
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
  }
  .articleV3-inner {
    max-width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .articleV3-body {
    border-bottom: 1px solid #666;
  }
  .articleV3-body:first-child .articleV3-section {
    padding: 0;
  }
  .articleV3-heading {
    margin: 50px 0 0;
    margin: 15.625vw 0 0;
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .articleV3-section {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse;
    padding: 50px 0;
    padding: 15.625vw 0;
  }
  .articleV3-section + .articleV3-section {
    border-top: 1px solid #ccc;
  }
  .articleV3-figure {
    display: block;
    width: 100%;
  }
  .articleV3-detail {
    display: block;
    width: 100%;
    padding: 0;
  }
  .articleV3-detail p {
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.6;
  }
  .articleV3-detailV2 {
    display: block;
    width: 100%;
    margin: 0 0 50px;
    margin: 0 0 15.625vw;
  }
  .articleV3-detailV2 p {
    font-size: 12px;
    font-size: 3.75vw;
    color: #666;
    line-height: 1.6;
  }
  .articleV3-category {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
    padding: 0 0 15px;
    padding: 0 0 4.6875vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .articleV3-category span {
    margin: 0 0 7px;
    margin: 0 0 2.3437vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV3[data-category="products-subcategory"] {
    padding: 15px 0 0;
    padding: 4.6875vw 0 0;
  }
}

/*--------------------------------------------------------------------------------
articleV4
--------------------------------------------------------------------------------*/
.articleV4 {
  position: relative;
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1190px;
}

.articleV4-header {
  padding: 0 20px 50px;
  border-bottom: 1px solid #ccc;
}

.articleV4-heading {
  margin: 0 0 25px;
  font-size: 40px;
  color: #fff;
  font-weight: 400;
}

.articleV4-headingV2 {
  position: relative;
  margin: 0 0 20px;
  font-size: 38px;
  color: #fff;
  font-weight: 400;
}

.articleV4-headingV2 i {
  margin: 0 0 5px;
  display: block;
  font-size: 16px;
  font-style: normal;
}

.articleV4-headingV2[data-category="motor-sport"] {
  padding: 210px 0 0 0;
}

.articleV4-headingV2[data-category="motor-sport"]:before {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  width: 212px;
  height: 155px;
}

.articleV4-headingV4 {
  position: relative;
  margin: 0 0 20px;
  font-size: 60px;
  color: #fff;
  font-weight: 400;
}

.articleV4-headingV4 i {
  margin: 0 0 5px;
  display: block;
  font-size: 16px;
  font-style: normal;
}

.articleV4-headingV4 b {
  font-weight: 600;
  font-style: normal;
  font-family: Arial;
}

.articleV4-headingV4[data-category="products"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.articleV4-headingV4[data-category="products"] span {
  width: 80%;
}

.articleV4-headingV4[data-category="products"]:before {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 20%;
  margin: 0 15px 0 0;
}

.articleV4-headingV4[data-category="foundation"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.articleV4-headingV4[data-category="foundation"] span {
  width: 80%;
}

.articleV4-headingV4[data-category="foundation"]:before {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 20%;
  margin: 0 15px 0 0;
}

.articleV4-headingV4[data-category="sales"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.articleV4-headingV4[data-category="sales"] span {
  width: 80%;
}

.articleV4-headingV4[data-category="sales"]:before {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 20%;
  margin: 0 15px 0 0;
}

.articleV4-headingV4[data-category="supply"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.articleV4-headingV4[data-category="supply"] span {
  display: block;
  margin: 0 5px;
  width: 166px;
  white-space: nowrap;
}

.articleV4-headingV4[data-category="supply"] span i {
  letter-spacing: -1px;
}

.articleV4-headingV4[data-category="supply"]:after {
  content: '';
  display: block;
  margin: 0 5px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.articleV4-headingV4[data-category="worker"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  width: 100%;
}

.articleV4-headingV4[data-category="worker"] span {
  display: block;
  margin: 0 5px;
  white-space: nowrap;
}

.articleV4-headingV4[data-category="worker"]:after {
  content: '';
  display: block;
  margin: 0 5px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.articleV4-headingV5 {
  position: relative;
  font-size: 20px;
  color: #000;
  line-height: 1.1;
  white-space: nowrap;
}

.articleV4-headingV5 i {
  font-size: 105px;
  font-weight: 600;
  font-style: normal;
  font-family: Arial;
  letter-spacing: -7px;
}

.articleV4-headingV5[data-category="group-companies"] {
  padding: 210px 0 0 0;
}

.articleV4-headingV5[data-category="group-companies"]:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  background-image: url(../images/global-network/icon-groupCompanies.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 250px;
  z-index: 10;
}

.articleV4-headingV5[data-category="group-companies"] span {
  position: relative;
  z-index: 20;
}

.articleV4-headingV5[data-category="group-companies"] i {
  margin: 0 14px 0 0;
}

.articleV4-headingV5[data-category="worker"] {
  padding: 210px 0 0 0;
}

.articleV4-headingV5[data-category="worker"]:before {
  position: absolute;
  top: -10px;
  left: 0;
  content: '';
  display: block;
  background-image: url(../images/global-network/icon-worker.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 250px;
  z-index: 10;
}

.articleV4-headingV5[data-category="worker"] span {
  position: relative;
  z-index: 20;
}

.articleV4-headingV5[data-category="worker"] i {
  margin: 0 14px 0 0;
}

.articleV4-copy {
  font-size: 20px;
  color: #fff;
}

.articleV4-copyV2 {
  max-width: 810px;
  margin: 0 auto;
  padding: 125px 0 0;
  font-size: 18px;
  color: #666;
  line-height: 1.8;
}

.articleV4-detail {
  font-size: 16px;
  color: #fff;
}

.articleV4-detailV2 {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  white-space: nowrap;
}

.articleV4-figure {
  padding: 35px 0 0;
  text-align: center;
}

.articleV4-2up {
  display: table;
  width: 100%;
  table-layout: fixed;
  padding: 30px 0;
  border-bottom: 1px solid #ccc;
}

.articleV4-2up--left {
  display: table-cell;
  width: 50%;
  padding: 0 30px;
  vertical-align: top;
  border-right: 1px solid #ccc;
}

.articleV4-2up--right {
  display: table-cell;
  width: 50%;
  padding: 0 30px;
  vertical-align: top;
}

.articleV4-2up--right li {
  position: relative;
  padding: 30px 0;
  border-top: 1px solid #ccc;
}

.articleV4-2up--right li:first-child {
  padding: 0 0 30px;
  border-top: none;
}

.articleV4-2up--right li:last-child {
  padding: 30px 0 0;
}

.articleV4-2up--right li[data-category="environment"]:after {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  width: 40%;
}

.articleV4-2up--right li[data-category="quality"]:after {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  width: 40%;
}

.articleV4-2upV2 {
  display: table;
  width: 100%;
  table-layout: fixed;
  margin: 80px 0 120px;
}

.articleV4-2upV2--left {
  display: table-cell;
  width: 50%;
  padding: 0 45px 15px 25px;
  vertical-align: top;
  border-right: 1px solid #ccc;
}

.articleV4-2upV2--right {
  display: table-cell;
  width: 50%;
  padding: 0 25px 15px 45px;
  vertical-align: top;
}

.articleV4-full {
  padding: 30px 20px 0;
}

.articleV4-full + .articleV4-2up .articleV4-2up--left {
  padding: 30px;
}

.articleV4-full + .articleV4-2up .articleV4-2up--right {
  padding: 30px;
}

@media only screen and (min-width: 768px) {
  .articleV4-headingV2[data-category="motor-sport"]:before {
    background-image: url(../images/about-us/icon-motorSport.png);
  }
  .articleV4-headingV4[data-category="products"]:before {
    background-image: url(../images/about-us/icon-products.png);
  }
  .articleV4-headingV4[data-category="foundation"]:before {
    background-image: url(../images/about-us/icon-foundation.png);
  }
  .articleV4-headingV4[data-category="sales"]:before {
    background-image: url(../images/about-us/icon-sales.png);
  }
  .articleV4-headingV4[data-category="supply"]:after {
    background-image: url(../images/about-us/icon-supply.png);
  }
  .articleV4-headingV4[data-category="worker"]:after {
    background-image: url(../images/about-us/icon-worker.png);
  }
  .articleV4-2up--right li[data-category="environment"] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .articleV4-2up--right li[data-category="environment"] div {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .articleV4-2up--right li[data-category="environment"]:after {
    background-image: url(../images/about-us/icon-environment.png);
  }
  .articleV4-2up--right li[data-category="quality"] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .articleV4-2up--right li[data-category="quality"] div {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .articleV4-2up--right li[data-category="quality"]:after {
    background-image: url(../images/about-us/icon-quality.png);
  }
}

@media only screen and (max-width: 920px) {
  .articleV4-2upV2--left {
    padding: 0 25px 15px 5px;
  }
  .articleV4-2upV2--right {
    padding: 0 5px 15px 25px;
  }
  .article-figureV4 figcaption{
    width: 92%;
  }
}

@media only screen and (max-width: 767px) {
  .articleV4 {
    padding: 0 15px;
    padding: 0 4.6875vw;
    max-width: 100%;
  }
  .articleV4-header {
    padding: 0 0 30px;
    padding: 0 0 9.375vw;
  }
  .articleV4-heading {
    margin: 0 0 25px;
    margin: 0 0 7.8125vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .articleV4-headingV2 {
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .articleV4-headingV2 i {
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV4-headingV2[data-category="motor-sport"]:before {
    background-image: url(../images/about-us/icon-motorSport-sp.png);
  }
  .articleV4-headingV4 {
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    font-size: 30px;
    font-size: 9.375vw;
  }
  .articleV4-headingV4 i {
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV4-headingV4[data-category="products"]:before {
    background-image: url(../images/about-us/icon-products-sp.png);
  }
  .articleV4-headingV4[data-category="foundation"]:before {
    background-image: url(../images/about-us/icon-foundation-sp.png);
  }
  .articleV4-headingV4[data-category="sales"]:before {
    background-image: url(../images/about-us/icon-sales-sp.png);
  }
  .articleV4-headingV4[data-category="supply"] span {
    width: auto;
  }
  .articleV4-headingV4[data-category="supply"] span i {
    letter-spacing: -1px;
  }
  .articleV4-headingV4[data-category="supply"]:after {
    background-image: url(../images/about-us/icon-supply-sp.png);
  }
  .articleV4-headingV4[data-category="worker"] {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .articleV4-headingV4[data-category="worker"]:after {
    width: auto;
    max-width: none;
    background-image: url(../images/about-us/icon-worker-sp.png);
  }
  .articleV4-headingV5 {
    font-size: 16px;
    font-size: 5vw;
  }
  .articleV4-headingV5 i {
    font-size: 90px;
    font-size: 28.125vw;
    letter-spacing: -5px;
  }
  .articleV4-headingV5[data-category="group-companies"] {
    padding: 150px 0 0 0;
    padding: 46.875vw 0 0 0;
  }
  .articleV4-headingV5[data-category="group-companies"]:before {
    height: 150px;
    height: 46.875vw;
  }
  .articleV4-headingV5[data-category="group-companies"] i {
    margin: 0 15px 0 0;
    margin: 0 4.6875vw 0 0;
  }
  .articleV4-headingV5[data-category="worker"] {
    padding: 150px 0 0 0;
    padding: 46.875vw 0 0 0;
  }
  .articleV4-headingV5[data-category="worker"]:before {
    top: 0;
    height: 150px;
    height: 46.875vw;
  }
  .articleV4-headingV5[data-category="worker"] i {
    margin: 0;
  }
  .articleV4-copy {
    font-size: 14px;
    font-size: 4.375vw;
    line-height: 1.4;
  }
  .articleV4-copyV2 {
    width: 100%;
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
    font-size: 14px;
    font-size: 4.375vw;
    color: #666;
    line-height: 1.6;
    text-align: left;
  }
  .articleV4-copyV2 br {
    display: none;
  }
  .articleV4-detail {
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.4;
  }
  .articleV4-detail br {
    display: none;
  }
  .articleV4-detailV2 {
    font-size: 12px;
    font-size: 3.75vw;
    letter-spacing: -1px;
  }
  .articleV4-figure {
    padding: 20px 0 0;
    padding: 6.25vw 0 0;
  }
  .articleV4-figure[data-category="solution-provider"] {
    padding: 20px 30px 0;
    padding: 6.25vw 9.375vw 0;
  }
  .articleV4-figure[data-category="solution-provider"] img {
    width: 100%;
  }
  .articleV4-figure[data-category="world-map"] {
    margin: 0 -40px;
    margin: 0 -12.5vw;
  }
  .articleV4-2up {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: none;
  }
  .articleV4-2up:last-child {
    border-bottom: none !important;
  }
  .articleV4-2up--left {
    display: block;
    width: 100%;
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
    border-right: none;
  }
  .articleV4-2up--right {
    display: block;
    width: 100%;
    padding: 0 ;
  }
  .articleV4-2up--right li {
    display: block;
    width: 100%;
    padding: 30px 0;
    padding: 9.375vw 0;
    border-top: none;
    border-bottom: 1px solid #ccc;
  }
  .articleV4-2up--right li:first-child {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV4-2up--right li:last-child {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV4-2up--right li[data-category="environment"] {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV4-2up--right li[data-category="environment"] li {
    padding: 0;
    border-bottom: none;
  }
  .articleV4-2up--right li[data-category="environment"]:after {
    margin: 30px auto 0;
    margin: 9.375vw auto 0;
    background-image: url(../images/about-us/icon-environment-sp.png);
    background-size: contain;
    width: 50px;
    width: 15.625vw;
    height: 65px;
    height: 20.3125vw;
  }
  .articleV4-2up--right li[data-category="quality"] {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV4-2up--right li[data-category="quality"] li {
    padding: 0;
    border-bottom: none;
  }
  .articleV4-2up--right li[data-category="quality"]:after {
    margin: 30px auto 0;
    margin: 9.375vw auto 0;
    background-image: url(../images/about-us/icon-quality-sp.png);
    background-size: contain;
    width: 50px;
    width: 15.625vw;
    height: 65px;
    height: 20.3125vw;
  }
  .articleV4-2upV2 {
    display: block;
    width: 100%;
    margin: 50px 0;
    margin: 15.625vw 0;
  }
  .articleV4-2upV2--left {
    display: block;
    width: 100%;
    padding: 0;
    border-right: none;
  }
  .articleV4-2upV2--right {
    display: block;
    width: 100%;
    margin: 50px 0 0;
    margin: 15.625vw 0 0;
    padding: 0;
  }
  .articleV4-full {
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
  }
  .articleV4-full + .articleV4-2up .articleV4-2up--left {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV4-full + .articleV4-2up .articleV4-2up--right {
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
  }
}

.android-4-2 .articleV4-headingV2[data-category="motor-sport"]:before,
.android-4-3 .articleV4-headingV2[data-category="motor-sport"]:before,
.android-4-4 .articleV4-headingV2[data-category="motor-sport"]:before {
  display: block;
}

.android-4-2 .articleV4-headingV4[data-category="products"],
.android-4-3 .articleV4-headingV4[data-category="products"],
.android-4-4 .articleV4-headingV4[data-category="products"] {
  width: 100%;
  display: block;
}

.android-4-2 .articleV4-headingV4[data-category="products"] span,
.android-4-3 .articleV4-headingV4[data-category="products"] span,
.android-4-4 .articleV4-headingV4[data-category="products"] span {
  width: auto;
}

.android-4-2 .articleV4-headingV4[data-category="products"] span i,
.android-4-3 .articleV4-headingV4[data-category="products"] span i,
.android-4-4 .articleV4-headingV4[data-category="products"] span i {
  height: 20px;
}

.android-4-2 .articleV4-headingV4[data-category="foundation"],
.android-4-3 .articleV4-headingV4[data-category="foundation"],
.android-4-4 .articleV4-headingV4[data-category="foundation"] {
  width: 100%;
  display: block;
}

.android-4-2 .articleV4-headingV4[data-category="foundation"] span,
.android-4-3 .articleV4-headingV4[data-category="foundation"] span,
.android-4-4 .articleV4-headingV4[data-category="foundation"] span {
  width: auto;
}

.android-4-2 .articleV4-headingV4[data-category="sales"],
.android-4-3 .articleV4-headingV4[data-category="sales"],
.android-4-4 .articleV4-headingV4[data-category="sales"] {
  width: 100%;
  display: block;
}

.android-4-2 .articleV4-headingV4[data-category="sales"] span,
.android-4-3 .articleV4-headingV4[data-category="sales"] span,
.android-4-4 .articleV4-headingV4[data-category="sales"] span {
  width: auto;
}

/*--------------------------------------------------------------------------------
articleV5
--------------------------------------------------------------------------------*/
.articleV5 {
  position: relative;
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1190px;
}

.articleV5-header {
  padding: 0 20px 50px;
  border-bottom: 1px solid #ccc;
}

.articleV5-heading {
  margin: 0 0 25px;
  font-size: 40px;
  color: #fff;
  font-weight: 400;
}

.articleV5-headingV2 {
  position: relative;
  margin: 0 0 20px;
  font-size: 38px;
  color: #fff;
  font-weight: 400;
}

.articleV5-headingV2 i {
  margin: 0 0 5px;
  display: block;
  font-size: 16px;
  font-style: normal;
}

.articleV5-headingV2[data-category="motor-sport"] {
  padding: 210px 0 0 0;
}

.articleV5-headingV2[data-category="motor-sport"]:before {
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  width: 212px;
  height: 155px;
}

.articleV5-headingV4 {
  position: relative;
  margin: 0 0 20px;
  font-size: 60px;
  color: #fff;
  font-weight: 400;
}

.articleV5-headingV4 i {
  margin: 0 0 5px;
  display: block;
  font-size: 16px;
  font-style: normal;
}

.articleV5-headingV4 b {
  font-weight: 600;
  font-style: normal;
  font-family: Arial;
}

.articleV5-headingV4[data-category="products"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.articleV5-headingV4[data-category="products"] span {
  width: 80%;
}

.articleV5-headingV4[data-category="products"]:before {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 20%;
  margin: 0 15px 0 0;
}

.articleV5-headingV4[data-category="foundation"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.articleV5-headingV4[data-category="foundation"] span {
  width: 80%;
}

.articleV5-headingV4[data-category="foundation"]:before {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 20%;
  margin: 0 15px 0 0;
}

.articleV5-headingV4[data-category="sales"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.articleV5-headingV4[data-category="sales"] span {
  width: 80%;
}

.articleV5-headingV4[data-category="sales"]:before {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: left center;
  background-size: contain;
  width: 20%;
  margin: 0 15px 0 0;
}

.articleV5-headingV4[data-category="supply"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
}

.articleV5-headingV4[data-category="supply"] span {
  display: block;
  margin: 0 5px;
  width: 166px;
  white-space: nowrap;
}

.articleV5-headingV4[data-category="supply"] span i {
  letter-spacing: -1px;
}

.articleV5-headingV4[data-category="supply"]:after {
  content: '';
  display: block;
  margin: 0 5px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.articleV5-headingV4[data-category="worker"] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse;
  width: 100%;
}

.articleV5-headingV4[data-category="worker"] span {
  display: block;
  margin: 0 5px;
  white-space: nowrap;
}

.articleV5-headingV4[data-category="worker"]:after {
  content: '';
  display: block;
  margin: 0 5px;
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.articleV5-headingV5 {
  position: relative;
  font-size: 20px;
  color: #000;
  line-height: 1.1;
  white-space: nowrap;
}

.articleV5-headingV5 i {
  font-size: 105px;
  font-weight: 600;
  font-style: normal;
  font-family: Arial;
  letter-spacing: -7px;
}

.articleV5-headingV5[data-category="group-companies"] {
  padding: 210px 0 0 0;
}

.articleV5-headingV5[data-category="group-companies"]:before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: block;
  background-image: url(../images/global-network/icon-groupCompanies.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 250px;
  z-index: 10;
}

.articleV5-headingV5[data-category="group-companies"] span {
  position: relative;
  z-index: 20;
}

.articleV5-headingV5[data-category="group-companies"] i {
  margin: 0 14px 0 0;
}

.articleV5-headingV5[data-category="worker"] {
  padding: 210px 0 0 0;
}

.articleV5-headingV5[data-category="worker"]:before {
  position: absolute;
  top: -10px;
  left: 0;
  content: '';
  display: block;
  background-image: url(../images/global-network/icon-worker.png);
  background-repeat: no-repeat;
  background-size: contain;
  width: 100%;
  height: 250px;
  z-index: 10;
}

.articleV5-headingV5[data-category="worker"] span {
  position: relative;
  z-index: 20;
}

.articleV5-headingV5[data-category="worker"] i {
  margin: 0 14px 0 0;
}

.articleV5-copy {
  font-size: 20px;
  color: #fff;
}

.articleV5-copyV2 {
  max-width: 810px;
  margin: 0 auto;
  padding: 125px 0 0;
  font-size: 18px;
  color: #666;
  line-height: 1.8;
}

.articleV5-detail {
  font-size: 16px;
  color: #fff;
}

.articleV5-detailV2 {
  font-size: 14px;
  color: #666;
  line-height: 1.6;
  white-space: nowrap;
}

.articleV5-figure {
  padding: 35px 0 0;
  text-align: center;
}

.articleV5-2up {
  display: table;
  width: 100%;
  table-layout: fixed;
  padding: 30px 0;
  border-bottom: 1px solid #ccc;
}

.articleV5-2up--left {
  display: table-cell;
  width: 50%;
  padding: 0 30px;
  vertical-align: top;
  border-right: 1px solid #ccc;
}

.articleV5-2up--right {
  display: table-cell;
  width: 50%;
  padding: 0 30px;
  vertical-align: top;
}

.articleV5-2up--right li {
  position: relative;
  padding: 30px 0;
  border-top: 1px solid #ccc;
}

.articleV5-2up--right li:first-child {
  padding: 0 0 30px;
  border-top: none;
}

.articleV5-2up--right li:last-child {
  padding: 30px 0 0;
}

.articleV5-2up--right li[data-category="environment"]:after {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  width: 40%;
}

.articleV5-2up--right li[data-category="quality"]:after {
  content: '';
  display: block;
  background-repeat: no-repeat;
  background-position: center center;
  width: 40%;
}

.articleV5-2upV2 {
  display: table;
  width: 100%;
  table-layout: fixed;
  margin: 80px 0 120px;
}

.articleV5-2upV2--left {
  display: table-cell;
  width: 50%;
  padding: 0 45px 15px 25px;
  vertical-align: top;
  border-right: 1px solid #ccc;
}

.articleV5-2upV2--right {
  display: table-cell;
  width: 50%;
  padding: 0 25px 15px 45px;
  vertical-align: top;
}

.articleV5-full {
  padding: 30px 20px 0;
}

.articleV5-full + .articleV5-2up .articleV5-2up--left {
  padding: 30px;
}

.articleV5-full + .articleV5-2up .articleV5-2up--right {
  padding: 30px;
}

@media only screen and (min-width: 768px) {
  .articleV5-headingV2[data-category="motor-sport"]:before {
    background-image: url(../images/about-us/icon-motorSport.png);
  }
  .articleV5-headingV4[data-category="products"]:before {
    background-image: url(../images/about-us/icon-products.png);
  }
  .articleV5-headingV4[data-category="foundation"]:before {
    background-image: url(../images/about-us/icon-foundation.png);
  }
  .articleV5-headingV4[data-category="sales"]:before {
    background-image: url(../images/about-us/icon-sales.png);
  }
  .articleV5-headingV4[data-category="supply"]:after {
    background-image: url(../images/about-us/icon-supply.png);
  }
  .articleV5-headingV4[data-category="worker"]:after {
    background-image: url(../images/about-us/icon-worker.png);
  }
  .articleV5-2up--right li[data-category="environment"] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .articleV5-2up--right li[data-category="environment"] div {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .articleV5-2up--right li[data-category="environment"]:after {
    background-image: url(../images/about-us/icon-environment.png);
  }
  .articleV5-2up--right li[data-category="quality"] {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }
  .articleV5-2up--right li[data-category="quality"] div {
    -webkit-box-flex: 1;
    -webkit-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  .articleV5-2up--right li[data-category="quality"]:after {
    background-image: url(../images/about-us/icon-quality.png);
  }
}

@media only screen and (max-width: 920px) {
  .articleV5-2upV2--left {
    padding: 0 25px 15px 5px;
  }
  .articleV5-2upV2--right {
    padding: 0 5px 15px 25px;
  }
}

@media only screen and (max-width: 767px) {
  .articleV5 {
    padding: 0 15px;
    padding: 0 4.6875vw;
    max-width: 100%;
  }
  .articleV5-header {
    padding: 0 0 30px;
    padding: 0 0 9.375vw;
  }
  .articleV5-heading {
    margin: 0 0 25px;
    margin: 0 0 7.8125vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .articleV5-headingV2 {
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .articleV5-headingV2 i {
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV5-headingV2[data-category="motor-sport"]:before {
    background-image: url(../images/about-us/icon-motorSport-sp.png);
  }
  .articleV5-headingV4 {
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    font-size: 30px;
    font-size: 9.375vw;
  }
  .articleV5-headingV4 i {
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV5-headingV4[data-category="products"]:before {
    background-image: url(../images/about-us/icon-products-sp.png);
  }
  .articleV5-headingV4[data-category="foundation"]:before {
    background-image: url(../images/about-us/icon-foundation-sp.png);
  }
  .articleV5-headingV4[data-category="sales"]:before {
    background-image: url(../images/about-us/icon-sales-sp.png);
  }
  .articleV5-headingV4[data-category="supply"] span {
    width: auto;
  }
  .articleV5-headingV4[data-category="supply"] span i {
    letter-spacing: -1px;
  }
  .articleV5-headingV4[data-category="supply"]:after {
    background-image: url(../images/about-us/icon-supply-sp.png);
  }
  .articleV5-headingV4[data-category="worker"] {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-direction: row;
    -ms-flex-direction: row;
    flex-direction: row;
  }
  .articleV5-headingV4[data-category="worker"]:after {
    width: auto;
    max-width: none;
    background-image: url(../images/about-us/icon-worker-sp.png);
  }
  .articleV5-headingV5 {
    font-size: 16px;
    font-size: 5vw;
  }
  .articleV5-headingV5 i {
    font-size: 90px;
    font-size: 28.125vw;
    letter-spacing: -5px;
  }
  .articleV5-headingV5[data-category="group-companies"] {
    padding: 150px 0 0 0;
    padding: 46.875vw 0 0 0;
  }
  .articleV5-headingV5[data-category="group-companies"]:before {
    height: 150px;
    height: 46.875vw;
  }
  .articleV5-headingV5[data-category="group-companies"] i {
    margin: 0 15px 0 0;
    margin: 0 4.6875vw 0 0;
  }
  .articleV5-headingV5[data-category="worker"] {
    padding: 150px 0 0 0;
    padding: 46.875vw 0 0 0;
  }
  .articleV5-headingV5[data-category="worker"]:before {
    top: 0;
    height: 150px;
    height: 46.875vw;
  }
  .articleV5-headingV5[data-category="worker"] i {
    margin: 0;
  }
  .articleV5-copy {
    font-size: 14px;
    font-size: 4.375vw;
    line-height: 1.4;
  }
  .articleV5-copyV2 {
    width: 100%;
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
    font-size: 14px;
    font-size: 4.375vw;
    color: #666;
    line-height: 1.6;
    text-align: left;
  }
  .articleV5-copyV2 br {
    display: none;
  }
  .articleV5-detail {
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.4;
  }
  .articleV5-detail br {
    display: none;
  }
  .articleV5-detailV2 {
    font-size: 12px;
    font-size: 3.75vw;
    letter-spacing: -1px;
  }
  .articleV5-figure {
    padding: 20px 0 0;
    padding: 6.25vw 0 0;
  }
  .articleV5-figure[data-category="solution-provider"] {
    padding: 20px 30px 0;
    padding: 6.25vw 9.375vw 0;
  }
  .articleV5-figure[data-category="solution-provider"] img {
    width: 100%;
  }
  .articleV5-figure[data-category="world-map"] {
    margin: 0 -40px;
    margin: 0 -12.5vw;
  }
  .articleV5-2up {
    display: block;
    width: 100%;
    padding: 0;
    border-bottom: none;
  }
  .articleV5-2up--left {
    display: block;
    width: 100%;
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
    border-right: none;
  }
  .articleV5-2up--right {
    display: block;
    width: 100%;
    padding: 0;
  }
  .articleV5-2up--right li {
    display: block;
    width: 100%;
    padding: 30px 0;
    padding: 9.375vw 0;
    border-top: none;
    border-bottom: 1px solid #ccc;
  }
  .articleV5-2up--right li:first-child {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV5-2up--right li:last-child {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV5-2up--right li[data-category="environment"] {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV5-2up--right li[data-category="environment"] li {
    padding: 0;
    border-bottom: none;
  }
  .articleV5-2up--right li[data-category="environment"]:after {
    margin: 30px auto 0;
    margin: 9.375vw auto 0;
    background-image: url(../images/about-us/icon-environment-sp.png);
    background-size: contain;
    width: 50px;
    width: 15.625vw;
    height: 65px;
    height: 20.3125vw;
  }
  .articleV5-2up--right li[data-category="quality"] {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV5-2up--right li[data-category="quality"] li {
    padding: 0;
    border-bottom: none;
  }
  .articleV5-2up--right li[data-category="quality"]:after {
    margin: 30px auto 0;
    margin: 9.375vw auto 0;
    background-image: url(../images/about-us/icon-quality-sp.png);
    background-size: contain;
    width: 50px;
    width: 15.625vw;
    height: 65px;
    height: 20.3125vw;
  }
  .articleV5-2upV2 {
    display: block;
    width: 100%;
    margin: 50px 0;
    margin: 15.625vw 0;
  }
  .articleV5-2upV2--left {
    display: block;
    width: 100%;
    padding: 0;
    border-right: none;
  }
  .articleV5-2upV2--right {
    display: block;
    width: 100%;
    margin: 50px 0 0;
    margin: 15.625vw 0 0;
    padding: 0;
  }
  .articleV5-full {
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
  }
  .articleV5-full + .articleV5-2up .articleV5-2up--left {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .articleV5-full + .articleV5-2up .articleV5-2up--right {
    padding: 30px 0;
    padding: 9.375vw 0;
    border-bottom: 1px solid #ccc;
  }
}

.android-4-2 .articleV5-headingV2[data-category="motor-sport"]:before,
.android-4-3 .articleV5-headingV2[data-category="motor-sport"]:before,
.android-4-4 .articleV5-headingV2[data-category="motor-sport"]:before {
  display: block;
}

.android-4-2 .articleV5-headingV4[data-category="products"],
.android-4-3 .articleV5-headingV4[data-category="products"],
.android-4-4 .articleV5-headingV4[data-category="products"] {
  width: 100%;
  display: block;
}

.android-4-2 .articleV5-headingV4[data-category="products"] span,
.android-4-3 .articleV5-headingV4[data-category="products"] span,
.android-4-4 .articleV5-headingV4[data-category="products"] span {
  width: auto;
}

.android-4-2 .articleV5-headingV4[data-category="products"] span i,
.android-4-3 .articleV5-headingV4[data-category="products"] span i,
.android-4-4 .articleV5-headingV4[data-category="products"] span i {
  height: 20px;
}

.android-4-2 .articleV5-headingV4[data-category="foundation"],
.android-4-3 .articleV5-headingV4[data-category="foundation"],
.android-4-4 .articleV5-headingV4[data-category="foundation"] {
  width: 100%;
  display: block;
}

.android-4-2 .articleV5-headingV4[data-category="foundation"] span,
.android-4-3 .articleV5-headingV4[data-category="foundation"] span,
.android-4-4 .articleV5-headingV4[data-category="foundation"] span {
  width: auto;
}

.android-4-2 .articleV5-headingV4[data-category="sales"],
.android-4-3 .articleV5-headingV4[data-category="sales"],
.android-4-4 .articleV5-headingV4[data-category="sales"] {
  width: 100%;
  display: block;
}

.android-4-2 .articleV5-headingV4[data-category="sales"] span,
.android-4-3 .articleV5-headingV4[data-category="sales"] span,
.android-4-4 .articleV5-headingV4[data-category="sales"] span {
  width: auto;
}

/*--------------------------------------------------------------------------------
aside
--------------------------------------------------------------------------------*/
.aside {
  margin: 0 -20px;
}

[data-page-id="innovation-monozukuri"] .aside:before,
[data-page-id="innovation-production-engineering"] .aside:before,
[data-page-id="innovation-testing-research"] .aside:before,
[data-page-id^="innovation-technical-review-vol-"] .aside:before,
[data-page-id^="global-our-employee-article-"] .aside:before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  max-width: 1150px;
  margin: 200px auto 0;
  background-color: #ccc;
}

@media only screen and (max-width: 1180px) {
  [data-page-id="innovation-monozukuri"] .aside:before,
  [data-page-id="innovation-production-engineering"] .aside:before,
  [data-page-id="innovation-testing-research"] .aside:before,
  [data-page-id^="innovation-technical-review-vol-"] .aside:before,
  [data-page-id^="global-our-employee-article-"] .aside:before {
    max-width: 96vw;
  }
}

@media only screen and (max-width: 1023px) {
  .aside {
    margin: 0;
  }
}

@media only screen and (max-width: 767px) {
  [data-page-id="innovation-monozukuri"] .aside:before,
  [data-page-id="innovation-production-engineering"] .aside:before,
  [data-page-id="innovation-testing-research"] .aside:before,
  [data-page-id^="innovation-technical-review-vol-"] .aside:before,
  [data-page-id^="global-our-employee-article-"] .aside:before {
    margin: 50px auto 0;
    margin: 15.625vw auto 0;
  }
}

/*--------------------------------------------------------------------------------
asideV2
--------------------------------------------------------------------------------*/
.asideV2 {
  background-color: #fff;
}

/*--------------------------------------------------------------------------------
asideV3
--------------------------------------------------------------------------------*/
.asideV3 {
  max-width: 1150px;
  margin: 0 auto;
}

.asideV3 .cardV4 {
  margin: 100px 21px 0;
  border-top: 1px solid #ccc;
}

@media only screen and (max-width: 767px) {
  .asideV3 .cardV4 {
    margin: 50px 10px 0;
    margin: 15.625vw 3.125vw 0;
    padding: 50px 0 0;
    padding: 15.625vw 0 0;
  }
}

/*--------------------------------------------------------------------------------
feature
--------------------------------------------------------------------------------*/
.feature {
  margin: 60px auto;
  text-align: center;
}

.feature a {
  margin: 0 auto;
}

.feature a img {
  vertical-align: middle;
}

/*--------------------------------------------------------------------------------
table
--------------------------------------------------------------------------------*/
.table-inner {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1190px;
}

.table-heading {
  margin: 110px 0 60px;
  font-size: 40px;
  font-weight: 400;
  color: #999;
  text-align: center;
}

.table-body {
  width: 100%;
  margin: 50px 0;
  border-collapse: collapse;
  border-spacing: 0;
}

.table-body + .table-body {
  margin: 100px 0 50px;
}

thead.table-csr th:nth-child(1) {
  width: 25%;
}
thead.table-csr th:nth-child(2) {
  width: 16%;
}
thead.table-csr th:nth-child(3) {
  width: 23%;
}
thead.table-csr th:nth-child(4) {
  width: 36%;
}

.table-body thead th {
  width: 27%;
  padding: 25px 0;
  font-size: 24px;
  font-weight: 500;
  color: #666;
  text-align: center;
  letter-spacing: -1px;
}

.table-body thead th:first-child {
  width: 19%;
}

.table-body tbody tr {
  border-bottom: 1px solid #ccc;
}

.table-body tbody tr:first-child {
  border-top: 1px solid #ccc;
}

.table-body tbody th {
  width: 19%;
  font-size: 24px;
  font-weight: 500;
  color: #666;
  text-align: center;
  letter-spacing: -1px;
  white-space: nowrap;
}

.table-body tbody th:before {
  content: '';
  display: block;
  width: 100%;
  height: 55px;
  margin: 0 0 15px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: auto 100%;
}

.table-body tbody th[data-category="cars"]:before {
  background-image: url(../images/innovation/icon-cars.png);
}

.table-body tbody th[data-category="system"]:before {
  background-image: url(../images/innovation/icon-system.png);
}

.table-body tbody th[data-category="component"]:before {
  background-image: url(../images/innovation/icon-component.png);
}

.table-body tbody th[data-category="material"]:before {
  background-image: url(../images/innovation/icon-material.png);
}

.table-body tbody td {
  width: 27%;
  padding: 10px 1px;
}

.table-body tbody td a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.table-body tbody td a img {
  width: 100%;
}

.table-body tbody td a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.table-figure {
  position: relative;
  overflow: hidden;
}

.table-figure:before {
  position: absolute;
  top: 0;
  bottom: 55px;
  left: 0;
  right: 0;
  margin: auto;
  content: '';
  display: block;
  width: 40px;
  height: 40px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  z-index: 10;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.table-figure[data-type="video"]:before {
  background-image: url(../images/common/icon-play.png);
}

.table-figure[data-type="image"]:before {
  background-image: url(../images/common/icon-popup.png);
}

.table-figure img {
  display: block;
  margin: 0;
}

.table-figcaption {
  display: table;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 55px;
  font-size: 14px;
  color: #fff;
  text-align: center;
  background-color: rgba(0, 0, 0, 0.8);
}

.table-figcaption span {
  display: table-cell;
  vertical-align: middle;
}

.table-align-top th,
.table-align-top td {
  vertical-align: top;
}

@media only screen and (min-width: 768px) {
  .table-heading br {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .table-inner {
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .table-heading {
    margin: 25px 0 20px;
    margin: 7.8125vw 0 6.25vw;
    font-size: 20px;
    font-size: 6.25vw;
    line-height: 1.8;
  }
  .table-body {
    margin: 20px 0;
    margin: 6.25vw 0;
  }
  .table-body + .table-body {
    margin: 30px 0 20px;
    margin: 9.375vw 0 6.25vw;
  }
  .table-body thead th {
    padding: 7px 0;
    padding: 2.3437vw 0;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .table-body tbody th {
    font-size: 10px;
    font-size: 3.125vw;
    padding: 10px;
  }
  .table-figure:before {
    bottom: 0;
    width: 20px;
    width: 6.25vw;
    height: 20px;
    height: 6.25vw;
    min-width: 30px;
    min-height: 30px;
  }
  .table-figcaption {
    display: none;
  }
}

@media only screen and (max-width: 480px) {
  .table-body tbody th:before {
    background-size: 70% auto;
  }
}

/*--------------------------------------------------------------------------------
tableV2
--------------------------------------------------------------------------------*/
.tableV2-inner {
  margin: 0 auto;
  padding: 0 20px;
  max-width: 760px;
}

.tableV2-heading {
  padding: 0 0 100px 0;
  font-size: 40px;
  font-weight: 400;
  color: #999;
}

.tableV2-heading span {
  font-size: 24px;
}

.tableV2-body {
  display: table;
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
}

.tableV2 thead td {
  display: table-cell;
  height: 60px;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #ccc;
  text-align: center;
}

.tableV2 thead th {
  display: table-cell;
  height: 60px;
  color: #fff;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #ccc;
  background-color: #66bbff;
  text-align: center;
}

.tableV2 tbody th {
  display: table-cell;
  height: 60px;
  color: #666;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #ccc;
  text-align: center;
}

.tableV2 tbody td {
  display: table-cell;
  height: 60px;
  padding: 0 15px;
  color: #666;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid #ccc;
  text-align: right;
}

@media only screen and (max-width: 767px) {
  .tableV2-inner {
    padding: 0 15px;
    padding: 0 4.6875vw;
    max-width: 100%;
  }
  .tableV2-heading {
    padding: 0 0 50px 0;
    padding: 0 0 15.625vw 0;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .tableV2-heading span {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .tableV2 thead td {
    height: 50px;
    height: 15.625vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .tableV2 thead th {
    height: 50px;
    height: 15.625vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .tableV2 tbody th {
    height: 50px;
    height: 15.625vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .tableV2 tbody td {
    height: 50px;
    height: 15.625vw;
    padding: 0 7px;
    padding: 0 2.3437vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
}

/*--------------------------------------------------------------------------------
tableV3
--------------------------------------------------------------------------------*/
.tableV3 {
  width: 100%;
}

.tableV3-body {
  display: table;
  width: 699px;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
}

.tableV3 thead td {
  display: table-cell;
  height: 50px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid #ccc;
  text-align: center;
}

.tableV3 thead th {
  display: table-cell;
  height: 50px;
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid #ccc;
  background-color: #66bbff;
  text-align: center;
}

.tableV3 tbody th {
  display: table-cell;
  width: 140px;
  height: 60px;
  padding: 10px;
  color: #666;
  font-size: 12px;
  font-weight: 600;
  border: 1px solid #ccc;
  text-align: center;
}

.tableV3 tbody td {
  display: table-cell;
  height: 60px;
  padding: 10px;
  color: #666;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid #ccc;
  line-height: 1.8;
}

.tableV3 tbody td.right {
  text-align: right;
}

.tableV3 tbody td.center {
  text-align: center;
}

.tableV3 tbody td ul {
  margin: 0 0 0 20px;
  font-size: 12px;
}

.tableV3 tbody td ul li {
  margin: 10px 0;
  line-height: 1.6;
}

.tableV3 tbody td a {
  color: #66bfff;
}

.tableV3 tfoot th,
.tableV3 tfoot td {
  display: table-cell;
  height: 50px;
  font-size: 12px;
  font-weight: 500;
  border: 1px solid #ccc;
  padding: 10px;
}

.tableV3 tfoot th {
  color: #fff;
  background-color: #66bbff;
  text-align: center;
}

.tableV3 tfoot td {
  color: #666;
  background-color: rgba(102, 187, 255, 0.1);
}

.tableV3 + .tableV3 {
  margin-top: 2em;
}

@media only screen and (max-width: 700px) {
  .tableV3 {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

.tableV3--wide .tableV3-body {
  width: 1150px;
}

@media print {
  .tableV3--wide .tableV3-body {
    width: 100%;
  }
}

@media only screen and (min-width: 640px) {
  .tableV3--wide {
    width: 1150px;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    overflow-x: scroll;
  }
}

@media screen and (max-width: 1150px) and (min-width: 640px) {
  .tableV3--wide {
    width: 94vw;
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -webkit-user-select: none;
    user-select: none;
    cursor: move;
  }
}

/*--------------------------------------------------------------------------------
tableV4
--------------------------------------------------------------------------------*/
.tableV4 {
  width: 100%;
}

.tableV4 + b {
  margin-top: 60px;
}

.tableV4-body {
  display: table;
  width: 699px;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
}

.tableV4 thead th {
  display: table-cell;
  padding: 0 20px;
  width: 25%;
  height: 30px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background-color: #999;
}

.tableV4 thead th:first-child {
  border-left: 1px solid #f5f5f5;
}

.tableV4 thead th:last-child {
  border-right: 1px solid #f5f5f5;
}

.tableV4 tbody tr:nth-of-type(even) {
  background-color: #f5f5f5;
}

.tableV4 tbody tr:last-child {
  border-bottom: 1px solid #ccc;
}

.tableV4 tbody th {
  display: table-cell;
  padding: 0 20px;
  width: 25%;
  height: 30px;
  color: #444;
  font-size: 12px;
  font-weight: 600;
  border-left: 1px solid #f5f5f5;
  border-right: 1px solid #ccc;
}

.tableV4 tbody td {
  display: table-cell;
  padding: 0 20px;
  width: 25%;
  height: 30px;
  color: #444;
  font-size: 12px;
  font-weight: 500;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}

.tableV4 tbody td:last-child {
  border-right: 1px solid #f5f5f5;
}

@media only screen and (max-width: 700px) {
  .tableV4 {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

/*--------------------------------------------------------------------------------
tableV5
--------------------------------------------------------------------------------*/
p + .tableV5 {
  margin-top: 20px;
}

.tableV5 + b {
  margin-top: 60px;
}

.tableV5-body {
  display: table;
  width: 699px;
  border-collapse: collapse;
  border-spacing: 0;
  box-sizing: border-box;
  background: white;
}

.tableV5 thead th {
  display: table-cell;
  padding: 10px 10px;
  height: 30px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background-color: #999;
}

.tableV5 thead tr:not(:first-child) th {
  border-top: 1px solid #ccc;
}

/*.tableV5 tbody tr:nth-of-type(even) {
  background-color: #f5f5f5;
}
*/
.tableV5 tbody tr:last-child {
  border-bottom: 1px solid #ccc;
}

.tableV5 tbody tr:not(:last-child) > * {
  border-bottom: 1px solid #ccc;
}

.tableV5 tbody tr > *:first-child {
  /*  border-left: 1px solid #f5f5f5;*/
}

.tableV5 tbody tr > * {
  display: table-cell;
  padding: 10px 10px;
  height: 30px;
  color: #444;
  font-size: 12px;
  font-weight: 500;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
}

.tableV5 tbody tr > *:last-child {
  /*  border-right: 1px solid #f5f5f5;*/
}

.tableV5 tbody td img.sdgs-icon {
  width: 40px;
  margin: 0 4px 0 0;
}
.tableV5 tbody td img.sdgs-icon:nth-child(n+4) {
  margin-top: 6px;
}
.tableV5 tbody td img.sdgs-icon:nth-child(3n) {
  margin-right: 0;
}

.tableV5 tbody td > dl.sdgs-dl:nth-child(n+2) {
  margin-top: 8px;
}
.tableV5 tbody td > dl.sdgs-dl dt {
  margin-right: 10px;
  color: red;
  float: left;
}

@media only screen and (max-width: 700px) {
  .tableV5 {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

.tableV5 tbody td.right {
  text-align: right;
}

.tableV5 tbody td.center {
  text-align: center;
}

.tableV5 tbody td ul {
  margin: 0 0 0 20px;
  font-size: 12px;
}

.tableV5 tbody td ul li {
  margin: 10px 0;
  line-height: 1.6;
}

.tableV5 tbody td a {
  color: #66bfff;
}

.tableV5 tfoot tr > * {
  display: table-cell;
  padding: 10px 10px;
  height: 30px;
  color: #fff;
  font-size: 12px;
  font-weight: 600;
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  background-color: #999;
}

.tableV5 tfoot tr:not(:first-child) > * {
  border-top: 1px solid #ccc;
}

.tableV5 + .tableV5 {
  margin-top: 2em;
}

@media only screen and (max-width: 700px) {
  .tableV5 {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
  }
}

.tableV5--wide .tableV5-body {
  width: 1150px;
}

.tableV5--wideV2 .tableV5-body {
  width: 900px;
}

@media print {
  .tableV5--wide .tableV5-body {
    width: 100%;
  }
  .tableV5--wideV2 .tableV5-body {
    width: 100%;
  }
}

@media only screen and (min-width: 640px) {
  .tableV5--wide {
    width: 1150px;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
  .tableV5--wideV2 {
    width: 900px;
    position: relative;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
  }
}

@media screen and (max-width: 1150px) and (min-width: 640px) {
  .tableV5--wide {
    width: 94vw;
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -webkit-user-select: none;
    user-select: none;
    cursor: move;
    overflow-x: scroll;
  }
}

@media screen and (max-width: 900px) and (min-width: 640px) {
  .tableV5--wideV2 {
    width: 94vw;
    -ms-user-select: none;
    -moz-user-select: -moz-none;
    -webkit-user-select: none;
    user-select: none;
    cursor: move;
    overflow-x: scroll;
  }
}

.tableV5-body ol[class*="tableV5-list"],
.tableV5-body ul[class*="tableV5-list"] {
  text-align: left;
}

.tableV5-body + .tableV5-body {
  margin-top: 30px;
}

.tableV5-body th[class*="tableV5-body-subHead"] {
  color: #fff;
  font-weight: 500;
  height: 40px;
  background: rgba(153, 153, 153, 0.8);
}

.tableV5.fz-small thead tr td,
.tableV5.fz-small thead tr th,
.tableV5.fz-small tbody tr td,
.tableV5.fz-small tbody tr th {
  font-size: 0.9em !important;
}

ol[class*="tableV5-list"],
ul[class*="tableV5-list"] {
  margin: 0 0 0 20px;
  font-size: 12px;
}

ol.tableV5-listAlpha > li,
ul.tableV5-listAlpha > li {
  list-style-type: lower-alpha !important;
}

ol.tableV5-listNum > li,
ul.tableV5-listNum > li {
  list-style-type: decimal !important;
}

ul.tableV5-list-discV2 > li {
  list-style-type: none;
}

ul.tableV5-list-discV2 > li:before {
  content: "●";
  display: inline-block;
  width: 20px;
  text-align: center;
  margin-left: -20px;
}

ul.tableV5-list-inner > li {
  list-style-type: none;
}

ul.tableV5-list-inner > li:before {
  content: "－";
  font-weight: 600;
  display: inline-block;
  width: 20px;
  text-align: center;
  margin-left: -20px;
}

.tableV5-body caption:not(.tableV5-captionV2) {
  text-align: left;
  padding: 0 0 16px;
  font-weight: 600;
  font-size: 16px;
  color: #444;
}

.tableV5-body caption.tableV5-captionV2 {
  font-size: 12px;
  margin-bottom: 10px;
}

.tableV5 tbody td.tree-branch {
  position: relative;
  padding: 0;
  width: 20px;
}

.tableV5 tbody td.tree-branch:before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: white;
  position: absolute;
  top: -2px;
  left: 0;
}

.tableV5-body + .tableV5-note {
  font-size: 12px;
  margin-top: 10px;
}

.list-style-none li {
  list-style-type: none !important;
}

/*--------------------------------------------------------------------------------
fullscreen
--------------------------------------------------------------------------------*/
.fullscreen {
  position: relative;
  background-color: #ccc;
  background-size: cover;
  background-position: center center;
  height: 100vh;
  min-height: 800px;
  z-index: 30;
}

.fullscreen:last-child {
  margin: 0 0 -150px;
}

.fullscreen-inner {
  position: relative;
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1190px;
  height: 100vh;
  min-height: 800px;
}

.fullscreen-body {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  padding: 0 20px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.fullscreen-heading {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
}

.fullscreen-copy {
  margin: 20px 0;
  font-size: 40px;
  font-weight: 400;
  color: #fff;
  line-height: 1.2;
}

.fullscreen-detail {
  width: 338px;
  margin: 20px 0;
  font-size: 16px;
  color: #fff;
  line-height: 1.8;
}

.fullscreen .read-more {
  margin: 30px 0;
  text-align: left;
}

@media only screen and (min-width: 768px) {
  .fullscreen[data-category="products-cockpitModuleInterior"] {
    background-image: url(../images/products/kv-cockpitModuleInterior.png);
  }
  .fullscreen[data-category="products-electronic"] {
    background-image: url(../images/products/kv-electronic.png);
  }
  .fullscreen[data-category="products-exhaust"] {
    background-image: url(../images/products/kv-exhaust.png);
  }
  .fullscreen[data-category="products-climateControlSystems"] {
    background-image: url(../images/products/kv-climateControlSystems.png);
  }
  .fullscreen[data-category="products-heatExchange"] {
    background-image: url(../images/products/kv-heatExchange.png);
  }
  .fullscreen[data-category="products-compressor"] {
    background-image: url(../images/products/kv-compressor.png);
  }
}

@media only screen and (max-width: 767px) {
  .fullscreen {
    height: 510px;
    height: 158vw;
    min-height: 100%;
    background-color: #222;
  }
  .fullscreen + .fullscreen {
    border-top: 1px solid #444;
  }
  .fullscreen:last-child {
    margin: 0 0 -50px;
    margin: 0 0 -15.625vw;
  }
  .fullscreen-inner {
    max-width: 100%;
    height: 510px;
    height: 158vw;
    min-height: 100%;
    padding: 0;
  }
  .fullscreen-inner:before {
    content: '';
    display: block;
    position: absolute;
    top: 150px;
    top: 46.875vw;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 100%;
    height: 53%;
    background-repeat: no-repeat;
    background-size: 100%;
    z-index: 10;
  }
  .fullscreen-body {
    position: relative;
    top: 0;
    left: 0;
    height: 510px;
    height: 158vw;
    padding: 0 15px;
    padding: 0 4.6875vw;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreen-heading {
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .fullscreen-copy {
    width: 100%;
    margin: 0;
    padding: 15px 0 0;
    padding: 4.6875vw 0 0;
    font-size: 25px;
    font-size: 7.8125vw;
    line-height: 1.4;
  }
  .fullscreen-detail {
    width: 100%;
    margin: 0;
    padding: 260px 0 0;
    padding: 75vw 0 0;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.6;
  }
  .fullscreen .read-more {
    position: absolute;
    bottom: 10px;
    bottom: 6.25vw;
    left: 0;
    margin: 0;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .fullscreen[data-category="products-cockpitModuleInterior"] .fullscreen-inner:before {
    background-image: url(../images/products/kv-cockpitModuleInterior-sp.png);
  }
  .fullscreen[data-category="products-electronic"] .fullscreen-inner:before {
    background-image: url(../images/products/kv-electronic-sp.png);
  }
  .fullscreen[data-category="products-exhaust"] .fullscreen-inner:before {
    background-image: url(../images/products/kv-exhaust-sp.png);
  }
  .fullscreen[data-category="products-climateControlSystems"] .fullscreen-inner:before {
    background-image: url(../images/products/kv-climateControlSystems-sp.png);
  }
  .fullscreen[data-category="products-heatExchange"] .fullscreen-inner:before {
    background-image: url(../images/products/kv-heatExchange-sp.png);
  }
  .fullscreen[data-category="products-compressor"] .fullscreen-inner:before {
    background-image: url(../images/products/kv-compressor-sp.png);
  }
}

/*--------------------------------------------------------------------------------
fullscreenV2
--------------------------------------------------------------------------------*/
.fullscreenV2 {
  position: relative;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  height: 100vh;
}

.fullscreenV2-inner {
  position: relative;
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1190px;
  height: 100vh;
}

.fullscreenV2-heading {
  margin: 0 auto;
  font-size: 40px;
  font-weight: 400;
  color: #666;
  line-height: 1.4;
}

.fullscreenV2-copy {
  font-size: 18px;
  color: #666;
  line-height: 1.6;
}

@media only screen and (min-width: 768px) {
  .fullscreenV2.is-show {
    z-index: 26;
  }
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-background {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    background-position: center center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100vh;
    min-height: 500px;
    background-image: url(../images/products/bg-thermal.png);
    background-size: auto;
  }
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-image {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    background-position: center center;
    background-repeat: no-repeat;
    width: 100%;
    height: 100vh;
    min-height: 500px;
    background-image: url(../images/products/kv-thermal.png);
    background-size: auto;
  }
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-inner {
    min-height: 700px;
  }
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-heading {
    position: fixed;
    top: 155px;
    left: auto;
  }
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-body {
    position: fixed;
    top: 230px;
    left: auto;
    width: auto;
    text-shadow: 0 0 2px #fff;
    z-index: 25;
  }
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-copy {
    width: 344px;
  }
}

@media only screen and (min-width: 2560px) {
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-background {
    background-size: cover;
  }
}

@media only screen and (max-width: 1023px) {
  .fullscreenV2.is-show[data-category="products-thermal"] .fullscreenV2-image {
    background-size: auto 1200px;
  }
}

@media only screen and (max-width: 767px) {
  .fullscreenV2 {
    height: 425px;
    height: 133vw;
    min-height: 100%;
    max-height: 100vh;
    background-size: 100%;
    background-position: center bottom;
  }
  .fullscreenV2-inner {
    height: 425px;
    height: 133vw;
    max-width: 100%;
    min-height: 100%;
    max-height: 100vh;
    padding: 0;
  }
  .fullscreenV2-body {
    left: 0;
    bottom: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV2-heading {
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .fullscreenV2-copy {
    font-size: 14px;
    font-size: 4.375vw;
    width: 100%;
    padding: 30px 15px;
    padding: 9.375vw 4.6875vw;
    line-height: 1.4;
  }
  .fullscreenV2[data-category="products-thermal"] {
    background-image: url(../images/products/kv-thermal-sp.png);
    margin: 0 0 215px;
    margin: 0 0 67.1875vw;
  }
  .fullscreenV2[data-category="products-thermal"] .fullscreenV2-heading {
    text-align: center;
  }
  .fullscreenV2[data-category="products-thermal"] .fullscreenV2-body {
    position: absolute;
    width: 100%;
  }
  .fullscreenV2[data-category="products-thermal"] .fullscreenV2-copy {
    position: absolute;
  }
}

/*--------------------------------------------------------------------------------
fullscreenV3
--------------------------------------------------------------------------------*/
.fullscreenV3 {
  position: relative;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: auto;
}

.fullscreenV3:last-child {
  margin: 0 0 -150px;
}

.fullscreenV3-inner {
  position: relative;
  margin: 0 auto;
  padding: 0 20px;
  max-width: 1190px;
  height: 62.5vw;
  max-height: 100vh;
}

.fullscreenV3-innerV2 {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  height: auto;
}

.fullscreenV3-section {
  -webkit-box-flex: 1;
  -webkit-flex: 1;
  -ms-flex: 1;
  flex: 1;
  position: relative;
  background-color: #fff;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 62.5vw;
  max-height: 100vh;
}

.fullscreenV3-body {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  padding: 0 20px;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.fullscreenV3-heading {
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  text-align: center;
}

.fullscreenV3-headingV2 {
  font-size: 32px;
  font-weight: 400;
  color: #fff;
}

.fullscreenV3-headingV3 {
  font-size: 16px;
  font-weight: 600;
  color: #666;
  text-align: center;
}

.fullscreenV3-headingV4 {
  font-size: 32px;
  font-weight: 400;
  color: #666;
}

.fullscreenV3-copy {
  margin: 20px 0 0;
  font-size: 40px;
  font-weight: 400;
  color: #fff;
  text-align: center;
}

.fullscreenV3-copyV2 {
  margin: 20px 0 0;
  font-size: 20px;
  color: #fff;
  text-align: center;
}

.fullscreenV3-copyV3 {
  margin: 20px 0 0;
  font-size: 24px;
  color: #fff;
  text-align: center;
}

.fullscreenV3-detail {
  font-size: 16px;
  color: #fff;
  line-height: 1.6;
}

.fullscreenV3-detailV2 {
  font-size: 16px;
  color: #999;
  line-height: 1.6;
  text-align: center;
}

.fullscreenV3-figure img {
  position: absolute;
  top: 50%;
  left: 50%;
  max-width: 100%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.fullscreenV3-figureV2 {
  margin: 50px 0;
  text-align: center;
}

.fullscreenV3[data-category="innovation-monozukuri"] {
  z-index: 30;
}

.fullscreenV3-section[data-category="innovation-development"] {
  z-index: 30;
}

.fullscreenV3-section[data-category="innovation-production-engineering"] {
  z-index: 30;
}

.fullscreenV3-section[data-category="innovation-testing-research"] {
  z-index: 30;
}

.fullscreenV3[data-category="innovation-motor-sport"] {
  z-index: 30;
}

.fullscreenV3[data-category="innovation-development-cabin-solutions"] {
  background-color: #639ccf;
}
.fullscreenV3[data-category="about-us-mid-term-business-plan"] {
  padding: 50px 0;
  background-color: #108CC2;
}
.fullscreenV3[data-category="about-us-mid-term-business-plan"] .fullscreenV3-inner {
  height: 120vw;
  max-height: 2000px;
}

.fullscreenV3[data-category="about-us-mid-term-business-plan"] .list-heading,
.fullscreenV3[data-category="about-us-mid-term-business-plan"] p {
  color: #fff;
}

.fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-heading {
  color: #fff;
}

.fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up-heading {
  color: #fff;
}

.fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up p {
  color: #fff;
}

.fullscreenV3[data-category="innovation-development-energy-solutions"] {
  background-color: #f5f1ec;
}

.fullscreenV3[data-category="innovation-testing-research-figure"] {
  background-color: #639ccf;
}

.fullscreenV3[data-category="innovation-motor-sport-detail"] {
  background-color: rgba(0, 0, 0, 0.4);
}

.fullscreenV3[data-category="innovation-motor-sport-detail"] .article-heading {
  color: #fff;
  text-align: center;
}

.fullscreenV3[data-category="innovation-motor-sport-detail"] .article-bodyV3 p {
  color: #fff;
}

.fullscreenV3[data-category="innovation-motor-sport-article--01"] {
  background-color: rgba(0, 0, 0, 0.8);
}

.fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-heading {
  padding: 0 0 10px;
  border-bottom: 1px solid #ccc;
  color: #fff;
}

.fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-body p {
  color: #fff;
}

.fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-figcaption {
  color: #fff;
}

.fullscreenV3[data-category="innovation-motor-sport-article--02"] {
  background-color: #000;
}

.fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-heading {
  padding: 0 0 10px;
  border-bottom: 1px solid #ccc;
  color: #fff;
}

.fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-headingV2 {
  padding: 0;
  color: #fff;
}

.fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-body p {
  color: #fff;
}

.fullscreenV3[data-category="motor-sport-index-article"] {
  background-color: #000;
}

.fullscreenV3[data-category="motor-sport-index-article"] .article-2up-heading {
  color: #fff;
}

.fullscreenV3[data-category="motor-sport-index-article"] .article-2up-body p {
  color: #fff;
}

@media only screen and (min-width: 768px) {
  .fullscreenV3[data-category="innovation-monozukuri"] {
    background-image: url(../images/front/bg-front-03.png);
  }
  .fullscreenV3-section[data-category="innovation-development"],
  .fullscreenV3-section[data-category="innovation-production-engineering"],
  .fullscreenV3-section[data-category="innovation-testing-research"] {
    background-color: #007cde;
    background-blend-mode: multiply;
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"]:hover,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover {
    cursor: pointer;
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"] .fullscreenV3-body,
  .fullscreenV3-section[data-category="innovation-production-engineering"] .fullscreenV3-body,
  .fullscreenV3-section[data-category="innovation-testing-research"] .fullscreenV3-body {
    white-space: nowrap;
    padding: 0;
  }
  .fullscreenV3-section[data-category="innovation-development"] {
    background-image: url(../images/innovation/bg-development.png);
  }
  .fullscreenV3-section[data-category="innovation-production-engineering"] {
    background-image: url(../images/innovation/bg-productionEngineering.png);
    box-shadow: 20px 0 15px 2px rgba(0, 0, 0, 0.4) inset;
  }
  .fullscreenV3-section[data-category="innovation-testing-research"] {
    background-image: url(../images/innovation/bg-testingResearch.png);
    box-shadow: 20px 0 15px 2px rgba(0, 0, 0, 0.4) inset;
  }
  .fullscreenV3[data-category="innovation-motor-sport"] {
    background-image: url(../images/innovation/bg-motorSport.png);
  }
  .fullscreenV3[data-category="innovation-technical-review"] .fullscreenV3-body {
    position: fixed;
    display: none;
  }
  .fullscreenV3[data-category="innovation-technical-review"].is-show .fullscreenV3-body {
    display: block;
  }
  .fullscreenV3[data-category="innovation-development-detail"] .fullscreenV3-inner {
    height: 100vh;
  }
  .fullscreenV3[data-category="innovation-development-detail"] .article-inner {
    max-width: 765px;
    width: 100%;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] {
    height: 100vh;
    min-height: 850px;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up {
    padding: 0 20px;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] {
    background-image: url(../images/innovation/bg-developmentEnergySolutions.png);
    background-size: contain;
    background-position: center 30%;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .is-tablet {
    display: none;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .is-sp {
    display: none;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-inner {
    height: 100vh;
    min-height: 850px;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-bodyV2 {
    position: absolute;
    bottom: 85px;
    right: 20px;
    width: 530px;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-bodyV2 p {
    margin: 15px 0 0;
    color: #666;
    font-size: 16px;
    line-height: 1.8;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] {
    min-height: 900px;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-inner {
    min-height: 900px;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-headingV2 {
    position: absolute;
    top: 100px;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-headingV2 br {
    display: none;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-detail {
    position: absolute;
    left: 50%;
    bottom: 65px;
    width: 520px;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    letter-spacing: -1.5px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-detail"] .fullscreenV3-inner {
    height: 100vh;
    min-height: 500px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-detail"] .article-heading {
    font-size: 32px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-detail"] .article-heading br {
    display: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] {
    min-height: 950px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up:first-child {
    padding: 0 20px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-heading br {
    display: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-figcaption {
    margin: 20px 0 0;
    font-size: 12px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] {
    min-height: 1330px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up:first-child {
    padding: 0 20px;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-heading.is-mobile {
    display: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] {
    background-image: url(../images/innovation/bg-motorSport-v2.png);
    background-position: center bottom;
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] .fullscreenV3-inner {
    height: 50vh;
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] .fullscreenV3-heading {
    font-size: 40px;
    font-weight: 400;
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-development"] {
    margin: 5px 5px 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/innovation/bg-innovationDevelopment.png);
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-development"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-monozukuri"] {
    margin: 5px 0 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/innovation/bg-innovationMonozukuri.png);
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-monozukuri"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3[data-category="global-network-group-companies"] {
    background-image: url(../images/global-network/bg-groupCompanies-01.png);
    background-color: #639ccf;
    background-size: contain;
  }
  .fullscreenV3[data-category="global-network-group-companies"]:before {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    display: block;
    width: 100%;
    max-height: 100vh;
    height: 62.5vw;
    background-image: url(../images/global-network/bg-groupCompanies-02.png);
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
  }
  .fullscreenV3[data-category="global-network-group-companies"] .fullscreenV3-copy br {
    display: none;
  }
  .fullscreenV3[data-category="global-network-our-employee"] {
    background-image: url(../images/global-network/bg-ourEmployee.png);
  }
  .fullscreenV3[data-category="global-network-our-employee"] .fullscreenV3-copy br {
    display: none;
  }
  .fullscreenV3-section[data-category="recruit-about-us-index"] {
    margin: 5px 5px 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/recruit/bg-aboutUs.png);
  }
  .fullscreenV3-section[data-category="recruit-about-us-index"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="recruit-csr-index"] {
    margin: 5px 0 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/recruit/bg-csr.png);
  }
  .fullscreenV3-section[data-category="recruit-csr-index"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] {
    min-height: 850px;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up {
    padding: 0 20px;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up--left {
    vertical-align: middle;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up-figure img + img {
    margin: 5px auto 0;
  }
  .fullscreenV3[data-category="motor-sport-page"] {
    background-image: url(../images/motor-sport/bg-motorSportPage.png);
    background-position: center bottom;
  }
  .fullscreenV3[data-category="motor-sport-page"] .fullscreenV3-inner {
    height: 50vh;
  }
  .fullscreenV3[data-category="motor-sport-page"] .fullscreenV3-heading {
    font-size: 40px;
    font-weight: 400;
  }
  .fullscreenV3[data-category="motor-sport-page"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="motor-sport-innovation-motor-sport"] {
    margin: 5px 5px 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/motor-sport/bg-innovationMotorSport.png);
  }
  .fullscreenV3-section[data-category="motor-sport-innovation-motor-sport"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="motor-sport-about-us-at-a-glance"] {
    margin: 5px 0 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/motor-sport/bg-aboutUsAtAGlance.png);
  }
  .fullscreenV3-section[data-category="motor-sport-about-us-at-a-glance"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="csr-message"] {
    margin: 5px 5px 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/csr/bg-message.png);
    background-position: top center;
  }
  .fullscreenV3-section[data-category="csr-message"] .fullscreenV3-copyV3 br:first-child {
    display: none;
  }
  .fullscreenV3-section[data-category="csr-message"] .read-more {
    margin: 30px auto 0;
  }
  .fullscreenV3-section[data-category="csr-stakeholder"] {
    margin: 5px 0 0 0;
    height: 50vh;
    min-height: 450px;
    background-image: url(../images/csr/bg-stakeholder.png);
    background-position: top center;
  }
  .fullscreenV3-section[data-category="csr-stakeholder"] .read-more {
    margin: 30px auto 0;
  }
}

@media only screen and (min-width: 1145px) {
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-copy {
    font-size: 40px !important;
  }
}

@media all and (-ms-high-contrast: none) {
  .fullscreenV3-section[data-category="innovation-development"],
  .fullscreenV3-section[data-category="innovation-production-engineering"],
  .fullscreenV3-section[data-category="innovation-testing-research"] {
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-production-engineering"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-testing-research"] .fullscreenV3-section-background {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background-color: rgba(0, 124, 222, 0.85);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"]:hover,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover {
    cursor: pointer;
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover .fullscreenV3-section-background {
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop-section[data-category="innovation-development"],
  .fullscreenV3-section[data-category="innovation-development"],
  *::-ms-backdrop-section[data-category="innovation-production-engineering"],
  .fullscreenV3-section[data-category="innovation-production-engineering"],
  *::-ms-backdrop-section[data-category="innovation-testing-research"],
  .fullscreenV3-section[data-category="innovation-testing-research"] {
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  *::-ms-backdrop-section[data-category="innovation-development"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-development"] .fullscreenV3-section-background,
  *::-ms-backdrop-section[data-category="innovation-production-engineering"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-production-engineering"] .fullscreenV3-section-background,
  *::-ms-backdrop-section[data-category="innovation-testing-research"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-testing-research"] .fullscreenV3-section-background {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background-color: rgba(0, 124, 222, 0.85);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  *::-ms-backdrop-section[data-category="innovation-development"]:hover,
  .fullscreenV3-section[data-category="innovation-development"]:hover,
  *::-ms-backdrop-section[data-category="innovation-production-engineering"]:hover,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover,
  *::-ms-backdrop-section[data-category="innovation-testing-research"]:hover,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover {
    cursor: pointer;
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  *::-ms-backdrop-section[data-category="innovation-development"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-development"]:hover .fullscreenV3-section-background,
  *::-ms-backdrop-section[data-category="innovation-production-engineering"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover .fullscreenV3-section-background,
  *::-ms-backdrop-section[data-category="innovation-testing-research"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover .fullscreenV3-section-background {
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
}

@supports (-ms-ime-align: auto) {
  .fullscreenV3-section[data-category="innovation-development"],
  .fullscreenV3-section[data-category="innovation-production-engineering"],
  .fullscreenV3-section[data-category="innovation-testing-research"] {
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-production-engineering"] .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-testing-research"] .fullscreenV3-section-background {
    display: block;
    width: 100%;
    height: 100%;
    padding: 0 20px;
    background-color: rgba(0, 124, 222, 0.85);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"]:hover,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover {
    cursor: pointer;
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
  .fullscreenV3-section[data-category="innovation-development"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-production-engineering"]:hover .fullscreenV3-section-background,
  .fullscreenV3-section[data-category="innovation-testing-research"]:hover .fullscreenV3-section-background {
    background-color: rgba(255, 255, 255, 0);
    -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
    transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  }
}

@media only screen and (max-width: 1023px) {
  .fullscreenV3-section[data-category="innovation-development"] .fullscreenV3-copyV2,
  .fullscreenV3-section[data-category="innovation-production-engineering"] .fullscreenV3-copyV2,
  .fullscreenV3-section[data-category="innovation-testing-research"] .fullscreenV3-copyV2 {
    font-size: 1.8vw;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] {
    height: auto;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 50px 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article .is-pc {
    display: none;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article .is-sp {
    display: block;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-innerV2 {
    padding: 0 50px;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-heading {
    padding: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up {
    display: block;
    margin: 0;
    padding: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up--left {
    display: block;
    width: 100%;
    padding: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up--right {
    display: block;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up-figure img {
    display: block;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up-figure img + img {
    margin: 3.125vw auto 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up-heading {
    margin: 0 0 20px;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] {
    background-image: none;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .is-tablet {
    display: block;
    margin: 0 0 50px;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-inner {
    padding: 100px 0;
    height: 100%;
    max-height: 100%;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-bodyV2 {
    position: relative;
    bottom: 0;
    right: 0;
    width: 100%;
    padding: 0 50px;
  }
  .fullscreenV3[data-category^="innovation-motor-sport-article--"] {
    min-height: 100%;
  }
  .fullscreenV3[data-category^="innovation-motor-sport-article--"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    width: 100%;
    padding: 50px 20px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
}

@media only screen and (max-width: 950px) {
  .fullscreenV3-section[data-category="csr-message"] .fullscreenV3-copyV3 br:first-child {
    display: block;
  }
}

@media only screen and (min-width: 768px) {
  .fullscreenV3[data-category="recruit-index-article"] .article {
    height: 150vh;
    min-height: 1350px;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up {
    padding: 0;
    height: 50vh;
    min-height: 450px;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up--left {
    padding: 0;
    vertical-align: middle;
    text-align: center;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up--right {
    padding: 0;
    vertical-align: middle;
    text-align: center;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-body {
    display: inline-block;
    text-align: left;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-heading {
    margin: 0 0 20px;
    color: #444;
    font-size: 16px;
    font-weight: 600;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-copy {
    font-size: 3.5vw;
    font-weight: 400;
    line-height: 1.4;
    color: #999;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-detail {
    margin: 15px 0 0;
    font-size: 14px;
    line-height: 1.6;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-detailV2 {
    margin: 15px 0 0;
    font-size: 12px;
    line-height: 1.6;
    color: #ccc;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-detailV2 a {
    color: #66bfff;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-figure {
    height: 50vh;
    min-height: 450px;
    background-size: cover;
    background-position: top center;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up-logo {
    width: 165px;
  }
  .fullscreenV3[data-category="recruit-index-article"] .article-2up .read-moreV2 {
    margin: 15px 0 25px;
  }
}

@media only screen and (max-width: 767px) {
  .fullscreenV3 {
    height: auto;
  }
  .fullscreenV3:last-child {
    margin: 0 0 -50px;
    margin: 0 0 -15.625vw;
  }
  .fullscreenV3-inner {
    height: 200px;
    height: 62.5vw;
    max-width: 100%;
    padding: 0;
  }
  .fullscreenV3-innerV2 {
    display: block;
    text-align: center;
    height: auto;
  }
  .fullscreenV3-section {
    -webkit-box-flex: 0;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
    height: 200px;
    height: 62.5vw;
    margin: 10px;
  }
  .fullscreenV3-heading {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .fullscreenV3-headingV2 {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .fullscreenV3-headingV3 {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .fullscreenV3-headingV4 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-copy {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-copyV2 {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .fullscreenV3-detail {
    font-size: 10px;
    font-size: 2.3437vw;
  }
  .fullscreenV3-detailV2 {
    font-size: 10px;
    font-size: 2.3437vw;
  }
  .fullscreenV3-figureV2 {
    margin: 35px 0;
    margin: 10.9375vw 0;
  }
  .fullscreenV3[data-category="innovation-monozukuri"] {
    background-image: url(../images/front/bg-front-03-sp.png);
  }
  .fullscreenV3-section[data-category="innovation-development"] {
    background-image: url(../images/innovation/bg-development-sp.png);
  }
  .fullscreenV3-section[data-category="innovation-development"] .fullscreenV3-copyV2 {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .fullscreenV3-section[data-category="innovation-production-engineering"] {
    background-image: url(../images/innovation/bg-productionEngineering-sp.png);
  }
  .fullscreenV3-section[data-category="innovation-production-engineering"] .fullscreenV3-copyV2 {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .fullscreenV3-section[data-category="innovation-testing-research"] {
    background-image: url(../images/innovation/bg-testingResearch-sp.png);
  }
  .fullscreenV3-section[data-category="innovation-testing-research"] .fullscreenV3-copyV2 {
    font-size: 14px;
    font-size: 4.375vw;
  }
  .fullscreenV3[data-category="innovation-motor-sport"] {
    background-image: url(../images/innovation/bg-motorSport-sp.png);
  }
  .fullscreenV3[data-category="innovation-technical-review"] {
    height: auto;
  }
  .fullscreenV3[data-category="innovation-technical-review"] .fullscreenV3-inner {
    height: 100%;
  }
  .fullscreenV3[data-category="innovation-technical-review"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    margin: 50px 0;
    margin: 15.625vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-technical-review"] .fullscreenV3-figureV2 {
    padding: 0 100px;
    padding: 0 31.25vw;
  }
  .fullscreenV3[data-category="innovation-technical-review"] .fullscreenV3-figureV2 img {
    width: 100%;
  }
  .fullscreenV3[data-category="innovation-development-detail"] .fullscreenV3-inner {
    height: 100%;
    max-height: 100%;
  }
  .fullscreenV3[data-category="innovation-development-detail"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 50px 0;
    padding: 15.625vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 50px 0;
    padding: 15.625vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-innerV2 {
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-heading {
    padding: 0 0 15px;
    padding: 0 0 4.6875vw;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up-body {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up-heading {
    margin: 20px 0;
    margin: 6.25vw 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up--right {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-development-cabin-solutions"] .article-2up p {
    line-height: 1.4;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] {
    background-image: none;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .is-tablet {
    display: none;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-inner {
    height: 100%;
    max-height: 100%;
    min-height: auto;
    padding: 50px 0;
    padding: 15.625vw 0;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-bodyV2 {
    position: relative;
    bottom: auto;
    right: auto;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-bodyV2 p {
    margin: 25px 0 0;
    margin: 7.8125vw 0 0;
    color: #666;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.4;
  }
  .fullscreenV3[data-category="innovation-development-energy-solutions"] .fullscreenV3-figureV2 {
    margin: 0 -15px;
    margin: 0 -4.6875vw;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-inner {
    height: 100%;
    max-height: 100%;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-headingV2 {
    position: absolute;
    top: 50px;
    top: 15.625vw;
    font-size: 20px;
    font-size: 6.25vw;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-detail {
    padding: 20px 15px 30px;
    padding: 6.25vw 4.6875vw 9.375vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.8;
  }
  .fullscreenV3[data-category="innovation-testing-research-figure"] .fullscreenV3-figure img {
    position: relative;
    padding: 125px 0 0;
    padding: 39.0625vw 0 0;
    top: 0;
    left: 0;
    max-width: 100%;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-detail"] .fullscreenV3-inner {
    height: 100%;
  }
  .fullscreenV3[data-category="innovation-motor-sport-detail"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 100px 0;
    padding: 31.25vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 60px 0;
    padding: 18.75vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up {
    margin: 60px 0 0;
    margin: 18.75vw 0 0;
    padding: 60px 0 0;
    padding: 18.75vw 0 0;
    border-top: 1px solid #ccc;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up:first-child {
    margin: 0;
    padding: 0;
    border-top: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-body {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-heading {
    margin: 0 0 20px;
    margin: 0 0 6.25vw;
    padding: 0 0 20px;
    padding: 0 0 6.25vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-figure {
    margin: 25px 0 0;
    margin: 7.8125vw 0 0;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up-figcaption {
    margin: 10px 0 0;
    margin: 3.125vw 0 0;
    font-size: 10px;
    font-size: 2.3437vw;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--01"] .article-2up--right {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 60px 0;
    padding: 18.75vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up {
    margin: 60px 0 0;
    margin: 18.75vw 0 0;
    padding: 60px 0 0;
    padding: 18.75vw 0 0;
    border-top: 1px solid #ccc;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up:first-child {
    margin: 0;
    padding: 0;
    border-top: none;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-body {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-heading {
    margin: 0 0 20px;
    margin: 0 0 6.25vw;
    padding: 0 0 20px;
    padding: 0 0 6.25vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-headingV2 {
    margin: 0 0 20px;
    margin: 0 0 6.25vw;
    padding: 0;
    font-size: 14px;
    font-size: 4.375vw;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up-figure {
    margin: 25px 0 0;
    margin: 7.8125vw 0 0;
  }
  .fullscreenV3[data-category="innovation-motor-sport-article--02"] .article-2up--right {
    margin: 0;
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] {
    margin: 0;
    background-image: url(../images/innovation/bg-motorSport-v2.png);
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] .fullscreenV3-heading {
    font-size: 20px;
    font-size: 6.25vw;
    font-weight: 400;
  }
  .fullscreenV3[data-category="innovation-motor-sport-motor-sport"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-development"] {
    margin: 5px 0 5px;
    background-image: url(../images/innovation/bg-innovationDevelopment.png);
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-development"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-development"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-monozukuri"] {
    margin: 0;
    background-image: url(../images/innovation/bg-innovationMonozukuri.png);
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-monozukuri"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="innovation-motor-sport-innovation-monozukuri"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3[data-category="global-network-group-companies"] {
    background-image: url(../images/global-network/bg-groupCompanies-sp.png);
  }
  .fullscreenV3[data-category="global-network-group-companies"] .fullscreenV3-copy {
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .fullscreenV3[data-category="global-network-our-employee"] {
    background-image: url(../images/global-network/bg-ourEmployee-sp.png);
  }
  .fullscreenV3[data-category="global-network-our-employee"] .fullscreenV3-copy {
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .fullscreenV3-section[data-category="recruit-about-us-index"] {
    margin: 0 0 5px;
    background-image: url(../images/recruit/bg-aboutUs.png);
  }
  .fullscreenV3-section[data-category="recruit-about-us-index"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="recruit-about-us-index"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="recruit-csr-index"] {
    margin: 0;
    background-image: url(../images/recruit/bg-csr.png);
  }
  .fullscreenV3-section[data-category="recruit-csr-index"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="recruit-csr-index"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .fullscreenV3-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 25px 0;
    padding: 7.8125vw 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up {
    margin: 0;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up-body {
    margin: 0;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up-heading {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up-figure {
    margin: 25px 0;
    margin: 7.8125vw 0;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up-figure img + img {
    margin: 5px 0 0;
  }
  .fullscreenV3[data-category="motor-sport-index-article"] .article-2up p {
    line-height: 1.4;
  }
  .fullscreenV3[data-category="motor-sport-page"] {
    margin: 0;
    background-image: url(../images/motor-sport/bg-motorSportPage.png);
  }
  .fullscreenV3[data-category="motor-sport-page"] .fullscreenV3-heading {
    font-size: 20px;
    font-size: 6.25vw;
    font-weight: 400;
  }
  .fullscreenV3[data-category="motor-sport-page"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="motor-sport-innovation-motor-sport"] {
    margin: 5px 0 5px;
    background-image: url(../images/motor-sport/bg-innovationMotorSport.png);
  }
  .fullscreenV3-section[data-category="motor-sport-innovation-motor-sport"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="motor-sport-innovation-motor-sport"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="motor-sport-about-us-at-a-glance"] {
    margin: 0;
    background-image: url(../images/motor-sport/bg-aboutUsAtAGlance.png);
  }
  .fullscreenV3-section[data-category="motor-sport-about-us-at-a-glance"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="motor-sport-about-us-at-a-glance"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="csr-message"] {
    margin: 5px 0 5px;
    background-image: url(../images/csr/common/bg-message.png);
  }
  .fullscreenV3-section[data-category="csr-message"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="csr-message"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3-section[data-category="csr-stakeholder"] {
    margin: 0;
    background-image: url(../images/csr/common/bg-stakeholder.png);
  }
  .fullscreenV3-section[data-category="csr-stakeholder"] .fullscreenV3-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .fullscreenV3-section[data-category="csr-stakeholder"] .read-more {
    margin: 15px auto 0;
    margin: 4.6875vw auto 0;
  }
  .fullscreenV3 .read-more {
    margin: 25px auto 0;
    margin: 7.8125vw auto 0;
  }
}

@media only screen and (max-width: 767px) {
  [data-category="recruit-index-article"] .article-2up {
    margin: 0;
  }
  [data-category="recruit-index-article"] .article-2up-body {
    margin: 30px 0;
    margin: 9.375vw 0;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  [data-category="recruit-index-article"] .article-2up-heading {
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
    color: #444;
    font-size: 12px;
    font-size: 3.75vw;
    font-weight: 600;
  }
  [data-category="recruit-index-article"] .article-2up-copy {
    font-size: 20px;
    font-size: 6.25vw;
    font-weight: 400;
    line-height: 1.4;
    color: #999;
  }
  [data-category="recruit-index-article"] .article-2up-detail {
    margin: 7px 0 0;
    margin: 2.3437vw 0 0;
    font-size: 10px;
    font-size: 3.125vw;
    line-height: 1.6;
  }
  [data-category="recruit-index-article"] .article-2up-detailV2 {
    margin: 7px 0 0;
    margin: 2.3437vw 0 0;
    font-size: 10px;
    font-size: 3.125vw;
    line-height: 1.6;
    color: #ccc;
  }
  [data-category="recruit-index-article"] .article-2up-detailV2 a {
    color: #66bfff;
  }
  [data-category="recruit-index-article"] .article-2up-logo {
    width: 150px;
    width: 46.875vw;
  }
  [data-category="recruit-index-article"] .article-2up .read-moreV2 {
    margin: 7px 0 15px;
    margin: 2.3437vw 0 4.6875vw;
  }
}

/*--------------------------------------------------------------------------------
fixedButton
--------------------------------------------------------------------------------*/
.fixedButton {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 10;
}

.fixedButton a {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  background-image: url(../images/common/icon-circle.png);
  background-repeat: no-repeat;
  background-position: center center;
  z-index: 20;
}

.fixedButton .link + .hover-image {
  display: block;
  position: fixed;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh;
  min-height: 500px;
  background-image: url(../images/products/bg-index.png);
  background-size: auto;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  z-index: 10;
  opacity: 0;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.fixedButton .link:hover {
  opacity: 0;
}

.fixedButton .link:hover + .hover-image {
  opacity: 1;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.fixedButton .link[data-category="heat-exchange"] {
  -webkit-transform: translate(-400px, -145px);
  -ms-transform: translate(-400px, -145px);
  transform: translate(-400px, -145px);
}

.fixedButton .link[data-category="heat-exchange"] + .hover-image {
  background-image: url(../images/products/kv-index-heatExchange.png);
}

.fixedButton .link[data-category="compressor"] {
  -webkit-transform: translate(-350px, -155px);
  -ms-transform: translate(-350px, -155px);
  transform: translate(-350px, -155px);
}

.fixedButton .link[data-category="compressor"] + .hover-image {
  background-image: url(../images/products/kv-index-compressor.png);
}

.fixedButton .link[data-category="electronic"] {
  -webkit-transform: translate(-275px, -110px);
  -ms-transform: translate(-275px, -110px);
  transform: translate(-275px, -110px);
}

.fixedButton .link[data-category="electronic"] + .hover-image {
  background-image: url(../images/products/kv-index-electronic.png);
}

.fixedButton .link[data-category="climate-control-systems"] {
  -webkit-transform: translate(-225px, -150px);
  -ms-transform: translate(-225px, -150px);
  transform: translate(-225px, -150px);
}

.fixedButton .link[data-category="climate-control-systems"] + .hover-image {
  background-image: url(../images/products/kv-index-climateControlSystems.png);
}

.fixedButton .link[data-category="cockpit-module-interior"] {
  -webkit-transform: translate(-135px, -50px);
  -ms-transform: translate(-135px, -50px);
  transform: translate(-135px, -50px);
}

.fixedButton .link[data-category="cockpit-module-interior"] + .hover-image {
  background-image: url(../images/products/kv-index-cockpitModuleInterior.png);
}

.fixedButton .link[data-category="exhaust"] {
  -webkit-transform: translate(275px, 230px);
  -ms-transform: translate(275px, 230px);
  transform: translate(275px, 230px);
}

.fixedButton .link[data-category="exhaust"] + .hover-image {
  background-image: url(../images/products/kv-index-exhaust.png);
}

@media only screen and (max-width: 1023px) {
  .fixedButton .link + .hover-image {
    background-size: auto 1200px;
  }
  .fixedButton .link[data-category="heat-exchange"] {
    -webkit-transform: translate(-300px, -105px);
    -ms-transform: translate(-300px, -105px);
    transform: translate(-300px, -105px);
  }
  .fixedButton .link[data-category="compressor"] {
    -webkit-transform: translate(-260px, -110px);
    -ms-transform: translate(-260px, -110px);
    transform: translate(-260px, -110px);
  }
  .fixedButton .link[data-category="electronic"] {
    -webkit-transform: translate(-205px, -80px);
    -ms-transform: translate(-205px, -80px);
    transform: translate(-205px, -80px);
  }
  .fixedButton .link[data-category="climate-control-systems"] {
    -webkit-transform: translate(-165px, -115px);
    -ms-transform: translate(-165px, -115px);
    transform: translate(-165px, -115px);
  }
  .fixedButton .link[data-category="cockpit-module-interior"] {
    -webkit-transform: translate(-100px, -35px);
    -ms-transform: translate(-100px, -35px);
    transform: translate(-100px, -35px);
  }
  .fixedButton .link[data-category="exhaust"] {
    -webkit-transform: translate(205px, 170px);
    -ms-transform: translate(205px, 170px);
    transform: translate(205px, 170px);
  }
}

.fixedButtonV2 {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  z-index: 10;
}

.fixedButtonV2 a {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  background-image: url(../images/common/icon-circle.png);
  background-repeat: no-repeat;
  background-position: center center;
}

.fixedButtonV2 .link + .hover-image {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  background-position: center center;
  background-repeat: no-repeat;
  width: 100%;
  height: 100vh;
  min-height: 500px;
  background-image: url(../images/products/bg-index.png);
  background-size: auto;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  z-index: 10;
  opacity: 0;
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.fixedButtonV2 .link:hover {
  opacity: 0;
}

.fixedButtonV2 .link:hover + .hover-image {
  opacity: 1;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.fixedButtonV2 .link[data-category="heat-exchange"] {
  -webkit-transform: translate(-65px, -40px);
  -ms-transform: translate(-65px, -40px);
  transform: translate(-65px, -40px);
}

.fixedButtonV2 .link[data-category="heat-exchange"] + .hover-image {
  background-image: url(../images/products/kv-thermal-heatExchange.png);
}

.fixedButtonV2 .link[data-category="compressor"] {
  -webkit-transform: translate(25px, -45px);
  -ms-transform: translate(25px, -45px);
  transform: translate(25px, -45px);
}

.fixedButtonV2 .link[data-category="compressor"] + .hover-image {
  background-image: url(../images/products/kv-thermal-compressor.png);
}

.fixedButtonV2 .link[data-category="climate-control-systems"] {
  -webkit-transform: translate(200px, -40px);
  -ms-transform: translate(200px, -40px);
  transform: translate(200px, -40px);
}

.fixedButtonV2 .link[data-category="climate-control-systems"] + .hover-image {
  background-image: url(../images/products/kv-thermal-climateControlSystems.png);
}

@media only screen and (max-width: 1023px) {
  .fixedButtonV2 .link + .hover-image {
    background-size: auto 1200px;
  }
  .fixedButtonV2 .link[data-category="heat-exchange"] {
    -webkit-transform: translate(-50px, -30px);
    -ms-transform: translate(-50px, -30px);
    transform: translate(-50px, -30px);
  }
  .fixedButtonV2 .link[data-category="compressor"] {
    -webkit-transform: translate(20px, -40px);
    -ms-transform: translate(20px, -40px);
    transform: translate(20px, -40px);
  }
  .fixedButtonV2 .link[data-category="climate-control-systems"] {
    -webkit-transform: translate(150px, -30px);
    -ms-transform: translate(150px, -30px);
    transform: translate(150px, -30px);
  }
}

.js-fixedButton-body {
  visibility: hidden;
}

.js-fixedButton-body.is-show {
  visibility: visible;
  z-index: 20;
}

.js-fixedButton-item {
  width: 0;
  height: 0;
  opacity: 0;
  margin: 20px;
  background-size: 0;
  -webkit-transition: all 500ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 500ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.js-fixedButton-item.is-show {
  width: 40px;
  height: 40px;
  opacity: 1;
  background-size: 100%;
  margin: 0;
  -webkit-transition: all 500ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 500ms cubic-bezier(0.75, 0.02, 0.5, 1);
  z-index: 30;
}

@media only screen and (max-width: 1023px) {
  .js-fixedButton-item {
    margin: 15px;
  }
  .js-fixedButton-item.is-show {
    width: 30px;
    height: 30px;
  }
}

@media only screen and (max-width: 768px) {
  .fixedButton,
  .fixedButtonV2 {
    display: none;
  }
}

/*--------------------------------------------------------------------------------
lightbox
--------------------------------------------------------------------------------*/
.lightbox-mask {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 100vh;
  background-color: rgba(255, 255, 255, 0.85);
  z-index: 1000;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.lightbox-inner {
  visibility: hidden;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  height: 100vh;
  z-index: 1010;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.lightbox-close {
  position: fixed;
  display: block;
  width: 60px;
  height: 60px;
  top: 40px;
  right: 40px;
  z-index: 1030;
}

.lightbox-close:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background-size: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url(../images/common/icon-close.png);
}

.lightbox-content {
  z-index: 1020;
}

@media only screen and (max-width: 767px) {
  .lightbox-close {
    width: 20px;
    width: 6.25vw;
    height: 20px;
    height: 6.25vw;
    top: 15px;
    top: 4.6875vw;
    right: 15px;
    right: 4.6875vw;
  }
}

.android-4-2 .lightbox-mask,
.android-4-3 .lightbox-mask,
.android-4-4 .lightbox-mask {
  background-color: #fff;
  -webkit-transition: none;
  transition: none;
}

.android-4-2 .lightbox-inner,
.android-4-3 .lightbox-inner,
.android-4-4 .lightbox-inner {
  background-color: #fff;
  -webkit-transition: none;
  transition: none;
}

.js-lightbox-mask.is-show {
  visibility: visible;
  opacity: 1;
}

.js-lightbox-inner.is-show {
  visibility: visible;
  opacity: 1;
}

/*
video::-internal-media-controls-download-button {
display: none;
}

video::-webkit-media-controls-enclosure {
overflow: hidden;
}

video::-webkit-media-controls-panel {
width: calc(100% + 30px);
}
*/
/*--------------------------------------------------------------------------------
form
--------------------------------------------------------------------------------*/
.form {
  color: #666;
}

.form-section {
  padding: 60px 0;
  border-top: 1px solid #ccc;
}

.form-section:first-child {
  border-top: none;
}

.form-section:last-child {
  padding: 60px 0 0;
}

.form-heading {
  font-size: 24px;
  padding: 0 0 30px;
}

.form-detail {
  font-size: 16px;
}

.form-error {
  margin: 40px 0 0;
}

.form-error p {
  font-size: 16px;
  color: #ff0000;
  line-height: 2;
}

.form-body dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
}

.form-body dt {
  margin: 60px 0 0;
  width: 30%;
  font-size: 16px;
}

.form-body dt span {
  display: block;
  font-size: 12px;
}

.form-body dd {
  margin: 60px 0 0;
  width: 70%;
}

.form-body dd label {
  display: inline-block;
  width: 50%;
  margin: 0 0 35px;
  position: relative;
}

.form-body dd input[type="radio"] {
  display: none;
}

.form-body dd input[type="radio"] + span:before {
  content: '';
  border: 2px solid #ccc;
  border-radius: 50%;
  width: 24px;
  height: 24px;
  display: inline-block;
  position: relative;
  top: 6px;
  margin: 0 6px 0 0;
}

.form-body dd input[type="radio"]:checked + span:after {
  position: absolute;
  content: '';
  display: block;
  background-color: #66bfff;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  top: 10px;
  left: 4px;
}

.form-body dd label.checkbox {
  display: block;
  width: 100%;
}

.form-body dd label.checkbox:before {
  content: '';
  border: 2px solid #ccc;
  border-radius: 3px;
  width: 24px;
  height: 24px;
  display: inline-block;
  position: relative;
  top: 6px;
  margin: 0 6px 0 0;
}

.form-body dd label.checkbox input[type="checkbox"] {
  display: none;
}

.form-body dd label.checkbox input[type="checkbox"] + span:before {
  position: absolute;
  top: 18px;
  left: 7px;
  content: '';
  display: block;
  width: 15px;
  height: 2px;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: rotate(-60deg);
  -ms-transform: rotate(-60deg);
  transform: rotate(-60deg);
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-body dd label.checkbox input[type="checkbox"] + span:after {
  position: absolute;
  top: 20px;
  left: 4px;
  content: '';
  display: block;
  width: 10px;
  height: 2px;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: rotate(60deg);
  -ms-transform: rotate(60deg);
  transform: rotate(60deg);
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-body dd label.checkbox input[type="checkbox"]:checked + span:before {
  background-color: #66bfff;
  opacity: 1;
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-body dd label.checkbox input[type="checkbox"]:checked + span:after {
  background-color: #66bfff;
  opacity: 1;
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-body dd input[type="text"],
.form-body dd input[type="email"],
.form-body dd input[type="tel"] {
  width: 100%;
  border-radius: 0;
  border: 1px solid #ccc;
  padding: 7px 5px;
  line-height: 1;
  font-size: 12px;
  color: #666;
  background-color: #fff;
}

.form-body dd input[type="text"]:-webkit-autofill,
.form-body dd input[type="email"]:-webkit-autofill,
.form-body dd input[type="tel"]:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 30px white inset;
}

.form-body dd textarea {
  width: 100%;
  height: 275px;
  border-radius: 0;
  border: 1px solid #ccc;
  padding: 5px 5px;
  line-height: 1;
  font-size: 12px;
  color: #666;
  background-color: #fff;
}

.form-body dd[data-validation="error"] input[type="radio"] {
  display: none;
}

.form-body dd[data-validation="error"] input[type="radio"] + span:before {
  content: '';
  border: 2px solid #ffbaba;
}

.form-body dd[data-validation="error"] input[type="text"],
.form-body dd[data-validation="error"] input[type="email"],
.form-body dd[data-validation="error"] input[type="tel"] {
  border: 1px solid #ffbaba;
  background-color: #ffbaba;
}

.form-body dd[data-validation="error"] textarea {
  border: 1px solid #ffbaba;
  background-color: #ffbaba;
}

.form-checkbox {
  text-align: center;
}

.form-checkbox label {
  position: relative;
}

.form-checkbox label:hover {
  cursor: pointer;
}

.form-checkbox label:before {
  position: relative;
  top: 5px;
  left: -10px;
  content: '';
  display: inline-block;
  border: 2px solid #ccc;
  border-radius: 3px;
  width: 24px;
  height: 24px;
}

.form-checkbox label input[type="checkbox"] {
  display: none;
}

.form-checkbox label input[type="checkbox"] + span:before {
  position: absolute;
  top: 8px;
  left: -3px;
  content: '';
  display: block;
  width: 15px;
  height: 2px;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: rotate(-60deg);
  -ms-transform: rotate(-60deg);
  transform: rotate(-60deg);
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-checkbox label input[type="checkbox"] + span:after {
  position: absolute;
  top: 10px;
  left: -6px;
  content: '';
  display: block;
  width: 10px;
  height: 2px;
  background-color: #fff;
  opacity: 0;
  -webkit-transform: rotate(60deg);
  -ms-transform: rotate(60deg);
  transform: rotate(60deg);
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-checkbox label input[type="checkbox"]:checked + span:before {
  background-color: #66bfff;
  opacity: 1;
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-checkbox label input[type="checkbox"]:checked + span:after {
  background-color: #66bfff;
  opacity: 1;
  -webkit-transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 200ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-checkbox a {
  color: #666;
  text-decoration: underline;
}

.form-checkbox a:hover {
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.form-checkbox[data-validation="error"] label:before {
  border: 2px solid #ffbaba;
}

.form-button {
  margin: 80px 0 0;
  text-align: center;
}

.form-button input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #66bfff;
  border: 1px solid #66bfff;
  background-color: #fff;
  border-radius: 0;
  width: 130px;
  padding: 10px 0;
  text-align: center;
  font-size: 12px;
}

.form-button input:hover {
  cursor: pointer;
  background-color: #66bfff;
  color: #fff;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

@media only screen and (max-width: 767px) {
  .form-section {
    padding: 30px 0;
    padding: 9.375vw 0;
  }
  .form-section:last-child {
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
  }
  .form-heading {
    font-size: 12px;
    font-size: 3.75vw;
    padding: 0 0 15px;
    padding: 0 0 4.6875vw;
  }
  .form-detail {
    font-size: 10px !important;
    font-size: 3.125vw !important;
  }
  .form-error {
    margin: 6.25vw 0 0;
  }
  .form-error p {
    font-size: 12px;
    font-size: 3.75vw;
  }
  .form-body dt {
    margin: 30px 0 0;
    margin: 9.375vw 0 0;
    width: 38%;
    font-size: 10px;
    font-size: 3.125vw;
  }
  .form-body dt span {
    font-size: 10px;
    font-size: 2.3437vw;
  }
  .form-body dd {
    margin: 30px 0 0;
    margin: 9.375vw 0 0;
    width: 62%;
  }
  .form-body dd label {
    display: block;
    width: 100%;
    margin: 0 0 15px;
    margin: 0 0 4.6875vw;
    font-size: 10px;
    font-size: 3.125vw;
    line-height: 1.6;
  }
  .form-body dd input[type="radio"] {
    display: none;
  }
  .form-body dd input[type="text"],
  .form-body dd input[type="email"],
  .form-body dd input[type="tel"] {
    font-size: 16px;
  }
  .form-body dd textarea {
    height: 100px;
    height: 31.25vw;
    font-size: 16px;
  }
  .form-body dd[data-validation="error"] input[type="radio"] {
    display: none;
  }
  .form-checkbox label {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .form-checkbox label input[type="checkbox"] + span:before {
    top: 6px;
  }
  .form-checkbox label input[type="checkbox"] + span:after {
    top: 8px;
  }
  .form-button {
    margin: 50px 0 0;
    margin: 15.625vw 0 0;
  }
}

#yjserp {
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: 0 20px;
}

/*--------------------------------------------------------------------------------
csrlink
--------------------------------------------------------------------------------*/
.csrlink {
  max-width: 1150px;
  margin: 100px auto 0;
  padding: 115px 0 0;
  border-top: 1px solid #ccc;
}

.csrlink-items {
  margin: 0 auto;
  width: 1040px;
  font-size: 0;
}

.csrlink-item {
  display: inline-block;
  width: 33.333%;
  text-align: center;
  vertical-align: top;
}

.csrlink-item a {
  margin-bottom: 2em;
}

.csrlink-item[data-id="01"] a:before {
  background-image: url(../images/csr/csrlink-01.png);
}

.csrlink-item[data-id="02"] a:before {
  background-image: url(../images/csr/csrlink-02.png);
}

.csrlink-item[data-id="03"] a:before {
  background-image: url(../images/csr/csrlink-03.png);
}

.csrlink-item[data-id="04"] a:before {
  background-image: url(../images/csr/csrlink-04.png);
}

.csrlink-item[data-id="05"] a:before {
  background-image: url(../images/csr/csrlink-05.png);
}

.csrlink-item[data-id="1"] a:before {
  background-image: url(../images/csr/common/csrlink-01.png);
}

.csrlink-item[data-id="2"] a:before {
  background-image: url(../images/csr/common/csrlink-02.png);
}

.csrlink-item[data-id="3"] a:before {
  background-image: url(../images/csr/common/csrlink-03.png);
}

.csrlink-item[data-id="4"] a:before {
  background-image: url(../images/csr/common/csrlink-04.png);
}

.csrlink-item[data-id="5"] a:before {
  background-image: url(../images/csr/common/csrlink-05.png);
}

.csrlink-item[data-id="6"] a:before {
  background-image: url(../images/csr/common/csrlink-06.png);
}

.csrlink-item a {
  display: block;
  color: #666;
  font-size: 14px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.csrlink-item a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.csrlink-item a:before {
  content: '';
  display: block;
  width: 100%;
  height: 73px;
  margin: 0 0 20px;
  background-repeat: no-repeat;
  background-position: center center;
}

.csrlink-items + .csrlink-items {
  margin-top: 40px;
}

@media only screen and (max-width: 1200px) {
  .csrlink-items + .csrlink-items {
    margin-top: 0;
  }
}

@media only screen and (max-width: 1200px) {
  .csrlink {
    margin: 100px 20px 0;
  }
  .csrlink-item {
    width: 33.333%;
  }
}

@media only screen and (max-width: 1023px) {
  .csrlink {
    border-top: none;
    margin: 25px 20px 0;
    margin: 7.8125vw 20px 0;
    padding: 0;
  }
  .csrlink-items {
    width: 100%;
  }
  .csrlink-item {
    display: block;
    width: 100% !important;
  }
  .csrlink-item a {
    padding: 25px 0;
    padding: 7.8125vw 0;
    margin-bottom: 0;
  }
}

.csr-notes {
  margin: 100px 0 0;
  color: #666;
  text-align: center;
  font-size: 24px;
  line-height: 1;
}

.csr-notes br {
  display: none;
}

@media only screen and (max-width: 767px) {
  .csr-notes {
    font-size: 15px;
    font-size: 4.6875vw;
    line-height: 1.6;
  }
  .csr-notes br {
    display: block;
  }
}

/*--------------------------------------------------------------------------------
tab
--------------------------------------------------------------------------------*/
.tab {
  padding: 0 10px;
}

.tab-pc {
  position: relative;
  top: 0;
  left: 50%;
  width: 100%;
  max-width: 980px;
  padding: 0 0 28px;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  font-size: 0;
  text-align: center;
}

.tab-pc li {
  display: inline-block;
  padding: 2px;
}

.tab-pc li a {
  display: block;
  padding: 12px 20px;
  font-size: 12px;
  border: 1px solid #fff;
  color: #fff;
  text-align: center;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  white-space: nowrap;
  background-color: rgba(0, 0, 0, 0.2);
}
[data-category="csr-sustainability"] .tab-pc li a {
  width: 190px;
}

.tab-pc li a:hover {
  color: #fff;
  background-color: rgba(102, 191, 255, 0.5);
  text-decoration: none;
  -webkit-transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: all 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.tab-pc li.is-active a {
  color: #fff;
  background-color: rgba(102, 191, 255, 0.5);
}

.tab-pc li.is-active a:hover {
  cursor: default;
}

.tab-mobile {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  position: relative;
  top: 0;
  width: 100%;
  padding: 7px;
  padding: 2.3437vw;
  margin: 0 0 50px;
  border: 1px solid #fff;
  border-radius: 0;
  background-image: url(../images/common/bg-selectbox.png);
  background-color: rgba(102, 191, 255, 0.5);
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center right;
  color: #fff;
  font-size: 10px;
  font-size: 3.125vw;
}

.tab-mobile::-ms-expand {
  display: none;
}

.tab-mobile:focus::-ms-value {
  color: #66bfff;
  background-color: rgba(255, 255, 255, 0);
}

@media only screen and (min-width: 769px) {
  .tab-mobile {
    display: none;
  }
}

@media only screen and (max-width: 768px) and (min-width: 768px) {
  .tab-pc {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .tab-pc {
    display: none;
  }
}

@media print {
  .tab-mobile {
    display: none;
  }
}

/* ===============================================================================
  CSRトップ　-ニュース一覧-
=============================================================================== */
/*--------------------------------------------------------------------------------
front -news-
--------------------------------------------------------------------------------*/
.front.news {
  padding: 100px 0 50px;
  background: white;
  background: -webkit-gradient(left top, left bottom, color-stop(0%, white), color-stop(100%, #f8f8f8));
  background: -webkit-linear-gradient(top, white 0%, #f8f8f8 100%);
  background: linear-gradient(to bottom, white 0%, #f8f8f8 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffff', endColorstr='#f8f8f8', GradientType=0);
}

@media only screen and (max-width: 1159px) {
  .front.news {
    padding: 9.375vw 0 6.25vw;
  }
}

.front.news .cardV4-headingV2 {
  width: 1140px;
  margin: auto;
  font-family: Arial;
}

@media only screen and (max-width: 1159px) {
  .front.news .cardV4-headingV2 {
    width: 100%;
    padding-left: 15px;
    text-align: left;
  }
}

@media only screen and (max-width: 767px) {
  .front.news .cardV4-headingV2 {
    padding: 0 0 0 7.8125vw;
  }
  .front.news .cardV4-headingV2 span {
    font-size: 20px;
    font-size: 6.25vw;
  }
  .front.news .cardV4-headingV2 .is-pc {
    display: none;
  }
}

.front.news .read-moreV2 {
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .front.news .read-moreV2 {
    margin-top: 6.25vw;
  }
}

/*--------------------------------------------------------------------------------
grid -tile layout-
--------------------------------------------------------------------------------*/
.grid {
  width: 1156px;
  margin: auto;
  overflow: hidden;
}

@media only screen and (max-width: 1155px) {
  .grid {
    width: 100%;
  }
}

.grid-list {
  width: 100%;
}

.grid-list:after {
  content: "";
  display: table;
  clear: both;
}

.grid-item {
  float: left;
  overflow: hidden;
  box-sizing: border-box;
  width: 25%;
  padding: 0 8px;
  margin-bottom: 30px;
}

@media only screen and (max-width: 1155px) {
  .grid-item {
    width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .grid-item {
    width: 100%;
    padding: 0 4.6875vw;
    margin-bottom: 6.25vw;
  }
}

.grid-box a {
  text-decoration: none !important;
  color: #333;
}

.grid-box img {
  max-width: 100%;
  text-align: center;
}

@media only screen and (max-width: 1155px) {
  .grid-box img {
    width: 100%;
  }
}

.grid-image {
  text-align: center;
}

.grid-image img {
  vertical-align: bottom;
}

@media only screen and (max-width: 1155px) {
  .grid-image.is-pc {
    display: none;
  }
}

.grid-text {
  margin: 0 5px 0;
  padding: 10px 3px 20px;
  border-bottom: solid 2px #cccccc;
  font-size: 14.5px;
  line-height: 1.64;
}

.grid-text:lang(en) {
  word-wrap: break-word;
}

@media only screen and (max-width: 767px) {
  .grid-text {
    font-size: 12px;
    font-size: 3.75vw;
    margin: 2.1875vw 3.125vw 0;
    padding: 3.125vw 0 4.6875vw;
    border-bottom: solid 0.3125vw #cccccc;
    letter-spacing: -0.07em;
  }
}

.grid-head {
  margin-bottom: 5px;
  vertical-align: middle;
}

@media only screen and (max-width: 767px) {
  .grid-head {
    margin-bottom: 1.5625vw;
  }
}

.grid-date {
  font-family: Arial;
}

@media only screen and (max-width: 767px) {
  .grid-date {
    letter-spacing: normal;
  }
}

.grid-icon {
  margin: 0 0 0 .8em;
  font-size: 12px;
  color: #66bfff;
}

@media only screen and (max-width: 767px) {
  .grid-icon {
    font-size: 10px;
    font-size: 3.125vw;
  }
}

@media only screen and (max-width: 767px) {
  .gridV2 .grid-image {
    display: none;
  }
  .gridV2 .grid-item {
    margin-bottom: 0;
  }
}

/* ===============================================================================
  CSRトップ　-トップコミットメント-
=============================================================================== */
/*--------------------------------------------------------------------------------
article-2upV2
--------------------------------------------------------------------------------*/
.article-2upV2 {
  position: relative;
  display: table;
  width: 1110px;
  margin: 0 auto 100px;
  text-decoration: none !important;
  color: #333;
}

[data-page-id="csr-value"] .article-2upV2 {
  margin: 120px auto 0;
}


@media only screen and (max-width: 1129px) {
  .article-2upV2 {
    width: 100%;
    margin-bottom: 0;
  }
}

@media only screen and (max-width: 767px) {
  .article-2upV2 .is-pc {
    display: none;
  }

  [data-page-id="csr-value"] .article-2upV2 {
    margin: 70px auto 0;
  }
  [data-page-id="csr-value"] .article-2upV2--right {
    padding-left: 0 !important;
  }
}

.article-2upV2--left,
.article-2upV2--right {
  display: table-cell;
  vertical-align: middle;
  padding: 0 3px;
}

@media only screen and (max-width: 1129px) {
  .article-2upV2--left,
  .article-2upV2--right {
    width: 50%;
  }
}

.article-2upV2--right {
  -webkit-transition: padding .3s;
  transition: padding .3s;
}

@media only screen and (max-width: 1129px) {
  .article-2upV2--right {
    padding-left: 3.125vw;
  }
}

.article-2upV2-heading,
.article-2upV2-copy {
  color: #666;
  text-align: left;
}
.article-2upV2-copy.value {
  color: #666;
  text-align: center;
}
.article-link.value{
  text-align: center;
}
.article-2upV2-heading {
  font-size: 16px;
  margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
  .article-2upV2-heading {
    font-size: 12px;
    font-size: 3.75vw;
    margin-bottom: 0;
  }


  .article-2upV2-copy.article-2upV2-copy_plus {
    font-size: 3.75vw;
  }
}

.article-2upV2-copy {
  font-size: 24px;
  line-height: 1.5;
}

.article-2upV2-link {
  margin-top: 30px;
}

.article-2upV2-link a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article-2upV2-link.article-2upV2-link_plus a:before {
  display: none;
}

.article-2upV2.article-2upV2_plus > a {
  position: relative;
  display: table;
  width: 1110px;
  margin: 0 auto 100px;
  text-decoration: none;
}
@media only screen and (max-width: 1129px){
  .article-2upV2.article-2upV2_plus > a {
    width: 100%;
    margin-bottom: 0;
  }
}

.article-2upV2.article-2upV2_plus > a .article-link span {
  position: relative;
  display: inline-block;
  margin: 20px 0;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article-2upV2.article-2upV2_plus > a .article-link span:hover {
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}


.article-link.article-link_plus span:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(/assets/images/common/icon-more-blue.png);
  background-size: 100% 100%;
}



.article-2upV2-link a:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(/assets/images/common/icon-more-blue.png);
  background-size: 100% 100%;
}

.article-2upV2-link a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

@media only screen and (max-width: 767px) {
  .article-2upV2-link {
    margin-top: 0;
  }
  .article-2upV2-link a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .article-2upV2-link a:before {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  .article-2upV2-figure img {
    width: 100%;
  }
}


/*--------------------------------------------------------------------------------
cardV4-itemV4, cardV4-itemV5
--------------------------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
  .cardV4-itemV4 .is-pc,
  .cardV4-itemV5 .is-pc,
  .cardV4-itemV6 .is-pc {
    display: none;
  }
  .cardV4-itemV4 .cardV4-item-copy,
  .cardV4-itemV5 .cardV4-item-copy,
  .cardV4-itemV6 .cardV4-item-copy {
    margin-top: 0;
    font-size: 12px;
    font-size: 3.75vw;
  }
}

/*--------------------------------------------------------------------------------
cardV4-itemV4
--------------------------------------------------------------------------------*/
.cardV4-itemV4 {
  width: 50%;
}

.cardV4-itemV4 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV4 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV4 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV4 a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

/*--------------------------------------------------------------------------------
cardV4-itemV5
--------------------------------------------------------------------------------*/
.cardV4-itemV5 {
  width: 100%;
}

.cardV4-itemV5 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.cardV4-itemV5 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV5 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV5 a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV5 a + a {
  margin: 5px 3px 3px;
}

/*--------------------------------------------------------------------------------
cardV4-itemV6
--------------------------------------------------------------------------------*/
.cardV4-itemV6 {
  width: 33.333%;
}

.cardV4-itemV6 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV6 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV6 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV6 a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

/* ===============================================================================
  CSR　社会/地域への取り組み
=============================================================================== */
/*--------------------------------------------------------------------------------
articleV5
--------------------------------------------------------------------------------*/
.articleV5 {
  padding: 40px 0 0;
}

.articleV5-inner {
  position: relative;
  max-width: 1190px;
  margin: 0 auto;
  padding: 0 20px;
}

@media only screen and (max-width: 767px) {
  .articleV5-inner {
    max-width: 100%;
    padding: 0 2.34375vw;
  }
}

.articleV5-headingV3 {
  margin: 30px 0 30px;
  font-size: 40px;
  font-weight: 500;
  color: #666;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .articleV5-headingV3 {
    text-align: center;
    font-size: 25px;
    font-size: 7.8125vw;
    margin: 14.0625vw 0;
  }
}

.articleV5-section {
  display: table;
  table-layout: fixed;
  padding: 70px 0;
  width: 100%;
}

.articleV5-figure {
  display: table-cell;
  vertical-align: top;
  width: 50%;
}

.articleV5-figure img {
  display: block;
}

.articleV5-detail {
  display: table-cell;
  vertical-align: top;
  width: 50%;
  padding: 0 20px;
}

.articleV5-detail p {
  font-size: 16px;
  color: #666;
  line-height: 1.8;
}

.articleV5-detailV2 {
  display: block;
  width: 685px;
  margin: 0 auto;
}

.articleV5-detailV2 p {
  font-size: 18px;
  color: #666;
  line-height: 1.6;
}

.articleV5-category {
  margin: 0 0 16px;
  padding: 0 0 12px;
  font-size: 32px;
  font-weight: 400;
  color: #999;
  border-bottom: 1px solid #ccc;
}

.articleV5-category span {
  display: block;
  margin: 0 0 5px;
  font-size: 14px;
  font-weight: 500;
}

.articleV5 .read-moreV2 a {
  line-height: 1.4;
}

.articleV5[data-category="products-subcategory"] {
  position: relative;
  padding: 0;
  background-color: #fff;
  z-index: 30;
}
.articleV5-link {
  text-align: center;
}
.articleV5-link p {
  height: auto;
}
.articleV5-link p a {
  font-size: 32px;
}

@media only screen and (max-width: 767px) {
  .articleV5 {
    padding: 30px 0 0;
    padding: 9.375vw 0 0;
  }
  .articleV5-inner {
    max-width: 100%;
    padding: 0 15px;
    padding: 0 4.6875vw;
  }
  .articleV5-body:first-child .articleV5-section {
    padding: 0;
    padding-top: 14.0625vw;
  }
  .articleV5-headingV3 {
    font-size: 25px;
    font-size: 7.8125vw;
  }
  .articleV5-section {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: -webkit-box;
    display: flex;
    -webkit-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    flex-direction: column-reverse;
    padding: 50px 0;
    padding: 15.625vw 0;
  }
  .articleV5-section + .articleV5-section {
    border-top: 1px solid #ccc;
  }
  .articleV5-figure {
    display: block;
    width: 100%;
  }
  .articleV5-detail {
    display: block;
    width: 100%;
    padding: 0;
  }
  .articleV5-detail p {
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.6;
  }
  .articleV5-detailV2 {
    display: block;
    width: 100%;
    margin: 0 0 50px;
    margin: 0 0 15.625vw;
  }
  .articleV5-detailV2 p {
    font-size: 12px;
    font-size: 3.75vw;
    color: #666;
    line-height: 1.6;
  }
  .articleV5-category {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
    padding: 0 0 15px;
    padding: 0 0 4.6875vw;
    font-size: 20px;
    font-size: 6.25vw;
  }
  .articleV5-category span {
    margin: 0 0 7px;
    margin: 0 0 2.3437vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .articleV5[data-category="products-subcategory"] {
    padding: 15px 0 0;
    padding: 4.6875vw 0 0;
  }
  .articleV5-link p a {
    font-size: 5vw;
  }
}

/*--------------------------------------------------------------------------------
cardV6 -accordion-
--------------------------------------------------------------------------------*/
.cardV6 a:not([class*="-hook"]) {
  display: block;
}

.cardV6 a:not([class*="-hook"]) img {
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV6 a:not([class*="-hook"]):hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV6-item--accordion figure img {
  -webkit-transition: all 400ms;
  transition: all 400ms;
}

.cardV6-item--accordion figure {
  background: #333;
}

.cardV6-item--accordion:hover figure img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  opacity: .4;
}

.cardV6-item {
  margin: 0 0 5px;
  position: relative;
  overflow: hidden;
}

.cardV6-item-figure img {
  vertical-align: bottom;
}

.cardV6-item-list-around {
  display: flex;
  display: -ms-flexbox;
  justify-content: space-around;
  flex-wrap: wrap;
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-figure {
    position: relative;
  }
}

.cardV6-item-copy {
  width: 90%;
  text-align: center;
  color: white;
  font-size: 32px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 10;
}

@media only screen and (max-width: 767px) {
  .cardV6-item-copy {
    font-size: 16px;
    font-size: 5vw;
  }
}

.cardV6-item-detail {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  padding: 0 10px;
  max-width: 1000px;
  -webkit-transform: translate(-50%, 40px);
  -ms-transform: translate(-50%, 40px);
  transform: translate(-50%, 40px);
  -webkit-transition: all 1s;
  transition: all 1s;
  max-height: 100vh;
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-detail {
    position: static;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }
  .cardV6-item-detail.is-close {
    overflow-y: hidden;
    max-height: 0;
    -webkit-transition: all .8s;
    transition: all .8s;
  }
}

@media only screen and (max-width: 767px) {
  .cardV6-item-detail {
    text-align: center;
  }
}

.cardV6-item-list {
  letter-spacing: -0.5em;
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-list {
    padding: 30px 0;
  }
}

@media only screen and (max-width: 767px) {
  .cardV6-item-list {
    display: inline-block;
    padding: 7.8125vw 0;
  }
}

.cardV6-item-list > li {
  text-align: left;
  letter-spacing: normal;
  display: inline-block;
  width: 33.333%;
  padding: 15px 0;
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-list > li {
    padding: 15px 0;
    width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .cardV6-item-list > li {
    display: block;
    width: inherit;
    padding: 4.6875vw 0;
  }
}

.cardV6-item-link {
  color: white;
  position: relative;
  padding-left: 30px;
  font-size: 14px;
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-link {
    color: #666666;
  }
}

@media only screen and (max-width: 767px) {
  .cardV6-item-link {
    padding-left: 7.8125vw;
    font-size: 10px;
    font-size: 3.125vw;
  }
}

.cardV6-item-link:before {
  content: "";
  display: block;
  position: absolute;
  top: 40%;
  left: 0;
  width: 22px;
  height: 22px;
  background: url(../images/csr/common/icon-link-circle.png) center no-repeat;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-link:before {
    color: #666666;
    width: 21px;
    height: 21px;
    background: url(../images/csr/common/icon-list-circle-02@2x.png) center no-repeat;
    background-size: cover;
  }
}

@media only screen and (max-width: 767px) {
  .cardV6-item-link:before {
    width: 6.5625vw;
    height: 6.5625vw;
  }
}

.cardV6-item-hook {
  -webkit-tap-highlight-color: transparent;
  display: none;
  width: 40px;
  height: 40px;
  overflow: hidden;
  background: url(../images/csr/common/icon-acc-01@2x.png) center no-repeat;
  background-size: cover;
  position: absolute;
  top: 35.9375vw;
  left: 50%;
  -webkit-transform: translate(-50%, -10.9375vw);
  -ms-transform: translate(-50%, -10.9375vw);
  transform: translate(-50%, -10.9375vw);
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media only screen and (max-width: 1189px) {
  .cardV6-item-hook {
    display: block;
  }
  .cardV6-item-hook.is-open {
    -webkit-transform: translate(-50%, -10.9375vw) rotate(45deg);
    -ms-transform: translate(-50%, -10.9375vw) rotate(45deg);
    transform: translate(-50%, -10.9375vw) rotate(45deg);
  }
}

@media only screen and (max-width: 767px) {
  .cardV6-item-hook {
    width: 12.5vw;
    height: 12.5vw;
    background-size: 6.25vw 6.25vw;
    -webkit-transform: translate(-50%, -132%);
    -ms-transform: translate(-50%, -132%);
    transform: translate(-50%, -132%);
  }
  .cardV6-item-hook.is-open {
    -webkit-transform: translate(-50%, -132%) rotate(45deg);
    -ms-transform: translate(-50%, -132%) rotate(45deg);
    transform: translate(-50%, -132%) rotate(45deg);
  }
}

.cardV6-item-hook span {
  display: inline-block;
  text-indent: -10em;
}

.cardV6-item--accordion img {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: opacity 400ms, -webkit-transform 400ms;
  transition: opacity 400ms, -webkit-transform 400ms;
  transition: transform 400ms, opacity 400ms;
  transition: transform 400ms, opacity 400ms, -webkit-transform 400ms;
}

.cardV6-item--accordion:hover figure {
  background: black;
}

.cardV6-item--accordion:hover img {
  opacity: .6;
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: opacity 400ms, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), opacity 400ms;
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), opacity 400ms, -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

/* ===============================================================================
  CSRニュース
=============================================================================== */
/*--------------------------------------------------------------------------------
articleCSRnews
--------------------------------------------------------------------------------*/
.articleCSRnews {
  width: 1156px;
  margin: auto;
  margin-top: 10px;
}

@media only screen and (max-width: 1155px) {
  .articleCSRnews {
    width: 100%;
  }
}

.articleCSRnews-header {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (max-width: 719px) {
  .articleCSRnews-header {
    padding: 0 20px;
  }
}

.articleCSRnews .articleV2-pager {
  padding: 0;
}

/* ===============================================================================
  サステナビリティレポーティング配下
=============================================================================== */
/*--------------------------------------------------------------------------------
表組みと表内のリストに関するスタイル
--------------------------------------------------------------------------------*/
.tableV3-body ol[class*="tableV3-list"],
.tableV3-body ul[class*="tableV3-list"] {
  text-align: left;
}

.tableV3-body + .tableV3-body {
  margin-top: 30px;
}

.tableV3-body th[colspan][class*="tableV3-body-subHead"] {
  color: #fff;
  font-weight: 500;
  height: 40px;
}

.tableV3-body th[colspan].tableV3-body-subHeadV1 {
  background: rgba(0, 0, 0, 0.2);
  color: #fff;
}

.tableV3-body th[colspan].tableV3-body-subHeadV2 {
  background: rgba(102, 191, 255, 0.5);
  color: #fff;
}

ol[class*="tableV3-list"],
ul[class*="tableV3-list"] {
  margin: 0 0 0 20px;
  font-size: 12px;
}

ol.tableV3-listAlpha > li,
ul.tableV3-listAlpha > li {
  list-style-type: lower-alpha !important;
}

ol.tableV3-listNum > li,
ul.tableV3-listNum > li {
  list-style-type: decimal !important;
}

ul.tableV3-list-discV2 > li {
  list-style-type: none;
}

ul.tableV3-list-discV2 > li:before {
  content: "●";
  display: inline-block;
  width: 20px;
  text-align: center;
  margin-left: -20px;
}

ul.tableV3-list-inner > li {
  list-style-type: none;
}

ul.tableV3-list-inner > li:before {
  content: "－";
  font-weight: 600;
  display: inline-block;
  width: 20px;
  text-align: center;
  margin-left: -20px;
}

.tableV3-body caption {
  color: #666;
  font-size: 16px;
  font-weight: bold;
  padding: 10px 0 10px;
  background: #007ce0;
  color: white;
  border: 1px solid #ccc;
  border-bottom: none;
}

.tableV3 tbody td.tree-branch {
  position: relative;
  padding: 0;
  width: 20px;
}

.tableV3 tbody td.tree-branch:before {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background: white;
  position: absolute;
  top: -2px;
  left: 0;
}

.tableV3-body + .tableV3-note {
  font-size: 12px;
  margin-top: 10px;
}

.align-left {
  text-align: left !important;
}

.align-center {
  text-align: center !important;
}

.align-right {
  text-align: right !important;
}

.listV9-body .listV9-headingV3 {
  font-size: 20px;
}

/* ==================================================
  @extend
================================================== */
/* ===== clearfix ===== */
.fullscreenV4-list-item a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.fullscreenV4-list-item a:lang(en) {
  padding: 0 5px 0 35px;
}

.fullscreenV4-list-item a:before {
  position: absolute;
  top: .85em;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(/assets/images/common/icon-more-white.png);
  background-size: 100% 100%;
}

.fullscreenV4-list-item a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-list-item a,
  .fullscreenV4-list-item a:lang(en) {
    padding: 0 0 0 9.5vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .fullscreenV4-list-item a:before {
    width: 22px;
    width: 7.032vw;
    height: 22px;
    height: 7.032vw;
  }
}

/* disabled */
.js-link-disabled {
  pointer-events: none;
}
.fullscreenV4-list-item a.js-link-disabled {
  color: #aaa;
}
.fullscreenV4-list-item a.js-link-disabled:before {
  background-image: url(/assets/images/common/icon-more-gray.png);
}
.fullscreenV4-list-item a.js-link-disabled:hover {
  opacity: 1;
  cursor: default;
}

/* ===============================================================================
  CSR サステナビリティ編集方針・ガイドライン
=============================================================================== */
/*--------------------------------------------------------------------------------
fullscreenV4
--------------------------------------------------------------------------------*/
.fullscreenV4 {
  min-height: 100vh;
  box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4 {
    background-color: #222;
    height: auto;
    padding-bottom: 0;
  }
}

.fullscreenV4:last-child {
  margin-bottom: -150px;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4:last-child {
    margin: 0 0 -50px;
    margin: 0 0 -15.625vw;
    min-height: 78.125vw;
    box-sizing: border-box;
    padding-top: 100px;
    margin-top: -100px;
  }
}

.fullscreenV4[data-category="guideline"],
.fullscreenV4[data-category="reporting"] {
  background-position: center center;
  background-size: cover;
  background-image: url(/csr/uploads/carousel-01.png);
}

.fullscreenV4-inner {
  margin: 0 auto;
  padding: 0 20px;
  padding-top: 120px;
  padding-bottom: 120px;
  max-width: 1190px;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-inner {
    padding: 0;
    max-width: 100%;
  }
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-body {
    position: relative;
    top: 0;
    left: 0;
    padding: 0 15px;
    padding: 0 4.6875vw;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    margin-top: 0;
    padding-top: 100px;
    padding-bottom: 10.9375vw;
  }
}

.fullscreenV4-heading {
  color: #fff;
  font-weight: 500;
  font-size: 32px;
  line-height: 1.3;
  text-align: center;
  margin: 50px 0;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-heading {
    font-size: 20px;
    font-size: 6.25vw;
    margin: 6.25vw 0 4.6875vw;
  }
}

.fullscreenV4-headingV2 {
  margin: 100px 0;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-headingV2 {
    font-size: 20px;
    font-size: 6.25vw;
    margin: 9.375vw 0 7.8125vw;
  }
}

.fullscreenV4-detail {
  width: 380px;
  margin: auto;
  padding: 0 10px;
  border-style: solid;
  border-color: white;
  border-width: 1px 0;
}

.fullscreenV4-detail--wide {
  width: 1100px;
}

.fullscreenV4-detail--wide .fullscreenV4-list {
  letter-spacing: -0.5em;
  width: 100%;
  margin: 30px 0;
}

.fullscreenV4-detail--wide .fullscreenV4-list .fullscreenV4-list-item {
  letter-spacing: normal;
  width: 33.33%;
  display: inline-block;
  margin: 30px 0;
  vertical-align: top;
}

@media only screen and (max-width: 1110px) {
  .fullscreenV4-detail--wide {
    width: 100%;
  }
  .fullscreenV4-detail--wide .fullscreenV4-list .fullscreenV4-list-item {
    width: 50%;
  }
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-detail {
    width: auto;
    border-width: 0.3125vw 0;
  }
  .fullscreenV4-detail--wide {
    width: 100%;
  }
  .fullscreenV4-detail--wide .fullscreenV4-list {
    margin: 0;
  }
  .fullscreenV4-detail--wide .fullscreenV4-list .fullscreenV4-list-item {
    display: block;
    width: 100%;
    margin: 6.25vw 0;
  }
  .fullscreenV4-detail--wide .fullscreenV4-list .fullscreenV4-list-item:first-child {
    margin-top: 4.6875vw;
  }
}

.fullscreenV4-list {
  display: inline-block;
}

.fullscreenV4-list-item {
  margin: 60px 0;
  text-align: left;
}

.fullscreenV4-list-item:first-child {
  margin-top: 50px;
}

.fullscreenV4-list-item:last-child {
  margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-list-item {
    margin: 6.25vw 0;
  }
  .fullscreenV4-list-item:first-child {
    margin-top: 4.6875vw;
  }
  .fullscreenV4-list-item:last-child {
    margin-bottom: 4.6875vw;
  }
}

.fullscreenV4-list-item a {
  font-size: 18px;
  color: white;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .fullscreenV4-list-item a {
    font-size: 13px;
    font-size: 4.0625vw;
  }
}

.chartSection {
  margin: 20px 0 40px;
}

@media only screen and (max-width: 767px) {
  .chartSection canvas {
    -webkit-tap-highlight-color: transparent;
  }
}

@media only screen and (max-width: 767px) {
  .chartSection {
    margin: 6.25vw 0 12.5vw;
  }
}

.label-caption-row {
  display: table;
  width: 100%;
  margin-bottom: 15px;
}

.chart-labels-row {
  display: table;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .label-caption-row {
    margin-bottom: 1.375vw;
  }

  .chart-labels-row > p {
    font-size: 2.1875vw;
  }
}

.label-caption-row > .label_caption {
  width: 50%;
  display: table-cell;
}

.chart-labels-row > .chart-labels {
  width: 85%;
  display: table-cell;
}
.chart-labels-row > p {
  width: 15%;
  display: table-cell;
}

.label_caption {
  font-size: 14px;
  color: #066EB3;
  font-weight: 500;
  margin: 20px 0;
}

@media only screen and (max-width: 767px) {
  .label_caption {
    font-size: 2.1875vw;
    margin: 1.375vw 0;
  }
}

.label_caption.ta-r,
.label_caption--x {
  text-align: right;
  color: #333;
}

.label_total {
  color: #066EB3;
  font-size: 22px;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .label_total {
    font-size: 6.875vw;
    text-align: center;
  }
}

.label_total strong {
  font-size: 60px;
}

@media only screen and (max-width: 767px) {
  .label_total strong {
    font-size: 12.5vw;
  }
}

.canvas-holder {
  position: relative;
}

@media only screen and (max-width: 767px) {
  .chartSection--scroll {
    overflow-x: scroll;
  }
  .chartSection--scroll .canvas-holder {
    height: 400px !important;
    width: 700px !important;
  }
  .chartSection--scroll .canvas-holder canvas {
    max-height: inherit;
  }
}

.chartSection + .chartSection {
  margin-top: 80px;
}

@media only screen and (max-width: 767px) {
  .chartSection + .chartSection {
    margin-top: 9.375vw;
  }
}

.chartSection-heading {
  font-size: 24px;
  font-weight: 500;
  color: #999;
  text-align: left;
  margin: 60px 0 20px;
}

@media only screen and (max-width: 767px) {
  .chartSection-heading {
    font-size: 15px;
    font-size: 4.6875vw;
    margin: 6.25vw 0 6.25vw;
  }
}

.chartSection-headingV2 {
  font-size: 24px;
  font-weight: 500;
  color: #999;
  text-align: left;
  margin: 60px 0 20px;
}

.chartSection-headingV2 + img {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .chartSection-headingV2 {
    font-size: 15px;
    font-size: 4.6875vw;
    margin: 6.25vw 0 6.25vw;
  }
}

.table-body + .chartSection-heading {
  margin-top: 50px;
}

@media only screen and (max-width: 767px) {
  .table-body + .chartSection-heading {
    margin: 6.25vw 0 6.25vw;
  }
}

.chart-labels {
  letter-spacing: -0.5em;
}

.chart-label {
  letter-spacing: normal;
  display: inline-block;
  font-size: 14px;
  margin-left: 20px;
  margin-top: 20px;
  vertical-align: middle;
}

.chart-labelV2 {
  color: #066EB3;
}

@media only screen and (max-width: 767px) {
  .chart-label {
    letter-spacing: normal;
    display: inline-block;
    font-size: 2.1875vw;
    margin-left: 6.25vw;
    margin-top: 3.125vw;
    vertical-align: middle;
  }
}

.chart-labels.ta-c .chart-label:first-child {
  margin-left: 0;
}

.chart-label-color {
  width: 13px;
  height: 13px;
  display: inline-block;
  margin-right: 10px;
}

.graphText {
  display: table;
  width: 100%;
  table-layout: fixed;
}

.graphText_cell {
  display: table-cell;
  vertical-align: middle;
}

.graphText_cell--detail {
  padding: 0 20px;
}

@media only screen and (max-width: 767px) {
  .graphText_cell--detail {
    padding: 6.25vw 3.125vw 0 3.125vw;
    display: table-footer-group;
  }
}

.graphText_cell--detail > * {
  max-width: 300px;
  margin: auto;
}

.graphText_cell--detail > *:not(:first-child) {
  margin-top: 20px;
}

.graphText_table {
  text-align: left;
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  border-spacing: 0;
}

@media only screen and (max-width: 767px) {
  .graphText_table {
    font-size: 12px;
    font-size: 3.75vw;
  }
}

.graphText_table td,
.graphText_table th {
  border-bottom: solid 2px #e5e5e4;
  padding: 20px 10px;
}

.graphText_table th {
  padding-left: 30px;
}

@media only screen and (max-width: 767px) {
  .graphText_table th {
    padding-left: 9.375vw;
  }
}

.graphText_table th .graphText_table_label {
  margin-left: -30px;
}

@media only screen and (max-width: 767px) {
  .graphText_table th .graphText_table_label {
    margin-left: -9.375vw;
  }
}

.graphText_table_label {
  width: 20px;
  height: 20px;
  background: gray;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

@media only screen and (max-width: 767px) {
  .graphText_table_label {
    width: 6.25vw;
    height: 6.25vw;
    margin-right: 3.125vw;
  }
}

.graphText_table td {
  text-align: right;
}

.graphText_cell--chart {
  position: relative;
}

.chart-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  border-radius: 50%;
  width: 85%;
  margin: 0 !important;
}

.chart-row {
  display: table;
  table-layout: fixed;
}

.chart-col {
  display: table-cell;
  width: 50%;
}

@media only screen and (max-width: 767px) {
  .chart-row {
    display: block;
  }
  .chart-col {
    display: block;
    width: 100%;
  }
  .chart-col:not(:first-child) {
    margin-top: 13vw;
  }
}

.chart-col canvas {
  width: 100%;
}

/* グラフの省略記号挿入 */
.chart-omission {
  position: relative;
}
.chart-omission .omission-wave {
  position: absolute;
  width: 20px;
  height: auto;
  bottom: 10px;
  z-index: 1;
}
@media only screen and (max-width: 767px){
  .chart-omission .omission-wave {
    width: 3%;
  }
}

/* climate-change-chart-03 */
[data-graph-id="climate-change-chart-03"] .omission-wave {
  left: 160px;
}
@media only screen and (max-width: 767px) {
  [data-graph-id="climate-change-chart-03"] .omission-wave {
    left: 23%;
  }
}

/* reduce-reuse-recycle-chart-16 */
[data-graph-id="reduce-reuse-recycle-chart-16"] .omission-wave {
  left: 120px;
}
@media only screen and (max-width: 767px) {
  [data-graph-id="reduce-reuse-recycle-chart-16"] .omission-wave {
    left: 18%;
  }
}

/* reduce-reuse-recycle-chart-11 */
[data-graph-id="reduce-reuse-recycle-chart-11"] .omission-wave {
  left: 164px;
}
@media only screen and (max-width: 767px) {
  [data-graph-id="reduce-reuse-recycle-chart-11"] .omission-wave {
    left: 23%;
  }
}

.ta-c {
  text-align: center !important;
}

.ta-r {
  text-align: right !important;
}

.chart-flow {
  letter-spacing: -0.5em;
}

.chart-flow-item {
  letter-spacing: normal;
  display: inline-block;
  width: 50%;
  padding: 0 20px;
  position: relative;
}

.chart-flow-item:not(:first-child):before {
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 0 10px 15px;
  border-color: transparent transparent transparent #0968a6;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

canvas[height="400"] {
  max-height: 51.5625vw;
}

@media only screen and (max-width: 767px) {
  .chart-scrollWrap {
    width: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
  }
  .chart-scrollWrap .canvas-holder {
    min-width: 600px;
    height: auto !important;
  }
  .chart-scrollWrap .canvas-holder canvas[height="400"] {
    max-height: 345px;
  }
}

/*--------------------------------------------------------------------------------
definitionList
--------------------------------------------------------------------------------*/
.definitionList, .definitionListV2 {
  margin: 0 0 45px;
  color: #444;
  font-size: 14px;
}

.definitionList dt, .definitionListV2 dt {
  display: block;
  width: 5em;
  margin: 0 0 16px;
  text-align: right;
  font-weight: 600;
}

.definitionList dd, .definitionListV2 dd {
  position: relative;
  margin: -32px 0 16px 5em;
}

.definitionList dd sup, .definitionListV2 dd sup {
  position: absolute;
  top: -1px;
}

@media only screen and (max-width: 767px) {
  .definitionList, .definitionListV2 {
    margin: 0 0 30px;
    margin: 0 0 9.375vw;
    font-size: 12px;
    font-size: 3.75vw;
  }
  .definitionList dt, .definitionListV2 dt {
    width: 6em;
    margin: 0 0 10px;
    margin: 0 0 3.125vw;
  }
  .definitionList dd, .definitionListV2 dd {
    margin: -24px 0 10px 6em;
    margin: -7.5vw 0 3.125vw 6em;
  }
}

.definitionListV2 dt {
  width: 10em;
}

.definitionListV2 dd {
  margin-left: 10em;
}

@media only screen and (max-width: 767px) {
  .definitionListV2 dt, .definitionListV2 dd {
    text-align: left;
    width: auto;
    margin: 0;
    display: block;
  }
  .definitionListV2 dd + dt {
    margin-top: 3.125vw;
  }
}

.listV9-body > h4:first-child {
  padding-top: 30px;
}

@media only screen and (max-width: 767px) {
  .listV9-body > h4:first-child {
    padding-top: 9.375vw;
  }
}

.ta-r {
  text-align: right !important;
}

.cardV4-itemV7 {
  width: 33.3%;
}

.cardV4-itemV7[data-cloned="true"] {
  display: none;
}

.cardV4-itemV7 a {
  margin: 3px;
  display: block;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV7 a img {
  width: 100%;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV7 a:hover {
  opacity: .7;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV7 a:hover img {
  -webkit-transform: scale(1.05);
  -ms-transform: scale(1.05);
  transform: scale(1.05);
  -webkit-transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1), -webkit-transform 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.cardV4-itemV7-figure {
  position: relative;
  overflow: hidden;
}

.cardV4-itemV7-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  font-size: 24px;
  color: #fff;
  white-space: nowrap;
  text-align: center;
}

.article-link a {
  position: relative;
  display: inline-block;
  margin: 20px 0;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.article-link a:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(/assets/images/common/icon-more-blue.png);
  background-size: 100% 100%;
}

.article-link a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV4-body .article-link:last-child a {
  margin: 55px 0 0;
}
[data-page-id="global-network-group-companies"] .article-link a {
  margin: 0;
}


@media only screen and (max-width: 767px) {
  .article-link a {
    margin: 3.125vw 0;
    padding: 0 0 0 6.25vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.4;
  }
  .article-link a:before {
    width: 4.6875vw;
    height: 4.6875vw;
  }
  .listV4-body .article-link:last-child a {
    margin: 7.8125vw 0 0;
  }
  [data-page-id="global-network-group-companies"] .article-link a {
    padding: 0 0 0 9.375vw;
  }
  [data-page-id="global-network-group-companies"] .article-link a:before {
    width: 7.032vw;
    height: 7.032vw;
  }
}

.fz-large {
  font-size: 1.2em;
}

.mb-30, .mh-30,
.ma-30 {
  margin-bottom: 30px !important;
}

@media only screen and (max-width: 767px) {
  .mb-30, .mh-30,
  .ma-30 {
    margin-bottom: 9.375vw !important;
  }
}

.icon-headingTyA:before {
  content: "";
  display: inline-block;
  margin-right: .5em;
  width: .5em;
  height: .5em;
  background: #333;
  vertical-align: middle;
  margin-top: -0.1em;
}

.row {
  letter-spacing: -0.5em;
  margin: 20px -10px;
}

.row_col {
  letter-spacing: normal;
  display: inline-block;
  margin: 10px 0;
  padding: 0 10px;
  box-sizing: border-box;
  vertical-align: top;
}

@media only screen and (max-width: 767px) {
  .row_col {
    width: 100% !important;
  }
}

.row_col > .imageFit {
  margin: 0 auto;
}

.row.v-col2 .row_col {
  width: 50%;
}
.row.v-col2 .row_col_colspan {
  width: 100%;
  letter-spacing: 0;
  margin: 20px 10px;
}

.row.v-col3 .row_col {
  width: 33%;
}

.row.v-col3 .row_col:nth-child(2n) {
  width: 34%;
}

.row.v-col4 .row_col {
  width: 25%;
}

.row + .row {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .row + .row {
    margin-top: -20px;
  }
}

@media only screen and (max-width: 767px) {
  .row.sp-col2 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .row.sp-col2 .row_col {
    width: 50% !important;
    margin: 10px 0;
    padding: 0 10px;
  }
  .row.sp-col3 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .row.sp-col3 .row_col {
    width: 33% !important;
    margin: 10px 0;
    padding: 0 10px;
  }
}

.inlineRow {
  letter-spacing: -0.5em;
  margin: 20px 0;
}

.inlineRow_col {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  margin: 10px 10px;
}

@media only screen and (max-width: 767px) {
  .inlineRow_col {
    margin: 10px 0;
    width: 100%;
  }
}

.inlineRow_col > .imageFit {
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  .inlineRow_col > .imageFit {
    display: block;
    width: 100%;
  }
  .inlineRow_col > .imageFit img {
    max-width: 100%;
    width: 100%;
  }
}

.inlineRow + .inlineRow {
  margin-top: -20px;
}

@media only screen and (max-width: 699px) {
  .inlineRow.sp-col2 {
    margin-left: -3.125vw;
    margin-right: -3.125vw;
  }
  .inlineRow.sp-col2 .inlineRow_col {
    width: 50%;
    margin: 3.125vw 0;
    padding: 0 3.125vw;
  }
}

@media only screen and (max-width: 699px) {
  .inlineRow.sp-col3 {
    margin-left: -3.125vw;
    margin-right: -3.125vw;
  }
  .inlineRow.sp-col3 .inlineRow_col {
    width: 33.33%;
    margin: 3.125vw 0;
    padding: 0 3.125vw;
  }
}

figure.imageFit {
  margin: 20px 0;
  display: table;
  width: 1em;
}

@media only screen and (max-width: 799px) {
  figure.imageFit {
    display: block;
    width: auto;
  }
}

figure.imageFit img {
  max-width: inherit;
  display: block;
  white-space: nowrap;
  margin: 0;
}

@media only screen and (max-width: 799px) {
  figure.imageFit img {
    max-width: 100%;
    width: 100%;
  }
}

figure.imageFit figcaption {
  margin: .5em 0;
  /* color: #666; */
}

@media only screen and (max-width: 767px) {
  figure.imageFit figcaption {
    font-size: 20px;
    font-size: 2rem;
    font-size: 3.125vw;
  }
}

/* imageColumn */
.imageColumn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding-top: 80px;
}
@media only screen and (max-width: 767px){
  .imageColumn {
    display: block;
    padding-top: 0;
  }
}

.imageColumnItem {
  width: calc(50% - 15px);
}
@media only screen and (max-width: 767px){
  .imageColumnItem {
    width: 100%;
    margin-top:  20px;
  }
}

.imageColumnCaption {
  margin-top: .5em;
  color: #666;
}
@media only screen and (max-width: 767px){
  .imageColumnCaption {
    font-size: 3.75vw;
  }
}


.imageLinkMenu {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 118px;
  z-index: 2;
}
@media only screen and (max-width: 767px){
  .imageLinkMenu {
    padding: 0;
  }
}

.imageLinkMenuItem + .imageLinkMenuItem {
  margin-left: 6px;
}
@media only screen and (max-width: 767px){
  .imageLinkMenuItem + .imageLinkMenuItem {
    margin-left: 2%;
  }
}
.imageLinkMenuItem img {
  width: 100%;
  height: auto;
}

.imageLinkMenuItem a:hover {
  opacity: .7;
}

.imageLinkImg {
  position: relative;
  margin-top: -60px;
  z-index: 1;
}


@media only screen and (max-width: 767px) {
  .tableV3 {
    overflow-x: scroll;
  }
  .tableV3::-webkit-scrollbar {
    width: 5px;
    background: #cdcdcd;
  }
  .tableV3::-webkit-scrollbar-thumb {
    background: #aaa;
    border-radius: 5px;
  }
  .tableV3::-webkit-scrollbar-track-piece:start {
    background: #cdcdcd;
  }
  .tableV3::-webkit-scrollbar-track-piece:end {
    background: #cdcdcd;
  }
  .tableV3::-webkit-scrollbar-corner {
    background: transparent;
  }
}

.ta-c {
  text-align: center !important;
}

.ta-r {
  text-align: right !important;
}

.ta-l {
  text-align: left !important;
}

.va-m {
  vertical-align: middle !important;
}

.va-t {
  vertical-align: top !important;
}

.va-b {
  vertical-align: bottom !important;
}

.mw-a {
  margin-left: auto !important;
  margin-right: auto !important;
}

.mb-0, .mh-0,
.ma-0 {
  margin-bottom: 0 !important;
}

.js-pulldownV7-inner > .listV9-body .article-link:not(:last-child),
.js-pulldownV7-inner > .listV9-body .read-moreV2:not(:last-child) {
  margin-top: 60px;
  margin-bottom: 60px;
}

.js-pulldownV7-inner > .listV9-body .article-link:last-child,
.js-pulldownV7-inner > .listV9-body .read-moreV2:last-child {
  margin-top: 60px;
  margin-bottom: 4px;
}

.js-pulldownV7-inner > .listV9-body .article-link + h4,
.js-pulldownV7-inner > .listV9-body .read-moreV2 + h4 {
  margin-top: -50px;
}

.js-pulldownV7-inner > .listV9-body .article-link a,
.js-pulldownV7-inner > .listV9-body .read-moreV2 a {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .js-pulldownV7-inner > .listV9-body .article-link:not(:last-child),
  .js-pulldownV7-inner > .listV9-body .read-moreV2:not(:last-child) {
    margin-top: 9.375vw;
    margin-bottom: 9.375vw;
  }
  .js-pulldownV7-inner > .listV9-body .article-link:last-child,
  .js-pulldownV7-inner > .listV9-body .read-moreV2:last-child {
    margin-top: 9.375vw;
    margin-bottom: 4.6875vw;
  }
  .js-pulldownV7-inner > .listV9-body .article-link + h4,
  .js-pulldownV7-inner > .listV9-body .read-moreV2 + h4 {
    margin-top: -20px;
  }
}

.table-lead {
  margin-bottom: 66px;
}

@media only screen and (max-width: 767px) {
  .table-lead {
    margin-bottom: 9.375vw;
  }
}

/* IE10over */
/* IE10over */
/* ==================================================
  調整クラス
================================================== */
@media only screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
  .ta-r-pc {
    text-align: inherit !important;
  }
}

@media only screen and (min-width: 768px) {
  .is-sp {
    display: none;
  }
  .ta-r-pc {
    text-align: right !important;
  }
}

.is-hide {
  display: none !important;
}

.ta-c {
  text-align: center !important;
}

.ta-r {
  text-align: right !important;
}

.ta-l {
  text-align: left !important;
}

.va-m {
  vertical-align: middle !important;
}

.va-t {
  vertical-align: top !important;
}

.va-b {
  vertical-align: bottom !important;
}

/*  font
================================================== */
.em-01 {
  font-weight: bold;
}

nobr,
.nobr {
  display: inline-block;
}

sub.note {
  margin-left: -.1em;
  font-size: .6em;
}

.color-01 {
  color: #66bfff;
}

.color-02 {
  color: #6AC0FC;
}

.color-03 {
  color: #108cc2;
}

.color-04 {
  color: #666 !important;
}

.color-05 {
  color: #444;
}

.fz-small {
  font-size: 12px;
}

.fz-big {
  font-size: 1.5em;
}

@media only screen and (max-width: 767px) {
  .fz-small {
    font-size: 3.75vw;
  }
}

/*  margin
================================================== */
.mt-0, .mh-0,
.ma-0 {
  margin-top: 0px !important;
}

@media only screen and (max-width: 767px) {
  .mt-0, .mh-0,
  .ma-0 {
    margin-top: 0vw !important;
  }
}

.mr-0, .mw-0,
.ma-0 {
  margin-right: 0px !important;
}

@media only screen and (max-width: 767px) {
  .mr-0, .mw-0,
  .ma-0 {
    margin-right: 0vw !important;
  }
}

.mb-0, .mh-0,
.ma-0 {
  margin-bottom: 0px !important;
}

@media only screen and (max-width: 767px) {
  .mb-0, .mh-0,
  .ma-0 {
    margin-bottom: 0vw !important;
  }
}

.ml-0, .mw-0,
.ma-0 {
  margin-left: 0px !important;
}

@media only screen and (max-width: 767px) {
  .ml-0, .mw-0,
  .ma-0 {
    margin-left: 0vw !important;
  }
}

.pt-0, .ph-0,
.pa-0 {
  padding-top: 0px !important;
}

@media only screen and (max-width: 767px) {
  .pt-0, .ph-0,
  .pa-0 {
    padding-top: 0vw !important;
  }
}

.pr-0, .pw-0,
.pa-0 {
  padding-right: 0px !important;
}

@media only screen and (max-width: 767px) {
  .pr-0, .pw-0,
  .pa-0 {
    padding-right: 0vw !important;
  }
}

.pb-0, .ph-0,
.pa-0 {
  padding-bottom: 0px !important;
}

@media only screen and (max-width: 767px) {
  .pb-0, .ph-0,
  .pa-0 {
    padding-bottom: 0vw !important;
  }
}

.pl-0, .pw-0,
.pa-0 {
  padding-left: 0px !important;
}

@media only screen and (max-width: 767px) {
  .pl-0, .pw-0,
  .pa-0 {
    padding-left: 0vw !important;
  }
}

.mt-5, .mh-5,
.ma-5 {
  margin-top: 5px !important;
}

@media only screen and (max-width: 767px) {
  .mt-5, .mh-5,
  .ma-5 {
    margin-top: 1.5625vw !important;
  }
}

.mr-5, .mw-5,
.ma-5 {
  margin-right: 5px !important;
}

@media only screen and (max-width: 767px) {
  .mr-5, .mw-5,
  .ma-5 {
    margin-right: 1.5625vw !important;
  }
}

.mb-5, .mh-5,
.ma-5 {
  margin-bottom: 5px !important;
}

@media only screen and (max-width: 767px) {
  .mb-5, .mh-5,
  .ma-5 {
    margin-bottom: 1.5625vw !important;
  }
}

.ml-5, .mw-5,
.ma-5 {
  margin-left: 5px !important;
}

@media only screen and (max-width: 767px) {
  .ml-5, .mw-5,
  .ma-5 {
    margin-left: 1.5625vw !important;
  }
}

.pt-5, .ph-5,
.pa-5 {
  padding-top: 5px !important;
}

@media only screen and (max-width: 767px) {
  .pt-5, .ph-5,
  .pa-5 {
    padding-top: 1.5625vw !important;
  }
}

.pr-5, .pw-5,
.pa-5 {
  padding-right: 5px !important;
}

@media only screen and (max-width: 767px) {
  .pr-5, .pw-5,
  .pa-5 {
    padding-right: 1.5625vw !important;
  }
}

.pb-5, .ph-5,
.pa-5 {
  padding-bottom: 5px !important;
}

@media only screen and (max-width: 767px) {
  .pb-5, .ph-5,
  .pa-5 {
    padding-bottom: 1.5625vw !important;
  }
}

.pl-5, .pw-5,
.pa-5 {
  padding-left: 5px !important;
}

@media only screen and (max-width: 767px) {
  .pl-5, .pw-5,
  .pa-5 {
    padding-left: 1.5625vw !important;
  }
}

.mt-10, .mh-10,
.ma-10 {
  margin-top: 10px !important;
}

@media only screen and (max-width: 767px) {
  .mt-10, .mh-10,
  .ma-10 {
    margin-top: 3.125vw !important;
  }
}

.mr-10, .mw-10,
.ma-10 {
  margin-right: 10px !important;
}

@media only screen and (max-width: 767px) {
  .mr-10, .mw-10,
  .ma-10 {
    margin-right: 3.125vw !important;
  }
}

.mb-10, .mh-10,
.ma-10 {
  margin-bottom: 10px !important;
}

@media only screen and (max-width: 767px) {
  .mb-10, .mh-10,
  .ma-10 {
    margin-bottom: 3.125vw !important;
  }
}

.ml-10, .mw-10,
.ma-10 {
  margin-left: 10px !important;
}

@media only screen and (max-width: 767px) {
  .ml-10, .mw-10,
  .ma-10 {
    margin-left: 3.125vw !important;
  }
}

.pt-10, .ph-10,
.pa-10 {
  padding-top: 10px !important;
}

@media only screen and (max-width: 767px) {
  .pt-10, .ph-10,
  .pa-10 {
    padding-top: 3.125vw !important;
  }
}

.pr-10, .pw-10,
.pa-10 {
  padding-right: 10px !important;
}

@media only screen and (max-width: 767px) {
  .pr-10, .pw-10,
  .pa-10 {
    padding-right: 3.125vw !important;
  }
}

.pb-10, .ph-10,
.pa-10 {
  padding-bottom: 10px !important;
}

@media only screen and (max-width: 767px) {
  .pb-10, .ph-10,
  .pa-10 {
    padding-bottom: 3.125vw !important;
  }
}

.pl-10, .pw-10,
.pa-10 {
  padding-left: 10px !important;
}

@media only screen and (max-width: 767px) {
  .pl-10, .pw-10,
  .pa-10 {
    padding-left: 3.125vw !important;
  }
}

.mt-15, .mh-15,
.ma-15 {
  margin-top: 15px !important;
}

@media only screen and (max-width: 767px) {
  .mt-15, .mh-15,
  .ma-15 {
    margin-top: 4.6875vw !important;
  }
}

.mr-15, .mw-15,
.ma-15 {
  margin-right: 15px !important;
}

@media only screen and (max-width: 767px) {
  .mr-15, .mw-15,
  .ma-15 {
    margin-right: 4.6875vw !important;
  }
}

.mb-15, .mh-15,
.ma-15 {
  margin-bottom: 15px !important;
}

@media only screen and (max-width: 767px) {
  .mb-15, .mh-15,
  .ma-15 {
    margin-bottom: 4.6875vw !important;
  }
}

.ml-15, .mw-15,
.ma-15 {
  margin-left: 15px !important;
}

@media only screen and (max-width: 767px) {
  .ml-15, .mw-15,
  .ma-15 {
    margin-left: 4.6875vw !important;
  }
}

.pt-15, .ph-15,
.pa-15 {
  padding-top: 15px !important;
}

@media only screen and (max-width: 767px) {
  .pt-15, .ph-15,
  .pa-15 {
    padding-top: 4.6875vw !important;
  }
}

.pr-15, .pw-15,
.pa-15 {
  padding-right: 15px !important;
}

@media only screen and (max-width: 767px) {
  .pr-15, .pw-15,
  .pa-15 {
    padding-right: 4.6875vw !important;
  }
}

.pb-15, .ph-15,
.pa-15 {
  padding-bottom: 15px !important;
}

@media only screen and (max-width: 767px) {
  .pb-15, .ph-15,
  .pa-15 {
    padding-bottom: 4.6875vw !important;
  }
}

.pl-15, .pw-15,
.pa-15 {
  padding-left: 15px !important;
}

@media only screen and (max-width: 767px) {
  .pl-15, .pw-15,
  .pa-15 {
    padding-left: 4.6875vw !important;
  }
}

.mt-20, .mh-20,
.ma-20 {
  margin-top: 20px !important;
}

@media only screen and (max-width: 767px) {
  .mt-20, .mh-20,
  .ma-20 {
    margin-top: 6.25vw !important;
  }
}

.mr-20, .mw-20,
.ma-20 {
  margin-right: 20px !important;
}

@media only screen and (max-width: 767px) {
  .mr-20, .mw-20,
  .ma-20 {
    margin-right: 6.25vw !important;
  }
}

.mb-20, .mh-20,
.ma-20 {
  margin-bottom: 20px !important;
}

@media only screen and (max-width: 767px) {
  .mb-20, .mh-20,
  .ma-20 {
    margin-bottom: 6.25vw !important;
  }
}

.ml-20, .mw-20,
.ma-20 {
  margin-left: 20px !important;
}

@media only screen and (max-width: 767px) {
  .ml-20, .mw-20,
  .ma-20 {
    margin-left: 6.25vw !important;
  }
}

.pt-20, .ph-20,
.pa-20 {
  padding-top: 20px !important;
}

@media only screen and (max-width: 767px) {
  .pt-20, .ph-20,
  .pa-20 {
    padding-top: 6.25vw !important;
  }
}

.pr-20, .pw-20,
.pa-20 {
  padding-right: 20px !important;
}

@media only screen and (max-width: 767px) {
  .pr-20, .pw-20,
  .pa-20 {
    padding-right: 6.25vw !important;
  }
}

.pb-20, .ph-20,
.pa-20 {
  padding-bottom: 20px !important;
}

@media only screen and (max-width: 767px) {
  .pb-20, .ph-20,
  .pa-20 {
    padding-bottom: 6.25vw !important;
  }
}

.pl-20, .pw-20,
.pa-20 {
  padding-left: 20px !important;
}

@media only screen and (max-width: 767px) {
  .pl-20, .pw-20,
  .pa-20 {
    padding-left: 6.25vw !important;
  }
}

.mt-25, .mh-25,
.ma-25 {
  margin-top: 25px !important;
}

@media only screen and (max-width: 767px) {
  .mt-25, .mh-25,
  .ma-25 {
    margin-top: 7.8125vw !important;
  }
}

.mr-25, .mw-25,
.ma-25 {
  margin-right: 25px !important;
}

@media only screen and (max-width: 767px) {
  .mr-25, .mw-25,
  .ma-25 {
    margin-right: 7.8125vw !important;
  }
}

.mb-25, .mh-25,
.ma-25 {
  margin-bottom: 25px !important;
}

@media only screen and (max-width: 767px) {
  .mb-25, .mh-25,
  .ma-25 {
    margin-bottom: 7.8125vw !important;
  }
}

.ml-25, .mw-25,
.ma-25 {
  margin-left: 25px !important;
}

@media only screen and (max-width: 767px) {
  .ml-25, .mw-25,
  .ma-25 {
    margin-left: 7.8125vw !important;
  }
}

.pt-25, .ph-25,
.pa-25 {
  padding-top: 25px !important;
}

@media only screen and (max-width: 767px) {
  .pt-25, .ph-25,
  .pa-25 {
    padding-top: 7.8125vw !important;
  }
}

.pr-25, .pw-25,
.pa-25 {
  padding-right: 25px !important;
}

@media only screen and (max-width: 767px) {
  .pr-25, .pw-25,
  .pa-25 {
    padding-right: 7.8125vw !important;
  }
}

.pb-25, .ph-25,
.pa-25 {
  padding-bottom: 25px !important;
}

@media only screen and (max-width: 767px) {
  .pb-25, .ph-25,
  .pa-25 {
    padding-bottom: 7.8125vw !important;
  }
}

.pl-25, .pw-25,
.pa-25 {
  padding-left: 25px !important;
}

@media only screen and (max-width: 767px) {
  .pl-25, .pw-25,
  .pa-25 {
    padding-left: 7.8125vw !important;
  }
}

.mt-30, .mh-30,
.ma-30 {
  margin-top: 30px !important;
}

@media only screen and (max-width: 767px) {
  .mt-30, .mh-30,
  .ma-30 {
    margin-top: 9.375vw !important;
  }
}

.mr-30, .mw-30,
.ma-30 {
  margin-right: 30px !important;
}

@media only screen and (max-width: 767px) {
  .mr-30, .mw-30,
  .ma-30 {
    margin-right: 9.375vw !important;
  }
}

.mb-30, .mh-30,
.ma-30 {
  margin-bottom: 30px !important;
}

@media only screen and (max-width: 767px) {
  .mb-30, .mh-30,
  .ma-30 {
    margin-bottom: 9.375vw !important;
  }
}

.ml-30, .mw-30,
.ma-30 {
  margin-left: 30px !important;
}

@media only screen and (max-width: 767px) {
  .ml-30, .mw-30,
  .ma-30 {
    margin-left: 9.375vw !important;
  }
}

.pt-30, .ph-30,
.pa-30 {
  padding-top: 30px !important;
}

@media only screen and (max-width: 767px) {
  .pt-30, .ph-30,
  .pa-30 {
    padding-top: 9.375vw !important;
  }
}

.pr-30, .pw-30,
.pa-30 {
  padding-right: 30px !important;
}

@media only screen and (max-width: 767px) {
  .pr-30, .pw-30,
  .pa-30 {
    padding-right: 9.375vw !important;
  }
}

.pb-30, .ph-30,
.pa-30 {
  padding-bottom: 30px !important;
}

@media only screen and (max-width: 767px) {
  .pb-30, .ph-30,
  .pa-30 {
    padding-bottom: 9.375vw !important;
  }
}

.pl-30, .pw-30,
.pa-30 {
  padding-left: 30px !important;
}

@media only screen and (max-width: 767px) {
  .pl-30, .pw-30,
  .pa-30 {
    padding-left: 9.375vw !important;
  }
}

.mt-35, .mh-35,
.ma-35 {
  margin-top: 35px !important;
}

@media only screen and (max-width: 767px) {
  .mt-35, .mh-35,
  .ma-35 {
    margin-top: 10.9375vw !important;
  }
}

.mr-35, .mw-35,
.ma-35 {
  margin-right: 35px !important;
}

@media only screen and (max-width: 767px) {
  .mr-35, .mw-35,
  .ma-35 {
    margin-right: 10.9375vw !important;
  }
}

.mb-35, .mh-35,
.ma-35 {
  margin-bottom: 35px !important;
}

@media only screen and (max-width: 767px) {
  .mb-35, .mh-35,
  .ma-35 {
    margin-bottom: 10.9375vw !important;
  }
}

.ml-35, .mw-35,
.ma-35 {
  margin-left: 35px !important;
}

@media only screen and (max-width: 767px) {
  .ml-35, .mw-35,
  .ma-35 {
    margin-left: 10.9375vw !important;
  }
}

.pt-35, .ph-35,
.pa-35 {
  padding-top: 35px !important;
}

@media only screen and (max-width: 767px) {
  .pt-35, .ph-35,
  .pa-35 {
    padding-top: 10.9375vw !important;
  }
}

.pr-35, .pw-35,
.pa-35 {
  padding-right: 35px !important;
}

@media only screen and (max-width: 767px) {
  .pr-35, .pw-35,
  .pa-35 {
    padding-right: 10.9375vw !important;
  }
}

.pb-35, .ph-35,
.pa-35 {
  padding-bottom: 35px !important;
}

@media only screen and (max-width: 767px) {
  .pb-35, .ph-35,
  .pa-35 {
    padding-bottom: 10.9375vw !important;
  }
}

.pl-35, .pw-35,
.pa-35 {
  padding-left: 35px !important;
}

@media only screen and (max-width: 767px) {
  .pl-35, .pw-35,
  .pa-35 {
    padding-left: 10.9375vw !important;
  }
}

.mt-40, .mh-40,
.ma-40 {
  margin-top: 40px !important;
}

@media only screen and (max-width: 767px) {
  .mt-40, .mh-40,
  .ma-40 {
    margin-top: 12.5vw !important;
  }
}

.mr-40, .mw-40,
.ma-40 {
  margin-right: 40px !important;
}

@media only screen and (max-width: 767px) {
  .mr-40, .mw-40,
  .ma-40 {
    margin-right: 12.5vw !important;
  }
}

.mb-40, .mh-40,
.ma-40 {
  margin-bottom: 40px !important;
}

@media only screen and (max-width: 767px) {
  .mb-40, .mh-40,
  .ma-40 {
    margin-bottom: 12.5vw !important;
  }
}

.ml-40, .mw-40,
.ma-40 {
  margin-left: 40px !important;
}

@media only screen and (max-width: 767px) {
  .ml-40, .mw-40,
  .ma-40 {
    margin-left: 12.5vw !important;
  }
}

.pt-40, .ph-40,
.pa-40 {
  padding-top: 40px !important;
}

@media only screen and (max-width: 767px) {
  .pt-40, .ph-40,
  .pa-40 {
    padding-top: 12.5vw !important;
  }
}

.pr-40, .pw-40,
.pa-40 {
  padding-right: 40px !important;
}

@media only screen and (max-width: 767px) {
  .pr-40, .pw-40,
  .pa-40 {
    padding-right: 12.5vw !important;
  }
}

.pb-40, .ph-40,
.pa-40 {
  padding-bottom: 40px !important;
}

@media only screen and (max-width: 767px) {
  .pb-40, .ph-40,
  .pa-40 {
    padding-bottom: 12.5vw !important;
  }
}

.pl-40, .pw-40,
.pa-40 {
  padding-left: 40px !important;
}

@media only screen and (max-width: 767px) {
  .pl-40, .pw-40,
  .pa-40 {
    padding-left: 12.5vw !important;
  }
}

.mt-45, .mh-45,
.ma-45 {
  margin-top: 45px !important;
}

@media only screen and (max-width: 767px) {
  .mt-45, .mh-45,
  .ma-45 {
    margin-top: 14.0625vw !important;
  }
}

.mr-45, .mw-45,
.ma-45 {
  margin-right: 45px !important;
}

@media only screen and (max-width: 767px) {
  .mr-45, .mw-45,
  .ma-45 {
    margin-right: 14.0625vw !important;
  }
}

.mb-45, .mh-45,
.ma-45 {
  margin-bottom: 45px !important;
}

@media only screen and (max-width: 767px) {
  .mb-45, .mh-45,
  .ma-45 {
    margin-bottom: 14.0625vw !important;
  }
}

.ml-45, .mw-45,
.ma-45 {
  margin-left: 45px !important;
}

@media only screen and (max-width: 767px) {
  .ml-45, .mw-45,
  .ma-45 {
    margin-left: 14.0625vw !important;
  }
}

.pt-45, .ph-45,
.pa-45 {
  padding-top: 45px !important;
}

@media only screen and (max-width: 767px) {
  .pt-45, .ph-45,
  .pa-45 {
    padding-top: 14.0625vw !important;
  }
}

.pr-45, .pw-45,
.pa-45 {
  padding-right: 45px !important;
}

@media only screen and (max-width: 767px) {
  .pr-45, .pw-45,
  .pa-45 {
    padding-right: 14.0625vw !important;
  }
}

.pb-45, .ph-45,
.pa-45 {
  padding-bottom: 45px !important;
}

@media only screen and (max-width: 767px) {
  .pb-45, .ph-45,
  .pa-45 {
    padding-bottom: 14.0625vw !important;
  }
}

.pl-45, .pw-45,
.pa-45 {
  padding-left: 45px !important;
}

@media only screen and (max-width: 767px) {
  .pl-45, .pw-45,
  .pa-45 {
    padding-left: 14.0625vw !important;
  }
}

.mt-50, .mh-50,
.ma-50 {
  margin-top: 50px !important;
}

@media only screen and (max-width: 767px) {
  .mt-50, .mh-50,
  .ma-50 {
    margin-top: 15.625vw !important;
  }
}

.mr-50, .mw-50,
.ma-50 {
  margin-right: 50px !important;
}

@media only screen and (max-width: 767px) {
  .mr-50, .mw-50,
  .ma-50 {
    margin-right: 15.625vw !important;
  }
}

.mb-50, .mh-50,
.ma-50 {
  margin-bottom: 50px !important;
}

@media only screen and (max-width: 767px) {
  .mb-50, .mh-50,
  .ma-50 {
    margin-bottom: 15.625vw !important;
  }
}

.ml-50, .mw-50,
.ma-50 {
  margin-left: 50px !important;
}

@media only screen and (max-width: 767px) {
  .ml-50, .mw-50,
  .ma-50 {
    margin-left: 15.625vw !important;
  }
}

.pt-50, .ph-50,
.pa-50 {
  padding-top: 50px !important;
}

@media only screen and (max-width: 767px) {
  .pt-50, .ph-50,
  .pa-50 {
    padding-top: 15.625vw !important;
  }
}

.pr-50, .pw-50,
.pa-50 {
  padding-right: 50px !important;
}

@media only screen and (max-width: 767px) {
  .pr-50, .pw-50,
  .pa-50 {
    padding-right: 15.625vw !important;
  }
}

.pb-50, .ph-50,
.pa-50 {
  padding-bottom: 50px !important;
}

@media only screen and (max-width: 767px) {
  .pb-50, .ph-50,
  .pa-50 {
    padding-bottom: 15.625vw !important;
  }
}

.pl-50, .pw-50,
.pa-50 {
  padding-left: 50px !important;
}

@media only screen and (max-width: 767px) {
  .pl-50, .pw-50,
  .pa-50 {
    padding-left: 15.625vw !important;
  }
}

.mb-100, .mh-100,
.ma-100 {
  margin-bottom: 100px !important;
}

.mw-auto {
  margin-left: auto !important;
  margin-right: auto !important;
}

/*  幅
================================================== */
.w-0 {
  width: 0% !important;
}

.w-5 {
  width: 5% !important;
}

.w-10 {
  width: 10% !important;
}

.w-15 {
  width: 15% !important;
}

.w-20 {
  width: 20% !important;
}

.w-25 {
  width: 25% !important;
}

.w-30 {
  width: 30% !important;
}

.w-35 {
  width: 35% !important;
}

.w-40 {
  width: 40% !important;
}

.w-45 {
  width: 45% !important;
}

.w-50 {
  width: 50% !important;
}

.w-55 {
  width: 55% !important;
}

.w-60 {
  width: 60% !important;
}

.w-65 {
  width: 65% !important;
}

.w-70 {
  width: 70% !important;
}

.w-75 {
  width: 75% !important;
}

.w-80 {
  width: 80% !important;
}

.w-85 {
  width: 85% !important;
}

.w-90 {
  width: 90% !important;
}

.w-95 {
  width: 95% !important;
}

.w-100 {
  width: 100% !important;
}

.input-w100 {
  width: 100px;
}

.input-w105 {
  width: 105px;
}

.input-w110 {
  width: 110px;
}

.input-w115 {
  width: 115px;
}

.input-w120 {
  width: 120px;
}

.input-w125 {
  width: 125px;
}

.input-w130 {
  width: 130px;
}

.input-w135 {
  width: 135px;
}

.input-w140 {
  width: 140px;
}

.input-w145 {
  width: 145px;
}

.input-w150 {
  width: 150px;
}

.input-w155 {
  width: 155px;
}

.input-w160 {
  width: 160px;
}

.input-w165 {
  width: 165px;
}

.input-w170 {
  width: 170px;
}

.input-w175 {
  width: 175px;
}

.input-w180 {
  width: 180px;
}

.input-w185 {
  width: 185px;
}

.input-w190 {
  width: 190px;
}

.input-w195 {
  width: 195px;
}

.input-w200 {
  width: 200px;
}

.input-w205 {
  width: 205px;
}

.input-w210 {
  width: 210px;
}

.input-w215 {
  width: 215px;
}

.input-w220 {
  width: 220px;
}

.input-w225 {
  width: 225px;
}

/*  em
================================================== */
.em-01 {
  color: black;
  font-weight: bold;
  font-style: normal;
}

.em-02 {
  color: #FFD8D8;
  font-weight: bold;
  font-style: normal;
}

.modal-bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  transition: opacity .3s;
}

.modal-bg.is-close {
  display: none;
}

.modal-bg.is-open {
  display: block;
  opacity: 0;
}

.modal-bg.is-open.is-show {
  opacity: 1;
}

.modal {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 101;
  background: white;
  padding: 40px 50px 40px;
  font-size: .85em;
  transition: opacity .3s;
  box-shadow: 0 0 0.8em 0 rgba(0, 0, 0, 0.25);
}

.modal.is-close {
  display: none;
}

.modal.is-open {
  display: block;
  opacity: 0;
}

.modal.is-open.is-show {
  display: block;
  opacity: 1;
}

.modal-inner {
  position: relative;
}

.modal-closeBtn {
  position: absolute;
  display: block;
  width: 30px;
  height: 30px;
  top: -25px;
  right: -35px;
  background: url(/assets/images/common/icon-close-s.png) center no-repeat;
  background-size: cover;
  transition: opacity .3s;
}

.modal-closeBtn:hover {
  opacity: .55;
}

.modal-closeBtn .visibilityHidden {
  visibility: hidden;
}

.boundary-list {
  display: table;
}

.boundary-list-row {
  display: table-row;
}

.boundary-list-row dt,
.boundary-list-row dd {
  display: table-cell;
  padding: .6em 0;
}

.boundary-list-row dt {
  white-space: nowrap;
  min-width: 12em;
  font-weight: bold;
  color: #007ac2;
  position: relative;
}

.boundary-list-row dt:after {
  content: "";
  display: inline-block;
  width: 13px;
  height: 6px;
  background: url(/assets/images/common/icon-categtory-arrow.png) center no-repeat;
  background-size: cover;
  position: absolute;
  right: 0;
  top: 1.4em;
  transform: translateY(-50%);
}

.boundary-list-row dt img {
  vertical-align: bottom;
  margin-right: .5em;
}

.boundary-list-row dd {
  padding-left: 1.8em;
  color: #444;
}

@media only screen and (max-width: 767px) {
  .modal {
    width: 95%;
    width: calc(100% - 6.25vw);
    padding: 9.375vw 6.25vw;
    padding-top: 12.5vw;
  }
  .modal-closeBtn {
    width: 4.6875vw;
    height: 4.6875vw;
    top: -9.375vw;
    right: -3.125vw;
  }
  .boundary-list-row dt,
  .boundary-list-row dd {
    font-size: 10px;
    font-size: 3.125vw;
  }
  .boundary-list-row dt img {
    width: 9.375vw;
    height: auto;
  }
  .boundary-list-row dt:after {
    width: 4.0625vw;
  }
}

.listV9-body .headingBorder {
  color: #666;
  font-size: 18px;
  border-bottom: solid 2px #e5e5e5;
  font-weight: 600;
  padding: 1em 0;
  margin-bottom: 1em;
}

@media only screen and (max-width: 767px) {
  .listV9-body .headingBorder {
    font-size: 15px;
    font-size: 4.6875vw;
  }
}

.flow-icon {
  margin: 40px auto;
  padding: 0;
  text-align: center;
}

.flow-icon img {
  margin: 0;
  width: 42px;
  height: 42px;
}

@media only screen and (max-width: 767px) {
  .flow-icon {
    margin: 9.375vw auto;
    padding: 0;
    text-align: center;
  }
  .flow-icon img {
    width: 13.125vw;
    height: 13.125vw;
  }
}

a[name] {
  display: block;
  padding-top: 120px;
  margin-top: -120px;
  z-index: -10;
  position: relative;
}

@media only screen and (max-width: 1023px) {
  a[name] {
    padding-top: 100px;
    margin-top: -100px;
  }
}

.main {
  overflow: hidden;
}

.boxNote {
  padding: 20px 10px;
  margin: 20px 0;
  background: rgba(237, 237, 237, 0.5);
}

@media only screen and (max-width: 767px) {
  .boxNote {
    margin: 3.125vw 0;
    padding: 3.125vw;
    font-size: 2.1875vw;
  }
}

.boxNote-heading {
  margin-bottom: .8em;
}

.listV9 > .boxNote:first-child {
  margin-bottom: 0;
  margin-top: 20px;
}

@media only screen and (max-width: 767px) {
  .listV9 > .boxNote:first-child {
    margin-top: 40px;
  }
}

@media only screen and (max-width: 767px) {
  .scrollWrap {
    width: 100%;
    overflow-x: scroll;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    cursor: move;
  }
  .scrollWrap > * {
    min-width: 700px;
  }
}

.imageCaption img {
  margin: 0;
}

.imageCaption figcaption {
  border-top: solid 1px #78c5fb;
  margin-top: 1em;
  padding-top: 1em;
  color: #78c5fb !important;
}

@media only screen and (max-width: 767px) {
  .imageCaption figcaption {
    margin-top: .5em;
    padding-top: .5em;
  }
}

.imageCaption figcaption * {
  line-height: 1.2;
  color: #78c5fb !important;
}

.imageCaption figcaption em {
  font-size: 1.5em;
  font-style: normal;
}

@media only screen and (max-width: 767px) {
  .imageCaption figcaption em {
    font-size: 1.1em;
  }
}

.imageCaption figcaption em strong {
  font-size: 1.8em;
  margin-right: .2em;
}

@media only screen and (max-width: 767px) {
  .imageCaption figcaption em strong {
    font-size: 1.3em;
  }
}

.imageCaption.v-02 figcaption {
  border-top: none;
  margin-top: 1em;
}

.descriptionboxV1 {
  display: table;
  width: 100%;
  padding: 2em 0 1em;
}

@media only screen and (max-width: 767px) {
  .descriptionboxV1 {
    padding: 1em 0 0;
  }
}

.descriptionboxV1 img {
  margin: 0;
}

.descriptionboxV1_figure, .descriptionboxV1_body {
  display: table-cell;
  vertical-align: middle;
}

.descriptionboxV1_figure {
  white-space: nowrap;
  width: 30%;
}

@media only screen and (max-width: 767px) {
  .descriptionboxV1_figure {
    text-align: center;
    width: 25%;
  }
}

.descriptionboxV1_figure img {
  max-width: inherit;
  width: 70%;
}

.descriptionboxV1_body {
  text-align: left;
  padding-left: 1em;
}

.descriptionboxV1_body p {
  line-height: 1.4;
  letter-spacing: 0;
}

@media only screen and (min-width: 768px) {
  .row.v-col2 > .row_col:not(:first-child):not(:nth-child(2)) .descriptionboxV1 {
    border-top: solid 1px #66bfff;
  }
}

@media only screen and (max-width: 767px) {
  .row.v-col2 > .row_col:not(:first-child) .descriptionboxV1 {
    border-top: solid 1px #66bfff;
  }
}

.descriptionboxV2 img {
  margin: 0;
}

.descriptionboxV2_head {
  border-bottom: solid 1px #66bfff;
}

.descriptionboxV2_ttl {
  font-size: 16px !important;
  font-weight: bold !important;
  color: #66bfff !important;
  padding-bottom: 1em !important;
}

@media only screen and (max-width: 767px) {
  .descriptionboxV2_ttl {
    font-size: 3.75vw !important;
    padding-bottom: 0.5em !important;
  }
}

.descriptionboxV2_figure {
  display: block;
  padding: 1em;
  /* border-top: solid 1px #66bfff; */
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .descriptionboxV2_figure {
    padding: .5em;
  }
}

@media only screen and (max-width: 767px) {
  .descriptionboxV2_figure img {
    width: 60%;
  }
}

.descriptionboxV2_figure + .descriptionboxV2_body {
  margin-top: 1em;
}

@media only screen and (max-width: 767px) {
  .descriptionboxV2_figure + .descriptionboxV2_body {
    margin-top: 0;
  }
}

@media only screen and (max-width: 767px) {
  .descriptionboxV2_body {
    font-size: 3.75vw !important;
  }
}

.descriptionboxV2_body dl {
  line-height: 1.4;
  color: #666;
}

.descriptionboxV2_body dl dt {
  font-weight: bold;
  margin-bottom: .5em;
}

.tableUniqueV01 {
  width: 100%;
  font-size: 13px;
  border-collapse: separate;
  border-spacing: 3px;
  background: white;
  table-layout: fixed;
}

.tableUniqueV01 tr > th {
  background: #666;
  text-align: center;
  vertical-align: middle;
  color: white;
  padding: .5em 1em;
}

.tableUniqueV01 tr > th figure img {
  margin: 0;
}

.tableUniqueV01 tr > th figure figcaption {
  margin-top: .5em;
}

.tableUniqueV01 tr > td {
  padding: 1.2em .8em;
  border-bottom: solid 2px #666;
  vertical-align: top;
  color: #666666;
}

.tableUniqueV01 tr > td:before {
  content: "";
  display: inline;
  width: 0;
  height: 120px;
  background: transparent;
}

.tableUniqueV01 tr > td dl {
  display: inline-block;
}

.tableUniqueV01 tr > td dl dt {
  color: #666;
  min-height: 3.2em;
}

.tableUniqueV01 tr > td dl dt,
.tableUniqueV01 tr > td dl dd {
  line-height: 1.6;
  min-height: 2.5em;
}

.tableUniqueV01.ty-01 tr > th {
  background: #ffd275;
}

.tableUniqueV01.ty-01 tr > td {
  border-bottom: solid 2px #ffd275;
}

.tableUniqueV01.ty-01 tr > td dl dt {
  color: #f2ab4c;
}

.tableUniqueV01.ty-02 tr > th {
  background: #c8e6e2;
}

.tableUniqueV01.ty-02 tr > td {
  border-bottom: solid 2px #c8e6e2;
}

.tableUniqueV01.ty-02 tr > td dl dt {
  color: #44aa9b;
}

@media only screen and (max-width: 767px) {
  .tableUniqueV01 {
    font-size: 4.0625vw;
    display: block;
  }
  .tableUniqueV01 tbody,
  .tableUniqueV01 tr {
    display: block;
    width: 100%;
  }
  .tableUniqueV01 tr > td:before {
    display: none;
  }
  .tableUniqueV01 th,
  .tableUniqueV01 td {
    display: block;
    width: 100%;
  }
  .tableUniqueV01 th img {
    max-width: 15vw;
  }
  .tableUniqueV01 tr:not(:first-child) > th:first-child {
    margin-top: 2em;
  }
  .tableUniqueV01 td:empty {
    display: none;
  }
}

.tableUniqueV01-boxs {
  letter-spacing: -.5em;
}

.tableUniqueV01-box {
  letter-spacing: normal;
  display: inline-block;
  width: 25%;
}

.tableUniqueV02 {
  border-collapse: separate;
  border-spacing: .2em;
}

.tableUniqueV02 thead th,
.tableUniqueV02 thead td,
.tableUniqueV02 tbody th,
.tableUniqueV02 tbody td {
  text-align: center;
  font-size: 12px;
  padding: .8em .4em;
}

.tableUniqueV02 thead th {
  background: #f5f5f5;
}

.tableUniqueV02 thead th figure img {
  margin-top: .5em;
}

.tableUniqueV02 tbody th,
.tableUniqueV02 tbody td {
  background: #f5f5f5;
}

.tableUniqueV03 {
  width: 100%;
  color: #6AC0FC;
  border-collapse: separate;
  border-spacing: 10px;
  margin: 20px auto;
  table-layout: fixed;
}

@media only screen and (max-width: 767px) {
  .tableUniqueV03 {
    border-spacing: 3.125vw;
    margin: 3.125vw auto;
  }
}

.tableUniqueV03 thead th {
  border-bottom: solid 2px #6AC0FC;
  font-weight: bold;
  padding: 20px 0;
}

@media only screen and (max-width: 767px) {
  .tableUniqueV03 thead th {
    padding: 3.125vw 0;
    font-size: 3.75vw;
  }
}

.tableUniqueV03 thead th span {
  font-size: .8em;
}

.tableUniqueV03 tbody tr th,
.tableUniqueV03 tbody tr td {
  font-size: 14px;
  padding: 20px 0;
  vertical-align: top;
}

@media only screen and (max-width: 767px) {
  .tableUniqueV03 tbody tr th,
  .tableUniqueV03 tbody tr td {
    padding: 3.125vw 0;
    font-size: 3.75vw;
  }
}

.tableUniqueV03 tbody dl {
  line-height: 1.2;
}

.tableUniqueV03 tbody dl dt {
  font-weight: bold;
}

.tableUniqueV03 tbody dl dt strong {
  font-size: 3em;
  padding-top: .2em;
}

@media only screen and (max-width: 767px) {
  .tableUniqueV03 tbody dl dt strong {
    font-size: 2em;
  }
}

.tableUniqueV03 tbody dl dt strong + span {
  font-size: 1.5em;
  margin-left: .2em;
}

.tableUniqueV03 tbody dl dd {
  padding-top: .2em;
  color: #666;
}

.tableUniqueV03 tbody tr:not(:last-child) td,
.tableUniqueV03 tbody tr:not(:last-child) th {
  border-bottom: solid 1px #6AC0FC;
}

.csrUniqueV01-box:not(:first-child) {
  margin-top: 2em;
}

.csrUniqueV01-hdg {
  background: #6ABFFB;
  color: white;
  position: relative;
  padding: .8em .6em;
  padding-right: 40px;
  margin-bottom: 1.5em;
}

@media only screen and (max-width: 767px) {
  .csrUniqueV01-hdg {
    padding-right: 7.8125vw;
  }
}

.csrUniqueV01-icon {
  position: absolute;
  right: 10px;
  top: 50%;
  transform-origin: right center;
  transform: translateY(-50%) scale(0.5);
}

@media only screen and (max-width: 767px) {
  .csrUniqueV01-icon {
    right: 1.5625vw;
    transform: translateY(-50%);
  }
}

.csrUniqueV01-icon img {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .csrUniqueV01-icon img {
    width: 6.25vw;
  }
}

.csrUniqueV01-cont {
  line-height: 1.4;
}

.csrUniqueV01-row {
  letter-spacing: -.5em;
  margin: 20px -1em;
  font-size: 13px;
}

@media only screen and (max-width: 767px) {
  .csrUniqueV01-row {
    font-size: 3.75vw;
  }
}

.csrUniqueV01-col {
  letter-spacing: normal;
  display: inline-block;
  vertical-align: top;
  width: 50%;
  padding: 0 1em;
}

.csrUniqueV01-map {
  position: relative;
  padding-bottom: 1em;
}

.csrUniqueV01-map-box {
  position: absolute;
  right: 0;
  bottom: 1em;
  background: blue;
  background: url(/assets/images/csr/environment/management/bg-arrow.png) center bottom;
  background-size: cover;
  padding: 1em 1em 3em;
  width: 45%;
  width: calc(50% - 1em);
}

.csrUniqueV01-map-box p {
  color: white;
  font-size: 13px;
}

.csrUniqueV01-map-labels {
  letter-spacing: -.5em;
  text-align: center;
  margin-bottom: 1em;
}

.csrUniqueV01-map-label {
  font-size: 13px;
  font-weight: bold;
  letter-spacing: normal;
  display: inline-block;
  background: white;
  color: #6ABFFB !important;
  padding: .4em 1.2em;
  margin: 0 .2em;
}

.u-csr_environment_eco-friendly-01 {
  margin: 20px 0;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 {
    margin: 6.25vw 0;
  }
}

.u-csr_environment_eco-friendly-01 .heading {
  position: relative;
  padding-bottom: 40px;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .heading {
    padding-bottom: 6.25vw;
  }
}

.u-csr_environment_eco-friendly-01 .heading:after {
  content: "";
  display: block;
  width: 220px;
  height: 130px;
  background: url(/assets/images/csr/environment/eco-friendly/ecoFriendly-02-02.png) right bottom no-repeat;
  position: absolute;
  bottom: 0;
  right: 0;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .heading:after {
    width: 31.25vw;
    background-size: contain;
  }
}

.u-csr_environment_eco-friendly-01 .heading .caption img {
  margin: 0 0 40px;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .heading .caption img {
    width: 31.25vw;
    margin-bottom: 6.25vw;
  }
}

.u-csr_environment_eco-friendly-01 .heading .caption p {
  color: #6abffb;
  font-weight: bold;
  font-size: 18px;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .heading .caption p {
    font-size: 3.4375vw;
  }
}

.u-csr_environment_eco-friendly-01 .body .ttl {
  font-size: 14px;
  font-weight: bold;
  padding: .4em .5em;
  margin-bottom: 2em;
  color: white;
  background: #6abffc;
  background: -moz-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: -webkit-gradient(left top, right top, color-stop(0%, #6abffc), color-stop(100%, #6aedfc));
  background: -webkit-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: -o-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: -ms-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: linear-gradient(to right, #6abffc 0%, #6aedfc 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6abffc', endColorstr='#6aedfc', GradientType=1);
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .ttl {
    margin-bottom: 1em;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail {
  display: table;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail {
    display: block;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-01, .u-csr_environment_eco-friendly-01 .body .detail-02 {
  display: table-cell;
  vertical-align: top;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-01, .u-csr_environment_eco-friendly-01 .body .detail-02 {
    display: block;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-01 {
  width: 50%;
  padding-right: 5%;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-01 {
    width: 100%;
    padding-right: 0;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-01 figure {
  text-align: center;
}

.u-csr_environment_eco-friendly-01 .body .detail-01 figure img {
  margin: 30px 0;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-01 figure img {
    margin: 1.5625vw 0;
    max-width: 46.875vw;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-01 figure figcaption {
  text-align: left;
  color: #666;
  line-height: 1.6;
  font-size: 14px;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-01 figure figcaption {
    font-size: 3.75vw;
  }
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-02 {
    margin-top: 1em;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl {
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-02 dl {
    font-size: 3.75vw;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl + dl {
  margin-top: 1em;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl dt {
  width: 100%;
  border-bottom: solid 1px #96d2fc;
  line-height: 2;
  margin-bottom: .5em;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl dt img {
  margin: 0;
  vertical-align: bottom;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl dt img:first-child {
  margin-left: 1em;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl dt img:not(:first-child) {
  margin-left: .5em;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail-02 dl dt img {
    height: 12.5vw;
  }
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl dd {
  padding-left: 3em;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl dd strong {
  font-size: 3.5em;
  margin-right: .2em;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl:first-child dt {
  color: #666;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl:first-child dd {
  color: #b4dffd;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl:last-child dt {
  color: #6abffb;
}

.u-csr_environment_eco-friendly-01 .body .detail-02 dl:last-child dd {
  color: #6abffb;
}

.u-csr_environment_eco-friendly-01 .body .detail + .ttl {
  margin-top: 6em;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-01 .body .detail + .ttl {
    margin-top: 3em;
  }
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-02 .row_col:not(:first-child) {
    margin-top: 3em;
  }
}

.u-csr_environment_eco-friendly-02 .box .ttl {
  font-size: 14px;
  font-weight: bold;
  padding: 1.2em .5em;
  margin-bottom: 1em;
  color: white;
  background: #6abffc;
  background: -moz-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: -webkit-gradient(left top, right top, color-stop(0%, #6abffc), color-stop(100%, #6aedfc));
  background: -webkit-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: -o-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: -ms-linear-gradient(left, #6abffc 0%, #6aedfc 100%);
  background: linear-gradient(to right, #6abffc 0%, #6aedfc 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#6abffc', endColorstr='#6aedfc', GradientType=1);
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-02 .box .ttl {
    margin-bottom: 1em;
    font-size: 4.0625vw;
  }
}

.u-csr_environment_eco-friendly-02 .box .ttl + figure > img {
  margin: 0;
}

.u-csr_environment_eco-friendly-02 .box .detail .caption {
  font-size: 12px;
  font-weight: bold;
  color: #666;
  border-bottom: solid 1px #6ac0fc;
  margin: .5em 0 1em;
  padding: .5em 0;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-02 .box .detail .caption {
    font-size: 3.75vw;
  }
}

.u-csr_environment_eco-friendly-02 .box .detail table {
  font-size: 14px;
  color: #666;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .u-csr_environment_eco-friendly-02 .box .detail table {
    font-size: 3.75vw;
  }
}

.u-csr_environment_eco-friendly-02 .box .detail table th,
.u-csr_environment_eco-friendly-02 .box .detail table td {
  padding: .6em 0;
  font-weight: bold;
}

.u-csr_environment_eco-friendly-02 .box .detail table tbody th {
  color: #6abffb;
}

.u-csr_environment_eco-friendly-02 .box .detail table tbody td span {
  font-size: 1.2em;
}

.u-csr_environment_eco-friendly-02 .box .detail table tbody td span em {
  color: #6abffb;
  font-size: 2em;
  font-style: normal;
  font-weight: bold;
}

.u-csr_environment_eco-friendly-02 .box .detail table tbody td span em strong {
  font-size: 1.5em;
}

.u-csr_environment_eco-friendly-02 .box .detail table tbody td small {
  margin-bottom: -1.4em;
  display: block;
}

@media only screen and (max-width: 767px) {
  .chart-06 .canvas-holder canvas,
  .chart-04 .canvas-holder canvas {
    min-height: 90.625vw;
  }
}

.not_en:lang(en) {
  display: none !important;
}

br.is-sp {
  display: none;
}

@media only screen and (max-width: 767px) {
  br.is-sp {
    display: block;
  }
}

.table-link a {
  position: relative;
  display: inline-block;
  margin: 20px 0;
  padding: 0 0 0 40px;
  font-size: 16px;
  color: #66bfff;
  line-height: 30px;
  opacity: 1;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.table-link a:before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  display: inline-block;
  width: 30px;
  height: 30px;
  content: '';
  background-image: url(/assets/images/common/icon-more-blue.png);
  background-size: 100% 100%;
}

.table-link a:hover {
  text-decoration: none;
  opacity: .5;
  -webkit-transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
  transition: opacity 400ms cubic-bezier(0.75, 0.02, 0.5, 1);
}

.listV4-body .table-link:last-child a {
  margin: 55px 0 0;
}

.tableV5 + .table-link a {
  margin: 0;
}

.tableV5 + .table-link {
  margin: 50px 0 0;
}

@media only screen and (max-width: 767px) {
  .tableV5 + .table-link a {
    margin: 0;
  }
  .tableV5 + .table-link {
    margin: 20px 0 0;
  }
}

@media only screen and (max-width: 767px) {
  .table-link a {
    margin: 3.125vw 0;
    padding: 0 0 0 6.25vw;
    font-size: 12px;
    font-size: 3.75vw;
    line-height: 1.4;
  }
  .table-link a:before {
    width: 4.6875vw;
    height: 4.6875vw;
  }
  .listV4-body .table-link:last-child a {
    margin: 7.8125vw 0 0;
  }
}

.hero--shadow {
  text-shadow: 0 0 0.5em rgba(0, 0, 0, 0.4), 0 0 1em rgba(0, 0, 0, 0.4);
}

.ck-holdings-content .main.no-heroV3{
  position: static;
  padding-top: 110px;
  padding-bottom: 50px;
  transform: translate(0, 0);
}
.ck-holdings-content .footerV2{
  position: static;
}
@media only screen and (max-width: 767px){
  .ck-holdings-content .main.no-heroV3{
    padding: 50px 0 15.625vw;
  }
  .ck-holdings-content .footerV2{
    padding: 0 9.375vw;
  }
}

.color-txt {
  margin-bottom: 30px;
}
.color-txt p {
  color: #108cc2;
  font-weight: bold;
  line-height: 1.5;
}
.color-txt p + p {
  margin: 0;
}
.color-txt .txt-main {
  font-size: 49px;
}
.color-txt .txt-sub {
  font-size: 26px;
}
@media only screen and (max-width: 767px) {
  .color-txt .txt-main {
    font-size: 2em;
  }
  .color-txt .txt-sub {
    font-size: 1.5em;
  }
}

.columnV2 {
  width: 100%;
}
.columnV2:after {
  content: "";
  display: block;
  clear: both;
}
.columnV2-item-left {
  width: 176px;
  float: left;
}
.columnV2-item-right {
    overflow: hidden;
}
.columnV2-item-right ul {
  font-size: 15px;
}
@media only screen and (max-width: 767px) {
  .columnV2-item-left {
    width: 100%;
    float: none;
  }
  .columnV2-item-left .sdgs-icon {
    margin-top: 0 !important;
  }
  .columnV2-item-right ul {
    margin-left: 0;
    font-size: 14px;
  }
}

/*--------------------------------------------------------------------------------
green-challenge
--------------------------------------------------------------------------------*/
.green-challenge .main {
  padding-bottom: 0;
}
.green-challenge .hero {
  background: #fafafa;
}
.green-challenge .hero[data-category="csr-environment-management"] .hero-inner {
  text-shadow: none;
}
.green-chllenge-font {
  font-family: 'Arial',YuGothic,'Yu Gothic','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,'ＭＳ ゴシック',sans-serif;
}
.green-chllenge-font2 {
  color: #666;
}
.green-challenge-area {
  padding: 10px;
}
.green-challenge-region-area {
  margin: 0 10px;
}
.green-challenge-panel {
  background: url(/assets/images/csr/environment/green-challenge/bg_1.png);
  background-size: cover;
  background-position: center center;
  width: 100%;
  padding-top: 50.7%;
  position: relative;
  min-height: 430px;
  /*text-shadow: 0 0 10px #000;*/
}
.green-challenge-panel-descriptions {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translate(-50%,-50%);
  -webkit-transform: translate(-50%,-50%);
  -o-transform: translate(-50%,-50%);
  -ms-transform: translate(-50%,-50%);
  transform: translate(-50%,-50%);
  width: 95%;
}
.green-challenge-icon {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.green-challenge-icon li:nth-of-type(n+2) {
  margin-left: 14px;
}
.green-challenge-icon li a {
  display: block;
  width: 5.8vw;
}
.green-challenge-icon li a img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.green-challenge-panel-text {
  margin-top: 4%;
  padding-bottom: 3%;
  font-size: 1.65vw;
  text-align: center;
  line-height: 2.35;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .green-challenge .hero {
    height: auto;
    padding: 36vw 0 11.5vw;
  }
  .green-challenge .hero-inner {
    position: static;
    transform: none;
  }
  .green-challenge-area {
    padding: 5px;
  }
  .green-challenge-region-area {
    margin: 0 5px;
    background: #fff;
  }
  .green-challenge-icon li a {
    width: 80px;
    width: 19.3vw;
  }
  .green-challenge-icon li:nth-of-type(n+2) {
    margin-left: 0;
  }
  .green-challenge-panel {
    padding-top: 165.6%;
  }
  .green-challenge-panel-text {
    font-size: 4.8vw;
    text-align: center;
    line-height: 2.1;
    color: #fff;
  }
  .green-challenge-en .green-challenge-panel {
    padding-top: 190.6%;
  }
}

.green-challenge-region-column {
  width: 100%;
  margin-bottom: 10px;
}
.green-challenge-region-column-item {
  position: relative;
  width: 50%;
}
.green-challenge-region-column-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.green-challenge-region-column-heading {
  font-size: 1.7vw;
  font-weight: bold;
  line-height: 1.6;
  color: #666;
}
.green-challenge-region-column-heading span {
  font-size: 0.8vw;
  font-family: arial;
}
.green-challenge-region-column-heading-icon {
  display: inline-block;
  width: 4.2vw;
  margin-right: 1.3vw;
  margin-top: 0.6vw;
}
.green-challenge-region-column-heading-icon img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
.green-challenge-region-dl {
  margin-top: 2.6vw;
}
.green-challenge-region-dl dt {
  font-size: 1vw;
  font-weight: bold;
  padding-bottom: 1em;
  color: #444;
}
.green-challenge-target-unit_txt {
  font-size: 1.1vw;
}
.green-challenge-region-aim {
  font-size: 1.4vw;
  font-weight: bold;
  line-height: 1.8;
  color: #666;
}
.green-challenge-list-num {
  list-style-type: decimal;
  position:relative;
  padding-left: 1em;
  font-size: 1.1vw;
  color: #444;
}
.green-challenge-list-num:before {
  width: 1em;
  display:block;
  position:absolute;
  left:0;
}
.green-challenge-target-unit-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
}
.green-challenge-target-unit dt {
  font-size: 0.8vw;
  font-weight: bold;
  color: #039013;
}
.green-challenge-target-unit dd {
  font-size: 1vw;
  font-weight: bold;
  line-height: 1.66;
  color: #039013;
}
.green-challenge-target-unit dd span {
  font-size: 4.3vw;
  line-height: 1;
  font-weight: normal;
  padding-left: 0.4em;
}
.green-challenge-region-column-img img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}
@media only screen and (max-width: 767px) {
  .green-challenge-region-column {
    margin-bottom: 10px;
  }
  .green-challenge-region-column-item {
    width: 100%;
  }
  .green-challenge-region-descriptions {
    padding: 10vw 5vw;
  }
  .green-challenge-region-column-item:nth-of-type(n+2) {
    width: 95.3%;
    background: #fafafa;
    position: relative;
    margin: -70px auto 0;
  }
  .green-challenge-region-column-heading-icon {
    width: 58px;
    margin-right: 0;
    margin-top: 8px;
  }
  .green-challenge-region-column-heading {
    font-size: 5.8vw;
    margin-left: 4vw;
    width: calc( 100% - 75px );
  }
  .green-challenge-region-column-heading span {
    font-size: 2.8vw;
  }
  .green-challenge-region-dl {
    margin-top: 9.5vw;
  }
  .green-challenge-region-dl dt {
    font-size: 3.4vw;
  }
  .green-challenge-region-aim {
    font-size: 4.85vw;
  }
  .green-challenge-list-num {
    font-size: 3.4vw;
  }
  .green-challenge-target-unit_txt {
    font-size: 3.4vw;
  }
  .green-challenge-target-unit-list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .green-challenge-target-unit dt {
    font-size: 2.8vw;
  }
  .green-challenge-target-unit dd {
    font-size: 3.4vw;
  }
  .green-challenge-target-unit dd span {
    font-size: 15vw;
  }
}
@media only screen and (min-width: 768px) {
  .green-challenge-region-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    background: #fafafa;
  }
  .green-challenge-region-column-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
  }
  .green-challenge-region-descriptions {
    padding: 3% 3% 3% 15%;
  }
  .green-challenge-target-unit-list li:nth-of-type(n+2) {
    margin-left: 3.7vw;
  }
}

.challenge01,.challenge03 {
  position: relative;
  right: -18.3%;
  /*transition: all 1500ms 0s ease;*/
  transition: .5s;
  opacity: 0;
}
.challenge01.move,.challenge03.move {
  right: 0;
  opacity: 1;
}
.challenge02,.challenge04 {
  position: relative;
  left: -18.3%;
  /*transition: all 1500ms 0s ease;*/
  transition: .7s;
  opacity: 0;
}
.challenge02.move,.challenge04.move {
  left: 0;
  opacity: 1;
}
