/* CSS Document */
#ul-header {
  background-image: url("../img/title-header-company.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }
  #ul-header .inner {
    padding: 16rem 0 1rem; }
  #ul-header h2 {
    color: #fff; }
    #ul-header h2 span {
      display: inline-block;
      color: #ff6400; }

#policy {
  background-image: url("../img/company-img-back.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
  display: flex;
  justify-content: center; }
  #policy h2 {
    text-align: center;
    color: #ff6400;
    margin-bottom: 3rem; }
    @media screen and (max-width: 575px) {
      #policy h2 {
        margin-bottom: 2rem; } }
  #policy p {
    font-size: 25px;
    font-size: 2.5rem;
    text-align: center;
    font-family: "Zen Old Mincho";
    color: #fff;
    line-height: 2; }
    @media screen and (max-width: 575px) {
      #policy p {
        font-size: 20px;
        font-size: 2rem; } }

#message .d-flex {
  flex-wrap: wrap; }
  #message .d-flex .title-container {
    width: 30%; }
    @media screen and (max-width: 991px) {
      #message .d-flex .title-container {
        width: 100%;
        margin-bottom: 2rem; } }
  #message .d-flex div:not(.title-container) {
    width: 70%; }
    @media screen and (max-width: 991px) {
      #message .d-flex div:not(.title-container) {
        width: 100%; } }
    #message .d-flex div:not(.title-container) p:not(.message-name) {
      text-align: justify; }
  #message .d-flex .message-name {
    font-size: 20px;
    font-size: 2rem;
    text-align: right;
    margin-top: 2rem; }
    @media screen and (max-width: 575px) {
      #message .d-flex .message-name {
        font-size: 16px;
        font-size: 1.6rem; } }

.grey-back {
  background-color: #eeeeee; }

@media screen and (max-width: 991px) {
  #outline .d-flex {
    flex-wrap: wrap; } }
#outline .photo-container {
  position: relative;
  width: 33%;
  margin-right: 7%; }
  @media screen and (max-width: 991px) {
    #outline .photo-container {
      width: 100%;
      margin-right: 0;
      margin-bottom: 2rem; } }
  #outline .photo-container div {
    position: absolute;
    bottom: 0;
    left: -40%; }
    @media screen and (max-width: 991px) {
      #outline .photo-container div {
        position: relative;
        left: 0;
        margin-top: 2rem; } }
    @media screen and (max-width: 991px) {
      #outline .photo-container div img {
        width: 100%; } }
#outline .table-container {
  width: 60%; }
  @media screen and (max-width: 991px) {
    #outline .table-container {
      width: 100%; } }
  #outline .table-container table {
    width: 100%; }
    #outline .table-container table tr th {
      width: 30%;
      font-weight: normal;
      padding: 1rem;
      border-bottom: 1px solid #1a1a1a; }
      @media screen and (max-width: 575px) {
        #outline .table-container table tr th {
          display: block;
          width: 100%;
          background-color: #c7c7c7;
          border-bottom: none; } }
    #outline .table-container table tr td {
      font-weight: normal;
      width: 70%;
      padding: 1rem 0 1rem 1rem;
      border-bottom: 1px solid #c7c7c7; }
      @media screen and (max-width: 575px) {
        #outline .table-container table tr td {
          display: block;
          border-bottom: none;
          width: 100%;
          padding: 1rem; } }

@media screen and (max-width: 991px) {
  #history .d-flex {
    flex-wrap: wrap; } }
#history .title-container {
  width: 30%; }
  @media screen and (max-width: 1399px) {
    #history .title-container {
      width: 25%; } }
  @media screen and (max-width: 1199px) {
    #history .title-container {
      width: 20%; } }
  @media screen and (max-width: 991px) {
    #history .title-container {
      width: 100%;
      margin-bottom: 2rem; } }
#history .table-container {
  width: 70%; }
  @media screen and (max-width: 1399px) {
    #history .table-container {
      width: 75%; } }
  @media screen and (max-width: 1199px) {
    #history .table-container {
      width: 80%; } }
  @media screen and (max-width: 991px) {
    #history .table-container {
      width: 100%; } }
  #history .table-container table {
    width: 100%; }
    #history .table-container table tr th {
      vertical-align: text-top;
      width: 22%;
      font-weight: normal;
      padding: 1rem;
      border-bottom: 1px solid #1a1a1a; }
      @media screen and (max-width: 1399px) {
        #history .table-container table tr th {
          width: 25%; } }
      @media screen and (max-width: 1199px) {
        #history .table-container table tr th {
          width: 26%; } }
      @media screen and (max-width: 767px) {
        #history .table-container table tr th {
          width: 25%; } }
      @media screen and (max-width: 575px) {
        #history .table-container table tr th {
          width: 80%;
          display: inline-block;
          background-color: #eeeeee;
          border-bottom: none; } }
      #history .table-container table tr th + th {
        width: 8%; }
        @media screen and (max-width: 1399px) {
          #history .table-container table tr th + th {
            width: 10%; } }
        @media screen and (max-width: 767px) {
          #history .table-container table tr th + th {
            width: 11%; } }
        @media screen and (max-width: 575px) {
          #history .table-container table tr th + th {
            width: 20%;
            display: inline-block; } }
    #history .table-container table tr td {
      width: 70%;
      padding: 1rem 0 1rem 2rem;
      border-bottom: 1px solid #c7c7c7;
      font-weight: normal; }
      @media screen and (max-width: 1399px) {
        #history .table-container table tr td {
          width: 65%; } }
      @media screen and (max-width: 1199px) {
        #history .table-container table tr td {
          width: 64%; } }
      @media screen and (max-width: 575px) {
        #history .table-container table tr td {
          display: block;
          border-bottom: none;
          width: 100%;
          padding: 1rem; } }
    #history .table-container table tr:nth-child(8) th, #history .table-container table tr:nth-child(10) th {
      border-bottom: none;
      padding-bottom: 0; }
      @media screen and (max-width: 575px) {
        #history .table-container table tr:nth-child(8) th, #history .table-container table tr:nth-child(10) th {
          padding: 1rem; } }
    #history .table-container table tr:nth-child(8) td, #history .table-container table tr:nth-child(10) td {
      border-bottom: none;
      padding-bottom: 0; }
      @media screen and (max-width: 575px) {
        #history .table-container table tr:nth-child(8) td, #history .table-container table tr:nth-child(10) td {
          padding: 1rem; } }

#partners .d-flex {
  flex-wrap: wrap; }
#partners .title-container {
  width: 30%; }
  @media screen and (max-width: 1399px) {
    #partners .title-container {
      width: 25%; } }
  @media screen and (max-width: 1199px) {
    #partners .title-container {
      width: 20%; } }
  @media screen and (max-width: 991px) {
    #partners .title-container {
      width: 100%;
      margin-bottom: 2rem; } }
#partners .table-container {
  width: 70%; }
  @media screen and (max-width: 1399px) {
    #partners .table-container {
      width: 75%; } }
  @media screen and (max-width: 1199px) {
    #partners .table-container {
      width: 80%; } }
  @media screen and (max-width: 991px) {
    #partners .table-container {
      width: 100%; } }
  #partners .table-container table {
    width: 100%; }
    #partners .table-container table tr th {
      width: 50%;
      font-weight: normal;
      padding: 1rem;
      border-bottom: 1px solid #c7c7c7; }
      @media screen and (max-width: 767px) {
        #partners .table-container table tr th {
          width: 47%; } }
      @media screen and (max-width: 575px) {
        #partners .table-container table tr th {
          display: block;
          width: 100%; } }
    #partners .table-container table tr td {
      width: 50%;
      font-weight: normal;
      padding: 1rem;
      border-bottom: 1px solid #c7c7c7; }
      @media screen and (max-width: 767px) {
        #partners .table-container table tr td {
          width: 53%; } }
      @media screen and (max-width: 575px) {
        #partners .table-container table tr td {
          display: block;
          width: 100%; } }

#access .d-flex {
  flex-wrap: wrap; }
#access .title-container {
  width: 30%; }
  @media screen and (max-width: 1399px) {
    #access .title-container {
      width: 25%; } }
  @media screen and (max-width: 1199px) {
    #access .title-container {
      width: 20%; } }
  @media screen and (max-width: 991px) {
    #access .title-container {
      width: 100%;
      margin-bottom: 2rem; } }
#access .google-map {
  width: 70%; }
  @media screen and (max-width: 1399px) {
    #access .google-map {
      width: 75%; } }
  @media screen and (max-width: 1199px) {
    #access .google-map {
      width: 80%; } }
  @media screen and (max-width: 991px) {
    #access .google-map {
      width: 100%; } }
  #access .google-map iframe {
    width: 100%;
    height: 375px; }
    @media screen and (max-width: 575px) {
      #access .google-map iframe {
        height: 300px; } }
