/* ヘッダー
-----------------------------------------------------------------------*/
/*アンカー対策*/
a.anchor_link {
  display: block;
  padding-top: 100px;
  margin-top: -100px;
}
@media screen and (max-width: 1500px) {
  /*アンカー対策*/
  a.anchor_link {
    display: block;
    padding-top: 70px;
    margin-top: -70px;
  }
}
/*
/*ヘッダーブロック*/
.header_block {
  display: flex;
  justify-content: center;
  width: 100%;
  height: auto;
  position: fixed;
  z-index: 1;
  top: 0px;
  background-color: rgba(255, 255, 255, 0.8)
}
/* ヘッダーメニュー*/
.main-navigation {
  position: absolute;
}
.header_block_in {
  max-width: 1200px;
  width: 100%;
  height: 128px;
  display: flex;
  justify-content: flex-start;
  margin: auto;
  padding: 0px 0px 0px 380px;
}
/* サイト名*/
.site_name_block {
  max-width: 1200px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  z-index: 1;
  padding: 0px;
  position: fixed;
}
.site_name {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #18b7cd;
  max-width: 340px;
  width: 100%;
  height: 128px;
 line-height: 0px
}
.site_name img {
  max-width: 255px;
width: 100%;
height: auto
}
@media screen and (max-width: 1100px) {
.header_block_in {
  height: 60px;
  }
  .site_name {
  max-width: 150px;
  height: 60px;
padding: 10px;
  }
  .header_block_in img {
    max-width: 100px; 
  }
}
@media screen and (max-width: 500px) {
.header_block_in {
  height: 60px;
  }
  .site_name {
  max-width: 150px;
  height: 60px;
padding: 10px;
  }
  .header_block_in img {
    max-width: 100px;
  }
}
/* フッター
-----------------------------------------------------------------------*/
footer {
  width: 100%;
}
.copyright {
  width: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  text-align: center;
  font-size: 13px;
  background-color: #006837;
  color: #fff;
padding: 1.5em 20px
}
.copyright a {
  text-align: center;
  letter-spacing: 2px;
}
@media screen and (max-width: 650px) {
  .copyright {
  font-size: 10px;
padding-bottom: 60px
  }
}
/* ページトップへ移動ボタン
-----------------------------------------------------------------------*/
.scroll_top {
  opacity: 0; /* 初期状態では透明 */
  transition: opacity 0.5s ease; /* 透明度の変化を滑らかに */
  pointer-events: none; /* 初期状態ではクリック不可 */
}
.scroll_top.show {
  opacity: 1; /* 表示時の透明度 */
  pointer-events: auto; /* 表示時はクリック可能 */
}
.scroll_top a {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative; /* 親要素に相対位置を設定 */
  position: fixed;
  right: 15px;
  bottom: 15px;
  background-color: rgba(0, 0, 0, 0.8);
  width: 50px;
  height: 50px;
  border-radius: 50%;
  opacity: 1;
}
.scroll_top a::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  transform: translate(-50%, -50%);
}
.scroll_top a::after {
  content: "";
  position: absolute;
  margin: auto;
  top: 22px;
  left: 19px;
  width: 10px;
  height: 10px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  transform: rotate(-45deg);
  transition: 0.3s ease-in-out;
}
.scroll_top a:hover::after {
  top: 30px;
}
@media screen and (max-width: 480px) {
  .scroll_top a {
    transform: scale(0.7);
    right: 10px;
    bottom: 10px;
  }
  .scroll_top a:hover::after {
    top: 22px;
  }
}