/* Scss Document */
/* Scss Document */
.contents {
  width: 1300px;
  margin: 100px auto 0;
  padding: 0; }

@media (max-width: 1400px) {
  .contents {
    width: calc(100% - 80px);
    margin: 100px 40px 0; } }
@media (max-width: 700px) {
  .contents {
    width: calc(100% - 40px);
    margin: 60px 20px 0; } }
.greeting {
  margin: 0 0 150px;
  padding: 0; }
  .greeting__title {
    margin: 0 0 50px;
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 1.0; }
    .greeting__title span {
      padding: 0 0 30px;
      display: inline-block;
      background-image: url("../img/common/bg_hl.jpg");
      background-position: bottom left;
      background-repeat: repeat-x; }

.greetingCnts {
  margin: 0;
  padding: 0; }
  .greetingCnts:first-of-type {
    margin: 0 0 80px;
    padding: 0 0 80px;
    border-bottom: 1px solid #DDD; }
    .greetingCnts:first-of-type .greetingCnts__wrapper--txt {
      width: 100%; }
      .greetingCnts:first-of-type .greetingCnts__wrapper--txt span {
        margin: 10px 0 0;
        font-size: 0.9375rem;
        line-height: 1.5;
        display: block; }
        .greetingCnts:first-of-type .greetingCnts__wrapper--txt span:first-of-type {
          margin: 30px 0 0; }
        .greetingCnts:first-of-type .greetingCnts__wrapper--txt span em {
          font-size: 1.5rem;
          font-style: normal;
          display: block; }
  .greetingCnts__cc {
    color: #67919d;
    font-size: 2.25rem;
    font-family: "Zen Maru Gothic", sans-serif;
    line-height: 1.75; }
  .greetingCnts__wrapper {
    margin: 40px 0 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    .greetingCnts__wrapper--txt {
      width: calc(100% - 250px - 40px);
      font-size: 1.125rem; }
  .greetingCnts__person {
    width: 250px;
    margin: 0 0 0 40px; }
    .greetingCnts__person--image {
      width: 100%;
      overflow: hidden;
      -webkit-border-radius: 50%;
      -moz-border-radius: 50%;
      border-radius: 50%;
      position: relative; }
      .greetingCnts__person--image::before {
        content: '';
        display: block;
        padding-top: 100%; }
      .greetingCnts__person--image span {
        display: block;
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
        .greetingCnts__person--image span img {
          width: 100%;
          height: 100%;
          object-fit: cover; }
    .greetingCnts__person--org {
      margin: 15px 0 0;
      font-size: 0.9375rem;
      line-height: 1.6;
      text-align: center; }
    .greetingCnts__person--name {
      margin: 10px 0 0;
      font-size: 1.5rem;
      line-height: 1.0;
      text-align: center; }
      .greetingCnts__person--name span {
        margin: 0 0 10px;
        font-size: 0.9375rem;
        display: block; }

@media (max-width: 1000px) {
  .greetingCnts__cc {
    font-size: 2rem; }
  .greetingCnts__wrapper {
    flex-direction: column;
    align-items: center; }
    .greetingCnts__wrapper--txt {
      width: 100%;
      font-size: 1.125rem; }
  .greetingCnts__person {
    margin: 30px 0 0; } }
@media (max-width: 700px) {
  .greeting__title {
    font-size: 1.5rem; }

  .greetingCnts__cc {
    font-size: 1.5rem; }
  .greetingCnts__person--name {
    font-size: 1.25rem; } }
@media (max-width: 310px) {
  .greetingCnts__person {
    width: 100%; } }
.outline {
  margin: 0 0 150px;
  padding: 0; }
  .outline__title {
    margin: 0 0 50px;
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 1.0; }
    .outline__title span {
      padding: 0 0 30px;
      display: inline-block;
      background-image: url("../img/common/bg_hl.jpg");
      background-position: bottom left;
      background-repeat: repeat-x; }
  .outline__txt {
    font-size: 1.125rem; }

@media (max-width: 700px) {
  .outline__title {
    font-size: 1.5rem; } }
.outlineTable {
  width: 100%;
  margin: 35px 0 0;
  border-collapse: collapse; }
  .outlineTable__row--left {
    padding: 25px 0;
    color: #ff7f77;
    font-size: 1.125rem;
    font-weight: 700;
    line-height: 1.5;
    border-bottom: 1px solid #DDD; }
  .outlineTable__row--right {
    padding: 25px 0;
    font-size: 1.125rem;
    line-height: 1.5;
    border-bottom: 1px solid #DDD; }

@media (max-width: 700px) {
  .outlineTable__row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-direction: column; }
    .outlineTable__row--left {
      padding: 25px 0 0;
      border-bottom: none; }
    .outlineTable__row--right {
      padding: 15px 0 25px; } }
.history {
  margin: 0 0 150px;
  padding: 0; }
  .history__title {
    margin: 0 0 50px;
    font-size: 1.875rem;
    font-weight: 500;
    line-height: 1.0; }
    .history__title span {
      padding: 0 0 30px;
      display: inline-block;
      background-image: url("../img/common/bg_hl.jpg");
      background-position: bottom left;
      background-repeat: repeat-x; }

@media (max-width: 700px) {
  .history__title {
    font-size: 1.5rem; } }
.year {
  width: 800px;
  margin: 0;
  padding: 0;
  list-style: none;
  position: relative; }
  .year::before {
    content: '';
    width: 1px;
    height: 100%;
    background-color: #444;
    position: absolute;
    top: 0;
    left: 249px; }
  .year__item {
    margin: 0;
    padding: 40px 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    border-bottom: 1px dashed #DDD;
    position: relative; }
    .year__item:last-of-type {
      margin: 0;
      border-bottom: none; }
    .year__item--num {
      width: 80px;
      font-size: 0.9375rem;
      line-height: 1.0;
      text-align: center; }
      .year__item--num span {
        margin: 0 0 10px;
        color: #5cc2cf;
        font-size: 1.875rem;
        font-family: "Zen Maru Gothic", sans-serif;
        font-weight: 700;
        display: block; }

@media (max-width: 900px) {
  .year {
    width: 100%; } }
@media (max-width: 700px) {
  .year::before {
    content: none; }
  .year__item {
    padding: 0 0 30px;
    flex-direction: column; }
    .year__item:not(:first-of-type) {
      margin: 30px 0 0; }
    .year__item--num {
      width: 100%;
      text-align: left;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center; }
      .year__item--num span {
        margin: 0;
        display: inline-block; } }
.date {
  width: calc(100% - 80px - 60px);
  margin: 0 0 0 60px;
  padding: 0;
  list-style: none; }
  .date__item {
    margin: 0 0 20px;
    padding: 0;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
    position: relative; }
    .date__item:last-of-type {
      margin: 0; }
    .date__item--num {
      width: 110px;
      position: relative; }
      .date__item--num::after {
        content: '';
        width: 20px;
        height: 20px;
        background-color: #FFF;
        border: 6px solid #5cc2cf;
        -webkit-border-radius: 50%;
        -moz-border-radius: 50%;
        border-radius: 50%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        position: absolute;
        top: 50%;
        right: -10px;
        -moz-transform: translateY(-50%);
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%); }
    .date__item--right {
      width: calc(100% - 140px);
      margin: 0;
      padding: 0 0 0 60px;
      font-size: 1.125rem;
      line-height: 1.5;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center;
      justify-content: space-between;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }

@media (max-width: 700px) {
  .date {
    width: 100%;
    margin: 20px 0 0; }
    .date__item--num {
      padding: 0 0 0 30px;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      .date__item--num::after {
        right: auto;
        left: 0; }
    .date__item--right {
      width: calc(100% - 110px);
      padding: 0; } }
