@charset "utf-8";
/* CSS Document */
.link-btn{
  position: relative;
	width: 100%;
	height: auto;
	margin-top: 40px;
}
.btn_box{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
}

.btn_box a{
	color: #fff;
}

.btn{
  text-align: center;
  line-height: 50px;
  letter-spacing: 2px;
  width: 160px;
  height: 50px;
  top: 8px;
  left: 8px;
  margin: auto;
  position: relative;
  display: block;
  text-decoration: none; 
}

.btn:before,
.btn:after{
  position: absolute;
  content: "";
  width: 20%;
  height: 50%;
}

.btn:before{
  top: 0;
  left: 0;
  border-left: 1px solid #d80c18;
  border-top: 1px solid #d80c18;
}

.btn:after{
  bottom: 0;
  right: 0;
  border-right: 1px solid #d80c18;
  border-bottom: 1px solid #d80c18;
}

.btn:hover:before,
.btn:hover:after{
  width: 98%;
  height: 98%;
}

#lunch , #dinner , #a-la-carte , #drink {
  scroll-margin-top: 80px;
}


/*アニメーション*/
.btn,
.animation:before,
.animation:after{
  transition: all 0.3s ease;
}


/* LINE001 */
.button_line001 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    color: #fff;
    transition: 0.3s ease-in-out;
}
.button_line001 a:before {
    position: absolute;
    bottom: 0px;
    left: 50%;
    content: '';
    width: 100%;
    height: 2px;
    background: rgba(0,0,0,.1);
    transform: translateX(-50%);
}
.button_line001 a:after {
    position: absolute;
    bottom: 0px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #d80c18;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
}

.button_line001 a:hover:after {
    transform: scale(1, 1);
}

/* LINE002 */
.button_line002 a {
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
    color: #000;
    transition: 0.3s ease-in-out;
}
.button_line002 a:before {
    position: absolute;
    bottom: 0px;
    left: 50%;
    content: '';
    width: 100%;
    height: 2px;
    background: rgba(0,0,0,.1);
    transform: translateX(-50%);
}
.button_line002 a:after {
    position: absolute;
    bottom: 0px;
    left: 0;
    content: '';
    width: 100%;
    height: 1px;
    background: #d80c18;
    transform: scale(0, 1);
    transform-origin: left top;
    transition: transform .3s;
}

.button_line002 a:hover:after {
    transform: scale(1, 1);
}

.page-rink .button_line002 {
}

/* ボタンここまで */
/* ここからスクロールすると出てくるやつ */

/* java： fadeInUp fadeInDown */
.animationUp , .animationDown {
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
	visibility:hidden;
}
.fadeInDown {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:2s;
	-ms-animation-duration:2s;
	animation-duration:2s;
	-webkit-animation-name: fadeInDown;
	animation-name: fadeInDown;
	visibility: visible !important;
}
.fadeInUp {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:2s;
	-ms-animation-duration:2s;
	animation-duration:2s;
	-webkit-animation-name: fadeInUp;
	animation-name: fadeInUp;
	visibility: visible !important;
}

/* java： fadeInUp fadeInDown */
.animationLeft , .animationRight {
    -webkit-backface-visibility:hidden;
    backface-visibility:hidden;
	visibility:hidden;
}
.fadeInLeft {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:2s;
	-ms-animation-duration:2s;
	animation-duration:2s;
	-webkit-animation-name: fadeInLeft;
	animation-name: fadeInLeft;
	visibility: visible !important;
}
.fadeInRight {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:2s;
	-ms-animation-duration:2s;
	animation-duration:2s;
	-webkit-animation-name: fadeInRight;
	animation-name: fadeInRight;
	visibility: visible !important;
}

.animationLeft { margin-left: 0;}
.animationRight { margin-right: 0;}

@-webkit-keyframes fadeInUp {
 0% {  opacity: 0; -webkit-transform: translateY(40px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInUp {
 0% { opacity: 0; -webkit-transform: translateY(40px); -ms-transform: translateY(40px); transform: translateY(40px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}
@-webkit-keyframes fadeInDown {
 0% {  opacity: 0; -webkit-transform: translateY(-40px); }
 100% { opacity: 1; -webkit-transform: translateY(0); }
}
@keyframes fadeInDown {
 0% { opacity: 0; -webkit-transform: translateY(-40px); -ms-transform: translateY(-40px); transform: translateY(-40px); }
 100% { opacity: 1; -webkit-transform: translateY(0); -ms-transform: translateY(0); transform: translateY(0); }
}
@-webkit-keyframes fadeInLeft {
 0% {  opacity: 0; -webkit-transform: translateX(40px); }
 100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInLeft {
 0% { opacity: 0; -webkit-transform: translateX(40px); -ms-transform: translateX(40px); transform: translateX(40px); }
 100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}
@-webkit-keyframes fadeInRight {
 0% {  opacity: 0; -webkit-transform: translateX(-40px); }
 100% { opacity: 1; -webkit-transform: translateX(0); }
}
@keyframes fadeInRight {
 0% { opacity: 0; -webkit-transform: translateX(-40px); -ms-transform: translateX(-40px); transform: translateX(-40px); }
 100% { opacity: 1; -webkit-transform: translateX(0); -ms-transform: translateX(0); transform: translateX(0); }
}

/* =====================
   PC
===================== */
@media (min-width: 768px) {


#lunch , #dinner , #a-la-carte , #drink {
  scroll-margin-top: 120px;
}

}
