html］ホームページ@charset "UTF-8";

/**
 * ***************************************
 * ［index.html］ホームページ
 * ***************************************
 */

/* ホーム - メインコンテナ */
.page-main {
  background: url(../img/common/bg.jpg);
  background: #fcfefecb;
}
.main-container {
  padding: 10px 4%;
}
@media (min-width: 768px) {
.main-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 20px;
  }
}

/* キャッチフレーズ */
.home-lead {
  background: #6f7ce0cb;
  background: url(../img/common/home-bg.svg);
  max-width: 600px;
  margin: 0 auto 20px auto;
  text-align: center;
}
.home-lead p {
  margin: 0;
  font-size: 1rem;
  line-height: 2;
}



/* ホーム - ニュースコンテナ */
.news {
  background: #8691e5cb;
  background: url(../img/common/home-bg.svg);
}
.news-container {
  padding: 60px 4%;
  text-align: center;
}
@media (min-width: 768px) {
  .news-container {
    max-width: 740px;
    margin: 0 auto;
    padding: 60px 20px;
  }
}

/**
 * ---------------------------------------
 * ［index.html］ホームページ - モジュール
 */
/*-------------------------------------------
hero-container
-------------------------------------------*/
.hero-container {
  height: 400px;
  margin-bottom: 120px;
  position: relative;
}
.hero-container .fade-img img {
  width: 100%;
  height: 500px;
  object-fit: cover;
}
.hero-container .fade-img li {
  width: 70%;
  position: absolute;
  right: 0;
  opacity: 0;
  animation: fade 12s infinite;
}
.hero-container .fade-img li:nth-child(1) {
  animation-delay: 0s;
}
.hero-container .fade-img li:nth-child(2) {
  animation-delay: 4s;
}
.hero-container .fade-img li:nth-child(3) {
  animation-delay: 8s;
}


@keyframes fade {
  0% {
    opacity: 0;
  }
  15% {
    opacity: 1;
  }
  30% {
    opacity: 1;
  }
  45% {
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
.hero-container .catchphrase {
  font-family: 'Zen Old Mincho', serif;
  font-size: 50px;
  text-shadow: 1px 1px 3px #fff;
  position: absolute;
  top: 210px;
  left: 6%;
}

 

/* キャッチフレーズ */
.home-lead {
  background: #6f7ce0cb;
  background: url(../img/common/home-bg.svg);
  max-width: 600px;
  margin: 0 auto 20px auto;
  text-align: center;
}
.home-lead p {
  margin: 0;
  font-size: 1rem;
  line-height: 2;
}

/* テキストと背景を組み合わせる */
/* .main-container h2 {
  display: grid;
  place-items: center;
  margin: 0 auto 30px auto;
  width: 200px;
  height: 10px;
  color: #360202;
  font-family: 'Croissant One', cursive;
  font-weight: 400;
  font-size: 30px;
}*/

/* カード型レイアウト */
.home-latest {
  margin: 0 0 60px 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: minmax(100px, auto);
  column-gap: 10px;
  row-gap: 30px;
}
@media (min-width: 768px) {
  .home-latest {
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 20px;
  }
}
/* それぞれのカードの中身 */
.latest-item {
  border: 1px solid #d8d8d8;
  background: #bad7f0;
}
@media (min-width: 768px) {
  .latest-item {
    border: none;
    background: none;
  }
}

  .img-item {
    width: 100%;
    height: 200px;
    object-fit: cover; /* width, heightといっしょに使います */
    border: 1px solid #111;
  }

  .latest-image img {
    margin: 0 0 10px 0;
  }
  .latest-image img:hover {
    opacity: .5;
  }
  .latest-text {
    margin-bottom: 10px;
    padding: 0 10px;
  }
  @media (min-width: 768px) {
    .latest-text {
      padding: 0;
    }
  }
  .latest-text h3 {
    margin: 0 0 10px 0;
    font-size: 1rem;
    line-height: 1.5;
  }
  .latest-text h3 a {
    color: #000000;
    background-color: #c8efc0;
    text-decoration: none;
  }
  .latest-text h3 a:hover {
    opacity: .5;
  }
  /* ホーム 共通のタグ */
  .home-tag {
    margin-bottom: 1rem;
  }
  .home-tag span {
    margin: 0 3px 3px 0;
    padding: 2px 10px;
    border: 1px solid #73cbd6;
    border-radius: 100px;
    font-size: .75rem;
  }
  .home-tag span a {
    color: #73cbd6;
    text-decoration: none;
  }
  /* ホーム 共通の場所情報 */
  .home-info {
    display: flex;
    font-size: .75rem;
  }
  .home-info span::before {
    padding-right: 5px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #73cbd6;
    content: "\f3c5";
  }

  /* メディアオブジェクト */
  .home-popular {
    margin: 0 0 60px 0;
    border-top: 1px solid #d8d8d8;
  }
  .home-popular a {
    display: block;
    color: #000000;
    text-decoration: none;
  }
  .home-popular a:hover {
    opacity: .5;
  }
  .popular-item {
    display: flex;
    align-items: center;
    padding: 5px 0;
    border-bottom: 1px solid #d8d8d8;
  }
  .popular-photo {
    flex: 0 0 30%;
    margin-right: 15px;
  }

  .popular-text {
    flex: 1 1 auto;
  }

  .popular-text h3 {
    margin: 0 0 10px 0;
    font-size: 1rem;
    line-height: 1.5;
  }

  .popular-text p {
    margin: 0 0 10px 0;
    /*display: none;/* モバイルで非表示 */
  }
  @media (min-width: 768px) {
    .popular-text h3 {
      font-size: 1.25rem;
    }
    .popular-text p {
      display: block;
      font-size: 0.875rem;
      line-height: 1.5;
    }
  }

  /* テーブル形のリスト */
  .news-container h2 {
    margin: 0 0 30px 0;
    font-family: 'Croissant One', cursive;
    font-weight: 400;
    font-size: 1.875rem;
  }
  @media (min-width: 768px) {
    .news-container h2 {
      max-width: 700px;
      margin: 0 auto 30px auto;
    }
  }
  .home-news {
    padding: 20px;
    background: #ffffff;
    border-radius: 20px;
  }
  @media (min-width: 768px) {
    .home-news {
      max-width: 700px;
      margin: 0 auto;
      padding: 40px;
    }
  }
  .home-news dl {
    display: flex;
    margin: 0;
    padding: 20px 0;
    border-top: 1px solid #d8d8d8;
  }
  .home-news dl:last-child {
    border-bottom: 1px solid #d8d8d8;
  }
  .home-news dt {
    margin: 0 20px 0 0;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .home-news dd {
    margin: 0;
    font-size: 1rem;
    line-height: 1.5;
  }
  .home-news dd a {
    color: #73cbd6;
    text-decoration: none;
  }
  .home-news dd a:hover {
    opacity: .5;
  }

  #slideshow img {
    position: absolute;
    top: 0;
    left:0;
    z-index: 8;
    opacity: 0.0;
  }
  #slideshow img.active {
    z-index: 10;
    opacity: 1.0;
  }
  #slideshow img.last-active {
    z-index: 9;
  }


/*-------------------------------------------
スマートフォン
-------------------------------------------*/
@media screen and (max-width: 767px) {
  .section-title {
    font-size: 12vw;
  }

  /*-------------------------------------------
  hero-container
  -------------------------------------------*/
  .hero-container {
    height: 400px;
    margin-bottom: 60px;
  }
  .hero-container .fade-img img {
    height: 400px;
  }
  .hero-container .fade-img li {
    width: 100%;
  }
  .hero-container .catchphrase {
    color: #fff;
    text-shadow: 1px 1px 1px #777;
    font-size: 28px;
    top: 300px;
    left: 6%;
  }
 

/* キャッチフレーズ */
.home-lead {
  background: #6f7ce0cb;
  background: url(../img/common/home-bg.svg);
  max-width: 600px;
  margin: 0 auto 20px auto;
  text-align: center;
}
.home-lead p {
  margin: 0;
  font-size: 1rem;
  line-height: 2;
}

/* テキストと背景を組み合わせる */
/* .main-container h2 {
  display: grid;
  place-items: center;
  margin: 0 auto 30px auto;
  width: 200px;
  height: 10px;
  color: #360202;
  font-family: 'Croissant One', cursive;
  font-weight: 400;
  font-size: 30px;
}*/

/* カード型レイアウト */
.home-latest {
  margin: 0 0 60px 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-auto-rows: minmax(100px, auto);
  column-gap: 10px;
  row-gap: 30px;
}
@media (min-width: 768px) {
  .home-latest {
    grid-template-columns: 1fr 1fr 1fr;
    column-gap: 20px;
  }
}
/* それぞれのカードの中身 */
.latest-item {
  border: 1px solid #d8d8d8;
  background: #bad7f0;
}
@media (min-width: 768px) {
  .latest-item {
    border: none;
    background: none;
  }
}

  .img-item {
    width: 100%;
    height: 200px;
    object-fit: cover; /* width, heightといっしょに使います */
    border: 1px solid #111;
  }

  .latest-image img {
    margin: 0 0 10px 0;
  }
  .latest-image img:hover {
    opacity: .5;
  }
  .latest-text {
    margin-bottom: 10px;
    padding: 0 10px;
  }
  @media (min-width: 768px) {
    .latest-text {
      padding: 0;
    }
  }
  .latest-text h3 {
    margin: 0 0 10px 0;
    font-size: 1rem;
    line-height: 1.5;
  }
  .latest-text h3 a {
    color: #000000;
    background-color: #c8efc0;
    text-decoration: none;
  }
  .latest-text h3 a:hover {
    opacity: .5;
  }
  /* ホーム 共通のタグ */
  .home-tag {
    margin-bottom: 1rem;
  }
  .home-tag span {
    margin: 0 3px 3px 0;
    padding: 2px 10px;
    border: 1px solid #73cbd6;
    border-radius: 100px;
    font-size: .75rem;
  }
  .home-tag span a {
    color: #73cbd6;
    text-decoration: none;
  }
  /* ホーム 共通の場所情報 */
  .home-info {
    display: flex;
    font-size: .75rem;
  }
  .home-info span::before {
    padding-right: 5px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #73cbd6;
    content: "\f3c5";
  }

  /* メディアオブジェクト */
  .home-popular {
    margin: 0 0 60px 0;
    border-top: 1px solid #d8d8d8;
  }
  .home-popular a {
    display: block;
    color: #000000;
    text-decoration: none;
  }
  .home-popular a:hover {
    opacity: .5;
  }
  .popular-item {
    display: flex;
    align-items: center;
    padding: 5px 0;
    border-bottom: 1px solid #d8d8d8;
  }
  .popular-photo {
    flex: 0 0 30%;
    margin-right: 15px;
  }

  .popular-text {
    flex: 1 1 auto;
  }

  .popular-text h3 {
    margin: 0 0 10px 0;
    font-size: 1rem;
    line-height: 1.5;
  }

  .popular-text p {
    margin: 0 0 10px 0;
    /*display: none;/* モバイルで非表示 */
  }
  @media (min-width: 768px) {
    .popular-text h3 {
      font-size: 1.25rem;
    }
    .popular-text p {
      display: block;
      font-size: 0.875rem;
      line-height: 1.5;
    }
  }

  /* テーブル形のリスト */
  .news-container h2 {
    margin: 0 0 30px 0;
    font-family: 'Croissant One', cursive;
    font-weight: 400;
    font-size: 1.875rem;
  }
  @media (min-width: 768px) {
    .news-container h2 {
      max-width: 700px;
      margin: 0 auto 30px auto;
    }
  }
  .home-news {
    padding: 20px;
    background: #ffffff;
    border-radius: 20px;
  }
  @media (min-width: 768px) {
    .home-news {
      max-width: 700px;
      margin: 0 auto;
      padding: 40px;
    }
  }
  .home-news dl {
    display: flex;
    margin: 0;
    padding: 20px 0;
    border-top: 1px solid #d8d8d8;
  }
  .home-news dl:last-child {
    border-bottom: 1px solid #d8d8d8;
  }
  .home-news dt {
    margin: 0 20px 0 0;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .home-news dd {
    margin: 0;
    font-size: 1rem;
    line-height: 1.5;
  }
  .home-news dd a {
    color: #73cbd6;
    text-decoration: none;
  }
  .home-news dd a:hover {
    opacity: .5;
  }

  #slideshow img {
    position: absolute;
    top: 0;
    left:0;
    z-index: 8;
    opacity: 0.0;
  }
  #slideshow img.active {
    z-index: 10;
    opacity: 1.0;
  }
  #slideshow img.last-active {
    z-index: 9;
  }
}
/* ギャラリー */
#content #main ul#gallery {
	margin-top: 30px;
	overflow: hidden;
 /* ClearFix 
	/zoom: 1;
 /* ClearFix for IE6-7 */
}

#content #main ul#gallery li {
	float: left;
	margin: 0 0 15px 15px;
}

#content #main ul#gallery.jsReady {
	position: relative;
}

#content #main ul#gallery.jsReady li {
	position: absolute;
	float: none;
	margin: 0;
}

#content #main ul#gallery li a {
	display: block;
	padding: 3px;
	font-family: Helvetica, Arial, sans-serif;
	font-size: 71.4%;
	text-decoration: none;
	color: #898989;
	background: #f9f9f9;
	border: 1px solid #d7d7d7;
	-webkit-border-radius: 3px;
}

#content #main ul#gallery li a:hover {
	color: #fff;
	background: #0cc;
	border-color: #00c9c9;
}

#content #main ul#gallery li a span {
	display: block;
	padding: 3px 2px 1px;
}