@charset "UTF-8";
:root{
  --main-color: #00833E;
}

/*````````````````````````````````````````*/
@media only screen and (min-width: 769px) {
/*````````````````````````````````````````*/

/*================*/
section.pagetitle {
}
section.pagetitle>.inner {
}
/*----*/
section.pagetitle .area-ttl {
    padding: 110px 0 100px 0;
}
section.pagetitle .sectioning-title h2 span.main{
    width: 330px;
    aspect-ratio: 331/50;
}
section.pagetitle .sectioning-title h2 span.main b{
    background-image: url(/company/office/img/char_title_office.svg);
}

/*================*/
.companyTable{
  margin-top: 50px;
}
.mod-ttl-secondary{
  margin-bottom: 22px;
  font-size: 26px;
  letter-spacing: 0.08em;
  font-weight: 700;
  color: var(--main-color);
}
.mod-table-v2 thead th{
  border: 1px solid var(--main-color);
  background-color: rgba(0, 131, 62, 0.15);
  font-size: 19px;
  text-align: center;
  font-weight: 500;
  color: var(--main-color);
}
.mod-table-v2 thead th:first-of-type{
  width: 26%;
}
.mod-table-v2 thead th:nth-of-type(2){
  width: 50%;
}
.mod-table-v2.wide thead th:first-of-type{
  width: 24%;
}
.mod-table-v2.wide thead th:nth-of-type(2){
  width: 24%;
}
.mod-table-v2.wide thead th:nth-of-type(3){
  width: 20%;
}
.mod-table-v2.wide thead th:nth-of-type(4){
  width: 32%;
}
.mod-table-v2 tbody td,
.mod-table-v2 tbody th{
  border: 1px solid var(--main-color);
  padding: 18px 16px;
}
.mod-table-v2 tbody th{
  font-size: 17px;
  font-weight: 500;
}
.mod-table-v2 tbody th a{
  text-decoration: underline;
  color: #000;
}
.mod-table-v2 tbody td{
  font-size: 15px;
}
.mod-link{
  padding-left: 0;
  color: #000;
}
.mod-link:before{
  display: none;
}
.mod-button{
  margin-top: 96px;
}
.mod-button a{
  margin: 0 auto;
  padding: 13px 0;
  border-radius: 50px;
  width: 348px;
}
.branchservis{
  margin-top: 95px;
  text-align: center;
}
.branchservis .border-button{
  width: 348px;
}
.mod-companynav{
  padding-top: 90px;
}
.mod-companynav-list{
  padding-bottom: 140px;
}
.mod-companynav-list-items{
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.mod-companynav-list-item a{
  position: relative;
  display: block;
}
.mod-companynav-list-caption{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 24px 0 0 30px;
  font-size: 22px;
  line-height: 1.26;
  font-weight: 700;
  color: #fff;
}
.mod-companynav-list-caption .font-en{
  display: block;
  margin-top: 10px;
  font-size: 15px;
  font-weight: 700;
}
.mod-companynav-list-caption.little{
  font-size: 19px;
  line-height: 1.26;
}
.mod-companynav-list-item i{
  position: absolute;
  left: 30px;
  bottom: 12px;
  width: 60px;
  aspect-ratio: 60 / 20;
  overflow: hidden;
}
.mod-companynav-list-item i b{
  position: absolute;
    top: 0;
    left: -30px;
    width: 100%;
    height: 100%;
    -webkit-transition-property: left, right;
    transition-property: left, right;
    -webkit-transition-duration: 0.2s;
    transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
    transition-timing-function: linear;
}
.mod-companynav-list-item i b > svg{
  stroke: #fff;
}
.mod-companynav-list-item a:hover  i b{
  left: 0;
}


/*````````````````````````````````````````*/
} @media only screen and (max-width: 768px) {
/*````````````````````````````````````````*/

/*================*/
section.pagetitle {
}
section.pagetitle>.inner {
}
/*----*/
section.pagetitle .area-ttl {
    padding: 17vw 0 15vw 0;
}
section.pagetitle .sectioning-title h2 span.main{
    width: 56vw;
    aspect-ratio: 331/50;
}
section.pagetitle .sectioning-title h2 span.main b{
    background-image: url(/company/office/img/char_title_office.svg);
}

/*================*/
.structure-container{
  width: 90vw;
}
.companyTable{
  margin-top: 10.13vw;
}
.mod-ttl-secondary{
  margin-bottom: 4.27vw;
  padding: 0 6vw 0 6vw;
  font-size: 5.87vw;
  letter-spacing: 0.08em;
  font-weight: 700;
  color: var(--main-color);
}
.companyTable{
}
.companyTable-body{
}
.js-scrollable{
  overflow-x: scroll;
}
.mod-table-v2{
  width: 225vw;
}
.mod-table-v2 thead th{
  border: 1px solid var(--main-color);
  background-color: rgba(0, 131, 62, 0.15);
  font-size: 4.27vw;
  text-align: center;
  font-weight: 500;
  color: var(--main-color);
}
.mod-table-v2 thead th:first-of-type{
  width: 26%;
}
.mod-table-v2 thead th:nth-of-type(2){
  width: 50%;
}
.mod-table-v2.wide thead th:first-of-type{
  width: 24%;
}
.mod-table-v2.wide thead th:nth-of-type(2){
  width: 24%;
}
.mod-table-v2.wide thead th:nth-of-type(3){
  width: 20%;
}
.mod-table-v2.wide thead th:nth-of-type(4){
  width: 32%;
}
.mod-table-v2 tbody td,
.mod-table-v2 tbody th{
  border: 1px solid var(--main-color);
  padding: 4.8vw 4.27vw;
}
.mod-table-v2 tbody th{
  font-size: 4.27vw;
  font-weight: 500;
}
.mod-table-v2 tbody th a{
  text-decoration: underline;
  color: #000;
}
.mod-table-v2 tbody td{
  font-size: 3.73vw;
}
.mod-table-v2 tbody td a{
  display: block;
  color: #000;
}
.mod-link{
  padding-left: 0;
  color: #000;
}
.mod-link:before{
  display: none;
}
.branchservis{
  margin-top: 26.13vw;
  text-align: center;
}
.branchservis .border-button{
  width: 100%;
}
.mod-companynav{
  padding: 24.8vw 0;
}
.mod-companynav-list-items{
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 4.27vw;
}
.mod-companynav-list-item a{
  position: relative;
  display: block;
}
.mod-companynav-list-caption{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  padding: 2.13vw 0 0 4vw;
  font-size: 4.27vw;
  line-height: 1.26;
  font-weight: 700;
  color: #fff;
}
.mod-companynav-list-caption.little{
  font-size: 2.93vw;
  line-height: 1.73;
}
.mod-companynav-list-caption .font-en{
  display: block;
  margin-top: 2.1vw;
  font-size: 2.13vw;
  font-weight: 700;
}
.mod-companynav-list-item i{
  position: absolute;
  left: 4vw;
  bottom: 3.13vw;
  width: 12vw;
  aspect-ratio: 60 / 20;
  overflow: hidden;
}
.mod-companynav-list-item i b{
  position: absolute;
  top: 0;
  left: -30%;
  width: 100%;
  height: 100%;
}
.mod-companynav-list-item i b > svg{
  stroke: #fff;
  stroke-width: 1.2;
}


/*````````````````````````````````````````*/
} /* end of @media */
/*````````````````````````````````````````*/

