.elementor-kit-15242{--e-global-color-primary:#005ECC;--e-global-color-secondary:#FFFFFF;--e-global-color-text:#000000;--e-global-color-accent:#E34548;--e-global-color-0295c10:#1DA0FF;--e-global-color-264b7b0:#29B971;--e-global-color-7695a6c:#ACDCFF;--e-global-color-d57719b:#F0F6FA;--e-global-color-5e70862:#9CD5FD;--e-global-color-e5aefbf:#76B7F2;--e-global-color-52d4a76:#C6E4FF;--e-global-color-d3b455d:#FEF4F4;--e-global-color-36832c4:#F2FBF7;--e-global-color-6a1f32f:#C1EFD8;--e-global-color-b2fb797:#01A855;--e-global-color-3f82959:#E0E0E0;--e-global-color-29deeea:#6F6F6F;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-weight:500;font-size:1.6rem;}.elementor-kit-15242 button,.elementor-kit-15242 input[type="button"],.elementor-kit-15242 input[type="submit"],.elementor-kit-15242 .elementor-button{background-color:var( --e-global-color-secondary );color:var( --e-global-color-primary );border-style:solid;border-width:2px 2px 2px 2px;border-radius:60px 60px 60px 60px;}.elementor-kit-15242 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1180px;}.e-con{--container-max-width:1180px;--container-default-padding-top:60px;--container-default-padding-right:10px;--container-default-padding-bottom:60px;--container-default-padding-left:10px;}.elementor-widget:not(:last-child){--kit-widget-spacing:0px;}.elementor-element{--widgets-spacing:0px 0px;--widgets-spacing-row:0px;--widgets-spacing-column:0px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;--container-default-padding-top:50px;--container-default-padding-right:15px;--container-default-padding-bottom:50px;--container-default-padding-left:15px;}}@media(max-width:767px){.elementor-kit-15242{font-size:1.4rem;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;--container-default-padding-top:40px;--container-default-padding-right:15px;--container-default-padding-bottom:40px;--container-default-padding-left:15px;}}/* Start custom CSS *//*** 基本設定 ***/
/* フォント設定 */
@font-face {
    font-family: "ZenKakuGothicNew-Bold";
    font-display: swap;
    src: url("/com/font/ZenKakuGothicNew-Bold.woff2") format("woff2"),
         url("/com/font/ZenKakuGothicNew-Bold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
}

@font-face {
    font-family: "ZenKakuGothicNew-Medium";
    font-display: swap;
    src: url("/com/font/ZenKakuGothicNew-Medium.woff2") format("woff2"),
         url("/com/font/ZenKakuGothicNew-Medium.woff") format("woff");
    font-weight: 500;
    font-style: normal;
}
html{
    font-size: 62.5%;
    margin-top:0!important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}


body * {
    font-family: "ZenKakuGothicNew-Medium", "Arial", "游ゴシック Medium", "Yu Gothic Medium", "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	line-height: 1.8;
    font-weight: normal!important;
}
body {
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
* {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

[id] {
    scroll-margin-top: 150px !important;
}

:target {
    scroll-margin-top: 150px !important;
}

@media (max-width:1024px) {
    [id] {
        scroll-margin-top: 90px !important;
    }
    
    :target {
        scroll-margin-top: 90px !important;
    }
}
/* 太さ調整用 */
h1,h2,h3,h4,h5,h6,
.font-bold *,
strong,
b{
    font-family: "ZenKakuGothicNew-Bold";
    font-weight: normal!important;
}
.elementor-editor-element-settings,
.elementor-editor-element-settings * {
    font-family: eicons!important;
}

/* リンク */
/*a:hover{
    opacity: .8;
}*/
a:focus-visible,
a:focus{
    outline:none!important;
}
.ast-single-post .entry-content a,
.ast-comment-content a:not(.ast-comment-edit-reply-wrap a) {
    text-decoration: none;
}
.no-clear a {
    opacity: 1.0!important;
}

/* Elementor pタグ余白調整 */
p:last-of-type{
    margin-bottom:0;
}

/* Elementorフォーカス調整 */
input:focus, input[type=text]:focus, input[type=email]:focus, input[type=url]:focus, input[type=password]:focus, input[type=reset]:focus, input[type=search]:focus, input[type=number]:focus, textarea:focus, .wp-block-search__input:focus, [data-section=section-header-mobile-trigger] .ast-button-wrap .ast-mobile-menu-trigger-minimal:focus, .ast-mobile-popup-drawer.active .menu-toggle-close:focus, .woocommerce-ordering select.orderby:focus, #ast-scroll-top:focus, #coupon_code:focus, .woocommerce-page #comment:focus, .woocommerce #reviews #respond input#submit:focus, .woocommerce a.add_to_cart_button:focus, .woocommerce .button.single_add_to_cart_button:focus, .woocommerce .woocommerce-cart-form button:focus, .woocommerce .woocommerce-cart-form__cart-item .quantity .qty:focus, .woocommerce .woocommerce-billing-fields .woocommerce-billing-fields__field-wrapper .woocommerce-input-wrapper>.input-text:focus, .woocommerce #order_comments:focus, .woocommerce #place_order:focus, .woocommerce .woocommerce-address-fields .woocommerce-address-fields__field-wrapper .woocommerce-input-wrapper>.input-text:focus, .woocommerce .woocommerce-MyAccount-content form button:focus, .woocommerce .woocommerce-MyAccount-content .woocommerce-EditAccountForm .woocommerce-form-row .woocommerce-Input.input-text:focus, .woocommerce .ast-woocommerce-container .woocommerce-pagination ul.page-numbers li a:focus, body #content .woocommerce form .form-row .select2-container--default .select2-selection--single:focus, #ast-coupon-code:focus, .woocommerce.woocommerce-js .quantity input[type=number]:focus, .woocommerce-js .woocommerce-mini-cart-item .quantity input[type=number]:focus, .woocommerce p#ast-coupon-trigger:focus{
    border: none;
}

/* ハイライト */
.highlight{
    text-align: center;
}
.highlight span{
    background: linear-gradient(transparent 50%, #ACDCFF 50%);
    padding: 0 5px 0 0;
    display: inline!important;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}
.highlight.blue2 span{
    background: linear-gradient(transparent 50%, #629ADF 50%);
}
.highlight.green span{
    background: linear-gradient(transparent 50%, #C1EFD8 50%);
}
.highlight.red span{
    background: linear-gradient(transparent 50%, #FFBCBD 50%);
}

/* タイトル関連 */
.title *{
    line-height:1.2!important;
}
.title1 h1{
    display: inline-block!important;
    font-size: 5rem;
    color:#FFF!important;
    background:#005ECC;
    padding: 10px 28px;
}

.title2 span{
    display: inline-block!important;
    font-size: 4rem;
    color: #005ECC;
    background: #FFF;
    padding: 10px 28px;
}
.title3 h2{
    text-align: center;
    margin-bottom: 40px!important;
}
.title3 h2 span{
    display: inline;
    font-size: 3.6rem;
    background: linear-gradient(transparent 50%, #ACDCFF 50%);
    padding:0 10px;
    box-decoration-break: clone;
    -webkit-box-decoration-break: clone;
}
.title2 *,
.title3 *{
    font-family: "ZenKakuGothicNew-Bold"!important;
}

.title3.title-green h2 span{
    color:#01a855;
    background: linear-gradient(transparent 50%, #c1efd8 50%);
}

.title3.title-green2 h2 span{
    color:#FFF;
    background: linear-gradient(transparent 50%, #80C89B 50%);
}

/* コーディング */
.title4{
    margin-bottom: 30px!important;
}
.title4 span{
    font-size: 3.6rem;
    color: #005ECC;
    padding:0 10px;
    font-family: "ZenKakuGothicNew-Bold"!important;
}


@media (max-width:1024px) {
    .title1 h1{
        font-size: 2.6rem;
    }
    .title2 span{
        font-size: 2rem;
    }
    .title3 h2 span,
    .title4 span{
        font-size: 2.2rem;
        margin-bottom: 30px!important;
    }
}

/* .btn-contents：内部導線 */
.btn-contents a{
    transition: all .5s;
}
.btn-contents a:hover{
    opacity: .8;
}

/* 表示・非表示 */
/*---- スマホ調整 ----*/
@media (min-width:1025px) {
    .br-btn br,
    .pc-none{
        display:none!important;
    }
}
/*---- スマホ調整 ----*/
@media (max-width:1024px) {
    .sp-none{
        display:none!important;
    }
}

/* お知らせカテ色変更 */
/* 全体のテキストを白にする */
.elementor-post-info__terms-list-item {
    color: #ffffff !important;
    padding: 3px 10px;
    border-radius: 4px;
    text-decoration: none;
    font-weight: bold;
    display: inline-block;
    margin-right: 5px;
}

/* カテゴリ別：お知らせ (information) */
.elementor-post-info__terms-list-item[href*="information"] {
    background-color: #005ECC;
}

/* カテゴリ別：スタッフブログ (staff_blog) */
.elementor-post-info__terms-list-item[href*="staff_blog"] {
    background-color: #1DA0FF;
}

/* カテゴリ別：トピックス (event_topics) */
.elementor-post-info__terms-list-item[href*="event_topics"] {
    background-color: #29B971;
}

[data-cate="イベントリポート"] {
    background-color: #009F49;
}
[data-cate="教室紹介"] {
    background-color: #FF9A24;
}
[data-cate="施設紹介"] {
    background-color: #21B0FF;
}
[data-cate="管理人のつぶやき"] {
    background-color: #C14ED5;
}
[data-cate="イベント報告"] {
    background-color: #6FCB20;
}
[data-cate="さくらカフェ"] {
    background-color: #FF6F6F;
}
[data-cate="その他など"] {
    background-color: #888888;
}

/* トップへ戻る */
#ast-scroll-top {
    width: 55px;
    height: 55px;
    right: 25px;
    font-size: 3rem;
    line-height: 1;
    margin-bottom: 100px;
    background: #1da0ff;
}
#ast-scroll-top > .ast-icon{
    line-height: 1.5;
}

@media (max-width: 767px) {
    #ast-scroll-top {
        width: 40px;
        height: 40px;
        font-size: 2rem;
        margin-bottom: 70px;
        right: 20px;
    }
    #ast-scroll-top > .ast-icon{
        line-height: 1.8;
    }
}

/* レイアウト関連 */
.data-box {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    margin: 0 auto;
}

.data-box>div,
.data-box>li,
.data-box>p {
    display: flex;
    flex-direction: column;
}

/* _____ ベース（右寄せ） _____ */
.data-box.data-box-end {
    justify-content: flex-end;
}

/* _____ ベース（センター寄せ） _____ */
.data-box.data-box-center {
    justify-content: center;
}

/* _____ ベース（均等割り） _____ */
.data-box.data-box-between {
    justify-content: space-between;
}

/* _____ 垂直ベース（高さいっぱい） _____ */
.data-box.data-align-stretch {
    align-items: stretch;
}

/* _____ 垂直ベース（上下真ん中寄せ） _____ */
.data-box.data-align-center {
    align-items: center;
}

/* _____ 垂直ベース（下揃え） _____ */
.data-box.data-align-end {
    align-items: flex-end;
}

/* .inner */
.inner{
    width: 100%;
    max-width: 1180px;
    margin: 0 auto;
    padding: 60px 0;
}

@media (max-width: 1024px) {
    .inner{
        width: 100%;
        max-width: 100%;
        padding: 30px 15px;
    }
}

/* .sns-list */
.sns-list{
    overflow: visible;
}
.sns-list li{
    padding: 0 10px;
}

/*---------------------
  ヘッダー
---------------------*/
header{
    box-shadow: 0 0 10px 1px #00000029;
    transition: all .5s ease-in-out;
    position: fixed !important;
    left: 0;
    right: 0;
    top: 0;
    z-index: 11;
}
header .e-con-inner,
header .elementor-widget-shortcode{
    width: 100%!important;
    max-width: 100%!important;
}

header>div {
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    flex-direction: row;
}

header .header-bk{
    overflow: visible;
}
header .logo-box {
    width: 470px;
    padding:10px 20px;
    justify-content: center!important;
    align-items: center!important;
}

header .logo-box a img[src$=".svg"]{
    width:auto!important;
    height:58px;
}

/*--- フリーワード検索 ---*/
.gsc-control-cse{
    border: none!important;
    background-color:transparent!important;
    padding: 0!important;
}
table.gsc-search-box{
    margin-bottom: 0!important;
}
table.gsc-search-box,
table.gsc-search-box tr,
table.gsc-search-box td,
table.gsc-search-box th{
    border: none!important;
}

.gsc-input .gsc-input-box{
    border: solid 1.5px #FFF;
    background: transparent!important;
}
.gsib_a{
    padding: 0 10px 0 45px!important;
    background-image: url(/wp-content/uploads/2026/03/icon_search.svg)!important;
}
.gsib_b{
    padding: 0!important;
}
.gsib_a::before{
    width: 45px!important;
}
.gsst_a{
    padding: 0!important;
}
.gscb_a{
    background-image: url(/wp-content/uploads/2026/03/icon_closs.svg)!important;
}
.gsc-input{
    font-size: 1.6rem!important;
    padding: 0!important;
    border: none!important;
    margin: 0!important;
    box-shadow: none!important;
    height: auto!important;
    line-height: 1.4!important;
    background: transparent!important;
    color: #FFF!important;
    font-family: "ZenKakuGothicNew-Bold";
}
input.gsc-input::placeholder {
    color: #FFF !important;
    opacity: 1 !important;
}
form.gsc-search-box{
    width: 100%!important;
    max-width: 100%!important;
    margin: 0!important;
}
.navigation-screen .gcse-search{
    margin-bottom: 20px;
}

/* 検索結果 */
.gsc-results-close-btn{
    background: url(/wp-content/uploads/2026/03/icon_closs2.svg) no-repeat center center!important;
    z-index: 111;
}
.gsc-above-wrapper-area,
.gsc-wrapper{
    max-width: 100%!important;
}
.gsc-cursor-box{
    font-size: 2.4rem;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page{
    margin-right: 15px;
}

/*--- メニューボックス ---*/
header .menu-box {
    width: calc(100% - 470px - 280px);
    justify-content: space-between!important;
}
header .tool-box{
    color:#FFF;
}

header .navigation_wrapper{
    margin: 0;
    padding: 0;
}
header .navigation_wrapper li{
    list-style: none;
}

/*--- ボタンリスト ---*/
header .btn-list {
    width: 280px;
    justify-content: center!important;
}
header .btn-list li{
    width: 50%;
}

header .btn-list a{
    display: block;
    text-align: center;
    padding: 5px;
}

header .btn-list a img{
    width: auto;
    height: 80px;
}

header .btn-list .btn-reservation a{
    background: #005ECC;
}
header .btn-list .btn-event a{
    background: #2DC478;
}

.ast-header-navigation-arrow{
    display: none;
}
/* 翻訳 */
#gt_float_wrapper{
    transition: .5s;
    z-index: 999!important;
}
#gt_float_wrapper:not(.float-scroll-active){
    right:285px!important;
    top:5px!important;
}
.gt_float_switcher{
    font-size:1.4rem!important;
}
.gt_float_switcher .gt-selected .gt-current-lang{
    padding:2px 5px!important;
}

/*--- デバイス調整 ---*/
@media (min-width: 1025px) {
    .el-humburger,
    header .sns-list{
        display: none;
    }
    header .tool-box{
        background: #1DA0FF;
        width: 300px;
        position: relative;
        margin-right: 0;
        margin-left: auto;
    }

    header .menu-box > .tool-box{
        padding:5px 100px 5px 10px;
        height: 40.8px;
    }
    header .menu-box > .tool-box .gsib_b{
        height: auto!important;
    }
    .fixed-nav{
        text-align: right;
    }
    .navigation-screen {
        position: static !important;
        padding: 0 !important;
        overflow: visible !important;
    }
    .navigation_wrapper {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    .gnavi-box{
        padding-right: 36px;
    }
    .navigation_wrapper > li {
        position: relative;
        line-height:1.2;
    }
    .navigation_wrapper > li a{
        color: #000; 
        font-family: "ZenKakuGothicNew-Bold";
        font-weight: normal!important;      
        line-height:1.2;
        display: inline-block;
        text-align: center;
        padding: 15px 12px;
    }
    .navigation_wrapper .current-menu-item a,
    .navigation_wrapper > li a:hover{
        color: #005ECC;
    }
    .navigation_wrapper .current-menu-item.information li a,
    .navigation_wrapper .current-menu-item.beginner a{
        color: #000;
    }

    .navigation_wrapper .current-menu-item.information li a:hover,
    .navigation_wrapper .current-menu-item.beginner a:hover{
        color: #005ECC;
    }

    /* PC用ドロップダウン（ホバーで表示） */
    .navigation_wrapper .sub-menu {
        position: absolute;
        top: 100%;
        left: 0;
        min-width: 200px;
        background: #fff;
        display: none;
        z-index: 1000;
        box-shadow: 0 4px 10px rgba(0,0,0,0.1);
    }
    .navigation_wrapper li:hover > .sub-menu {
        display: block;
    }

    .navigation_wrapper .sub-menu a{
        padding: 10px 20px;
        display:block;
        text-align: left;
    }
}

@media (min-width: 1025px) and (max-width:1442px){
    header .logo-box {
        width: 360px;
    }
    
    header .logo-box a img[src$=".svg"]{
        width:auto!important;
        height:52px;
    }
    /*--- メニューボックス ---*/
    header .menu-box {
        width: calc(100% - 360px - 210px);
    }
    header .tool-box{
        color:#FFF;
    }
    
    /*--- ボタンリスト ---*/
    header .btn-list {
        width: 210px;
    }

    .gnavi-box{
        padding-right: 10px;
    }
    #gt_float_wrapper:not(.float-scroll-active){
        right:217px!important;
    }
    
}

@media (min-width: 1025px) and (max-width:1297px){
    .navigation_wrapper > li a{
        padding: 10px 8px;
    }
}
@media (max-width: 1024px) {
    header .logo-box {
        width: calc(100% - 180px);
        padding:10px;
        order: 1;
        align-items: flex-start !important;
    }
    header .logo-box a img[src$=".svg"]{
        height:40px;
    }
    header .btn-list {
        width: 120px;
        order: 2;
    }
    header .btn-list a img{
        height: 50px;
    }
    header .menu-box {
        width: 60px;
        order: 3;
    }

    html.js_humburgerOpen,
    body.js_humburgerOpen {
        /* overflow: hiddenすら入れない（一度これで試してください） */
        position: static !important;
        height: auto !important;
    }

    /* メニュー自体を「画面全体を覆う板」にする */
    .gnavi-box.js_appear {
        display: block !important;
        position: fixed !important; /* 画面に固定 */
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        z-index: 999999 !important; /* 超絶背面にこないように大きく */
        background: #1DA0FF;
        overflow-y: auto !important; /* メニュー内はスクロール可能 */
        -webkit-overflow-scrolling: touch;
    }

    /* メニュー開閉ボタン：表示 */
    .el-humburger {
        position: fixed !important;
        right: 0;
        top: 0;
        bottom: 0;
        display: block;
        width: 60px;
        height: 60px;
        padding: 14px 13px 12px;
        background: #1DA0FF;
        z-index: 1000000 !important;
        transition: all 0.2s ease-in-out;
        cursor: pointer;
        pointer-events: auto;
    }
    
    .el-humburger>span {
        display: block;
        transition: all 0.2s ease-in-out;
        height: 2px;
        width: 100% !important;
    }
    
    .el-humburger .menu {
        color: #FFF;
        font-size: 1.2rem;
        line-height: 100%;
        text-align: center;
        margin-top: 0;
        margin-bottom: 0;
    }
    
    .el-humburger>span.top,
    .el-humburger>span.middle,
    .el-humburger>span.bottom {
        width: 100%;
        margin: 0 auto 6px;
        height: 2px;
        background: #FFF;
    }
    
    .js_humburgerOpen {
        overflow-x: initial;
    }
    
    .js_humburgerOpen .el-humburger .menu,
    .js_humburgerOpen .el-humburger .bottom {
        display: none;
    }
    
    .js_humburgerOpen .el-humburger {
        right: 0;
        top: 0;
        position: fixed !important;
    }
    
    .js_humburgerOpen .el-humburger>span.top {
        transform: translateY(13px) rotate(-45deg);
        width: 60%;
    }
    
    .js_humburgerOpen .el-humburger>span.middle {
        transform: translateY(13px) rotate(45deg);
        width: 60%;
        margin-top: -8px;
        margin-left: 1px;
    }

    .gnavi-box{
        background: #1DA0FF;
    }
    
    /* 表示・非表示設定 */
    .gnavi-box,
    .js_humburgerClose .gnavi-box {
        display: none;
    }
    
    /* メニューリスト：外枠 */
    .gnavi-box.js_appear {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100vw !important;
        height: 100vh !important;
        z-index: 9999 !important; /* ハンバーガー(10000)のすぐ下 */
        background: #1DA0FF;
        overflow-y: auto !important; /* メニュー自体をスクロール可能にする */
        -webkit-overflow-scrolling: touch;
    }
    
    .navigation-screen {
        position: relative !important; /* absoluteから変更 */
        width: 100%;
        min-height: 100%;
        padding: 30px 20px 80px !important; /* 上部にハンバーガー分の余白 */
        box-sizing: border-box;
    }
    
    .navigation-screen .logo {
        text-align: center;
    }
    
    .navigation-screen .logo img {
        width: auto;
        height: 40px;
        line-height: 0;
        margin-bottom: 15px;
    }
    .navigation-screen .elementor-element{
        margin: 0 auto;
        gap: 10px!important;
    }
    
    .navigation_wrapper{
        margin: 20px auto!important;
        display: grid !important;
        grid-template-columns: 1fr 1fr !important; /* 強制的に2カラム */
        gap: 1px;
        list-style: none;
        padding: 0;
        background-color: transparent;
    }

    .navigation_wrapper li{
        display: contents;
    }

    .navigation_wrapper .sub-menu{
        display: contents;
        margin-left: 0;
    }

    .navigation_wrapper .menu-link {
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 15px 10px;
        text-decoration: none;
        background-color: #fff;
        min-height: 50px;
        box-sizing: border-box;
        word-break: break-all;
        text-align: center;
        height: 100%;
    }
    .navigation_wrapper::after {
        content: "";
        background-color: #fff;
        display: block;
        min-height: 50px;
    }

    /* 翻訳 */
    #gt_float_wrapper:not(.float-scroll-active){
        right:5px!important;
        top:65px!important;
    }
    .gt_float_switcher img{
        width: 20px!important;
    }

    #gt_float_wrapper{
        right:65px!important;
        z-index: 10!important;
    }
    .gt_float_switcher .gt-selected .gt-current-lang{
        padding:5px!important;
    }
    /* アクセシビリティ/BOT */
    html.js_humburgerOpen #accessibility_settings_toggle,
    html.js_humburgerOpen .es-bubble-floating-button,
    html.js_humburgerOpen [class^="floating-panel__Container-sc-"],
    html.js_humburgerOpen [class^="FloatingButton__FloatingButtonContainer-sc-"],
    html.js_humburgerOpen #ast-scroll-top{
        z-index: -1!important;
    }
}
@media (max-width: 767px) {
    #accessibility_settings_toggle{
        right: 10px!important;
    }
    [class^="FloatingButton__FloatingButtonContainer-sc-"]{
        margin-right: 10px!important;
        margin-left: 10px!important;
    }

    /* 検索結果 */
    .gsc-results-wrapper-overlay{
        width: 90%!important;
        height: calc(100% - 5% - 80px)!important;
        left: 5%!important;
        top: 80px!important;
        padding: 15px!important;
    }

    .gsc-results-close-btn{
        display: block!important;
    }
    .gsc-cursor-box{
        font-size: 1.8rem!important;
    }
    .gsc-control-cse .gs-spelling, .gsc-control-cse .gs-result .gs-title, .gsc-control-cse .gs-result .gs-title *{
        font-size: 1.6rem!important;
    }

    .gsc-results .gsc-cursor-box .gsc-cursor-page{
        margin-right: 15px!important;
    }

    .gsc-webResult.gsc-result{
        padding-right: 0!important;
        padding-bottom: 0!important;
    }

}
@media (max-width: 640px) {
    .navigation-screen {
        padding-right: 20px;
        padding-left: 20px;
    }
}

/*---------------------
  フッター
---------------------*/
footer .f_logo img{
    width: 100%!important;
}
footer nav li a {
    padding-left: .75em!important;
}
footer nav li::before {
    content: "";
    width: 5px; 
    height: 5px;
    background: #FFF;
    border-radius: 50%;
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -2px;
}
footer .current-menu-item a{
    color:#FFF!important;
}

@media (min-width: 1025px) {
    footer .sns-list{
        justify-content: flex-start!important;
        margin-left: -10px;
    }
}
@media (max-width: 767px) {
    footer .f-nav-bk{
        display: flex;
        flex-wrap: wrap;
    }
    footer .f-nav1,
    footer .f-nav2{
        width: 50%;
    }
    footer .f-nav3{
        width: 100%;
    }
    
}
/*---------------------
  トップ
---------------------*/
.topics_data .img-data img {
    object-fit: cover;
    object-position: top;
    width: 100%;
    aspect-ratio: 16/9
}

.topics_data .img-data a:hover {
    opacity: .6
}
/* 初めての方へ */
.top-type{
    position: relative;
}
.top-type::after{
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    display: block;
    background: #F5FAFF;
    z-index: -2;
}
.top-type.guidetotraining::after{
    left: 0;
    background: #FEF4F4;
}
.top-type.openclass::after{
    background: #F2FBF7;
}

@media (min-width: 1300px) {
    /* 初めての方へ */
    .top-type{
        display: flex;
        align-items: center; /* これでtext-boxが上下中央に配置されます */
        min-height: 400px;
    }
    .top-type::after{
        left: 20px;
        border-radius: 60px 0 0 60px;
    }

    .top-type.guidetotraining::after{
        right: 20px;
        border-radius: 0 60px 60px 0;
    }

    .top-type .img-bg{
        position: absolute;
        right:0;
        top: 0;
        bottom: 0;
        border-radius: 60px 0 0 60px;
        overflow: hidden;
        width: calc(50% - 50px);
        z-index: -1;
    }
    .top-type.guidetotraining .img-bg{
        right:auto;
        left: 0;
        border-radius: 0 60px 60px 0;
    }
    .top-type .img-bg img {
        width: 100%;
        height: 100%;
        object-fit: cover;
    }

    .top-type .text-box{
        width: 50%;
        padding: 60px 0;
    }
}

@media (min-width: 1400px) {
    .top-type::after{
        left: 5%;
    }

    .top-type.guidetotraining::after{
        right: 5%;
    }

}

@media (max-width: 1299px) {
    .top-type{
        padding-right: 10px;
        padding-left: 10px;
    }
}
@media (max-width: 1024px) {
    .top-type{
        padding-right: 0;
        padding-left: 0;
    }
    .top-type .img-bg{
        margin-right: -10px;
        border-radius: 24px 0 0 24px;
        overflow: hidden;
    }
    .top-type.guidetotraining .img-bg{
        margin-left: -10px!important;
        margin-right: auto!important;
        border-radius: 0 24px 24px 0;
    }
}

/*---------------------
  サブページ
---------------------*/
/* ボタン */
main .btn-more a{
    border: solid 2px #005ECC;
    padding: 15px 40px 15px 20px;
    background: #FFF;
    border-radius: 60px;
    max-width: max-content;
    min-width: 300px;
    display: inline-block;
    position: relative;
    font-family: "ZenKakuGothicNew-Bold";
    z-index: 2;
}
main .btn-more a span{
    font-family: "ZenKakuGothicNew-Bold";
    line-height: 1.4;
}
/* _____ ボタンリスト  _____ */
.btn-list-more{
    list-style: none;
    margin: 0;
    overflow: visible;
}
.btn-list-more li{
    position: relative;
    max-width: 300px;
    width: 100%;
    margin: 10px 10px 0;
}
.btn-list-more .btn-none,
.btn-list-more li a{
    padding: 15px 40px 15px 20px;
    border: 2px solid #005ECC;
    color: #005ECC;
    font-size: 1.8rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
    line-height: 1.4;
    text-align: center;
    background: #FFF;
    border-radius: 60px;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: .4s;
    z-index: 0;
    height: 100%;
}
.btn-list-more .btn-none::after,
main .btn-more a::after,
.btn-list-more li a::after{
    position: absolute;
    right: 20px;
    top: 50%;
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    border-top: 3px solid #005ecc;
    border-right: 3px solid #005ecc;
    transform: rotate(45deg);
    border-radius: 2px;
    vertical-align: middle;
    margin-top: -4px;
}

main .btn-more a::after{
    border-color: #FFF;
}
main .btn-more.btn-blue-line a::after{
    border-color: #005ecc;
}
.class-btn-list{
    margin: 40px 0 60px;
}
.page-facilities #facilities .class-btn-list li a,
#info .class-btn-list li a,
#access .class-btn-list li a,
#parking .class-btn-list li a{
    border-color:#9CD5FD;
    background-color: #9CD5FD;
}

.btn-list-more .btn-none{
    border-color:#E0E0E0;
    background-color: #E0E0E0;
    color: #6F6F6F;
}

.btn-list-more .btn-none::after{
    border-color: #6F6F6F;
}

/* _____ アニメーション  _____ */
@keyframes snipetfadeinup {
    from {
        opacity: 0;
        transform: translate3d(0,100%,0);
    }

    to {
        opacity: 1;
        transform: none;
    }
}

.snipetfadeinup {
    animation-name: snipetfadeinup;
}


/* _____ ページメイン紹介ブロック  _____ */
.about-bk .inner{
    text-align: center;
}

.about-bk .attend-box,
.attend-bk .attend-box{
    margin-top: 30px;
    padding: 40px 60px 60px;
    background: #F0F6FA;
    border-radius: 60px;
}

.acf-main-title{
    text-align: center;
    font-size: 2.8rem;
    color: #005ECC;
    font-family: "ZenKakuGothicNew-Bold"!important;
    margin-bottom: 20px;
}
.acf-section{
    text-align: left;
}
.acf-section:not(:last-of-type){
    margin-bottom: 20px;
}
.acf-section .title5{
    font-size: 2rem;
    color: #005ECC;
    font-family: "ZenKakuGothicNew-Bold"!important;
}
/* _____ クラスリスト  _____ */
.classlist-bk{
    background: #F0F6FA;
    text-align: center;
}
.classlist-bk .inner > .free-editor{
    margin-bottom: 40px;
}

/* _____ クラスリスト  _____ */
.acf-page-block{
    border: solid 1px #005ECC;
    border-radius: 60px;
    background:#FFF;
    overflow: hidden;
}
.acf-page-block:not(:last-child){
    margin-bottom: 60px;
}
.acf-page-block .title6{
    color: #FFF;
    background:#005ECC;
    font-size: 3rem;
    line-height: 1.4;
    font-family: "ZenKakuGothicNew-Bold"!important;
    padding: 15px 10px;
    margin-bottom: 40px;
}
.acf-page-block .title5{
    color:#005ECC;
    font-size: 2.4rem;
    line-height: 1.4;
    font-family: "ZenKakuGothicNew-Bold"!important;
    margin: 0 40px 10px;
}
.acf-page-block > div{
    margin: 0 40px 40px;
    overflow: visible;
}
.acf-sub-item {
    text-align: left;
}
.acf-sub-item > div{
    margin-bottom:20px;
}
.acf-sub-item .title7-bk{
    padding-bottom: 10px;
    border-bottom:solid 2px #005ECC;
}
.acf-sub-item .title7{
    color:#005ECC;
    font-size: 3rem;
    line-height: 1.4;
    font-family: "ZenKakuGothicNew-Bold"!important;
}
.acf-sub-item .title7 .small{
    font-size: 2.2rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
    padding-left: 5px;
}
.acf-sub-item .price{
    color:#005ECC;
    font-size: 2rem;
    line-height: 1.4;
    font-family: "ZenKakuGothicNew-Bold"!important;
}

.acf-table table,
.acf-table th,
.acf-table td{
    border-color: #D5D5D5;
    line-height: 1.4;
    white-space: pre-wrap;
}
.acf-table th{
    background: #C6E4FF;
    color:#005ECC;
    text-align: center;
    font-size: 1.8rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
}
.acf-table td{
    text-align: center;
}

.acf-sub-item .free-editor{
    padding: 0 10px;
}

.acf-page-block .class-none{
    font-size: 2rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
    text-align: center;
    color:#005ECC;
    margin: 0 40px 40px;
}

/* ページ別カラー（赤） */
.page-oncharter .classlist-bk{
    background: #FEF4F4;
}
.page-oncharter .title4 span{
    color: #E34548;
    background: linear-gradient(transparent 50%, #FFD3D4 50%);
}
.page-oncharter .about-bk .attend-box,
.page-oncharter .attend-bk .attend-box{
    background: #FEF4F4;
}
.page-oncharter .acf-main-title,
.page-oncharter .acf-section .title5{
    color: #E34548;
}
#faq2 li a,
.btn-list-more .faq-button2,
.btn-list-more.btn-red li a,
.page-oncharter .btn-list-more li a{
    border-color: #E34548;
    color:#E34548;
}
#faq2 li a::after,
.btn-list-more .faq-button2::after,
.btn-list-more.btn-red li a:after,
.page-oncharter .btn-list-more li a:after{
    border-color: #E34548;
}
.page-oncharter .acf-page-block{
    border-color:#E34548;
}
.page-oncharter .acf-page-block .title6{
    background:#E34548;
}
.page-oncharter .acf-page-block .title5{
    color:#E34548;
}
.page-oncharter .acf-sub-item .title7-bk{
    border-color:#E34548;
}
.page-oncharter .acf-sub-item .title7{
    color:#E34548;
}
.page-oncharter .acf-sub-item .price{
    color:#E34548;
}
.page-oncharter .acf-table th{
    background: #FFD3D4;
    color:#E34548;
}
.page-oncharter .acf-page-block .class-none{
    color:#E34548;
}
.page-oncharter #classlist .class-btn-list li a{
    border-color:#FFD3D4;
    background-color: #FFD3D4;
}

/* ページ別カラー（緑） */

.page-kouhou .title4 span,
.page-openclass .title4 span{
    color: #01A855;
    background: linear-gradient(transparent 50%, #C1EFD8 50%);
}
.page-kouhou .about-bk .attend-box,
.page-kouhou .attend-bk .attend-box,
.page-openclass .about-bk .attend-box,
.page-openclass .attend-bk .attend-box{
    background: #F2FBF7;
}
.page-kouhou .acf-main-title,
.page-kouhou .acf-section .title5,
.page-openclass .acf-main-title,
.page-openclass .acf-section .title5{
    color: #01A855;
}
.page-personaluse #about a[href="#class3"],
.page-personaluse .btn-list-more a[href="/openclass"],
#faq3 li a,
.btn-list-more .faq-button3,
.btn-list-more.btn-green li a,
.page-kouhou .btn-list-more li a,
.page-openclass .btn-list-more li a{
    border-color: #01A855;
    color:#01A855;
}
.page-personaluse #about a[href="#class3"]::after,
.page-personaluse .btn-list-more a[href="/openclass"]::after,
#faq3 li a::after,
.btn-list-more .faq-button3::after,
.btn-list-more.btn-green li a:after,
.page-kouhou .btn-list-more li a:after,
.page-openclass .btn-list-more li a:after{
    border-color: #01A855;
}

.page-kouhou .acf-page-block,
.page-openclass .acf-page-block{
    border-color:#01A855;
}
.page-kouhou .acf-page-block .title6,
.page-openclass .acf-page-block .title6{
    background:#01A855;
}

.page-kouhou .acf-page-block .title5,
.page-openclass .acf-page-block .title5{
    color:#01A855;
}
.page-kouhou .acf-sub-item .title7-bk,
.page-openclass .acf-sub-item .title7-bk{
    border-color:#01A855;
}
.page-kouhou .acf-sub-item .title7,
.page-openclass .acf-sub-item .title7{
    color:#01A855;
}
.page-kouhou .acf-sub-item .price,
.page-openclass .acf-sub-item .price{
    color:#01A855;
}

.page-kouhou .acf-table th,
.page-openclass .acf-table th{
    background: #C1EFD8;
    color:#01A855;
}

.page-kouhou .acf-page-block .class-none,
.page-openclass .acf-page-block .class-none{
    color:#01A855;
}
.page-kouhou #classlist .class-btn-list li a,
.page-openclass #parasportslist .class-btn-list li a,
.page-openclass #classlist .class-btn-list li a{
    border-color:#C1EFD8;
    background-color: #C1EFD8;
}

/* 募集制教室 */
.classlist-bk .inner > .title5{
    color:#01A855;
    font-size: 2rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
}
.classlist-bk .inner > .day{
    font-size: 3rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
    margin-bottom: 20px;
}
.page-openclass .classlist-bk .inner > .free-editor{
    margin-bottom: 20px;
}
.page-openclass .classlist-bk .inner > .title5{
    margin-top: 20px;
}
.page-openclass .price-data{
    margin-bottom: 40px;
}

@media (max-width: 1024px) {
    /* ボタン */
    main .btn-more a{
        min-width: 260px;
        padding: 12px 20px 12px 5px;
    }
    /* _____ ボタンリスト  _____ */
    .btn-list-more li{
        max-width: 260px;
    }
    .btn-list-more .btn-none,
    .btn-list-more li a{
        padding: 12px 20px 12px 5px;
    }
    .class-btn-list{
        margin: 30px 0 40px;
    }
    /* _____ ページメイン紹介ブロック  _____ */
    .about-bk .attend-box,
    .attend-bk .attend-box{
        padding: 20px;
    }
    
    .acf-main-title{
        font-size: 1.8rem;
        margin-bottom: 10px;
    }
    .acf-section .title5{
        font-size: 1.6rem;
    }
    /* _____ クラスリスト  _____ */
    .classlist-bk .inner > .free-editor{
        margin-bottom: 30px;
    }
    
    /* _____ クラスリスト  _____ */
    .acf-page-block:not(:last-child){
        margin-bottom: 40px;
    }
    .acf-page-block .title6{
        font-size: 1.8rem;
        padding: 12px 5px;
        margin-bottom: 20px;
    }
    .acf-page-block .title5{
        font-size: 1.8rem;
        margin: 0 20px 10px;
    }
    .acf-page-block > div{
        margin: 0 20px 20px;
    }
    .acf-sub-item > div{
        margin-bottom:10px;
    }
    .acf-sub-item .title7-bk{
        padding-bottom: 5px;
    }
    .acf-sub-item .title7{
        font-size: 1.8rem;
    }
    .acf-sub-item .title7 .small{
        font-size: 1.4rem;
    }
    .acf-sub-item .price{
        font-size: 1.4rem;
    }
    /* ScrollHintを適用するラッパー */
    .acf-table {
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .acf-table .tbl-price{
        table-layout: auto;
        min-width: 0;
        margin-bottom: 0;
    }
    .acf-table .tbl-price[class*="col-"]:not([class*="col-1"]):not([class*="col-2"]):not([class*="col-3"]) {
        min-width: 1024px;
        table-layout: fixed;
    }

    .acf-table th{
        font-size: 1.4rem;
    }
    .acf-sub-item .free-editor{
        padding: 0 5px;
    }
    
    .acf-page-block .class-none{
        font-size: 1.8rem;
        margin: 0 20px 20px;
    }

    .classlist-bk .inner > .title5{
        font-size: 1.8rem;
    }
    .classlist-bk .inner > .day{
        font-size: 2rem;
        margin-bottom: 20px;
    }
    .page-openclass .price-data{
        margin-bottom: 20px;
    }

}
@media (max-width: 767px) {
    main .btn-more a span,
    .btn-list-more .btn-none,
    .btn-list-more li a{
        font-size: 1.6rem;
    }
    .btn-list-more .btn-none::after,
    main .btn-more a::after,
    .btn-list-more li a::after{
        margin-top: -5px;
    }
    /* _____ ボタンリスト  _____ */
    .btn-list-more.class-btn-list li{
        max-width: 160px;
        margin-right: 5px;
        margin-left: 5px;
    }
    .btn-list-more.class-btn-list .btn-none,
    .btn-list-more.class-btn-list li a{
        font-size: 1.2rem;
        border-width: 1px;
    }

    .btn-list-more.class-btn-list .btn-none::after,
    main .btn-more a::after,
    .btn-list-more.class-btn-list li a::after{
        right: 8px;
        width: 8px;
        height: 8px;
        margin-top: -4px;
        border-width: 2px;
    }
    .class-btn-list{
        margin: 20px 0 30px;
    }
    .acf-page-block,
    .about-bk .attend-box,
    .attend-bk .attend-box{
        border-radius: 24px;
    }
    .about-bk .free-editor,
    .acf-page-block .free-editor{
        text-align: left;
    }
    
}
/*---------------------
  施設紹介
---------------------*/
.page-facilities #about .class-btn-list{
    margin-bottom: 0;
}
.panorama-bk{
    background: #005ECC;
    text-align: center;
}
.panorama-bk .title4 span,
.panorama-bk .pano-text{
    color: #FFF;
}
.panorama-frame{
    margin: 40px 0 30px;
    width: 100%;
    position: relative;
    padding-bottom: 56.25% !important;
    overflow: hidden;
}
.panorama-frame iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.facilities-bk,
.staff-bk{
    background: #F0F6FA;
    text-align: center;
}
.page-facilities .facility-box{
    text-align: left;
    padding-top: 20px;
}
.page-facilities .title7{
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom:solid 2px #005ECC;
    color:#005ECC;
    font-size: 3rem;
    line-height: 1.4;
    font-family: "ZenKakuGothicNew-Bold"!important;
}
.page-facilities .facility-box .free-editor{
    margin-bottom: 20px;
}
.page-facilities .facility-box .info-title{
    color:#005ECC;
    margin-bottom: 5px;
    font-size: 1.8rem;
    line-height: 1.4;
}
.acf-page-block .title-sub{
    color: #005ECC;
    font-size: 3rem;
    background: #9CD5FD;
    padding: 5px 10px;
    margin: 0 40px 20px;
}
.use-bk .free-editor{
    text-align: center;
    margin-bottom: 40px;
}
.license-group {
    margin-top: 60px;
}
.license-group .title7{
    text-align: left;
    margin-bottom: 30px;
}
.staff-bk .license-table{
    border-color: #D5D5D5;
}
.staff-bk .license-table th{
    font-size: 1.8rem;
    color: #FFF;
}
.staff-bk .license-table .blue{
    background: #005ECC;
}
.staff-bk .license-table .blue2{
    background: #76B7F2;
}

.staff-bk .license-table td{
    background: #FFF;
    background: #fff;
    padding: 0 20px;
}

.staff-bk .license-table .name-bk{
    text-align: left;
    padding-right: 40px;
    padding-left: 40px;
}
.staff-bk .license-table .name-bk > p{
    display: inline-block;
    margin-bottom: 0;
}
.staff-bk .license-table .name{
    font-size: 1.8rem;
    margin-right: 20px;
}
.staff-bk .license-table .name2,
.staff-bk .license-table .number2{
    color: #707070;
    font-size: 1.4rem;
}
.staff-bk .license-table .number{
    font-size: 1.8rem;
    margin-bottom: 0;
}
@media (min-width: 1025px) {
    .facility-box:nth-child(even of .facility-box) {
        flex-direction: row-reverse;
    }

    .facility-box:nth-child(even of .facility-box) .facility-info {
        padding-right: 30px;
        padding-left: 0;
    }

    .facility-box:nth-child(odd of .facility-box) .facility-info {
        padding-left: 30px;
        padding-right: 0;
    }

}
@media (max-width: 1024px) {
    .panorama-bk .pano-text{
        text-align: left;
    }
    .page-facilities .title7{
        padding-bottom: 5px;
        margin-bottom: 15px;
        font-size: 1.8rem;
        width: 100%;
    }

    .page-facilities .facility-box:first-of-type{
        padding-top: 0;
    }
    .page-facilities .facility-info{
        width: 100%;
    }
    .page-facilities .facility-box .info-title{
        font-size: 1.6rem;
    }
    .acf-page-block .title-sub{
        font-size: 1.8rem;
        margin:0 20px 0;
    }
    .use-bk .free-editor{
        margin-bottom: 20px;
    }
    .license-group {
        margin-top: 30px;
    }
    .staff-bk .license-table th{
        font-size: 1.6rem;
        padding: 5px 10px;
    }
    .staff-bk .license-table td{
        padding: 0 10px;
    }
    .staff-bk .license-table .name-bk{
        padding-right: 20px;
        padding-left: 20px;
    }
    .staff-bk .license-table .name-bk > p{
        display: block;
    }
    .staff-bk .license-table .name{
        font-size: 1.6rem;
        margin-right: 0;
    }
    .staff-bk .license-table .number{
        font-size: 1.6rem;
    }
}
@media (max-width: 767px) {
    .panorama-frame {
        height: 300px;
        padding-bottom: 0 !important;
    }
    .panorama-frame{
        padding-bottom: 70% !important;
    }
    .use-bk .free-editor,
    .staff-bk .free-editor{
        text-align: left;
    }
    .staff-bk .license-table .blue2{
        width: 140px;
    }
    .staff-bk .license-table .name-bk{
        padding: 8px 10px;
    }
    .staff-bk .license-table .name-bk > p{
        line-height: 1.4;
    }
    .staff-bk .license-table .name,
    .staff-bk .license-table .number{
        font-size: 1.4rem;
    }
    .staff-bk .license-table .name{
        margin-bottom: 5px;
    }
    .staff-bk .license-table .name2,
    .staff-bk .license-table .number2{
        font-size: 1.2rem;
    }
}
/*---------------------
  個人利用
---------------------*/
.page-personaluse #about .class-btn-list li{
    max-width: 250px;
}
/*---------------------
  講習会
---------------------*/
.page-guidetotraining #about .class-btn-list{
    margin-bottom: 0;
}
.page-guidetotraining .overview-container{
    margin-bottom: 20px;
}
.page-guidetotraining .overview-title{
    color: #005ECC;
    font-size: 1.6rem;
    font-family: "ZenKakuGothicNew-Bold"!important;
    width: 110px;
}
.page-guidetotraining .overview-title::after{
    content: "：";   
}
.page-guidetotraining .classlist-bk{
    background: #FFF;
}

@media (max-width: 1024px) {
    .page-guidetotraining .overview-container{
        margin-bottom: 0;
    }
    .page-guidetotraining .overview-title{
        display: block;
        width: 100%;
        font-size: 1.6rem;
    }
    .page-guidetotraining .overview-content{
        display: block;
        width: 100%;
        margin-bottom: 10px;
    }
}

/*---------------------
  講習会
---------------------*/
.page-oncharter #about .class-btn-list li{
    max-width: 240px;
}
.page-oncharter .tbl-price.col-2 th:first-child{
    width: 75%;
}
.page-oncharter .tbl-price.col-2 th:last-child{
    width: 25%;
}
.page-kouhou .classlist-bk,
.page-openclass .classlist-bk{
    background: #FFF;
}
@media (min-width: 768px) {
    .page-oncharter #about .class-btn-list li:nth-child(3){
        max-width: 480px;
    }
}
/*---------------------
  教室
---------------------*/
.page-openclass #about .class-btn-list{
    margin-bottom: 0;
}
.page-openclass #classlist .class-btn-list li{
    max-width: 250px;
}
#parasportslist .btn-list-more:not(.class-btn-list) li{
    max-width: 300px!important;
}

.page-kouhou .classlist-bk .class-btn-list{
    margin-bottom: 50px;
}

/*---------------------
  アクセス
---------------------*/
.page-access #about .class-btn-list{
    margin-bottom: 0;
}
.access-bk{
    background: #FFF;
}
.parking-bk,
.access-bk .acf-page-block{
    background: #F0F6FA;
}
.parking-bk .title6{
    text-align: center;
}

.parking-info .free-editor{
    border-bottom: solid 1px #D5D5D5;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.parking-info .info-data:not(:last-child){
    border-bottom: solid 1px #D5D5D5;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.info-data{
    width: 100%;
    text-align: left;
}
.info-data .overview-title{
    width: 100px;
    padding: 0 10px;
    font-size:2rem;
    color: #005ECC;
}
.info-data .overview-content{
    width: calc(100% - 100px);
    padding: 5px 10px 0 50px;
}
@media (min-width: 1025px) {
    .facility-box > div{
        width: 50%;
    }
    .parking-bk .acf-page-block:nth-child(even) .facility-box{
        flex-direction: row-reverse;
    }
    .parking-bk .acf-page-block:nth-child(even) .parking-info{
        padding-right: 30px;
    }
    .parking-bk .acf-page-block:nth-child(odd) .parking-info{
        padding-left: 30px;
    }
}
@media (max-width: 1024px) {
    .facility-swiper{
        width: 55%;
        margin-bottom: 20px;
    }
    .parking-info{
        width: 100%;
        margin-bottom: 20px;
    }
    .parking-info .info-data:not(:last-child),
    .parking-info .free-editor{
        padding-bottom:10px;
        margin-bottom: 10px;
    }
    .info-data .overview-title{
        width: 100%;
        padding: 0;
        font-size:1.8rem;
    }
    .info-data .overview-content{
        width: 100%;
        padding: 0;
    }
}
@media (max-width: 767px) {
    .facility-swiper{
        width: 100%;
    }
    .parking-info{
        margin-bottom: 0;
    }
}

/*---------------------
  混雑状況
---------------------*/
.cf-section-panel .cf-th-day{
    background: #000;
}
.cf-section-panel .cf-th-sat{
    background: #005ECC;
}

.cf-section-panel .cf-th-hol,
.cf-section-panel .cf-th-sun{
    background: #E34548;
}
.cf-comment{
    background: #F0F6FA;
    border: none;
    color: #000;
}
.cf-section-switcher select{
    line-height: 1.4;
    height: auto;
    font-size: 2rem;
}
@media (max-width: 767px) {
.cf-section-switcher select{
    font-size: 1.6rem;
}
}
/*---------------------
  施設予約状況
---------------------*/
.frs-pro-container{
    background: #FFF;
    margin-bottom: 40px;
}
.frs-tab{
    background: #e0e0e0!important;
    border-radius: 4px!important;
    border: none!important;
    color: #000!important;
}
.frs-tab.active{
    background: #005ECC!important;
    color: #FFF!important;
}
.frs-month-title{
    background: #1DA0FF;
}
.frs-status-available,
.frs-table td.frs-date.saturday{
    color: #005ECC!important;
}
.frs-table tr.frs-today td{
    border-color: #005ECC!important;
}
.frs-table td.frs-date.sunday,
.frs-table td.frs-date.holiday,
.frs-status-unavailable{
    color: #E34548;
}
.frs-status-training{
    color: #01A855;
}
.frs-status{
    font-size: 2rem;
    font-family: "ZenKakuGothicNew-Bold" !important;
}
.frs-table th{
    color: #000;
}
.frs-spinner {
    border-top-color:#005ECC;
}
.frs-description{
    border-color: #005ECC;
    background: #F0F6FA;
}
/*---------------------
  よくある質問
---------------------*/
.page-faq #about .class-btn-list{
    margin-bottom: 0;
}
.page-faq #about .class-btn-list li{
    max-width: 250px;
}
.faq-bk{
    text-align: center;
}

.accordion-bk {
    background: #FFF;
    text-align: left;
    border-radius: 0 16px 0 0;
    margin-bottom: 30px;
}
.accordion-title {
    position: relative;
    display: block;
    cursor: pointer;
    transition: all .5s;
    font-family: "ZenKakuGothicNew-Bold" !important;
    font-size: 1.8rem;
    color:#FFF;
    line-height: 1.4;
    padding: 20px 60px;
    background: #005ecc;
    border-radius: 0 16px 0 0;
}

.qa-question {
    position: absolute;
    top: 50%;
    left: 25px;
    margin-top: -18px;
    font-size: 2.4rem;
    color:#FFF;
    font-family: "ZenKakuGothicNew-Bold" !important;
    line-height: 1.4;
}

.accordion-title::after {
    content: "▼";
    position: absolute;
    right: 25px;
    top: 50%;
    transform: translateY(-50%) rotate(0deg);
    transform-origin: center;
    transition: all .5s;
}
.accordion-bk input:checked+label::after {
    transform: translateY(-50%) rotate(180deg);
}

/* チェックボックス隠す */
.accordion-check {
    display: none;
}

.accordion-data.text {
    height: 0;
    position: relative;
    overflow: hidden;
    transition: all .5s;
    padding-left: 25px;
    padding-right: 25px;
}

.accordion-bk input:checked+.accordion-title+.accordion-data.text {
    height: auto;
    padding-bottom: 20px;
    opacity: 1;
    transition: all .5s;
}

.accordion-data.text p:first-of-type {
    padding-top: 20px;
}

/*---- スマホ調整 ----*/
@media (max-width:767px) {
    .qa-question {
        left: 15px;
        font-size: 2rem;
        margin-top: -14px;
    }

    .accordion-title {
        font-size: 1.6rem;
        padding: 15px 40px 15px 45px;
    }

    .accordion-data.text {
        padding-right: 15px;
        padding-left: 15px;
    }

    .accordion-data.text p:first-of-type {
        padding-top: 15px;
    }

}
.faq-bk1{
    background: #f0f6fa;
}

.faq-bk2{
    background: #fef4f4;
}
.faq-bk2 .title4 span{
    color: #E34548;
    background: linear-gradient(transparent 50%, #FFD3D4 50%);
}
.faq-bk2 .accordion-title{
    background:#E34548;
}
.faq-bk3{
    background: #f2fbf7;
}
.faq-bk3 .title4 span{
    color: #01A855;
    background: linear-gradient(transparent 50%, #C1EFD8 50%);
}
.faq-bk3 .accordion-title{
    background:#01A855;
}

.faq-bk4 .accordion-data{
    background:#F0F6FA;
}
/*---------------------
  サイトポリシー
---------------------*/
.page-sitepolicy .class-btn-list{
    margin-bottom: 0;
}
/*---------------------
  メルマガ
---------------------*/
.page-subscribe .class-btn-list{
    margin-bottom: 0;
}

/*---------------------
  プライバシー
---------------------*/
.page-privacy .class-btn-list{
    margin-bottom: 0;
}

.page-privacy #about .class-btn-list li{
    max-width: 400px!important;
}
@media (max-width:767px) {
.page-privacy #about .class-btn-list li{
    max-width: 260px!important;
}
}
/*---------------------
  会社概要
---------------------*/
.page-aboutus .class-btn-list{
    margin-bottom: 0;
}
.company-bk1{
    background: #F0F6FA;
}
.company-table {
    border-color: #D5D5D5;
    margin: 0;
}
.company-table th{
    background: #C6E4FF;
    color: #005ECC;
    font-size: 1.8rem;
    width: 250px;
}
.company-table td{
    background: #FFF;
}
.table-wrapper:not(:first-of-type){
    margin-top: 40px;
}
@media (max-width: 1024px) {
    .company-table th{
        font-size: 1.6rem;
    }
}

@media (max-width: 767px) {
    .company-table th,
    .company-table td{
        width: 100%;
        display: block;
    }
}
/*---------------------
  お問い合わせ
---------------------*/
.wpforms-container .wpforms-field-description {
    margin-top: 14px !important;
}

/* ボタン */
div.wpforms-container-full input[type=submit]:not(:hover):not(:active),
div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full input[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full button[type=submit]:not(:hover):not(:active),
.wp-core-ui div.wpforms-container-full .wpforms-page-button:not(:hover):not(:active) {
    background-color: #005ECC !important;
    min-width: 250px;
    height: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    border-radius: 50px;
    margin: 0 auto !important;
    font-weight: 600!important;
}
div.wpforms-container-full .wpforms-form .wpforms-pagebreak-left .wpforms-page-button.wpforms-page-prev{
    background-color: #6F6F6F!important;
}

.wpforms-submit::after,
button.wpforms-page-button::after{
    position: absolute;
    right: 20px;
    top: 50%;
    content: '';
    display: inline-block;
    width: 10px;
    height: 10px;
    border-top: 3px solid #FFF;
    border-right: 3px solid #FFF;
    transform: rotate(45deg);
    border-radius: 2px;
    vertical-align: middle;
    margin-top: -4px;
}
div.wpforms-container-full input[type=submit]:hover,
div.wpforms-container-full input[type=submit]:active,
div.wpforms-container-full button[type=submit]:hover,
div.wpforms-container-full button[type=submit]:active,
div.wpforms-container-full .wpforms-page-button:hover,
div.wpforms-container-full .wpforms-page-button:active,
.wp-core-ui div.wpforms-container-full input[type=submit]:hover,
.wp-core-ui div.wpforms-container-full input[type=submit]:active,
.wp-core-ui div.wpforms-container-full button[type=submit]:hover,
.wp-core-ui div.wpforms-container-full button[type=submit]:active,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:hover,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:active {
    background-color: #1DA0FF !important;
    background: none;
    opacity: 1;
    min-width: 250px;
    height: auto;
    padding-top: 20px;
    padding-bottom: 20px;
    border-radius: 50px;
}

div.wpforms-container-full .wpforms-form .wpforms-pagebreak-left,
.wpforms-submit-container {
    text-align: center !important;
}

div.wpforms-container-full .wpforms-form .wpforms-pagebreak-left .wpforms-page-button {
    margin: 0 !important;
    transition: all .5s;
}

div.wpforms-container-full input[type=submit]:hover,
div.wpforms-container-full input[type=submit]:active,
div.wpforms-container-full button[type=submit]:hover,
div.wpforms-container-full button[type=submit]:active,
div.wpforms-container-full .wpforms-page-button:hover,
div.wpforms-container-full .wpforms-page-button:active,
.wp-core-ui div.wpforms-container-full input[type=submit]:hover,
.wp-core-ui div.wpforms-container-full input[type=submit]:active,
.wp-core-ui div.wpforms-container-full button[type=submit]:hover,
.wp-core-ui div.wpforms-container-full button[type=submit]:active,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:hover,
.wp-core-ui div.wpforms-container-full .wpforms-page-button:active {
    transition: all .5s;
}

div.wpforms-container-full .wpforms-field-description,
div.wpforms-container-full .wpforms-field-limit-text,
.wp-core-ui div.wpforms-container-full .wpforms-field-description,
.wp-core-ui div.wpforms-container-full .wpforms-field-limit-text {
    line-height: 1.6 !important;
}

/* 入力内容の確認 */
.wpforms-entry-preview-notice, .wpforms-entry-preview-updating-message, div.wpforms-container-full .wpforms-entry-preview-notice, div.wpforms-container-full .wpforms-entry-preview-updating-message, div.wpforms-container-full .wpforms-form .wpforms-entry-preview-notice, div.wpforms-container-full .wpforms-form .wpforms-entry-preview-updating-message {
    background: #FFFCDE;
    border: 1px solid #FFE489;
}

/* reCAPTCHA非表示 */
.wpforms-turnstile{
    text-align: center;
}

.elementor-editor-active{
    padding-top:60px!important;
}

/*---------------------
  アーカイブ
---------------------*/
.news-data .topics_data{
    height: 100%;
}

/* ページナビゲーション */
.wp-pagenavi,
.elementor-pagination{
	overflow:hidden;
	text-align:center;
	color:#005ECC;
	margin:48px auto;
}
.elementor-pagination{
    letter-spacing: -.4em;
}
.wp-pagenavi span, .wp-pagenavi a,
.elementor-pagination span,
.elementor-pagination a{
	display:inline-block;
	color:#005ECC;
	font-size: 1.4rem;
	border:solid 1px #005ECC;
	line-height:100%;
	text-decoration:none!important;
	padding:8px;
	margin:0 5px 8px 0!important;
}
.elementor-pagination span,
.elementor-pagination a{
    letter-spacing: normal;
    font-weight:normal!important;
}

.wp-pagenavi a:hover,
.wp-pagenavi .current,
.elementor-pagination a:hover,
.elementor-pagination .current{
	color:#FFF!important;
	background:#005ECC;
	border-color:#005ECC!important;
}

@media (max-width: 1024px){
    /* トップお知らせリスト */
    .home .news-data .e-loop-item:nth-of-type(n+5){
        display: none!important;
    }
    /* ページナビゲーション */
    .wp-pagenavi,
    .elementor-pagination{
    	margin:24px auto;
    }
}

@media (max-width: 767px){
    /* トップお知らせリスト */
    .home .news-data .e-loop-item:nth-of-type(n+4){
        display: none!important;
    }
}
/*---------------------
  ブログ
---------------------*/
/* いいねボタンを押した際のメッセージ削除 */
.wpulike-notification .wpulike-message.wpulike-success {
display:none;
}

/* いいねボタンを取り消した際のメッセージを消したい */
.wpulike-notification .wpulike-message{
display:none;
}

#wpadminbar{
    position: fixed!important;
}/* End custom CSS */