﻿@charset "UTF-8";
/* Brouser hack
 * --------------------------------------- */
@-ms-viewport {
  width: auto !important;
  initial-scale: 1 !important; }
/* Reset Style
 * --------------------------------------- */
html {
  overscroll-behavior: none; }

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre,
form, fieldset, input, textarea, p, blockquote, th, td {
  padding: 0;
  margin: 0; }

a {
  text-decoration: none; }

table {
  border-spacing: 0; }

fieldset, img {
  border: 0; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-weight: normal;
  font-style: normal; }

strong {
  font-weight: bold; }

ol, ul {
  list-style: none;
  margin: 0;
  padding: 0; }

caption, th {
  text-align: left; }

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-size: 100%;
  margin: 0;
  padding: 0;
  color: #333; }

q::before, q::after {
  content: ''; }

abbr, acronym {
  border: 0; }

input[type="search"], input[type="button"], input[type="text"], input[type="submit"], input[type="image"], textarea {
  -webkit-appearance: none;
  border-radius: 0; }

button {
  background: transparent;
  border: 0;
  border-radius: 0;
  font: inherit;
  list-style: none;
  margin: 0;
  outline: 0;
  overflow: visible;
  padding: 0;
  text-align: inherit;
  vertical-align: baseline;
  cursor: pointer; }

button {
  color: inherit; }

:focus {
  outline: none; }

button::-moz-focus-inner {
  margin: 0;
  padding: 0;
  border: 0; }

/* Base Style
* --------------------------------------- */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0; }

input[type="number"] {
  -moz-appearance: textfield; }

.hover:hover {
  opacity: 0.8; }

img {
  max-width: 100%; }

br.SP {
  display: none; }
  @media only screen and (max-width: 660px) {
    br.SP {
      display: block; } }

br.SPmini {
  display: none; }
  @media only screen and (max-width: 340px) {
    br.SPmini {
      display: block; } }

br.PC {
  display: block; }
  @media only screen and (min-width: 661px) {
    br.PC {
      display: none; } }

.nomgb {
  margin-bottom: 0 !important; }

.sp14px {
  font-size: 3.46vw; }

@media only screen and (min-width: 661px) {
  .pc15px {
    font-size: 0.9375rem; } }
.nobr {
  white-space: nowrap; }

.order-first {
  -webkit-order: -1;
  -ms-order: -1;
  order: -1; }

.hidden {
  display: none; }

.show {
  display: block; }

/*
 * button
 */
.button {
  width: 100%;
  background-color: #96dc5f;
  font-weight: bold;
  border-radius: 5px;
  height: 3.6em;
  cursor: pointer;
  border: none;
  white-space: nowrap; }
  @media only screen and (max-width: 660px) {
    .button {
      font-size: 3.73vw; } }
  @media screen and (min-width: 661px) and (max-width: 768px) {
    .button {
      font-size: 1rem; } }
  @media screen and (min-width: 769px) and (max-width: 1200px) {
    .button {
      font-size: 1rem; } }
  .button.clear {
    background-color: #ccc; }
    .button.clear:hover {
      opacity: .8; }

body.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0; }

.wrp_brd {
  z-index: auto; }

@media only screen and (max-width: 660px) {
  .paging_settings {
    border-top: none; } }
.paging_settings.nopaging {
  background-color: #f2f2f2;
  padding: .5em 5vw !important; }
  .paging_settings.nopaging .pg_number_set {
    line-height: 1;
    margin-bottom: .5em;
    bottom: 0; }
  .paging_settings.nopaging .result-inner {
    display: none; }
.paging_settings .result-inner .pcOnly {
  display: none !important; }
  @media only screen and (min-width: 661px) {
    .paging_settings .result-inner .pcOnly {
      display: block !important; } }
.paging_settings .result-inner .spOnly {
  display: block !important; }
  @media only screen and (min-width: 661px) {
    .paging_settings .result-inner .spOnly {
      display: none !important; } }

.new-inner.list-foot {
  display: block;
  padding: 1rem 7.5vw 07.5vw; }
  @media only screen and (min-width: 661px) {
    .new-inner.list-foot {
      display: none; } }

.noresults .new-inner.list-foot {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0; }

.btn_apply_sp {
  display: none; }

@media only screen and (max-width: 660px) {
  #require-search-page .download_belt,
  #require-search-page footer#footer_nav,
  #require-search-page footer#logo_footer,
  #require-search-page #anime {
    display: none; } }

@media only screen and (min-width: 661px) {
  #new_category_wrp {
    max-width: 1000px;
    width: 100%; } }
@media screen and (min-width: 661px) and (max-width: 1000px) {
  #new_category_wrp {
    padding: 0 30px; } }

.require_frame dl {
  display: flex;
  flex-wrap: wrap;
  width: 94vw;
  margin: 1em auto 0;
  line-height: 1.4; }
  @media only screen and (max-width: 660px) {
    .require_frame dl {
      font-size: 3.2vw; } }
  @media screen and (min-width: 661px) and (max-width: 768px) {
    .require_frame dl {
      font-size: 0.875rem; } }
  @media screen and (min-width: 769px) and (max-width: 1200px) {
    .require_frame dl {
      font-size: 0.875rem; } }
  .require_frame dl dt {
    position: relative;
    /*width: 7em;*/
    width: 100%;
    margin-bottom: .3em;
    color: #666;
    /*    &::after {
          content: " : ";
          position: absolute;
          right: 0;
        }*/ }
  .require_frame dl dd {
    /*    width: calc(100% - 7em);*/
    margin-bottom: .8em;
    /*padding-left: .5em;*/ }
    .require_frame dl dd.area {
      text-overflow: ellipsis;
      overflow: hidden;
      white-space: nowrap; }
    .require_frame dl dd:last-child {
      margin-bottom: 0; }
    .require_frame dl dd span {
      font-weight: bold; }
      .require_frame dl dd span.wave {
        margin: 0 .3em 0  .5em;
        font-weight: normal; }
    .require_frame dl dd div {
      display: inline-block;
      white-space: nowrap; }

@media only screen and (max-width: 660px) {
  .area_name.title_content {
    max-width: initial;
    position: -webkit-sticky;
    position: sticky;
    top: 0; }

  .area_name.title_content:after {
    background-color: transparent; }

  .area_name {
    display: block;
    color: #333;
    font-size: 4vw;
    border-bottom: 1px solid #f2f2f2;
    margin: 0 0 .7em;
    padding: 0.5em 5vw 0.5em calc(5vw + 5px + .4em);
    font-weight: bold;
    background: #fff;
    z-index: 1000; }
    .area_name::before {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      left: 5vw;
      width: 5px;
      height: 1.33em;
      content: '';
      background: #df4525; } }
.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0; }

.checkThem {
  padding-left: calc(6vw + 1.8em);
  /*padding-bottom: 1em;*/
  background-image: url(/themes/images/raiten/shop/ic_curvedArrow.svg);
  background-size: 1.3em;
  background-position: left 6vw top .6em;
  background-repeat: no-repeat;
  margin-bottom: 0; }
  @media only screen and (max-width: 660px) {
    .checkThem {
      font-size: 2.93vw; } }
  @media screen and (min-width: 769px) and (max-width: 1200px) {
    .checkThem {
      font-size: 0.8125rem; } }
  @media screen and (min-width: 769px) and (max-width: 1200px) {
    .checkThem {
      background-image: none; } }
  @media only screen and (min-width: 1200px) {
    .checkThem {
      background-image: none; } }

ul.shop_list {
  padding: 0 5vw;
  border-bottom: 1px solid #f2f2f2; }
  ul.shop_list li {
    display: -webkit-flex;
    display: flex;
    margin-left: 0;
    padding: 1em 0;
    border-bottom: 1px solid #f2f2f2;
    position: relative; }
    ul.shop_list li:last-child {
      border-bottom: none; }

.shop_wrp {
  width: 100%;
  background-image: url(/themes/images/web/arrowhead_r_red.svg);
  background-size: .6em;
  background-position: right center;
  background-repeat: no-repeat;
  margin: -.3em 0 0 0;
  margin-left: min(5vw, 1.1em); }
  .shop_wrp a.shop {
    display: block; }
    .shop_wrp a.shop::before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }

.shop_wrp {
  width: 100%;
  background-image: url(/themes/images/web/arrowhead_r_red.svg);
  background-size: .6em;
  background-position: right center;
  background-repeat: no-repeat;
  margin: -.3em 0 0 0;
  margin-left: min(5vw, 1.1em); }
  .shop_wrp .text_box {
    padding: 0 10vw 0 0; }
    .shop_wrp .text_box span {
      display: block; }
      .shop_wrp .text_box span.vendor {
        font-size: 3.2vw;
        line-height: 1.83; }
      .shop_wrp .text_box span.shop {
        font-size: 3.73vw;
        font-weight: bold;
        line-height: 1.57; }
      .shop_wrp .text_box span.counter {
        font-size: 3.73vw;
        font-weight: bold;
        line-height: 1.57; }
      .shop_wrp .text_box span.adress {
        font-size: 2.93vw;
        line-height: 1.6;
        color: #666666;
        /*margin-bottom: .75em;*/ }
      .shop_wrp .text_box span.frame {
        font-size: 3.46vw;
        line-height: 1.5;
        color: #df4525; }
      @media only screen and (min-width: 661px) {
        .shop_wrp .text_box span.vendor {
          font-size: 0.875rem; }
        .shop_wrp .text_box span.shop {
          font-size: 0.9375rem; }
        .shop_wrp .text_box span.counter {
          font-size: 0.9375rem;
          margin-bottom: .1em; }
        .shop_wrp .text_box span.adress {
          font-size: 0.8125rem;
          line-height: 1.6; }
        .shop_wrp .text_box span.frame {
          font-size: 0.9375rem; } }

a.shop_link {
  display: inline-flex;
  align-items: center;
  width: 7em;
  white-space: nowrap;
  font-size: 3.2vw;
  line-height: 1;
  color: #066eb3;
  padding: .5em .5em .5em 0;
  position: relative; }
  @media only screen and (min-width: 661px) {
    a.shop_link.shop_link {
      font-size: 0.875rem; } }
  a.shop_link img {
    margin-left: .3em;
    width: auto;
    height: 1em; }

.reserve_detail .shop_wrp .text_box span.counter {
  width: 65vw;
  position: relative; }

.reserve_detail a.shop_link {
  position: absolute;
  right: -25vw;
  top: 50%;
  transform: translateY(-50%);
  font-weight: normal;
  width: 6em;
  margin-left: 1em; }

/* 2021.09.26 */
ul.shop_list.together {
  padding: 0; }
  ul.shop_list.together li {
    padding: 1em 5vw 1em 0; }
    ul.shop_list.together li label {
      position: static;
      padding: 0 0 5vw 5vw;
      padding-right: min(5vw, 1.1em);
      height: min-content;
      cursor: pointer;
      z-index: 1; }
    ul.shop_list.together li .shop_wrp {
      margin-left: 0; }
      ul.shop_list.together li .shop_wrp a.shop {
        display: block; }
        ul.shop_list.together li .shop_wrp a.shop::before {
          position: static; }

ul.shop_list.together.oneresult li .shop_wrp {
  margin-left: 5vw; }

/*　下からスライドボックス　*/
#slide_box {
  width: 100vw;
  height: auto;
  border-radius: 3px 3px 0 0;
  padding: 0 5vw 3vw 5vw;
  position: fixed;
  bottom: 0;
  margin: 0 auto;
  left: 0;
  right: 0;
  box-shadow: 0px 0px 9px 2px rgba(0, 0, 0, 0.1);
  background: rgba(0, 0, 0, 0.7);
  z-index: 10010; }

#slide_box .btn_slide {
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  position: absolute;
  right: 5vw;
  top: 5vw;
  width: auto;
  height: auto; }

#slide_box .btn_slide img {
  width: 4.8vw;
  height: 2.66vw;
  padding-left: 0; }

#slide_box.SlideDown .btn_slide img {
  transform: rotateX(180deg); }

#slide_box.checked_shop dt {
  display: flex;
  justify-content: start;
  align-items: center;
  font-size: 3.73vw;
  font-weight: bold;
  color: #fff;
  height: 3.5em;
  margin: 0;
  overflow: hidden;
  box-sizing: border-box; }

#slide_box.checked_shop dt span {
  font-size: 2.93vw;
  padding-left: 1em;
  font-weight: normal; }

#slide_box.checked_shop .checked_shop_list_wrp {
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

#slide_box.checked_shop ul.checked_shop_list　 {
  width: auto;
  display: inline-flex;
  padding: 1em 0 0;
  overflow: hidden; }

#slide_box.checked_shop ul.checked_shop_list li {
  position: relative;
  width: 36vw;
  height: auto;
  border: 1px solid #ccc;
  border-radius: 4px;
  background: #fff;
  padding: .4em;
  margin-right: 4vw;
  margin-top: 1em; }
  #slide_box.checked_shop ul.checked_shop_list li:last-child {
    margin-right: 36vw; }
  #slide_box.checked_shop ul.checked_shop_list li span {
    display: block; }
    #slide_box.checked_shop ul.checked_shop_list li span.vendor {
      font-size: 2.66vw;
      font-weight: bold;
      line-height: 1.83; }
    #slide_box.checked_shop ul.checked_shop_list li span.shop {
      font-size: 2.93vw;
      font-weight: bold;
      line-height: 1.57; }
    #slide_box.checked_shop ul.checked_shop_list li span.adress {
      font-size: 2.66vw;
      line-height: 1.6;
      color: #666666; }
  #slide_box.checked_shop ul.checked_shop_list li .btn_close {
    position: absolute;
    width: 5.33vw;
    height: 5.33vw;
    top: -2.67vw;
    right: -2.67vw; }
    #slide_box.checked_shop ul.checked_shop_list li .btn_close img {
      width: 100%; }

#slide_box.checked_shop .buttonlist {
  display: flex;
  justify-content: space-between;
  margin-top: 1em; }
  #slide_box.checked_shop .buttonlist span {
    width: 50vw; }
    #slide_box.checked_shop .buttonlist span.left {
      width: 36vw;
      margin-right: 4vw; }
    #slide_box.checked_shop .buttonlist span .button {
      height: 3em;
      position: static; }
      @media only screen and (max-width: 660px) {
        #slide_box.checked_shop .buttonlist span .button {
          font-size: 3.46vw; } }
      @media screen and (min-width: 661px) and (max-width: 768px) {
        #slide_box.checked_shop .buttonlist span .button {
          font-size: 0.9375rem; } }
      @media screen and (min-width: 769px) and (max-width: 1200px) {
        #slide_box.checked_shop .buttonlist span .button {
          font-size: 0.9375rem; } }
    #slide_box.checked_shop .buttonlist span input.button {
      display: block;
      text-align: center; }

/*下から上*/
/*@keyframes SlideUp {
  0% {opacity: 1;transform: translateY(100%) translateY(-13vw);}
  100% {opacity: 1;transform: translateY(0%);}
}*/
/*上から下*/
/*@keyframes SlideDown {
  0% {opacity: 1;transform: translateY(0%);}
  100% {opacity: 1;transform: translateY(100%) translateY(-13vw);} 
}
#slide_box.SlideUp {animation: SlideUp .2s ease-in forwards;}
#slide_box.SlideDown {animation: SlideDown .2s ease-in forwards;}*/
.require_back {
  background-image: url(/themes/images/web/arrowhead_l_red.svg);
  background-position: 1em center;
  background-repeat: no-repeat;
  background-size: 0.5em auto;
  box-sizing: border-box;
  color: #333;
  order: -1;
  font-size: 2.93vw;
  font-style: normal;
  padding-left: 1em;
  text-align: right;
  width: 4em; }

#require_form {
  background-color: #f2f2f2; }
  #require_form.area {
    background-color: #fff; }
  #require_form h2 {
    font-size: 4vw; }

#require_header {
  border-bottom: 0.53vw solid #f2f2f2; }
  #require_header .col3 #require_back {
    order: -2; }

#require_area {
  padding-bottom: 20vw; }

#require_area .list_wrap {
  background-color: #fff;
  margin-bottom: 1.06vw;
  padding: 3vw 5vw; }
  #require_area .list_wrap .btn-box {
    display: block;
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 4px;
    font-size: 3.46vw;
    padding: .8em 2em .8em 1em;
    background-image: url(/themes/images/icons/arrow_right.svg);
    background-size: .6em;
    background-position: right .75em center;
    background-repeat: no-repeat;
    margin: .3em 0 1em;
    color: #333;
    cursor: pointer;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap; }
  #require_area .list_wrap h3 {
    background-color: transparent;
    font-size: 3.73vw;
    font-weight: bold;
    padding: 0; }
  #require_area .list_wrap h4,
  #require_area .list_wrap label.name {
    display: block;
    font-size: 3.46vw;
    color: #666666;
    margin: .3em 0 0 0; }
  #require_area .list_wrap .select {
    align-items: center;
    margin: .3em 0 .5em 0; }
    #require_area .list_wrap .select span.wave {
      justify-content: center;
      margin: 0 1.5vw;
      padding: 0; }
  #require_area .list_wrap p {
    color: #999999;
    margin-top: -.5em; }
    @media only screen and (max-width: 660px) {
      #require_area .list_wrap p {
        font-size: 2.66vw; } }
    @media screen and (min-width: 769px) and (max-width: 1200px) {
      #require_area .list_wrap p {
        font-size: 0.75rem; } }
  #require_area .list_wrap .select select {
    font-size: 3.47vw;
    padding: 0 1em;
    display: inline-block;
    border-color: #ccc;
    border-style: solid;
    border-width: 1px;
    border-radius: 3px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: #fff;
    height: 100%;
    min-width: auto;
    position: relative;
    background-image: url(../../images/mochimono/arrow_select.svg);
    background-size: 11px;
    background-position: 95% center;
    background-repeat: no-repeat;
    cursor: pointer; }
    #require_area .list_wrap .select select.day {
      width: 19em;
      margin-right: 1em !important; }
    #require_area .list_wrap .select select.time {
      width: 12em; }
  #require_area .list_wrap .select span {
    display: block;
    font-size: 3.2vw;
    width: 20%; }

.select:not(.is-multiple):not(.is-loading)::after {
  display: none; }

#require_area .list_wrap ul.col {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  margin: .3em 0 1em 0; }
  #require_area .list_wrap ul.col li {
    display: inline-flex;
    border: none;
    padding: .45em 0; }
    #require_area .list_wrap ul.col li .check_squ_wrap {
      margin-right: .6em; }
    #require_area .list_wrap ul.col li label {
      cursor: pointer;
      white-space: nowrap; }

#require_area .list_wrap ul.col2 li {
  width: 50%; }

#require_area .list_wrap ul.col4 li span {
  padding: 0; }

#require_footer .button {
  height: 3em; }
  #require_footer .button.green {
    background-color: #96dc5f;
    border: none;
    color: #333; }
  #require_footer .button.clear {
    width: 25vw; }
  #require_footer .button.half {
    width: 43vw; }
  #require_footer .button.single {
    width: 90vw; }

#require_area .area-title_wrp {
  display: flex;
  justify-content: space-between;
  align-items: center; }
  #require_area .area-title_wrp p.button.allclear {
    width: 8em;
    height: 2.6em;
    background-color: #fff;
    border: 1px solid #ccc;
    border-radius: 1.33vw;
    font-size: 3.2vw;
    font-weight: normal;
    color: #666666;
    margin: 0;
    padding: 0;
    text-align: center; }

.area-box_wrp {
  display: block; }

#area-modal .area-box_wrp {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap; }

#require_area .list_wrap .area-box {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 5px;
  margin: .5em auto .8em;
  /*  &:first-of-type .toggle_title + .hidecontent {
      display: block;
    }*/ }
  #require_area .list_wrap .area-box dt {
    position: relative;
    font-size: 3.46vw;
    padding: .8em 1em; }
    #require_area .list_wrap .area-box dt span {
      font-size: 2.93vw;
      color: #999999; }
    #require_area .list_wrap .area-box dt img {
      position: absolute;
      top: 40%;
      right: 1em;
      width: 3.73vw; }
  #require_area .list_wrap .area-box .toggle_title + .hidecontent {
    display: none; }
  #require_area .list_wrap .area-box .toggle_title.selected img {
    transform: rotateX(180deg); }
  #require_area .list_wrap .area-box .inner {
    border-top: 1px solid #eaeaea;
    padding: .8em 1em; }

#require_area .list_wrap .area-box label span {
  font-size: 2.93vw;
  color: #999999; }

.require_frame .col3 {
  margin: 0; }
  .require_frame .col3 span {
    padding: 0; }
  .require_frame .col3 span.right.pcOnly {
    display: none; }

/* 絞り込み解除ボタン */
.one-btn-box {
  max-width: 55%;
  display: block; }

.one-btn-box a {
  display: flex;
  width: 97%;
  border: 1px #30b5ef solid;
  border-radius: 4px;
  justify-content: center;
  padding: 1.25em 1.5% 1em 1.5%;
  background-attachment: scroll;
  background-position: 97.5% center;
  background-repeat: no-repeat;
  background-image: url(https://www.sofmap.com/images/static/img/arrow_btn.svg);
  background-size: 6px auto;
  font-size: .9375rem;
  text-align: center;
  line-height: 1.3; }

.one-btn-box.gray a {
  background-color: #ebeff1;
  display: block;
  width: 97%;
  margin: 0 auto;
  border: 1px #ebeff1 solid;
  border-radius: 4px;
  justify-content: center;
  background-attachment: scroll;
  background-repeat: no-repeat;
  background-image: url(https://www.sofmap.com/images/static/img/arrowhead_r_gray.svg);
  background-size: 6px auto;
  background-position: 95% center;
  text-align: center;
  color: #666; }

.one-btn-box.gray.cancel a {
  background-image: url(https://www.sofmap.com/images/static/img/ic_cancel.svg);
  background-size: .8em auto;
  color: #666; }

.one-btn-box.gray a {
  background-position: 97.5% center; }

ul.delete_txt {
  display: flex;
  padding: .5em 0;
  margin: 0 auto; }

ul.delete_txt li {
  font-size: .625rem;
  margin-bottom: .5em; }

ul.delete_txt li a {
  display: block;
  border: 1px #30b5ef solid;
  border-radius: 1em;
  padding: .5em 1.75em .5em .65em;
  margin-right: .5em;
  color: #0075c1;
  background-attachment: scroll;
  background-position: right center;
  background-image: url(https://www.sofmap.com/images/static/img/btn_close_s.svg);
  background-size: 1.65em auto;
  background-repeat: no-repeat;
  line-height: 1; }

a.ic_search {
  cursor: pointer; }

.hide {
  display: none; }

.release_box p.one-btn-box.ss-size, .release_box p.one-btn-box.ss-size {
  margin: 0 .2em 0 0;
  padding-left: 4vw;
  width: auto; }

.release_box .one-btn-box.gray a {
  background-color: #fcfcfc;
  margin: 0 auto;
  border: 1px #ccc solid;
  color: #066eb3;
  padding: .65em 2.4em .5em 1em;
  box-sizing: border-box;
  background-position: 95% center;
  background-image: url("/themes/images/raiten/shop/ic_cancel.svg");
  background-size: .8em auto;
  font-size: 2.9vw;
  max-width: 16em;
  display: block;
  white-space: nowrap; }

.release_box_wrp {
  width: 100vw;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  margin: 0;
  padding: .5em 0 1em;
  padding: 0 0 .5em; }

#require_form .release_box_wrp {
  margin-top: .4em; }

.release_box {
  display: flex;
  align-items: center;
  justify-content: flex-start; }

#require_form .release_box p.one-btn-box.ss-size {
  margin: 0 .2em 0 0;
  max-width: 100%;
  padding-left: 2%;
  width: auto; }

#require_form .release_box .one-btn-box.gray a {
  background-color: #fcfcfc;
  margin: 0 auto;
  border: 1px #ccc solid;
  color: #066eb3;
  padding: .65em 2.4em .5em 1em;
  box-sizing: border-box;
  background-position: 95% center;
  background-image: url(https://www.sofmap.com/images/static/img/ic_cancel.svg);
  background-size: .8em auto;
  font-size: 2.9vw;
  max-width: 16em;
  display: block;
  white-space: nowrap; }

.release_box .delete_txt {
  flex-wrap: nowrap;
  max-width: none;
  margin-left: .2em;
  margin-right: auto;
  border-bottom: 0; }

.release_box .delete_txt li {
  margin-bottom: 0;
  font-size: 2.4vw; }

.release_box .delete_txt li a {
  background-color: #fcfcfc;
  border: 1px #ccc solid; }

.release_box .delete_txt li a {
  overflow: hidden;
  max-width: 22em;
  text-overflow: ellipsis;
  white-space: nowrap; }

.release_box .delete_txt li a.hide, .hide {
  display: none; }

.one-btn-box {
  max-width: 80%; }

.hide {
  display: none; }

/* ----- location search page ----- */
.location {
  /*  #btn_apply.btn_apply_sp.square {display: none;}*/
  /*  #header_below {display: none;}*/
  /*  .wrp_brd {display: none;}*/ }
  .location .header_center_wrp.lapover {
    z-index: 10011; }

.title.is-5.w100 {
  width: 100%; }

.btn_search {
  cursor: pointer; }

main.location {
  width: 100%;
  height: 100%;
  z-index: 10010; }
  main.location .container {
    width: 100%; }
    main.location .container .map_wrp {
      position: relative;
      width: 100%;
      height: 100%;
      z-index: 0;
      /*overflow: hidden;*/ }
      main.location .container .map_wrp .map {
        position: absolute;
        width: 100%;
        height: 100vw;
        background-image: url("/themes/images/raiten/shop/map_dummy.png");
        background-size: 700px auto;
        background-position: top 5% center;
        z-index: -1; }
      main.location .container .map_wrp aside.shop_list .top-seat {
        z-index: 10030;
        overflow: hidden; }
      main.location .container .map_wrp aside.shop_list .map_header {
        width: 100%;
        background: #fff;
        box-shadow: 0px 5px 10px -1px rgb(0 0 0 / 10%);
        z-index: 20;
        position: -webkit-sticky;
        position: sticky;
        top: 0; }
      main.location .container .map_wrp aside.shop_list .map_frame {
        width: 100vw;
        height: 100%;
        position: relative;
        overflow: hidden;
        background-image: url(/themes/images/raiten/shop/map_dummy.png);
        background-size: 700px auto;
        background-position: top 5% center;
        box-shadow: 0px -8px 10px -8px rgb(0 0 0 / 15%) inset; }
        main.location .container .map_wrp aside.shop_list .map_frame .btn_location {
          position: absolute;
          bottom: 4vw;
          right: 4vw;
          width: 10.66vw;
          height: 10.66vw;
          border-radius: 6.66vw;
          background: #fff;
          box-shadow: 0 1px 3px rgb(0 0 0 / 30%);
          display: flex;
          justify-content: center;
          align-items: center; }
          main.location .container .map_wrp aside.shop_list .map_frame .btn_location img {
            width: 5.86vw;
            height: 5.86vw; }
      main.location .container .map_wrp aside.shop_list .bottom-seat {
        /*          position: absolute;
                  top: 45vh;*/
        width: 100%;
        height: 55vh;
        background: #fff;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch; }
        main.location .container .map_wrp aside.shop_list .bottom-seat.box-shadow {
          box-shadow: 0px 0px 9px 2px rgb(0 0 0 / 10%); }

main.location aside.shop_list {
  position: relative; }

main.location ul.shop_list {
  padding: 2vw 5vw 0; }
  main.location ul.shop_list li .shop_wrp {
    margin-left: 0; }
    main.location ul.shop_list li .shop_wrp .text_box {
      position: relative;
      /*padding: 0 5vw 0 0;*/
      padding: 0 10vw 0 0; }
      main.location ul.shop_list li .shop_wrp .text_box .distance {
        position: absolute;
        top: 0;
        right: 0;
        font-size: 3.2vw;
        color: #666666; }

.buttons_wrp {
  display: flex;
  justify-content: space-between;
  padding: 0 4vw 12px; }
  .buttons_wrp .switch_btn {
    width: 53.33vw;
    border: 1px solid #ccc;
    border-radius: 0.8vw;
    background: #fff;
    display: flex; }
    .buttons_wrp .switch_btn button {
      width: 50%;
      font-size: 3.46vw;
      text-align: center;
      height: 2.5em; }
      .buttons_wrp .switch_btn button.leftSide {
        border-radius: 3px 0 0 3px; }
      .buttons_wrp .switch_btn button.rightSide {
        border-radius: 0 3px 3px 0; }
      .buttons_wrp .switch_btn button.selected {
        background: #96dc5f;
        color: #fff;
        font-weight: bold; }

.map_header .buttons_wrp button.viewtype_location {
  width: 8.5em;
  padding: 0;
  font-size: 3.46vw;
  text-align: center;
  height: 2.5em;
  border-radius: 1.25em;
  border: 1px solid #ccc;
  display: flex;
  justify-content: center;
  align-items: center; }
  .map_header .buttons_wrp button.viewtype_location img {
    margin-right: .3em; }

.location.nodata .pg_number_set, .location.disabled .pg_number_set {
  display: none; }
.location.nodata .pager-box, .location.disabled .pager-box {
  display: none; }

main.location.nodata .container .map_wrp aside.shop_list .map_header {
  box-shadow: none; }

main.location .shop_wrp .text_box span.vendor,
main.location .shop_wrp .text_box span.adress,
main.location .shop_wrp .text_box span.counter,
main.location .shop_wrp .text_box span.shop {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap; }

main.location ul.shop_list li .shop_wrp {
  position: relative; }

main.location .shop_wrp .text_box span.adress {
  width: 60%; }

main.location .shop_list li {
  padding: 1em 0; }

main.location ul.shop_list li .shop_wrp a.shop_link {
  position: absolute;
  right: 2em;
  bottom: -.5em; }

main.location .attention_link.rebook {
  margin-bottom: 0; }

/* ----- shop-search page ----- */
.search-shop #new_category_wrp #main.with_aside {
  background: transparent; }

.search-shop .btn_reserve.whbox {
  display: flex;
  flex-wrap: wrap;
  width: auto;
  border-radius: 3.73vw;
  padding: 4vw 5vw;
  margin: 3.46vw;
  /*  background-image: url(/themes/images/web/arrowhead_r_red.svg);
    background-repeat: no-repeat;
    background-position: right 5vw center;
    background-size: .6em;*/
  margin-bottom: 1.5em;
  position: relative;
  /*&::after {
    content: "";
    background-image: url(/themes/images/web/arrowhead_r_red.svg);
    background-repeat: no-repeat;
    background-position: right 5vw center;
    background-size: .6em;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    position: absolute;
  }*/ }
  .search-shop .btn_reserve.whbox dl {
    width: 100%; }
    .search-shop .btn_reserve.whbox dl dt {
      width: 100%;
      text-align: center;
      font-size: 3.73vw;
      font-weight: bold;
      padding: 0 0 .5em;
      border-bottom: 1px solid #ddd;
      /*z-index: 2;*/ }
      .search-shop .btn_reserve.whbox dl dt a::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }
      .search-shop .btn_reserve.whbox dl dt a::after {
        content: "";
        background-image: url(/themes/images/web/arrowhead_r_red.svg);
        background-repeat: no-repeat;
        background-position: right 5vw center;
        background-size: .6em;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        position: absolute; }
    .search-shop .btn_reserve.whbox dl .shop_wrp {
      width: 100%;
      margin: 0;
      background-image: none;
      margin-top: 1em;
      padding-bottom: 1em; }
      .search-shop .btn_reserve.whbox dl .shop_wrp .text_box {
        padding: 0; }
        .search-shop .btn_reserve.whbox dl .shop_wrp .text_box span.adress {
          margin-bottom: 0; }
      .search-shop .btn_reserve.whbox dl .shop_wrp .shop_link {
        display: inline-flex;
        align-items: center;
        width: auto;
        white-space: nowrap;
        font-size: 3.46vw;
        line-height: 1;
        color: #066eb3;
        padding: .5em .5em .5em 0;
        position: relative; }
    .search-shop .btn_reserve.whbox dl .reservation {
      display: flex;
      flex-direction: column;
      justify-content: center;
      width: 100%;
      text-align: center;
    /*  background-image: url(/themes/images/web/arrowhead_r_red.svg);
  background-repeat: no-repeat;
  background-position: right center;
  background-size: .6em;
  margin-top: .5rem;*/ }
      .search-shop .btn_reserve.whbox dl .reservation strong {
        font-size: 4.8vw;
        margin-bottom: .75em; }
      .search-shop .btn_reserve.whbox dl .reservation p {
        font-size: 3.73vw; }
        .search-shop .btn_reserve.whbox dl .reservation p.time {
          font-size: 4.26vw; }

.search-shop .btn_reserve.whbox.temporary {
  /*  &::after {
      opacity: .4;
    }*/ }
  .search-shop .btn_reserve.whbox.temporary .text_box {
    color: rgba(51, 51, 51, 0.4); }
  .search-shop .btn_reserve.whbox.temporary .adress {
    color: rgba(102, 102, 102, 0.4); }
  .search-shop .btn_reserve.whbox.temporary .shop_link {
    opacity: .4; }
  .search-shop .btn_reserve.whbox.temporary .reservation {
    color: rgba(51, 51, 51, 0.4); }
    .search-shop .btn_reserve.whbox.temporary .reservation .line-red {
      color: rgba(51, 51, 51, 0.4); }
      .search-shop .btn_reserve.whbox.temporary .reservation .line-red span {
        border-bottom-color: rgba(223, 69, 37, 0.4); }

/*.search-shop .btn_reserve.whbox dl .shop_wrp .shop_link {color:rgba(6,110,179,0.4);}*/
.attention_link.rebook {
  background-image: none;
  padding: 1em 0;
  font-size: 3.2vw;
  font-weight: bold;
  line-height: 1;
  text-align: center;
  /*margin-bottom: 1em;*/
  margin: 1em auto; }
  .attention_link.rebook span:before {
    display: none; }
  .attention_link.rebook p {
    font-size: 3.2vw;
    font-weight: normal;
    text-align: left;
    margin: 0 auto;
    display: inline-block;
    line-height: 1.5;
    margin-top: .8em; }

.attention_link.rebook.spWidth {
  width: 95vw; }

.attention_link.rebook.nomgbSP {
  margin-bottom: 0; }

.search-shop #require_area {
  margin-top: 1.5em; }

.search-shop {
  display: flex;
  width: 100%;
  background: #f2f2f2; }
  .search-shop #require_form {
    position: static;
    height: auto; }
    .search-shop #require_form .list_wrap.bgGray {
      padding: 3vw 0 0;
      width: 100%;
      margin-bottom: 0; }
      .search-shop #require_form .list_wrap.bgGray h3 {
        position: relative;
        padding: 0 5vw 2.7vw; }
        .search-shop #require_form .list_wrap.bgGray h3 img {
          position: absolute;
          top: 31%;
          right: 5vw;
          width: 3.73vw;
          cursor: pointer; }
        .search-shop #require_form .list_wrap.bgGray h3.toggle_title.selected img {
          transform: rotateX(180deg); }
  .search-shop .button.single {
    display: -webkit-box;
    display: flex;
    width: 62.66vw;
    height: 3em;
    line-height: 1;
    padding: 0;
    margin: 0 auto; }
  .search-shop button.button.single {
    display: block; }

.search-shop .list_wrap .history_inner {
  background: #f2f2f2;
  padding: 1vw 0; }
.search-shop .list_wrap .map_area {
  background: #f2f2f2;
  position: relative;
  display: -webkit-box;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 94vw; }
  .search-shop .list_wrap .map_area svg {
    width: 65vw; }
  .search-shop .list_wrap .map_area a {
    position: absolute;
    font-size: 3.46vw;
    font-weight: bold;
    color: #fff;
    border-radius: 1.6vw;
    line-height: 1;
    padding: .8em;
    white-space: nowrap; }
    .search-shop .list_wrap .map_area a.HKD {
      background: #3566c9;
      top: 6vw;
      left: 36vw; }
    .search-shop .list_wrap .map_area a.TH {
      background: #00b0ec;
      top: 34.66vw;
      right: 4vw; }
    .search-shop .list_wrap .map_area a.HR-SE {
      background: #eabd41;
      top: 21vw;
      left: 22vw; }
    .search-shop .list_wrap .map_area a.KT {
      background: #18833e;
      top: 48vw;
      left: 68vw; }
    .search-shop .list_wrap .map_area a.KK {
      background: #ee730d;
      top: 33.5vw;
      left: 15vw; }
    .search-shop .list_wrap .map_area a.CB {
      background: #91bd30;
      top: 60.5vw;
      left: 57vw; }
    .search-shop .list_wrap .map_area a.CG {
      background: #ec81b0;
      top: 45vw;
      left: 2vw; }
    .search-shop .list_wrap .map_area a.SK {
      background: #b15da1;
      top: 68vw;
      left: 31vw; }
    .search-shop .list_wrap .map_area a.KS-ON {
      background: #7266a3;
      top: 80vw;
      left: 2.66vw; }

.search-shop #require_area ul.shop_list {
  padding: 0 3.46vw; }
  .search-shop #require_area ul.shop_list li {
    background: #fff;
    border-radius: 3.73vw;
    padding: 3vw 3vw 3vw 1vw;
    margin: 2vw 0;
    box-shadow: 0px 0px 6px 3px #e5e5e5;
    position: relative; }

#require_area .list_wrap .select.mgb_for_button {
  margin-bottom: 1.3em; }

.search-shop #require_area .list_wrap {
  padding: 3vw 5vw 6vw; }

#require_area .list_wrap p.add {
  margin-top: .5em; }

@media only screen and (max-width: 340px) {
  #require_area .list_wrap p.add.center {
    text-indent: -2em;
    padding-left: 1em; } }
@media screen and (min-width: 661px) and (max-width: 1000px) {
  #require_area .list_wrap p.add.center {
    text-indent: -2em;
    padding-left: 1em; }

  #require_area .list_wrap p.add br {
    display: block; } }
#require_area .list_wrap h3 {
  position: relative; }
  #require_area .list_wrap h3.mgb_for_button {
    margin-bottom: .6em; }

.search-shop #require_area {
  padding-bottom: 0; }

#new_wrp #main.with_aside, #new_category_wrp #main.with_aside.result {
  padding-bottom: 0; }

#new_category_wrp #main.with_aside {
  background: #fff;
  z-index: 10010; }

.search-shop #new_category_wrp #main.with_aside {
  z-index: 9999; }

.noresults {
  font-size: 3.46vw;
  text-align: center;
  color: #df4525;
  margin-top: .5em; }

.search-shop #require_form .list_wrap.bgGray.mgb {
  margin-bottom: 1.06vw; }

#require_header #require_close {
  position: static;
  order: 1;
  width: 4em;
  padding: .8em 1em .8em 0;
  text-align: right;
  font-size: 3.4vw;
  width: 4em;
  line-height: 1;
  height: auto; }
  #require_header #require_close img {
    width: 4vw;
    height: auto; }
#require_header #require_back {
  padding: .8em 0 .8em 1em; }
#require_header h2 {
  white-space: nowrap; }

#require_header.col3::after {
  content: none; }
#require_header.col3 #require_back {
  padding: .8em 0 .8em 1em; }

#require_header.col2::after {
  content: none; }
#require_header.col2::before {
  /*content: "";*/
  display: block;
  width: 4em; }

/* ----- notice modal ----- */
.modal_box.notice span {
  width: 12vw;
  height: auto; }
.modal_box.notice p {
  font-size: 3.46vw !important;
  font-weight: normal !important;
  margin: 2em 0 1.25em 0 !important;
  white-space: nowrap; }
.modal_box.notice a.close.agree {
  width: 100%;
  background-color: #96dc5f;
  font-size: 3.46vw; }

@media only screen and (max-width: 660px) {
  .modal_box i.close {
    cursor: pointer;
    position: absolute;
    right: 0px;
    top: -8vw;
    width: 5.86vw;
    height: 5.86vw; }

  .modal_box .close img {
    width: auto;
    height: auto; } }
/* ----- shop keyword ----- */
.keyword_header {
  width: 100%; }
  .keyword_header .buttons_wrp .switch_btn {
    width: 100%; }

p.pg_number_set {
  font-size: 2.67vw; }

.pg_number_set span {
  font-size: 3.73vw; }

/* ----- reserve matrix ----- */
.reserve_target {
  padding: 0; }

.reserve_target .range {
  display: flex;
  flex-wrap: wrap;
  width: 94vw; }

.reserve_target .range dt,
.reserve_target .range dd {
  font-size: 2.93vw;
  line-height: 1.4;
  color: #666666; }

.reserve_target .range dt {
  width: 5em; }
  .reserve_target .range dt::after {
    content: " : ";
    position: absolute;
    right: 0; }

.reserve_target .range dd {
  width: calc(100% - 5em);
  margin-bottom: 0;
  padding-left: .5em; }

.reserve_tbl_wrap .sticky {
  position: -webkit-sticky;
  position: sticky;
  z-index: 10010;
  top: 0;
  overflow-x: hidden;
  background: #fff; }

.reserve_matrix .require_frame .col2 {
  display: block; }
  .reserve_matrix .require_frame .col2 span {
    padding: 0; }
    .reserve_matrix .require_frame .col2 span.wave {
      font-weight: normal;
      margin: 0 .3em 0 .5em; }

.reserve_target {
  padding: 3vw 3vw 0 3vw;
  border-bottom: 1px solid #ddd; }
  .reserve_target .shop_wrp {
    margin: 0;
    background-image: none; }
    .reserve_target .shop_wrp .text_box {
      padding: 0; }

.reserve_target .shop_wrp a::before {
  /*position: relative;*/
  display: none; }

.reserve_matrix .require_frame dl {
  margin: 1em auto; }

.reserve_matrix main {
  border-top: 1px solid #ddd; }

.reserve_msg {
  font-size: 3.73vw;
  font-weight: bold;
  margin: 1em 0 .5em 3vw; }

.alldayfilled_msg {
  margin-top: 1em;
  color: #df4525;
  text-align: center; }

.reserve_tbl th,
.reserve_tbl td {
  padding: 0;
  vertical-align: top; }

.reserve_tbl tbody tr:first-child th,
.reserve_tbl tbody tr:first-child td {
  border-top: none;
  border-bottom: none; }

.thead_wrap {
  position: relative; }

.tbody_wrap {
  position: relative;
  overflow-x: hidden; }
  .tbody_wrap .reserve_tbl.time {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10001; }
    .tbody_wrap .reserve_tbl.time tbody th {
      border-left: 1px solid #ddd; }

.reserve_tbl {
  table-layout: fixed;
  border-collapse: separate;
  border-bottom: none;
  width: auto;
  margin-bottom: 0; }
  .reserve_tbl.thead {
    width: 184vw;
    width: max-content;
    padding-left: 16vw; }
    .reserve_tbl.thead thead tr:first-child th {
      width: auto;
      height: 2em;
      border-bottom: none;
      font-size: 3.46vw;
      font-weight: normal;
      text-align: center;
      /*padding-left: 1em;*/ }
  .reserve_tbl.tbody {
    width: 100%;
    width: max-content;
    padding-left: 16vw; }
  .reserve_tbl thead th {
    width: 12vw;
    height: 13.33vw;
    text-align: center;
    vertical-align: middle;
    background: #fff;
    border-right: 1px solid #ddd;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    top: 0;
    line-height: 1; }
    .reserve_tbl thead th span {
      display: block;
      font-size: 2.93vw;
      font-weight: normal;
      margin-top: .4em; }
  .reserve_tbl tbody th {
    left: 0;
    width: 16vw;
    height: 12vw;
    font-weight: normal;
    font-size: 3.2vw;
    text-align: right;
    background: #fcfcfc; }
  .reserve_tbl tbody th ul li:nth-of-type(odd),
  .reserve_tbl tbody td ul li:nth-of-type(odd) {
    border-bottom: 1px solid #eaeaea; }
  .reserve_tbl tbody th ul li:nth-of-type(even),
  .reserve_tbl tbody td ul li:nth-of-type(even) {
    border-bottom: 1px solid #ddd; }
  .reserve_tbl tbody th ul li:last-child,
  .reserve_tbl tbody td ul li:last-child {
    border-bottom: 1px solid #ddd; }
  .reserve_tbl tbody th ul li {
    padding-right: .5em;
    border-right: 1px solid #ddd; }
    .reserve_tbl tbody th ul li:nth-of-type(even) {
      font-size: 2.93vw; }
  .reserve_tbl tbody ul li {
    width: 16vw;
    height: 12vw;
    line-height: 12vw;
    vertical-align: middle;
    border-right: 1px solid #ddd; }
  .reserve_tbl tbody td {
    width: 12vw;
    text-align: center;
    background: #efefef;
    /*background-color: #ECECEC;
    background-image: -webkit-gradient(linear, 0 0, 100% 100%,color-stop(.25, #F9F9F9), color-stop(.25, transparent),color-stop(.5, transparent), color-stop(.5, #F9F9F9),color-stop(.75, #F9F9F9), color-stop(.75, transparent),to(transparent));
    -webkit-background-size: 7px 7px;*/ }
    .reserve_tbl tbody td li {
      width: 100%; }
      .reserve_tbl tbody td li.vacant {
        background: #f6f6f6;
        cursor: pointer; }
        .reserve_tbl tbody td li.vacant.selected {
          background: #fff; }
        .reserve_tbl tbody td li.vacant a {
          display: block;
          width: 100%;
          height: 100%;
          font-size: 4vw; }
          .reserve_tbl tbody td li.vacant a::before {
            content: " ";
            display: inline-flex;
            width: 1em;
            height: 1em;
            border: solid 1px #df4525;
            border-radius: 50%;
            line-height: 1;
            opacity: 0.5; }
          .reserve_tbl tbody td li.vacant a:active {
            background-color: rgba(223, 69, 37, 0.1); }
          .reserve_tbl tbody td li.vacant a:hover {
            background-color: rgba(223, 69, 37, 0.1); }
            .reserve_tbl tbody td li.vacant a:hover::before {
              opacity: 1;
              border: solid 2px #df4525; }
      .reserve_tbl tbody td li.close {
        cursor: unset; }
      .reserve_tbl tbody td li.close::before {
        content: "－";
        font-size: 1em;
        color: #999999;
        line-height: 1; }
      .reserve_tbl tbody td li.filled {
        background: #f6f6f6; }
        .reserve_tbl tbody td li.filled.selected {
          background: #fff; }
      .reserve_tbl tbody td li.filled::before {
        content: "×";
        font-size: 5.33vw;
        color: #999999;
        line-height: 1;
        opacity: .5; }

.sat {
  color: #0091d9 !important; }

.sun {
  color: #ea3434 !important; }

.holi {
  color: #ea3434 !important; }

.reserve_tbl.oblique tbody td {
  background-color: #ECECEC;
  background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(0.25, #F9F9F9), color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, #F9F9F9), color-stop(0.75, #F9F9F9), color-stop(0.75, transparent), to(transparent));
  -webkit-background-size: 7px 7px; }

.corner {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: calc(16vw + 1px);
  height: 100%;
  background: #fff;
  font-size: 3.46vw;
  text-align: center;
  border: 1px solid #ddd;
  border-left: 1px solid #ddd;
  z-index: 1002; }
  .corner span {
    display: block; }
    .corner span .week {
      font-weight: normal; }

.navbtn_wrap.show {
  display: flex; }

.navbtn_wrap {
  display: none;
  justify-content: space-between;
  align-items: center;
  width: auto;
  height: auto;
  background: #fff;
  z-index: 803;
  padding: .5em 0; }
  .navbtn_wrap p {
    display: block;
    font-size: 3.46vw;
    font-weight: bold;
    text-align: center; }
  .navbtn_wrap button {
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: .2em;
    background: #f2f2f2;
    width: 2em;
    height: 2em;
    display: flex;
    justify-content: center;
    align-items: center; }
    .navbtn_wrap button img {
      width: auto;
      height: .8em; }
    .navbtn_wrap button.prev img {
      transform: scale(-1, 1); }
    .navbtn_wrap button.disabled {
      opacity: .3;
      cursor: unset; }

/* selected multi */
_::-webkit-full-page-media, _:future, :root .reserve_matrix {
  width: 100vw; }

.navbtn_wrap p.alldayfilled {
  opacity: .3; }
.navbtn_wrap .sidebtn_wrap {
  display: flex; }
  .navbtn_wrap .sidebtn_wrap button {
    border: 1px solid #ddd;
    border-radius: 3px;
    padding: .2em;
    background: #f2f2f2;
    width: 2em;
    height: 2em;
    display: block;
    text-align: center;
    /*   display:-webkit-flex;
       display: flex;
       justify-content: center;
       align-items: center;*/ }
    .navbtn_wrap .sidebtn_wrap button#first_shop {
      display: none;
      margin-right: .4em; }
    .navbtn_wrap .sidebtn_wrap button#last_shop {
      display: none;
      margin-left: .4em; }
    .navbtn_wrap .sidebtn_wrap button img {
      width: auto;
      height: .8em; }
    .navbtn_wrap .sidebtn_wrap button.prev img {
      transform: scale(-1, 1); }
    .navbtn_wrap .sidebtn_wrap button.disabled {
      opacity: .3;
      cursor: unset; }

.selected_shop .reserve_tbl.thead.day_select {
  width: max-content;
  display: flex;
  padding-left: 0;
  padding-bottom: 0; }
  .selected_shop .reserve_tbl.thead.day_select th {
    width: 14.27vw;
    font-size: 3.46vw;
    font-weight: bold;
    /*      &.notselected:nth-child(n+8) {
            display: none;
          }
          &.notselected:nth-child(-n+7) a {
            pointer-events: none;
            opacity:.2;
          }
        &.month.notselected {
          display: none;
        } */ }
    .selected_shop .reserve_tbl.thead.day_select th.current {
      position: relative; }
      .selected_shop .reserve_tbl.thead.day_select th.current:after {
        background-color: #df4525;
        content: '';
        display: block;
        height: 5px;
        position: absolute;
        left: 0;
        bottom: -2px;
        /*width: 14.27vw;*/
        width: 100%; }
    .selected_shop .reserve_tbl.thead.day_select th a {
      display: block;
      width: 100%;
      height: auto;
      padding: .9em 0;
      color: inherit; }
      .selected_shop .reserve_tbl.thead.day_select th a:hover {
        background-color: rgba(223, 69, 37, 0.1); }
    .selected_shop .reserve_tbl.thead.day_select th .week {
      font-weight: normal;
      margin-top: .5em; }
  .selected_shop .reserve_tbl.thead.day_select th:first-child {
    border-left: 1px solid #ddd; }
  .selected_shop .reserve_tbl.thead.day_select tr:first-child th.month span {
    font-size: 3.46vw;
    margin-top: 0; }

.selected_shop .reserve_tbl.thead thead tr th {
  border-bottom: none;
  font-weight: normal; }

/*.selected_shop .reserve_tbl.thead.day_select.simple {

  tr:first-child th.month {
    border: 2px solid #fff;
    border-top: 0;
    border-bottom: 0;
    background: rgba(221, 221, 221, .2);
  }

  tr:last-child th {
    border: 0;
    height: auto;
  }

}*/
.day_select_wrap {
  width: auto;
  padding: .8em 0 .5em;
  overflow: auto;
  -webkit-overflow-scrolling: auto;
  overscroll-behavior-x: none; }
  .day_select_wrap .day_select {
    display: inline-flex;
    justify-content: flex-start;
    position: relative;
    border-bottom: 1px solid #ddd;
    padding-bottom: .5em; }
    .day_select_wrap .day_select a {
      position: relative;
      width: 14.27vw;
      text-align: center;
      padding: .5em 0;
      font-size: 3.46vw;
      font-weight: bold;
      /*border-radius: 3px;*/
      cursor: pointer; }
      .day_select_wrap .day_select a.notselected:nth-child(n+8) {
        display: none; }
      .day_select_wrap .day_select a.notselected:nth-child(-n+7) {
        pointer-events: none;
        opacity: .2; }
      .day_select_wrap .day_select a:nth-child(1).current ~ .day_underline {
        left: 0vw; }
      .day_select_wrap .day_select a:nth-child(2).current ~ .day_underline {
        left: 14.27vw; }
      .day_select_wrap .day_select a:nth-child(3).current ~ .day_underline {
        left: 28.54vw; }
      .day_select_wrap .day_select a:nth-child(4).current ~ .day_underline {
        left: 42.81vw; }
      .day_select_wrap .day_select a:nth-child(5).current ~ .day_underline {
        left: 57.08vw; }
      .day_select_wrap .day_select a:nth-child(6).current ~ .day_underline {
        left: 71.35vw; }
      .day_select_wrap .day_select a:nth-child(7).current ~ .day_underline {
        left: 85.62vw; }
      .day_select_wrap .day_select a:nth-child(8).current ~ .day_underline {
        left: 99.89vw; }
      .day_select_wrap .day_select a:nth-child(9).current ~ .day_underline {
        left: 114.16vw; }
      .day_select_wrap .day_select a:nth-child(10).current ~ .day_underline {
        left: 128.43vw; }
      .day_select_wrap .day_select a:nth-child(11).current ~ .day_underline {
        left: 142.7vw; }
      .day_select_wrap .day_select a:nth-child(12).current ~ .day_underline {
        left: 156.97vw; }
      .day_select_wrap .day_select a:nth-child(13).current ~ .day_underline {
        left: 171.24vw; }
      .day_select_wrap .day_select a:nth-child(14).current ~ .day_underline {
        left: 185.51vw; }
      .day_select_wrap .day_select a:nth-child(1):hover ~ .day_underline {
        left: 0vw; }
      .day_select_wrap .day_select a:nth-child(2):hover ~ .day_underline {
        left: 14.27vw; }
      .day_select_wrap .day_select a:nth-child(3):hover ~ .day_underline {
        left: 28.54vw; }
      .day_select_wrap .day_select a:nth-child(4):hover ~ .day_underline {
        left: 42.81vw; }
      .day_select_wrap .day_select a:nth-child(5):hover ~ .day_underline {
        left: 57.08vw; }
      .day_select_wrap .day_select a:nth-child(6):hover ~ .day_underline {
        left: 71.35vw; }
      .day_select_wrap .day_select a:nth-child(7):hover ~ .day_underline {
        left: 85.62vw; }
      .day_select_wrap .day_select a:nth-child(8):hover ~ .day_underline {
        left: 99.89vw; }
      .day_select_wrap .day_select a:nth-child(9):hover ~ .day_underline {
        left: 114.16vw; }
      .day_select_wrap .day_select a:nth-child(10):hover ~ .day_underline {
        left: 128.43vw; }
      .day_select_wrap .day_select a:nth-child(11):hover ~ .day_underline {
        left: 142.7vw; }
      .day_select_wrap .day_select a:nth-child(12):hover ~ .day_underline {
        left: 156.97vw; }
      .day_select_wrap .day_select a:nth-child(13):hover ~ .day_underline {
        left: 171.24vw; }
      .day_select_wrap .day_select a:nth-child(14):hover ~ .day_underline {
        left: 185.51vw; }
      .day_select_wrap .day_select a:active {
        background-color: rgba(223, 69, 37, 0.1); }
      .day_select_wrap .day_select a span {
        display: block;
        font-size: 2.93vw;
        font-weight: normal; }

.day_underline {
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 14.27vw;
  height: 5px;
  background: #df4525;
  transition: all .3s ease-in-out; }

.selected_shop {
  position: relative; }
  .selected_shop .sticky .reserve_tbl.thead {
    width: 100%;
    /*height: vw(95);*/ }
    .selected_shop .sticky .reserve_tbl.thead thead th {
      width: calc((100vw - 16vw) / 3);
      padding: 2em .5em 1em;
      position: relative;
      text-align: left; }
      .selected_shop .sticky .reserve_tbl.thead thead th.disabled {
        background: #fcfcfc; }
        .selected_shop .sticky .reserve_tbl.thead thead th.disabled .shop_wrap {
          opacity: .5; }
      .selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap {
        overflow: hidden;
        text-overflow: ellipsis;
        -webkit-text-overflow: ellipsis;
        height: 100%; }
        .selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap span {
          width: 100%;
          font-size: 3.2vw;
          line-height: 1.3; }
          .selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap span.vendor {
            /*height: 1.3em;*/ }
          .selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap span.shop {
            /*height: 3.9em;*/ }
      .selected_shop .sticky .reserve_tbl.thead thead th .btn_close {
        position: absolute;
        top: .3em;
        right: .3em;
        width: auto;
        cursor: pointer;
        margin: 0;
        font-size: medium; }
    .selected_shop .sticky .reserve_tbl.thead thead tr th {
      border-bottom: 1px solid #ddd; }
  .selected_shop .reserve_tbl.tbody {
    width: 100%; }
    .selected_shop .reserve_tbl.tbody td {
      width: calc((100vw - 16vw) / 3); }

/* ----- reserve completed ----- */
@media only screen and (max-width: 660px) {
  .whbox.spStyle {
    width: 100%;
    padding: 1.5rem 5vw 1rem 5vw;
    border: none;
    border-radius: 0;
    box-shadow: none; } }
.circle_green {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #96dc5f;
  border-radius: 50%;
  width: 15.2vw;
  height: 15.2vw;
  box-sizing: content-box;
  margin: 0 auto 1.2rem; }

@media only screen and (max-width: 660px) {
  .whbox.checkin-num_box {
    width: 78vw;
    margin: 2rem auto 1.5rem;
    padding: 1.5rem; }
    .whbox.checkin-num_box p {
      font-size: 2.93vw; } }
.checkin-num dt {
  color: #999999;
  font-size: 3.2vw;
  letter-spacing: .1em;
  margin-bottom: 1em; }
.checkin-num dd {
  font-weight: bold;
  font-size: 8vw;
  margin-bottom: .5em; }

.underline-red {
  display: inline-block;
  border-bottom: 1px #df4525 solid; }

.underline-red.px2 {
  border-bottom-width: 2px; }

a.underline-red.red {
  color: #df4525; }

.attention_link {
  border: 0;
  margin-top: 1em;
  padding: 1em .5em 1em 15%; }
  .attention_link.confirm_profile {
    margin: 0 0 1.5em; }
  .attention_link a {
    display: block;
    font-size: 3.73vw;
    margin-right: 1em; }
    .attention_link a .txtXS {
      font-size: 3.2vw; }

.colorGrayL {
  color: #999999; }

.reserve_detail {
  margin: 1.5rem auto; }
  .reserve_detail dt {
    color: #999999;
    font-size: 3.2vw;
    margin-bottom: .35em; }
    .reserve_detail dt a.shop_link {
      margin-left: 2em;
      color: #3273dc; }
  .reserve_detail dd {
    font-size: 3.73vw;
    margin-bottom: 1.5em; }
    .reserve_detail dd .year {
      font-size: 2.93vw; }
    .reserve_detail dd.message {
      font-size: 3.46vw;
      background-color: transparent; }

.accoBox .reserve_detail dd {
  font-size: 3.73vw; }

.reserve_detail .shop_wrp {
  background-image: none;
  margin-left: 0;
  margin-top: .3em; }
  .reserve_detail .shop_wrp .text_box {
    padding: 0; }

.search-shop main p.ast {
  font-size: 2.93vw; }

dl.id-check dt {
  color: #df4525;
  font-size: 3.73vw;
  font-weight: bold;
  text-align: center;
  margin-bottom: .8em; }
dl.id-check dd {
  font-size: 3.46vw; }

.astbox {
  position: relative;
  padding: .8em 5% 2.3em;
  margin: 1.5rem auto .5rem; }

.arrow_img.XSsize img {
  width: auto;
  height: 1em;
  vertical-align: middle; }

a.kaitori_caution {
  position: absolute;
  display: flex;
  align-items: center;
  right: 5%;
  bottom: .8em;
  font-size: 3.2vw;
  color: #3273dc;
  white-space: nowrap; }

.modal_box.shop_map {
  padding: 30px;
  width: 90vw;
  min-width: inherit;
  display: block;
  text-align: center; }

.shop_map_wrap {
  height: 0;
  overflow: hidden;
  padding-bottom: 100%;
  position: relative;
  margin-bottom: 20px; }
  .shop_map_wrap .shop_map {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%; }

.modal_box.shop_map a.root {
  width: 100%;
  background-color: #96dc5f;
  font-size: 3.46vw;
  border-radius: 5px;
  display: inline-block;
  color: #333;
  padding: 1em 3em;
  font-weight: bold; }

/* 2021.11.10 */
.wallet_alert_area p {
  display: inline-block;
  font-size: 3.47vw;
  text-align: left;
  line-height: 1.5; }
.wallet_alert_area strong {
  font-size: 3.4vw;
  white-space: nowrap; }
.wallet_alert_area .box_style_border_red {
  background-color: #fff;
  border-color: #de4525;
  border-style: solid;
  border-width: 1px;
  line-height: 1.7;
  width: 100%;
  text-align: center;
  margin-top: 1rem;
  padding: 1em 1em .8em; }
  @media only screen and (max-width: 340px) {
    .wallet_alert_area .box_style_border_red {
      padding: .6em .6em .4em; } }
  .wallet_alert_area .box_style_border_red h3.h_style_border_l {
    position: relative;
    padding-left: .75em;
    font-weight: bold;
    font-size: 3.73vw;
    text-align: left; }
  .wallet_alert_area .box_style_border_red h3.h_style_border_l::before {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
    width: 5px;
    height: 1.33em;
    content: '';
    background: #df4525; }
  .wallet_alert_area .box_style_border_red h3.h_style_border_l + p {
    font-size: 3.46vw;
    margin-top: .8em; }
  @media only screen and (max-width: 660px) {
    .wallet_alert_area .box_style_border_red h3.h_style_border_l + p.fz12 {
      font-size: 3.2vw; } }
  @media screen and (min-width: 661px) and (max-width: 768px) {
    .wallet_alert_area .box_style_border_red h3.h_style_border_l + p.fz12 {
      font-size: 0.875rem; } }
  @media screen and (min-width: 769px) and (max-width: 1200px) {
    .wallet_alert_area .box_style_border_red h3.h_style_border_l + p.fz12 {
      font-size: 0.875rem; } }
  .wallet_alert_area .box_style_border_red .attention_link {
    border-radius: 5px;
    text-align: left;
    padding: 1.3em .5em 1.3em 15%;
    margin: .2em 0 .8em; }
    .wallet_alert_area .box_style_border_red .attention_link a {
      font-size: 3.47vw;
      white-space: nowrap; }
  .wallet_alert_area .box_style_border_red .button {
    height: 3.75em;
    margin: 1em 0 .8em; }
  .wallet_alert_area .box_style_border_red h4 {
    font-size: 3.2vw;
    font-weight: bold;
    text-align: left;
    margin-top: 1em; }
  .wallet_alert_area .box_style_border_red h4 + p {
    font-size: 2.93vw; }

/* ----- reserve confirm ----- */
.circle_green.confirm img {
  width: 5.33vw; }

.accoBox_title_wrp {
  display: flex;
  justify-content: space-between;
  align-items: center;
  white-space: nowrap; }
  .accoBox_title_wrp h3 {
    font-size: 3.73vw;
    font-weight: bold;
    display: flex;
    align-items: center; }
    .accoBox_title_wrp h3 span {
      display: inline-flex;
      justify-content: center;
      align-items: center;
      font-weight: normal;
      font-size: 3.2vw;
      color: #fff;
      background: #df4525;
      line-height: 1;
      height: 1.5em;
      width: 3em;
      border-radius: 0.8vw; }
  .accoBox_title_wrp a.wallet-receipt {
    display: flex;
    align-items: center;
    font-size: 3.2vw;
    color: #066eb3; }
    .accoBox_title_wrp a.wallet-receipt img {
      margin-left: .3em; }

.accoBox_title_wrp + p {
  font-size: 3.2vw;
  line-height: 1.5;
  margin-top: .3em; }

.accoBox_wrp {
  display: block; }

.accoBox_wrp {
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap; }

.accoBox {
  width: 100%;
  border: 1px solid #ccc;
  border-radius: 5px;
  margin: .5em auto .2em; }
  .accoBox dt {
    position: relative;
    display: flex;
    align-items: center;
    font-size: 3.46vw; }
    .accoBox dt label span {
      margin-left: .2em;
      line-height: 2; }
    .accoBox dt.title_toggle {
      cursor: pointer; }
    .accoBox dt span.btn_toggle {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      right: 0;
      padding: 1em 1em 1em 2em;
      cursor: pointer; }
      .accoBox dt span.btn_toggle img {
        width: 3.73vw; }
  .accoBox dd {
    font-size: 3.2vw; }
  .accoBox .btn_toggle.selected img {
    transform: rotateX(180deg); }
  .accoBox .inner {
    border-top: 1px solid #eaeaea;
    padding: .8em 1em; }

.accoBox .inner.hidecontent {
  display: none; }

.accoBox dt p {
  width: 100%;
  text-align: center;
  font-weight: bold;
  line-height: 1;
  padding: 1em 0;
  cursor: pointer;
  font-size: 3.73vw; }

.accoBox .reserve_detail {
  margin: 0; }

.accoBox .reserve_detail dt {
  padding: 0; }

.accoBox .reserve_detail dd:last-of-type {
  margin: 0; }

.reserve_detail.temporary {
  opacity: .4; }

.whbox.spStyle.pcStyle hr {
  color: #ddd; }

.btn_box {
  display: block;
  width: 90vw;
  margin: 0 auto 1.5rem; }

.btn {
  width: 100%;
  margin: 0;
  font-size: 3.73vw;
  font-weight: bold !important; }
  .btn.attention {
    display: flex;
    align-items: center;
    background-size: .65em; }
  .btn.green {
    background-color: #96dc5f; }
  .btn.white {
    background-color: #fff;
    border: 2px solid #dbdbdb;
    background-size: 1em;
    background-position: left 4.5% center;
    background-repeat: no-repeat; }
    .btn.white.back {
      background-image: url(/images/icons/btn_back.svg); }
    .btn.white.cancel {
      color: #666666;
      background-image: url(/themes/images/raiten/shop/ic_cancel.svg); }
  .btn.upper {
    margin-bottom: .8em; }

.btn.green.disabled {
  background-color: #96dc5f !important;
  border: none;
  opacity: .5; }

/* ----- mypage reception ----- */
#container {
  padding: 5.33vw 0; }

#mypage-cont {
  /*margin: 0;*/
  padding-top: 3vw;
  padding-bottom: 0; }
  #mypage-cont #container {
    width: 100vw;
    height: auto;
    background: #f2f2f2; }
    #mypage-cont #container .contents h3 {
      font-size: 3.73vw;
      font-weight: bold;
      width: 90vw;
      margin: 0 auto; }
    #mypage-cont #container .contents .whbox.spStyle {
      border-radius: 5px;
      box-shadow: 0px 0px 6px 3px #e5e5e5;
      margin: 2.66vw auto 6.66vw;
      padding: 1.5rem 5vw 1.5rem 5vw; }
      #mypage-cont #container .contents .whbox.spStyle .checkin-num_box {
        box-shadow: none;
        margin: 0 auto .8rem;
        padding: 1.5rem 0 .75rem; }
      #mypage-cont #container .contents .whbox.spStyle dd.shop-info {
        position: relative; }
      #mypage-cont #container .contents .whbox.spStyle p.caution {
        color: #d00;
        width: fit-content;
        margin: 0 auto 1em;
        line-height: 1.5; }
      #mypage-cont #container .contents .whbox.spStyle .btn.white.cancel {
        display: flex;
        width: 69.33vw;
        height: 3em;
        font-size: 3.2vw;
        color: #666666;
        margin: 1em auto 0;
        padding: 0 0 0 1em; }
      #mypage-cont #container .contents .whbox.spStyle .btn.green {
        display: flex;
        font-size: 3.73vw;
        width: 69.33vw;
        margin: 0 auto; }

.reserve_detail .link_box {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding: 0;
  /*margin-top: .5em;*/ }
  .reserve_detail .link_box a.place {
    color: #066eb3;
    font-size: 3.46vw;
    display: inline-flex;
    white-space: nowrap; }
    .reserve_detail .link_box a.place img {
      padding-right: .4em; }
  .reserve_detail .link_box a.shop_link {
    position: static;
    transform: none;
    color: #066eb3;
    margin-left: 4em;
    font-size: 3.46vw; }

.reserve_detail_wrp {
  position: relative; }
  .reserve_detail_wrp .label {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -.1em;
    left: 4em;
    padding: 0 .5em;
    line-height: 1;
    min-width: 6em;
    height: 1.6em;
    border-radius: 0.8vw;
    font-size: 2.93vw;
    font-weight: normal;
    white-space: nowrap; }
    .reserve_detail_wrp .label.reserved {
      background: #df4525;
      color: #fff; }
    .reserve_detail_wrp .label.visited {
      border: 1px solid #066eb3;
      color: #066eb3; }
    .reserve_detail_wrp .label.canceled {
      border: 1px solid #b2b2b2;
      color: #b2b2b2; }

ul.previous_list .reserve_detail {
  margin: 0 auto 1.5rem; }

/* login */
.modal_box.login {
  display: block;
  text-align: center; }
  .modal_box.login .ic_shop {
    display: block;
    margin: 0 auto;
    width: 15vw;
    margin-bottom: 10px; }
  .modal_box.login .btn_box {
    width: 100%;
    background: #f2f2f2;
    padding: 1.2em 1em 1.5em;
    margin: 1em 0; }
    .modal_box.login .btn_box p {
      font-size: 3.46vw; }
    .modal_box.login .btn_box a {
      display: flex;
      justify-content: center;
      align-items: center;
      width: 100%;
      background: #fff;
      line-height: 1;
      height: 3.5em;
      border-radius: 1.33vw;
      margin-top: .4em; }
      .modal_box.login .btn_box a p {
        font-size: 3.73vw;
        font-weight: bold; }
      .modal_box.login .btn_box a img {
        width: auto;
        height: 4.8vw;
        margin-right: .6em; }

/* #myModal */
.modal-content p {
  line-height: 1.6;
  margin-bottom: .8em; }

/* //////////////////// 661px以上 //////////////////// */
@media only screen and (min-width: 661px) {
  #new_category_wrp {
    max-width: 1000px;
    width: 100%; }

  /*@include mq-up(pcS_pc) {
  #new_category_wrp {
    width: 1000px;
  }*/
  .wrp_brd {
    max-width: 100%; }

  .title.is-5.line-red {
    width: 100%; }

  .close:hover, .close:focus {
    color: #333; }

  .paging_settings.nopaging {
    padding: 0 !important; }

  .noresults {
    font-size: 1rem; }

  .require_frame {
    width: 100%;
    border: 1px solid #ccc;
    border-radius: 6px;
    overflow: hidden;
    font-size: 0.875rem;
    margin-bottom: 3em; }
    .require_frame .col3 {
      display: flex;
      padding: 1.5em 0; }
      .require_frame .col3 h4 {
        display: flex;
        justify-content: center;
        align-items: center;
        /*width: 18%;*/
        width: 20%;
        color: #333;
        font-size: 0.9375rem; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        .require_frame .col3 h4 {
          width: 24%; } }
@media only screen and (min-width: 661px) {
      .require_frame .col3 dl {
        /*width: 65%;*/
        width: 60%;
        border-right-style: solid;
        border-right-color: #ddd;
        border-right-width: 1px;
        border-left-style: solid;
        border-left-color: #ddd;
        border-left-width: 1px;
        padding: 1em 3em;
        margin: 0; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        .require_frame .col3 dl {
          width: 52%;
          padding: 1em 2em; } }
@media only screen and (min-width: 661px) {
        .require_frame .col3 dl dt {
          font-size: 0.9375rem;
          /*&:last-of-type{margin: 0;}*/ }
        .require_frame .col3 dl dd {
          /*width: calc(100% - 7.5em);*/
          font-size: 0.875rem;
          margin: 0 0 1em 0; }
          .require_frame .col3 dl dd:last-of-type {
            margin: 0; }
          .require_frame .col3 dl dd span {
            font-size: 1rem; }
      .require_frame .col3 span.right.pcOnly {
        display: flex;
        justify-content: center;
        align-items: center;
        /*width: 17%;*/
        width: 20%;
        font-size: 0.875rem;
        padding-left: .5em; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        .require_frame .col3 span.right.pcOnly {
          width: 24%; } }
@media only screen and (min-width: 661px) {
    .require_frame .release_box_wrp {
      background-color: #f2f2f2;
      padding: .3em 0 .3em; }

  a.arw-link img.ic_arw {
    width: auto;
    height: 1em;
    padding: 0 .5em; }

  .require_frame .col3 dl dd span:nth-child(3) {
    padding-left: .2em;
    /*Safari対策 */ }

  .paging_settings.nopaging {
    background-color: transparent;
    border: none; }

  #search_result_area {
    margin-bottom: 0; }

  .paging_settings.nopaging .pg_number_set {
    left: auto;
    right: 0;
    bottom: -5.5em; }

  #new_category_wrp #main.with_aside {
    max-width: 1000px;
    width: 100%;
    min-height: 400px; }

  .title_content {
    font-size: 1.25rem;
    margin-bottom: .5em;
    background-color: #fff;
    padding: .2em 0;
    z-index: 999;
    width: 100%;
    max-width: 100%; }
    .title_content.sticky {
      position: static;
      /* IE対策 */
      position: -webkit-sticky;
      position: sticky;
      top: 79px; }
    .title_content.stickyie {
      position: fixed;
      top: 79px; }

  ul.shop_list {
    padding: 0; }

  ul.shop_list li {
    flex-wrap: wrap;
    align-self: stretch; }

  #slide_box {
    min-width: 1160px;
    padding-left: max(3vw, 30px);
    padding-right: max(3vw, 30px);
    padding-bottom: 20px;
    border-radius: 6px 6px 0 0;
    box-shadow: 0px 0px 9px 4px rgba(0, 0, 0, 0.1);
    max-height: 80vh; } }
  @media only screen and (min-width: 661px) and (max-width: 1200px) {
    #slide_box {
      min-width: 100vw;
      width: 100vw; } }
  @media only screen and (min-width: 661px) and (max-width: 1023px) {
    #slide_box {
      min-width: 100vw;
      width: 100vw; } }

@media only screen and (min-width: 661px) {
  #slide_box.checked_shop dt {
    font-size: 1.125rem;
    white-space: nowrap;
    margin-bottom: 20px; }
    #slide_box.checked_shop dt span {
      font-size: 0.875rem;
      line-height: 1; }

  #slide_box .btn_slide {
    top: 1.5rem;
    right: 30px; }

  /*@media only screen and (max-width: 1160px) {
    #slide_box .btn_slide {display: none;}
  }*/
  #slide_box .btn_slide img {
    width: 25px;
    height: auto; }

  #slide_box.checked_shop dl {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto; }

  #slide_box.checked_shop .checked_shop_list_wrp {
    overflow: visible; }

  #slide_box.checked_shop ul.checked_shop_list li {
    width: 200px;
    margin-right: 35px;
    padding: .6em .8em; }
    #slide_box.checked_shop ul.checked_shop_list li .btn_close {
      width: 25px;
      height: 25px;
      top: -12.5px;
      right: -12.5px; }
    #slide_box.checked_shop ul.checked_shop_list li span.vendor {
      font-size: 0.75rem; }
    #slide_box.checked_shop ul.checked_shop_list li span.shop {
      font-size: 0.875rem; }
    #slide_box.checked_shop ul.checked_shop_list li span.adress {
      font-size: 0.6875rem; }

  #slide_box.checked_shop .buttonlist {
    position: absolute;
    top: 0;
    right: calc((100% - 1000px)/2);
    width: 360px;
    margin: 20px auto 0; } }
  @media only screen and (min-width: 661px) and (max-width: 1200px) {
    #slide_box.checked_shop .buttonlist {
      position: relative;
      top: auto;
      right: auto; } }
  @media only screen and (min-width: 661px) and (max-width: 1023px) {
    #slide_box.checked_shop .buttonlist {
      position: relative;
      top: auto;
      right: auto; } }

@media only screen and (min-width: 661px) {
  #slide_box.checked_shop .buttonlist span.left {
    width: 45%;
    margin-right: 5%; }

  #slide_box.checked_shop .buttonlist span {
    width: 50%; }

  #slide_box.checked_shop .buttonlist span .button {
    font-size: 0.8125rem; }

  #slide_box.checked_shop .buttonlist span .button.disabled {
    background-color: #f2f2f2;
    opacity: .5;
    cursor: default;
    pointer-events: none; }

  /*下から上*/
  /*@keyframes SlideUp {
    0% {opacity: 1;transform: translateY(100%) translateY(-75px);}
    100% {opacity: 1;transform: translateY(0%);}
  }*/
  /*上から下*/
  /*@keyframes SlideDown {
    0% {opacity: 1;transform: translateY(0%);}
   100% {opacity: 1;transform: translateY(100%) translateY(-75px);}  
  }
  #slide_box.SlideUp {animation: SlideUp .2s ease-in forwards;}
  #slide_box.SlideDown {animation: SlideDown .2s ease-in forwards;}
  #slide_box.checked_shop .buttonlist span .button {text-align: center;}*/
  .area-box_wrp {
    overflow-x: hidden; }

  #require_box.modal_box {
    background-color: #fff;
    width: 90vw;
    max-width: 1000px;
    height: auto;
    border-radius: 6px;
    margin: 0 auto 100px;
    position: relative;
    min-width: inherit;
    padding: 0; } }
  @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
    #require_box.modal_box {
      max-width: 600px; } }
@media only screen and (min-width: 661px) {
    #require_box.modal_box i.close {
      cursor: pointer;
      position: absolute;
      right: 0px;
      top: -30px; }
      #require_box.modal_box i.close img {
        width: 22px;
        height: 22px; }
    #require_box.modal_box #require_form {
      background-color: transparent;
      padding: 0;
      position: relative;
      width: 90vw;
      max-width: 1000px;
      /*    #require_area.col3 {
            display: flex;
            justify-content: space-between;
            padding: 15px 25px;
      
            .list_wrap {
              border-right-width: 1px;
              border-right-style: solid;
              border-right-color: $bgGray;
              margin-bottom: 0;
      
              &:nth-child(1) {
                width: 30%;
                padding: 17px 15px 0 5px;
              }
      
              &:nth-child(2) {
                width: 37%;
                padding: 17px 15px;
              }
      
              &:nth-child(3) {
                width: 33%;
                padding: 17px 0 0 15px;
                border: none;
              }
            }
          }*/ } }
    @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
      #require_box.modal_box #require_form {
        max-width: 600px; } }
@media only screen and (min-width: 661px) {
      #require_box.modal_box #require_form #require_header {
        border-bottom: 1px solid #f2f2f2;
        position: relative;
        height: 4em;
        padding-bottom: 0; }
        #require_box.modal_box #require_form #require_header h2 {
          font-size: 1rem;
          text-align: center;
          position: absolute;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%); }
      #require_box.modal_box #require_form #require_back {
        background-image: url(/themes/images/web/arrowhead_l_red.svg);
        background-position: 25px center;
        background-repeat: no-repeat;
        background-size: 0.5em auto;
        box-sizing: border-box;
        color: #333;
        order: -1;
        font-size: .9375rem;
        font-style: normal;
        padding-left: 2.7em;
        position: absolute;
        top: 50%;
        transform: translateY(-50%); }
      #require_box.modal_box #require_form #area-modal #require_box.modal_box #require_form .area-box_wrp {
        display: flex; }
      #require_box.modal_box #require_form #require_area .list_wrap {
        padding: 15px 25px 0 25px;
        max-height: 350px;
        overflow-y: auto; }
        #require_box.modal_box #require_form #require_area .list_wrap .area-box {
          /*width: 950px;*/ }
          #require_box.modal_box #require_form #require_area .list_wrap .area-box dt {
            font-size: 0.9375rem; }
            #require_box.modal_box #require_form #require_area .list_wrap .area-box dt span {
              font-size: 0.8125rem; }
            #require_box.modal_box #require_form #require_area .list_wrap .area-box dt img {
              width: 1rem; }
          #require_box.modal_box #require_form #require_area .list_wrap .area-box label span {
            font-size: 0.6875rem; }
      #require_box.modal_box #require_form #require_area h3,
      #require_box.modal_box #require_form #require_area h4 {
        font-size: 0.875rem;
        width: 100%; }
      #require_box.modal_box #require_form #require_area .btn-box {
        font-size: 0.8125rem;
        width: 100%; }
      #require_box.modal_box #require_form #require_area p.add {
        font-size: 0.75rem; }
      #require_box.modal_box #require_form #require_area.col2 {
        display: flex;
        justify-content: space-between;
        padding: 15px 25px;
        height: 50vh;
        max-height: 400px;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        #require_box.modal_box #require_form #require_area.col2 {
          flex-direction: column;
          height: 50vh;
          max-height: 400px;
          overflow-y: auto;
          -webkit-overflow-scrolling: touch; } }
@media only screen and (min-width: 661px) {
        #require_box.modal_box #require_form #require_area.col2 .list_wrap {
          width: 50%;
          max-height: none;
          margin-bottom: 0; } }
        @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
          #require_box.modal_box #require_form #require_area.col2 .list_wrap {
            width: 500px;
            margin: 0 auto;
            height: auto;
            overflow-y: visible; } }
@media only screen and (min-width: 661px) {
          #require_box.modal_box #require_form #require_area.col2 .list_wrap:nth-child(1) {
            padding-right: 80px; } }
          @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
            #require_box.modal_box #require_form #require_area.col2 .list_wrap:nth-child(1) {
              margin-bottom: 1em;
              padding: 15px 0 0 0;
              min-height: 200px; } }
@media only screen and (min-width: 661px) {
          #require_box.modal_box #require_form #require_area.col2 .list_wrap:nth-child(2) {
            padding-left: 40px;
            border-left: 1px solid #f2f2f2; } }
          @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
            #require_box.modal_box #require_form #require_area.col2 .list_wrap:nth-child(2) {
              margin-top: 1em;
              padding: 15px 0 0 0;
              border-left: none;
              border-top: 1px solid #f2f2f2; } }

@media only screen and (min-width: 661px) {
  #city-modal #require_box.modal_box #require_form #require_area .list_wrap {
    height: 500px;
    overflow-y: auto; }

  .list_block:nth-of-type(1) {
    margin-bottom: 0; }

  .area-box_wrp {
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    height: 350px; }

  #area-modal .area-box_wrp {
    overflow-y: auto;
    /*width: 950px;*/
    width: 100%;
    height: 350px; }

  #area-modal #require_box.modal_box #require_form #require_back {
    display: none; }

  #require_area .area-title_wrp p.button.allclear {
    font-size: 0.8125rem;
    border-radius: 4px; }

  #require_area .list_wrap ul.col4 {
    width: 80%;
    margin: 0 auto;
    padding-left: 1em; } }
  @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
    #require_area .list_wrap ul.col4 {
      width: 100%;
      padding-left: 0; } }

@media only screen and (min-width: 661px) {
  #require_area .list_wrap ul.col4 li {
    width: 25%; }

  #require_area {
    padding-bottom: 0; }

  #require_area .list_wrap .select span.wave {
    margin: 0 .3em; }

  #require_area .list_wrap .select select {
    font-size: 0.8125rem; }
  #require_area .list_wrap .select span {
    font-size: 0.875rem; }

  .search-shop {
    margin-top: -10px; }

  .search-shop #require_area .list_wrap .select select {
    font-size: 0.875rem; }

  #require_area .list_wrap ul.col li {
    font-size: 0.8125rem;
    /*padding: .1em 0;*/ }
    #require_area .list_wrap ul.col li:hover, #require_area .list_wrap ul.col li:focus {
      color: #333 !important; }

  #require_footer {
    width: 100%;
    background-color: #f2f2f2;
    border-radius: 0 0 6px 6px; }
    #require_footer .buttonlist {
      display: flex;
      justify-content: space-between;
      width: 100%;
      max-width: 700px;
      padding: 15px 25px;
      margin: 0 auto; }

  #require_footer li.clear {
    width: 30%; }

  #require_footer li .button.clear {
    width: 100%;
    background-color: #fff;
    border: 1px solid #ccc;
    display: block; }

  #require_footer .button {
    width: 65%; }
    #require_footer .button img {
      margin-right: .5em; }

  #require_footer .button.single {
    width: 70%;
    margin: 0 auto; }

  #require_footer .button.half {
    width: 47.5%; }

  .viewtype_wrp {
    display: flex;
    justify-content: flex-end;
    position: relative;
    z-index: 1001; }

  dl.viewtype-select {
    display: flex;
    align-items: center;
    position: absolute;
    right: 0;
    font-size: 0.75rem;
    line-height: 1;
    width: 10em; }
    dl.viewtype-select dd {
      margin-left: 1em;
      cursor: pointer;
      height: 20px; }

  #new_category_wrp #main.with_aside {
    z-index: auto;
    display: block; }

  ul.shop_list.grid {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 1em 0; }
    ul.shop_list.grid:after {
      content: "";
      display: block;
      width: 32%;
      height: 0; }
    ul.shop_list.grid li {
      width: 32%;
      border: 1px solid #ccc;
      padding: 1.2em 0em 1.2em 1.2em;
      margin-bottom: 20px;
      align-self: stretch;
      align-items: start; }
      ul.shop_list.grid li .shop_wrp {
        position: static;
        padding-bottom: 2em; }
        ul.shop_list.grid li .shop_wrp .frame {
          position: absolute;
          bottom: 2.55em; }
        ul.shop_list.grid li .shop_wrp .shop_link {
          position: absolute;
          bottom: .7em; }
    ul.shop_list.grid.oneresult li {
      padding: 1.2em; }
      ul.shop_list.grid.oneresult li .shop_wrp {
        padding-bottom: 0; }
        ul.shop_list.grid.oneresult li .shop_wrp .frame {
          position: static; }
        ul.shop_list.grid.oneresult li .shop_wrp .shop_link {
          position: static; }

  ul.shop_list.grid li .shop_wrp .shop .text_box {
    padding: 0 2.2em 0 0; }

  ul.shop_list li .shop_wrp {
    width: 100%;
    height: calc(100% - 10px);
    background-image: none; }

  ul.shop_list li {
    width: 100%;
    background-image: url(/themes/images/web/arrowhead_r_red_bg.svg);
    background-size: .6em;
    background-position: right 15px center;
    background-repeat: no-repeat; }

  .shop_wrp .shop_link img {
    width: auto;
    height: 1em; }

  ul.shop_list.together li {
    position: relative;
    transition: all .3s ease-out;
    /*&:hover .check_squ_wrap {opacity: .4;} */ }
    ul.shop_list.together li:hover .shop_wrp {
      opacity: .4; }
    ul.shop_list.together li:hover .shop_link {
      opacity: .4; }
    ul.shop_list.together li:hover {
      background-color: rgba(255, 255, 255, 0.6);
      background-blend-mode: lighten; }
    ul.shop_list.together li label {
      padding: 0; }
    ul.shop_list.together li .shop_wrp {
      transition: all .3s ease-out; }
      ul.shop_list.together li .shop_wrp a.shop::before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0; }

  ul.shop_list.together.grid li:hover {
    border: 1px solid rgba(204, 204, 204, 0.6); }

  ul.shop_list.together.oneresult li .shop_wrp {
    margin-left: 0; }

  /* ----- location search page ----- */
  .location #header_below {
    display: block; }

  main.location {
    width: 100%;
    padding-bottom: 40px;
    height: auto;
    z-index: 999; }
    main.location .container {
      overflow: hidden;
      border: 1px solid #ccc;
      max-width: initial; }
      main.location .container.sticky {
        position: relative; }
      main.location .container .map_wrp {
        height: 70vh; }
        main.location .container .map_wrp .map {
          position: absolute;
          width: 66.66%;
          max-width: calc(100% - 310px);
          height: 70vh;
          top: 0;
          right: 0;
          background-image: url("/themes/images/raiten/shop/map_dummy.png");
          background-size: 800px auto;
          background-position: top 5% center;
          z-index: -1; }
        main.location .container .map_wrp aside.shop_list {
          position: static;
          height: 100%;
          width: 33.33%;
          min-width: 310px;
          box-shadow: 0px 0px 9px 2px rgb(0 0 0 / 15%);
          overflow: hidden; }
          main.location .container .map_wrp aside.shop_list .map_header {
            /*border-bottom: 1px solid $bgGray;*/
            box-shadow: 0px 0px 8px 1px rgb(0 0 0 / 5%);
            box-shadow: none;
            /*margin-bottom: .5em;*/
            height: auto; }
            main.location .container .map_wrp aside.shop_list .map_header.sticky {
              position: -webkit-sticky;
              position: sticky; }
            main.location .container .map_wrp aside.shop_list .map_header .search_wrap {
              padding: 12px 20px; }
            main.location .container .map_wrp aside.shop_list .map_header .buttons_wrp {
              padding: 0 20px 12px; }
          main.location .container .map_wrp aside.shop_list .map_frame {
            display: none;
            /*            position: static;
                        height: auto;*/ }
            main.location .container .map_wrp aside.shop_list .map_frame .btn_location {
              width: 50px;
              height: 50px;
              position: absolute;
              right: 20px;
              bottom: 20px; }
              main.location .container .map_wrp aside.shop_list .map_frame .btn_location img {
                width: 25px;
                height: 25px; }
          main.location .container .map_wrp aside.shop_list .bottom-seat {
            height: calc( 70vh - 145px); }
            main.location .container .map_wrp aside.shop_list .bottom-seat.open {
              height: calc( 70vh - 420px); }
            main.location .container .map_wrp aside.shop_list .bottom-seat.box-shadow {
              box-shadow: none;
              position: static; }
            main.location .container .map_wrp aside.shop_list .bottom-seat .shop_list {
              padding: 0 20px; }

  main.location ul.shop_list li .shop_wrp .shop .text_box {
    padding: 0 3em 0 0; }

  main.location ul.shop_list li {
    background-position: right 0 center;
    position: relative;
    transition: all .3s ease-out; }
    main.location ul.shop_list li:hover {
      opacity: .4; }
    main.location ul.shop_list li:first-child {
      border-top: 1px solid #f2f2f2; }
    main.location ul.shop_list li .shop_wrp a.shop::before {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0; }
    main.location ul.shop_list li .shop_wrp a.shop .text_box .distance {
      font-size: 0.875rem; }
    main.location ul.shop_list li .shop_link {
      position: relative; }

  .map_header .buttons_wrp .switch_btn,
  .keyword_header .buttons_wrp .switch_btn {
    border-radius: 3px; }
    .map_header .buttons_wrp .switch_btn button,
    .keyword_header .buttons_wrp .switch_btn button {
      font-size: 0.875rem;
      border-radius: 3px; }
      .map_header .buttons_wrp .switch_btn button.leftSide,
      .keyword_header .buttons_wrp .switch_btn button.leftSide {
        border-radius: 3px 0 0 3px; }
      .map_header .buttons_wrp .switch_btn button.rightSide,
      .keyword_header .buttons_wrp .switch_btn button.rightSide {
        border-radius: 0 3px 3px 0; }

  .map_header .buttons_wrp button.viewtype_location.spOnly {
    display: none; }

  .location.nodata .paging_settings, .location.disabled .paging_settings {
    display: none; }

  .new-inner.list-foot.spOnly {
    display: none; }

  /*　スマホスタイルリセット　*/
  main.location .shop_wrp .text_box span.adress,
  main.location .shop_wrp .text_box span.counter,
  main.location .shop_wrp .text_box span.shop {
    text-overflow: clip;
    overflow: auto;
    white-space: normal; }

  main.location ul.shop_list li .shop_wrp {
    position: static; }

  main.location .shop_wrp .text_box span.adress {
    width: auto; }

  main.location .shop_list li {
    padding: 1em 0; }

  main.location ul.shop_list li .shop_wrp a.shop_link {
    position: static;
    font-size: 0.8125rem; }

  main.location .attention_link.rebook {
    margin-bottom: 1em; }

  /*　js連動　ウィンドウリサイズ時 transitionさせない */
  main.location ul.shop_list li.no-trans {
    transition: none; }

  /* ----- search-shop ----- */
  h2.title::before {
    display: none; }

  .search-shop .btn_reserve.whbox a:hover :not(.btn_reserveInfo, .shop_link, .shop_link img) {
    opacity: .4; }

  .search-shop .btn_reserve.whbox {
    width: 70%;
    border-radius: 0.9375rem;
    padding: 1em 2.2em 1.5em 2.2em;
    margin: 1rem auto 2.75rem;
    background-image: none; }
    .search-shop .btn_reserve.whbox:hover dl {
      opacity: .4;
      cursor: pointer; }
    .search-shop .btn_reserve.whbox dl {
      display: flex;
      flex-wrap: wrap;
      transition: all .3s ease-out;
      /*      &::after {
            content: "";
            background-image: url(/themes/images/web/arrowhead_r_red.svg);
            background-repeat: no-repeat;
            background-position: right 2.2em center;
            background-size: .6em;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            position: absolute;
            }*/ }
      .search-shop .btn_reserve.whbox dl dt {
        width: 100%;
        text-align: center;
        font-size: 1rem;
        font-weight: bold;
        padding: 0 0 .5em;
        border-bottom: 1px solid #ddd;
        z-index: auto; }
        .search-shop .btn_reserve.whbox dl dt a {
          transition: all .3s ease-out; }
          .search-shop .btn_reserve.whbox dl dt a::after {
            background-position: right 2.2em center;
            background-size: .6em;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0; }
      .search-shop .btn_reserve.whbox dl .shop_wrp {
        width: 50%;
        margin: 0;
        background-image: none;
        margin-top: 1em;
        /*      a {
          display: block;
          width: 100%;
          height: auto;
        }*/ }
        .search-shop .btn_reserve.whbox dl .shop_wrp .text_box {
          padding: 0; }
          .search-shop .btn_reserve.whbox dl .shop_wrp .text_box span.adress {
            margin-bottom: 0; }
        .search-shop .btn_reserve.whbox dl .shop_wrp .shop_link {
          display: inline-flex;
          align-items: center;
          width: auto;
          white-space: nowrap;
          font-size: 0.9375rem;
          z-index: auto; }
      .search-shop .btn_reserve.whbox dl .reservation {
        /*position: relative;*/
        display: flex;
        flex-direction: column;
        justify-content: center;
        width: 50%;
        text-align: center;
        /*      background-image: url(/themes/images/web/arrowhead_r_red.svg);
              background-repeat: no-repeat;
              background-position: right center;
              background-size: .6em;*/
        margin-top: .5rem;
        /*      &::after {
              content: "";
              background-image: url(/themes/images/web/arrowhead_r_red.svg);
              background-repeat: no-repeat;
              background-position: right center;
              background-size: .6em;
              top: 0;
              left: 0;
              bottom: 0;
              right: 0;
              position: absolute;
              }*/ }
        .search-shop .btn_reserve.whbox dl .reservation strong {
          font-size: 1.125rem;
          margin-bottom: .75em; }
        .search-shop .btn_reserve.whbox dl .reservation p {
          font-size: 1rem; }
          .search-shop .btn_reserve.whbox dl .reservation p.time {
            font-size: 1.125rem; }

  .search-shop .btn_reserve.whbox::after {
    display: none; }

  .attention_link.rebook {
    font-size: .875rem;
    margin-top: 0; }
    .attention_link.rebook p {
      font-size: 0.8125rem;
      display: block;
      text-align: center; }

  .attention_link.rebook.spWidth {
    width: 100%; }

  .attention_link.rebook.nomgbSP {
    margin-bottom: 1em; }

  .search-shop #require_area {
    margin-top: 0; }

  .search-shop main p {
    font-size: 1rem; }

  .search-shop #require_form {
    margin: 55px auto 100px; }

  .search-shop #require_form .list_wrap.bgGray h3 img {
    width: 1rem;
    top: 40%;
    right: 20px; }

  .history_inner .shop_wrp .text_box {
    padding: 0 0 2.2em 0; }

  .col_wrap {
    display: flex;
    justify-content: space-between; }

  .search-shop #require_area .col_wrap .list_wrap:last-child {
    margin-bottom: 20px; }

  .search-shop #require_form .list_wrap.bgGray,
  .search-shop #require_area .list_wrap {
    position: relative;
    padding: 85px 0 30px;
    margin-bottom: 20px; }

  .search-shop #require_form .list_wrap.bgGray.mgb {
    margin-bottom: 20px; }

  .search-shop #require_form .list_wrap.bgGray h3,
  .search-shop #require_area .list_wrap h3 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    display: block;
    font-size: 1rem;
    text-align: center;
    background: #fff;
    border-bottom: 3px solid #f2f2f2;
    padding: 1.2em 0; }

  .search-shop #require_area .list_wrap.history {
    padding: 65px 0 0; }

  .search-shop .list_wrap .history_inner {
    padding: 0; }

  .search-shop #require_area .history ul.shop_list {
    display: flex;
    justify-content: space-between;
    padding: 0;
    margin: 0; }
    .search-shop #require_area .history ul.shop_list li {
      width: 100%;
      border-radius: 0;
      padding: 20px 15px 20px 25px;
      margin: 0 5px 0 0;
      box-shadow: none;
      position: relative; }
      .search-shop #require_area .history ul.shop_list li:last-child {
        margin-right: 0; }
      .search-shop #require_area .history ul.shop_list li:hover .shop_wrp {
        opacity: .4; }
      .search-shop #require_area .history ul.shop_list li .shop_wrp {
        transition: all .3s ease-out;
        position: static;
        height: 100%;
        background-image: url(/themes/images/web/arrowhead_r_red.svg);
        background-repeat: no-repeat;
        background-position: right center;
        background-size: .6em; }
        .search-shop #require_area .history ul.shop_list li .shop_wrp a.shop {
          /*@include bgimg_arrowhead_r_red;*/
          padding-right: 1.2em; }
          .search-shop #require_area .history ul.shop_list li .shop_wrp a.shop::before {
            content: '';
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0; }
        .search-shop #require_area .history ul.shop_list li .shop_wrp a.shop_link {
          position: absolute;
          bottom: 1em; }

  .search-shop #require_area .col_wrap .list_wrap {
    width: 49%;
    padding: 85px 0 30px; }

  .search-shop .search_wrap {
    /*width: 420px;*/
    margin: 0 auto; }

  .search-shop #require_area .list_wrap h4 {
    font-size: 1rem; }

  .search-shop .button.single {
    width: 85%; }

  #require_area .list_wrap h4, #require_area .list_wrap label.name {
    font-size: 0.875rem; }

  .search-shop .list_wrap .map_area {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 577px;
    height: 520px;
    margin: 0 auto; }
    .search-shop .list_wrap .map_area svg {
      width: 380px;
      height: auto; }

  .search-shop .list_wrap .map_area a {
    font-size: 0.9375rem;
    border-radius: 6px; }
    .search-shop .list_wrap .map_area a.HKD {
      background: #3566c9;
      top: 60px;
      left: 240px; }
    .search-shop .list_wrap .map_area a.TH {
      background: #00b0ec;
      top: 197px;
      right: 60px; }
    .search-shop .list_wrap .map_area a.HR-SE {
      background: #eabd41;
      top: 150px;
      left: 170px; }
    .search-shop .list_wrap .map_area a.KT {
      top: 284px;
      left: 390px; }
    .search-shop .list_wrap .map_area a.KK {
      top: 212px;
      left: 120px; }
    .search-shop .list_wrap .map_area a.CB {
      top: 343px;
      left: 305px; }
    .search-shop .list_wrap .map_area a.CG {
      top: 270px;
      left: 35px; }
    .search-shop .list_wrap .map_area a.SK {
      top: 375px;
      left: 184px; }
    .search-shop .list_wrap .map_area a.KS-ON {
      top: 415px;
      left: 30px; }

  .search-shop #require_area .list_wrap ul.col {
    flex-wrap: wrap; }
    .search-shop #require_area .list_wrap ul.col li {
      width: 25%;
      font-size: 0.9375rem;
      overflow: visible;
      white-space: nowrap;
      padding: .75em 0 .5em 0; }

  .search-shop #require_area .list_wrap p {
    margin-top: .7em; }

  .search-shop #require_area .list_wrap p {
    font-size: 0.8125rem;
    width: 100%; }

  .search-shop .list_block {
    display: flex;
    flex-wrap: wrap;
    width: 64%;
    min-width: 600px;
    margin: 0 auto;
    /*  &:nth-of-type(1) {margin-bottom: 1.3em;}*/ }
    .search-shop .list_block h4 {
      /*width: 25%;*/
      padding: .6em 0 0; }
    .search-shop .list_block > div {
      width: 80%; }
      .search-shop .list_block > div p {
        text-align: left !important; }

  .search-shop #require_area .list_wrap .select {
    height: 2.7em; }

  .modal_overlay.area-modal #require_box.modal_box #require_form #require_back {
    background-image: none; }

  /* ----- notice modal ----- */
  .modal_box.notice {
    min-width: auto;
    max-width: 500px;
    width: 500px;
    padding: 50px 30px 40px; }
    .modal_box.notice span {
      width: 50px;
      height: auto; }
    .modal_box.notice p {
      font-size: 0.9375rem !important; }
    .modal_box.notice a.close.agree {
      width: 350px;
      font-size: 1rem;
      padding: .8em; }

  /* ----- shop keyword ----- */
  .keyword_header {
    width: 70%;
    margin-bottom: 1em; }

  ul.pager {
    max-width: none; }

  p.pg_number_set {
    font-size: .625rem; }

  .pg_number_set span {
    font-size: .9375rem; }

  /* ----- reserve matrix ----- */
  .reserve_matrix .require_frame .col2 {
    display: flex;
    align-items: center;
    padding: 1.5em;
    margin-bottom: 0; }

  .reserve_matrix .require_frame .col2 dl dt {
    width: 5em;
    font-size: 0.9375rem; }

  .reserve_matrix .require_frame .col2 dl dt:last-of-type {
    margin: 0; }

  .reserve_matrix .require_frame .col2 dl dd {
    width: calc(100% - 5.5em);
    font-size: 0.875rem;
    margin: 0 0 .5rem 0; }

  .reserve_matrix .require_frame .col2 dl dd:last-of-type {
    margin: 0; }

  .reserve_matrix .require_frame .col2 dl dd span {
    font-size: 1rem; } }
@media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 768px) {
  .reserve_matrix .require_frame .col2 dl dd span:nth-child(3) {
    padding-left: .2em;
    /*Safari対策 */ } }
@media only screen and (min-width: 661px) {
  .reserve_matrix .require_frame .col2 > dl dt {
    width: 100%; }

  .reserve_matrix .require_frame .col2 > dl dt:last-of-type {
    margin-bottom: .3em; }

  .reserve_matrix .require_frame .col2 > dl dd {
    width: 100%; }

  .reserve_matrix .require_frame.single {
    margin-bottom: 0; }
    .reserve_matrix .require_frame.single dl {
      width: 50%;
      padding: 2.5em 0 2.5em 2.2em;
      border-left: 1px solid #ddd;
      margin: 0; }
      .reserve_matrix .require_frame.single dl.range {
        width: 100%;
        border: none;
        padding: 0; }
        .reserve_matrix .require_frame.single dl.range dt, .reserve_matrix .require_frame.single dl.range dd {
          font-size: 0.8125rem; }
      .reserve_matrix .require_frame.single dl.day-time {
        /*flex-wrap: nowrap;*/
        flex-wrap: wrap; }
        .reserve_matrix .require_frame.single dl.day-time dt {
          /*width: 7em;*/
          width: 100%;
          padding-top: .1em;
          margin-bottom: .3em; }

  .reserve_matrix .require_frame.multi h4 {
    width: 25%;
    text-align: center;
    font-size: 0.9375rem; }
  .reserve_matrix .require_frame.multi dl.day-time {
    width: 75%;
    padding-left: 4em;
    border-left: 1px solid #ddd;
    margin: 1em 0; } }
  @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 768px) {
    .reserve_matrix .require_frame.multi dl.day-time {
      padding-left: 2.5em; } }
@media only screen and (min-width: 661px) {
    .reserve_matrix .require_frame.multi dl.day-time dt {
      width: 7em;
      width: 100%;
      margin-bottom: .3em; }
    .reserve_matrix .require_frame.multi dl.day-time dd {
      /*width: calc(100% - 7.5em);*/ }

  .reserve_target {
    width: 50%;
    border-bottom: none;
    padding: 0 2em 0 1em; }
    .reserve_target .shop_wrp {
      margin: 0;
      background-image: none; }

  .reserve_matrix .require_frame dl {
    margin: 1em auto 0;
    height: auto; }

  .reserve_target .range dt,
  .reserve_target .range dd {
    font-size: 0.875rem; }

  .reserve_target .range dt {
    width: 5em; }

  .reserve_matrix .require_frame .col2 dl.range dd {
    margin: 0; }

  .navbtn_wrap.spOnly {
    display: none; }

  .navbtn_wrap p {
    font-size: 0.9375rem; }

  .reserve_matrix main {
    border-top: none; }

  .reserve_msg {
    font-size: 0.875rem;
    font-weight: bold;
    margin-left: 3vw; }

  .alldayfilled_msg {
    font-size: 1rem; }

  .reserve_tbl th,
  .reserve_tbl td {
    padding: 0;
    vertical-align: top; }

  .reserve_tbl tbody tr:first-child th,
  .reserve_tbl tbody tr:first-child td {
    border-top: none;
    border-bottom: none; }

  .tbody_wrap {
    position: relative; }
    .tbody_wrap .reserve_tbl.time {
      position: absolute;
      top: 0;
      left: 0;
      z-index: 999; }
      .tbody_wrap .reserve_tbl.time.pcRight {
        right: 0;
        left: auto; }
      .tbody_wrap .reserve_tbl.time tbody th ul li {
        width: 76px;
        height: 55px;
        line-height: 55px;
        font-size: 0.875rem; }
        .tbody_wrap .reserve_tbl.time tbody th ul li:nth-of-type(even) {
          font-size: 0.8125rem; }

  .reserve_tbl {
    table-layout: fixed;
    border-collapse: separate;
    border-bottom: none;
    width: auto;
    margin-bottom: 0; }
    .reserve_tbl.thead {
      width: 100%;
      position: static;
      padding-left: 77px; }
      .reserve_tbl.thead thead tr:first-child th {
        font-size: 0.8125rem;
        height: 26px;
        padding-left: 0;
        text-align: center; }
      .reserve_tbl.thead thead th {
        font-weight: bold; }
    .reserve_tbl.tbody {
      width: 100%;
      padding-left: 77px; }
    .reserve_tbl thead th {
      width: 100%;
      height: 55px;
      text-align: center;
      vertical-align: middle;
      background: #fff;
      border-right: 1px solid #ddd;
      border-top: 1px solid #ddd;
      border-bottom: 1px solid #ddd;
      top: 0;
      line-height: 1; }
      .reserve_tbl thead th span {
        display: block;
        font-size: 0.6875rem;
        font-weight: normal;
        margin-top: .4em; }
    .reserve_tbl thead tr th {
      font-weight: normal; }
    .reserve_tbl tbody th {
      left: 0;
      width: 55px;
      font-weight: normal;
      font-size: 0.75rem;
      text-align: right;
      background: #fcfcfc; }
    .reserve_tbl tbody th ul li:nth-of-type(odd),
    .reserve_tbl tbody td ul li:nth-of-type(odd) {
      border-bottom: 1px solid #eaeaea; }
    .reserve_tbl tbody th ul li:nth-of-type(even),
    .reserve_tbl tbody td ul li:nth-of-type(even) {
      border-bottom: 1px solid #ddd; }
    .reserve_tbl tbody th ul li:last-child,
    .reserve_tbl tbody td ul li:last-child {
      border-bottom: 1px solid #ddd; }
    .reserve_tbl tbody th ul li {
      padding-right: .5em;
      border-right: 1px solid #ddd; }
      .reserve_tbl tbody th ul li:nth-of-type(even) {
        font-size: 0.6875rem; }
    .reserve_tbl tbody ul li {
      width: 100%;
      height: 55px;
      line-height: 55px;
      vertical-align: middle;
      border-right: 1px solid #ddd; }
    .reserve_tbl tbody td {
      width: 100%;
      text-align: center;
      /*background: $bgGray;*/ }
      .reserve_tbl tbody td li {
        width: 100%;
        font-size: 1rem; }
        .reserve_tbl tbody td li.vacant {
          cursor: pointer; }
          .reserve_tbl tbody td li.vacant a {
            display: block;
            width: 100%;
            height: 100%;
            font-size: 1rem; }
            .reserve_tbl tbody td li.vacant a::before {
              content: " ";
              display: inline-flex;
              width: 1em;
              height: 1em;
              border: solid 1px #df4525;
              border-radius: 50%;
              line-height: 1; }
            .reserve_tbl tbody td li.vacant a:active {
              background-color: rgba(223, 69, 37, 0.1); }
            .reserve_tbl tbody td li.vacant a:hover {
              background-color: rgba(223, 69, 37, 0.1); }
        .reserve_tbl tbody td li.close {
          cursor: unset; }
        .reserve_tbl tbody td li.close::before {
          content: "－";
          font-size: 1em;
          color: #999999;
          line-height: 1; }
        .reserve_tbl tbody td li.filled::before {
          content: "×";
          font-size: 1.7rem;
          color: #999999;
          line-height: 1; }

  .reserve_matrix.reserve_same .new-inner.list-foot {
    display: block;
    padding: 0 0 30px;
    text-align: center; }
    .reserve_matrix.reserve_same .new-inner.list-foot .button.green.single {
      width: 420px; }

  .reserve_tbl_wrap .sticky {
    z-index: 9999; }

  /* selected multi */
  .day_select_wrap {
    overflow: hidden;
    padding: 0; }
    .day_select_wrap .day_select {
      display: flex;
      justify-content: space-between;
      width: 1000px; }
      .day_select_wrap .day_select a {
        width: 7.1428571429%;
        font-size: 0.9375rem;
        /*border-radius: 6px;*/ }
        .day_select_wrap .day_select a.notselected:nth-child(n+8) {
          display: block; }
        .day_select_wrap .day_select a.notselected {
          display: block;
          pointer-events: none;
          opacity: .2; }
        .day_select_wrap .day_select a:nth-child(1).current ~ .day_underline {
          left: 0%; }
        .day_select_wrap .day_select a:nth-child(2).current ~ .day_underline {
          left: 7.1428571429%; }
        .day_select_wrap .day_select a:nth-child(3).current ~ .day_underline {
          left: 14.2857142857%; }
        .day_select_wrap .day_select a:nth-child(4).current ~ .day_underline {
          left: 21.4285714286%; }
        .day_select_wrap .day_select a:nth-child(5).current ~ .day_underline {
          left: 28.5714285714%; }
        .day_select_wrap .day_select a:nth-child(6).current ~ .day_underline {
          left: 35.7142857143%; }
        .day_select_wrap .day_select a:nth-child(7).current ~ .day_underline {
          left: 42.8571428571%; }
        .day_select_wrap .day_select a:nth-child(8).current ~ .day_underline {
          left: 50%; }
        .day_select_wrap .day_select a:nth-child(9).current ~ .day_underline {
          left: 57.1428571429%; }
        .day_select_wrap .day_select a:nth-child(10).current ~ .day_underline {
          left: 64.2857142857%; }
        .day_select_wrap .day_select a:nth-child(11).current ~ .day_underline {
          left: 71.4285714286%; }
        .day_select_wrap .day_select a:nth-child(12).current ~ .day_underline {
          left: 78.5714285714%; }
        .day_select_wrap .day_select a:nth-child(13).current ~ .day_underline {
          left: 85.7142857143%; }
        .day_select_wrap .day_select a:nth-child(14).current ~ .day_underline {
          left: 92.8571428571%; }
        .day_select_wrap .day_select a:nth-child(1):hover ~ .day_underline {
          left: 0%; }
        .day_select_wrap .day_select a:nth-child(2):hover ~ .day_underline {
          left: 7.1428571429%; }
        .day_select_wrap .day_select a:nth-child(3):hover ~ .day_underline {
          left: 14.2857142857%; }
        .day_select_wrap .day_select a:nth-child(4):hover ~ .day_underline {
          left: 21.4285714286%; }
        .day_select_wrap .day_select a:nth-child(5):hover ~ .day_underline {
          left: 28.5714285714%; }
        .day_select_wrap .day_select a:nth-child(6):hover ~ .day_underline {
          left: 35.7142857143%; }
        .day_select_wrap .day_select a:nth-child(7):hover ~ .day_underline {
          left: 42.8571428571%; }
        .day_select_wrap .day_select a:nth-child(8):hover ~ .day_underline {
          left: 50%; }
        .day_select_wrap .day_select a:nth-child(9):hover ~ .day_underline {
          left: 57.1428571429%; }
        .day_select_wrap .day_select a:nth-child(10):hover ~ .day_underline {
          left: 64.2857142857%; }
        .day_select_wrap .day_select a:nth-child(11):hover ~ .day_underline {
          left: 71.4285714286%; }
        .day_select_wrap .day_select a:nth-child(12):hover ~ .day_underline {
          left: 78.5714285714%; }
        .day_select_wrap .day_select a:nth-child(13):hover ~ .day_underline {
          left: 85.7142857143%; }
        .day_select_wrap .day_select a:nth-child(14):hover ~ .day_underline {
          left: 92.8571428571%; }
        .day_select_wrap .day_select a span {
          font-size: 0.875rem; }
    .day_select_wrap .day_underline {
      width: 7.1428571429%; }

  .selected_shop .reserve_tbl.thead.day_select {
    width: 100%;
    padding-left: 0; }
    .selected_shop .reserve_tbl.thead.day_select th {
      font-size: 0.9375rem; }
      .selected_shop .reserve_tbl.thead.day_select th.notselected:nth-child(n+8) {
        display: table-cell; }
      .selected_shop .reserve_tbl.thead.day_select th.notselected {
        display: table-cell; }
        .selected_shop .reserve_tbl.thead.day_select th.notselected a {
          pointer-events: none;
          opacity: .2; }
      .selected_shop .reserve_tbl.thead.day_select th.month.notselected {
        display: table-cell; }
        .selected_shop .reserve_tbl.thead.day_select th.month.notselected a {
          display: block; }
      .selected_shop .reserve_tbl.thead.day_select th .week {
        font-weight: normal;
        font-size: 0.875rem; }
    .selected_shop .reserve_tbl.thead.day_select tr:first-child th.month span {
      font-size: 0.875rem; }
    .selected_shop .reserve_tbl.thead.day_select .notselected {
      display: table-cell;
      pointer-events: none; }
    .selected_shop .reserve_tbl.thead.day_select .notselected > * {
      opacity: .2; }

  .selected_shop .reserve_tbl.thead.day_select tr:last-child th.current:after {
    width: 100%; }

  .reserve_msg {
    font-size: 1rem;
    margin: 2em 0 0; }

  .reserve_tbl_wrap.selected_shop.fixed {
    position: fixed; }

  .reserve_tbl_wrap {
    /*  width: 100%;
      max-width: 1000px;
      height: 640px;
      overflow: hidden;
      margin-bottom: 30px;
      position: relative;*/ }
    .reserve_tbl_wrap .sticky {
      /*position: static;*/
      position: sticky;
      top: 79px;
      z-index: 9999;
      overflow-x: visible;
      padding-top: 1rem;
      background: #fff; }
    .reserve_tbl_wrap .corner {
      position: absolute;
      top: 0;
      width: 77px;
      height: 81px;
      font-size: 0.875rem; }

  .reserve_tbl_wrap.selected_shop {
    position: relative; }
    .reserve_tbl_wrap.selected_shop.shadow::after {
      background: linear-gradient(to right, rgba(252, 252, 252, 0) 0%, #fcfcfc 100%);
      content: "";
      display: block;
      height: calc(100% - 48px);
      width: 40px;
      right: 0;
      bottom: 0;
      position: absolute;
      z-index: 1000;
      border-right: 1px solid #f2f2f2; }

  .tbody_wrap {
    /*height: 550px;*/
    overflow-y: scroll;
    overflow-x: hidden;
    -ms-overflow-style: none;
    /* IE & edge */
    scrollbar-width: none;
    /* fire fox */ }

  .tbody_wrap::-webkit-scrollbar {
    /* edge */
    display: none; }

  .selected_shop .tbody_wrap {
    /*height: 494px;*/ }

  .selected_shop .reserve_tbl.tbody td {
    width: 65px; }
    .selected_shop .reserve_tbl.tbody td ul li {
      width: 100%;
      height: 55px;
      line-height: 55px; }

  .reserve_tbl_wrap.selected_shop {
    width: 1000px;
    width: 100%;
    max-width: 1000px;
    /*height: 623px;*/
    /*overflow: hidden;*/
    margin-bottom: 30px;
    background: #fbfbfb; }
    .reserve_tbl_wrap.selected_shop .sticky {
      position: sticky;
      top: 0;
      z-index: 9999;
      overflow: hidden; }
      .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead {
        width: 100%;
        height: 128px;
        padding-left: 75px; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead {
          padding-left: calc(16vw - 60px); } }
@media only screen and (min-width: 661px) {
        .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead.shadow::after {
          background: linear-gradient(to right, rgba(252, 252, 252, 0) 0%, #fcfcfc 100%);
          content: "";
          display: block;
          height: 100%;
          width: 40px;
          right: 0;
          top: 0;
          position: absolute;
          z-index: 1000;
          border-right: 1px solid #f2f2f2; }
        .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th {
          width: 185px;
          height: 128px;
          padding: 2em .5em 1em;
          position: relative;
          text-align: left; } }
        @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
          .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th {
            width: calc((100vw - 16vw) / 3); } }
@media only screen and (min-width: 661px) {
          .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th .btn_close {
            position: absolute;
            top: .5em;
            right: .5em;
            width: auto;
            margin: 0;
            font-size: medium;
            z-index: 1001; }
          .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap {
            height: 100%;
            z-index: 1001; }
            .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap span {
              width: 100%;
              font-size: .875rem; }
              .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap span.vendor {
                height: 1.3em;
                overflow: hidden;
                text-overflow: ellipsis;
                -webkit-text-overflow: ellipsis; }
              .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th .shop_wrap span.shop {
                /*              height: 3.9em;
                              overflow: hidden;
                              text-overflow: ellipsis;
                              -webkit-text-overflow: ellipsis;*/ }
        .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead tr th {
          border-bottom: 1px solid #ddd;
          font-size: 0.875rem; }
      .reserve_tbl_wrap.selected_shop .sticky .corner {
        top: 0;
        width: 76px;
        height: 100%;
        font-size: 0.875rem; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        .reserve_tbl_wrap.selected_shop .sticky .corner {
          width: calc(16vw - 60px + 1px); } }
@media only screen and (min-width: 661px) {
    .reserve_tbl_wrap.selected_shop .reserve_tbl.time tbody li {
      width: 75px; } }
    @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
      .reserve_tbl_wrap.selected_shop .reserve_tbl.time tbody li {
        width: calc(16vw - 60px); } }
@media only screen and (min-width: 661px) {
    .reserve_tbl_wrap.selected_shop .reserve_tbl.tbody {
      padding-left: 75px;
      width: 100%; } }
    @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
      .reserve_tbl_wrap.selected_shop .reserve_tbl.tbody {
        padding-left: calc(16vw - 60px); } }
@media only screen and (min-width: 661px) {
      .reserve_tbl_wrap.selected_shop .reserve_tbl.tbody td {
        width: 185px; } }
      @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
        .reserve_tbl_wrap.selected_shop .reserve_tbl.tbody td {
          width: calc((100vw - 16vw) / 3); } }
@media only screen and (min-width: 661px) {
        .reserve_tbl_wrap.selected_shop .reserve_tbl.tbody td ul li {
          width: 100%;
          height: 55px;
          line-height: 55px; }

  /* ----- reserve completed ----- */
  .whbox.pcStyle {
    width: 100%;
    max-width: 700px;
    margin: 1rem auto 30px;
    border-radius: 15px;
    padding: 50px; }

  .circle_green {
    width: 60px;
    height: 60px; }

  .search-shop main p {
    font-size: 0.9375rem; }

  .whbox.checkin-num_box {
    width: 400px;
    border: 1px solid #ddd;
    border-radius: 6px;
    box-shadow: none;
    padding: 1.7em;
    margin: 2.5rem auto 2rem; }
    .whbox.checkin-num_box p {
      font-size: 0.8125rem; }

  .checkin-num dt {
    font-size: 0.9375rem; }
  .checkin-num dd {
    font-size: 1.75rem;
    line-height: 1.7; }

  .reserve_detail {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    min-width: 500px;
    margin: 1.5rem auto; }
    .reserve_detail dt {
      width: 35%;
      font-size: 0.875rem;
      margin-bottom: .35em; }
      .reserve_detail dt a.shop_link {
        margin-left: 2em;
        color: #3273dc; }
    .reserve_detail dd {
      width: 65%;
      font-size: 0.875rem;
      margin-bottom: 1.5em; }
      .reserve_detail dd.day-time {
        font-size: 1rem; }
      .reserve_detail dd.message {
        font-size: 0.8125rem;
        line-height: 1.7; }
      .reserve_detail dd .year {
        font-size: 0.8125rem; }
      .reserve_detail dd a.place {
        font-size: 0.875rem; }
        .reserve_detail dd a.place img {
          padding-right: .4em; }

  .reserve_detail .shop_wrp .text_box span.counter {
    width: 300px; }

  .reserve_detail a.shop_link {
    position: absolute;
    right: -90px;
    top: 50%;
    transform: translateY(-50%);
    font-weight: normal; }

  dl.id-check dt {
    font-size: 1rem;
    margin-bottom: .8em; }
  dl.id-check dd {
    font-size: 0.9375rem; }

  .attention_link {
    margin-top: 1em;
    padding: 1.3em .5em 1.3em 15%;
    background-position: 97% center;
    background-image: url(/themes/images/icons/arrow_right_bg.svg); }
    .attention_link a {
      font-size: 0.9375rem; }
      .attention_link a .txtXS {
        font-size: 0.8125rem; }

  .search-shop main p.ast {
    font-size: 0.8125rem; }

  .astbox {
    　width: 600px;
    padding: 1.3em 5% 3.5em; }

  a.kaitori_caution {
    bottom: 1.3em;
    font-size: 0.9375rem; }

  .btn_box {
    width: 100%;
    max-width: 700px;
    text-align: center; }

  .btn.white.cancel {
    width: 600px;
    font-size: 0.875rem;
    margin: 0 auto 60px; }

  .btn.attention.spOnly {
    display: none; }

  .modal_box.shop_map a.root {
    font-size: 0.875rem; }

  .modal_box.shop_map {
    min-width: 500px;
    padding: 40px; }

  /* 2021.11.10 */
  .search-shop .wallet_alert_area p {
    display: block;
    text-align: center; }
  .search-shop .wallet_alert_area .box_style_border_red {
    padding: 18px 20px; }
    .search-shop .wallet_alert_area .box_style_border_red .h_style_border_l {
      font-size: 1rem; }
    .search-shop .wallet_alert_area .box_style_border_red .h_style_border_l + p {
      font-size: .9375rem; }
    .search-shop .wallet_alert_area .box_style_border_red strong {
      display: block;
      font-size: .875rem;
      white-space: normal;
      margin-top: 1em; }
    .search-shop .wallet_alert_area .box_style_border_red .attention_link {
      display: flex;
      justify-content: center;
      align-items: center;
      padding: 0;
      width: 80%;
      height: 56px;
      margin: .5em auto 1em; }
      .search-shop .wallet_alert_area .box_style_border_red .attention_link a {
        font-size: .9375rem;
        margin-right: 0; }
    .search-shop .wallet_alert_area .box_style_border_red h4 {
      font-size: .875rem;
      margin-top: 2em; }
    .search-shop .wallet_alert_area .box_style_border_red h4 + p {
      font-size: .8125rem;
      text-align: left; }
    .search-shop .wallet_alert_area .box_style_border_red .ast {
      text-align: left;
      font-size: .8125rem;
      margin-top: .5em; }
    .search-shop .wallet_alert_area .box_style_border_red .button {
      display: flex;
      width: 80%;
      height: 56px;
      margin: 1em auto 1em; }

  /* ----- reserve confirm ----- */
  .circle_green.confirm img {
    width: 20px; }

  .accoBox_title_wrp h3 {
    font-size: 0.9375rem; }
    .accoBox_title_wrp h3 span {
      font-size: 0.8125rem;
      border-radius: 3px; }
  .accoBox_title_wrp a.wallet-receipt {
    font-size: 0.8125rem; }

  .search-shop main .accoBox_title_wrp + p {
    font-size: 0.875rem;
    margin-top: .5em; }

  .accoBox .reserve_detail {
    width: 100%;
    padding: 1em 0; }

  .accoBox dt {
    font-size: 0.875rem; }

  .accoBox dt label span {
    line-height: 1; }

  .accoBox dt span.btn_toggle img {
    width: 1em; }

  .accoBox dd {
    font-size: 0.75rem; }

  .accoBox .inner {
    padding: .8em 42px; }

  .whbox.pcStyle hr {
    margin: -1rem 0 2.5rem; }

  .whbox.pcStyle hr.mg {
    margin: 1.5rem auto; }

  .accoBox .reserve_detail dt {
    align-items: flex-start; }

  .accoBox .reserve_detail dd {
    font-size: 0.875rem; }

  .btn_box.col2 {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 700px;
    margin-bottom: 60px; }
    .btn_box.col2 .btn {
      width: 48%;
      font-size: 0.875rem; }
      .btn_box.col2 .btn.left {
        order: -1; }
      .btn_box.col2 .btn.upper {
        margin: 0; }

  /* ----- mypage reception ----- */
  #mypage-cont {
    /*margin: 0;*/
    padding-top: 0;
    padding-bottom: 0; }
    #mypage-cont #container {
      width: 100%;
      padding: 1rem 0; }
      #mypage-cont #container .contents {
        margin: 0 auto; }

  #mypage-cont #container .contents h3 {
    font-size: 1rem;
    width: 100%;
    margin: 0 30px; }

  #mypage-cont #container .contents .whbox.pcStyle {
    width: 100%;
    max-width: 640px;
    margin: .7rem auto 30px;
    padding: 2rem 1.5rem; }

  .reserve_detail_wrp .label {
    font-size: 0.8125rem;
    border-radius: 4px; }

  #mypage-cont #container .contents .whbox.pcStyle p.caution {
    text-align: center;
    font-size: 0.9375rem; }

  #mypage-cont #container .contents .whbox.pcStyle .btn.white.cancel {
    font-size: 0.875rem;
    width: 47%;
    max-width: 250px;
    height: 3.5em;
    margin: 0; }

  #mypage-cont #container .contents .whbox.pcStyle .btn.green {
    font-size: 0.875rem;
    width: 47%;
    max-width: 250px; }

  .btns_wrp {
    width: 100%;
    max-width: 550px;
    display: flex;
    justify-content: space-around;
    margin: 0 auto; }

  #mypage-cont #container .contents .whbox.pcStyle .btns_wrp .btn.green {
    margin: 0; }

  #mypage-cont .reserve_detail {
    margin: 2.5rem auto 1rem; }

  #mypage-cont .previous_list .reserve_detail {
    margin: 0 auto; }

  #mypage-cont .reserve_detail dt {
    width: 28%; }

  #mypage-cont .reserve_detail dd {
    width: 72%; }

  #mypage-cont .reserve_detail_wrp .label {
    position: absolute;
    top: 0;
    right: 0;
    left: auto; } }
  @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 1000px) {
    #mypage-cont .reserve_detail_wrp .label {
      top: -1.9em; } }
  @media only screen and (min-width: 661px) and (min-width: 661px) and (max-width: 768px) {
    #mypage-cont .reserve_detail_wrp .label {
      top: 0; } }

@media only screen and (min-width: 661px) {
  .reserve_detail .link_box a.shop_link,
  .reserve_detail .link_box a.place {
    font-size: 0.875rem; }

  .reserve_detail .shop_wrp {
    margin-top: 0; }

  /* login */
  .modal_box.login {
    display: block;
    text-align: center;
    min-width: auto;
    max-width: 450px;
    width: 450px;
    padding: 40px; }
    .modal_box.login .ic_shop {
      display: block;
      margin: 0 auto;
      width: 55px;
      margin-bottom: 8px; }
    .modal_box.login .btn_box {
      width: 100%;
      background: #f2f2f2;
      padding: 1.2em 1.5em 1.5em;
      margin: 1em 0; }
      .modal_box.login .btn_box p {
        font-size: 0.875rem; }
      .modal_box.login .btn_box a {
        display: flex;
        justify-content: center;
        align-items: center;
        width: 100%;
        background: #fff;
        line-height: 1;
        height: 3.5em;
        border-radius: 0.3125rem;
        margin-top: .4em; }
        .modal_box.login .btn_box a p {
          font-size: 0.9375rem;
          font-weight: bold; }
        .modal_box.login .btn_box a img {
          height: 18px;
          margin-right: .6em; }

  /* #myModal */
  .modal-content .btn {
    font-size: 1rem; }

  /* js連動 */
  ul.shop_list.together.no-trans li,
  ul.shop_list.together.no-trans li .shop_wrp,
  ul.shop_list.together.grid.no-trans li,
  .search-shop .btn_reserve.whbox dl dt a.no-trans,
  .search-shop #require_area .history ul.shop_list li .shop_wrp.no-trans {
    transition: none; }

  /* reserve multi Safari対策 */
  /*.reserve_tbl_wrap.selected_shop .sticky .corner {width: 76px;}
  .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead,
  .reserve_tbl_wrap.selected_shop .reserve_tbl.tbody  {padding-left: 77px;}
  .reserve_tbl_wrap.selected_shop .sticky .reserve_tbl.thead thead th {width: 185px;}
  .reserve_tbl_wrap.selected_shop .reserve_tbl.time tbody li {width: 75px;}*/ }
/* @include mq-up(tablet_pc) end */
