.fa-2xl {
	font-size: 32px;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td,
small,
button,
time,
figure {
	border: 0;
	font: inherit;
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}

html {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}

li,
dd {
	list-style-type: none;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
	display: block;
}

img {
	border: none;
	vertical-align: bottom;
}

a {
	cursor: pointer;
	text-decoration: none;
}

html,
body {
	overflow-x: hidden;
}

body {
	color: #333333;
	font-family: "Noto Serif JP", sans-serif;
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	position: relative;
}

html {
	font-size: 150%;
	margin-top: 0 !important;
}

img {
	height: auto;
	max-width: 100%;
}

a {
	color: inherit;
}

.overall {
	overflow-x: hidden;
}

h2 {
	color: var(--gray, #333);
	font-family: "Noto Serif JP";
	font-size: 40px;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 1.2px;
	line-height: normal;
	text-align: center;
}

.l-header {
	background: #fff;
	height: 100px;
	padding: 20px 0;
	position: fixed;
	width: 100%;
	z-index: 10;
}

.l-mv {
	position: relative;
}

.l-mv__bg__color {
	aspect-ratio: 1/1;
	background: #003B85;
	height: 100%;
	left: 50%;
	opacity: 0.75;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: -1;
}

.l-mv__bg__img {
	aspect-ratio: 1/1;
	background: url(../img/bg_mv_pc.png) no-repeat center center/cover;
	height: 100%;
	left: 50%;
	position: absolute;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: -2;
}

.l-assignment {
	background: rgba(250, 251, 252, 0.5);
	position: relative;
}

.l-assignment_bg {
	position: absolute;
	z-index: -1;
}

.l-assignment_bg.main {
	aspect-ratio: 1/1;
	background: url(../img/bg_assignment_main_pc.png) no-repeat center center/cover;
	height: 100%;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
}

.l-assignment_bg.sub {
	aspect-ratio: 1459/175;
	background: url(../img/bg_assignment_sub_pc.png) no-repeat center center/cover;
	bottom: 0;
	height: auto;
	opacity: 0.5;
	transform: translateY(100%);
	width: 100%;
}

.l-episode {
	overflow-x: hidden;
	position: relative;
}

.l-episode .p-episode__linkwrap__background {
	background: #F2F7FC;
	bottom: 0;
	height: 28%;
	position: absolute;
	right: 0;
	width: 76%;
	z-index: -3;
}

.l-trial {
	background: url(../img/bg_trial.png) no-repeat center center/cover;
}

.l-bfrafr {
	background: #FAFBFC;
}

.l-menu {
	bottom: 0;
	display: none;
	position: fixed;
	width: 100%;
	z-index: 5;
}

.l-cta {
	background: url(../img/bg_cta_1_pc.png) no-repeat center center/cover;
}

.l-qa {
	background: #FAFBFC;
}

.l-flow {
	background: #F2F7FC;
}

.l-footer {
	background: #C9CFD6;
}

.l-inner.header {
	margin-inline: auto;
	max-width: 1240px;
	width: calc(1240 / 1440 * 100%);
}

.l-inner.mv {
	height: 100%;
	margin-inline: auto;
	max-width: 1220px;
	max-width: 1440px;
	padding: 185px 0 127px 0;
	position: relative;
	width: calc(1220 / 1440 * 100%);
}

.l-inner.assignment {
	margin-inline: auto;
	max-width: 1240px;
	min-height: 670px;
	padding: 108px 0 48px;
	position: relative;
	width: calc(1240 / 1440 * 100%);
}

.l-inner.cta {
	padding: 80px 0;
}

.l-inner.bfrafr {
	margin-inline: auto;
	max-width: 1220px;
	padding-bottom: 175px;
	padding-top: 120px;
	width: calc(1220 / 1440 * 100%);
}

.l-inner.episode {
	margin-inline: auto;
	max-width: 1237px;
	padding-bottom: 120px;
	padding-top: 120px;
	width: calc(1237 / 1440 * 100%);
}

.l-inner.flow {
	margin-inline: auto;
	max-width: 900px;
	padding-bottom: 120px;
	padding-top: 120px;
	width: calc(900 / 1440 * 100%);
}

.l-inner.reason {
	margin-inline: auto;
	max-width: 965px;
	padding-bottom: 120px;
	padding-top: 120px;
	padding-left: 40px;
	padding-right: 40px;
}

.l-inner.trial {
	margin-inline: auto;
	max-width: 1108px;
	padding: 147px 0 100px;
	width: calc(1108 / 1440 * 100%);
}

.l-inner.qa {
	margin-inline: auto;
	max-width: 828px;
	padding: 120px 0;
	width: calc(828 / 1440 * 100%);
}

.l-inner.heading {
	margin-inline: auto;
	max-width: 1150px;
	width: calc(1150 / 1440 * 100%);
}

.l-inner.instructor {
	margin-inline: auto;
	max-width: 1102px;
	padding: 120px 100px;
	width: 100%;
}

.l-inner.contact {
	margin-inline: auto;
	max-width: 640px;
	padding-bottom: 120px;
	padding-top: 120px;
	width: calc(640 / 1440 * 100%);
	width: 100%;
}

.l-inner.footer {
	margin-inline: auto;
	max-width: 1240px;
	padding: 21px 0px 20px 0px;
	width: 86.1111111111%;
}

.l-sec {
	background-color: lightblue;
}

.l-contact {
	background: #F5F5F5;
}

.c-btn-apply {
	align-items: center;
	background-color: #034495;
	color: var(--White, #FFF);
	display: flex;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	justify-content: center;
	line-height: normal;
	padding: 16px 0 16px 0px;
	position: relative;
	transition: all 0.5s 0s ease;
	width: 292px;
}

.c-btn-apply span {
	position: relative;
}

.c-btn-apply span::before {
	aspect-ratio: 24/24;
	background: url(../img/icn_header_mail_pc.png) no-repeat center center/cover;
	content: "";
	height: auto;
	left: -10px;
	position: absolute;
	top: 50%;
	transform: translate(-100%, -50%);
	width: 24px;
}

.c-btn-apply span::after {
	aspect-ratio: 24/24;
	background: url(../img/icn_header_arrowtoright_pc.png) no-repeat center center/cover;
	content: "";
	height: auto;
	position: absolute;
	right: -10px;
	top: 50%;
	transform: translate(100%, -50%);
	transition: all 0.5s 0s ease;
	width: 17px;
}

.c-btn-apply:hover {
	opacity: 0.7;
}

.c-btn {
	align-items: center;
	background: #034495;
	border: 1px solid #034495;
	border-radius: 4px;
	color: #FFF;
	display: flex;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	justify-content: center;
	line-height: 100%;
	padding: 19px 0 16px;
	position: relative;
	transition: all 0.5s 0s ease;
	width: 220px;
}

.c-btn::after {
	aspect-ratio: 17/17;
	background: url(../img/icn_header_arrowtoright_pc.png) no-repeat center center/cover;
	content: "";
	height: auto;
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	transition: all 0.5s 0s ease;
	width: 17px;
}

.c-btn:hover {
	opacity: 0.7;
}

.c-underline {
	background: linear-gradient(transparent 70%, #FFD965 70%);
	display: inline;
	padding: 0 1px 0px;
}

.p-heading {
	margin-inline: auto;
	width: 500px;
}

.c-heading1 {
	padding: 0 65px;
	position: relative;
	text-align: center;
	width: 100%;
}

.c-heading1::before {
	background: #000;
	content: "";
	height: 2px;
	left: 0;
	position: absolute;
	top: calc(50% - 1px);
	width: 100%;
}

.c-heading1 span {
	background: #fff;
	padding: 0 1em;
	position: relative;
}

/* 左右に斜め線(両端を丸く) */

.c-heading2 {
	align-items: center;
	display: flex;
	justify-content: center;
}

.c-heading2::before,
.c-heading2::after {
	background-color: #1e90ff;
	/* 線の色 */
	border-radius: 5px;
	/* 線の両端を丸く */
	content: "";
	height: 5px;
	/* 線の高さ */
	width: 40px;
	/* 線の長さ */
}

.c-heading2::before {
	content: "";
	margin-right: 10px;
	transform: rotate(60deg);
}

.c-heading2::after {
	content: "";
	margin-left: 10px;
	/* 文字との余白 */
	transform: rotate(-60deg);
	/* 傾ける */
}

.c-item {
	background-color: #fff;
	position: relative;
}

.c-item::after {
	background: #D3DBE1;
	bottom: -8px;
	content: "";
	height: 100%;
	position: absolute;
	right: -8px;
	width: 100%;
	z-index: -1;
}

.c-secttl {
	line-height: 1.85;
	margin-bottom: 70px;
	position: relative;
}

.c-secttl .en {
	color: var(--Blue, #034495);
	font-family: "EB Garamond", sans-serif;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.96px;
	line-height: 100%;
	text-align: center;
}

.c-secttl .jp {
	color: #333;
	/* title_jp */
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 1.44px;
	text-align: center;
}

.p-header__wrap {
	align-items: center;
	display: flex;
	height: inherit;
	justify-content: space-between;
}

.p-header__logo {
	aspect-ratio: 300/40;
	flex-grow: 0;
	height: auto;
	position: relative;
	text-align: center;
	width: 300px;
}

.p-header__logo a,
.p-header__logo img {
	aspect-ratio: 300/40;
	display: block;
	height: auto;
	position: relative;
	text-align: center;
}

.p-header__nav {
	height: inherit;
}

.p-header__btnwrap {
	display: flex;
	-moz-column-gap: 8px;
	column-gap: 8px;
}

.p-header__btnwrap .p-header__btn {
	border-radius: 40px;
	box-shadow: 0px 0px 4px 0px rgba(83, 46, 37, 0.25);
	font-size: 16px;
	font-weight: 700;
	gap: 10px;
	height: 56px;
	letter-spacing: 3.2px;
	line-height: 120%;
	max-width: 160px;
	padding: 0 clamp(10px, 5vw, 45px);
}

.pc_hidden {
	display: none;
}

/* ===============================================
# drawer
=============================================== */

.p-drawer-icon {
	cursor: pointer;
	display: none;
	height: 16px;
	position: absolute;
	right: 0;
	transition: all 0.5s 0s ease;
	width: 27px;
	z-index: 999;
}

.p-drawer__bars {
	align-items: center;
	display: flex;
	height: 100%;
	justify-content: center;
	position: relative;
	width: 100%;
	z-index: 999;
}

.p-drawer__bars .p-drawer__bar1,
.p-drawer__bars .p-drawer__bar2,
.p-drawer__bars .p-drawer__bar3 {
	background-color: #333333;
	display: block;
	height: 2px;
	transition: all 0.3s ease;
	width: 100%;
}

.p-drawer__bars .p-drawer__bar1 {
	position: absolute;
	top: 0;
}

.p-drawer__bars .p-drawer__bar2 {
	position: absolute;
	top: calc(2px + 6px);
}

.p-drawer__bars .p-drawer__bar3 {
	position: absolute;
	top: calc(2px * 2 + 6px * 2);
}

.p-drawer-icon.cross .p-drawer__bar1 {
	top: 50%;
	transform: rotate(45deg);
}

.p-drawer-icon.cross .p-drawer__bar2 {
	opacity: 0;
}

.p-drawer-icon.cross .p-drawer__bar3 {
	top: 50%;
	transform: rotate(-45deg);
}

.p-drawer__menu {
	background: linear-gradient(0deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.8) 100%), linear-gradient(180deg, #007ADF 0%, #00ECBC 100%);
	bottom: 0;
	font-size: 16px;
	font-weight: 700;
	height: calc(100vh - 56px);
	position: fixed;
	right: 0;
	transform: translateX(300%);
	transition: transform 0.5s ease 0s;
	width: 100vw;
	z-index: 299;
}

.p-drawer__menu .p-drawer__menu__items {
	list-style: none;
	margin: 0;
	margin-inline: auto;
	overflow-y: scroll;
	padding: 10% 0 10% 0;
	width: 90%;
}

.p-drawer__menu .p-drawer__menu__items .p-drawer__menu__item {
	border-bottom: 1px solid #fff;
	color: var(--gray, #6C6E6F);
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	height: 69px;
	line-height: normal;
	padding: 0 8px;
	width: 100%;
}

.p-drawer__menu .p-drawer__menu__items .p-drawer__menu__item .p-drawer__item__link {
	align-items: flex-start;
	color: #333;
	display: flex;
	flex-direction: column;
	height: inherit;
	justify-content: flex-end;
	padding: 0 0 8px 45px;
	position: relative;
	text-decoration: none;
	width: 100%;
}

.p-drawer__menu .p-drawer__menu__items .p-drawer__menu__item .p-drawer__item__link::after {
	aspect-ratio: 15/9;
	background: url(../img/icn_arrow_toright2.svg) no-repeat center center/cover;
	bottom: 18px;
	content: "";
	height: auto;
	position: absolute;
	right: 54px;
	width: 15px;
}

.p-drawer__menu .p-drawer__menu__items::-webkit-scrollbar {
	display: none;
	/* Safariでスクロールバーを非表示にする */
}

.p-drawer__menu.is-open {
	overflow-y: scroll;
	transform: translateX(0);
}

.p-drawer__menu__ctawrap {
	background-color: #fff;
	margin-inline: auto;
	padding: 40px 31px;
}

.p-drawer__menu__telwrap {
	aspect-ratio: 184/52;
	height: auto;
	margin-inline: auto;
	width: 184px;
}

.p-drawer__menu__btnwrap {
	display: flex;
	-moz-column-gap: 1%;
	column-gap: 1%;
	justify-content: center;
}

.p-drawer__btn {
	border-radius: 40px;
	box-shadow: 0px 0px 4px 0px rgba(83, 46, 37, 0.25);
	font-size: 16px;
	font-weight: 700;
	gap: 10px;
	height: 56px;
	letter-spacing: 3.2px;
	line-height: 120%;
	padding: 0 clamp(10px, 5vw, 45px);
}

.p-menu__btnlink {
	width: 100%;
}

.p-cta__ttl {
	color: #034495;
	font-size: 36px;
	font-style: normal;
	font-weight: 700;
	line-height: 150%;
	margin-bottom: 32px;
	margin-inline: auto;
	text-align: center;
	max-width: 690px;
}

.p-cta__btn {
	display: block;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: 150%;
	margin-inline: auto;
	padding: 13px 0 16px;
	text-align: center;
	transform: translateX(-6%);
	width: 390px;
}

.p-cta__btn::after {
	right: 31px;
}

.p-reason .p-reason__ttlwrap {
	margin-bottom: 55px;
}

.p-reason .p-reason__ttlwrap .p-reason__ttl.jp span {
	font-size: 56px;
	letter-spacing: 2.24px;
}

.p-reason__itemlist {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: auto auto;
	-moz-column-gap: 8%;
	column-gap: 8%;
	row-gap: 80px;
}

.p-reason__item {
	display: grid;
	grid-row: span 2;
	grid-template-columns: subgrid;
	grid-template-rows: subgrid;
	position: relative;
	row-gap: 0;
}

.p-reason__item .p-reason__item__num {
	color: rgba(3, 68, 149, 0.4);
	font-size: 64px;
	font-style: normal;
	font-weight: 700;
	left: 0;
	line-height: 180%;
	position: absolute;
	text-align: center;
	top: 0;
	transform: translate(-50%, -50%);
}

.p-reason__item .p-reason__item__img {
	aspect-ratio: 240/160;
	height: auto;
	margin-bottom: 16px;
	width: 100%;
}

.p-reason__item .p-reason__item__heading {
	color: #333;
	font-size: clamp(1rem, -0.136rem + 1.82vw, 1.5rem);
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-inline: auto;
	text-align: center;
}

.p-mv__catch {
	color: #fff;
	font-size: 54px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 23px;
}

.p-mv__catch p:nth-child(1) span {
	font-size: 54px;
	letter-spacing: 2.16px;
}

.p-mv__catch p:nth-child(1) {
	font-size: 48px;
	letter-spacing: 1.92px;
	letter-spacing: 1.92px;
	margin-bottom: 15px;
	text-align: center;
}

.p-mv__catch p:nth-child(2) {
	font-size: 60px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 2.4px;
	line-height: normal;
	text-align: center;
}

.p-mv__goodpoint {
	display: flex;
	gap: 2%;
	justify-content: center;
	margin-bottom: 58px;
}

.p-mv__goodpoint__text {
	align-items: center;
	background: #FFF;
	border-radius: 4px;
	color: #034495;
	flex-direction: column;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	justify-content: center;
	line-height: 130%;
	margin-bottom: 0.2rem;
	padding: 14px 1.2%;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}

.c-btn2 {
	align-items: center;
	background: rgb(231, 206, 77);
	background: linear-gradient(180deg, rgb(231, 206, 77) 0%, rgb(231, 206, 77) 6%, rgb(231, 206, 77) 18%, rgb(227, 199, 51) 37%, rgb(205, 174, 6) 54%, rgb(167, 141, 0) 75%, rgb(173, 146, 0) 91%, rgb(231, 206, 77) 100%);
	border-radius: 16.106px;
	color: #FFF;
	display: flex;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	justify-content: center;
	line-height: normal;
	margin-inline: auto;
	padding: 33px clamp(2rem, 0.68rem + 5.63vw, 5.75rem);
	position: relative;
	text-shadow: 0px 0px 14.048px rgba(73, 18, 0, 0.43);
	transition: all 0.5s 0s ease;
	width: -moz-fit-content;
	width: fit-content;
	z-index: 2;
}

.c-btn2 span {
	display: inline-block;
	height: 100%;
	width: 100%;
}

.c-btn2::before {
	border: 1px rgba(255, 255, 255, 0.59) solid;
	border-radius: 16.106px;
	content: "";
	height: 90%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: 98%;
}

.c-btn2:hover {
	filter: brightness(1.2);
	opacity: 0.8;
}

.p-bfrafr .p-bfrafr__ttlwrap {
	margin-bottom: 50px;
}

.p-bfrafr__itemlist {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, auto);
	-moz-column-gap: 2%;
	column-gap: 2%;
	row-gap: 5%;
}

.p-bfrafr__item {
	background-color: #fff;
	border-radius: 0px;
	box-shadow: 8px 8px 0px 0px #D3DBE1;
	padding: 40px 28px;
	position: relative;
	z-index: 0;
}

.p-bfrafr__num {
	color: rgba(3, 68, 149, 0.1);
	font-family: "EB Garamond", sans-serif;
	font-size: 64px;
	font-style: normal;
	font-weight: 700;
	left: 0;
	line-height: 100%;
	position: absolute;
	top: 0;
}

.p-bfrafr__item__heading {
	color: var(--Blue, #034495);
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 20px;
}

.p-bfrafr__item__imgwrap {
	display: flex;
	gap: 3%;
	margin-bottom: 16px;
}

.p-bfrafr__item__imgarea {
	position: relative;
}

.p-bfrafr__item__imgarea__label {
	color: #FFF;
	display: inline-block;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	left: 0;
	line-height: 100%;
	padding: 4px 8px;
	position: absolute;
	top: 0;
}

.p-bfrafr__item__imgarea__label.before {
	background: #4B4A4A;
}

.p-bfrafr__item__imgarea__label.after {
	background: #034495;
}

.p-bfrafr__item__text p {
	color: #000;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.p-bfrafr__item__text p:nth-child(1) {
	margin-bottom: 16px;
}

.p-flow .p-flow__ttlwrap {
	margin-bottom: 53px;
	text-align: center;
}

.p-flow__ttl p {
	text-align: center;
}

.p-flow__chart__imgarea {
	display: inline-block;
	margin-bottom: 25px;
	margin-inline: auto;
}

.p-flow__chart__img {
	display: flex;
	margin-inline: auto;
	width: 79%;
}

.p-episode .p-episode__ttlwrap {
	margin-bottom: 66px;
	transform: translateX(1%);
}

.p-episode .p-episode__ttl.en {
	margin-bottom: 12px;
}

.p-episode .p-episode__ttl.jp {
	line-height: 1.5;
}

.p-episode .p-episode__ttl.jp p {
	text-align: center;
}

.p-episode__itemlist {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: auto;
	-moz-column-gap: 2%;
	column-gap: 2%;
	margin-bottom: 240px;
	row-gap: 40px;
}

.p-episode__itemlist .p-episode__item .p-episode__item__headingwrap {
	background: #034495;
	min-height: 126px;
	padding: 8px 28px;
}

.p-episode__itemlist .p-episode__item .p-episode__item__content {
	padding: 10px 32px 10px 22px;
}

.p-episode__itemlist .p-episode__item:nth-child(2) .p-episode__item__heading {
	width: 90%;
}

.p-episode__item__content__info {
	display: flex;
	-moz-column-gap: 2%;
	column-gap: 2%;
	margin-bottom: 16px;
}

.p-episode__item__content__imgarea {
	aspect-ratio: 150/170;
	flex-shrink: 0;
	height: auto;
	width: 29%;
}

.p-episode__item__content__namewrap {
	align-self: flex-end;
	color: #034495;
	flex-grow: 1;
	transform: translateY(-26px);
}

.p-episode__item__content__namewrap p:not(:last-child) {
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	line-height: 150%;
}

.p-episode__item__content__namewrap p:last-child {
	color: #333;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.p-episode__item__heading__label {
	background-color: #fff;
	color: #034495;
	display: block;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.8px;
	line-height: 80%;
	margin-bottom: 6px;
	min-width: 121px;
	padding: 8px 8px;
	width: 22%;
}

.p-episode__item__heading {
	color: #FFF;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.96px;
	line-height: 150%;
}

.p-episode__item__content__name {
	color: #333;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin-bottom: 20px;
}

.p-episode__item__content__beforewrap {
	background: #ECECEC;
	flex-direction: column;
	margin-bottom: 8px;
}

.p-episode__item__content__beforewrap,
.p-episode__item__content__afterwrap {
	display: flex;
	-moz-column-gap: 3%;
	column-gap: 3%;
}

.p-episode__item__content__beforewrap .p-episode__item__content__label,
.p-episode__item__content__afterwrap .p-episode__item__content__label {
	align-items: center;
	color: #FFF;
	display: flex;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	justify-content: center;
	line-height: 150%;
	padding: 4px 8px;
}

.p-episode__item__content__beforewrap .p-episode__item__content__label.before,
.p-episode__item__content__afterwrap .p-episode__item__content__label.before {
	background: #656567;
}

.p-episode__item__content__beforewrap .p-episode__item__content__label.after,
.p-episode__item__content__afterwrap .p-episode__item__content__label.after {
	background: #ECAD00;
}

.p-episode__item__content__beforewrap span {
	width: -moz-fit-content;
	width: fit-content;
}

.p-episode__item__content__beforewrap .p-episode__item__content__beforetext {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	padding: 4px;
}

.p-episode__item__content__afterwrap {
	background: #FFF8E3;
	display: flex;
	flex-direction: column;
}

.p-episode__item__content__afterwrap span {
	width: -moz-fit-content;
	width: fit-content;
}

.p-episode__item__content__afterwrap .p-episode__item__content__aftertext {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	padding: 4px;
}

.p-episode__item__content__textwrap {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	padding: 8px 0;
}

.p-episode__item__content__textwrap p:not(:last-child) {
	margin-bottom: 16px;
}

.p-episode__linkwrap {
	display: flex;
	flex-direction: column;
	margin-inline: auto;
	row-gap: 36px;
	width: 91%;
}

.p-episode__linkwrap .p-episode__link__item {
	display: flex;
	-moz-column-gap: 4.6%;
	align-items: center;
	column-gap: 4.6%;
	row-gap: 4%;
}

.p-episode__linkwrap .p-episode__link__item:nth-child(odd) {
	flex-direction: row-reverse;
}

.p-episode__link__imgarea {
	aspect-ratio: 360/240;
	flex-shrink: 0;
	height: auto;
	width: 360px;
}

.p-episode__link__textwrap {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	row-gap: 24px;
}

.p-episode__link__text__itemlist {
	display: flex;
	flex-direction: column;
	row-gap: 32px;
}

.p-episode__link__text__itemlist .p-episode__link__text__item {
	display: flex;
	flex-direction: column;
}

.p-episode__link__text__itemlist .p-episode__link__text__item p:nth-child(1) {
	color: #034495;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.p-episode__link__text__itemlist .p-episode__link__text__item p:nth-child(2) {
	color: #333;
	font-size: 16px;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	margin-bottom: 17px;
}

.p-episode__link__text__itemlist .p-episode__link__text__item .p-episode__link__item__btn {
	align-self: flex-end;
	color: #034495;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 1.2px;
	line-height: 100%;
	margin-right: 16%;
}

.p-episode__link__text__itemlist .p-episode__link__text__item .p-episode__link__item__btn span {
	color: #034495;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 1.2px;
	line-height: 100%;
}

.p-episode__link__text__itemlist .p-episode__link__text__item .p-episode__link__item__btn img {
	transition: all 0.5s 0s ease;
}

.p-episode__link__text__itemlist .p-episode__link__text__item .p-episode__link__item__btn:hover img {
	transform: translateX(5px);
}

.p-episode__img {

	display: block;
	height: 100%;
	width: 100%;
}

.p-episode__link__textwrap__heading {
	color: #034495;
	font-size: 24px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

.p-episode__link__textwrap__text {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.p-episode__link__textwrap__btn {
	align-items: center;
	background: #034495;
	border: 1px solid #034495;
	border-radius: 4px;
	color: #FFF;
	display: flex;
	font-size: 18px;
	font-style: normal;
	font-weight: 700;
	justify-content: center;
	line-height: 100%;
	padding: 19px 0 16px;
	position: relative;
	width: 220px;
}

.p-episode__link__textwrap__btn::after {
	aspect-ratio: 17/17;
	background: url(../img/icn_header_arrowtoright_pc.png) no-repeat center center/cover;
	content: "";
	height: auto;
	position: absolute;
	right: 16px;
	top: 50%;
	transform: translateY(-50%);
	width: 17px;
}

.p-episode__link__item__btn__imgarea {
	aspect-ratio: 118/6;
	display: block;
	height: auto;
	width: 118px;
}

.p-good__secttl::before {
	content: "";
	position: relative;
}

.p-good__secttl::after {
	content: "";
	position: relative;
}

.p-good__itemlist {
	display: flex;
	flex-direction: column;
	row-gap: 24px;
}

.p-good__itemlist .p-good__item:nth-child(even) {
	flex-direction: row-reverse;
}

.p-good__itemlist .p-good__item:nth-child(1) img::after {
	aspect-ratio: 472/62;
	background: url(../img/icn_good_border1.png) no-repeat center center/cover;
	bottom: 0;
	content: "";
	height: auto;
	position: absolute;
	right: 0;
	width: 472px;
}

.p-good__itemlist .p-good__item:nth-child(2) .p-good__item__img {
	aspect-ratio: 255/232;
	width: 29%;
}

.p-good__itemlist .p-good__item {
	display: flex;
	-moz-column-gap: 5%;
	column-gap: 5%;
	justify-content: space-between;
	position: relative;
}

.p-good__itemlist .p-good__item .p-good__item__img {
	align-self: center;
	aspect-ratio: 310/284;
	height: auto;
	position: relative;
	width: 32.4%;
}

.p-good__itemlist .p-good__item .p-good__item__textwrap {
	flex-grow: 1;
}

.p-good__itemlist .p-good__item .p-good__item__textwrap__heading {
	color: #2273AE;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.72px;
	line-height: 170%;
	margin-bottom: 24px;
}

.p-good__itemlist .p-good__item .p-good__item__textwrap__text {
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	letter-spacing: 0.54px;
	line-height: 170%;
}

.p-good__itemlist .p-good__item .p-good__item__textwrap__text span {
	color: #6C6E6F;
}

.p-assignment {
	min-height: inherit;
	position: relative;
}

.p-assignment__ttlwrap {
	margin-bottom: 65px;
}

.p-assignment__itemlist {
	position: absolute;
	width: 100%;
}

.p-assignment__itemlist li:nth-child(1) {
	left: 10%;
	position: absolute;
	width: 34%;
}

.p-assignment__itemlist li:nth-child(2) {
	max-width: 616px;
	position: absolute;
	right: 0;
	width: 50%;
}

.p-assignment__itemlist li:nth-child(3) {
	left: 0;
	min-width: 400px;
	position: absolute;
	top: 260px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-assignment__itemlist li:nth-child(3)::before {
	aspect-ratio: 55/49;
	background: url(../img/icn_assignment_left_pc.png) no-repeat center center/cover;
	bottom: -40%;
	content: "";
	height: auto;
	position: absolute;
	right: 10%;
	width: 55px;
}

.p-assignment__itemlist li:nth-child(4) {
	min-width: 392px;
	position: absolute;
	right: 0;
	top: 306px;
}

.p-assignment__itemlist li:nth-child(4)::before {
	aspect-ratio: 46/49;
	background: url(../img/icn_assignment_right_pc.png) no-repeat center center/cover;
	bottom: -40%;
	content: "";
	content: "";
	height: auto;
	left: 2%;
	position: absolute;
	width: 46px;
}

.p-assignment__mid {
	min-height: inherit;
}

.p-assignment__mid__imgcontainer {
	display: flex;
	justify-content: center;
}

.p-assignment__item {
	background: linear-gradient(0deg, #F2F7FC 0%, #F2F7FC 100%), #D3DBE1;
	border-radius: 8px;
	padding: 14px 24px 24px 16px;
	position: relative;
}

.p-assignment__item .p-assignment__item__shadow {
	background: linear-gradient(0deg, #D3DBE1 0%, #D3DBE1 100%), #D3DBE1;
	border-radius: 8px;
	content: "";
	height: 100%;
	left: 8px;
	position: absolute;
	top: 8px;
	width: 100%;
	z-index: -1;
}

.p-assignment__item .p-assignment__item__heading {
	align-items: center;
	background: #034495;
	color: #FFF;
	display: flex;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	justify-content: center;
	margin-bottom: 8px;
	padding: 4px 8px;
	width: -moz-fit-content;
	width: fit-content;
}

.p-assignment__item .p-assignment__item__text {
	color: #333;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: 2;
}

.p-assignment__item .p-assignment__item__text p {
	line-height: 1.75;
}

.p-assignment__imgwrap {
	align-items: flex-end;
	display: flex;
	height: auto;
	justify-content: center;
	margin-inline: auto;
	min-height: inherit;
	position: relative;
	transform: translateY(-30px);
	width: 100%;
}

.p-assignment__imgwrap img {
	position: relative;
	width: 40%;
}

.p-trial .p-trial__ttlwrap {
	margin-bottom: 60px;
}

.p-trial__itemlist {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: 1fr;
	-moz-column-gap: 3%;
	column-gap: 3%;
	margin-bottom: 56px;
}

.p-trial__item {
	background: #FFF;
	border: 1px solid #034495;
	border-radius: 2px;
	display: flex;
	flex-direction: column;
	padding: 24px 6.9%;
	row-gap: 16px;
}

.p-trial__item__info {
	display: flex;
	-moz-column-gap: 5%;
	column-gap: 5%;
}

.p-trial__item__info__label {
	align-items: center;
	background: #034495;
	color: #FFF;
	display: flex;
	flex-shrink: 0;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	justify-content: center;
	line-height: normal;
	padding: 4px 9%;
	width: 99px;
}

.p-trial__item__info__text {
	align-items: center;
	color: #333;
	display: flex;
	flex-grow: 1;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	justify-content: center;
}

.p-trial__msgwrap {
	background-color: #fff;
	margin-inline: auto;
	padding: 24px 6.4%;
	text-align: center;
	width: 72%;
}

.p-trial__msgwrap__heading {
	color: #034495;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-bottom: 20px;
	text-align: center;
}

.p-trial__msgwrap__text {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
	text-align: center;
}

.p-qa__itemlist {
	display: flex;
	flex-direction: column;
	row-gap: 28px;
}

.accordion__head {
	align-items: center;
	background: #fff;
	color: #444;
	cursor: pointer;
	display: flex;
	font-size: 16px;
	font-style: normal;
	font-weight: 700;
	line-height: 150%;
	margin: 0;
	padding: 32px 86px 32px 88px;
	position: relative;
}

.accordion__head::before {
	color: #034495;
	content: "Q";
	font-family: "EB Garamond", sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	left: 40px;
	line-height: 140%;
	position: absolute;
	top: 50%;
	transform: translateY(-52%);
}

.accordion__head::after {
	background: url(../img/icn_qa_plus_pc.png) no-repeat center center/cover;
	color: #333;
	content: "";
	height: 18px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
	width: 18px;
}

.accordion__head.is-open {
	transition: all 0.5s 0s ease;
}

.accordion__head.is-open::after {
	background: url(../img/icn_qa_minus_pc.png) no-repeat center center/cover;
	height: 1px;
	width: 18px;
}

.qa__item__border {
	background: #999;
	height: 1px;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateX(-50%);
	width: 90%;
}

.accordion__body {
	background: #fff;
	border: 0px solid #3f51b5;
	color: #333;
	display: none;
	margin: 0;
	padding: 32px 4.7% 32px 82px;
	position: relative;
}

.accordion__body.is-open {
	max-height: 1000px;
	padding: 32px 4.7% 32px 82px;
}

.accordion__body-in {
	color: #444;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 150%;
}

.accordion__body-in::before {
	color: #FFE100;
	color: #034495;
	content: "A.";
	font-family: "EB Garamond", sans-serif;
	font-size: 20px;
	font-style: normal;
	font-weight: 700;
	left: 40px;
	line-height: 140%;
	position: absolute;
	top: 30px;
}

.p-instructor {
	position: relative;
}

.p-instructor__ttlwrap {
	margin-bottom: 120px;
}

.p-instructor__profile__caption {
	aspect-ratio: 280/277;
	height: auto;
	left: 0;
	position: absolute;
	text-align: center;
	top: 0;
	transform: translate(-66%, -19%);
	width: 37%;
}

.p-instructor__profile__caption .p-instructor__profile__name {
	color: #000;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: 100%;
	text-align: center;
}

.p-instructor__profile__imgarea {
	height: auto;
	width: 100%;
	aspect-ratio: 280 / 300;
}

.p-instructor__profile__imgarea .p-instructor__profile__img {
	width: 100%;
}

.p-instructor__profile__textwrap {
	background: #F2F7FC;
	display: flex;
	flex-direction: column;
	margin-bottom: 51px;
	margin-left: auto;
	padding: 40px 40px 40px 15%;
	position: relative;
	row-gap: 16px;
	width: 82.5%;
}

.p-instructor__profile__textwrap::after {
	background: #F2F7FC;
	bottom: 0;
	content: "";
	display: none;
	height: 78%;
	position: absolute;
	right: 0;
	width: 95%;
	z-index: -1;
}

.p-instructor__profile__textwrap .p-instructor__profile__heading {
	color: #034495;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	margin-bottom: 8px;
}

.p-instructor__profile__textwrap .p-instructor__profile__text {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.p-instuctor__subttl {
	color: #333;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin-bottom: 32px;
	position: relative;
	text-align: center;
}

.p-instuctor__subttl::after {
	background: #034495;
	bottom: -8px;
	content: "";
	height: 1px;
	left: 50%;
	position: absolute;
	transform: translateX(-50%);
	width: 20px;
}

.p-instructor__movie {
	aspect-ratio: 622/329;
	height: auto;
	margin-inline: auto;
	width: 622px;
}

.p-instructor__movie iframe {
	height: 100%;
	width: 100%;
}

.p-contact .p-contact__ttlwrap {
	margin-bottom: 60px;
}

.p-contact__msg {
	color: #333;
	font-size: 18px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-bottom: 29px;
	text-align: center;
}

.c-contact,
.p-contact form{
	display: flex;
	flex-direction: column;
	row-gap: 32px;
	width: 100%;
}

.title {
	align-items: center;
	display: flex;
	-moz-column-gap: 8px;
	color: #333;
	column-gap: 8px;
	font-family: "Noto Serif JP";
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: 24px;
	margin-bottom: 8px;
}

.c-contact-required {
	align-items: center;
	background: #034495;
	color: #FFF;
	display: flex;
	font-size: 10px;
	font-style: normal;
	font-weight: 400;
	height: 16px;
	justify-content: center;
	padding: 0px 8px;
	width: 36px;
}

.input_area {
	font-size: 16px;
	width: 100%;
}

.input_area input::-moz-placeholder {
	color: #CCC;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
}

.input_area input::placeholder {
	color: #CCC;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
}

.input_area input {
	background: #FFF;
	border: 1px solid #DDD;
	padding: 8px;
	width: 100%;
}

.input_area input[type=date] {
	margin-bottom: 8px;
	width: 100%;
}

.input_area select {
	width: 100%;
}

.input_area textarea {
	background: #FFF;
	border: 1px solid #DDD;
	min-height: 240px;
	padding: 8px;
	width: 100%;
}

.input_area.occupation .checkbox,
.input_area.how .checkbox,
.privacy-box .checkbox {
	display: flex;
	justify-content: flex-start;
	-moz-column-gap: 1%;
	column-gap: 1%;
	row-gap: 11px;
	flex-wrap: wrap;
}

.input_area.occupation .wpcf7-list-item,
.privacy-box .wpcf7-list-item,
.input_area.how .wpcf7-list-item {
	margin: 0;
}

.input_area.occupation label,
.input_area.how label,
.privacy-box label {
	display: flex;
	-moz-column-gap: 3.5px;
	column-gap: 3.5px;
}

.wpcf7-response-output{
	font-size: 16px;
}

.input_area.occupation input[type="checkbox"],
.input_area.how input[type="checkbox"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FFF;
	border: 1px solid #DDD;
	border-radius: 4px;
	height: 16px;
	width: 16px;
}

.input_area.occupation input[type="checkbox"]:checked,
.input_area.how input[type="checkbox"]:checked {
	background-color: #1d9bf0;
	border: 1px solid #8b98a5;
}

.input_area.occupation input[type="checkbox"]:checked::before,
.input_area.how input[type="checkbox"]:checked::before {
	color: white;
	content: "\e876";
	display: grid;
	font-family: "Material Icons";
	font-size: 18px;
	height: 100%;
	place-content: center;
}

.input_area.occupation input[type="checkbox"]:focus-visible,
.input_area.how input[type="checkbox"]:focus-visible {
	outline: 2px solid #1d9bf0;
	outline-offset: 2px;
}

.input_area.occupation span,
.input_area.how span {
	color: #333;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
}

.privacy-box {
	align-items: center;
	display: flex;
	font-size: 16px;
	gap: 10px;
	margin-bottom: 24px;
}

.privacy-box input[type="checkbox"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: #FFF;
	border: 1px solid #DDD;
	border-radius: 4px;
	height: 16px;
	width: 16px;
}

.privacy-box input[type="checkbox"]:checked {
	background-color: #1d9bf0;
	border: 1px solid #8b98a5;
}

.privacy-box input[type="checkbox"]:checked::before {
	color: white;
	content: "\e876";
	display: grid;
	font-family: "Material Icons";
	font-size: 18px;
	height: 100%;
	place-content: center;
	/** 外部のアイコンを使ってCheckmarkを実装 */
}

.privacy-box input[type="checkbox"]:focus-visible {
	outline: 2px solid #1d9bf0;
	outline-offset: 2px;
}

.privacy-box label {
	color: #333;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

.privacy-box #privacy-policy-link {
	color: #034495;
	cursor: pointer;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration-line: underline;
}

/* モーダルのスタイル */

.modal {
	background-color: rgba(0, 0, 0, 0.5);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
}

.modal .modal-content {
	background-color: white;
	border-radius: 8px;
	margin: 15% auto;
	max-width: 600px;
	padding: 20px;
	width: 80%;
}

.modal .close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
}

.modal .close:hover,
.modal .close:focus {
	color: black;
	cursor: pointer;
	text-decoration: none;
}

.p-contact__btn {
	cursor: pointer;
	font-size: 24px;
	font-style: normal;
	font-weight: 700;
	letter-spacing: 0.96px;
	margin-inline: auto;
	transition: all 0.5s 0s ease;
	width: 48%;
}

.p-contact__btn:hover {
	opacity: 0.7;
}

.p-contact__btn::after {
	background: unset;
	content: "";
}

.p-footer {
	display: flex;
}

.p-footer__logo {
	aspect-ratio: 300/40;
	display: flex;
	height: auto;
	width: 300px;
}

.p-footer__logo a {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.p-footer__nav {
	align-items: center;
	color: #333333;
	display: flex;
	justify-content: flex-end;
	-moz-column-gap: 5%;
	column-gap: 5%;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-left: auto;
	width: 100%;
}

.p-footer__nav__privacy,
.p-footer__nav__law {
	display: block;
	flex-shrink: 0;
	width: -moz-fit-content;
	width: fit-content;
}

.p-footer__copyright {
	color: #333333;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-top: 23px;
	text-align: center;
}

.u-mt48 {
	margin-top: 48px;
}

.u-mt200 {
	margin-top: 200px;
}

.u-mt600 {
	margin-top: 600px;
}

.u-mt1200 {
	margin-top: 1200px;
}

.u-mb8 {
	margin-bottom: 8px;
}

.u-mb15 {
	margin-bottom: 15px;
}

.u-mb46 {
	margin-bottom: 46px;
}

.u-mb48 {
	margin-bottom: 48px;
}

.u-mb12 {
	margin-bottom: 12px;
}

.u-mb15 {
	margin-bottom: 15px;
}

.u-mb30 {
	margin-bottom: 30px;
}

.u-mb32 {
	margin-bottom: 32px;
}

.u-mb44 {
	margin-bottom: 44px;
}

.u-mb46 {
	margin-bottom: 46px;
}

.u-mb58 {
	margin-bottom: 58px;
}

.u-mb60 {
	margin-bottom: 60px;
}

.u-mb80 {
	margin-bottom: 58px;
}

.u-mt1 {
	margin-top: 1px;
}

.u-mt2 {
	margin-top: 2px;
}

.u-mt3 {
	margin-top: 3px;
}

.u-mt4 {
	margin-top: 4px;
}

.u-mt5 {
	margin-top: 5px;
}

.u-mt6 {
	margin-top: 6px;
}

.u-mt7 {
	margin-top: 7px;
}

.u-mt8 {
	margin-top: 8px;
}

.u-mt9 {
	margin-top: 9px;
}

.u-mt10 {
	margin-top: 10px;
}

.u-mt11 {
	margin-top: 11px;
}

.u-mt12 {
	margin-top: 12px;
}

.u-mt13 {
	margin-top: 13px;
}

.u-mt14 {
	margin-top: 14px;
}

.u-mt15 {
	margin-top: 15px;
}

.u-mt16 {
	margin-top: 16px;
}

.u-mt17 {
	margin-top: 17px;
}

.u-mt18 {
	margin-top: 18px;
}

.u-mt19 {
	margin-top: 19px;
}

.u-mt20 {
	margin-top: 20px;
}

.u-mt21 {
	margin-top: 21px;
}

.u-mt22 {
	margin-top: 22px;
}

.u-mt23 {
	margin-top: 23px;
}

.u-mt24 {
	margin-top: 24px;
}

.u-mt25 {
	margin-top: 25px;
}

.u-mt26 {
	margin-top: 26px;
}

.u-mt27 {
	margin-top: 27px;
}

.u-mt28 {
	margin-top: 28px;
}

.u-mt29 {
	margin-top: 29px;
}

.u-mt30 {
	margin-top: 30px;
}

.u-mt31 {
	margin-top: 31px;
}

.u-mt32 {
	margin-top: 32px;
}

.u-mt33 {
	margin-top: 33px;
}

.u-mt34 {
	margin-top: 34px;
}

.u-mt35 {
	margin-top: 35px;
}

.u-mt36 {
	margin-top: 36px;
}

.u-mt37 {
	margin-top: 37px;
}

.u-mt38 {
	margin-top: 38px;
}

.u-mt39 {
	margin-top: 39px;
}

.u-mt40 {
	margin-top: 40px;
}

.u-mt41 {
	margin-top: 41px;
}

.u-mt42 {
	margin-top: 42px;
}

.u-mt43 {
	margin-top: 43px;
}

.u-mt44 {
	margin-top: 44px;
}

.u-mt45 {
	margin-top: 45px;
}

.u-mt46 {
	margin-top: 46px;
}

.u-mt47 {
	margin-top: 47px;
}

.u-mt48 {
	margin-top: 48px;
}

.u-mt49 {
	margin-top: 49px;
}

.u-mt50 {
	margin-top: 50px;
}

.u-mt51 {
	margin-top: 51px;
}

.u-mt52 {
	margin-top: 52px;
}

.u-mt53 {
	margin-top: 53px;
}

.u-mt54 {
	margin-top: 54px;
}

.u-mt55 {
	margin-top: 55px;
}

.u-mt56 {
	margin-top: 56px;
}

.u-mt57 {
	margin-top: 57px;
}

.u-mt58 {
	margin-top: 58px;
}

.u-mt59 {
	margin-top: 59px;
}

.u-mt60 {
	margin-top: 60px;
}

.u-mt61 {
	margin-top: 61px;
}

.u-mt62 {
	margin-top: 62px;
}

.u-mt63 {
	margin-top: 63px;
}

.u-mt64 {
	margin-top: 64px;
}

.u-mt65 {
	margin-top: 65px;
}

.u-mt66 {
	margin-top: 66px;
}

.u-mt67 {
	margin-top: 67px;
}

.u-mt68 {
	margin-top: 68px;
}

.u-mt69 {
	margin-top: 69px;
}

.u-mt70 {
	margin-top: 70px;
}

.u-mt71 {
	margin-top: 71px;
}

.u-mt72 {
	margin-top: 72px;
}

.u-mt73 {
	margin-top: 73px;
}

.u-mt74 {
	margin-top: 74px;
}

.u-mt75 {
	margin-top: 75px;
}

.u-mt76 {
	margin-top: 76px;
}

.u-mt77 {
	margin-top: 77px;
}

.u-mt78 {
	margin-top: 78px;
}

.u-mt79 {
	margin-top: 79px;
}

.u-mt80 {
	margin-top: 80px;
}

.u-mt81 {
	margin-top: 81px;
}

.u-mt82 {
	margin-top: 82px;
}

.u-mt83 {
	margin-top: 83px;
}

.u-mt84 {
	margin-top: 84px;
}

.u-mt85 {
	margin-top: 85px;
}

.u-mt86 {
	margin-top: 86px;
}

.u-mt87 {
	margin-top: 87px;
}

.u-mt88 {
	margin-top: 88px;
}

.u-mt89 {
	margin-top: 89px;
}

.u-mt90 {
	margin-top: 90px;
}

.u-mt91 {
	margin-top: 91px;
}

.u-mt92 {
	margin-top: 92px;
}

.u-mt93 {
	margin-top: 93px;
}

.u-mt94 {
	margin-top: 94px;
}

.u-mt95 {
	margin-top: 95px;
}

.u-mt96 {
	margin-top: 96px;
}

.u-mt97 {
	margin-top: 97px;
}

.u-mt98 {
	margin-top: 98px;
}

.u-mt99 {
	margin-top: 99px;
}

.u-mt100 {
	margin-top: 100px;
}

.u-pt48 {
	padding-top: 48px;
}

.u-pt75 {
	padding-top: 75px;
}

.u-pl130 {
	padding-left: 130px;
}

.u-pr130 {
	padding-right: 130px;
}

.u-pt80 {
	padding-top: 80px;
}

.u-pb48 {
	padding-bottom: 48px;
}

.u-pb32 {
	padding-bottom: 32px;
}

.u-pb80 {
	padding-bottom: 80px;
}

.u-pb32 {
	padding-bottom: 32px;
}

.u-br-sp {
	display: none;
}

.u-br-sponly {
	display: none;
}

.u-br-tb {
	display: none;
}

.u-br-pc {
	display: block;
}

.u-dn-pc {
	display: none;
}

.u-dn-sp {
	display: block;
}

@media screen and (max-width: 999px) {

	.l-inner.assignment {
		min-height: 1100px;
		padding: 80px 0 100px;
	}

	.p-header__btnwrap .p-header__btn {
		display: flex;
		font-size: 16px;
		gap: 0px;
		height: 40px;
		justify-content: flex-start;
		letter-spacing: unset;
		padding-inline: 19px;
		position: relative;
		width: 128px;
	}

	.p-header__btnwrap .p-header__btn::after {
		aspect-ratio: 15/9;
		background: url(../img/icn_arrow_toright.png) no-repeat center center/cover;
		content: "";
		height: auto;
		position: absolute;
		right: 12px;
		top: 50%;
		transform: translateY(-50%);
		width: 15px;
	}

	.p-drawer-icon {
		display: block;
		height: 16px;
		width: 27px;
	}

	.p-drawer__bars .p-drawer__bar1,
	.p-drawer__bars .p-drawer__bar2,
	.p-drawer__bars .p-drawer__bar3 {
		height: 2px;
	}

	.p-drawer__bars .p-drawer__bar2 {
		top: calc(2px + 6px);
	}

	.p-drawer__bars .p-drawer__bar3 {
		top: calc(2px * 2 + 6px * 2);
	}

	.p-drawer-icon.cross .p-drawer__bar1 {
		top: 50%;
	}

	.p-drawer-icon.cross .p-drawer__bar3 {
		top: 50%;
	}

	.p-drawer__btn {
		display: flex;
		font-size: 16px;
		gap: 0px;
		height: 40px;
		justify-content: center;
		letter-spacing: unset;
		padding-inline: 19px;
		position: relative;
		width: 128px;
	}

	.p-cta__btn::after {
		right: 4%;
	}

	.p-cta__btn {
		font-size: 20px;
		line-height: 100%;
		margin-inline: auto;
		max-width: 390px;
		padding: 21px 0% 21px 80px;
		text-align: left;
		transform: translateX(0);
		width: 74.5%;
	}

	.p-reason__itemlist {
		grid-template-columns: repeat(2, 1fr);
	}

	.p-episode__item__content__namewrap {
		transform: translateY(0);
	}

	.p-good__itemlist .p-good__item:nth-child(even) {
		flex-direction: column;
	}

	.p-good__itemlist .p-good__item:nth-child(2) .p-good__item__img {
		width: 100%;
	}

	.p-good__itemlist .p-good__item {
		flex-direction: column;
	}

	.p-good__itemlist .p-good__item .p-good__item__img {
		margin-bottom: 24px;
		order: 2;
		width: 100%;
	}

	.p-good__itemlist .p-good__item .p-good__item__textwrap {
		display: contents;
	}

	.p-good__itemlist .p-good__item .p-good__item__textwrap__num {
		order: 1;
		width: 90px;
	}

	.p-good__itemlist .p-good__item .p-good__item__textwrap__heading {
		font-size: 20px;
		margin-bottom: 16px;
		order: 3;
	}

	.p-good__itemlist .p-good__item .p-good__item__textwrap__text {
		font-size: 16px;
		letter-spacing: 0.48px;
		order: 4;
	}

	.p-assignment__itemlist {
		display: flex;
		flex-direction: column;
		overflow-x: clip;
		row-gap: 40px;
	}

	.p-assignment__itemlist li:nth-child(1),
	.p-assignment__itemlist li:nth-child(2),
	.p-assignment__itemlist li:nth-child(3),
	.p-assignment__itemlist li:nth-child(4) {
		max-width: unset;
		position: relative;
		width: 90%;
	}

	.p-assignment__itemlist li:nth-child(2),
	.p-assignment__itemlist li:nth-child(4) {
		align-self: flex-end;
		position: relative;
		right: 10px;
		width: 90%;
	}

	.p-assignment__itemlist li:nth-child(1) {
		left: unset;
		position: relative;
	}

	.p-assignment__itemlist li:nth-child(2) {
		letter-spacing: -0.01em;
	}

	.p-assignment__itemlist li:nth-child(3)::before {
		position: relative;
	}

	.p-assignment__itemlist li:nth-child(3) {
		min-width: unset;
		padding: 14px 16px 18px 8px;
		top: unset;
	}

	.p-assignment__itemlist li:nth-child(3) .p-assignment__item__heading {
		margin-bottom: 20px;
	}

	.p-assignment__itemlist li:nth-child(4)::before {
		position: relative;
	}

	.p-assignment__itemlist li:nth-child(4) {
		min-width: unset;
		top: unset;
	}

	.p-assignment__mid {
		margin: 0 calc(50% - 50vw);
		width: 100vw;
	}

	.p-assignment__imgwrap {
		transform: translateY(9px);
	}

	.p-assignment__imgwrap img {
		max-width: 450px;
		width: 100%;
	}

	.p-trial__itemlist {
		grid-template-columns: repeat(1, 1fr);
		grid-template-rows: repeat(3, auto);
		margin-bottom: 40px;
		row-gap: 24px;
	}

	.p-trial__item__info__text {
		flex-grow: unset;
	}

	.p-footer {
		flex-direction: column;
	}

	.p-footer__logo {
		aspect-ratio: 200/27;
		height: auto;
		margin-bottom: 24px;
		width: 200px;
	}

	.p-footer__nav {
		align-items: baseline;
		flex-direction: column;
		row-gap: 16px;
	}

	.u-br-sp {
		display: none;
	}

	.u-br-sponly {
		display: none;
	}

	.u-br-tb {
		display: block;
	}

	.u-br-pc {
		display: none;
	}

	.u-dn-pc {
		display: block;
	}

	.u-dn-sp {
		display: none;
	}

}

@media screen and (max-width: 769px) {

	body {
		overflow-x: hidden;
	}

	h2 {
		font-size: 24px;
	}

	.l-header {
		height: 60px;
	}

	.l-mv {
		height: calc(100vh + 0px);
	}

	.l-mv__bg__img {
		background: url(../img/bg_mv_sp.png) no-repeat 40% -30px/cover;
	}

	.l-episode .p-episode__linkwrap__background {
		height: 26%;
	}

	.l-menu.active {
		display: block;
	}

	.l-inner.header {
		width: calc(360 / 375 * 100%);
	}

	.l-inner.mv {
		width: calc(343 / 375 * 100%);
	}

	.l-inner.mv {
		padding: 180px 16px 179px 16px;
		width: 100%;
	}

	.l-inner.assignment {
		width: calc(351 / 375 * 100%);
	}

	.l-inner.cta {
		padding: 32px 0;
	}

	.l-inner.bfrafr {
		width: calc(350 / 375 * 100%);
	}

	.l-inner.bfrafr {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.episode {
		width: calc(345 / 375 * 100%);
	}

	.l-inner.episode {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.flow {
		width: calc(360 / 375 * 100%);
	}

	.l-inner.flow {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.reason {
		width: calc(360 / 375 * 100%);
	}

	.l-inner.reason {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.trial {
		width: calc(343 / 375 * 100%);
	}

	.l-inner.trial {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.qa {
		width: calc(330 / 375 * 100%);
	}

	.l-inner.qa {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.heading {
		width: calc(330 / 375 * 100%);
	}

	.l-inner.instructor {
		padding: 162px 0 80px 0;
		width: 100%;
	}

	.l-inner.contact {
		width: calc(345 / 375 * 100%);
	}

	.l-inner.contact {
		padding-bottom: 80px;
		padding-top: 80px;
	}

	.l-inner.footer {
		padding: 20px 15px 80px;
		width: 100%;
	}

	.c-btn-apply {
		font-size: 18px;
	}

	.c-secttl .en {
		font-size: 20px;
		font-style: normal;
		font-weight: 400;
		letter-spacing: 0.8px;
		line-height: 100%;
		margin-bottom: 14px;
	}

	.c-secttl .jp {
		font-size: 28px;
		font-style: normal;
		font-weight: 700;
		letter-spacing: 1.12px;
		line-height: 100%;
	}

	.p-header__logo {
		aspect-ratio: 200/27;
		width: 200px;
	}

	.p-header__nav {
		display: none;
	}

	.p-drawer-icon {
		display: block;
		height: 16px;
		width: 27px;
	}

	.p-drawer__bars .p-drawer__bar1,
	.p-drawer__bars .p-drawer__bar2,
	.p-drawer__bars .p-drawer__bar3 {
		height: 1px;
	}

	.p-drawer__bars .p-drawer__bar2 {
		top: calc(1px + 6px);
	}

	.p-drawer__bars .p-drawer__bar3 {
		top: calc(1px * 2 + 6px * 2);
	}

	.p-drawer-icon.cross .p-drawer__bar1 {
		top: 50%;
	}

	.p-drawer-icon.cross .p-drawer__bar3 {
		top: 50%;
	}

	.p-cta__ttl {
		font-size: 20px;
		line-height: 175%;
		margin-bottom: 24px;
	}

	.p-cta__btn {
		padding: 21px 0% 21px 0%;
		text-align: center;
	}

	.p-reason .p-reason__ttlwrap {
		margin-bottom: 80px;
	}

	.p-reason .p-reason__ttlwrap .p-reason__ttl.jp span {
		font-size: 32px;
		letter-spacing: 1.28px;
	}

	.p-reason .p-reason__ttlwrap .p-reason__ttl.jp {
		font-size: 24px;
		line-height: 1.1;
	}

	.p-reason__itemlist {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 60px;
	}

	.p-reason__item {
		align-items: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
		margin-inline: auto;
		max-width: 400px;
		width: 88%;
	}

	.p-reason__item .p-reason__item__num {
		font-size: 64px;
		transform: translate(-35%, -58%);
	}

	.p-reason__item .p-reason__item__img {
		width: 100%;
	}

	.p-mv {
		left: 50%;
		position: absolute;
		top: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
	}

	.p-mv__catch {
		margin-bottom: 40px;
	}

	.p-mv__catch p:nth-child(1) span {
		font-size: 25px;
	}

	.p-mv__catch p:nth-child(1) {
		font-size: 24px;
		margin-bottom: 4px;
	}

	.p-mv__catch p:nth-child(2) {
		font-size: 28px;
	}

	.p-mv__goodpoint__text {
		font-size: 12px;
		padding: 5px 1.2%;
	}

	.c-btn2 {
		font-size: 22px;
		padding: 24px 8%;
	}

	.p-bfrafr .p-bfrafr__ttlwrap {
		margin-bottom: 40px;
	}

	.p-bfrafr__ttl.jp {
		font-size: 18px;
		line-height: 1.5;
	}

	.p-bfrafr__ttl span {
		font-size: 24px;
	}

	.p-bfrafr__itemlist {
		display: flex;
		flex-direction: column;
		row-gap: 36px;
	}

	.p-bfrafr__item {
		padding: 25px 18px 25px;
	}

	.p-bfrafr__num {
		font-size: 40px;
		left: 2%;
		line-height: 100%;
	}

	.p-bfrafr__item__heading {
		font-size: 20px;
		line-height: 100%;
	}

	.p-flow .p-flow__ttlwrap {
		margin-bottom: 40px;
	}

	.p-flow__ttl p:nth-child(1) {
		font-size: 18px;
		font-style: normal;
		font-weight: 700;
		letter-spacing: 0.72px;
		line-height: 150%;
	}

	.p-flow__ttl p:nth-child(2) {
		font-size: 24px;
		font-style: normal;
		font-weight: 700;
		letter-spacing: 0.96px;
		line-height: 150%;
		line-height: 1.2;
		margin-inline: auto;
		width: 75%;
	}

	.p-flow__chart__imgarea {
		margin-bottom: 8px;
	}

	.p-flow__chart__img {
		width: 100%;
	}

	.p-flow__point__imgarea {
		display: block;
		margin-inline: auto;
		width: 95%;
	}

	.p-episode .p-episode__ttlwrap {
		margin-bottom: 40px;
	}

	.p-episode .p-episode__ttl.jp {
		font-size: 20px;
	}

	.p-episode .p-episode__ttl.jp p {
		text-align: center;
	}

	.p-episode__itemlist {
		grid-template-columns: repeat(1, 1fr);
		row-gap: 17px;
		margin-bottom: 160px;
	}

	.p-episode__itemlist .p-episode__item .p-episode__item__headingwrap {
		min-height: 110px;
		padding: 8px 10px;
	}

	.p-episode__itemlist .p-episode__item .p-episode__item__content {
		padding: 10px 32px 10px 10px;
	}

	.p-episode__item__content__info {
		flex-direction: column;
		row-gap: 25px;
	}

	.p-episode__item__content__imgarea {
		align-self: center;
		flex-shrink: unset;
		width: 50%;
	}

	.p-episode__item__content__namewrap {
		align-self: auto;
		flex-grow: unset;
	}

	.p-episode__item__content__namewrap p:nth-child(1) {
		font-size: 22px;
		font-size: 20px;
		font-style: normal;
		font-weight: 700;
		line-height: 150%;
	}

	.p-episode__item__heading__label {
		font-size: 18px;
		letter-spacing: 0.72px;
		line-height: 150%;
		min-width: unset;
		padding: 1px 8px;
		width: -moz-fit-content;
		width: fit-content;
	}

	.p-episode__item__heading {
		font-size: 20px;
		font-style: normal;
		letter-spacing: 0.8px;
		line-height: 150%;
	}

	.p-episode__item__content__beforewrap .p-episode__item__content__beforetext {
		padding: 17px 4px 2px 4px;
	}

	.p-episode__item__content__afterwrap .p-episode__item__content__aftertext {
		padding: 17px 4px 2px 4px;
	}

	.p-episode__linkwrap {
		width: 100%;
	}

	.p-episode__linkwrap .p-episode__link__item {
		align-items: flex-start;
		flex-direction: column;
	}

	.p-episode__linkwrap .p-episode__link__item:nth-child(odd) {
		flex-direction: column;
	}

	.p-episode__link__imgarea {
		margin-bottom: 16px;
		order: 0;
		width: 100%;
	}

	.p-episode__link__textwrap {
		display: contents;
	}

	.p-episode__link__text__itemlist .p-episode__link__text__item .p-episode__link__item__btn {
		margin-right: 0;
	}

	.p-episode__link__textwrap__heading {
		font-size: 20px;
		margin-bottom: 20px;
		order: 0;
	}

	.p-episode__link__textwrap__text {
		margin-bottom: 20px;
		order: 3;
	}

	.p-episode__link__textwrap__btn {
		align-self: center;
		order: 4;
	}

	.p-assignment__item {
		padding: 14px 16px 18px 13px;
	}

	.p-assignment__item .p-assignment__item__heading {
		font-size: 20px;
	}

	.p-assignment__item .p-assignment__item__text p {
		line-height: 1.55;
	}

	.p-trial__msgwrap {
		padding: 24px 2.4%;
		width: 100%;
	}

	.p-qa .p-qa__ttlwrap {
		margin-bottom: 40px;
	}

	.p-qa__itemlist {
		row-gap: 8px;
	}

	.accordion__head {
		font-size: 16px;
		padding: 24px 12% 24px 12%;
	}

	.accordion__head::before {
		font-size: 18px;
		left: 2.9%;
		top: 24px;
		transform: translateY(0);
	}

	.accordion__head::after {
		aspect-ratio: 1;
		height: auto;
		right: 2.7%;
		width: 18px;
	}

	.qa__item__border {
		top: -10px;
		width: 93%;
	}

	.accordion__body {
		padding: 7px 3% 24px 13.9%;
	}

	.accordion__body.is-open {
		padding: 7px 3% 24px 13.9%;
	}

	.accordion__body-in {
		font-size: 16px;
	}

	.accordion__body-in::before {
		font-size: 18px;
		left: 2.9%;
		transform: translateY(-100%);
	}

	.p-instructor__ttlwrap {
		margin-bottom: 84px;
	}

	.p-instructor__profile__caption {
		margin-inline: auto;
		position: relative;
		transform: translateY(-30px);
		width: 86%;
	}

	.p-instructor__profile__imgarea .p-instructor__profile__img {
		display: block;
		height: 100%;
		width: 100%;
	}

	.p-instructor__profile__textwrap::after {
		display: block;
	}

	.p-instructor__profile__textwrap {
		background: none;
		margin-left: unset;
		padding: 0px 25px 10px;
		width: 100%;
	}

	.p-instructor__movie {
		aspect-ratio: 345/180;
		height: auto;
		width: 90%;
	}

	.p-instructor__movie iframe {
		height: 100%;
	}

	.p-contact .p-contact__ttlwrap .p-contact__ttl.jp {
		line-height: 1.4;
	}

	.p-contact .p-contact__ttlwrap {
		margin-bottom: 40px;
	}

	.p-contact__msg {
		margin-bottom: 40px;
	}

	.input_area.occupation,
	.input_area.how {
		row-gap: 11px;
		-moz-column-gap: 1%;
		column-gap: 1%;
		flex-wrap: wrap;
	}

	.privacy-box {
		margin-bottom: 7px;
	}

	.p-contact__btn {
		width: 90%;
	}

	.p-footer__copyright {
		margin-top: 63px;
	}

	.u-br-sp {
		display: block;
	}

	.u-br-sponly {
		display: block;
	}

	.u-br-tb {
		display: block;
	}

	.u-br-pc {
		display: none;
	}

	.u-dn-pc {
		display: block;
	}

	.u-dn-sp {
		display: none;
	}

}