@charset "UTF-8";

.rzf-wrap img, .rzf-wrap video {
pointer-events: none; 
-webkit-touch-callout:none;
-webkit-user-select:none;
-moz-touch-callout:none;
-moz-user-select:none;
touch-callout:none;
user-select:none;
}

/*--------------------------------------------
  スクール
---------------------------------------------*/

/* 色設定 */
:root {
  --primary-color:  #015CAD;
  --second-color:   #e60020;
  --accent-color:   #fff001;
  --accent-color:   #FFEA5E;
  --text-color:     #333;
  --white-color:    #fff;
  --lightgray-color:#f4f4f4;
  --text-primary-color: #015CAD;
  }
.rzf-school {
  --primary-color:  #0b318f;
  --text-primary-color: #0b318f;
}
.rzf-cheerschool2 {
  --primary-color:  #FF8FC3;
  --text-primary-color: #EA5B9D;
}
.rzf-cheerschool {
  --primary-color:  #F08500;
  --text-primary-color: #F08500;
}

@media print, screen and (min-width: 768px) {
.layout-second .second-body {color: var(--text-color);}
}

.rzf-bg-lg{
color: var(--text-color)!important;
background-color: var(--lightgray-color)!important;
border-color: var(--text-color)!important;
}
.rzf-bg-school{
background-color: var(--primary-color);
background-image: radial-gradient(circle, #24469C 7.5px, transparent 7.5px), radial-gradient(circle, #24469C 7.5px, transparent 7.5px);
background-position: 0 0, 20px 40px;
background-size: 40px 80px;
z-index: -1;
}
.rzf-school2 .rzf-bg-school{
background-image: radial-gradient(circle, #1369b4 7.5px, transparent 7.5px), radial-gradient(circle, #1369b4 7.5px, transparent 7.5px);
}
.rzf-bg-school{
background-color: var(--primary-color);
background-image: none;
background-position: none;
background-size: 0;
z-index: 0;
}

.rzf-bg-cheerschool{
background-color: var(--primary-color);
background-image: radial-gradient(circle, #F99E00 7.5px, transparent 7.5px), radial-gradient(circle, #F99E00 7.5px, transparent 7.5px);
background-position: 0 0, 20px 40px;
background-size: 40px 80px;
z-index: -1;
}
.rzf-cheerschool2 .rzf-bg-cheerschool{
background-image: radial-gradient(circle, #FFAAD1 7.5px, transparent 7.5px), radial-gradient(circle, #FFAAD1 7.5px, transparent 7.5px);
}

.rzf-bg-school, .rzf-bg-cheerschool, .rzf-cheerschool2 .rzf-bg-cheerschool{
background-color: var(--primary-color);
background-image: none;
background-position: none;
background-size: 0;
z-index: 0;
}


.rzf-cheerschool .contact-info p {
background-color: var(--primary-color) !important; 
}
.rzf-cheerschool .contact-info a {
color: var(--text-primary-color) !important; 
}
.rzf-cheerschool .contact-info ul {
border-color: var(--primary-color);
}

/*** レイアウト設定・パーツ ***/
/* 大枠のパディングを無くした場合のレイアウト */
.rzf-wrap > section:not(.rzf-icon-btn-wrap,.contact-info,.js-pulldown, .js-pulldown-faq){
margin-block: 0!important;
padding-block: 5em;
}
.rzf-wrap .rzf-layout-padding{margin-inline: auto!important;}
.rzf-wrap .rzf-layout-offset{margin-inline: 0!important;}
.rzf-wrap .rzf-layout-head-offset{margin-inline: auto!important;}

@media print, screen and (min-width: 1219px) {
.rzf-wrap .rzf-layout-padding {padding-inline: 50px;}
.rzf-wrap .rzf-layout-head-offset{margin-block-start: -50px!important;}
}
@media screen and (max-width: 1218px) {
.rzf-wrap .rzf-layout-padding {padding-inline: 25px;}
.rzf-wrap .rzf-layout-head-offset{margin-block-start: -25px!important;}
}
@media screen and (max-width: 767px) {
.rzf-wrap .rzf-layout-padding {padding-inline: 1.2em;}
.rzf-wrap .rzf-layout-head-offset{margin-block-start: -1em!important;}
}
@media screen and (max-width: 450px){
.rzf-wrap > section:not(.rzf-icon-btn-wrap,.contact-info,.js-pulldown, .js-pulldown-faq){
padding-block: 2.5em;
}
/*.rzf-wrap .rzf-layout-padding {padding-inline: 0.7em;}*/
}


/*** チケット 共通 ***/
/* タイトル・テキスト */
.rzf-wrap h3 {
font-size: clamp(1.125rem, 0.9886rem + 0.6818vw, 1.5rem)!important;
}
.rzf-wrap p, .rzf-wrap th, .rzf-wrap td {
font-size: clamp(0.875rem, 0.7386rem + 0.6818vw, 1.25rem);
font-size: clamp(0.875rem, 0.7841rem + 0.4545vw, 1.125rem);
}
.rzf-wrap p {
color: var(--text-color);
text-align: justify;
}
.rzf-wrap p a{
padding: 0 0.2em;
border-bottom: 1px solid;
color: var(--text-primary-color)!important;
}
.rzf-wrap p a:hover{border-bottom: none;}

.rzf-wrap h2.rzf-centertitle {
color: var(--text-primary-color)!important;
margin: 3em 0 1em!important;
padding-inline: 0; 
letter-spacing: 0;
font-size: clamp(1.3125rem, 0.6989rem + 3.0682vw, 3rem)!important;
}
.rzf-wrap h2.rzf-centertitle::after {border-bottom-color: var(--accent-color);}
.rzf-wrap section h2:first-of-type{margin-top: 0em!important;}
/* 色変え */
.rzf-wrap .rzf-bg-school h2.rzf-centertitle,
.rzf-wrap .rzf-bg-bl h2.rzf-centertitle,
.rzf-wrap .rzf-bg-cheerschool h2.rzf-centertitle{color: var(--white-color)!important;}

.rzf-wrap h3.rzf-centertitle {
display: flex;
justify-content: center;
align-items: center;
padding-inline: 0; 
/*font-size: 1.8rem!important;*/
font-size: clamp(1.5rem, 1.3636rem + 0.6818vw, 1.875rem)!important;
font-size: clamp(1.375rem, 1.1397rem + 1.1765vw, 1.875rem)!important;
text-align: center;
line-height: 1.4;
border: none;
color: var(--text-primary-color)!important;
}
.rzf-wrap h3.rzf-centertitle::before,
.rzf-wrap h3.rzf-centertitle::after {
content: '';
width: 70px;
height: 2px;
background-color: var(--text-primary-color);
}
.rzf-wrap h3.rzf-centertitle::before {margin-right: 20px;}
.rzf-wrap h3.rzf-centertitle::after {margin-left: 20px;}
/* 色変え */
.rzf-wrap .rzf-bg-school h3.rzf-centertitle,
.rzf-wrap .rzf-bg-bl h3.rzf-centertitle,
.rzf-wrap .rzf-bg-cheerschool h3.rzf-centertitle{color: var(--white-color)!important;}
.rzf-wrap .rzf-bg-school h3.rzf-centertitle::before,
.rzf-wrap .rzf-bg-school h3.rzf-centertitle::after,
.rzf-wrap .rzf-bg-bl h3.rzf-centertitle::before,
.rzf-wrap .rzf-bg-bl h3.rzf-centertitle::after,
.rzf-wrap .rzf-bg-cheerschool h3.rzf-centertitle::before,
.rzf-wrap .rzf-bg-cheerschool h3.rzf-centertitle::after{background-color: var(--white-color);}
.rzf-wrap .rzf-bg-school p:not(.rzf-cautiontext),
.rzf-wrap .rzf-bg-bl p:not(.rzf-cautiontext),
.rzf-wrap .rzf-bg-cheerschool p:not(.rzf-cautiontext){color: var(--white-color)!important;}

/* 可変の大きなテキスト */
.rzf-wrap p.rzf-big-text {
font-size: 16px;
font-weight: 800!important;
}
.rzf-wrap p.rzf-mid-text {
/*font-size: 1.2em;*/
font-weight: 600!important;
line-height: 1.8;
color: var(--text-primary-color) !important;
font-size: clamp(1rem, 0.8182rem + 0.9091vw, 1.5rem);
}
.rzf-wrap sup {
font-size: 80%;
font-weight: 400!important;
vertical-align: top;
letter-spacing: 0;
}

@media (min-width: 767px) {
.rzf-wrap h2.rzf-centertitle {
margin: 4em 0 2em!important;
padding: 0.5em 0.1em;
}
.rzf-wrap p.rzf-big-text {
font-size: calc(1rem + ((1vw - 7.67px) * 1.2638));
min-height: 0vw;
}
}
@media (max-width: 767px) {
/*.rzf-wrap h3.rzf-centertitle {font-size: 1.5rem!important;}*/
.rzf-wrap h3.rzf-centertitle::before,
.rzf-wrap h3.rzf-centertitle::after {width: 50px;}
}
@media (max-width: 450px) {
/*.rzf-wrap h2.rzf-centertitle {font-size: 1.8em!important;}
.rzf-wrap h3.rzf-centertitle {font-size: 1.5em!important;}*/
/*.rzf-wrap h3 {padding-inline:0.4em;}*/
.rzf-wrap h3.rzf-centertitle::before,
.rzf-wrap h3.rzf-centertitle::after {width: 40px;}
.rzf-wrap h3.rzf-centertitle::before {margin-right: 12px;}
.rzf-wrap h3.rzf-centertitle::after {margin-left: 12px;}
/*.rzf-wrap p:not(.rzf-btn-wrap p, .rzf-textbox p, .js-pulldown p, .js-pulldown-faq p, p.rzf-cautiontext, p.list-mark), .mfp-wrap p{padding-inline:0.4em;}*/
/*.rzf-wrap .rzf-textbox p, .rzf-wrap p.rzf-cautiontext, .rzf-wrap p.list-mark{padding-right:0.4em;}*/
/*.rzf-wrap p.rzf-mid-text {font-size: 1.1em;}*/
}
@media (min-width: 1200px) {
.rzf-wrap h2.rzf-centertitle {margin: 5em 0 3em!important;}
.rzf-wrap p.fc-big-text {font-size: 24px;}
}

/* 注意文 */
.rzf-wrap .rzf-textbox{
margin-top: 2em;
color: var(--text-color)!important;
background-color: var(--white-color);
letter-spacing: 0;
}
.rzf-wrap .rzf-textbox p a{
color: var(--text-primary-color)!important;
padding: 0 0.2em;
border-bottom: 1px solid;
}
.rzf-wrap .rzf-textbox p a:hover{border-bottom: none;}

.rzf-cautiontext, p.rzf-cautiontext {
font-size: 0.85em;
text-indent: -1em;
padding-left: 1em;
margin-bottom: 0.7em!important;
line-height: 1.4;
word-break: break-all;
}
.rzf-cautiontext i, p.rzf-cautiontext i, .list-mark i {text-indent: 0;}
.rzf-cautiontext-wrap .rzf-cautiontext, .rzf-cautiontext-wrap p.rzf-cautiontext {margin-bottom: 0!important;}

@media screen and (max-width: 450px){
.rzf-wrap .rzf-textbox{padding-inline: 0.7em;}
.rzf-cautiontext:not(.rzf-textbox p, .js-pulldown p, .js-pulldown-faq p, p.list-mark) {
text-indent: -1em;
padding-left: 1.4em;
}
}
@media screen and (min-width: 1200px){
.rzf-cautiontext, p.rzf-cautiontext {font-size: 1em;}
}


/* 共通ボタン */
.rzf-school .rzf-btn {max-width: 560px;}
.rzf-school .rzf-btn a {
margin: 0 auto;
padding: 1.2em 20px 1.2em 5px;
border: 2px solid #fff;
border: 2px solid var(--primary-color);
border-radius: 50px;
/*transition: 0.2s;*/
color: var(--text-primary-color)!important;
background-color: var(--accent-color);
background-image: linear-gradient(45deg, var(--accent-color) 50%, transparent 50%);
background-position: 100%;
background-size: 400%;
transition: 0.8s ease-in-out!important;
}
.rzf-school .rzf-btn a::after {
border: none;
-webkit-transform: none;
transform: none;
right: 30px;
font-family: "Font Awesome 5 Free";
font-weight: 900;
content: "\f138";
display: flex;
align-items: center;
font-size: 1.3em;
color: var(--text-primary-color);
transition: 0.2s ease-in 0.4s;
}
.rzf-school .rzf-btn a:hover {
opacity: 1!important;
/*border: 2px solid var(--white-color);*/
/*color: var(--text-primary-color)!important;*/
background-color: var(--primary-color);
background-position: 0;
}
.rzf-school .rzf-btn a:hover::after {
right: 25px;
/*color: var(--text-primary-color);*/
}

.rzf-school .rzf-btn-wrap p a{transition: 0.2s;}
.rzf-school .rzf-btn-wrap p a:hover{
opacity: 1;
font-weight: 600;
color: var(--text-primary-color)!important;
}

.rzf-school .rzf-btn-wrap .rzf-btn, .rzf-school .rzf-btn-wrap img{
margin-bottom: 1em!important;
}

.rzf-school .rzf-btn a.popup-modal::after {
content: "\f055";
transition: 0.3s ease-in 0.3s;
}
.rzf-school .rzf-btn a.popup-modal:hover::after {
right: 30px;
font-size: 1.5em;
}

@media screen and (max-width: 767px){
.rzf-school .rzf-btn-wrap p a {font-size: 0.9em;}
}
@media screen and (max-width: 450px){
.rzf-school .rzf-btn a {
padding: 1em 30px 1em 8px;
line-height: 1.2;
}
.rzf-school .rzf-btn a::after{right: 20px;}
.rzf-school .rzf-btn a:hover::after {right: 17px;}
.rzf-school .rzf-btn a.popup-modal:hover::after {right: 20px;}
}
@media screen and (min-width: 1200px){
.rzf-school .rzf-btn {max-width: 800px;}
}

/* 追従バナー */
#footerbanner.rzf-fixed-banner a:hover {opacity: 1;}


/* ページ内ナビ NEW */
.rzf-page-nav li {
border-left: 2px solid var(--primary-color);
border-right: 2px solid var(--primary-color);
border-top: 2px solid var(--primary-color);
}
.rzf-page-nav li a {
color: var(--text-primary-color)!important;
}
.rzf-page-nav li a::after {
color: var(--white-color);
background-color: var(--primary-color);
}
.rzf-page-nav li a:hover {
background-color: var(--primary-color);
}

/* 追従バナー
------------------------------------------------------------*/
.layout-second .second-body .rzf-fixed-banner a.linkclick_school-banner {
    padding: 1.2em 2em 1.2em 1.2em;
    font-weight: 800;
    /*color: #fff;*/
    /*background-color: var(--primary-color)!important;*/
    box-shadow: #fff;
    text-shadow: 0 0 #fff;
    border-radius: 0 50px 50px 0;
    box-shadow: 0 0 5px #fff;
    
    /*border: 2px solid var(--primary-color);*/
/*border-radius: 50px;*/
/*transition: 0.2s;*/
color: var(--text-primary-color)!important;
background-color: var(--accent-color);
background-image: linear-gradient(45deg, var(--accent-color) 50%, transparent 50%);
background-position: 100%;
background-size: 400%;
transition: 0.8s ease-in-out!important;
}

.layout-second .second-body .rzf-fixed-banner a.linkclick_school-banner:hover {
opacity: 1!important;
/*border: 2px solid var(--white-color);*/
color: var(--text-primary-color)!important;
background-color: var(--primary-color);
background-position: 0;
}


#footerbanner.rzf-fixed-banner a.bnr_btn {
    position: absolute;
    width: 23px;
    height: 23px;
    top: -8px;
    right: -3px;
    border-radius: 50%;
    border: 2px solid #fff;
    background-color: var(--primary-color)!important;
    z-index: 1;
    transition: 0.2s;
}

#footerbanner.rzf-fixed-banner {
    bottom: 15px;
}

@media screen and (max-width: 640px) {
#footerbanner.rzf-fixed-banner {
    width: auto;
}
}


/* スライド画像
------------------------------------------------------------*/
.rzf-loop-slide-wrapper {
display: flex; 
overflow: hidden;
}
.rzf-loop-slide {
animation: scroll-left 40s infinite linear .10s both;
display: flex; 
}
.rzf-cheerschool .rzf-loop-slide {
animation: scroll-left 57s infinite linear .10s both;
}
.rzf-loop-slide-reverse {
animation: scroll-right 40s infinite linear .10s both;
display: flex;
}
.rzf-loop-slide li { width: calc(100vw / 5);}
.rzf-loop-slide li figure {
width: 113%;
margin-left: -5%;
transform: skewX(-7deg);
/* transform-origin: bottom center; */
overflow: hidden;
}
.rzf-loop-slide li img {
display: block;
margin-left: -1%;
transform: skewX(7deg);
transform-origin: bottom center;
}
@keyframes scroll-left {
  from { transform: translateX(0); }
  to { transform: translateX(-100%); }
}
@keyframes scroll-right {
  from { transform: translateX(-100%); }
  to { transform: translateX(0); }
}

@media screen and (max-width: 767px) {
.rzf-loop-slide li { width: calc(100vw / 3); }
}
@media screen and (max-width: 480px) {
.rzf-loop-slide li { width: calc(100vw / 2); }
}


/* スライダー
------------------------------------------------------------*/
/* スライダー全体 */
.swiper-wrapper{padding-bottom: 2.5em;}
.swiper-slide{/*max-width: 500px;*/}

.rzf-school .swiper-slide p a {
    color: var(--white-color) !important;
}
.swiper-slide img{
background-color: #fff;
}

/* ページネーション */
.swiper-pagination {
position: static!important;
margin-top: 0!important;
margin-bottom: 1.8em!important;
}
.swiper-pagination-bullet {
width: 12px!important;
height: 12px!important;
margin: 0 0 0 15px !important;
background: #8A8A8A!important;
border-radius: 50px!important;
opacity: 1!important;
}
.swiper-pagination-bullet-active {
background-color: var(--primary-color)!important;
width: 40px !important;
border-radius: 50px;
}
/* 色変え */
.rzf-bg-school .swiper-pagination-bullet,
.rzf-bg-cheerschool .swiper-pagination-bullet{background: var(--white-color)!important;}
.rzf-bg-school .swiper-pagination-bullet-active,
.rzf-bg-cheerschool .swiper-pagination-bullet-active{background-color: var(--accent-color)!important;}

@media screen and (max-width: 767px) {
.swiper-wrapper{padding-bottom: 1.5em;}
.swiper-pagination{margin-top: 1em!important;}
/*.swiper-pagination-bullet {
width: 20px!important;
height: 3px!important;
margin: 0 0 0 7px !important;
}*/
}

/* スクロールバー */
.swiper-scrollbar {
max-width: 730px !important;
height: 10px !important;
background-color: #E2E2E2;
/*bottom: -40px !important;*/
left: 50% !important;
transform: translateX(-50%);
}
.swiper-scrollbar-drag {background-color: var(--accent-color);}

/* 前後へ進むボタン */
.swiper-button-next, .swiper-button-prev {
top: var(--swiper-navigation-top-offset, 50%);
width: 45px!important;
height: 60px!important;
padding: 0.5em;
color: var(--white-color);
background: var(--primary-color);
border: 3px solid var(--primary-color);
border-radius: 50%;
transition: 0.2s;
top: calc((100vw / 2 - 60px)* 0.5625 / 2 + 30px);
}
.swiper-button-next {border-radius: 50px 0 0 50px; right: 0!important; border-right: none;}
.swiper-button-prev {border-radius: 0 50px 50px 0; left: 0!important; border-left: none;}
.swiper-button-prev::after,
.swiper-button-next::after {
bottom: 0;
content: ""!important;
height: 0;
margin: auto;
position: absolute;
top: 0;
width: 0;
}
.swiper-button-prev::after {
border-bottom: 15px solid transparent;
border-right: 18px solid #fff;
border-top: 15px solid transparent;
left: 7px;
}
.swiper-button-next::after {
border-bottom: 15px solid transparent;
border-left: 18px solid #fff;
border-top: 15px solid transparent;
right: 7px;
}
.swiper-button-next:hover, .swiper-button-prev:hover {opacity: 0.7;}
/* 色変え */
.rzf-bg-school .swiper-button-next,
.rzf-bg-school .swiper-button-prev,
.rzf-bg-cheerschool .swiper-button-next,
.rzf-bg-cheerschool .swiper-button-prev{background: var(--white-color);}
.rzf-bg-school .swiper-button-prev::after,
.rzf-bg-cheerschool .swiper-button-prev::after{border-right: 18px solid var(--primary-color);}
.rzf-bg-school .swiper-button-next::after,
.rzf-bg-cheerschool .swiper-button-next::after{border-left: 18px solid var(--primary-color);}

@media screen and (max-width: 450px) {
.swiper-button-next, .swiper-button-prev {
width: 35px !important;
height: 50px !important;
}
.swiper-button-prev::after {
border-bottom: 12px solid transparent;
border-top: 12px solid transparent;
left: 5px;
}
.swiper-button-next::after {
border-bottom: 12px solid transparent;
border-top: 12px solid transparent;
right: 5px;
}
.rzf-bg-school .swiper-button-prev::after,
.rzf-bg-cheerschool .swiper-button-prev::after{border-right-width: 13px;}
.rzf-bg-school .swiper-button-next::after,
.rzf-bg-cheerschool .swiper-button-next::after{border-left-width: 13px;}
}

/* ポップアップ
------------------------------------------------------------*/
/* 虫眼鏡アイコン */
.rzf-school a.popup {
/*position: relative;*/
display: block;
color: var(--white-color)!important;
/*padding: 3px;*/
}
.rzf-school a.popup::after {
content: "";
position: absolute;
bottom: 0;
right: 5px;
font-family: "Font Awesome 5 Free";
font-weight: 900;
font-size: 1.6em;
content: "\f00e";
text-shadow: 2px 2px 0 var(--primary-color), -2px -2px 0 var(--primary-color), -2px 2px 0 var(--primary-color), 2px -2px 0 var(--primary-color), 0px 2px 0 var(--primary-color), 0 -2px 0 var(--primary-color), -2px 0 0 var(--primary-color), 2px 0 0 var(--primary-color);
}

/* 背景 */
.mfp-bg {
opacity: 0;
-webkit-transition: all 0.15s ease-out;
-moz-transition: all 0.15s ease-out;
transition: all 0.15s ease-out;
z-index: 9999998;
}
.mfp-bg.mfp-ready {opacity: 0.8;}
.mfp-bg.mfp-removing {opacity: 0;}
.mfp-wrap .mfp-content {
opacity: 0;
-webkit-transition: all 0.15s ease-out;
-moz-transition: all 0.15s ease-out;
transition: all 0.15s ease-out;
}
.mfp-wrap.mfp-ready .mfp-content {opacity: 1;}
.mfp-wrap.mfp-removing .mfp-content {opacity: 0;}

/* 全体 */
.mfp-wrap{overflow: hidden auto; z-index: 9999999;}
.mfp-container{
padding: 0 6%;
max-width: fit-content;
right: 0;
bottom: 0;
margin: auto;
}

/* 中身 */
.mfp-content .inline-modal {
position: relative;
max-width: 900px;
min-width: 250px;
margin:5em auto 5em;
padding: 3em 2em 1.5em;
text-align:center;
background-color: var(--white-color);
color: var(--text-color);
border-radius: 5px;
}
.mfp-content .inline-modal a {
color: var(--text-primary-color);
text-decoration: underline;
transition: 0.2s;
}
.mfp-content .inline-modal a:hover{opacity: 0.7;}

/* タイトル */
.mfp-content .inline-modal h3 {
margin: 1.0em 0 0.5em !important;
/*font-size: 1.2em;*/
font-weight: 600;
position: relative;
color: inherit!important;
letter-spacing: 0;
text-align: left;
border: none;
}
.mfp-content .inline-modal h3::before {
content:"■";
padding-right: 0.2em;
color: var(--accent-color)!important;
}
.mfp-content .inline-modal h4 {
font-weight: 600;
/*font-family: 'M PLUS 2', sans-serif;*/
}
.mfp-content .inline-modal p {text-align: justify!important;}

/* 閉じる */
.mfp-close-btn-in .mfp-close {color: var(--white-color)!important;}
.mfp-content .inline-modal .mfp-close {
right: -15px !important;
top: -50px !important;
}

/* 閉じる2 */
.popup-modal-dismiss{margin-top: 2em;}
.popup-modal-dismiss a{
color: var(--text-primary-color);
font-size: 2.5em;
transition: 0.2s;
}
.popup-modal-dismiss a:hover{opacity: 0.7;}

/* ギャラリー */
.mfp-wrap .gallery-arrow{
position: absolute;
top: 50%;
margin-top: -50px;
display: block;
padding: 0.3em;
font-size: 2em;
text-align: center;
line-height: 30px;
cursor: pointer;
z-index: 10000000;
opacity: 0.8;
transition: 0.2s;
}
.mfp-wrap .gallery-arrow-left{left: 0; border-left: none;}
.mfp-wrap .gallery-arrow-right{right: 0; border-right: none;}
.mfp-wrap .gallery-arrow-left:before, .mfp-wrap .gallery-arrow-right:before{
font-family: "Font Awesome 5 Free";
font-weight: 900;
color: var(--white-color);
opacity: 1;
}
.mfp-wrap .gallery-arrow-left:before{content: "\f053";}
.mfp-wrap .gallery-arrow-right:before{content: "\f054";}
.mfp-wrap .gallery-arrow:hover{opacity: 1;}

@media screen and (min-width: 1000px) {
.mfp-content .inline-modal {
position: relative;
max-width: 980px;
min-width: 800px;
margin:5em auto 5em;
padding: 3em 2em 1.5em;
text-align:center;
background-color: var(--white-color);
color: #555;
}
/*.inline-modal.seat-detail{
min-width: 800px;
}*/
}
@media screen and (max-width: 450px) {
.mfp-content .inline-modal {padding: 2em 1.2em 0.5em;}
.mfp-wrap .gallery-arrow{
margin-top: -40px;
padding: 0.2em;
font-size: 1.6em;
}
}

/* CTA
------------------------------------------------------------*/
p.school-cta__text {
display: flex;
justify-content: center;
align-items: flex-end;;
color: var(--text-primary-color);
margin-bottom: 0.5em!important;
padding: 0 0.5em;
font-size: 1.6rem;
font-weight: 700;
text-align: center;
line-height: 1.4;
z-index: 1;
position: relative;
}
p.school-cta__text::before,
p.school-cta__text::after{
content: '';
width: 15px;
height: 30px;
background: var(--text-primary-color);
clip-path: polygon(0 0, 100% 0%, 50% 100%);
}
p.school-cta__text::before {
transform: rotate(-30deg);
margin-right: 20px;
}
p.school-cta__text::after {
transform: rotate(30deg);
margin-left: 20px;
}
.school-cta .rzf-btn{
margin-top: 0!important;
max-width: inherit;
padding: 0;
}
.school-cta .rzf-btn a{
color: var(--accent-color)!important;
background-color: var(--primary-color);
background-image: linear-gradient(45deg, var(--primary-color) 50%, transparent 50%);
border: 2px solid var(--primary-color);
border-radius: 10px;
}
.school-cta .rzf-btn a::after {color: var(--accent-color);}
.school-cta .rzf-btn a:hover {
background-color: var(--accent-color);
/*border: 2px solid var(--primary-color);
color: var(--accent-color)!important;*/
}
/*.school-cta .rzf-btn a:hover::after {color: var(--primary-color);}*/

/* 小さい方のボタン */
.school-cta__sub-wrap{
display: flex;
align-items: center;
gap: 0.5em;
}
.school-cta__sub-wrap > div{width: 100%;}
.school-cta .school-cta__sub-wrap .rzf-btn {
max-width: 380px;
margin-bottom: 0!important;
}
.school-cta .school-cta__sub-wrap .rzf-btn a{
font-size: 0.9em;
color: var(--text-primary-color)!important;
background-image: linear-gradient(45deg, var(--white-color) 50%, transparent 50%);
background-color: var(--white-color);
border: 2px solid var(--primary-color);
border-radius: 50px;
}
.school-cta .school-cta__sub-wrap .rzf-btn a::after {color: var(--text-primary-color);}
.school-cta .school-cta__sub-wrap .rzf-btn a:hover {
border: 2px solid var(--primary-color);
color: var(--text-primary-color)!important;
background-color: var(--primary-color);
}
.school-cta .school-cta__sub-wrap .rzf-btn a:hover::after {
right: 25px;
color: var(--text-primary-color);
}

/* 電話番号 */
.school-cta__tel-wrap{}
.school-cta__tel-wrap p{
text-align: center;
margin: 0!important;
}
p.school-cta__tel{
font-size: 2em;
font-weight: 800;
line-height: 1.2;
color: var(--text-primary-color);
}

@media screen and (max-width: 767px){
.school-cta__sub-wrap {flex-direction: column; gap: 1em;}
}
@media screen and (max-width: 450px){
p.school-cta__text {font-size: 1.4em;}
p.school-cta__text::before,
p.school-cta__text::after{width: 12px; height: 25px;}
p.school-cta__text::before {margin-right: 17px;}
p.school-cta__text::after {margin-left: 17px;}
p.school-cta__tel{font-size: 1.6em;}
p.school-cta__tel a{border-bottom: none;}
    
.school-cta .rzf-btn {
margin-bottom: 1.5em!important;
}
.school-cta .school-cta__sub-wrap .rzf-btn {
max-width: 280px;

}
}


/* ヘッド
------------------------------------------------------------*/
.rzf-head-wrap::after{
background-color: var(--primary-color);
/*opacity: 1;*/
}
h1.rzf-head-title{}


.rzf-head-wrap{
position: relative;
margin-bottom: 2em;
}
.rzf-head-wrap::after{
content: none;
/*position: absolute;
top: 0;
right: 0;
bottom: 0;
left: 0;
background-color: #0B318F;
opacity: 0.8;
display:block*/
}
h1.rzf-head-title{
position: absolute;
top: auto;
left: auto;
margin-right: 0;
transform: none;
bottom: 0;
width: 100%;
background-color: var(--primary-color);
margin: 0!important;
padding: 0.8em;
font-size: 2.4em!important;
}
.rzf-head-logo{
position: absolute;
top: 2em;
left: 2em;
}
.rzf-head-logo img{
max-width: 180px!important;
}

@media screen and (min-width: 1200px) {
h1.rzf-head-title{font-size: 3em!important;}
.rzf-head-wrap .rzf-ofi-11:before, .rzf-head-wrap .rzf-ofi-32:before, .rzf-head-wrap .rzf-ofi-43:before {padding-top: 56.25%;}
}
@media screen and (max-width: 767px) {
h1.rzf-head-title{font-size: 2em!important;}
.rzf-head-logo{
top: 0.7em;
left: 0.7em;
}
.rzf-head-logo img{max-width: 120px!important;}
}
@media screen and (max-width: 450px) {
h1.rzf-head-title{font-size: 1.4em!important;}
.rzf-head-logo{
top: 0.5em;
left: 0.5em;
}
.rzf-head-logo img{max-width: 80px!important;}
}

/* アバウト
------------------------------------------------------------*/
#about{
overflow: hidden;
}
/* 動画用スライダー */
.swiper-movie .swiper-slide{max-width: 350px;}
.swiper-movie .swiper-slide > div{aspect-ratio: 9 / 16;}
.swiper-movie .swiper-slide > div video{
width: 100%;
height: 100%;
border-radius: 10px;
}
@media screen and (max-width: 767px){
.swiper-movie .swiper-slide{max-width: 250px;}
}

/* 動画用スライダー */
.swiper-movie .swiper-button-next, .swiper-movie .swiper-button-prev {
top: calc(50% - 60px);
}
@media screen and (max-width: 450px) {
.swiper-movie{margin-inline: -20px; }
}
/* 動画用プレイボタン */
.play-pause-btn {
position: absolute;
top: 50%;
left: 50%;
transform:translate(-50%, -50%);
background-color: transparent;
color: white;
border: none;
font-size: 3em;
padding: 10px 20px;
cursor: pointer;
z-index: 10;
}
@media screen and (max-width: 767px){
.play-pause-btn {display: none;}
}

/* チアスピリット */
.school-about__cheerspirits {
padding: 2em;
color: var(--white-color);
background-color: var(--primary-color);
border-radius: 10px;
}
.school-about__cheerspirits h3 {
margin-top: 0!important;
margin-bottom: 1.5em!important;
padding: 0;
border: none;
color: var(--white-color)!important;
text-align: center;
}
.rzf-wrap .school-about__cheerspirits p, .school-about__cheerspirits td{
font-weight: 600!important;
line-height: 1.8;
color: var(--white-color) !important;
/*font-size: 18px;*/
}
.school-about__cheerspirits td{
font-weight: 500!important;
font-size: 1.1em;
}
.school-about__cheerspirits td:nth-child(odd){
padding-right: 1em;
}
.school-about__cheerspirits-inner{
margin: 0 auto;
display: table;
margin-left: auto !important;
margin-right: auto !important;
text-align: left !important;
}

@media (max-width: 640px) {
.school-about__cheerspirits{
    padding: 1.2em;
    max-width: 90%;
    margin: 0 auto;
    }
.school-about__cheerspirits td{
font-size: 0.95em;
}
}

/* トピックス
------------------------------------------------------------*/
/* トピックス用タイトル */
.swiper-topics h3, .school-topics__title h3 {
display: flex;
align-items: flex-start;
margin: 0 0 1em!important;
padding: 0!important;
line-height: 1.4;
border: none;
color: var(--white-color)!important;
}
.swiper-topics h3::before {
content: "";
width: 8px;
min-width: 8px;
height: 1.4em;
border-radius: 10px;
background-color: var(--accent-color);
margin-right: 0.5em;
}
.swiper-topics h4{
margin: 0!important;
font-size: 1rem!important;
color: var(--white-color)!important;
}
/*.swiper-topics h4::before{
content: none;
}*/
.swiper-topics p, .school-topics__title p {
color: var(--wheite-color)!important;
font-weight: 500;
text-align: justify;
}

/* スライダー */
.swiper-topics .swiper-button-next, .swiper-topics .swiper-button-prev {
top: calc((100vw - 50px) / 2 * 0.5625 / 2);
}
@media screen and (min-width: 1800px) {
.swiper-topics .swiper-button-next, .swiper-topics .swiper-button-prev {
top: calc((1800px - 50px) / 2 * 0.5625 / 2);
}
}
@media screen and (max-width: 999px) {
.swiper-topics .swiper-button-next, .swiper-topics .swiper-button-prev {
top: calc((100vw - 50px) / 1.5 * 0.5625 / 2);
}
}
@media screen and (max-width: 639px) {
.swiper-topics .swiper-button-next, .swiper-topics .swiper-button-prev {
top: calc((100vw - 50px) / 1.3 * 0.5625 / 2);
}
}

/* 指導方針
------------------------------------------------------------*/
.school-policy__wrap{
display: flex;
align-items: flex-end;
margin-bottom: 5em;
}
.school-policy__wrap_reverse{flex-direction: row-reverse;}
.school-policy__img{width: 100%;}
.school-policy__img img{border-radius: 10px;}
.school-policy__textbox{
width: 90%;
margin-left: -8em;
margin-right: 4em;
margin-bottom: 1em;
padding: 1em;
background-color: rgba(250,255,255,0.8) ;
border-radius: 10px;
z-index: 2;
}
.rzf-cheerschool .school-policy__textbox{
background-color: rgba(255,250,255,0.9) ;
}
.school-policy__wrap_reverse .school-policy__textbox{
margin-left: 4em;
margin-right: -8em;
}
.rzf-wrap .school-policy__textbox h3{
margin-top: 0!important;
margin-bottom: 0.5em!important;
padding: 0;
color: var(--text-primary-color)!important;
border: none;
}
.rzf-wrap .school-policy__textbox p,
.rzf-wrap .school-policy__textbox p{
margin-bottom: 0!important;
color: var(--text-color)!important;
}
.rzf-wrap .rzf-bg-school .school-policy__textbox p,
.rzf-wrap .rzf-bg-cheerschool .school-policy__textbox p{
margin-bottom: 0!important;
color: var(--text-primary-color)!important;
}

@media screen and (max-width: 767px){
.school-policy__textbox{
width: 100%;
margin-right: 2em;
}
.school-policy__wrap_reverse .school-policy__textbox{margin-left: 2em;}
}
@media screen and (max-width: 640px){
.school-policy__wrap{
flex-direction: column;
margin-bottom: 2em;
margin-inline: 1em;
}
.school-policy__img{margin-bottom: 0.7em;}
.school-policy__textbox{
margin-left: 0;
margin-right: 0;
padding: 0;
}
.school-policy__wrap_reverse .school-policy__textbox{
margin-left: 0;
margin-right: 0;
}
}

/* クラス紹介
------------------------------------------------------------*/
#class p{color: var(--white-color)!important;}

.swiper-class .swiper-slide{
display: flex;
flex-direction: column;
height: auto;
}
.swiper-class figure {border-radius: 10px;}

/* クラス紹介用タイトル */
.swiper-class h3 {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 0.3em;
margin: 0!important;
margin-bottom: 0.8em!important;
padding: 0;
/*font-size: 1.2rem !important;*/
border: none;
color: var(--white-color)!important;
}
.swiper-class h3::before {
content: "";
width: 8px;
height: 1.4em;
border-radius: 10px;
background-color: var(--accent-color);
/*margin-right: 0.5em;*/
}
.swiper-class h3 > span { font-size: 0.8em; font-weight: 500;}
.swiper-class h3 > span::before {
content: "対象";
display: inline-block;
/*margin-left: 1.5em;*/
margin-right: 0.3em;
padding: 3px 5px;
font-size: 0.8em;
font-weight: 600;
line-height: 1.2;
color: var(--text-primary-color) !important;
background-color: var(--white-color);
border-radius: 3px;
}
.swiper-class h4 {
position: relative;
/*margin-top: 2em!important;*/
margin-top: 0!important;
margin-bottom: 1.5em!important;
padding: 0 65px;
text-align: center;
color:  var(--white-color)!important;
}
.swiper-class h4:before {
position: absolute;
top: 50%;
left: 0;
right: 0;
/*width: 100%;*/
height: 1px;
content: '';
background-color: var(--white-color);
}
.swiper-class h4 span {
position: relative;
padding: 0 1em;
background-color: var(--primary-color);
}

@media screen and (max-width: 767px){}
@media screen and (max-width: 640px){}

/* 開校スクールボタン */
.school-class__school-list-wrap{margin-top: auto;}
.school-class__school-list{
display: grid;
grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
grid-auto-rows: auto;
grid-gap: 0.8em;
min-height: calc((1em * 1.6 + 1.4em)* 2 + 0.8em);
}
.school-class__school-list-btn{
width: 100%;
box-sizing: border-box;
}
.school-class__school-list-btn a{
display: flex;
justify-content: center;
align-items: center;
position: relative;
padding: 0.7em 5px 0.7em 25px;
z-index: 100;
text-align:center;
font-size: 1em;
font-weight: 600;
line-height: 1.6;
text-decoration:none!important;
transition: 0.3s;
z-index: 0;
color: var(--text-primary-color)!important;
background-color: var(--white-color);
border-radius: 3px;
}
.school-class__school-list-btn a::after{
display: block;
position: absolute;
font-family: "Font Awesome 5 Free";
content: '\f055';
font-weight: 900;
font-size: 1.6em;
padding-right: 0.5em;
/*bottom: 8px;*/
left: 0.5em;
top: 50%;
transform: translateY(-50%);
line-height: 1;
color: var(--text-primary-color)!important;
}
@media screen and (max-width: 640px){
.school-class__school-list{grid-template-columns: repeat(auto-fill, minmax(120px, 1fr));}
.school-class__school-list-btn a{padding: 0.5em 5px 0.5em 20px;}
.school-class__school-list-btn a::after{
font-size: 1.4em;
padding-right: 0.3em;
}
}
@media screen and (max-width: 513px){
.school-class__school-list{min-height: calc((1em * 1.6 + 1.4em)* 3 + 0.8em);}
}
@media screen and (max-width: 450px){
.swiper-class h4 {font-size: 1rem!important;}
}
@media screen and (min-width: 1200px){
.school-class__school-list{
grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
min-height: calc((1.2rem * 1.6 + 1.4em)* 2 + 0.8em);
}
.school-class__school-list-btn a{font-size: 1.2em;}
}

/* スライダー */
.swiper-class .swiper-button-next, .swiper-class .swiper-button-prev {
top: calc((100vw - 50px) / 2 * 0.6666 / 2 + 1.2rem + 0.3em + 0.8em);
}
@media screen and (min-width: 1800px) {
.swiper-class .swiper-button-next, .swiper-class .swiper-button-prev {
top: calc((1800px - 50px) / 2 * 0.6666 / 2 + 1.2rem + 0.3em + 0.8em);
}
}
@media screen and (max-width: 999px) {
.swiper-class .swiper-button-next, .swiper-class .swiper-button-prev {
top: calc((100vw - 50px) / 1.5 * 0.6666 / 2 + 1.2rem + 0.3em + 0.8em);
}
}
@media screen and (max-width: 639px) {
.swiper-class .swiper-button-next, .swiper-class .swiper-button-prev {
top: calc((100vw - 50px) / 1.3 * 0.6666 / 2 + 1.2rem + 0.3em + 0.8em);
}
}
@media screen and (max-width: 465px) {
.swiper-class .swiper-button-next, .swiper-class .swiper-button-prev {
top: calc((100vw - 50px) / 1.3 * 0.6666 / 2 + 1.2rem + 0.3em + 0.8em + 1em);
}
}

/* スクールコーチ紹介
------------------------------------------------------------*/
.rzf-profile {margin: 1em 0 /*4em*/!important;}
p.rzf-profile-name, h3.rzf-profile-name{
padding: 0.8em;
background-color: var(--primary-color);
border-radius: 7px;
}
.rzf-profile .school-list > dt, .rzf-profile .school-list > dd {
font-size: clamp(0.875rem, 0.8068rem + 0.3409vw, 1.0625rem);
text-align: left;
border-bottom-color: var(--primary-color);
}
@media screen and (max-width: 640px) {
.rzf-profile .rzf-profile-img {text-align: center;}
}

/* 無料体験スクール
------------------------------------------------------------*/
/* 申込み方法 */
#trial .swiper-wrapper{padding-bottom: 4em;}

/* スライダー */
.swiper-trial {margin-bottom: 4em;}
.swiper-trial .swiper-slide{
max-width: 500px;
height: auto;
padding: 2em;
background-color: var(--white-color);
border-radius: 10px;
}
.swiper-trial .school-trial__slide-img{
text-align: center;
margin-bottom: 1.5em;
}
.swiper-trial .school-trial__slide-img img{max-height: 150px;}

.school-trial__slide-title-wrap{
display: flex;
align-items: center;
margin-bottom: 0.7em;
}
.school-trial__slide-step {
display: flex;
align-items: center;
margin-right: 0.5em;
padding: 0.3em 0.5em;
font-weight: 600;
line-height: 1.2;
color: var(--white-color);
background-color: var(--text-primary-color);
letter-spacing: 0.05em;
border-radius: 2px;
white-space: nowrap;
}
.swiper-trial h3.school-trial__slide-title {
margin: 0!important;
padding: 0;
/*font-size: 1em;*/
font-weight: 700;
line-height: 1.2;
border: none;
color: var(--text-primary-color)!important;
}
.rzf-school .swiper-slide p a {
color: var(--text-primary-color)!important;
}
/* 色変え */
.rzf-wrap .rzf-bg-school .swiper-trial p,
.rzf-wrap .rzf-bg-cheerschool .swiper-trial p{
margin-bottom: 0!important;
color: var(--text-primary-color)!important;
font-weight: 500;
text-align: justify;
}

@media screen and (max-width: 640px){
.swiper-trial .swiper-slide{
padding: 2em 1.2em;
max-width: 380px;
}
.swiper-trial h3.school-trial__slide-title span::before {
position: absolute;
top: -230%;
width: 178px;
transform: rotate(10deg);
}
.swiper-trial h3.school-trial__slide-title > span {
margin-right: 1.2em;
font-size: 0.9em;
}
}
@media screen and (max-width: 450px){
.swiper-trial .swiper-slide{
padding: 1.5em 1em;
max-width: 90vw;
}
.swiper-trial .school-trial__slide-img img {max-height: 120px;}
}

/* 申込み方法用スライダー */
.swiper-trial .swiper-button-next, .swiper-trial .swiper-button-prev {
position: absolute;
top: calc(380px / 2 - 15px);
}
@media screen and (max-width: 640px) {
/*.swiper-trial .swiper-button-next, .swiper-trial .swiper-button-prev {
top: calc(250px / 2 - 15px);
}*/
}



/* スクール紹介
------------------------------------------------------------*/
.school-detail {
display: grid;
gap: 1em;
grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
width: 100%;
}
.school-detail li{
flex-direction: row;
justify-content: space-between;
align-items: flex-start;
position: relative;
}
.school-detail__title-wrap{
position: absolute;
bottom: 0;
width: 100%;
background-color: var(--primary-color);
padding: 1em 0.7em;
padding-right: 50px;
}
.school-detail__title-wrap p,
.school-detail__title-wrap h3{
align-items: center;
margin: 0!important;
padding: 0!important;
font-size: 1rem!important;
font-weight: 700;
text-align: center;
color: var(--white-color)!important;
line-height: 1.4;
letter-spacing: 0;
border: none;
/*font-family: "Noto Serif JP", serif;*/
}
.school-detail__title-wrap p span:first-of-type{
margin-right: 0.5em;
}

h3.school-detail__extracurricular-title{
margin: 0!important;
margin-bottom: 0.5em!important;
padding: 0!important;
font-size: 1.1rem!important;
font-weight: 700;
color: var(--text-color)!important;
line-height: 1.4;
letter-spacing: 0;
border: none;
}
h3.school-detail__extracurricular-title span{
margin-left: 1em;
font-size: 0.9em!important;
font-weight: 500;
}

.school-detail li a{
display: flex;
flex-direction: column;
height: 100%;
position: relative;
}
.school-detail li a::after{
display: block;
position: absolute;
font-family: "Font Awesome 5 Free";
content: '\f055';
font-weight: 900;
font-size: 2.5em;
padding-left: 0.5em;
bottom: 8px;
right: 0.2em;
line-height: 1;
color: var(--white-color)!important;
}
.school-detail__image {margin-inline: auto;}
.school-detail__image img{
object-fit: cover;
aspect-ratio: 4 / 3;
max-width: 100%;
width: 100%;
}

@media screen and (max-width: 767px){
.school-detail {
gap: 0.8em;
grid-template-columns: 1fr 1fr;
}
.school-detail .school-detail__title-wrap {padding-right: 35px;}
.school-detail .school-detail__title-wrap p {font-size: 1em !important;}
.school-detail li a::after {
font-size: 2em;
padding-left: 0.5em;
bottom: 9px;
}
}
@media screen and (max-width: 450px){
.school-detail {
gap: 0.5em;
/*padding: 0 0.7em;*/
}
.school-detail .school-detail__title-wrap {
padding: 0.5em 0.3em;
padding-right: 27px;
}
.school-detail .school-detail__title-wrap p {font-size: 0.9em !important;}
.school-detail li a::after {
font-size: 1.5em;
padding-left: 0.5em;
bottom: 6px;
}
.school-detail__image img{aspect-ratio: 10 / 9;}
}

/* スクール詳細 中身
------------------------------------------------------------*/
.rzf-wrap h2.school-popup__title{
margin-top: 1em !important;
margin-bottom: 0.5em !important;
padding: 1em;
font-size: 1.1rem !important;
font-weight: 900;
text-align: left;
color: var(--white-color) !important;
background-color: var(--primary-color);
border: none;
border-radius: 7px;
}
@media screen and (max-width: 450px){
.rzf-wrap h2.school-popup__title{
font-size: 1rem !important;
}
}

.school-popup .school-list {
margin-top: 0!important;
}
.school-popup .school-list > dt, .school-popup .school-list > dd {
text-align: left;
border-bottom-color: 1px solid var(--primary-color);
}
.school-popup .school-list__map{
margin-left: 0.5em;
padding: 0.2em 0.5em;
font-size: 0.9em;
color: var(--white-color);
background-color: var(--primary-color);
border-radius: 3px;
}

.school-list > dd > dl > dt {font-weight: 500;}
.school-list strong {font-weight: 600;}

/* スケジュール */
.rzf-school .rzf-table06 th{border-right-color: var(--white-color);}
.rzf-school .rzf-table06 th:first-child {border-left-color: var(--primary-color);}
.rzf-school .rzf-table06 th:last-child {border-right-color: var(--primary-color);}
.rzf-school .rzf-table06 td{border-color: var(--primary-color);}
.rzf-school .rzf-table06 th{background-color: var(--primary-color);}
.rzf-school .rzf-table06 td{color: var(--text-primary-color);}

@media screen and (max-width: 767px) {
.rzf-school .rzf-table06 th{
border-right-color: var(--primary-color);
border-left-color: var(--primary-color);
}
.rzf-school .rzf-table06 th:first-child {
border-top-color: var(--primary-color);
}
.rzf-school .rzf-table06 th:last-child {
border-bottom-color: var(--primary-color);
}
}

/* 卒業生紹介
------------------------------------------------------------*/
.school-graduate__wrap{
margin-bottom: 1.5em;
padding: 2em;
background-color: var(--white-color);
border-radius: 10px;
}
.rzf-bg-white .school-graduate__wrap{border: 3px solid var(--primary-color);}
.rzf-wrap .school-graduate__wrap h3 {
display: flex;
align-items: flex-start;
margin-top: 1em!important;
margin-bottom: 0.8em!important;
padding: 0;
padding-bottom: 0.3em;
border: none;
border-bottom: 1px solid var(--primary-color);
/*color: var(--white-color)!important;*/
/*font-size: 1.1rem!important;*/
font-size: clamp(0.875rem, 0.7386rem + 0.6818vw, 1.25rem)!important;
font-weight: 700;
color: var(--text-color)!important;
line-height: 1.4;
}
.rzf-wrap .school-graduate__wrap h3::before {
content: "";
width: 8px;
min-width: 8px;
height: 1.4em;
border-radius: 10px;
background-color: var(--primary-color);
margin-right: 0.5em;
}

.rzf-wrap .school-graduate__wrap p.school-graduate__text{
margin-bottom: 0!important;
color: var(--text-color)!important;
}

@media (max-width: 640px) {
.school-graduate__wrap{padding: 1.2em;}
}
@media (max-width: 450px) {}


/* 保護者の声
------------------------------------------------------------*/
.school-voice__wrap{
display: flex;
gap: 1em;
margin-bottom: 1.5em;
padding: 1em;
background-color: var(--white-color);
border-radius: 10px;
}
.school-voice__img{
display: flex;
flex-direction: column;
gap: 0.5em;
width: 100%;
max-width: 130px;
}
.school-voice__img img{
border-radius: 50%;
aspect-ratio: 1;
}
.rzf-wrap .rzf-bg-school p.school-voice__class,
.rzf-wrap .rzf-bg-cheerschool p.school-voice__class{
margin-bottom: 0!important;
font-size: 0.9em;
line-height: 1.4;
text-align: center;
color: var(--text-color)!important;
}
.rzf-wrap .school-voice__text{padding: 1em;}
.rzf-wrap .rzf-bg-school .school-voice__text p,
.rzf-wrap .rzf-bg-cheerschool .school-voice__text p{
margin-bottom: 0!important;
color: var(--text-color)!important;
}
@media (max-width: 640px) {
.school-voice__wrap{gap: 0.7em;}
.rzf-wrap .rzf-bg-school p.school-voice__class,
.rzf-wrap .rzf-bg-cheerschool p.school-voice__class{font-size: 0.8em;}
.rzf-wrap .school-voice__text{padding: 0;}
}
@media (max-width: 450px) {
.school-voice__wrap {
flex-direction: column;
align-items: center;
}
}

/* 活動紹介
------------------------------------------------------------*/
.school-event__example li {
font-size: clamp(0.875rem, 0.8068rem + 0.3409vw, 1.0625rem);
color: var(--text-color);
}
.rzf-bg-cheerschool .school-event__example li {
color: var(--white-color);
}


/* よくある質問
------------------------------------------------------------*/
.rzf-wrap.rzf-school .js-pulldown .pulldown {border: none;}

.rzf-wrap.rzf-school .js-pulldown h3,
.rzf-wrap.rzf-school .js-pulldown dt {
color: var(--text-primary-color) !important;
background-color: var(--white-color)!important;
}
.rzf-school .rzf-faq div.js-pulldown {
margin-bottom: 0.7em!important;
padding: 0;
}
.rzf-school .rzf-faq .js-pulldown dt {
padding-left: 1.1em;
text-indent: 0; 
}
.rzf-school .rzf-faq .js-pulldown dd {
margin-top: 0;
text-indent: 0;
}
.rzf-school .rzf-faq .js-pulldown.show dd.pulldown {display: flex!important;}
.rzf-school .rzf-faq dt:before {
color: inherit;
margin-bottom: auto;
padding-bottom: 0.2em;
}
.rzf-school .rzf-faq dd:before {color: var(--second-color);}
.rzf-school .rzf-faq dd a {
padding: 0 0.2em;
border-bottom: 1px solid;
}
.rzf-school .rzf-faq dd a:hover {border-bottom: none;}

 .rzf-bg-cheerschool .rzf-faq div {
border-color: var(--white-color);
}
.rzf-wrap.rzf-school .rzf-bg-cheerschool .js-pulldown h3,
.rzf-wrap.rzf-school .rzf-bg-cheerschool .js-pulldown dt {
color: var(--white-color) !important;
background-color: var(--primary-color)!important;
}
.rzf-school .rzf-bg-cheerschool .rzf-faq .js-pulldown dd {
color: var(--white-color) !important;
}
.rzf-school .rzf-bg-cheerschool .rzf-faq dd:before {
color: var(--white-color);
}

@media screen and (max-width: 640px) {
.rzf-school .rzf-faq .js-pulldown dt {
padding: 0.5em 0;
padding-left: 0.3em;
}
}
@media screen and (max-width: 450px) {
.rzf-wrap.rzf-school .js-pulldown .pulldown {padding: 1.5em 0.7em;}
.rzf-school .rzf-faq .js-pulldown-faq .pulldown {padding: 1.5em 0.5em;}
}
