@charset "UTF-8";
/* ed.20240701 */

main section {
  margin-bottom: 25px;
  padding-bottom: 180px;
  background: url(../img/facilities/footer_facilities.jpg) no-repeat center bottom;
}
section section {
  background: none;
  padding-bottom: 0;
}

small {
  font-size: 100%;
}
small:before {
  content: "（";
}
small:after {
  content: "）";
}

figcaption {
  font-size: 87.5%;
}
figure img {
  padding: 14px;
  border: 1px solid #e2dfd4;
}

.annotation {
  font-size: 75%;
  margin: 0;
  padding: 0;
  list-style: none;
}
.annotation li:before {
  content: "※";
}

figcaption {
  margin-top: 5px;
}
#clubhouse,
#food {
  overflow: hidden;
}
.clubhouse {
  margin: 0 0 20px;
}
.clubhouse figure {
  float: right;
}
.clubhouse figure:first-child {
  float: left;
}
.reception {
  width: 306px;
}
.reception img {
  margin: 0 0 20px;
}
.reception figcaption {
  position: relative;
  top: -20px;
  font-weight: bold;
  font-size: 100%;
}
.locker {
  width: 981px;
  margin: 0 -21px 0 0;
}
.locker figure {
  float: left;
  margin: 0 21px 20px 0;
}

#restaurant,
#start {
  float: left;
  width: 460px;
  margin: 0 0 20px;
}
#meeting-room,
#practice-green {
  float: right;
  width: 460px;
  margin: 0 0 20px;
}
#restaurant strong,
#meeting-room strong {
  display: block;
  font-size: 114.3%;
  margin: 0 0 3px;
}
#restaurant figcaption {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#restaurant figcaption a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 0.5em;
  padding-left: 0.5em;
  border-radius: 4px;
  background: #44acac;
  color: #ffffff;
  text-decoration: none;
  font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
}

#food h4 {
  border-bottom: solid 2px #f0c6c8;
  padding: 0 0 2px 30px;
  color: #d25258;
  position: relative;
  line-height: 24px;
}
#food h4:before {
  display: block;
  width: 24px;
  height: 24px;
  content: "";
  background: #d25258;
  position: absolute;
  top: 0;
  left: 0;
}
#food section {
  width: 1000px;
  margin: 0 -40px 0 0;
}
#food figure {
  float: left;
  width: 460px;
  margin: 0 40px 20px 0;
}
#food .small {
  width: 306px;
}
.other-menu {
  border: 4px solid #e2dfd4;
  background: url(../img/facilities/arabesque_left-top.gif) no-repeat left top, url(../img/facilities/arabesque_right-top.gif) no-repeat right top, #f5f3eb;
  padding: 0 40px 20px;
  margin: 0 0 10px;
  float: left;
  font-size: 81.3%;
}
#weekday .other-menu {
  width: 586px;
  padding-left: 10px;
  padding-right: 10px;
}
#holiday .other-menu {
  width: 872px;
}
#limited-menu .other-menu {
  width: 382px;
  float: left;
  margin: 0 20px 10px 0;
  padding-bottom: 0;
}
.other-menu dl {
  font-size: 112.5%;
  margin: 0;
}
.other-menu dt {
  line-height: 45px;
  text-align: center;
  font-size: 114.3%;
  font-weight: bold;
  border-bottom: 2px dotted #e2dfd4;
}
#weekday .other-menu dt {
  margin: 0 30px;
}
.other-menu dd {
  margin: 0;
}
.other-menu ul {
  padding-left: 20px;
  display: flex;
  flex-wrap: wrap;
}
.other-menu li {
  flex: 0 0 auto;
  margin-right: 50px;
}
.other-menu small {
  font-size: 87.5%;
}
.ps {
  margin: 0;
  padding: 5px;
  text-align: center;
  background: #e4e1be;
  border-radius: 5px;
}
.price {
  margin: 0 0 0 0.5em;
}
#food .annotation {
  margin: 0 0 40px;
}

#cafe figure img {
  float: left;
}
#cafe figcaption {
  float: right;
  width: 300px;
}

.restaurant {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: 320px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  border-radius: 6px;
  text-decoration: none;
  font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-size: 1.375rem;
  font-style: normal;
  background: #44acac url(../img/common/pict_restaurant.svg) no-repeat;
  background-size: 34px 34px;
  background-position: 12px 51%;
}
.restaurant::before,
.restaurant::after {
  content: "";
  display: block;
  width: 12px;
  height: 4px;
  position: absolute;
  top: 50%;
  right: 12px;
  background: currentColor;
}
.restaurant::before {
  transform: translateY(calc(-50% + 1px)) rotate(45deg);
  transform-origin: right bottom;
}
.restaurant::after {
  transform: translateY(calc(-50% - 1px)) rotate(-45deg);
  transform-origin: right top;
}
