
/* ==========================================================================
//サイト共通
========================================================================== */
/* 上マージン */
.mt_0{ margin-top: 0 !important; }
.mt_5{ margin-top: 5px !important; }
.mt_10{ margin-top: 10px !important; }
.mt_15{ margin-top: 15px !important; }
.mt_20{ margin-top: 20px !important; }
.mt_25{ margin-top: 25px !important; }
.mt_30{ margin-top: 30px !important; }
.mt_35{ margin-top: 35px !important; }
.mt_40{ margin-top: 40px !important; }
.mt_50{ margin-top: 50px !important; }
.mt_60{ margin-top: 60px !important; }
.mt_70{ margin-top: 70px !important; }
.mt_80{ margin-top: 80px !important; }
.mt_90{ margin-top: 90px !important; }
.mt_100{ margin-top: 100px !important; }
/* 下マージン */
.mb_0{ margin-bottom: 0 !important; }
.mb_5{ margin-bottom: 5px !important; }
.mb_10{ margin-bottom: 10px !important; }
.mb_15{ margin-bottom: 15px !important; }
.mb_20{ margin-bottom: 20px !important; }
.mb_25{ margin-bottom: 25px !important; }
.mb_30{ margin-bottom: 30px !important; }
.mb_35{ margin-bottom: 35px !important; }
.mb_40{ margin-bottom: 40px !important; }
.mb_50{ margin-bottom: 50px !important; }
.mb_60{ margin-bottom: 60px !important; }
.mb_70{ margin-bottom: 70px !important; }
.mb_80{ margin-bottom: 80px !important; }
.mb_90{ margin-bottom: 90px !important; }
.mb_100{ margin-bottom: 100px !important; }
/* 右マージン */
.mr_0{ margin-right: 0 !important; }
.mr_5{ margin-right: 5px !important; }
.mr_10{ margin-right: 10px !important; }
.mr_15{ margin-right: 15px !important; }
.mr_20{ margin-right: 20px !important; }
.mr_25{ margin-right: 25px !important; }
.mr_30{ margin-right: 30px !important; }
.mr_35{ margin-right: 35px !important; }
.mr_40{ margin-right: 40px !important; }
.mr_50{ margin-right: 50px !important; }
.mr_60{ margin-right: 60px !important; }
.mr_70{ margin-right: 70px !important; }
.mr_80{ margin-right: 80px !important; }
.mr_90{ margin-right: 90px !important; }
.mr_100{ margin-right: 100px !important; }
/* 左マージン */
.ml_0{ margin-left: 0 !important; }
.ml_5{ margin-left: 5px !important; }
.ml_10{ margin-left: 10px !important; }
.ml_15{ margin-left: 15px !important; }
.ml_20{ margin-left: 20px !important; }
.ml_25{ margin-left: 25px !important; }
.ml_30{ margin-left: 30px !important; }
.ml_35{ margin-left: 35px !important; }
.ml_40{ margin-left: 40px !important; }
.ml_50{ margin-left: 50px !important; }
.ml_60{ margin-left: 60px !important; }
.ml_70{ margin-left: 70px !important; }
.ml_80{ margin-left: 80px !important; }
.ml_90{ margin-left: 90px !important; }
.ml_100{ margin-left: 100px !important; }

/* テーブル */
.free-table01{
   width: 100%;
   border-left: solid 1px #CCC;
   border-top: solid 1px #CCC;
   margin-bottom: 1em;
}
.free-table01 th,
.free-table01 td{
   padding: .75em;
   text-align: center;
   border-right: solid 1px #CCC;
   border-bottom: solid 1px #CCC;
}
.free-table01 th{
   background-color: #f3f2f2;
}
.free-table01.clm3 td{
   width: 33.3333%;
}
.free-table01.clm4 td{
   width: 25%;
}

.small{
   font-size: .85em;
}
.bold{
   font-weight: 700;
}
.center_txt{
   text-align: center;
}
h2.tit02 {
   margin-bottom: 50px;
}
.mb50{
   margin-bottom: 50px;
}


/* ==========================================================================
//フリーレイアウト
========================================================================== */
.free-layout .section{
   margin-bottom: 6em;
}
.free-layout .tit02 {
   margin-bottom: 60px;
}
.free-layout .tit04 {
   margin-top: 40px;
   margin-bottom: 20px;
}
.free-layout .section p{
	margin-bottom: 1.35em;
	line-height: 1.65;
}
.free-layout ul:not(.ul01):not(.ul02):not(.ul_nav){
	list-style: disc !important;
   margin: 1em 0 1em 1.5em;
}
.free-layout ol:not(.ol01){
   list-style: decimal !important;
   margin: 1em 0 1em 1.5em;
}
.free-layout .freespace_wrap {
   margin-bottom: 50px;
}
.free-layout .dl01 > dl:before {
   width: 25%;
}
.free-layout .dl01 > dl > dt {
   width: 25%;
}
.free-layout table{
   width: 100%;
   border-left: solid 1px #CCC;
   border-top: solid 1px #CCC;
   margin-bottom: 1em;
}
.free-layout table th,
.free-layout table td{
   padding: .75em;
   text-align: center;
   border-right: solid 1px #CCC;
   border-bottom: solid 1px #CCC;
}

/* ==========================================================================
// ヘッダ
========================================================================== */
.nolink{
   pointer-events: none
}
.fv img.fv__img.pc {
  width: 100%;
  aspect-ratio: 17 / 5;
  object-fit: cover;
}
.fv img.fv__img.sp {
  width: 100%;
  aspect-ratio: 39 / 20;
  object-fit: cover;
}

/* ==========================================================================
// フッタ
========================================================================== */
.footer-grid {
   gap: 4vw;
}
.footer-grid__first {
    width: 25vw;
}

@media screen and (width <= 768px) {
   .footer-grid__first {
      width: 80vw;
   }
}


/* ==========================================================================
//トップページ
========================================================================== */
.school__card-ttl {
   margin-bottom: min(3vw, 8px);
   line-height: 1.5;
}
@media screen and (width <= 768px) {
   .news__content-pickup .news__content-date {
      margin-right: 2vw;
   }
}
@media (min-width: 768px) {
    .links__pic-label {
        font-size: calc(1.5vw * var(--text-scale));
    }
}

/* ==========================================================================
//下層ページ共通
========================================================================== */
.content__ttl-ja {
    padding-bottom: 1.5vw;
}
.content__ttl {
    padding-bottom: 5vw;
}
@media (width <= 767px) {
    .content__ttl {
        padding-bottom: 9vw !important;
    }
    .content__ttl-ja {
        padding-bottom: 3.83vw;
        font-size: 7.5vw;
    }
}

/* ==========================================================================
// 施設案内 子ページ
========================================================================== */
.facility__name {
    font-size: calc(1.5vw * var(--text-scale));
}
@media (width <= 767px) {
    .facility__ttl {
        font-size: 6.5vw;
    }
}

/* ==========================================================================
// 施設案内 孫ページ
========================================================================== */
.facility-detail__tab a {
  width: 13.6vw;
  text-align: center;
}
.facility-detail .facility__content {
   line-height: 1.75;
   font-size: calc(1.15vw * var(--text-scale));
}
.facility-detail__main-img img,
.facility-detail__item img{
   border-radius: 7px;
}

/* パーク内ランニングコース：案内図 */
.runningcourse-park .facility-detail__main-img img {
    height: 45vw;
}
/* 車いす観覧席：案内図 */
.accessible-seating .facility-detail__main-img img {
   height: 80vw;
}
/* バリアフリートイレ＆更衣室：案内図 */
.accessible-restrooms .facility-detail__main-img img {
   height: 168vw;
}

@media (width <=767px) {
   .facility-detail__tab a {
      width: 42.1vw;
      white-space:inherit;
      font-size: 4vw;
   }
   .facility-detail .facility__content {
      font-size: inherit;
   }
   .facility-detail__caption {
      margin-top: 2vw;
   }
   /* パーク内ランニングコース：案内図 */
   .runningcourse-park .facility-detail__main-img {
        height: 143vw;
   }
   .runningcourse-park .facility-detail__main-img img {
        height: 143vw;
   }
   /* 車いす観覧席：案内図 */
   .accessible-seating .facility-detail__main-img {
      height: 86vw;
    }
    .accessible-seating .facility-detail__main-img img {
      height: 86vw;
    }
    /* バリアフリートイレ＆更衣室：案内図 */
   .accessible-restrooms .facility-detail__main-img {
      height: 180vw;
    }
    .accessible-restrooms .facility-detail__main-img img {
      height: 180vw;
    }
}


/* ==========================================================================
//ご利用案内
========================================================================== */
.guide .guide-page__inner .facility__dl-list{
    margin: 5.56vw 0 0;
}
.guide-bullet-list {
    margin: 2vw 0 0;
}
.guide-unit--line {
    padding-top: 0;
    border-top:none;
}
.guide-unit {
    padding-bottom: 3vw;
}
.guide-facility{
   padding-bottom: 3vw;
}
.guide-flow {
    border-top: none;
}
.guide-unit--line:last-child {
    border-bottom: none;
}
.guide-flow__title {
    font-size: calc(1.25vw * var(--text-scale));
    line-height: 2.5;
}
.guide-section__number-list li + li {
    margin-top: 0.5vw;
}
.guide-unit__text, .guide-organizer__lead, .guide-contact__row dt, .guide-contact__row dd {
    font-size: calc(1.18vw * var(--text-scale));
}
.guide-note-list li, .guide-bullet-list li, .guide-flow__list li, .guide-circle-list li {
    font-size: calc(1.18vw * var(--text-scale));
}
h2.guide-section__title {
    font-size: calc(2vw * var(--text-scale));
}
h3.guide-unit__title {
    font-size: calc(1.5vw * var(--text-scale));
}
@media screen and (width <=768px) {
   h2.guide-section__title {
      font-size: 6.15vw;
   }
   h3.guide-unit__title,
   .guide-facility__title {
      font-size: 4.6vw;
   }
   .guide-unit__text {
      padding-left: 3.67vw;
   }
   .guide-unit__text,
   .guide-organizer__lead,
   .guide-contact__row dt,
   .guide-contact__row dd {
      font-size: inherit;
   }
   .guide-note-list li,
   .guide-bullet-list li,
   .guide-flow__list li,
   .guide-circle-list li {
      font-size: inherit;
   }
   .guide-flow__title {
      font-size: 4.1vw;
   }
}

/* ==========================================================================
//ご利用料金
========================================================================== */
.table__ttl {
    font-size: calc(2.1vw * var(--text-scale));
    margin-bottom: .5em;
}
.table__subttl {
    font-size: calc(1.6vw * var(--text-scale));
}
.discount__ttl {
    font-size: calc(2.1vw * var(--text-scale));
    margin-bottom: 2vw;
}
.discount__lead {
    font-size: calc(1.5vw * var(--text-scale));
}
.discount__desc {
    font-size: calc(1.25vw * var(--text-scale));
    font-weight: normal;
}
.discount__item-ttl {
    font-size: calc(1.3vw * var(--text-scale));
    margin-bottom: 0.85vw;
}
.discount__text {
    font-size: calc(1.2vw * var(--text-scale));
}
.discount__list {
    font-size: calc(1.2vw * var(--text-scale));
}
.discount__list li {
    line-height: 1.5;
}
.discount__table .ground__tbody .ground__td {
    padding: 1.1vw;
    line-height: 1.75;
}
.ground__tbody .ground__td {
    font-size: calc(1.2vw * var(--text-scale));
}
@media (max-width: 767px) {
   .table__ttl {
      font-size: 6.15vw;
      margin-bottom: inherit;
   }
   .table__subttl {
      font-size: 4.6vw;
   }
   .ground__tbody .ground__td {
      font-size: 3.84vw;
   }
   .discount__ttl {
      font-size: 6.15vw;
      margin-bottom: 5vw;
   }
   .discount__lead {
      font-size: 4.61vw;
   }
   .discount__item-ttl {
      font-size: 4.1vw;
      margin-bottom: 2.05vw;
   }
   .discount__desc {
      font-size: 4.1vw;
   }
   .discount__text {
      font-size: 4.1vw;
    }
    .discount__list {
      font-size: 4.1vw;
    }
    .discount__table .ground__tbody .ground__td {
      padding: 4vw 2.05vw;
    }
}

/* ==========================================================================
//アクセス
========================================================================== */
.parking__img.pc {
    width: 60vw;
}
@media (width <= 767px) {
    .parking__img.sp {
        height: 128.33vw;
    }
}

/* ==========================================================================
//大会・イベント主催者様へ
========================================================================== */
.organizers__text {
    font-size: calc(1.2vw * var(--text-scale));
    line-height: 1.7;
}
.organizers__steps {
    margin: 1.5vw 0 0;
}
.organizers__step-text {
    font-size: calc(1.15vw * var(--text-scale));
}
.organizers__download {
    margin-top: 2.5vw;
}
.organizers__contact-term {
    font-size: calc(1.2vw * var(--text-scale));
    line-height: 1.5;
}
.organizers__contact-desc {
    font-size: calc(1.2vw * var(--text-scale));
    line-height: 1.5;
}
@media screen and (width <= 768px) {
    .organizers__text, 
    .organizers__note, 
    .organizers__step-text, 
    .organizers__step-text::before, 
    .organizers__step-text::after, 
    .organizers__contact-term, .organizers__contact-desc {
      font-size: 4.1vw;
    }
}

/* ==========================================================================
//年間予定
========================================================================== */
.news__meta.event__meta {
    padding-bottom: 1vw;
    margin-bottom: 2vw;
}
.event_data{
   display: flex;
}
.event_data dt{
   width: 3vw;
}
.event_data {
    font-family: Poppins, sans-serif;
    font-size: calc(1.3vw * var(--text-scale));
    font-weight: 700;
    margin-bottom: 1em;
}
.event_data:last-of-type {
   border-bottom: 1px solid #9b9b9b;
   margin-bottom: 2vw;
   padding-bottom: 2vw;
}
a.category-closed {
    pointer-events: none;
    color: inherit; 
    text-decoration: none;
}
.event-side .news__content-category {
   font-weight: inherit;
}
.event-side .news__content-ttl.inactive {
   color: inherit;
}


/* ==========================================================================
//教室案内（一覧）
========================================================================== */
.entry_pre,
.entry_arrival,
.entry_today{
   background-color: #FFF;
   color: #826190;
   border: solid 1px #826190;
}
.entry_off{
   background-color: #9b9b9b;
   color: #FFF;
   border: none;
}
/* ==========================================================================
//教室案内（詳細）
========================================================================== */
.event__content.user_edit p{
    font-size: calc(1.2vw * var(--text-scale));
    margin-bottom: 0;
}
.event__content.user_edit ul,
.event__content.user_edit ol{
    line-height: 1.5;
    margin-left: 1em;
    margin-bottom: 0;
}
.event__dt,
.event__sep,
.event__dd {
    line-height: 1.5;
}
@media screen and (width <= 768px) {
   .event__content.user_edit p{
      font-size: inherit;
   }
}
/* ==========================================================================
//教室申し込み
========================================================================== */
#my_select_wrap, #my_select_required {
   display: none;
}
.entry_confirm_doc .temp-txt01,
.entry_complete_doc .temp-txt01{
   text-align: center;
}
/* 確認画面 */
.entry_confirm .apply-notes__inner,
.entry_complete .apply-notes__inner{
   text-align: center;
}
.entry_confirm .apply-notes__inner p,
.entry_complete .apply-notes__inner p{
   line-height: 1.75;
}
.entry_confirm #privacyAgree{
   display: none;
}
.entry_confirm form.form .form-locked {
  opacity: 1;
}
.entry_confirm form.form .form-locked * {
  pointer-events: auto;
}
.entry_confirm .message_field{
   line-height: 1.5;
}
@media screen and (width <= 768px) {
   .entry_confirm .apply-notes__inner p,
   .entry_complete .apply-notes__inner p{
      text-align: left;
   }
}

/* ==========================================================================
//アクセス
========================================================================== */


/* ==========================================================================
//お知らせ
========================================================================== */
span.new{
   color: red;
   padding-left: .5em;
   font-size: .85em;
}
.news-detail__content span.new{
   font-size: .5em;
}
.news-list .news-category__title {
   margin: 0;
   color: #826190;
   font-family: "Noto Sans JP", sans-serif;
   font-size: calc(2vw * var(--text-scale));
   font-weight: 700;
   line-height: 1;
   display: flex;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   margin-bottom: 3em;
}
.news-list .content__ttl,
.news-detail .content__ttl {
    padding-bottom: 5vw;
}
.news__content-date,
.news__content-ttl {
   font-size: calc(1.2vw * var(--text-scale));
}
.news__content {
    margin: 0 auto 0;
}
.news__content-date {
   margin-right: .5vw;
}
.news-flex {
   margin: 0 auto 0;
}
.news__content--body p {
    font-size: calc(1.2vw * var(--text-scale));
}
.news__content--body ul li {
   font-size: calc(1.2vw * var(--text-scale));
   line-height: inherit;
}
.news__content--body ol li {
   font-size: calc(1.2vw * var(--text-scale));
   line-height: 1.6;
}
.news-list .news__content .detailed-btn {
   text-align: center;
   margin: 0 auto;
}
@media screen and (width <= 768px) {
   .news-list .news-category__title {
     font-size: calc(6.15vw * var(--text-scale));
     margin-bottom: 2em;
   }
   .news__content-date,
   .news__content-ttl {
      font-size: inherit;
   }
   .news__content--body p {
      font-size: inherit;
   }
   .news__content--body ul li {
      font-size: inherit;
   }
   .news__content--body ol li {
      font-size: inherit;
   }
}

/* ==========================================================================
//お問い合わせ
========================================================================== */
.contact-notes__box {
    padding: 3vw;
}
.contact-form__inner {
    display: flex;
    flex-direction: column;
    gap: 3.88vw;
}
/* 入力画面 */
form.form .form-locked {
  opacity: 0.3;
}
form.form .form-locked * {
  pointer-events: none;
}
form.form .form-locked.unlocked {
  opacity: 1;
}
form.form .form-locked.unlocked * {
  pointer-events: auto;
}
/* 確認画面 */
.confirm .contact-notes__inner,
.complete .contact-notes__inner{
   text-align: center;
}
.confirm .contact-notes__inner p,
.complete .contact-notes__inner p{
   line-height: 1.75;
}
.confirm .contact-form #privacyAgree{
   display: none;
}
.confirm .contact-form form.form .form-locked {
  opacity: 1;
}
.confirm .contact-form form.form .form-locked * {
  pointer-events: auto;
}
.confirm .contact-form .message_field{
   line-height: 1.5;
}
@media screen and (width <= 768px) {
   .confirm .contact-notes__inner p,
   .complete .contact-notes__inner p{
      text-align: left;
   }
}

/* ==========================================================================
//個人情報保護方針
========================================================================== */


/* ==========================================================================
404ページ
========================================================================== */
.error404 .privacy__inner{
   text-align: center;
   line-height: 2;
}
.error404 .privacy__inner p{
   font-size: calc(1.18vw * var(--text-scale));
}
@media screen and (width <= 768px) {
   .content__ttl-ja {
      margin: 0 1em;
      text-align: center;
      line-height: 1.25;
   }
   .error404 .privacy__inner p{
      font-size:inherit;
   }
}

/* ==========================================================================
   ワードプレス
   ========================================================================== */
.user_edit em,
.user_edit strong{
    font-weight: 700;
    font-style: inherit;
}
.user_edit a{
   color: #2aa7ec;
}
.user_edit p{
   margin-bottom: 1.35em;
   line-height: 1.65;
}
.user_edit img{
   max-width: 100%;
   height: auto;
}
.user_edit::after,
.user_edit p::after{
   content: " ";
   display: block;
   clear: both;
}
.user_edit ul {
   list-style: inherit;
}
.user_edit ol {
   list-style: decimal;
   margin-left: 1.25em;
   margin-bottom: 1.25em;
}
.user_edit table {
   border-top: solid 1px #DDD;
   border-right: solid 1px #DDD;
   margin: 1.5em 0;
}
.user_edit table td {
   border-bottom: solid 1px #DDD;
   border-left: solid 1px #DDD;
   padding: .65em !important;
}
.news__content--body.user_edit img {
display:inherit;
max-width:inherit;
width:inherit;
margin: inherit;
}
.alignright {
   float: right;
   margin: 0 0 15px 15px !important;
}
.alignleft {
   float: left;
   margin: 0 15px 15px 0 !important;
}
