.footer_pc {
  display: block;
}

.footer_sp {
  display: none;
}

footer {
  background-color: #156aff;
  padding: 20px 0 0;
  border-top: #ffffff 2px solid;
}
footer a {
  color: #ffffff;
}
footer a:hover {
  text-decoration: underline;
}
footer li {
  background-repeat: no-repeat;
}
footer .contents {
  width: 95%;
  margin: 0 auto;
}

footer h2 {
  color: #ffffff;
  margin-bottom: 10px;
  font-size: 1.05rem;
  font-weight: bold;
}

footer .sitemap {
  display: table;
  width: 100%;
}

footer .companyinfo {
  display: table-cell;
  width: 25%;
  vertical-align: top;
  padding-top: 10px;
}
footer .companyinfo .logo {
  display: block;
  margin-bottom: 20px;
}
footer .companyinfo figure {
  width: 90%;
}

footer .sitemenu {
  display: table-cell;
  width: 75%;
  vertical-align: top;
}
footer .sitemenu .wrap {
  display: table;
  width: 100%;
}
footer .sitemenu .wrap .site_theme {
  display: table-cell;
  width: 33.3%;
  vertical-align: top;
  border-left: 1px solid #fff;
  padding: 10px 5px 10px 20px;
}

footer .map ul {
  padding-left: 10px;
}
footer .map li {
  background-image: url(https://www.his-j.com/japan-tourist/basic/img/list_h3.png);
  padding-left: 14px;
  font-size: 0.95rem;
  margin-bottom: 10px;
}

footer .bottom {
  border-top: #fff solid 1px;
  padding: 15px 0;
}
footer .bottom .wrap {
  display: table;
}
footer .bottom .copy {
  display: table-cell;
  width: 27%;
  vertical-align: middle;
  color: #fff;
  font-size: 0.95rem;
  padding-left: 10px;
}
footer .bottom .privacy {
  display: table-cell;
  width: 60%;
  vertical-align: middle;
  color: #fff;
  font-size: 0.95rem;
  text-align: center;
}
footer .bottom .sns {
  display: table-cell;
  width: 13%;
  vertical-align: middle;
}
footer .bottom ul {
  display: table;
  width: 100%;
}
footer .bottom li {
  width: 33.3%;
  display: table-cell;
  vertical-align: middle;
  padding: 0 5px;
}

.zw footer h2 {
  font-size: 1rem;
}
.zw footer .map li {
  background-position: 0 4px;
  margin-bottom: 5px;
  font-size: 0.925rem;
}

@media only screen and (max-width: 980px) {
  footer {
    background-color: #156aff;
    padding: 0;
    border-top: #ffffff 2px solid;
  }
  footer .contents {
    width: 100%;
    margin: 0 auto;
  }
  footer h2 {
    color: #ffffff;
    margin-bottom: 10px;
    font-size: 1.05rem;
    font-weight: bold;
  }
  footer .sitemap {
    display: block;
    width: 100%;
  }
  footer .companyinfo {
    display: table;
    width: 100%;
    vertical-align: top;
    padding-top: 10px;
    border-bottom: 1px solid #fff;
    padding: 15px 2.5%;
  }
  footer .companyinfo .logo {
    display: table-cell;
    margin-bottom: 0px;
    width: 35%;
    vertical-align: top;
    padding-right: 20px;
  }
  footer .companyinfo figure {
    width: 100%;
  }
  footer .sitemenu {
    display: block;
    width: 100%;
  }
  footer .sitemenu .wrap {
    display: table;
    width: 100%;
    padding: 0 1.5%;
  }
  footer .sitemenu .wrap .site_theme {
    padding: 10px 5px 10px 15px;
  }
  footer .sitemenu .wrap .site_theme:first-child {
    border-left: 0px solid #fff;
  }
  footer .map ul {
    padding-left: 0px;
  }
  footer .map li {
    padding-left: 14px;
    font-size: 0.95rem;
    margin-bottom: 5px;
  }
  footer .bottom {
    padding: 15px 0;
  }
  footer .bottom .copy {
    display: table-cell;
    width: 37%;
    vertical-align: middle;
    color: #fff;
    font-size: 0.95rem;
    padding-left: 10px;
  }
  footer .bottom .privacy {
    display: table-cell;
    width: 50%;
    vertical-align: middle;
    color: #fff;
    font-size: 0.95rem;
    text-align: center;
  }
  footer .bottom .sns {
    display: table-cell;
    width: 13%;
    vertical-align: middle;
  }
  footer .bottom ul {
    display: table;
    width: 100%;
  }
  footer .bottom li {
    width: 33.3%;
    display: table-cell;
    vertical-align: middle;
    padding: 0 5px;
  }
}
@media only screen and (max-width: 680px) {
  footer {
    background-color: #156aff;
    padding: 0;
    border-top: #ffffff 2px solid;
  }
  footer .contents {
    width: 100%;
    margin: 0 auto;
  }
  footer h2 {
    color: #ffffff;
    margin-bottom: 10px;
    font-size: 1.15rem;
    font-weight: bold;
  }
  footer .sitemap {
    display: block;
    width: 100%;
  }
  footer .companyinfo {
    display: block;
    width: 100%;
    padding-top: 10px;
    border-bottom: 1px solid #fff;
    padding: 15px 5%;
  }
  footer .companyinfo .logo {
    display: block;
    margin-bottom: 15px;
    width: 70%;
    padding-right: 0px;
  }
  footer .companyinfo figure {
    width: 100%;
  }
  footer .sitemenu {
    display: block;
    width: 100%;
    padding: 10px 0;
  }
  footer .sitemenu .wrap {
    display: block;
    width: 100%;
    padding: 0 5%;
  }
  footer .sitemenu .wrap .site_theme {
    padding: 10px 0px 0px;
    border-left: 0px solid #fff;
    display: block;
    width: 100%;
  }
  footer .sitemenu .wrap .site_theme:first-child {
    border-left: 0px solid #fff;
  }
  footer .map ul {
    padding-left: 0px;
  }
  footer .map li {
    padding-left: 14px;
    font-size: 1.05rem;
    margin-bottom: 10px;
  }
  footer .bottom {
    padding: 15px 0;
  }
  footer .bottom .copy {
    display: block;
    width: 100%;
    color: #fff;
    font-size: 1.05rem;
    text-align: center;
    padding-left: 0px;
  }
  footer .bottom .privacy {
    display: block;
    width: 100%;
    color: #fff;
    font-size: 1.05rem;
    text-align: center;
    padding-left: 0px;
    margin: 15px auto 0;
  }
  footer .bottom .sns {
    display: block;
    width: 30%;
    margin: 15px auto 0;
  }
  footer .bottom ul {
    display: table;
    width: 100%;
  }
  footer .bottom li {
    width: 33.3%;
    display: table-cell;
    vertical-align: middle;
    padding: 0 5px;
  }
  .zw footer h2 {
    font-size: 1.1rem;
  }
  .zw footer .map li {
    background-position: 0 2px;
    margin-bottom: 5px;
    font-size: 1rem;
  }
}
@media only screen and (max-width: 390px) {
  footer {
    background-color: #156aff;
    padding: 0;
    border-top: #ffffff 2px solid;
  }
  footer .contents {
    width: 100%;
    margin: 0 auto;
  }
  footer h2 {
    color: #ffffff;
    margin-bottom: 10px;
    font-size: 1.1rem;
    font-weight: bold;
  }
  footer .map ul {
    padding-left: 0px;
  }
  footer .map li {
    padding-left: 14px;
    font-size: 1rem;
    margin-bottom: 10px;
  }
  footer .bottom {
    padding: 15px 0;
  }
  footer .bottom .copy {
    display: block;
    width: 100%;
    color: #fff;
    font-size: 1rem;
    text-align: center;
    padding-left: 0px;
  }
  footer .bottom .privacy {
    display: block;
    width: 100%;
    color: #fff;
    font-size: 1rem;
    text-align: center;
    padding-left: 0px;
  }
  footer .bottom .sns {
    display: block;
    width: 40%;
    margin: 15px auto 0;
  }
  footer .bottom ul {
    display: table;
    width: 100%;
  }
  footer .bottom li {
    width: 33.3%;
    display: table-cell;
    vertical-align: middle;
    padding: 0 5px;
  }
  .zw footer h2 {
    font-size: 1.05rem;
  }
  .zw footer .map li {
    background-position: 0 2px;
    margin-bottom: 5px;
    font-size: 0.95rem;
  }
}/*# sourceMappingURL=footer.css.map */