@charset "utf-8";

/*
************************************************************************
* フッター
* @copyright Revolme Inc.
************************************************************************
*/
#footer
{
	background-color:#f7f7f7;
}
#footer-contents
{
}
/*
************************************************************************
* 予約ボタンブロック
************************************************************************
*/
.reservation-link
{
	text-align:center;
}
.reservation-link a
{
	display:inline-block;
	padding:2em 0;
	
	border-radius:0.5em;
	border:1px solid;
	
	margin-right:1.5em;
}
.reservation-link a:last-child
{
	margin-right:0.0em;
}
.reservation-link a .label
{
	display:inline-block;
	font-size:1.8rem;
	font-weight:bold;
	line-height:1;
	
	transition-duration:0.3s;
	transition-property:all;
	transition-timing-function:ease;
}
.reservation-link a .label:before
{
	content:"";
	
	display:inline-block;
	
	width:1.1em;
	height:1.1em;
	
	margin-right:0.5em;
	
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
	
	vertical-align: bottom;
}
.reservation-link a.link-reservation
{
	border-color:#bca53c;
	background-color:#bca53c;
	color:#FFFFFF;
	
	width:320px;
}
.reservation-link a.link-reservation .label:before
{
	background-image:url(../../../_img/icon/reservation-w.svg);
}
.reservation-link a.link-reservation:hover
{
	background-color:#FFFFFF;
	color:#bca53c;
}
.reservation-link a.link-reservation:hover .label:before
{
	background-image:url(../../../_img/icon/reservation-g.svg);
}
.reservation-link a.link-inquiry
{
	border-color:#000000;
	background-color:#FFFFFF;
	color:#000000;
	
	width:320px;
}
.reservation-link a.link-inquiry .label:before
{
	background-image:url(../../../_img/icon/mail.svg);
}
.reservation-link a.link-inquiry:hover
{
	background-color:#000000;
	color:#FFFFFF;
}
.reservation-link a.link-inquiry:hover .label:before
{
	background-image:url(../../../_img/icon/mail-w.svg);
}
/* == スマートフォンサイズ ==========================================================*/
@media screen and (max-width: 767px) {
	.reservation-link a
	{
		display:inline-block;
		padding:1.5em 3em;
		
		margin-right:0.0em;
		margin-bottom:1.0em;
		
		width:80%;
	}
	.reservation-link a:last-child
	{
		margin-bottom:0.0em;
	}
	.reservation-link a .label
	{
		font-size:2.8rem;
	}
	.reservation-link a.link-reservation,
	.reservation-link a.link-inquiry
	{
		width:80%;
	}
}

#footer-contents .sign
{
	border-top:1px solid #e3e3e3;
}
#footer-contents .sign .sign-text
{
	float:right;
	width:50%;
}
#footer-contents .sign .sign-text .pcaption
{
	font-size:1.2rem;
	color:#666666;
}
#footer-contents .sign .sign-text .logo
{
	width:174px;
	margin-top:1em;
	margin-bottom:1em;
}
#footer-contents .sign .sign-text .address
{
	margin-top:3.0em;
	line-height:1.6;
}
#footer-contents .sign .sign-text .address .zip,
#footer-contents .sign .sign-text .address .addr1,
#footer-contents .sign .sign-text .address .addr2
{
	display:block;
	font-size:1.4rem;
}
#footer-contents .sign .sign-text .tel
{
	margin-top:2.0em;
	line-height:1.6;
}
#footer-contents .sign .map
{
	float:left;
	width:50%;
	
	padding:0 100px;
}

#footer-contents .sub-menu,
#footer-contents .footer__banner
{
	padding:30px;
	border-top:1px solid #e3e3e3;
	
	line-height:1;
}
#footer-contents .sub-menu .sub-menu-list
{
	display:flex;
	
	/*margin:0;*/
	/*padding:0;*/
	list-style:none;
}
#footer-contents .sub-menu .sub-menu-list li
{
	margin:0;
	padding:0;
	
	margin-right:1.5em;
}
#footer-contents .sub-menu .sub-menu-list li a
{
	color:#666666;
}
#footer-contents .sub-menu .sub-menu-list li a span:after
{
	content:"";
	display:inline-block;
	
	width:0em;
	height:1.4em;
	
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
	
	margin-right:0.3em;
	margin-left: .1em;
	vertical-align: -5px;
	/*vertical-align: text-bottom;*/
}

#footer-contents .sub-menu .sub-menu-list li a .ext-link:after
{
	width:1.3em;
	background-image:url(../../../_img/icon/ext-link.svg);
}
#footer-contents .sub-menu .copyright
{
	position:absolute;
	
	top:50%;
	right:30px;
	
	transform:translateY(-50%);
	
	color:#666666;
}

/* == スマートフォンサイズ ==========================================================*/
@media screen and (max-width: 768px) {
	#footer-contents .sign .sign-text
	{
		float:none;
		width:100%;
	}
	#footer-contents .sign .sign-text .pcaption
	{
		font-size:2.0rem;
	}
	#footer-contents .sign .sign-text .logo
	{
		width:42.0vw;
		margin-top:1em;
		margin-bottom:1em;
	}
	#footer-contents .sign .sign-text .address
	{
		margin-top:2.5em;
		line-height:1.6;
	}
	#footer-contents .sign .sign-text .address .zip,
	#footer-contents .sign .sign-text .address .addr1,
	#footer-contents .sign .sign-text .address .addr2
	{
		display:block;
		font-size:2.4rem;
	}
	#footer-contents .sign .sign-text .tel
	{
		margin-top:1.5em;
		line-height:1.6;
	}
	
	#footer-contents .sign .map
	{
		float:none;
		width:100%;
		
		padding:4vw 0;
	}
	#footer-contents .sign .map img
	{
		width:100%;
	}
	#footer-contents .sub-menu .sub-menu-list li
	{
		font-size:2.4rem;
	}
	#footer-contents .sub-menu
	{
		padding:4vw;
	}
	#footer-contents .sub-menu .sub-menu-list li
	{
		margin-right:1.5em;
	}
	#footer-contents .sub-menu .sub-menu-list li a span:after
	{
		width:0em;
		height:1.4em;
		margin-right:0.3em;
	}

	#footer-contents .sub-menu .sub-menu-list li a .ext-link:after
	{
		width:1.3em;
		background-image:url(../../../_img/icon/ext-link.svg);
	}
	#footer-contents .sub-menu .copyright
	{
		position:relative;
		top:auto;
		right:auto;
		transform:translateY(0%);
		
		text-align:right;
		
		/*margin-top:4vw;*/
		
		font-size:2.2rem;
	}
	

}
/*-- 別店舗へのリンク --  0708削除*/
/*.title-lv1.footer .button
{
	position:absolute;
	top:0;
	left:0;
	right:auto;
	margin-top: -20px;
	background-color: #f7f7f7;
}
.title-lv1.footer .button:hover{
	background-color: #000;
}
@media screen and (max-width: 768px) {
	.footer .button{
		background-color: #f7f7f7;
	}
}*/

/*-- フッターバナー --*/
.footer__banner {
  /*background-color: #eee;*/
}
.footer__banner--title {
  margin-bottom: 3.5%;
  font-size: 12px;
  font-size: 3.75vw;
}
.footer__banner--list  {
  overflow: hidden;
}
.footer__banner--list li {
	width: 48.2%;
	list-style: none;
}
.footer__banner--list li a {
  position: relative;
  display: block;
}
.footer__banner--list li a:after {
  content: '';
  position: absolute;
  width: 6px;
  height: 5px;
  bottom: 5px;
  right: 5px;
  background: url(/_assets/_img/footer/external02.png) center center no-repeat;
  background-size: 100% auto;
}
.footer__banner--list li figure {
  display: table;
  table-layout: fixed;
}
.footer__banner--list li figure span {
  width: 26%;
  line-height: 0;
  display: table-cell;
  vertical-align: middle;
}
.footer__banner--list li figure figcaption {
  width: 74%;
  padding-left: 3.7%;
  display: table-cell;
  vertical-align: middle;
  font-size: 9px;
  font-size: 2.8125vw;
  background-color: #fff;
  box-sizing: border-box;
}

@media screen and (max-width: 768px) {
  .footer__banner {
    padding: 6.25%;
  }
  .footer__banner--block + .footer__banner--block {
    margin-top: 5.7%;
  }
	.footer__banner--list li{
		margin-left: 0;
	}
  .footer__banner--list li:nth-child(odd) {
    float: left;
  }
  .footer__banner--list li:nth-child(even) {
    float: right;
  }
  .footer__banner--list li:nth-child(n+3) {
    margin-top: 2.85%;
  }
}

@media screen and (min-width: 769px) {
  .footer__banner--block + .footer__banner--block {
    margin-top: 35px;
  }
  .footer__banner--title {
    margin-bottom: 18px;
    font-size: 14px;
  }
  .footer__banner--list  {
    overflow: hidden;
	display:flex;
	flex-flow: row wrap;
	justify-content:space-between;
  }
  .footer__banner--list li {
    /*width: 265px;*/
	width: calc(92%/4);
    margin-left: 0;
    margin-bottom: 20px;
  }
  .footer__banner--list li a:after {
    width: 12px;
    height: 10px;
    padding: 0;
    bottom: 5px;
    right: 8px;
  }
  .footer__banner--list li figure span {
    width: 60px;
  }
  .footer__banner--list li figure figcaption {
    width: 205px;
    padding-left: 20px;
    font-size: 12px;
  }
  .footer__banner--list li:not(:nth-child(4n+1)) {
    /*margin-left: 20px;*/
  }
}