@charset "UTF-8";
/* ----------------------------------------
企業情報
---------------------------------------- */
.page-header {
  margin-bottom: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}
@media only screen and (min-width: 768px) {
  .page-header {
    background: url("../images/common/page-header-bg_pc.jpg") no-repeat center/cover;
  }
}
@media only screen and (max-width: 767px) {
  .page-header {
    background: url("../images/common/page-header-bg_sp.jpg") no-repeat center/cover;
  }
}

/* ----------------------------------------
common
---------------------------------------- */
.main-contents__title h3 {
  font-size: max(22.9743589744px, min(7.1794871795vw, max(28px, min(1.9444444444vw, 28px))));
  margin-bottom: max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
}

/* ----------------------------------------
代表挨拶
---------------------------------------- */
.message {
  padding: 0 0 max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px))));
}
@media only screen and (max-width: 767px) {
  .message .container {
    padding: 0;
  }
}
.message .main-contents__content {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
}
.message .main-contents__content .main-text__body {
  line-height: 1.6;
}
.message .main-contents__content .message__sing {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 2em;
}
@media only screen and (max-width: 767px) {
  .message .main-contents__content .message__sing {
    flex-direction: column;
  }
  .message .main-contents__content .message__sing p {
    text-align: right;
    margin-bottom: 1em;
  }
}
.message .main-contents__content .message__sing img {
  width: 30%;
  height: auto;
}
@media only screen and (min-width: 768px) {
  .message .company-content__left {
    max-width: 50%;
  }
  .message .company-content__right {
    max-width: calc(50% - max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px)))));
  }
}
@media only screen and (max-width: 767px) {
  .message .main-contents__content {
    flex-direction: column-reverse;
    gap: clamp(39.3846153846px, 12.3076923077vw, 48px);
  }
  .message .company-content__right {
    max-width: initial;
    width: 100%;
  }
}
.message .round-button {
  margin-top: max(41.0256410256px, min(12.8205128205vw, max(50px, min(3.4722222222vw, 50px))));
}
.message .round-button .round-button__label {
  line-height: 1.5;
}

/* ----------------------------------------
経営理念
---------------------------------------- */
.vision {
  background-color: #F6F8FD;
  padding: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px)))) 0;
}
@media only screen and (min-width: 768px) {
  .vision .container {
    max-width: 1104px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .vision .container {
    padding: 0;
  }
}
.vision .container .row {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .vision .container .row {
    flex-direction: column;
  }
}
.vision .container .row .label-box {
  width: 18.4783%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #0B2545;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .vision .container .row .label-box {
    width: 100%;
    padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
  }
}
.vision .container .row .label-box .label-en {
  font-size: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
  font-weight: bold;
  line-height: 1.4;
}
.vision .container .row .label-box .label-ja {
  font-size: max(11.4871794872px, min(3.5897435897vw, max(14px, min(0.9722222222vw, 14px))));
}
.vision .container .row .content-box {
  width: 81.5217%;
  background-color: #fff;
  border: 1px solid #A1AABA;
  padding: max(24.6153846154px, min(7.6923076923vw, max(30px, min(2.0833333333vw, 30px)))) max(26.2564102564px, min(8.2051282051vw, max(32px, min(3.3333333333vw, 48px))));
  box-sizing: border-box;
}
@media only screen and (max-width: 767px) {
  .vision .container .row .content-box {
    width: 100%;
  }
}
.vision .container .row .content-box p {
  font-size: max(14.7692307692px, min(4.6153846154vw, max(18px, min(1.25vw, 18px))));
  font-weight: bold;
  line-height: 2;
}
.vision .container .row .values-content {
  display: flex;
  padding: max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px)))) max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
}
@media only screen and (max-width: 767px) {
  .vision .container .row .values-content {
    flex-direction: column;
    padding: max(6.5641025641px, min(2.0512820513vw, max(8px, min(0.5555555556vw, 8px)))) max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
  }
}
.vision .container .row .values-content .values-col {
  width: 33.3333%;
  padding: 0 max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
}
@media only screen and (max-width: 767px) {
  .vision .container .row .values-content .values-col {
    width: 100%;
    padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) 0;
  }
}
.vision .container .row .values-content .values-col:nth-child(2) {
  border-left: 1px solid #D9D9D9;
  border-right: 1px solid #D9D9D9;
}
@media only screen and (max-width: 767px) {
  .vision .container .row .values-content .values-col:nth-child(2) {
    border-left: none;
    border-right: none;
    border-top: 1px solid #D9D9D9;
    border-bottom: 1px solid #D9D9D9;
  }
}
.vision .container .row .values-content .values-col .val-title {
  text-align: center;
  margin-bottom: max(11.4871794872px, min(3.5897435897vw, max(14px, min(0.9722222222vw, 14px))));
}
.vision .container .row .values-content .values-col .val-body {
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
  font-weight: normal;
  line-height: 1.6;
  letter-spacing: -0.02em;
  text-align: justify;
  font-feature-settings: "palt";
}
.vision .container .arrow {
  padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) 0;
}
.vision .container .arrow img {
  margin: 0 auto;
}

/* ----------------------------------------
会社概要
---------------------------------------- */
.aboutus {
  background-image: url("../images/company/aboutus_bg.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  padding: max(65.641025641px, min(20.5128205128vw, max(80px, min(7.6388888889vw, 110px)))) 0;
}
@media only screen and (max-width: 767px) {
  .aboutus {
    background-position: 18% top;
  }
}
@media only screen and (min-width: 768px) {
  .aboutus .container {
    max-width: 1080px;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 767px) {
  .aboutus .container {
    padding: 0;
  }
}
.aboutus .container .aboutus_tit {
  padding: max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
  border-bottom: 1px solid #0B2545;
  font-weight: bold;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .aboutus .container .aboutus_tit {
    width: 16.6667%;
  }
}
@media only screen and (max-width: 767px) {
  .aboutus .container .aboutus_tit {
    border-top: 1px solid #0B2545;
    border-bottom: 1px solid #D8DADF;
    text-align: left;
  }
}
.aboutus .container .aboutus_txt {
  padding: max(24.6153846154px, min(7.6923076923vw, max(30px, min(2.0833333333vw, 30px)))) max(41.0256410256px, min(12.8205128205vw, max(50px, min(3.4722222222vw, 50px)))) max(24.6153846154px, min(7.6923076923vw, max(30px, min(2.0833333333vw, 30px)))) max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
  border-bottom: 1px solid #D8DADF;
}
@media only screen and (max-width: 767px) {
  .aboutus .container .aboutus_txt {
    padding: max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
    border-bottom: none;
  }
}
.aboutus .container .aboutus_txt__rowspan {
  padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) max(41.0256410256px, min(12.8205128205vw, max(50px, min(3.4722222222vw, 50px)))) max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) max(39.3846153846px, min(12.3076923077vw, max(48px, min(3.3333333333vw, 48px))));
  border-bottom: none;
  display: grid;
  grid-template-columns: 1fr max(86.1538461538px, min(26.9230769231vw, max(105px, min(7.2916666667vw, 105px)))) max(90.2564102564px, min(28.2051282051vw, max(110px, min(7.6388888889vw, 110px))));
  align-items: end;
  gap: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px))));
}
@media only screen and (max-width: 767px) {
  .aboutus .container .aboutus_txt__rowspan {
    padding: max(19.6923076923px, min(6.1538461538vw, max(24px, min(1.6666666667vw, 24px)))) max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: max(9.8461538462px, min(3.0769230769vw, max(12px, min(0.8333333333vw, 12px))));
  }
}
.aboutus .container .aboutus_txt__rowspan p {
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .aboutus .container .aboutus_txt__rowspan p {
    line-height: 1.6;
  }
}
.aboutus .container .aboutus_txt__rowspan p img {
  display: inline-block;
  vertical-align: middle;
}
.aboutus .container .aboutus_txt__rowspan p a[href^="tel:"] {
  font-size: inherit;
  display: inline-block;
}
.aboutus .container .aboutus_txt__rowspan p:first-child {
  flex: 1;
}
.aboutus .container .aboutus_txt__rowspan p:nth-child(2), .aboutus .container .aboutus_txt__rowspan p:nth-child(3) {
  flex-shrink: 0;
  white-space: nowrap;
}
.aboutus .container .aboutus_txt__frist {
  padding-top: max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
}
.aboutus .container .aboutus_txt__last {
  padding-bottom: max(26.2564102564px, min(8.2051282051vw, max(32px, min(2.2222222222vw, 32px))));
  border-bottom: 1px solid #D8DADF;
  line-height: 1.8;
}
@media only screen and (max-width: 767px) {
  .aboutus .container .aboutus_txt__last {
    border-bottom: 1px solid #0B2545;
  }
}
.aboutus .container .aboutus_txt__last dl {
  display: flex;
}
@media only screen and (max-width: 767px) {
  .aboutus .container .aboutus_txt__last dl {
    flex-direction: column;
  }
}
.aboutus .container .aboutus_txt__last dl:last-child dd {
  display: none;
}
@media only screen and (min-width: 768px) {
  .aboutus .container .aboutus_txt__last dt {
    width: 16%;
  }
}
.aboutus .container table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  background-color: #fff;
  font-size: max(13.1282051282px, min(4.1025641026vw, max(16px, min(1.1111111111vw, 16px))));
}
@media only screen and (max-width: 767px) {
  .aboutus .container table,
  .aboutus .container tbody,
  .aboutus .container tr,
  .aboutus .container td {
    display: block;
    width: 100%;
  }
}

/*# sourceMappingURL=company.css.map */
