@font-face {
	font-family: "Genjyuu";
	src: url("../fonts/GenJyuuGothic-Bold.eot");
	src: url("../fonts/GenJyuuGothic-Bold.woff") format("woff"), url("../fonts/GenJyuuGothic-Bold.woff2") format("woff2");
}
html {
	font-size: 100%;
}
@media (max-width: 1250px) {
	html {
		font-size: 1.28vw;
	}
}
@media (min-width: 376px) and (max-width: 767px) {
	html {
		font-size: 100%;
	}
}
@media (max-width: 375px) {
	html {
		font-size: 4.2666666667vw;
	}
}
body {
	overflow-x: hidden;
}
@media screen and (min-width: 768px) {
	body.home.page-template-front-page .footer-top2 {
		padding-top: 3.75rem;
		position: relative;
		z-index: 3;
	}
}
.kv{
	position: relative;
	width:100vw;
	padding-bottom: 18.75rem;
	background-color: #fff;
}
@media screen and (max-width: 767px) {
	.kv {
		padding-top: 4.0625rem;
		padding-bottom: 7rem;
	}
}
.kv::before{
	position: absolute;
	content: "";
	background-image: url(../img/fv-wrap.png);
	background-repeat:  no-repeat;
	background-size: 100%;
	background-position: top center;
	width: 106%;
	height: 104%;
	left:50%;
	transform: translatex(-50%);
	right: 0;
	bottom: 0;
}
@media screen and (max-width: 767px) {
	.kv::before {
		background-image: url(../img/fv-wrap-sp.png);
		left: 53%;
		width: 112%;
		height: 99%;
	}
}
video{
	width: 100%;
	margin-top: 2.8125rem;
}
.kv video {
	pointer-events: none;
}
@media screen and (max-width: 767px) {
	.kv video {
		margin: 0;
		pointer-events: all;
	}
}
.kv-bottom__btns {
	background: #fff;
	border-radius: 20px;
	padding: 1.875rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.kv-bottom__btns {
		padding: 1.25rem 1.125rem;
	}
}

.kv-bottom__btns ul {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	-webkit-column-gap: 1.25rem;
	-moz-column-gap: 1.25rem;
	column-gap: 1.25rem;
}
@media screen and (max-width: 767px) {
	.kv-bottom__btns ul {
		grid-template-columns: 1fr 1fr;
		-webkit-column-gap: 0.625rem;
		-moz-column-gap: 0.625rem;
		column-gap: 0.625rem;
		row-gap: 0.625rem;
	}
}

.kv-bottom__btn {
	position: relative;
	padding-right: 10px;
	padding-bottom: 10px;
}
.kv-bottom__btn::before {
	position: absolute;
	content: "";
}
@media screen and (max-width: 767px) {
	.kv-bottom__btn {
		padding-right: 5px;
		padding-bottom: 5px;
	}
}

.kv-bottom__btn a {
	border-radius: 20px;
	position: relative;
	height: 10.625rem;
	color: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	font-size: 1.5rem;
	line-height: 1.5;
}
.kv-bottom__btn a::after {
	position: absolute;
	content: "";
	background: url(../img/kvbottom-arrow.png) no-repeat center center/contain;
	width: 0.625rem;
	height: 1rem;
	right: 1.25rem;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
@media screen and (max-width: 767px) {
	.kv-bottom__btn a {
		height: 3.75rem;
		font-size: 1rem;
		border-radius: 10px;
	}
	.kv-bottom__btn a::after {
		width: 0.4375rem;
		height: 0.6875rem;
	}
}

.kv-bottom__btn:nth-child(1) a {
	background: #d5638f;
	-webkit-box-shadow: #f4e1e8 10px 10px;
	box-shadow: #f4e1e8 10px 10px;
}
@media screen and (max-width: 767px) {
	.kv-bottom__btn:nth-child(1) a {
		-webkit-box-shadow: #f4e1e8 5px 5px;
		box-shadow: #f4e1e8 5px 5px;
	}
}

.kv-bottom__btn:nth-child(2) a {
	background: #a3c62f;
	-webkit-box-shadow: #deefa7 10px 10px;
	box-shadow: #deefa7 10px 10px;
}
@media screen and (max-width: 767px) {
	.kv-bottom__btn:nth-child(2) a {
		-webkit-box-shadow: #deefa7 5px 5px;
		box-shadow: #deefa7 5px 5px;
	}
}

.kv-bottom__btn:nth-child(3) a {
	background: #469cc1;
	-webkit-box-shadow: #b1d8e8 10px 10px;
	box-shadow: #b1d8e8 10px 10px;
}
@media screen and (max-width: 767px) {
	.kv-bottom__btn:nth-child(3) a {
		-webkit-box-shadow: #b1d8e8 5px 5px;
		box-shadow: #b1d8e8 5px 5px;
	}
}

.kv-bottom__btn:nth-child(4) a {
	background: #f4bb00;
	-webkit-box-shadow: #ead285 10px 10px;
	box-shadow: #ead285 10px 10px;
}
@media screen and (max-width: 767px) {
	.kv-bottom__btn:nth-child(4) a {
		-webkit-box-shadow: #ead285 5px 5px;
		box-shadow: #ead285 5px 5px;
	}
}

.top-news {
	position: relative;
	z-index: 3;
	margin-top: -15rem;
	padding-left: 15px;
	padding-right: 15px;
	padding-top: 8.5rem;
	padding-bottom: 3.9375rem;
}
@media screen and (max-width: 767px) {
	.top-news {
		padding-left: 0;
		padding-right: 0;
/* 		padding-top: 5rem; */
		padding-top: 0.75rem;
		padding-bottom: 1.875rem;
		margin-top: -7rem;
	}
}
.top-news::before {
	position: absolute;
	content: '';
	display: block;
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(../img/top-newsbg.png);
	background-position: top center;
	width: 100vw;
	height: 58%;
	top: 0;
	left: 0;
	right: 0;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.top-news::before {
		background-image: url(../img/top-newsbg-sp.png);
		width: 100vw;
		height: 100%;
	}
}

.top-news .inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	max-width: 1440px;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.top-news .inner {
		display: block;
		max-width: 89.33333%;
		width: 89.33333%;
	}
}

.top-news__ttl {
	padding-right: 5px;
	padding-left: 2.1875rem;
}
@media screen and (max-width: 767px) {
	.top-news__ttl {
		padding-right: 0;
		padding-left: 0;
	}
}

.top-news-ttl__circle {
	background: #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	z-index: 3;
	width: 16.25rem;
	height: 16.25rem;
}
.top-news-ttl__circle::before {
	position: absolute;
	content: "";
	top: -2.825rem;
	left: -4.225rem;
	background: url(../img/topnews-ttl1.png) no-repeat center right/cover;
	width: 8.75rem;
	height: 8.75rem;
}
.top-news-ttl__circle::after {
	position: absolute;
	content: "";
	bottom: -3.325rem;
	right: -2.425rem;
	background: url(../img/topnews-ttl2.png) no-repeat center left/cover;
	width: 7.1875rem;
	height: 7rem;
}
@media screen and (max-width: 767px) {
	.top-news-ttl__circle {
/* 		width: 14rem;
		height: 14rem; */
		width: 6.625rem;
		height: 6.625rem;
		margin-inline: auto;
	}
	.top-news-ttl__circle::before {
		top: 0.25rem;
		left: -10rem;
	}
	.top-news-ttl__circle::after {
		display: none;
	}
}

.top-news-ttl__wrapper {
	text-align: center;
}

.top-news-ttl__wrapper .img {
	width: 4rem;
}
.top-news-ttl__wrapper .img img {
	-o-object-fit: contain;
	object-fit: contain;
}
@media screen and (max-width: 767px) {
	.top-news-ttl__wrapper .img {
		width: 2.1875rem;
	}

}

.top-news-ttl__wrapper .ja {
	font-size: 2.25rem;
	font-weight: 700;
	color: #5d63a3;
	margin-top: 0.1875rem;
	line-height: 1.47;
}
@media screen and (max-width: 767px) {
	.top-news-ttl__wrapper .ja {
/* 		font-size: 1.75rem; */
		font-size: 1.125rem;
/* 		margin-top: 0.8125rem; */
		margin-top: 0;
	}
}

.top-news-ttl__wrapper .en {
	color: #db4c2d;
	margin-top: 0.625rem;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 1.14;
}
@media screen and (max-width: 767px) {
	.top-news-ttl__wrapper .en {
		font-size: 0.75rem;
		margin-top: 0;
	}
}

.top-news__lists {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-right: 10px;
}
@media screen and (max-width: 767px) {
	.top-news__lists {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
/* 		margin-top: 6.5rem; */
		margin-top: 1rem;
	}
}

.top-news__item {
	border-radius: 10px;
	border: 3px solid #5d63a3;
	padding: 1.3125rem 1.625rem 2.125rem;
	background: #fff;
	position: relative;
	-webkit-box-shadow: #5d63a3 10px 10px;
	box-shadow: #5d63a3 10px 10px;
	position: relative;
	z-index: 3;
}
.top-news__item::before {
	position: absolute;
	content: "";
}
.top-news__item + .top-news__item {
	margin-left: 2.75rem;
}

.top-news__item:nth-child(1)::before {
	top: -2.675rem;
	left: -3.5rem;
	background: url(../img/light.png) no-repeat center center/contain;
	width: 4.6875rem;
	height: 4.8125rem;
}
@media screen and (max-width: 767px) {
	.top-news__item:nth-child(1)::before {
		top: -4.125rem;
		left: 0.125rem;
	}
}

.top-news__item:nth-child(2) {
	position: relative;
	/* 	top: 1.875rem; */
}
.top-news__item:nth-child(2)::before {
	top: -1.9375rem;
	left: 0.4375rem;
	background: url(../img/arrows.png) no-repeat center center/contain;
	width: 6rem;
	height: 2.5rem;
}

.top-news__item:nth-child(3) {
	position: relative;
	/* 	top: 0.9375rem; */
}
.top-news__item:nth-child(3)::before {
	top: -2.875rem;
	left: -0.4375rem;
	background: url(../img/shootingstar.png) no-repeat center center/contain;
	width: 5.125rem;
	height: 3.8125rem;
}
@media screen and (max-width: 767px) {
	.top-news__item a {
		display: flex;
		flex-wrap: wrap;
		align-items: center;
	}
	.top-news__item:nth-child(2),
	.top-news__item:nth-child(3) {
		display: none;
	}
}

.top-news__item .catch img {
	width: 17.5rem;
	height: 10rem;
	overflow: hidden;
	border-radius: 10px;
	-o-object-fit: cover;
	object-fit: cover;
}

@media screen and (max-width: 767px) {
	.top-news__item .catch {
		width: 100%;
	}
	.top-news__item .catch img {
		width: 100%;
		height: auto;
	}
}

.top-news__item .date {
	color: #db4c2d;
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.142;
}

.top-news__item .cat {
	border-radius: 5px;
	background: #5d63a3;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	padding: 0.3125rem 1.0625rem;
	margin-top: 1.1875rem;
	display: inline-block;
	line-height: 1.428;
}
@media screen and (max-width: 767px) {
	.top-news__item .cat {
		margin-top: 0;
		margin-left: 0.5rem;
	}
}

.top-news__item .ttl {
	margin-top: 0.875rem;
	font-weight: 700;
	font-size: 1.125rem;
	line-height: 1.444444;
}
@media screen and (max-width: 767px) {
	.top-news__item .ttl {
		width: 100%;
	}
}

.top-about {
	position: relative;
	padding-top: 3.4375rem;
	padding-bottom: 16rem;
	overflow: hidden;
}
.top-about::before {
	position: absolute;
	content: "";
	width: 100vw;
	height: 100%;
	background: url(../img/top-about01-bg.png) no-repeat center center/cover;
	top: 1.875rem;
}
@media screen and (max-width: 767px) {
	.top-about {
		padding-top: 3.6875rem;
		background: linear-gradient(180deg, transparent 0%, transparent 80%, #fff 80%, #fff 100%);
	}
	.top-about::before {
		background: url(../img/top-about01-bg-sp) no-repeat top center/cover;
		height: 195.531875rem;
		top: 1.5rem;
	}
}

.top-about .inner {
	position: relative;
}
.top-about .inner::before {
	position: absolute;
	content: "";
	top: -1.625rem;
	left: -6.0625rem;
	background: url(../img/flag-left.png) no-repeat center center/cover;
	width: 17.5rem;
	height: 7.5625rem;
}
.top-about .inner::after {
	position: absolute;
	content: "";
	top: -1.625rem;
	right: -6.0625rem;
	background: url(../img/flag-right.png) no-repeat center center/cover;
	width: 17.5rem;
	height: 7.5625rem;
}
@media screen and (max-width: 767px) {
	.top-about .inner::before {
		left: -1.25rem;
		width: 8.125rem;
		height: 3.5rem;
		top: -1.8rem;
	}
	.top-about .inner::after {
		right: -1.25rem;
		width: 7.625rem;
		height: 3.3125rem;
		top: -1.8rem;
	}
}

.top-about01 {
	position: relative;
	padding-top: 1.375rem;
	padding-bottom: 10.25rem;
}
@media screen and (max-width: 767px) {
	.top-about01 {
		position: relative;
		padding-top: 1.375rem;
		padding-bottom: 10.25rem;
	}
}
.top-about01 .video-out-wrapper::before {
	position: absolute;
	content: "";
	bottom: -2.4375rem;
	right: -2rem;
	background: url(../img/recruit-sai.png) no-repeat center center/contain;
	width: 15.25rem;
	height: 20.3125rem;
}

@media screen and (max-width: 767px) {
	.top-about01 .video-out-wrapper::before {

		bottom:-9.6875rem;
		right: 2.25rem;
		width: 5.625rem;
		height:7.625rem;
	}
}

@media screen and (min-width: 768px) {
	.top-about01::after {
		position: absolute;
		content: "";
		bottom: 6.5rem;
		left: 6.6875rem;
		background: url(../img/movie-flask.png) no-repeat center center/contain;
		width: 7.34125rem;
		height: 5.24125rem;
	}
}

@media screen and (max-width: 767px) {
	.top-about01 {
		padding-top: 1.9375rem;
	}
	.top-about01::before {
		width: 5.75rem;
		height: 7.625rem;
		bottom: -1.125rem;
		right: 1.8125rem;
	}
}

.top-about01 .ttl {
	text-align:center;
}
@media screen and (min-width: 768px) {
	.top-about01 .ttl {
		margin-bottom: 1.875rem;
	}
}
@media screen and (max-width: 767px) {
	.top-about01 .ttl {
		position: static;
		text-align: center;
	}
}

.top-about01 .ttl .ja {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #5d63a3;
	font-size: 2.625rem;
	font-weight: 700;
	line-height: 1.5;
	margin-bottom:0.4775rem;
	position:relative;
}

@media screen and (min-width: 768px) {
	.top-about01 .ttl .ja::after ,
	.top-about01 .ttl .ja::before{
		position:absolute;
		display:block;
		content:"";
		top:50%;
		transform:translatey(-50%);
		width:2.675625rem;
		height:3px;
		background-color:#5D63A3;
		border-radius:100px;

	}

	.top-about01 .ttl .ja::before{
		left:18.125rem;
	}
	.top-about01 .ttl .ja::after{
		right:18.125rem;
	}
}
@media screen and (max-width: 767px) {
	.top-about01 .ttl .ja {
		font-size: 1.625rem;
	}
}
.top-about01 .ttl .ja img {
	width: 31.25rem;
	height: auto;
}
@media screen and (max-width: 767px) {
	.top-about01 .ttl .ja img {
		width: 20.9375rem;
	}
}

.top-about01 .ttl .en {
	display: block;
	color: #db4c2d;
	font-size: 0.875rem;
	font-weight: 700;
	margin-top: -0.5rem;
}
@media screen and (max-width: 767px) {
	.top-about01 .ttl .en {
		font-size: 0.75rem;
		margin-top: 0.375rem;
	}
}
.top-about01 .video-out-wrapper {
	position: relative;
}
.top-about01 .video-wrapper {
	position: relative;
	width: 45rem;
	height:25.0625rem;
	margin:0 auto;
	z-index:2;
	border-radius: 20px;
	overflow: hidden;
}

.top-about01::before {
	position: absolute;
	content: "";
	bottom: 2.0625rem;
	left: 6.3125rem;
	background: url(../img/topabout01-vbg.png) no-repeat bottom center/contain;
	width:54.92625rem;
	height: 23.8825rem;
	z-index:0;
}
@media screen and (max-width: 767px) {
	.top-about01::before {
		bottom: 6.25rem;
		left:-0.5625rem;
		width:22.125rem;
		height: 9.6875rem;

	}
}
.top-about01__text::after {
	position: absolute;
	content: "";
	bottom: 8.5625rem;
	left: 13.3125rem;
	background-color:#FFF7FA;
	width:48.75rem;
	height: 22.831875rem;
	border-radius:20px;
	z-index:0;
}
@media screen and (max-width: 767px) {
	.top-about01__text::after {
		bottom: 9.5625rem;
		left: 0.625rem;
		width:19.625rem;
		height: 11.625rem;
		z-index:0;
	}
}
.top-about01 .video-out-wrapper::after {
	position: absolute;
	content: "";
	top: -2.75rem;
	left: 10.25rem;
	background: url(../img/stars.png) no-repeat bottom center/cover;
	width: 7.6875rem;
	height: 6.3125rem;
	z-index: 6;
}
@media screen and (max-width: 767px) {
	.top-about01 .video-wrapper {
		width:18.125rem;
		height:10.125rem;
		margin-top: 3.125rem;
	}
	.top-about01 .video-wrapper::before {
		width: 3.625rem;
		height: 3rem;
		left: 0;
		bottom: -3.625rem;
		-webkit-transform: none;
		transform: none;
	}
}
@media screen and (max-width: 767px) {
	.top-about01 .video-out-wrapper::after {
		width: 3.375rem;
		height:3rem;
		top:-1.125rem;
		left: 0.1875rem;
		z-index: 1;
	}
}
@media screen and (max-width: 767px) {
	.top-about01::after{
		position: absolute;
		content: "";

		background: url(../img/top-about__crrcle.png) no-repeat bottom center/cover;
		width: 6.12375rem;
		height:5.89rem;
		bottom:0.5rem;
		left: 0.1875rem;
	}
}

.top-about01 .video {
	text-align: center;
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 44%;
	border-radius: 20px;
}
.top-about01 .video source{
	position: absolute;
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 74.2999%;
	height: 100%;
	border: #fff7fa solid 1.5625rem;
	border-radius: 20px;
}
@media screen and (max-width: 767px) {
	.top-about01 .video {
		padding-top: 55%;
	}
	.top-about01 .video iframe {
		width: 90%;
		border: #fff7fa solid 0.75rem;
	}
}

.top-about02 {
	position: relative;
}

/* .top-about02::after {
position: absolute;
content: "";
bottom: 0.925rem;
right: 0;
background: url(../img/topabout02-sai.png) no-repeat center center/contain;
width: 22.8125rem;
height: 13.4375rem;
} */
@media screen and (max-width: 767px) {
	.top-about02 {
		padding-top: 4.3125rem;
	}
	.top-about02::before {
		top: -5.5rem;
		left: -0.125rem;
		width: 8.3125rem;
		height: 8rem;
	}
	.top-about02::after {
		content: none;
	}
}

.top-about02 .ttl {
	font-weight: 700;
	color: #5d63a3;
	font-size: 2.25rem;
	position: relative;
	z-index: 3;
	margin-left: 6.25rem;
	width: 51.666%;
	line-height: 1.5;
	letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
	.top-about02 .ttl {
		font-size: 1.5rem;
		margin-left: 0;
		width: 100%;
	}
}

.top-about02 .text {
	font-weight: 700;
	font-size: 1rem;
	margin-top: 2.1875rem;
	position: relative;
	z-index: 3;
	margin-left: 6.25rem;
	width: 51.666%;
}
@media screen and (max-width: 767px) {
	.top-about02 .text {
		font-size: 0.875rem;
		margin-top: 1.9375rem;
		margin-left: 0;
		width: 100%;
		line-height: 1.571;
	}
}

.top-about02 .img {
	position: relative;
	-webkit-box-shadow: #ffff8c 10px 10px;
	box-shadow: #ffff8c 10px 10px;
	border-radius: 10px;
	position: absolute;
	width: 56.666%;
	top: 8.375rem;
	right: 0;
}
.top-about02 .img img {
	margin-bottom: -10px;
}
.top-about02 .img::before {
	position: absolute;
	content: "";
	top: -2.5625rem;
	left: -1.4375rem;
	background: url(../img/kenbikyo.png) no-repeat center center/contain;
	width: 3.8125rem;
	height: 7.0625rem;
}
.top-about02 .img::after {
	position: absolute;
	content: "";
	top: -2.5625rem;
	right: 0;
	background: url(../img/frasuko.png) no-repeat center center/contain;
	width: 7.3125rem;
	height: 5.25rem;
}
@media screen and (max-width: 767px) {
	.top-about02 .img {
		-webkit-box-shadow: #ffff8c 5px 5px;
		box-shadow: #ffff8c 5px 5px;
		position: relative;
		margin-top: 3rem;
		width: 100%;
		top: 0;
	}
	.top-about02 .img::before {
		top: -1.25rem;
		left: -0.6875rem;
		width: 1.8125rem;
		height: 3.375rem;
	}
	.top-about02 .img::after {
		top: -1.25rem;
		right: 0;
		width: 3.5rem;
		height: 2.5rem;
	}
	.top-about02 .img img {
		margin-bottom: -10px;
	}
}

.top-about03 {
	position: relative;
	margin-top: 4.0625rem;
	padding-bottom: 8.75rem;
}
.top-about03::before {
	position: absolute;
	content: "";
	top: -0.875rem;
	left: -4.4375rem;
	background: url(../img/crowd-left.png) no-repeat center center/cover;
	width: 13.125rem;
	height: 6.5625rem;
	z-index: 3;
}
.top-about03::after {
	position: absolute;
	content: "";
	top: 3.1875rem;
	right: -4.9375rem;
	background: url(../img/crowd-right.png) no-repeat center left/cover;
	width: 11.1875rem;
	height: 5.6875rem;
}
@media screen and (max-width: 767px) {
	.top-about03 {
		margin-top: 4.6875rem;
		padding-bottom: 12.125rem;
	}
	.top-about03::before {
		top: -3.1875rem;
		left: 0.5625rem;
		width: 6.375rem;
		height: 3.1875rem;
	}
	.top-about03::after {
		top: -2.75rem;
		right: 0.9375rem;
		width: 5.4375rem;
		height: 2.75rem;
	}
}

.top-about03__contents {
	position: relative;
	padding-top: 8.0625rem;
}
.top-about03__contents::before {
	position: absolute;
	content: "";
	top: 49%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	background: url(../img/topabout03-bg.png) no-repeat center center/contain;
	width: 100%;
	height: 44.25vw;
}
@media screen and (max-width: 767px) {
	.top-about03__contents {
		padding-top: 4rem;
	}
	.top-about03__contents::before {
		background: url(../img/topabout03-bg-sp.png) no-repeat center center/cover;
		width: 100vw;
		height: 374.4vw;
		max-height: 1600px;
		top: 54%;
	}
}

.top-about03__lists {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	-webkit-column-gap: 5rem;
	-moz-column-gap: 5rem;
	column-gap: 5rem;
	padding-left: 6.25rem;
	padding-right: 6.25rem;
}
.top-about03__lists::before {
	position: absolute;
	content: "";
	background: url(../img/notebook.png) no-repeat center center/contain;
	top: 11.125rem;
	right: -2.4375rem;
	width: 5.0625rem;
	height: 5.875rem;
}
.top-about03__lists::after {
	position: absolute;
	content: "";
	background: url(../img/pencil.png) no-repeat center center/contain;
	top: 17rem;
	right: 2.0625rem;
	width: 3.125rem;
	height: 5.75rem;
}
@media screen and (max-width: 767px) {
	.top-about03__lists {
		grid-template-columns: 1fr;
		row-gap: 1.875rem;
		padding-left: 0;
		padding-right: 0;
	}
	.top-about03__lists::before {
		top: 46.125rem;
		right: -1.25rem;
		width: 3rem;
		height: 3.5rem;
	}
	.top-about03__lists::after {
		top: auto;
		bottom: -2.5625rem;
		right: auto;
		left: -1.25rem;
		width: 2.1875rem;
		height: 4rem;
	}
}

.top-about03__item {
	position: relative;
	padding-top: 10px;
}
@media screen and (max-width: 767px) {
	.top-about03__item {
		padding-left: 1.75rem;
		padding-right: 1.75rem;
	}
}

.top-about03__item:nth-child(1) {
	position: relative;
}
.top-about03__item:nth-child(1)::before {
	position: absolute;
	content: "";
	background: url(../img/scissors.png) no-repeat center center/contain;
	bottom: 6.2rem;
	left: -8.75rem;
	width: 5.125rem;
	height: 7.4375rem;
}
@media screen and (max-width: 767px) {
	.top-about03__item:nth-child(1)::before {
		top: 21rem;
		left: -2.1875rem;
		width: 2.8125rem;
		height: 4rem;
	}
}

.top-about03__item .ttl {
	position: absolute;
	top: 0;
	right: 12px;
}
.top-about03__item .ttl span {
	font-size: 1rem;
	font-weight: 700;
	color: #fff;
	padding: 0.75rem 0.125rem;
	border-radius: 5px;
	background: #5d63a3;
	line-height: 1.125;
	letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
	.top-about03__item .ttl {
		right: calc(12px + 1.25rem);
	}
}

.top-about03__item .img img {
	width: 100%;
}

.top-about03__item .text {
	margin-top: 0.6875rem;
	font-size: 1rem;
	font-weight: 700;
}

.top-about03__item .btn {
	margin-top: 1.375rem;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.top-about03__item .btn {
		margin-top: 1.5625rem;
	}
}

.top-about03__item .btn-line {
	width: 86.785%;
}
@media screen and (max-width: 767px) {
	.top-about03__item .btn-line {
		width: 15rem;
	}
}

.top-course {
	padding-bottom: 9rem;
	position:relative;
	z-index: 2;
	margin-top: -13rem;
}
@media screen and (max-width: 767px) {
	.top-course {
		padding-bottom: 6.4375rem;
		margin-top: -11rem;
	}
}

.top-course .ttl {
	text-align: center;
	padding-top: calc(8.5px + 7.625rem);
	position: relative;
	top: -1.0625rem;
}
.top-course .ttl::before {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 6.8125rem;
	height: 7.625rem;
	background: url(../img/f-shikenkan.png) no-repeat center center/contain;
}
@media screen and (max-width: 767px) {
	.top-course .ttl {
		top: -3.5rem;
		padding-top: calc(20px + 7.625rem);
	}
}

.top-course .ja {
	font-weight: 700;
	font-size: 2.25rem;
	line-height: 1.5;
	color: #fff;
}
@media screen and (max-width: 767px) {
	.top-course .ja {
		font-size: 1.75rem;
	}
}

.top-course .en {
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.1428;
	color: #ffff8c;
	margin-top: ren(10);
}
@media screen and (max-width: 767px) {
	.top-course .en {
		font-size: 0.75rem;
		margin-top: 0.625rem;
	}
}


.top-course__contents {


	position: relative;
	margin-top: 6.25rem;
}

@media screen and (max-width: 767px) {
	.top-course__contents {
		display: block;
		padding-left: 0;
		padding-right: 0;
		margin-top: -3.375rem;
	}
	.top-course__contents::after {
		content: none;
	}
}

.top-course__items.--02 {
	margin-top: 6.9375rem;
}
@media screen and (max-width: 767px) {
	.top-course__items.--02 {
		margin-top: 0;
	}
}

.top-course__items{
	text-align:center;
	justify-content: center;
}
@media screen and (min-width: 768px) {
	.top-course__items{
		display:flex;
		column-gap:1.875rem;
	}
}
@media screen and (max-width: 767px) {
	.top-course__items{

		margin-top: 0;
	}
}




.top-course__item {

	position: relative;
}
@media screen and (max-width: 767px) {
	.top-course__item {

		margin-top: 3.125rem;
	}
}



.top-course__item .info {
	border-radius: 50%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
	position: absolute;
	top: -5rem;

	right: 0.625rem;
	background: #fff;
	border: 4px solid #5d63a3;
	width: 11rem;
	height: 11rem;
}
@media screen and (max-width: 767px) {
	.top-course__item .info {
		right: 0.4375rem;
		width: 7.875rem;
		height: 7.875rem;
		top:-3.125rem;

	}
}

.top-course__item .name {
	font-size: 1.3rem;
	line-height: 1.166;
	font-weight: 700;
	color: #5d63a3;
}
@media screen and (max-width: 767px) {
	.top-course__item .name {
		font-size: 1rem;
	}
}

.top-course__item .for {
	margin-top: 0.3125rem;
}
@media screen and (max-width: 767px) {
	.top-course__item .for {
		margin: 0 calc(100% - 50vw);

	}
}
.top-course__item .for span {
	color: #fff;
	font-weight: 700;
	font-size: 0.8125rem;
	background: #000;
	padding: 5px;
	border-radius: 5px;
}
@media screen and (max-width: 767px) {
	.top-course__item .for span {
		font-size: 0.6875rem;
	}
}

.top-course__item .for.pink span {
	background: #f0b9ce;
}

.top-course__item .for.yellow span {
	background: #ffc400;
}

.top-course__item .for.green span {
	background: #b3d541;
}

.top-course__item .for.red span {
	background: #db4c2d;
}

.top-event {
	overflow: hidden;
	position: relative;
	padding-bottom: 9.5rem;
	margin-top: -6.25rem;
	padding-top: 10.875rem;
	background-color:#FFFFDE;
	z-index: 1;

}

@media screen and (max-width: 767px) {
	.top-event {
		padding-top: 4.5rem;
		padding-bottom: 11rem;
		margin-top: -2rem;

	}
}

.top-course::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: url(../img/topcourse-bg02.png);
	background-position: top left;
	background-repeat: no-repeat;
	background-size: 105.5% 100%;
}
@media screen and (max-width: 767px) {
	.top-course::before {
		background-image: url(../img/topcourse-bg02-sp.png);
		background-size: 100% 100%;
		background-position: top center;

	}

}


.top-event .ttl {
	text-align: center;
	padding-top: calc(18px + 7.3125rem);
	position: relative;
}
.top-event .ttl::before {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 6.8125rem;
	height: 7.3125rem;
	background: url(../img/f-rocket.png) no-repeat center center/contain;
}
.top-event .ttl::after {
	position: absolute;
	content: "";
	top: 2.375rem;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	width: 91%;
	height: 154px;
	background: url(../img/topevent-ttl.png) no-repeat center center/contain;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	.top-event .ttl {
		padding-top: calc(20px + 7.625rem);
		margin-bottom:1.875rem;
	}
	.top-event .ttl::after {
		content: none;
	}
}

.top-event .ja {
	font-weight: 700;
	font-size: 2.375rem;
	line-height: 1.473;
	color: #5d63a3;
}
@media screen and (max-width: 767px) {
	.top-event .ja {
		font-size: 1.75rem;
	}
}

.top-event .en {
	font-weight: 700;
	font-size: 0.875rem;
	line-height: 1.1428;
	color: #db4c2d;
	margin-top: ren(10);
}
@media screen and (max-width: 767px) {
	.top-event .en {
		font-size: 0.75rem;
	}
}

.top-event__swiper-wrapper {
	position: relative;
}

.topeventSwiper .swiper-wrapper {
	margin-top: 4.25rem;
	padding-top: 10px;
	padding-bottom: 10px;
}
@media screen and (max-width: 767px) {
	.topeventSwiper .swiper-wrapper {
		margin-top: 1.5rem;
	}
}

.topevent-card {
	display: grid;
	grid-template-columns: 43% 1fr;
	-webkit-column-gap: 3.75rem;
	-moz-column-gap: 3.75rem;
	column-gap: 3.75rem;
	border: 3px solid #5d63a3;
	border-radius: 20px;
	padding: 5rem 4.125rem;
}
.topevent-card::before {
	position: absolute;
	content: "";
	top: 10px;
	left: 10px;
	width: 100%;
	height: 100%;
	border-radius: 20px;
	background: #fff;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.topevent-card {
		grid-template-columns: 1fr;
		row-gap: 1.625rem;
		padding: 3.5625rem 2rem 1.5625rem;
	}
}

.topevent-card .line1 {
	height: 5px;
	width: 11.25rem;
	top: -1px;
	right: 3.1875rem;
	position: absolute;
	background: #edf6fc;
}
@media screen and (max-width: 767px) {
	.topevent-card .line1 {
		width: 5.625rem;
		right: 1.25rem;
	}
}

.topevent-card .line2 {
	height: 5px;
	width: 11.25rem;
	bottom: -1px;
	left: 3.1875rem;
	position: absolute;
	background: #ffffff;
}
@media screen and (max-width: 767px) {
	.topevent-card .line2 {
		width: 5.625rem;
		left: 1.25rem;
	}
}

.topevent-card .img {
	position: relative;
}
.topevent-card .img img {
	position: relative;
	z-index: 3;
	border-radius: 10px;
	overflow: hidden;
	-o-object-fit: cover;
	object-fit: cover;
}
.topevent-card .img::before {
	position: absolute;
	content: "";
	top: 36%;
	left: 55%;
	-webkit-transform: rotate(-10deg) translate(-50%, -50%);
	transform: rotate(-10deg) translate(-50%, -50%);
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background: #a1cde0;
	z-index: 2;
}
@media screen and (max-width: 767px) {
	.topevent-card .img {
		width: 83.19%;
		max-width: 280px;
		margin-inline: auto;
	}
}

.topevent-card .eventttl {
	color: #5d63a3;
	font-weight: 700;
	font-size: 1.75rem;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.topevent-card .eventttl {
		font-size: 1.125rem;
		line-height: 1.444;
	}
}

.topevent-card .text {
	font-weight: 700;
	font-size: 1rem;
	margin-top: 2.0625rem;
}
@media screen and (max-width: 767px) {
	.topevent-card .text {
		font-size: 0.875rem;
		margin-top: 1.25rem;
		line-height: 1.714;
	}
}

.top-event__swiper-wrapper .swiper-button-prev,
.top-event__swiper-wrapper .swiper-button-next {
	width: 7.5rem;
	height: 7.5rem;
	background: url(../img/arrow.png) no-repeat center center/contain;
}
.top-event__swiper-wrapper .swiper-button-prev::after,
.top-event__swiper-wrapper .swiper-button-next::after {
	content: "";
}
@media screen and (max-width: 767px) {
	.top-event__swiper-wrapper .swiper-button-prev,
	.top-event__swiper-wrapper .swiper-button-next {
		width: 2.5rem;
		height: 2.5rem;
	}
}

.top-event__swiper-wrapper .swiper-button-prev {
	top: 54%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: -3.125rem;
}
@media screen and (max-width: 767px) {
	.top-event__swiper-wrapper .swiper-button-prev {
		left: -0.625rem;
	}
}

.top-event__swiper-wrapper .swiper-button-next {
	top: 54%;
	-webkit-transform: translateY(-50%) rotate(180deg);
	transform: translateY(-50%) rotate(180deg);
	right: -3.125rem;
}
@media screen and (max-width: 767px) {
	.top-event__swiper-wrapper .swiper-button-next {
		right: -0.625rem;
	}
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
	opacity: 0;
}

.top-event .btn {
	margin-top: 4.125rem;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.top-event .btn {
		margin-top: 0.5rem;
	}
}
.top-class {
	margin-top: -8rem;
	position: relative;
	z-index: 2;
}

.top-class__contents01 {
	display: grid;
	grid-template-columns: 1fr 1fr;
	padding-bottom: 3.1875rem;
}
@media screen and (max-width: 767px) {
	.top-class__contents01 {
		display: block;
		padding-bottom: 2.3125rem;
		padding-top: 2.6875rem;
	}
}

.top-class__texts {
	padding-bottom: 3.25rem;
}
@media screen and (max-width: 767px) {
	.top-class__texts {
		padding-bottom: 0;
	}
}

.top-class .ttl {
	position: relative;
	padding-top: 5.75rem;
}
.top-class .ttl::before {
	position: absolute;
	content: "";
	background: url(../img/notepen.png) no-repeat center center/contain;
	top: 1.375rem;
	right: 7.5rem;
	width: 10.9375rem;
	height: 6.4375rem;
}
@media screen and (max-width: 767px) {
	.top-class .ttl {
		padding-top: 0;
		-o-object-fit: 1rem;
		object-fit: 1rem;
	}
	.top-class .ttl::before {
		top: auto;
		bottom: -0.75rem;
		right: 0.9375rem;
		width: 6.5rem;
		height: 3.8125rem;
	}
}

.top-class .ja {
	font-weight: 700;
	font-size: 2.375rem;
	color: #5d63a3;
	line-height: 1.473;
}
@media screen and (max-width: 767px) {
	.top-class .ja {
		font-size: 1.75rem;
		line-height: 1.5;
	}
}

.top-class .en {
	font-weight: 700;
	font-size: 0.875rem;
	color: #db4c2d;
	margin-top: 0.625rem;
	font-weight: 700;
}
@media screen and (max-width: 767px) {
	.top-class .en {
		font-size: 0.75rem;
		margin-top: 0.1875rem;
	}
}

.top-class .lead {
	margin-top: 3.5rem;
	font-weight: 700;
	font-size: 1.75rem;
	color: #5d63a3;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.top-class .lead {
		margin-top: 2.8125rem;
		font-size: 1.375rem;
	}
}

.top-class .text {
	margin-top: 2.125rem;
	font-weight: 700;
	font-size: 1rem;
	letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
	.top-class .text {
		margin-top: 1.5625rem;
		font-size: 0.875rem;
		line-height: 1.714;
	}
}

.top-class__img {
	position: relative;
}
.top-class__img::before {
	position: absolute;
	content: "";
	height: 100%;
	width: 111.333%;
	background: url(../img/top-class.png) no-repeat center center/contain;
	top: 0.125rem;
	left: 0;
}
@media screen and (max-width: 767px) {
	.top-class__img {
		margin-top: 1.6875rem;
		width: 90%;
		margin-inline: auto;
	}
	.top-class__img::before {
		content: none;
	}
}

.top-class__contents02 {
	position: relative;
	padding-top: 10rem;
	padding-bottom: 6.25rem;
}
.top-class__contents02::before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 103%;
	background: url(../img/topclass-bg.png) no-repeat top center/100% 100%;
	z-index: -1;
}
@media screen and (max-width: 767px) {
	.top-class__contents02 {
		padding-top: 4rem;
		padding-bottom: 4rem;
	}
	.top-class__contents02::before {
		background: url(../img/topclass-bg-sp.png) no-repeat top center/100% 100%;
	}
}
@media screen and (min-width: 768px) {
	.top-class__contents02::after {
		position: absolute;
		content: '';
		display: block;
		background-repeat: no-repeat;
		background-size: contain;
		background-position: top center;
		background-image: url(../img/topclass-bg-deco.png);
		width: 105%;
		height: 18.3125rem;
		left: 53%;
		transform: translatex(-50%);
		top: 2.625rem;
	}
}
.top-class__contents02--ttl {
	text-align: center;
	color: #5D63A3;
	font-size: 2.375rem;
	margin-bottom: 1rem;
	position: relative;
	z-index: 3;
}
@media screen and (min-width: 768px) {
	.top-classlist__box {
		background: #fff;
		border-radius: 20px;
		padding: 5.1875rem 5rem 5.625rem;
		position: relative;
		margin-top: 3.25rem;
	}
	.top-class__list {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		-webkit-column-gap: 2.5rem;
		-moz-column-gap: 2.5rem;
		column-gap: 2.5rem;
		row-gap: 1.5rem;
	}
	.top-classlist__box .class {
		margin-top: 1.5rem;
	}
	.top-class__item {
		text-align: center;
	}
	.top-class__item .name {
		font-weight: 700;
		font-size: 1.125rem;
	}
	.top-class__item .area {
		font-weight: 700;
		color: #fff;
		font-size: 0.875rem;
		border-radius: 5px;
		padding: 0.3125rem 0.8125rem;
		margin-top: 0.5rem;
		display: inline-block;
		line-height: 1.428;
	}
	.tokyo .top-class__item .area {
		background: #5d63a3;
	}
	.kanagawa .top-class__item .area {
		background: #a1cde0;
	}
	.chiba .top-class__item .area {
		background: #b3d541;
	}
	.saitama .top-class__item .area {
		background: #f0b9ce;
	}
	.top-class__item .catch {
		margin-top: 1.25rem;
	}
	.top-class__item .catch img {
		width: 20rem;
		height: 11.25rem;
		-o-object-fit: cover;
		object-fit: cover;
		border-radius: 10px;
	}
}
@media screen and (max-width: 767px) {
	.top-class__contents02 .archive-class__lead span {
		font-size: 1.375rem;
		line-height: 1.5;
	}
	.top-classtablist {
		margin-top: 3.6875rem;
	}
	.topclasstab {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 0 0.125rem;
	}
	.topclasstab > label {
		-webkit-box-flex: 1;
		-ms-flex: 1 1;
		flex: 1 1;
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		padding: 0.875rem 0.3125rem;
		border-radius: 5px 5px 0 0;
		border-radius: 10px 10px 0 0;
		font-size: 1rem;
		text-align: center;
		cursor: pointer;
		display: block;
		letter-spacing: 0.02em;
		line-height: 1.4375;
	}
	label.tokyo {
		background: #fff;
		color: #5D63A3;
	}
	label.kanagawa {
		background: #A1CDE0;
		color: #fff;
	}
	label.chiba {
		background: #B3D541;
		color: #fff;
	}
	label.saitama {
		background: #F0B9CE;
		color: #fff;
	}
	/* 	.topclasstab > label:hover {
	opacity: 0.8;
} */
	.topclasstab input {
		display: none;
	}
	.topclassbox {
		width: 100%;
		border-radius: 0 0 10px 10px;
		padding: 1.0625rem 1.25rem 1.5rem;
		display: none;
	}
	.topclassbox.tokyo {
		background: #fff;
	}
	.topclassbox.kanagawa {
		background: #A1CDE0;
	}
	.topclassbox.chiba {
		background: #B3D541;
	}
	.topclassbox.saitama {
		background: #F0B9CE;
	}
	.topclasstab label:has(:checked) + .topclassbox {
		display: block;
	}
	.topclasstab .top-class__list {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		gap: 1.125rem;
	}
	.topclasstab .top-class__item a {
		border-radius: 15px;
		background: #5D63A3;
		font-weight: 700;
		font-size: 0.875rem;
		line-height: 1.428;
		color: #fff;
		padding: 0.3125rem 0.8125rem;
	}
	.topclassbox.tokyo a {
		background: #5D63A3;
		color: #fff;
	}
	.topclassbox.kanagawa a {
		background: #fff;
		color: #A1CDE0;
	}
	.topclassbox.chiba a {
		background: #fff;
		color: #B3D541;
	}
	.topclassbox.saitama a {
		background: #fff;
		color: #F0B9CE;
	}
}


/* クラスの追加分 */

@media screen and (min-width: 768px) {
	.u-front__class__takes-minutes,
	.u-front__class__station {
		font-size: 12px;
		line-height: 1.4166666667;
		letter-spacing: 0.02em;
		font-weight: 700;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-front__class__takes-minutes,
	.u-front__class__station {
		font-size: 0.8333333333vw;
	}
}

@media screen and (min-width: 768px) {
	.u-front__class__station {
		margin-top: 0.6944444444vw;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-front__class__station {
		margin-top: 0.6944444444vw;
	}
}

@media screen and (min-width: 768px) {
	.u-front__class__takes-minutes .u-front__class__station {
		margin-top: 0.3472222222vw;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-front__class__takes-minutes .u-front__class__station {
		margin-top: 0.3472222222vw;
	}
}


/* 追加 */


@media screen and (min-width: 768px) {
	.top-about01__text {
		background-color: #fff;
		margin: 0 auto;
		width: 62.5rem;
		padding: 40px;
		border-radius: 20px;
		margin-bottom: 1.875rem;
		font-size: 14px;
		line-height: 1.8571428571;
		letter-spacing: 0em;
		font-weight: 400;
		font-family: "Zen Maru Gothic", serif;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-about01__text {
		width: 55.5555555556vw;
		padding: 2.7777777778vw;
		border-radius: 1.3888888889vw;
	}
}
@media screen and (max-width: 767px) {
	.top-about01__text {
		border-radius: 5.3333333333vw;
		background-color: #fff;
		margin: 0 auto;
		padding: 5.3333333333vw;
		font-size:0.75rem;
		line-height: 1.8333333333;
		letter-spacing: 0em;
		font-weight: 400;
	}
}
.p-top__archive__btn{
	text-align:center;
}
@media screen and (max-width: 767px) {
	.p-top__archive__btn{
		background-color: #edf6fc;
	}
}

.p-about__img01{
	width:62.4375rem;
	height:12.9375rem;

}



.p-about__img02 ,
.p-about__img03{
	width:30rem;
	height:12.5rem;

}
@media screen and (max-width: 767px) {
	.p-about__img01,
	.p-about__img02 ,
	.p-about__img03{
		width:20.875rem;
		height:8.8125rem;
	}

}
@media screen and (min-width: 768px) {
	.top-event__list{
		display:flex;
	}
}
/* イベントのご案内 */

.top-event__wrap {
	margin: 0 auto;
}
@media screen and (min-width: 768px) {
	.top-event__wrap {
		max-width: 999px;
		margin-top: 40.5px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__wrap {
		max-width: 69.375vw;
		margin-top: 2.8125vw;
	}
}

@media screen and (min-width: 768px) {
	.top-event__list {
		display: flex;
		border-radius: 20px;
		column-gap: 23.4px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__list {
		border-radius: 1.3888888889vw;
		column-gap: 1.625vw;
	}
}

.top-event__item {
	position: relative;
	text-align: center;
	z-index: 1;
	border-radius: 20px;
}
@media screen and (min-width: 768px) {
	.top-event__item {
		border-radius: 1.25rem;
		width: 20.275625rem;
	}
}
@media screen and (max-width: 767px) {
	.top-event__item {
		width:20.9375rem;
		margin: 0 auto 2.875rem;

	}
}
.top-event__link {
	cursor: pointer;
	position: relative;
}
@media screen and (min-width: 768px) {
	.top-event__link {
		width: 324.41px;
		padding: 42px 23.5px 35.7px 20.9px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__link {
		width: 22.5284722222vw;
		padding: 2.9166666667vw 1.6319444444vw 2.4791666667vw 1.4513888889vw;
	}
}
@media screen and (max-width: 767px) {
	.top-event__link {
		width:20.9375rem;
		padding:3.75rem 1.4125rem 2rem 1.7125rem;
	}
}

.top-event__link::before {
	position: absolute;
	content: "";
	background: #fff;
	z-index: -1;
	border-radius: 20px;
}
@media screen and (min-width: 768px) {
	.top-event__link::before {
		top: 10px;
		left: 10px;
		width: 314.41px;
		height: 430.47px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__link::before {
		border-radius: 1.3888888889vw;
		top: 0.6944444444vw;
		left: 0.6944444444vw;
		width: 21.8340277778vw;
		height: 29.89375vw;
	}
}
@media screen and (max-width: 767px) {
	.top-event__link::before {
		width:100%;
		height:100%;
		top:0.8125rem;
		left:0.8125rem;
	}
}
.top-event__link::after {
	position: absolute;
	content: "";
	width: 100%;
	border: 3px solid #5d63a3;
	z-index: -1;
	border-radius: 20px;
	top: 0px;
	left: 0px;
}

@media screen and (min-width: 768px) {
	.top-event__link::after {
		width: 314px;
		height: 430.47px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__link::after {
		width: 21.8055555556vw;
		height: 29.8611111111vw;
		border-radius: 1.3888888889vw;
		top: 0vw;
		left: 0vw;
		height: 29.89375vw;
	}
}
@media screen and (max-width: 767px) {
	.top-event__link::after {
		width:20.9375rem;
		height:29.5rem;
		top:0;
		left:0;
	}
}

@media screen and (max-width: 767px) {
	.u-top__event::after{
		height:27.5rem;
	}
}
.top-event__link .top-event__bg {
	margin: 0 auto;
}
@media screen and (min-width: 768px) {
	.top-event__link .top-event__bg {
		margin: 0 auto 39.1px;
		width: 216.69px;
		height: 132px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__link .top-event__bg {
		margin-bottom: 2.7152777778vw;
		width: 15.0479166667vw;
		height: 9.1666666667vw;
	}
}

@media screen and (min-width: 768px) {
	.top-event__list .top-event__item:last-of-type .top-event__link .top-event__bg {
		margin: 0 auto 32.3px;

	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__list .top-event__item:last-of-type .top-event__link .top-event__bg {
		margin-bottom: 2.2430555556vw;

	}
}

.top-event__link .top-event__bg::before {
	position: absolute;
	content: "";

	transform: rotate(-10deg) translate(-50%, -50%);
	width: 100%;
	height: 100%;
	border-radius: 10px;
	background: #a1cde0;
	z-index: 2;
}
@media screen and (min-width: 768px) {
	.top-event__link .top-event__bg::before {
		top: 20%;
		left: 53%;
		width: 216.69px;
		height: 132px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__link .top-event__bg::before {
		width: 15.0479166667vw;
		height: 9.1666666667vw;
	}
}
@media screen and (max-width: 767px) {
	.top-event__link .top-event__bg::before {
		width:13.728125rem;
		height:8.35625rem;
		top: 24%;
		left: 53.5%;
	}
}

.top-event__img {
	position: relative;
	border-radius: 10px;
	z-index: 3;
	object-fit:cover;
}
@media screen and (min-width: 768px) {
	.top-event__img {
	width: 13.543125em;
	height:8.25rem;
	}
}

@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__img {
		width: 13.543125em;
	height:7.25rem;
	}
}

@media screen and (max-width: 767px) {
	.top-event__img {
		width:13.728125rem;
		height:8.35625rem;
		margin-bottom:1.9375rem;
	}
}


.top-event__list__ttl {
	text-align: center;
	color:#5D63A3;
}
@media screen and (min-width: 768px) {
	.top-event__list__ttl {
		margin-bottom: 25.8px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__list__ttl {
		margin-bottom: 1.7916666667vw;
	}
}



@media screen and (min-width: 768px) {
	.top-event__list .top-event__item:last-of-type .top-event__link .top-event__list__ttl  {
		margin-bottom: 19.6px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__list .top-event__item:last-of-type .top-event__link .top-event__list__ttl  {
		margin-bottom: 1.3611111111vw;
	}
}




@media screen and (min-width: 768px) {
	.top-event__list__ttl {
		font-size: 22px;
		line-height: 1.1818181818;
		letter-spacing: 0.02em;
		font-weight: 700;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__list__ttl {
		font-size: 1.5277777778vw;
	}
}
@media screen and (max-width: 767px) {
	.top-event__list__ttl {
		font-size:1.125rem;
		line-height: 1.4444444444;
		letter-spacing: 0.02em;
		font-weight: 700;
		margin-bottom:1.6875rem;
	}
}

.top-event__list__text {
	text-align: start;
}
@media screen and (min-width: 768px) {
	.top-event__list__text {
		font-size: 15px;
		line-height: 1.8666666667;
		letter-spacing: 0.02em;
		font-weight: 700;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.top-event__list__text {
		font-size: 1.0416666667vw;
	}
}
@media screen and (max-width: 767px) {
	.top-event__list__text {
		font-size:0.875rem;
		line-height: 1.7142857143;
		letter-spacing: 0.02em;
		font-weight: 700;
	}
}
@media screen and (min-width: 768px) {
	.top-event .u-event__btn{
		margin-top:2.625rem;
	}
}

/* TOP-about02-style/ */

@media screen and (min-width: 768px) {
	.u-top__ttl {
		margin:10px 0 30px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__ttl {
		margin:0.6944444444vw 0  2.0833333333vw;
	}
}
@media screen and (max-width: 767px) {
	.u-top__ttl {
		margin-bottom: 4.1066666667vw;
	}
}
@media screen and (min-width: 768px) {
	.u-top__ttl {
		font-size: 38px;
		line-height: 1;
		letter-spacing: 0em;
		font-weight: 700;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__ttl {
		font-size: 2.6388888889vw;
	}
}
@media screen and (max-width: 767px) {
	.u-top__ttl {
		font-size:1.75rem;
		line-height: 1.2142857143;
		letter-spacing: 0em;
		font-weight: 700;
	}
}

@media screen and (min-width: 768px) {
	.u-top__list__ttl {
		margin-bottom: 0;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__ttl {
		margin-bottom: 0;
	}
}
@media screen and (max-width: 767px) {
	.u-top__list__ttl {
		margin-bottom: 4.8533333333vw;
	}
}
@media screen and (min-width: 768px) {
	.u-top__list__ttl {
		font-size: 36px;
		line-height: 1.1944444444;
		letter-spacing: 0.1em;
		font-weight: 700;
		margin-bottom:2rem;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__ttl {
		font-size: 2.5vw;
	}
}
@media screen and (max-width: 767px) {
	.u-top__list__ttl {
		font-size: 1.25rem;
		line-height: 1.2;
		letter-spacing: 0.1em;
		font-weight: 700;
		text-align:center;
	}
}

@media screen and (min-width: 768px) {
	.u-top__list__item:nth-of-type(even) .u-top__list__wrap {
		padding: 46px 145px 48px 220px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__item:nth-of-type(even) .u-top__list__wrap {
		padding: 3.1944444444vw 10.0694444444vw 3.3333333333vw 15.2777777778vw;
	}
}
@media screen and (min-width: 768px) {
	.u-top__list__item:nth-of-type(odd) .u-top__list__wrap {
		padding: 62px 145px 71px 220px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__item:nth-of-type(odd) .u-top__list__wrap {
		padding: 4.3055555556vw 10.0694444444vw 4.9305555556vw 15.2777777778vw;
	}
}

.u-top__list__item:nth-of-type(2) .u-top__list__wrap::after,
.u-top__list__item:nth-of-type(3) .u-top__list__wrap::after,
.u-top__list__item:nth-of-type(4) .u-top__list__wrap::after {
	position: absolute;
	content: "";
	display: block;
}

.u-top__list__item:nth-of-type(2) .u-top__list__wrap::after {
	background: url(../img/top-flow2.png) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
	.u-top__list__item:nth-of-type(2) .u-top__list__wrap::after {
		width: 61px;
		height: 113.5px;
		top: -41px;
		right: 116px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__item:nth-of-type(2) .u-top__list__wrap::after {
		width: 4.2361111111vw;
		height: 7.8819444444vw;
		top: -2.8472222222vw;
		right: 8.0555555556vw;
	}
}
.u-top__list__item:nth-of-type(3) .u-top__list__wrap::after {
	background: url(../img/top-flow3.png) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
	.u-top__list__item:nth-of-type(3) .u-top__list__wrap::after {
		width: 81px;
		height: 81px;
		top: -36px;
		left: 217px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__item:nth-of-type(3) .u-top__list__wrap::after {
		width: 5.625vw;
		height: 5.625vw;
		top: -2.5vw;
		left: 15.0694444444vw;
	}
}
.u-top__list__item:nth-of-type(4) .u-top__list__wrap::after {
	background: url(../img/top-flow4.png) no-repeat center center/contain;
}
@media screen and (min-width: 768px) {
	.u-top__list__item:nth-of-type(4) .u-top__list__wrap::after {
		width: 120px;
		height: 101px;
		top: -27px;
		right: 118px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__item:nth-of-type(4) .u-top__list__wrap::after {
		width: 8.3333333333vw;
		height: 7.0138888889vw;
		top: -1.875vw;
		right: 8.1944444444vw;
	}
}
@media screen and (min-width: 768px) {
	.u-top__list__text {
		width: 500px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__text {
		width: 34.7222222222vw;
	}
}
@media screen and (min-width: 768px) {
	.u-top__list__text {
		font-size: 16px;
		line-height: 2;
		letter-spacing: 0em;
		font-weight: 700;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__text {
		font-size: 1.1111111111vw;
	}
}
@media screen and (max-width: 767px) {
	.u-top__list__text {
		font-size: 0.9375rem;
		line-height: 1.6;
		letter-spacing: 0em;
		font-weight: 700;
	}
}
@media screen and (min-width: 768px) {
	.u-top__list__img {
		width: 572.5px;
		height: 286.25px;
		top: 50%;
		transform: translateY(-50%);
		box-shadow: 0.625rem 0.625rem 0.375rem #FFFF8C !important;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__img {
		width: 36.6319444444vw;
		height: 19.8784722222vw;
	}
}
@media screen and (max-width: 767px) {
	.u-top__list__img {
		width: 88.04vw;
		height: 44vw;
	}
}

@media screen and (min-width: 768px) {
	.u-top__list__item {
		margin-bottom: 30px;
	}
}
@media screen and (max-width: 1440px) and (min-width: 768px) {
	.u-top__list__item {
		margin-bottom: 2.0833333333vw;
	}
}
@media screen and (max-width: 767px) {
	.u-top__list__item {
		margin-bottom: 4.1066666667vw;
	}
}

/*----2/21追加バナーエリア----*/
.top_banner_area{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	flex-wrap:wrap;
	margin:60px auto 0;
}
.top_banner_item{
	display:block;
	width:calc((100% - 60px) / 3 );
	margin-right:30px;
	height:auto;
}
.top_banner_item:last-child{
	margin-right:0px;
}
.top_banner_item img{
	width:100%;
}
@media screen and (max-width: 768px){
	.top_banner_item{
		display:block;
		width:100%;
		margin-right:0px;
		margin-bottom:20px;
	}
	.top_banner_item:last-child{
		margin-right:0px;
		margin-bottom:0px;
	}
}
