/*------------------------------------------------
  COMMON
------------------------------------------------*/
.show_sp {
  display: inline; }

body #container {
  min-width: unset;
  padding: 0;
  border-top: unset;
  position: relative; }
  body #container #header {
    width: 100%;
    padding: 2.6666666667vw 2.6666666667vw 2.6666666667vw 5.3333333333vw;
    box-sizing: border-box;
    border-top: 1.3333333333vw solid #022862;
    background-color: #ffffff;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 1; }
    body #container #header a:has(#logo) {
      width: 54.1333333333vw;
      height: 10.6666666667vw;
      margin-right: 2.6666666667vw; }
    body #container #header #links {
      display: none; }
    body #container #header #site-navigation {
      order: 1;
      margin: 0;
      width: auto; }
      body #container #header #site-navigation .menu-toggle {
        display: block;
        width: 10.6666666667vw;
        height: 10.6666666667vw;
        border: none;
        border-radius: 0;
        box-shadow: unset;
        background-color: unset;
        background-image: url("../img/common/menu.svg");
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center;
        transition: background-image .5s ease; }
        body #container #header #site-navigation .menu-toggle[aria-expanded="true"] {
          background-image: url("../img/common/close.svg"); }
      body #container #header #site-navigation #primary-menu {
        display: block;
        width: 100vw;
        height: 100vh;
        position: fixed;
        top: 0;
        right: 0;
        background-color: #022862;
        z-index: -1;
        margin-top: 16.8vw;
        box-sizing: content-box;
        transform: translateX(100%);
        transition: transform .5s ease; }
        body #container #header #site-navigation #primary-menu #global-menu {
          width: 66.6666666667vw;
          margin: 0 auto 6.4vw;
          display: flex;
          flex-direction: column;
          padding-top: 6.1333333333vw; }
          body #container #header #site-navigation #primary-menu #global-menu > .menu-item {
            padding: 0; }
            body #container #header #site-navigation #primary-menu #global-menu > .menu-item.sp {
              display: list-item; }
            body #container #header #site-navigation #primary-menu #global-menu > .menu-item > a {
              font-size: 4.2666666667vw;
              line-height: 16vw;
              height: auto; }
              body #container #header #site-navigation #primary-menu #global-menu > .menu-item > a:link, body #container #header #site-navigation #primary-menu #global-menu > .menu-item > a:visited {
                color: #ffffff; }
              body #container #header #site-navigation #primary-menu #global-menu > .menu-item > a span {
                display: none; }
            body #container #header #site-navigation #primary-menu #global-menu > .menu-item.current-menu-item > a, body #container #header #site-navigation #primary-menu #global-menu > .menu-item.current_page_item > a {
              background-color: transparent; }
            body #container #header #site-navigation #primary-menu #global-menu > .menu-item::before {
              content: none; }
            body #container #header #site-navigation #primary-menu #global-menu > .menu-item::after {
              content: "";
              display: block;
              width: 100%;
              height: 0.2666666667vw;
              position: absolute;
              bottom: 0;
              left: 0;
              right: 0;
              margin: 0 auto;
              background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, #FFF 50%, rgba(255, 255, 255, 0) 100%); }
          body #container #header #site-navigation #primary-menu #global-menu::after {
            content: none; }
        body #container #header #site-navigation #primary-menu .contact {
          display: flex;
          flex-direction: column;
          align-items: center;
          gap: 4.5333333333vw 0; }
          body #container #header #site-navigation #primary-menu .contact label {
            font-size: 2.6666666667vw;
            line-height: 1.0;
            color: #ffffff; }
          body #container #header #site-navigation #primary-menu .contact a {
            font-family: "MS Mincho", "Hiragino Mincho ProN", serif; }
            body #container #header #site-navigation #primary-menu .contact a:link, body #container #header #site-navigation #primary-menu .contact a:visited {
              color: #ffffff;
              text-decoration: none; }
            body #container #header #site-navigation #primary-menu .contact a.tel {
              font-size: 6.4vw;
              font-weight: 600;
              line-height: 1.0;
              letter-spacing: 0.04em;
              padding-left: 5.8666666667vw;
              background-image: url("../img/common/icon-tel-sp.svg");
              background-repeat: no-repeat;
              background-size: 5.3333333333vw;
              background-position: left center; }
            body #container #header #site-navigation #primary-menu .contact a.mail {
              font-size: 3.2vw;
              font-weight: 600;
              line-height: 1.0;
              padding-left: 5.8666666667vw;
              background-image: url("../img/common/icon-mail-sp.svg");
              background-repeat: no-repeat;
              background-size: 4.8vw;
              background-position: left 0.2666666667vw center; }
      body #container #header #site-navigation.toggled #primary-menu {
        transform: translateX(0%); }
    body #container #header .link_img {
      position: relative;
      top: unset;
      left: unset;
      display: block;
      width: 20vw;
      height: 10.6666666667vw;
      background-image: url("../img/common/reserve-sp.svg");
      background-repeat: no-repeat;
      background-size: contain;
      background-position: center; }
      body #container #header .link_img img {
        display: none; }
  body #container #img_header {
    height: 37.3333333333vw;
    margin-bottom: 5.3333333333vw; }
    body #container #img_header ul {
      width: 100%;
      height: 100%; }
      body #container #img_header ul li {
        width: 100%;
        height: 100%; }
        body #container #img_header ul li img {
          width: 100%;
          height: 100%;
          min-width: unset;
          object-fit: cover;
          object-position: center;
          border: none;
          margin: 0; }
    body #container #img_header:has(video) {
      height: auto; }
      body #container #img_header:has(video) .slick-slider .slick-list .slick-track .slick-slide video {
        height: auto;
        margin: 0; }
  body #container #content {
    width: 100%;
    max-width: 89.3333333333vw;
    margin: 0 auto; }
    body #container #content .wrapper_for_col1 {
      width: 100%; }
      body #container #content .wrapper_for_col1 #course_desc {
        font-size: 3.7333333333vw;
        line-height: 1.3;
        text-align: left; }
        body #container #content .wrapper_for_col1 #course_desc h1 {
          font-size: 6.4vw;
          line-height: 1.2; }
        body #container #content .wrapper_for_col1 #course_desc img {
          display: block;
          width: 100%;
          height: auto; }
      body #container #content .wrapper_for_col1 #course_shirakaba, body #container #content .wrapper_for_col1 #course_karamatsu {
        width: 100%;
        overflow-x: scroll;
        position: relative; }
      body #container #content .wrapper_for_col1 #restaurant h1 img {
        display: block;
        width: 100%;
        height: auto; }
      body #container #content .wrapper_for_col1 #restaurant .monthry_menu, body #container #content .wrapper_for_col1 #restaurant .menu, body #container #content .wrapper_for_col1 #restaurant .menu_col2_only_text {
        width: 100%;
        margin-left: 0; }
      body #container #content .wrapper_for_col1 #restaurant .menu_col2, body #container #content .wrapper_for_col1 #restaurant .menu_col4 {
        width: 100%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        gap: 5.3333333333vw 0;
        padding: 0; }
        body #container #content .wrapper_for_col1 #restaurant .menu_col2 .article, body #container #content .wrapper_for_col1 #restaurant .menu_col4 .article {
          float: unset;
          margin: 0;
          width: 38.6666666667vw; }
          body #container #content .wrapper_for_col1 #restaurant .menu_col2 .article .img_popup, body #container #content .wrapper_for_col1 #restaurant .menu_col4 .article .img_popup {
            display: block;
            width: 100%;
            height: 26.6666666667vw;
            pointer-events: none; }
            body #container #content .wrapper_for_col1 #restaurant .menu_col2 .article .img_popup img, body #container #content .wrapper_for_col1 #restaurant .menu_col4 .article .img_popup img {
              display: block;
              width: 100%;
              height: 100%;
              object-fit: contain;
              object-position: center; }
          body #container #content .wrapper_for_col1 #restaurant .menu_col2 .article h3, body #container #content .wrapper_for_col1 #restaurant .menu_col4 .article h3 {
            width: 100%;
            font-size: 4.2666666667vw;
            font-feature-settings: "palt"; }
          body #container #content .wrapper_for_col1 #restaurant .menu_col2 .article p:empty, body #container #content .wrapper_for_col1 #restaurant .menu_col4 .article p:empty {
            display: none; }
      body #container #content .wrapper_for_col1 #club_house h1 img {
        display: block;
        width: 100%;
        height: auto; }
      body #container #content .wrapper_for_col1 #club_house .img_popup {
        pointer-events: none; }
      body #container #content .wrapper_for_col1 #club_info {
        display: block; }
        body #container #content .wrapper_for_col1 #club_info .article {
          float: unset;
          padding: 0; }
          body #container #content .wrapper_for_col1 #club_info .article h1 {
            font-size: 5.8666666667vw;
            line-height: 1.4; }
          body #container #content .wrapper_for_col1 #club_info .article p {
            font-size: 3.4666666667vw; }
        body #container #content .wrapper_for_col1 #club_info img {
          display: block;
          width: 100%;
          height: auto;
          float: unset;
          margin-top: 5.3333333333vw; }
      body #container #content .wrapper_for_col1 #map h1 {
        font-size: 4.2666666667vw;
        line-height: 10.6666666667vw;
        height: 10.6666666667vw;
        font-weight: 600; }
      body #container #content .wrapper_for_col1 #map iframe {
        display: block;
        width: 100%;
        height: 58.6666666667vw; }
      body #container #content .wrapper_for_col1 #traffic {
        padding: 0; }
        body #container #content .wrapper_for_col1 #traffic .article {
          padding-left: 0;
          padding-top: 40vw;
          background-position: center top;
          background-size: 53.3333333333vw; }
          body #container #content .wrapper_for_col1 #traffic .article ul li {
            height: auto; }
            body #container #content .wrapper_for_col1 #traffic .article ul li span {
              display: block;
              font-size: 4.8vw;
              font-feature-settings: "palt";
              margin: 0; }
              body #container #content .wrapper_for_col1 #traffic .article ul li span::after {
                content: none; }
            body #container #content .wrapper_for_col1 #traffic .article ul li em {
              display: block;
              float: unset;
              padding-left: 2.5em;
              position: relative;
              width: 100%;
              box-sizing: border-box; }
              body #container #content .wrapper_for_col1 #traffic .article ul li em::before {
                content: "";
                display: block;
                width: 2em;
                height: 0.2666666667vw;
                border-top: 0.2666666667vw dotted #000000;
                position: absolute;
                top: 50%;
                left: 1em;
                transform: tnraslateY(-50%); }
    body #container #content #syuhen_shisetsu img {
      display: block;
      width: 100%;
      height: 18.6666666667vw;
      object-fit: cover;
      object-position: center; }
    body #container #content #syuhen_shisetsu #shisetsu {
      width: 89.3333333333vw;
      table-layout: fixed;
      overflow-x: scroll;
      display: block; }
      body #container #content #syuhen_shisetsu #shisetsu tbody {
        width: 240vw;
        display: table; }
    body #container #content #syuhen_shisetsu p {
      margin-left: 0; }
    body #container #content .furusatonouzei {
      display: flex;
      flex-direction: column;
      align-items: flex-start;
      gap: 5.3333333333vw 0; }
      body #container #content .furusatonouzei a {
        display: block; }
        body #container #content .furusatonouzei a img {
          display: block;
          width: 100%;
          height: auto; }
    body #container #content .wrapper_for_col2 {
      width: 100%;
      float: unset;
      overflow: hidden;
      margin-bottom: 5.3333333333vw; }
      body #container #content .wrapper_for_col2 #info {
        height: 60vh; }
        body #container #content .wrapper_for_col2 #info .article {
          margin-left: 0; }
          body #container #content .wrapper_for_col2 #info .article .date {
            width: 100%;
            height: auto;
            font-size: 2.6666666667vw;
            line-height: 1.0;
            float: unset;
            margin-bottom: 1.6vw; }
          body #container #content .wrapper_for_col2 #info .article h2 {
            width: 100%;
            height: auto;
            font-size: 4.2666666667vw;
            line-height: 1.0;
            float: unset;
            margin-bottom: 1.6vw;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis; }
          body #container #content .wrapper_for_col2 #info .article .category {
            display: none; }
          body #container #content .wrapper_for_col2 #info .article .sentence {
            width: 100%; }
            body #container #content .wrapper_for_col2 #info .article .sentence .text {
              width: 100%;
              white-space: nowrap;
              overflow: hidden;
              text-overflow: ellipsis; }
      body #container #content .wrapper_for_col2 .inner_col3 {
        display: flex; }
        body #container #content .wrapper_for_col2 .inner_col3 a {
          flex: 1;
          display: block;
          margin: 0;
          float: unset; }
          body #container #content .wrapper_for_col2 .inner_col3 a:has(img) img {
            display: block;
            width: 100%;
            height: auto; }
    body #container #content #sidebar_main {
      width: 100%;
      float: unset; }
      body #container #content #sidebar_main #sidebar {
        display: flex;
        flex-direction: column;
        gap: 5.3333333333vw 0; }
        body #container #content #sidebar_main #sidebar div {
          margin: 0; }
          body #container #content #sidebar_main #sidebar div a:has(img) {
            display: block;
            width: 100%; }
            body #container #content #sidebar_main #sidebar div a:has(img) img {
              display: block;
              width: 100%;
              height: auto; }
    body #container #content .member-page > p {
      font-size: 4.2666666667vw;
      line-height: 8.5333333333vw; }
    body #container #content .member-page .loginform {
      padding: 14.4vw 5.3333333333vw 10.4vw; }
      body #container #content .member-page .loginform h2 {
        font-size: 5.8666666667vw;
        margin-bottom: 7.4666666667vw; }
      body #container #content .member-page .loginform form {
        margin-bottom: 6.6666666667vw; }
        body #container #content .member-page .loginform form > p {
          font-size: 2.6666666667vw;
          font-feature-settings: "palt"; }
        body #container #content .member-page .loginform form .input-wrap + .input-wrap {
          margin-top: 4vw; }
      body #container #content .member-page .loginform .mmm-success p {
        font-size: 3.7333333333vw;
        line-height: 6.9333333333vw;
        margin-bottom: 4vw; }
      body #container #content .member-page .loginform .mmm-success .member-page-button {
        margin-top: 3.2vw;
        margin-bottom: 3.2vw; }
    body #container #content .member-page.register .loginform h2 {
      margin-bottom: 4vw; }
    body #container #content .member-page.register .loginform > p {
      margin-bottom: 5.3333333333vw; }
    body #container #content .member-page.register .loginform .confirmbox {
      box-sizing: border-box;
      padding: 2.6666666667vw 4vw; }
      body #container #content .member-page.register .loginform .confirmbox dl dt, body #container #content .member-page.register .loginform .confirmbox dl dd {
        font-size: 3.7333333333vw;
        line-height: 16vw; }
    body #container #content .member-page.register .loginform form {
      margin-bottom: 0; }
      body #container #content .member-page.register .loginform form .input-wrap input[type="date"]::-webkit-date-and-time-value {
        text-align: left;
        inline-size: unset; }
      body #container #content .member-page.register .loginform form .member-page-button {
        margin-bottom: 0; }
    body #container #content .member-page.register .loginform .formback {
      margin-top: 3.4666666667vw;
      margin-bottom: 0; }
    body #container #content .member-page-button {
      width: 34.6666666667vw;
      height: 8vw;
      font-size: 3.2vw;
      line-height: 8vw;
      margin: 6.6666666667vw 0; }
      body #container #content .member-page-button.register {
        margin-top: 0; }
    body #container #content .mmm-mypage .welcome {
      font-size: 3.2vw;
      margin-bottom: 5.3333333333vw; }
    body #container #content .mmm-mypage h2 {
      font-size: 6.4vw;
      margin-bottom: 8vw; }
    body #container #content .mmm-mypage .member-news-cat-nav ul {
      padding: 6.1333333333vw 8vw;
      gap: 2.1333333333vw 3.8666666667vw; }
      body #container #content .mmm-mypage .member-news-cat-nav ul li {
        font-size: 2.6666666667vw;
        line-height: 6.4vw; }
        body #container #content .mmm-mypage .member-news-cat-nav ul li a {
          min-width: 21.8666666667vw;
          border-radius: 10.9333333333vw; }
    body #container #content .mmm-mypage .member-news-list {
      margin-bottom: 8.5333333333vw; }
      body #container #content .mmm-mypage .member-news-list li a {
        flex-wrap: wrap;
        background: none;
        gap: 3.2vw 4vw;
        align-items: center;
        padding: 9.8666666667vw 0 8vw; }
        body #container #content .mmm-mypage .member-news-list li a .date {
          font-size: 3.7333333333vw; }
          body #container #content .mmm-mypage .member-news-list li a .date.new::before {
            font-size: 3.2vw;
            top: -5.3333333333vw; }
        body #container #content .mmm-mypage .member-news-list li a .cat {
          font-size: 2.1333333333vw;
          line-height: 4.8vw;
          min-width: 20vw;
          border-width: 0.2666666667vw;
          border-radius: 2.6666666667vw; }
        body #container #content .mmm-mypage .member-news-list li a .title {
          width: 100%;
          font-size: 4.2666666667vw;
          line-height: 1.2; }
    body #container #content .mmm-mypage .page-numbers {
      gap: 0 3.2vw; }
      body #container #content .mmm-mypage .page-numbers li .page-numbers {
        font-size: 3.2vw;
        line-height: 5.8666666667vw;
        min-width: 4vw; }
        body #container #content .mmm-mypage .page-numbers li .page-numbers.next, body #container #content .mmm-mypage .page-numbers li .page-numbers.prev {
          font-size: 0;
          width: 8vw;
          height: 8vw; }
    body #container #content .member-news-wrapper {
      padding-bottom: 23.4666666667vw; }
      body #container #content .member-news-wrapper .member-news-content {
        margin-bottom: 6.9333333333vw; }
        body #container #content .member-news-wrapper .member-news-content .member-news-content-header {
          padding-bottom: 4.2666666667vw;
          margin-bottom: 7.2vw; }
          body #container #content .member-news-wrapper .member-news-content .member-news-content-header label {
            font-size: 3.2vw;
            margin-bottom: 8vw; }
          body #container #content .member-news-wrapper .member-news-content .member-news-content-header .title {
            font-size: 5.3333333333vw;
            margin-bottom: 8vw; }
          body #container #content .member-news-wrapper .member-news-content .member-news-content-header .date {
            font-size: 2.6666666667vw; }
          body #container #content .member-news-wrapper .member-news-content .member-news-content-header .cat {
            font-size: 2.6666666667vw; }
        body #container #content .member-news-wrapper .member-news-content .member-news-content-article {
          padding-bottom: 8.8vw; }
          body #container #content .member-news-wrapper .member-news-content .member-news-content-article img {
            display: block;
            width: 100%;
            height: auto; }
      body #container #content .member-news-wrapper .post_link {
        padding: 0; }
        body #container #content .member-news-wrapper .post_link li {
          font-size: 2.6666666667vw; }
          body #container #content .member-news-wrapper .post_link li.prev, body #container #content .member-news-wrapper .post_link li.next {
            line-height: 8vw; }
            body #container #content .member-news-wrapper .post_link li.prev.prev a, body #container #content .member-news-wrapper .post_link li.next.prev a {
              padding-left: 9.8666666667vw; }
            body #container #content .member-news-wrapper .post_link li.prev.next a, body #container #content .member-news-wrapper .post_link li.next.next a {
              padding-right: 9.8666666667vw; }
            body #container #content .member-news-wrapper .post_link li.prev, body #container #content .member-news-wrapper .post_link li.next {
              min-width: 28.5333333333vw; }
          body #container #content .member-news-wrapper .post_link li.all {
            line-height: 6.4vw; }
  body #container #footer {
    min-width: unset; }
    body #container #footer #sitemap {
      height: auto;
      width: 100%;
      max-width: 89.3333333333vw;
      margin: 0 auto;
      padding: 6.4vw 0; }
      body #container #footer #sitemap ul {
        height: auto;
        font-size: 3.2vw;
        line-height: 8vw;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        gap: 0 0.2em; }
        body #container #footer #sitemap ul li {
          margin: 0;
          border: none; }
          body #container #footer #sitemap ul li a {
            font-size: 3.2vw;
            margin: 0; }
          body #container #footer #sitemap ul li:has(+ li)::after {
            content: "|";
            font-weight: 100;
            color: #ffffff;
            padding-left: 0.2em; }
    body #container #footer #address {
      height: auto;
      padding: 11.2vw 0 16vw; }
      body #container #footer #address img {
        width: 77.0666666667vw;
        margin: 0 auto 6.6666666667vw; }
      body #container #footer #address p {
        font-size: 3.2vw;
        line-height: 5.3333333333vw; }

/*# sourceMappingURL=style-sp.css.map */
