 @charset "utf-8";

table {
  width: 100%;
  table-layout: fixed;
  word-wrap: break-word;
}

 /* ハンバーガーメニュー */
 .hamburger {
   display: none;
 }

 .sp_menu {
   display: none;
 }

 /* メインビジュアル*/
 .heroimg::after {
   content: "";
   position: absolute;
   bottom: 2px;
   left: 50%;
   transform: translateX(-50%);
   width: 961px;
   height: 2px;
   background: url(../img/common/topimgbg.png) no-repeat center bottom;
   z-index: 1;
   pointer-events: none;
   z-index: 100;
 }

.inner {
	background: none;
	height: 552px;
	left: 50%;
	margin-left: -700px;
	position: absolute;
	width: 1400px;
}

 /* バナースライダー */
 .slidebnrwrap {
   opacity: 0;
   animation: fadeIn 3s forwards;
 }

 @keyframes fadeIn {
   to {
     opacity: 1;
   }
 }

 .slidebnrbox.swiper {
   padding: 20px 40px 20px 30px;
   z-index: 500;
 }

 #carousel.swiper-wrapper {
   display: flex;
   flex-direction: row;
 }

 .swiper-slide {
   flex-shrink: 0;
 }

 .slidebnrwrap .prev {
   background: url(../img/home/bnr-prev.png);
   cursor: pointer;
   height: 108px;
   width: 19px;
   position: absolute;
   left: 0;
   top: 50%;
   margin-top: -54px;
   z-index: 600;
 }

 .slidebnrwrap .prev:after {
   display: none;
 }

 .slidebnrwrap .prev:hover {
   background-position: 0 -108px;
 }

 .slidebnrwrap .next {
   background: url(../img/home/bnr-next.png);
   cursor: pointer;
   height: 108px;
   width: 19px;
   position: absolute;
   right: 0;
   top: 50%;
   margin-top: -54px;
   z-index: 600;
 }

 .slidebnrwrap .next:after {
   display: none;
 }

 .slidebnrwrap .next:hover {
   background-position: 0 -108px;
 }

 /* 区切り線非表示 */
 .gnav_hr {
   display: none;
 }

 /* 天気予報 */
 .weather-forecast {
   text-align: center;
   padding: 40px 0 0;
 }

 /* 枠 */
 .accordion-icon {
   display: none;
   /* PCでは非表示 */
 }

 .accordion-content {
   transition: max-height 0.4s ease, opacity 0.3s ease;
 }

 /* フッター */
 .groupcourse-wrapper {
   position: relative;
   margin: 0 20px;
   width: 900px;
   letter-spacing: -0.4em;
   box-sizing: border-box;
 }

 #groupcourse {
   position: relative;
   /*	background: #f6f6f6;*/
   background-color: #212121;
   box-sizing: border-box;
   letter-spacing: -0.4em;
   margin: 0;
   padding: 20px 10px;
   width: 900px;
   border: 1px solid #fff;
 }

 #groupcourse img {
   width: 100%;
   height: auto;
   margin: 0;
 }

 .groupcourse-wrapper .prev2:after,
 .groupcourse-wrapper .next2:after {
   content: '' !important;
 }

 .groupcourse-wrapper .prev2:after {
   background: url(../img/common/gcourse-prev.png) 0 0;
   cursor: pointer;
   height: 40px;
   width: 20px;
   position: absolute;
   left: -10px;
   top: 50%;
   transform: translate(-50%, -50%);
 }

 .groupcourse-wrapper .prev2:hover:after {
   background-position: -20px 0;
 }

 .groupcourse-wrapper .next2:after {
   background: url(../img/common/gcourse-next.png) 0 0;
   cursor: pointer;
   height: 40px;
   width: 20px;
   position: absolute;
   right: -30px;
   top: 50%;
   transform: translate(-50%, -50%);
 }

 .groupcourse-wrapper .next2:hover:after {
   background-position: -20px 0;
 }

 /* スマホ固定ボタン */
 .sp-fixed-buttons {
   display: none;
   position: fixed;
   bottom: 0;
   left: 0;
   width: 100%;
   z-index: 999;
   transform: translateY(100%);
   transition: transform 0.3s ease-in-out;
 }

 .sp-fixed-buttons.visible {
   transform: translateY(0);
 }

 /* 下層ぺージ */
 /* 予約 */
 ol.step {
   counter-reset: item;
   list-style-type: none;
   line-height: 1.7;
   padding: 0;
 }

 ol.step li {
   /* text-indent: -2.4em; */
   padding-left: 2.4em;
   border-bottom: 1px solid #ccc;
   padding-top: 0.5rem;
   padding-bottom: 0.5rem;
 }

 ol.step li:last-of-type {
   border-bottom: none;
 }

 ol.step li::before {
   counter-increment: item;
   content: counter(item)'.';
   padding-right: .7em;
   font-size: 1.5em;
   font-weight: bold;
   color: #5c4772;
 }

 .pointcon li {
   list-style-type: none;
   margin: 0;
 }

   /* お問い合わせ */
   .inquiry_box>p {
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   .inquiry_text>p {
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   div.mfp_buttons button {
     padding: 0.5rem 1rem;
     font-size: 15px;
   }

   #inquiry .inquiry_box .table1 td {
     padding: 1rem;
   }

   #inquiry .table1 td input {
     width: 100%!important;
     box-sizing: border-box;
    border: solid 1px #999;
    border-radius: 3px;
    box-shadow: none;
    padding: 0.5rem 1rem;
    margin: 0;
   }

   #inquiry .table1 td input:nth-of-type(2) {
     margin-top: 0.5rem;
   }

   #inquiry .box_pri {
     padding: 1rem;
   }

   #inquiry .privacy_policy {
     padding: 0.5rem 0 0;
   }

   #inquiry .privacy_policy p {
     padding: 0.5rem 0 0;
   }

   form#mailformpro label.mfp_not_checked{
    border: none;
   }

   .mfp_element_all{
        max-width: 100%;
   }

   .box_con02 form table tr textarea{
     width: 100%!important;
     margin: 0;
   }

 @media screen and (max-width: 768px) {

   /*--- Reset ---*/
   body {
     /* background: #fff;
     color: #333; */
     font-size: 16px;
     /* height: auto; */
   }

   h2 {
     font-size: 1.8em;
   }

   /*--- Header ---*/
   header {
     /* background: url(../img/common/headerbg.png); */
     height: auto;
     width: 100%;
     /* top: 0; */
   }

   .headrtop {
     height: auto;
   }

   header h1 {
     margin: 0;
   }

   header .logo a {
     /* background: url(../img/common/logo.png); */
     margin-top: 0px;
     overflow: hidden;
     text-indent: 100%;
     width: auto;
     width: 100%;
     height: 100%;
     display: block;
     background-repeat: no-repeat;
     background-size: contain;
     background-position: center center;
     max-width: 275px;
   }

   /* header .logo a:hover {
     -moz-opacity: 0.6;
     filter: alpha(opacity=60);
     opacity: 0.6;
   } */

   /* ハンバーガーメニュー */

   .grid_header {
     display: flex;
     justify-content: space-between;
     align-items: center;
     /* width: 100%; */
     padding: 0.5rem 1rem;
     align-items: stretch;
     /* height: 90px; */
   }

   .hamburger {
     display: block;
     width: 48px;
     height: 48px;
     position: relative;
     cursor: pointer;
     background-color: #493759;
     transition: background-color 0.3s ease;
     z-index: 1100;
   }

   .hamburger:hover {
     background-color: #5c4772;
   }

   .hamburger span {
     display: block;
     width: 32px;
     height: 3px;
     background: #fff;
     position: absolute;
     left: 8px;
     left: 50%;
     transform: translateX(-50%);
     transition: all 0.4s cubic-bezier(0.3, 0, 0.2, 1);
   }

   .hamburger span:nth-child(1) {
     top: 8px;
   }

   .hamburger span:nth-child(2) {
     top: 20px;
   }

   .hamburger span:nth-child(3) {
     top: 32px;
   }

   /* 開いたときの変化 */
   .hamburger.active span:nth-child(1) {
     transform: translateX(-50%) rotate(45deg);
     top: 50%;
   }

   .hamburger.active span:nth-child(2) {
     opacity: 0;
     transform: translateX(-50%) scale(0);
   }

   .hamburger.active span:nth-child(3) {
     transform: translateX(-50%) rotate(-45deg);
     top: 50%;
   }

   /* メニュー */
   .sp_menu {
     position: fixed;
     top: 0;
     right: -100%;
     width: 100%;
     /* メニュー自体が画面全体に広がり、内部でスクロールさせる */
     height: 100vh;
     max-height: 100vh;
     overflow-y: auto;
     -webkit-overflow-scrolling: touch;
     background: #3a284a;
     display: flex;
     align-items: center;
     justify-content: center;
     transition: right 0.6s cubic-bezier(0.4, 0, 0.2, 1),
       opacity 0.6s ease;
     opacity: 0;
     z-index: 1000;
   }

   .sp_menu ul {
     list-style: none;
     padding: 0;
     text-align: center;
     width: 100%;
     margin: 2.4rem 0;
   }

   .sp_menu li {
     width: 60%;
     border-bottom: #fff 1px solid;
     margin: 0 auto;
   }

   .sp_menu li:last-child {
     border: none;
   }

   .sp_menu a {
     padding: 1.2rem 0;
     color: #fff;
     text-decoration: none;
     transition: color 0.3s;
     display: inline-block;
     width: 100%;
     height: 100%;
   }

   .sp_menu span {
     font-family: "Georgia", "Times New Roman", Times, serif;
   }

   .sp_menu a:hover {
     color: #d6b6ff;
   }

   /* 表示時 */
   .sp_menu.active {
     right: 0;
     opacity: 1;
   }

   /* ボディを固定してバックグラウンドのスクロールを防止 */
   .body-fixed {
     position: fixed;
     width: 100%;
     overflow: hidden;
   }


   /* オーバーレイ */
   /* .overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.6s ease, visibility 0.6s;
  z-index: 998;
}

.overlay.active {
  opacity: 1;
  visibility: visible;
} */


   /* PCメニュー非表示 */
   .subnav,
   .hd-rsrv,
   .pc-gnav {
     display: none;
   }

   /* header .hd-rsrv {
     position: fixed;
     text-align: right;
     z-index: 1000;
   }

   header .hd-rsrv .shadow {
     -moz-border-radius: ;
     -moz-box-shadow: rgba(204, 204, 204, 0.64) 0px 0px 2px 2px;
     -webkit-border-radius: ;
     -webkit-box-shadow: rgba(204, 204, 204, 0.64) 0px 0px 2px 2px;
     border-radius: ;
     box-shadow: rgba(204, 204, 204, 0.64) 0px 0px 2px 2px;
     width: 200px;
   }

   header .gnav {
     height: 44px;
   }

   header .gnav ul,
   header .gnav li {
     margin: 0;
     padding: 0;
   }

   header .gnav li {
     display: inline-block;
     float: left;
     overflow: hidden;
     position: relative;
     text-indent: 100%;
     white-space: nowrap;
   }

   header .gnav li.home a {
     background: url(../img/common/gnav.png) no-repeat 0 0;
     display: block;
     height: 44px;
     width: 134px;
   }

   header .gnav li.home a:hover {
     background-position: 0 -44px;
   }

   header .gnav li.news a {
     background: url(../img/common/gnav.png) no-repeat -134px 0;
     display: block;
     height: 44px;
     width: 134px;
   }

   header .gnav li.news a:hover {
     background-position: -134px -44px;
   }

   header .gnav li.rsrv a {
     background: url(../img/common/gnav.png) no-repeat -268px 0;
     display: block;
     height: 44px;
     width: 134px;
   }

   header .gnav li.rsrv a:hover {
     background-position: -268px -44px;
   }

   header .gnav li.course a {
     background: url(../img/common/gnav.png) no-repeat -402px 0;
     display: block;
     height: 44px;
     width: 134px;
   }

   header .gnav li.course a:hover {
     background-position: -402px -44px;
   }

   header .gnav li.facility a {
     background: url(../img/common/gnav.png) no-repeat -536px 0;
     display: block;
     height: 44px;
     width: 134px;
   }

   header .gnav li.facility a:hover {
     background-position: -536px -44px;
   }

   header .gnav li.restaurant a {
     background: url(../img/common/gnav.png) no-repeat -670px 0;
     display: block;
     height: 44px;
     width: 134px;
   }

   header .gnav li.restaurant a:hover {
     background-position: -670px -44px;
   }

   header .gnav li.access a {
     background: url(../img/common/gnav.png) no-repeat -804px 0;
     display: block;
     height: 44px;
     width: 136px;
   }

   header .gnav li.access a:hover {
     background-position: -804px -44px;
   }


   header .subnav {
     margin-top: 10px;
     text-align: right;
   }

   header .subnav li {
     display: inline;
   }

   header .subnav li:after {
     content: "|";
     margin: 0 5px;
   }

   header .subnav li:last-child:after {
     content: "";
   } */

   /*--- Common ---*/

   p {
     /* overflow: hidden;
     text-align: center; */
     margin: 0 auto;
   }

   /* a {
     color: #333;
     text-decoration: underline;
   }

   a:hover {
     color: #333;
     text-decoration: none;
   }

   a:hover img {
     -ms-filter: "alpha(opacity=8)";
     background: #fff;
     filter: alpha(opacity=80);
     opacity: 0.8;
   }

   .arrow {
     margin: 0 5px 0 0;
   }

   .aright {
     text-align: right;
   }

   .p10 {
     padding: 10px;
   }

   .p10-2 {
     padding: 0 10px;
   } */

   /*--- Top Img Slide ---*/

   .heroimg {
     background: url(../img/home/slideboxbg.png) repeat-x 0 0;
     margin: 0 auto;
     overflow: hidden;
     position: relative;
     width: 100%;
     /* height: auto; */
   }

   .inner {
      position: relative;
    left: auto;
    margin-left: auto;
    width: 100%;
    height: 100%;
   }

   #slide {
     width: 100%;
     height: 100%;
   }

   #slide .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

   /* .heroimg::after {
     display: none;
   } */

   /* #slide ul li img[src*="slide-logo"],
   #slide ul li img[src*="slidetxt"] {
     margin: 0 auto;
     position: relative !important;
     top: 50% !important;
     transform: translateY(-50%);
   } */

   /* 動画 */
   /* .maingraphic{
  position: relative;
  height: 100%;
  text-align: center;
}
.top_video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 100%;
}
.maingraphic .video_caption{
  z-index: 1000;
  position: absolute;
  top: 3%;
  right: 3%;
  color: #eee;
  text-shadow: #121A24 1px 1px 0;
font-size: 12pt;
} */

   /*--- Slide Banner ---*/
   .gnav_hr {
     display: block;
     margin: 0.5rem 0;
     width: 100%;
   }

   .gnav_hr img {
     width: 100%;
     height: 2px;
   }

   .slidebnrwrap {
     /* margin: 0;
     overflow: visible;
     position: relative; */
     width: 100%;
     z-index: 100;
   }

   .slidebnrbox.swiper {
     /* -moz-box-sizing: border-box;
     background: url(../img/home/bnrboxbg.png) repeat;
     box-sizing: padding-box;
     position: relative; */
     /* padding: 20px 40px 20px 30px; */
     background-color: #212121;
     margin: 0 auto;
     padding: 2rem 1rem 1rem;
     z-index: 1;
     overflow: visible;
     height: auto;
   }

   #carousel.swiper-wrapper {
     /* display: inline;
     letter-spacing: -0.4em; */
     display: flex;
     flex-direction: row;
     width: 100%;
     height: auto;
     flex-wrap: wrap;
     justify-content: space-between;
   }

   #carousel.swiper-wrapper .swiper-slide {
     width: 48% !important;
     margin-right: 0 !important;
   }

   #carousel.swiper-wrapper .swiper-slide a {
     display: block;
     width: 100%;
     margin: 0 auto;
     margin-bottom: 1rem;
     float: none;
   }

   #carousel.swiper-wrapper .swiper-slide a img {
     width: 100%;
     height: auto;
     margin: 0;
     padding: 0;
   }

   .sp_none {
     display: none;
   }

   /* 最新情報、料金・オンライン予約、クラブ概要非表示 */
   .swiper-slide.sp_none {
     display: none;
   }

   /* 前へ・次へボタンを非表示 */
   .slidebnrwrap .prev {
     display: none;
   }

   .slidebnrwrap .next {
     display: none;
   }

   /* 天気予報 */
   .weather-forecast {
     /* text-align: center; */
     padding: 2rem 1rem 0;
   }

   .weather-forecast p {
     overflow: visible;
   }

   .weather-forecast a {
     display: block;
     width: 100%;
     height: 100%;
   }

   .weather-forecast img {
     width: 100%;
     height: auto;
     display: block;
     max-width: 480px;
     margin: 0 auto;
   }

   /* グリッド */

   body {
     /* min-width: 960px; */
     width: 100%;
     min-width: 100%;
   }

   /* Container
------------------------------------------------------
index.html
.main-container_16
｜-.grid_12（1番目）
｜    ｜--.grid_8.omega（2番目）
｜    ｜--.grid_4.alpha（3番目）
｜-.grid_4.side（4番目）
｜-.bnrs（5番目）

下層
.main-container_16
｜-.grid_12（1番目）
｜-.grid_4.side（2番目）
----------------------------------------------*/

   .container_16 {
     margin-left: auto;
     margin-right: auto;
     /* width: 960px; */
     width: 100%;
   }

   .main-container_16 {
     display: flex;
     flex-direction: column;
   }

   .grid_12 {
     display: flex;
     flex-direction: column;
     order: 1;
     /* 1番目に表示 */
   }

   .grid_8.omega {
     order: 1;
     /* grid_12の中で1番目 */
   }

   .grid_4.alpha {
     order: 2;
     /* grid_12の中で2番目 */
   }

   .grid_4.side {
     order: 2;
     /* container_16の中で2番目に表示 */
   }

   .bnrs {
     order: 3;
     /* container_16の中で3番目に表示 */
   }

   /*--- Main Contents ---*/

   .contents {
     /* margin: 40px auto; */
     box-sizing: border-box;
     width: 100%;
     margin: 0 auto;
     padding: 2rem 1rem;
   }

   /* Grid >> Global
----------------------------------------------------------------------------------------------------*/
   .grid_1,
   .grid_2,
   .grid_3,
   .grid_4,
   .grid_5,
   .grid_6,
   .grid_7,
   .grid_8,
   .grid_9,
   .grid_10,
   .grid_11,
   .grid_12,
   .grid_13,
   .grid_14,
   .grid_15,
   .grid_16 {
     /* display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px; */
     margin: 0 auto;
     /* height: 100%; */
   }

   /* Grid >> 16 Columns
----------------------------------------------------------------------------------------------------*/
   .container_16 .grid_1,
   .container_16 .grid_2,
   .container_16 .grid_3,
   .container_16 .grid_4,
   .container_16 .grid_5,
   .container_16 .grid_6,
   .container_16 .grid_7,
   .container_16 .grid_8,
   .container_16 .grid_9,
   .container_16 .grid_10,
   .container_16 .grid_11,
   .container_16 .grid_12,
   .container_16 .grid_13,
   .container_16 .grid_14,
   .container_16 .grid_15,
   .container_16 .grid_16 {
     width: 100%;
     /* height: 100%; */
     margin: 0 auto;
     box-sizing: border-box;
   }

   /* ----------------------------------------------------------------------------------------------------*/
   /* 1番目おしらせ枠 */
   /* .contents .omega {}

   .osirase_waku {
     width: 100%;
   }

   .waku {
     padding: 10px;
     border: #9403C3 solid;
     margin-bottom: 10px;
   }

   .waku p {
     margin-bottom: 8px;
   }

      .waku p.who {
     text-align: right;
   }
   */

   #osirase_waku {
     max-width: 480px;
     margin: 0 auto;
   }

   .waku p.title {
     cursor: pointer;
     position: relative;
     padding-right: 3rem;
     min-height: 3rem;
     display: flex;
     justify-content: center;
     align-items: center;
     user-select: none;
     margin: 0;
   }

   .accordion-icon {
     display: inline;
     position: absolute;
     right: 0.5rem;
     top: 50%;
     transform: translateY(-50%);
     font-size: 1.8em;
     line-height: 1;
     transition: transform 0.3s ease;
     color: #3a284a;
   }

   .accordion-content {
     max-height: 0;
     opacity: 0;
     overflow: hidden;
   }

   .accordion-inner {
     padding-top: 0.5em;
   }

   .accordion-content.open {
     max-height: 10000px;
     opacity: 1;
   }



   /* 2番目スタッフブログ 最新情報*/
   .contents .news {
     max-width: 480px;
     margin: 0 auto;
     margin-bottom: 2rem;
     margin-top: 2rem;
   }

   /* .contents .news h2 img {
     width: 100%;
     height: auto;
   } */

   .contents .staffblog h3,
   .contents .news h3 {
     font-size: 16px;
     font-weight: normal;
     text-align: left;

   }

   /* .contents .staffblog h2,
   .contents .news h2 {
     font-size: 16px;
     font-weight: normal;
     text-align: left;
   }

   .contents .staffblog dt,
   .contents .news dt {
     color: #69734b;
     margin-top: 5px;
   } */

   .contents .news dt {
     clear: left;
     float: left;
     /* width: 75px; */
     width: 100%;
   }

   .contents .news dd h3.info {
     background: url(../img/home/news-tag-info.png) no-repeat 0 5px;
     /* margin-top: 5px; */
   }

   .contents .news dd h3.compe {
     background: url(../img/home/news-tag-compe.png) no-repeat no-repeat 0 5px;
     /* margin-top: 5px; */
   }

   .contents .news dd h3.offer {
     background: url(../img/home/news-tag-offer.png) no-repeat no-repeat 0 5px;
     /* margin-top: 5px; */
   }

   /*
   .contents .news dd h2.new:after {
     background: #ffcc00;
     color: #fff;
     content: "New";
     font-size: 10px;
     font-weight: bold;
     margin-left: 10px;
     padding: 1px 5px;
   }
 */

   .contents .news dd {
     /* float: left; */
     /* width: 385px; */
     width: 100%;
   }

   /* .contents .news .news-list,
   .contents .staffblog .blog-link {
     display: inline-block;
     float: right;
     margin-top: 20px;
     overflow: hidden;
     position: relative;
     text-indent: 100%;
     white-space: nowrap;
   }

   .contents .news .news-list a {
     background: url(../img/home/news-btn.png) no-repeat 0 0;
     display: block;
     height: 18px;
     width: 126px;
   }

   .contents .news .news-list a:hover {
     background: url(../img/home/news-btn.png) no-repeat 0 -18px;
   } */
   .contents .staffblog {
     margin-bottom: 2rem;
     max-width: 480px;
     margin: 0 auto;

   }

   .contents .staffblog .blog-link p {
     text-indent: 0%;
   }

   .contents .staffblog .blog-link a {
     /* background: url(../img/home/blog-btn.png) no-repeat 0 0; */
     background: none;
     display: block;
     /* height: 18px;
     width: 126px; */
     height: auto;
     width: auto;
     border: none;
     padding: 0;
     margin: 0;
     font: inherit;
     cursor: pointer;
     outline: none;
     margin-left: auto;
     background-color: #493759;
     color: #fff;
     padding: 0.2em 0.5em;
     border-radius: 5px;
     text-decoration: none;
   }

   .contents .staffblog .blog-link a:hover,
   .contents .staffblog .blog-link a:active {
     background-position: 0 0 !important;
     background: #493759;
   }

   /* 東武沿線おでかけ情報 (お天気非表示)*/
   .grid_4.alpha .bn {
     box-sizing: border-box;
     width: 100%;
     max-width: 480px;
     padding: 2rem 10px;
     margin: 0 auto;

   }

   .grid_4.alpha .bn img {
     width: 100%;
     height: auto;
   }

   /*---3番目 Side ---*/
   .side .rsrvbox {
     /* background: #f6f6f6;
     border: 1px solid #69734b;
     margin: auto; */
     box-sizing: border-box;
     /* width: 100%; */
     margin: 0 auto;
     padding: 10px;
     font-size: 16px;
     box-sizing: border-box;
     width: 100%;
     max-width: 480px;
     margin: 1rem auto;
   }

   .side .rsrvbox .title {
     padding-right: 0;
     width: 100%;
     height: 100%;
     display: block;
     cursor: pointer;
     position: relative;
     min-height: 3rem;
     display: flex;
     justify-content: center;
     align-items: center;
     user-select: none;
     margin: 0;
     background: linear-gradient(0deg, rgb(49 36 63) 0%, rgb(141 121 160) 100%);
   }

   .side .rsrvbox h2 img {
     width: 100%;
     height: 100%;
     object-fit: contain;
   }

   .side .rsrvbox .accordion-icon {
     right: 10px;
     top: 50%;
     transform: translateY(-50%);
     font-size: 1.8rem;
     color: #fff;
   }

   .side .rsrvbox .accordion-inner {
     padding: 0;
   }

   .p10 {
     margin: 0 auto;
     text-align: center;
     padding: 1rem 0.5rem 0;
   }

   .side .rsrvbox .accordion-inner img {
     width: 100%;
     height: auto;
     max-width: 300px;
   }

   .side .rsrvbox .accordion-inner img.arrow {
     width: 7px;
     height: 7px;
   }

   .side .rsrvbox .rsrvbtn,
   .side .rsrvbox .rgstbtn {
     /* display: inline-block;
     overflow: hidden;
     position: relative;
     text-indent: 100%;
     white-space: nowrap; */
     margin-left: 0;
     width: 100%;
     height: auto;
     box-sizing: border-box;
     padding: 1rem 0.5rem;
     text-align: center;
   }

   .side .rsrvbox .rsrvbtn a {
     /* background: url(../img/common/side-rsrv-btn.png) 0 0;*/
     display: block;
     width: 100%;
     height: 100%;
   }

   /* .side .rsrvbox .rsrvbtn a:hover {
     background: url(../img/common/side-rsrv-btn.png) 0 -30px;
   } */

   .side .rsrvbox .rgstbtn a {
     /* background: url(../img/common/side-rgst-btn.png) 0 0;
     display: block; */
     width: 100%;
     height: 100%;
   }

   /* .side .rsrvbox .rgstbtn a:hover {
     background: url(../img/common/side-rgst-btn.png) 0 -30px;
   } */

   .side .courseinfo {
     /* background: url(../img/common/courseinfobg.png) repeat;
     border: 1px solid #69734b; */
     /* margin: 20px 0; */
     padding: 10px;
     box-sizing: border-box;
     width: 100%;
     max-width: 480px;
     margin: 1rem auto;
     font-size: 16px;
     box-sizing: border-box;
   }

   .side .courseinfo .courseinner {
     background: #f6f6f6;
     padding: 10px;
   }

   .side .courseinfo .courseinner h2 {
     /* clear: both; */
     height: auto;

   }

   /*.side .courseinfo .courseinner .detailbtn {
     clear: both;
     width: 100%;
     height: auto;
     margin: 10px 5px;
   } */

   .side .courseinfo h2 img {
     width: 100%;
     height: 100%;
   }

   .side .courseinfo .title {
     padding-right: 0;
     cursor: pointer;
     position: relative;
     padding-right: 3rem;
     min-height: 3rem;
     display: flex;
     justify-content: center;
     align-items: center;
     user-select: none;
     margin: 0;
   }

   .side .courseinfo .accordion-icon {
     right: 0%;
     top: 50%;
     transform: translateY(-50%);
     font-size: 2.1rem;
     color: #3a284a;
     font-weight: bold;
   }

   .side .courseinfo .accordion-inner {
     padding: 0;
   }

   /* hr {
     margin: 10px 0;
   } */

   /* 4番目 友の会ボタン */
   .bnrs {
     margin: 0 auto;
     margin-top: 1rem;
     width: 100%;
   }

   .bnrs img {
     width: 100%;
     height: auto;
   }


   /*--- Footer ---*/
   .topbtn {
     border-bottom: none;
     margin: 0;
   }

   .topbtn img {
     width: 7%;
     max-width: 42px;
     height: auto;
     margin-bottom: 0;
   }

   footer {
     box-sizing: border-box;
     width: 100%;
     margin: 0 auto;
     padding: 2rem 1rem 0;
   }

   footer img.gtitle {
     width: auto;
     height: auto;
     margin: 0;
     margin-bottom: 1rem;
     margin-left: 10px;
   }

   .groupcourse-wrapper {
     /* position: relative; */
     margin: 0;
     width: 100%;
   }

   /* .swiper {
      width: 100%;
      padding: 20px 0;
    } */

   #groupcourse {
     /* position: relative; */
     /*	background: #f6f6f6;*/
     /* background-color: #212121;
     box-sizing: border-box;
     letter-spacing: -0.4em;
     border: 1px solid #fff; */
     padding: 1rem;
     margin: 0 10px;
     width: calc(100% - 20px);
     overflow: hidden;
   }

   #groupcourse ul, #group ul {
     margin: 0;
     padding: 0;
     /* overflow: hidden; */
   }

   /* #groupcourse ul li, #group ul li {
     display: block;
     float: left;
     list-style: none;
   } */

   /* #groupcourse img {
     height: auto;
     margin: 0;
     width: 100%;
     height: auto;
     display: block;
   } */

   /* .groupcourse-wrapper .prev2 a {
     background: url(../img/common/gcourse-prev.png) 0 0;
     cursor: pointer;
     height: 40px;
     width: 20px;
     position: absolute;
     margin: 0;
     top: 50%;
     transform: translateY(-50%);
     left: -10px;
   }

   .groupcourse-wrapper .prev2 a:hover {
     background-position: -20px 0;
   }

   .groupcourse-wrapper .next2 a {
     background: url(../img/common/gcourse-next.png) 0 0;
     cursor: pointer;
     height: 40px;
     width: 20px;
     position: absolute;
     margin: 0;
     top: 50%;
     transform: translateY(-50%);
     right: -10px;
   }

   .groupcourse-wrapper .next2 a:hover {
     background-position: -20px 0;
   } */


   .groupcourse-wrapper .prev2:after {
     /* background: url(../img/common/gcourse-prev.png) 0 0;
   cursor: pointer;
   height: 40px;
   width: 20px;
   position: absolute;
   left: -20px;
   top: 50%;
   transform: translate(-50%,-50%); */
     left: 0;
   }

   .groupcourse-wrapper .prev2:active:after {
     background-position: -20px 0;
   }

   .groupcourse-wrapper .next2:after {
     /* background: url(../img/common/gcourse-next.png) 0 0;
   cursor: pointer;
   height: 40px;
   width: 20px;
   position: absolute;
      right: -40px;
   top: 50%;
   transform: translate(-50%,-50%); */
     right: -20px;
   }

   .groupcourse-wrapper .next2:active:after {
     background-position: -20px 0;
   }

   footer .line {
     /* background: url(../img/common/footer-line.png) no-repeat;
     height: 1px;
     margin: 20px 0 20px -10px; */
     margin: 2rem 0 1rem;
     width: 100%;
   }

   /* #group {
   box-sizing: border-box;
     overflow: hidden;
     padding: 0;
    }*/

   #group ul {
     display: flex;
     flex-wrap: wrap;
     row-gap: 16px;
     column-gap: 2%;
   }

   #group li {
     /* margin-bottom: 10px;
     margin-right: 20px; */
     margin: 0;
     width: 49%;
   }

   /* #group li:nth-child(4), #group li:nth-child(8) {
     margin-right: 0;
   } */

   #group li img {
     width: 100%;
     height: auto;
     object-fit: cover;
   }


   #footernav {
     /* background: #000; */
     /*	background: #f6f6f6;*/
     /* border-top: 1px solid #fff;
     border-bottom: 1px solid #fff;*/
     padding: 2rem 0;
     margin: 1rem 0 0;
   }

   #footernav .container_16 {
     /* display: table; */
     display: flex;
     flex-wrap: wrap;
   }

   #footernav .grid_4 {
     /* background: url(../img/common/footernav-line.png) repeat-y top left;
     box-sizing: border-box;
     display: table-cell;
     min-height: 240px;
     padding: 0 20px; */
     min-width: auto;
     width: 50%;
     padding: 0 0 0 1rem;
   }

   #footernav .grid_4:last-child {
     /* background: url(../img/common/footernav-line.png) repeat-y top left, url(../img/common/footernav-line.png) repeat-y top right; */
     background: url(../img/common/footernav-line.png) repeat-y top left;
   }

   #footernav ul {
     margin: 0;
     padding: 0;
   }

   #footernav ul li {
     line-height: 1.8em;
     list-style-image: url(../img/common/arrow1.png);
     list-style-position: inside;
     margin-bottom: 1rem;
   }

   #footernav ul li ul li {
     list-style: none;
     margin-bottom: 0;
     margin-left: 1rem;
   }

   #footerbottom {
     /*	background: #493759;*/
     background: #000;
     height: auto;
   }

   #footerbottom .container_16 {
     /* color: #fff;
     display: table; */
     box-sizing: content-box;
     position: relative;
     padding: 0.5rem 0;
   }

   #footerbottom .grid_6 {
     display: table-cell;
     text-align: right;
   }

   #footerbottom .grid_6-2 {
     width: 100% !important;
   }

   #footerbottom .copyright {
     width: 100% !important;
     margin-bottom: 60px;
   }

   #footerbottom .copyright p {
     /* bottom: 0; */
     text-align: left;
     font-size: 14px;
     margin-top: 1rem;
   }

   /* #footernav a, #footerbottom a {
     color: #fff;
   } */


   /* スマホ固定ボタン */
   .sp-fixed-buttons {
     display: flex;
     gap: 1%;
     padding: 0 0.5rem;
     box-sizing: border-box;
     /* padding-bottom: env(safe-area-inset-bottom); */
   }

   .sp-fixed-button {
     flex: 1;
     text-align: center;
     padding: 0.7rem 0.5rem 0.5rem 0.5rem;
     display: flex;
     align-items: center;
     justify-content: center;
     width: 49.5%;
     text-decoration: none;
   }

   .sp-fixed-button.tel,
   .sp-fixed-button.reservation {
     background-color: #dac8e9f1;
     border-radius: 4px 4px 0 0;
     box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
   }

   .sp-fixed-button img {
     margin-right: 10px;
     width: 15%;
     height: auto;
     max-width: 30px;
   }

   .sp-fixed-button.tel img {
     width: 20%;
     max-width: 40px;
   }

   .sp-fixed-button a {
     text-decoration: none;
   }

   .sp-fixed-button span {
     font-weight: bold;
     font-size: 15px;
     color: #3a284a;
     text-align: left;
     line-height: 1.3;
     text-decoration: none;
     text-align: center;
     display: flex;
     flex-direction: column;
   }

   .sp-fixed-button span small {
     font-size: 12px;
   }

   /* 下層ぺージ */
   /* 総合 */
   .mt05 {
     margin-top: 0.5rem;
   }

   /* テーブル */

   .table-area {
     position: relative;
   }

   .maincontents .table-area:first-of-type {
     margin-bottom: 2rem;
   }

   .table-wrapper {
     position: relative;
     overflow-x: auto;
     overflow-y: hidden;
   }

   .table-scroll-fade {
     position: fixed;
     right: 0;
     width: 40px;
     background: linear-gradient(to left, rgb(255, 251, 251) 10%, rgba(255, 255, 255, 0) 70%);
     pointer-events: none;
     z-index: 99;
     transition: opacity 0.25s ease;
     opacity: 1;
     display: none;
   }

   .table-scroll-fade.hidden {
     opacity: 0;
     pointer-events: none;
   }

   .table1 {
     /* border-left: 1px solid #999;
	border-top: 1px solid #999;
	height: auto;
	padding: 0;
	text-align: center; */

     /* margin-top: 20px;
     width: 600px; */
     margin-top: 0;
     margin-bottom: 0;
     width: 100%;
   }

   /* .table1 tr {
	background: none repeat scroll 0 0 #fff;
} */

   /* .table1 th { */
   /* background: #f6f6f6;
	border-bottom: 1px solid #999;
	border-right: 1px solid #999;
	font-weight: bold;
	text-align: center; */
   /* padding: 0.5rem;
   } */

   /* .th2 {
	background: #e5e7dd!important;
} */

   .table1 td {
     /* border-bottom: 1px solid #999;
	border-right: 1px solid #999;
	padding: 10px 20px;
	text-align: center; */
     padding: 0.5rem;
   }

   /* .taleft th,.taleft td {
	text-align: left;
} */

   /* .table1 .bold {
	font-weight: bold;
} */

   /* .table1 {
	border-left: 1px solid #999;
	border-top: 1px solid #999;
	height: auto;
	margin: auto auto 20px;
	padding: 0;
	text-align: center;
} */

   .table1 td, .table1 th {
     /* padding: 10px 5px; */
     padding: 1rem 0.5rem;
     line-height: 1.5;
     vertical-align: middle;
     font-size: 15px;
   }

   /* .table1 tr {
	background: none repeat scroll 0 0 #fff;
}

.table1 th {
	background-color: #DEDBE1;
	border-bottom: 1px solid #999;
	border-right: 1px solid #999;
	font-weight: bold;
	text-align: center;
}

.table1 td {
	border-bottom: 1px solid #999;
	border-right: 1px solid #999;
	text-align: center;
} */

   .tablew700 {
     /* width: 700px; */
     width: 100%;
   }

   .tablew500 {
     /* width: 500px; */
     width: 100%;
   }

   .tablew680 {
     /* width: 680px; */
     width: 100%;
   }

   .tablew260 {
     /* width: 260px; */
     width: 100%;
   }

   /* .table1 .blue {
	background: #cfecff;
}

.table1 .red {
	background: #ffcfe9;
}

.table1 .par {
	background: #f4ffcf;
}

.table1 .hdcp {
	background: #cfffd7;
}

.table1 .hdcp {
	background: #cfffd7;
}

.table1 .gray {
	background: #EAEBE5;
} */

   .scroll-hint {
     padding-top: 0.5rem;
     font-size: 13px;
     color: #493759;
     pointer-events: none;
     z-index: 10;
     display: none;
   }

   .table-wrapper::-webkit-scrollbar {
     height: 8px;
   }

   .table-wrapper::-webkit-scrollbar-track {
     background: #f1f1f1;
     border-radius: 10px;
   }

   .table-wrapper::-webkit-scrollbar-thumb {
     background: #493759;
     border-radius: 10px;
   }

   .scroll-hint::before {
     content: '→';
     margin-right: 5px;
     animation: slideRight 1.5s ease-in-out infinite;
   }

   .scroll-hint.scrolled {
     opacity: 0.2;
   }

   @keyframes slideRight {
     0%, 100% {
       transform: translateX(0);
     }

     50% {
       transform: translateX(5px);
     }
   }

   .table-wrapper {
     scrollbar-color: #493759 #f1f1f1;
     scrollbar-width: thin;
   }

   /*
   .info-rightbox .table1 td, info-rightbox .table1 th {
     width: 50%;
   } */

   /* table tr:hover {
     background: #f8f1c1;
   } */

   /* ヒーローイメージ */
   .u-inner {
     left: 0;
     margin-left: 0;
     top: 0;
   }

   .u-inner img {
     transform: translateX(-15%);
   }

   .privacypolicy .u-inner img {
     transform: translateX(-40%) scale(0.8);
   }


   /* パンくずリスト */
   .contents .breadcrumb {
     font-size: 13px;
   }

   /* .contents ul.breadcrumb li {
	list-style: none;
	display: inline;
}

.contents ul.breadcrumb li:after {
	content: ">";
	margin: 0 5px;
}

.contents ul.breadcrumb li:last-child:after {
	content: "";
	margin: 0 5px;
} */

   /* 下層見出し */
   .contents h2.headding {
     /* background: #f6f6f6;
	border: 1px solid #fff;
	border-radius: 4px 4px 0 0;
	font-weight: bold;
	line-height: 1.4em;
	position: relative;
	text-shadow: 1px 1px 0 #ccc;
	z-index: 1; */
     padding: 0.5rem 1rem;
     margin: 1rem 0;
     font-size: 1.2em;
   }

   .contents h2.headding:before {
     /* border: 1px solid #7F6E8E;
	border-bottom: 2px solid #493759;
	border-radius: 4px 4px 0 0;
	content: "";
	display: block;
	left: -2px;
	min-height: 100%;
	padding-bottom: 2px;
	position: absolute;
	z-index: 10; */
     top: -3px;
     width: 100%;
   }

   h3 {
     font-size: 16px;
     padding: 0.5rem;
   }

   .container_16 .grid_12.maincontents {
     margin-bottom: 3rem;
   }

   .maincontents .innerbox {
     /* box-sizing: padding-box; */
     margin: 0;
     width: 100%;
   }

   .innerbox>p {
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   .pagetop {
     text-align: right;
     margin: 20px 0;
   }

   /* トップにもどる */
   .pagetopt p {
     background: url(../img/common/pagetop.png) no-repeat left center;
     /* float: right;
	min-height: 13px;
	padding-left: 20px;
	font-size: 12px;
	margin: 20px 0;
	text-align: right; */
     font-size: 13px;
     margin: 1rem 0;
     padding-left: 20px;
     padding: 0 1rem;
   }

   /* Container
------------------------------------------------------
下層
.main-container_16
｜-.grid_12（1番目）
｜-.grid_4.side（2番目）
----------------------------------------------*
   /*--- Side ---*/

   .side .sidenav {
     /* margin-bottom: 20px; */
     margin-bottom: 1rem;
     width: 100%;
   }

   .side .sidenav h2 {
     /*margin: 2px;
     line-height: 3.2em;
     display: block;
     font-size: 14px;
     text-align: center;
     padding: 0 20px;
     color: #fff;
     height: auto;
     width: auto; */
     background: #000 url(../img/common/sidehbg.png) no-repeat;
     background-size: cover;
     background-position: center bottom;
     padding: 0.5rem 1rem;
     font-size: 1.1rem;
     line-height: 1.6;
     margin: 0;
   }

   .side .sidenav ul {
     display: flex;
     flex-wrap: wrap;
   }

   .side .sidenav ul li {
     /* margin: 2px;
     list-style: none;
     border-bottom: 1px solid #ccc;
     line-height: 3.5em; */
     margin: 0;
     width: 50%;
     text-align: center;
     box-sizing: border-box;
   }

   .side .sidenav ul ul li a {
     /* padding-left: 30px; */
     padding-left: 0;
   }

   /* .side .sidenav ul li:last-child {
     border-bottom: none;
   }

   .side .sidenav ul li.lastborder {
     border-bottom: 1px solid #ccc;
   } */

   .border_none {
     border: none;
   }

   .bordertop_none {
     border-top: none;
   }


   .side .sidenav ul li.border_right {
     border-right: 1px solid #ccc;
   }

   .side .sidenav ul li a {
     /* display: block;
     text-decoration: none;
     line-height: 3.5em;
     padding: 0 20px; */
     line-height: 1.6;
     padding: 0.5rem 1rem;
   }

   .side .sidenav ul li a:active {
     background: #dedbe1;
   }

   .side .sidenav ul li.active {
     background: #f6f6f6;
     font-weight: normal;
   }

   .side_flex {
     display: flex;
     flex-wrap: wrap;
     gap: 2%;
     align-items: flex-start;
   }

   .side .side_flex .rsrvbox {
     width: 49%;
     margin-bottom: 0;
     min-height: 90px;
     margin-top: 0;
   }

   .side .side_flex .courseinfo {
     width: 49%;
     margin-bottom: 0;
     margin-top: 0;
   }


   .side .side_flex .rsrvbox .title {
     min-height: 68px;
     background: #5C4772;
     background: linear-gradient(0deg, rgb(49 36 63) 0%, rgb(141 121 160) 100%);
   }

   .side .side_flex .rsrvbox h2 img {
     height: 100%;
     object-fit: cover;
     max-width: 260px;
   }

   .mgt_section {
     padding-top: 1rem;
   }

   /* 予約 */
   #feeandrsrv>p,
   #rgstflow>p,
   #rsrvflow>p,
   #benefit>P {
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   .linkbox {
     /* box-sizing: border-box;
	border: 4px solid #493759;
	margin: 10px auto;
	background: #f6f6f6;
	padding: 20px; */
     margin: 1rem 0 2rem;
     padding: 1rem;
     width: 100%;
   }

   .linkbox p {
     /* margin-bottom: 10px; */
     margin-bottom: 1rem;
   }

   .rsrvlink,
   .rgstlink {
     /* box-sizing: border-box;
	float: left;
	margin: auto;
	text-align:center;
	width: 310px; */
     width: 100%;
   }

   .rsrvlink {
     /* border-right: 1px solid #ccc;
	padding-right: 10px; */
     border-right: none;
     padding-right: 0;
     border-bottom: 1px solid #ccc;
     padding-bottom: 1rem;
   }

   .rgstlink {
     /* padding-left: 15px; */
     padding-left: 0;
     padding-top: 1rem;
   }

   .rsrvlink a {
     /* display: block;
	width: 258px;
	height: 34px;
	margin: auto; */
     width: 80%;
     max-width: 480px;
     height: auto;
   }

   /* .rsrvlink a:hover {
} */

   .rgstlink a {
     /* display: block;
	width: 258px;
	height: 34px;
	margin: auto; */
     width: 80%;
     max-width: 480px;
     height: auto;
   }

   .rsrvlink a img,
   .rgstlink a img {
     width: 100%;
     height: 100%;
   }

   .rsrvlink p,
   .rgstlink p {
     /* text-align:left; */
     /* height: 60px; */
     height: auto;
   }

   /* .mobile {
	background: #f6f6f6;
	clear: both;
	margin: auto;
} */

   .mobiletit {
     /* background: #eee;
	font-size: 120%;
	font-weight: bold;
	padding: 10px 20px; */
     font-size: 1.1em;
     padding: 0.5rem 1rem;
   }

   .mobileqr {
     /* float: left;
	padding: 20px 0 20px 20px;
	width: 240px; */
     padding: 1rem 0 0 1rem;
     width: 20%;
     max-width: 200px;
     min-width: 148px;
   }

   .mobileqr img {
     width: 100%;
     height: 100%;
   }

   .mobilecon {
     /* float: left;
	padding: 20px 20px 20px 0;
	width: 520px; */
     padding: 1rem 1rem 2rem;
     box-sizing: border-box;
     margin: 0 auto;
     width: 100%;
   }

   .whatcan li {
     /* float: left;
	list-style-type: disc;
	margin: 0 20px 0 10px; */
     list-style-position: inside;
     margin: 0 1rem 0 0;
   }

   .mobilecon .other {
     /* margin-top: 20px; */
     margin-top: 1rem;
     list-style-position: inside;
   }

   .mobilecon .other li {
     /* list-style-type: circle;
	margin: 0 0 0 10px; */
     margin: 0;
   }

   .mobile p.url a {
     /* background: -moz-linear-gradient(center top , #fff 0%, #eee 100%) repeat scroll 0 0 rgba(0, 0, 0, 0);
	border: 1px solid #ccc;
	border-radius: 2px;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	display: block;
	float: right;
	padding: 4px 20px;
	text-align: center;
	width: 200px;
	text-decoration: none;
	margin-top: 10px; */
     box-sizing: border-box;
     padding: 1rem;
     width: 80%;
     max-width: 480px;
     float: none;
     margin: 0 auto;
     margin-top: 1rem;
   }

   .mobile p.url a:hover {
     /* background: -moz-linear-gradient(center bottom, #fff 0%, #eee 100%) repeat scroll 0 0 rgba(0, 0, 0, 0);
     border: 1px solid #ccc;
     border-radius: 2px;
     box-shadow: 1px 0 1px rgba(0, 0, 0, 0.2);
     display: block;
     float: right;
     padding: 4px 20px;
     text-align: center;
     width: 200px;
     text-decoration: none;
     margin-top: 10px; */
     box-sizing: border-box;
     padding: 1rem;
     width: 80%;
     max-width: 480px;
     float: none;
     margin: 0 auto;
     margin-top: 1rem;
     width: 100%;
   }

   .mobile p.url a:active {
     background-color: #fff;
   }

   .step {
     /* margin: 10px 0;
     border: 1px solid #ccc; */
     margin: 0;
     margin-top: 0.5rem;
   }

   /* p.step {
     overflow: visible;
   } */

   ol.step {
     border-radius: 3px;
     box-shadow: 0 1px 2px #b2aca6;
     counter-reset: item;
     list-style-type: none;
     line-height: 1.7;
     padding: 0;
   }

   ol.step li {
     /* text-indent: -2.4em; */
     /* padding-left: 2.4em;
   border-bottom: 1px dotted #3C2F29;
   padding-top: 0.5rem;
   padding-bottom: 0.5rem; */
     padding-left: 1rem;
     padding-right: 1rem;
   }

   ol.step li::before {
     /* counter-increment: item;
   content: counter(item)'.'; */
     /* 以下装飾 */
     /* font-size: 1.5em;
   font-weight: bold;
   color: #3a284a; */
     padding-right: 0.5rem;
   }

   .pointcon {
     /* margin: 0 10px; */
     margin: 0;
   }

   .pointcon p {
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   .pointcon p.tokuten {
     /* background: url(../img/reservation/tokuten.png) no-repeat;
     height: 41px;
     padding-left: 60px;
     font-size: 120%;
     font-weight: bold;
     line-height: 40px;
     margin: 20px 0; */
     /* width: 100%; */
     height: auto;
     margin-left: 0;
     margin-right: 0;
     margin: 2rem 0 0.5rem;
     box-sizing: border-box;
     line-height: 1.6;
     min-height: 41px;
     display: flex;
     align-items: flex-end;
   }

   .pointcon li {
     /* list-style-type: disc;
     margin: 0 20px; */
     margin: 0;
     list-style-position: inside;
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   .toku-point {
     /* background-color: #fffee9;
     border: 1px solid #cccccc;
     height: auto;
     margin-left: auto;
     margin-top: 20px;
     padding: 10px 30px; */
     margin-top: 0.5rem;
     padding: 1rem;
   }

   /* .toku-point {
     text-align: center;
   } */

   .toku-point .example {
     /* margin-bottom: 10px; */
     margin-bottom: 1rem;
   }

   .toku-point .example2 {
     /* margin-bottom: 10px;
     font-size: 160%; */
     font-size: 1.3em;
     margin-bottom: 1rem;
   }

   /* .pointpre {
     color: #cc0000;
     font-weight: bold;
   } */

   .pointlist {
     /* text-align: center;
     font-size: 120%;
     font-weight: bold; */
     margin: 0;
     margin-top: 2rem;
   }

   /* .step2 {
     margin: 10px -10px;
     border: 1px solid #ccc;
   } */

   /* コース */
   .mapimg {
     /* width: 640px;
	padding: 20px; */
     width: 100%;
     padding: 0;
   }

   .mapimg img {
     margin-left: 0px;
     max-width: 100%;
     height: auto;
   }

   .course_flex {
     display: flex;
     gap: 2%;
     width: 100%;
     margin: 1rem 0 0.5rem;
   }

   .outinlink a {
     /* background: -moz-linear-gradient(center top , #00A65A 0%, #007F52 100%) repeat scroll 0 0 rgba(0, 0, 0, 0);
	background: -webkit-gradient(linear, center top, center bottom, from(#00A65A), to(#007F52));
	background: linear-gradient(to bottom, #00A65A, #007F52);
	border: 1px solid #69734B;
	box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
	border-radius: 3px;
	display: block;
	float: right;
	padding: 10px;
	text-align: center;
	width: 100px;
	color: #fff;
	text-decoration: none;*/
     width: 100%;
     float: none;
     box-sizing: border-box;
   }

   /* .outinlink a:hover {
	background: -moz-linear-gradient(center top , #007F52 0%, #00A65A 100%) repeat scroll 0 0 rgba(0, 0, 0, 0);
	background: -webkit-gradient(linear, center top, center bottom, from(#007F52), to(#00A65A));
	background: linear-gradient(to bottom, #007F52, #00A65A);
} */

   .outinlink a:active {
     background-color: #007F52;
     background-image: linear-gradient(to bottom, #007F52, #00A65A);
     color: #fff;
   }

   .incourse {
     /* float: right;
	position: relative;
	margin-top: -320px;
	margin-left: 540px; */
     float: none;
     margin: 0;
     width: 49%;
   }

   .outcourse {
     /* float: left;
	position: relative;
	margin-top: -320px;
	margin-left: 0; */
     float: none;
     margin: 0;
     width: 49%;
   }

   /* .all img {
     border-radius: 5px;
     box-shadow: 0 0 2px #bbb;
     padding: 10px;
   }

   .score h1 {
     margin-top: 20px;
   }


   .coursemap {
     padding: 10px;
     border: 1px solid #cccccc;
     border-radius: 5px;
     box-shadow: 0 0 1px #ccc;
   }

   .holemap {
     box-sizing: border-box;
     width: 320px;
     margin-right: 10px;
     display: inline-block;
     text-align: center;
   }
 */

   /* th.link {
     padding: 0;
     text-align: center;
   }


   th.link a {
     display: block;
     height: 100%;
     padding: 10px 0;
     text-decoration: underline;
     width: 100%;
   }

   th a:hover {
     background: #a6a5c6;
     text-decoration: none;
   }
 */
   /* .courseimg {
     padding: 2px;
     border: 1px solid #ccc;
     margin-bottom: 20px;
   }
*/

   .hole_flex {
     width: 100%;
     display: flex;
     justify-content: space-between;
     margin-top: 1rem;
   }

   .fleft {
     /* border: 0 !important;
     padding: 0 !important;
     margin: 0 !important; */
     width: 49%;
     padding-left: 30px !important;
   }

   .info-rightbox {
     /* box-sizing: border-box;
     width: 260px;
     margin: 0 !important;
     padding: 0 !important; */
     width: 49%;
     padding-right: 30px !important;
   }

   .fleft img,
   .info-rightbox img {
     width: 100%;
     height: auto;
     object-fit: contain;
     box-sizing: border-box;
   }

   .tips {
     /* box-sizing: border-box;
     width: 260px;
     margin-top: 10px;
     margin-bottom: 15px;
     background: #f6f6f6;
     padding: 10px 20px;
     border: 5px solid #EAEBE5; */
     width: 100%;
     margin: 1rem 0;
     padding: 1rem 0.5rem;

   }

   .hole {
     font-size: 16px;
   }

   .par, .hc {
     /* display: inline-block;
     background: #eee;
     border-radius: 2px;
     font-weight: normal;
     font-size: 90%;
     padding: 4px 10px;
     margin-left: 10px;
     text-align: center; */
     margin-left: 5px;
     border: 2px solid #eee;
   }

   .par {
     /* width: 50px; */
     width: auto;
   }

   .hc {
     /* width: 100px; */
     width: auto;
     min-width: 6rem;
   }

   .npdc {
     /* display: inline-block;
     background: #fff;
     border: 2px solid #eee;
     border-radius: 2px;
     font-weight: normal;
     font-size: 75%;
     padding: 4px 10px;
     margin-left: 10px;
     text-align: center; */
     margin-left: 5px;
   }

   /* div.pagetopt {
     padding: 0 !important;
   } */

   /* * {
     margin: 0;
     padding: 0;
     border: 0;
     list-style: none;
   }

   .slider {
     position: relative;
     width: 100%;
     height: 400px;
     overflow: hidden;
   }

   .slides {
     height: 100%;
     overflow: hidden;
     zoom: 1;
   }

   .slide {
     height: 100%;
     float: left;
     clear: none;
   }

   .slide img {
     width: 500px;
   }

   .slider-arrow {
     position: absolute;
     display: block;
     margin-bottom: -20px;
     padding: 20px;
   }

   .slider-arrow--right {
     bottom: 50%;
     right: 30px;
     background: url(img/right.png) no-repeat;
   }

   .slider-arrow--left {
     bottom: 50%;
     left: 30px;
     background: url(img/left.png) no-repeat;
   }

   .slider__nav {
     position: absolute;
     bottom: 30px;
   }

   .slider__nav-item {
     width: 12px;
     height: 12px;
     float: left;
     clear: none;
     display: block;
     margin: 0 5px;
     border: 1px solid #cc0000;
     border-radius: 8px;
   }

   .slider__nav-item:hover {
     background: #fff;
   }

   .slider__nav-item--current {
     background: #cc0000;
   } */

   /* アコーディオン */
   .accordion {
     margin: 0;
   }

   .accordion section h3 {
     /* border-bottom: solid 1px #ccc;
	box-shadow: 0px 1px 1px -1px rgba(204,204,204,0.5);
	-webkit-box-shadow: 0px 1px 1px -1px rgba(204,204,204,0.5);
	-moz-box-shadow: 0px 1px 1px -1px rgba(204,204,204,0.5);
	cursor: pointer;
	font-size: 16px;
	line-height: 1.4em;
	margin-bottom: 10px;
	padding: 15px 15px;
	position: relative; */
     margin-bottom: 0.5rem;
     padding: 1rem;
   }

   /* .accordion section h3:hover {
	border-bottom: solid 1px #ccc;
	box-shadow: 0px 1px 1px -1px rgba(204,204,204,0.5);
	-webkit-box-shadow: 0px 1px 1px -1px rgba(204,204,204,0.5);
	-moz-box-shadow: 0px 1px 1px -1px rgba(204,204,204,0.5);
	background: #f6f6f6;
} */
   .accordion section h3:active {
     box-shadow: 0px 1px 1px -1px rgba(204, 204, 204, 0.5);
     background: #f6f6f6;
   }

   .accordion div {
     /* padding: 10px 20px; */
     padding: 0;
   }

   /* .accordion section h3:before {
	-webkit-transform: rotate(45deg);
	background: #333;
	content: "";
	display: block;
	height: 10px;
	margin-top: -8px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: rotate(45deg);
	width: 10px;
}

.accordion section h3:after {
	-webkit-transform: rotate(45deg);
	background: #fff;
	content: "";
	display: block;
	height: 10px;
	margin-top: -13px;
	position: absolute;
	right: 15px;
	top: 50%;
	transform: rotate(45deg);
	width: 10px;
}

.accordion section h3:hover:before {
	-webkit-transform: rotate(45deg);
	height: 12px;
	width: 12px;
}

.accordion section h3:hover:after {
	-webkit-transform: rotate(45deg);
	background: #f6f6f6;
	height: 12px;
	width: 12px;
}

.accordion section h3.active:before, .accordion section h4.active:before {
	margin-top: -2px;
}

.accordion section h3.active:after, .accordion section h4.active:after {
	margin-top: 3px;
} */

   .accordion section+div {
     box-sizing: border-box;
     margin: -10px 0 10px 0;
   }

   /* lean-slider  */
   .lean-slider {
     margin: 1rem 30px;
   }

   /*
.lean-slider:before, .lean-slider:after {
	content: " ";
	display: table;
}

.lean-slider:after {
	clear: both;
} */

   /* .lean-slider-slide {
	float: left;
	width: 100%;
	margin-right: -100%;
	display: none;
	width: 500px;
	padding: 0!important;
}
 */
   /* .lean-slider-slide.current {
	display: block;
}

.slider-control-nav1, .slider-control-nav2, .slider-control-nav3, .slider-control-nav4, .slider-control-nav5, .slider-control-nav6, .slider-control-nav7, .slider-control-nav8, .slider-control-nav9 {
	position: relative;
	left: 0;
	top: -65px;
	bottom: 10px;
	width: auto;
	text-align: center;
}

.slider-direction-nav1, .slider-direction-nav2, .slider-direction-nav3, .slider-direction-nav4, .slider-direction-nav5, .slider-direction-nav6, .slider-direction-nav7, .slider-direction-nav8, .slider-direction-nav9 {
	position: relative;
	left: 0;
	top: -165px;
	bottom: 10px;
	width: auto;
	text-align: center;
	padding: 0!important;
}

.lean-slider-prev {
	margin-left: 0;
}

.lean-slider-next {
	margin-left: 0;
} */

   .slider-wrapper {
     position: relative;
     /* height: 410px; */
     height: auto;
   }

   /* .slider-wrapper:hover .slider-control-nav {
	opacity: 1;
}

.slider-control-nav1 a, .slider-control-nav2 a, .slider-control-nav3 a, .slider-control-nav4 a, .slider-control-nav5 a, .slider-control-nav6 a, .slider-control-nav7 a, .slider-control-nav8 a, .slider-control-nav9 a {
	display: inline-block;
	width: 14px;
	height: 14px;
	background: url(../img/course/bullets.png) no-repeat 0 0;
	text-indent: -9999px;
	margin: 0 3px;
	-webkit-transition: none;
	-moz-transition: none;
	-ms-transition: none;
	-o-transition: none;
	transition: none;
}

.slider-control-nav1 a.active, .slider-control-nav2 a.active, .slider-control-nav3 a.active, .slider-control-nav4 a.active, .slider-control-nav5 a.active, .slider-control-nav6 a.active, .slider-control-nav7 a.active, .slider-control-nav8 a.active, .slider-control-nav9 a.active {
	background-position: 100% 0;
} */
   .slide1, .slide2 {
     width: 100%;
   }

   .slide1 img, .slide2 img {
     /* width: 500px;
	border: 1px solid #ccc;
	padding: 2px;
	z-index: 10; */
     width: 100%;
     height: auto;
     padding: 0;
   }

   /* .lean-slider-slide {
	display: block;
	position: relative;
	opacity: 0;
	-webkit-transition: opacity 0.6s linear;
	-moz-transition: opacity 0.6s linear;
	-ms-transition: opacity 0.6s linear;
	-o-transition: opacity 0.6s linear;
	transition: opacity 0.6s linear;
}

.lean-slider-slide.current {
	opacity: 1;
}*/

   .slider-direction-nav {
     /* position: absolute;
	left: 0;
	top: 47%;
	width: 100%;
	-webkit-transition: opacity 0.2s linear;
	-moz-transition: opacity 0.2s linear;
	-ms-transition: opacity 0.2s linear;
	-o-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	opacity: 0.2;
	padding: 0!important;
	width: 580px;
	margin: 0 22px; */
     width: 100%;
     margin: 0;
     top: 43%;
   }

   /* .slider-wrapper:hover .slider-direction-nav {
	opacity: 1;
} */

   a.lean-slider-prev {
     /* float: left;
	display: block;
	width: 24px;
	height: 43px;
	background: url(../img/course/arrow-prev.png) no-repeat 0 0;
	text-indent: -9999px; */
     position: absolute;
     top: 0;
     left: 0;
   }

   a.lean-slider-next {
     /* float: right;
	display: block;
	width: 24px;
	height: 43px;
	background: url(../img/course/arrow-next.png) no-repeat 0 0;
	text-indent: -9999px; */
     position: absolute;
     top: 0;
     right: 0rem;
   }

   /* .slider-direction-nav .lean-slider-next {
	float: right;
	background-position: 100% 0;
} */

   /* 最新情報 */
   #newsitems .item {
     /* margin: 10px;
	border: 1px solid #ccc;
	padding: 2px; */
     margin: 0 0 2rem;
   }

   #newsitems .item:last-of-type {
     margin: 0;
   }


   /* .hiddendate {
	display: none;
} */

   .item p.date {
     /* text-align: right;
	padding-right: 0!important; */
     font-size: 14px;
     margin-bottom: 0.5rem;
   }

   /* .title {
	display: inline;
	font-weight: bold;
	font-size: 14px;
	margin-right: 10px;
} */

   .item .title {
     font-size: 17px;
     margin-right: 0;
     padding: 0;
   }

   .item dd {
     /* padding: 10px; */
     padding: 1rem 0.5rem;
     padding-bottom: 0;
   }

   .item p img {
     width: 100%;
     height: auto;
     padding: 0 0.5rem;
     box-sizing: border-box;
   }

   .topics.item dd.headding {
     padding-bottom: 1rem;
     padding-right: 1rem;
     padding-left: 1rem;

   }

   .topics.item dd.headding2 {
     padding-bottom: 1rem;
     padding-right: 1rem;
     padding-left: 1rem;

   }

   .topics dd.headding:before {
     /* content: "\304A\77E5\3089\305B";
	background: #614E73;
	color: #fff;
	font-weight: bold;
	padding: 2px 12px;
	margin-right: 10px; */
     text-align: center;
     vertical-align: middle;
     font-size: 14px;
     width: 5rem;
   }

   .topics dd.headding2:before {
     /* content: "\プレー料金";
	background: #D99403;
	color: #fff;
	font-weight: bold;
	padding: 2px 12px;
	margin-right: 10px; */
     text-align: center;
     vertical-align: middle;
     font-size: 14px;
     width: 5rem;

   }

   .event dd.headding:before {
     /* content: "\30B3\30F3\30DA\60C5\5831";
	background: #614E73;
	color: #fff;
	font-weight: bold;
	padding: 2px 12px;
	margin-right: 10px; */
     text-align: center;
     vertical-align: middle;
     font-size: 14px;
     width: 5rem;

   }

   .toku dd.headding:before {
     /* content: "\304A\5F97\306A\60C5\5831";
	background: #614E73;
	color: #fff;
	font-weight: bold;
	padding: 2px 12px;
	margin-right: 10px; */
     text-align: center;
     vertical-align: middle;
     font-size: 14px;
     width: 5rem;

   }

   .new:after {
     /* background: #ffcc00;
	color: #fff;
	content: "New!";
	font-size: 10px;
	font-weight: bold;
	margin-left: 10px;
	padding: 1px 5px; */
     font-size: 12px;
   }

   .item p {
     /* margin-bottom: 10px;
	padding: 0 20px; */
     margin-bottom: 0.5rem;
     padding: 0 1rem;
   }

   .sheadding {
     /* background: #f6f6f6;
	font-size: 14px;
	font-weight: bold;
	padding: 4px 20px!important; */
     font-size: 16px;
     padding: 0.5rem !important;
   }

   .item table {
     margin-bottom: 2rem;
     margin-left: 0.5rem;
     margin-right: 0.5rem;
     width: calc(100% - 1rem);
   }

   .item p.fee_list {
     box-sizing: border-box;
     margin-left: 0.5rem;
     margin-right: 0.5rem;
     width: calc(100% - 1rem);
     padding: 0;
   }

   .item p.fee_caption {
     margin: 0;
     margin-top: 2rem;
     padding: 0 0.5rem;
   }

   /* 施設案内 */
   ul.column2 {
     /* border-collapse: separate;
     border-spacing: 20px 0;
     display: table;
     height: auto;
     overflow: hidden;
     width: 100%; */
     margin-bottom: 2rem;
     display: flex;
     flex-wrap: wrap;
     column-gap: 2%;
     row-gap: 16px;
   }

   ul.column2:last-of-type {
     margin-bottom: 0;
   }

   ul.column2 li {
     /* display: table-cell;
     box-sizing: border-box;
     list-style: none;
     margin-bottom: 10px;
     border: 1px solid #ccc;
     padding: 4px;
     width: 320px;
     float: left; */
     margin: 0;
     width: 49%;
   }

   ul.column2 li:after {
     /* clear: both;
     content: "";
     display: block; */
     display: none;
   }

   ul.column2 li:nth-child(odd) {
     /* margin-right: 20px; */
     margin: 0;
   }

   ul.column2 li dl {
     /* margin-bottom: 0;
     width: 310px; */
     width: 100%;
     height: 100%;
   }

   ul.column2 li dl img {
     /* width: 310px; */
     width: 100%;
     height: auto;
   }

   #facility .side .side_flex .rsrvbox {
     margin-top: 0;
   }

   #facility .side .side_flex .courseinfo {
     margin-top: 0;
   }

   /* ul.column2 li dt {
     margin-bottom: 10px;
   }

   ul.column2 li dd {
     margin: 0 10px;
   }

   ul.column2 li dd.facname {
     color: #493759;
     font-weight: bold;
     margin-bottom: 5px;
     font-size: 14px;
   } */

   ul.column2 li dt {
     margin-bottom: 1rem;
   }


   /* レストラン */
   #restaurant .maincontents p {
     margin-top: 0;
     box-sizing: border-box;
     padding-left: 0.5rem;
     padding-right: 0.5rem;
     padding-bottom: 0.5rem;
   }


   #restaurant .maincontents h3 {
     /* margin: 20px;
     font-size: 15px;
     color: #333;
     font-weight: bold; */
     font-size: 17px;
     margin: 0;
     margin-top: 3rem;
     padding-left: 0;
     padding-top: 0;
   }

   #restaurant .maincontents h3:first-of-type {
     margin-top: 0;
   }

   #restaurant .maincontents #drink h3:first-of-type {
     margin-top: 0;
   }

   #restaurant .maincontents h4 {
     margin: 0 0 0.5rem;
     padding-top: 2rem;
     font-size: 16px;
   }

   #restaurant .maincontents #lunch h4 {
     margin: 0 0.5rem 0.5rem;
     padding-top: 0rem;
     font-size: 16px;
   }

   #restaurant ul.column2 {
     margin-bottom: 0;
   }

   #restaurant ul.column2 li dl dt p.new {
     font-size: 14px;
     padding-top: 0.5rem;
   }

   #restaurant ul.column3 li dl dt p.tencho {
     font-size: 14px;
     padding-top: 0.5rem;

   }

   /* ul.column2 li dt {
     margin-bottom: 10px;
     position: relative;
   }

   ul.column2 li dl dt p.new {
     position: absolute;
     width: auto;
     background-color: #C30;
     color: #FFF;
     z-index: 99;
     margin: 0px 0 0 0;
     padding: 5px 10px;
     text-align: left;
     font-weight: bold;
     font-size: 1.2em;
     top: 0;
     left: 0;
   }

   ul.column2 li dd {
     margin: 0 10px;
   }

   ul.column2 li dd.menuname {
     color: #493759;
     font-weight: bold;
     margin-bottom: 5px;
     font-size: 14px;
   }



   ul.column2 li dd.other2 {
     box-sizing: border-box;
     margin: 4px;
     background: #f6f6f6;
     padding: 11px;
     font-size: 10px;
     height: auto;
     line-height: 1.5;
     overflow: hidden;
   } */

   ul.column2 li dd.menuname {
     /* color: #493759;
     font-weight: bold;
     margin-bottom: 5px;
     font-size: 14px; */
     margin-bottom: 1rem;
     margin-left: 0.5rem;
     margin-right: 0.5rem;
     font-size: 16px;
   }

   ul.column2 li dd.price {
     /* margin-bottom: 10px;
     font-size: 14px;
     text-align: right;
     font-weight: bold; */
     margin-bottom: 0;
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   ul.column2 li dd.other {
     /* box-sizing: border-box;
     margin: 4px;
     background: #f6f6f6;
     padding: 11px;
     font-size: 10px;
     min-height: 6em;
     line-height: 1.5;
     overflow: hidden; */
     padding: 0.5rem;
     font-size: 14px;
     margin: 0;
   }

   #party ul.column2 li dd.menuname {
     margin-top: 1rem;
     margin-bottom: 0;
   }

   #party ul.column2 li dt {
     margin-bottom: 0;
   }

   #party ul.column2 li dd.other2 {
     /* box-sizing: border-box;
     margin: 4px;
     background: #f6f6f6;
     padding: 11px;
     font-size: 10px;
     height: auto;
     line-height: 1.5;
     overflow: hidden; */
     padding: 0.5rem;
     font-size: 14px;
     margin: 0;
     margin-top: 1rem;
   }


   /*おすすめメニュー用CSS*/
   ul.column3 {
     /* border-collapse: separate;
     border-spacing: 20px 0;
     display: table;
     height: auto;
     overflow: hidden;
     width: 100%; */
     /* margin-bottom: 2rem; */
     display: flex;
     flex-direction: column;
     row-gap: 16px;
   }

   ul.column3 li {
     /* display: table-cell;
     box-sizing: border-box;
     list-style: none;
     margin-bottom: 10px;
     border: 1px solid #ccc;
     padding: 4px;
     width: 650px;
     float: left; */
     width: 100%;
     margin-bottom: 0;
   }

   ul.column3 li:after {
     /* clear: both;
     content: "";
     display: block;
     float: left; */
     display: none;
   }

   ul.column3 li:nth-child(odd) {
     /* margin-right: 20px;
     float: left; */
     margin-right: 0;
   }

   ul.column3 li dl {
     /* margin-bottom: 0;
     width: 650px;
     height: 300px; */
     width: 100%;
     height: 100%;
     display: grid;
     grid-template-columns: 60% 40%;
   }

   ul.column3 li dt {
     /* margin-bottom: 10px;
     float: left; */
     grid-column: 1;
     grid-row: 1 / span 99;
     margin-bottom: 1rem;
   }

   ul.column3 li dd {
     /* margin: 0 10px; */
     margin: 0;
     grid-column: 2;
     margin: 0;
   }

   ul.column3 li dl img {
     /* width: 400px;
     float: left; */
     width: 100%;
     height: auto;
   }

   ul.column3 li dd.menuname {
     /* color: #1C305C;
     font-weight: bold;
     margin-bottom: 20px;
     font-size: 14px;
     padding-left: 10px;
     width: 200px;
     float: left; */
     font-size: 15px;
     width: 100%;
     padding-left: 0.5rem;
     padding-right: 0.5rem;
     box-sizing: border-box;
     margin-bottom: 1rem;
   }

   #restaurant .maincontents dd.menuname p {
     padding: 0;
     font-size: 16px;
   }

   ul.column3 li dd.price {
     /* margin-bottom: 10px;
     font-size: 14px;
     text-align: right;
     font-weight: bold; */
     margin-left: 0.5rem;
     margin-right: 0.5rem;
     margin-bottom: 0;
   }

   ul.column3 li dd.other {
     /* box-sizing: border-box;
     margin: 4px;
     background: #f6f6f6;
     padding: 11px;
     font-size: 11px;
     line-height: 1.5;
     width: 235px;
     float: left; */
     margin: 0;
     margin-left: 0.5rem;
     width: auto;
     font-size: 14px;
     padding: 0.5rem;
   }

   /* ul.column3 li dd.other2 {
     box-sizing: border-box;
     margin: 4px;
     background: #f6f6f6;
     padding: 11px;
     font-size: 10px;
     height: 6.4em;
     line-height: 1.5;
     overflow: hidden;
     float: left;
   }

   ul.column3 li dl dt p.new {
     position: absolute;
     width: auto;
     background-color: #C30;
     color: #FFF;
     z-index: 99;
     margin: 0px 0 0 0;
     padding: 5px 10px;
     text-align: left;
     font-weight: bold;
     font-size: 1.2em;
     left: 13px;
   }

   ul.column3 li dl dt p.tencho {
     position: absolute;
     left: 110px;
     width: auto;
     background-color: #F60;
     color: #FFF;
     z-index: 99;
     margin: 0px 0 0 0;
     padding: 5px 10px;
     text-align: left;
     font-weight: bold;
     font-size: 1.2em;
      left: 13px;
   } */

   /*おすすめ用CSS*/
   ul.textmenu,
   ul.morningmenu {
     /* display: table;
     width: 100%;
     overflow: hidden;
     height: auto;
     margin: 0 20px; */
     margin: 0;
     padding: 0;
     display: flex;
     row-gap: 10px;
     column-gap: 6%;
     flex-wrap: wrap;
   }

   ul.textmenu li {
     /* box-sizing: border-box;
     list-style: none;
     margin-bottom: 5px;
     padding: 4px;
     width: 320px;
     float: left; */
     width: 47%;
     padding: 0;
     margin: 0;
   }

   ul.textmenu li:nth-child(odd),
   ul.morningmenu li:nth-child(odd) {
     /* margin-right: 20px; */
     margin-right: 0;
   }

   /* ul.textmenu li:after,
   ul.morningmenu li:after {
     clear: both;
     content: "";
     display: block;
   }

   ul.textmenu li:after {
     margin: 2px 0;
     border-bottom: 1px solid #eee;
   } */

   ul.textmenu li dl {
     /* width: 320px; */
     width: 100%;
     display: flex;
     flex-wrap: wrap;
     justify-content: space-between;
     padding: 1rem 0.5rem;
     box-sizing: border-box;
     font-size: 14px;
   }

   ul.textmenu li dt {
     /* clear: left;
     float: left;
     width: 220px;
     font-weight: bold;
     height: 3.8em;
     line-height: 1.5;
     overflow: hidden; */
     width: calc(100% - 5rem);
     height: auto;
   }

   ul.textmenu li dd {
     /* float: left;
     margin-left: 10px;
     width: 80px;
     text-align: right; */
     width: 5rem;
     margin: 0;
   }

   .party-bottom-wrapper {
     /* display: flex;
     flex-flow: column;
     padding: 20px; */
     padding: 0;
     padding-top: 16px;
   }

   .party-drink {
     /* box-sizing: border-box;
     list-style: none;
     margin-bottom: 5px;
     padding: 3px;
     width: 48%;
     float: left;
     border: 1px solid #CCCCCC;
     font-size: 1.2em;
     font-weight: bold;
     line-height: 1.8em; */
     width: 100%;
     margin: 0;
     padding: 1rem;
     margin-bottom: 16px;
   }

   #restaurant .party-drink p {
     margin: 0;
     padding: 0;
   }

   #restaurant .party-drink-menu {
     color: #6D7B6F;
   }

   #restaurant p.party-bottom {
     /* width: 50%; */
     width: 100%;
     box-sizing: border-box;
     padding: 0;
     padding-left: 0.5rem;
     padding-right: 0.5rem;
   }

   /* 目立つメニュー用 */
   ul.column1 {
     /* border-collapse: separate;
     border-spacing: 20px 0;
     display: table;
     height: auto;
     overflow: hidden;
     width: 100%; */
     border-spacing: 0;
   }

   ul.column1 li {
     /* display: table-cell;
     box-sizing: border-box;
     list-style: none;
     margin-bottom: 10px;
     border: 1px solid #ccc;
     padding: 4px;
     width: 650px;
     float: left; */
     width: 100%;
     margin-bottom: 16px;
   }

   /* ul.column1 li:after {
     clear: both;
     content: "";
     display: block;
   } */

   ul.column1 li:nth-child(odd) {
     /* margin-right: 20px; */
     margin-right: 0;
   }

   /* ul.column1 li dl {
     margin-bottom: 0; */
   /* width: 650px; */
   /* } */

   ul.column1 li dl img {
     /* width: 640px; */
     width: 100%;
   }

   ul.column1 li dt {
     /* margin-bottom: 10px;
     position: relative; */
     margin-bottom: 1rem;
   }

   ul.column1 li dl dt p.new {
     /* position: absolute;
     width: auto;
     background-color: #C30;
     color: #FFF;
     z-index: 99;
     margin: 0px 0 0 0;
     padding: 5px 10px;
     text-align: left;
     font-weight: bold;
     font-size: 1.2em;
     top: 0;
     left: 0; */
     font-size: 14px;
     padding-top: 0.5rem;
   }

   ul.column1 li dd {
     /* margin: 0 10px; */
     margin: 0;
   }

   ul.column1 li dd.menuname {
     /* color: #493759;
     font-weight: bold;
     margin-bottom: 5px;
     font-size: 14px; */
     margin: 1rem 0.5rem;
     font-size: 16px;
   }

   ul.column1 li dd.price {
     /* margin-bottom: 10px;
     font-size: 14px;
     text-align: right;
     font-weight: bold; */
     font-size: 15px;
     margin-bottom: 0;
     margin-left: 0.5rem;
     margin-right: 0.5rem;
   }

   ul.column1 li dd.other {
     /* box-sizing: border-box;
     margin: 4px;
     background: #f6f6f6;
     padding: 11px;
     font-size: 10px;
     min-height: 6em;
     line-height: 1.5;
     overflow: hidden; */
     font-size: 14px;
     margin: 0;
   }

   #restaurant .pagetopt p {
     font-size: 13px;
     margin: 1rem 0;
     padding: 0 1rem;
   }

   /* 交通案内 */
   #access .maincontents section p {
     margin: 0 0.5rem 0.5rem;
   }

   #access .maincontents section .pagetopt p {
     margin: 1rem 0;
   }

   /* .googlemap {
	border: 1px solid #ccc;
	padding: 2px;
} */

   .googlemap iframe {
     width: 100%;
     height: 100%;
     aspect-ratio: 3 / 2;
   }

   /* .bus {
	margin-top: 30px;
}
 */
   #access .maincontents #bus span {
     color: #F00;
     margin: 0;
   }

   /* #bytrain table {
	width: 100%;
}
 */
   /* #bytrain .th2 {
	width: 50%;
}

#bytrain td {
	width: 20%;
}

.table1 th {
	width: 40%;
} */

   .spacaia {
     /* margin: 10px 0; */
     margin: 0;
   }

   /* 倶楽部概要 */
   /* .proinfo {
	margin: 20px 0 0 0;
}

.proinfo h3 {
	box-sizing: border-box;
	background: #f6f6f6;
	border-bottom: 2px solid #ccc;
	float: left;
	margin-bottom: 10px;
	font-size: 120%;
	font-weight: bold;
	width: 495px;
	padding: 10px 0 4px 20px;
}

.proinfo img {
	float: left;
	border: 1px solid #ccc;
	padding: 1px;
	margin-right: 20px;
}

.proinfo .profile {
	box-sizing: border-box;
	float: left;
	width: 495px;
	padding: 0 10px;
}

.proinfo .comment {
	background: #f6f6f6;
	border: 4px solid #eee;
	box-sizing: border-box;
	float: left;
	width: 495px;
	padding: 10px;
	margin: 20px 0;
} */

   .privacy_policy p {
     /* margin: 10px 10px 0 20px; */
     padding-left: 0.5rem;
     padding-right: 0.5rem;
     padding-bottom: 1rem;
   }

   .privacy_policy p:last-of-type {
     padding-bottom: 0;
   }

   .basic td ol {
     /* margin: 10px 10px 0 20px; */
     margin: 0.5rem 0 0 1rem;
   }

   .basic td ol li {
     padding-bottom: 0.5rem;
   }

   .basic td ol li:last-of-type {
     padding-bottom: 0;
   }

   /* 友の会 プライバシーポリシー*/
   #tomonokai .maincontents p {
     margin: 0;
     padding: 0 0.5rem 1rem;
   }

   #tomonokai.privacypolicy .maincontents p {
     margin: 0;
     padding: 0;
   }


   #tomonokai .maincontents li p {
     padding: 0;
   }

   #tomonokai .maincontents p.sheadding {
     /* margin-bottom: 10px;
	padding: 0 20px; */
     margin: 0.5rem 0;
     margin-top: 0;
     padding: 0.5rem;
   }

   /*#tomonokai .sheadding {
 background: #f6f6f6;
	font-size: 14px;
	font-weight: bold;
	padding: 4px 20px!important;
} */

   table.tomonokai:last-of-type {
     margin-bottom: 1rem;
   }

   table.tomonokai th {
     /* width: 33%; */
     width: auto;
   }

   .tomonokaibnr {
     /* margin-bottom: 20px; */
     margin-bottom: 1rem;
     width: 100%;
     height: auto;
   }

   .tablew600 {
     /* width: 600px;
     margin-left: -10px; */
     width: 100%;
     margin-left: 0;
   }

   #tomonokai .tablew600 .fee_month {
     width: 22%;
   }

   #tomonokai ol {
     list-style-position: inside;
   }

   #tomonokai ol li {
     /* margin-left: 50px;
     margin-bottom: 10px;
     padding-left: 20px; */
     margin: 0;
     padding: 0;
     padding-bottom: 1rem;
     padding-left: 0.5rem;
     padding-right: 0.5rem;
   }

   .pdfkiyaku {
     /* margin: 10px; */
     margin: 0 0.5rem;
   }

   .pdfkiyaku ul {
     display: flex;
     flex-wrap: wrap;
     row-gap: 16px;
     column-gap: 2%;
   }

   .pdfkiyaku li {
     display: inline-block;
     width: 49%;
   }

   .pdfkiyaku a {
     /* display: block;
     border: 1px solid #ccc;
     background: -moz-linear-gradient(top center, #fff 0%, #eee 100%);
     background: -webkit-gradient(linear, center top, center bottom, from(#fff), to(#eee));
     background: linear-gradient(top center, #fff 0%, #eee 100%);
     padding: 10px;
     width: 300px;
     text-align: center;
     box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2);
     text-decoration: none;
     box-sizing: padding-box; */
     width: 100%;
     height: 100%;
     box-sizing: border-box;
   }

   /* .pdfkiyaku a:hover {
     display: block;
     border: 1px solid #ccc;
     background: -moz-linear-gradient(top center, #eee 0%, #fff 100%);
     background: -webkit-gradient(linear, center top, center bottom, from(#eee), to(#fff));
     background: linear-gradient(top center, #feeeff 0%, #fff 100%);
     text-align: center;
     box-shadow: 0 0 0 rgba(0, 0, 0, 0.2);
   } */
   .pdfkiyaku a:active {
     display: block;
     border: 1px solid #ccc;
     /* background: linear-gradient(top center, #feeeff 0%, #fff 100%); */
     text-align: center;
     box-shadow: 0 0 0 rgba(0, 0, 0, 0.2);
   }

   .tomotel {
     /* padding-left: 20px; */
     padding-left: 0;
     display: block;
   }

   /* .tax {
	margin-left: 80px;
	margin-bottom: 0!important;
} */
/* お問い合わせ */
   div.mfp_buttons {
     padding: 1rem 0 0;
   }

 }

 /* スマホ */
 @media (max-width: 480px) {

   /*--- Header ---*/
   .logo {
     width: calc(100% - 58px);
   }

   header .logo a {
     width: 100%;
     height: 100%;
     display: block;
     background-repeat: no-repeat;
     background-size: contain;
     background-position: center center;
   }

   /* ハンバーガーメニュー */
   .sp_menu li {
     width: 85%;
     margin: 0 auto;
   }

   .sp_menu a {
     padding: 0.8rem 0;
   }

   /*--- Main ---*/
   #carousel.swiper-wrapper {
     display: flex;
     flex-direction: column;
   }

   #carousel.swiper-wrapper .swiper-slide {
     width: 100% !important;
     margin-right: 0 !important;
   }

   /*--- Side ---*/
   .side .side_flex .rsrvbox {
     width: 100%;
     margin: 0 auto;
     margin-bottom: 1rem;
   }

   .side .side_flex .courseinfo {
     width: 100%;
     margin: 0 auto;
   }

   /* .side .rsrvbox .accordion-icon{
    right: 4%;
   } */

   /*--- Footer ---*/
   #groupcourse {
     padding: 0.5rem;
   }

   #group ul {
     flex-direction: column;
   }

   #group li {
     width: 100%;
     padding-left: 10px;
     padding-right: 10px;
     box-sizing: border-box;
   }

   .topbtn img {
     width: 12%;
     height: auto;
     margin-bottom: 0;
   }

   /* スマホ固定ボタン */
   /*.sp-fixed-buttons {
    display: flex;
     box-sizing: border-box;
     padding: 0 0.5rem;
     gap: 1%;
   }

   .sp-fixed-button {
     flex: 1;
     text-align: center;
     padding: 0.5rem;
     display: flex;
     align-items: center;
     justify-content: center;
     text-decoration: none;
     width: 49.5%;
   }

   /* .sp-fixed-button.tel,
   .sp-fixed-button.reservation {
     background-color: #dac8e9f1;
     border-radius: 8px;
     box-shadow: 0 -2px 5px rgba(0, 0, 0, 0.1);
   } */

   .sp-fixed-button img {
     margin-right: 5px;
     width: 13%;
     height: auto;
   }

   .sp-fixed-button.tel img {
     width: 18%;
   }

   /* .sp-fixed-button a {
     text-decoration: none;
   } */

   .sp-fixed-button span {
     font-size: 14px;
   }

   .sp-fixed-button span small {
     font-size: 11px;
   }

   #footernav .grid_4 {
     min-width: auto;
     width: 100%;
     padding: 0 0 0 0.5rem;
   }

   .pagetopt p {
     padding: 0 1rem;
   }

   /*--- 下層 ---*/
   .side .sidenav h2 {
     padding: 0.5rem 1rem;
     font-size: 1rem;
     line-height: 1.6;
   }

   .side .sidenav ul li a {
     font-size: 14px;
     line-height: 1.6;
     padding: 0.5rem 0.5rem;
   }

   .side .sidenav ul li {
     width: 100%;
   }

   .side .sidenav ul li.border_right {
     border-bottom: 1px solid #ccc;
     border-right: none;
   }

   .side .sidenav ul li.border_none {
     border: none;
   }

   .contents h2.headding {
     font-size: 1.1em;
     padding: 0.5rem;
   }

   .rsrvlink a {
     width: 100%;
   }

   .rgstlink a {
     width: 100%;
   }

   .mobile p.url a {
     width: 100%;
   }

   .mobile p.url a:hover {
     width: 100%;
   }

   .mobiletit {
     font-size: 1em;
   }

   /* コース */
   .hole_flex {
     /* width: 100%;
     display: flex;
     justify-content: space-between; */
     flex-direction: column;
   }

   .fleft {
     width: 100%;
     padding: 0 !important;
   }

   .info-rightbox {
     width: 100%;
     padding: 0 !important;
   }

   .lean-slider {
     margin: 1rem 15px;
   }

   /* .slider-direction-nav {

     top: 4%;
   } */


   a.lean-slider-prev {
     position: absolute;
     top: 0;
     left: -0.2rem;
     width: 15px;
     background-size: contain;

   }

   a.lean-slider-next {
     top: 0;
     right: -0.3rem;
     width: 15px;
     background-size: contain;

   }

   .hole {
     font-size: 16px;
     display: block;
     width: 100%;
   }

   .par {
     /* width: 50px; */
     margin: 0 auto;
     width: 6rem;
     margin-top: 4px;
   }

   .hc {
     /* width: 100px; */
     margin: 0 auto;
     width: calc(100% - 12rem);
     margin-top: 4px;
   }

   .npdc {
     /* display: inline-block;
     background: #fff;
     border: 2px solid #eee;
     border-radius: 2px;
     font-weight: normal;
     font-size: 75%;
     padding: 4px 10px;
     margin-left: 10px;
     text-align: center; */
     margin: 0 auto;
     margin-top: 4px;
     width: 6rem;
   }

   .accordion section h3 {
     padding: 0.5rem;
   }

   /* 最新情報 */
   .item .title {
     font-size: 16px;
   }

   .sheadding {
     font-size: 14px;
   }

   /* .item p {
     padding: 0;
   } */

   .item .table1 th,
   .item .table1 td {
     font-size: 14px;
   }

   /* .item dd {
        padding: 0.5rem ;
       } */

   .topics dd.headding:before {
     display: block;
     margin-bottom: 6px;
   }

   .topics dd.headding2:before {
     display: block;
     margin-bottom: 6px;
   }

   .event dd.headding:before {
     display: block;
     margin-bottom: 6px;
   }

   .toku dd.headding:before {
     display: block;
     margin-bottom: 6px;
   }

   /* .item dd{
    padding: 0.5rem;
   } */

   .item table {
     margin: 0;
     margin-bottom: 2rem;
     width: 100%;
   }

   .item p.fee_list {
     margin: 0;
     width: 100%;
   }


   .item p.fee_caption {
     padding: 0;
     width: 100%;
   }

   /* 施設案内 */
   ul.column2 {
     flex-direction: column;
   }

   ul.column2 li {
     width: 100%;
   }

   /* レストラン */
   ul.column3 li dl {
     grid-template-columns: 1fr;
   }

   ul.column3 li dt,
   ul.column3 li dd {
     grid-column: 1;
     grid-row: auto;
   }

   ul.column3 li dd.other {
     margin-left: 0;
   }

   ul.textmenu,
   ul.morningmenu {
     display: flex;
     flex-direction: column;
   }

   ul.textmenu li {
     width: 100%;
   }

   /* 交通案内 */
   .pdfmap {
     margin-top: 1rem;
     width: 100%;
     box-sizing: border-box;
   }

   .pdfmap a {
     /* display: block;
	border: 1px solid #ccc;
	background: -moz-linear-gradient(top center, #fff 0%, #eee 100%);
	background: -webkit-gradient(linear, center top, center bottom, from(#fff), to(#eee));
	background: linear-gradient(top center, #fff 0%, #eee 100%);
	padding: 5px;
	width: 200px;
	float: right;
	text-align: center;
	box-shadow: 0 1px 1px rgba(0,0,0,0.2);
	text-decoration: none; */
     width: 100%;
     box-sizing: border-box;
   }


   /* .pdfmap a:hover {
	display: block;
	border: 1px solid #ccc;
	background: -moz-linear-gradient(top center, #eee 0%, #fff 100%);
	background: -webkit-gradient(linear, center top, center bottom, from(#eee), to(#fff));
	background: linear-gradient(top center, #feeeff 0%, #fff 100%);
	float: right;
	text-align: center;
	box-shadow: 0 0 0 rgba(0,0,0,0.2);
} */

   /* 倶楽部概要 */
   #about .table1 tr {
     display: flex;
     flex-direction: column;
   }

   #about .table1 th {
     width: 100%;
     box-sizing: border-box;
   }

   #about .table1 td {
     /* width: 70%;
	text-align: left!important; */
     width: 100%;
     box-sizing: border-box;
   }

   /* 友の会 プライバシーポリシー*/
   .pdfkiyaku ul {
     flex-direction: column;
   }

   .pdfkiyaku li {
     width: 100%;
   }

   /* お問い合わせ */

   #inquiry .table1 tr {
     display: flex;
     flex-direction: column;
   }

   #inquiry .table1 th {
     width: 100%;
   }

   #inquiry .inquiry_box .table1 td {
     width: 100%;
     min-width: 0 !important;
     padding: 1rem 0.5rem;
   }

   #inquiry .box_pri {
     padding: 0.5rem;
   }


 }