﻿@charset "utf-8";

/* -----------------------------------------------------------
 CSS Information

 File name:      common.css
 Style Info:     デフォルトのスタイルのリセット及び基本設定
----------------------------------------------------------- */

/*----------------------------------------------------
	Reset
----------------------------------------------------*/

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,legend,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}

/*body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}*/

address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	empty-cells: show;/*空白セルの場合にもボーダーを表示*/
}

caption,th {
	text-align: left;
}

q:before,q:after {
	content: '';
}

object,
embed {
	vertical-align: top;
}

hr,legend {
	display: none;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}

img,abbr,acronym,fieldset {
	border: 0;
}

li {
	list-style-type: none;
}

img {
 	vertical-align: bottom;
	border:	0;
}

label {
	cursor: pointer;
 }

/*--------style--------*/

/* font-weight */
.fWN { font-weight: normal;}
.fWB { font-weight: bold;}

/* text-align */
.txtAC { text-align: center !important;}
.txtAR { text-align: right !important;}
.txtAL { text-align: left !important;}

/* margin */
.mtz { margin-top: 0 !important;}
.mt5 { margin-top: 5px !important;}
.mt10 { margin-top: 10px !important;}
.mt15 { margin-top: 15px !important;}
.mt20 { margin-top: 20px !important;}
.mt25 { margin-top: 25px !important;}
.mt30 { margin-top: 30px !important;}
.mt40 { margin-top: 40px !important;}

.mlz { margin-left: 0 !important;}
.ml5 { margin-left: 5px !important;}
.ml10 { margin-left: 10px !important;}
.ml15 { margin-left: 15px !important;}
.ml20 { margin-left: 20px !important;}
.ml25 { margin-left: 25px !important;}
.ml30 { margin-left: 30px !important;}
.ml40 { margin-left: 40px !important;}
.ml50 { margin-left: 50px !important;}
.ml60 { margin-left: 60px !important;}

.mrz { margin-right: 0 !important;}
.mr5 { margin-right: 5px !important;}
.mr10 { margin-right: 10px !important;}
.mr15 { margin-right: 15px !important;}
.mr20 { margin-right: 20px !important;}
.mr25 { margin-right: 25px !important;}
.mr30 { margin-right: 30px !important;}
.mr40 { margin-right: 40px !important;}
.mr50 { margin-right: 50px !important;}
.mr60 { margin-right: 60px !important;}

.mbz { margin-bottom: 0 !important;}
.mb5 { margin-bottom: 5px !important;}
.mb10 { margin-bottom: 10px !important;}
.mb15 { margin-bottom: 15px !important;}
.mb20 { margin-bottom: 20px !important;}
.mb25 { margin-bottom: 25px !important;}
.mb30 { margin-bottom: 30px !important;}
.mb35 { margin-bottom: 35px !important;}
.mb40 { margin-bottom: 40px !important;}
.mb45 { margin-bottom: 45px !important;}
.mb50 { margin-bottom: 50px !important;}
.mb60 { margin-bottom: 60px !important;}

.ptz { padding-top: 0 !important;}
.pt5 { padding-top: 5px !important;}
.pt10 { padding-top: 10px !important;}
.pt15 { padding-top: 15px !important;}
.pt20 { padding-top: 20px !important;}
.pt25 { padding-top: 25px !important;}
.pt30 { padding-top: 30px !important;}
.pt40 { padding-top: 40px !important;}

.pbz { padding-bottom: 0 !important;}
.pb5 { padding-bottom: 5px !important;}
.pb10 { padding-bottom: 10px !important;}
.pb15 { padding-bottom: 15px !important;}
.pb20 { padding-bottom: 20px !important;}
.pb25 { padding-bottom: 25px !important;}

.prz { padding-right: 0px !important;}
.pr10 { padding-right: 10px !important;}
.pr15 { padding-right: 15px !important;}
.pr30 { padding-right: 30px !important;}

.plz { padding-left: 0px !important;}
.pl5 { padding-left: 5px !important;}
.pl10 { padding-left: 10px !important;}
.pl15 { padding-left: 15px !important;}
.pl20 { padding-left: 20px !important;}
.pl25 { padding-left: 25px !important;}
.pl30 { padding-left: 30px !important;}


/*---------------------------------------------------------------
    汎用class
----------------------------------------------------------------*/
/*----------------------------------
 aling
------------------------------------*/
.al_left {
  text-align: left;
}

.al_center {
  text-align: center;
}

.al_right {
  text-align: right;
}

/* general
---------------------------------------------------------*/
.active-tb-pc {
    display: inherit;
}
@media (max-width: 47.938em) {
    .active-tb-pc {
        display: none;
    }
}

.active-sp {
    display: none;
}
@media (max-width: 47.938em) {
    .active-sp {
        display: inherit;
    }
}

.deactive-tb-sp {
    display: inherit;
}
@media (max-width: 61.250em) {
    .deactive-tb-sp {
        display: none;
    }
}

.deactive-tb {
    display: inherit;
}
@media screen and (max-width: 61.250em) and (min-width: 47.938em) {
    .deactive-tb {
        display: none;
    }
}

/* ua */
.sp,.pc {
    display :none;
}

.equal {
    font-size: 16px;
}


/* reset */
header{
    padding: 0;
}

.common_header {
    padding: 0;
}

.pc .breadCrumb {
    padding-bottom: 11px;
}
.pc .breadCrumb li {
    margin-right: 0;
    padding: 11px 0 0 25px;
}
.pc .breadCrumb_item::before {
    top: 14px;
}
.pc .breadCrumb li a:hover {
    text-decoration: underline;
}

.sp .breadCrumb {
    background-color: #edeae3;
}
.sp .breadCrumb_home {
    padding: 11px 0!important;
}

#page {
    width: 100%;
    background: #fff;
    max-width: 1140px;
    margin: 0 auto;
}
@media (max-width: 47.938em) {
    #page {
        max-width: 640px;
    }
}

.cf{
    overflow: hidden;
}

/* ad-net
--------------------------------------------------------- */
#Rak_Dining_Campaign_FBanner_nofix {
    text-align: center;
    margin: 40px 0;
}
@media (max-width: 480px) {
    #Rak_Dining_Campaign_FBanner_nofix {
        text-align: center;
        margin: 16px 0 0;
    }
}

/*--------dining_cmp start--------*/
/*#dining_cmp a:link {
	color: #0000ff;
}
#dining_cmp a:visited {
	color: #0000ff;
}
#dining_cmp a:hover {
	color: #0000ff;
}*/
#dining_cmp a img {
	border: none;
}
.dn_head{
	padding: 0;
}
.dn_content{
	overflow:hidden;
}
.dn_left{
	float:left;
	width:740px;
}
.dn_right{
	float:right;
	width:200px;
}
#dining_cmp .red{
	color:#bf0000 !important;
}
#dining_cmp .bnr{
	padding-top:20px;
	text-align:center;
}

/*--------guide--------*/
#guide{
	margin-top:30px;
}
#guide *{
	border-collapse: collapse;
	padding:0px;
	margin:0px;
}
#guide td,
#guide th{
	font-size:13px;
	border:1px solid #ccc;
	padding:5px;
}
#guide th{
	width:150px;
	text-align:center;
        background-color: #fafafa;
}
#guide .title{
	background:#bf0000;
	color:#FFFFFF;
}
/*--------entrybtn--------*/
.user-friendly-campaign-entry-form {
	padding: 12px 12px 15px;
}
.user-friendly-campaign-entry-form-on {
	border: 2px solid #dedede;
	background: #f7f7f7;
}
.user-friendly-campaign-entry-form-off {
	border: 2px solid #d12600;
	background: #fff3f3;
}
.user-friendly-campaign-entry-form em {
	color: #ff0000;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-message {
	margin-bottom: 20px;
	margin: 0 auto;
	line-height: 1.2;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox {
	text-align: center;
	font-size: 21px;
	font-weight: bold;
	user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox span {
	display: inline;
	zoom: 1;
	display: inline-block;
	height: 40px;
	margin-bottom: 6px;
	padding: 12px 0 0 35px;
	cursor: pointer;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .on {
	background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_on.gif) no-repeat 0 0;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .off {
	background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_off.gif) no-repeat 0 0;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-entry-button-area {
	text-align: center;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-entry-button-on {
	border: none;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-entry-button-off {
	border: none;
	display: none;
}

/*--------subContents start--------*/
div#subContents {
	float: right;
	width: 200px;
	font-size:13px;
}
div#subContents h2.h,
div#contentsBody h3 {
	margin: 0 0 10px;
}
div#subContents ul {
	margin: 0;
	padding: 10px 16px;
	border: 1px solid #000000;
	list-style: none;
	text-align: center;
}
div#subContents ul li {
	width: 165px;
	margin-bottom: 5px;
}

/* rule */
.s-opening-rule {
    width: 820px;
    margin: 0 auto 30px;
    padding: 30px 0;
}
.s-opening-rule__title  {
    width: 100%;
    margin: 0 auto 20px;
    padding: 10px 0 0;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
}
.s-opening-rule__inner {
    width: 100%;
    margin: 0 auto;
    border: 1px solid #cccccc;
    border-bottom: none;
    background-color: #fafafa;
    font-size: 13px;
}
.s-opening-rule dl {
    display: -webkit-flex;
    display: flex;
}
.s-opening-rule dt {
    padding: 10px;
    text-align: left;
    vertical-align: top;
    width: 30%;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid #cccccc;
}
.s-opening-rule dd {
    width: 70%;
    padding: 10px;
    background-color: #ffffff;
    border-left: 1px solid #cccccc;
    border-bottom: 1px solid #cccccc;
}
.s-opening-rule__inner li strong {
    display: block;
    margin-bottom: 0.2em;
}
@media (max-width: 1023px) {
    .s-opening-rule {
        width: initial;
        margin: 0 10px 30px;
        border-bottom: none;
    }
    .s-opening-rule__title {
        width: 100%;
        margin: 0 auto;
        padding: 10px 0;
        border: 1px solid #cccccc;
        font-size: 18px;
        font-weight: bold;
        text-align: center;
    }
    .s-opening-rule dl {
        display: block;
    }
    .s-opening-rule dt {
        display: block;
        width: 100%;
        padding: 10px;
        border: none;
        text-align: left;
        vertical-align: top;
        box-sizing: border-box;
    }
    .s-opening-rule dd {
        display: inline-block;
        width: 100%;
        padding: 10px;
        border: none;
        background-color: #ffffff;
        box-sizing: border-box;
        border-bottom: 1px solid #cccccc;
    }
    .s-opening-rule__inner {
        width: 100%;
        margin: 0 auto;
        border: 1px solid #cccccc;
        border-top: none;
        border-bottom: none;
        background-color: #fafafa;
        font-size: 13px;
    }
    .s-opening-rule__inner li {
        margin: 0 0 5px 0;
    }
}
@media (max-width: 47.938em) {
    .s-opening-rule {
        margin-bottom: 15px!important;
        padding-bottom: 5px;
    }
}
.s-opening-rule a:hover {
    text-decoration: underline;
}

/* campaign-entry-form */
.user-friendly-campaign-entry-form-on {
    border: none!important;
    background: #fff!important;
}
.user-friendly-campaign-entry-form {
    padding: 3.4rem 0 1.5rem;
}
@media (max-width: 47.938em) {
    .user-friendly-campaign-entry-form {
        padding: 2.4rem 0 .5rem;
    }
}
.alreadyEntryBanner .user-friendly-campaign-entry-form {
    padding: 2.4rem 0 4.5rem;
}
@media (max-width: 47.938em) {
    .alreadyEntryBanner .user-friendly-campaign-entry-form {
        padding: 2.4rem 0;
    }
}
.entry .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox {
    padding: 28px 0 20px;
}
@media (max-width: 47.938em) {
    .entry .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox {
        padding: 18px 0 0;
        font-size: 1.5rem;
    }
}
.entry .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-message {
    padding: 0 16.5% 20px;
    line-height: 1.5;
}
@media (max-width: 47.938em) {
    .entry .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-message {
        padding: 0 9% 12px;
        font-size: 1.1rem;
    }
}
.campaignList_valBox .entry .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-message {
    padding: 0 15% 20px;
    text-align: center;
}
#dining_cmp .user-friendly-campaign-entry-form-message a:visited {
    color: #f27241;
}
#dining_cmp .user-friendly-campaign-entry-form-message a:link {
    color: #f27241;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .on {
    background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_on.png) no-repeat 0 0;
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .off {
    background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_off.png) no-repeat 0 0;
}
@media (max-width: 47.938em) {
    .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .on,
    .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .off {
        background-size: 20px;
        background-position: 0 5px;
    }
}
.user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox span {
    padding: 4px 0 5px 42px;
}
@media (max-width: 47.938em) {
    .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox span {
        padding: 4px 0 5px 28px;
    }
}
.user-friendly-campaign-entry-form-off {
    border: none;
    background: #fff;
}
.entry .user-friendly-campaign-entry-form-entry-button-area {
    padding: 0 16.52631578947368%;
}
@media (max-width: 380px) {
    .entry .user-friendly-campaign-entry-form-entry-button-area {
        padding: 0 8.5%;
    }
}
.entry .user-friendly-campaign-entry-form-entry-button-area a {
    display: block;
}
.user-friendly-campaign-entry-form-entry-button-area a:hover {
    opacity: .8;
    transition: opacity .3s ease;
}
.entry .user-friendly-campaign-entry-form-entry-button-area img {
    width: 100%;
    max-width: 630px;
}

.user-friendly-campaign-entry-form-message .only-pc {
    display: block;
}
@media screen and (max-width: 47.938em) {
    .user-friendly-campaign-entry-form-message .only-pc {
        display: none;
    }
}
.user-friendly-campaign-entry-form-message a:hover {
    text-decoration: underline;
}

/*  sm_side_btn  */
.sm_side_btn {
  position: fixed;
  bottom: 0;
  right: 0;
  width: 178px;
  height: 185px;
  background: #fff;
  border-radius: 8px 0 0 0;
  padding: 8px;
  font-size: 8px;
  text-align: left;
  box-shadow: 0px 0px 6px 3px #e0e0e0;
  overflow: hidden;
  z-index: 9999
}
.sm_side_btn .user-friendly-campaign-entry-form-on{
    border: none;
    background: rgba(255,255,255,0.8);
}
.sm_side_btn .user-friendly-campaign-entry-form{
    padding: 40px 86px;
}
.sm_side_btn .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .on{
    background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_on.png) no-repeat 0 6px;
    padding: 28px 0 14px 35px;
}
.sm_side_btn .user-friendly-campaign-entry-form .user-friendly-campaign-entry-form-checkbox .off{
    background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_off.png) no-repeat 0 6px;
    padding: 28px 0 14px 35px;
}
.sm_side_btn .user-friendly-campaign-entry-form.min{
    padding: 6px;
}
.sm_side_btn .user-friendly-campaign-entry-form.min .user-friendly-campaign-entry-form-checkbox .on{
    background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_on.png) no-repeat 0 6px;
    background-size: 18px;
    padding: 4px 0 0 20px;
    font-size: 14px;
    text-align: left;
    line-height: 1;
}
.sm_side_btn .user-friendly-campaign-entry-form.min .user-friendly-campaign-entry-form-checkbox .off{
    background: url(https://dining.rakuten.co.jp/img/campaign/common/img_check_off.png) no-repeat 0 6px;
    background-size: 18px;
    padding: 4px 0 0 20px;
    font-size: 14px;
    text-align: left;
    line-height: 1;
}
.sm_side_btn .user-friendly-campaign-entry-form.min .user-friendly-campaign-entry-form-message{
    font-size: 10px;
}

.entry_btn--hide {
  opacity: 0;
  bottom: -100px;
}

/* pageTop
--------------------------------------------------------- */
.pageTop a {
    clear: both;
    display: block;
    font-size: 82%;
    height: 20px;
    float: right;
    padding: 0 0 0 16px;
    background-repeat: no-repeat;
    background-position: 0 -235px;
    background-image: url(https://dining.rakuten.co.jp/img/common/icon.gif);
}
.pageTop a:hover {
    text-decoration: underline;
}

/*--------sm_minbtn--------*/
.sm_minbtn{
    position: fixed;
    bottom: 10px;
    right: 10px;
    background: #bf0000;
    border-radius: 50%;
    text-align: center;
    box-shadow: 0 0 15px rgba(0,0,0,.7);
    z-index: 99999;
    width: 80px;
    height: 80px;
}
.sm_minbtn a{
    display: block;
    line-height: 1.5;
    padding: 26px 0 24px;
    text-decoration: none;
    font-size: 10px;
    font-weight: bold;
    color: #ffffff;
}
@media (max-width: 47.938em) {
    .sm_minbtn{
        position: fixed;
        bottom: 10px;
        right: 10px;
        background: #bf0000;
        border-radius: 8px;
        text-align: center;
        box-shadow: 0 0 15px rgba(0,0,0,.7);
        z-index: 99999;
        width: 78px;
        height: 48px;
    }
    .sm_minbtn a{
        padding: 8px;
        text-decoration: none;
        font-size: 10px;
        font-weight: bold;
        color: #ffffff;
    }
}

/*  balloon  */
.sm_endsoon {
    position: fixed;
    right: 9.5px;
    bottom: 183px;
    width: 157px;
    z-index: 1;
}
@media (max-width: 47.938em) {
    .sm_endsoon {
        position: fixed;
        padding: 18px 8px 8px;
        right: 21px;
        bottom: 70px;
        width: 54px;
        height: 54px;
        background: #bf0000;
        border-radius: 50%;
        box-sizing: border-box;
        text-align: center;
        box-shadow: 0 0 15px rgba(0,0,0,.7);
        z-index: 1000;
    }
    .sm_endsoon img{
        width: 100%;
    }
    .sm_endsoon:before{
        content: "";
        position: absolute;
        bottom: -15px;
        left: 50%;
        margin-left: -8px;
        border: 8px solid transparent;
        border-top: 15px solid #bf0000;
        z-index: 0;
    }
}

.fuwafuwa {
    -webkit-animation-name:fuwafuwa;
    -webkit-animation-duration:2s;
    -webkit-animation-iteration-count:infinite;
    -webkit-animation-timing-function:ease;
    -moz-animation-name:fuwafuwa;
    -moz-animation-duration:2s;
    -moz-animation-iteration-count:infinite;
    -moz-animation-timing-function:ease;
}
@-webkit-keyframes fuwafuwa {
    0% {-webkit-transform:translate(0, 0);}
    50% {-webkit-transform:translate(0, -10px);}
    100% {-webkit-transform:translate(0, 0);}
}
@-moz-keyframes fuwafuwa {
    0% {-moz-transform:translate(0, 0);}
    50% {-moz-transform:translate(0, -10px);}
    100% {-moz-transform:translate(0, 0);}
}
@media (max-width: 47.938em) {
    .fuwafuwa {
        -webkit-animation-name:fuwafuwa;
        -webkit-animation-duration:2s;
        -webkit-animation-iteration-count:infinite;
        -webkit-animation-timing-function:ease;
        -moz-animation-name:fuwafuwa;
        -moz-animation-duration:2s;
        -moz-animation-iteration-count:infinite;
        -moz-animation-timing-function:ease;
    }
    @-webkit-keyframes fuwafuwa {
        0% {-webkit-transform:translate(0, 0);}
        50% {-webkit-transform:translate(0, -10px);}
        100% {-webkit-transform:translate(0, 0);}
    }
    @-moz-keyframes fuwafuwa {
        0% {-moz-transform:translate(0, 0);}
        50% {-moz-transform:translate(0, -10px);}
        100% {-moz-transform:translate(0, 0);}
    }
}

/* checkEntryMulti-after
--------------------------------------------------------- */
.checkEntryMulti-after .CT-Campaign-Entry {
    display: block;
    margin: 40px auto;
    background: #333;
    text-align: center;
    max-width: 636px;
    padding: 1.01em 0;
    color: #fff;
    border-radius: 5px;
    line-height: 1.241;
    font-size: 2.75rem;
    font-weight: 600;
}
.checkEntryMulti-after .CT-Campaign-Entry .font-s {
    font-size: 1.95rem;
    line-height: 1.85;
    color: #fff;
}
@media screen and (max-width: 47.938em) {
    .checkEntryMulti-after {
        padding: 0 5%;
    }
    .checkEntryMulti-after .CT-Campaign-Entry {
        margin: 20px auto;
        max-width: 450px;
        font-size: 1.75rem;
    }
    .checkEntryMulti-after .CT-Campaign-Entry .font-s {
        font-size: 1.2rem;
    }
}

/* sticky-footer-bnr
--------------------------------------------------------- */
.sticky-footer-bnr.active-tb-pc {
    display: inherit;
}
@media (max-width: 480px) {
    .sticky-footer-bnr.active-tb-pc {
        display: none;
    }
}
.sticky-footer-bnr.active-sp {
    display: none;
}
@media (max-width: 480px) {
    .sticky-footer-bnr.active-sp {
        display: inherit;
    }
}

.sticky-footer-bnr {
  padding: 0;
  background-color: #fbd764;
  text-align: center;
  width: 100%;
  color: #fff;
  z-index: 100;
  line-height: 1;
  position: fixed;
  bottom: -90px;
  left: 0;
}
.sticky-footer-bnr a {
    display: block;
}
.sticky-footer-bnr img {
    width: 100%;
    max-width: 1140px;
}
@media (max-width: 480px) {
    .sticky-footer-bnr img {
        max-width: 480px;
    }
}

.sticky-footer-bnr.slide-down {
  animation-name: slideDown;
  animation-timing-function: ease-in;
  animation-iteration-count: 1;
  animation-delay: 0s;
  transform-origin: 50% 50% 0;
  animation-duration: .3s;
  bottom: 0;
}
@keyframes slideDown {
    0% {
        bottom: -90px;
        }
    100% {
        bottom: 0;
    }
}
.sticky-footer-bnr.slide-up {
  animation-name: slideUp;
  animation-timing-function: ease-in;
  animation-iteration-count: 1;
  animation-delay: 0s;
  transform-origin: 50% 50%  0;
  animation-duration: .3s;
  bottom: -90px;
}
@keyframes slideUp {
    0% {
        bottom: 0;
        }
    100% {
        bottom: -90px;
    }
}
@media (max-width: 480px) {
    .sticky-footer-bnr {
        bottom: -100px;
}
@keyframes slideDown {
    0% {
        bottom: -100px;
    }
}
.sticky-footer-bnr.slide-up {
    bottom: -100px;
}
  @keyframes slideUp {
    100% {
        bottom: -100px;
        }
    }
}

.closebtn_pc {
    position: absolute;
    width: 18px;
    height: 18px;
    right: calc(50% - 430px);
    top: 2px;
    z-index: 999;
}
@media screen and (max-width: 1180px) {
    .closebtn_pc {
        right: calc(50% - 35vw);
    }
}
@media (max-width: 47.938em) {
    .closebtn_pc {
        right: 20px;
    }
}
.closebtn_pc a {
    display: block;
    color: #949592;
    font-size: 2rem;
    cursor: pointer;
}
.closebtn_pc a:hover {
    opacity: .7;
    text-decoration: none;
}
.closebtn_pc.btn_wh a {
    color: #fff;
}
.closebtn_pc.btn_wh {
    top: 6px;
}
@media (max-width: 980px) {
    .closebtn_pc.btn_wh {
        top: 4px;
    }
}
@media (max-width: 47.938em) {
    .closebtn_pc.btn_wh {
        top: 2px;
    }
}
@media (max-width: 480px) {
    .closebtn_pc.btn_wh {
        top: 0;
    }
}

.closebtn_sp {
    position: absolute;
    background: url(https://dining.rakuten.co.jp/img/campaign/common/btn_close_spbnr.png) no-repeat 0 0;
    background-size: 28px;
    width: 28px;
    height: 28px;
    right: 7px;
    top: -12px;
    z-index: 999;
}
.closebtn_sp a {
    display: block;
    cursor: pointer;
}
.closebtn_sp a:hover {
    opacity: .7;
    text-decoration: none;
}

#footer.pb {
    padding-bottom: 60px;
}
@media (max-width: 480px) {
    #footer.pb {
        padding-bottom: 100px !important;
    }
}