@charset "UTF-8";
/* CSS Document */
/*---------------------------------

  共通

---------------------------------*/
section {}
section .wrap {
  margin: auto;
  max-width: 100rem;
  width: 90%;
}
section .wrap .title {
  max-width: 20rem;
}
section .wrap .title p {
  font-size: 3.6rem;
  font-weight: 600;
  font-style: italic;
  position: relative;
  padding-bottom: 1rem;
}
section .wrap .title p::after {
  content: '';
  background: rgb(143, 143, 143);
  background: linear-gradient(90deg, rgba(143, 143, 143, 1) 0%, rgba(173, 173, 173, 1) 34%, rgba(232, 232, 232, 1) 73%, rgba(255, 255, 255, 1) 100%);
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
}
section .wrap .title h2 {
  font-size: 2.4rem;
  font-weight: 600;
  text-align: center;
}
/*---------------------------------

テクノロの強み

---------------------------------*/
section.strength_block {}
section.strength_block .wrap.col1 {
  margin: 7rem auto 10rem;
}
section.strength_block .wrap.col1 .txt {
  max-width: 84rem;
  margin: auto;
  line-height: 1.8;
  text-align: justify;
}
section.strength_block .wrap.col2 {
  display: flex;
}
section.strength_block .wrap.col2 .title {
  margin-right: 10rem;
}
section.strength_block .wrap.col2 .txt {
  flex-basis: 58rem;
}
section.strength_block .wrap.col2 .txt ol {
  counter-reset: item;
  list-style: none;
}
section.strength_block .wrap.col2 .txt ol li {
  font-size: 1.8rem;
  font-weight: 500;
  margin: 0 0 5rem;
  padding-left: 10rem;
  position: relative;
}
section.strength_block .wrap.col2 .txt ol li::before {
  counter-increment: item;
  content: counter(item)'.';
  font-size: 6rem;
  font-style: italic;
  font-weight: 300;
  line-height: 1;
  position: absolute;
  top: -.5rem;
  left: 0;
}
@media screen and (max-width: 1024px) {}
@media screen and (max-width: 896px) {}
@media screen and (max-width: 480px) {
  section.strength_block .wrap.col2 {
    display: block;
    margin-bottom: 10rem;
  }
  section.strength_block .wrap.col2 .title {
    margin: 0 auto 3rem;
  }
}
/*---------------------------------

ごあいさつ

---------------------------------*/
/*section.greeting_block {
  padding: 10rem 0rem;
  position: relative;
}
section.greeting_block::after {
  content: '';
  background: url("../images/company_bg.png") no-repeat top right -20%/auto 100%;
  width: 100%;
  height: calc(100% + 30%);
  position: absolute;
  top: -30%;
  right: 0;
  z-index: -1;
}
section.greeting_block .wrap {}
section.greeting_block .wrap .inner {
  display: flex;
  justify-content: space-between;
  margin-top: 5rem;
}
section.greeting_block .wrap .inner figure {
  flex-basis: 30%;
}
section.greeting_block .wrap .inner figure figcaption {
  font-size: 1.5rem;
  font-weight: 500;
  text-align: center;
  margin-top: 1rem;
}
section.greeting_block .wrap .inner .txt {
  flex-basis: 60%;
  line-height: 1.8;
}
@media screen and (max-width: 1024px) {}
@media screen and (max-width: 896px) {}
@media screen and (max-width: 480px) {}*/
/*---------------------------------

会社概要

---------------------------------*/
section.outline_block {
  padding-bottom: 15rem;
}
section.outline_block .wrap {}
section.outline_block .wrap .inner {
  display: flex;
  justify-content: space-between;
}
section.outline_block .wrap .inner .title {}
section.outline_block .wrap .inner table {
  flex-basis: 70%;
}
section.outline_block .wrap .inner table th, section.outline_block .wrap .inner table td {
  border-bottom: 1px dashed #ccc;
  text-align: left;
  padding: 2rem 1rem;
}
section.outline_block .wrap .map {
  margin-top: 7rem;
}
section.outline_block .wrap .map iframe {
  width: 100%;
  vertical-align: bottom;
}
@media screen and (max-width: 1024px) {}
@media screen and (max-width: 896px) {}
@media screen and (max-width: 480px) {
  section.outline_block .wrap .inner {
    display: block;
  }
  section.outline_block .wrap .inner .title {
    margin: 0 auto 3rem;
  }
}