@charset "UTF-8";
/*--- company ------------------------------------------------------------------*/
/*--- フォントサイズvw設定 -----------------------------------------------------*/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

.pc {
  display: block !important;
}

@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
}

.sp {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .sp {
    display: block !important;
  }
}

a {
  -webkit-transition: opacity 0.3s ease-out;
  -moz-transition: opacity 0.3s ease-out;
  -ms-transition: opacity 0.3s ease-out;
  transition: opacity 0.3s ease-out;
  display: inline-block;
}

a:hover {
  cursor: pointer;
  opacity: .8;
  -webkit-opacity: .8;
  -moz-opacity: .8;
  filter: alpha(opacity=80);
  /* IE lt 8 */
  -ms-filter: "alpha(opacity=80)";
  /* IE 8 */
}

html {
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

.container {
  overflow-x: hidden;
}

.float_this {
  -webkit-animation-name: fuwafuwa;
  -webkit-animation-duration: 2s;
  -webkit-animation-iteration-count: infinite;
  /*-webkit-animation-direction:alternate;*/
  -webkit-animation-timing-function: ease;
  -moz-animation-name: fuwafuwa;
  -moz-animation-duration: 2s;
  -moz-animation-iteration-count: infinite;
  /*-moz-animation-direction:alternate;*/
  -moz-animation-timing-function: ease;
  animation-name: fuwafuwa;
  animation-duration: 2s;
  animation-iteration-count: infinite;
  /*-moz-animation-direction:alternate;*/
  animation-timing-function: ease;
}

@-webkit-keyframes fuwafuwa {
  0% {
    -webkit-transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(0, -10px);
  }
  100% {
    -webkit-transform: translate(0, 0);
  }
}

@-moz-keyframes fuwafuwa {
  0% {
    -moz-transform: translate(0, 0);
  }
  50% {
    -moz-transform: translate(0, -10px);
  }
  100% {
    -moz-transform: translate(0, 0);
  }
}

#works_single .mgb05 {
  margin-bottom: 5px;
}

#works_single .mgb10 {
  margin-bottom: 10px;
}

#works_single .mgb15 {
  margin-bottom: 15px;
}

#works_single .mgb20 {
  margin-bottom: 20px;
}

#works_single .mgb25 {
  margin-bottom: 25px;
}

#works_single .mgb30 {
  margin-bottom: 30px;
}

#works_single .mgb40 {
  margin-bottom: 40px;
}

#works_single .mgb45 {
  margin-bottom: 45px;
}

#works_single .mgb50 {
  margin-bottom: 50px;
}

#works_single .mgb55 {
  margin-bottom: 55px;
}

#works_single .mgb60 {
  margin-bottom: 60px;
}

#works_single .mgb65 {
  margin-bottom: 65px;
}

#works_single .mgb70 {
  margin-bottom: 70px;
}

#works_single .mgb75 {
  margin-bottom: 75px;
}

#works_single .mgb80 {
  margin-bottom: 80px;
}

#works_single .mgb85 {
  margin-bottom: 85px;
}

#works_single .mgb90 {
  margin-bottom: 90px;
}

#works_single .mgb95 {
  margin-bottom: 95px;
}

#works_single .mgb100 {
  margin-bottom: 100px;
}

#works_single .mgb105 {
  margin-bottom: 5px;
}

#works_single .mgb110 {
  margin-bottom: 10px;
}

#works_single .mgb115 {
  margin-bottom: 15px;
}

#works_single .mgb120 {
  margin-bottom: 20px;
}

#works_single .mgb125 {
  margin-bottom: 25px;
}

#works_single .mgb130 {
  margin-bottom: 30px;
}

#works_single .mgb140 {
  margin-bottom: 40px;
}

#works_single .mgb145 {
  margin-bottom: 45px;
}

#works_single .mgb150 {
  margin-bottom: 50px;
}

#works_single .mgb155 {
  margin-bottom: 55px;
}

#works_single .mgb160 {
  margin-bottom: 60px;
}

#works_single .mgb165 {
  margin-bottom: 65px;
}

#works_single .mgb170 {
  margin-bottom: 70px;
}

#works_single .mgb175 {
  margin-bottom: 75px;
}

#works_single .mgb180 {
  margin-bottom: 80px;
}

#works_single .mgb185 {
  margin-bottom: 85px;
}

#works_single .mgb190 {
  margin-bottom: 90px;
}

#works_single .mgb195 {
  margin-bottom: 95px;
}

#works_single .mgb200 {
  margin-bottom: 100px;
}

.company_info {
  width: 70vw;
  margin: 2.91089108904vw auto 0;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .company_info {
    width: 83.33333333vw;
    flex-flow: column;
    margin: 7.966666666vw auto 0;
  }
}

.company_sec {
  width: 33.3712871329vw;
}

@media screen and (max-width: 767px) {
  .company_sec {
    width: 83.33333333vw;
  }
}

.company_sec th,
.company_sec td {
  vertical-align: top;
  font-size: 24.54851px;
  font-size: 0.9703vw;
  padding: 0.9702970301vw 0;
}

@media screen and (max-width: 767px) {
  .company_sec th,
  .company_sec td {
    font-size: 65.59259px;
    font-size: 2.59259vw;
    padding: 2.407407407vw 0;
  }
}

.company_sec th a,
.company_sec td a {
  color: #000000;
}

.company_sec th {
  width: 7.62376237662vw;
}

@media screen and (max-width: 767px) {
  .company_sec th {
    width: 20.18518519vw;
  }
}

.company_sec th p {
  line-height: 1.73;
  vertical-align: top;
  letter-spacing: 0.1rem;
}

@media screen and (max-width: 767px) {
  .company_sec th p {
    line-height: 1.9;
    letter-spacing: 0.04rem;
  }
}

@media screen and (max-width: 767px) {
  .company_sec td {
    font-size: 65.59259px;
    font-size: 2.59259vw;
  }
}

.company_sec td p {
  font-size: 24.54851px;
  font-size: 0.9703vw;
  line-height: 1.73;
  vertical-align: top;
  margin: 1.73267326741vw 0 0;
  letter-spacing: 0.08rem;
}

@media screen and (max-width: 767px) {
  .company_sec td p {
    font-size: 65.59259px;
    font-size: 2.59259vw;
    margin: 4.62962963vw 0 0;
    line-height: 1.9;
    letter-spacing: 0.04rem;
  }
}

.company_sec td p:first-child {
  margin: 0 0 0;
}

.company_map {
  width: 70vw;
  margin: 6.34158415865vw auto 0;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .company_map {
    width: 83.33333333vw;
    flex-flow: column;
    margin: 14.537037038vw auto 0;
  }
}

.company_map .company_map_sec {
  width: 33.3712871329vw;
}

@media screen and (max-width: 767px) {
  .company_map .company_map_sec {
    width: 83.33333333vw;
    margin: 0 auto 0;
  }
}

.company_map .company_map_sec .company_map_title {
  font-size: 26.30198px;
  font-size: 1.0396vw;
  display: block;
  margin: 0 0 1.35148514823vw;
  font-weight: 500;
  letter-spacing: 0.05rem;
}

@media screen and (max-width: 767px) {
  .company_map .company_map_sec .company_map_title {
    font-size: 65.59259px;
    font-size: 2.59259vw;
    margin: 0 0 3.888888889vw;
  }
}

@media screen and (max-width: 767px) {
  .company_map #head_office {
    margin-bottom: 11.11111111vw;
  }
}

.message_sec {
  width: 70vw;
  margin: 4.01980198022vw auto 7vw;
  display: flex;
  justify-content: space-between;
  padding: 0;
  background: #f7f7f7;
}

@media screen and (max-width: 767px) {
  .message_sec {
    width: 83.33333333vw;
    margin: 10vw auto 30.55555556vw;
    flex-flow: column;
    padding: 0;
    background: #fff;
    display: block;
  }
}

.message_sec .txt_box {
  width: 33.3366336691vw;
  padding: 4.0198019804vw 3.46534653483vw 0 3.36138613887vw;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box {
    width: 83.33333333vw;
    padding: 9.0740740738vw 0 3.833992095vw;
    background: #fff;
  }
}

.message_sec .txt_box .message_sec_title {
  font-size: 41.06931px;
  font-size: 1.62329vw;
  font-weight: 500;
  line-height: 1.45;
  margin: 0 auto 0;
  -moz-font-feature-settings: 'palt' 1;
  -webkit-font-feature-settings: 'palt' 1;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.22rem;
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box .message_sec_title {
    font-size: 159.2963px;
    font-size: 6.2963vw;
    line-height: 1.61764705882;
    margin: 0 auto 0;
    letter-spacing: 0.4rem;
  }
}

.message_sec .txt_box .message_sec_txt {
  font-size: 24.11015px;
  font-size: 0.95297vw;
  line-height: 2;
  margin: 1.37782178225vw auto 0;
  -moz-font-feature-settings: 'palt' 1;
  -webkit-font-feature-settings: 'palt' 1;
  font-feature-settings: 'palt' 1;
  letter-spacing: 0.04rem;
  text-align: justify;
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box .message_sec_txt {
    font-size: 93.7037px;
    font-size: 3.7037vw;
    line-height: 2.1;
    margin: 4.259259259vw auto 0;
  }
}

.message_sec .txt_box .ceo_sec {
  margin: 1.65504950539vw auto 0;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box .ceo_sec {
    margin: 10.27777778vw auto 0;
    text-align: left;
  }
}

.message_sec .txt_box .ceo_sec .ceo {
  font-size: 24.54851px;
  font-size: 0.9703vw;
  display: inline-block;
  vertical-align: top;
  margin: 0.25rem 1.90594059372vw 0 0;
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box .ceo_sec .ceo {
    font-size: 65.59259px;
    font-size: 2.59259vw;
    display: block;
    letter-spacing: 0.1rem;
    margin: 0 0 4.259259259vw;
  }
}

.message_sec .txt_box .ceo_sec .ceo_name {
  font-size: 35.06931px;
  font-size: 1.38614vw;
  margin: 0 auto 0;
  font-weight: 500;
  line-height: 1;
  vertical-align: top;
  display: inline-block;
  letter-spacing: 0.1rem;
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box .ceo_sec .ceo_name {
    font-size: 154.2963px;
    font-size: 6.09867vw;
    margin: 0;
    display: inline-block !important;
    letter-spacing: 0.3rem;
  }
}

@media screen and (max-width: 767px) {
  .message_sec .txt_box .ceo_sec .ceo_name .ceo_name_en {
    font-size: 65.59259px;
    font-size: 2.59259vw;
    display: inline-block !important;
    font-style: italic;
    letter-spacing: 0.1rem;
    margin: 0 0 0 3.2407407412vw;
  }
}

.message_sec .img_box {
  width: 36.7673267313vw;
}

@media screen and (max-width: 767px) {
  .message_sec .img_box {
    width: 83.33333333vw;
    display: flex;
    align-items: flex-start;
  }
}

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