@charset "UTF-8";
body {
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", Meiryo, "MS P Gothic", "MS Pゴシック", Osaka, Arial, Helvetica, sans-serif;
    background: #dce9f3;
}
/*===============================================================================
header
===============================================================================*/
.header { position: fixed; top: 0; left: 50%; transform: translateX(-50%); width: 100%; max-width: 750px; height: 0.97rem; border-bottom: 0.02rem solid #e4e4e4; background: #fff; z-index: 3000; }

.header .inner { position: relative; display: flex; align-items: center; gap: 0.24rem; padding: 0.25rem 0.3rem 0.21rem; }

.header-logo01 { width: 2.67rem; }

.header-txt03 { width: 2.99rem; }

.menu { position: absolute; top: 0; right: 0; width: 0.96rem; height: 0.95rem; background: #ed2315; }

.menu-txt { position: absolute; bottom: 0.14rem; right: 50%; transform: translateX(50%); }

.menu .lines { position: absolute; top: 0.35rem; right: 50%; transform: translateX(50%); width: 0.4rem; height: 0.35rem; }

.menu .line { position: absolute; display: inline-block; width: 100%; height: 0.04rem; border-radius: 0.02rem; background: #fff; }

.menu .line.__01 { top: 0; }

.menu .line.__02 { top: 0.11rem; }

.menu .line.__03 { top: 0.22rem; }

.overlay { position: fixed; top: 0.97rem; right: 0; left: 0; bottom: 0; width: 100%; height: 100vh; pointer-events: none; background: rgba(123, 123, 123, 0.5); opacity: 0; z-index: 1000; transition: all 0.3s; }

.nav-wrap { position: fixed; top: 0.97rem; right: 0; left: 0; width: 100%; padding: 0 0 0.26rem; z-index: 1100; background: #f1f1f1; transform: translateY(-115%); transition: all 0.3s; }

.nav-wrap .item { position: relative; border-bottom: 1px solid #e4e4e4; }

.nav-wrap .item::before, .nav-wrap .item::after { content: ""; position: absolute; top: 50%; transform: translateY(-50%); pointer-events: none; }

.nav-wrap .item::before { left: 0.31rem; width: 0.3rem; height: 0.46rem; background: url("../img/header_nav_deco_01.png") no-repeat center/cover; }

.nav-wrap .item::after { right: 0.6rem; width: 0.24rem; height: 0.15rem; background: url("../img/header_nav_deco_02.png") no-repeat center/cover; }

.nav-wrap .item .link { display: block; cursor: pointer; padding: 0.39rem 0.2rem 0.4rem 0.75rem; }

.nav-wrap .btn { display: block; }

.nav-wrap .btn-wrap { display: flex; justify-content: center; align-items: center; gap: 0.1rem; margin: 0.24rem 0 0; }

.nav-wrap .btn.__01 { width: 4.55rem; }

.nav-wrap .btn.__02 { width: 2.45rem; }

header .line { transition: all 0.4s; }

header.active .line.__01 { top: 25%; transform: rotate(45deg); }

header.active .line.__02 { opacity: 0; }

header.active .line.__03 { top: 25%; transform: rotate(-45deg); }

header.active .overlay { display: block; pointer-events: all; opacity: 1; }

header.active .nav-wrap { transform: translateY(0); z-index: 2000; }

/*============================================================================== hero ============================================================================= */
.hero { position: relative; margin: 0.97rem 0 0; }

.hero-campain { position: absolute; width: 6.98rem; bottom: -0.7rem; left: 50%; transform: translate(-50%, -50%); }


/*===============================================================================
cta
===============================================================================*/
.cta-bg { padding: 0.5rem 0 0.45rem; background-size: cover; }

.cta-block { padding: 0.35rem 0 0; border: solid #0386b3 0.05rem; border-radius: 0.1rem; background: #fff; }

.cta-campain { width: calc(100% + 0.56rem); margin: 0 -0.29rem 0 -0.28rem; }

.cta-txt04 { margin: 0.2rem 0 0; font-size: 0.28rem; font-weight: bold; text-align: center; letter-spacing: 0.05em; }

.cta-btn01 { width: 6.3rem; margin: 0.28rem auto 0; }

.cta-note { margin: 0.18rem auto 0; letter-spacing: 0.02em; line-height: 1.66; color: #fff; font-size: 0.18rem; }

.cta-link { position: relative; font-size: 0.32rem; font-weight: bold; text-align: center; margin-top: 0.2rem; }

.cta-link a { position: relative; display: inline-block; border-bottom: 1px solid #000; }

.cta-link a::before { position: absolute; top: 20%; left: -0.3rem; content: ""; display: inline-block; width: 0.2rem; height: 0.5rem; background: url(../img/cta_link_deco.png) no-repeat; background-size: contain; }

.cta .tel { color: #333; margin: 0.2rem 0 0; padding: 0.2rem 0 0.4rem; border-radius: 0 0 0.1rem 0.1rem; }

.cta .tel-txt01 { font-weight: bold; text-align: center; letter-spacing: 0.08em; }

.cta .tel-num01 { width: 6rem; margin: 0.05rem auto 0; }

.cta .tel-txt02 { margin: 0.07rem 0 0; text-align: center; }

/*===============================================================================
compare
===============================================================================*/
.compare-bg { position: relative; padding: 0 0 0.8rem; background: linear-gradient(#d4effc, #9ed7f3); }

.compare-diff { width: 5.71rem; margin: 0 auto; }

.compare-bg-white { width: 7.2rem; margin: 0.4rem 0 0; padding: 0.3rem 0.3rem 0.4rem; background: #fff; border-bottom-left-radius: 0.1rem; border-top-left-radius: 0.1rem; border-top: solid 1px #254fad; border-left: solid 1px #254fad; border-bottom: solid 1px #254fad; }

.compare-table-wrap { padding: 0 0 0.2rem; overflow-x: scroll; }

.compare-table-wrap::-webkit-scrollbar { height: 0.3rem; }

.compare-table-wrap::-webkit-scrollbar-track { background: #dddddd; border-radius: 45px; }

.compare-table-wrap::-webkit-scrollbar-thumb { border-radius: 45px; background: #8e8e8e; }

.compare-table { width: 10.2rem; padding: 0 0.2rem 0 0; }

.compare-note02 { width: 6.6rem; margin: 0.2rem 0 0 0; font-size: 0.2rem; text-align: right; }


/*===============================================================================
up
===============================================================================*/
.up-bg { position: relative; padding: 0.2rem 0 1rem; background: #d4effc; background:#c5e8fa;}

.up-bg::after { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); right: 0; width: 6.28rem; height: 0.012rem; /*background: url("../img/up_border.png") no-repeat center/cover;*/ }

.up-item:nth-child(n + 2) { margin: 0.32rem 0 0; }

.up-item-header { position: relative; height: 1.6rem; background: url("../img/up_item_header_01.png") no-repeat center/cover; box-shadow: 0 0.09rem 0.02rem 0 #7c0e10, inset 0px -0.03rem 0.06rem -0.02rem rgba(0, 0, 0, 0.3); border-radius: 0.1rem; }

.up-item-header.active { box-shadow: none; border-radius: 0; }

.up-item-header-switch { position: absolute; top: 0.53rem; right: 0.3rem; width: 0.79rem; margin: 0 auto; }

.up-item-header-switch-shape { position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 0.2rem; height: 0.2rem; background: url("../img/js_open.png") no-repeat center/cover; }

.up-item-header-switch-shape.active { background: url("../img/js_close.png") no-repeat center/cover; width: 0.2rem; height: 0.04rem; }

.up-item-header-switch-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; text-align: center; margin: 0.3rem 0 0; }

.up-item-content { display: none; padding: 0.42rem 0.5rem 0.5rem; background: #fff; border-radius: 0 0 0.1rem 0.1rem; }

.up-item-content-ttl { position: relative; padding: 0 0 0 0.7rem; color: #ed2315; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 0.33rem; letter-spacing: 0.06em; line-height: 1.23; }

.up-item-content-ttl .txt__small { color: #000; font-size: 0.26rem; }

.up-item-content-ttl::before { content: ""; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 0.48rem; height: 0.75rem; background: url("../img/up_item_content_switch.png") no-repeat center/cover; }

.up-item-content-txt { margin: 0.36rem 0 0; font-size: 0.24rem; letter-spacing: 0.031em; line-height: 1.42; }

.up-item.__02 .up-item-header { height: 1.5rem; border-radius: 0.1rem; background: url("../img/up_item_header_02.png") no-repeat center/cover; }

.up-item.__03 .up-item-header { background: url("../img/up_item_header_03.png") no-repeat center/cover; }

.up-item.__04 .up-item-header { background: url("../img/up_item_header_04.png") no-repeat center/cover; }

.up-item.__05 .up-item-header { background: url("../img/up_item_header_05.png") no-repeat center/cover; }

.up-item.__06 .up-item-header { background: url("../img/up_item_header_06.png") no-repeat center/cover; }

/*=============================================================================== voice ===============================================================================*/
.voice-bg { padding: 0 0 0.8rem; background: #d4effc; background:#c5e8fa;}

.voice-ttl01 { width: 6.2rem; margin: 0 auto; }

.voice-ttl02 { position: relative; z-index: 10; width: 4.25rem; margin: 0.88rem auto 0; }

.voice-ttl02::before { content: ""; position: absolute; z-index: -1; top: -1rem; left: 0; width: 5rem; height: 4rem; background: url("../img/voice_ttl_02_mist.png") no-repeat center/cover; }

.voice-item:nth-child(n + 2) { margin: 0.32rem 0 0; }

.voice-item:nth-child(4) .voice-item-content-ttl .txt__small { margin: 0 0 0 0.07rem; }

.voice-item-header { position: relative; height: 1.6rem; background: url("../img/voice_item_header_01.png") no-repeat center/cover; box-shadow: 0 0.09rem 0.02rem 0 #7c0e10, inset 0px -0.03rem 0.06rem -0.02rem rgba(0, 0, 0, 0.3); border-radius: 0.1rem; }

.voice-item-header.active { box-shadow: none; border-radius: 0; }

.voice-item-header-switch { position: absolute; top: 0.53rem; right: 0.3rem; width: 0.79rem; margin: 0 auto; }

.voice-item-header-switch-shape { position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 0.2rem; height: 0.2rem; background: url("../img/js_open.png") no-repeat center/cover; }

.voice-item-header-switch-shape.active { background: url("../img/js_close.png") no-repeat center/cover; width: 0.2rem; height: 0.04rem; }

.voice-item-header-switch-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; text-align: center; margin: 0.3rem 0 0; }

.voice-item-content { display: none; padding: 0.42rem 0.5rem 0.5rem; background: #fff; border-radius: 0 0 0.1rem 0.1rem; }

.voice-item-content-ttl { position: relative; padding: 0 0 0.22rem; color: #e60012; color: #0736a9; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 0.41rem; font-size: 0.33rem; line-height: 1.35; }

.voice-item-content-ttl .txt__small { color: #0736a9; font-size: 0.33rem; font-size: 0.41rem; color: #e60012; }
.voice-item-content-ttl .txt__red { color: #0736a9; font-size: 0.33rem; font-size: 0.41rem; color: #e60012; }

.voice-item-content-ttl::before { content: ""; position: absolute; bottom: 0; left: 50%; transform: translate(-50%); right: 0; width: 6.29rem; height: 0.04rem; background: url("../img/voice_item_ttl_border.png") no-repeat center/cover; }

.voice-item-content-person { display: flex; align-items: center; gap: 0.42rem; margin: 0.42rem 0 0 0.8rem; }

.voice-item-content-person-img { flex: 0 0 1.94rem; }

.voice-item-content-person-txt { color: #012374; text-align: center; line-height: 1.6666; }

.voice-item-content-txt { margin: 0.36rem 0 0; color: #012374; font-size: 0.24rem; letter-spacing: 0.031em; line-height: 1.6666; }

.voice-item.__02 .voice-item-header { background: url("../img/voice_item_header_02.png") no-repeat center/cover; }

.voice-item.__03 .voice-item-header { background: url("../img/voice_item_header_03.png") no-repeat center/cover; }

.voice-item.__04 .voice-item-header { background: url("../img/voice_item_header_04.png") no-repeat center/cover; }

.voice-item.__05 .voice-item-header { background: url("../img/voice_item_header_05.png") no-repeat center/cover; }

.voice-item.__06 .voice-item-header { background: url("../img/voice_item_header_06.png") no-repeat center/cover; }

.voice-item.__07 .voice-item-header { background: url("../img/voice_item_header_07.png") no-repeat center/cover; }

.voice-item.__08 .voice-item-header { background: url("../img/voice_item_header_08.png") no-repeat center/cover; }



/*=============================================================================== cycle ===============================================================================*/
.cycle { margin: -0.2rem 0 0; border-bottom: 2px solid #0736a9; }

.cycle-bg { position: relative; padding: 0 0 1.2rem; background: no-repeat 50% 13%; background-size: contain; }

.cycle-bg::before { content: ""; position: absolute; bottom: 0; right: -0.1rem; width: 2.54rem; height: 3rem; background: url("../img/cycle_teacher.png") no-repeat center/cover; }

.cycle-ttl02 { position: absolute; top: -0.8rem; left: 50%; width: 5.66rem; transform: translateX(-50%); }

.cycle-txt.__01 { margin: 0.5rem 0 0; font-size: 0.28rem; text-align: center; letter-spacing: 0.06em; line-height: 1.7142; }

.cycle-txt.__02 { display: inline-block; padding: 0 0 0.2rem; margin: 1rem 0 0 0.3rem; color: #0736a9; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 700; font-size: 0.46rem; letter-spacing: 0.06em; line-height: 1.12; border-bottom: 0.06rem solid #e60012; }

.cycle-txt.__02 .txt__large { color: #e60012; font-size: 0.5rem; }

.cycle-img { position: relative; margin: 0.25rem 0 0; z-index: 1; }

.cycle-order { position: relative; z-index: 10; width: 6.85rem; padding: 0.04rem; margin: -0.85rem auto 0; background: #fff; border-radius: 5px; }

.cycle-order-header { position: relative; background: url("../img/cycle_order_header_bg.png") no-repeat center/cover; padding: 0.23rem 0 0.19rem; border-radius: 0.04rem 0.04rem 0 0; }

.cycle-order-header-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 0.38rem; letter-spacing: 0.06em; line-height: 1.2631; text-align: center; }

.cycle-order-header-switch { position: absolute; top: 0.38rem; right: 0.3rem; width: 0.79rem; margin: 0 auto; }

.cycle-order-header-switch-button { position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 0.2rem; height: 0.2rem; background: url("../img/js_open.png") no-repeat center/cover; }

.cycle-order-header-switch-button.active { background: url("../img/js_close.png") no-repeat center/cover; width: 0.2rem; height: 0.04rem; }

.cycle-order-header-switch-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; text-align: center; margin: 0.4rem 0 0; }

.cycle-order-content { display: none; padding: 0.68rem 0 0.7rem; border: 0.04rem solid #0736a9; border-radius: 0 0 0.1rem 0.1rem; }

.cycle-order-content-img { width: 6.27rem; margin: 0 auto; }

/*=============================================================================== case ===============================================================================*/
.case .bg { padding: 1rem 0 0.65rem; }

.case .h2 { width: 5.8rem; margin: 0 auto 0.7rem; }

.case .case-list { margin: 0.6rem 0 0; }

.case .slider-block { margin: 0.71rem 0 0; }

.case .case-item { position: relative; border: solid #0736a9 0.06rem; background: #fff; border-radius: 0.1rem; }

.case .case-item + .case .case-item { margin: 0.85rem 0 0; }

.case .case-item .top-block { position: relative; }

.case .case-item .top-block p { letter-spacing: 0.06em; }

.case .case-item .top-block .num { position: absolute; left: -0.1rem; top: -0.3rem; width: 1.75rem; height: 1.79rem; background: url(../img/case_deco01.png); background-size: contain; line-height: 1.79rem; color: #0736a9; /*font-family: arial;*/ font-size: 0.32rem; font-weight: bold; text-align: center; z-index: 2; }

.case .case-item .top-block .school-year { position: relative; padding: 0.45rem 0; background: #0736a9; color: #fcff0d; font-size: 0.65rem; font-weight: bold; text-align: center; line-height: 1.3; letter-spacing: 0.06em; }

.case .case-item .top-block .school-year::after { position: absolute; bottom: -0.4rem; left: 0; width: 6.78rem; height: 0.52rem; background: url(../img/case_deco02.png) no-repeat 50% 0; background-size: cover; content: ""; }

.case .case-item .top-block .school-year.left {
	/*padding-left: 1.7rem;*/
	/*text-align: left;*/
}

.case .case-item .top-block .school-year .txt__small { font-size: 0.4rem; }

.case .case-item .top-block .school-year .small-font { font-size: 0.37rem; }

.case .case-item .top-block .photo { position: absolute; top: 1.5rem; right: 0.4rem; width: 1.99rem; z-index: 10; }

.case .case-item .top-block .photo02 { right: 0.1rem; }

.case .case-item .top-block .name { margin: 0.5rem 0 0.4rem 1rem; color: #0736a9; font-size: 0.4rem; font-weight: bold; line-height: 1.3; letter-spacing: 0.06em; }

.case .case-item .detail-block { margin: 0.2rem 0 0; }

.case .case-item .detail-block + .case .case-item .detail-block { margin: 0; }

.case .case-item .detail-block dt { width: 4.5rem; height: 0.67rem; line-height: 0.7rem; margin: 0 0 0 -0.03rem; padding: 0 0 0 0.25rem; background: url(../img/case_deco03.png) 50% 0; background-size: cover; color: #0736a9; font-size: 0.3rem; font-weight: bold; letter-spacing: 0.06em; }

.case .case-item .detail-block dd { padding: 0.31rem 0.2rem 0.5rem; }

.case .case-item .detail-block dd p:not(.fs-40) { font-size: 0.28rem; }

.case .case-item .detail-block .red { color: #e60012; }

.case .case-item .detail-block .schedule { padding: 0.1rem 0 0.3rem; }

.case .case-item .detail-block .comment-block { margin: 0.8rem -0.2rem 0; padding: 0.2rem 0.3rem 0.5rem; background: #eceff6; }

.case .case-item .detail-block .comment-block .txt01 { width: 6.06rem; height: 0.67rem; line-height: 0.7rem; margin: -0.5rem auto 0; background: url(../img/case_deco04.png) no-repeat 50% 0; background-size: cover; color: #fff; font-size: 0.3rem; font-weight: bold; text-align: center; }

.case .case-item .detail-block .comment-block .txt02 { margin: 0.26rem 0 0; }

.case .height { height: auto !important; }

.case dt, .case dd { letter-spacing: 0.06em; }

.case .case-item .detail-block .comment-block .case .case-item .detail-block .comment-block .txt02 { margin: 0.28rem 0 0; font-size: 0.28rem; }

.case .case-item .detail-block .comment-block .txt02 + .txt01 { margin: 0.5rem 0 0; }

.case .toggle { position: relative; height: 1rem; line-height: 1rem; background: #7d7d7d; color: #fff; font-size: 0.34rem; font-weight: bold; text-align: center; letter-spacing: 0.04rem; }

.case .toggle::after { content: ""; display: inline-block; position: absolute; top: 0.42rem; right: 0.4rem; width: 0.22rem; height: 0.13rem; background: url(../img/case_arrow01.png) no-repeat 50% 0/cover; }

.case .toggle.open::after { right: 2rem; transform: rotate(180deg); }

.case .case-item .btm-note { position: absolute; bottom: -0.5rem; right: -0.1rem; color: #0736a9; font-size: 0.18rem; }

.case .swiper-container-tab .swiper-wrapper { position: relative; display: flex; justify-content: space-between; margin: 0 auto; transform: translate(0) !important; }

.case .swiper-btn { padding: 0.2rem 0 0; box-sizing: border-box; opacity: 1; width: 1.65rem !important; height: 1.08rem; border-radius: 0.1rem; background: url(../img/method02-slider_tab01.png) no-repeat 50% bottom; background-size: cover; color: #fff; font-size: 0.36rem; font-weight: bold; text-align: center; letter-spacing: 0.06em; }

.case .swiper-btn:nth-of-type(n + 3) { padding: 0.25rem 0 0; }

.case .swiper-btn .desc { display: block; font-size: 0.22rem; margin: 0.06rem 0 0; }

.case .swiper-btn:nth-of-type(1), .case .swiper-btn:nth-of-type(2) { padding: 0.38rem 0 0; }

.case .swiper-btn:nth-of-type(3), .case .swiper-btn:nth-of-type(4) { padding: 0.38rem 0 0; }

.case .swiper-btn.swiper-slide-thumb-active { background-position: 50% 0; }

.case .swiper-btn .small-font { font-size: 0.22rem; }

/*=============================================================================== method ===============================================================================*/
.method .bg { padding: 0 0 1rem; background: url(../img/method_bg01.png); }

.method .top-block { margin: 0.6rem 0 0; }

.method .top-block .lead { margin: 0.4rem 0 0; font-size: 0.3rem; font-weight: bold; text-align: center; line-height: 1.7; }

.method .top-block .lead .empahsis { display: inline-block; margin: 0.05rem 0; padding: 0.03rem 0.08rem 0; background: #0736a9; color: #fff; letter-spacing: 0.06em; line-height: 1.45; }

.method .top-block h3 { font-size: 0.7rem; font-weight: bold; text-align: center; line-height: 1.2; letter-spacing: 0.06em; }

.method .real-ttl { width: 6.18rem; margin: 0.85rem auto 0; }

.method .real-movie { margin: 0.71rem 0 0; }

.method .cta-btn { width: 6.3rem; margin: 0.53rem auto 0; }

.method .cta-link { margin: 0.3rem 0 0; }

.method01 .bg { background: none; }

.method01 .method-ttl { margin: 0.55rem 0 0; font-size: 0.7rem; font-weight: bold; text-align: center; line-height: 1.2; }

.method01 .system { margin: 0.5rem 0 0; }

.method01 .system .figure { width: 6.74rem; margin: 0 auto; }

.method01 .system .lead { margin: 0.26rem 0.42rem 0; font-size: 0.28rem; }

.method01 .different { margin: 1.75rem 0 0; padding: 0.01rem 0.3rem 0; border-radius: 0.1rem; border: solid #f03f33 0.08rem; background: #fff; }

.method01 .different .balloon { width: 5.8rem; margin: -1.5rem auto 0; }

.method01 .different .txt01 { margin: 0.23rem 0 0; font-size: 0.28rem; }

.method01 .different .txt01 + .txt01 { margin: 0.35rem 0 0; }

.method01 .different .point { width: 6.1rem; margin: 0.45rem auto 0; }

.method01 .different .btm-txt { margin: 0.56rem -0.3rem 0; padding: 0.5rem 0.4rem; background: #f03f33; }

.method02 .bg { padding: 0 0 0.8rem; }

.method02 .approach-list { margin: 1.2rem 0 0; border-radius: 0.1rem; border: solid #f03f33 0.08rem; background: #fff; }

.method02 .approach-item { padding: 0 0 0.56rem; }

.method02 .approach-item h4.balloon { margin: -0.8rem 0 0; }

.method02 .approach-item .lead { padding: 0.28rem 0 0.35rem; font-size: 0.3rem; font-weight: bold; text-align: center; }

.method02 .approach-item .lead .red { color: #f03f33; }

.method02 .approach-item .pic { width: 6.1rem; margin: 0 auto; }

.method02 .approach-item .txt01 { padding: 0.34rem 0.6rem 0; letter-spacing: 0.05em; }

.method02 .approach-switch { position: relative; display: block; padding: 0.18rem 0 0.24rem; margin: 0 auto; width: 6.1rem; height: 1.16rem; background: url("../img/method_01_switch_btn.png") no-repeat center/100% 100%; text-align: center; }

.method02 .approach-switch::before, .method02 .approach-switch::after { content: ""; position: absolute; }

.method02 .approach-switch::before { top: 0.47rem; right: 0.4rem; width: 0.23rem; height: 0.17rem; background: url("../img/approach_switch_close.png") no-repeat center/cover; }

.method02 .approach-switch.active::before { background: url("../img/approach_switch_open.png") no-repeat center/cover; }

.method02 .approach-switch-txt { color: #f03f33; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 0.34rem; text-align: center; }

.method02 .approach-switch-content { display: none; padding: 0.28rem 0 0; }

.method03 .detail-block { margin: 1.2rem 0 0; border-radius: 0.1rem; border: solid #f03f33 0.08rem; background: #fff; }

.method03 .detail-block .order-made h4 { margin: -0.8rem 0 0; }

.method03 .detail-block .order-made .txt01 { padding: 0.28rem 0.42rem 0.2rem; font-size: 0.28rem; }

.method03 .slider-block { padding: 0.3rem; }

.method03 .swiper-container { margin: 0.3rem 0 0; overflow: hidden; }

.method03 .swiper-slide .example-item { margin: 0.36rem 0 0; }

.method03 .swiper-slide .example-item .txt01 { width: 2.96rem; height: 0.72rem; margin: 0 0 0 0.02rem; padding: 0.28rem 0 0; background: url(../img/method02_deco01.png) no-repeat 50% 0; background-size: cover; color: #fff; font-size: 0.3rem; font-weight: bold; text-align: center; line-height: 1; }

.method03 .swiper-slide .example-item .txt02 { margin: 0.18rem 0 0 0; padding: 0 0 0.14rem; border-bottom: dotted 0.03rem #1040ab; font-size: 0.34rem; font-weight: bold; line-height: 1.3; }

.method03 .swiper-slide .example-item .txt03 { padding: 0.24rem 0 0; font-size: 0.24rem; }

.method03 .swiper-pagination01 { position: relative; display: flex; justify-content: space-between; width: 6.1rem; }

.method03 .swiper-pagination01 .swiper-pagination-bullet { box-sizing: border-box; opacity: 1; width: 1.45rem; height: 1.16rem; padding: 0.26rem 0 0; border-radius: 0; background: url(../img/method02-slider_tab01.png) no-repeat 50% bottom; background-size: cover; color: #fff; font-size: 0.32rem; font-weight: bold; text-align: center; box-sizing: border-box; }

.method03 .swiper-pagination01 .swiper-pagination-bullet-active { background-position: 50% 0; }

.method03 .swiper-pagination01 .swiper-pagination-bullet .small { font-size: 0.22rem; }

.method03 .teaching { margin: 0.28rem 0 0; }

.method03 .teaching .lead { margin: 0.26rem 0.42rem 0; font-size: 0.28rem; }

.method03 .teaching .way-list { margin: 0.6rem 0 0; padding: 0 0.32rem; }

.method03 .teaching .way-item { padding: 0 0 0.52rem; }

.method03 .teaching .way-item h5 { padding: 0 0 0.1rem; border-bottom: dotted 0.02rem #f03f33; color: #f03f33; font-size: 0.44rem; font-weight: bold; letter-spacing: 0.06em; text-align: center; line-height: 1.2; }

.method03 .teaching .way-item h5 .font-small { font-size: 0.32rem; }

.method03 .teaching .way-item .photo { margin: 0.24rem 0 0; }

.method03 .teaching .way-item .txt01 { margin: 0.2rem 0 0; font-size: 0.28rem; }

.method03 .teaching .way-item .txt02 { font-size: 0.24rem; }

/*=============================================================================== room ===============================================================================*/
.room-bg { padding: 0.6rem 0 0.64rem; background-color: #fff; }

.room-ttl { width: 5.5rem; margin: 0 auto; }

.room .lead { position: relative; margin: 0.28rem 0 0; border-radius: 0.2rem; background: #073190; color: #fff; font-weight: bold; text-align: center; }

.room-btn { display: block; position: relative; z-index: 10; margin: 0 auto; width: 6.4rem; height: 1rem; box-shadow: 0 7px #565656; background-color: #787878; border-radius: 0.05rem; color: #fff; font-size: 0.4rem; font-weight: bold; text-align: center; letter-spacing: 0.2em; }

.room-btn::after { content: ""; display: inline-block; position: absolute; top: 0.45rem; right: 1.34rem; width: 0.22rem; height: 0.13rem; background: url(../img/room_arrow.png) no-repeat 50% 0/contain; transform: rotate(180deg); }

.room-btn.open::after { right: 1.74rem; transform: rotate(0); }

.room-content { display: none; }

.room-block { margin: 0.65rem 0 0; }

.room-box01 { height: 0.6rem; padding-left: 0.2rem; background-color: #ed2315; color: #fff; font-size: 0.32rem; font-weight: bold; line-height: 0.6rem; }

.room-list { display: flex; flex-wrap: wrap; }

.room-item { width: 1.65rem; margin: 0.24rem 0.1rem 0 0; box-shadow: 0 0.06rem #d9d9d9; border: 0.01rem solid #cbcbcb; border-radius: 0.05rem; background: linear-gradient(to bottom, #fff, #f0f0f0); font-size: 0.3rem; font-weight: bold; text-align: center; line-height: 1.2; }

.room-item:nth-child(4n) { margin-right: 0; }

.room-item a { box-sizing: border-box; display: inline-block; width: 100%; height: 100%; padding: 0.12rem 0; color: #333; }

.room-item .small { font-size: 0.25rem; }

.room-item .padding { padding: 0.3rem 0 0; }

/*=============================================================================== internet ===============================================================================*/
.internet .bg { padding: 0.36rem 0 1rem; background: #d20000; }

.internet h2 { width: 5.61rem; margin: 0 auto; z-index: 2; }

.internet-btn { display: block; position: relative; width: 6.9rem; height: 1.18rem; margin: 0.54rem auto 0; background: url(../img/internet_btn02.png) no-repeat 50% 0; background-size: cover; }

.internet-btn.open { background-position: 50% bottom; }

.internet .detail-block { padding: 1.6rem 0 0; }

.internet .detail-block-bg { position: relative; padding: 1.2rem 0.3rem 0; background: #fff; border-radius: 0.1rem; }

.internet .detail-block-bg .ribbon { position: absolute; top: -0.98rem; left: 0; width: 6.9rem; }

.internet .different .deco { position: absolute; top: 0; right: -0.5rem; width: 2.15rem; }

.internet .movie .tmb { margin: 0.13rem 0 0; }

.internet .about { margin: 1.02rem 0 0; }

.internet .about dd { padding: 0.36rem 0 0.67rem; font-size: 0.3rem; letter-spacing: 0; }

.internet .step .btn { margin: 0.39rem 0 0; }

.internet .additional { position: relative; margin: 0.58rem -0.3rem 0; }

.internet .additional-bg { background: url(../img/internet_bg.png) no-repeat 50% 0; overflow: hidden; border-bottom-left-radius: 0.1rem; border-bottom-right-radius: 0.1rem; padding-bottom: 0.36rem; }

.internet .additionalArea { margin: 0.4rem 0 0 0.27rem; }

.internet .internet-ttl02 { width: 4.12rem; padding-top: 1rem; }

.internet .internet-additional-txt01 { width: 5.9rem; margin-top: 0.3rem; }

.internet .internet-additional-txt01 .deco { position: absolute; top: -0.1rem; right: -0.3rem; width: 2.77rem; height: 2.96rem; }

.internet .internet-movie02-tmb { width: 6.3rem; margin-top: 0.44rem; }

.internet .internet-movie02-txt { margin-top: 0.28rem; font-weight: bold; font-size: 0.28rem; letter-spacing: 0.04em; margin-left: 0.3rem; }

.internet .internet-additional-txt02 { position: relative; width: 6.48rem; margin-top: 0.4rem; z-index: 1; }

.internet .internet-additional-note01 { position: relative; width: 6.3rem; margin-top: -0.1rem; padding: 0.15rem 0.3rem; border-radius: 0.1rem; background: #fff; font-size: 0.24rem; line-height: 1.5; z-index: 10; }

/*===============================================================================
faq
===============================================================================*/
.faq__txt { padding: 0.35rem 0.1rem; margin: 0.18rem 0 0; color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 0.42rem; letter-spacing: 0.08em; line-height: 1; text-align: center; border: 4px solid #fff; }

.faq__txt.__02 { margin: 0.8rem 0 0; }

.faq .red { color: #ed2315; font-weight: bold; }

.faq__list { margin: 0.4rem 0 0; }

.faq__bg { padding: 0.6rem 0 1rem; background-color: #09449f; }

.faq__ttl { color: #ffffff; /*font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-size: 0.6rem; font-weight: bold; text-align: center; }

.faq__subttl, .faq__subttl--mt { margin: 0.3rem 0 0; padding: 0.2rem 0; border: 0.03rem solid #ffffff; color: #ffffff; font-size: 0.42rem; font-weight: bold; text-align: center; }

.faq__subttl--mt { margin-top: 0.8rem; }

.faq__item { margin: 0.3rem 0 0; }

.faq__block { background-color: #fff; border-radius: 0.05rem; }

.faq__question { display: table; position: relative; width: 100%; height: 1.4rem; }

.faq__question .q { display: table-cell; width: 1rem; color: #ed2315; /*font-family: Arial, Helvetica, sans-serif;*/ font-size: 0.7rem; font-weight: bold; text-align: center; vertical-align: middle; }

.faq__question .txt { display: table-cell; width: calc(100% - 1.4rem); color: #002a6a; font-size: 0.32rem; font-weight: bold; letter-spacing: 0.08em; line-height: 1.4; vertical-align: middle; }

.faq__question .btn { box-sizing: border-box; position: absolute; top: 0; right: -0.01rem; width: 1.2rem; height: 1.42rem; padding: 0.7rem 0 0; border-radius: 0 0.05rem 0.05rem 0; background-color: #002a6a; color: #ffffff; font-size: 0.24rem; font-weight: bold; text-align: center; }

.faq__question .btn::after { content: ""; display: inline-block; position: absolute; top: 0.4rem; left: 0; right: 0; margin: 0 auto; width: 0.21rem; height: 0.14rem; background: url(../img/faq_arrow.png) no-repeat 50% 0/contain; transform: rotate(180deg); }

.faq__question .btn.open { border-radius: 0 0.05rem 0 0; }

.faq__question .btn.open::after { transform: rotate(0); }

.faq__answer { display: none; border-top: 0.02rem dashed #002a6a; padding: 0.34rem 0.24rem; font-size: 0.28rem; letter-spacing: 0.04em; }

.faq__answer .color { color: #ed2315; font-weight: bold; }

.faq__answer.ls { letter-spacing: -0.02em; }

.faq__answer a { color: #ed2315; text-decoration: underline; display: inline-block; }

/*=============================================================================== footer ===============================================================================*/
.footer-bg { padding: 0.3rem 0; background-color: #00183e; }

.footer-txt { color: #fff; /*font-family: "Century Gothic", Arial, sans-serif;*/ font-size: 0.24rem; text-align: center; letter-spacing: 0.08em; }


/*=============================================================================== modal ===============================================================================*/
#modal-bg { position: fixed; top: 0; left: 0; z-index: 10000; display: none; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); }

#player { width: 100%; height: 100%; }

.modal-item { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 10001; display: none; margin: auto; width: 6.9rem; height: 9rem; }

.modal-video { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 10001; display: none; margin: auto; width: 6.4rem; height: 3.52rem; }

.modal-video .close-btn { position: absolute; top: -0.6rem; right: 0; width: 0.5rem; height: 0.5rem; }

div#modal-detail { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 10001; height: 70%; margin: auto; max-width: 7.1rem; padding: 0.6rem 0.4rem 0; display: none; background: #fff; }

div#modal-detail .detail-sp { height: 100%; }

/*～～～～～～～～～～～～～～～～～～～～～～～　追記　～～～～～～～～～～～～～～～～～～～～～～～*/
/*個別指導の事例▼*/
.case .swiper-btn { padding: 0.38rem 0 0; }

.case-list .case-item .school-year.left {
	padding-left: 0rem;
	text-align: center;
}

/*個別指導の事例▲*/
/*CTA▼*/
.cta-block { padding: 0.25rem 0 0; }

/*CTA▲*/

.cta-campain {
    width: 92%;
    margin: 0 auto;
}

/*▼教室数アノテーション*/
/*header*/
.header .inner {
    padding: 0.1rem 0.3rem 0;
}		
.header .header-txt03 {
    font-size: .22rem;
    background: #08399c;
    color: #fff;
    border-radius: 30px;
    padding: 0;
    text-align: center;
}		
.header .header-txt03 .number.fs-40{
	font-size:0.3rem;
}
.header .header_anno {
    font-size: 0.2rem;
    padding: 0 0 0 57%;
}		
/*class room*/
.room .lead .school_sup {
	font-size:70%;
	vertical-align:super;
}
.room .room-lead-anno {
    font-size: 0.2rem;
    text-align: right;
    padding: 0.06rem 0 0.1rem;
}					
/*▲教室数アノテーション*/
.compare-bg {
    padding: 0.8rem 0 0.8rem;
}
/*～～～～～～～～～～～～～～～～～～～～～～～
	▼カリキュラム23.11
～～～～～～～～～～～～～～～～～～～～～～～*/
	
/*▼～～～～～～～～～～～～タブCSS～～～～～～～～～～～～/
/* ▼タブ(共通装飾＋非選択状態の装飾) */
.curriculum .tab_block .tab {
  display: inline-block;          /* インラインブロック化 */
  border-width: 1px 1px 0px 1px;  /* 上側と左右に枠線を引く */
  border-style: solid;            /* 枠線の種類は「実線」 */
  border-color: black;            /* 枠線の色は「黒」 */
  border-radius: 0.75em 0.75em 0px 0px;  /* 左上と右上の角だけを丸くする */
  padding: 0.75em 1em;            /* 内側の余白量 */
  font-weight: bold;              /* タブの文字を太字にする */
  color: black;                   /* タブの文字色：黒色 */
  background-color: #e0e0e0;      /* タブの(非選択状態の)背景色：灰色 */
}

/* ▼タブにマウスポインタが載った際の装飾 */
/*spでは不要*/
	/*
.curriculum .tab_block .tab:hover {
  color: green;
  background-color: #ccffcc;
  cursor: pointer;
}
	*/

/* ▼選択状態のタブ(＝チェックが入っているラジオボタンの隣にあるタブの装飾) */
.curriculum .tab_block input:checked + .tab {
  color: red;                  /* タブの文字色：赤色 */
  background-color: #ffffcc;   /* タブの背景色：淡い黄色 */
}

/* ▼タブ機能を制御するラジオボタン(非表示にする) */
.curriculum .tab_block .tabbox input { display: none; }

/* ▼タブの中身(共通装飾＋非選択状態の装飾) */
.curriculum .tab_block .tabcontent {
  display: none;             /* 標準では非表示にする */
  border: 1px solid black;   /* 枠線を引く：黒色で1ピクセルの実線 */
  padding: 1em;              /* 内側の余白量 */
  background-color: #ffffcc; /* 背景色：淡い黄色(※選択中のタブの背景色と合わせます) */
}

/* ▼チェックが入っているラジオボタンに対応するタブの中身を表示する */
.curriculum .tab_block #tabcheck1:checked ~ #tabcontent1 { display: block; }
.curriculum .tab_block #tabcheck2:checked ~ #tabcontent2 { display: block; }
.curriculum .tab_block #tabcheck3:checked ~ #tabcontent3 { display: block; }
/*▲～～～～～～～～～～～～タブCSS～～～～～～～～～～～～/
	

	
/*▼～～タブカスタム追加～～*/
.curriculum .tab_block input:checked + .tab {
    color: #fff;
    background-color: #f03f33;
    font-size: 5.6vw;
    padding-top: 5vw;
}	
.curriculum .tab_block .tab {
    background-color: #aaa;
    border: none;
    border-radius: 0;
    font-size: 4.4vw;
    color: #fff;
    padding: 4vw 0 3vw;
    width: 26.2vw;
    text-align: center;
    margin: 0 2vw 0 0;
}	
.curriculum .tab_block .tab.last{
    margin: 0 0 0 0;
}	
.curriculum .tab_block .tabcontent {
    border: none;
    padding: 0;
	background-color:#D3DBF0;
}	
/*▲～～タブカスタム追加～～*/
	
.curriculum {
	position: relative;
	padding: 27.2vw 0 16vw;
}
.curriculum .border-wrap {
	border: 0.6vw solid #0736A9;
	position:relative;
	border-radius: 2vw;
	padding: 0;
}	
.curriculum .ttl_img {
    position: absolute;
    top: -12vw;
    width: 94%;
    left: 3vw;
}	
.curriculum .sub_ttl {
    font-size: 3.4vw;
    line-height: 1.6;
    padding: 16vw 0 4vw;
    font-weight: normal;
    text-align: center;
}	
.curriculum .txt01 {
    font-weight: bold;
    font-size: 4.4vw;
    padding: 0 3vw 8vw;
    color: #0736A9;
}	
.curriculum .tab_block {
    padding: 0 3vw 4vw;
}	
	
.curriculum .tab_cont_inner {
	border-top: 1.4vw solid #f03f33;
}
.curriculum .course {
    padding:2vw 2vw 2vw;
}	
.curriculum .course .courselist {
    border: 1.6vw solid #0736A9;
    border-radius: 2vw;
	margin: 0 0 3vw;
}	
.curriculum .course .courselist:last-child {
	margin:0;
}	
	
	
.curriculum .courselist .ttl_block {
    background: #0736A9;
	position:relative;
}	
.curriculum .courselist .ttl_block .ttl_txt {
    color: #fff;
    font-weight: bold;
    font-size: 5.4vw;
    text-align: center;
    padding: 2vw 0 3vw;
	line-height:1.4;
}	
.curriculum .courselist .ttl_block .example{
	color:#FFFF40;
	position:absolute;
	top:0;
	left:0;
	font-size:4vw;
    font-weight:bold;
}	
.curriculum .courselist .cont_block {
    background: #fff;
    padding: 5vw 3vw 3vw;
}	
.curriculum .courselist .cont_block .sub_ttl_txt {
    text-align: center;
    font-weight: bold;
    font-size: 4.2vw;
    padding: 0 0 3vw;
	color:#0736A9;
}	
.curriculum .courselist .cont_block .circle_img {
    padding: 0 3vw 4vw;
}	
.curriculum .courselist .cont_block .cont_txt {
    font-size: 3.6vw;
}	
.curriculum .txt02 {
	color: #0736A9;
	font-weight: bold;
	font-size: 4.4vw;
	padding: 0 3vw 3vw;
	line-height: 1.4;
}
.curriculum .btn01 {
	width: 60%;
	margin: 0 auto;
}

/*～～～～～～～～～～～～～～～～～～～～～～～
	▲カリキュラム23.11
～～～～～～～～～～～～～～～～～～～～～～～*/

/*▼カリキュラム タイトル*/
.curriculum .curriculum_ttl01 {
    font-size: 0.6rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
	color:#062f8c;
	padding: 0 0 1.1rem;
}
/*▲カリキュラム タイトル*/


/*▼志望校合格 大学名と名前欄の改修*/
.voice-item-content {
    padding: 0.42rem 0.36rem 0.5rem;
}												
.voice-item-content-person-img {
    flex: 0 0 1.6rem;
}												
.voice-item-content-person {
    gap: 0.2rem;
    margin: 0.42rem 0 0 0rem;
}
.voice-item-content-person-txt01{
	color: #012374;
	font-weight:bold;
	padding: 0 0.1rem 0 0;
}
.voice-item-content-person-txt01 .txt01{
	font-size: 0.4rem;
	padding:0 0.2rem 0 0;
}
.voice-item-content-person-txt01 .txt02{
	font-size: 0.3rem;
}
/*▲志望校合格 大学名と名前欄の改修*/
/*▼コースリスト作成24.1*/
.course_list {
    padding: 6vw 0 10vw 0;
    padding: 14vw 0 20vw 0;
	padding: 14vw 0 6vw 0;
    /*border-top: 2px solid #0736a9;*/
}		
.course_list .content_area .course_list_main_ttl {
    font-weight: bold;
    text-align: center;
    color: #333;
    font-size: 0.46rem;
    padding: 0 0 3vw;
    line-height: 1.4;
}			
.course_list .content_area .list_box .sub_box{
	display:flex;
}
.course_list .content_area .list_box .sub_box{
	padding:0 0 6vw 0;
}
.course_list .content_area .list_box:last-child .sub_box{
	padding:0 0 0 0;
}
.course_list .content_area .list_box .sub_box .sub_img {
    width: 50%;
}
/*▲コースリスト作成24.1*/
/*▼online縮小改修*/
.internet .bg {
    margin: 0 0.4rem 12vw;
}	
.internet h2 {
    width: 72%;
}	
.internet-btn {
    width: 5.8rem;
    height: 1rem;
}	
.internet .detail-block-bg .ribbon {
    width: 100%;
}	
.internet .internet-additional-txt01 .deco {
    width: 2.2rem;
    height: 2.2rem;
}	
.internet .internet-ttl02 {
    width: 3.9rem;
}	
.internet .internet-additional-txt01 {
    width: 5.2rem;
}	
.internet .internet-movie02-tmb {
    width: 5.6rem;
}	
.internet .internet-movie02-txt {
    margin-top: 0.1rem;
    font-size: 0.24rem;
    margin-left: 0.4rem;
}	
.internet .internet-additional-txt02 {
    width: 5.7rem;
}	
.internet .internet-additional-note01 {
    width: 5.5rem;
    font-size: .22rem;
}	
/*▲online縮小改修*/

/*▼ココが違うスクールIE背景調整*/
.compare-bg {
    background:#c5e8fa;
}		
/*▲ココが違うスクールIE背景調整*/
/*▼ナビ HTML化*/
.nav-wrap .item .txt01 {
    font-size: 0.30rem;
    font-weight: bold;
}
/*▲ナビ HTML化*/
/*▼コースリスト　複数化調整*/
.course_list.type01 {}
.course_list.type02 {}
/*▲コースリスト　複数化調整*/
/*▼教室を探す　複数化調整*/
.room.type01 {
    padding: 0 0 12vw;
}
.room.type02 {
    padding: 0 0 12vw;
}
/*▲教室を探す　複数化調整*/

/*=============================================================================== relal ===============================================================================*/
.real-bg {
	/*background-image: url(../img/real_bg.png);*/
	/*background-size: cover;*/
	padding: 0.86rem 0 0.75rem; }

.real-movie {
	margin-top: 0.57rem;
}

/*▼リアルボイス*/
.real .real-ttl {
    font-size: .7rem;
    font-weight: bold;
    color: #F03F33;
    text-align: center;
    line-height: 1.4;
    margin: 0 0 8vw;
}
.real .real-ttl .img_block{
	display:block;
    margin: 0 auto 6vw;
}
/*▲リアルボイス*/





/*～～～～～～～～～～～～～～～～～～～～～～～
	▼CTA TOP v2（2412）
～～～～～～～～～～～～～～～～～～～～～～～*/
.ctatop_v2{}
.ctatop_v2__bg {
    padding: 0 0 10vw;
}
.ctatop_v2 .ctatop_v2__wrap {}
.ctatop_v2 .ctatop_v2__wrap .ctatop_v2__bnrblock {
	padding: 0 0 6vw;
}
.ctatop_v2 .ctatop_v2__wrap .ctatop_v2__bnrblock .ctatop_v2__bnr{
	padding: 0 0 4vw;
}
.ctatop_v2 .ctatop_v2__wrap .ctatop_v2__bnrblock .ctatop_v2__bnr .img_block{
}
	
/*アコーディオンコテンツ内 初期非表示*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content {display:none;}
	
/*▼アコーディオン*/
.ctatop_v2 .ctatop_v2__accordion {
    border: 2px solid #4956AA;
    border-radius: 10px;
    margin: 0 3vw;
}

/*トグルボタン*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 {
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01:hover {
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn {
	position:relative;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .txt{
	display:block;
	font-size:.3rem;
	font-weight:bold;
	color:#545454;
	text-align:center;
	padding: .06rem 0 .03rem;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .open::before{
	display:none;
}/*デフォ△非表示*/
	
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .close {
	position:relative;
    display: block;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .close::before {
    display: block;
    position: absolute;
    content: '';
    top: -6.4vw;
    right: 5vw;
    width: .2rem;
    height: .2rem;
    border-top: 2px solid #F18B00;
    border-right: 2px solid #F18B00;
    transform: rotate(135deg);
}
/*最初　閉じた状態*/

.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn.active .open {
	position:relative;
    display: block;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn.active .open::before {
    display: block;
    position: absolute;
    content:'';
    top: -4.6vw;
    right: 5vw;
    width: .2rem;
    height: .2rem;
    border-top: 2px solid #F18B00;
    border-right: 2px solid #F18B00;
    transform: rotate(-45deg);
}
/*アクション後　開いた状態*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn.active .close::before{
	display:none;
}/*デフォ▽非表示*/
	
/*内部コンテンツ*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content{}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .main_ttl {
    font-size: .38rem;
    color: #fff;
    background: #4956AA;
    font-weight: bold;
    text-align: center;
    padding: .14rem 0 .10rem;
    margin: 0 0 5vw;
    line-height: 1.4;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .sub_ttl {
    font-size: .34rem;
    color: #545454;
    text-align: center;
    padding: 0 0 2vw;
    font-weight: bold;
}
/*pointブロック*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea{
	margin:0 3vw;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea .point_block{
	display:flex;
	align-items:center;
	background: #F0F0F8;
	margin: 0 0 2vw;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea .point_block .point_block_txt01 {
    font-size: .3rem;
    color: #545454;
    padding: 3vw 3vw 3vw 6vw;
    font-weight: bold;
    line-height: 1.4;
	flex:1.6;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea .point_block .point_block_img01{flex:1;}
	
/*copyブロック*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea {
	margin:0 3vw;
	padding: 5vw 0 4vw;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea .txt01{
	font-size:.38rem;
	font-weight:bold;
	color:#4956AA;
	padding: 0 0 1vw 8vw;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea .txt01 .y_line{
	background: linear-gradient(transparent 80%, #f5ff3f 0%);
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea .img_block{
	width:42%;
	margin:0 auto;
}

/*detailブロック*/
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea{}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt01 {
	padding: 0 3vw 2vw 3vw;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 {
    font-size: .26rem;
    color: #545454;
    padding: 0 0 1vw;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 .txt01_circle{
	display:inline-block;
	padding: 0 .1rem 0 0;
}
.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt02 {
    font-size: .2rem;
    color: #545454;
    margin: 0 0 4vw;
    padding: 0 3vw 0;
	line-height:1.4;
}
/*▲アコーディオン*/
	
/*CTA部分*/
.ctatop_v2 .ctatop_v2__ctablock {
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__txt01 {
    text-align: center;
    font-size: .3rem;
    font-weight: bold;
    padding: 0 0 2vw;
    color: #545454;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__cvbtn{}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__cvbtn .img_block {
    margin: 0 8vw 4vw;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel {}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel .ctatop_v2__tel_txt01 {
    font-weight: bold;
    color: #545454;
    font-size: .3rem;
    text-align: center;
    padding: 0 0 1vw;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel .ctatop_v2__tel_img01 {
	margin: 0 8vw 3vw;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel .ctatop_v2__tel_txt02 {
    text-align: center;
    font-size: .26rem;
	color: #545454;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__doc {
	position: relative;
    font-size: 0.32rem;
    font-weight: bold;
    text-align: center;
    margin-top: 0.2rem;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__doc .ctatop_v2__doc_link {
	position: relative;
    display: inline-block;
    border-bottom: 1px solid #545454;
	color:#545454;
}
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__doc .ctatop_v2__doc_link::before {
    position: absolute;
    top: 0;
    left: -0.3rem;
    content: "";
    display: inline-block;
    width: 0.2rem;
    height: 0.5rem;
    background: url(../img/cta_link_deco.png) no-repeat;
    background-size: contain;
}
/*▼CTA_v2(TOP)入会金0円バナー*/
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__0bnr {
    margin: 0 8vw 3vw;
}	
/*▲CTA_v2(TOP)入会金0円バナー*/
/*▼CTA_v2(TOP)無料体験文字赤字変更*/
.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__txt01 .red {
	color:#D52223;
}
/*▲CTA_v2(TOP)無料体験文字赤字変更*/

/*～～～～～～～～～～～～～～～～～～～～～～～
	▲CTA TOP v2（2412）
～～～～～～～～～～～～～～～～～～～～～～～*/










/*～～～～～～～～～～～～～～～～～～～～～～～
	▼CTA 共通 v2（2505）
～～～～～～～～～～～～～～～～～～～～～～～*/
.cta_v2{}
.cta_v2__bg {
    padding: 0 0 6vw;
}
.cta_v2 .cta_v2__wrap {}
.cta_v2 .cta_v2__wrap .cta_v2__bnrblock {
	padding: 0 0 6vw;
}
.cta_v2 .cta_v2__wrap .cta_v2__bnrblock .cta_v2__bnr{
	padding: 0 0 4vw;
}
.cta_v2 .cta_v2__wrap .cta_v2__bnrblock .cta_v2__bnr .img_block{
}
	
/*アコーディオンコテンツ内 初期非表示*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content {display:none;}
	
/*▼アコーディオン*/
.cta_v2 .cta_v2__accordion {
    border: 2px solid #4956AA;
    border-radius: 10px;
    margin: 0 3vw;
}

/*トグルボタン*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 {
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01:hover {
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn {
	position:relative;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .txt{
	display:block;
	font-size:.3rem;
	font-weight:bold;
	color:#545454;
	text-align:center;
	padding: .06rem 0 .03rem;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .open::before{
	display:none;
}/*デフォ△非表示*/
	
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .close {
	position:relative;
    display: block;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .close::before {
    display: block;
    position: absolute;
    content: '';
    top: -6.4vw;
    right: 5vw;
    width: .2rem;
    height: .2rem;
    border-top: 2px solid #F18B00;
    border-right: 2px solid #F18B00;
    transform: rotate(135deg);
}
/*最初　閉じた状態*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn.active .open {
	position:relative;
    display: block;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn.active .open::before {
    display: block;
    position: absolute;
    content:'';
    top: -4.6vw;
    right: 5vw;
    width: .2rem;
    height: .2rem;
    border-top: 2px solid #F18B00;
    border-right: 2px solid #F18B00;
    transform: rotate(-45deg);
}
/*アクション後　開いた状態*/

.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn.active .close::before{
	display:none;
}/*デフォ▽非表示*/
	
/*内部コンテンツ*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content{}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .main_ttl {
    font-size: .38rem;
    color: #fff;
    background: #4956AA;
    font-weight: bold;
    text-align: center;
    padding: .14rem 0 .10rem;
    margin: 0 0 5vw;
    line-height: 1.4;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .sub_ttl {
    font-size: .34rem;
    color: #545454;
    text-align: center;
    padding: 0 0 2vw;
    font-weight: bold;
}
/*pointブロック*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea{
	margin:0 3vw;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea .point_block{
	display:flex;
	align-items:center;
	background: #F0F0F8;
	margin: 0 0 2vw;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea .point_block .point_block_txt01 {
    font-size: .3rem;
    color: #545454;
    padding: 3vw 3vw 3vw 6vw;
    font-weight: bold;
    line-height: 1.4;
	flex:1.6;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea .point_block .point_block_img01{flex:1;}
	
/*copyブロック*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea {
	margin:0 3vw;
	padding: 5vw 0 4vw;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea .txt01{
	font-size:.38rem;
	font-weight:bold;
	color:#4956AA;
	padding: 0 0 1vw 8vw;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea .txt01 .y_line{
	background: linear-gradient(transparent 80%, #f5ff3f 0%);
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea .img_block{
	width:42%;
	margin:0 auto;
}

/*detailブロック*/
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea{}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt01 {
	padding: 0 3vw 2vw 3vw;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 {
    font-size: .26rem;
    color: #545454;
    padding: 0 0 1vw;

}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 .txt01_circle{
	display:inline-block;
	padding: 0 .1rem 0 0;
}
.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt02 {
    font-size: .2rem;
    color: #545454;
    margin: 0 0 4vw;
    padding: 0 3vw 0;
	line-height:1.4;
}
/*▲アコーディオン*/
	
/*CTA部分*/
.cta_v2 .cta_v2__ctablock {
}
.cta_v2 .cta_v2__ctablock .cta_v2__txt01 {
    text-align: center;
    font-size: .3rem;
    font-weight: bold;
    padding: 0 0 2vw;
    color: #545454;
}
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn{
	padding:0 0 6vw;
}
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn .img_block {
	margin:0 8vw 0;
}

	/*▼v2に相談と資料のボタン追加2505*/
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn02,
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn03{
	position:relative;
	font-size: 0.32rem;
	font-weight: bold;
	padding:0 0 4vw;
	text-align:center;
	color:#545454;
}
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn02 a,
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn03 a{
    position: relative;
    display: inline-block;
    border-bottom: 1px solid #545454;
	color:#545454;
}
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn02 a::before,
.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn03 a::before{
    position: absolute;
    top: 20%;
    left: -0.3rem;
    content: "";
    display: inline-block;
    width: 0.2rem;
    height: 0.5rem;
    background: url(../img/cta_link_deco.png) no-repeat;
    background-size: contain;
}
	/*▲v2に相談と資料のボタン追加2505*/
.cta_v2 .cta_v2__ctablock .cta_v2__tel {}
.cta_v2 .cta_v2__ctablock .cta_v2__tel .cta_v2__tel_txt01 {
    font-weight: bold;
    color: #545454;
    font-size: .3rem;
    text-align: center;
    padding: 0 0 1vw;
}
.cta_v2 .cta_v2__ctablock .cta_v2__tel .cta_v2__tel_img01 {
	margin: 0 8vw 3vw;
}
.cta_v2 .cta_v2__ctablock .cta_v2__tel .cta_v2__tel_txt02 {
    text-align: center;
    font-size: .26rem;
	color: #545454;
}
/*～～～～～～～～～～～～～～～～～～～～～～～
	▲CTA 共通 v2（2505）
～～～～～～～～～～～～～～～～～～～～～～～*/










/*▼CTA_v2 無料体験文字赤字変更*/
.cta_v2 .cta_v2__ctablock .cta_v2__txt01 .red {
	color:#D52223;
}
/*▲CTA_v2 無料体験文字赤字変更*/
/*▼共通CTA テキスト追加*/
.cta .cta-block .cta-txt03 {
    text-align: center;
    font-size: .28rem;
    font-weight: bold;
    padding: 0 0 1vw;
    color: #545454;
}
.cta .cta-block .cta-txt03 .red{
	color:#D52223;
}
/*▲共通CTA テキスト追加*/
/*▼共通CTA 調整*/
.cta .cta-campain {
    margin: 0 auto 4vw;
}
.cta .cta-btn01 {
    margin: 0 auto;
}
/*▲共通CTA 調整*/	

/*▼よくある質問CVテキストリンク追加*/
.faq .faq_btn_area {
    display: block;
    padding: 3vw 0 0;
}	
.faq .faq_btn_area .faq_btn {
    padding: 0 0 1.6vw;
    display: block;
}	
.faq .faq_btn_area .faq_btn .link {
	position:relative;
    color: #000;
    font-weight: bold;
    text-decoration: none;
	letter-spacing:0;
}								
		
.faq .faq_btn_area .faq_btn .link::before {
    position: absolute;
    content: '';
    width: 4.2vw;
    height: 4.2vw;
    border-radius: 50%;
    background: #65ab15;
    top: 1.2vw;
    right: -6.4vw;
    z-index: 1;
}
	
.faq .faq_btn_area .faq_btn .link::after {
    position: absolute;
    content: '';
    width: 1.4vw;
    height: 1.4vw;
    border-top: 2px solid #ffff00;
    border-right: 2px solid #ffff00;
    transform: rotate(45deg);
    top: 2.4vw;
    right: -4.9vw;
    z-index: 2;
}
/*▲よくある質問CVテキストリンク追加*/

/*▼体験談2行化の調整*/
.voice .voice-item-content_hr {display:block;padding:10vw 0 0;}
/*▲体験談2行化の調整*/

/*▼ここが違うスクールIEタブ版2503*/
.compare02 {
	padding:8vw 0 0;
	background: #d2ecfb;
}
.compare02 .compare02_ttl {
	width:92%;
	margin:0 auto;
	padding:0 0 3vw;
}
.compare02 .anno {
	width:96%;
	margin:0 auto;
	font-size:2.6vw;
	color:#595757;
}
/*▲ここが違うスクールIEタブ版2503*/


/*▼オープン模試ver2505*/
.open_test {
    background:#c5e8fa;
    padding: 12vw 0 10vw;
}
.open_test .sub_ttl {
    color: #062f8c;
    font-size: 5.4vw;
    text-align: center;
    font-weight: bold;
	letter-spacing:0.05em;
}
.open_test .content_area {
    width: 93%;
    margin: 0 auto;
    box-sizing: border-box;
    border: 1vw solid #062f8c;
    background: #fff;
    padding: 6vw 3vw;
}				
.open_test .content_area .main_ttl {
    color: #062f8c;
    font-size: 8vw;
	padding:0 0 1vw;
	letter-spacing:0.05em;
}				
.open_test .content_area .content_box .img_block01 {
    padding: 0 7vw 5vw;
}				
.open_test .content_area .content_box .txt01 {
    font-size: 4vw;
    padding: 0 0 3vw 0;
}				
.open_test .content_area .content_box .anno {
    font-size: 3vw;
}				
/*▲オープン模試ver2505*/

/*▼自習スペース*/
.self_study {
    background:#c5e8fa;
    padding: 0vw 0 10vw;
}
.self_study .sub_ttl {
    color: #062f8c;
    font-size: 5.4vw;
    text-align: center;
    font-weight: bold;
}
.self_study .content_area {
    width: 93%;
    margin: 0 auto;
    box-sizing: border-box;
    border: 1vw solid #062f8c;
    background: #fff;
    padding: 6vw 3vw;
}				
.self_study .content_area .main_ttl {
    color: #062f8c;
    font-size: 8vw;
    padding:0 0 1vw;
	letter-spacing:0.05em;
}				
.self_study .content_area .content_box .img_block01 {
    padding: 0 7vw 5vw;
}				
.self_study .content_area .content_box .txt01 {
    font-size: 4vw;
    padding: 0 0 3vw 0;
}				
.self_study .content_area .content_box .anno {
    font-size: 3vw;
}				
/*▲自習スペース*/

/*▼オーダーメイド受験対策*/
.custom_made {
    background:#c5e8fa;
    padding: 0vw 0 12vw;
}
.custom_made .sub_ttl {
    color: #062f8c;
    font-size: 5.0vw;
    text-align: center;
    font-weight: bold;
	letter-spacing:0.05em;
}
.custom_made .content_area {
    width: 93%;
    margin: 0 auto;
    box-sizing: border-box;
    border: 1vw solid #062f8c;
    background: #fff;
    padding: 6vw 3vw;
}				
.custom_made .content_area .main_ttl {
    color: #062f8c;
    font-size: 7vw;
    padding:0 0 1vw;
}				
.custom_made .content_area .content_box .img_block01 {
    padding: 0 7vw 5vw;
}				
.custom_made .content_area .content_box .txt01 {
    font-size: 4vw;
    padding: 0 0 3vw 0;
}				
.custom_made .content_area .content_box .anno {
    font-size: 3vw;
}				
/*▲オーダーメイド受験対策*/

/*▼目的に合わせて夏期講習を活用*/
.purpose {
    background: #c5e8fa;
    padding: 10vw 0 8vw;
}
.purpose .inner {}
.purpose .purpose_area {
    background: #fff;
    border-radius: .14rem;
	padding:6vw 0 6vw;
}
.purpose .purpose_area .purpose_ttl {
    width: 92%;
    margin: 0 auto;
    padding: 0 0 4vw;
}
.purpose .purpose_area .purpose_list{
	padding:0 3vw 5vw;
}
.purpose .purpose_area .purpose_list .img_block{
	padding: 0 0 3vw;
}
.purpose .purpose_area .purpose_txt{
	text-align:center;
	font-size:.36rem;
	color:#000;
	font-weight:bold;
	line-height:1.6;
}
/*▲目的に合わせて夏期講習を活用*/

/*▼夏期講習で新学期からのテスト点数が上がるポイント*/
.scoreup {
    background: #c5e8fa;
    padding: 6vw 0 14vw;
}
.scoreup .inner {}
.scoreup .scoreup_area {
    background: #fff;
    border-radius: .14rem;
	padding:6vw 0 6vw;
}
.scoreup .scoreup_area .scoreup_ttl {
    width: 92%;
    margin: 0 auto;
    padding: 0 0 7vw;
}
.scoreup .scoreup_area .scoreup_list{
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(1),
.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(2){
	border-bottom:1px solid #062F8C;
	padding-bottom: 4vw;
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(2),
.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(3){
	padding-top:4vw;
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box{
	width:92%;
	margin:0 auto;
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box .img_block01 {
    width: 24%;
    margin: 0 auto;
    padding: 0 0 4vw;
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box .icon_txt_block{
	display:flex;
	justify-content:space-between;
	align-items:center;
	padding:0 0 0 4vw;
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box .icon_txt_block .img_block02{
	flex:1;
	padding:0 4vw 0 0;
}
.scoreup .scoreup_area .scoreup_list .scoreup_list_box .icon_txt_block .txt{
	flex:4;
	font-size:.34rem;
	color:#333;
	font-weight:bold;
	line-height:1.4;
}
/*▲夏期講習で新学期からのテスト点数が上がるポイント*/

/*～～～～～～～～～～～～～～～～～～～～～～～
	▼CTA TOP v3（2508）
～～～～～～～～～～～～～～～～～～～～～～～*/
.ctatop_v3{
	padding:0 0 10vw;
}
.ctatop_v3__bg {}
.ctatop_v3 .ctatop_v3__wrap {}
.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock {
	padding: 0 0 8.267vw;
}
.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock .ctatop_v3__bnr{
	padding: 0 0 2.933vw;
}
.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock .ctatop_v3__bnr .img_block{
}

.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock .ctatop_v3__bnrblock_note{
	font-size: .19rem;
    color: #545454;
    padding: 0 4vw;
    line-height: 1.65;
}
	
/*アコーディオンコテンツ内 初期非表示*/
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content {display:none;}
	
/*▼アコーディオン*/
.ctatop_v3 .ctatop_v3__accordion {
    border: 0.8vw solid #005DAD;
    border-radius: 2.4vw;
    margin: 0 3vw;
	padding: 2vw 0 2.6vw;
}
/*ボタン直情テキスト*/
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_txt {
	text-align:center;
	font-size:.28rem;
	font-weight:bold;
	color:#005DAD;
	line-height:1.4;
	padding: 0 0 .16rem;
}

/*トグルボタン*/
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 {}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01:hover {}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn {
	position:relative;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .txt{
	display:block;
	font-size:.3rem;
	font-size:.27rem;
	font-weight:bold;
	color:#545454;
	text-align:center;
	padding: .06rem 0 .03rem;
	padding: 0;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .txt .txt_sup{
	font-size: 60%;
    vertical-align: super;
}

.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .open::before{
	display:none;
}/*デフォ△非表示*/
	
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .close {
	position:relative;
    display: block;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .close::before {
    display: block;
    position: absolute;
    content: '';
    top: -5.6vw;
    right: 2vw;
    width: .2rem;
    height: .2rem;
    border-top: 3px solid #F18B00;
    border-right: 3px solid #F18B00;
    transform: rotate(135deg);
}
/*最初　閉じた状態*/

.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn.active .open {
	position:relative;
    display: block;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn.active .open::before {
    display: block;
    position: absolute;
    content:'';
    top: -3.6vw;
    right: 2vw;
    width: .2rem;
    height: .2rem;
    border-top: 3px solid #F18B00;
    border-right: 3px solid #F18B00;
    transform: rotate(-45deg);
}
/*アクション後　開いた状態*/
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn.active .close::before{
	display:none;
}/*デフォ▽非表示*/
	
/*内部コンテンツ*/
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content{
	padding: 6vw 0 0;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .subttl{
    font-size: .38rem;
    color: #005DAD;
    font-weight: bold;
    text-align: center;
    padding: 0 0 2vw;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .img_block02{
    width: 88%;
    margin: 0 auto;
    padding: 0 0 4vw;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .img_block03{
	padding: 0 0 8vw;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .img_block04{
    width: 88%;
    margin: 0 auto;
    padding: 0 0 4vw;
}
.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .anno{
    color: #545454;
    font-size: .22rem;
    padding: 0 3vw 0 3vw;
    line-height: 1.4;
}

/*▲アコーディオン*/
	





	/*▼小学生訴求*/
.ctatop_v3 .ctatop_v3__primary{
    border: 0.8vw solid #005DAD;
    border-radius: 2.4vw;
    margin: 4vw 3vw 0;
	padding: 3vw 0 4vw;
}
.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl01{
	text-align:center;
	font-size:.28rem;
	font-weight:bold;
	color:#005DAD;
	line-height:1.4;
	padding: 0 0 .16rem;
}
.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl02{
	display:flex;
	justify-content: center;
	align-items: center;
	padding: 0 4vw 0 4vw;
}
.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl02 .ctatop_v3__primary_ttl02_01 {
    display: block;
    font-size: .44rem;
    font-weight: bold;
    color: #545454;
    text-align: center;
    padding: 0;
    letter-spacing: 0.05em;
    flex: 10;
}
.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl02 .ctatop_v3__primary_ttl02_02 {
	display:block;
    color: #595757;
    font-weight: bold;
    font-size: .22rem;
    box-sizing: border-box;
    border: 2px solid #F18B00;
    border-radius: 6px;
    padding: .4vw 2vw .4vw 2vw;
    flex: 2.4;
    line-height: 1.2;
    text-align: center;
}
	/*▲小学生訴求*/







/*CTA部分*/
.ctatop_v3 .ctatop_v3__ctablock {}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__txt01 {
    text-align: center;
    font-size: .3rem;
    font-weight: bold;
    padding: 0 0 2vw;
    color: #545454;
}
/*赤字*/
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__txt01 .red {
	color:#D52223;
}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__cvbtn{}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__cvbtn .img_block {
    margin: 0 8vw 4vw;
}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__doc {
	position: relative;
    font-size: 0.32rem;
    font-weight: bold;
    text-align: center;
    margin: 0.2rem 0;
}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__doc .ctatop_v3__doc_link {
	position: relative;
    display: inline-block;
    border-bottom: 1px solid #545454;
	color:#545454;
}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__doc .ctatop_v3__doc_link::before {
    position: absolute;
    top: 0;
    left: -0.3rem;
    content: "";
    display: inline-block;
    width: 0.2rem;
    height: 0.5rem;
    background: url(../img/cta_link_deco.png) no-repeat;
    background-size: contain;
}
.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__ctablock_anno {
	font-size: .22rem;
    color: #545454;
    padding: 0 3vw;
    line-height: 1.4;
}

/*～～～～～～～～～～～～～～～～～～～～～～～
	▲CTA TOP v3（2508）
～～～～～～～～～～～～～～～～～～～～～～～*/


/*～～～～～～～～～～～～～～～～～～～～～～～
	▼CTA_v3（2508）
～～～～～～～～～～～～～～～～～～～～～～～*/
.cta_v3 {
	background: #3471EA;
	padding:10vw 0 10vw;
}
.cta_v3 .inner{}
.cta_v3 .cta_wrap{
}
.cta_v3 .cta_wrap .cta_wrap_cont01{
	background:#fff;
	margin:0 0 6vw;
	padding:3.4vw 0 4vw;
	border-radius: 2.4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .cta_wrap_cont01_ttl {
    font-weight: bold;
    color: #005DAD;
    text-align: center;
    padding: 0 0 4vw;
    font-size: .28rem;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block01{
	padding: 0 0 8vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .subttl {
    font-size: .38rem;
    color: #005DAD;
    font-weight: bold;
    text-align: center;
    padding: 0 0 2vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block02 {
    width: 88%;
    margin: 0 auto;
    padding: 0 0 4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block03{
	padding: 0 0 8vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block04{
    width: 88%;
    margin: 0 auto;
    padding: 0 0 4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont01 .anno {
    color: #545454;
    font-size: .22rem;
    padding: 0 3vw 0 3vw;
    line-height: 1.4;
}

.cta_v3 .cta_wrap .cta_wrap_cont02{
	background:#fff;
	padding: 2vw 0 0;
	margin:0 0 4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_txt01{
    text-align: center;
    font-size: .28rem;
    font-weight: bold;
    padding: 0 0 1vw;
    color: #545454;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_txt01 .red{color: #D52223;}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_cvbtn{
	padding:0 0 1.4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_cvbtn .img_block {
    width: 92%;
    margin: 0 auto;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_txt02{
    font-size: .28rem;
    font-weight: bold;
    text-align: center;
	padding: 0 0 1.4vw;
	letter-spacing:0.05em;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel{
	background: url(../img/cta_tel_bg.png);
	font-size: .26rem;
	padding: 2.4vw 0 4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .txt01{
    font-size: .28rem;
    font-weight: bold;
    text-align: center;
	letter-spacing:0.05em;
	padding: 0 0 1.4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .img_block01 {
    width: 88%;
    margin: 0 auto 1.4vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .txt02 {
    font-size: .26rem;
    text-align: center;
    padding: 0 0 3vw;
}
.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .img_block02 {
    width: 46%;
    margin: 0 auto;
}
.cta_v3 .cta_v3_anno {
	color: #fff;
    font-size: .22rem;
    line-height: 1.4;
}

/*～～～～～～～～～～～～～～～～～～～～～～～
	▲CTA_v3（2508）
～～～～～～～～～～～～～～～～～～～～～～～*/

/*▼スクールIEに通って起きる変化（2506）*/
.change {
    background: #c5e8fa;
    padding: 8vw 0 0;
}
.change .inner{}
.change .change_box{
	background:#fff;
	padding: 4vw 0 4vw;
	border-radius: .14rem;
}
.change .change_box .img_block01{
	width:94%;
	margin:0 auto;
}
.change .change_box .img_block02{
	width:92%;
	margin:0 auto;
	padding: 0 0 5vw;
}
.change .change_box .img_block03{
	width:92%;
	margin:0 auto;
}
/*▲スクールIEに通って起きる変化（2506）*/

/*▼SP下部固定ボタンリニューアル（2604）*/
.footer_nav_v3 {
	width: 7.5rem;
	height: 1.68rem;
}
.footer_nav_v3 .footer_nav_bg {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
	z-index: 1000;
	bottom: 0;
	left: 0;
	right: 0;
	width: 7.5rem;
	height: 1.68rem;
	padding: 0 0.3rem;
	margin: 0 auto;
	border-top: solid 1px #e6e8ec;
	background: #fff;
}
.footer_nav_v3 .footer_nav_btn01 {width: 3.66rem;}
.footer_nav_v3 .footer_nav_btn02 {width: 1.36rem;}
.footer_nav_v3 .footer_nav_btn03 {width: 1.36rem;}
/*▲SP下部固定ボタンリニューアル（2604）*/

/*▼MV直下テキスト*/
.hero_message_v2 {
	color: #005dad;
	padding: 4vw 0 6vw;
}	
.hero_message_v2 .txt01 {
	text-align: center;
	font-weight: bold;
	font-size: .36rem;
	letter-spacing: 0.05em;
	padding: 0 0 2vw;
}
.hero_message_v2 .txt02{
	text-align: center;
	font-size: .32rem;
	line-height:1.4;
}
/*▲MV直下テキスト*/		



/*===============================================================================
PC fixed width override: 751px以上は750px基準で固定表示
===============================================================================*/
@media screen and (min-width: 751px) {
	html,
	body {
		min-width: 750px;
	}
	body {
		width: 750px;
		margin: 0 auto;
	}
	body {
		font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", Meiryo, "MS P Gothic", "MS Pゴシック", Osaka, Arial, Helvetica, sans-serif;
	}
	/*===============================================================================
	header
	===============================================================================*/
	.header { position: fixed; top: 0; left: 50%; transform: translateX(-50%); width: 100%; max-width: 750px; height: 97px; border-bottom: 2px solid #e4e4e4; background: #fff; z-index: 3000; }

	.header .inner { position: relative; display: flex; align-items: center; gap: 24px; padding: 25px 30px 21px; }

	.header-logo01 { width: 267px; }

	.header-txt03 { width: 299px; }

	.menu { position: absolute; top: 0; right: 0; width: 96px; height: 95px; background: #ed2315; }

	.menu-txt { position: absolute; bottom: 14px; right: 50%; transform: translateX(50%); }

	.menu .lines { position: absolute; top: 35px; right: 50%; transform: translateX(50%); width: 40px; height: 35px; }

	.menu .line { position: absolute; display: inline-block; width: 100%; height: 4px; border-radius: 2px; background: #fff; }

	.menu .line.__01 { top: 0; }

	.menu .line.__02 { top: 11px; }

	.menu .line.__03 { top: 22px; }

	.overlay { position: fixed; top: 97px; right: 0; left: 0; bottom: 0; width: 100%; height: 100vh; pointer-events: none; background: rgba(123, 123, 123, 0.5); opacity: 0; z-index: 1000; transition: all 0.3s; }

	.nav-wrap { position: fixed; top: 97px; right: 0; left: 50%; width: 100%; padding: 0 0 26px; z-index: 1100; background: #f1f1f1; transform: translateY(-115%) translateX(-50%); transition: all 0.3s; max-width: 750px; }

	.nav-wrap .item { position: relative; border-bottom: 1px solid #e4e4e4; }

	.nav-wrap .item::before, .nav-wrap .item::after { content: ""; position: absolute; top: 50%; transform: translateY(-50%); pointer-events: none; }

	.nav-wrap .item::before { left: 31px; width: 30px; height: 46px; background: url("../img/header_nav_deco_01.png") no-repeat center/cover; }

	.nav-wrap .item::after { right: 60px; width: 24px; height: 15px; background: url("../img/header_nav_deco_02.png") no-repeat center/cover; }

	.nav-wrap .item .link { display: block; cursor: pointer; padding: 39px 20px 40px 75px; }

	.nav-wrap .btn { display: block; }

	.nav-wrap .btn-wrap { display: flex; justify-content: center; align-items: center; gap: 10px; margin: 24px 0 0; }

	.nav-wrap .btn.__01 { width: 455px; }

	.nav-wrap .btn.__02 { width: 245px; }

	header .line { transition: all 0.4s; }

	header.active .line.__01 { top: 25%; transform: rotate(45deg); }

	header.active .line.__02 { opacity: 0; }

	header.active .line.__03 { top: 25%; transform: rotate(-45deg); }

	header.active .overlay { display: block; pointer-events: all; opacity: 1; }

	header.active .nav-wrap { transform: translateY(0) translateX(-50%); z-index: 2000; }

	/*============================================================================== hero ============================================================================= */
	.hero { position: relative; margin: 97px 0 0; }

	.hero-campain { position: absolute; width: 698px; bottom: -70px; left: 50%; transform: translate(-50%, -50%); }


	/*===============================================================================
	cta
	===============================================================================*/
	.cta-bg { padding: 50px 0 45px; background-size: cover; }

	.cta-block { padding: 35px 0 0; border: solid #0386b3 5px; border-radius: 10px; background: #fff; }

	.cta-campain { width: calc(100% + 56px); margin: 0 -29px 0 -28px; }

	.cta-txt04 { margin: 20px 0 0; font-size: 28px; font-weight: bold; text-align: center; letter-spacing: 0.05em; }

	.cta-btn01 { width: 630px; margin: 28px auto 0; }

	.cta-note { margin: 18px auto 0; letter-spacing: 0.02em; line-height: 1.66; color: #fff; font-size: 18px; }

	.cta-link { position: relative; font-size: 32px; font-weight: bold; text-align: center; margin-top: 20px; }

	.cta-link a { position: relative; display: inline-block; border-bottom: 1px solid #000; }

	.cta-link a::before { position: absolute; top: 20%; left: -30px; content: ""; display: inline-block; width: 20px; height: 50px; background: url(../img/cta_link_deco.png) no-repeat; background-size: contain; }

	.cta .tel { color: #333; margin: 20px 0 0; padding: 20px 0 40px; border-radius: 0 0 10px 10px; }

	.cta .tel-txt01 { font-weight: bold; text-align: center; letter-spacing: 0.08em; }

	.cta .tel-num01 { width: 600px; margin: 5px auto 0; }

	.cta .tel-txt02 { margin: 7px 0 0; text-align: center; }

	/*===============================================================================
	compare
	===============================================================================*/
	.compare-bg { position: relative; padding: 0 0 80px; background: linear-gradient(#d4effc, #9ed7f3); }

	.compare-diff { width: 571px; margin: 0 auto; }

	.compare-bg-white { width: 720px; margin: 40px 0 0; padding: 30px 30px 40px; background: #fff; border-bottom-left-radius: 10px; border-top-left-radius: 10px; border-top: solid 1px #254fad; border-left: solid 1px #254fad; border-bottom: solid 1px #254fad; }

	.compare-table-wrap { padding: 0 0 20px; overflow-x: scroll; }

	.compare-table-wrap::-webkit-scrollbar { height: 30px; }

	.compare-table-wrap::-webkit-scrollbar-track { background: #dddddd; border-radius: 45px; }

	.compare-table-wrap::-webkit-scrollbar-thumb { border-radius: 45px; background: #8e8e8e; }

	.compare-table { width: 1020px; padding: 0 20px 0 0; }

	.compare-note02 { width: 660px; margin: 20px 0 0 0; font-size: 20px; text-align: right; }


	/*===============================================================================
	up
	===============================================================================*/
	.up-bg { position: relative; padding: 20px 0 100px; background: #d4effc; background:#c5e8fa;}

	.up-bg::after { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); right: 0; width: 628px; height: 1.2px; /*background: url("../img/up_border.png") no-repeat center/cover;*/ }

	.up-item:nth-child(n + 2) { margin: 32px 0 0; }

	.up-item-header { position: relative; height: 160px; background: url("../img/up_item_header_01.png") no-repeat center/cover; box-shadow: 0 9px 2px 0 #7c0e10, inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3); border-radius: 10px; }

	.up-item-header.active { box-shadow: none; border-radius: 0; }

	.up-item-header-switch { position: absolute; top: 53px; right: 30px; width: 79px; margin: 0 auto; }

	.up-item-header-switch-shape { position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 20px; height: 20px; background: url("../img/js_open.png") no-repeat center/cover; }

	.up-item-header-switch-shape.active { background: url("../img/js_close.png") no-repeat center/cover; width: 20px; height: 4px; }

	.up-item-header-switch-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; text-align: center; margin: 30px 0 0; }

	.up-item-content { display: none; padding: 42px 50px 50px; background: #fff; border-radius: 0 0 10px 10px; }

	.up-item-content-ttl { position: relative; padding: 0 0 0 70px; color: #ed2315; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 33px; letter-spacing: 0.06em; line-height: 1.23; }

	.up-item-content-ttl .txt__small { color: #000; font-size: 26px; }

	.up-item-content-ttl::before { content: ""; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 48px; height: 75px; background: url("../img/up_item_content_switch.png") no-repeat center/cover; }

	.up-item-content-txt { margin: 36px 0 0; font-size: 24px; letter-spacing: 0.031em; line-height: 1.42; }

	.up-item.__02 .up-item-header { height: 150px; border-radius: 10px; background: url("../img/up_item_header_02.png") no-repeat center/cover; }

	.up-item.__03 .up-item-header { background: url("../img/up_item_header_03.png") no-repeat center/cover; }

	.up-item.__04 .up-item-header { background: url("../img/up_item_header_04.png") no-repeat center/cover; }

	.up-item.__05 .up-item-header { background: url("../img/up_item_header_05.png") no-repeat center/cover; }

	.up-item.__06 .up-item-header { background: url("../img/up_item_header_06.png") no-repeat center/cover; }

	/*=============================================================================== voice ===============================================================================*/
	.voice-bg { padding: 0 0 80px; background: #d4effc; background:#c5e8fa;}

	.voice-ttl01 { width: 620px; margin: 0 auto; }

	.voice-ttl02 { position: relative; z-index: 10; width: 425px; margin: 88px auto 0; }

	.voice-ttl02::before { content: ""; position: absolute; z-index: -1; top: -100px; left: 0; width: 500px; height: 400px; background: url("../img/voice_ttl_02_mist.png") no-repeat center/cover; }

	.voice-item:nth-child(n + 2) { margin: 32px 0 0; }

	.voice-item:nth-child(4) .voice-item-content-ttl .txt__small { margin: 0 0 0 7px; }

	.voice-item-header { position: relative; height: 160px; background: url("../img/voice_item_header_01.png") no-repeat center/cover; box-shadow: 0 9px 2px 0 #7c0e10, inset 0px -3px 6px -2px rgba(0, 0, 0, 0.3); border-radius: 10px; }

	.voice-item-header.active { box-shadow: none; border-radius: 0; }

	.voice-item-header-switch { position: absolute; top: 53px; right: 30px; width: 79px; margin: 0 auto; }

	.voice-item-header-switch-shape { position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 20px; height: 20px; background: url("../img/js_open.png") no-repeat center/cover; }

	.voice-item-header-switch-shape.active { background: url("../img/js_close.png") no-repeat center/cover; width: 20px; height: 4px; }

	.voice-item-header-switch-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; text-align: center; margin: 30px 0 0; }

	.voice-item-content { display: none; padding: 42px 50px 50px; background: #fff; border-radius: 0 0 10px 10px; }

	.voice-item-content-ttl { position: relative; padding: 0 0 22px; color: #e60012; color: #0736a9; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 41px; font-size: 33px; line-height: 1.35; }

	.voice-item-content-ttl .txt__small { color: #0736a9; font-size: 33px; font-size: 41px; color: #e60012; }
	.voice-item-content-ttl .txt__red { color: #0736a9; font-size: 33px; font-size: 41px; color: #e60012; }

	.voice-item-content-ttl::before { content: ""; position: absolute; bottom: 0; left: 50%; transform: translate(-50%); right: 0; width: 629px; height: 4px; background: url("../img/voice_item_ttl_border.png") no-repeat center/cover; }

	.voice-item-content-person { display: flex; align-items: center; gap: 42px; margin: 42px 0 0 80px; }

	.voice-item-content-person-img { flex: 0 0 194px; }

	.voice-item-content-person-txt { color: #012374; text-align: center; line-height: 1.6666; }

	.voice-item-content-txt { margin: 36px 0 0; color: #012374; font-size: 24px; letter-spacing: 0.031em; line-height: 1.6666; }

	.voice-item.__02 .voice-item-header { background: url("../img/voice_item_header_02.png") no-repeat center/cover; }

	.voice-item.__03 .voice-item-header { background: url("../img/voice_item_header_03.png") no-repeat center/cover; }

	.voice-item.__04 .voice-item-header { background: url("../img/voice_item_header_04.png") no-repeat center/cover; }

	.voice-item.__05 .voice-item-header { background: url("../img/voice_item_header_05.png") no-repeat center/cover; }

	.voice-item.__06 .voice-item-header { background: url("../img/voice_item_header_06.png") no-repeat center/cover; }

	.voice-item.__07 .voice-item-header { background: url("../img/voice_item_header_07.png") no-repeat center/cover; }

	.voice-item.__08 .voice-item-header { background: url("../img/voice_item_header_08.png") no-repeat center/cover; }



	/*=============================================================================== cycle ===============================================================================*/
	.cycle { margin: -20px 0 0; border-bottom: 2px solid #0736a9; }

	.cycle-bg { position: relative; padding: 0 0 120px; background: no-repeat 50% 13%; background-size: contain; }

	.cycle-bg::before { content: ""; position: absolute; bottom: 0; right: -10px; width: 254px; height: 300px; background: url("../img/cycle_teacher.png") no-repeat center/cover; }

	.cycle-ttl02 { position: absolute; top: -80px; left: 50%; width: 566px; transform: translateX(-50%); }

	.cycle-txt.__01 { margin: 50px 0 0; font-size: 28px; text-align: center; letter-spacing: 0.06em; line-height: 1.7142; }

	.cycle-txt.__02 { display: inline-block; padding: 0 0 20px; margin: 100px 0 0 30px; color: #0736a9; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 700; font-size: 46px; letter-spacing: 0.06em; line-height: 1.12; border-bottom: 6px solid #e60012; }

	.cycle-txt.__02 .txt__large { color: #e60012; font-size: 50px; }

	.cycle-img { position: relative; margin: 25px 0 0; z-index: 1; }

	.cycle-order { position: relative; z-index: 10; width: 685px; padding: 4px; margin: -85px auto 0; background: #fff; border-radius: 5px; }

	.cycle-order-header { position: relative; background: url("../img/cycle_order_header_bg.png") no-repeat center/cover; padding: 23px 0 19px; border-radius: 4px 4px 0 0; }

	.cycle-order-header-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 38px; letter-spacing: 0.06em; line-height: 1.2631; text-align: center; }

	.cycle-order-header-switch { position: absolute; top: 38px; right: 30px; width: 79px; margin: 0 auto; }

	.cycle-order-header-switch-button { position: absolute; top: 0; right: 50%; transform: translateX(50%); width: 20px; height: 20px; background: url("../img/js_open.png") no-repeat center/cover; }

	.cycle-order-header-switch-button.active { background: url("../img/js_close.png") no-repeat center/cover; width: 20px; height: 4px; }

	.cycle-order-header-switch-txt { color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; text-align: center; margin: 40px 0 0; }

	.cycle-order-content { display: none; padding: 68px 0 70px; border: 4px solid #0736a9; border-radius: 0 0 10px 10px; }

	.cycle-order-content-img { width: 627px; margin: 0 auto; }

	/*=============================================================================== case ===============================================================================*/
	.case .bg { padding: 100px 0 65px; }

	.case .h2 { width: 580px; margin: 0 auto 70px; }

	.case .case-list { margin: 60px 0 0; }

	.case .slider-block { margin: 71px 0 0; }

	.case .case-item { position: relative; border: solid #0736a9 6px; background: #fff; border-radius: 10px; }

	.case .case-item + .case .case-item { margin: 85px 0 0; }

	.case .case-item .top-block { position: relative; }

	.case .case-item .top-block p { letter-spacing: 0.06em; }

	.case .case-item .top-block .num { position: absolute; left: -10px; top: -30px; width: 175px; height: 179px; background: url(../img/case_deco01.png); background-size: contain; line-height: 179px; color: #0736a9; /*font-family: arial;*/ font-size: 32px; font-weight: bold; text-align: center; z-index: 2; }

	.case .case-item .top-block .school-year { position: relative; padding: 45px 0; background: #0736a9; color: #fcff0d; font-size: 65px; font-weight: bold; text-align: center; line-height: 1.3; letter-spacing: 0.06em; }

	.case .case-item .top-block .school-year::after { position: absolute; bottom: -40px; left: 0; width: 678px; height: 52px; background: url(../img/case_deco02.png) no-repeat 50% 0; background-size: cover; content: ""; }

	.case .case-item .top-block .school-year.left {
		/*padding-left: 170px;*/
		/*text-align: left;*/
	}

	.case .case-item .top-block .school-year .txt__small { font-size: 40px; }

	.case .case-item .top-block .school-year .small-font { font-size: 37px; }

	.case .case-item .top-block .photo { position: absolute; top: 150px; right: 40px; width: 199px; z-index: 10; }

	.case .case-item .top-block .photo02 { right: 10px; }

	.case .case-item .top-block .name { margin: 50px 0 40px 100px; color: #0736a9; font-size: 40px; font-weight: bold; line-height: 1.3; letter-spacing: 0.06em; }

	.case .case-item .detail-block { margin: 20px 0 0; }

	.case .case-item .detail-block + .case .case-item .detail-block { margin: 0; }

	.case .case-item .detail-block dt { width: 450px; height: 67px; line-height: 70px; margin: 0 0 0 -3px; padding: 0 0 0 25px; background: url(../img/case_deco03.png) 50% 0; background-size: cover; color: #0736a9; font-size: 30px; font-weight: bold; letter-spacing: 0.06em; }

	.case .case-item .detail-block dd { padding: 31px 20px 50px; }

	.case .case-item .detail-block dd p:not(.fs-40) { font-size: 28px; }

	.case .case-item .detail-block .red { color: #e60012; }

	.case .case-item .detail-block .schedule { padding: 10px 0 30px; }

	.case .case-item .detail-block .comment-block { margin: 80px -20px 0; padding: 20px 30px 50px; background: #eceff6; }

	.case .case-item .detail-block .comment-block .txt01 { width: 606px; height: 67px; line-height: 70px; margin: -50px auto 0; background: url(../img/case_deco04.png) no-repeat 50% 0; background-size: cover; color: #fff; font-size: 30px; font-weight: bold; text-align: center; }

	.case .case-item .detail-block .comment-block .txt02 { margin: 26px 0 0; }

	.case .height { height: auto !important; }

	.case dt, .case dd { letter-spacing: 0.06em; }

	.case .case-item .detail-block .comment-block .case .case-item .detail-block .comment-block .txt02 { margin: 28px 0 0; font-size: 28px; }

	.case .case-item .detail-block .comment-block .txt02 + .txt01 { margin: 50px 0 0; }

	.case .toggle { position: relative; height: 100px; line-height: 100px; background: #7d7d7d; color: #fff; font-size: 34px; font-weight: bold; text-align: center; letter-spacing: 4px; }

	.case .toggle::after { content: ""; display: inline-block; position: absolute; top: 42px; right: 40px; width: 22px; height: 13px; background: url(../img/case_arrow01.png) no-repeat 50% 0/cover; }

	.case .toggle.open::after { right: 200px; transform: rotate(180deg); }

	.case .case-item .btm-note { position: absolute; bottom: -50px; right: -10px; color: #0736a9; font-size: 18px; }

	.case .swiper-container-tab .swiper-wrapper { position: relative; display: flex; justify-content: space-between; margin: 0 auto; transform: translate(0) !important; }

	.case .swiper-btn { padding: 20px 0 0; box-sizing: border-box; opacity: 1; width: 165px !important; height: 108px; border-radius: 10px; background: url(../img/method02-slider_tab01.png) no-repeat 50% bottom; background-size: cover; color: #fff; font-size: 36px; font-weight: bold; text-align: center; letter-spacing: 0.06em; }

	.case .swiper-btn:nth-of-type(n + 3) { padding: 25px 0 0; }

	.case .swiper-btn .desc { display: block; font-size: 22px; margin: 6px 0 0; }

	.case .swiper-btn:nth-of-type(1), .case .swiper-btn:nth-of-type(2) { padding: 38px 0 0; }

	.case .swiper-btn:nth-of-type(3), .case .swiper-btn:nth-of-type(4) { padding: 38px 0 0; }

	.case .swiper-btn.swiper-slide-thumb-active { background-position: 50% 0; }

	.case .swiper-btn .small-font { font-size: 22px; }

	/*=============================================================================== method ===============================================================================*/
	.method .bg { padding: 0 0 100px; background: url(../img/method_bg01.png); }

	.method .top-block { margin: 60px 0 0; }

	.method .top-block .lead { margin: 40px 0 0; font-size: 30px; font-weight: bold; text-align: center; line-height: 1.7; }

	.method .top-block .lead .empahsis { display: inline-block; margin: 5px 0; padding: 3px 8px 0; background: #0736a9; color: #fff; letter-spacing: 0.06em; line-height: 1.45; }

	.method .top-block h3 { font-size: 70px; font-weight: bold; text-align: center; line-height: 1.2; letter-spacing: 0.06em; }

	.method .real-ttl { width: 618px; margin: 85px auto 0; }

	.method .real-movie { margin: 71px 0 0; }

	.method .cta-btn { width: 630px; margin: 53px auto 0; }

	.method .cta-link { margin: 30px 0 0; }

	.method01 .bg { background: none; }

	.method01 .method-ttl { margin: 55px 0 0; font-size: 70px; font-weight: bold; text-align: center; line-height: 1.2; }

	.method01 .system { margin: 50px 0 0; }

	.method01 .system .figure { width: 674px; margin: 0 auto; }

	.method01 .system .lead { margin: 26px 42px 0; font-size: 28px; }

	.method01 .different { margin: 175px 0 0; padding: 1px 30px 0; border-radius: 10px; border: solid #f03f33 8px; background: #fff; }

	.method01 .different .balloon { width: 580px; margin: -150px auto 0; }

	.method01 .different .txt01 { margin: 23px 0 0; font-size: 28px; }

	.method01 .different .txt01 + .txt01 { margin: 35px 0 0; }

	.method01 .different .point { width: 610px; margin: 45px auto 0; }

	.method01 .different .btm-txt { margin: 56px -30px 0; padding: 50px 40px; background: #f03f33; }

	.method02 .bg { padding: 0 0 80px; }

	.method02 .approach-list { margin: 120px 0 0; border-radius: 10px; border: solid #f03f33 8px; background: #fff; }

	.method02 .approach-item { padding: 0 0 56px; }

	.method02 .approach-item h4.balloon { margin: -80px 0 0; }

	.method02 .approach-item .lead { padding: 28px 0 35px; font-size: 30px; font-weight: bold; text-align: center; }

	.method02 .approach-item .lead .red { color: #f03f33; }

	.method02 .approach-item .pic { width: 610px; margin: 0 auto; }

	.method02 .approach-item .txt01 { padding: 34px 60px 0; letter-spacing: 0.05em; }

	.method02 .approach-switch { position: relative; display: block; padding: 18px 0 24px; margin: 0 auto; width: 610px; height: 116px; background: url("../img/method_01_switch_btn.png") no-repeat center/100% 100%; text-align: center; }

	.method02 .approach-switch::before, .method02 .approach-switch::after { content: ""; position: absolute; }

	.method02 .approach-switch::before { top: 47px; right: 40px; width: 23px; height: 17px; background: url("../img/approach_switch_close.png") no-repeat center/cover; }

	.method02 .approach-switch.active::before { background: url("../img/approach_switch_open.png") no-repeat center/cover; }

	.method02 .approach-switch-txt { color: #f03f33; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 34px; text-align: center; }

	.method02 .approach-switch-content { display: none; padding: 28px 0 0; }

	.method03 .detail-block { margin: 120px 0 0; border-radius: 10px; border: solid #f03f33 8px; background: #fff; }

	.method03 .detail-block .order-made h4 { margin: -80px 0 0; }

	.method03 .detail-block .order-made .txt01 { padding: 28px 42px 20px; font-size: 28px; }

	.method03 .slider-block { padding: 30px; }

	.method03 .swiper-container { margin: 30px 0 0; overflow: hidden; }

	.method03 .swiper-slide .example-item { margin: 36px 0 0; }

	.method03 .swiper-slide .example-item .txt01 { width: 296px; height: 72px; margin: 0 0 0 2px; padding: 28px 0 0; background: url(../img/method02_deco01.png) no-repeat 50% 0; background-size: cover; color: #fff; font-size: 30px; font-weight: bold; text-align: center; line-height: 1; }

	.method03 .swiper-slide .example-item .txt02 { margin: 18px 0 0 0; padding: 0 0 14px; border-bottom: dotted 3px #1040ab; font-size: 34px; font-weight: bold; line-height: 1.3; }

	.method03 .swiper-slide .example-item .txt03 { padding: 24px 0 0; font-size: 24px; }

	.method03 .swiper-pagination01 { position: relative; display: flex; justify-content: space-between; width: 610px; }

	.method03 .swiper-pagination01 .swiper-pagination-bullet { box-sizing: border-box; opacity: 1; width: 145px; height: 116px; padding: 26px 0 0; border-radius: 0; background: url(../img/method02-slider_tab01.png) no-repeat 50% bottom; background-size: cover; color: #fff; font-size: 32px; font-weight: bold; text-align: center; box-sizing: border-box; }

	.method03 .swiper-pagination01 .swiper-pagination-bullet-active { background-position: 50% 0; }

	.method03 .swiper-pagination01 .swiper-pagination-bullet .small { font-size: 22px; }

	.method03 .teaching { margin: 28px 0 0; }

	.method03 .teaching .lead { margin: 26px 42px 0; font-size: 28px; }

	.method03 .teaching .way-list { margin: 60px 0 0; padding: 0 32px; }

	.method03 .teaching .way-item { padding: 0 0 52px; }

	.method03 .teaching .way-item h5 { padding: 0 0 10px; border-bottom: dotted 2px #f03f33; color: #f03f33; font-size: 44px; font-weight: bold; letter-spacing: 0.06em; text-align: center; line-height: 1.2; }

	.method03 .teaching .way-item h5 .font-small { font-size: 32px; }

	.method03 .teaching .way-item .photo { margin: 24px 0 0; }

	.method03 .teaching .way-item .txt01 { margin: 20px 0 0; font-size: 28px; }

	.method03 .teaching .way-item .txt02 { font-size: 24px; }

	/*=============================================================================== room ===============================================================================*/
	.room-bg { padding: 60px 0 64px; background-color: #fff; }

	.room-ttl { width: 550px; margin: 0 auto; }

	.room .lead { position: relative; margin: 28px 0 0; border-radius: 20px; background: #073190; color: #fff; font-weight: bold; text-align: center; }

	.room-btn { display: block; position: relative; z-index: 10; margin: 0 auto; width: 640px; height: 100px; box-shadow: 0 7px #565656; background-color: #787878; border-radius: 5px; color: #fff; font-size: 40px; font-weight: bold; text-align: center; letter-spacing: 0.2em; }

	.room-btn::after { content: ""; display: inline-block; position: absolute; top: 45px; right: 134px; width: 22px; height: 13px; background: url(../img/room_arrow.png) no-repeat 50% 0/contain; transform: rotate(180deg); }

	.room-btn.open::after { right: 174px; transform: rotate(0); }

	.room-content { display: none; }

	.room-block { margin: 65px 0 0; }

	.room-box01 { height: 60px; padding-left: 20px; background-color: #ed2315; color: #fff; font-size: 32px; font-weight: bold; line-height: 60px; }

	.room-list { display: flex; flex-wrap: wrap; }

	.room-item { width: 165px; margin: 24px 10px 0 0; box-shadow: 0 6px #d9d9d9; border: 1px solid #cbcbcb; border-radius: 5px; background: linear-gradient(to bottom, #fff, #f0f0f0); font-size: 30px; font-weight: bold; text-align: center; line-height: 1.2; }

	.room-item:nth-child(4n) { margin-right: 0; }

	.room-item a { box-sizing: border-box; display: inline-block; width: 100%; height: 100%; padding: 12px 0; color: #333; }

	.room-item .small { font-size: 25px; }

	.room-item .padding { padding: 30px 0 0; }

	/*=============================================================================== internet ===============================================================================*/
	.internet .bg { padding: 36px 0 100px; background: #d20000; }

	.internet h2 { width: 561px; margin: 0 auto; z-index: 2; }

	.internet-btn { display: block; position: relative; width: 690px; height: 118px; margin: 54px auto 0; background: url(../img/internet_btn02.png) no-repeat 50% 0; background-size: cover; }

	.internet-btn.open { background-position: 50% bottom; }

	.internet .detail-block { padding: 160px 0 0; }

	.internet .detail-block-bg { position: relative; padding: 120px 30px 0; background: #fff; border-radius: 10px; }

	.internet .detail-block-bg .ribbon { position: absolute; top: -98px; left: 0; width: 690px; }

	.internet .different .deco { position: absolute; top: 0; right: -50px; width: 215px; }

	.internet .movie .tmb { margin: 13px 0 0; }

	.internet .about { margin: 102px 0 0; }

	.internet .about dd { padding: 36px 0 67px; font-size: 30px; letter-spacing: 0; }

	.internet .step .btn { margin: 39px 0 0; }

	.internet .additional { position: relative; margin: 58px -30px 0; }

	.internet .additional-bg { background: url(../img/internet_bg.png) no-repeat 50% 0; overflow: hidden; border-bottom-left-radius: 10px; border-bottom-right-radius: 10px; padding-bottom: 36px; }

	.internet .additionalArea { margin: 40px 0 0 27px; }

	.internet .internet-ttl02 { width: 412px; padding-top: 100px; }

	.internet .internet-additional-txt01 { width: 590px; margin-top: 30px; }

	.internet .internet-additional-txt01 .deco { position: absolute; top: -10px; right: -30px; width: 277px; height: 296px; }

	.internet .internet-movie02-tmb { width: 630px; margin-top: 44px; }

	.internet .internet-movie02-txt { margin-top: 28px; font-weight: bold; font-size: 28px; letter-spacing: 0.04em; margin-left: 30px; }

	.internet .internet-additional-txt02 { position: relative; width: 648px; margin-top: 40px; z-index: 1; }

	.internet .internet-additional-note01 { position: relative; width: 630px; margin-top: -10px; padding: 15px 30px; border-radius: 10px; background: #fff; font-size: 24px; line-height: 1.5; z-index: 10; }

	/*===============================================================================
	faq
	===============================================================================*/
	.faq__txt { padding: 35px 10px; margin: 18px 0 0; color: #fff; /*font-family: "A-OTF ゴシックMB101 Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-weight: 600; font-size: 42px; letter-spacing: 0.08em; line-height: 1; text-align: center; border: 4px solid #fff; }

	.faq__txt.__02 { margin: 80px 0 0; }

	.faq .red { color: #ed2315; font-weight: bold; }

	.faq__list { margin: 40px 0 0; }

	.faq__bg { padding: 60px 0 100px; background-color: #09449f; }

	.faq__ttl { color: #ffffff; /*font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", sans-serif;*/ font-size: 60px; font-weight: bold; text-align: center; }

	.faq__subttl, .faq__subttl--mt { margin: 30px 0 0; padding: 20px 0; border: 3px solid #ffffff; color: #ffffff; font-size: 42px; font-weight: bold; text-align: center; }

	.faq__subttl--mt { margin-top: 80px; }

	.faq__item { margin: 30px 0 0; }

	.faq__block { background-color: #fff; border-radius: 5px; }

	.faq__question { display: table; position: relative; width: 100%; height: 140px; }

	.faq__question .q { display: table-cell; width: 100px; color: #ed2315; /*font-family: Arial, Helvetica, sans-serif;*/ font-size: 70px; font-weight: bold; text-align: center; vertical-align: middle; }

	.faq__question .txt { display: table-cell; width: calc(100% - 140px); color: #002a6a; font-size: 32px; font-weight: bold; letter-spacing: 0.08em; line-height: 1.4; vertical-align: middle; }

	.faq__question .btn { box-sizing: border-box; position: absolute; top: 0; right: -1px; width: 120px; height: 142px; padding: 70px 0 0; border-radius: 0 5px 5px 0; background-color: #002a6a; color: #ffffff; font-size: 24px; font-weight: bold; text-align: center; }

	.faq__question .btn::after { content: ""; display: inline-block; position: absolute; top: 40px; left: 0; right: 0; margin: 0 auto; width: 21px; height: 14px; background: url(../img/faq_arrow.png) no-repeat 50% 0/contain; transform: rotate(180deg); }

	.faq__question .btn.open { border-radius: 0 5px 0 0; }

	.faq__question .btn.open::after { transform: rotate(0); }

	.faq__answer { display: none; border-top: 2px dashed #002a6a; padding: 34px 24px; font-size: 28px; letter-spacing: 0.04em; }

	.faq__answer .color { color: #ed2315; font-weight: bold; }

	.faq__answer.ls { letter-spacing: -0.02em; }

	.faq__answer a { color: #ed2315; text-decoration: underline; display: inline-block; }

	/*=============================================================================== footer ===============================================================================*/
	.footer-bg { padding: 30px 0; background-color: #00183e; }

	.footer-txt { color: #fff; /*font-family: "Century Gothic", Arial, sans-serif;*/ font-size: 24px; text-align: center; letter-spacing: 0.08em; }


	/*=============================================================================== modal ===============================================================================*/
	#modal-bg { position: fixed; top: 0; left: 0; z-index: 10000; display: none; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); }

	#player { width: 100%; height: 100%; }

	.modal-item { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 10001; display: none; margin: auto; width: 690px; height: 900px; }

	.modal-video { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 10001; display: none; margin: auto; width: 640px; height: 352px; }

	.modal-video .close-btn { position: absolute; top: -60px; right: 0; width: 50px; height: 50px; }

	div#modal-detail { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 10001; height: 70%; margin: auto; max-width: 710px; padding: 60px 40px 0; display: none; background: #fff; }

	div#modal-detail .detail-sp { height: 100%; }

	/*～～～～～～～～～～～～～～～～～～～～～～～　追記　～～～～～～～～～～～～～～～～～～～～～～～*/
	/*個別指導の事例▼*/
	.case .swiper-btn { padding: 38px 0 0; }

	.case-list .case-item .school-year.left {
		padding-left: 0;
		text-align: center;
	}

	/*個別指導の事例▲*/
	/*CTA▼*/
	.cta-block { padding: 25px 0 0; }

	/*CTA▲*/

	.cta-campain {
	    width: 92%;
	    margin: 0 auto;
	}

	/*▼教室数アノテーション*/
	/*header*/
	.header .inner {
	    padding: 10px 30px 0;
	}		
	.header .header-txt03 {
	    font-size: 22px;
	    background: #08399c;
	    color: #fff;
	    border-radius: 30px;
	    padding: 0;
	    text-align: center;
	}		
	.header .header-txt03 .number.fs-40{
		font-size:30px;
	}
	.header .header_anno {
	    font-size: 20px;
	    padding: 0 0 0 57%;
	}		
	/*class room*/
	.room .lead .school_sup {
		font-size:70%;
		vertical-align:super;
	}
	.room .room-lead-anno {
	    font-size: 20px;
	    text-align: right;
	    padding: 6px 0 10px;
	}					
	/*▲教室数アノテーション*/
	.compare-bg {
	    padding: 80px 0 80px;
	}
	/*～～～～～～～～～～～～～～～～～～～～～～～
		▼カリキュラム23.11
	～～～～～～～～～～～～～～～～～～～～～～～*/
	
	/*▼～～～～～～～～～～～～タブCSS～～～～～～～～～～～～/
	/* ▼タブ(共通装飾＋非選択状態の装飾) */
	.curriculum .tab_block .tab {
	  display: inline-block;          /* インラインブロック化 */
	  border-width: 1px 1px 0px 1px;  /* 上側と左右に枠線を引く */
	  border-style: solid;            /* 枠線の種類は「実線」 */
	  border-color: black;            /* 枠線の色は「黒」 */
	  border-radius: 0.75em 0.75em 0px 0px;  /* 左上と右上の角だけを丸くする */
	  padding: 0.75em 1em;            /* 内側の余白量 */
	  font-weight: bold;              /* タブの文字を太字にする */
	  color: black;                   /* タブの文字色：黒色 */
	  background-color: #e0e0e0;      /* タブの(非選択状態の)背景色：灰色 */
	}

	/* ▼タブにマウスポインタが載った際の装飾 */
	/*spでは不要*/
		/*
	.curriculum .tab_block .tab:hover {
	  color: green;
	  background-color: #ccffcc;
	  cursor: pointer;
	}
		*/

	/* ▼選択状態のタブ(＝チェックが入っているラジオボタンの隣にあるタブの装飾) */
	.curriculum .tab_block input:checked + .tab {
	  color: red;                  /* タブの文字色：赤色 */
	  background-color: #ffffcc;   /* タブの背景色：淡い黄色 */
	}

	/* ▼タブ機能を制御するラジオボタン(非表示にする) */
	.curriculum .tab_block .tabbox input { display: none; }

	/* ▼タブの中身(共通装飾＋非選択状態の装飾) */
	.curriculum .tab_block .tabcontent {
	  display: none;             /* 標準では非表示にする */
	  border: 1px solid black;   /* 枠線を引く：黒色で1ピクセルの実線 */
	  padding: 1em;              /* 内側の余白量 */
	  background-color: #ffffcc; /* 背景色：淡い黄色(※選択中のタブの背景色と合わせます) */
	}

	/* ▼チェックが入っているラジオボタンに対応するタブの中身を表示する */
	.curriculum .tab_block #tabcheck1:checked ~ #tabcontent1 { display: block; }
	.curriculum .tab_block #tabcheck2:checked ~ #tabcontent2 { display: block; }
	.curriculum .tab_block #tabcheck3:checked ~ #tabcontent3 { display: block; }
	/*▲～～～～～～～～～～～～タブCSS～～～～～～～～～～～～/
	

	
	/*▼～～タブカスタム追加～～*/
	.curriculum .tab_block input:checked + .tab {
	    color: #fff;
	    background-color: #f03f33;
	    font-size: 42px;
	    padding-top: 37.5px;
	}	
	.curriculum .tab_block .tab {
	    background-color: #aaa;
	    border: none;
	    border-radius: 0;
	    font-size: 33px;
	    color: #fff;
	    padding: 30px 0 22.5px;
	    width: 196.5px;
	    text-align: center;
	    margin: 0 15px 0 0;
	}	
	.curriculum .tab_block .tab.last{
	    margin: 0 0 0 0;
	}	
	.curriculum .tab_block .tabcontent {
	    border: none;
	    padding: 0;
		background-color:#D3DBF0;
	}	
	/*▲～～タブカスタム追加～～*/
	
	.curriculum {
		position: relative;
		padding: 204px 0 120px;
	}
	.curriculum .border-wrap {
		border: 4.5px solid #0736A9;
		position:relative;
		border-radius: 15px;
		padding: 0;
	}	
	.curriculum .ttl_img {
	    position: absolute;
	    top: -90px;
	    width: 94%;
	    left: 22.5px;
	}	
	.curriculum .sub_ttl {
	    font-size: 25.5px;
	    line-height: 1.6;
	    padding: 120px 0 30px;
	    font-weight: normal;
	    text-align: center;
	}	
	.curriculum .txt01 {
	    font-weight: bold;
	    font-size: 33px;
	    padding: 0 22.5px 60px;
	    color: #0736A9;
	}	
	.curriculum .tab_block {
	    padding: 0 22.5px 30px;
	}	
	
	.curriculum .tab_cont_inner {
		border-top: 10.5px solid #f03f33;
	}
	.curriculum .course {
	    padding:15px 15px 15px;
	}	
	.curriculum .course .courselist {
	    border: 12px solid #0736A9;
	    border-radius: 15px;
		margin: 0 0 22.5px;
	}	
	.curriculum .course .courselist:last-child {
		margin:0;
	}	
	
	
	.curriculum .courselist .ttl_block {
	    background: #0736A9;
		position:relative;
	}	
	.curriculum .courselist .ttl_block .ttl_txt {
	    color: #fff;
	    font-weight: bold;
	    font-size: 40.5px;
	    text-align: center;
	    padding: 15px 0 22.5px;
		line-height:1.4;
	}	
	.curriculum .courselist .ttl_block .example{
		color:#FFFF40;
		position:absolute;
		top:0;
		left:0;
		font-size:30px;
	    font-weight:bold;
	}	
	.curriculum .courselist .cont_block {
	    background: #fff;
	    padding: 37.5px 22.5px 22.5px;
	}	
	.curriculum .courselist .cont_block .sub_ttl_txt {
	    text-align: center;
	    font-weight: bold;
	    font-size: 31.5px;
	    padding: 0 0 22.5px;
		color:#0736A9;
	}	
	.curriculum .courselist .cont_block .circle_img {
	    padding: 0 22.5px 30px;
	}	
	.curriculum .courselist .cont_block .cont_txt {
	    font-size: 27px;
	}	
	.curriculum .txt02 {
		color: #0736A9;
		font-weight: bold;
		font-size: 33px;
		padding: 0 22.5px 22.5px;
		line-height: 1.4;
	}
	.curriculum .btn01 {
		width: 60%;
		margin: 0 auto;
	}

	/*～～～～～～～～～～～～～～～～～～～～～～～
		▲カリキュラム23.11
	～～～～～～～～～～～～～～～～～～～～～～～*/

	/*▼カリキュラム タイトル*/
	.curriculum .curriculum_ttl01 {
	    font-size: 60px;
	    font-weight: bold;
	    text-align: center;
	    line-height: 1.2;
		color:#062f8c;
		padding: 0 0 110px;
	}
	/*▲カリキュラム タイトル*/


	/*▼志望校合格 大学名と名前欄の改修*/
	.voice-item-content {
	    padding: 42px 36px 50px;
	}												
	.voice-item-content-person-img {
	    flex: 0 0 160px;
	}												
	.voice-item-content-person {
	    gap: 20px;
	    margin: 42px 0 0 0;
	}
	.voice-item-content-person-txt01{
		color: #012374;
		font-weight:bold;
		padding: 0 10px 0 0;
	}
	.voice-item-content-person-txt01 .txt01{
		font-size: 40px;
		padding:0 20px 0 0;
	}
	.voice-item-content-person-txt01 .txt02{
		font-size: 30px;
	}
	/*▲志望校合格 大学名と名前欄の改修*/
	/*▼コースリスト作成24.1*/
	.course_list {
	    padding: 45px 0 75px 0;
	    padding: 105px 0 150px 0;
		padding: 105px 0 45px 0;
	    /*border-top: 2px solid #0736a9;*/
	}		
	.course_list .content_area .course_list_main_ttl {
	    font-weight: bold;
	    text-align: center;
	    color: #333;
	    font-size: 46px;
	    padding: 0 0 22.5px;
	    line-height: 1.4;
	}			
	.course_list .content_area .list_box .sub_box{
		display:flex;
	}
	.course_list .content_area .list_box .sub_box{
		padding:0 0 45px 0;
	}
	.course_list .content_area .list_box:last-child .sub_box{
		padding:0 0 0 0;
	}
	.course_list .content_area .list_box .sub_box .sub_img {
	    width: 50%;
	}
	/*▲コースリスト作成24.1*/
	/*▼online縮小改修*/
	.internet .bg {
	    margin: 0 40px 90px;
	}	
	.internet h2 {
	    width: 72%;
	}	
	.internet-btn {
	    width: 580px;
	    height: 100px;
	}	
	.internet .detail-block-bg .ribbon {
	    width: 100%;
	}	
	.internet .internet-additional-txt01 .deco {
	    width: 220px;
	    height: 220px;
	}	
	.internet .internet-ttl02 {
	    width: 390px;
	}	
	.internet .internet-additional-txt01 {
	    width: 520px;
	}	
	.internet .internet-movie02-tmb {
	    width: 560px;
	}	
	.internet .internet-movie02-txt {
	    margin-top: 10px;
	    font-size: 24px;
	    margin-left: 40px;
	}	
	.internet .internet-additional-txt02 {
	    width: 570px;
	}	
	.internet .internet-additional-note01 {
	    width: 550px;
	    font-size: 22px;
	}	
	/*▲online縮小改修*/

	/*▼ココが違うスクールIE背景調整*/
	.compare-bg {
	    background:#c5e8fa;
	}		
	/*▲ココが違うスクールIE背景調整*/
	/*▼ナビ HTML化*/
	.nav-wrap .item .txt01 {
	    font-size: 30px;
	    font-weight: bold;
	}
	/*▲ナビ HTML化*/
	/*▼コースリスト　複数化調整*/
	.course_list.type01 {}
	.course_list.type02 {}
	/*▲コースリスト　複数化調整*/
	/*▼教室を探す　複数化調整*/
	.room.type01 {
	    padding: 0 0 90px;
	}
	.room.type02 {
	    padding: 0 0 90px;
	}
	/*▲教室を探す　複数化調整*/

	/*=============================================================================== relal ===============================================================================*/
	.real-bg {
		/*background-image: url(../img/real_bg.png);*/
		/*background-size: cover;*/
		padding: 86px 0 75px; }

	.real-movie {
		margin-top: 57px;
	}

	/*▼リアルボイス*/
	.real .real-ttl {
	    font-size: 70px;
	    font-weight: bold;
	    color: #F03F33;
	    text-align: center;
	    line-height: 1.4;
	    margin: 0 0 60px;
	}
	.real .real-ttl .img_block{
		display:block;
	    margin: 0 auto 45px;
	}
	/*▲リアルボイス*/





	/*～～～～～～～～～～～～～～～～～～～～～～～
		▼CTA TOP v2（2412）
	～～～～～～～～～～～～～～～～～～～～～～～*/
	.ctatop_v2{}
	.ctatop_v2__bg {
	    padding: 0 0 75px;
	}
	.ctatop_v2 .ctatop_v2__wrap {}
	.ctatop_v2 .ctatop_v2__wrap .ctatop_v2__bnrblock {
		padding: 0 0 45px;
	}
	.ctatop_v2 .ctatop_v2__wrap .ctatop_v2__bnrblock .ctatop_v2__bnr{
		padding: 0 0 30px;
	}
	.ctatop_v2 .ctatop_v2__wrap .ctatop_v2__bnrblock .ctatop_v2__bnr .img_block{
	}
	
	/*アコーディオンコテンツ内 初期非表示*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content {display:none;}
	
	/*▼アコーディオン*/
	.ctatop_v2 .ctatop_v2__accordion {
	    border: 2px solid #4956AA;
	    border-radius: 10px;
	    margin: 0 22.5px;
	}

	/*トグルボタン*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 {
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01:hover {
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn {
		position:relative;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .txt{
		display:block;
		font-size:30px;
		font-weight:bold;
		color:#545454;
		text-align:center;
		padding: 6px 0 3px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .open::before{
		display:none;
	}/*デフォ△非表示*/
	
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .close {
		position:relative;
	    display: block;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn .close::before {
	    display: block;
	    position: absolute;
	    content: '';
	    top: -48px;
	    right: 37.5px;
	    width: 20px;
	    height: 20px;
	    border-top: 2px solid #F18B00;
	    border-right: 2px solid #F18B00;
	    transform: rotate(135deg);
	}
	/*最初　閉じた状態*/

	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn.active .open {
		position:relative;
	    display: block;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn.active .open::before {
	    display: block;
	    position: absolute;
	    content:'';
	    top: -34.5px;
	    right: 37.5px;
	    width: 20px;
	    height: 20px;
	    border-top: 2px solid #F18B00;
	    border-right: 2px solid #F18B00;
	    transform: rotate(-45deg);
	}
	/*アクション後　開いた状態*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_toggle01 .ctatop_v2__accordion_btn.active .close::before{
		display:none;
	}/*デフォ▽非表示*/
	
	/*内部コンテンツ*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content{}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .main_ttl {
	    font-size: 38px;
	    color: #fff;
	    background: #4956AA;
	    font-weight: bold;
	    text-align: center;
	    padding: 14px 0 10px;
	    margin: 0 0 37.5px;
	    line-height: 1.4;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .sub_ttl {
	    font-size: 34px;
	    color: #545454;
	    text-align: center;
	    padding: 0 0 15px;
	    font-weight: bold;
	}
	/*pointブロック*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea{
		margin:0 22.5px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea .point_block{
		display:flex;
		align-items:center;
		background: #F0F0F8;
		margin: 0 0 15px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea .point_block .point_block_txt01 {
	    font-size: 30px;
	    color: #545454;
	    padding: 22.5px 22.5px 22.5px 45px;
	    font-weight: bold;
	    line-height: 1.4;
		flex:1.6;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .point_blockarea .point_block .point_block_img01{flex:1;}
	
	/*copyブロック*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea {
		margin:0 22.5px;
		padding: 37.5px 0 30px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea .txt01{
		font-size:38px;
		font-weight:bold;
		color:#4956AA;
		padding: 0 0 7.5px 60px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea .txt01 .y_line{
		background: linear-gradient(transparent 80%, #f5ff3f 0%);
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .copy_blockarea .img_block{
		width:42%;
		margin:0 auto;
	}

	/*detailブロック*/
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea{}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt01 {
		padding: 0 22.5px 15px 22.5px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 {
	    font-size: 26px;
	    color: #545454;
	    padding: 0 0 7.5px;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 .txt01_circle{
		display:inline-block;
		padding: 0 10px 0 0;
	}
	.ctatop_v2 .ctatop_v2__accordion .ctatop_v2__accordion_content .detail_blockarea .detail_txt02 {
	    font-size: 20px;
	    color: #545454;
	    margin: 0 0 30px;
	    padding: 0 22.5px 0;
		line-height:1.4;
	}
	/*▲アコーディオン*/
	
	/*CTA部分*/
	.ctatop_v2 .ctatop_v2__ctablock {
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__txt01 {
	    text-align: center;
	    font-size: 30px;
	    font-weight: bold;
	    padding: 0 0 15px;
	    color: #545454;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__cvbtn{}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__cvbtn .img_block {
	    margin: 0 60px 30px;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel {}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel .ctatop_v2__tel_txt01 {
	    font-weight: bold;
	    color: #545454;
	    font-size: 30px;
	    text-align: center;
	    padding: 0 0 7.5px;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel .ctatop_v2__tel_img01 {
		margin: 0 60px 22.5px;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__tel .ctatop_v2__tel_txt02 {
	    text-align: center;
	    font-size: 26px;
		color: #545454;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__doc {
		position: relative;
	    font-size: 32px;
	    font-weight: bold;
	    text-align: center;
	    margin-top: 20px;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__doc .ctatop_v2__doc_link {
		position: relative;
	    display: inline-block;
	    border-bottom: 1px solid #545454;
		color:#545454;
	}
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__doc .ctatop_v2__doc_link::before {
	    position: absolute;
	    top: 0;
	    left: -30px;
	    content: "";
	    display: inline-block;
	    width: 20px;
	    height: 50px;
	    background: url(../img/cta_link_deco.png) no-repeat;
	    background-size: contain;
	}
	/*▼CTA_v2(TOP)入会金0円バナー*/
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__0bnr {
	    margin: 0 60px 22.5px;
	}	
	/*▲CTA_v2(TOP)入会金0円バナー*/
	/*▼CTA_v2(TOP)無料体験文字赤字変更*/
	.ctatop_v2 .ctatop_v2__ctablock .ctatop_v2__txt01 .red {
		color:#D52223;
	}
	/*▲CTA_v2(TOP)無料体験文字赤字変更*/

	/*～～～～～～～～～～～～～～～～～～～～～～～
		▲CTA TOP v2（2412）
	～～～～～～～～～～～～～～～～～～～～～～～*/










	/*～～～～～～～～～～～～～～～～～～～～～～～
		▼CTA 共通 v2（2505）
	～～～～～～～～～～～～～～～～～～～～～～～*/
	.cta_v2{}
	.cta_v2__bg {
	    padding: 0 0 45px;
	}
	.cta_v2 .cta_v2__wrap {}
	.cta_v2 .cta_v2__wrap .cta_v2__bnrblock {
		padding: 0 0 45px;
	}
	.cta_v2 .cta_v2__wrap .cta_v2__bnrblock .cta_v2__bnr{
		padding: 0 0 30px;
	}
	.cta_v2 .cta_v2__wrap .cta_v2__bnrblock .cta_v2__bnr .img_block{
	}
	
	/*アコーディオンコテンツ内 初期非表示*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content {display:none;}
	
	/*▼アコーディオン*/
	.cta_v2 .cta_v2__accordion {
	    border: 2px solid #4956AA;
	    border-radius: 10px;
	    margin: 0 22.5px;
	}

	/*トグルボタン*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 {
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01:hover {
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn {
		position:relative;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .txt{
		display:block;
		font-size:30px;
		font-weight:bold;
		color:#545454;
		text-align:center;
		padding: 6px 0 3px;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .open::before{
		display:none;
	}/*デフォ△非表示*/
	
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .close {
		position:relative;
	    display: block;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn .close::before {
	    display: block;
	    position: absolute;
	    content: '';
	    top: -48px;
	    right: 37.5px;
	    width: 20px;
	    height: 20px;
	    border-top: 2px solid #F18B00;
	    border-right: 2px solid #F18B00;
	    transform: rotate(135deg);
	}
	/*最初　閉じた状態*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn.active .open {
		position:relative;
	    display: block;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn.active .open::before {
	    display: block;
	    position: absolute;
	    content:'';
	    top: -34.5px;
	    right: 37.5px;
	    width: 20px;
	    height: 20px;
	    border-top: 2px solid #F18B00;
	    border-right: 2px solid #F18B00;
	    transform: rotate(-45deg);
	}
	/*アクション後　開いた状態*/

	.cta_v2 .cta_v2__accordion .cta_v2__accordion_toggle01 .cta_v2__accordion_btn.active .close::before{
		display:none;
	}/*デフォ▽非表示*/
	
	/*内部コンテンツ*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content{}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .main_ttl {
	    font-size: 38px;
	    color: #fff;
	    background: #4956AA;
	    font-weight: bold;
	    text-align: center;
	    padding: 14px 0 10px;
	    margin: 0 0 37.5px;
	    line-height: 1.4;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .sub_ttl {
	    font-size: 34px;
	    color: #545454;
	    text-align: center;
	    padding: 0 0 15px;
	    font-weight: bold;
	}
	/*pointブロック*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea{
		margin:0 22.5px;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea .point_block{
		display:flex;
		align-items:center;
		background: #F0F0F8;
		margin: 0 0 15px;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea .point_block .point_block_txt01 {
	    font-size: 30px;
	    color: #545454;
	    padding: 22.5px 22.5px 22.5px 45px;
	    font-weight: bold;
	    line-height: 1.4;
		flex:1.6;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .point_blockarea .point_block .point_block_img01{flex:1;}
	
	/*copyブロック*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea {
		margin:0 22.5px;
		padding: 37.5px 0 30px;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea .txt01{
		font-size:38px;
		font-weight:bold;
		color:#4956AA;
		padding: 0 0 7.5px 60px;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea .txt01 .y_line{
		background: linear-gradient(transparent 80%, #f5ff3f 0%);
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .copy_blockarea .img_block{
		width:42%;
		margin:0 auto;
	}

	/*detailブロック*/
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea{}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt01 {
		padding: 0 22.5px 15px 22.5px;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 {
	    font-size: 26px;
	    color: #545454;
	    padding: 0 0 7.5px;

	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt01 .txt01 .txt01_circle{
		display:inline-block;
		padding: 0 10px 0 0;
	}
	.cta_v2 .cta_v2__accordion .cta_v2__accordion_content .detail_blockarea .detail_txt02 {
	    font-size: 20px;
	    color: #545454;
	    margin: 0 0 30px;
	    padding: 0 22.5px 0;
		line-height:1.4;
	}
	/*▲アコーディオン*/
	
	/*CTA部分*/
	.cta_v2 .cta_v2__ctablock {
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__txt01 {
	    text-align: center;
	    font-size: 30px;
	    font-weight: bold;
	    padding: 0 0 15px;
	    color: #545454;
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn{
		padding:0 0 45px;
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn .img_block {
		margin:0 60px 0;
	}

		/*▼v2に相談と資料のボタン追加2505*/
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn02,
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn03{
		position:relative;
		font-size: 32px;
		font-weight: bold;
		padding:0 0 30px;
		text-align:center;
		color:#545454;
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn02 a,
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn03 a{
	    position: relative;
	    display: inline-block;
	    border-bottom: 1px solid #545454;
		color:#545454;
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn02 a::before,
	.cta_v2 .cta_v2__ctablock .cta_v2__cvbtn03 a::before{
	    position: absolute;
	    top: 20%;
	    left: -30px;
	    content: "";
	    display: inline-block;
	    width: 20px;
	    height: 50px;
	    background: url(../img/cta_link_deco.png) no-repeat;
	    background-size: contain;
	}
		/*▲v2に相談と資料のボタン追加2505*/
	.cta_v2 .cta_v2__ctablock .cta_v2__tel {}
	.cta_v2 .cta_v2__ctablock .cta_v2__tel .cta_v2__tel_txt01 {
	    font-weight: bold;
	    color: #545454;
	    font-size: 30px;
	    text-align: center;
	    padding: 0 0 7.5px;
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__tel .cta_v2__tel_img01 {
		margin: 0 60px 22.5px;
	}
	.cta_v2 .cta_v2__ctablock .cta_v2__tel .cta_v2__tel_txt02 {
	    text-align: center;
	    font-size: 26px;
		color: #545454;
	}
	/*～～～～～～～～～～～～～～～～～～～～～～～
		▲CTA 共通 v2（2505）
	～～～～～～～～～～～～～～～～～～～～～～～*/










	/*▼CTA_v2 無料体験文字赤字変更*/
	.cta_v2 .cta_v2__ctablock .cta_v2__txt01 .red {
		color:#D52223;
	}
	/*▲CTA_v2 無料体験文字赤字変更*/
	/*▼共通CTA テキスト追加*/
	.cta .cta-block .cta-txt03 {
	    text-align: center;
	    font-size: 28px;
	    font-weight: bold;
	    padding: 0 0 7.5px;
	    color: #545454;
	}
	.cta .cta-block .cta-txt03 .red{
		color:#D52223;
	}
	/*▲共通CTA テキスト追加*/
	/*▼共通CTA 調整*/
	.cta .cta-campain {
	    margin: 0 auto 30px;
	}
	.cta .cta-btn01 {
	    margin: 0 auto;
	}
	/*▲共通CTA 調整*/	

	/*▼よくある質問CVテキストリンク追加*/
	.faq .faq_btn_area {
	    display: block;
	    padding: 22.5px 0 0;
	}	
	.faq .faq_btn_area .faq_btn {
	    padding: 0 0 12px;
	    display: block;
	}	
	.faq .faq_btn_area .faq_btn .link {
		position:relative;
	    color: #000;
	    font-weight: bold;
	    text-decoration: none;
		letter-spacing:0;
	}								
		
	.faq .faq_btn_area .faq_btn .link::before {
	    position: absolute;
	    content: '';
	    width: 31.5px;
	    height: 31.5px;
	    border-radius: 50%;
	    background: #65ab15;
	    top: 9px;
	    right: -48px;
	    z-index: 1;
	}
	
	.faq .faq_btn_area .faq_btn .link::after {
	    position: absolute;
	    content: '';
	    width: 10.5px;
	    height: 10.5px;
	    border-top: 2px solid #ffff00;
	    border-right: 2px solid #ffff00;
	    transform: rotate(45deg);
	    top: 18px;
	    right: -36.75px;
	    z-index: 2;
	}
	/*▲よくある質問CVテキストリンク追加*/

	/*▼体験談2行化の調整*/
	.voice .voice-item-content_hr {display:block;padding:75px 0 0;}
	/*▲体験談2行化の調整*/

	/*▼ここが違うスクールIEタブ版2503*/
	.compare02 {
		padding:60px 0 0;
		background: #d2ecfb;
	}
	.compare02 .compare02_ttl {
		width:92%;
		margin:0 auto;
		padding:0 0 22.5px;
	}

	.compare02 .anno {
		width:96%;
		margin:0 auto;
		font-size:19.5px;
		color:#595757;
	}
	/*▲ここが違うスクールIEタブ版2503*/


	/*▼オープン模試ver2505*/
	.open_test {
	    background:#c5e8fa;
	    padding: 90px 0 75px;
	}
	.open_test .sub_ttl {
	    color: #062f8c;
	    font-size: 40.5px;
	    text-align: center;
	    font-weight: bold;
		letter-spacing:0.05em;
	}
	.open_test .content_area {
	    width: 93%;
	    margin: 0 auto;
	    box-sizing: border-box;
	    border: 7.5px solid #062f8c;
	    background: #fff;
	    padding: 45px 22.5px;
	}				
	.open_test .content_area .main_ttl {
	    color: #062f8c;
	    font-size: 60px;
		padding:0 0 7.5px;
		letter-spacing:0.05em;
	}				
	.open_test .content_area .content_box .img_block01 {
	    padding: 0 52.5px 37.5px;
	}				
	.open_test .content_area .content_box .txt01 {
	    font-size: 30px;
	    padding: 0 0 22.5px 0;
	}				
	.open_test .content_area .content_box .anno {
	    font-size: 22.5px;
	}				
	/*▲オープン模試ver2505*/

	/*▼自習スペース*/
	.self_study {
	    background:#c5e8fa;
	    padding: 0 0 75px;
	}
	.self_study .sub_ttl {
	    color: #062f8c;
	    font-size: 40.5px;
	    text-align: center;
	    font-weight: bold;
	}
	.self_study .content_area {
	    width: 93%;
	    margin: 0 auto;
	    box-sizing: border-box;
	    border: 7.5px solid #062f8c;
	    background: #fff;
	    padding: 45px 22.5px;
	}				
	.self_study .content_area .main_ttl {
	    color: #062f8c;
	    font-size: 60px;
	    padding:0 0 7.5px;
		letter-spacing:0.05em;
	}				
	.self_study .content_area .content_box .img_block01 {
	    padding: 0 52.5px 37.5px;
	}				
	.self_study .content_area .content_box .txt01 {
	    font-size: 30px;
	    padding: 0 0 22.5px 0;
	}				
	.self_study .content_area .content_box .anno {
	    font-size: 22.5px;
	}				
	/*▲自習スペース*/

	/*▼オーダーメイド受験対策*/
	.custom_made {
	    background:#c5e8fa;
	    padding: 0 0 90px;
	}
	.custom_made .sub_ttl {
	    color: #062f8c;
	    font-size: 37.5px;
	    text-align: center;
	    font-weight: bold;
		letter-spacing:0.05em;
	}
	.custom_made .content_area {
	    width: 93%;
	    margin: 0 auto;
	    box-sizing: border-box;
	    border: 7.5px solid #062f8c;
	    background: #fff;
	    padding: 45px 22.5px;
	}				
	.custom_made .content_area .main_ttl {
	    color: #062f8c;
	    font-size: 52.5px;
	    padding:0 0 7.5px;
	}				
	.custom_made .content_area .content_box .img_block01 {
	    padding: 0 52.5px 37.5px;
	}				
	.custom_made .content_area .content_box .txt01 {
	    font-size: 30px;
	    padding: 0 0 22.5px 0;
	}				
	.custom_made .content_area .content_box .anno {
	    font-size: 22.5px;
	}				
	/*▲オーダーメイド受験対策*/

	/*▼目的に合わせて夏期講習を活用*/
	.purpose {
	    background: #c5e8fa;
	    padding: 75px 0 60px;
	}
	.purpose .inner {}
	.purpose .purpose_area {
	    background: #fff;
	    border-radius: 14px;
		padding:45px 0 45px;
	}
	.purpose .purpose_area .purpose_ttl {
	    width: 92%;
	    margin: 0 auto;
	    padding: 0 0 30px;
	}
	.purpose .purpose_area .purpose_list{
		padding:0 22.5px 37.5px;
	}
	.purpose .purpose_area .purpose_list .img_block{
		padding: 0 0 22.5px;
	}
	.purpose .purpose_area .purpose_txt{
		text-align:center;
		font-size:36px;
		color:#000;
		font-weight:bold;
		line-height:1.6;
	}
	/*▲目的に合わせて夏期講習を活用*/

	/*▼夏期講習で新学期からのテスト点数が上がるポイント*/
	.scoreup {
	    background: #c5e8fa;
	    padding: 45px 0 105px;
	}
	.scoreup .inner {}
	.scoreup .scoreup_area {
	    background: #fff;
	    border-radius: 14px;
		padding:45px 0 45px;
	}
	.scoreup .scoreup_area .scoreup_ttl {
	    width: 92%;
	    margin: 0 auto;
	    padding: 0 0 52.5px;
	}
	.scoreup .scoreup_area .scoreup_list{
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(1),
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(2){
		border-bottom:1px solid #062F8C;
		padding-bottom: 30px;
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(2),
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box:nth-child(3){
		padding-top:30px;
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box{
		width:92%;
		margin:0 auto;
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box .img_block01 {
	    width: 24%;
	    margin: 0 auto;
	    padding: 0 0 30px;
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box .icon_txt_block{
		display:flex;
		justify-content:space-between;
		align-items:center;
		padding:0 0 0 30px;
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box .icon_txt_block .img_block02{
		flex:1;
		padding:0 30px 0 0;
	}
	.scoreup .scoreup_area .scoreup_list .scoreup_list_box .icon_txt_block .txt{
		flex:4;
		font-size:34px;
		color:#333;
		font-weight:bold;
		line-height:1.4;
	}
	/*▲夏期講習で新学期からのテスト点数が上がるポイント*/

	/*～～～～～～～～～～～～～～～～～～～～～～～
		▼CTA TOP v3（2508）
	～～～～～～～～～～～～～～～～～～～～～～～*/
	.ctatop_v3{
		padding:0 0 75px;
	}
	.ctatop_v3__bg {}
	.ctatop_v3 .ctatop_v3__wrap {}
	.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock {
		padding: 0 0 62px;
	}
	.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock .ctatop_v3__bnr{
		padding: 0 0 22px;
	}
	.ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock .ctatop_v3__bnr .img_block{
	}
    
    .ctatop_v3 .ctatop_v3__wrap .ctatop_v3__bnrblock .ctatop_v3__bnrblock_note{
        font-size: 19px;
        padding: 0 60px;
    }
	
	/*アコーディオンコテンツ内 初期非表示*/
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content {display:none;}
	
	/*▼アコーディオン*/
	.ctatop_v3 .ctatop_v3__accordion {
	    border: 6px solid #005DAD;
	    border-radius: 18px;
	    margin: 0 22.5px;
		padding: 15px 0 19.5px;
	}
	/*ボタン直情テキスト*/
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_txt {
		text-align:center;
		font-size:28px;
		font-weight:bold;
		color:#005DAD;
		line-height:1.4;
		padding: 0 0 16px;
	}

	/*トグルボタン*/
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 {}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01:hover {}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn {
		position:relative;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .txt{
		display:block;
		font-size:30px;
		font-size:27px;
		font-weight:bold;
		color:#545454;
		text-align:center;
		padding: 6px 0 3px;
		padding: 0;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .txt .txt_sup{
		font-size: 60%;
	    vertical-align: super;
	}

	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .open::before{
		display:none;
	}/*デフォ△非表示*/
	
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .close {
		position:relative;
	    display: block;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn .close::before {
	    display: block;
	    position: absolute;
	    content: '';
	    top: -42px;
	    right: 15px;
	    width: 20px;
	    height: 20px;
	    border-top: 3px solid #F18B00;
	    border-right: 3px solid #F18B00;
	    transform: rotate(135deg);
	}
	/*最初　閉じた状態*/

	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn.active .open {
		position:relative;
	    display: block;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn.active .open::before {
	    display: block;
	    position: absolute;
	    content:'';
	    top: -27px;
	    right: 15px;
	    width: 20px;
	    height: 20px;
	    border-top: 3px solid #F18B00;
	    border-right: 3px solid #F18B00;
	    transform: rotate(-45deg);
	}
	/*アクション後　開いた状態*/
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_toggle01 .ctatop_v3__accordion_btn.active .close::before{
		display:none;
	}/*デフォ▽非表示*/
	
	/*内部コンテンツ*/
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content{
		padding: 45px 0 0;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .subttl{
	    font-size: 38px;
	    color: #005DAD;
	    font-weight: bold;
	    text-align: center;
	    padding: 0 0 15px;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .img_block02{
	    width: 88%;
	    margin: 0 auto;
	    padding: 0 0 30px;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .img_block03{
		padding: 0 0 60px;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .img_block04{
	    width: 88%;
	    margin: 0 auto;
	    padding: 0 0 30px;
	}
	.ctatop_v3 .ctatop_v3__accordion .ctatop_v3__accordion_content .anno{
	    color: #545454;
	    font-size: 22px;
	    padding: 0 22.5px 0 22.5px;
	    line-height: 1.4;
	}

	/*▲アコーディオン*/
	





		/*▼小学生訴求*/
	.ctatop_v3 .ctatop_v3__primary{
	    border: 6px solid #005DAD;
	    border-radius: 18px;
	    margin: 30px 22.5px 0;
		padding: 22.5px 0 30px;
	}
	.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl01{
		text-align:center;
		font-size:28px;
		font-weight:bold;
		color:#005DAD;
		line-height:1.4;
		padding: 0 0 16px;
	}
	.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl02{
		display:flex;
		justify-content: center;
		align-items: center;
		padding: 0 30px 0 30px;
	}
	.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl02 .ctatop_v3__primary_ttl02_01 {
	    display: block;
	    font-size: 44px;
	    font-weight: bold;
	    color: #545454;
	    text-align: center;
	    padding: 0;
	    letter-spacing: 0.05em;
	    flex: 10;
	}
	.ctatop_v3 .ctatop_v3__primary .ctatop_v3__primary_ttl02 .ctatop_v3__primary_ttl02_02 {
		display:block;
	    color: #595757;
	    font-weight: bold;
	    font-size: 22px;
	    box-sizing: border-box;
	    border: 2px solid #F18B00;
	    border-radius: 6px;
	    padding: 3px 15px 3px 15px;
	    flex: 2.4;
	    line-height: 1.2;
	    text-align: center;
	}
		/*▲小学生訴求*/







	/*CTA部分*/
	.ctatop_v3 .ctatop_v3__ctablock {}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__txt01 {
	    text-align: center;
	    font-size: 30px;
	    font-weight: bold;
	    padding: 0 0 15px;
	    color: #545454;
	}
	/*赤字*/
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__txt01 .red {
		color:#D52223;
	}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__cvbtn{}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__cvbtn .img_block {
	    margin: 0 60px 30px;
	}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__doc {
		position: relative;
	    font-size: 32px;
	    font-weight: bold;
	    text-align: center;
	    margin: 20px 0;
	}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__doc .ctatop_v3__doc_link {
		position: relative;
	    display: inline-block;
	    border-bottom: 1px solid #545454;
		color:#545454;
	}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__doc .ctatop_v3__doc_link::before {
	    position: absolute;
	    top: 0;
	    left: -30px;
	    content: "";
	    display: inline-block;
	    width: 20px;
	    height: 50px;
	    background: url(../img/cta_link_deco.png) no-repeat;
	    background-size: contain;
	}
	.ctatop_v3 .ctatop_v3__ctablock .ctatop_v3__ctablock_anno {
		font-size: 22px;
	    color: #545454;
	    padding: 0 22.5px;
	    line-height: 1.4;
	}

	/*～～～～～～～～～～～～～～～～～～～～～～～
		▲CTA TOP v3（2508）
	～～～～～～～～～～～～～～～～～～～～～～～*/


	/*～～～～～～～～～～～～～～～～～～～～～～～
		▼CTA_v3（2508）
	～～～～～～～～～～～～～～～～～～～～～～～*/
	.cta_v3 {
		background: #3471EA;
		padding:75px 0 75px;
	}
	.cta_v3 .inner{}
	.cta_v3 .cta_wrap{
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01{
		background:#fff;
		margin:0 0 45px;
		padding:25.5px 0 30px;
		border-radius: 18px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .cta_wrap_cont01_ttl {
	    font-weight: bold;
	    color: #005DAD;
	    text-align: center;
	    padding: 0 0 30px;
	    font-size: 28px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block01{
		padding: 0 0 60px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .subttl {
	    font-size: 38px;
	    color: #005DAD;
	    font-weight: bold;
	    text-align: center;
	    padding: 0 0 15px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block02 {
	    width: 88%;
	    margin: 0 auto;
	    padding: 0 0 30px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block03{
		padding: 0 0 60px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .img_block04{
	    width: 88%;
	    margin: 0 auto;
	    padding: 0 0 30px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont01 .anno {
	    color: #545454;
	    font-size: 22px;
	    padding: 0 22.5px 0 22.5px;
	    line-height: 1.4;
	}

	.cta_v3 .cta_wrap .cta_wrap_cont02{
		background:#fff;
		padding: 15px 0 0;
		margin:0 0 30px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_txt01{
	    text-align: center;
	    font-size: 28px;
	    font-weight: bold;
	    padding: 0 0 7.5px;
	    color: #545454;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_txt01 .red{color: #D52223;}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_cvbtn{
		padding:0 0 10.5px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_cvbtn .img_block {
	    width: 92%;
	    margin: 0 auto;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_txt02{
	    font-size: 28px;
	    font-weight: bold;
	    text-align: center;
		padding: 0 0 10.5px;
		letter-spacing:0.05em;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel{
		background: url(../img/cta_tel_bg.png);
		font-size: 26px;
		padding: 18px 0 30px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .txt01{
	    font-size: 28px;
	    font-weight: bold;
	    text-align: center;
		letter-spacing:0.05em;
		padding: 0 0 10.5px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .img_block01 {
	    width: 88%;
	    margin: 0 auto 10.5px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .txt02 {
	    font-size: 26px;
	    text-align: center;
	    padding: 0 0 22.5px;
	}
	.cta_v3 .cta_wrap .cta_wrap_cont02 .cta_wrap_cont02_tel .img_block02 {
	    width: 46%;
	    margin: 0 auto;
	}
	.cta_v3 .cta_v3_anno {
		color: #fff;
	    font-size: 22px;
	    line-height: 1.4;
	}

	/*～～～～～～～～～～～～～～～～～～～～～～～
		▲CTA_v3（2508）
	～～～～～～～～～～～～～～～～～～～～～～～*/

	/*▼スクールIEに通って起きる変化（2506）*/
	.change {
	    background: #c5e8fa;
	    padding: 60px 0 0;
	}
	.change .inner{}
	.change .change_box{
		background:#fff;
		padding: 30px 0 30px;
		border-radius: 14px;
	}
	.change .change_box .img_block01{
		width:94%;
		margin:0 auto;
	}
	.change .change_box .img_block02{
		width:92%;
		margin:0 auto;
		padding: 0 0 37.5px;
	}
	.change .change_box .img_block03{
		width:92%;
		margin:0 auto;
	}
	/*▲スクールIEに通って起きる変化（2506）*/

	/*▼SP下部固定ボタンリニューアル（2604）*/
	.footer_nav_v3 {
		width: 750px;
		height: 168px;
	}
	.footer_nav_v3 .footer_nav_bg {
		display: flex;
		justify-content: space-between;
		align-items: center;
		position: fixed;
		z-index: 1000;
		bottom: 0;
		left: 0;
		right: 0;
		width: 750px;
		height: 168px;
		padding: 0 30px;
		margin: 0 auto;
		border-top: solid 1px #e6e8ec;
		background: #fff;
	}
	.footer_nav_v3 .footer_nav_btn01 {width: 366px;}
	.footer_nav_v3 .footer_nav_btn02 {width: 136px;}
	.footer_nav_v3 .footer_nav_btn03 {width: 136px;}
	/*▲SP下部固定ボタンリニューアル（2604）*/

	/*▼MV直下テキスト*/
	.hero_message_v2 {
		color: #005dad;
		padding: 30px 0 45px;
	}	
	.hero_message_v2 .txt01 {
		text-align: center;
		font-weight: bold;
		font-size: 36px;
		letter-spacing: 0.05em;
		padding: 0 0 15px;
	}
	.hero_message_v2 .txt02{
		text-align: center;
		font-size: 32px;
		line-height:1.4;
	}
	/*▲MV直下テキスト*/		

}



.pc-right{
    width: calc((100% - 750px) / 2);
    height: 100%;
    position: fixed;
    top: 0;
    right: 0;
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
}

.pc-right img{
    max-width: 332px;
}

.solution{
    background: #fff9be;
    padding: 0 30px;
}

.solution dl{
    width: 100%;
}

.solution dl div + div{
    margin-top: 40px;
}

.solution dl div dt img{
    width: 205px;
}

.solution dl div dt span{
    width: 100%;
    background: #c81019;
    padding: 24px 0;
    font-size: 0.38rem;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    color: #fff;
    display: block;
}

.solution dl div dd{
    width: 100%;
    padding: 44px 30px 56px;
    background: #fff;
    font-size: 0.25rem;
    font-weight: 500;
    line-height: 1.77;
    color: #4d4d4d;
}

.solution dl div dd img{
    margin-bottom: 38px;
}

.personality{
    padding-bottom: 114px;
}

.personality .txt{
    font-size: 0.3rem;
    font-weight: 500;
    line-height: 1.65625;
    text-align: center;
    margin: 50px 0 70px;
}

.personality a{
    width: 640px;
    display: table;
    margin: 0 auto;
}

.compare02 dl{
    padding: 0 28px;
}

.compare02 dl div + div{
    margin-top: 20px;
}

.compare02 dl div dt{
    font-size: 0.36rem;
    font-weight: bold;
    line-height: 1.25;
    color: #fff;
    padding: 40px 30px;
    background: #cd1a19;
    border-radius: 8px;
    position: relative;
    cursor: pointer;
}

.compare02 dl div dt.active{
    border-radius: 8px 8px 0 0;
}

.compare02 dl div dt::before{
    content: "";
    background: url("../img/arrow01.png") center no-repeat;
    background-size: contain;
    width: 29px;
    height: 21px;
    position: absolute;
    top: 50%;
    right: 27px;
    transform: translateY(-50%);
}

.compare02 dl div dt.active::before{
    transform: translateY(-50%) rotate(180deg);
}

.compare02 dl div dd{
    padding: 20px 30px 40px;
    background: #fff;
    border-radius: 0 0 8px 8px;
    display: none;
}

.compare02 dl div:first-child dd{
    display: block;
}

.compare02 dl div dd h3{
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 25px;
}

.compare02 dl div dd h3 img{
    width: 77px;
}

.compare02 dl div dd h3 span{
    font-size: 0.34rem;
    font-weight: bold;
    line-height: 1.25;
    color: #cd1a19;
    padding: 14px 0;
    border-bottom: 2px solid #cd1a19;
    width: 100%;
    text-align: left;
}

.compare02 dl div dd p{
    font-size: 0.27rem;
    line-height: 1.5357;
    color: #4d4d4d;
    width: 100%;
    text-align: left;
}

.compare02 dl div dd p sup{
    font-size: 60%;
    vertical-align: top;
}

.compare02 dl div dd p small{
    font-size: 60%;
    display: block;
}

.compare02 dl div dd h4{
    font-size: 0.23rem;
    font-weight: 500;
    line-height: 1;
    color: #fff;
    background: #4d4c4c;
    padding: 8px 0;
    width: 100%;
    margin: 40px 0 18px;
}

.compare02 dl div dd p strong{
    font-size: 0.34rem;
    font-weight: 500;
    line-height: 1;
    display: block;
    color: #4d4d4d;
    text-align: left;
    margin-bottom: 15px;
}

.compare02 .movie{
    padding: 0 30px 152px;
    background: #d2ecfb;
}

.curriculum .tabcontent h3{
    width: 100%;
    font-size: 0.34rem;
    font-weight: 500;
    text-align: center;
    color: #fff;
    background: #e83726;
    padding: 25px 0;
}

.curriculum .tabcontent ul{
    width: 100%;
    padding: 48px 58px 56px;
}

.curriculum .tabcontent ul li{
    background: url("../img/check01.svg") no-repeat center left;
    background-size: 27px auto;
    padding-left: 55px;
    font-size: 0.31rem;
    font-weight: 500;
    line-height: 1.8125;
}

.curriculum .tabcontent ul li small{
    font-size: 75%;
}

@media screen and (max-width:750px){

.solution{
    padding: 0 4vw;
}

.solution dl div + div{
    margin-top: 5.33vw;
}

.solution dl div dt img{
    width: 27.33vw;
}

.solution dl div dt span{
    padding: 3.2vw 0;
    font-size: 5.067vw;
}

.solution dl div dd{
    padding: 5.867vw 4vw 7.467vw;
    font-size: 3.33vw;
}

.solution dl div dd img{
    margin-bottom: 5.067vw;
}

.personality{
    padding-bottom: 15.2vw;
}

.personality .txt{
    font-size: 4vw;
    margin: 6.67vw 0 9.33vw;
}

.personality a{
    width: 85.33vw;
}

.compare02 dl{
    padding: 0 3.733vw;
}

.compare02 dl div + div{
    margin-top: 2.67vw;
}

.compare02 dl div dt{
    font-size: 4.8vw;
    padding: 5.33vw 4vw;
    border-radius: 1.067vw;
}

.compare02 dl div dt.active{
    border-radius: 1.067vw 1.067vw 0 0;
}

.compare02 dl div dt::before{
    width: 3.867vw;
    height: 2.8vw;
    right: 3.6vw;
}

.compare02 dl div dd{
    padding: 2.67vw 5vw 5.33vw;
    border-radius: 0 0 1.067vw 1.067vw;
}

.compare02 dl div dd h3{
    gap: 1.867vw;
    margin-bottom: 3.33vw;
}

.compare02 dl div dd h3 img{
    width: 10.267vw;
}

.compare02 dl div dd h3 span{
    font-size: 4.533vw;
    padding: 2.133vw 0;
    border-bottom: 0.267vw solid #cd1a19;
}

.compare02 dl div dd p{
    font-size: 3.6vw;
}

.compare02 dl div dd h4{
    font-size: 3.067vw;
    padding: 1.067vw 0;
    margin: 5.33vw 0 2.4vw;
}

.compare02 dl div dd p strong{
    font-size: 4.533vw;
    margin-bottom: 2vw;
}

.compare02 .movie{
    padding: 0 4vw 20.267vw;
}

.curriculum .tabcontent h3{
    font-size: 4.533vw;
    padding: 3.33vw 0;
}

.curriculum .tabcontent ul{
    padding: 6.4vw 7.733vw 7.467vw;
}

.curriculum .tabcontent ul li{
    background-size: 3.6vw auto;
    padding-left: 7.33vw;
    font-size: 4.133vw;
}

}

@media screen and (max-width:1506px){
    .pc-right {
        display: none;
    }
}