/**
 * Mixin
 */
.a_intro {
  background-image: url(../img/about/a_intro_bg.png);
  background-size: cover;
  padding: 50px;
}
@media only screen and (max-width: 767px) {
  .a_intro {
    padding: 30px 3%;
  }
}
.a_intro .inner {
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
  padding: 50px;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 10px;
  line-height: 2.4;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .a_intro .inner {
    padding: 30px 20px;
    font-size: 1.6rem;
  }
}

.a_history {
  padding: 80px 3%;
}
@media only screen and (max-width: 767px) {
  .a_history {
    padding: 50px 3%;
  }
}
.a_history h2 {
  margin-bottom: 0 0 80px;
}
.a_history h3 {
  color: #ec6941;
  font-weight: 700;
  font-size: 2.4rem;
  line-height: 2;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .a_history h3 {
    font-size: 1.8rem;
    margin-bottom: 20px;
  }
}
.a_history p {
  line-height: 2;
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .a_history p {
    margin-bottom: 20px;
  }
}
.a_history .img {
  margin-bottom: 30px;
}
@media only screen and (max-width: 767px) {
  .a_history .img {
    margin-bottom: 20px;
  }
}
.a_history p + h3 {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .a_history p + h3 {
    margin-top: 40px;
  }
}

.a_greeting {
  padding: 80px 3% 50px;
  background-color: #fff0e5;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .a_greeting {
    padding: 50px 3%;
  }
}
.a_greeting .page_inner {
  background-color: #fff;
  padding: 50px;
  line-height: 2.1;
}
@media only screen and (max-width: 767px) {
  .a_greeting .page_inner {
    padding: 30px 20px;
  }
}
.a_greeting .page_inner p {
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .a_greeting .page_inner p {
    font-size: 1.6rem;
  }
}
.a_greeting .page_inner .img {
  width: 570px;
  max-width: 100%;
  margin: 50px auto 0;
}
.a_greeting .page_inner .name {
  font-size: 2.4rem;
  margin-top: 30px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  .a_greeting .page_inner .name {
    font-size: 1.8rem;
    margin-top: 10px;
  }
}

.a_table {
  background-image: url(../img/about/a_table_bg.png);
  background-size: cover;
  padding: 50px 3%;
}
.a_table .page_inner {
  background-color: rgba(255, 255, 255, 0.8);
  padding: 50px 60px;
  border-radius: 10px;
}
@media only screen and (max-width: 767px) {
  .a_table .page_inner {
    padding: 30px 20px;
  }
}
.a_table table {
  width: 100%;
}
.a_table table th, .a_table table td {
  padding: 10px 0;
  font-size: 2rem;
}
@media only screen and (max-width: 767px) {
  .a_table table th, .a_table table td {
    display: block;
  }
}
.a_table table th {
  text-align: left;
  color: #ec6941;
  width: 170px;
}
@media only screen and (max-width: 767px) {
  .a_table table th {
    padding-bottom: 0;
  }
}