@charset "utf-8";
/* CSS Document */

/* PC小さめ
---------------------------------------------------- */
@media (max-width:  1170px){

.key .img{
  width: 100%;
}
.key .img span{
  position: absolute;
  font-size: 4.0rem;
  bottom:10px;
  left:20px;
  font-weight: bold;
  color:#FFF;
  letter-spacing: 8px;
  text-shadow: 0 0 3px rgba(0,0,0,0.8);
}

footer .info{
  width: 290px;
}
footer .status{
  width: 650px;
  float: none;
}


}


@media (max-width: 992px){
footer .status{
  width: 100%;
}
footer .status .left,
footer .status .right{
  width: 100%;
  padding: 20px 0;
  float: none;
}
.contents01 .bg01{
  height: inherit;
  background: none;
}
.contents01 .bg01 img{
  width: 100%;
  height: auto;
}
.fee{
  font-size:1.4rem;
}
.fee th{
  padding:5px;
}
.fee td{
  padding:5px;
}
.fee th{
  width: 20%;
}
.fee .td01{
  width: 25%;
  text-align: center;
}
.fee .td02{
  width: 25%;
  text-align: right;
}
.fee .td03{
  width: 30%;
}
.route li{
  width: 50%;
  padding:10px 2%;
}
.information .block{
  width: 100%;
  float:none;
  padding:0 2%;
  margin-bottom: 30px;
}
.pc-S-Block{
  display: block;
}

}

/* スマホ
---------------------------------------------------- */
@media (max-width: 768px){

.heading01{
  font-size:2.0rem;
}
header{
  padding:10px 0 0;
}
header .logo{
  width: 50%;
  margin:0;
  float:left;
}
header .tel{
  width: 50%;
  margin:0;
  float:right;
  font-size:1.3rem;
}
header .tel span{
  font-size:1.3rem;
}
header .logo img{
  width: 100%;
  height: auto;
}
.key .img span{
  font-size: 3.0rem;
  bottom:0px;
  left:10px;
  letter-spacing: 3px;
}
footer .footnav{
  width: 100%;
  float: none;
  text-align: center;
}
footer .footnav li{
  display: block;
  width: 100%;
  text-align: left;
  border:none!important;
  border-bottom:1px solid #333!important;
  padding:10px 0;
}
footer .copyright{
  text-align: center;
  width: 100%;
  float: none;
  padding:20px 0 10px;
}
#index .contents01 ul li h3{
  font-size:1.8rem;
  margin-bottom: 10px;
}
.route li{
  width: 50%;
  padding:10px 2%;
}
.fee{
  font-size:1.2rem;
}

.information .block table,
.information .block .txt,
.information .block .txt span,
.message,
.name{
  font-size:1.4rem;
}

.spBlock{display: block;}
.spNone{display: none;}
}

@media (max-width: 660px){

.route li{
  width: 90%;
  margin:0 5%;
}

}
/* スマホ小
---------------------------------------------------- */
@media (max-width: 600px){
header{
  padding:10px 0 0;
}
header .logo{
  width: 96%;
  margin:0 2%;
  float:none;
}
header .logo img{
  width: 100%;
  height: auto;
}
header .tel{
  width: 100%;
  margin:0;
  float:none;
  font-size:1.3rem;
}
header .tel span{
  font-size:1.3rem;
}
.key .img span{
  font-size:2.1rem;
  bottom:0px;
  left:5px;
}
.moreBtn{
  width: 96%;
  margin:0 2%;
}
.moreBtn a{
  width: 100%;
}
.contents01 ul.icons01 li{
  width: 100%;
  margin-right: 0;
  height: inherit;
  margin-bottom: 30px;
}
.contents01 ul.icons01 li.garasu{
  position: relative;
}
.contents01 ul.icons01 li.garasu h3{
  width: 100%;
  position: relative;
  top:inherit;
  left:inherit;
  margin: 0 0 10px;
}
.contents01 ul.icons01 li.garasu .img{
  margin:0 auto 20px;
}
.imgLblock,
.imgRblock{
  padding:0;
}
.imgLblock .img,
.imgRblock .img,
.imgLblock .read,
.imgRblock .read{
  width: 90%;
  margin:0 5%;
  float:none;
  font-size:1.4rem;
}
.imgLblock .img,
.imgRblock .img{
  margin-bottom: 20px;
}
.taR,.taL{
  text-align: center!important;
}



}