@charset "UTF-8";

/* フッター
=============================================*/
footer{
  text-align: center;
  background-color:#1d1e1e;
}

footer .container-XL{
  position:relative;
  text-align: left;
  padding:50px 50px 20px 50px;
}

/* ロゴ */
footer .logo{
  width:200px;
  display:inline-block;
  vertical-align: bottom;
  position:relative;
  top:5px;
  margin-right:25px;
}

@media screen and (max-width: 1439px) {
  footer .logo{
    width:170px;
  }
}

@media screen and (max-width: 1199px) {
  footer .logo{
    width:140px;
  }

  footer .container-XL{
    position:relative;
    text-align: left;
    padding:50px 0px 20px 20px;
  }
}

@media screen and (max-width: 1023px) {
  footer .container-XL{
    padding:50px 0px 20px 0;
  }
}

@media screen and (max-width: 743px) {
  footer .container-XL{
    padding:50px 0px 20px 0;
    text-align: center;
  }
}

/* お問い合わせ */
footer .info{
  display:inline-block;
  vertical-align: bottom;
  width:auto;
  margin-right:20px;
}

footer .info span{
  color:#fff;
  display:block;
  font-size:13px;
  margin-bottom:5px;
  letter-spacing: 0;
}

footer .info a.tel{
  color:#fff;
  font-weight:700;
  font-size:20px;
}

footer .info a.tel i{
  color:#fff;
  font-weight:700;
  font-size:18px;
  margin-right:7px;
  position:relative;
  top:-2px;
}

@media screen and (max-width: 1439px) {
  footer .info{
    margin-right:10px;
  }

  footer .info span{
    font-size:12px;
    margin-bottom:3px;
  }

  footer .info a.tel{
    font-size:18px;
  }

  footer .info a.tel i{
    font-size:17px;
  }
}

@media screen and (max-width: 1199px) {
  footer .info{
    margin-right:10px;
  }

  footer .info a.tel{
    font-size:16px;
  }

  footer .info a.tel i{
    font-size:15px;
  }
}

@media screen and (max-width: 743px) {
  footer .info{
    display:block;
    margin-right:0;
    margin-top:20px;
    text-align: center;
  }

  footer .info span{
    display:inline-block;
    width:auto;
    margin-right:5px;
  }

  footer .info a.tel{
    font-size:17px;
  }

  footer .info a.tel i{
    font-size:16px;
  }
}

/* sns */
footer .sns{
  display:inline-block;
  vertical-align: bottom;
  width:auto;
  margin-right:20px;
}

footer .sns span{
  color:#fff;
  font-size:15px;
  padding-right:8px;
  border-right:solid 1.5px #fff;
  display:inline-block;
  width:auto;
  margin-right:8px;
}

footer .sns a.insta i{
  font-size:19px;
  color:#fff;
}

footer .sns a.line{
  display:inline-block;
  width:1em;
  height:1em;
  background-color:#fff;
  font-size:22px;
  position:relative;
  top:2px;
  border-radius:5px;
}

footer .sns a.line i{
  font-size:24px;
  position:relative;
  top:-1.4px;
  left:-1px;
  color:#1d1e1e;
}

@media screen and (max-width: 1439px) {
  footer .sns{
    margin-right:10px;
  }
}
@media screen and (max-width: 743px) {
  footer .sns{
    vertical-align: middle;
    margin-right:5px;
    display:block;
    text-align: center;
    margin-bottom:10px;
  }

  footer .sns span{
    font-size:13px;
    padding-right:5px;
    margin-right:0;
    line-height:18px;
    width:120px;
    text-align: right;
    border-right:0;
  }

  footer .sns a.insta i{
    font-size:18px;
  }

  footer .sns a.line{
    font-size:20px;
  }

  footer .sns a.line i{
    font-size:22px;
  }

  footer .sns a.line{
    margin-right:100px;
  }
}

/* web予約 */
footer a.web{
  display:inline-block;
  vertical-align: bottom;
  width:auto;
  background-color:#701419;
  color:#fff;
  padding:15px 30px;
  border-radius:100px;
  font-size:14px;
  font-weight:700;
  position:relative;
  bottom:-5px;
}

footer a.web::after{
  content:'';
  display:block;
  width:calc(100% - 14px);
  height:calc(100% - 14px);
  position:absolute;
  top:5.5px;
  left:5.5px;
  border:solid 1.5px #fff;
  border-radius:100px;
}

footer a.web i{
  color:#fff;
  margin-right:5px;
  font-size:17px;
}

@media screen and (max-width: 1439px) {
  footer a.web{
    font-size:13px;
  }

  footer a.web i{
    font-size:16px;
  }
}

@media screen and (max-width: 1199px) {
  footer a.web{
    padding:11px 20px 13px 20px;
    bottom:-5px;
  }

  footer a.web::after{
    width:calc(100% - 13px);
    height:calc(100% - 13px);
    top:4px;
    left:5.3px;
  }

  footer a.web{
    font-size:13px;
  }

  footer a.web i{
    font-size:15px;
  }
}

/* リンク */
footer ul{
  margin:30px 0;
}

footer ul li{
  background-color: #701419;
  margin-bottom:8px;
  display:inline-block;
  width:180px;
  margin-right:10px;
}

footer ul li a{
  color:#fff;
  font-weight:700;
  font-size:15px;
  letter-spacing: 3px;
  display:block;
  padding:6px 10px 4px 10px;
}

footer ul li a img{
  width:2em;
  display:inline-block;
  vertical-align: middle;
}

footer small{
  color:#fff;
  font-size:10px;
  text-align: right;
  display:block;
  margin-top:120px;
}

@media screen and (max-width: 1439px) {
  footer ul li{
    width:150px;
    margin-right:6px;
  }

  footer ul li a{
    font-size:14px;
    letter-spacing: 2px;
  }

  footer ul li a img{
    width:1.7em;
  }

  footer small{
    font-size:9px;
    margin-top:60px;
  }
}

@media screen and (max-width: 1199px) {
  footer ul{
    margin:20px 0;
  }

  footer ul li{
    width:135px;
    margin-right:6px;
  }

  footer ul li a{
    font-size:13px;
    letter-spacing: 1px;
  }

  footer ul li a img{
    width:1.7em;
  }

  footer small{
    font-size:9px;
    margin-top:40px;
  }
}

@media screen and (max-width: 1023px) {
  footer ul{
    margin:20px 0 60px 0;
    max-width:730px;
  }

  footer ul li{
    width:calc((100% - 41px)/5);
    margin-right:5px;
  }

  footer ul li:last-of-type{
    margin-right:0;
  }

  footer ul li a{
    font-size:12.5px;
    letter-spacing: 1px;
  }
}

@media screen and (max-width: 743px) {
  footer ul{
    margin:30px 0 60px 0;
    max-width:730px;
    display:flex;
    flex-wrap:wrap;
    justify-content: flex-start;
  }

  footer ul li{
    width:calc((100% - 5px)/2);
    margin-right:5px;
  }

  footer ul li:nth-of-type(2n){
    margin-right:0;
  }

  footer ul li:last-of-type{
    margin:0;
  }

  footer ul li a{
    font-size:12.5px;
    letter-spacing: 1px;
  }

  footer small{
    font-size:8px;
    margin-top:40px;
    text-align: center;
  }
}
















/**/
