@charset "UTF-8";





.commpany.page-cnt .flex-img-wrap {
  right: 0;
  width: calc(41vw - 2em);
  max-width: 540px;
  overflow: initial;
  aspect-ratio: 1 / 1;
}

.commpany.page-cnt .flex-item.flex-item-2 {
  width: calc(40% - 2em);
}

.commpany.page-cnt .flex-item {
  width: 60%;
}

.commpany h3.page-title {
  text-align: center;
  margin-bottom: 1em;
}



/* ---------------------------------- カンパニー ---------------------------------- */  

.page-cun-bottom {
  margin-bottom: 6em;
}

.text-box-t p {
  text-align: justify;
}

p.text-box-t-br {
  margin-bottom: 1em;
}

.representative {
  position: absolute;
  bottom: 0;
  right: 10%;
  z-index: 3;
  text-align: center;
  line-height: 1.5;
}

.representative p {
  line-height: 1.5;
  color: #34771E;
}

.representative-name {
  font-size: 1.6em;
}

.representative::before {
  position: absolute;
  content: "";
  bottom: 50%;
  left: 50%;
  aspect-ratio: 1 / 1;
  width: 17em;
  height: auto;
  transform: translate(-50%,50%);
  z-index: -1;
  background: url(../images/commpany/blur_com.webp) no-repeat center / contain;
}

#sec02 .sec-title.active h3 {
  opacity: .3;
}

.sec-in.sec-in-top {
  margin-top: 2em;
}

.sec-in-flex {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto 3em;
  gap: 2em;
}

.flex-box,
.flex-box-00 {
  position: relative;
  background: #fff;
  padding: 3em 0;
  border-radius: 6em;
}
.flex-box {
  width: 50%;
  display: flex;
  align-items: center;

  opacity: 0;
  filter: blur(10px);
  transition: 1s ease all;
}
.flex-box.active {
  opacity: 1;
  filter: blur(0);
}

.flex-box-00 {
  width: 90%;
  max-width: 1000px;
  margin: 0 auto;

  opacity: 0;
  filter: blur(10px);
  transition: 1s ease all;
}
.flex-box-00.active {
  opacity: 1;
  filter: blur(0);
}

.flex-box-00 p {
  max-width: 80%;
  margin: 0 auto;
}

.flex-box01::before,
.flex-box02::before,
.flex-box03::before {
  position: absolute;
  font-family: "Montserrat", sans-serif;
  font-weight: 600;
  top: 0;
  left: 0;
  color: #34771E;
  font-size: 40px;
  line-height: 1;
  transform: translate(1.5em,-60%);
}

.flex-box01::before {
  content: "MISSION";
}
.flex-box02::before {
  content: "VISION";
}
.flex-box03::before {
  content: "VALUE";
}

.flex-box p {
  max-width: 70%;
  margin: 0 auto;
}

.flex-box p span {
  display: inline-block;
}

#sec06 h3 {
    color: #E0D7C1;
}

#sec06 .sec-title.active h3 {
  opacity: .2;
}

#sec06 .table-wrap table:not(.has-border-color) :where(th, td:first-of-type) {
    width: 25%;
}

.table-pro {
  margin-bottom: 7em;

  opacity: 0;
  transform: translateY(1em);
  transition: 1s ease all;
}
.table-pro.active {
  opacity: 1;
  transform: translateY(0);
}

.table-wrap table tr:nth-of-type(2n+1)  {
  background: #fff;
}

.table-wrap table:not(.has-border-color) :where(th, td) {
    border: initial;
    font-weight: 300;
    border-bottom: 1px solid #B9B9B9;
}

.table-wrap table:not(.has-border-color) :where(th, td) {
  padding: 1em 2em;
}

.table-wrap table:not(.has-border-color) :where(th, td:first-of-type) {
    width: 20%;
    border-right: 1px solid #B9B9B9;
    align-content: center;
}

.his {
  position: relative;
  max-width: 1000px;
  margin: 0 auto;
}
.his::before {
  position: absolute;
  content: "";
  top: 10px;
  left: 0;
  width: 17%;
  width: 7.05em;
  height: 105%;
  border-right: solid 1px #34771E;
}

.blur {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(50%,-40%);
  pointer-events: none;
  z-index: -1;
}

.his-flex {
  margin-bottom: 2em;
  justify-content: space-between;
  align-items: baseline;

  opacity: 0;
  transform: translateY(1em);
  transition: .5s ease all;
}
.his-flex.active {
  opacity: 1;
  transform: translateY(0);
}

.his-flex span {
  position: relative;
  background: #fff;
  border-radius: 2em;
  width: 1.1em;
  height: auto;
  aspect-ratio: 1 / 1;
  margin: 0 .5em;
  border: solid 1px #34771E;
  transform: translateY(2px);
  z-index: 3;
}

.year {
  width: 6em;
  color: #34771E;
}
.year-cont {
  width: 80%;
  width: calc(100% - 8.1em);
}

#sec06 .table-wrap tr:last-child th,
#sec06 .table-wrap tr:last-child td {
  border-bottom: 0;
}
#sec06 .table-wrap tr td {
  border-right: 0;
}

#sec06 table th {
 width: 10em !important;
}


#sec06 .table-wrap table:not(.has-border-color) :where(th, td:first-of-type) {
  width: auto;
  background-color: initial;
}


/*768px以下*/
@media screen and (max-width: 768px){


  .commpany.page-cnt .flex-item {
    width: 100%;
  }

  #sec01.page-cnt .flex-img-wrap {
    width: 90%;
    position: relative;
  }

  .representative {
    bottom: 10%;
    transform: translateY(0);
    right: auto;
    left: 10%;
  }

  .flex.sec-in-flex {
    display: block;
  }


.flex-box {
  width: 100%;
  margin-bottom: 3em;
  padding: 2em;
  border-radius: 2em;
  border-radius: 50vw;
}
.sec-in-flex {
  width: 100%;
}
.flex-box-00 {
  width: 100%;
  padding: 2em;
  border-radius: 2em;
}

.flex-box p,
.flex-box-00 p {
  max-width: initial;
  margin: 0;
}

.flex-box01::before,
.flex-box02::before,
.flex-box03::before  {

  font-size: min(7.81vw,30px);
}


/* 会社概要 */
#sec06 .table-wrap table:not(.has-border-color) :where(th, td) {
    padding: 1em ;
}

#sec06 table th {
  width: 8em !important;
}


.year {
  min-width: 6em;
}

}















