* {
padding: 0;
margin: 0;
box-sizing: border-box;
}
/* ローディング画面 */
  #loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #0bd;

  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  }
  .spinner {
  width: 100px;
  height: 100px;
  margin: 200px auto;
  background-color: #fff;
  border-radius: 100%;
  animation: sk-scaleout 1.0s infinite ease-in-out;
  }
  /* ローディングアニメーション */
  @keyframes sk-scaleout {
  0% {
    transform: scale(0);
  } 100% {
    transform: scale(1.0);
    opacity: 0;
  }
  }
  .loaded {
  opacity: 0;
  visibility: hidden;
  }
html, body {
  height: 100%;
  margin: 0;
  padding: 0;
  /*background-color: rgba(95, 193, 199, 0.5);*/
  /*background-color: #0290ff;*/
  background-color: #fff;
  font-family: "ヒラギノ角ゴシック", "游ゴシック", "メイリオ";
}
header {
  padding: 30px 7.5% 10px 7.5%;
  border-bottom: 1px solid #CCC;
  /*position: fixed;*/
  top: 0;
  width: 100%;
  background-color: #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.header_icon {
  width: 240px;/*320 50*/
  height: 38px;
}
.header_icon_mymap {
  width: 342px;/*585 65*/
  height: 38px;
}
.header_comment_wrapper{
  text-align: center;
  background-color: #d4dce0;
}
.check_today_video{
  text-align: center;
  background-color: #ffcc99;
  padding: 10px 0;
  font-size: 20px;
}
/*
nav {
   margin: 0 0 0 auto;
}
*/
ul {
   list-style: none;
   font-size: 16px;
   /*margin: 0;*/
   /*display: flex;*/
}
li {
   margin: 0 0 0 15px;
   font-size: 18px;
}
.nav_list {
   text-decoration: none;
   color: #4b4b4b;
}
h1 {
   margin: 0; padding: 0;
   font-size: 34px;
}
h2 {
    font-size: 20px;
}
.top_info, .top_htu {
  text-align: center;
  background-color: #DFB793;
  border-top: 1px solid #c0c6c9;
  border-bottom: 1px solid #c0c6c9;
  /*color: #474a4d;*/
  color: #000;
  font-size: 14px;
  margin-top: 0;
}
.top_htu {
  background-color: rgb(193,137,110);
}
#map {
  height: 80%;
  width: 85%;
  margin: 30px auto 0 auto;
  z-index: 2;
}
#LikesIcon {
  max-width: 35px;
}
.btn_wrapper {
  text-align: center;
  margin: 30px 0;
}
.btn,
a.btn,
button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0.5rem;
}
.btn--orange,a.btn--orange {
  /*text-align: center;*/
  color: #fff;
  /*background-color: #eb6100;*/
  background-color: rgb(254,92,0);
}
.btn--orange:hover,a.btn--orange:hover {
  color: #fff;
  background: #f56500;
}
.pref_selecter {
  margin-left: 7.5%;
}
/*テストコード*/

footer {
width: 100%;
/*height: 85px;*/
text-align: center;
color: #000;
/*background-color: #fef4f4;*/
/*padding-top: 10px;カメ除き*/
}
.footer_wrapper {
  margin-top: 30px;
}
.footer_title {
  font-size: 20px;
  padding-top: 20px;
  padding-bottom: 8px;
  margin-top: 30px;
}
.footer_copyright {
  font-size: 13px;
  padding-top: 50px;
  padding-bottom: 5px;
}
.footer-text {
color: #fff;
}
.br-sp {
  display: none;
}
@keyframes heartAnimation {
0% {
/* アイコンサイズをもとのより小さくする */
transform: scale(0.5);
}
10% {
transform: scale(0.7);
}
30% {
transform: scale(0.9);
}
50% {
transform: scale(1.2);
}
80% {
transform: scale(1.5);
}
100% {
/* もとのサイズに戻す */
transform: scale(1.0);
}
}
.LikesIcon-fa-heart{
font-size: 30px;
}
.LikesIcon-fa-heart.heart{
/* heartAnimationアニメーションを200ミリ秒かけて実行する */
animation: heartAnimation .2s;
/* アイコン色を黒から赤へ変更する */
color: #e2264d;
}

/*infoWindow用*/
.infoWindow{
  /*width: 50px;*/
  padding:16px;
}
/* 
.badge-container {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100vw;
  height: 100vh;
  padding: 1.5rem 6rem;
  box-sizing: border-box;
  background-color: #fefefe;
  gap: 1rem;
} */
.badge {
  display: inline-block;
  color: #fff;
  padding: 0.1rem 0.3rem;
  border-radius: 0.8rem;
  font-size: 0.95rem;
  text-transform: uppercase;
  text-align: center;
  white-space: nowrap;
  margin: 0.3rem 0;
}

.bg-new {
  /* background-color: #3998DB; */
  background-color: #1877f2;
}
.bg-nearest {
  /* background-color: darksalmon; */
  background-color: #DA1725;
}
.infowindow_distance{
  /*background: linear-gradient(transparent 50%, #ff99ab 70%); */
  text-decoration: underline;
  text-decoration-thickness: 0.5em; 
  /* text-decoration-color: #FFF700; */
  text-decoration-color: #90eeff;
  text-underline-offset: -0.3em;
  text-decoration-skip-ink: none;
  font-weight: bold;
  font-size: 16px;
  margin: 8px 0px;

}
.infowindow_distance_num{
  /* background: linear-gradient(transparent 50%, #ff99ab 70%); */
  text-decoration: underline; 
  text-decoration-thickness: 0.5em; /* 線の太さ */
  /* text-decoration-color: rgba(255, 228, 0, 0.4); 線の色 */
  text-decoration-color: #FFF700; 
  text-underline-offset: -0.3em; /* 線の位置。テキストに重なるようにやや上部にする */
  text-decoration-skip-ink: none; /* 下線と文字列が重なる部分でも下線が省略されない（線が途切れない） */
  font-weight: bold;
  font-size: 16px;
  text-align: right;
}
.infowindow_title{
  font-size: 20px;
  font-weight: bold;
  /*margin-top: 4px;*/
}
.infowindow_img{
  margin-right: 5px;
  height: 90px;
  width: 160px;
}
.infowindow_content{
  font-size: 12px;
}
.infowindow_img{
  width: 100%;
}

.infowindow_url{
  font-size: 16px;
  margin-top: 12px;
}

.box-text-point {
  position: relative;
  border: 3px solid #FCF16E;
  border-radius: 5px;
  margin: 40px 20px 20px 20px;
  padding: 20px 20px 5px 20px;
}
.box-text-point::before {
  content: "注意事項";
  position: absolute;
  background-color: #fff;
  color: #033;
  font-weight: bold;
  left: 20px;
  top: -23px;
  padding: 10px;
}
/*
.search_container{
  position: relative;
  box-sizing: border-box;
  border: 2px solid #3879D9;
  padding: 3px 10px;
  border-radius: 3px;
  height: 2.3em;
  /*width: 265px;
  width: 85%;
  margin: 30px auto 0 auto;
  overflow: hidden;
}
.search_container input[type="text"]{
  border: none;
  height: 2.0em;
}
.search_container input[type="text"]:focus {
  outline: 0;
}
.search_container input[type="submit"]{
  cursor: pointer;
  font-family: FontAwesome;
  border: none;
  background: #3879D9;
  color: #fff;
  position: absolute;
  width: 3.5em;
  height: 3.0em;
  right:0px;
  top: -5px;
  outline : none;
}
*/

a{
  text-decoration: none;
}

/*ナビメニューのスタイルを指定*/
nav.NavMenu{
  position: fixed; /*表示位置を固定*/
  z-index: 10;
  top: 0;
  left: 0;
  background: #fff;
  color: #000;
  text-align: center;
  width: 100%;
  transform: translateY(-100%); /*ナビを上に隠す*/
  transition: all 0.6s; /*アニメーションの時間を指定*/
  }

  nav.NavMenu ul{
  background: #000;
  width: 100%;
  margin: 0 auto;
  padding: 0;
  padding-top: 60px;
  padding-bottom: 60px;
  }

  nav.NavMenu ul li{
  font-size: 24px;
  list-style-type: none;
  width: 100%;
  padding-bottom: 0px;
  }

  nav.NavMenu ul li:last-child{
  padding-bottom: 0;
  }

  nav.NavMenu ul li a{
  display: block;
  color: #fff;
  padding: 10px 0;
  }

  /*トグルボタンが押されたときに付与するクラス*/
  nav.NavMenu.active{
  transform: translateY(0%);
  }

    /*トグルボタンのスタイルを指定*/
  .Toggle {
  position: fixed;
  right: 15px;
  top: 15px;
  width: 45px;
  height: 45px;
  cursor: pointer;
  z-index: 13;
  background-color: #363237;
  }

  .Toggle span {
  display: block;
  position: absolute;
  width: 31px;
  border-bottom: solid 3px #fff;
  -webkit-transition: .35s ease-in-out; /*変化の速度を指定*/
  -moz-transition: .35s ease-in-out;    /*変化の速度を指定*/
  transition: .35s ease-in-out;     /*変化の速度を指定*/
  left: 7px;
  }

  .Toggle span:nth-child(1) {
    top: 10px;
  }

  .Toggle span:nth-child(2) {
    top: 20px;
  }

  .Toggle span:nth-child(3) {
    top: 30px;
  }

  /* 最初のspanをマイナス45度に */
  .Toggle.active span:nth-child(1) {
    top: 18px;
    left: 6px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
    border-bottom: solid 3px #fff;
  }

  /* 2番目と3番目のspanを45度に */
  .Toggle.active span:nth-child(2),
  .Toggle.active span:nth-child(3) {
    top: 18px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    border-bottom: solid 3px #fff;
  }


@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
}
@media screen and (max-width: 480px) {
	/* 480px以下に適用されるCSS（スマホ用） */
  header {
    padding: 30px auto 10px;
    height: 45px;
  }
  .header_icon {
    width: 100px;
    height: 16px;
  }
  .header_icon_mymap {
    width: 144px;/*585 65*/
    height: 16px;
  }
  .header_comment{
    font-size: 14px;
  }
  h1 {
    font-size: 15px;
    margin-bottom: 5px;
  }
  h2 {
    display: none;
    font-size: 7px;
  }
  li {
    font-size: 16px;
  }
  .infowindow_content {
    /*width: 40%;
    height: 35%;*/
  }
  .btn_wrapper {
    width: 85%;
    margin: 30px auto 0 auto;
  }
  .br-sp {
    display: block;
  }
}