@charset "UTF-8";
html, body {
  font-size: 12pt;
}

header {
  height: 150px;
  position: sticky;
  top: 0;
  box-shadow: 0px 0px 3px #aaa;
  z-index: 1100;
  background-image: url(../images/header_bg.png?2);
  background-repeat: repeat-x;
  background-color: rgba(255, 255, 255, 0.85);
  font-size: 1.1rem;
}
header .nav {
  width: 100%;
  padding: 10px;
}
header .nav ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
  list-style: none;
  padding: 0;
  font-size: 0.8rem;
}
header .nav ul li {
  border-radius: 4px;
}
header .nav ul li img {
  width: 200px;
  height: auto;
  border-radius: 10px;
}
header .nav ul li:hover img {
  opacity: 0.8;
}
header .nav ul a {
  color: #333;
  text-decoration: none;
}
header .nav ul a:link, header .nav ul a:visited {
  color: #333;
}
header .nav .left {
  position: absolute;
  top: 60px;
  left: 10px;
}
header .nav .right {
  position: absolute;
  top: 60px;
  right: 10px;
}
@media screen and (max-width: 767px) {
  header .nav {
    display: none;
  }
}
header img {
  width: 300px;
  height: auto;
  display: block;
  margin: 0px auto;
}
header .badge-kokomo {
  position: absolute;
  top: 5px;
  left: 5px;
  width: 50px;
  height: 50px;
  background: #fff;
  border-radius: 48%;
  box-shadow: 1px 1px 1px #aaa;
}
header .badge-kokomo img {
  width: 100%;
  height: auto;
  display: inline;
}
header .badge-hanjotei {
  background: rgba(255, 255, 255, 0.9);
  border-radius: 10px;
}

.container {
  min-height: 60vh;
}
.container h1 {
  padding: 1rem;
  font-size: 1.3rem;
  text-align: center;
}
.container h2 {
  padding: 1rem;
  font-size: 1.2rem;
  text-align: center;
}
.container img {
  max-width: 100%;
  width: auto;
  height: auto;
}
.container .location {
  margin-top: 50px;
}
.container .location h2 {
  background: #ff595d;
  border-radius: 4px;
  color: #fff;
  padding: 0.6rem 1rem;
  text-shadow: 1px 1px 2px #222;
}
.container .location .panel img {
  width: 200px;
  height: auto;
}
.container .location dl dt {
  float: left;
  clear: left;
  width: 4em;
}
.container .sitemap-0 {
  font-size: 1rem;
  margin: 10px 0px 10px 10px;
}
.container .sitemap-0::before {
  content: "・";
}
.container .sitemap-1 {
  font-size: 0.9rem;
  margin: 10px 0px 10px 30px;
}
.container .sitemap-1::before {
  content: "・";
}
.container a:link, .container a:visited {
  color: #333;
}
.container iframe {
  max-width: 100%;
}
.container .content {
  position: relative;
  padding: 10px 0px;
}
.container .content .badge-ig {
  background: #fff;
  border-radius: 4px;
  box-shadow: 1px 1px 3px #aaa;
  position: absolute;
  z-index: 1000;
  top: -80px;
  right: -80px;
  width: 200px;
}
.container .content .badge-ig img {
  max-width: 100%;
  width: auto;
  height: auto;
}
@media screen and (max-width: 767px) {
  .container .content .badge-ig {
    position: relative;
    width: 100%;
    top: auto;
    right: auto;
    box-shadow: none;
    text-align: center;
    border-top: 1px solid silver;
    border-bottom: 1px solid silver;
    border-radius: 0;
    padding: 10px 0px;
    margin: 10x 0px;
  }
  .container .content .badge-ig img {
    max-width: 100px;
    display: block;
    margin: 0px auto;
  }
}
.container .content img {
  border-radius: 10px;
  display: inline-block;
  margin: 4px 0px;
}

.badges-top {
  margin-bottom: 20px;
}
.badges-top div {
  position: relative;
  text-align: center;
  height: 25vh;
  padding: 10px;
}
.badges-top div div {
  border: 1px solid silver;
  border-radius: 4px;
}
.badges-top div a {
  width: 100%;
  display: block;
  position: absolute;
  bottom: 10px;
  left: 0px;
  color: #fff !important;
  text-decoration: none;
  padding: 0.1em;
  font-weight: bold;
  background: rgba(0, 0, 0, 0.5);
}
.badges-top .badge-top-ngk div {
  background-image: url(../images/ngk_01.jpg);
  background-size: cover;
  background-position: center center;
}
.badges-top .badge-top-shinsekai div {
  background-image: url(../images/shinsekai_01.jpg);
  background-size: cover;
  background-position: center center;
}
.badges-top .badge-top-cafe div {
  background-image: url(../images/cafe_01.jpg);
  background-size: cover;
  background-position: center center;
}
.badges-top .badge-top-hanjo div {
  background-image: url(../images/hanjo_01.jpg);
  background-size: cover;
  background-position: center center;
}

.panorama-view {
  width: 100%;
  height: 50vh;
}

footer {
  min-height: 10vh;
  text-align: center;
  font-size: 0.8rem;
  background: #e2000d;
}
footer .nav-bottom {
  padding: 10px;
}
footer a {
  display: inline-block;
  margin: 4px 10px;
}
footer a:link, footer a:visited {
  color: #fff;
  text-decoration: none;
}
footer span.active {
  color: #fff;
  font-weight: 800;
}
footer copyright {
  color: #fff;
  display: block;
  font-size: 0.8rem;
}
