/* CSS Document */
#greetings {
  position: relative;
  padding-bottom: 3rem;
  margin-bottom: 19rem; }
  @media screen and (max-width: 1199px) {
    #greetings {
      padding-bottom: 0rem; } }
  @media screen and (max-width: 767px) {
    #greetings {
      margin-bottom: 10rem; } }
  #greetings .greetings-img {
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1; }
    @media screen and (max-width: 1199px) {
      #greetings .greetings-img {
        right: -7rem; } }
    @media screen and (max-width: 991px) {
      #greetings .greetings-img {
        width: 85%;
        right: -10rem;
        bottom: -4rem; } }
    @media screen and (max-width: 767px) {
      #greetings .greetings-img {
        position: revert;
        width: 100%;
        text-align: right;
        margin-top: 2rem; } }
    @media screen and (max-width: 575px) {
      #greetings .greetings-img {
        margin-top: 0rem; } }
    #greetings .greetings-img img {
      width: 100%;
      height: 100%; }
      @media screen and (max-width: 767px) {
        #greetings .greetings-img img {
          width: 90%; } }
  #greetings .greetings-box dl {
    text-shadow: 0px 0px 10px white;
    -webkit-filter: drop-shadow(0px 0px 10px #fff);
    filter: drop-shadow(0px 0px 2px #fff); }
    #greetings .greetings-box dl dt {
      font-size: 30px;
      font-size: 3rem;
      color: #22923b;
      margin-bottom: 3rem;
      line-height: 5rem; }
      @media screen and (max-width: 1199px) {
        #greetings .greetings-box dl dt {
          font-size: 26px;
          font-size: 2.6rem;
          margin-bottom: 2rem;
          line-height: 4rem; } }
      @media screen and (max-width: 575px) {
        #greetings .greetings-box dl dt {
          font-size: 23px;
          font-size: 2.3rem;
          line-height: 3.5rem; } }
    #greetings .greetings-box dl dd {
      line-height: 3.3rem;
      font-weight: 500; }
      @media screen and (max-width: 991px) {
        #greetings .greetings-box dl dd {
          width: 63%; } }
      @media screen and (max-width: 767px) {
        #greetings .greetings-box dl dd {
          width: 100%; } }
      @media screen and (max-width: 575px) {
        #greetings .greetings-box dl dd {
          line-height: 2.8rem; } }

#policy {
  background-image: url("../img/company-policy_re.jpg");
  margin-bottom: 5rem;
  padding-bottom: 13rem;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  @media screen and (max-width: 575px) {
    #policy {
      padding-bottom: 9rem;
      margin-bottom: 3rem; } }
  #policy h3 {
    padding-top: 8rem; }
  #policy dl {
    text-align: center; }
    #policy dl dt {
      font-size: 61px;
      font-size: 6.1rem;
      font-weight: 800;
      margin-bottom: 5.5rem; }
      #policy dl dt span {
        color: #22923b; }
      @media screen and (max-width: 991px) {
        #policy dl dt {
          font-size: 55px;
          font-size: 5.5rem; } }
      @media screen and (max-width: 767px) {
        #policy dl dt {
          font-size: 43px;
          font-size: 4.3rem;
          margin-bottom: 3.5rem; } }
      @media screen and (max-width: 575px) {
        #policy dl dt {
          line-height: 4.5rem;
          font-size: 3.3rem;
          margin-bottom: 2rem; } }
    #policy dl dd {
      font-size: 20px;
      font-size: 2rem;
      line-height: 3.3rem;
      font-weight: 500; }

#company-imgs {
  margin-bottom: 13rem; }
  @media screen and (max-width: 1199px) {
    #company-imgs {
      margin-bottom: 10rem; } }
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0); }
  to {
    transform: translateX(-100%); } }
  #company-imgs .scroll-infinity__wrap {
    display: flex;
    overflow: hidden; }
  #company-imgs .scroll-infinity__list {
    display: flex;
    list-style: none;
    padding: 0; }
  #company-imgs .scroll-infinity__list--left {
    animation: infinity-scroll-left 40s infinite linear 0.5s both; }
  #company-imgs .scroll-infinity__item {
    width: calc(100vw / 3); }
    @media screen and (max-width: 767px) {
      #company-imgs .scroll-infinity__item {
        width: calc(100vw /1.5); } }
  #company-imgs .scroll-infinity__item img {
    width: 100%;
    height: 100%;
    padding-left: 2rem; }

#about {
  margin-bottom: 10rem; }
  #about table {
    width: 100%;
    margin-bottom: 5rem; }
    #about table tr {
      border-bottom: solid 0.5px #000000; }
      #about table tr th {
        background-color: #daefda;
        font-weight: normal;
        padding-left: 4rem;
        padding-right: 1rem;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem; }
        @media screen and (max-width: 767px) {
          #about table tr th {
            padding-left: 2rem; } }
        @media screen and (max-width: 575px) {
          #about table tr th {
            display: block;
            padding-top: 1rem;
            padding-bottom: 1rem; } }
      #about table tr td {
        padding-left: 3rem;
        padding-top: 1.5rem;
        padding-bottom: 1.5rem; }
        @media screen and (max-width: 767px) {
          #about table tr td {
            padding-left: 2rem; } }
        @media screen and (max-width: 575px) {
          #about table tr td {
            display: block;
            padding-top: 1rem;
            padding-bottom: 1rem; } }
        #about table tr td a {
          color: #000000;
          text-decoration: none; }
      #about table tr:first-of-type {
        border-top: solid 0.5px #000000; }
  #about .about-img img {
    padding-bottom: 3rem;
    width: 100%; }
    @media screen and (max-width: 575px) {
      #about .about-img img {
        padding-bottom: 1.5rem; } }
