* {
  margin: 0;
  padding: 0;
}

ul,
li {
  list-style-type: none;
  margin: 0;
  padding: 0;
}

/*snsBtn
  -----------------------------------------------------*/
#sns_button {
  width: 90%;
  max-width: 636px;
  height: 25px;
  margin: 20px auto 10px;
  overflow: hidden;
  _zoom: 1;
}
#sns_button li {
  margin-right: 10px;
  float: right;
}

/*--- clearfix ---*/
.cf:after,
#wrap ul.tab:after {
  content: "";
  display: block;
  clear: both;
}

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

#wrap ul,
#wrap li {
  list-style-type: none;
}

#wrap {
  width: 100%;
  margin: 3% 0;
  box-sizing: border-box;
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic Pro", Meiryo, Osaka,
    "MS PGothic", "sans-serif";
}
#wrap img {
  width: 100%;
}
/*#wrap a {
    display: block;
  }
  */

#wrap section {
  margin-bottom: 4.8cqw;
}
#wrap h1 {
  width: 87%;
  margin: 8cqw auto 0;
}
#wrap .contents {
  width: 87%;
  margin: 8cqw auto 0;
}
#wrap .contents section {
  position: relative;
}
#wrap h2 {
  position: relative;
  display: grid;
  align-items: center;
  grid-template-columns: auto 3cqw;
  gap: 8px;
  margin: 0px;
  padding: 1.2cqw 3cqw;
  background-color: #34b3d0;
  font-size: 4cqw;
  font-weight: 300;
  font-style: normal;
  text-align: left;
  letter-spacing: 0.14em;
  color: #ffffff;
}
#wrap #opMenu h2:after {
  content: "";
  display: block;
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  width: 3cqw;
  height: 3cqw;
  margin: 0 0 6px 0;
  transform: rotate(45deg);
}
#wrap #opMenu h2.open:after {
  content: "";
  display: block;
  border-right: 1px solid #ffffff;
  border-bottom: 1px solid #ffffff;
  width: 3cqw;
  height: 3cqw;
  margin: 6px 0 0 0;
  transform: rotate(-135deg);
}
#wrap p,
#wrap li {
  font-size: 3cqw;
  /*line-height: 2;*/
  letter-spacing: 0.04em;
  font-weight: 200;
}
#wrap .no_accordion {
  padding: 4.6cqw 0 4.1cqw 5px;
}
#wrap .accordion {
  display: none;
  margin: 4.6cqw 0 8.1cqw 5px;
}

/*table*/
#wrap table {
  margin-top: 3.1cqw;
  width: 100%;
  border-collapse: collapse;
  font-size: 2cqw;
}
#wrap table thead {
  background-color: #34b3d0;
  color: #fff;
}
#wrap table th,
#wrap td {
  padding: 1px;
  border: 1px solid #000;
}
#wrap table thead th {
  width: 50px;
  text-align: center;
  font-weight: bold;
}
#wrap table tbody th {
  padding: 2px 0 2px 5px;
  background-color: #afeeee;
}
#wrap table tbody td {
  text-align: center;
  line-height: 1.4;
}
#wrap table tbody .closed {
  background-color: #dcdcdc;
}
#wrap table tbody .short {
  background-color: #fafad2;
}
#wrap table.table_sales thead th {
  width: 25px;
}
#wrap table.table_sales thead td:first-of-type {
  width: 200px;
}
#wrap table.table_sales tbody th {
  height: 50px;
}
#wrap table.t_reserve thead th {
  height: 20px;
}
/*end table*/

#wrap .row {
  display: flex;
  align-items: center;
}
#wrap .row_center {
  align-items: stretch;
  margin-top: 3cqw;
}
#wrap .row_center .row {
  width: 34%;
  background-color: #e2e2e2;
  text-align: center;
  color: #2a2a2a;
}
#wrap .row_center > p {
  border: 2px solid #e2e2e2;
  padding: 1cqw 2cqw 1cqw 4cqw;
  width: 66%;
  line-height: 1.8;
  font-size: 1.6cqw;
}
#wrap .row_center .row p {
  margin: 0 auto;
  padding: 1cqw;
  text-align: left;
  font-size: 2cqw;
  line-height: 1.5;
}
#wrap .row_center p span {
  font-size: 2.6cqw;
  line-height: 1.3;
  color: #34b3d0;
}
#wrap .row_center p span a {
  display: inline-block;
  font-size: 2.6cqw;
  line-height: 1.3;
  text-decoration: none;
  color: #34b3d0;
}
#wrap ul {
  margin-top: 3.1cqw;
}
#wrap ul li {
  margin-left: 1em;
  text-indent: -1em;
}

#wrap .end {
  position: relative;
  display: block;
  margin: 11cqw auto 6cqw;
  width: 86%;
  text-align: center;
}
#wrap .end:before {
  content: "";
  position: absolute;
  top: -36%;
  left: 50%;
  transform: translateX(-50%);
  display: block;
  width: 50%;
  height: 1px;
  background-color: #000000;
}
