@charset "utf-8";

/* -----------------------------------------------------------
                コース一覧
-------------------------------------------------------------- */


/*    course-area
-------------------------------------------------------------- */

#course.index .title-wrapper .section-title {
	display: none;
}

#course.index .title-wrapper .catch-block {
	text-align: center;
	width: 100%;
}

.course-top-area {
	background: #f9f9f9;
	padding: 80px 0 90px;
}

.course-top-area .title-wrapper {
	margin: 0 0 60px;
}

.course-top-area .title-wrapper .inner {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.course-top-area .title-wrapper .inner .catch-block {
	text-align: right;
}

.course-top-area .title-wrapper .inner .catch-block .section-catch {
	margin: 0 0 10px;
	line-height: 1.5;
}

.course-top-area .title-wrapper .inner .catch-block .txt {
	line-height: 1.8;
}


/* content-wrapper */

/*20241023 中学受験対策追加に伴う修正*/
.course-top-area .content-wrapper {
	display: flex;
	justify-content: center;
	margin: 0 0 50px;
	flex-wrap: wrap;
	gap: 30px 50px;
}


/* content-wrapper > content */

.course-top-area .content-wrapper .content {
	background: #fff;
	width: 280px;
	/* width: 370px; */
	overflow: hidden;
	position: relative;
	cursor: pointer;
	box-shadow: 10px 20px 30px rgba(0, 0, 0, .1);
}

.course-top-area .content a {
	display: block;
}

.course-top-area .content a:hover .content-bg {
	transform: scale(1.05);
}


/* -----content-body-top ----- */

.course-top-area .content-body-top {
	background: #fff;
	text-align: center;
	padding: 25px 15px 30px;
}


/* content-body-top > title */

.course-top-area .content-title {
	font-size: 2.7rem;
	line-height: 1.5;
	color: #c65252;
	margin: 0 0 10px;
}

/* 中学受験 20241023*/

.course-top-area .content.chuugaku-juken .content-title {
	color: #CC6F38;
}

/* 中学生 */

.course-top-area .content.junior .content-title {
	color: #42a79a;
}


/* 高校生 */

.course-top-area .content.high .content-title {
	color: #5289c6;
}

/* 浪人生 */

.course-top-area .content.cram .content-title {
	color: #264D7A;
}


/* content-body-top > catch */

.course-top-area .content-catch {
	font-size: 2rem;
	line-height: 1.4;
}


/*  -----content-body-bottom ----- */

.course-top-area .content-body-bottom {
	background: #f2f2f2;
	text-align: center;
	padding: 25px 30px 5px;
	position: relative;
}

.course-top-area .content-body-bottom .tag {
	width: 67px;
	background: #c65252;
	border-radius: 50px;
	font-size: 1.4rem;
	text-align: center;
	color: #fff;
	position: absolute;
	top: -8px;
	left: 50%;
	transform: translateX(-50%);
}

/* 中学受験 20241023 */

.course-top-area .content.chuugaku-juken .content-body-bottom .tag {
	background: #CC6F38;
}


/* 中学生 */

.course-top-area .content.junior .content-body-bottom .tag {
	background: #42a79a;
}


/* 高校生 */

.course-top-area .content.high .content-body-bottom .tag {
	background: #5289c6;
}

/* 浪人生 */

.course-top-area .content.cram .content-body-bottom .tag {
	background: #264D7A;
}

.course-top-area .content-body-bottom .content-title {
	font-size: 1.6rem;
}


/*  -----content-bg ----- */

.course-top-area .content-bg {
	width: 100%;
	height: 220px;
	background: url(/vendor/juku-demo/control/img/img-course1.jpg) no-repeat center / cover;
	position: relative;
	z-index: 0;
	transition: .3s ease-in-out;
	overflow: hidden;
}

.course-top-area .content-bg:hover {
	transform: scale(1.05);
}

/* 中学受験　20241023 */

.course-top-area .content-bg.style-chuugaku-juken {
	background-image: url(/vendor/juku-demo/control/img/img-course-juken.jpg);
}

/* 中学生 */

.course-top-area .content-bg.style-junior {
	background-image: url(/vendor/juku-demo/control/img/img-course2.jpg);
}


/* 高校生 */

.course-top-area .content-bg.style-high {
	background-image: url(/vendor/juku-demo/control/img/img-course3.jpg);
}

/* 浪人生 */

.course-top-area .content-bg.style-cram {
	background-image: url(/vendor/juku-demo/control/img/img-course5.jpg);
}


/*  -----オンライン個別指導 ----- */

.course-top-area .content.online {
	box-shadow: 10px 20px 30px rgba(0, 0, 0, .1);
}

.course-top-area .content.online .content-body {
	width: calc(100% - 800px);
	/*
  height: 220px;
	*/
	float: left;
}

.course-top-area .content.online .content-bg.style-online {
	background-image: url(/vendor/juku-demo/control/img/img-course4.jpg);
	height: 250px;
}

.course-top-area .content.online .content-title {
	color: #49a742;
}

.course-top-area .content.online .content-body-bottom .tag {
	background: #49a742;
}

.course-top-area .content.online .bg-wrap {
	width: 800px;
	position: relative;
	overflow: hidden;
	float: left;
}

/*  -----オンライン予備校 ----- */

.course-top-area .content.online.yobiko {
	margin: 50px 0 0;
}

.course-top-area .content.online.yobiko .content-bg.style-online {
	background-image: url(/vendor/juku-demo/control/img/img-course6.jpg);
	height: 250px;
}

/*  -----オンライン小学生 ----- */
.course-top-area .content.online.elementary {
	margin: 50px 0 0;
}

.course-top-area .content.online.elementary .content-bg.style-online {
	background-image: url(/vendor/juku-demo/control/img/img-course7.jpg);
	height: 250px;
}

/* 20260529 ここから学習ラウンジ追加 */
.course-top-area .content.online.lounge .content-title {
    color: var(--lounge);
}
.course-top-area .content.online.lounge .content-body-bottom .tag {
    background: var(--lounge);
}
/* 20260529 ここまで学習ラウンジ追加 */

@media screen and (max-width: 768px) {
	.course-top-area {
		/*padding: 40px 0 60px 20px;*/
		padding: 0 0 60px 0;
	}
	#course.index .course-top-area {
		/*padding: 10px 0 60px 20px;*/
	}

	.course-top-area .title-wrapper {
		margin: 0 0 30px;
	}
	.course-top-area .title-wrapper .inner {
		display: block;
	}
	.course-top-area .title-wrapper .inner .catch-block {
		text-align: left;
	}
	.course-top-area .title-wrapper .inner .catch-block .section-catch {
		margin: 20px 20px 10px 0;
	}
	.course-top-area .title-wrapper .inner .catch-block .txt {
		line-height: 1.8;
		padding: 0 20px 0 0;
		text-align: left;
	}
	/* content-wrapper */
	.course-top-area .content-wrapper {
		display: block;
		margin: 0 0 30px;
	}
	/* content-wrapper > content */
	.course-top-area .content-wrapper .content {
		width: 100%;
		margin: 0 0 20px;
	}
	.course-top-area .content a {
		width: 100%;
		display: flex;
		justify-content: space-between;
		flex-direction: row-reverse;
	}
	.course-top-area .content a:hover .content-bg {
		transform: none;
	}
	.course-top-area .content a .content-body {
		width: 100%;
	}
	/* -----content-body-top ----- */
	.course-top-area .content-body-top {
		text-align: left;
		padding: 15px 10px 20px 20px;
	}
	/* content-body-top > title */
	.course-top-area .content-title {
		font-size: 2.2rem;
		margin: 0;
	}
	/*  -----content-body-bottom ----- */
	.course-top-area .content-body-bottom {
		width: 100%;
		display: block;
		text-align: left;
		padding: 25px 10px 10px 20px;
	}
	.course-top-area .content-body-bottom .tag {
		top: -8px;
		left: 15px;
		transform: none;
		line-height: 1.5;
	}
	.course-top-area .content-body-bottom .content-title {
		font-size: 1.4rem;
	}
	/*  -----content-bg ----- */
	.course-top-area .content-bg {
		width: 150px;
		height: auto;
		background: url(/vendor/juku-demo/control/img/img-course1-sp.jpg) no-repeat center center / cover;
		position: static;
	}
	/* 中学生 */
	.course-top-area .content-bg.style-junior {
		background-image: url(/vendor/juku-demo/control/img/img-course2-sp.jpg);
		background-position: right center;
	}
	/* 高校生 */
	.course-top-area .content-bg.style-high {
		background-image: url(/vendor/juku-demo/control/img/img-course3-sp.jpg);
	}
	.course-top-area .content-bg:hover {
		transform: none;
	}
	/*  -----オンライン個別指導 ----- */
	.course-top-area .content.online .content-body {
		width: 100%;
		height: auto;
		float: none;
	}
	.course-top-area .content.online .content-bg.style-online {
		background-image: none;
		height: auto;
	}
	.course-top-area .content.online .bg-wrap {
		width: 150px;
		height: auto;
		float: none;
		background: url(/vendor/juku-demo/control/img/img-course4-sp.jpg) no-repeat center center / cover;
	}
	.course-top-area .content.online .content-body-top {
		padding: 15px 10px 20px 20px;
	}
	.course-top-area .content.online .content-body-bottom {
		padding-top: 20px;
		padding-bottom: auto;
	}
	/*  -----オンライン予備校 ----- */
	.course-top-area .content.online.yobiko .bg-wrap {
		width: 150px;
		height: auto;
		float: none;
		background: url(/vendor/juku-demo/control/img/img-course6-sp.jpg) no-repeat center center / cover;
	}
	.course-top-area .content.online.yobiko .content-bg.style-online {
		background-image: none;
		height: auto;
	}
    
    /*  -----オンライン小学生 ----- */
	.course-top-area .content.online.elementary .bg-wrap {
		width: 150px;
		height: auto;
		float: none;
		background: url(/vendor/juku-demo/control/img/img-course7-sp.jpg) no-repeat center center / cover;
	}
	.course-top-area .content.online.elementary .content-bg.style-online {
		background-image: none;
		height: auto;
	}
}


/* -----------------------------------------------------------
                コース詳細　共通
-------------------------------------------------------------- */


/* h1 */

#course-detail .h1-area {
	top: 45px;
	right: 25px;
}


/* breadcrumblist */

#course-detail .breadcrumblist {
	position: relative;
	top: 40px;
	left: 15px;
	padding: 0;
}

#course-detail.high .breadcrumblist,
#course-detail.high .breadcrumblist a {
	color: #fff;
}


/* pagetitle-area */

#course-detail {
	margin: 85px 0 0;
}

#course-detail .pagetitle-area {
	width: 100%;
	height: 550px;
	background: url(/vendor/juku-demo/control/img/bg-course-elementary.jpg) no-repeat left top / cover;
	padding: 0;
}
#course-detail.chuugaku-juken .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-chuugaku-juken.jpg);
	background-position: center top;
}
#course-detail.junior .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-junior.jpg);
	background-position: right top;
}
#course-detail.high .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-high.jpg);
}
#course-detail.cram .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-cram.jpg);
}
#course-detail.online .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-online.jpg);
	background-position: right center;
}

#course-detail.online.yobiko .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-yobiko.jpg);
}

#course-detail.online.elementary .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-online-elementary.jpg);
}

#course-detail.online.online-junior .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-online-junior.jpg);
}

#course-detail.online.online-high .pagetitle-area {
	background-image: url(/vendor/juku-demo/control/img/bg-course-online-high.jpg);
}


#course-detail .pagetitle-area .pagetitle-box {
	width: 330px;
	height: 330px;
	background: #c65252;
	position: relative;
	left: 40px;
	top: 110px;
	display: flex;
	align-items: center;
}
#course-detail.chuugaku-juken .pagetitle-area .pagetitle-box {
	background: #CC6F38;
}
#course-detail.junior .pagetitle-area .pagetitle-box {
	background: #42a79a;
}
#course-detail.high .pagetitle-area .pagetitle-box {
	background: #5289c6;
}
#course-detail.cram .pagetitle-area .pagetitle-box {
	background: #264D7A;
}
#course-detail.online .pagetitle-area .pagetitle-box {
	background: #49a742;
}

#course-detail .pagetitle-area .pagetitle-box .pagetitle-box-inner {
	padding: 0 40px;
}

#course-detail .pagetitle-area .pagetitle-box .title-big {
	color: #fff;
	font-size: 4.4rem;
	font-weight: bold;
	line-height: 1.3;
	margin: 0 0 10px;
}
#course-detail .pagetitle-area .pagetitle-box .title-big.big02 {
	font-size: 4rem;
}
#course-detail .pagetitle-area .pagetitle-box .title-small {
	color: #fff;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.8;
}



@media screen and (max-width: 768px) {
	/* h1 */
	#course-detail .h1-area {
		position: static;
		text-align: left;
		top: 0;
	}
	/* breadcrumblist */
	#course-detail .breadcrumblist {
		display: none;
	}

	/* pagetitle-area */
	#course-detail {
		margin: 0;
	}

	#course-detail .pagetitle-area {
		height: auto;
		background-position: center top;
		background-size: auto 250px;
		position: relative;
	}
	#course-detail.junior .pagetitle-area {
		background-position: right top;
	}
	#course-detail.high .pagetitle-area {
	}
	#course-detail.online .pagetitle-area {
		background-position: left -185px top;
	}
	
	#course-detail.online.yobiko .pagetitle-area {
		background-image: url(/vendor/juku-demo/control/img/bg-course-yobiko-sp.jpg);
		background-position: left top;
	}
    
    #course-detail.online.elementary .pagetitle-area {
		background-image: url(/vendor/juku-demo/control/img/bg-course-online-elementary-sp.jpg);
		background-position: left top;
	}

	#course-detail.online.online-junior .pagetitle-area {
		background-image: url(/vendor/juku-demo/control/img/bg-course-online-junior-sp.jpg);
		background-position: left top;
	}
	
	#course-detail.online.online-high .pagetitle-area {
		background-image: url(/vendor/juku-demo/control/img/bg-course-online-high-sp.jpg);
		background-position: left top;
	}

	#course-detail .pagetitle-area .pagetitle-box {
		position: static;
		width: auto;
		height: auto;
		left: auto;
		top: auto;
		display: block;
		margin: 205px 0 0 20px;
	}

	#course-detail .pagetitle-area .pagetitle-box .pagetitle-box-inner {
		padding: 15px 20px;
		position: relative;
	}

	#course-detail .pagetitle-area .pagetitle-box .title-big {
		font-size: 2.4rem;
		margin: 0 0 0;
	}
	#course-detail .pagetitle-area .pagetitle-box .title-big.big02 {
		font-size: 2.4rem;
	}
	#course-detail .pagetitle-area .pagetitle-box .title-small {
		line-height: 1.6;
	}

}


/* -----------------------------------------------------------
                コース詳細　top-area
-------------------------------------------------------------- */

#course-detail .top-area {
	padding: 70px 0;
}

#course-detail .top-in-wrapper {
	display: flex;
	padding: 0 0 0 80px;
}

#course-detail .top-in-wrapper .img-block {
	padding: 10px 0 0;
	margin: 0 50px 0 0;
}

#course-detail .top-in-wrapper .txt-block .catch {
	font-size: 3rem;
	font-weight: bold;
	line-height: 1.6;
	margin: 0 0 10px;
}

#course-detail .top-in-wrapper .txt-block .list li {
	font-weight: 500;
	position: relative;
	line-height: 2.2;
	padding: 0 0 0 25px;
}

#course-detail .top-in-wrapper .txt-block .list li::before {
	content: "\f00c";
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	font-size: 2rem;
	position: absolute;
	top: -4px;
	left: 5px;
	color: #516976;
}

@media screen and (max-width: 768px) {
	#course-detail .top-area {
		/*padding: 30px 0 10px;*/
		padding: 40px 0 0;
	}
	#course-detail .top-in-wrapper {
		display: block;
		padding: 0 20px;
		position: relative;
	}
	#course-detail .top-in-wrapper .img-block {
		position: absolute;
		top: -10px;
		left: 190px;
		padding: 0;
		margin: 0 0;
		width: 110px;
	}
	#course-detail .top-in-wrapper .img-block img {
		width: 100%;
	}
	#course-detail .top-in-wrapper .txt-block .catch {
		font-size: 2.2rem;
	}
	#course-detail .top-in-wrapper .txt-block .list li {
		font-feature-settings: "palt";
		line-height: 1.6;
		padding: 0 0 0 25px;
		margin: 0 0 20px;
	}
	#course-detail .top-in-wrapper .txt-block .list li::before {
		font-size: 1.6rem;
		top: -2px;
		left: 0px;
	}
}


/* -----------------------------------------------------------
                    detail-area
-------------------------------------------------------------- */

#course-detail .detail-area {
	background: #f0e5e6;
	padding: 80px 0 90px;
}
#course-detail.junior .detail-area {
	background: #fceedc;
}
#course-detail.high .detail-area {
	background: #cde1f7;
}
#course-detail.cram .detail-area {
	background: #d6d9db;
}
#course-detail.online .detail-area {
	background: #c7dec5;
}
#course-detail.online #tab2-box .detail-area {
	background: #DBC0AD;
}

#course-detail .detail-area .catch-block {
	margin: 0 30px 70px;
}

#course-detail .detail-area .catch-block .catch {
	text-align: center;
	font-weight: bold;
	font-size: 3.2rem;
	line-height: 1.6;
	margin: 0 0 40px;
}

#course-detail .detail-area .card-wrapper {
	display: flex;
	/* justify-content: center; */
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: -60px;
    padding: 60px 30px 0;
}

#course-detail .detail-area .card-wrapper .card {
	width: 540px;
	background: #fff;
	margin: 0 60px 60px 0;
	position: relative;
}

#course-detail .detail-area .card-wrapper .card:nth-of-type(even) {
	margin-right: 0;
}

#course-detail .detail-area .card-wrapper .card .number {
	color: #516976;
	font-family: "Rajdhani", sans-serif;
	font-size: 4rem;
	font-weight: 600;
	position: absolute;
	top: -35px;
	left: 15px;
}
#course-detail .detail-area .card-wrapper .card .card-img {
	width: 100%;
}

#course-detail .detail-area .card-wrapper .card .card-img img {
	width: 100%;
}

#course-detail .detail-area .card-wrapper .card .card-body {
	padding: 30px 40px 45px;
}
#course-detail .detail-area .card-wrapper .card .card-body .card-title {
	color: #516976;
	font-size: 2.5rem;
	font-weight: bold;
	line-height: 1.5;
	margin: 0 0 15px;
}

#course-detail.elementary .detail-area .card-wrapper .card .number,
#course-detail.elementary .detail-area .card-wrapper .card .card-body .card-title{
	color: #c65252;
}
#course-detail.chuugaku-juken .detail-area .card-wrapper .card .number,
#course-detail.chuugaku-juken .detail-area .card-wrapper .card .card-body .card-title{
	color: #CC6F38;
}
#course-detail.junior .detail-area .card-wrapper .card .number,
#course-detail.junior .detail-area .card-wrapper .card .card-body .card-title{
	color: #42a79a;
}
#course-detail.high .detail-area .card-wrapper .card .number,
#course-detail.high .detail-area .card-wrapper .card .card-body .card-title{
	color: #5289c6;
}
#course-detail.online .detail-area .card-wrapper .card .number,
#course-detail.online .detail-area .card-wrapper .card .card-body .card-title{
	color: #49a742;
}
#course-detail.online #tab2-box .detail-area .card-wrapper .card .number,
#course-detail.online #tab2-box .detail-area .card-wrapper .card .card-body .card-title{
	color: #DB9667;
}



@media screen and (max-width: 768px) {
	#course-detail .detail-area {
		padding: 30px 20px 40px;
	}
	#course-detail.junior .detail-area {
		background: #fceedc;
		padding: 30px 20px 40px;
	}
	#course-detail.high .detail-area {
		background: #cde1f7;
		padding: 30px 20px 40px;
	}
	#course-detail.online .detail-area {
		background: #c7dec5;
		padding: 30px 20px 40px;
	}
	#course-detail .detail-area .catch-block {
		margin: 0 0 30px;
	}
	#course-detail .detail-area .catch-block .catch {
		text-align: left;
		font-size: 2.2rem;
		line-height: 1.5;
		margin: 0;
		padding: 0 0 5px;
	}
	#course-detail.online .detail-area {
		padding: 40px 0;
	}
	#course-detail .detail-area .catch-block .txt {
		margin: 10px 0 0;
	}
	#course-detail .detail-area .card-wrapper {
		margin-bottom: -40px;
        /*padding: 0;*/
		padding: 40px 0 0 0;
	}
	#course-detail .detail-area .card-wrapper .card {
		width: 100%;
		margin: 0 0 40px;
	}
	#course-detail .detail-area .card-wrapper .card .card-body {
		padding: 20px;
	}
	#course-detail .detail-area .card-wrapper .card .card-body .card-title {
		font-size: 2.2rem;
		margin: 0 0 10px;
	}
}


/* -----------------------------------------------------------
                course-area
-------------------------------------------------------------- */

#course-detail .course-area {
	padding: 70px 0 80px;
}

#course-detail .course-area .section-title {
	margin: 0 0 50px;
}


/*タブ切り替え全体のスタイル*/

#course-detail .course-area .tabs {
	width: 100%;
	margin: 0 auto;
}


/*タブのスタイル*/

#course-detail .course-area .tab-item {
	width: calc(100% / 2);
	height: 65px;
	display: block;
	background: #e5e5e5;
	border-radius: 7px;
	font-size: 2.3rem;
	font-weight: 400;
	text-align: center;
	color: #fff;
	float: left;
	transition: all 0.2s ease;
	padding: 20px 0;
}

#course-detail .course-area .tab-item:hover {
	opacity: 0.75;
}


/*ラジオボタンを全て消す*/

input[name="tab-item"] {
	display: none;
}


/*タブ切り替えの中身のスタイル*/

#course-detail .course-area .tab-content {
	display: none;
	padding: 40px 0 0;
	clear: both;
	overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/

#tab-elementary:checked~#tab-elementary-content,
#tab-test:checked~#tab-test-content {
	display: block;
}


/*選択されているタブのスタイルを変える*/

#course-detail .course-area .tabs input:checked+.tab-item {
	background-color: #4e5c6b;
	color: #fff;
}


#course-detail .course-area .col-2{
	display: flex;
	justify-content: space-between;
}
#course-detail .course-area .col-2 .box{
	width: 580px;
}

#course-detail .course-area .box.sub {
	border:4px solid #efefef;
	width: 100%;
	padding: 40px;
	position: relative;
}

#course-detail .course-area .box.sub .class-img {
	position: absolute;
	top: -20px;
	right: 20px;
	width: 300px;
}

#course-detail .course-area .box.sub .basic-list {
	display: flex;
	width: 820px;
	flex-wrap: wrap;
}

#course-detail .course-area .box.sub .basic-list li {
	width: 50%;
}

#course-detail .course-area .course-title{
	font-size: 2.2rem;
	line-height: 1.4;
	font-weight: 600;
	margin: 0 0 20px;
}

#course-detail .course-area .table {
	border: 1px solid #ccc;
}

#course-detail .course-area .table tr {
	border-bottom: 1px solid #ccc;
}

#course-detail .course-area .table th {
	width: 130px;
	background: #f6f6f6;
	border-left: 1px solid #ccc;
	line-height: 1.6;
	padding: 20px 30px;
}

#course-detail .course-area .table td {
	line-height: 1.6;
	border-right: 1px solid #ccc;
	padding: 20px;
}



@media screen and (max-width: 768px) {
	#course-detail .course-area {
		padding: 50px 20px 10px;
	}
	#course-detail .course-area .section-title {
		margin: 0 0 10px;
	}
	/*タブのスタイル*/
	#course-detail .course-area .tab-item {
		height: 45px;
		font-size: 1.8rem;
		padding: 12px 0;
	}
	/*タブ切り替えの中身のスタイル*/
	#course-detail .course-area .tab-content {
		padding: 0;
	}

	#course-detail .course-area .col-2{
		display: block;
	}
	#course-detail .course-area .col-2 .box{
		width: auto;
	}

	#course-detail .course-area .box.sub {
		padding: 15px;
	}
	#course-detail .course-area .box.sub .course-title {
		margin: 0;
	}
	#course-detail .course-area .box.sub .class-img {
		position: static;
		width: 100%;
		margin: 20px 0;
	}
	#course-detail .course-area .box.sub .basic-list {
		display: block;
		width: 100%;
	}
	#course-detail .course-area .box.sub .basic-list li {
		width: 100%;
	}

	#course-detail .course-area .course-title{
		font-size: 1.8rem;
		margin: 30px 0 10px;
	}

	#course-detail .course-area .table {
		margin: 0;
	}
	#course-detail .course-area .table th {
		width: 90px;
		padding: 15px 0 15px 15px;
	}
	#course-detail .course-area .table td {
		padding: 15px;
	}
	#course-detail .course-area .scroll-box {
		overflow: auto;
		white-space: nowrap;
	}
	#course-detail .course-area .scroll-box::scrollbar {
		height: 5px;
	}
	#course-detail .course-area .scroll-box::scrollbar-track {
		background: #333;
	}
}


/* -----------------------------------------------------------
                guidance-area
-------------------------------------------------------------- */

#course-detail.elementary .guidance-area .imgarea {
	background: url(/vendor/juku-demo/control/img/bg-course-elementary2.jpg) no-repeat center / cover;
}

#course-detail.chuugaku-juken .guidance-area .imgarea {
	background: url(/vendor/juku-demo/control/img/bg-course-elementary2.jpg) no-repeat center / cover;
}

#course-detail.junior .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-junior2.jpg) no-repeat center / cover;
}

#course-detail.junior .guidance-area.style2 {
	background: url(/vendor/juku-demo/control/img/bg-course-online4.jpg) no-repeat center / cover;
}

#course-detail.high .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-high2.jpg) no-repeat center / cover;
}
#course-detail.cram .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-high2.jpg) no-repeat center / cover;
}

#course-detail.high .guidance-area.style2 {
	background: url(/vendor/juku-demo/control/img/bg-course-high3.jpg) no-repeat center / cover;
}
#course-detail.cram .guidance-area.style2 {
	background: url(/vendor/juku-demo/control/img/bg-course-high3.jpg) no-repeat center / cover;
}

#course-detail.online .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-online2.jpg) no-repeat center / cover;
}

#course-detail.online-junior .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-online5.jpg) no-repeat center / cover;
}

#course-detail.online-high .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-online6.jpg) no-repeat center / cover;
}

#course-detail.online.yobiko .guidance-area {
	background: url(/vendor/juku-demo/control/img/bg-course-yobiko2.jpg) no-repeat center / cover;
}

#course-detail.online .guidance-area.style2 {
	background: url(/vendor/juku-demo/control/img/bg-course-online3.jpg) no-repeat center / cover;
}

#course-detail.online .guidance-area .imgarea {
	background: url(/vendor/juku-demo/control/img/bg-course-online3.jpg) no-repeat center / cover;
}

#course-detail.online #tab2-box .guidance-area .imgarea {
	background: url(/vendor/juku-demo/control/img/bg-course-online4.jpg) no-repeat center / cover;
}


#course-detail .guidance-area .inner {
	display: flex;
	justify-content: space-between;
	padding: 90px 0 160px;
	position: relative;
}

#course-detail .guidance-area .inner.inner-single,
#course-detail .junior-guidance .inner.inner-single {
	display: block;
	padding: 0 0 80px;
}

#course-detail .guidance-area .inner .bg-img{
	position: absolute;
	bottom: 100px;
	right: 0;
	width: 500px;
}

#course-detail .guidance-area .inner .bg-img img {
	width: 100%;
}

#course-detail.cram .guidance-area .inner {
	padding: 90px 0 ;
}

#course-detail .guidance-area .inner .catch-block {
	width: 535px;
}

/*txtarea.large*/
#course-detail .guidance-area .txtarea.large .inner .catch-block {
	width: 100%;
}

#course-detail .guidance-area .txtarea.large .inner .catch-block .flex {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	gap: 20px;
}

#course-detail .guidance-area .txtarea.large .inner .catch-block .flex .flex-txt {
	display: inline-block;
	width: 630px;
}

#course-detail.elementary .guidance-area .inner .catch-block {
	width: 570px;
}

#course-detail .guidance-area .inner .catch-block .catch {
	font-feature-settings: "palt";
	font-size: 5.4rem;
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 50px;
	padding: 20px 0 0;
}

#course-detail .guidance-area .txtarea .inner {
	padding: 80px 0;
}
#course-detail.online .guidance-area .txtarea .inner {
	/*padding: 100px 0 80px;*/
	padding: 100px 0 30px;
}

#course-detail.online-elementary .guidance-area .txtarea .inner,
#course-detail.online-junior .guidance-area .txtarea .inner,
#course-detail.online-high .guidance-area .txtarea .inner,
#course-detail.yobiko .guidance-area .txtarea .inner{
	padding: 100px 0 80px;
}

#course-detail .guidance-area .wht-shadow {
	/*
	text-shadow: #fff 1px 1px 0, #fff -1px -1px 0, #fff -1px 1px 0, #fff 1px -1px 0, #fff 0px 1px 0, #fff 0-1px 0, #fff -1px 0 0, #fff 1px 0 0;
	*/
	text-shadow    :
       1px  1px 7px rgba(255, 255, 255, 0.79),
      -1px  1px 7px rgba(255, 255, 255, 0.79),
       1px -1px 7px rgba(255, 255, 255, 0.79),
      -1px -1px 7px rgba(255, 255, 255, 0.79),
       1px  0px 7px rgba(255, 255, 255, 0.79),
       0px  1px 7px rgba(255, 255, 255, 0.79),
      -1px  0px 7px rgba(255, 255, 255, 0.79),
       0px -1px 7px rgba(255, 255, 255, 0.79);
}

#course-detail .txtarea {
	background: #fbfbfb;
}

#course-detail.online .guidance-area .txtarea  {
	background: url(/vendor/juku-demo/control/img/tab-bg.png) bottom right / cover;
}

#course-detail.online .guidance-area .txtarea .inner {
	flex-wrap: wrap;
}

#course-detail.online .txtarea .img-box {
	position: relative;
	left: -40px;
}

#course-detail.online .guidance-area .txtarea .inner .catch-block {
	margin:  0 0 60px;
}

#course-detail .txtarea .course-title {
	color: #33b371;
}



@media screen and (max-width: 768px) {
	#course-detail.elementary .guidance-area .imgarea,
	#course-detail.chuugaku-juken .guidance-area .imgarea,
	#course-detail.junior .guidance-area,
	#course-detail.junior .guidance-area.style2,
	#course-detail.high .guidance-area,
	#course-detail.high .guidance-area.style2,
	#course-detail.cram .guidance-area,
	#course-detail.cram .guidance-area.style2,
	#course-detail.online .guidance-area,
	#course-detail.online .guidance-area.style2,
	#course-detail.online .guidance-area .imgarea ,
	#course-detail.online #tab2-box .guidance-area .imgarea,
	#course-detail.online.yobiko .guidance-area{
		background: none;
	}
	#course-detail .guidance-area .inner {
		display: block;
		padding: 40px 20px 0;
	}

	#course-detail.cram .guidance-area .inner {
		padding: 40px 20px 0;
	}

	#course-detail.elementary .guidance-area .inner {
		padding: 40px 20px 0;
	}
	
	#course-detail.elementary .guidance-area .inner.inner-single,
	#course-detail .junior-guidance .inner.inner-single {
		padding: 0 20px 50px;
	}

	#course-detail .guidance-area.style2 .inner {
		padding: 40px 20px;
	}

	#course-detail.online .guidance-area .txtarea .inner{
		padding: 30px 20px ;
	}

	#course-detail .guidance-area .section-title {
		margin: 0 0 20px;
	}
	#course-detail .guidance-area .inner .catch-block,
	#course-detail.elementary .guidance-area .inner .catch-block ,
	#course-detail.cram .guidance-area .inner .catch-block {
		width: 100%;
	}
	#course-detail .guidance-area .inner .catch-block .catch {
		font-size: 2.0rem;
		margin: 0 0 20px;
		padding: 0;
		line-height: 1.5;
	}
	#course-detail .guidance-area .txtarea .inner {
		padding: 0 20px 40px;
	}

	#course-detail .txtarea {
		background: #fff;
	}

	#course-detail.online .txtarea {
		/* padding: 30px 0 0; */
	}

	#course-detail.online .guidance-area .txtarea  {
		background: #f8f8f8;
		margin: 30px 0 0;
	}

	#course-detail .txtarea .catch-block {
		margin: 30px 0 0;
	}

	#course-detail.online .guidance-area .txtarea .inner .catch-block {
		margin: 0;
	}

	#course-detail.online .txtarea .img-box {
		margin: 15px 0;
		left: 0;
	}

	#course-detail .txtarea .course-title {
		color: #33b371;
		font-weight: 600;
		margin: 0 0 5px;
	}
}


/* -----------------------------------------------------------
                price-area
-------------------------------------------------------------- */

#course-detail .price-area {
	padding: 80px 0;
}

#course-detail .price-area .inner {
	display: flex;
	justify-content: space-between;
}

#course-detail.high .price-area,
#course-detail.chuugaku-juken .price-area,
#course-detail.junior .price-area,
#course-detail.elementary .price-area{
	background: #F8FCFA;
	padding: 80px 0 60px;
	position: relative;
}

#course-detail.online.elementary .price-area{
    background: #fff;
    padding: 40px 0;
}

#course-detail.high .price-area:after {
	content: "";
	position: absolute;
	display: inline-block;
	background: url(/vendor/juku-demo/control/img/price-deco01.svg) center no-repeat;
	width: 200px;
	height: 70px;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -70px;
}

#course-detail.high .price-area .inner {
	align-items: center;
}

#course-detail .price-area .price-wrap {
	width: 900px;
    margin: 0 auto;
}

#course-detail .price-area .inner .section-title {
	padding: 15px 0 0;
}

#course-detail .price-area .table-block {
	width: 898px;
}

#course-detail .price-area .table-block .table-title {
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.8;
	margin: 30px 0 0;
}

#course-detail .price-area .table {
	border: 1px solid #ccc;
	margin: 0 0 20px;
}

#course-detail .price-area .table tr {
	border-bottom: 1px solid #ccc;
}

#course-detail .price-area .table th {
	width: 310px;
	border: 1px solid #ccc;
	line-height: 1.6;
	padding: 25px 0 20px 35px;
}

#course-detail .price-area .table .style1 {
	background: #f6f6f6;
}

#course-detail .price-area .table td {
	line-height: 1.6;
	border-right: 1px solid #ccc;
	padding: 25px 0 20px 40px;
}
#course-detail .price-area .table .sale {
    font-weight: 500;
    color: #E94647;
}

#course-detail .price-icon-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	padding: 60px 0 0;
}

#course-detail .price-icon-flex .price-icon-txt {
	display: inline-block;
	width: 200px;
	text-align: center;
}

#course-detail .price-icon-flex .price-icon-txt img {
	display: block;
	margin: 0 auto 10px;
}

#course-detail .price-icon-flex .price-icon-txt span {
	font-size: 1.8rem;
	color: #516976;
	font-weight: bold;
}

#course-detail .price-table-area {
	padding: 50px 0;
}

#course-detail .price-table-area .price-catch {
	text-align: center;
}

#course-detail .price-table-area .price-table {
	width: 100%;
	margin: 50px 0 40px;
	text-align: center;
	border-radius: 20px;
	box-shadow: 0 3px 10px rgba(129,194,161,.2);
	border-collapse: collapse;
}

#course-detail .price-table-area .price-course-ttl {
	font-size: 2.8rem;
	color: #516976;
	text-align: center;
	margin: 40px 0 10px;
	position: relative;
}

#course-detail .price-table-area .price-course-ttl:not(:first-of-type) {
	margin: 60px 0 10px;
}

#course-detail .price-table-area .price-course-ttl span {
	background: #F8FCFA;
	padding: 0 30px;
	display: inline-block;
	position: relative;
	z-index: 1;
}

#course-detail .price-table-area .price-course-ttl:before {
	content: "";
	display: block;
	width: 100%;
	border: 1px dashed #516976;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}

#course-detail .price-table-area .kome.r {
	text-align: right;
}

#course-detail.elementary .price-table-area .price-table{
	margin: 15px 0 60px;
}

#course-detail .price-table-area .price-table thead th {
	background: #33B371;
	color: #fff;
	font-weight: bold;
	line-height: 1.4;
	font-size: 2.4rem;
	padding: 20px;
}

#course-detail .price-table-area .price-table.col5 thead th,
#course-detail .price-table-area .price-table.col4 thead th{
	font-size: 2.0rem;
	padding: 25px 12px;
}

#course-detail .price-table-area .price-table.col4 thead .start-course{
	line-height: 1.4;
}

#course-detail .price-table-area .price-table.col4 thead th span{
	font-size: 1.5rem;
}

#course-detail .price-table-area .price-table thead th:first-child {
	border-radius: 20px 0 0;
}

#course-detail .price-table-area .price-table thead th:last-child {
	border-radius: 0 20px 0 0;
}

#course-detail .price-table-area .price-table thead th:not(:last-child),
#course-detail .price-table-area .price-table tbody td:not(:last-child){
	border-right: 1px solid #E5E5E5;
}

#course-detail .price-table-area .price-table tbody tr td {
	padding: 35px 20px 30px;
	position: relative;
}

#course-detail .price-table-area .price-table tbody tr:first-child td:after {
	content: "";
	border-bottom: 1px solid #ddd;
	display: inline-block;
	position: absolute;
	bottom: 0;
	width: 80%;
	left: 0;
	right: 0;
	margin: 0 auto;
}

#course-detail .price-table-area .price-table tbody tr td {
	color: #516976;
	width: calc( 100% / 3 );
    background: #fff;
}

#course-detail .price-table-area .price-table.col5 tbody tr td {
    width: calc( 100% / 5 );
	vertical-align: top;
}

#course-detail .price-table-area .price-table.col4 tbody tr td {
    width: calc( 100% / 4 );
	vertical-align: top;
}


#course-detail .price-table-area .price-table tbody tr td .unit {
	font-size: 2.2rem;
	display: block;
}

#course-detail .price-table-area .price-table.col5 tbody tr td .unit,
#course-detail .price-table-area .price-table.col4 tbody tr td .unit{
	font-size: 1.8rem;
}

#course-detail .price-table-area .price-table tbody tr td .value {
	font-size: 3.6rem;
	display: inline-block;
	font-weight: bold;
}

#course-detail .price-table-area .price-table.col5 tbody tr td .value,
#course-detail .price-table-area .price-table.col4 tbody tr td .value{
	font-size: 2.6rem;
}

#course-detail .price-table-area .price-table tbody tr td .value.small {
	font-size: 3.0rem!important;
	font-weight: bold!important;
}

#course-detail .price-table-area .price-table tbody tr:first-child td .value {
	color: #FF935B;
}

#course-detail .price-table-area .price-table tbody tr:nth-child(2) td .value {
	color: #33B371;
}

#course-detail .price-table-area .price-table tbody tr td .yen,
#course-detail .price-table-area .price-table tbody tr td .fun{
	font-size: 2.0rem;
	display: inline-block;
	margin: 0 0 0 5px;
}

#course-detail .price-table-area .price-table tbody tr td .good-buy {
	color: #fff;
	display: inline-block;
	margin: 15px 0 0;
	background: #F05F26;
	padding: 5px 8px;
	font-weight: bold;
	font-size: 1.3rem;
}

#course-detail .price-table-area .price-table tbody tr td .good-buy span {
	font-size: 2.0rem;
	vertical-align: text-bottom;
}

#course-detail .price-area .curriculum-box {
	position: relative;
	background: #fff;
	box-shadow: 0 0 10px rgba(129,194,161,.2);
	border-radius: 20px;
	padding: 40px 30px 30px;
}

#course-detail .price-area .curriculum-box .ttl {
	background: #33B371;
	display: inline-block;
	color: #fff;
	padding: 12px 24px; 
	font-size: 2.1rem;
	font-weight: bold;
	border-radius: 50px;
	position: absolute;
	top: -20px;
	left: 50%;
	transform: translateX(-50%);
}

#course-detail .price-area .curriculum-box .txt {
	color: #516976;
}

#course-detail .price-area .curriculum-box .txt .kome {
	font-weight: bold;
}

#course-detail .price-area .curriculum-box.elementary .txt {
	font-size: 2.0rem;
	text-align: center;
}

#course-detail .price-area .curriculum-box.junior .txt {
	font-size: 2.0rem;
	text-align: center;
}

#course-detail .example-ttl {
    font-size: 2.8rem;
    color: #516976;
    text-align: center;
    margin: 40px 0 10px;
    position: relative;
	width: 1200px;
	margin: 40px auto 0;
}

#course-detail .example-ttl span {
    background: #fff;
    padding: 0 30px;
    display: inline-block;
    position: relative;
    z-index: 1;
}

#course-detail .example-ttl:before {
    content: "";
    display: block;
    width: 100%;
    border: 1px dashed #516976;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
	#course-detail .price-area {
		background: #f5f5f5;
		padding: 40px 20px;
	}
	#course-detail .price-area .inner {
		display: block;
	}
	#course-detail .price-area .inner .section-title {
		padding: 0;
		margin: 0 0 30px;
	}
	#course-detail .price-area .table-block {
		width: 100%;
	}
	#course-detail .price-area .table-block .table-title {
		font-size: 1.8rem;
	}
	#course-detail .price-area .table {
		background: #fff;
	}
	#course-detail .price-area .table tr {}
	#course-detail .price-area .table th {
		width: 170px;
		font-size: 1.5rem;
		padding: 15px 8px 15px 8px;
	}
	#course-detail .price-area .table td {
		padding: 15px;
	}
	
	
	#course-detail.high .price-area,
	#course-detail.chuugaku-juken .price-area,
	#course-detail.junior .price-area,
    #course-detail.elementary .price-area{
		padding: 40px 0 30px;
	}
	
	#course-detail .price-icon-flex {
		justify-content: space-between;
		padding: 20px 0 0;
		gap: 30px 10px;
	}
	
	#course-detail .price-icon-flex .price-icon-txt {
		width: calc( (100% - 20px) / 3 );
	}
	
	#course-detail .price-icon-flex .price-icon-txt img {
		height: 40px;
	}
	
	#course-detail .price-icon-flex .price-icon-txt span {
		font-size: 1.5rem;
		line-height: 1.2;
		display: block;
	}
	
	#course-detail .price-area .price-wrap {
		width: 100%;
	}
	
	#course-detail .price-table-area {
		padding: 50px 0;
	}
	
	#course-detail .price-table-area .price-table-wrap {
		width: 100%;
		overflow-x: scroll;
        margin: 0 0 50px 0;
	}
	
	#course-detail .price-table-area .price-table {
		min-width: 700px;
		margin: 30px 0 20px;
	}
	
	#course-detail .price-table-area .price-table.col5 {
		min-width: 900px;
	}
	
	#course-detail .price-table-area .price-table.col5 thead th,
	#course-detail .price-table-area .price-table.col4 thead th{
		font-size: 1.8rem;
		padding: 20px 10px;
	}
	
	#course-detail .price-table-area .price-table.col4 tbody tr td .unit{
		font-size: 1.6rem;
	}
	
	#course-detail .price-table-area .price-table.col4 thead th span{
	font-size: 1.3rem;
	}
	
	#course-detail .price-table-area .kome.r {
		text-align: left;
	}
	
	#course-detail .price-table-area .price-course-ttl {
		font-size: 2.0rem;
        margin: 20px 0 10px;
	}
	
	#course-detail .price-table-area .price-course-ttl span {
		padding: 0 10px;
	}
	
	#course-detail.elementary .price-table-area .price-table {
		margin: 15px 0 20px;
	}
	
	#course-detail .price-table-area .price-course-ttl:not(:first-of-type) {
		margin: 20px 0 10px;
	}
	
	#course-detail .example-ttl {
		font-size: 2.0rem;
		width: 100%;
		margin: 30px auto 0;
	}
	
	#course-detail .price-table-area .price-table.col5 tbody tr td .value {
		font-size: 3.0rem;
	}
	
	#course-detail.elementary .price-table-area .price-table tbody tr td .value {
		font-size: 3.0rem;
	}
	
	#course-detail .price-area .curriculum-box .ttl {
		padding: 12px 15px; 
		font-size: 1.8rem;
	}
    
    #course-detail.online.elementary .price-area{
        background: #fff;
        padding: 40px 20px;
    }
    
    #course-detail .price-area .curriculum-box {
        padding: 35px 20px 20px 30px;
    }
    
    #course-detail .price-area .curriculum-box.junior .txt {
        font-size: 1.8rem;
        text-align: center;
        line-height: 1.6;
    }
    
    #course-detail .price-area .curriculum-box.junior .kome {
        font-size: 1.6rem;
        text-align: left;

    }
    
}

/* -----------------------------------------------------------
                example-area
-------------------------------------------------------------- */
#course-detail .example-area {
	padding: 80px 0 0;
	width: 100%;
	background-color: #FBFBFB;
    background: url(/vendor/juku-demo/control/img/bg-dot.png);
}

#course-detail .example-area .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}

#course-detail .timetable-area {
    padding: 50px 0 80px;
}

#course-detail .timetable-area:first-child {
    padding: 100px 0 80px;
}

#course-detail .timetable-area .inner{
    width: 1100px;
	padding: 70px 100px 60px;
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 0 10px rgba(0,0,0,.1);
    position: relative;
}

#course-detail .timetable-area .case-ttl {
	font-size: 2.4rem;
	color: #33B371;
	background: transparent;
	display: inline-block;
	font-weight: bold;
	text-align: left;
    margin: -130px 0 0 -60px;
    line-height: 0.8;
}

#course-detail .timetable-area .case-ttl span{
    font-size: 8.4rem;
    color: #E1EEE7;
    vertical-align: middle;
    display: inline-block;
    margin: 0 20px 0 0;
}

#course-detail .timetable-area .case-subttl-group {
	width: 100%;
	display: flex;
	margin: -2px 0 40px;
	position: relative;
}

#course-detail .timetable-area .case-subttl-group .case-before,
#course-detail .timetable-area .case-subttl-group .case-after{
	display: block;
	width: 50%;
	font-size: 1.8rem;
	font-weight: bold;
	color: #516976;
	text-align: center;
	background: #E1EEE7;
	padding: 8px 15px;
	position: relative;
}

#course-detail .timetable-area .case-before:after {
	display: inline-block;
	content: "";
	background: url(/vendor/juku-demo/control/img/case-subttl-deco.svg) center no-repeat;
	position: absolute;
	width: 47px;
	height: 71px;
	right: -40px;
	margin: 0 auto;
	top: 50%;
	transform: translateY(-50%);
	z-index: 1;
}


#course-detail .timetable-area{
    opacity: 1;
}
#course-detail .timetable-area.is-hidden {
    opacity: 0;
    height: 0;
    margin: 0;
	padding: 0!important;	
}
#course-detail .timetable-btn {
    background: #fff;
    border: 1px solid #333;
    cursor: pointer;
    outline: none;
    padding: 24px 20px;
    width: 260px;
	display: inline-block;
	text-align: center;
	margin: 0 auto;
	z-index: 3;
	position: relative;
	transition: all .4s;
}
#course-detail .timetable-btn:hover {
    opacity: .6;
}
#course-detail .timetable-btn:after {
	content: "";
	display: inline-block;
	background: url(/vendor/juku-demo/control/img/icon-plus.svg) center no-repeat;
	width: 13px;
	height: 13px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 20px;
}
#course-detail .btn-area.is-btn-hidden{
  display:none;
	margin:0;
}

#course-detail .btn-area {
	margin: 0 auto;
	text-align: center;
    padding: 0 0 80px;
}


@media screen and (max-width: 768px) {
	#course-detail .example-area {
		padding: 50px 0 0;
	}
	
	#course-detail .example-area .inner .section-title {
		padding: 0;
		margin: 0 0 30px;
	}
    
    #course-detail .timetable-area .inner {
        width: 100%;
        padding: 50px 20px 20px;
        border-radius: 0;
    }
    
    #course-detail .timetable-area:first-child {
        padding: 50px 0 30px;
    }
	
	#course-detail .timetable-area .case-ttl {
        font-size: 1.7rem;
        width: 100%;
        margin: -90px 0 0 0;
        text-indent: -2.8rem;
        padding-left: 5.5rem;
	}
    
    #course-detail .timetable-area .case-ttl span {
        font-size: 4.0rem;
        margin: 0 10px 0 0;
    }
	
	#course-detail .timetable-area {
		padding: 30px 0;
	}
	
	#course-detail .timetable-area .case-subttl-group {
		width: 100%;
		margin: -2px 0 30px;
	}
	
	#course-detail .timetable-area .case-subttl-group .case-before,
	#course-detail .timetable-area .case-subttl-group .case-after {
		display: block;
		min-width: 350px;
		font-size: 1.6rem;
		padding: 10px 15px;
	}
	
	#course-detail .timetable-wrap {
		width: 100%;
		overflow-x: scroll;
	}
	
	#course-detail .timetable-wrap .timetable-img {
		min-width: 700px;
        height: initial;
	}
	
	#course-detail .timetable-area .case-before:after {
		display: inline-block;
		content: "";
		background: url(/vendor/juku-demo/control/img/case-subttl-deco.svg) center/cover, no-repeat;
		position: absolute;
		width: 13%;
		aspect-ratio: 47 / 71;
		height: initial;
		object-fit: cover;
		right: -20px;
	}
}

/* -----------------------------------------------------------
                faq-area
-------------------------------------------------------------- */

#course-detail .faq-area {
	padding: 100px 0 110px;
}

#course-detail .faq-area .section-title {
	margin: 0 0 10px;
}

#course-detail .faq-area .faq-question {
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.4;
	padding: 35px 0 20px 35px;
	position: relative;
}

#course-detail .faq-area .faq-question::before {
	content: "Q";
	font-size: 2.2rem;
	color: #4869af;
	position: absolute;
	top: 32px;
	left: 0;
}

#course-detail .faq-area .faq-answer {
	font-size: 1.6rem;
	line-height: 1.4;
	padding: 0 0 40px 35px;
	position: relative;
}

#course-detail .faq-area .faq-answer::before {
	content: "A";
	font-size: 2.2rem;
	color: #33b371;
	position: absolute;
	top: 0;
	left: 0;
}

#course-detail .faq-area .faq-answer::after {
	content: "";
	width: 100%;
	height: 1px;
	background: #ddd;
	position: absolute;
	bottom: 0;
	left: 0;
}

#course-detail .faq-area .faq-under {
	margin: 20px 0 0 35px;
}

@media screen and (max-width: 768px) {
	#course-detail .faq-area {
		padding: 30px 20px 50px;
	}
	#course-detail .faq-area .faq-question {
		padding: 20px 0 10px 25px;
		position: relative;
		font-size: 1.7rem;
	}
	#course-detail .faq-area .faq-question::before {
		font-size: 1.9rem;
		top: 18px;
	}
	#course-detail .faq-area .faq-answer {
		padding: 0 0 20px 25px;
		position: relative;
	}
	#course-detail .faq-area .faq-answer::before {
		font-size: 1.9rem;
		top: 2px;
	}
	#course-detail .faq-area .faq-answer::after {
		content: "";
		width: 100%;
		height: 1px;
		background: #ccc;
		position: absolute;
		bottom: 0;
		left: 0;
	}
	#course-detail .faq-area .faq-under {
		margin: 20px 0 0 25px;
	}
}


/* -----------------------------------------------------------
                junior page
-------------------------------------------------------------- */


/* -----------------------------------------------------------
                high page
-------------------------------------------------------------- */

/*    advice-area
-------------------------------------------------------------- */

/*.advice-area{
    position: relative;
    padding: 80px 0 150px;
}*/

.advice-area{
    position: relative;
    padding: 80px 0 100px;
}

.advice-area h4 {
    font-size: 3rem;
    font-weight: bold;
    margin: 40px 0 20px;
}

.advice-area .catch {
    font-size: 2rem;
    font-weight: bold;
    margin: 0 0 20px;
    color: #33b371;
}

.advice-area .advice-flex .catch {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 15px;
    color: #33b371;
    display: inline-block;
}

.advice-area .advice-flex .catch.sp-display {
    display: none;
}


.advice-area .catch span {
    color: #333;
}

.advice-area h5 {
    display: inline-block;
    font-size: 2.4rem;
    font-weight: bold;
    padding: 8px 15px;
    background-color: #33b371;
    color: #fff;
    /*margin: 0 0 90px;*/
}

.advice-area h5 {
    margin: 0 0 100px;
}

#course-detail.elementary .advice-area h5 {
    margin: 0 0 210px;
}

/*.advice-area .advice-flex {
    display: flex;
    justify-content: space-between;
}*/

.advice-area .advice-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

#course-detail.elementary .advice-area .advice-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

/*.advice-area .advice-flex .before-box {
    position: relative;
    width: 480px;
    height: 475px;
    border-radius: 20px;
    padding: 20px;
    background-color: #E8E8E8;
}*/

.advice-area .advice-flex .before-box {
    position: relative;
    width: 580px;
    /*height: 480px;*/
    height: initial;
    border-radius: 0;
    padding: 40px 20px 20px;
    background-color: #F6F6F6;
}

/*#course-detail.elementary .advice-area .advice-flex .before-box {
    height: initial;
}*/

.advice-area.elementary .advice-flex .before-box {
    height: 680px;
}

.advice-area.junior .advice-flex .before-box {
    height: 620px;
}
/*
.advice-area .advice-flex .before-box::before {
    content: "BEFORE";
    display: inline-block;
    font: 8rem / 1 "Lato";
    font-weight: bold;
    color: #33b371;
    opacity: .3;
    position: absolute;
    left: 0;
    top: -60px;
}*/

.advice-area .advice-flex .before-box::before {
    content: "BEFORE";
    display: inline-block;
    font: 8rem / 1 "Lato";
    font-weight: bold;
    color: #E1EEE7;
    opacity: 1;
    position: absolute;
    left: 0;
    top: -60px;
}

.advice-area .advice-flex .before-box::after {
    content: "入塾前";
    display: inline-block;
    font: 2.9rem / 1 "Lato";
    font-weight: bold;
    color: #516976;
    position: absolute;
    left: 320px;
    top: -20px;
}

/*.advice-area .advice-flex .before-box .arrow-img {
    width: 180px;
    position: absolute;
    right: -100px;
    bottom: 60px;
}*/

.advice-area .advice-flex .before-box .arrow-img {
    width: 180px;
    position: absolute;
    right: -10px;
    top: -140px;
    display: inline-block;
    bottom: initial;
}

#course-detail.junior .advice-area .advice-flex .before-box .arrow-img {
    top: -80px;
}

.advice-area .advice-flex .before-box .arrow-img img {
    width: 100%;
}

/*.advice-area .advice-flex .txt-box {
    width: 100%;
    padding: 25px;
    background-color: #fff;
    border-radius: 20px;
}*/

.advice-area .advice-flex .txt-box {
    background-color: #fff;
    width: 100%;
    background: initial;
    border-radius: 0;
    padding: 0;
}

.advice-area .advice-flex .txt-box img.right{
    display: inline-block;
    /*margin: 0 0 15px 15px;*/
    margin: 0 0 0 15px;
    float: right;   
}

.advice-area .advice-flex .txt-box img.left{
    display: inline-block;
    /*margin: 0 15px 15px 0;*/
    margin: 0 15px 0 0;
    float: left;   
}

/*#course-detail.elementary .advice-area .advice-flex .txt-box img.right{
    margin: 0 0 0 15px;
}

#course-detail.elementary .advice-area .advice-flex .txt-box img.left{
    margin: 0 15px 0 0;
}*/

/*.advice-area .advice-flex .txt-box .txt {
    margin: 0 0 20px;
}*/

.advice-area .advice-flex .txt-box .txt {
    margin: 0 0 20px;
    font-size: 1.5rem;
    line-height: 1.9;
}

.advice-area .advice-flex .txt-box:last-child .txt:last-child {
    margin: 0;
}

/*.advice-area .advice-flex .after-box {
    width: 600px;
    padding: 20px;
    border-radius: 20px;
    height: auto;
    background: url(/vendor/juku-demo/control/img/advice-bg.jpg) 0 0 / cover;
    position: relative;
}*/

.advice-area .advice-flex .after-box {
    width: 580px;
    padding: 40px 20px 20px;
    border-radius: 0;
    height: auto;
    background: #ECF7ED;
    position: relative;
}

.chuugaku-juken .advice-area .advice-flex .after-box {
	margin-bottom: 180px;
}

.advice-area.advice-area.elementary .advice-flex .after-box {
    height: 550px;
}

#course-detail.elementary .advice-area .advice-flex .after-box {
    margin: -100px 0 0;
}

/*.advice-area .advice-flex .after-box::before {
    content: "AFTER";
    display: inline-block;
    font: 8rem / 1 "Lato";
    font-weight: bold;
    color: #33b371;
    opacity: .3;
    position: absolute;
    left: 0;
    top: -60px;
}*/

.advice-area .advice-flex .after-box::before {
    content: "AFTER";
    display: inline-block;
    font: 8rem / 1 "Lato";
    font-weight: bold;
    color: #E1EEE7;
    opacity: 1;
    position: absolute;
    left: 0;
    top: -60px;
}

.advice-area .advice-flex .after-box::after {
    content: "入塾後";
    display: inline-block;
    font: 2.9rem / 1 "Lato";
    font-weight: bold;
    color: #516976;
    position: absolute;
    left: 260px;
    top: -20px;
}

.advice-area .advice-flex .after-box .btn a {
    background: #f05f26;
    display: block;
    color: #fff;
    padding: 15px 5px;
    text-align: center;
    width: 320px;
    margin: 30px auto;
}

.advice-area .bg-img {
    position: absolute;
    overflow: hidden;
}

.advice-area .bg-img.img01 {
    width: 525px;
    bottom: -20px;
    left: 0;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}
.advice-area.elementary .bg-img.img01 {
	width: 640px;
	left: unset;
	right: 0;
	bottom: -180px;
	border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
	border-top-left-radius: 20px;
	border-bottom-left-radius: 20px;
}
.advice-area.junior .bg-img.img01 {
	bottom: -20px;
}

.advice-area .bg-img.img02 {
    width: 525px;
    top: 120px;
    right: 0;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.advice-area .bg-img img {
    width: 100%;
}

.advice-area .advice-txt-group {
    margin: 0 auto;
    padding: 60px 0;
}

#course-detail.elementary .advice-area .advice-txt-group {
    margin: 0 auto;
    padding: 60px 0 80px;
}

.advice-area .advice-txt-group .inner {
    width: 850px;
}

.advice-area .advice-txt-group  .txt{
    text-align: left;
    line-height: 2.0;
}

.advice-area .advice-txt-group .btn a {
    background: #f05f26;
    display: block;
    color: #fff;
    padding: 15px 5px;
    text-align: center;
    width: 320px;
    margin: 30px auto;
}


@media screen and (max-width: 768px) {
    .advice-area{
        /*padding: 80px 0 0;*/
        padding: 60px 0 0;
    }

    .advice-area h4 {
        font-size: 2.2rem;
        margin: 30px 0 10px;
    }

    .advice-area .catch {
        font-size: 2rem;
        line-height: 1.5;
        margin: 10px 0 40px;
        color: #33b371;
    }
    
    .advice-area .catch.pc-display {
        display: none;
    }
    
    .advice-area .advice-flex .catch.sp-display {
        display: block;
    }

    .advice-area .catch span {
        font-size: 1.6rem;
    }

    .advice-area h5 {
        font-size: 2rem;
        line-height: 1.4;
        padding: 8px 10px;
        margin: 0 0 40px;
    }
    
    #course-detail.elementary .advice-area h5 {
        margin: 0 0 40px;
    }

    .advice-area .advice-flex {
        display: block;
        flex-wrap: wrap;
    }

    /*.advice-area .advice-flex .before-box {
        width: 100%;
        height: auto;
        padding: 20px 15px;
        margin: 0 0 60px;
    }*/
    
    .advice-area .advice-flex .before-box {
        width: 100%;
        height: initial;
        border-radius: 0;
        padding: 40px 20px 20px;
        background-color: #F6F6F6;
        margin: 0 0 60px;
    }
    
    #course-detail.elementary .advice-area .advice-flex .before-box {
        margin: 0 0 80px;
    }

	.advice-area.elementary .advice-flex .before-box ,
	.advice-area.advice-area.elementary .advice-flex .after-box ,
	.advice-area.junior .advice-flex .before-box {
		height: auto;
	}

    /*.advice-area .advice-flex .before-box::before {
        font: 5rem / 1 "Lato";
        font-weight: bold;
        left: -25px;
        top: -30px;
    }*/
    
    .advice-area .advice-flex .before-box::before {
        font: 4rem / 1 "Lato", sans-serif;
        font-weight: bold;
        left: -20px;
        top: -20px;
    }
    
    .advice-area .advice-flex .before-box::after {
        font: 2.2rem / 1 "Lato", sans-serif;
        font-weight: normal;
        left: initial;
        right: 20px;
        top: -10px;
        display: none;
    }

    /*.advice-area .advice-flex .before-box .arrow-img {
        width: 150px;
        right: 0;
        bottom: -80px;
    }*/
    
    .advice-area .advice-flex .before-box .arrow-img {
        width: 150px;
        right: 25px;
        top: initial;
        bottom: -80px;
    }
    
    #course-detail.elementary .advice-area .advice-flex .before-box .arrow-img {
        bottom: -100px;
        z-index: 1;
    }
    
    #course-detail.junior .advice-area .advice-flex .before-box .arrow-img {
        top:initial;
    }

    .advice-area .advice-flex .txt-box {
        width: 100%;
        /*padding: 15px;*/
        padding: 0;
    }

    .advice-area .advice-flex .after-box {
        width: 100%;
        /*padding: 20px 15px;*/
        padding: 40px 20px 20px;
        height: auto;
    }
	
	.chuugaku-juken .advice-area .advice-flex .after-box {
		margin-bottom: 0;
	}

    /*.advice-area .advice-flex .after-box::before {
        font: 5.5rem / 1 "Lato";
        font-weight: bold;
        left: -20px;
        top: -35px;
    }*/
    
    .advice-area .advice-flex .after-box::before {
        font: 4rem / 1 "Lato", sans-serif;
        font-weight: bold;
        left: -20px;
        top: -20px;
    }
    .advice-area .advice-flex .after-box::after {
        font: 2.2rem / 1 "Lato", sans-serif;
        font-weight: normal;
        left: initial;
        right: 20px;
        top: -10px;
        display: none;
    }

    .advice-area .advice-flex .after-box .btn a {
        width: 100%;
        margin: 20px auto 10px;
    }

    .advice-area .bg-img.img02 {
        width:65%;
        max-width: 360px;
        top: 0;
    }
    
    .advice-area .advice-txt-group .inner {
        width: 100%;
    }
    
    .advice-area .advice-txt-group {
        padding: 20px 0;
    }
    
    #course-detail.elementary .advice-area .advice-flex .after-box {
        margin: 0;
    }
    
    #course-detail.elementary .advice-area .advice-txt-group {
        padding: 20px 0;
    }
    
    .advice-area .advice-flex .txt-box img.right,
    .advice-area .advice-flex .txt-box img.left{
        margin: 0 0 15px 0;
    }
    
    
}

/* -----------------------------------------------------------
                course-select-area
-------------------------------------------------------------- */

.course-select-area{
    position: relative;
    /*padding: 20px 0 0;*/
	padding: 70px 0 0;
}

.course-select-area h3 {
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.6;
    margin: 0 0 20px;
    text-align: center;
}

.course-select-area .lead {
    font-weight: 500;
    line-height: 2.4;
    margin: 0 0 30px;
    text-align: center;
}

.course-select-area .arrow-img {
    text-align: center;
}

.course-select-area .arrow-img img {
   /* width: 580px;*/
	width: 280px;
    position: relative;
    z-index: 3;
	left:-40px;
}

.course-select-area .online-img img {
	left:300px;
}

.course-select-area .bg-img {
    position: absolute;
}

.course-select-area .bg-img.img01 {
    width: 400px;
    opacity: .2;
    top: -130px;
    right: 50px;
    z-index: -2;
}

.course-select-area .bg-img img {
    width: 100%;
}

/*オンライン小学生　タブ切り替えない*/
#course-detail.online.elementary .tab-wrapper {
	position: relative;
    padding: 0;
    /*margin: 100px 0 0;*/
	margin: 0;
}

/*タブ切り替え*/
/*タブ切り替え全体のスタイル*/
#course-detail .tab-wrapper {
	position: relative;
    padding: 245px 0 0;
    margin: -50px 0 -50px;
}

#course-detail .tab-box {
	margin: 20px auto 0;
}

#course-detail .tab-box-online-elementary{
	margin: 0 auto;
}


/*タブのスタイル*/
#course-detail .tab-item {
	width: 580px;
	height: 240px;
	border-radius: 24px;
	line-height: 50px;
	font-size: 16px;
	text-align: center;
	display: block;
	text-align: center;
	font-weight: bold;
	transition: all 0.2s ease;
	position: absolute;
	background: #fff;
	color: #999;
	z-index:1;
    text-align: left;
    cursor: pointer;
}
#course-detail .tab-item.item01 {
	left: calc(( 100% - 1200px ) / 2);
    top: 0;
}
#course-detail .tab-item.item02 {
	right:  calc(( 100% - 1200px ) / 2);
    top: 0;
}

#course-detail .tab-item::after {
    content: "";
    display: block;
	width: 580px;
	height: 240px;
	background: url(/vendor/juku-demo/control/img/click-bg.png) 0 0 / cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
}

#course-detail .tab-item img {
	width: 100%;
    position: relative;
}

#course-detail .tab-item .course-name {
	font-size: 3rem;
    font-weight: bold;
    line-height: 1.5;
    padding: 5px 20px;
    color: #fff;
    background-color: #49A742;
    text-align: left;
    display: none;
    position: relative;
    top: -30px;
    left: 30px;
    z-index: 3;
}

#course-detail .tab-item.item02 .course-name {
    background-color: #DB9667;
}

#course-detail .tab-item .course-name::before {
	content: "";
    display: none;
    border-top: solid 30px #49A742;
    border-left: solid 25px transparent;
    border-right: solid 25px transparent;
    position: absolute;
    bottom: -30px;
    left: 25px;
}
#course-detail .tab-item.item02 .course-name::before {
    border-top: solid 30px #DB9667;
}

/*オンライン小学生コース　コース分かれない*/
#course-detail.online.elementary .tab-content {
	display: initial;
	padding: 0;
	clear: both;
	overflow: hidden;
}


#course-detail input[name="tab-item"] {
	display: none;
}
/*activeでないコンテンツ*/
#course-detail .tab-content {
	display: none;
	padding: 0;
	clear: both;
	overflow: hidden;
}
/*activeのコンテンツのみ標示*/
#course-detail #tab1:checked ~ #tab1-box,
#course-detail #tab2:checked ~ #tab2-box{
	display: block;
}

#course-detail #tab1:checked+.tab-item.item01::after,
#course-detail #tab2:checked+.tab-item.item02::after {
	display: none;
}

#course-detail #tab1:checked+.tab-item.item01 .course-name ,
#course-detail #tab2:checked+.tab-item.item02 .course-name {
	display: inline-block;
}

#course-detail #tab1:checked+.tab-item.item01 .course-name::before ,
#course-detail #tab2:checked+.tab-item.item02 .course-name::before {
	display: block;
}

@media screen and (max-width: 768px) {
    .course-select-area{
        /*padding: 0;*/
		padding: 30px 0 0 0;
    }

    .course-select-area h3 {
        font-size: 2.6rem;
        line-height: 1.5;
        margin: 0 0 30px;
        text-align: left;
    }

    .course-select-area .lead {
        line-height: 1.8;
        margin: 0 0 10px;
        text-align: left;
    }

    .course-select-area .arrow-img img {
        width: 70%;
		left: 0;
    }

    .course-select-area .bg-img.img01 {
        width: 40%;
        max-width: 300px;
        opacity: .08;
        top: 15px;
        right: 0;
    }

    /*タブ切り替え*/
    /*タブ切り替え全体のスタイル*/
    #course-detail .tab-wrapper {
        position: relative;
        padding: 70px 0 0;
        margin: -35px 0 ;
    }

    #course-detail .tab-box {
        margin: 20px auto 0;
    }
	
	#course-detail .tab-box-online-elementary {
        margin: 0 auto;
    }

    /*タブのスタイル*/
    #course-detail .tab-item {
        width: 46%;
        height: 100px;
        font-size: 16px;
        position: absolute;
        text-align: left;
        cursor: pointer;
    }
	#course-detail .tab-item-yobiko{
		width: 55%;
	}
	
    #course-detail .tab-item.item01 {
        left: 3%;
        top: 0;
    }
    #course-detail .tab-item.item02 {
        right: 2%;
        top: 0;
    }

    #course-detail .tab-item::after {
        width: 100%;
        height: 100px;
        background: url(/vendor/juku-demo/control/img/click-bg-sp.png) center center / cover;
    }

    #course-detail .tab-item img {
        height: 100px;
        object-fit: cover;
    }
	
	#course-detail .tab-item-yobiko img {
		width: 95%;
	}

    #course-detail .tab-item .course-name {
        font-size: 1.5rem;
        line-height: 1.4;
        padding: 5px 8px;
        top: -20px;
        left: 0px;
        font-feature-settings: "palt";
    }

    #course-detail .tab-item.item02 .course-name {
        background-color: #DB9667;
    }

    #course-detail .tab-item .course-name::before {
        border-top: solid 16px #49A742;
        border-left: solid 10px transparent;
        border-right: solid 10px transparent;
        bottom: -16px;
        left: 10px;
    }
    #course-detail .tab-item.item02 .course-name::before {
        border-top: solid 16px #DB9667;
    }

    #course-detail .tab-item:first-of-type{
        margin: 0 10px 0 0;
    }

	#course-detail .tab-box{
		padding-bottom: 0;
	}

	/*activeでないコンテンツ*/
	#course-detail .tab-content {
		padding: 20px 0 0;
	}
    
    #course-detail.online.elementary .tab-wrapper {
        margin: 30px 0;
    }
    
	#course-detail.online.elementary .tab-wrapper-online-elementary{
		 margin: 0;
	}
	
}

/* -----------------------------------------------------------
                nominate-area
-------------------------------------------------------------- */
.nominate-area{
}

.nominate-area .lead {
    margin: 30px 0 60px;
}

.nominate-list{
    width: 100%;
    margin: 30px 0 0;
}

.nominate-list li {
    background: #33b371;
    color: #fff;
    padding: 30px 0;
    position: relative;
}
.nominate-list li:nth-child(2n) {
    background: #6F9B84;

}

.nominate-list li .flex-wrap {
    display: flex;
    justify-content: space-between;
}

.nominate-list li:nth-child(2n) .flex-wrap {
    flex-direction: row-reverse;
}

.nominate-list li .img-box {
    position: relative;
    width: 460px;
    height: 340px;
    left: -150px;
}

.nominate-list li .img-box.moriwaki:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: -1px;
	left: -15px;
	background: url(/vendor/juku-demo/control/img/icon_label01.png) center,no-repeat;
	width: 120px;
	height: 131px;
}

.nominate-list li .img-box.yoshida:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: -1px;
	left: -15px;
	background: url(/vendor/juku-demo/control/img/icon_label02.png) center,no-repeat;
	width: 120px;
	height: 131px;
}

.nominate-list li .img-box img {
    width: 460px;
    height: 340px;
    object-fit: cover;
	box-shadow: 3px 3px 5px #f8f8f8;
}

.nominate-list li:nth-child(2n) .img-box {
    right:  -120px;
    left: unset;
}

.nominate-list li .img-box .position {
    position: absolute;
    display: inline-block;
    padding: 8px 15px;
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1;
    letter-spacing: .1em;
    bottom: 36px;
    right: 0 ;
    color: #1C632D;
    border: 1px solid #1C632D;
	background: #fff;
}

.nominate-list li:nth-child(2n) .img-box .position {
	left: 0;
    right: unset ;
}


.nominate-list li .img-box .name {
    position: absolute;
    display: inline-block;
    padding: 8px 15px;
    color: #fff;
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 1;
    letter-spacing: .1em;
    bottom: -15px;
    right: 0 ;
    background-color: #1C632D;
}

.nominate-list li:nth-child(2n) .img-box .name {
    left: 0;
    right: unset ;
}

.nominate-list li .txt-box {
    position: relative;
    width: 820px;
    margin: 0 -80px 0 0;
    left: -100px;
}

.nominate-list li:nth-child(2n) .txt-box {
    position: relative;
    width: 820px;
    left: 0;
    margin: 0 -80px 0 0;
}

.nominate-list li .txt-box h3 {
    padding: 0 0 0 20px;
    border-left: solid 10px #fff;
    /*font-size: 3.8rem;*/
	font-size: 3.55rem;
    font-weight: bold;
    line-height: 1.5;
    margin: 0 0 30px;
}

.nominate-list li .txt-box h3 span {
    font-size: 2.6rem;
}

.nominate-list li .txt-box .rec-txt-box {
	background: #fff;
	padding: 10px 20px;
	color: #33b371;
	margin: 10px 0 0;
	border-radius: 8px;
}

.nominate-list li .txt-box .rec-txt-box .rec-txt {
	font-weight: bold;
	font-size: 2.0rem;
	margin: 0 0 5px;
}

.nominate-list li .txt-box .rec-txt-box .rec-list {
	margin: 0 0 0 20px;
}

.nominate-list li .txt-box .rec-txt-box .rec-list li {
	list-style: disc;
	background: #fff;
	color: #33b371;
	padding: 5px 0;
	font-weight: bold;
	line-height: 1.4;
}

.nominate-list li:nth-child(2n) .txt-box .rec-txt-box,
.nominate-list li:nth-child(2n) .txt-box .rec-txt-box .rec-list li {
	color: #6F9B84;
}

@media screen and (max-width: 768px) {
    .nominate-area{
        padding: 40px 0 0;
    }

    .nominate-area .lead {
        margin: 30px 0;
    }

    .nominate-list{
        width: 100%;
        margin: 30px 0 0;
    }

    .nominate-list li {
        padding: 30px 20px;
    }

    .nominate-list li .flex-wrap {
        display: block;
    }

    .nominate-list li .img-box {
        position: relative;
        width: 100%;
        height: 170px;
        left: -20px;
    }

    .nominate-list li .img-box img {
        width: 100%;
        /*height: 170px;*/
        border-bottom-right-radius: 60px;
		
		/*20250916 修正*/
		height: 240px;
		object-fit: cover;
		object-position: 50% 5%;
    }

    .nominate-list li:nth-child(2n) .img-box {
        right: -20px;
    }

    .nominate-list li:nth-child(2n) .img-box img {
        border-bottom-right-radius: 0;
        border-bottom-left-radius: 60px;
    }
	
	.nominate-list li .img-box .position {
		padding: 8px 15px;
		font-size: 1.4rem;
		right: unset ;
        left: 20px;
		bottom: -70px;
	}
	
	.nominate-list li:nth-child(2n) .img-box .position {
		right: 0;
        left: unset;
	}

    .nominate-list li .img-box .name {
        padding: 8px 15px;
        font-size: 2.2rem;
        /*bottom: -15px;*/
        right: unset ;
        /*left: 0 ;*/
		
		/*20250916 修正*/
		left: 20px;
		bottom: -110px;
    }

    .nominate-list li:nth-child(2n) .img-box .name {
        right: 0;
        left: unset;
    }
	
    .nominate-list li .txt-box {
        width: 100%;
        /*margin: 30px 0 0;*/
        left: 0;
		
		/*20250916 修正*/
		margin: 130px 0 0;
    }

    .nominate-list li:nth-child(2n) .txt-box {
        width: 100%;
        left: 0;
        margin:  30px 0 0;
    }

    .nominate-list li .txt-box h3 {
        padding: 0;
        border-left: solid 0px #fff;
        font-size: 2rem;
        line-height: 1.5;
        margin: 0 0 20px;
    }

    .nominate-list li .txt-box h3 span {
        font-size: 1.6rem;
    }

    .nominate-list li .txt-box .sp-toggle {
        display: none;
        padding: 20px 0 0;
    }
	.nominate-list li .txt-box .sp-toggle.inst-sp-toggle {
        display: block;
    }

    .nominate-list li .txt-box .sp-more-btn {
        width: 100%;
        height: auto;
        font-weight: 600;
        padding: 8px;
        margin: 0 0 8px;
        background: transparent;
        border: solid 2px #fff;
        color: #fff;
        border-radius: 50px;
        text-align: center;
        display: block;
        position: relative;
    }

    .nominate-list li .txt-box .sp-more-btn::after {
        position: absolute;
        display: inline-block;
        content: "";
        width: 16px;
        height: 16px;
        background: url(/vendor/juku-demo/control/img/icon-plus.png) no-repeat 0 0;
        background-size: 14px 14px;
        top: 50%;
        right: 20px;
        margin: -7px 0 0;
    }

    .nominate-list li .txt-box .sp-more-btn.open::after {
        background: url(/vendor/juku-demo/control/img/icon-minus.png) no-repeat 0 0;
        background-size: 14px 14px;
    }
	
	.nominate-list li .txt-box .rec-txt-box .rec-txt {
		font-size: 1.8rem;
		margin: 0 0 5px;
	}
	
	.nominate-list li .txt-box .rec-txt-box {
		padding: 10px 14px;
	}
	
	.nominate-list li .img-box.moriwaki:after {
		content: "";
		display: inline-block;
		position: absolute;
		top: -1px;
		left: -15px;
		background: url(/vendor/juku-demo/control/img/icon_label01.png) center/cover,no-repeat;
		width: 28%;
		height: initial;
		aspect-ratio: 120 / 131;
	}
	
	.nominate-list li .img-box.yoshida:after {
		content: "";
		display: inline-block;
		position: absolute;
		top: -1px;
		left: -15px;
		background: url(/vendor/juku-demo/control/img/icon_label02.png) center/cover,no-repeat;
		width: 28%;
		height: initial;
		aspect-ratio: 120 / 131;
	}
	
}


/* -----------------------------------------------------------
    2022.08.22 ケース
-------------------------------------------------------------- */
.case-area {
	padding: 80px 0 100px;
}

.case-area .case-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 60px 0 0;
}

.case-area .case-flex .case-box {
	width: 380px;
	background: #FBFFFB;
	box-shadow: 2px 2px 7px 2px #aeaeae33;
	padding: 40px 20px 20px;
	position: relative;
}

.case-area .case-flex .case-box .name {
	border-bottom: 1px solid #ccc;
	color: #516976;
	font-weight: bold;
	font-size: 2.0rem;
	line-height: 1.6;
	margin: 0 0 30px 0;
	width: 60%;
}

.case-area .case-flex .case-box .green-txt {
	color: #33B371;
	display: inline-block;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 0 0 5px 0;
}


.case-area .case-flex .case-box .txt{
	margin: 0 0 15px 0;
	line-height: 1.6;
}


.case-area .case-flex .case-box:after {
	content: "";
	display: inline-block;
	width: 100px;
	height: 100px;
	position: absolute;
	right: 18px;
	top: 18px;
}

.case-area .case-flex .case-box:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-student01.png) center / cover ,no-repeat;
}

.case-area .case-flex .case-box:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student02.png) center / cover ,no-repeat;
}

.case-area .case-flex .case-box:nth-of-type(3):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student03.png) center / cover ,no-repeat;
}

#course-detail.online.elementary .case-area .case-flex .case-box:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-student04.png) center / cover ,no-repeat;
}

#course-detail.online.elementary .case-area .case-flex .case-box:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student05.png) center / cover ,no-repeat;
}

#course-detail.online.elementary .case-area .case-flex .case-box:nth-of-type(3):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student06.png) center / cover ,no-repeat;
}

#course-detail.online.online-junior .case-area .case-flex .case-box:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-student07.png) center / cover ,no-repeat;
}

#course-detail.online.online-junior .case-area .case-flex .case-box:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student08.png) center / cover ,no-repeat;
}

#course-detail.online.online-junior .case-area .case-flex .case-box:nth-of-type(3):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student09.png) center / cover ,no-repeat;
}

#course-detail.online.online-high .case-area .case-flex .case-box:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-student10.png) center / cover ,no-repeat;
}

#course-detail.online.online-high .case-area .case-flex .case-box:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student11.png) center / cover ,no-repeat;
}


@media screen and (max-width: 768px) {
	.case-area {
		padding: 30px 20px;
	}
	
	.case-area .case-flex {
		padding: 30px 0;
		gap: 20px;
	}
}

/* -----------------------------------------------------------
    2022.08.22 成功事例
-------------------------------------------------------------- */
.success-area {
	padding: 80px 0;
	background: #F8F8F8;
}

.success-area .success-flex {
	align-items: flex-start;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 60px 0 0;
}

.success-area .success-flex .success-box {
	width: 380px;
	background: #fff;
	box-shadow: 2px 2px 7px 2px #aeaeae33;
	padding: 40px 20px 30px;
	position: relative;
}

.success-area .success-flex .success-box .name {
	background: #33B371;
	border-radius: 30px;
	color: #fff;
	display: inline-block;
	font-weight: bold;
	font-size: 2.0rem;
	padding: 3px 25px;
	position: absolute;
	margin: 0 auto;
	left: 50%;
	transform: translateX(-50%);
	top: -20px;
}

.success-area .success-flex .success-box .navy-txt {
	color: #516976;
	display: inline-block;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 0 0 10px 0;
}

@media screen and (max-width: 768px) {
	.success-area {
		padding: 40px 20px 30px;
	}
	
	.success-area .success-flex {
		padding: 50px 0;
		gap: 40px;
	}
}

/* -----------------------------------------------------------
    2022.08.22 お客様の声02
-------------------------------------------------------------- */
.voice-area02 {
	padding: 80px 0;
	background: #F9FDFF;
}

.voice-area02 .voice-flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 60px 0 0;
}

.voice-area02 .voice-flex .voice-box02 {
	width: 380px;
	position: relative;
}

.voice-area02 .voice-flex .voice-box02 .name {
	display: block;
	background: #516976;
	color: #fff;
	font-size: 2.0rem;
	padding: 5px calc((35px/2) + 20px) ;
	width: 80%;
	position: relative;
}

.voice-area02 .voice-flex .voice-box02 .txt {
	background: #fff;
	border: 1px solid #516976;
	border-top: none;
	width: 345px;
	padding: 36px 18px 20px;
	margin: 0 auto;
	position: relative;
	z-index: 0;
}

.voice-area02 .voice-flex .voice-box02:after {
	content: "";
	width: 100px;
	height: 100px;
	position: absolute;
	display: inline-block;
	right: 0;
	top: -30px;
}

.voice-area02 .voice-flex .voice-box02:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-student01.png) center / cover , no-repeat;
}

.voice-area02 .voice-flex .voice-box02:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student02.png) center / cover , no-repeat;
}

.voice-area02 .voice-flex .voice-box02:nth-of-type(3):after {
	background: url(/vendor/juku-demo/control/img/icon-case-student03.png) center / cover , no-repeat;
}

#course-detail.online.elementary .voice-area02 .voice-flex .voice-box02:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent01.png) center / cover , no-repeat;
}

#course-detail.online.elementary .voice-area02 .voice-flex .voice-box02:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent02.png) center / cover , no-repeat;
}

#course-detail.online.elementary .voice-area02 .voice-flex .voice-box02:nth-of-type(3):after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent03.png) center / cover , no-repeat;
}

#course-detail.online.online-junior .voice-area02 .voice-flex .voice-box02:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent04.png) center / cover , no-repeat;
}

#course-detail.online.online-junior .voice-area02 .voice-flex .voice-box02:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent05.png) center / cover , no-repeat;
}

#course-detail.online.online-junior .voice-area02 .voice-flex .voice-box02:nth-of-type(3):after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent06.png) center / cover , no-repeat;
}

#course-detail.online.online-high .voice-area02 .voice-flex .voice-box02:first-of-type:after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent07.png) center / cover , no-repeat;
}

#course-detail.online.online-high .voice-area02 .voice-flex .voice-box02:nth-of-type(2):after {
	background: url(/vendor/juku-demo/control/img/icon-case-parent08.png) center / cover , no-repeat;
}

.voice-area02 .voice-flex .voice-box02 .name:before {
	content: "";
	background: url(/vendor/juku-demo/control/img/voice_deco01.svg) center, no-repeat;
	width: 20px;
	height: 12px;
	position: absolute;
	display: inline-block;
	left: 0;
	bottom: -12px;
	z-index: 0;
}

@media screen and (max-width: 768px) {
	.voice-area02 {
		padding: 30px 20px;
	}
	
	.voice-area02 .voice-flex {
		padding: 30px 0;
		gap: 60px;
	}
	
	.voice-area02 .voice-flex .voice-box02 .txt {
		width: 90%;
		margin: 0 0 0 20px;
		padding: 30px 16px 20px;
		
	}
}


/* -----------------------------------------------------------
    2022.09.14 講師紹介
-------------------------------------------------------------- */
.teacher-area {
    padding: 80px 0 0;
}

.teacher-area .teacher-flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 60px;
    margin: 50px 0;
}

.teacher-area .teacher-flex .teacher-box {
    text-align: center;
    width: 480px;
    display: inline-block;
    position: relative;
}

.teacher-area .teacher-flex .teacher-box .genre {
    background: rgba(255,175,45,1.00);
    color: #fff;
    font-size: 2.0rem;
    font-weight: bold;
    padding: 8px 14px;
    line-height: initial;
    position: absolute;
    left: -10px;
    top: -10px;
}

.teacher-area .teacher-flex .teacher-box .teacher-img{
    width: 100%;
    margin: 0 0 20px;
}

.teacher-area .teacher-flex .teacher-box .teacher-name {
    font-size: 2.8rem;
    line-height: 1.0;
    margin: 0 0 10px;
}

.teacher-area .teacher-flex .teacher-box .teacher-name .kana {
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
   .teacher-area {
    padding: 30px 0;
}

.teacher-area .teacher-flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 50px;
    margin: 40px 0 0;
}

.teacher-area .teacher-flex .teacher-box {
    width: 100%;
    display: inline-block;
    position: relative;
}

.teacher-area .teacher-flex .teacher-box .genre {
    font-size: 1.7rem;
    padding: 6px 12px;
    left: 0;
    top: -18px;
}

.teacher-area .teacher-flex .teacher-box .teacher-img{
    width: 70%;
    margin: 0 0 20px;
}

.teacher-area .teacher-flex .teacher-box .teacher-name {
    font-size: 2.3rem;
    line-height: 1.0;
    margin: 0 0 10px;
}
    
.teacher-area .teacher-flex .teacher-box .teacher-txt {
    text-align: left;
}

.teacher-area .teacher-flex .teacher-box .teacher-name .kana {
    font-size: 1.6rem;
} 
}



/* -----------------------------------------------------------
    2023.01　修正
-------------------------------------------------------------- */

/*高１スタートダッシュコース追加*/

.high-01{
	margin-bottom: 60px;
}

/*オンラインコース修正*/

#course-detail .guidance-area-02{
	margin-bottom: 120px;
}

#course-detail .online .guidance-area{
	margin-bottom: 120px;
}

#course-detail .elementary .guidance-area,
#course-detail .yobiko .guidance-area{
	margin-bottom: 120px;
}

#course-detail .course-area-02{
	padding-bottom: 0;
	}

#course-detail .price-area-02{
	margin-bottom: 50px;
	}

	
@media screen and (max-width: 768px) {
	
	#course-detail .guidance-area-02 {
	margin-bottom: -50px;
	}
	
	#course-detail .elementary .guidance-area,
	#course-detail .yobiko .guidance-area{
	margin-bottom: -50px;
	}
	
	#course-detail .course-area-02{
	padding: 50px 20px 50px;
	}
	
	#course-detail .price-area-02{
	margin-bottom: 40px;
	}
	
}


/*///// オンラインコースボタン追加/////*/

.online-course-img{
	width: 10%;
}

.course-btn{
	text-align: center;
	margin: 30px 0 0;
}

.course-btn p{
	font-size: 1.8rem;
}

.course-btn .btn-all a{
	 width: 400px;
	display: block;
    background: #c65252;
    border: 1px solid #c65252;
    color: #fff;
    text-align: center;
    position: relative;
    display: inline-block;
    padding: 18px 0;
    text-decoration: none;
    transition: all 0.3s ease-in-out;
    margin: 0 auto;
}

.course-btn .btn-all a::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    content: '';
    background: #fff;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .5s;
}

.course-btn .btn-all a::after {
    content: "\f054";
    font: 900 1.3rem / 1 "Font Awesome 5 Free";
    position: absolute;
    top: calc((100% - 1em) / 2);
    right: 25px;
}

.course-btn .btn-all a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}


/*オンライン小学生ボタン*/
.course-btn .btn-01 a{
    background: #c65252;
    border: 1px solid #c65252;
}

.course-btn .btn-01 a:hover {
	color: #c65252;
}

/*オンライン中学生ボタン*/
.course-btn .btn-02 a{
    background: #42a79a;
    border: 1px solid #42a79a;
}

.course-btn .btn-02 a:hover {
	color: #42a79a;
}


/*オンライン高校生ボタン*/
.course-btn .btn-03 a{
    background: #5289c6;
    border: 1px solid #5289c6;
}

.course-btn .btn-03 a:hover {
	color: #5289c6;
}


/*予備校ボタン*/
.course-btn .btn-04 a{
    background: #264D7A;
    border: 1px solid #264D7A;
}

.course-btn .btn-04 a:hover {
	color: #264D7A;
}


@media screen and (max-width: 768px) {
   
	.course-btn{
		margin: 20px 0 50px;
	}
	
	.course-yobiko{
		margin: 20px 0 20px;
	}
	
	.course-btn h3{
		font-size: 2.0rem;
		margin-bottom: 20px;
	}
	.course-btn p{
		font-size: 1.6rem;
	}
	
	.course-btn .btn-01 a,
	.course-btn .btn-02 a,
	.course-btn .btn-03 a,
	.course-btn .btn-04 a{
		width: 90%;
		padding: 10px 0;
	}
	
}

/* オンライン小学生修正 */
.nominate-list li .img-box.seki:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    right: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center,no-repeat;
    width: 120px;
    height: 131px;
}

.nominate-list li .img-box.shin:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    left: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center,no-repeat;
    width: 120px;
    height: 131px;
}


@media screen and (max-width: 768px){
	.nominate-list li .img-box.seki:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    right: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center/cover,no-repeat;
    width: 28%;
    height: initial;
    aspect-ratio: 120 / 131;
	}
	
.nominate-list li .img-box.shin:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    left: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center/cover,no-repeat;
    width: 28%;
    height: initial;
    aspect-ratio: 120 / 131;
	}
	
}

/*オンライン予備校修正 */

@media screen and (max-width: 768px){
		
	#course-detail .faq-area-yobiko{
		margin-top: 40px;
	}
	
}

/* オンライン中学生 */

.nominate-list li .img-box.yoshida-02:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    right: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center,no-repeat;
    width: 120px;
    height: 131px;
}


.nominate-list li .img-box.arai-02:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    left: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center,no-repeat;
    width: 120px;
    height: 131px;
}

/* オンライン高校学生 */

.nominate-list li .img-box.moriwaki-02:after {
    content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    right: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center,no-repeat;
    width: 120px;
    height: 131px;
}

.nominate-list li .img-box.yoshida-03:after {
   content: "";
    display: inline-block;
    position: absolute;
    top: -1px;
    left: -15px;
    background: url(/vendor/juku-demo/control/img/icon_label03.png) center,no-repeat;
    width: 120px;
    height: 131px;
}

.case-area-online-high .case-flex,
.success-area-online-high .success-flex,
.voice-area02-online-high .voice-flex{
	justify-content: flex-start;
}

.case-area-online-high .case-flex div:first-child,
.success-area-online-high .success-flex div:first-child,
.voice-area02-online-high .voice-flex div:first-child{
	margin-right: 50px;
}

@media screen and (max-width: 768px){
	
	.case-area-online-high .case-flex div:first-child,
	.success-area-online-high .success-flex div:first-child,
	.voice-area02-online-high .voice-flex div:first-child{
		margin-right: 0;
	}
	
}

/*2023.03 導線修正*/
.course-title{
	margin-bottom: 50px;
}

.course-title h3{
  	font-size: 2.8rem;
    color: #516976;
    text-align: center;
    position: relative;
    width: 1200px;
    margin: 60px auto 0;
}

.onilne-title h3{
	 margin: 80px auto 0;
}

.course-title h3:before {
  	content: "";
    display: block;
    width: 100%;
    border: 1px dashed #516976;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.course-title h3 span {
  	background: #f9f9f9;
    padding: 0 30px;
    display: inline-block;
    position: relative;
    z-index: 1;
} 

.course-txt{
	padding: 0 0 30px;
	text-align: center;
	}


@media screen and (max-width: 768px){
	.course-space-01 {
		padding: 40px 0 0 20px;
	}
	
	.course-space-02 {
		padding: 40px 0 20px 20px;
	}
	
	.course-space-03 {
		padding: 40px 0 0 20px;
	}
	
	.course-title{
		padding: 0 20px;
		margin-bottom: 0;
	}
	
	.course-title h3{
		font-size: 2.2rem;
		width: 100%;
		margin: 20px auto 0;
	}
	
	.course-title h3 span {
		padding: 0 10px;
		line-height: 1.2;
	}
	
	.course-txt{
		padding: 20px 20px 0;
		text-align: left;
	}
}

/* -----------------------------------------------------------
    2023.05　修正
-------------------------------------------------------------- */

.junior-guidance{
	background: #ecf7ed;
}

.junior-guidance .junior-flexbox h4 {
	color: #333;
    font-size: 2.2rem;
	font-weight: 600;
}

.junior-guidance .junior-flexbox h4 span {
    line-height: 1.1;
    background: #f05f26;
    color: #fff;
    padding: 6px;
    display: inline-block;
    margin: 0 2px;
	font-size: 2.5rem;
}

.junior-guidance .junior-flexbox{
	display: flex;
	width: 1200px;
	margin: 0 auto;
	/*padding: 70px 0;*/
	padding: 70px 0 50px;
}

.junior-guidance.high .junior-flexbox {
	padding: 70px 0 0;
}

.junior-guidance .junior-flexbox > div{
	background: #fff;
	padding: 30px;
	box-shadow: 7px 7px 0px 1px rgba(12,107,8,.1);
	width: 600px;
}

.junior-guidance .junior-flexbox h5 {
	position: relative;
	padding: 13px 15px;
	color: #fff;
	display: inline-block;
	border-radius: 10px;
}

.junior-guidance .junior-flexbox h5:after {
	position: absolute;
	bottom: -9px;
	left: 1em;
	width: 0;
	height: 0;
	content: '';
	border-width: 10px 10px 0 10px;
	border-style: solid;
}

.junior-guidance .junior-flexbox .junior-box01 h5{
	background: #33B371;
}
.junior-guidance .junior-flexbox .junior-box01 h5:after{
	border-color: #33B371 transparent transparent transparent;
}
.junior-guidance .junior-flexbox .junior-box02 h5{
	background: #92c527;
}
.junior-guidance .junior-flexbox .junior-box02 h5:after{
	border-color: #92c527 transparent transparent transparent;
}

.junior-flexbox p{
	margin-top: 15px;
	background: #F2F2F2;
	padding: 20px 30px;
	border-radius: 10px;
}

.junior-guidance .junior-flexbox .junior-box01{
	margin-right: 30px;	
}

.junior-guidance .junior-flexbox .box-title01{
	margin-top: 30px;
}

.junior-guidance .junior-flexbox .box-title02{
	margin-top: 30px;
}

.junior-advice h5,
.high-advice h5{
  position: relative;
  overflow: hidden;
  padding: 15px 30px 15px 130px;
  border: 2px solid #33B371;
	background-color: #fff;
    color: #33B371;
	margin-top: 20px;
}

.junior-advice h5:before,
.high-advice h5:before{
  position: absolute;
  top: -150%;
  left: -100px;
  width: 200px;
  height: 300%;
  content: '';
  -webkit-transform: rotate(25deg);
  transform: rotate(25deg);
  background: #33B371;
}

.junior-advice h5 span,
.high-advice h5 span{
  font-size: 4rem;
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  display: block;
  padding-top: 3px;
  padding-left: 16px;
  color: #fff;
}

.junior-advice h5:last-of-type,
.high-advice h5:last-of-type{
	margin-top: 70px;
}

.advice-area .advice-flex .high-after-box {
    padding: 50px 20px;
}



@media screen and (max-width: 768px){
	
	.junior-guidance .junior-flexbox{
		display: inline-block;
		width:100%;
		/*padding: 50px 20px;*/
		padding: 50px 20px 30px;
	}
	
	.junior-guidance.high .junior-flexbox {
		padding: 50px 20px 30px;
	}
	
	.junior-guidance .junior-flexbox > div{
		padding: 20px;
		width: 100%;
	}
	
	.junior-guidance .junior-flexbox h4{
		font-size: 2.0rem;
		line-height: 1.7;
		padding: 10px 0;
	}
	
	.junior-guidance .junior-flexbox h5 {
		padding: 10px 20px;
		line-height: 1.5;
	}
	
	.junior-guidance .junior-flexbox p{
		padding: 20px 20px;
	}
	
	.junior-guidance .junior-flexbox .junior-box01{
		margin-right: 0px;
		margin-bottom: 30px;
	}
	
	.junior-guidance .junior-flexbox .box-title01{
		margin-top: 20px;
	}
	
	.junior-advice h5,
	.high-advice h5{
  		padding: 10px 15px 10px 75px;
		font-size: 1.7rem;
		margin-top: 0;
	}
	.junior-advice h5:before,
	.high-advice h5:before{
  		left: -140px;
	}
	.junior-advice h5 span,
	.high-advice h5 span{
		font-size: 2.7rem;
		padding-left: 10px;
	}
	
	.junior-advice h5:last-of-type,
	.high-advice h5:last-of-type{
		margin-top: 50px;
	}
	
	.advice-area .advice-flex .high-after-box {
    	padding: 40px 20px 20px;
	}

}

/*20240308 追記*/
.section-title-jp.online {
    margin: 0 0 10px 30px;
}
.section-title-eng.online {
    padding: 0 0 45px 30px;
}
.section-title-eng.online::after {
    left: 30px;
}

@media screen and (max-width: 768px) {
	.section-title-jp.online {
		margin: 0 0 5px
	}
	.section-title-eng.online {
		padding: 0 0 20px 
	}
	.section-title-eng.online::after {
		left: 0;
	}

}


.s-contact-area .hour.course-page {
	display: none;
}

.course-cv-no-img .course-last-bg {
	display: none;
}

/*20240426 追記*/
.nominate-list li .img-box img.img-pos-top {
    object-position: top -20px left 50%;
}

/*20240426 講師エリアボタン*/
a.btn.style-wh {
    background: #fff;
    border-color: #fff;
    color: #333;
	
	/*20250916 追記*/
	width: 325px;
}
@media screen and (max-width: 768px)  {
	a.btn.style-wh::after {
		content: "\f054";
		font: 900 1.3rem / 1 "Font Awesome 5 Free";
		position: absolute;
		top: calc((100% - 1em) / 2);
		right: 8px;
	}
	
	/*20250916 追記*/
	a.btn.style-wh {
		width: 100%;
	}
}


/*    course-curriculum-area 20240624 追記
-------------------------------------------------------------- */
.course-curriculum-area {
	background: #f1f9f5;
	padding: 80px 0 90px;
}
.course-curriculum-area .section-title-box {
	display: flex;
    justify-content: space-between;
    align-items: center;
	margin: 0 0 60px;
}
.course-curriculum-area .curriculum-flex {
	display: flex;
	justify-content: center;
    flex-wrap: wrap;
	gap: 20px 20px;
}
.course-curriculum-area .curriculum-flex .curriculum-box {
    background: #fff;
    border: 1px #92c527 solid;
    padding: 30px;
    box-shadow: 6px 6px 0 #E0F3E9;
}
.course-curriculum-area .curriculum-flex.flex02 .curriculum-box {
    width: calc((100% - 40px) / 2);
}
.course-curriculum-area .curriculum-flex.flex03 .curriculum-box {
    width: calc((100% - 40px) / 3);
}
.course-curriculum-area .title-flex {
	display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 0 15px;
}
.course-curriculum-area .title-flex .num {
	display: inline-block;
    width: 50px;
    height: 50px;
	line-height: 50px;
    color: #32b372;
    border: 1px #32b372 dashed;
    font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
    font-family: 'Roboto', "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    border-radius: 50%;
}
.course-curriculum-area .title-flex .cu-title {
    margin: 0;
    padding: 0;
    display: inline-block;
    font-size: 2.4rem;
    line-height: 1.6;
    font-weight: bold;
    width: calc(100% - 75px);
    /* color: #32b372; */
}

@media screen and (max-width: 768px) {
	.course-curriculum-area {
		padding: 40px 0 20px;
	}
	.course-curriculum-area .section-title-box {
		display: block;
		margin: 0 0 20px;
	}
	.course-curriculum-area .section-catch {
		margin: 20px 20px 10px 0;
	}
	.course-curriculum-area .curriculum-flex {
		display: block;
	}
	.course-curriculum-area .curriculum-flex.flex02 .curriculum-box,
	.course-curriculum-area .curriculum-flex.flex03 .curriculum-box{
		width: 100%;
		/*padding: 0 0 0;*/
		padding: 20px 10px;
		margin: 0 0 15px 0;
	}
	.course-curriculum-area .title-flex {
		margin: 0 0 0;
		padding: 0 20px;
	}
	.course-curriculum-area .title-flex .cu-title {
		font-size: 1.8rem;
        padding: 0 0 0 0;
        width: calc(100% - 55px);
        text-align: left;
	}
	.course-curriculum-area .title-flex .num {
		width: 38px;
		height: 38px;
		line-height: 38px;
	}
	.course-curriculum-area .more_btn02.course::after {
        top: 26px;
    }
	/*.course-curriculum-area .sp_more_area02 {
		padding: 10px 20px 20px;
	}*/
	.course-curriculum-area .curriculum-txt {
		padding: 15px 20px 0;
	}
}

/*    春・夏・冬期講習コンテンツ
-------------------------------------------------------------- */
.course-season {
    width: 86%;
	min-width: 1400px;
	padding: 80px 0 60px;
	background: #f0f8ff;
	/*margin: 80px auto;*/
	margin: 20px auto 0;
	border-radius: 80px;
	position: relative;
}
.course-season .img-right {
    position: absolute;
    width: 200px;
    top: -50px;
    right: -50px;
}
.course-season .title-wrapper .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.course-season .intro-list-block {
    width: 100%;
}
.course-season .course-title h3 span {
    background: #f0f8ff;
}

.course-season .lesson-intro-box {
	margin: 20px 0 20px;
}
.course-season .lesson-intro-box .lesson-intro-title {
	font-size: 2.8rem;
    font-weight: 500;
    line-height: 1.4;
	text-align: center;
	padding: 0 0 20px;
}
.course-season .lesson-intro-box .lesson-intro-txt {
	text-align: center;
    font-size: 1.8rem;
    line-height: 1.8;
}

.course-season .intro-list-block .curriculum-box {
    position: relative;
    background: #fff;
    box-shadow: 0 0 10px rgba(129, 194, 161, .2);
    border-radius: 20px;
    padding: 40px 30px 30px;
	width: 550px;
	margin: 0 auto;
}
.course-season .intro-list-block .curriculum-box .ttl {
    background: #33B371;
    display: inline-block;
    color: #fff;
    padding: 12px 24px;
    font-size: 2.1rem;
    font-weight: bold;
    border-radius: 50px;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
}
.course-season .intro-list-block .curriculum-box .txt {
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width: 768px) {
   .course-season {
	   padding: 0 0 30px;
	   width: 100%;
	   min-width: 100%;
	   margin: 30px 0 0;
	   border-radius: 35px;
	}
	.course-season .img-right {
        width: 110px;
        top: -40px;
        right: 0px;
    }
	.course-season .title-wrapper .inner {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
	 .course-season .title-wrapper .inner .section-title {
        padding: 0;
        margin: 0 0 30px;
    }
	
	.course-season .lesson-intro-box {
		margin: 10px 0 10px;
		padding: 0 10px 0;
	}
	.course-season .lesson-intro-box .lesson-intro-title {
		font-size: 2.2rem;
        line-height: 1.4;
		padding: 0 0 20px;
	}
	.course-season .lesson-intro-box .lesson-intro-txt {
        font-size: 1.6rem;
		text-align: left;
	}
}

/* season-box01 季節講習 */
.course-season .intro-list-block .season-box01 {
	/*position: relative;
	padding: 80px 0 0;*/
}
.course-season .intro-list-block .season-box01 .caption-box {
	/*position: absolute;
	right: 0;
	top: 30px;*/
	text-align: center;
}
.course-season .intro-list-block .season-box01 .block-caption {
    display: inline-block;
    width: auto;
    background: #5289c6;
    color: #fff;
    font-weight: 500;
    border-radius: 50px;
    text-align: center;
    padding: 10px 30px;
	top: 25px;
    position: relative;
    font-size: 2rem;
    z-index: 1;
	line-height: 1.5;
}
.course-season .intro-list-block .season-box01 .block-caption::before {
    content: '';
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    border: 10px solid transparent;
    border-top: 10px solid #5289c6;
}

.course-season .txt-s {
	font-size: 1.6rem;
}

#course-detail.elementary .course-season .intro-list-block .season-box01 .intro-list.junior, 
#course-detail.elementary .course-season .intro-list-block .season-box01 .intro-list.high {
	display: none;
}

#course-detail.chuugaku-juken .course-season .intro-list-block .season-box01 .intro-list.junior, 
#course-detail.chuugaku-juken .course-season .intro-list-block .season-box01 .intro-list.high {
	display: none;
}

#course-detail.junior .course-season .intro-list-block .season-box01 .intro-list.elementary, 
#course-detail.junior .course-season .intro-list-block .season-box01 .intro-list.high {
	display: none;
}

#course-detail.high .course-season .intro-list-block .season-box01 .intro-list.elementary, 
#course-detail.high .course-season .intro-list-block .season-box01 .intro-list.junior {
	display: none;
}

.course-season .intro-list-block .season-box01 .intro-list {
    display: flex;
   /* width: 1200px;*/
    margin: 0 auto;
    justify-content: space-between;
	gap: 20px;
}
.course-season .intro-list-block .season-box01 .intro-list li {
    /*width: 380px;*/
	width: 33.3%;
    box-shadow: 0 3px 10px rgba(190, 220, 205, .3);
    display: flex;
    flex-wrap: wrap;
    background: #fff;
    align-content: flex-start;
}
.course-season .intro-list-block .season-box01 .intro-list li .img-contain img {
    width: 100%;
}
.course-season .img-animation:before {
    background: none;
}
.course-season .intro-list-block .season-box01 .intro-list .txt-wrap {
    position: relative;
    padding: 30px 20px;
}
.course-season .intro-list-block .season-box01 .intro-list .point-catch {
	font-size: 2.4rem;
    line-height: 1.6;
    font-weight: bold;
	margin: 0 0 15px;
	color: #5289c6;
}
.course-season .intro-list-block .season-box01 .intro-list .point {
    font-size: 1.8rem;
    color: #fff;
    font-weight: bold;
    text-align: center;
    position: absolute;
    top: -24px;
    left: 50%;
    transform: translateX(-50%);
}

#course-detail.elementary .course-season .intro-list-block .season-box01 .block-caption.junior, 
#course-detail.elementary .course-season .intro-list-block .season-box01 .block-caption.high {
	display: none;
}

#course-detail.chuugaku-juken .course-season .intro-list-block .season-box01 .block-caption.junior, 
#course-detail.chuugaku-juken .course-season .intro-list-block .season-box01 .block-caption.high {
	display: none;
}

#course-detail.junior .course-season .intro-list-block .season-box01 .block-caption.elementary, 
#course-detail.junior .course-season .intro-list-block .season-box01 .block-caption.high {
	display: none;
}

#course-detail.high .course-season .intro-list-block .season-box01 .block-caption.elementary, 
#course-detail.high .course-season .intro-list-block .season-box01 .block-caption.junior {
	display: none;
}

@media screen and (max-width: 768px) {
	.course-season .intro-list-block .season-box01 .caption-box {
		
	}
	.course-season .intro-list-block .season-box01 .block-caption {
		display: block;
        width: 95%;
        font-size: 1.5rem;
        line-height: 1.4;
        margin: 0 auto;
        top: 20px;
		padding: 10px 10px;
	}
	 .course-season .intro-list-block .season-box01 .block-caption::before {
        top: 98%;
    }
	
	.course-season .txt-s {
		font-size: 1.2rem;
	}
	
	.course-season .intro-list-block .season-box01 .course-title h3 {
        font-size: 2.2rem;
        width: 100%;
        margin: 50px auto 30px;
    }
    .course-season .intro-list-block .season-box01 .intro-list {
        width: 100%;
        flex-wrap: wrap;
        gap: 20px;
    }
	.course-season .intro-list-block .season-box01 .intro-list li {
        width: 100%;
    }
	.course-season .intro-list-block .season-box01 .intro-list li .img-contain {
        width: 100%;
        height: 46vw;
    }
	.course-season .intro-list-block .season-box01 .intro-list li .img-contain img {
        width: 100%;
        height: 100%;
		object-fit: cover;
		object-position: center;
    }
	.course-season .intro-list-block .season-box01 .intro-list .txt-wrap {
        padding: 20px 20px;
    }
	.course-season .intro-list-block .season-box01 .intro-list .point-catch {
		font-size: 2.2rem;
		margin: 0 0 10px;
	}
}

/*20241101 season-schedule 追加*/
.course-season .intro-list-block .season-schedule {
	margin: 90px 0 0;
}

.course-season .intro-list-block .season-schedule .schedule-title {
	font-size: 2.4rem;
    line-height: 1.6;
    font-weight: bold;
    margin: 30px 0 0;
    color: #5289c6;
	/*text-align: left;*/
}
.course-season .intro-list-block .season-schedule .schedule-title.schedule-title03 {
	margin: 0 0 10px;
}
/*schedule-flex*/
.course-season .intro-list-block .season-schedule .schedule-flex {
	display: flex;
	justify-content: space-between;
	gap: 10px;
	margin: 0 0 30px;
}
.course-season .intro-list-block .season-schedule .schedule-flex:last-of-type {
	margin: 50px 0 0 0;
	align-items: flex-start;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title {
	text-align: center;
    margin: 0 0 0;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title.left {
	text-align: left;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title.schedule-title02 {
	margin: 0 0 22px;
}
.course-season .intro-list-block .season-schedule .schedule-flex p.note {
	text-align: left;
	padding-left:1em;
	text-indent:-1em;
}
/*schedule-flex end*/

/*schedule-date*/
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date {
	position: relative;
	width: 65%;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .left-img-flex {
	display: flex;
	justify-content: space-between;
	align-items:flex-start;
	margin: 0 0 10px 0;
	gap: 10px;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .left-img-flex img {
	width: calc( 50% - 10px );
	object-fit: contain;
	object-position: center;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .period-txt {
	position: absolute;
	right: 0;
	top: 45px;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .period-txt span {
	content: "";
	width: 15px;
	height: 15px;
	background: #fcf192;
	display: inline-block;
	margin: 0 5px 0;
	border: solid 1px #333;
}

/*schedule-time*/
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-time {
	width: calc( 35% - 20px );
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-time p {
	text-align: center;
}
.course-season .intro-list-block .season-schedule .schedule-flex .schedule-time p.note {
	text-align: left;
}

.course-season .intro-list-block .season-schedule .schedule-time .bg-white {
	background: #fff;
	margin: 10px 0 0;
	padding: 30px 30px;
	box-shadow: 0 3px 10px rgba(190, 220, 205, .3);
}

.speechBubble {
  position: relative;
  display: inline-block;
  margin-bottom: 20px;
  padding: 15px 15px;
  border: 2px solid #5289c6;
  border-radius: 9999px;
  background-color: #ffffff;
  text-align: left;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
  color: #5289c6;
  width: 100%;
}

.speechBubble::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 20px 10px 0 10px;
  border-color: #5289c6 transparent transparent;
  translate: -50% 100%;
}

.speechBubble::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  border-style: solid;
  border-width: 15.5px 7.8px 0 7.8px;
  border-color: #ffffff transparent transparent;
  translate: -50% 100%;
}

table.date-time-table {
	width: 100%;
	margin: 5px 0 5px;
}
table.date-time-table, table.date-time-table td, table.date-time-table th {
	border: 2px solid #5289c6;
	border-collapse: collapse;
}
table.date-time-table td, table.date-time-table th {
	padding: 20px 10px;
	text-align: center;
}
table.date-time-table th {
	background: #fff;
	width: 40%;
}
table.date-time-table td {
	background: #fcf192;
	width: 60%;
	letter-spacing: 0.05em;
	color: #5289c6;
	font-weight: bold;
	font-size: 1.8rem;
}

/*flex02*/
.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-date {
    width: 60%;
}
.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-title.left {
	
}
.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-date p span.txt-note {
	font-size: 1.4rem;
}
.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-time {
    width: calc( 40% - 10px );
}
.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-time img {
    width: 100%;
	height: 250px;
	object-fit: cover;
	object-position: center;
}

@media screen and (max-width: 768px) {
	.course-season .intro-list-block .season-schedule {
		margin: 30px 0 0;
	}
	
	.course-season .intro-list-block .season-schedule .schedule-title {
		font-size: 2.2rem;
		margin: 10px 0 0;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title.schedule-title03 {
		margin: 10px 0 5px;
	}
	/*schedule-flex*/
	.course-season .intro-list-block .season-schedule .schedule-flex {
		display: block;
		margin: 0 0 20px;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex:last-of-type {
		margin: 30px 0 0 0;
		align-items: center;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title {
		font-size: 2.2rem;
		margin: 10px 0 10px;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title.left {
		text-align: left;
		width: 100%;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-title.schedule-title02 {
		margin: 10px 0 5px;
	}
	/*schedule-flex end*/

	/*schedule-date*/
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date {
		width: 100%;
		margin: 40px 0 0 0;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .left-img-flex {
		display: block;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .period-txt {
		position: static;
		text-align: right;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .period-txt span {
		
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .left-img-flex img {
		width: 100%;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-date .left-img-flex img:last-of-type {
		margin: 10px 0 0 0;
	}
	
	/*schedule-time*/
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-time {
		width: 100%;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex .schedule-time .schedule-txt {
		margin: 10px 0 0 0;
	}
	
	.course-season .intro-list-block .season-schedule .schedule-time .bg-white {
		margin: 0 0 0;
		padding: 20px 20px;
	}
	
	.speechBubble {
	  margin: 10px 0 20px;
	  padding: 10px 10px:
	}
	
	/*flex02*/
	.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-date {
		width: 100%;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-title.left {
		text-align: center;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-date p span.txt-note {
		font-size: 1.4rem;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex.flex02 .schedule-time {
		width: 100%;
	}
	.course-season .intro-list-block .season-schedule .schedule-flex.flex02 img {
		height: 180px;
		margin: 10px 0 10px;
	}


}


/*春・夏・冬期講習でできること*/
.course-season .intro-list-block .season-box02 {
    margin: 90px 0 0;
}
.course-season .intro-list-block .season-box02 .point-area {
    margin: 0;
    padding: 0 0 0;
    display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
}
.course-season .intro-list-block .season-box02 .point-area .point {
    width: calc( ( 100% - 60px ) / 3 );
	background: #fff;
	box-shadow: 0 3px 10px rgba(190, 220, 205, .3);
	padding: 30px 20px;
    margin: 0 0 0;
}
.course-season .intro-list-block .season-box02 .point-area .point .point-above {
    display: flex;
    align-items: center;
    border-bottom: solid 1px #c7b476;
    padding: 0 0 20px 0;
    position: relative;
}
.course-season .intro-list-block .season-box02 .point-area .point .point-above .above-left {
    width: 40px;
}
.course-season .intro-list-block .season-box02 .point-area .point .point-above .above-left .point-txt01 {
    display: inline-block;
    font-size: 0.99rem;
    font-weight: bold;
    font-feature-settings: "palt";
    color: #c7b476;
    margin: 0;
    padding: 0;
    line-height: 1;
}
.course-season .intro-list-block .season-box02 .point-area .point .point-above .above-left .point-txt02 {
    display: inline-block;
    font-size: 2.7rem;
    font-weight: normal;
    font-feature-settings: "palt";
    color: #c7b476;
    margin: 0;
    padding: 0;
    line-height: 1;
}
.course-season .intro-list-block .season-box02 .point-area .point .point-above .point-ttl {
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 2.8rem;
    margin: 0;
    padding: 10px 0 0 10px;
    text-align: left;
}
.course-season .intro-list-block .season-box02 .point-area .point .point-txt03 {
    line-height: 2.8rem;
    margin: 0;
    padding: 30px 0 0 0;
}

@media screen and (max-width: 768px) {
	.course-season .intro-list-block .season-box02 {
		margin: 50px 0 0;
	}
	.course-season .intro-list-block .season-box02 .course-title {
         padding: 0 0; 
        margin-bottom: 0;
    }
	.course-season .intro-list-block .season-box02 .point-area {
        margin: 20px 0 0;
		padding: 0 0 30px;
		flex-wrap: wrap;
		gap: 20px;
    }
	.course-season .intro-list-block .season-box02 .point-area .point {
        width: 100%;
        margin: 0 0 0 0;
    }
	.course-season .intro-list-block .season-box02 .point-area .point .point-above {
        padding: 0 0 5px 0;
    }
	.course-season .intro-list-block .season-box02 .point-area .point .point-above .above-left .point-txt02 {
		font-size: 2.4rem;
	}
	 .course-season .intro-list-block .season-box02 .point-area .point .point-above .point-ttl {
        font-size: 2rem;
        line-height: 1.5;
        padding: 0 0 0 5px;
    }
	.course-season .intro-list-block .season-box02 .point-area .point .point-txt03 {
        line-height: 1.8;
        padding: 15px 20px 0 0;
    }
	
}

/*20241101 2023年度入試 合格体験談 追加*/
#course-detail.elementary .season-success .season-success-flex.junior,
#course-detail.elementary .season-success .season-success-flex.high {
	display: none;
}
#course-detail.chuugaku-juken .season-success .season-success-flex.junior,
#course-detail.chuugaku-juken .season-success .season-success-flex.high {
	display: none;
}

#course-detail.junior .season-success .season-success-flex.elementary,
#course-detail.junior .season-success .season-success-flex.high {
	display: none;
}

#course-detail.high .season-success .season-success-flex.elementary,
#course-detail.high .season-success .season-success-flex.junior {
	display: none;
}

.season-success {
	margin: 90px 0 0;
}
.season-success .season-success-flex {
	display: flex;
	justify-content: space-between;
}
.season-success .season-success-flex .season-success-detail {
	width: calc((100% - 30px) / 2);
    background: #fff;
    padding: 30px 40px;
}
.season-success .season-success-flex .season-success-detail.large {
	width: 100%;
}
.season-success .season-success-flex .season-success-detail .season-success-icon {
	display: flex;
	justify-content: center;
	gap: 20px;
	align-items: center;
	margin: 0 0 20px 0;
}
.season-success .season-success-flex .season-success-detail .season-success-icon img {
	width: 110px;
    height: 110px;
    object-fit: cover;
    object-position: center;
    border-radius: 100px;
}
.season-success .season-success-flex .season-success-detail .season-success-icon .season-success-uni {
	font-size: 2rem;
	font-weight: bold;
}
.season-success .season-success-flex .season-success-detail .season-success-title {
	font-size: 1.8rem;
	font-weight: bold;
	padding: 0 0 10px;
	text-align: center;
	color: #33B371;
}

@media screen and (max-width: 768px) {
	.course-season .intro-list-block .season-success {
		margin: 30px 0 0;
	}
	.season-success .season-success-flex {
		display: block;
	}
	.season-success .season-success-flex .season-success-detail,
	.season-success .season-success-flex .season-success-detail.large {
		width: 100%;;
		padding: 20px 20px;
		margin: 20px 0 0 0;
	}
	.season-success .season-success-flex .season-success-detail .season-success-icon {
		margin: 0 0 10px 0;
		justify-content: flex-start;
		gap: 10px;
	}
	.season-success .season-success-flex .season-success-detail .season-success-icon img {
		width: 80px;
		height: 80px;
		margin: 0 0;
	}
	.season-success .season-success-flex .season-success-detail .season-success-icon .season-success-uni {
		font-size: 1.8rem;
	}
	.season-success .season-success-flex .season-success-detail .season-success-title {
		font-size: 1.8rem;
		text-align: left;
	}
}

/*20241101 受講までの流れ 追加 season-flow*/
.season-flow {
	margin: 90px 0 0;
}
.season-flow .course-sub-title {
	text-align: center;
	font-size: 2rem;
	font-weight: 500;
	color: #516976;
	padding: 20px 0 0 0;
}
.season-flow-flex{
    display: flex;
    justify-content: space-between;
    margin: 0 0 20px;
}

.season-flow-flex li{
    width: calc( (100% - 200px) / 4);
    background-color: #fff;
    padding: 30px 20px;
    border-radius: 20px;
    text-align: center;
    box-shadow: 0 0 10px rgba(0,0,0,0.05);
    position: relative;
}
.season-flow-flex li::before{
    content: "";
    display: inline-block;
    border-top: solid 12px transparent;
    border-bottom: solid 12px transparent;
    border-left: solid 16px #92c527;
    position: absolute;
    top: 50%;
    right: -35px;
    transform: translateY(-50%);
}
.season-flow-flex li:last-child:before{
    display: none;
}
.season-flow-flex li .number{
    font-size: 2rem;
    font-weight: bold;
    padding: 0 5px ;
    color: #92c527;
    border-bottom: solid 3px #92c527;
    display: inline-block;
    width: 40px;
    margin: 0 auto 10px;
}
.season-flow-flex li .txt{
    font-size: 2rem;
    font-weight: bold;
	margin: 0 0 20px;
	position: relative;
}

.season-flow-flex li .min-txt{
    font-size: 1.6rem;
    color: #888;
	text-align: left;
}
.season-flow-flex li a {
    color: #92c527;
	line-height: 1.8;
	transition: all .3s ease;
	font-size: 1.8rem;
	font-weight: 500;
	margin: 20px 0 0 0;
	display: inline-block;
}
.season-flow-flex li a:hover {
    color: #888;
}
.season-flow-flex li a i::after {
	content: "\f002";
}

.season-flow-flex li img.season-flow-icon {
	position: absolute;
	left: -20px;
	top: -20px;
	width: 70px;
	object-fit: cover;
	object-position: center;
}

@media screen and (max-width: 768px) {
	.season-flow {
		margin: 50px 0 0;
	}
	.season-flow .course-sub-title {
		font-size: 1.8rem;
		padding: 10px 0 0 0;
	}
	.flex-wrap {
        overflow-x: scroll;
        margin: 0 0 20px;
    }
	.season-flow-flex{
        width: 920px;
    }
    .season-flow-flex li{
        width: 230px;
        padding: 20px 15px;
		margin: 0 30px 0 0;
        font-feature-settings: "palt";
    }
  
    .season-flow-flex li:last-child{
        margin: 0;
    }
    .season-flow-flex li::before{
        border-left: solid 14px #92c527;
        right: -24px;
    }
    .season-flow-flex li .number{
        font-size: 1.8rem;
        margin: 0 auto 10px;
    }
    .season-flow-flex li .txt{
        font-size: 1.8rem;
        font-weight: bold;
    }
	.season-flow-flex li a {
		font-size: 1.6rem;
		margin: 10px 0 0 0;
	}
	.season-flow-flex li img.season-flow-icon {
		left: 10px;
		top: 10px;
		width: 55px;
	}
	
}

/*夏期講習で苦手科目や.. */
.course-season .intro-list-block .last-area {
	margin: 50px 0 0 0;
}
.course-season .intro-list-block .last-area .txt-last {
	text-align: center;
    font-weight: bold;
    font-size: 2.5rem;
    line-height: 1.8;
}

/*20251222 選ばれる理由導線追加*/
.course-season .intro-list-block .last-area .btn-box {
	display: flex;
	justify-content: center;
	margin: 30px auto 0;
}
.course-season .intro-list-block .last-area .btn-box a.btn {
	width: 280px;
}

@media screen and (max-width: 768px) {
	.course-season .intro-list-block .last-area {
		margin: 30px 0 0 0;
	}
	.course-season .intro-list-block .last-area .txt-last {
		text-align: left;
		font-size: 1.8rem;
	}
	
	/*20251222 選ばれる理由導線追加*/
	.course-season .intro-list-block .last-area .btn-box {
		display: block;
		margin: 20px 0 10px;
	}
	.course-season .intro-list-block .last-area .btn-box a.btn {
		width: 100%;
	}
	
}

/*春期講習*/
#spring-lesson.course-season {
	background: #fff3f3;
}
#spring-lesson.course-season .img-right {
    position: absolute;
    width: 250px;
    top: -60px;
    right: 34px;
}
#spring-lesson.course-season .course-title h3 span {
    background: #fff3f3;
}
#spring-lesson.course-season .intro-list-block .season-box01 .block-caption {
    background: #f86771;
}
#spring-lesson.course-season .intro-list-block .season-box01 .block-caption::before {
    border-top: 10px solid #f86771;
}
#spring-lesson.course-season .intro-list-block .season-box01 .intro-list .point-catch {
	color: #f86771;
}
#spring-lesson.course-season .intro-list-block .season-schedule .schedule-title {
	color: #f86771;
}
#spring-lesson.course-season .speechBubble {
	border: 2px solid #f86771;
	color: #f86771;
}
#spring-lesson.course-season .speechBubble::before {
	border-color: #f86771 transparent transparent;
}
#spring-lesson.course-season table.date-time-table, 
#spring-lesson.course-season table.date-time-table td, 
#spring-lesson.course-season table.date-time-table th {
	border: 2px solid #f86771;
}
#spring-lesson.course-season table.date-time-table td {
	color: #f86771;
}
@media screen and (max-width: 768px) {
	#spring-lesson.course-season .img-right {
        width: 130px;
        top: -30px;
        right: 0px;
    }
}

/*夏期講習*/
#summer-lesson.course-season {
	background: #F0F9FC;
}
#summer-lesson.course-season .img-right {
    position: absolute;
    width: 250px;
    top: -60px;
    right: 34px;
}
#summer-lesson.course-season .course-title h3 span {
    background: #F0F9FC;
}
#summer-lesson.course-season .intro-list-block .season-box01 .block-caption {
    background: #50B5D8;
}
#summer-lesson.course-season .intro-list-block .season-box01 .block-caption::before {
    border-top: 10px solid #50B5D8;
}
#summer-lesson.course-season .intro-list-block .season-box01 .intro-list .point-catch {
	color: #50B5D8;
}
#summer-lesson.course-season .intro-list-block .season-schedule .schedule-title {
	color: #50B5D8;
}
#summer-lesson.course-season .speechBubble {
	border: 2px solid #50B5D8;
	color: #50B5D8;
}
#summer-lesson.course-season .speechBubble::before {
	border-color: #50B5D8 transparent transparent;
}
#summer-lesson.course-season table.date-time-table, 
#summer-lesson.course-season table.date-time-table td, 
#summer-lesson.course-season table.date-time-table th {
	border: 2px solid #50B5D8;
}
#summer-lesson.course-season table.date-time-table td {
	color: #50B5D8;
}
@media screen and (max-width: 768px) {
	#summer-lesson.course-season .img-right {
        width: 130px;
        top: -30px;
        right: 0px;
    }
}

/*冬期講習*/
#winter-lesson.course-season {
	background: #F4F8FB;
}
#winter-lesson.course-season .img-right {
    position: absolute;
    width: 250px;
    top: -60px;
    right: 34px;
}
#winter-lesson.course-season .course-title h3 span {
    background: #F4F8FB;
}
#winter-lesson.course-season .intro-list-block .season-box01 .block-caption {
    background: #5289C6;
}
#winter-lesson.course-season .intro-list-block .season-box01 .block-caption::before {
    border-top: 10px solid #5289C6;
}
#winter-lesson.course-season .intro-list-block .season-box01 .intro-list .point-catch {
	color: #5289C6;
}
#winter-lesson.course-season .intro-list-block .season-schedule .schedule-title {
	color: #5289C6;
}
#winter-lesson.course-season .speechBubble {
	border: 2px solid #5289C6;
	color: #5289C6;
}
#winter-lesson.course-season .speechBubble::before {
	border-color: #5289C6 transparent transparent;
}
#winter-lesson.course-season table.date-time-table, 
#winter-lesson.course-season table.date-time-table td, 
#winter-lesson.course-season table.date-time-table th {
	border: 2px solid #5289C6;
}
#winter-lesson.course-season table.date-time-table td {
	color: #5289C6;
}
@media screen and (max-width: 768px) {
	#winter-lesson.course-season .img-right {
        width: 130px;
        top: -30px;
        right: 0px;
    }
}
/*   春・夏・冬期講習コンテンツ end　-------------------------------------------------------------- */


#course-detail.elementary .point-area.junior,
#course-detail.elementary .point-area.high {
	display: none;
}
#course-detail.chuugaku-juken .point-area.junior,
#course-detail.chuugaku-juken .point-area.high {
	display: none;
}
#course-detail.junior .point-area.elementary,
#course-detail.junior .point-area.high {
	display: none;
}
#course-detail.high .point-area.elementary,
#course-detail.high .point-area.junior {
	display: none;
}

/*20240702 小中高ページ　アイコン追加*/
.season-icon {
	position: absolute;
    bottom: 30px;
    right: 30px;
}

@media screen and (max-width: 768px) {
	.season-icon {
		position: absolute;
        width: 110px;
        bottom: 20px;
		right: 10px;
	}
}

/*▽季節講習 非表示用の記述　※partsのbnr.phpもコメントアウト*/
.season-icon,
.course-season,
.bnr-area {
	display: none!important;
}

/*    point-lead-txt-area 20240723 追記
-------------------------------------------------------------- */
.point-lead-txt-area {
	padding: 80px 0 90px;
}
.point-lead-txt-area .lead-txt {
	text-align: center;
    font-weight: bold;
    font-size: 3.2rem;
    line-height: 1.6;
    margin: 0 0 40px;
} 
.point-lead-txt-area .basic-txt {
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.8;
}
@media screen and (max-width: 768px) {
	.point-lead-txt-area {
		padding: 40px 0 40px;
	}
	.point-lead-txt-area .lead-txt {
		text-align: left;
        font-size: 2.2rem;
        line-height: 1.5;
        margin: 0;
        /*padding: 0 0 5px;*/
		padding: 0 0 10px;
	} 
	.point-lead-txt-area .basic-txt {
		text-align: left;
		font-size: 1.6rem;
		line-height: 1.8;
	}
}

/*    course-point-area
-------------------------------------------------------------- */
.course-point-lead-area {
	background: #f1f9f5;
	padding: 50px 0 100px;
}

/* parts配下 course-point-area */
.course-point-area {
	margin: 50px 0 0;
}
.course-point-area .section-title-box {
	display: flex;
    justify-content: space-between;
    align-items: center;
	margin: 0 0 60px;
}

.course-point-area .course-point-detail ul {
	display: flex;
    justify-content: space-between;
}
.course-point-area .course-point-detail ul li {
	width: 380px;
	background: #fff;
    border: 1px #92c527 solid;
    padding: 40px 30px 30px;
    box-shadow: 6px 6px 0 #E0F3E9;
}

.course-point-area .course-point-detail ul li p.point-img {
	text-align: center;
	padding: 0 0 20px 0;
}
.course-point-area .course-point-detail ul li img {
	width: 180px;
	object-fit: cover;
	object-position: center;
}
.course-point-area .course-point-detail ul li p.point-ttl {
	font-size: 2.2rem;
	line-height: 1.5;
    color: #516976;
    font-weight: bold;
	text-align: center;
	padding: 0 0 10px 0;
}

@media screen and (max-width: 768px) {
	.course-point-lead-area {
		padding: 20px 0 20px;
	}
	
	/* parts配下 course-point-area */
	.course-point-area {
		margin: 30px 0 0;
	}
	.course-point-area .section-title-box {
		display: block;
		margin: 0 0 20px;
	}
	.course-point-area .section-catch {
		margin: 20px 20px 10px 0;
	}
	.course-point-area .course-point-detail ul {
		display: block;
	}
	.course-point-area .course-point-detail ul li {
		width: 100%;
		margin: 0 0 15px 0;
        padding: 30px 20px 20px;
        box-shadow: 4px 4px 0 #E0F3E9;
	}
	.course-point-area .course-point-detail ul li img {
		width: 160px;
		object-fit: cover;
		object-position: center;
	}
	.course-point-area .course-point-detail ul li p.point-ttl {
		font-size: 2rem;
	}
	
}

/*20240729 追記*/
#course-detail.elementary .flow-area,
#course-detail.junior .flow-area,
#course-detail.high .flow-area {
    margin: 150px 0 auto;
}
@media screen and (max-width: 768px) {
	#course-detail.elementary .flow-area,
	#course-detail.junior .flow-area,
	#course-detail.high .flow-area {
		margin: 50px 0 auto;
	}
}

/*    20240806 項目追加　逆転合格
-------------------------------------------------------------- */
#course-detail.high .junior-guidance{
	padding: 0 0 100px;
}
.student-achieve-box {
	background: #fff;
	/*padding: 50px 50px;*/
	padding: 50px 40px;
	box-shadow: 7px 7px 0px 1px rgba(12, 107, 8, .1);
}
.student-achieve-box .student-achieve-ttl {
	font-size: 2.4rem;
    font-weight: 600;
	text-align: center;
}
.student-achieve-box .student-achieve-ttl span {
    line-height: 1.1;
    background: #f05f26;
    color: #fff;
    padding: 6px;
    display: inline-block;
    margin: 0 2px;
    font-size: 2.7rem;
}
.student-achieve-box .achieve-flex {
	display: flex;
	justify-content: space-between;
	gap: 30px;
	margin: 80px 0 0;
}
.student-achieve-box .achieve-flex .achieve-case {
	width: calc( ( 100% - 30px ) / 3 );
	position: relative;
	border: solid 1px #657b86;
	padding: 70px 25px 30px;
}
.student-achieve-box .achieve-flex .achieve-case .achieve-img {
	display: flex;
	justify-content: center;
}
.student-achieve-box .achieve-flex .achieve-case .achieve-img img {
	width: 120px;
	height: 120px;
	object-fit: cover;
	object-position: center;
	border-radius: 100px;
	position: absolute;
	top: -50px;
}
.student-achieve-box .achieve-flex .achieve-case p.name {
	font-size: 1.8rem;
	text-align: center;
	padding: 10px 0;
	font-weight: 600;
}
.student-achieve-box .achieve-flex .achieve-case .txt-flex {
	display: flex;
	justify-content: center;
	align-items: flex-end;
}
.student-achieve-box .achieve-flex .achieve-case .txt-flex .before-txt {
	font-size: 1.8rem;
	line-height: 1.2;
}
.student-achieve-box span.gray {
	color: #676767;
	text-decoration: underline;
}
.student-achieve-box span.score {
	font-size: 2.5rem;
	padding: 0 5px;
}
.student-achieve-box span.arrow {
	font-size: 2.2rem;
}
.student-achieve-box .achieve-flex .achieve-case .txt-flex .after-txt {
	font-size: 5rem;
	font-weight: bold;
	line-height: 0.8;
	padding: 0 0 0 10px;
	color: #33B371;
}
.student-achieve-box .achieve-flex .achieve-case p.txt {
	font-size: 1.8rem;
	text-align: center;
	padding: 20px 0 0;
	line-height: 1.5;
	font-weight: 600;
}

/*achieve-school-box*/
.student-achieve-box .achieve-school-box {
	padding: 60px 0 0;
}
.student-achieve-box.single-box .achieve-school-box {
	padding: 0 0 0;
}
.student-achieve-box .achieve-school-box p.txt {
	padding: 20px 0 0;
	text-align: center;
}

@media screen and (max-width: 667px) {
	#course-detail.high .junior-guidance{
		padding: 0 0 50px;
	}
	.student-achieve-box {
		padding: 30px 20px;
	}
	.student-achieve-box .achieve-flex {
		display: flex;
		justify-content: space-between;
		gap: 80px;
		margin: 60px 0 0;
		flex-wrap: wrap;
	}
	.student-achieve-box .student-achieve-ttl {
		font-size: 2rem;
	}
	.student-achieve-box .student-achieve-ttl span {
		padding: 6px;
		margin: 0 2px;
		font-size: 2.5rem;
	}
	.student-achieve-box .achieve-flex .achieve-case {
		width: 100%;
		position: relative;
		border: solid 1px #333;
		padding: 70px 10px 20px;
	}
	.student-achieve-box .achieve-flex .achieve-case p.name {
		font-size: 1.7rem;
	}
	.student-achieve-box span.score {
		font-size: 2.2rem;
	}
	.student-achieve-box .achieve-flex .achieve-case .txt-flex .after-txt {
		font-size: 4.5rem;
	}
	
	.student-achieve-box .achieve-school-box {
		padding: 30px 0 0;
	}
}

/*20241017　中学受験ページ追加*/
.chuugaku-juken-guidance {
	background: #ecf7ed;
	padding: 70px 0 50px;
}

.chuugaku-juken-guidance .guidance-title {
	text-align: center;
    font-weight: bold;
    font-size: 3.2rem;
    line-height: 1.6;
    margin: 0 0 40px;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-list {
	display: flex;
    width: 1200px;
    margin: 0 auto;
	justify-content: space-between;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-list li {
	width: 380px;
    background: #fff;
    /*border: 1px #92c527 solid;*/
    padding: 40px 30px 30px;
    box-shadow: 6px 6px 0 #E0F3E9;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex {
	display: flex;
	align-items: center;
	gap: 15px;
	margin: 0 0 20px;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex .course-en {
	background: #003D93;
	color: #fff;
	width: 50px;
	height: 50px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.4rem;
}
.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex .course-en.color02 {
	background: #DF002D;
}
.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex .course-en.color03 {
	background: #005DA8;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex .course-name {
	font-size: 2.4rem;
	font-weight: bold;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .course-detail-title {
	font-size: 2.4rem;
	font-weight: bold;
	text-align: center;
	padding: 20px 0 10px;
}

.chuugaku-juken-guidance .chuugaku-juken-guidance-last {
	padding: 50px 0 0 0;
}
.chuugaku-juken-guidance .chuugaku-juken-guidance-last p {
	font-size: 2.4rem;
    font-weight: bold;
    text-align: center;
}

/*逆転合格*/
#course-detail .guidance-area .inner.chuugaku-juken {
    padding: 100px 0 50px;
}

/*「インプット教育」から「アウトプット教育」へ 削除*/
#course-detail .guidance-area .inner .catch-block.block-single {
	width: 100%;
}

@media screen and (max-width: 667px) {
	.chuugaku-juken-guidance {
		padding: 20px 20px 20px;
	}

	.chuugaku-juken-guidance .guidance-title {
		text-align: left;
		font-weight: bold;
		font-size: 2rem;
		margin: 0 0 5px;
	}

	.chuugaku-juken-guidance .chuugaku-juken-guidance-list {
		display: block;
		width: 100%;
		margin: 0 0;
	}

	.chuugaku-juken-guidance .chuugaku-juken-guidance-list li {
		width: 100%;
    	padding: 30px 20px 20px;
        box-shadow: 4px 4px 0 #E0F3E9;
		margin-bottom: 20px;
	}
	.chuugaku-juken-guidance .chuugaku-juken-guidance-list li:last-of-type {
		margin-bottom: 0;
	}

	.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex {
		gap: 10px;
		margin: 0 0 20px;
	}

	.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex .course-en {
		width: 40px;
		height: 40px;
		font-size: 2.0rem;
	}

	.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .list-course-flex .course-name {
		font-size: 2rem;
	}

	.chuugaku-juken-guidance .chuugaku-juken-guidance-list li .course-detail-title {
		font-size: 2rem;
		padding: 10px 0 10px;
	}
	
	.chuugaku-juken-guidance .chuugaku-juken-guidance-last {
		padding: 20px 0 0 0;
	}
	.chuugaku-juken-guidance .chuugaku-juken-guidance-last p {
		font-size: 1.8rem;
		font-weight: bold;
		text-align: center;
	}
	
	/*逆転合格*/
	#course-detail .guidance-area .inner.chuugaku-juken {
		padding: 40px 0 20px;
	}
	
}

/*    20241210 course-block 追加
-------------------------------------------------------------- */
#course-detail .course-other-area {
	background: #f2f2f2;
	padding: 80px 0;
}

#course-detail .course-other-area .course-block {
	background: #fff;
    display: flex;
    justify-content: space-between;
    padding: 60px 60px 150px;
    margin: 0 0 0;
    position: relative;
}
#course-detail .course-other-area .course-block.second {
	margin-top: 50px;
}
#course-detail .course-other-area .course-block .img-area {
    margin: 0 0 0 40px;
	text-align: center;
}
#course-detail .course-other-area .course-block .img-area img {
    width: 400px;
    margin: 0 auto 20px;
}
#course-detail .course-other-area .course-block .txt-area .txt-inner:last-of-type {
    margin: 0;
}
#course-detail .course-other-area .course-block .course-title {
    color: #c65252;
    font-size: 2.7rem;
    font-weight: 600;
    line-height: 1.5;
    margin: 0 0 20px;
}
#course-detail .course-other-area .course-block .detail-caption {
    width: 600px;
    background: #f2f2f2;
    font-size: 2rem;
    font-weight: bold;
    line-height: 2;
    padding: 5px 25px 5px 55px;
    margin: 0 0 25px 30px;
    position: relative;
}
#course-detail .course-other-area .course-block .detail-caption span {
    background: #c65252;
    border-radius: 50px;
    color: #fff;
    font-size: 1.4rem;
    font-weight: normal;
    padding: 2px 18px;
    position: absolute;
    top: 50%;
    left: -30px;
    transform: translateY(-50%);
}
#course-detail .course-other-area .course-block .btn-area {
	display: block;
    position: absolute;
    bottom: 50px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
	padding: 0 0 0;
}
#course-detail .course-other-area .course-block .btn-area a.school-btn {
    text-align: center;
    position: relative;
    display: inline-block;
    padding: 25px 0;
    text-decoration: none;
    transition: all 0.3s;
    width: 350px;
	background: #c65252;
    color: #fff;
    border: none;
	line-height: 1.5;
}

#course-detail .course-other-area .course-block .btn-area a.school-btn::after {
    content: "\f054";
    font: 900 1.3rem / 1 "Font Awesome 5 Free";
    position: absolute;
    top: calc((100% - 1em) / 2);
    right: 15px;
}
	
/* 中学受験カラー */
#course-detail .course-other-area .course-block.chuugaku-juken .course-title {
	color: #CC6F38;
}
#course-detail .course-other-area .course-block.chuugaku-juken .detail-caption span {
	background: #CC6F38;
}
#course-detail .course-other-area .course-block.chuugaku-juken .btn-area a.school-btn {
	background: #CC6F38;
}

/* オンラインカラー */
#course-detail .course-other-area .course-block.online .course-title {
	color: #49a742;
}
#course-detail .course-other-area .course-block.online .detail-caption span {
	background: #49a742;
}
#course-detail .course-other-area .course-block.online .btn-area a.school-btn {
	padding: 15px 0;
	background: #49a742;
}


/*コースごとに表示出し分け*/
#course-detail.elementary .course-other-area .course-block.only-chuugaku-juken,
#course-detail.elementary .course-other-area .course-block.only-junior,
#course-detail.elementary .course-other-area .course-block.only-high,
#course-detail.elementary .course-other-area .course-block.only-cram {
	display: none;
}
#course-detail.chuugaku-juken .course-other-area .course-block.only-elementary,
#course-detail.chuugaku-juken .course-other-area .course-block.only-junior,
#course-detail.chuugaku-juken .course-other-area .course-block.only-high,
#course-detail.chuugaku-juken .course-other-area .course-block.only-cram {
	display: none;
}
#course-detail.junior .course-other-area .course-block.only-elementary,
#course-detail.junior .course-other-area .course-block.only-chuugaku-juken,
#course-detail.junior .course-other-area .course-block.only-high,
#course-detail.junior .course-other-area .course-block.only-cram {
	display: none;
}
#course-detail.high .course-other-area .course-block.only-elementary,
#course-detail.high .course-other-area .course-block.only-chuugaku-juken,
#course-detail.high .course-other-area .course-block.only-junior,
#course-detail.high .course-other-area .course-block.only-cram {
	display: none;
}
#course-detail.cram .course-other-area .course-block.only-elementary,
#course-detail.cram .course-other-area .course-block.only-chuugaku-juken,
#course-detail.cram .course-other-area .course-block.only-junior,
#course-detail.cram .course-other-area .course-block.only-high {
	display: none;
}

/*20250423 テキスト修正のみ反映が完了したら下記削除*/
/*#course-detail.junior .course-other-area,
#course-detail.high .course-other-area,
#course-detail.cram .course-other-area {
	display: none;
}*/


@media screen and (max-width: 667px) {
	#course-detail .course-other-area {
		padding: 20px 0;
	}
	#course-detail .course-other-area .course-block {
		flex-wrap: wrap;
        padding: 20px 15px 120px;
        margin: 0 0 20px;
	}
	#course-detail .course-other-area .course-block.second {
		margin-top: 0;
	}
	#course-detail .course-other-area .course-block .img-area {
    	margin: 0 0 20px;
        text-align: center;
	}
	#course-detail .course-other-area .course-block .img-area img {
   		width: 100%;
        margin: 0 0 15px 0;
	}
	 #course-detail .course-other-area .course-block .txt-area {
        clear: both;
    }
	#course-detail .course-other-area .course-block .course-title {
		font-size: 2.3rem;
	}
	#course-detail .course-other-area .course-block .detail-caption {
   		width: 100%;
        font-size: 1.7rem;
        line-height: 1.6;
        padding: 25px 10px 20px;
        margin: 0 0 25px;
	}
	#course-detail .course-other-area .course-block .detail-caption span {
    	font-size: 1.2rem;
        padding: 2px 10px;
        top: -5px;
        left: -5px;
        transf
	}
	#course-detail .course-other-area .course-block .btn-area {
		width: 90%;
        bottom: 30px;
	}
	#course-detail .course-other-area .course-block .btn-area a.school-btn {
    	width: 100%;
		font-size: 1.5rem;
	}

}

/*   20250520 parent-area
-------------------------------------------------------------- */
.parent-area{
    position: relative;
    padding: 80px 0 100px;
}

.parent-area .parent-txt-box {
	display: block;
	width: 100%;
}

.parent-area h4 {
    font-size: 3rem;
    font-weight: bold;
    margin: 40px 0 20px;
}

.parent-area .catch {
    font-size: 2rem;
    font-weight: bold;
    margin: 0 0 20px;
    color: #33b371;
}

.parent-area .parent-flex .catch {
    font-size: 1.8rem;
    font-weight: bold;
    margin: 0 0 15px;
    color: #33b371;
    display: inline-block;
}

.parent-area .parent-flex .catch.sp-display {
    display: none;
}

.parent-area .catch span {
    color: #333;
}

.parent-area h5 {
    display: inline-block;
    font-size: 2.2rem;
    font-weight: bold;
	margin: 0 0 30px;
    
}

.parent-area h5.sp-only {
	display: none;
}

.parent-area h5 span {
	background-color: #33b371;
    color: #fff;
	padding: 8px 10px;
	line-height: 2.2;
}

.parent-area .parent-flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}

.parent-area .parent-flex .before-box {
    position: relative;
    width: 580px;
    /*height: 480px;*/
    height: initial;
    border-radius: 0;
    padding: 40px 20px 20px;
    background-color: #F6F6F6;
}

.parent-area.elementary .parent-flex .before-box {
    height: 680px;
}

.parent-area.junior .parent-flex .before-box {
    height: 620px;
}

.parent-area .parent-flex .before-box::before {
    content: "BEFORE";
    display: inline-block;
    font: 8rem / 1 "Lato";
    font-weight: bold;
    color: #E1EEE7;
    opacity: 1;
    position: absolute;
    left: 0;
    top: -60px;
}

.parent-area .parent-flex .before-box::after {
    content: "入塾前";
    display: inline-block;
    font: 2.9rem / 1 "Lato";
    font-weight: bold;
    color: #516976;
    position: absolute;
    left: 320px;
    top: -20px;
}

.parent-area .parent-flex .before-box .arrow-img {
    width: 180px;
    position: absolute;
    right: -10px;
    top: -140px;
    display: inline-block;
    bottom: initial;
}

.parent-area .parent-flex .before-box .arrow-img img {
    width: 100%;
}

.parent-area .parent-flex .txt-box {
    background-color: #fff;
    width: 100%;
    background: initial;
    border-radius: 0;
    padding: 0;
}

.parent-area .parent-flex .txt-box img.right{
    display: inline-block;
    margin: 0 0 0 15px;
    float: right;   
}

.parent-area .parent-flex .txt-box img.left{
    display: inline-block;
    margin: 0 15px 0 0;
    float: left;   
}

.parent-area .parent-flex .txt-box .txt {
    margin: 0 0 20px;
    font-size: 1.5rem;
    line-height: 1.9;
}

.parent-area .parent-flex .txt-box:last-child .txt:last-child {
    margin: 0;
}

.parent-area .parent-flex .after-box {
    width: 580px;
    padding: 40px 20px 20px;
    border-radius: 0;
    height: auto;
    background: #ECF7ED;
    position: relative;
	margin-bottom: 150px;
}

.parent-area.parent-area.elementary .parent-flex .after-box {
    height: 550px;
}

.parent-area .parent-flex .after-box::before {
    content: "AFTER";
    display: inline-block;
    font: 8rem / 1 "Lato";
    font-weight: bold;
    color: #E1EEE7;
    opacity: 1;
    position: absolute;
    left: 0;
    top: -60px;
}

.parent-area .parent-flex .after-box::after {
    content: "入塾後";
    display: inline-block;
    font: 2.9rem / 1 "Lato";
    font-weight: bold;
    color: #516976;
    position: absolute;
    left: 260px;
    top: -20px;
}

.parent-area .bg-img {
    position: absolute;
    overflow: hidden;
}

.parent-area .bg-img.img01 {
    width: 525px;
    bottom: -20px;
    left: 0;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
}

.parent-area .bg-img.img02 {
    width: 525px;
    top: 120px;
    right: 0;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
}

.parent-area .bg-img img {
    width: 100%;
}

/*parent-support-box*/
.parent-area .parent-support-box {
	margin: 80px 0 0;
	padding: 50px 40px 40px;
    /*background-color: #F6F6F6;*/
    background-color: #ECF7ED;
	position: relative;
}
.parent-area .parent-support-box .parent-support-title {
	width: 100%;
	text-align: center;
	font-size: 2.4rem;
    font-weight: bold;
	position: absolute;
	top: -17px;
}
.parent-area .parent-support-box .parent-support-flex {
	display: flex;
	justify-content: space-between;
}
.parent-area .parent-support-box .parent-support-flex .support-contain {
	width: calc( ( 100% - 40px ) / 2 );
	background: #fff;
    padding: 30px;
    box-shadow: 6px 6px 0 #E0F3E9;
}
.parent-area .parent-support-box .parent-support-flex .support-contain .support-img-box {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 10px;
	margin: 0 0 20px;
}
.parent-area .parent-support-box .parent-support-flex .support-contain .support-img-box img {
	width: 80px;
	object-fit: cover;
	object-position: center;
	margin: 0 0 0;
}
.parent-area .parent-support-box .parent-support-flex .support-contain .support-img-box p {
	font-size: 2rem;
	font-weight: bold;
	color: #33b371;
}

@media screen and (max-width: 768px) {
    .parent-area{
        padding: 60px 0 0;
    }

    .parent-area h4 {
        font-size: 2.2rem;
        margin: 30px 0 10px;
    }

    .parent-area .catch {
        font-size: 2rem;
        line-height: 1.5;
        margin: 10px 0 10px;
        color: #33b371;
    }
    
    .parent-area .catch.pc-display {
        display: none;
    }
    
    .parent-area .parent-flex .catch.sp-display {
        display: block;
    }

    .parent-area .catch span {
        font-size: 1.6rem;
    }

    .parent-area h5 {
        font-size: 1.8rem;
        padding: 0 0 0;
        margin: 0 0 40px;
    }
	
	.parent-area h5.pc-only {
		display: none;
	}
	.parent-area h5.sp-only {
		display: block;
	}
	
	.parent-area h5 span {
		line-height: 2.4;
	}

    .parent-area .parent-flex {
        display: block;
        flex-wrap: wrap;
    }
    
    .parent-area .parent-flex .before-box {
        width: 100%;
        height: initial;
        border-radius: 0;
        padding: 40px 20px 20px;
        background-color: #F6F6F6;
        margin: 0 0 60px;
    }
    
    .parent-area .parent-flex .before-box::before {
        font: 4rem / 1 "Lato", sans-serif;
        font-weight: bold;
        left: -20px;
        top: -20px;
    }
    
    .parent-area .parent-flex .before-box::after {
        font: 2.2rem / 1 "Lato", sans-serif;
        font-weight: normal;
        left: initial;
        right: 20px;
        top: -10px;
        display: none;
    }
    
    .parent-area .parent-flex .before-box .arrow-img {
        width: 150px;
        right: 25px;
        top: initial;
        bottom: -80px;
    }
    
    .parent-area .parent-flex .txt-box {
        width: 100%;
        padding: 0;
    }

    .parent-area .parent-flex .after-box {
        width: 100%;
        padding: 40px 20px 20px;
        height: auto;
		margin-bottom: 0;
    }
    
    .parent-area .parent-flex .after-box::before {
        font: 4rem / 1 "Lato", sans-serif;
        font-weight: bold;
        left: -20px;
        top: -20px;
    }
    .parent-area .parent-flex .after-box::after {
        font: 2.2rem / 1 "Lato", sans-serif;
        font-weight: normal;
        left: initial;
        right: 20px;
        top: -10px;
        display: none;
    }

    .parent-area .bg-img.img02 {
        width:65%;
        max-width: 360px;
        top: 0;
    }
    
    .parent-area .parent-flex .txt-box img.right,
    .parent-area .parent-flex .txt-box img.left{
        margin: 0 0 15px 0;
    }
	
	/*parent-support-box*/
	.parent-area .parent-support-box {
		margin: 30px 0 40px;
		padding: 20px 20px 20px;
	}
	.parent-area .parent-support-box .parent-support-title {
		position: static;
		font-size: 1.6rem;
		top: 0;
	}
	.parent-area .parent-support-box .parent-support-flex {
		display: flex;
		flex-direction: column;
		gap: 20px;
		margin: 20px 0 0 0;
	}
	.parent-area .parent-support-box .parent-support-flex .support-contain {
		width: 100%;
		padding: 20px 20px;
		box-shadow: 6px 6px 0 #E0F3E9;
	}
	.parent-area .parent-support-box .parent-support-flex .support-contain .support-img-box {
		justify-content: center;
		gap: 10px;
		margin: 0 0 20px;
	}
	.parent-area .parent-support-box .parent-support-flex .support-contain .support-img-box img {
		width: 60px;
		object-fit: cover;
		object-position: center;
	}
	.parent-area .parent-support-box .parent-support-flex .support-contain .support-img-box p {
		font-size: 1.8rem;
	}
    
}

/*    20250904追加 塾長メッセージ
-------------------------------------------------------------- */
.message-area.course {
	background: url(/vendor/juku-demo/control/img/img-guidance-support.jpg) right 0 top / cover no-repeat;
	padding: 100px 0;
}

.message-area.course .section-title {
	margin: 0 0 40px;
}

.message-area.course .in {
	width: 700px;
}

.message-area.course .title {
	font-size: 3.0rem;
	font-weight: 500;
	line-height: 1.6;
	margin: 0 0 30px;
}

.message-area.course .txt {
	line-height: 2;
}

@media screen and (max-width: 768px) {
	.message-area.course {
		background: none;
		padding: 0 0 30px;
	}
	.message-area.course .section-title {
		margin: 0 0 30px;
		padding: 50px 20px 20px 20px;
		background: url(/vendor/juku-demo/control/img/img-guidance-support-sp.jpg) center top / cover no-repeat;
		height: 180px;
	}
	.message-area.course .in {
		width: 100%;
	}
	.message-area.course .title {
		font-size: 2rem;
		margin: 0 0 20px;
	}
	
}

/*    index-area 20250924追加
-------------------------------------------------------------- */
#course-detail .index-area {
	padding: 0 0 100px;
}

#course-detail .index-area i {
	margin: 0 10px 0 0;
	color: #32b372;
}

#course-detail .index-area .index-ttl {
	font-size: 2.1rem;
	font-weight: 500;
	margin: 0 0 30px 0;
}

#course-detail .index-area .index-box {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	background: #f8f8f8;
	padding: 30px 50px 10px;
	border-left: 15px solid #33b371;
}

#course-detail .index-area .index-box .sp-wrap {
	display: contents;
}

#course-detail .index-area .index-box .list {
	width: 33.3%;
	margin: 0 0 30px 0;

}

#course-detail .index-area .index-box .list a {
	color: #333;
	padding: 0 5px 5px 0;
	font-size: 2rem;
	transition: all .3 ease;
}

#course-detail .index-area .index-box .list a:hover {
	color: #33b371;
}

@media screen and (max-width: 768px) {
	#course-detail .index-area {
		padding: 0 20px 40px;
	}

	#course-detail .index-area i {
		margin: 0 10px 0 0;
		color: #32b372;
	}

	#course-detail .index-area .index-ttl {
		font-size: 2.0rem;
		line-height: 1.5;
		background: #33b371;
		color: #fff;
		padding: 8px 15px;
		margin: 0;
	}

	#course-detail .index-area .more-ttl {
		font-size: 1.8rem;
		padding: 15px 60px 15px 40px;
		background-color: #33b371;
		color: #fff;
		position: relative;
		margin: 20px auto 0;
	}

	#course-detail .index-area .more-index::before {
		display: block;
		content: '';
		background-color: #fff;
		position: absolute;
		width: 10px;
		height: 2px;
		top: 50%;
		right: 20px;
		transform: translateY(-50%);
	}

	#course-detail .index-area .more-index::after {
		display: block;
		content: '';
		background-color: #fff;
		position: absolute;
		width: 2px;
		height: 10px;
		top: 50%;
		right: 24px;
		transform: translateY(-50%);
		transition: all .3s ease;
	}

	#course-detail .index-area .more-index.open::after {
		transform: translateY(-50%) rotate(-90deg);
	}

	#course-detail .index-area .index-box {
		width: 100%;
		/*display: none;*/
		flex-wrap: wrap;
		background: #f8f8f8;
		padding: 10px 17px 25px;
		border-left: none;
		border: solid 1px #33b371;
	}

	#course-detail .index-area .index-box.open {}

	#course-detail .index-area .index-box .list {
		width: 100%;
		padding: 15px 0;
		margin: 0;
		font-feature-settings: "palt";
		border-bottom: 1px solid #ddd;
	}

	#course-detail .index-area .index-box .sp-wrap {
		display: none;
		width: 100%;
	}

	#course-detail .index-area .index-box .sp-wrap.open {
		display: block;
	}

	#course-detail .index-area .index-box .list a {
		display: block;
		color: #333;
		padding: 0;
		font-size: 1.6rem;
		transition: all .3 ease;
		width: 100%;
	}

	#course-detail .index-area .index-box .list a:hover {
		color: #33b371;
	}
}

/* -----------------------------------------------------------
  	20251020 process-area .process-box
-------------------------------------------------------------- */
#course-detail .process-area {
	background: none;
	padding: 100px 0 100px;
}

#course-detail .process-area .process-box {
	position: relative;
}

#course-detail .process-area .process-box .section-title-box .section-title {
    font-family: 'Roboto', sans-serif;
    font-size: 5rem;
    font-weight: 500;
    line-height: 1.1;
    color: #516976;
    padding: 0 0 45px;
    position: relative;
}

/*
#course-detail .process-area .process-box .student-achieve-ttl {
	font-size: 2.4rem;
    font-weight: 600;
	text-align: center;
}
#course-detail .process-area .process-box .student-achieve-ttl span {
    line-height: 1.1;
    background: #f05f26;
    color: #fff;
    padding: 6px;
    display: inline-block;
    margin: 0 2px;
    font-size: 2.7rem;
}
*/

/*▽パターン1 逆転合格のためのプロセス*/
/*#course-detail .process-area .process-box .process-bg-img {
	display: block;
	position: absolute;
	top: -50px;
	right: -20px;
}
#course-detail .process-area .process-box .process-bg-img img {
	width: 600px;
	object-fit: cover;
	object-position: center;
}

#course-detail .process-area .process-box .process-list{
	display: flex;
	justify-content: center;
	margin: 50px 0 0;
	color: #fff;
}
#course-detail .process-area .process-box .process-list li{
	padding: 20px 15px 10px 40px;
	position: relative;
	font-weight: 700;
	width: 240px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	gap: 10px;
}

#course-detail .process-area .process-box .process-list li:nth-child(1),
#course-detail .process-area .process-box .process-list li:nth-child(3),
#course-detail .process-area .process-box .process-list li:nth-child(5){
	background-color: #ecf7ed;
}
#course-detail .process-area .process-box .process-list li:nth-child(1):after,
#course-detail .process-area .process-box .process-list li:nth-child(3):after{
	border-left: 20px solid #ecf7ed;
}

#course-detail .process-area .process-box .process-list li:nth-child(2),
#course-detail .process-area .process-box .process-list li:nth-child(4){
	background-color: #fff;
}
#course-detail .process-area .process-box .process-list li:nth-child(2):after,
#course-detail .process-area .process-box .process-list li:nth-child(4):after{
	border-left: 20px solid #fff;
}

#course-detail .process-area .process-box .process-list li:nth-child(5):after{
	border-left: none;
}

#course-detail .process-area .process-box .process-list li::after{
	border-bottom: 194px solid transparent;
    border-left: 20px solid #0b86d1;
    border-top: 194px solid transparent;
    content: "";
    height: 0;
    inset: 0 -20px auto auto;
    position: absolute;
    width: 0;
    z-index: 1;
}

#course-detail .process-area .process-box .process-list li p.list-num {
	display: inline-block;
	padding: 0px 15px;
	text-align: center;
	border-radius: 50px;
	font-size: 1.4rem;
	background: #32b372;
}
#course-detail .process-area .process-box .process-list li p.list-ttl {
	text-align: center;
	font-size: 1.9rem;
	line-height: 1.5;
	font-weight: 700;
	color: #333;
}
#course-detail .process-area .process-box .process-list li p.basic-txt {
	font-size: 1.6rem;
	line-height: 1.8;
	font-weight: 400;
	color: #333;
}*/

@media screen and (max-width: 667px){
	#course-detail .process-area {
		background-image: none;
		background: #F8FCFA;
		padding: 50px 0 50px;
	}

	#course-detail .process-area .process-box {
		position: relative;
	}

	#course-detail .process-area .process-box .section-title-box .section-title {
		font-size: 2.8rem;
        padding: 0 0 20px;
	}
	
	/*▽パターン1 逆転合格のためのプロセス*/
	/*#course-detail .process-area .process-box .process-bg-img {
		display: block;
		position: absolute;
		top: -40px;
		right: 20px;
	}
	#course-detail .process-area .process-box .process-bg-img img {
		width: 110px;
		object-fit: cover;
		object-position: center;
	}
	
	#course-detail .process-area .process-box .process-list{
		flex-direction: column;
		margin: 20px 0 0;
	}
	#course-detail .process-area .process-box .process-list li{
		padding: 20px 20px;
		width: 100%;
	}
	
	#course-detail .process-area .process-box .process-list li::after{
		position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        border-left: 20px solid transparent;
        border-right: 20px solid transparent;
        border-top: 10px solid #e2eff8;
        border-bottom: none;
	}
	
	#course-detail .process-area .process-box .process-list li:nth-child(1):after {
		display: none;
	}
	#course-detail .process-area .process-box .process-list li:nth-child(2):after,
	#course-detail .process-area .process-box .process-list li:nth-child(4):after{
		border-left: 20px solid transparent;
		border-top: 10px solid #ecf7ed;
	}
	#course-detail .process-area .process-box .process-list li:nth-child(3):after,
	#course-detail .process-area .process-box .process-list li:nth-child(5):after{
		border-left: 20px solid transparent;
		border-top: 10px solid #fff;
	}
	
	#course-detail .process-area .process-box .process-list li p.list-ttl {
		font-size: 1.8rem;
	}
*/
}


/*▽逆転合格のためのプロセス*/
#course-detail .process-area {
	background: #F8FCFA!important;
	padding: 100px 0 100px!important;
}

#course-detail .process-area .process-box .process-bg-img {
	display: block;
	position: absolute;
	top: -40px!important;
	right: 0px!important;
}
#course-detail .process-area .process-box .process-bg-img img {
	width: 560px!important;
	object-fit: cover;
	object-position: center;
}

#course-detail .process-area .process-box .process-contain {
	margin-bottom: 450px;
}

#course-detail .process-area .process-box .process-list.style02 {
	display: flex;
	margin: 50px 0 0 0;
}
#course-detail .process-area .process-box .process-list.style02 li {
	position: relative;
	width: 235px;
	height: 80px;
	padding: 20px 20px 30px 40px;
	background: #e2eff8;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	flex-direction: column;
	gap: 10px;
}

#course-detail .process-area .process-box .process-list.style02 li::after {
	display: none;
}
#course-detail .process-area .process-box .process-list.style02 li.step01 {
	padding: 20px 10px 30px 30px;
	background: #33B371;
}
#course-detail .process-area .process-box .process-list.style02 li.step02 {
	background: #92c527;
}
#course-detail .process-area .process-box .process-list.style02 li.step03 {
	background: #33B371;
}
#course-detail .process-area .process-box .process-list.style02 li.step04 {
	background: #92c527;
	width: 260px;
}
#course-detail .process-area .process-box .process-list.style02 li.step05 {
	background: none;
	padding-left: 20px;
}

#course-detail .process-area .process-box .sankaku {
	position: absolute;
	bottom: 0;
	right: -40px;
	z-index: 1;
  	width: 0;
    height: 0;
  	border-top: 40px solid transparent;
  	border-bottom: 39px solid transparent;
}
#course-detail .process-area .process-box .sankaku.co-01 {
  	border-left: 40px solid #33B371;
}
#course-detail .process-area .process-box .sankaku.co-02 {
  	border-left: 40px solid #92c527;
}
#course-detail .process-area .process-box .sankaku.co-03 {
  	border-left: 40px solid #33B371;
}
#course-detail .process-area .process-box .sankaku.co-04 {
  	border-left: 40px solid #92c527;
}

#course-detail .process-area .process-box .fc-flow-step {
	font-size: 2.4rem;
	line-height: 1;
	color: #fff;
	text-align: center;
	font-weight: bold;
	display: flex;
	justify-content: center;
	align-items: flex-start;
	position: absolute;
	top: 25px;
}
#course-detail .process-area .process-box .step05 .fc-flow-step {
    width: 130px;
	height: 130px;
	line-height: 130px;
	border-radius: 50%;
	color: #32b372;
	background: #faed25;
	text-align:center;
	top: -30px;
	border: solid 2px #33B371;
}

#course-detail .process-area .process-box .flow-detail {
	display: block;
	padding: 40px 20px 30px;
	margin-top: 50px;
	background: #fff;
	box-shadow: 7px 7px 0px 1px rgba(12, 107, 8, .1);
}
#course-detail .process-area .process-box .flow-detail p.flow-sub {
	color: #32b372;
	font-size: 2rem;
	line-height: 1.5;
	font-weight: 600;
	padding: 0 0 15px 0;
	text-align: center;
}
#course-detail .process-area .process-box .flow-detail p.txt {
	color: #333;
	font-size: 1.6rem;
    line-height: 1.8;
	font-weight: normal;
}

@media screen and (max-width: 900px) {
	#course-detail .process-area {
		background: #F8FCFA!important;
		padding: 50px 0 50px!important;
	}
	
	#course-detail .process-area .process-box .process-bg-img {
		display: block;
		position: absolute;
		top: -40px!important;
		right: 20px!important;
	}
	#course-detail .process-area .process-box .process-bg-img img {
		width: 110px!important;
		object-fit: cover;
		object-position: center;
	}
	
	#course-detail .process-area .process-box .process-contain {
		margin-bottom: 50px;
	}
	
	#course-detail .process-area .process-box .process-list.style02 {
		display: block;
		margin: 30px 0 0 0;
	}
	#course-detail .process-area .process-box .process-list.style02 li {
		width: 100%;
		height: auto;
		padding: 20px 15px 20px 15px;
	}
	#course-detail .process-area .process-box .process-list.style02 li.step01 {
		padding: 20px 15px 20px 15px;
	}
	#course-detail .process-area .process-box .process-list.style02 li.step02 {
	}
	#course-detail .process-area .process-box .process-list.style02 li.step03 {
	}
	#course-detail .process-area .process-box .process-list.style02 li.step04 {
		width: 100%;
	}
	#course-detail .process-area .process-box .process-list.style02 li.step05 {
		padding: 20px 15px 20px 15px;
		background: #33B371;
	}

	#course-detail .process-area .process-box .sankaku {
		position: absolute;
		bottom: -10px;
		left: 0;
		right: 0;
		margin: auto;
		border-bottom: none;
	}
	#course-detail .process-area .process-box .sankaku.co-01 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #33B371;
	}
	#course-detail .process-area .process-box .sankaku.co-02 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #92c527;
	}
	#course-detail .process-area .process-box .sankaku.co-03 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #33B371;
	}
	#course-detail .process-area .process-box .sankaku.co-04 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #92c527;
	}
	
	#course-detail .process-area .process-box .fc-flow-step {
		font-size: 2rem;
		position: static;
	}
	#course-detail .process-area .process-box .step05 .fc-flow-step {
		width: 80px;
		height: 80px;
		line-height: 80px;
		border: none;
	}
	
	#course-detail .process-area .process-box .flow-detail {
		position: static;
		padding: 20px 15px;
		margin: 0 0 0;
		background: #fff;
		box-shadow: none;
	}
	
	#course-detail .process-area .process-box .flow-detail p.flow-sub {
		font-size: 1.8rem;
		padding: 0 0 15px 0;
	}
	#course-detail .process-area .process-box .flow-detail p.txt {
		font-size: 1.6rem;
		line-height: 1.5;
	}
}

@media screen and (max-width: 667px){
	#course-detail .process-area {
		background: #F8FCFA!important;
		padding: 50px 0 50px!important;
	}
	
	#course-detail .process-area .process-box .process-bg-img {
		display: block;
		position: absolute;
		top: -40px!important;
		right: 20px!important;
	}
	#course-detail .process-area .process-box .process-bg-img img {
		width: 110px!important;
		object-fit: cover;
		object-position: center;
	}
	
	#course-detail .process-area .process-box .process-contain {
		margin-bottom: 30px;
	}
	#course-detail .process-area .process-box .process-list.style02 {
		display: block;
		margin: 30px 0 0 0;
	}
	#course-detail .process-area .process-box .process-list.style02 li {
		width: 100%;
		height: auto;
		padding: 20px 15px 20px 15px;
	}
	#course-detail .process-area .process-box .process-list.style02 li.step01 {
		padding: 20px 15px 20px 15px;
	}
	#course-detail .process-area .process-box .process-list.style02 li.step02 {
	}
	#course-detail .process-area .process-box .process-list.style02 li.step03 {
	}
	#course-detail .process-area .process-box .process-list.style02 li.step04 {
		width: 100%;
	}
	#course-detail .process-area .process-box .process-list.style02 li.step05 {
		padding: 20px 15px 20px 15px;
		background: #33B371;
		/*border: solid 2px #33B371;
		border-top: none;*/
	}

	#course-detail .process-area .process-box .sankaku {
		position: absolute;
		bottom: -10px;
		left: 0;
		right: 0;
		margin: auto;
		border-bottom: none;
	}
	#course-detail .process-area .process-box .sankaku.co-01 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #33B371;
	}
	#course-detail .process-area .process-box .sankaku.co-02 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #92c527;
	}
	#course-detail .process-area .process-box .sankaku.co-03 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #33B371;
	}
	#course-detail .process-area .process-box .sankaku.co-04 {
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 10px solid #92c527;
	}
	
	#course-detail .process-area .process-box .fc-flow-step {
		font-size: 2rem;
		position: static;
	}
	#course-detail .process-area .process-box .step05 .fc-flow-step {
		width: 80px;
		height: 80px;
		line-height: 80px;
		border: none;
	}
	
	#course-detail .process-area .process-box .flow-detail {
		position: static;
		padding: 20px 15px;
		margin: 0 0 0;
		background: #fff;
		box-shadow: none;
	}
	
	#course-detail .process-area .process-box .flow-detail p.flow-sub {
		font-size: 1.8rem;
		padding: 0 0 15px 0;
	}
	#course-detail .process-area .process-box .flow-detail p.txt {
		font-size: 1.6rem;
		line-height: 1.5;
	}
	
}
/* 20260316追加 */
.course-space-04 .style-lounge{
  background-image:url(/vendor/juku-demo/control/img/lounge_main.jpg);
}

.course-top-area .content-bg.style-lounge {
  width: 100%;
  height: 230px;
}
.course-top-area .content-body-bottom.lounge-bottom {
  height: 68px;
}
@media screen and (max-width: 667px){
.course-top-area .content-bg.style-lounge {
  width: 100%;
  height: 136px;
}
  .course-title.onilne-title.lounge h3 {
    margin: 50px auto 0!important;
  }
  .course-space-04 {
    padding: 40px 0 0 0;
  }
}
