#company {
  padding-bottom: 11rem; }
  #company .flex {
    padding-top: 7rem;
    display: flex;
    flex-wrap: wrap; }
  #company .txt {
    width: 70rem; }
    #company .txt table {
      width: 100%; }
      #company .txt table th {
        background-color: #EFF7FD;
        border: 1px solid #CCCCCC;
        font-size: 1.6rem;
        font-weight: 500;
        line-height: 2;
        padding: 0.8rem 1.5rem; }
      #company .txt table td {
        border: 1px solid #CCCCCC;
        font-size: 1.6rem;
        line-height: 2;
        padding: 0.8rem 1.5rem;
        width: 78%; }
        #company .txt table td p {
          font-size: 100%; }
  #company .pic {
    width: 22.2rem;
    margin-left: auto; }
    #company .pic ul li {
      list-style: none;
      padding-bottom: 4rem; }
      #company .pic ul li:last-child {
        padding-bottom: 0; }

#history {
  padding-bottom: 14rem; }
  #history table {
    width: 70rem;
    margin: 0 auto;
    margin-top: 4.5rem; }
    #history table th {
      border: 1px solid #CCCCCC;
      font-size: 1.6rem;
      font-weight: 500;
      line-height: 2;
      padding: 0.8rem 1.5rem;
      background-color: #EFF7FD; }
    #history table td {
      border: 1px solid #CCCCCC;
      font-size: 1.6rem;
      line-height: 2;
      padding: 0.8rem 1.5rem;
      width: 78%; }

#access {
  background-color: #EFF7FD;
  padding: 4rem 5rem 7rem;
  width: 80rem;
  margin: 0 auto;
  margin-bottom: 14rem; }
  #access .ttl {
    margin-bottom: 6.5rem; }
  #access .access_block {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 9.5rem; }
    #access .access_block:last-of-type {
      padding-bottom: 0; }
    #access .access_block .map {
      width: 40rem; }
      #access .access_block .map iframe {
        width: 100%;
        height: 37.2rem; }
    #access .access_block .info {
      margin-left: auto;
      width: 25rem; }
      #access .access_block .info img {
        margin-bottom: 2rem; }
      #access .access_block .info h4 {
        color: #3A89A5;
        font-size: 2.4rem;
        line-height: 1;
        font-weight: 700;
        letter-spacing: 0.05em;
        padding-bottom: 1rem; }
      #access .access_block .info p {
        font-size: 1.6rem;
        line-height: 1.5; }

@media screen and (max-width: 767px) {
  #company {
    padding-bottom: 12rem; }
    #company .flex {
      padding-top: 4rem; }
    #company .txt {
      width: 100%;
      padding-bottom: 5rem; }
      #company .txt table {
        width: 100%;
        border-bottom: 1px solid #CCCCCC; }
        #company .txt table th {
          display: block;
          width: 100%;
          border-bottom: none;
          font-size: 1.4rem;
          line-height: 1;
          padding: 1rem;
          text-align: center; }
        #company .txt table td {
          display: block;
          width: 100%;
          border-top: none;
          border-bottom: none;
          font-size: 1.4rem;
          line-height: 2;
          padding: 1rem; }
          #company .txt table td p {
            padding-bottom: 1.5em; }
            #company .txt table td p:last-of-type {
              padding-bottom: 0; }
    #company .pic {
      width: 100%;
      padding: 0 2rem; }
      #company .pic ul li {
        padding-bottom: 2rem; }
        #company .pic ul li:last-child {
          padding-bottom: 0; }

  #history {
    padding-bottom: 12rem; }
    #history table {
      margin-top: 4.0rem;
      width: 100%;
      border-bottom: 1px solid #CCCCCC; }
      #history table th {
        display: block;
        width: 100%;
        border-bottom: none;
        font-size: 1.4rem;
        line-height: 1;
        padding: 1rem;
        text-align: center; }
      #history table td {
        display: block;
        width: 100%;
        border-top: none;
        border-bottom: none;
        font-size: 1.4rem;
        line-height: 2;
        padding: 1rem; }
        #history table td p {
          padding-bottom: 1.5em; }
          #history table td p:last-of-type {
            padding-bottom: 0; }

  #access {
    padding: 3rem 2rem 5.5rem;
    width: 100%;
    margin-bottom: 8rem; }
    #access .ttl {
      margin-bottom: 4rem; }
    #access .access_block {
      padding-bottom: 9.5rem; }
      #access .access_block:last-of-type {
        padding-bottom: 0; }
      #access .access_block .map {
        width: 100%;
        margin-bottom: 2rem; }
        #access .access_block .map iframe {
          width: 100%;
          height: 29.0rem; }
      #access .access_block .info {
        width: 100%;
        display: flex;
        flex-wrap: wrap; }
        #access .access_block .info .pic {
          margin-bottom: 0;
          order: 2;
          width: 12rem; }
        #access .access_block .info .txt {
          order: 1;
          width: calc(100% - 12rem); }
        #access .access_block .info h4 {
          font-size: 2.0rem;
          padding-bottom: 1rem; }
        #access .access_block .info p {
          font-size: 1.4rem; } }
