@charset "utf-8";

/*
  File Name   : company.css
  Description : コンテンツエリア関係 他
*/

/* com-kv-wrap
============================================================ */
.com-kv-wrap {
  background: url(../img/company/kv-img.jpg) center no-repeat;
  background-size: cover;
}
/* sp
------------------------------------------------------------ */
@media screen and (max-width: 1201px) {
  .com-kv-wrap {
    background: url(../img/company/kv-img-sp.jpg) center no-repeat;
    background-size: cover;
  }
}

/* index
============================================================ */
/* index-wrap-A */
.index-wrap-A ul {
  display: flex;
  flex-wrap: wrap;
}
.index-wrap-A li {
  width: calc((100% - 20px * 2) / 3);
  margin-right: 20px;
  text-align: center;
  padding: 0 20px 25px;
  border-radius: 10px;
  background-color: #fff;
  box-shadow: 0 5px 8px 0 rgba(0, 0, 0, .05);
}
.index-wrap-A li:last-child {
  margin-right: 0;
}
.index-wrap-A li .number {
  font-size: 20px;
  font-weight: bold;
  line-height: 1;
  color: #fff;
  padding: 20px 5px 0;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  background-color: #d36900;
  display: inline-block;
  margin-bottom: 16px;
  margin-top: -10px;
}
.index-wrap-A li .text {
  font-weight: bold;
}

/* index-wrap-B */
.index-wrap-B {
  margin-top: 100px;
}
.index-wrap-B .com-flex-box {
  flex-direction: row-reverse;
}
.index-wrap-B .img-block {
  width: 580px;
  border-radius: 5px;
  overflow: hidden;
}
.index-wrap-B .desc-block {
  width: calc(100% - 580px);
  padding-right: 40px;
}
.index-wrap-B .desc-block .text-B {
  font-weight: bold;
  margin-top: 25px;
}
.index-wrap-B .desc-block .text-C {
  font-size: 30px;
  font-weight: bold;
  line-height: 1;
  margin-top: 5px;
}

/* index-wrap-C */
.index-wrap-C {
  margin-top: 100px;
}

/* index-wrap-D */
.section-base.-D {
  margin-top: 100px;
}
.index-wrap-D-outer {
  position: relative;
  height: 326px;
}
.index-wrap-D {
  width: calc(50% + 640px);
  position: absolute;
  top: 0;
  left: calc(50% - 640px);
}
.index-wrap-D .histry-wrap .table-inner {
  /* overflow-x: scroll; */
}
.index-wrap-D .histry-wrap ul {
  display: flex;
  width: calc(280px * 35);
  padding-bottom: 30px;
}
.index-wrap-D .histry-wrap li {
  width: 230px;
  margin-right: 50px;
  padding: 20px 30px 30px;
  border-radius: 5px;
  background-color: #fff;
  box-shadow: 0 5px 8px 0 rgba(0, 0, 0, .05);
  position: relative;
}
.index-wrap-D .histry-wrap li:last-child {
  margin-right: 0;
}
.index-wrap-D .histry-wrap li::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -30px;
  transform: translateY(-50%);
  width: 12px;
  height: 24px;
  background: url(../img/company/icon-histry-arrow.svg) 0 0 no-repeat;
  background-size: 12px;
}
.index-wrap-D .histry-wrap li:last-child:after {
  display: none;
}
.index-wrap-D .histry-wrap li .text-A {
  font-weight: bold;
  text-align: center;
  position: relative;
  padding-bottom: 18px;
  margin-bottom: 20px;
}
.index-wrap-D .histry-wrap li .text-A::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 20px;
  height: 2px;
  background-color: #d36900;
}
.index-wrap-D .histry-wrap li .text-A span {
  font-size: 30px;
}

/* js-scroll-hint */
.index-wrap-D .js-scroll-hint {
  /* overflow: visible !important; */
}
.index-wrap-D .scroll-hint-text {
  white-space: nowrap !important;
}
.scroll-hint-icon-wrap {
  display: none;
}

/* index-wrap-E */
.index-wrap-E {
  margin-top: 100px;
}
.index-wrap-E .map-bottom {
  margin-top: 30px;
  padding: 25px 30px;
  background-color: #fff;
  border-radius: 5px;
}
.index-wrap-E .map-bottom .com-flex-box {
  align-items: center;
}
.index-wrap-E .map-bottom .info-block {
  width: calc(100% - 580px);
  padding-right: 40px;
}
.index-wrap-E .map-bottom .info-block {
  position: relative;
  padding-left: 90px;
}
.index-wrap-E .map-bottom .info-block .title {
  font-weight: bold;
  position: absolute;
  top: 0;
  left: 0;
}
.index-wrap-E .map-bottom .info-block .text a {
  color: #d36900;
}
.index-wrap-E .map-bottom .link-block {
  width: 600px;
  margin-left: auto;
}
.index-wrap-E .map iframe {
  width: 100%;
  height: 500px;
}

@media screen and (max-width: 1381px) {
  .index-wrap-D {
    width: 100%;
    position: static;
    padding-left: 40px;
  }
}

/* sp
------------------------------------------------------------ */
@media screen and (max-width: 1201px) {
  .index-wrap-A ul {
    display: block;
    padding-left: 15px;
  }
  .index-wrap-A li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
    text-align: left;
    padding: 20px 30px 25px 50px;
    position: relative;
  }
  .index-wrap-A li:last-child {
    margin-bottom: 0;
  }
  .index-wrap-A li .number {
    text-align: center;
    padding: 15px 5px 0;
    width: 50px;
    height: 50px;
    margin-bottom: 0;
    margin-top: 0;
    position: absolute;
    top: 50%;
    left: -15px;
    transform: translateY(-50%);
  }
  .index-wrap-A li .text br {
    display: none;
  }

  /* index-wrap-B */
  .index-wrap-B {
    margin-top: 60px;
  }
  .index-wrap-B .com-flex-box {
    display: block;
  }
  .index-wrap-B .img-block {
    width: 100%;
  }
  .index-wrap-B .desc-block {
    width: 100%;
    padding-right: 0;
    margin-top: 30px;
  }
  .index-wrap-B .desc-block .text-B {
    font-weight: bold;
    margin-top: 25px;
  }
  .index-wrap-B .desc-block .text-C {
    font-size: 30px;
    font-weight: bold;
    line-height: 1;
    margin-top: 5px;
  }

  /* index-wrap-D */
  .section-base.-D {
    margin-top: 60px;
  }
  .index-wrap-D-outer {
    position: relative;
    height: 326px;
  }
  .index-wrap-D {
    width: 100%;
    position: static;
    padding-left: 20px;
  }
  .index-wrap-D .histry-wrap .table-inner {
    /* overflow-x: auto; */
  }
  .index-wrap-D .histry-wrap ul {
    display: flex;
    padding-bottom: 30px;
  }
  .index-wrap-D .histry-wrap li {
    width: 230px;
    margin-right: 50px;
    padding: 20px 30px 30px;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 5px 8px 0 rgba(0, 0, 0, .05);
    position: relative;
  }
  .index-wrap-D .histry-wrap li:last-child {
    margin-right: 0;
  }
  .index-wrap-D .histry-wrap li::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -30px;
    transform: translateY(-50%);
    width: 12px;
    height: 24px;
    background: url(../img/company/icon-histry-arrow.svg) 0 0 no-repeat;
    background-size: 12px;
  }
  .index-wrap-D .histry-wrap li:last-child:after {
    display: none;
  }
  .index-wrap-D .histry-wrap li .text-A {
    font-weight: bold;
    text-align: center;
  }
  .index-wrap-D .histry-wrap li .text-A span {
    font-size: 30px;
  }

  /* js-scroll-hint */
  .index-wrap-D .js-scroll-hint {
    width: calc(100% + 20px);
    margin-right: -20px;
    overflow-x: auto !important;
    overflow-y: visible !important;
  }
  .index-wrap-D .js-scroll-hint ul {
    position: relative;
  }
  .index-wrap-D .js-scroll-hint ul::after {
    content: "";
    position: absolute;
    top: 0;
    left: 100%;
    width: 20px;
    height: 100%;
    background-color: #faf7f5;
    display: block;
  }
  .index-wrap-D .js-scroll-hint .table-inner {
    /* white-space: nowrap; */
  }
  .scroll-hint-icon-wrap {
    display: block;
  }
  .index-wrap-D .scroll-hint-text {
    font-weight: bold !important;
    color: #554137 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
  .index-wrap-D .scroll-hint-icon {
    top: 34% !important;
    background: rgba(255, 255, 255, .9) !important;
    padding: 15px 10px 10px 10px !important;
  }
  .index-wrap-D .scroll-hint-icon:before {
    position: relative !important;
    top: -5px !important;
    width: 24px !important;
    height: 24px !important;
    color: #554137 !important;
    background-image: url(../img/common/scroll-hint-icon.svg) !important;
  }
  .index-wrap-D .scroll-hint-icon:after {
    display: none !important;
  }

  /* index-wrap-E */
  .index-wrap-E {
    margin-top: 100px;
  }
  .index-wrap-E .map-bottom {
    margin-top: 30px;
    padding: 25px 30px;
    background-color: #fff;
    border-radius: 5px;
  }
  .index-wrap-E .map-bottom .com-flex-box {
    display: block;
  }
  .index-wrap-E .map-bottom .info-block {
    width: 100%;
    padding-right: 0;
  }
  .index-wrap-E .map-bottom .info-block {
    position: relative;
    padding-left: 0;
  }
  .index-wrap-E .map-bottom .info-block .title {
    position: static;
    margin-bottom: 5px;
  }
  .index-wrap-E .map-bottom .info-block .text a {
    text-decoration: underline;
  }
  .index-wrap-E .map-bottom .link-block {
    width: 100%;
    margin-left: 0;
    margin-top: 30px;
  }
  .index-wrap-E .map iframe {
    height: 230px;
  }
}

/* factory
============================================================ */
/* factory-page-links-wrap */
.factory-page-links-wrap ul {
  display: flex;
  flex-wrap: wrap;
}
.factory-page-links-wrap li {
  width: calc((100% - 15px *4) / 5);
  margin-right: 15px;
}
.factory-page-links-wrap li:nth-child(5n) {
  margin-right: 0;
}
.factory-page-links-wrap li:nth-child(n + 6) {
  margin-top: 15px;
}
.factory-page-links-wrap li a {
  color: #d36900;
  line-height: 1;
  text-align: center;
  padding: 20px 20px;
  border-radius: 50px;
  background-color: #fff;
  display: block;
  position: relative;
}
.factory-page-links-wrap li a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  width: 10px;
  height: 6px;
  background: url(../img/common/icon-page-links.svg) 0 0 no-repeat;
  background-size: 10px auto;
}
.factory-page-links-wrap li a:hover {
  text-decoration: none;
  opacity: .7;
}

/* factory-list-links-wrap */
.factory-list-links-wrap {
  margin-top: 60px;
}
.factory-list-links-wrap .factory-item {
  margin-bottom: 50px;
  padding-bottom: 50px;
  border-bottom: dashed 1px #d36900;
}
.factory-list-links-wrap .factory-item:last-child {
  margin-bottom: 0;
}
.factory-list-links-wrap .img-block {
  width: 400px;
  border-radius: 5px;
  overflow: hidden;
}
.factory-list-links-wrap .desc-block {
  width: calc(100% - 400px);
  padding-left: 30px;
}
.factory-list-links-wrap .com-btn-wrap {
  margin-top: 10px;
}
.factory-list-links-wrap .td-wrap a {
  color: #d36900;
}
.factory-wrap-A + .list-bottom-btn {
  margin-top: 60px;
}

/* sp
------------------------------------------------------------ */
@media screen and (max-width: 1201px) {
  /* factory-page-links-wrap */
  .factory-page-links-wrap li {
    width: calc((100% - 15px * 1) / 2);
    margin-right: 15px;
  }
  .factory-page-links-wrap li:nth-child(5n) {
    margin-right: 15px;
  }
  .factory-page-links-wrap li:nth-child(2n) {
    margin-right: 0;
  }
  .factory-page-links-wrap li:nth-child(n + 6),
  .factory-page-links-wrap li:nth-child(n + 3) {
    margin-top: 15px;
  }
  .factory-page-links-wrap li a {
    color: #d36900;
    line-height: 1;
    text-align: center;
    padding: 20px 20px;
    border-radius: 50px;
    background-color: #fff;
    display: block;
    position: relative;
  }
  .factory-page-links-wrap li a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translateY(-50%);
    width: 10px;
    height: 6px;
    background: url(../img/common/icon-page-links.svg) 0 0 no-repeat;
    background-size: 10px auto;
  }
  .factory-page-links-wrap li a:hover {
    text-decoration: none;
    opacity: .7;
  }

  /* factory-list-links-wrap */
  .factory-list-links-wrap .factory-item {
    margin-bottom: 50px;
    padding-bottom: 50px;
    border-bottom: dashed 1px #d36900;
  }
  .factory-list-links-wrap .factory-item:last-child {
    margin-bottom: 0;
  }
  .factory-list-links-wrap .com-flex-box {
    display: block;
  }
  .factory-list-links-wrap .img-block {
    width: 100%;
    max-width: 500px;
    border-radius: 5px;
    overflow: hidden;
    margin: 0 auto;
    margin-bottom: 20px;
  }
  .factory-list-links-wrap .desc-block {
    width: 100%;
    padding-left: 0;
  }
  .factory-list-links-wrap .td-wrap a {
    text-decoration: underline;
  }
  .factory-list-links-wrap .com-btn-wrap {
    margin-top: 10px;
    text-align: center;
  }
  .factory-wrap-A+.list-bottom-btn {
    margin-top: 40px;
  }
}

/* data
============================================================ */
/* data-table-wrap */
.data-table-wrap table th,
.data-table-wrap table td {
  padding: 14px 30px;
  border-right: solid 1px rgba(129, 64, 0, .2);
  border-bottom: solid 1px rgba(129, 64, 0, .2);
}
.data-table-wrap table th {
  color: #fff;
  text-align: center;
  padding: 8px 30px;
  background-color: #814000;
  border-right: solid 1px rgba(255, 255, 255, .3);
  border-bottom: solid 1px rgba(255, 255, 255, .3);
}
.data-table-wrap table td {
  font-weight: bold;
  text-align: center;
  border-bottom: none;
}
.data-table-wrap table tr:first-child th {
  border-radius: 5px 0 0 0;
}
.data-table-wrap table tr:first-child th:last-child {
  border-radius: 0 5px 0 0;
}
.data-table-wrap table tr:nth-child(2) th {
  padding-left: 10px;
  padding-right: 10px;
}
.data-table-wrap table tr:first-child th:first-child,
.data-table-wrap table td:first-child {
  text-align: left;
}
.data-table-wrap table td:last-child {
  border-right: none;
}
.data-table-wrap table tr:nth-child(odd) td {
  background-color: #fff;
}
.data-table-wrap table td a {
  color: #d36900;
  position: relative;
  padding-left: 20px;
  display: inline-block;
}
.data-table-wrap table td a::before {
  content: "";
  position: absolute;
  top: 12px;
  left: 0;
  width: 7px;
  height: 10px;
  background: url(../img/common/icon-arrow-B-or.svg) 0 0 no-repeat;
  background-size: 7px auto;
}
.com-btn-wrap.list-bottom-btn {
  margin-top: 40px;
}

/* js-scroll-hint */
.data-table-wrap .js-scroll-hint {
  overflow: visible !important;
}

/* sp
------------------------------------------------------------ */
@media screen and (max-width: 1201px) {
  .data-table-wrap table th,
  .data-table-wrap table td {
    padding: 4px 10px;
    white-space: nowrap;
  }
  .data-table-wrap table th {
    padding: 2px 10px;
  }
  .data-table-wrap table tr:first-child th,
  .data-table-wrap table td:first-child {
    padding-left: 20px;
  }

  /* js-scroll-hint */
  .data-table-wrap .js-scroll-hint {
    width: calc(100% + 20px);
    margin-right: -20px;
    overflow-x: auto !important;
    overflow-y: visible !important;
  }
  .data-table-wrap .js-scroll-hint table {
    position: relative;
  }
  .data-table-wrap .js-scroll-hint table::after {
    content: "";
    position: absolute;
    top: 0;
    left: 100%;
    width: 20px;
    height: 100%;
    background-color: #faf7f5;
    display: block;
  }
  .data-table-wrap .js-scroll-hint .table-inner {
    white-space: nowrap;
  }

  .data-table-wrap .scroll-hint-text {
    font-weight: bold !important;
    color: #554137 !important;
    line-height: 1 !important;
  }
  .data-table-wrap .scroll-hint-icon {
    top: 10% !important;
    background: rgba(255, 255, 255, .9) !important;
    padding: 15px 10px 10px 10px !important;
  }
  .data-table-wrap .scroll-hint-icon:before {
    position: relative !important;
    top: -5px !important;
    width: 24px !important;
    height: 24px !important;
    color: #554137 !important;
    background-image: url(../img/common/scroll-hint-icon.svg) !important;
  }
  .data-table-wrap .scroll-hint-icon:after {
    display: none !important;
  }
}







