@charset "UTF-8";

/* ============================================================
   Section heading (.h3-3-outline)
   ============================================================ */

.h3-3-outline {
  position: relative;
  padding: 0.35rem 0.5rem;
  font-weight: bold;
  font-size: 1.05rem !important;
  margin-bottom: 0.75rem !important;
}

.h3-3-outline::before,
.h3-3-outline::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-image: linear-gradient(135deg, #6c757d 0%, #f5f7fa 110%);
}

.h3-3-outline::before { top: 0; }
.h3-3-outline::after  { bottom: 0; }


/* ============================================================
   Greeting (.img-container)
   ============================================================ */

.img-container {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  align-items: flex-end;
  text-align: right;
}

.img-container > img {
  max-width: 180px;
}

.img-container ul {
  margin: 0 0 7px;
  padding: 0;
}

.img-container ul li {
  list-style: none;
  line-height: 1.65;
  font-size: 105%;
  color: #4a4a4a;
}

.img-container ul li:nth-child(1) {
  font-size: 105%;
  line-height: 1.45;
  color: #4a4a4a;
  margin-bottom: 7px;
}

.img-container ul li:nth-child(2) {
  margin-bottom: 4px;
}

.img-container ul li:nth-child(3) {
  font-size: 80%;
  color: #4a4a4a;
  line-height: 1.45;
}

.img-container ul li:nth-child(1) > span,
.img-container ul li:nth-child(3) > span {
  display: inline-block;
}

@media (max-width: 575px) {
  .img-container {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    text-align: left;
  }

  .img-container img {
    order: 1;
    margin-bottom: 15px;
  }

  .img-container .chaiman {
    order: 2;
  }

  .img-container ul { margin: 0; }

  .img-container ul li:nth-child(1) { font-size: 16px; }
  .img-container ul li:nth-child(2) { font-size: 16px; }
  .img-container ul li:nth-child(3) { font-size: 13px; }
}

@media (max-width: 400px) {
  .img-container img { width: 100%; }
}

.greeting-txt > p {
  margin-top: 1.5rem;
  font-weight: 500;
  font-size: 1rem;
  line-height: 2.2;
  letter-spacing: 0.05rem !important;
  text-align: justify;
  text-justify: inter-ideograph;
}


/* ============================================================
   Sponsor (.sponsor-area)
   ============================================================ */

.sponsor-area p,
.sponsor-area ul li {
  text-align: justify;
  text-justify: inter-ideograph;
}

.kyousan {
  position: relative;
}

.kyousan i {
  position: absolute;
  left: 10px;
  top: 10px;
}


/* ============================================================
   Access (iframe map)
   ============================================================ */

.content-area iframe {
  width: 100%;
  min-height: 350px;
}
