@media screen and (max-width: 640px){
/*
**  sp
============== ============== ============== ============== ============== ============== ============== */	
main {
	width: 100%;
	}

	
.fv_area {
	width: 100%;
	overflow-x: hidden;
	}
	
.fv_txt {
	background-image: url("../images/index/top_txt_back.webp");
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 95vw;
	height: 34vw;
	margin: 0 0 0;
	}
	
.fv_txt h1 {
	font-size: 3.9vw;
	font-weight: 600;
	letter-spacing: 2px;
	padding: 7vw 0 0 6vw;
	}
	
.fv_img {
	display: flex;
	justify-content: center;
	margin: 0 auto 32vw;
	position: relative;
	width: 100vw;
	}
	
.sp_top_fv_img {
	width: 155vw;
	margin: 0;
	}
	
.top_fv_img {display: none;}
	
@keyframes vertical-animation {
	from {
		transform: translateX(0);
	}
	
	to {
		transform: translateX(-100%);
	}
	}

.slider-container {
	position: absolute;
	bottom: -22vw;
	display: flex;
	margin: 0;
	overflow: visible;
	}

.slider-wrapper {
	display: flex;
	animation: vertical-animation 30s linear infinite;
	margin: 0;
	overflow: visible;
	}

.slide {
	width: 28vw;
	margin: 0 10px 0 0;
	}
	
.slide img {
	max-width: 100%;
	vertical-align: bottom;
	}

.tokutyou_area {display: none;}
	
.sp_tokutyou_area {
	background-image: url("../images/index/toku_back_sp.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 190vw 1000vw;
	padding: 15vw 0 20vw;
	}
	
.tokutyou_box {
	width: 85vw;
	margin: 0 auto;
	}
	
.sp_tokutyou_area h2 {
	font-size: 5.8vw;
	line-height: 1.45em;
	font-weight: 700;
	letter-spacing: 3px;
	color: #e66571;
	margin-bottom: 20px;
	}
	
.sp_section {
	width: 85vw;
	display: flex;
	flex-direction: column-reverse;
	margin: 0 0 8vw;
	}
	
.sec_l {
	width: 85vw;
	text-align: center;
	}
	
.sec_l img {
	width: 70vw;
	margin: 5vw auto;
	}
	
.sec_r {
	width: 90vw;
	margin: 7vw 0 0;
	}
	
.features {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	color: #fff;
	font-size: 3.5vw;
	font-weight: 500;
	background-color: #e66571;
	width: 25vw;
	height: 7vw;
	margin: 8vw 0 5vw;
	}
	
.features_title {
	margin: 0 0 20px;
	display: flex;
	flex-direction: row;
	}
	
.features_title img {
	width: 27vw;
	height: 16.5vw;
	margin: 2vw 0 0 7vw;
	}
	
.sec_r h3 {
	font-size: 5vw;
	font-weight: 600;
	margin: 5vw 0 5vw;
	}
	
.features_txt_area {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 15px;
	}
	
.features_txt_area span {
	border-radius: 50px;
	width: 8px;
	height: 8px;
	background-color: #e66571;
	margin: 6px 5px 0 0;
	}
	
.features_txt {
	font-size: 3.6vw;
	line-height: 1.4em;
	width: 85vw;
	letter-spacing: 1px;
	}
	
.toku_comment_area {
	margin: 0 auto;
	}
	
.toku_comment_area p {
	background-color: #fff;
	padding: 20px;
	font-size: 3.4vw;
	line-height: 1.6em;
	border-radius: 10px;
	margin: 3vw 0 0;
	text-align: left;
	}
	
.course_area {
	background-image: url("../images/index/buya_back.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 180vw;
	width: 100%;
	text-align: center;
	margin: 15vw 0 10vw;
	overflow: hidden;
	padding: 0;
	}
	
@keyframes slide-in_left {
	from {
		transform: translateX(0);
	}
	
	to {
		transform: translateX(-100%);
	}
	}

.course_slider-container {
	display: flex;
	margin: 0;
	overflow: visible;
	}

.course_slider-wrapper {
	display: flex;
	animation: slide-in_left 30s linear infinite;
	margin: 0;
	}

.course_slide {
	width: 30vw;
	height: auto;
	margin: 0 20px 0 0;
	position: relative;
	}
	
.course_slide a {
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	display: block;	
	}
	
.course_slide img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	}
	
.course_txt {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 200px;
	font-size: 3.4vw;
	}
	
.course_slide a .course_txt {
	color: #fff;
	}
	
.course_slide a:hover {
	transform: scale(1.1);
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	opacity: 1;
	filter: drop-shadow(0px 5px 5px #a7a8b6);
	}
	
@keyframes slide-in_right {
	from {
		transform: translateX(-100%);
	}
	
	to {
		transform: translateX(0);
	}
	}

.course_slider-container02 {
	display: flex;
	margin: 60px 0 0;
	overflow: visible;
	}

.course_slider-wrapper02 {
	display: flex;
	animation: slide-in_right 30s linear infinite;
	margin: 0 0 0 0;
	}

.course_slide02 {
	width: 30vw;
	height: auto;
	margin: 0 20px 0 0;
	position: relative;
	}
	
.course_slide02 a {
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	display: block;	
	}
	
.course_slide02 img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	}
	
.course_txt02 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 200px;
	font-size: 3.2vw;
	}
	
.course_slide02 a .course_txt02 {
	color: #fff;
	}
	
.course_slide02 a:hover {
	transform: scale(1.1);
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	opacity: 1;
	filter: drop-shadow(0px 5px 5px #a7a8b6);
	}
	
@media (hover: hover) {
.course_slider-container:hover .course_slider-wrapper,
.course_slider-container02:hover .course_slider-wrapper02 {
	animation-play-state: paused;
	}
	}
	
.course_title_top {
	width: 90vw;
	margin: 8vw auto;
	}
	
.course_title_top h2 {
	font-size: 5.5vw;
	font-weight: 700;
	letter-spacing: 2px;
	margin: 0 0 3vw;
	}
	
.course_title_top h2 span {
	font-size: 13vw;
	margin: 0 5px 55px;
	font-family: "DM Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 800;
	font-style: italic;
	vertical-align: -3px;
	}
	
.tqe_area {
	background-image: url("../images/index/tqe_back02.webp");
	background-repeat: repeat;
	background-position: center top;
	padding: 0 0 350px;
	width: 100%;
	margin: 0 auto;
	}
	
.tqe_topimg {
	width: 100vw;
	display: flex;
	justify-content: center;
	}
	
.tqe_box {
	width: 85vw;
	margin: 0 auto;
	position: relative;
	text-align: center;
	}
	
.tqe_sab {
	font-size: 3.6vw;
	font-weight: 500;
	letter-spacing: 1px;
	margin: 20vw 0 0;
	}
	
.tqe_title {
	font-size: 12vw;
	font-weight: 700;
	letter-spacing: 5px;
	margin: -2vw 0 5vw 20px;
	}
	
.tqe_title sub {
	font-size: 6vw;
	font-weight: 300;
	vertical-align: 20px;
	}
	
.tqe_area h2 {
	font-size: 5.3vw;
	font-weight: 700;
	letter-spacing: 1px;
	}
	
.tqe_area h3 {
	font-size: 5.3vw;
	font-weight: 700;
	letter-spacing: 1px;
	margin: 5vw 0 8vw;
	}
	
.tqe_txt {
	font-size: 4.7vw;
	font-weight: 600;
	letter-spacing: 1px;
	margin-bottom: 8vw;
	}
	
.tqe_txt span {
	font-size: 6.5vw;
	font-weight: 600;
	}
	
.tqe_img01 {
	width: 30vw;
	position: absolute;
	left: -10vw;
	top: -13vw;
	}
	
.tqe_img02 {
	width: 24vw;
	position: absolute;
	right: -6vw;
	top: -3vw;
	}
	
.tqe_img03 {
	width: 22vw;
	position: absolute;
	right: 5vw;
	bottom: -28vw;
	}
	
.info_back {
	background-color: #f5f5f5;
	width: 100%;
	border-radius: 0px 30px 30px 0px;
	padding: 10vw 0;
	margin: -55vw 0 0;
	}
	
.seminar_area {
	width: 85vw;
	margin: 0 auto 20vw;
	}
	
.seminar_area h4 {
	font-size: 6vw;
	margin: 0 0 5vw;
	text-align: center;
	}
	
.sem_heading {
	margin-bottom: 7vw;
	}
	
.seminar_info_box {
	margin: 10vw 0 0;
	}
	
.seminar_info {
	background-color: #fff;
	height: 50vw;
	border-radius: 10px;
	margin-bottom: 5vw;
	}
	
.seminar_info p {
	font-size: 14px;
	}
	
.news_area {
	width: 85vw;
	margin: 0 auto;
	}
	
.news_top_title {
	margin-bottom: 10vw
	}
	
.news_top_title h4 {
	font-size: 6vw;
	margin: 0 0 5vw;
	text-align: center;
	}
	
.news_ad_area {
	margin: 6vw 0 4vw;
	padding: 0 0 6vw;
	border-bottom: solid 1px #bdbdbd;
	}
	
.news_ad_txt_area {
	background-color: #fff;
	border-radius: 200px;
	padding: 15px 0;
	}
	
.news_ad_title {
	font-size: 3.5vw;
	color: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 600;
	margin: 0 0 7px;
	}
	
.news_ad_txt {
	font-size: 3.5vw;
	line-height: 1.6em;
	color: #d80000;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 70vw;
	margin: 0 auto;
	}
	
.news_box {
	margin-bottom: 3vw;
	padding: 0 0 5vw;
	border-bottom: solid 1px #bdbdbd;
	display: block;
	}
	
.news_box time {
	font-size: 3.7vw;
	color: #000;
	}
	
.news_box_area {
	margin: 10px 0 0;
	}
	
.news_l {
	}
	
.news_category01,.news_category02,
.news_category03,.news_category04,.news_category05 {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	color: #fff;
	font-size: 3.2vw;
	font-weight: 500;
	width: 35vw;
	height: 6.5vw;
	padding: 0 0 1px;
	margin: 0 0 3vw;
	}
	
.news_category01 {background-color: #797979;} /* お知らせ */
.news_category02 {background-color: #e6ad35;} /* セミナー */
.news_category03 {background-color: #6ac25b;} /* 更新 */
.news_category04 {background-color: #e27dcb;} /* キャンペーン */
.news_category05 {background-color: #dc3f37;} /* 重要 */
	
.news_box a .news_title {
	font-size: 4vw;
	font-weight: 500;
	color: #000;
	margin-bottom: 3vw;
	}
	
.news_box a .news_arrow {
	font-size: 18px;
	font-weight: 300;
	color: #000;
	margin-right: 20px;
	transition: all 0.4s;
	}
	
.news_box a:hover .news_arrow {
	margin-right: 5px;
	}
	
.pc_br {display: none;}

}


@media screen and (min-width:641px) and (max-width:1024px) {

/*
**  tablet
============== ============== ============== ============== ============== ============== ============== */	
main {
	width: 100%;
	}

.fv_area {
	width: 100%;
	overflow-x: hidden;
	}

.fv_txt {
	background-image: url("../images/index/top_txt_back.webp");
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 63vw;
	height: 22vw;
	margin: 0 0 0;
	}

.fv_txt h1 {
	font-size: 2.4vw;
	font-weight: 600;
	letter-spacing: 2px;
	padding: 5.3vw 0 0 6vw;
	}
	
.fv_img {
	display: flex;
	justify-content: center;
	margin: 0 auto 26vw;
	position: relative;
	width: 96vw;
	}
	
.top_fv_img {display: none;}
	
@keyframes vertical-animation {
	from {
		transform: translateX(0);
	}
	
	to {
		transform: translateX(-100%);
	}
	}

.slider-container {
	position: absolute;
	bottom: -17vw;
	display: flex;
	margin: 0;
	overflow: visible;
	}

.slider-wrapper {
	display: flex;
	animation: vertical-animation 30s linear infinite;
	margin: 0;
	overflow: visible;
	}

.slide {
	width: 19vw;
	margin: 0 10px 0 0;
	}
	
.slide img {
	max-width: 100%;
	vertical-align: bottom;
	}

.tokutyou_area {display: none;}
	
.sp_tokutyou_area {
	background-image: url("../images/index/toku_back_sp.webp");
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 250vw 915vw;
	padding: 15vw 0 20vw;
	}
	
.tokutyou_box {
	width: 85vw;
	margin: 0 auto;
	}
	
.sp_tokutyou_area h2 {
	font-size: 5.8vw;
	line-height: 1.55em;
	font-weight: 700;
	letter-spacing: 3px;
	color: #e66571;
	margin-bottom: 20px;
	}
	
.sp_section {
	width: 85vw;
	display: flex;
	flex-direction: column-reverse;
	margin: 0 0 8vw;
	}
	
.sec_l {
	width: 85vw;
	text-align: center;
	}
	
.sec_l img {
	width: 70vw;
	margin: 5vw auto;
	}
	
.sec_r {
	width: 85vw;
	margin: 7vw 0 0;
	}
	
.features {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	color: #fff;
	font-size: 3.5vw;
	font-weight: 500;
	background-color: #e66571;
	width: 25vw;
	height: 7vw;
	margin: 8vw 0 5vw;
	}
	
.features_title {
	margin: 0 0 20px;
	display: flex;
	flex-direction: row;
	}
	
.features_title img {
	width: 27vw;
	height: 17.5vw;
	margin: 2vw 0 0 7vw;
	}
	
.sec_r h3 {
	font-size: 5vw;
	font-weight: 600;
	margin: 5vw 0 5vw;
	}
	
.features_txt_area {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 15px;
	}
	
.features_txt_area span {
	border-radius: 50px;
	width: 8px;
	height: 8px;
	background-color: #e66571;
	margin: 5px 5px 0 0;
	}
	
.features_txt {
	font-size: 3.6vw;
	line-height: 1.4em;
	width: 80vw;
	letter-spacing: 1px;
	}
	
.toku_comment_area {
	margin: 0 auto;
	}
	
.toku_comment_area p {
	background-color: #fff;
	padding: 20px;
	font-size: 3.4vw;
	line-height: 1.6em;
	border-radius: 10px;
	margin: 3vw 0 0;
	text-align: left;
	}
	
.course_area {
	background-image: url("../images/index/buya_back.webp");
	background-repeat: no-repeat;
	background-position: center;
	background-size: 180vw;
	width: 100%;
	text-align: center;
	margin: 10vw 0;
	overflow: hidden;
	padding: 0;
	}
	
@keyframes slide-in_left {
	from {
		transform: translateX(0);
	}
	
	to {
		transform: translateX(-100%);
	}
	}

.course_slider-container {
	display: flex;
	margin: 0;
	overflow: visible;
	}

.course_slider-wrapper {
	display: flex;
	animation: slide-in_left 30s linear infinite;
	margin: 0;
	}

.course_slide {
	width: 30vw;
	height: auto;
	margin: 0 20px 0 0;
	position: relative;
	}
	
.course_slide a {
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	display: block;	
	}
	
.course_slide img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	}
	
.course_txt {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 200px;
	font-size: 3.4vw;
	}
	
.course_slide a .course_txt {
	color: #fff;
	}
	
.course_slide a:hover {
	transform: scale(1.1);
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	opacity: 1;
	filter: drop-shadow(0px 5px 5px #a7a8b6);
	}
	
@keyframes slide-in_right {
	from {
		transform: translateX(-100%);
	}
	
	to {
		transform: translateX(0);
	}
	}

.course_slider-container02 {
	display: flex;
	margin: 60px 0 0;
	overflow: visible;
	}

.course_slider-wrapper02 {
	display: flex;
	animation: slide-in_right 30s linear infinite;
	margin: 0 0 0 0;
	}

.course_slide02 {
	width: 30vw;
	height: auto;
	margin: 0 20px 0 0;
	position: relative;
	}
	
.course_slide02 a {
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	display: block;	
	}
	
.course_slide02 img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	}
	
.course_txt02 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 200px;
	font-size: 3.2vw;
	}
	
.course_slide02 a .course_txt02 {
	color: #fff;
	}
	
.course_slide02 a:hover {
	transform: scale(1.1);
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	opacity: 1;
	filter: drop-shadow(0px 5px 5px #a7a8b6);
	}
	
@media (hover: hover) {
.course_slider-container:hover .course_slider-wrapper,
.course_slider-container02:hover .course_slider-wrapper02 {
	animation-play-state: paused;
	}
	}
	
.course_title_top {
	width: 90vw;
	margin: 12vw auto 0;
	}
	
.course_title_top h2 {
	font-size: 5.5vw;
	font-weight: 700;
	letter-spacing: 2px;
	margin: 0 0 3vw;
	}
	
.course_title_top h2 span {
	font-size: 13vw;
	margin: 0 5px 55px;
	font-family: "DM Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 800;
	font-style: italic;
	vertical-align: -3px;
	}
	
.tqe_area {
	background-image: url("../images/index/tqe_back02.webp");
	background-repeat: repeat;
	background-position: center top;
	padding: 0 0 100vw;
	width: 100%;
	margin: 0 auto;
	}
	
.tqe_topimg {
	width: 100vw;
	display: flex;
	justify-content: center;
	}
	
.tqe_topimg img {
	}
	
.tqe_box {
	width: 85vw;
	margin: 0 auto;
	position: relative;
	text-align: center;
	}
	
.tqe_sab {
	font-size: 3.4vw;
	font-weight: 500;
	letter-spacing: 3px;
	margin: 20vw 0 0;
	}
	
.tqe_title {
	font-size: 12vw;
	font-weight: 700;
	letter-spacing: 5px;
	margin: -2vw 0 5vw 20px;
	}
	
.tqe_title sub {
	font-size: 6vw;
	font-weight: 300;
	vertical-align: 20px;
	}
	
.tqe_area h2 {
	font-size: 5.3vw;
	font-weight: 700;
	letter-spacing: 1px;
	}
	
.tqe_area h3 {
	font-size: 5.3vw;
	font-weight: 700;
	letter-spacing: 1px;
	margin: 5vw 0 8vw;
	}
	
.tqe_area h3 sub {
	font-weight: 400;
	vertical-align: text-top;
	}
	
.tqe_area h3 span {
	font-size: 7.3vw;
	font-weight: 700;
	color: #a052d2;
	}
	
.tqe_txt {
	font-size: 4.7vw;
	font-weight: 600;
	letter-spacing: 1px;
	margin-bottom: 8vw;
	}
	
.tqe_txt span {
	font-size: 6.5vw;
	font-weight: 600;
	}
	
.tqe_img01 {
	width: 30vw;
	position: absolute;
	left: -10vw;
	top: -13vw;
	}
	
.tqe_img02 {
	width: 24vw;
	position: absolute;
	right: -6vw;
	top: -3vw;
	}
	
.tqe_img03 {
	width: 22vw;
	position: absolute;
	right: 5vw;
	bottom: -28vw;
	}
	
.info_back {
	background-color: #f5f5f5;
	width: 100%;
	border-radius: 0px 30px 30px 0px;
	padding: 10vw 0;
	margin: -55vw 0 0;
	}
	
.seminar_area {
	width: 85vw;
	margin: 0 auto 20vw;
	}
	
.seminar_area h4 {
	font-size: 6vw;
	margin: 0 0 5vw;
	text-align: center;
	}
	
.sem_heading {
	margin-bottom: 10vw;
	}
	
.seminar_info_box {
	margin: 10vw 0 0;
	}
	
.seminar_info {
	background-color: #fff;
	height: 50vw;
	border-radius: 10px;
	margin-bottom: 5vw;
	}
	
.seminar_info p {
	font-size: 14px;
	}
	
.news_area {
	width: 85vw;
	margin: 0 auto;
	}
	
.news_top_title {
	}
	
.news_top_title h4 {
	font-size: 6vw;
	margin: 0 0 5vw;
	text-align: center;
	}
	
.news_ad_area {
	margin: 6vw 0 4vw;
	padding: 0 0 6vw;
	border-bottom: solid 1px #bdbdbd;
	}
	
.news_ad_txt_area {
	background-color: #fff;
	border-radius: 200px;
	padding: 15px 0;
	}
	
.news_ad_title {
	font-size: 3.5vw;
	color: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 600;
	margin: 0 0 7px;
	}
	
.news_ad_txt {
	font-size: 3.5vw;
	line-height: 1.6em;
	color: #d80000;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 70vw;
	margin: 0 auto;
	}
	
.news_box {
	margin-bottom: 3vw;
	padding: 0 0 5vw;
	border-bottom: solid 1px #bdbdbd;
	display: block;
	}
	
.news_box time {
	font-size: 3.3vw;
	color: #000;
	}
	
.news_box_area {
	margin: 10px 0 0;
	}
	
.news_box a .news_l {
	}
	
.news_category01,.news_category02,
.news_category03,.news_category04,.news_category05 {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	color: #fff;
	font-size: 3.2vw;
	font-weight: 500;
	background-color: #e66571;
	width: 30vw;
	height: 5vw;
	padding: 0 0 2px;
	margin: 0 0 8px;
	}
	
.news_category01 {background-color: #797979;} /* お知らせ */
.news_category02 {background-color: #e6ad35;} /* セミナー */
.news_category03 {background-color: #6ac25b;} /* 更新 */
.news_category04 {background-color: #e27dcb;} /* キャンペーン */
.news_category05 {background-color: #dc3f37;} /* 重要 */
	
.news_box a .news_title {
	font-size: 3.6vw;
	font-weight: 500;
	color: #000;
	}
	
.news_box a .news_arrow {
	font-size: 18px;
	font-weight: 300;
	color: #000;
	margin-right: 20px;
	transition: all 0.4s;
	}
	
.news_box a:hover .news_arrow {
	margin-right: 5px;
	}
	
.pc_br {display: none;}
	
}


@media screen and (min-width: 1025px){
/*
** pc
============== ============== ============== ============== ============== ============== ============== */
main {
	width: calc(100% - 300px);
	margin: 0 0 0 300px;
	}

	
.fv_area {
	}
	
.fv_txt {
	background-image: url("../images/index/top_txt_back.webp");
	background-repeat: no-repeat;
	background-position: top left;
	background-size: 560px;
	width: 926px;
	height: 200px;
	}
	
.fv_txt h1 {
	font-size: 21px;
	font-weight: 600;
	letter-spacing: 5px;
	padding: 40px 0 0 40px;
	}
	
.fv_img {
	display: flex;
	justify-content: center;
	margin: -30px auto 0;
	position: relative;
	width: 75vw;
	}	
	
.top_fv_img {
	width: 70vw;
	margin: 0 0 160px;
	}
	
.sp_top_fv_img {display: none;}
	
@keyframes vertical-animation {
	from {
		transform: translateY(0);
	}
	
	to {
		transform: translateY(-100%);
	}
	}

.slider-container {
	height: 1600px;
	overflow: hidden;
	position: absolute;
	top: -225px;
	right: 160px;
	z-index: 5;
	}

.slider-wrapper {
	display: grid; /* slideのmargin-bottom値を全て内包させる為 */
	animation: vertical-animation 30s linear infinite;
	}

.slide {
	width: 18vw;
	margin: -120px auto 145px;
	}
	
.slide img {
	max-width: 100%;
	vertical-align: bottom;
	}
	
.sp_tokutyou_area {display: none;}
	
.tokutyou_area {
	background-image: url("../images/index/toku_back.webp");
	background-repeat: no-repeat;
	background-position: right 70px top;
	background-size: 1900px 1100px;
	margin: 0 70px 200px 0;
	overflow: hidden;
	position: relative;
	z-index: 10;
    height: 1100px; /* スクロール距離を稼ぐ */
	}
	
.tokutyou_box {
	width: 1100px;
	margin: 0 auto;
	position: sticky;
    top: 0;
    height: 100vh; /* ビューポートの高さに固定 */
    display: flex;
    flex-direction: column;
    align-items: center;
	}
	
.tokyo_title {
	width: 1100px;
	margin: 160px 0 0;
	}
	
.tokyo_title h2 {
	font-size: 40px;
	line-height: 1.45em;
	font-weight: 700;
	letter-spacing: 5px;
	color: #e66571;
	margin-bottom: 20px;
	}
	
.section {
	width: 1100px;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	position: relative;
    transform: translate(-50%, -50%); /* 中央配置 */
	opacity: 0; /* GSAPの初期値 */
    pointer-events: none;
	margin: 70px 0;
	}
	
.section1 {
	opacity: 1; /* GSAPの初期値 */
	position: absolute;
    top: 600px;
    left: 45%;
    transform: translate(-50%, -50%); /* 中央配置 */
    pointer-events: none;
    z-index: 15;
	}
	
.section2,.section3 {
	position: absolute;
    top: 600px;
    left: 45%;
    transform: translate(-50%, -50%); /* 中央配置 */
    pointer-events: none;
    z-index: 15;
	}
	
.sec_l {
	width: 400px;
	}
	
.sec_r {
	width: 650px;
	}
	
.features {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	color: #fff;
	font-size: 17px;
	font-weight: 500;
	background-color: #e66571;
	width: 120px;
	height: 30px;
	padding: 0 0 2px;
	margin: 25px 0 20px;
	}
	
.features_title {
	display: flex;
	flex-direction: row;
	margin: 0 0 20px;
	}
	
.features_title img {
	width: 173px;
	height: 107px;
	margin-right: 30px;
	}
	
.sec_r h3 {
	font-size: 28px;
	font-weight: 700;
	margin: 25px 0 25px;
	}
	
.features_txt_area {
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 20px;
	}
	
.features_txt_area span {
	border-radius: 50px;
	width: 10px;
	height: 10px;
	background-color: #e66571;
	margin: 10px 7px 0 0;
	}
	
.features_txt {
	font-size: 18px;
	font-weight: 500;
	line-height: 1.65em;
	width: 600px;
	letter-spacing: 1px;
	}
	
.toku_comment_area {
	display: flex;
	justify-content: space-between;
	width: 1020px;
	margin: 0 auto;
	}
	
.toku_comment_area p {
	background-color: #fff;
	padding: 20px;
	font-size: 14px;
	line-height: 1.6em;
	border-radius: 10px;
	margin: 30px 0 0;
	width: 460px;
	height: 180px;
	}
	
.course_area {
	background-image: url("../images/index/buya_back.webp");
	background-repeat: no-repeat;
	background-position: center;
	width: 100%;
	text-align: center;
	margin: 0 0 50px;
	padding: 20px 0;
	overflow: hidden;
	}
	
@keyframes slide-in_left {
	from {
		transform: translateX(0);
	}
	
	to {
		transform: translateX(-100%);
	}
	}

.course_slider-container {
	display: flex;
	margin: 20px 0 0;
	overflow: visible;
	}

.course_slider-wrapper {
	display: flex;
	animation: slide-in_left 30s linear infinite;
	margin: 0;
	}

.course_slide {
	width: 160px;
	height: auto;
	margin: 0 30px 0 0;
	position: relative;
	}
	
.course_slide a {
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	display: block;	
	}
	
.course_slide img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	}
	
.course_txt {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 200px;
	font-size: 16px;
	}
	
.course_slide a .course_txt {
	color: #fff;
	}
	
.course_slide a:hover {
	transform: scale(1.1);
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	opacity: 1;
	filter: drop-shadow(0px 5px 5px #a7a8b6);
	}
	
@keyframes slide-in_right {
	from {
		transform: translateX(-100%);
	}
	
	to {
		transform: translateX(0);
	}
	}

.course_slider-container02 {
	display: flex;
	margin: 0px 0 0;
	overflow: visible;
	}

.course_slider-wrapper02 {
	display: flex;
	animation: slide-in_right 30s linear infinite;
	margin: 0 0 0 0;
	}

.course_slide02 {
	width: 160px;
	height: auto;
	margin: 0 30px 0 0;
	position: relative;
	}
	
.course_slide02 a {
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	display: block;	
	}
	
.course_slide02 img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	}
	
.course_txt02 {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 200px;
	font-size: 15px;
	}
	
.course_slide02 a .course_txt02 {
	color: #fff;
	}
	
.course_slide02 a:hover {
	transform: scale(1.1);
	-webkit-transition: 0.4s ease;
	-moz-transition: 0.4s ease;
	transition: 0.4s ease;
	opacity: 1;
	filter: drop-shadow(0px 5px 5px #a7a8b6);
	}
	
@media (hover: hover) {
.course_slider-container:hover .course_slider-wrapper,
.course_slider-container02:hover .course_slider-wrapper02
	{
    animation-play-state: paused;
	}
	}
	
.course_title_top {
	width: 1054px;
	margin: 70px auto;
	}
	
.course_title_top h2 {
	font-size: 35px;
	font-weight: 700;
	letter-spacing: 5px;
	}
	
.course_title_top h2 span {
	font-size: 100px;
	margin: 0 5px 55px;
	font-family: "DM Sans", sans-serif;
	font-optical-sizing: auto;
	font-weight: 800;
	font-style: italic;
	vertical-align: -10px;
	}
	
.tqe_area {
	background-image: url("../images/index/tqe_back02.webp");
	background-repeat: repeat;
	background-position: center top;
	padding: 0 0 350px;
	width: 100%;
	}
	
.tqe_box {
	width: 1000px;
	margin: 0 auto;
	position: relative;
	text-align: center;
	}
	
.tqe_sab {
	font-size: 19px;
	font-weight: 500;
	letter-spacing: 3px;
	margin: 90px 0 5px;
	}
	
.tqe_title {
	font-size: 65px;
	font-weight: 700;
	letter-spacing: 5px;
	margin: -15px 0 45px 25px;
	}
	
.tqe_title sub {
	font-size: 35px;
	font-weight: 300;
	vertical-align: 25px;
	}
	
.tqe_area h2 {
	font-size: 40px;
	font-weight: 700;
	letter-spacing: 3px;
	}
	
.tqe_area h3 {
	font-size: 30px;
	font-weight: 700;
	letter-spacing: 2px;
	margin: 5px 0 45px;
	}
	
.tqe_area h3 span {
	font-size: 50px;
	margin: 0 5px 55px;
	font-weight: 700;
	color: #a052d2;
	}
	
.tqe_txt {
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 2px;
	margin-bottom: 30px;
	}
	
.tqe_txt span {
	font-size: 55px;
	font-weight: 600;
	}
	
.tqe_img01 {
	width: 260px;
	position: absolute;
	left: -100px;
	top: -80px;
	}
	
.tqe_img02 {
	width: 200px;
	position: absolute;
	right: -60px;
	top: 0px;
	}
	
.tqe_img03 {
	width: 170px;
	position: absolute;
	right: 160px;
	bottom: -60px;
	}
	
.info_back {
	background-color: #f5f5f5;
	width: 100%;
	border-radius: 0px 150px 150px 0px;
	padding: 100px 0;
	margin: -200px 0 0;
	}
	
.seminar_area {
	width: 1100px;
	margin: 0 auto 150px;
	}
	
.seminar_area h4 {
	font-size: 40px;
	margin: 0 0 45px;
	}
	
.sem_heading {
	display: flex;
	justify-content: space-between;
	}
	
.seminar_info_box {
	display: flex;
	justify-content: space-between;
	}
	
.seminar_info {
	background-color: #fff;
	width: 230px;
	height: 458px;
	border-radius: 10px;
	}
	
.seminar_info p {
	margin-top: 50px;
	font-size: 14px;
	}
	
.news_area {
	width: 1100px;
	margin: 0 auto;
	}
	
.news_top_title {
	display: flex;
	justify-content: space-between;
	}
	
.news_top_title h4 {
	font-size: 35px;
	margin: 0 0 75px;
	}
	
.news_ad_area {
	margin-bottom: 15px;
	padding: 0 0 60px;
	border-bottom: solid 1px #bdbdbd;
	}
	
.news_ad_txt_area {
	background-color: #fff;
	border-radius: 200px;
	padding: 25px 0;
	}
	
.news_ad_title {
	font-size: 18px;
	color: #000;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 600;
	margin: 0 0 7px;
	}
	
.news_ad_txt {
	font-size: 18px;
	line-height: 1.75em;
	color: #d80000;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 1000px;
	margin: 0 auto;
	}
	
.news_box {
	margin-bottom: 25px;
	padding: 0 0 50px;
	border-bottom: solid 1px #bdbdbd;
	clear: both;
	display: block;
	}
	
.news_box time {
	font-size: 16px;
	color: #000;
	}
	
.news_box_area {
	clear: both;
	margin: 10px 0 0;
	}
	
.news_box a .news_l {
	float: left;
	display: flex;
	justify-content: space-between;
	}
	
.news_category01,.news_category02,
.news_category03,.news_category04,.news_category05 {
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 50px;
	color: #fff;
	font-size: 13px;
	font-weight: 500;
	width: 100px;
	height: 22px;
	padding: 0 0 2px;
	margin: 0 10px 0 0;
	}
	
.news_category01 {background-color: #797979;} /* お知らせ */
.news_category02 {background-color: #e6ad35;} /* セミナー */
.news_category03 {background-color: #6ac25b;} /* 更新 */
.news_category04 {background-color: #e27dcb;} /* キャンペーン */
.news_category05 {background-color: #dc3f37;} /* 重要 */
	
.news_box a .news_title {
	font-size: 17px;
	font-weight: 500;
	color: #000;
	width: 850px;
	}
	
.news_box a .news_arrow {
	float: right;
	font-size: 18px;
	font-weight: 300;
	color: #000;
	margin-right: 20px;
	transition: all 0.4s;
	}
	
.news_box a:hover .news_arrow {
	margin-right: 5px;
	}
	
.sp_br {display: none;}


}
