@charset "UTF-8";


@media (min-width: 320px) {
  /* タイトル */
article.page_title {
      background: url("../images/reserve/head_img.jpg") no-repeat 80% center;;
      background-size: cover;
  }
  article h2.sub_title .sub_title_pack {
      letter-spacing: -0.1em;
  }

.red_under {
    background: #ffd8d8;
}

 /* Web予約のご案内*/
.qrcode {
    padding: 5px;
    margin: 15px 0;
    border: solid 1px #c0a893;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}
.qrcode table {
    text-align: center;
    margin: 0 auto;
}
.qrcode table th {
    padding-top: 0.5em;
}
.qrcode table th small {
    display: block;
}
.qrcode table td {
    font-size: 1.4rem;
}
.qrcode table td .qrcode_img {
    width: 130px;
    margin: 10px;
}
.qrcode table td .red_txt {
    color: #ea7979;
}

  /* 注意事項*/
article.stoneback .attention {
    margin-bottom: 1.5em;
    padding-bottom: 20px;
  }
article.stoneback h3 {
	font-size: 1.6rem;
	color: #9f4242;
	display: table;
	margin: 0 auto 20px;
	padding: 0 3em;
	background: url("../images/common/decoline5_l.svg"), url("../images/common/decoline5_r.svg");
	background-repeat: no-repeat, no-repeat;
	background-position: left center, right center;
	background-size: 35px, 35px;
  }
ol.caution {
}
ol.caution li {
    list-style: none;
    margin-bottom: 0.5em;
    padding-left: 1em;
    position: relative;
}
ol.caution li::before {
    content: '';
    display: block;
    width: 0.5em;
    height: 0.5em;
    background: #764523;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    position: absolute;
    left: 0px;
    top: 0.7em;
}
ol.caution dl {
    margin-top: 1em
}

  /* ご予約時のお願い*/
article.stoneback .please {
    margin-bottom: 1.5em;
    padding-bottom: 20px;
  }
.trimming_request .request_img {
    display: table;
    margin: 15px auto 0;
    padding: 5px;
    background: #fff;
}

  /* キャンセル*/
.cancel .cancel_note {
    margin-bottom: 20px;
  }
.cancel dt {
    color: #fff;
    background: #9f4242;
    display: table;
    padding: 0 1em;
    margin: 0 auto 1em;
  }
}

@media (min-width: 360px) {
}

@media (min-width: 400px) {
  article h2.sub_title .sub_title_pack {
      letter-spacing: 0;
  }
}

@media (min-width: 520px) {
}

@media (min-width: 768px) {
  /* Web予約のご案内*/
.qr_double {
	display: flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
    -webkit-box-pack:center;
    -webkit-justify-content:center;
    -ms-flex-pack:center;
    justify-content:center;
}
.qrcode {
    padding: 10px;
    margin: 0 10px;
    border-width: 2px;
	-webkit-border-radius: 25px;
	-moz-border-radius: 25px;
	border-radius: 25px;
    width: 50%;
    max-width: 340px;
}
.qr_double .qrcode table th {
    height: 5em;
    padding-top: 0;
}
.qrcode table td {
    font-size: 1.6rem;
}
.qrcode table td .qrcode_img {
    width: 146px;
    margin: 10px;
    flex-shrink: 0;
}

  /* 注意事項*/
article.stoneback .attention {
    margin-bottom: 40px;
    padding-bottom: 30px;
  }
article.stoneback h3 {
	font-size: 1.8rem;
	margin-bottom: 40px;
	padding: 0 2.5em;
	background-size: 35px, 35px;
  }

  /* ご予約時のお願い*/
.trimming_request {
	display: flex;
	display: -ms-flexbox; /* IE10 */
	display: -webkit-box; /* Android4.3以下、Safari3.1～6.0 */
	display: -webkit-flex; /* Safari6.1以降 */
    -webkit-box-pack:justify;
    -webkit-justify-content:space-between;
    -ms-flex-pack:justify;
    justify-content:space-between;
    -webkit-box-align:start;
    -webkit-align-items:flex-start;
    -ms-flex-align:start;
    align-items:flex-start;
}
article.stoneback .please {
    margin-bottom: 40px;
    padding-bottom: 30px;
  }
.trimming_request .request_img {
    margin: 0 0 0 30px;
    flex-shrink: 0;
}


}

@media (min-width: 840px) {
}

@media (min-width: 1200px) {
  /* Web予約のご案内*/
.qrcode {
    padding: 15px 10px;
    margin: 0 40px;
    max-width: 420px;
}
.qr_double .qrcode table th {
    height: 3.5em;
}
.qrcode table td .qrcode_img {
    width: 150px;
}

  /* 注意事項*/
  article.stoneback .attention {
    padding: 60px 30p 50pxx;
  }
article.stoneback h3 {
	font-size: 2rem;
	margin-bottom: 50px;
	padding: 0 2.7em;
	background-size: 40px, 40px;
  }
.attention .pack_menu_intro {
	font-size: 2rem;
  }

  .attention .pack_menu_img {
    max-width: 379px;
    padding-left: 50px;
  }

  /* ご予約時のお願い*/
article.stoneback .please {
    padding: 60px 30p 50pxx;
  }
.trimming_request .request_img {
    width: 300px;
}


}

@media (min-width: 1500px) {
}

