@-webkit-keyframes btnArrowAnim {
	0%, 100% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	33% {
		-webkit-transform: translateX(110%);
		        transform: translateX(110%);
		opacity: 0;
	}
	66% {
		-webkit-transform: translateX(-110%);
		        transform: translateX(-110%);
		opacity: 0;
	}
}
@keyframes btnArrowAnim {
	0%, 100% {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	33% {
		-webkit-transform: translateX(110%);
		        transform: translateX(110%);
		opacity: 0;
	}
	66% {
		-webkit-transform: translateX(-110%);
		        transform: translateX(-110%);
		opacity: 0;
	}
}
.p-mv {
	height: 65.5rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-mv {
		height: 29rem;
	}
}
.p-mv::after {
	content: "";
	display: block;
	width: 100%;
	height: 7.6rem;
	background-image: url(../images/template-b/img_mv_btm.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	background-position: center bottom;
	position: absolute;
	left: 0;
	bottom: -1px;
}
@media screen and (max-width: 767px) {
	.p-mv::after {
		height: 2rem;
		background-image: url(../images/template-b/img_mv_btm_sp.svg);
	}
}
.p-mv .c-pankz {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
}
.p-mv__image {
	width: 100%;
	height: 100%;
	position: relative;
}
.p-mv__image::after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(255, 255, 248, 0.56);
	position: absolute;
	top: 0;
	left: 0;
}
.p-mv__image img {
	position: relative;
	width: 100%;
	height: 100%;
	display: block;
	-o-object-fit: cover;
	   object-fit: cover;
}

.p-content {
	position: relative;
}
.p-content .bg {
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
	left: 0;
	background-image: url(../images/template-b/bg01.png), url(../images/template-b/bg02.png);
	background-repeat: no-repeat;
	background-position: left -3.5rem top, right -3.5rem top;
	background-size: 20.9rem, 17rem;
}
.p-content .bg.-top {
	top: 0;
}
@media screen and (max-width: 767px) {
	.p-content .bg.-top {
		background-image: none;
	}
}
.p-content .bg.-btm {
	background-image: url(../images/template-b/bg03.png), url(../images/template-b/bg04.png);
	bottom: 0;
	background-position: left -2.5rem bottom 6.5rem, right -2.4rem bottom 5rem;
	background-size: 16.7rem, 16.6rem;
}
@media screen and (max-width: 767px) {
	.p-content .bg.-btm {
		background-image: none;
	}
}

.p-heading {
	padding-top: 0.9rem;
}
@media screen and (max-width: 767px) {
	.p-heading {
		padding-top: 3rem;
	}
}
.p-heading .title-wrap {
	position: relative;
}
.p-heading .title-wrap::before, .p-heading .title-wrap::after {
	content: "";
	display: block;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	position: absolute;
}
.p-heading .title-wrap::before {
	width: 34rem;
	height: 17rem;
	background-image: url(../images/template-b/img_title_deco01.png);
	left: -5.8rem;
	bottom: 0;
}
@media screen and (max-width: 767px) {
	.p-heading .title-wrap::before {
		width: 36.8rem;
		height: 7.6rem;
		background-image: url(../images/template-b/img_title_deco01_sp.svg);
		left: 1.9rem;
		top: -3.9rem;
		bottom: auto;
	}
}
.p-heading .title-wrap::after {
	width: 25.3rem;
	height: 13.6rem;
	background-image: url(../images/template-b/img_title_deco02.png);
	right: 1.7rem;
	bottom: -0.7rem;
}
@media screen and (max-width: 767px) {
	.p-heading .title-wrap::after {
		content: none;
		width: 4.5rem;
		height: 5.4rem;
		background-image: url(../images/template-b/img_title_deco02_sp.svg);
		right: auto;
		left: 0;
		bottom: 0;
	}
}
.p-heading .title-wrap .title-en {
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translateX(-50%) translateY(calc(-50% - 6.5rem));
	        transform: translateX(-50%) translateY(calc(-50% - 6.5rem));
	font-size: 16.9rem;
	color: #F8F8EA;
}
@media screen and (max-width: 767px) {
	.p-heading .title-wrap .title-en {
		font-size: 4.6rem;
		line-height: 1.4347826087;
		-webkit-transform: translateX(-50%) translateY(calc(-50% - 2rem));
		        transform: translateX(-50%) translateY(calc(-50% - 2rem));
	}
}
.p-heading .title-wrap .title1 {
	font-size: 3.7rem;
	font-weight: bold;
	text-align: center;
	color: #951B34;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-heading .title-wrap .title1 {
		font-size: 2rem;
	}
}
.p-heading .title-wrap .title2 {
	margin-top: 1.5rem;
	text-align: center;
	font-size: 11.9rem;
	line-height: 1;
	color: #951B34;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-heading .title-wrap .title2 {
		margin-top: 0.7rem;
		font-size: 4rem;
		letter-spacing: 0.07em;
	}
}
.p-heading__text {
	margin-top: 6rem;
	text-align: center;
	font-size: 1.8rem;
	line-height: 1.7222222222;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	.p-heading__text {
		font-size: 1.4rem;
		line-height: 2.1428571429;
		margin-top: 2.6rem;
		position: relative;
	}
	.p-heading__text::after {
		content: "";
		display: block;
		background-repeat: no-repeat;
		background-position: center center;
		background-size: contain;
		position: absolute;
		width: 4.5rem;
		height: 5.4rem;
		background-image: url(../images/template-b/img_title_deco02_sp.svg);
		right: auto;
		left: 2rem;
		bottom: -1.2rem;
	}
}
.p-heading__tag-list {
	margin-top: 3.5rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	-ms-flex-wrap: wrap;
	    flex-wrap: wrap;
	gap: 1.4rem;
}
@media screen and (max-width: 767px) {
	.p-heading__tag-list {
		gap: 1rem;
		padding: 0 5rem;
	}
}
.p-heading__tag-list .item {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	background-color: #efd550;
	border-radius: 100vh;
	font-size: 1.8rem;
	font-weight: bold;
	padding: 0.3em 1.2em 0.4em;
}
@media screen and (max-width: 767px) {
	.p-heading__tag-list .item {
		font-size: 1.4rem;
		padding: 0.5em 1.6em 0.6em;
	}
}

.p-course {
	padding-top: 11rem;
	padding-bottom: 12.5rem;
}
@media screen and (max-width: 767px) {
	.p-course {
		padding-top: 7.9rem;
		padding-bottom: 5.5rem;
	}
}
.p-course__box .l-content-inner {
	width: 99rem;
	position: relative;
	padding-bottom: 7rem;
}
@media screen and (max-width: 767px) {
	.p-course__box .l-content-inner {
		width: 100%;
		padding-bottom: 5.8rem;
	}
}
.p-course__box .l-content-inner::before {
	content: "";
	position: absolute;
	inset: 0;
	left: 3.2rem;
	top: 0;
	width: 0.5rem;
	height: 100%;
	background: repeating-linear-gradient(to bottom, #efd550 0 0.5rem, transparent 0.5rem 1rem);
	z-index: -1;
	height: 0;
	-webkit-transition: 1s height;
	transition: 1s height;
	-webkit-transition-delay: 0.3s;
	        transition-delay: 0.3s;
}
@media screen and (max-width: 767px) {
	.p-course__box .l-content-inner::before {
		width: 3px;
		background: repeating-linear-gradient(to bottom, #efd550 0 3px, transparent 3px 6px);
		top: 1px;
		content: none;
	}
}
.p-course__box.js-animeOn .l-content-inner::before {
	height: 100%;
}
.p-course__box:last-of-type .l-content-inner {
	padding-bottom: 0;
}
.p-course__box:last-of-type .l-content-inner::before {
	content: none;
}
.p-course__box .heading {
	width: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 1.5rem;
}
@media screen and (max-width: 767px) {
	.p-course__box .heading {
		gap: 1.2rem;
	}
}
.p-course__box .heading .clock {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background-color: #efd550;
	border-radius: 0.5rem;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	width: 13rem;
	height: 4.5rem;
	gap: 0.8rem;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
@media screen and (max-width: 767px) {
	.p-course__box .heading .clock {
		width: 10rem;
		height: 3.5rem;
		gap: 0.5rem;
	}
}
.p-course__box .heading .clock-icon {
	width: 2.7rem;
	height: 2.7rem;
	background-image: url(../images/template-b/icn_clock.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
@media screen and (max-width: 767px) {
	.p-course__box .heading .clock-icon {
		width: 2.1rem;
		height: 2.1rem;
	}
}
.p-course__box .heading .clock-text {
	font-size: 2.5rem;
	font-weight: bold;
	color: #951B34;
}
@media screen and (max-width: 767px) {
	.p-course__box .heading .clock-text {
		font-size: 2rem;
	}
}
.p-course__box .heading-title {
	font-size: 2.9rem;
	font-weight: bold;
	color: #951B34;
}
@media screen and (max-width: 767px) {
	.p-course__box .heading-title {
		font-size: 2rem;
	}
}
.p-course__box .content {
	margin-top: 2.4rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
@media screen and (max-width: 767px) {
	.p-course__box .content {
		display: block;
		margin-top: 1.3rem;
	}
}
.p-course__box .img {
	width: 49.7rem;
	border-radius: 1.2rem;
	overflow: hidden;
	-ms-flex-negative: 0;
	    flex-shrink: 0;
}
@media screen and (max-width: 767px) {
	.p-course__box .img {
		width: 100%;
		border-radius: 1rem;
	}
}
.p-course__box .cnt {
	-webkit-box-flex: 1;
	    -ms-flex-positive: 1;
	        flex-grow: 1;
	padding-left: 4rem;
}
@media screen and (max-width: 767px) {
	.p-course__box .cnt {
		margin-top: 1.6rem;
		padding: 0;
	}
}
@media screen and (max-width: 767px) {
	.p-course__box .sp-wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		gap: 1rem;
	}
}
.p-course__box .category {
	border: 1px solid #951B34;
	background-color: #ffffff;
	font-size: 1.6rem;
	font-weight: bold;
	color: #951B34;
	border-radius: 100vh;
	padding: 0.4em 1em 0.45em;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	gap: 0.7rem;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
}
.p-course__box .category::before {
	content: "";
	width: 2.2rem;
	height: 2.2rem;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}
.p-course__box .category.-study::before {
	background-image: url(../images/common/icn_theme-menu_study.svg);
}
.p-course__box .category.-eat::before {
	background-image: url(../images/common/icn_theme-menu_eat.svg);
}
.p-course__box .category.-play::before {
	width: 2.6rem;
	height: 2.6rem;
	background-image: url(../images/common/icn_theme-menu_play.svg);
}
.p-course__box .title {
	margin-top: 1.8rem;
	font-size: 2.6rem;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	.p-course__box .title {
		font-size: 2rem;
		margin-top: 1.3rem;
	}
}
.p-course__box .text {
	margin-top: 1rem;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.p-course__box .text {
		font-size: 1.4rem;
		line-height: 2.1428571429;
		margin-top: 1.3rem;
	}
}
.p-course__box .c-textlink {
	margin-top: 0.8rem;
}
@media screen and (max-width: 767px) {
	.p-course__box .c-textlink {
		margin-top: 1rem;
	}
}
.p-course__box .time {
	margin-top: 1.9rem;
	font-size: 2.6rem;
	font-weight: bold;
	color: #951B34;
	-webkit-box-align: end;
	    -ms-flex-align: end;
	        align-items: flex-end;
}
.p-course__box .time.pc {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.p-course__box .time.sp {
	display: none;
}
@media screen and (max-width: 767px) {
	.p-course__box .time {
		font-size: 2rem;
		margin-top: 0;
	}
	.p-course__box .time.pc {
		display: none;
	}
	.p-course__box .time.sp {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}
.p-course__box .time-icon {
	width: 4.9rem;
	height: 4.9rem;
	background-image: url(../images/template-b/icn_time.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	margin-right: 1rem;
	position: relative;
	top: -0.8rem;
}
@media screen and (max-width: 767px) {
	.p-course__box .time-icon {
		width: 2.3rem;
		height: 2.3rem;
		top: 0;
	}
}
.p-course__box .time .num {
	font-size: 6.6rem;
	display: inline-block;
	margin: 0 0.5rem;
}
@media screen and (max-width: 767px) {
	.p-course__box .time .num {
		font-size: 2rem;
		margin: 0;
	}
}
.p-course__box:has(+ .-pickup) .l-content-inner {
	padding-bottom: 17.4rem;
}
@media screen and (max-width: 767px) {
	.p-course__box:has(+ .-pickup) .l-content-inner {
		padding-bottom: 15rem;
	}
}
.p-course__box.-pickup {
	background-color: #efd550;
	border-radius: 5.3rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup {
		border-radius: 2.2rem;
	}
}
.p-course__box.-pickup .l-content-inner {
	padding-top: 4.5rem;
	padding-bottom: 5rem;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .l-content-inner {
		padding-top: 3.2rem;
		padding-bottom: 3.3rem;
	}
}
.p-course__box.-pickup .pickup-title {
	font-size: 6.4rem;
	color: #efd550;
	position: absolute;
	top: 0;
	left: 9rem;
	line-height: 0.8;
	-webkit-transform: translateY(-100%);
	        transform: translateY(-100%);
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .pickup-title {
		width: 100%;
		text-align: center;
		left: 50%;
		-webkit-transform: translateX(-50%) translateY(-100%);
		        transform: translateX(-50%) translateY(-100%);
	}
}
.p-course__box.-pickup .pickup-title::before {
	content: "";
	display: block;
	width: 9.5rem;
	height: 3.8rem;
	background-image: url(../images/template-b/img_pickup_deco.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	position: absolute;
	left: 50%;
	top: -2rem;
	-webkit-transform: translateX(-50%) translateY(-100%);
	        transform: translateX(-50%) translateY(-100%);
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .pickup-title::before {
		top: -1.6rem;
	}
}
.p-course__box.-pickup .deco {
	width: 7.1rem;
	height: 7.1rem;
	background-image: url(../images/template-b/img_pickup_sl.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	position: absolute;
	top: 1.2rem;
	right: 63.8rem;
	-webkit-transform: translateY(-100%);
	        transform: translateY(-100%);
}
.p-course__box.-pickup .heading {
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.p-course__box.-pickup .heading .clock {
	background-color: #ffffff;
}
.p-course__box.-pickup .heading .heading-title {
	margin-left: 0;
	margin-right: auto;
}
.p-course__box.-pickup .heading .time {
	margin-top: 0;
	line-height: 1;
	padding-bottom: 2rem;
}
.p-course__box.-pickup .heading .time-icon {
	top: 0;
}
.p-course__box.-pickup .content {
	display: block;
	margin-top: 0;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .content {
		margin-top: 1.3rem;
	}
}
.p-course__box.-pickup .img {
	width: 100%;
}
.p-course__box.-pickup .cnt {
	margin-top: 2.8rem;
	padding-left: 0;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .cnt {
		margin-top: 1.6rem;
	}
}
.p-course__box.-pickup .cnt-heading {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	    -ms-flex-align: center;
	        align-items: center;
	gap: 1.3rem;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .cnt-heading {
		display: block;
	}
}
.p-course__box.-pickup .cnt-heading .title {
	margin-top: 0;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup .cnt-heading .title {
		margin-top: 1.3rem;
	}
}
.p-course__box.-pickup + .p-course__box .l-content-inner {
	padding-top: 12rem;
}
@media screen and (max-width: 767px) {
	.p-course__box.-pickup + .p-course__box .l-content-inner {
		padding-top: 5.4rem;
	}
}

.p-model {
	background-color: #FFFFF8;
	border-radius: 9rem 0 0 0;
	background-image: url(../images/template-b/bg_model01.png), url(../images/template-b/bg_model02.png);
	background-repeat: no-repeat;
	background-position: left -3rem top 9.8rem, right -2.9rem top 6.6rem;
	background-size: 22.3rem, 24rem;
	padding-bottom: 17.5rem;
	padding-top: 2.5rem;
}
@media screen and (max-width: 767px) {
	.p-model {
		border-top-left-radius: 2.6rem;
		background-image: url(../images/template-b/bg_model_sp.png);
		background-size: 100%;
		background-repeat: no-repeat;
		background-position: top 4.7rem center;
		padding-top: 6rem;
		padding-bottom: 11.2rem;
	}
}
.p-model .l-content-inner {
	background-image: url(../images/template-b/img_model_deco01.png), url(../images/template-b/img_model_deco02.png);
	background-repeat: no-repeat;
	background-position: left 5.5rem top 20rem, right 10.5rem top 20rem;
	background-size: 25.3rem, 19.6rem;
}
@media screen and (max-width: 767px) {
	.p-model .l-content-inner {
		background-repeat: no-repeat;
	}
}
.p-model__title {
	position: relative;
	padding-top: 4.9rem;
}
@media screen and (max-width: 767px) {
	.p-model__title {
		padding-top: 0;
	}
}
.p-model__title::before {
	content: "";
	display: block;
	position: absolute;
	left: calc(50% - 0.6rem);
	bottom: 5.6rem;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	width: 51.6rem;
	height: 100%;
	background-image: url(../images/top/img_model-title-deco.svg);
	background-repeat: no-repeat;
	background-position: bottom center;
	background-size: contain;
	max-width: 100%;
}
@media screen and (max-width: 767px) {
	.p-model__title::before {
		content: none;
	}
}
.p-model__title .title-en {
	position: absolute;
	left: 50%;
	top: 0;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	font-size: 9rem;
	line-height: 1.5111111111;
	color: #F8F8EA;
}
@media screen and (max-width: 767px) {
	.p-model__title .title-en {
		font-size: 5.8rem;
		line-height: 1;
		top: -2.4rem;
	}
}
.p-model__title .title01 {
	text-align: center;
	font-size: 2.1rem;
	font-weight: bold;
	color: #9D2C43;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-model__title .title01 {
		font-size: 1.4rem;
		line-height: 1.2142857143;
	}
}
.p-model__title .title02 {
	text-align: center;
	font-size: 6.8rem;
	color: #9D2C43;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-model__title .title02 {
		font-size: 4.1rem;
		line-height: 1;
		margin-top: 0.3rem;
	}
}
.p-model .text {
	margin-top: 2.3rem;
	text-align: center;
	font-size: 1.4rem;
	line-height: 1.4285714286;
	font-weight: bold;
}
@media screen and (max-width: 767px) {
	.p-model .text {
		font-size: 1.4rem;
		line-height: 2.1428571429;
		font-weight: 500;
		margin-top: 2.2rem;
	}
}
.p-model__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 8rem;
	margin-top: 7.3rem;
}
@media screen and (max-width: 767px) {
	.p-model__list {
		-ms-flex-wrap: wrap;
		    flex-wrap: wrap;
		gap: 8.1rem;
		margin-top: 2.6rem;
	}
}
.p-model__list .item {
	width: 37rem;
	position: relative;
}
@media screen and (max-width: 767px) {
	.p-model__list .item {
		width: 31.6rem;
	}
}
.p-model__list .item__inn {
	display: block;
}
@media (any-hover: hover) {
	.p-model__list .item__inn:hover {
		opacity: 1;
	}
	.p-model__list .item__inn:hover .img img {
		-webkit-transform: scale(1.1);
		        transform: scale(1.1);
	}
	.p-model__list .item__inn:hover .c-btn__inn::before {
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
	.p-model__list .item__inn:hover .c-btn__inn .c-btn__arrow,
	.p-model__list .item__inn:hover .c-btn__inn .c-btn__text {
		color: #ffffff;
	}
}
.p-model__list .item .img {
	width: 100%;
	height: 36rem;
	border-radius: 1.7rem;
	overflow: hidden;
	border: 1px solid #951B34;
}
@media screen and (max-width: 767px) {
	.p-model__list .item .img {
		height: 30.7rem;
	}
}
.p-model__list .item .img img {
	display: block;
	width: 100%;
	height: 100%;
	display: block;
	-o-object-fit: cover;
	   object-fit: cover;
	-webkit-transition: 0.3s -webkit-transform;
	transition: 0.3s -webkit-transform;
	transition: 0.3s transform;
	transition: 0.3s transform, 0.3s -webkit-transform;
}
.p-model__list .item .c-btn {
	position: absolute;
	left: 50%;
	bottom: 0;
	-webkit-transform: translateY(50%) translateX(-50%);
	        transform: translateY(50%) translateX(-50%);
}
.p-model__list .item .c-btn__inn {
	width: 27rem;
}
@media screen and (max-width: 767px) {
	.p-model__list .item .c-btn__inn {
		width: 19rem;
	}
}
/*# sourceMappingURL=template-b.css.map */