@charset "UTF-8";
body {
	font-family: Zen Kaku Gothic New, sans-serif
}
@media screen and (max-width: 768px) {
	.u-desktop {
		display: none
	}
}
.u-mobile {
	display: none
}
@media screen and (max-width: 768px) {
	.u-mobile {
		display: block
	}
}
main {
	overflow: hidden
}
html {
	font-size: 16px
}
@media (max-width: 1366px) {
	html {
		font-size: 1.1713030747vw
	}
}
@media screen and (max-width: 768px) {
	html {
		font-size: 16px
	}
}
@media (max-width: 375px) {
	html {
		font-size: 4.2666666667vw
	}
}
@media screen and (max-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none
	}
}
a {
	text-decoration: none;
	color: inherit
}
*, *:before, *:after {
	box-sizing: border-box
}
ul, ol {
	padding: 0
}
body, h1, h2, h3, h4, p, ul, ol, figure, blockquote, dl, dd {
	margin: 0
}
html {
	scroll-behavior: smooth
}
@media screen and (max-width: 768px) {
	html {
		scroll-padding-top: 50px
	}
}
body {
	min-height: 100vh;
	text-rendering: optimizeSpeed;
	line-height: 1
}
ul, ol {
	list-style: none
}
a:not([class]) {
	-webkit-text-decoration-skip: ink;
	text-decoration-skip-ink: auto
}
img {
	max-width: 100%;
	display: block;
	width: 100%;
	height: auto
}
article>*+* {
	margin-top: 1em
}
input, button, textarea, select {
	font: inherit
}
img:not([alt]) {
	filter: blur(10px)
}
input, button, select, textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: transparent;
	border: none;
	border-radius: 0;
	font: inherit;
	outline: none
}
textarea {
	resize: vertical
}
input[type=checkbox], input[type=radio] {
	display: none
}
input[type=submit], input[type=button], label, button, select {
	cursor: pointer
}
select::-ms-expand {
	display: none
}
picture {
	display: block
}
button {
	display: block;
	padding: 0;
	width: 100%
}
.c-box {
	height: 100%
}
.c-box__title {
	text-align: center;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5;
	padding-block: .5rem;
	background-color: #279e8b
}
.c-box__main {
	padding: 1.875rem
}
.c-box__main p {
	font-weight: 500
}
.c-box__main p+p {
	margin-top: .625rem
}
.c-box__row {
	display: grid;
	grid-template-columns: 4.375rem 1fr;
	gap: .625rem;
	align-items: flex-start;
	font-size: 1rem;
	line-height: 2
}
.c-box__row+.c-box__row {
	margin-top: .625rem
}
.c-box__row dt {
	color: #279e8b;
	font-weight: 700
}
.c-box__row dd {
	font-weight: 500
}
.c-box__row dd small {
	font-size: .75rem;
	margin-left: .5em
}
.c-btn {
	padding: .625rem 2.5rem;
	background-color: #000;
	color: #ff0
}
.c-hamburger {
	position: relative;
	width: 100%;
	height: 100%
}
.c-hamburger__bar {
	position: absolute;
	display: inline-block;
	width: 100%;
	height: .125rem;
	background-color: #000;
	left: 50%;
	transform: translate(-50%);
	transition: all .45s
}
.c-hamburger__bar:nth-child(1) {
	top: .8125rem
}
.c-hamburger__bar:nth-child(2) {
	top: 1.1875rem
}
.c-hamburger__bar:nth-child(3) {
	top: 1.5625rem
}
.c-hamburger__text {
	position: absolute;
	display: inline-block;
	width: 100%;
	text-align: center;
	font-size: .75rem;
	font-weight: 500;
	line-height: 1.5;
	top: 1.9375rem;
	transition: all .45s;
	opacity: 0
}
.c-hamburger__text.--open {
	opacity: 1
}
.c-hamburger.is-active .c-hamburger__bar:nth-child(1) {
	transform: translate(-50%) rotate(18deg);
	top: 1.1875rem
}
.c-hamburger.is-active .c-hamburger__bar:nth-child(2) {
	opacity: 0
}
.c-hamburger.is-active .c-hamburger__bar:nth-child(3) {
	top: 1.1875rem;
	transform: translate(-50%) rotate(-18deg)
}
.c-hamburger.is-active .c-hamburger__text.--open {
	opacity: 0
}
.c-hamburger.is-active .c-hamburger__text.--close {
	opacity: 1
}
.c-support {
	position: relative;
	text-align: center;
	color: #279e8b;
	background-color: #e7f8f3;
	padding-block: 1.25rem 2.875rem
}
@media screen and (max-width: 768px) {
	.c-support {
		padding: 1.875rem 0rem
	}
}
.c-support:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 2.5rem;
	top: 0;
	left: 0;
	background-color: #279e8b;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 2.5rem, calc(100% - 2.5rem) 0%, 2.5rem 0%, 0% 2.5rem);
	clip-path: polygon(0% 0%, 100% 0%, 100% 2.5rem, calc(100% - 2.5rem) 0%, 2.5rem 0%, 0% 2.5rem)
}
.c-support:after {
	position: absolute;
	content: "";
	width: 100%;
	height: 2.5rem;
	bottom: 0;
	transform: rotate(180deg);
	left: 0;
	background-color: #279e8b;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 2.5rem, calc(100% - 2.5rem) 0%, 2.5rem 0%, 0% 2.5rem);
	clip-path: polygon(0% 0%, 100% 0%, 100% 2.5rem, calc(100% - 2.5rem) 0%, 2.5rem 0%, 0% 2.5rem)
}
.c-support__text {
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 1.65
}
@media screen and (max-width: 768px) {
	.c-support__text {
		line-height: 1.5
	}
}
.c-support__text strong {
	font-size: 4.25rem
}
.c-support__text small {
	font-size: 100%
}
@media screen and (max-width: 768px) {
	.c-support__text small {
		display: block;
		font-size: .9375rem
	}
}
.c-support__plus {
	width: 1.875rem;
	height: 1.875rem;
	margin-inline: auto
}
.c-support__plus+.c-support__text {
	margin-top: -1.875rem
}
@media screen and (max-width: 768px) {
	.c-support__plus+.c-support__text {
		margin-top: .625rem
	}
}
.c-support__bigText {
	font-size: 3.125rem;
	font-weight: 700;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	line-height: 1.44;
	position: relative;
	z-index: 1
}
@media screen and (max-width: 768px) {
	.c-support__bigText {
		font-size: 1.75rem;
		margin-top: 1.25rem;
		font-weight: 800;
		line-height: 1.7857142857
	}
}
.c-support__bigText span {
	position: relative;
	display: inline-block
}
.c-support__bigText span:before {
	position: absolute;
	content: "";
	width: 100%;
	height: .625rem;
	background-color: #fce900;
	left: 0;
	bottom: .25rem;
	z-index: -1
}
.c-text {
	font-size: 1rem;
	line-height: 2;
	font-weight: 500
}
.c-title {
	position: relative;
	z-index: 1;
	text-align: center;
	font-size: 3.125rem;
	line-height: 1.4
}
@media screen and (max-width: 768px) {
	.c-title {
		font-size: 1.875rem;
		line-height: 1.4
	}
}
.c-title img {
	margin-inline: auto
}
.c-title span {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	font-size: .875rem;
	letter-spacing: .2em;
	text-transform: uppercase;
	margin-top: 1.25rem
}
@media screen and (max-width: 768px) {
	.c-title span {
		font-size: 1.125rem
	}
}
.c-title span:before, .c-title span:after {
	content: "・"
}
.l-inner {
	margin: 0 auto;
	max-width: calc(67.5rem + 50px);
	width: 100%;
	height: inherit;
	padding-right: 25px;
	padding-left: 25px
}
@media screen and (max-width: 768px) {
	.l-inner {
		max-width: 33.75rem;
		padding-right: 1.25rem;
		padding-left: 1.25rem
	}
}
.p-course {
	background-image: linear-gradient(#3C9082 1px, transparent 0), linear-gradient(90deg, #3C9082 1px, transparent 0);
	background-size: 1.875rem 1.875rem;
	background-color: #279e8b
}
.p-course__lead {
	text-align: center;
	font-weight: 700;
	margin-top: 3.8125rem
}
@media screen and (max-width: 768px) {
	.p-course__lead {
		text-align: left;
		margin-top: 1.5rem
	}
}
.p-course__blocks {
	margin-top: 4.375rem
}
@media screen and (max-width: 768px) {
	.p-course__blocks {
		margin-top: 1.875rem
	}
}
.p-course__block {
	position: relative
}
.p-course__block+.p-course__block {
	margin-top: 4.375rem
}
@media screen and (max-width: 768px) {
	.p-course__block+.p-course__block {
		margin-top: 1.875rem
	}
}
.p-course__block:before {
	position: absolute;
	content: "";
	top: 4.375rem;
	left: 0;
	width: 100%;
	height: calc(100% - 4.375rem);
	box-shadow: 0 0 1.25rem #0000004d
}
.p-course__block:after {
	position: absolute;
	content: "";
	background-color: #00ba84;
	-webkit-clip-path: polygon(100% 100%, 0% 100%, 100% 0);
	clip-path: polygon(100% 100%, 0% 100%, 100% 0);
	width: 4.375rem;
	height: 4.375rem;
	top: 0;
	left: 0
}
@media screen and (max-width: 768px) {
	.p-course__block:after {
		width: 1.875rem;
		height: 1.875rem
	}
}
.p-course__blockInner {
	position: relative;
	-webkit-clip-path: polygon(4.375rem 0, 100% 0, 100% 100%, 0 100%, 0 4.375rem);
	clip-path: polygon(4.375rem 0, 100% 0, 100% 100%, 0 100%, 0 4.375rem);
	padding: 4.375rem
}
@media screen and (max-width: 768px) {
	.p-course__blockInner {
		-webkit-clip-path: polygon(1.875rem 0, 100% 0, 100% 100%, 0 100%, 0 1.875rem);
		clip-path: polygon(1.875rem 0, 100% 0, 100% 100%, 0 100%, 0 1.875rem);
		padding: 1.875rem 1.25rem
	}
}
.p-course__subTitle {
	position: relative;
	color: #279e8b;
	text-align: center;
	font-size: 3.125rem;
	font-weight: 900;
	line-height: 1.5;
	padding-bottom: 1.25rem;
	border-bottom: 2px solid #279E8B
}
@media screen and (max-width: 768px) {
	.p-course__subTitle {
		font-size: 2.5rem
	}
}
.p-course__subTitle:before {
	position: absolute;
	content: "";
	background-color: #279e8b;
	left: 50%;
	transform: translate(-50%);
	width: 3.75rem;
	height: .375rem;
	bottom: -.25rem
}
.p-course__head {
	font-size: 1.375rem;
	text-align: center;
	font-weight: 700;
	line-height: 1.8181818182;
	margin-top: 1.25rem
}
@media screen and (max-width: 768px) {
	.p-course__head {
		text-align: left;
		font-size: 1.125rem;
		line-height: 1.7777777778
	}
}
.p-course__units {
	margin-top: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-course__units {
		margin-top: 1.875rem
	}
}
.p-course__unit {
	position: relative;
	padding: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-course__unit {
		padding: 1.25rem
	}
}
.p-course__unit:before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	width: 3.125rem;
	height: 3.125rem;
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 0);
	clip-path: polygon(0 0, 0% 100%, 100% 0)
}
.p-course__unit.--green {
	background: #43cea533
}
.p-course__unit.--green:before {
	background-color: #279e8b
}
.p-course__unit.--green2 {
	background: #4b764233
}
.p-course__unit.--green2:before {
	background-color: #4b7642
}
.p-course__unit.--green2 .p-course__unitTitle {
	color: #4b7642
}
.p-course__unit.--blue {
	background: #e2eef3
}
.p-course__unit.--blue:before {
	background-color: #72adc5
}
.p-course__unit.--blue .p-course__unitTitle {
	color: #72adc5
}
.p-course__unit+.p-course__unit {
	margin-top: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-course__unit+.p-course__unit {
		margin-top: 1.25rem
	}
}
.p-course__wrap {
	align-items: flex-start;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.875rem
}
@media screen and (max-width: 768px) {
	.p-course__wrap {
		grid-template-columns: 100%;
		gap: 1.25rem
	}
}
.p-course__box {
	margin-bottom: 1.875rem
}
@media screen and (max-width: 768px) {
	.p-course__box {
		margin-bottom: 1.25rem
	}
}
.p-course__text {
	font-weight: 500
}
.p-course__boxs {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 3.125rem;
	margin-top: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-course__boxs {
		grid-template-columns: 100%;
		gap: 1.25rem
	}
}
.p-course__boxs .p-course__box {
	margin-bottom: 0
}
.p-course__unitTitle {
	font-size: 2.625rem;
	font-weight: 900;
	line-height: 1.4285714286;
	margin-bottom: 1.25rem
}
@media screen and (max-width: 768px) {
	.p-course__unitTitle {
		font-size: 2.125rem
	}
}
.p-course__unitTitle span {
	color: #707070;
	display: block;
	font-size: 1rem;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: .2em;
	margin-top: .3125rem
}
.p-course__bigText {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.8181818182;
	margin-bottom: 1.875rem
}
@media screen and (max-width: 768px) {
	.p-course__bigText {
		margin-bottom: 1.25rem
	}
}
.p-cta {
	width: 100vw;
	margin-left: calc(50% - 50vw);
	padding-block: 3.75rem;
	background: linear-gradient(to right, #85efd0, #43cea5)
}
@media screen and (max-width: 768px) {
	.p-cta {
		padding-block: 1.875rem
	}
}
.p-cta__inner {
	max-width: 58.75rem;
	margin-inline: auto
}
.p-cta__bnr {
	position: relative
}
.p-cta__bnr a {
	display: block;
	box-shadow: 0 0 1.25rem #0000004d;
	transition: all .45s
}
@media screen and (max-width: 768px) {
	.p-cta__bnr a {
		box-shadow: 0 0 .625rem #0000004d
	}
}
.p-cta__text {
	position: absolute;
	bottom: 0;
	right: 0;
	background-color: #eb001e;
	font-size: 1rem;
	font-weight: 700;
	display: flex;
	align-items: center;
	gap: .375rem;
	padding: .3125rem .75rem .4375rem
}
@media screen and (max-width: 768px) {
	.p-cta__text {
		display: none
	}
}
.p-cta__text span {
	position: relative;
	display: block;
	width: 1.125rem;
	height: 1.125rem;
	background-color: #fff;
	border-radius: 50%
}
.p-cta__text span:before {
	position: absolute;
	top: 50%;
	left: calc(50% + .0625rem);
	transform: translate(-50%, -50%);
	content: "";
	background-color: #f54f35;
	width: .4375rem;
	height: .5625rem;
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
	clip-path: polygon(0 0, 0% 100%, 100% 50%)
}
@media (hover: hover) {
	.p-cta__bnr a:hover {
		transform: scale(1.05)
	}
}
.p-drawer {
	position: fixed;
	width: 100%;
	top: 3.75rem;
	left: 0;
	background: #00471ff2;
	padding-block: 1.875rem 2.5rem;
	transform: translateY(-105%);
	opacity: 0;
	visibility: hidden;
	transition: all .45s
}
.p-drawer__nav {
	max-width: 20.9375rem
}
.p-drawer__link {
	height: 3.75rem
}
.p-drawer__link a {
	position: relative;
	display: flex;
	align-items: center;
	height: 100%;
	width: 100%;
	font-size: 1.25rem;
	font-weight: 700;
	padding-inline: 1.25rem
}
.p-drawer__link a:before {
	position: absolute;
	content: "";
	width: .625rem;
	height: .625rem;
	top: 50%;
	transform: translateY(-50%);
	right: 1.25rem;
	background: url(../img/drawer-arrow.svg) center center/contain no-repeat
}
.p-drawer.is-active {
	transform: translateY(0);
	visibility: visible;
	opacity: 1
}
.p-env {
	background-color: #f0f0f0
}
.p-env__blocks {
	margin-top: 4.6875rem
}
@media screen and (max-width: 768px) {
	.p-env__blocks {
		margin-top: 1.875rem
	}
}
.p-env__block+.p-env__block {
	margin-top: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-env__block+.p-env__block {
		margin-top: 3.125rem
	}
}
.p-env__subTitle {
	position: relative;
	text-align: center;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.5;
	z-index: 1;
	margin-bottom: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-env__subTitle {
		font-size: 1.375rem;
		line-height: 1.5;
		margin-bottom: 1.875rem
	}
}
.p-env__subTitle:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 1.25rem;
	background-color: #cafe70;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: -1
}
@media screen and (max-width: 768px) {
	.p-env__subTitle:before {
		height: .625rem
	}
}
.p-env__box {
	background-color: #fff;
	padding: 4.375rem;
	box-shadow: .5rem .5rem .5rem #0000001a
}
@media screen and (max-width: 768px) {
	.p-env__box {
		padding: 1.875rem 1.25rem
	}
}
.p-env__box.--wrap {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.5rem
}
@media screen and (max-width: 768px) {
	.p-env__box.--wrap {
		grid-template-columns: 100%;
		gap: 0
	}
}
.p-env__text {
	font-weight: 500;
	margin-top: 1.875rem
}
.p-env__teachers {
	display: flex;
	justify-content: center;
	gap: 4.375rem;
	margin-top: 3.125rem;
	margin-bottom: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-env__teachers {
		flex-direction: column;
		align-items: center;
		gap: 1.875rem;
		margin-bottom: 1.875rem
	}
}
.p-env__teacher {
	width: 12.5rem
}
.p-env__name {
	text-align: center;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: .625rem
}
.p-env__name span {
	display: block;
	font-size: 1rem;
	font-weight: 500;
	margin-bottom: .1875rem
}
.p-env__list {
	display: flex;
	align-items: center;
	height: 2.5rem;
	font-size: 1rem;
	font-weight: 500;
	padding-inline: .625rem;
	gap: .625rem
}
@media screen and (max-width: 768px) {
	.p-env__list {
		display: grid;
		grid-template-columns: 1fr 5.625rem;
		gap: .625rem;
		height: 3.4375rem;
		padding: .625rem
	}
}
.p-env__list span {
	font-size: .75rem;
	font-weight: 500;
	line-height: 1.25
}
@media screen and (max-width: 768px) {
	.p-env__list span {
		line-height: 1.5
	}
}
.p-env__list:nth-child(odd) {
	background-color: #f0f0f0
}
.p-env__movie {
	display: grid;
	gap: 2.5rem;
	grid-template-columns: repeat(2, 1fr);
	align-items: flex-start;
	margin-top: 4.375rem
}
@media screen and (max-width: 768px) {
	.p-env__movie {
		grid-template-columns: 100%;
		gap: 1.875rem;
		margin-top: rem830
	}
}
.p-env__iframe iframe {
	aspect-ratio: 520/290;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}
.p-env__iframe2 {
	position: relative
}
.p-env__iframe2:not(.is-play) a:after {
	position: absolute;
	content: "";
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 5rem;
	height: 5rem;
	background: url(../img/play-btn.png) center center/contain no-repeat;
	pointer-events: none;
	z-index: 2
}
.p-env__iframe2 img {
	position: relative;
	aspect-ratio: 520/290;
	width: 100%;
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
	background-color: #000
}
.p-env__iframe2 a {
	position: relative;
	display: block
}
.p-env__iframe2 a:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background-color: #000;
	opacity: .3;
	pointer-events: none;
	z-index: 1
}
.p-env__iframe2 iframe {
	aspect-ratio: 396/704;
	width: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	height: 0
}
.p-env__head {
	text-align: center;
	margin-bottom: 1.25rem
}
.p-env__head img {
	width: 16.6875rem;
	margin-inline: auto
}
.p-env__head span {
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
	padding: .5rem 1.125rem;
	margin-top: 1.5rem
}
.p-faq__blocks {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.5rem
}
@media screen and (max-width: 768px) {
	.p-faq__blocks {
		grid-template-columns: 100%;
		gap: 1.875rem
	}
}
.p-faq__block {
	position: relative;
	min-height: 32.5rem;
	padding: 3.125rem;
	background-color: #fff;
	box-shadow: .5rem .5rem .5rem #0000001a
}
@media screen and (max-width: 768px) {
	.p-faq__block {
		min-height: auto;
		padding: 1.875rem 1.25rem
	}
}
.p-faq__q {
	display: grid;
	grid-template-columns: 4.125rem 1fr;
	align-items: center;
	gap: 1.25rem;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5
}
@media screen and (max-width: 768px) {
	.p-faq__q {
		grid-template-columns: 3.375rem 1fr;
		font-size: 1.125rem;
		line-height: 1.5
	}
}
.p-faq__q span, .p-faq__a span {
	height: 4.125rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	font-weight: 600
}
@media screen and (max-width: 768px) {
	.p-faq__q span, .p-faq__a span {
		height: 3.375rem
	}
}
.p-faq__a {
	display: grid;
	grid-template-columns: 4.125rem 1fr;
	gap: 1.25rem;
	align-items: flex-start;
	padding-top: 1.25rem;
	margin-top: 1.25rem;
	border-top: 1px solid #E6E6E6
}
@media screen and (max-width: 768px) {
	.p-faq__a {
		grid-template-columns: 3.375rem 1fr
	}
}
.p-faq__note {
	font-size: .75rem;
	font-weight: 400;
	line-height: 1.5;
	margin-top: .9375rem
}
@media screen and (max-width: 768px) {
	.p-faq__note {
		margin-top: .625rem
	}
}
.p-faq__img {
	position: absolute;
	right: 3.125rem;
	bottom: 3.125rem;
	width: calc(100% - 11.625rem)
}
@media screen and (max-width: 768px) {
	.p-faq__img {
		position: static;
		width: calc(100% + 4.625rem);
		margin-left: -4.625rem;
		margin-top: 1.25rem
	}
}
.p-float {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	z-index: 99;
	transition: all .45s
}
.p-float a {
	display: block;
	transition: all .45s
}
.p-float a:hover {
	opacity: .8
}
.p-footer {
	background: #000;
	padding-block: 3.1rem
}
@media screen and (max-width: 768px) {
	.p-footer {
		padding-block: 1.875rem 5.9375rem
	}
}
.p-footer__inner {
	display: flex;
	align-items: center;
	justify-content: center
}
@media screen and (max-width: 768px) {
	.p-footer__inner {
		display: block
	}
}
.p-footer__logo {
	padding-right: 1.875rem
}
@media screen and (max-width: 768px) {
	.p-footer__logo {
		padding-right: 0
	}
}
.p-footer__logo img {
	max-width: 17.5rem
}
@media screen and (max-width: 768px) {
	.p-footer__logo img {
		max-width: 16.25rem;
		margin-inline: auto
	}
}
.p-footer__info {
	padding-left: 1.875rem;
	border-left: 1px solid #fff
}
@media screen and (max-width: 768px) {
	.p-footer__info {
		padding-left: 0;
		border: none;
		margin-top: .625rem
	}
}
.p-footer__text {
	font-size: .8125rem;
	line-height: 1.5384615385
}
@media screen and (max-width: 768px) {
	.p-footer__text {
		text-align: center
	}
}
.p-footer__text+.p-footer__text {
	margin-top: .375rem
}
@media screen and (max-width: 768px) {
	.p-footer__text+.p-footer__text {
		margin-top: .125rem
	}
}
.p-globalNav__links {
	display: flex
}
.p-globalNav__link a {
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	transition: all .45s;
	line-height: 1.5;
	padding-inline: 1.25rem
}
@media (hover: hover) {
	.p-globalNav__link a:hover {
		opacity: .6
	}
}
.p-globalNav__link+.p-globalNav__link {
	border-left: 1px solid #fff
}
.p-greeting {
	position: relative;
	background: url(../img/greeting_pc.jpg) center top/100% no-repeat
}
@media screen and (max-width: 768px) {
	.p-greeting {
		background: url(../img/greeting_sp.jpg) center top/100% no-repeat;
		padding-top: 12.5rem
	}
}
.p-greeting:before {
	position: absolute;
	content: "";
	width: 50%;
	height: 100%;
	background: #fff;
	opacity: .9;
	right: 0;
	top: 0
}
@media screen and (max-width: 768px) {
	.p-greeting:before {
		display: none
	}
}
.p-greeting__inner {
	position: relative
}
.p-greeting__prof {
	position: absolute;
	left: -3.75rem;
	bottom: 5rem
}
@media screen and (max-width: 768px) {
	.p-greeting__prof {
		position: static
	}
}
.p-greeting__lead {
	font-size: 1.875rem;
	font-weight: 700;
	font-family: Zen Old Mincho, serif;
	letter-spacing: .1em;
	line-height: 1.4666666667;
	padding: .125rem .625rem;
	background-color: #222
}
@media screen and (max-width: 768px) {
	.p-greeting__lead {
		font-size: 1.8125rem;
		letter-spacing: .08em
	}
}
.p-greeting__name {
	font-family: Zen Old Mincho, serif;
	font-size: 4.125rem;
	font-weight: 700;
	line-height: 1.2424242424;
	padding: .125rem .625rem;
	background-color: #fff;
	width: -moz-fit-content;
	width: fit-content
}
@media screen and (max-width: 768px) {
	.p-greeting__name {
		font-size: 4.0625rem
	}
}
.p-greeting__name small {
	font-size: 2.9375rem
}
@media screen and (max-width: 768px) {
	.p-greeting__name small {
		font-size: rem846
	}
}
.p-greeting__en {
	font-size: 1.125rem;
	font-weight: 500;
	line-height: 1.4444444444;
	margin-left: 1.25rem;
	letter-spacing: .8em;
	margin-top: .5rem
}
@media screen and (max-width: 768px) {
	.p-greeting__en {
		font-size: 1.0625rem
	}
}
.p-greeting__content {
	position: relative;
	width: 50%;
	padding-block: 5rem;
	padding-left: 5rem;
	margin-left: auto;
	z-index: 1
}
@media screen and (max-width: 768px) {
	.p-greeting__content {
		width: 100%;
		padding-inline: 0;
		margin-top: 1.25rem;
		padding-block: 1.875rem 3.125rem
	}
}
@media screen and (max-width: 768px) {
	.p-greeting__content:before {
		position: absolute;
		content: "";
		min-width: 100%;
		left: calc(50% - 50cqi);
		right: calc(50% - 50cqi);
		top: 0;
		height: 100%;
		background-color: #fff;
		z-index: -1
	}
}
.p-greeting__title {
	font-size: 2.125rem;
	font-weight: 900;
	line-height: 1.5294117647
}
@media screen and (max-width: 768px) {
	.p-greeting__title {
		font-size: 1.375rem;
		font-weight: 700;
		line-height: 1.5
	}
}
.p-greeting__text {
	font-size: .9375rem;
	font-weight: 500;
	line-height: 2;
	margin-top: 1.875rem
}
@media screen and (max-width: 768px) {
	.p-greeting__text {
		margin-top: 1.25rem
	}
}
.p-header {
	position: fixed;
	width: calc(100% - 2.5rem);
	height: 3.75rem;
	top: 1.25rem;
	left: 1.25rem;
	right: 1.25rem;
	z-index: 100;
	transition: all .45s
}
@media screen and (max-width: 768px) {
	.p-header {
		width: 100%;
		height: 3.75rem;
		top: 0;
		left: 0;
		right: 0;
		background-color: #fff
	}
}
@media screen and (min-width: 769px) {
	.p-header.is-scroll {
		background: #ffffffa6
	}
	.p-header.is-scroll .p-header__logo {
		filter: brightness(0)
	}
	.p-header.is-scroll .p-globalNav__link {
		border-color: #222
	}
	.p-header.is-scroll .p-globalNav__link a {
		color: #222
	}
}
.p-header__inner.l-inner {
	display: flex;
	align-items: center;
	max-width: unset;
	height: 100%
}
.p-header__logo {
	width: 12.5rem
}
@media screen and (max-width: 768px) {
	.p-header__logo {
		filter: brightness(0)
	}
}
.p-header__nav {
	margin-left: auto
}
@media screen and (max-width: 768px) {
	.p-header__hamburger {
		margin-left: auto;
		height: 100%;
		width: 2.5rem
	}
}
.p-internship {
	margin-top: 4.375rem
}
.p-internship__title {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	padding-block: .5625rem;
	background-color: #279e8b
}
.p-internship__blocks {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 1.875rem;
	padding: 1.875rem 8.75rem;
	background-color: #fff
}
@media screen and (max-width: 768px) {
	.p-internship__blocks {
		padding: 1.875rem 1.25rem;
		grid-template-columns: 100%;
		gap: 1.25rem
	}
}
.p-internship__subTitle {
	color: #279e8b;
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5
}
.p-internship__text {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1.5;
	margin-top: .3125rem
}
@media screen and (max-width: 768px) {
	.p-internship__text {
		line-height: 2
	}
}
.p-intro {
	margin: 1.25rem;
	padding-block: 5.1875rem 1.5rem;
	background: url(../img/bg_intro.jpg) center center/cover no-repeat
}
@media screen and (max-width: 768px) {
	.p-intro {
		background-image: url(../img/bg_intro_sp.jpg);
		margin: 0;
		padding-block: 3.125rem 3.75rem
	}
}
.p-intro__inner {
	display: grid;
	grid-template-columns: 1fr 43.125rem;
	align-items: center
}
@media screen and (max-width: 768px) {
	.p-intro__inner {
		grid-template-columns: 100%;
		gap: 3.125rem
	}
}
@media screen and (max-width: 768px) {
	.p-intro__head {
		margin-left: 1.25rem
	}
}
.p-intro__en {
	font-size: 1rem;
	font-weight: 700;
	line-height: 2;
	letter-spacing: .2em;
	text-transform: uppercase
}
@media screen and (max-width: 768px) {
	.p-intro__en {
		font-size: .875rem
	}
}
.p-intro__ja {
	font-size: 3.75rem;
	font-weight: 900;
	line-height: 1.25;
	letter-spacing: .08em
}
@media screen and (max-width: 768px) {
	.p-intro__ja {
		font-size: 3.125rem;
		letter-spacing: .04em
	}
}
.p-intro__lead {
	font-size: 3.125rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .08em;
	margin-top: 2.5rem
}
@media screen and (max-width: 768px) {
	.p-intro__lead {
		font-size: 2.5rem;
		line-height: 1.5;
		margin-top: 1.875rem
	}
}
.p-intro__body {
	position: relative;
	background-color: #fff;
	padding: 4.375rem
}
@media screen and (max-width: 768px) {
	.p-intro__body {
		padding: 1.875rem 1.25rem
	}
}
.p-intro__body:before, .p-intro__body:after {
	position: absolute;
	content: "";
	background-color: #43cea5;
	opacity: .6;
	width: 3.75rem;
	height: 3.75rem;
	-webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
	clip-path: polygon(0 0, 0% 100%, 100% 100%)
}
.p-intro__body:before {
	transform: rotate(90deg);
	top: -.625rem;
	left: -.625rem
}
.p-intro__body:after {
	transform: rotate(-90deg);
	bottom: -.625rem;
	right: -.625rem
}
.p-intro__list+.p-intro__list {
	margin-top: 2.125rem
}
@media screen and (max-width: 768px) {
	.p-intro__list+.p-intro__list {
		margin-top: 2.5rem
	}
}
.p-intro__bigText {
	display: flex;
	align-items: center;
	font-size: 1.625rem;
	font-weight: 700;
	line-height: 1.4615384615;
	gap: .625rem
}
@media screen and (max-width: 768px) {
	.p-intro__bigText {
		font-size: 1.25rem;
		letter-spacing: normal
	}
}
.p-intro__bigText:before {
	display: block;
	content: "";
	width: 1.125rem;
	height: 1.8125rem;
	background: url(../img/tree.png) center center/contain no-repeat
}
.p-intro__text {
	font-weight: 500;
	margin-top: 1.25rem
}
.p-kyozai__slider.js-slider .slick-list {
	padding-block: 1.25rem
}
@media screen and (max-width: 768px) {
	.p-kyozai__slider.js-slider .slick-list {
		padding-block: .625rem
	}
}
.p-kyozai__slider.js-slider .slide-arrow {
	position: absolute;
	z-index: 1;
	cursor: pointer;
	top: 50%;
	width: 2.5rem;
	height: 2.5rem;
	transform: translateY(-50%);
	-webkit-mask: none;
	mask: none;
	background: url(../img/slide-arrow.jpg) center center/contain no-repeat
}
@media screen and (max-width: 768px) {
	.p-kyozai__slider.js-slider .slide-arrow {
		width: 1.875rem;
		height: 1.875rem
	}
}
.p-kyozai__slider.js-slider .prev-arrow {
	left: 0
}
.p-kyozai__slider.js-slider .next-arrow {
	right: 0;
	transform: translateY(-50%) rotate(180deg)
}
.p-kyozai__sliderItem {
	display: grid!important;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.5rem;
	padding: 3.125rem;
	background-color: #fff;
	box-shadow: 0 0 .5rem #0000001a;
	margin-inline: 1.25rem
}
@media screen and (max-width: 768px) {
	.p-kyozai__sliderItem {
		display: block!important;
		padding: 1.5625rem;
		margin-inline: .625rem
	}
}
.slick-track {
	display: flex
}
.slick-slide {
	height: auto!important
}
@media screen and (max-width: 768px) {
	.p-kyozai__content {
		margin-top: 1.25rem
	}
}
.p-kyozai__title {
	color: #279e8b;
	font-size: 1.5625rem;
	font-weight: 700;
	line-height: 1.2;
	padding-left: .9375rem;
	border-left: .3125rem solid #279E8B
}
@media screen and (max-width: 768px) {
	.p-kyozai__title {
		font-size: 1rem
	}
}
.p-kyozai__text {
	font-weight: 500;
	margin-top: 1.5625rem
}
@media screen and (max-width: 768px) {
	.p-kyozai__text {
		margin-top: 1.25rem
	}
}
.p-license__title {
	background-color: #43cea5;
	text-align: center;
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 2.75rem;
	padding-block: .5rem
}
.p-license__title strong {
	font-size: 1.625rem
}
@media screen and (max-width: 768px) {
	.p-license__title strong {
		font-size: 1.875rem
	}
}
.p-license__lists {
	display: flex;
	align-items: flex-start;
	gap: 2.5rem;
	padding: 3.125rem;
	background-color: #e7f8f3
}
@media screen and (max-width: 768px) {
	.p-license__lists {
		flex-direction: column;
		gap: 1.875rem;
		padding: 1.875rem 1.25rem
	}
}
.p-license__lists p {
	font-size: .9375rem;
	font-weight: 700;
	line-height: 2
}
@media screen and (max-width: 768px) {
	.p-license__lists p {
		font-size: .875rem
	}
}
.p-movie {
	position: relative;
	background: linear-gradient(to bottom, #fff 20%, #b0f0bf);
	padding-block: 5.8125rem 3.625rem
}
@media screen and (max-width: 768px) {
	.p-movie {
		padding-block: 2.8125rem 3.125rem
	}
}
.p-movie:before {
	position: absolute;
	content: "";
	width: 100%;
	max-width: 74.0625rem;
	height: 100%;
	pointer-events: none;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	background: url(../img/bg_movie.png) center center/cover no-repeat
}
@media screen and (max-width: 768px) {
	.p-movie:before {
		background-image: url(../img/bg_movie_sp.png)
	}
}
.p-movie__inner {
	position: relative;
	z-index: 1
}
.p-movie__title {
	color: #279e8b;
	font-size: 2.125rem;
	font-weight: 900;
	line-height: 1.5294117647;
	text-align: center
}
@media screen and (max-width: 768px) {
	.p-movie__title {
		font-size: 1.625rem
	}
}
.p-movie__title span {
	position: relative;
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	margin-inline: auto;
	font-size: 1.375rem;
	margin-bottom: .4375rem
}
.p-movie__title span:before {
	position: absolute;
	background-color: #279e8b;
	content: "";
	width: .125rem;
	height: 1.75rem;
	left: -1.25rem;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg)
}
.p-movie__title span:after {
	position: absolute;
	background-color: #279e8b;
	content: "";
	width: .125rem;
	height: 1.75rem;
	right: -1.25rem;
	top: 50%;
	transform: translateY(-50%) rotate(45deg)
}
.p-movie__lead {
	font-size: 1rem;
	font-weight: 700;
	background-color: #fce900;
	width: -moz-fit-content;
	width: fit-content;
	padding: .625rem 1.25rem;
	line-height: 2;
	margin-inline: auto;
	margin-top: 1.25rem
}
.p-movie__iframe {
	max-width: 46.25rem;
	margin-inline: auto;
	border: .625rem solid #fff;
	margin-top: 2.5rem
}
@media screen and (max-width: 768px) {
	.p-movie__iframe {
		margin-top: 1.875rem;
		border-width: .3125rem
	}
}
.p-movie__iframe iframe {
	aspect-ratio: 720/405;
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}
.p-mv {
	position: relative
}
@media screen and (max-width: 768px) {
	.p-mv {
		height: 100lvh;
		overflow: hidden
	}
}
.p-mv__inner, .p-mv__img {
	height: inherit
}
.p-mv__img img {
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	-o-object-position: center;
	object-position: top center;
}
.p-mv__text {
	position: absolute;
	width: 100%;
	max-width: 17.125rem;
	max-height: 37.3vh;
	height: 100%;
	left: 50%;
	transform: translate(-50%, -100%);
	top: calc(50% - 1.25rem)
}
.p-mv__text img {
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain
}
.p-strong.l-section {
	position: relative;
	padding-bottom: 0
}
.p-strong__title img {
	width: 15.1875rem;
	margin-inline: auto
}
@media screen and (max-width: 768px) {
	.p-strong__title img {
		width: 9.625rem
	}
}
.p-strong__points {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 2.375rem;
	margin-top: 7.9375rem;
	margin-bottom: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__points {
		grid-template-columns: 100%;
		gap: 4.625rem;
		margin-top: 5.25rem;
		margin-bottom: 3.125rem
	}
}
.p-strong__point {
	position: relative;
	text-align: center;
	height: 17.5rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-size: 1.75rem;
	font-weight: 700;
	line-height: 3.75rem;
	outline: 2px solid #fff;
	outline-offset: -.625rem
}
.p-strong__point strong {
	font-weight: 600;
	font-size: 2.625rem
}
.p-strong__point:nth-child(1) {
	background-color: #43cea5
}
.p-strong__point:nth-child(2) {
	background-color: #00ba84
}
.p-strong__point:nth-child(3) {
	background-color: #279e8b
}
.p-strong__pointHead {
	position: absolute;
	left: 50%;
	transform: translate(-50%);
	width: 6.125rem;
	height: 5.875rem;
	top: -3.375rem
}
.p-strong__pointHead.--small {
	width: 4.625rem;
	top: -2.5rem
}
@media screen and (max-width: 768px) {
	.p-strong__pointHead.--small {
		width: 4.625rem;
		top: -2.5rem
	}
}
.p-strong__blocks {
	padding-top: 10rem
}
@media screen and (max-width: 768px) {
	.p-strong__blocks {
		padding-top: 5.625rem
	}
}
.p-strong__block+.p-strong__block {
	margin-top: 8.75rem
}
@media screen and (max-width: 768px) {
	.p-strong__block+.p-strong__block {
		margin-top: 5rem
	}
}
.p-strong__subTitle {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 6.875rem;
	font-size: 2.125rem;
	outline: 2px solid #fff;
	outline-offset: -.625rem
}
@media screen and (max-width: 768px) {
	.p-strong__subTitle {
		text-align: center;
		font-size: 1.375rem;
		height: 7.5rem;
		line-height: 1.5
	}
}
.p-strong__block.--1 .p-strong__subTitle {
	background-color: #43cea5
}
.p-strong__block.--2 {
	position: relative;
	padding-top: 8.75rem;
	padding-bottom: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__block.--2 {
		padding-top: 5.625rem;
		padding-bottom: 3.125rem
	}
}
.p-strong__block.--2 .p-strong__subTitle {
	background-color: #00ba84
}
.p-strong__block.--2:before {
	position: absolute;
	content: "";
	top: 0;
	left: 0;
	left: calc(50% - 50cqi);
	right: calc(50% - 50cqi);
	min-width: 100%;
	height: 100%;
	z-index: -1;
	background-color: #e7f8f3
}
.p-strong__block.--3 .p-strong__subTitle {
	background-color: #279e8b
}
.p-strong__support {
	margin-top: 3.125rem
}
.p-strong__wrap {
	display: flex;
	gap: 2.5rem;
	margin-top: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-strong__wrap {
		display: block;
		margin-top: 1.875rem
	}
}
.p-strong__content {
	width: calc(50% - 1.25rem)
}
@media screen and (max-width: 768px) {
	.p-strong__content {
		width: 100%
	}
}
.p-strong__lead {
	font-size: 1.5625rem;
	font-weight: 700;
	line-height: 1.52
}
.p-strong__block.--2 .p-strong__lead {
	color: #00ba84
}
.p-strong__text {
	font-weight: 500;
	margin-top: 1.25rem
}
.p-strong__bottom-text {
	max-width: 50rem;
	margin-inline: auto;
	margin-top: 3.125rem
}
@media screen and (max-width: 768px) {
	.p-strong__bottom-text {
		margin-top: 1.875rem
	}
}
.p-strong__slider {
	position: relative;
	width: calc(50% - 1.25rem)
}
@media screen and (max-width: 768px) {
	.p-strong__slider {
		width: 100%;
		margin-top: 1.875rem
	}
}
.p-strong__slider.--image:after {
	position: absolute;
	content: "就職後のイメージ";
	width: 100%;
	text-align: center;
	font-weight: 500;
	line-height: 2;
	font-size: 1rem
}
.p-strong__slider.--image .slide-arrow {
	background-color: #707070
}
.p-strong__figure {
	margin-top: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__figure {
		margin-top: 1.875rem
	}
}
.p-strong__license {
	margin-top: 6.25rem;
	margin-bottom: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__license {
		margin-block: 3.125rem
	}
}
.p-strong__borderTitle {
	position: relative;
	text-align: center;
	font-size: 2.5rem;
	font-weight: 700;
	line-height: 1.5;
	z-index: 1;
	color: #279e8b
}
@media screen and (max-width: 768px) {
	.p-strong__borderTitle {
		font-size: 1.375rem;
		line-height: 1.5
	}
}
.p-strong__borderTitle:before {
	position: absolute;
	content: "";
	width: 100%;
	height: 1.25rem;
	background-color: #e7f8f3;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: -1
}
@media screen and (max-width: 768px) {
	.p-strong__borderTitle:before {
		height: .625rem
	}
}
.p-strong__borderTitle+.p-strong__blocks {
	padding-top: 5rem
}
@media screen and (max-width: 768px) {
	.p-strong__borderTitle+.p-strong__blocks {
		padding-top: 5.625rem
	}
}
.p-strong__virtual {
	background-color: #279e8b;
	padding-block: 6.25rem;
	margin-left: calc(50% - 50cqi);
	margin-right: calc(50% - 50cqi);
	margin-top: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__virtual {
		margin-top: 2.5rem;
		padding-block: 2.5rem 1.875rem
	}
}
.p-strong__virtualTitle {
	position: relative;
	text-align: center;
	font-size: 1.375rem;
	font-weight: 700;
	z-index: 1
}
@media screen and (max-width: 768px) {
	.p-strong__virtualTitle {
		font-size: 1.375rem;
		line-height: 1.5
	}
}
.p-strong__virtualTitle:before {
	position: absolute;
	content: "VIRTUAL TOUR";
	text-align: center;
	width: 100%;
	font-size: 7.5rem;
	font-family: Jost, sans-serif;
	font-style: italic;
	font-weight: 300;
	left: 0;
	top: 50%;
	color: #258b7b;
	transform: translateY(-50%);
	z-index: -1
}
@media screen and (max-width: 768px) {
	.p-strong__virtualTitle:before {
		width: 12.75rem;
		right: 0;
		margin: auto;
		font-size: 3.75rem;
		line-height: 1
	}
}
.p-strong__virtualTitle span {
	display: inline-block;
	position: relative
}
.p-strong__virtualTitle span:before {
	position: absolute;
	background-color: #fff;
	content: "";
	width: .125rem;
	height: 1.75rem;
	left: -2.1875rem;
	top: 50%;
	transform: translateY(-50%) rotate(-45deg)
}
@media screen and (max-width: 768px) {
	.p-strong__virtualTitle span:before {
		height: 3.4375rem;
		left: -1.875rem;
		transform: translateY(-50%) rotate(-20deg)
	}
}
.p-strong__virtualTitle span:after {
	position: absolute;
	background-color: #fff;
	content: "";
	width: .125rem;
	height: 1.75rem;
	right: -2.1875rem;
	top: 50%;
	transform: translateY(-50%) rotate(45deg)
}
@media screen and (max-width: 768px) {
	.p-strong__virtualTitle span:after {
		height: 3.4375rem;
		right: -1.875rem;
		transform: translateY(-50%) rotate(20deg)
	}
}
.p-strong__iframe {
	max-width: 45rem;
	margin-inline: auto;
	margin-top: 1.875rem
}
@media screen and (max-width: 768px) {
	.p-strong__iframe {
		position: relative;
		max-width: 33.75rem;
		padding-inline: 1.25rem;
		z-index: 1;
		margin-inline: auto;
		margin-top: 1.25rem
	}
}
.p-strong__iframe iframe {
	width: 100%;
	height: 100%;
	aspect-ratio: 720/405
}
.p-strong__bgText {
	margin-top: 1.25rem
}
.p-strong__bgText span {
	display: inline-block;
	font-weight: 700;
	color: #fff;
	padding: .25rem .625rem;
	background-color: #00ba84
}
@media screen and (max-width: 768px) {
	.p-strong__bgText span {
		font-size: .9375rem;
		line-height: 1.4666666667;
		text-indent: -1.1em;
		padding-left: calc(.625rem + 1.1em)
	}
}
.p-strong__bgText span+span {
	margin-top: .25rem
}
.p-strong__cards {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2.5rem;
	margin-top: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__cards {
		grid-template-columns: 100%;
		gap: 1.875rem;
		margin-top: 1.875rem
	}
}
.p-strong__cardContent {
	margin-top: 1.25rem
}
.p-strong__cardTitle {
	font-size: 1.5625rem;
	font-weight: 700;
	line-height: 1.52
}
@media screen and (max-width: 768px) {
	.p-strong__cardTitle {
		font-size: 1.375rem;
		line-height: 1.5
	}
}
.p-strong__cardText {
	font-weight: 500;
	margin-top: 1.25rem
}
.p-strong__bottom {
	margin-top: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-strong__bottom {
		margin-top: 3.125rem
	}
}
.p-student {
	border: .3125rem solid #279E8B;
	border-top: none;
	margin-top: 6.25rem
}
@media screen and (max-width: 768px) {
	.p-student {
		margin-top: 1.875rem
	}
}
.p-student__title {
	text-align: center;
	font-size: 1.875rem;
	line-height: 1.2666666667;
	font-weight: 900;
	background-color: #279e8b;
	padding-block: .5rem
}
@media screen and (max-width: 768px) {
	.p-student__title {
		font-size: 1.375rem;
		line-height: 1.5
	}
}
.p-student__body {
	padding: 4.875rem 4.375rem 4.375rem
}
@media screen and (max-width: 768px) {
	.p-student__body {
		padding: 1.875rem
	}
}
.p-student__figures {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 4.0625rem
}
@media screen and (max-width: 768px) {
	.p-student__figures {
		grid-template-columns: 100%;
		gap: 1.875rem
	}
}
.p-student__note {
	text-align: right;
	font-size: 1rem;
	line-height: 1.5;
	font-weight: 700;
	margin-top: .625rem
}
.l-section {
	position: relative;
	padding-top: 8.75rem;
	padding-bottom: 6.25rem
}
@media screen and (max-width: 768px) {
	.l-section {
		padding-top: 3.125rem;
		padding-bottom: 3.125rem
	}
}
.l-section:after {
	position: absolute;
	content: "";
	top: 0;
	left: 50%;
	transform: translate(-50%);
	width: 30rem;
	height: 16.875rem;
	background-color: #cafe70;
	-webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
	clip-path: polygon(0 0, 50% 100%, 100% 0)
}
@media screen and (max-width: 768px) {
	.l-section:after {
		width: 15rem;
		height: 8.4375rem
	}
}
.l-section.--green:after {
	background-color: #1d7769
}
body {
	container-type: inline-size;
	letter-spacing: .04em
}
.js-slider .slide-arrow {
	position: absolute;
	top: 50%;
	height: 1.375rem;
	width: 1.375rem;
	transform: translateY(-50%);
	background-color: #fff;
	-webkit-mask: url(../img/arrow.svg) center center/contain no-repeat;
	mask: url(../img/arrow.svg) center center/contain no-repeat;
	z-index: 1;
	cursor: pointer
}
.js-slider .prev-arrow {
	left: .625rem
}
.js-slider .next-arrow {
	right: .625rem;
	transform: translateY(-50%) rotate(180deg)
}
.u-white {
	color: #fff
}
.u-red {
	color: #f54f35
}
.u-yellow {
	color: #fff68d
}
.u-green {
	color: #43cea5
}
.u-bg-white {
	background-color: #fff
}
.u-bg-green {
	background-color: #43cea5
}
.u-bg-gray {
	background-color: #f0f0f0
}
.u-en-font {
	font-family: Jost, sans-serif
}
.u-mincho-font {
	font-family: Zen Old Mincho, serif
}