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

html {
	font-size: 16px;
	height: 100%;
	scroll-behavior: smooth;
}

body {
	color: #212121;
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	line-height: 1.5;
}

img,
video,
object {
	border: none;
	display: block;
	height: auto;
	width: 100%;
}

a {
	text-decoration: none;
}

a:hover {
	transition: all 0.3s;
}

/*===================================================================
# ヘッダー
===================================================================*/

.header {
	background-color: #E9EAEC;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
}

.header__inner {
	display: flex;
	justify-content: flex-end;
	padding-block: 10px;
}

/*===================================================================
# フッター
===================================================================*/

/*===================================================================
# BUTTON
===================================================================*/

.cta__btn {
	align-items: center;
	background-color: transparent;
	border-radius: 999px;
	color: #FFFFFF; /* cta-1のボタン */
	display: flex;
	font-size: 36px;
	height: 103px;
	letter-spacing: -1.44px;
	padding-bottom: 4px;
	padding-left: 64px;
	position: relative;
	transition: all 0.3s ease;
	width: 593px;
	z-index: 1;
}

.cta__btn::before {
	background-color: #C6610E;
	border-radius: inherit;
	bottom: -8px;
	content: ""; /* ボタンの影 */
	height: 100%;
	left: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}

.cta__btn::after {
	background-color: #ef7f07;
	border-radius: inherit;
	content: ""; /* ボタン自体の背景色を擬似要素で表現 */
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1; /* 影より下に配置 */
}

.cta__btn.--fv {
	font-size: 40px;
	letter-spacing: 0px;
	margin-inline: auto; /* FVセクションのボタン */
	padding-left: 99px;
}

.cta__btn.--2,
.cta__btn.--3 {
	font-size: 35px; /* CTA−2と3セクションのボタン */
	letter-spacing: -1.4px;
	padding-left: 60px;
}

.cta__btn-arrow {
	height: 23.53px;
	position: absolute; /* cta-1セクションのボタン内矢印 */
	right: 33px;
	top: 50%;
	transform: translateY(-50%);
	width: 18.8px;
}

.cta__btn-arrow.--fv {
	right: 46px; /* FVセクションのボタン内矢印 */
}

.cta__btn-arrow.--2,
.cta__btn-arrow.--3 {
	right: 29px; /* cta-2と3セクションのボタン内矢印 */
}

.cta__btn--header {
	align-items: center;
	background-color: #ef7f07;
	color: #FFFFFF; /* header用のctaボタン */
	display: flex;
	font-size: 22px;
	height: 62px;
	letter-spacing: 0.6px;
	padding-bottom: 4px;
	padding-left: 66px;
	position: relative;
	transition: all 0.3s ease;
	width: 375px;
}

.cta__btn-arrow--header {
	position: absolute; /* header用のctaボタン内矢印 */
	right: 28.5px;
	top: 50%;
	transform: translateY(-50%);
}

/*===================================================================
# ドロワーアイコン
===================================================================*/

.drawer {
	align-items: center;
	cursor: pointer;
	display: flex;
	height: 80px;
	z-index: 1000;
}

.drawer__bars {
	display: inline-block;
	height: 24px;
	margin-right: 30px;
	position: relative;
	width: 34px;
}

.drawer__bar {
	background: rgba(73, 29, 1, 0.8);
	border-radius: 4px;
	display: block;
	height: 4px;
	left: 0;
	position: absolute;
	transition: all 0.3s linear 0s;
	width: 100%;
}

.drawer__bar:nth-of-type(1) {
	top: 0;
}

.drawer__bar:nth-of-type(2) {
	top: 10px;
}

.drawer__bar:nth-of-type(3) {
	top: 20px;
}

/* ドロワーアイコンをクリックした時
メニューを右からスライドさせて表示する */

.header__nav.drawer__icon--active {
	transform: translateX(0);
}

/* ドロワーアイコンをバツにするアニメーション */

.drawer__icon--active .drawer__bar:nth-of-type(1) {
	top: 10px;
	transform: rotate(-45deg);
}

.drawer__icon--active .drawer__bar:nth-of-type(2) {
	background: transparent;
}

.drawer__icon--active .drawer__bar:nth-of-type(3) {
	top: 10px;
	transform: rotate(45deg);
}

/*===================================================================
# ホバー
===================================================================*/

/*===================================================================
# インナー幅
===================================================================*/

.inner {
	margin: 0 auto;
	max-width: 1240px; /* インナー幅は1200px */
	padding-inline: 20px;
}

/*===================================================================
# セクション
===================================================================*/

.section__title {
	font-size: 44px;
	letter-spacing: -1.76px;
	line-height: 1.5;
	position: relative;
	text-align: center; /* セクションタイトル */
}

.section__title::before {
	background-image: url(../../assets/img/title_decoration.svg);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 82px;
	left: 50%;
	position: absolute;
	top: -76px;
	translate: -50%;
	width: 211px;
}

.section__title::after {
	background-color: #0096A4;
	bottom: -13px;
	content: "";
	height: 3px;
	left: 50%;
	position: absolute;
	translate: -50%;
	width: 100px;
}

/*===================================================================
# トップへ戻るボタン
===================================================================*/

.to-top {
	bottom: 5px;
	position: fixed;
	right: 16px;
	transition: all 0.3s ease 0s;
	visibility: hidden;
	z-index: 101;
}

.to-top img {
	height: 49px;
	width: 49px;
}

.to-top__show {
	opacity: 1;
	visibility: visible;
}

/*===================================================================
# FV
===================================================================*/

.fv {
	background: url(../../assets/img/fv_bg.png) center center/cover no-repeat;
	margin-top: 82px;
	padding-block: 14px 56px;
	width: 100%;
}

.fv__inner {
	margin-inline: auto;
	max-width: 1040px;
	padding-inline: 20px;
	position: relative;
}

.fv__title {
	color: #FFFFFF;
	font-size: 96px;
	letter-spacing: -4px;
	line-height: 0.46;
	text-align: center;
}

.fv__title-en {
	color: #FFFFFF;
	font-family: "oswald";
	font-size: 119px;
	letter-spacing: 0.07em;
	line-height: 1.1933;
	transform: translateY(8px);
}

.fv__title-upper {
	align-items: baseline;
	display: flex;
	justify-content: center;
}

.fv__title-lower {
	display: inline-block;
	letter-spacing: 0.02em; /* 養成講座 */
}

.fv__instructor {
	color: #FFFFFF;
	font-size: 42px;
	line-height: 1.2195;
	margin-top: 52px;
	text-align: center;
}

.fv__img {
	height: auto;
	position: absolute;
	right: -67px;
	top: 77px;
	width: 422px;
}

.fv__items {
	display: flex;
	gap: 20px;
	margin-inline: auto;
	margin-top: 58px;
	max-width: 900px;
}

.fv__item {
	align-items: center;
	background-color: #1d284f;
	border-radius: 8.6985px;
	color: #FFFFFF;
	display: flex;
	flex-direction: column;
	font-size: 38px;
	justify-content: center;
	letter-spacing: 0px;
	line-height: 1.1538;
	min-height: 194px;
	text-align: center;
	width: 28666.6666666667%;
}

.fv__item-accent {
	color: #FAE25B;
}

.fv__btn-wrapper {
	margin: 47px auto 0;
	max-width: 600px;
}

.webp .fv {
	background-image: url(../../assets/img/fv_bg.webp); /* webp対応ブラウザ用の画像設定 */
}

/*===================================================================
# CONCERN
===================================================================*/

.concern__upper {
	background-color: #D7D8DA;
	padding-block: 70px 30px;
	position: relative;
}

.concern__upper::after {
	background-color: #D7D8DA;
	content: "";
	height: 53px;
	position: absolute;
	width: 100%;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	bottom: -52px;
	clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}

.concern__tex1-wrapper {
	align-items: flex-end;
	display: flex;
	justify-content: center;
}

.concern__text1 {
	font-size: 34px; /* ライターとしての～ */
	letter-spacing: -1.36px;
	line-height: 1;
	margin-bottom: 3px;
}

.concern__text1-img {
	height: auto;
	width: 180px; /* 低空飛行 */
}

.concern__text2-wrapper {
	display: flex;
	flex-direction: column;
	gap: 33px;
	margin: 49px auto 0;
	max-width: 860px;
	position: relative;
}

.concern__text2 {
	align-items: center;
	background-color: transparent;
	border-radius: 7px;
	display: flex;
	font-size: 24px;
	height: 54px; /* 一体いつになったら～ */
	justify-content: center;
	letter-spacing: -0.96px;
	position: relative;
	z-index: 1;
}

.concern__text2::before {
	background-color: #A9AAAB;
	border-radius: 7px;
	content: "";
	height: 100%;
	left: 3px;
	position: absolute;
	top: 3px;
	width: 100%;
	z-index: -1;
}

.concern__text2::after {
	background-color: #fff;
	border-radius: 7px;
	content: "";
	height: 100%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: -1;
}

.concern__text2.--1 {
	max-width: 544px; /* 一体いつになったら～ */
}

.concern__text2.--2 {
	max-width: 640px; /* 他のライターはもう～ */
}

.concern__text2.--3 {
	max-width: 860px; /* このままライターを続けて～ */
}

.concern__upper-img {
	height: auto;
	position: absolute; /* PCで表示 */
	right: -42px;
	top: -42px;
	width: 294px;
	z-index: 2;
}

.concern__upper-img--sp {
	display: none;
	height: auto;
	margin-inline: auto;
	margin-top: 2px;
	width: 277px; /* SPで表示 */
}

.concern__text3 {
	font-size: 27px; /* といったどうしよう～ */
	letter-spacing: -1.08px;
	margin-top: 9px;
	text-align: center;
}

.concern__text-accent {
	color: #0096A4;
}

.concern__lower {
	background-color: #0096A4;
	padding-block: 102px 70px;
}

.concern__lower-text-wrapper {
	margin-inline: auto;
	max-width: 772px;
	position: relative;
	text-align: center;
}

.concern__title {
	color: #FAE25B;
	font-size: 48px; /* YouTube台本ライター養成講座 */
	letter-spacing: -1.92px;
	position: relative;
}

.concern__title::before,
.concern__title::after {
	background-image: url(../../assets/img/concern_decoration.png);
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 9px;
	content: "";
	height: 53px;
	position: absolute;
	width: 32px;
}

.concern__title::before {
	left: 31px;
}

.concern__title::after {
	right: 20px;
	transform: scaleX(-1);
}

.concern__text4 {
	color: #FFFFFF;
	font-size: 31px; /* は、一生依頼が～ */
	letter-spacing: -1.24px;
	margin-top: 29px;
}

.concern__text5 {
	color: #FAE25B;
	font-size: 39px; /* 収入を大きくアップ */
	letter-spacing: -1.56px;
	margin-top: 10px;
}

.concern__text6 {
	color: #FFFFFF;
	font-size: 31px; /* させるための */
	letter-spacing: -1.24px;
	margin-top: 11px;
}

.concern__text7 {
	color: #FFFFFF;
	font-size: 31px; /* スキルと知識を～ */
	letter-spacing: -1.24px;
	margin-top: 22px;
}

.concern__text-decoration {
	align-items: center;
	background-color: #fff;
	color: #0096A4;
	display: inline-flex;
	font-size: 37px;
	height: 54px;
	justify-content: center;
	letter-spacing: -1.48px;
}

.concern__text-decoration.--skill {
	margin-right: 12px;
	width: 122px; /* スキル */
}

.concern__text-decoration.--knowledge {
	margin-inline: 7px 12px;
	width: 96px; /* 知識 */
}

.concern__lower-img {
	bottom: 0;
	height: auto;
	position: absolute;
	right: -100px;
	width: 249px;
}

/*===================================================================
# TARGET1
===================================================================*/

.target1__upper {
	background: url(../../assets/img/target1_upper_bg.png) center center/cover no-repeat;
	padding-block: 147px 72px;
	position: relative;
}

.target1__upper-lists {
	margin-inline: auto;
	margin-top: 65px;
	max-width: 860px;
}

.target1__upper-list {
	border-bottom: 1px dashed #212121;
	font-size: 24px;
	letter-spacing: -0.96px;
	margin-bottom: 10px;
	padding-bottom: 13px;
	padding-left: 42px;
	position: relative;
}

.target1__upper-list:last-of-type {
	border-bottom: none;
	margin-bottom: 0;
}

.target1__upper-list::before {
	background-image: url(../../assets/img/check.svg);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 27px;
	left: 0;
	position: absolute;
	top: 3px;
	width: 28px;
}

.target1__strong {
	color: #ef7f07;
}

.target1__arrow {
	height: auto;
	margin-inline: auto;
	margin-top: 20px;
	width: 51px;
	--arrow-distance: 20px; /* アニメーションの移動距離（PC) */
	animation: target1ArrowUpDown 3s ease-in-out infinite;
}

.target1__text1 {
	font-size: 31px; /* ライターとしてこれから～ */
	letter-spacing: -1.24px;
	margin-top: 25px;
	text-align: center;
	text-decoration-color: #ef7f07;
	text-decoration-line: underline;
	text-decoration-thickness: 15px;
	text-underline-offset: -8px;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

.target1__text2-wrapper {
	display: flex;
	justify-content: center;
	margin-top: 31px;
}

.target1__text2 {
	align-items: center;
	background-color: #ef7f07;
	border-radius: 5px;
	color: #FFFFFF;
	display: inline-block;
	display: flex;
	font-size: 31px; /* 今よりも単価を上げることが必須です */
	height: 69px;
	justify-content: center;
	letter-spacing: -1.24px;
	width: 545px;
}

.target1__text3 {
	font-size: 27px; /* 低単価ライターから脱却し～ */
	letter-spacing: -1.08px;
	line-height: 1.4815;
	margin-inline: auto;
	margin-top: 31px;
	max-width: 570px;
}

.target1__img-wrapper {
	margin-inline: auto;
	max-width: 900px;
	position: relative;
}

.target1__img {
	bottom: -96px;
	max-width: 465px;
	position: absolute;
	right: -47px;
}

.target1__lower {
	background-color: #EAFEFE;
	padding-bottom: 70px;
}

.target1__lower-title-wrapper {
	align-items: center;
	background-color: #0096A4;
	display: flex;
	height: 112px;
	justify-content: center;
	position: relative;
	width: 100%;
}

.target1__lower-title {
	color: #FAE25B;
	font-size: 54px;
	letter-spacing: -2.16px;
}

.target1__lower-triangle {
	border-bottom: 0;
	border-left: 11px solid transparent;
	border-right: 11px solid transparent;
	border-style: solid;
	border-top: 19px solid #0096A4;
	bottom: -19px;
	height: 0;
	left: 50%;
	position: absolute;
	translate: -50%;
	width: 0;
}

.target1__lower-lists {
	margin-inline: auto;
	margin-top: 71px;
	max-width: 923px;
}

.target1__lower-list {
	align-items: center;
	background-color: #fff;
	border-radius: 7px;
	display: flex;
	gap: 8px;
	margin-bottom: 30px;
	padding-bottom: 3px;
	padding-left: 30px;
	padding-top: 3px;
}

.target1__lower-list:last-of-type {
	margin-bottom: 0;
}

.target1__lower-list.--margin {
	margin-left: 30px;
	max-width: 848px;
}

.target1__lower-list.--2nd {
	padding-bottom: 11px;
	padding-top: 11px;
}

.target1__icon {
	height: 57px;
	width: 57px;
}

.target1__text4 {
	font-size: 24px;
	letter-spacing: -0.96px;
}

.webp .target1__upper {
	background-image: url(../../assets/img/target1_upper_bg.webp); /* webp対応ブラウザ用の画像設定 */
}

/*===================================================================
# REASON
===================================================================*/

.reason {
	background-color: #FEFFF1;
	padding-block: 147px 72px;
}

.reason__title-wrapper {
	margin-inline: auto;
	max-width: 650px;
	position: relative;
}

.reason__box-wrapper {
	left: -117px;
	position: absolute; /* なぜ今 コンテナ */
	top: -84px;
}

.reason__box-img {
	height: 125px;
	position: relative;
	width: 159px; /* なぜ今 枠 */
}

.reason__box-text {
	font-size: 34px; /* なぜ今 テキスト */
	height: 47px;
	left: 34px;
	letter-spacing: -1.36px;
	line-height: 0.7059;
	position: absolute;
	top: 45px;
	transform: matrix(0.95, -0.33, 0.33, 0.95, 0, 0);
	width: 105px;
}

.reason__upper {
	margin-block: 65px 53px;
	margin-inline: auto;
	max-width: 690px;
	position: relative;
}

.reason__upper-text1,
.reason__upper-text2 {
	font-size: 24px; /* YouTubeは、今や～ */
	letter-spacing: -0.96px;
}

.reason__upper-text2 {
	margin-top: 27px; /* 企業や個人がこぞって～ */
}

.reason__text2--accent {
	color: #ef7f07;
}

.reason__pencil {
	max-width: 320px;
	position: absolute; /* 鉛筆の画像 */
	right: -68px;
	top: -173px;
}

.reason__middle {
	background-color: #0096A4;
	padding-top: 46px;
	position: relative;
}

.reason__middle::after {
	background-color: #0096A4;
	content: "";
	height: 65px;
	position: absolute;
	width: 100%;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	bottom: -64px;
	clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}

.reason__middle-text1 {
	color: #FAE25B; /* 視聴者を惹きつけ～ */
	font-size: 41px;
	font-weight: 700;
	letter-spacing: -1.64px;
	line-height: 1.5122;
	text-align: center;
}

.reason__middle-text2 {
	color: #fff; /* は、現状多くありません。 */
	font-size: 27px;
	letter-spacing: -1.08px;
	line-height: 1;
	margin-top: 29px;
	text-align: center;
}

.reason__lower-text1 {
	align-items: center;
	background-color: #fff;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1607843137);
	color: #0096A4;
	display: flex;
	font-size: 29px;
	height: 66px;
	justify-content: center;
	letter-spacing: -1.16px;
	line-height: 1.17241;
	margin: 115px auto 51px; /* 台本のライティングスキルを身につければ～ */
	max-width: 968px;
}

.reason__lower-text1--sp {
	display: none; /* SPのみ表示 引く手あまたの存在になれます! */
}

.reason__lower-text2 {
	font-size: 24px; /* 視聴者を釘付けにする～ */
	letter-spacing: -0.96px;
	margin: 42px auto 0;
	max-width: 574px;
	text-align: center;
}

.reason__lower-text3 {
	font-size: 29px; /* 単価を上げても依頼が絶えず～ */
	letter-spacing: 0px;
	line-height: 0.86207;
	margin-top: 31px;
	text-align: center;
	text-decoration-color: #ef7f07;
	text-decoration-line: underline;
	text-decoration-thickness: 15px;
	text-underline-offset: -8px;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

.reason__img {
	margin-inline: auto;
	max-width: 475px;
}

/*===================================================================
# CURRICULUM
===================================================================*/

.curriculum__upper {
	background-color: #EAFEFE;
	padding-block: 147px 72px;
	position: relative;
}

.curriculum__items {
	margin-top: 122px;
}

.curriculum__item {
	background-color: #fff;
	margin-bottom: 89px;
	margin-inline: auto;
	max-width: 860px;
	position: relative;
}

.curriculum__item:last-of-type {
	margin-bottom: 0;
}

.curriculum__item-num-wrapper {
	left: 28px;
	position: absolute;
	top: -29px;
}

.curriculum__item-num {
	align-items: center;
	backface-visibility: hidden;
	background-color: #0096A4;
	color: #FFFFFF;
	display: flex;
	font-size: 31px;
	height: 50px;
	justify-content: center;
	letter-spacing: -1.24px;
	position: relative;
	transform: rotate(-8deg);
	width: 120px;
	z-index: 1;
}

.curriculum__item-num::before {
	background: #fff border-box;
	border: 1px solid transparent;
	content: "";
	inset: 0;
	mask-clip: padding-box, border-box;
	mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
	position: absolute;
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	-webkit-mask-image: linear-gradient(#fff 0 0), linear-gradient(#fff 0 0);
	-webkit-mask-clip: padding-box, border-box;
	-webkit-mask-composite: destination-out;
}

.curriculum__item-title {
	background-color: #0096A4;
	border-radius: 10px 10px 0 0;
	color: #FFFFFF;
	font-size: 31px;
	letter-spacing: -1.24px;
	line-height: 70px;
	text-align: center;
}

.curriculum__item-lists {
	padding-left: 81px;
	padding-top: 31px;
}

.curriculum__item-list {
	font-size: 24px;
	letter-spacing: -0.96px;
	line-height: 1.6;
	position: relative;
}

.curriculum__item-list::before {
	background-image: url(../../assets/img/check.svg);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 24px;
	left: -31px;
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 25px;
}

.curriculum__item-text {
	font-size: 22px;
	letter-spacing: -0.88px;
	padding: 92px 48px 35px;
}

.curriculum__item-accent {
	color: #ef7f07;
}

.curriculum__item-img {
	position: absolute;
}

.curriculum__item-img.--1 {
	max-width: 362px; /* 各講義の画像 */
	right: 22px;
	top: 103px;
}

.curriculum__item-img.--2 {
	max-width: 266px;
	right: 51px;
	top: 91px;
}

.curriculum__item-img.--3 {
	max-width: 308px;
	right: 42px;
	top: 80px;
}

.curriculum__item-img.--4 {
	max-width: 339px;
	right: 36px;
	top: 54px;
}

.curriculum__item-img.--5 {
	max-width: 336px;
	right: 31px;
	top: 90px;
}

.curriculum__arrow-wrapper {
	left: 50%;
	position: absolute;
	translate: -50%;
}

.curriculum__arrow-wrapper.--1,
.curriculum__arrow-wrapper.--2,
.curriculum__arrow-wrapper.--4,
.curriculum__arrow-wrapper.--5 {
	top: 318px;
}

.curriculum__arrow-wrapper.--3 {
	top: 279px;
}

.curriculum__arrow-wrapper.--lower {
	top: -61px; /* 下の囲み枠内 */
}

.curriculum__bottom-arrow {
	background-color: #383839;
	height: 42px;
	position: relative; /* 下向きの矢印 */
	width: 2px;
}

.curriculum__bottom-arrow.--lower {
	--arrow-distance: 13px; /* アニメーションの移動距離（PC) */
	animation: curriculumArrowUpDown 3s ease-in-out infinite;
}

.curriculum__bottom-arrow::after {
	background-color: #383839;
	bottom: 2px;
	content: "";
	height: 13px;
	left: 0;
	position: absolute;
	transform: rotate(30deg);
	transform-origin: bottom left; /* 回転の中心を左上に */
	width: 2px;
}

.curriculum__upper-annotation {
	font-size: 17px;
	letter-spacing: -0.68px;
	line-height: 1.23529;
	margin-top: 8px;
	text-align: center;
}

.curriculum__more-wrapper {
	bottom: -33px;
	left: 50%;
	position: absolute; /* さらに */
	translate: -50%;
}

.curriculum__more-triangle {
	border-bottom: 0;
	border-left: 90px solid transparent;
	border-right: 90px solid transparent;
	border-style: solid;
	border-top: 58px solid #0096A4;
	height: 0;
	position: responsive;
	width: 0;
}

.curriculum__more-text {
	color: #FFFFFF;
	font-size: 24px;
	left: 50%;
	letter-spacing: -0.96px;
	line-height: 1;
	position: absolute;
	top: 10px;
	translate: -50%;
}

.curriculum__lower {
	background: url(/assets/img/curriculum_lower_bg.png) center center/cover no-repeat;
	padding-block: 74px 70px;
}

.curriculum__lower-box {
	border: 3px solid #0096A4;
	margin-inline: auto;
	max-width: 1000px;
	padding-bottom: 31px;
	position: relative;
}

.curriculum__lower-box-head {
	background-color: #0096A4;
	padding-block: 20px 8px;
	position: relative;
}

.curriculum__lower-box-head::after {
	background-color: #0096A4;
	content: "";
	height: 40px;
	position: absolute;
	width: 100%;
	-webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
	bottom: -39px;
	clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}

.curriculum__lower-title {
	color: #FAE25B;
	font-size: 43px;
	letter-spacing: -1.72px;
	line-height: 1.2;
	text-align: center;
}

.curriculum__lower-text1 {
	color: #FFFFFF;
	font-size: 24px;
	letter-spacing: -0.95px;
	line-height: 1.2;
	margin-top: 12px;
	text-align: center; /* 生徒1人：講師1人～ */
}

.curriculum__lower-text2-wrapper {
	margin-top: 72px;
	text-align: center;
}

.curriculum__lower-text2 {
	font-size: 24px; /* オレンジの下線がついたテキスト */
	letter-spacing: -0.95px;
	text-decoration-color: #ef7f07;
	text-decoration-line: underline;
	text-decoration-thickness: 10px;
	text-underline-offset: -5px;
	-webkit-text-decoration-skip-ink: none;
	margin-bottom: 15px;
	text-decoration-skip-ink: none;
}

.curriculum__lower-text2:last-of-type {
	margin-bottom: 0;
}

.curriculum__inner-container {
	margin-inline: auto;
	max-width: 511px;
	position: relative;
}

.curriculum__lower-braces-wrapper {
	left: -65px;
	position: absolute;
	top: -5px;
}

.curriculum__lower-braces-inner {
	position: relative;
	width: 138px;
}

.curriculum__lower-braces-text {
	bottom: 19px;
	font-size: 31px;
	left: 6px;
	letter-spacing: -1.24px;
	position: absolute; /* あなたの */
	transform: rotate(-6deg);
	white-space: nowrap;
}

.curriculum__lower-braces {
	bottom: 0;
	height: 44px;
	left: 50%;
	position: absolute;
	translate: -50%;
	width: 138px;
}

.curriculum__lower-items {
	display: flex; /* 方向性・キャリア・道筋 */
	gap: 20px;
	margin-top: 97px;
}

.curriculum__lower-item {
	background-color: #1D284F;
	border-radius: 10px;
	color: #FAE25B;
	font-size: 34px;
	height: 100px;
	letter-spacing: -1.36px;
	line-height: 100px;
	text-align: center;
	width: 157px;
}

.curriculum__lower-item.line-2 {
	line-height: 1.15; /* 2行 道筋 */
	padding-top: 2px;
}

.curriculum__text-small {
	font-size: 20px; /* 目標達成までの */
	letter-spacing: -1.4px;
	line-height: 1.4;
}

.curriculum__lower-text3 {
	font-size: 31px;
	letter-spacing: -1.24px;
	margin-top: 20px;
	text-align: center; /* を一緒に設計します */
}

.curriculum__lower-img {
	bottom: -24px;
	height: auto;
	position: absolute;
	right: 21px;
	width: 78px;
}

.curriculum__lamp {
	bottom: 10px;
	display: none;
	height: auto;
	left: 50%;
	position: absolute;
	translate: -50%;
	width: 234px;
}

.webp .curriculum__lower {
	background-image: url(../../assets/img/curriculum_lower_bg.webp); /* webp対応ブラウザ用の画像設定 */
}

/*===================================================================
# CTA
===================================================================*/

.cta {
	background: #0096A4;
	padding-block: 45px 58px;
}

.cta.--3 {
	padding-block: 45px 20px;
}

.cta__inner {
	margin-inline: auto;
	max-width: 600px;
}

.cta__title {
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute; /* 非表示（HTMLのセマンティック的な処置） */
	width: 1px;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

.cta__micro-copy-wrapper {
	text-align: center;
}

.cta__micro-copy {
	animation: microCopyScale 12s ease-in-out infinite;
	color: #FFFFFF;
	display: inline-block;
	font-size: 32px; /* cta-1のマイクロコピーがベース */
	letter-spacing: -1.6px;
	line-height: 1.1875;
	margin-bottom: 18px;
	position: relative;
	text-align: center;
	transform: scale(1);
}

.cta__micro-copy.--fv {
	font-size: 34px;
	letter-spacing: 0px;
	line-height: 1.1765;
	margin-bottom: 17px;
}

.cta__micro-copy.--fv::before {
	left: -25px;
}

.cta__micro-copy.--fv::after {
	right: -25px;
}

.cta__micro-copy::before,
.cta__micro-copy::after {
	background-image: url(../../assets/img/micro_copy_left.svg);
	background-repeat: no-repeat;
	background-size: contain;
	bottom: 2px;
	content: "";
	height: 28px;
	position: absolute;
	width: 16px;
}

.cta__micro-copy::before {
	left: -23px;
}

.cta__micro-copy::after {
	right: -7px;
	transform: scaleX(-1);
}

.cta__micro-copy.--2,
.cta__micro-copy.--3 { /* cta-2と3セクションのマイクロコピー 右の装飾 */
}

.cta__micro-copy.--2::after,
.cta__micro-copy.--3::after {
	right: -23px;
}

.cta__copy-right {
	color: #FFFFFF;
	display: block;
	font-size: 14px;
	margin-top: 40px;
	text-align: center;
}

/*===================================================================
# POINT
===================================================================*/

.point {
	background: #EAFEFE;
	overflow: hidden;
	padding-block: 147px 70px;
}

.point__items {
	margin: 120px auto 0;
	max-width: 860px;
}

.point__item {
	background: #fff;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.1607843137);
	margin-bottom: 90px;
	padding: 79px 50px 33px;
	position: relative;
}

.point__item:last-of-type {
	margin-bottom: 0;
}

.point__num-wrapper {
	align-content: center;
	background-color: #0096A4;
	border-radius: 50%;
	display: flex;
	flex-direction: column;
	height: 100px;
	justify-content: center;
	left: 50%;
	padding-top: 2px;
	position: absolute;
	text-align: center;
	top: -50px;
	translate: -50%;
	width: 100px;
}

.point__num {
	color: #FFFFFF;
	font-size: 51px;
	letter-spacing: -2.04px;
	line-height: 0.9;
}

.point__num-small {
	color: #FFFFFF;
	font-size: 20px;
	letter-spacing: -0.82px;
	line-height: 1;
}

.point__title {
	font-size: 30px;
	letter-spacing: -1.24px;
	line-height: 1.3870967742;
	text-align: center;
}

.point__title--accent {
	color: #0096A4;
}

.point__img {
	margin: 24px auto 0;
	max-width: 417px;
}

.point__text {
	font-size: 24px;
	letter-spacing: -0.96px;
	margin-top: 23px;
}

.point__text--accent {
	color: #ef7f07;
}

/*===================================================================
# PROFILE
===================================================================*/

.profile {
	background: url(../../assets/img/profile_bg.png) center center/cover no-repeat;
	border: 10px solid #0096A4;
	padding-block: 146px 66px;
}

.profile__inner-sp { /* sp時 ボーターの10pxを考慮した余白設定 */
}

.profile__inner {
	margin-inline: auto;
	max-width: 860px;
}

.profile__img {
	margin-inline: auto;
	margin-top: 62px;
	max-width: 675px;
}

.profile__text1-wrapper {
	margin-top: 41px;
}

.profile__text1 {
	font-size: 24px; /* こんにちは！～ */
	letter-spacing: -0.96px;
	margin-bottom: 29px;
}

.profile__text1:last-of-type {
	margin-bottom: 0;
}

.profile__text-accent {
	color: #ef7f07;
}

.profile__text2-wrapper {
	align-items: center;
	display: flex;
	flex-direction: column;
	gap: 20px;
	margin-top: 45px;
}

.profile__text2 {
	align-items: center;
	background-color: #0096A4;
	color: #FAE25B;
	display: flex;
	font-size: 34px; /* そんな時～ */
	height: 59px;
	justify-content: center;
	letter-spacing: -1.36px;
}

.profile__text2.--1 {
	width: 575px;
}

.profile__text2.--2 {
	width: 463px;
}

.profile__lists {
	margin: 50px auto 0;
	max-width: 860px;
	padding-left: 48px;
}

.profile__list {
	font-size: 24px;
	letter-spacing: -0.96px;
	margin-bottom: 27px;
	position: relative;
	white-space: nowrap;
}

.profile__list:last-of-type {
	margin-bottom: 0;
}

.profile__list::before {
	background-image: url(../../assets/img/check.svg);
	background-repeat: no-repeat;
	background-size: contain;
	content: "";
	height: 24px;
	left: -48px;
	position: absolute;
	top: 5px;
	width: 25px;
}

.profile__text3 {
	align-items: center;
	background-color: #0096A4;
	border-radius: 50%;
	color: #FFFFFF;
	display: flex;
	font-size: 24px; /* さらに */
	height: 102px;
	justify-content: center;
	letter-spacing: -0.96px;
	margin: 46px auto 0;
	width: 102px;
}

.profile__text4-wrapper {
	margin-top: 40px;
	text-align: center;
}

.profile__text4 {
	border-bottom: 5px solid #EF7F07;
	color: #ef7f07;
	display: inline-block;
	font-size: 32px; /* 企業で「案件獲得講座」～ */
	letter-spacing: -1.28px;
	padding-bottom: 2px;
}

.profile__text5 {
	font-size: 27px; /* をいただくまでになりました */
	letter-spacing: -1.08px;
	margin-top: 32px;
	text-align: center;
}

.profile__text6 {
	font-size: 24px; /* 今では継続して～ */
	letter-spacing: -0.96px;
	margin-top: 25px;
	text-align: center;
}

.profile__text7-wrapper {
	margin-top: 38px;
	text-align: center;
}

.profile__text7 {
	color: #0096A4;
	display: inline-block;
	font-size: 34px; /* 実際に結果を出しているプロ～ */
	letter-spacing: -1.36px;
	line-height: 1.17647;
	padding-bottom: 18px;
	position: relative;
	text-align: center;
}

.profile__text7::after {
	border-bottom: 5px dotted #0096A4;
	bottom: 0;
	content: "";
	left: 2%; /* カギ括弧の分だけ長さを調整 */
	position: absolute;
	right: 2%;
}

.profile__text7--sp::after { /* sp 2行目 ドット罫線の長さ */
}

.profile__text8 {
	font-size: 24px; /* ということでした */
	letter-spacing: -0.96px;
	margin-top: 42px;
	text-align: center;
}

.profile__text9-wrapper {
	margin-top: 37px;
}

.profile__text9 {
	font-size: 24px; /* 低単価ライターから脱出～ */
	letter-spacing: -0.96px;
	margin-bottom: 26px;
}

.profile__text9:last-of-type {
	margin-bottom: 0;
}

.profile__text10 {
	font-size: 24px; /* YouTube台本を学び、 */
	letter-spacing: -0.96px;
	margin-top: 38px;
	text-align: center;
}

.profile__text11-wrapper {
	display: flex;
	justify-content: center;
	margin-top: 22px;
}

.profile__text11 {
	align-items: center;
	background-color: #0096A4;
	color: #FAE25B;
	display: flex;
	font-size: 32px; /* 高単価ライターになるための道のり */
	height: 56px;
	justify-content: center;
	letter-spacing: -1.28px;
	width: 524px;
}

.profile__text12 {
	font-size: 24px; /* を私と一緒に設計していきましょう！ */
	letter-spacing: -0.96px;
	margin-top: 23px;
	text-align: center;
}

.webp .profile {
	background-image: url(../../assets/img/profile_bg.webp); /* webp対応ブラウザ用の画像設定 */
}

/*===================================================================
# PRICE
===================================================================*/

.price {
	background-color: #EAFEFE;
	padding-block: 142px 65px;
}

.price__items {
	display: flex;
	justify-content: space-between;
	margin-inline: auto;
	margin-top: 59px;
	max-width: 753px;
}

.price__item {
	width: 323px;
}

.price__separator {
	display: none;
}

.price__item-course-wrapper {
	text-align: center;
}

.price__item-course {
	align-items: center;
	background-color: #0096A4;
	color: #fff;
	display: inline-flex;
	font-size: 34px;
	height: 48px;
	justify-content: center;
	letter-spacing: -1.36px;
	text-align: center;
	width: 208px;
}

.price__item-price {
	color: #ef7f07;
	font-size: 30px;
	margin-top: 4px;
	text-align: center;
}

.price__item-price-title {
	font-size: 32px;
	letter-spacing: -1.2px;
	margin-right: 14px;
}

.price__item-tax {
	font-size: 20px;
	letter-spacing: -0.8px;
	margin-left: -18px;
}

.price__item-list {
	font-size: 24px;
	letter-spacing: -0.96px;
}

.price__item-list--accent {
	color: #ef7f07;
}

.price__anotation {
	font-size: 24px;
	letter-spacing: -0.88px;
	margin-top: 35px;
	text-align: center;
}

/*===================================================================
# RECOMMEND
===================================================================*/

.recommend {
	background: #FEFFF1;
	padding-block: 147px 62px;
}

.recommend__img {
	margin: 111px auto 0;
	max-width: 569px;
}

.recommend__text-wrapper {
	margin: 40px auto 0;
	max-width: 860px;
}

.recommend__text {
	font-size: 24px;
	letter-spacing: -0.96px;
	margin-bottom: 14px;
}

.recommend__text:last-of-type {
	margin-bottom: 0;
}

.recommend__text--accent {
	color: #ef7f07;
}

/*===================================================================
# FAQ
===================================================================*/

.faq {
	background: url(/assets/img/faq_bg.png) center center/cover no-repeat;
	padding-block: 147px 65px;
}

.faq__items {
	margin-inline: auto;
	margin-top: 64px;
	max-width: 860px;
}

.faq__item {
	margin-bottom: 36px;
}

.faq__item:last-of-type {
	margin-bottom: 0;
}

.faq__question {
	align-items: center;
	background-color: #fff;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.29);
	display: flex;
	font-size: 27px;
	height: 55px;
	letter-spacing: -1.08px;
	max-width: 860px;
	padding-left: 40px;
}

.faq__symbol {
	font-family: "oswald"; /* q. */
	font-size: 34px;
	letter-spacing: 0px;
	line-height: 1.1176;
	margin-bottom: 2px;
	margin-right: 8px;
}

.faq__answer {
	font-size: 24px;
	letter-spacing: -0.96px;
	margin-top: 22px;
}

.webp .faq {
	background-image: url(../../assets/img/faq_bg.webp); /* webp対応ブラウザ用の画像設定 */
}

/*===================================================================
# TARGET2
===================================================================*/

.target2__cross-inner {
	background-color: #E2E3E3; /* オススメしませんパート */
	padding-block: 147px 51px;
}

.target2__check-inner {
	background-color: #FEFFF1; /* オススメですパート */
	padding-block: 39px 45px;
}

.target2__upper-title {
	font-size: 34px;
	letter-spacing: -1.36px;
	margin-top: 51px;
	text-align: center; /* こんな方にはオススメ～ 共通 */
}

.target2__upper-title.--check {
	margin-top: 0; /* オススメです */
}

.target2__upper-container {
	margin-inline: auto;
	max-width: 600px;
	position: relative;
}

.target2__upper-lists {
	margin-top: 25px;
}

.target2__upper-list {
	font-size: 24px;
	letter-spacing: -0.96px;
	margin-bottom: 15px;
	padding-left: 46px;
	position: relative;
}

.target2__upper-list:last-of-type {
	margin-bottom: 0;
}

.target2__upper-list::before {
	background-image: url(../../assets/img/target2_cross.png);
	background-repeat: no-repeat;
	background-size: contain;
	content: ""; /* バツマーク */
	height: 26px;
	left: 0px;
	position: absolute;
	top: 6px;
	width: 26px;
}

.target2__upper-list.--check { /* マルマーク */
}

.target2__upper-list.--check::before {
	background-image: url(../../assets/img/target2_check.png);
}

.target2__upper-img {
	bottom: -52px;
	height: 267px;
	position: absolute;
	right: -5px;
	width: 194px; /* 札を持っている女性画像 */
	z-index: 0;
}

.target2__upper-img.--check {
	bottom: -46px; /* マルの札を持っている画像の位置 */
}

.target2__triangle {
	border-bottom: 0;
	border-left: 70px solid transparent;
	border-right: 70px solid transparent;
	border-style: solid;
	border-top: 43px solid #ef7f07;
	bottom: -73px;
	height: 0;
	left: 50%;
	position: absolute; /* オレンジの三角マーク */
	translate: -50%;
	width: 0;
}

.target2__arrow {
	animation: target2ArrowUpDown 3s ease-in-out infinite;
	background-image: url(../../assets/img/target2_arrow.png);
	background-repeat: no-repeat;
	background-size: contain;
	bottom: -57px;
	height: 27px;
	left: 50%;
	position: absolute; /* 下向きの不等号が２つ組み合わされている矢印 */
	translate: -50%;
	width: 30px;
}

.target2__lower {
	background: url(../../assets/img/target2_lower_bg.png) center center/cover no-repeat;
	padding-block: 44px 68px;
}

.target2__text1-wrap {
	margin-inline: auto;
	max-width: 860px;
}

.target2__text1 {
	font-size: 24px; /* 私も、副業時代は～ */
	letter-spacing: -0.96px;
	margin-bottom: 27px;
}

.target2__text1:last-of-type {
	margin-bottom: 0;
}

.target2__text1.--nowrap {
	white-space: nowrap;
}

.target2__text-accent {
	color: #ef7f07;
}

.target2__text2 {
	font-size: 27px;
	letter-spacing: -1.09px;
	margin-top: 41px;
	text-align: center; /* ぜひ、あなたも */
}

.target2__text3-wrapper {
	display: flex;
	justify-content: center;
	margin-top: 30px;
}

.target2__text3 {
	align-content: center;
	background-color: #0096A4;
	color: #FAE25B;
	display: flex;
	font-size: 34px; /* クライアントから喜ばれ～ */
	height: 60px;
	justify-content: center;
	letter-spacing: -1.36px;
	width: 880px;
}

.target2__text3--sp {
	display: none; /* sp時に表示される2行目 */
}

.target2__text4 {
	font-size: 27px;
	letter-spacing: -1.09px;
	margin-top: 32px;
	text-align: center; /* を目指しましょう！ */
}

.target2__lower-img {
	height: auto;
	margin: 45px auto 0;
	width: 570px;
}

.webp .target2__lower {
	background-image: url(../../assets/img/target2_lower_bg.webp); /* webp対応ブラウザ用の画像設定 */
}

/*===================================================================
# 改行のレスポンシブ
===================================================================*/

.br__only-pc {
	display: block; /* PCのみ改行 */
}

.br__pc-tab {
	display: block; /* PCとTABで改行 */
}

.br__tab-sp {
	display: none; /* TABとSPで改行 */
}

.br__only-sp {
	display: none; /* SPのみ改行 */
}

/*===================================================================
# 表示のレスポンシブ
===================================================================*/

.show__only-pc {
	display: block; /* PCのみ表示 */
}

.show__pc-tab {
	display: block; /* PCとTABで表示 */
}

.show__tab-sp {
	display: none; /* TABとSPで表示 */
}

.show__only-sp {
	display: none; /* SPのみ表示 */
}

.show__pc-tab--inline {
	display: inline; /* PCとTABでinline(SPで非表示） */
}

@media (any-hover: hover) {

.cta__btn:hover {
	color: #ef7f07;
	transform: translateY(8px);
}

.cta__btn:hover::before {
	bottom: 0; /* 影を消す */
}

.cta__btn:hover::after {
	background-color: #fff;
	border: 1px solid #ef7f07;
}

.cta__btn:hover .cta__btn-arrow path {
	fill: #ef7f07; /* SVGの色を変更 */
}

.cta__btn--header:hover {
	background-color: #fff;
	border: 1px solid #ef7f07;
	color: #ef7f07;
}

.cta__btn--header:hover .cta__btn-arrow--header path {
	fill: #ef7f07; /* SVGの色を変更 */
}

}

@media screen and (min-width: 768px) and (max-width: 1239px) {

.to-top {
	bottom: 42px;
	right: 40.5px;
}

.fv__title-upper {
	align-items: center;
	flex-direction: column;
	gap: 30px;
}

.fv__title-lower {
	margin-top: 70px;
}

.fv__img {
	margin-inline: auto;
	margin-top: -57px;
	position: static;
	right: auto;
}

.fv__item {
	font-size: clamp(2rem, 1.39rem + 1.27vw, 2.375rem);
}

.concern__text1 {
	font-size: clamp(1.938rem, 1.632rem + 0.64vw, 2.125rem);
}

.concern__text2 {
	font-size: 21px;
}

.concern__text2.--1 {
	max-width: 500px;
}

.concern__text2.--2 {
	max-width: 530px;
}

.concern__upper-img {
	right: -15px;
	top: -10px;
	width: 250px;
}

.concern__title {
	font-size: 46px;
}

.concern__text4 {
	font-size: clamp(1.813rem, 1.609rem + 0.42vw, 1.938rem);
}

.concern__lower-img {
	bottom: 60px;
	right: 0;
	width: 180px;
}

.target1__inner {
	margin-inline: 40px;
}

.target1__upper-list {
	font-size: clamp(1.125rem, 0.515rem + 1.27vw, 1.5rem);
}

.target1__text1 {
	font-size: clamp(1.438rem, 0.624rem + 1.69vw, 1.938rem);
}

.target1__text3 {
	max-width: 560px;
}

.target1__img {
	bottom: -127px;
	max-width: 400px;
	right: -48px;
}

.reason__box-wrapper {
	left: -40px;
	top: -100px;
}

.reason__pencil {
	max-width: 250px;
	right: -29px;
	top: -100px;
}

.reason__lower-text1 {
	font-size: clamp(1.375rem, 0.663rem + 1.48vw, 1.813rem);
}

.reason__lower-text3 {
	font-size: clamp(1.375rem, 0.663rem + 1.48vw, 1.813rem);
}

.curriculum__upper {
	padding-block: 105px 72px;
}

.curriculum__items {
	margin-top: 80px;
}

.curriculum__item-img.--1 {
	max-width: 265px;
	right: 5px;
	top: 65px;
}

.curriculum__item-img.--3 {
	max-width: 250px;
	right: 5px;
}

.curriculum__item-img.--4 {
	right: 15px;
}

.curriculum__item-img.--5 {
	max-width: 300px;
	right: 5px;
}

.curriculum__lower-text1 {
	font-size: clamp(1.25rem, 0.843rem + 0.85vw, 1.5rem);
}

.profile__list {
	white-space: normal;
}

.profile__text7 {
	font-size: 30px;
}

.target2__text1.--nowrap {
	white-space: normal;
}

.target2__text3 {
	font-size: clamp(1.813rem, 1.304rem + 1.06vw, 2.125rem);
}

.br__only-pc {
	display: none;
}

.br__pc-tab {
	display: block;
}

.br__tab-sp {
	display: block;
}

.br__only-sp {
	display: none;
}

.show__only-pc {
	display: none;
}

.show__pc-tab {
	display: block;
}

.show__tab-sp {
	display: block;
}

.show__only-sp {
	display: none;
}

.show__pc-tab--inline {
	display: inline;
}

}

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

.cta__btn {
	font-size: 21px;
	height: 58px;
	letter-spacing: -0.84px;
	line-height: 58px;
	margin-inline: auto;
	padding-bottom: 2px;
	padding-left: 34px;
	width: 335px;
}

.cta__btn::before {
	bottom: -5px;
}

.cta__btn.--fv {
	font-size: 23px;
	padding-left: 56px;
}

.cta__btn.--2,
.cta__btn.--3 {
	font-size: 20px;
	letter-spacing: -0.8px;
	padding-left: 33px;
}

.cta__btn-arrow {
	height: 13px;
	right: 19px;
	width: 11px;
}

.cta__btn-arrow.--fv {
	right: 27px;
}

.cta__btn-arrow.--2,
.cta__btn-arrow.--3 {
	right: 19px;
}

.cta__btn--header {
	font-size: 21px;
	height: 60px;
	padding-bottom: 1px;
	padding-left: 35px;
	width: 100%;
}

.cta__btn-arrow--header {
	right: 35px;
}

.inner {
	max-width: 375px;
}

.section__title {
	font-size: 26px;
	letter-spacing: -1.04px;
}

.section__title::before {
	height: 45px;
	top: -41px;
	width: 115px;
}

.section__title::after {
	bottom: -12px;
	width: 60px;
}

.fv {
	background-image: url(../../assets/img/fv_bg_sp.png);
	margin-top: 80px;
	padding-block: 3px 31px;
}

.fv__title {
	font-size: 52px;
	letter-spacing: 0.02em;
	line-height: 1.1923;
}

.fv__title-en {
	font-size: 64px;
	line-height: 1.2031;
}

.fv__title-upper {
	align-items: center;
	flex-direction: column;
}

.fv__instructor {
	font-size: 18px;
	margin-top: 10px;
}

.fv__img {
	margin-inline: auto;
	margin-top: -57px;
	position: static;
	right: auto;
	width: 335px;
}

.fv__items {
	gap: 7.5px;
	margin-top: 14px;
	max-width: 375px;
}

.fv__item {
	font-size: 14px;
	height: 72px;
	line-height: 1.2143;
	min-height: auto;
	width: 10666.6666666667%;
}

.fv__btn-wrapper {
	margin-top: 27px;
}

.webp .fv {
	background-image: url(../../assets/img/fv_bg_sp.webp);
}

.concern__upper {
	padding-block: 34px 51px;
}

.concern__upper::after {
	bottom: -56px;
	height: 57px;
}

.concern__tex1-wrapper {
	flex-wrap: wrap;
	margin-inline: auto;
	max-width: 220px;
}

.concern__text1 {
	font-size: 20px;
	letter-spacing: -0.8px;
	line-height: 1.4;
}

.concern__text1-img {
	margin-top: -33px;
	width: 104px;
}

.concern__text2-wrapper {
	gap: 10px;
	margin-top: 0;
}

.concern__text2 {
	font-size: 14px;
	letter-spacing: -0.56px;
}

.concern__text2.--1 {
	height: 43px;
	width: 100%;
}

.concern__text2.--2 {
	height: 64px;
	width: 100%;
}

.concern__text2.--3 {
	height: 64px;
	width: 100%;
}

.concern__upper-img {
	display: none;
}

.concern__upper-img--sp {
	display: block;
}

.concern__text3 {
	bottom: -11px;
	font-size: 16px;
	left: 50%;
	letter-spacing: -0.64px;
	position: absolute;
	translate: -50%;
	white-space: nowrap;
	z-index: 1;
}

.concern__lower {
	padding-block: 78px 42px;
}

.concern__title {
	font-size: 28px;
	letter-spacing: -1.12px;
	line-height: 1.3571;
}

.concern__title::before,
.concern__title::after {
	background-image: url(../../assets/img/concern_decoration_sp.png);
	bottom: 3px;
	height: 76px;
	width: 45px;
}

.concern__title::before {
	left: -1px;
}

.concern__title::after {
	right: 1px;
}

.concern__text4 {
	font-size: 18px;
	letter-spacing: -0.72px;
	margin-top: 18px;
}

.concern__text5 {
	font-size: 23px;
	letter-spacing: -0.92px;
	line-height: 1.0435;
	margin-top: 14px;
}

.concern__text6 {
	font-size: 18px;
	letter-spacing: -0.72px;
	line-height: 1.3333;
	margin-top: 15px;
}

.concern__text7 {
	font-size: 18px;
	letter-spacing: -0.72px;
	margin-top: 18px;
}

.concern__text-decoration {
	font-size: 22px;
	height: 33px;
	letter-spacing: -0.88px;
}

.concern__text-decoration.--skill {
	margin-right: 9px;
	width: 74px;
}

.concern__text-decoration.--knowledge {
	margin-inline: 5px 11px;
	width: 56px;
}

.concern__lower-img {
	height: auto;
	margin: 6px auto 0;
	position: static;
	width: 235px;
}

.target1__upper {
	background-image: url(../../assets/img/target1_upper_bg_sp.png);
	overflow: hidden;
	padding-block: 82px 36px;
}

.target1__inner {
	padding-inline: 10px;
}

.target1__upper-lists {
	margin-top: 38px;
	max-width: 335px;
}

.target1__upper-list {
	font-size: 14px;
	letter-spacing: -0.56px;
	padding-bottom: 10px;
	padding-left: 25px;
}

.target1__upper-list::before {
	height: 14px;
	left: 5px;
	width: 15px;
}

.target1__arrow {
	margin-top: 7px;
	width: 30px;
	--arrow-distance: 10px; /* アニメーションの移動距離（SP) */
}

.target1__text1 {
	font-size: 18px;
	letter-spacing: -0.72px;
	line-height: 1.4444;
	margin-top: 13px;
	text-decoration-thickness: 8px;
	text-underline-offset: -4px;
}

.target1__text2-wrapper {
	margin-top: 20px;
}

.target1__text2 {
	font-size: 18px;
	height: 46px;
	letter-spacing: -0.72px;
	width: 324px;
}

.target1__text3 {
	font-size: 16px;
	letter-spacing: -0.64px;
	line-height: 1.5;
	margin-left: 23px;
	margin-top: 14px;
}

.target1__img {
	bottom: -70px;
	right: -77px;
	width: 353px;
}

.target1__lower {
	padding-bottom: 40px;
}

.target1__lower-title {
	font-size: 32px;
	letter-spacing: -1.28px;
	text-align: center;
}

.target1__lower-triangle {
	border-left: 6.5px solid transparent;
	border-right: 6.5px solid transparent;
	border-top: 11px solid #0096A4;
	bottom: -11px;
}

.target1__lower-lists {
	margin-top: 30px;
}

.target1__lower-list {
	gap: 3px;
	margin-bottom: 15px;
	max-width: 305px;
	padding-bottom: 11px;
	padding-left: 10px;
	padding-top: 11px;
}

.target1__icon {
	height: 41px;
	width: 41px;
}

.target1__text4 {
	font-size: 14px;
	letter-spacing: -0.56px;
}

.webp .target1__upper {
	background-image: url(../../assets/img/target1_upper_bg_sp.webp);
}

.reason {
	padding-block: 74px 38px;
}

.reason__box-wrapper {
	left: 6px;
	top: -41px;
}

.reason__box-img {
	height: auto;
	width: 88px;
}

.reason__box-text {
	font-size: 20px;
	left: 16px;
	letter-spacing: -0.8px;
	line-height: 1.2;
	top: 11px;
}

.reason__upper {
	margin-block: 38px 25px;
}

.reason__upper-text1,
.reason__upper-text2 {
	font-size: 14px;
	letter-spacing: -0.56px;
}

.reason__upper-text2 {
	margin-top: 17px;
}

.reason__pencil {
	height: auto;
	right: -7px;
	top: -106px;
	width: 150px;
}

.reason__middle {
	padding-bottom: 5px;
	padding-top: 22px;
}

.reason__middle::after {
	bottom: -47px;
	height: 48px;
}

.reason__middle-text1 {
	font-size: 24px;
	letter-spacing: -0.96px;
	line-height: 1.5;
}

.reason__middle-text2 {
	font-size: 16px;
	letter-spacing: -0.64px;
	margin-top: 13px;
}

.reason__lower-text1 {
	font-size: 17px;
	height: 36px;
	letter-spacing: -0.68px;
	margin: 79px auto 15px;
	width: 329px;
}

.reason__lower-text1--sp {
	display: flex;
	margin: 0 auto 25px;
	width: 251px;
}

.reason__lower-text2 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-top: 20px;
}

.reason__lower-text3 {
	font-size: 17px;
	line-height: 1.4706;
	margin-top: 15px;
	text-decoration-thickness: 10px;
	text-underline-offset: -5px;
}

.reason__img {
	max-width: 245px;
}

.curriculum__upper {
	padding-block: 82px 40px;
}

.curriculum__items {
	margin-top: 63px;
}

.curriculum__item {
	margin-bottom: 39px;
}

.curriculum__item-num-wrapper {
	left: 10px;
	top: -23px;
}

.curriculum__item-num {
	font-size: 18px;
	height: 33px;
	letter-spacing: -0.72px;
	transform: rotate(-4deg);
	width: 80px;
}

.curriculum__item-title {
	font-size: 18px;
	letter-spacing: -0.72px;
	line-height: 56px;
}

.curriculum__item-lists {
	padding-left: 32px;
	padding-top: 14px;
}

.curriculum__item-list {
	font-size: 14px;
	letter-spacing: -0.56px;
	line-height: 1.8;
}

.curriculum__item-list::before {
	height: 14px;
	left: -21px;
	width: 15px;
}

.curriculum__item-text {
	font-size: 14px;
	letter-spacing: -0.56px;
	padding: 36px 19px 20px;
}

.curriculum__item-img.--1 {
	right: -1px;
	top: 36px;
	width: 141px;
}

.curriculum__item-img.--2 {
	right: 9px;
	top: 95px;
	width: 127px;
}

.curriculum__item-img.--3 {
	right: 18px;
	top: 46px;
	width: 123px;
}

.curriculum__item-img.--4 {
	right: 6px;
	top: 110px;
	width: 131px;
}

.curriculum__item-img.--5 {
	right: 7px;
	top: 57px;
	width: 122px;
}

.curriculum__arrow-wrapper.--1,
.curriculum__arrow-wrapper.--2,
.curriculum__arrow-wrapper.--4,
.curriculum__arrow-wrapper.--5 {
	top: 203px;
}

.curriculum__arrow-wrapper.--3 {
	top: 177px;
}

.curriculum__arrow-wrapper.--lower {
	top: -36px;
}

.curriculum__bottom-arrow.--lower {
	--arrow-distance: 7px; /* アニメーションの移動距離（SP) */
}

.curriculum__bottom-arrow {
	height: 25px;
}

.curriculum__bottom-arrow::after {
	height: 8px;
}

.curriculum__upper-annotation {
	font-size: 10px;
	letter-spacing: -0.4px;
	margin-top: 4px;
}

.curriculum__more-wrapper {
	bottom: -22px;
}

.curriculum__more-triangle {
	border-left: 56.5px solid transparent;
	border-right: 56.5px solid transparent;
	border-top: 37px solid #0096A4;
}

.curriculum__more-text {
	font-size: 14px;
	letter-spacing: -0.56px;
	top: 5px;
}

.curriculum__lower {
	background-image: url(../../assets/img/curriculum_lower_bg_sp.png);
	padding-block: 40px 40px;
}

.curriculum__lower-box {
	padding-bottom: 26px;
}

.curriculum__lower-box-head {
	padding-block: 15px 10px;
}

.curriculum__lower-box-head::after {
	bottom: -32px;
	height: 33px;
}

.curriculum__lower-title {
	font-size: 25px;
	letter-spacing: -1px;
}

.curriculum__lower-text1 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-inline: auto;
	margin-top: 13px;
	max-width: 250px;
}

.curriculum__lower-text2-wrapper {
	margin-top: 58px;
}

.curriculum__lower-text2 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 13px;
	text-decoration-thickness: 7px;
	text-underline-offset: -3px;
}

.curriculum__lower-braces-wrapper {
	left: -22px;
	top: 1px;
}

.curriculum__lower-braces-text {
	bottom: 9px;
	font-size: 18px;
	left: 32px;
	letter-spacing: -0.72px;
	transform: rotate(-7deg);
}

.curriculum__lower-braces {
	height: 24px;
	width: 76px;
}

.curriculum__lower-items {
	gap: 8px;
	justify-content: center;
	margin-top: 53px;
}

.curriculum__lower-item {
	font-size: 20px;
	height: 67px;
	letter-spacing: -0.8px;
	line-height: 67px;
	width: 98px;
}

.curriculum__lower-item.line-2 {
	padding-top: 6px;
}

.curriculum__text-small {
	font-size: 12px;
	letter-spacing: -0.84px;
}

.curriculum__lower-text3 {
	font-size: 18px;
	letter-spacing: -0.72px;
	margin-left: 44px;
	margin-top: 36px;
	text-align: left;
}

.curriculum__lower-img {
	bottom: -21px;
	right: 41px;
	width: 67px;
}

.curriculum__lamp {
	display: block;
}

.webp .curriculum__lower {
	background-image: url(../../assets/img/curriculum_lower_bg_sp.webp);
}

.cta {
	padding-block: 27px 35px;
}

.cta.--3 {
	padding-block: 27px 15px;
}

.cta__micro-copy {
	font-size: 19px;
	letter-spacing: -0.95px;
	line-height: 1.2;
	margin-bottom: 8px;
}

.cta__micro-copy.--fv {
	font-size: 19px;
	line-height: 1.2053;
	margin-bottom: 10px;
}

.cta__micro-copy.--fv::before {
	left: -15px;
}

.cta__micro-copy.--fv::after {
	right: -15px;
}

.cta__micro-copy::before,
.cta__micro-copy::after {
	height: 18px;
	width: 12px;
}

.cta__micro-copy::before {
	left: -17px;
}

.cta__micro-copy::after {
	right: -10px;
}

.cta__micro-copy.--2::after,
.cta__micro-copy.--3::after {
	right: -15px;
}

.cta__copy-right {
	font-size: 12px;
}

.point {
	padding-block: 82px 40px;
}

.point__items {
	margin-top: 72px;
}

.point__item {
	margin-bottom: 50px;
	padding: 43px 20px 19px;
}

.point__num-wrapper {
	height: 60px;
	top: -30px;
	width: 60px;
}

.point__num {
	font-size: 30px;
	letter-spacing: -1.2px;
}

.point__num-small {
	font-size: 12px;
	letter-spacing: -0.48px;
}

.point__title {
	font-size: 18px;
	letter-spacing: -0.72px;
	line-height: 1.3888888889;
}

.point__img {
	margin-top: 12px;
	max-width: 245px;
}

.point__text {
	font-size: 14px;
	line-height: 1.5;
	margin-top: 12px;
}

.profile {
	background-image: url(../../assets/img/profile_bg_sp.png);
	padding-block: 82px 28px;
}

.profile__inner-sp {
	padding-inline: 10px;
}

.profile__img {
	margin-top: 41px;
}

.profile__text1-wrapper {
	margin-top: 26px;
}

.profile__text1 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 17px;
}

.profile__text2-wrapper {
	gap: 10px;
	margin-top: 27px;
}

.profile__text2 {
	font-size: 20px;
	height: 38px;
	letter-spacing: -0.8px;
}

.profile__text2.--1 {
	width: 335px;
}

.profile__text2.--2 {
	width: 269px;
}

.profile__lists {
	margin-top: 27px;
	max-width: 315px;
	padding-left: 18px;
}

.profile__list {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 13px;
	white-space: normal;
}

.profile__list::before {
	height: 14px;
	left: -18px;
	width: 15px;
}

.profile__text3 {
	font-size: 14px;
	height: 60px;
	letter-spacing: -0.56px;
	margin-top: 10px;
	width: 60px;
}

.profile__text4-wrapper {
	margin-top: 24px;
}

.profile__text4 {
	border-bottom: 3px solid #EF7F07;
	font-size: 19px;
	letter-spacing: -0.76px;
	line-height: 1.3684;
	padding-bottom: 0;
}

.profile__text5 {
	font-size: 16px;
	letter-spacing: -0.64px;
	line-height: 1.625;
	margin-top: 19px;
}

.profile__text6 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-top: 10px;
}

.profile__text7-wrapper {
	margin-top: 14px;
}

.profile__text7 {
	font-size: 20px;
	letter-spacing: -0.8px;
	line-height: 2;
	padding-bottom: 0;
}

.profile__text7::after {
	border-bottom: 3px dotted #0096A4;
	bottom: 3px;
	left: 50%;
	right: 0%;
	translate: -50%;
	width: 232px;
}

.profile__text7--sp::after {
	width: 234px;
}

.profile__text8 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-top: 12px;
}

.profile__text9-wrapper {
	margin-top: 16px;
}

.profile__text9 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 17px;
}

.profile__text10 {
	font-size: 14px;
	letter-spacing: -0.56px;
	line-height: 2.5714;
	margin-top: 14px;
}

.profile__text11-wrapper {
	margin-top: -2px;
}

.profile__text11 {
	font-size: 19px;
	height: 39px;
	letter-spacing: -0.76px;
	line-height: 1.8947;
	width: 311px;
}

.profile__text12 {
	font-size: 14px;
	letter-spacing: -0.56px;
	line-height: 2.5714;
	margin-top: -1px;
}

.webp .profile {
	background-image: url(../../assets/img/profile_bg_sp.webp);
}

.price {
	padding-block: 80px 38px;
}

.price__items {
	flex-direction: column;
	gap: 20px;
	margin-top: 42px;
}

.price__item {
	display: flex;
	gap: 3px;
}

.price__item-right {
	padding-top: 36px;
}

.price__separator {
	border: 1px dashed #0096A4;
	display: block;
}

.price__item-course-wrapper {
	text-align: left;
}

.price__item-course {
	font-size: 20px;
	height: 29px;
	width: 110px;
}

.price__item-price {
	font-size: 18px;
	letter-spacing: -0.72px;
	text-align: left;
	white-space: nowrap;
}

.price__item-price-title {
	font-size: 18px;
	letter-spacing: -0.72px;
}

.price__item-tax {
	font-size: 13px;
	letter-spacing: -0.52px;
	margin-left: -9px;
}

.price__item-list {
	font-size: 12px;
	letter-spacing: -0.48px;
	white-space: nowrap;
}

.price__anotation {
	font-size: 12px;
	letter-spacing: -0.48px;
	margin-top: 21px;
}

.recommend {
	padding-block: 82px 40px;
}

.recommend__img {
	margin-top: 43px;
}

.recommend__text-wrapper {
	margin-top: 27px;
}

.recommend__text {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 18px;
}

.faq {
	background: url(/assets/img/faq_bg_sp.png) center center/cover no-repeat;
	padding-block: 82px 38px;
}

.faq__items {
	margin-top: 43px;
}

.faq__item {
	margin-bottom: 23px;
}

.faq__question {
	font-size: 16px;
	height: 36px;
	letter-spacing: -0.64px;
	padding-left: 11px;
	width: 100%;
}

.faq__symbol {
	font-size: 21px;
	margin-right: 2px;
}

.faq__answer {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-top: 12px;
}

.webp .faq {
	background-image: url(../../assets/img/faq_bg_sp.webp);
}

.target2__cross-inner {
	padding-block: 82px 27px;
}

.target2__check-inner {
	padding-block: 29px 24px;
}

.target2__upper-title {
	font-size: 20px;
	letter-spacing: -0.8px;
	line-height: 1.05;
	margin-top: 40px;
}

.target2__upper-container {
	max-width: 375px;
}

.target2__upper-list {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 12px;
	padding-left: 50px;
}

.target2__upper-list::before {
	height: 15px;
	left: 28px;
	top: 3px;
	width: 15px;
}

.target2__upper-img {
	bottom: -27px;
	height: 154px;
	right: 8px;
	width: 112px;
}

.target2__upper-img.--check {
	bottom: -25px;
}

.target2__triangle {
	border-left: 41.5px solid transparent;
	border-right: 41.5px solid transparent;
	border-top: 25px solid #ef7f07;
	bottom: -41px;
}

.target2__arrow {
	bottom: -37px;
}

.target2__lower {
	background-image: url(../../assets/img/target2_lower_bg_sp.png);
	padding-block: 38px 37px;
}

.target2__text1 {
	font-size: 14px;
	letter-spacing: -0.56px;
	margin-bottom: 17px;
}

.target2__text1.--nowrap {
	white-space: normal;
}

.target2__text2 {
	font-size: 16px;
	letter-spacing: -0.64px;
	margin-top: 18px;
}

.target2__text3-wrapper {
	align-items: center;
	flex-direction: column;
	gap: 10px;
	margin-top: 11px;
}

.target2__text3 {
	font-size: 20px;
	height: 38px;
	letter-spacing: -0.8px;
	line-height: 38px;
	width: 230px;
}

.target2__text3--sp {
	display: flex;
	width: 308px;
}

.target2__text4 {
	font-size: 16px;
	letter-spacing: -0.64px;
	margin-top: 11px;
}

.target2__lower-img {
	margin-top: 23px;
	width: 285px;
}

.webp .target2__lower {
	background-image: url(../../assets/img/target2_lower_bg_sp.webp);
}

.br__only-pc {
	display: none;
}

.br__pc-tab {
	display: none;
}

.br__tab-sp {
	display: block;
}

.br__only-sp {
	display: block;
}

.show__only-pc {
	display: none;
}

.show__pc-tab {
	display: none;
}

.show__tab-sp {
	display: block;
}

.show__only-sp {
	display: block;
}

.show__pc-tab--inline {
	display: none;
}

}

@keyframes shine-move {

0% {
	transform: translateX(-150%); /* 位置を左端から開始 */
}

5% {
	transform: translateX(0); /* 20%の時点で動きが完了 */
}

100% {
	transform: translateX(150%); /* 残りの時間は停止 */
}

}

@keyframes target1ArrowUpDown {

0% {
	transform: translateY(0); /* 初期位置 */
}

/* 矢印が下に動くアニメーション */

50% {
	transform: translateY(var(--arrow-distance)); /* 下に移動（カスタムプロパティを使用） */
}

100% {
	transform: translateY(0); /* 元の位置に戻る */
}

}

@keyframes curriculumArrowUpDown {

0% {
	transform: translateY(0); /* 初期位置 */
}

/* 矢印が下に動くアニメーション */

50% {
	transform: translateY(var(--arrow-distance)); /* 下に移動（カスタムプロパティを使用） */
}

100% {
	transform: translateY(0); /* 元の位置に戻る */
}

}

@keyframes microCopyScale {

/* 開始 */

0% {
	transform: scale(1);
}

/* 10%あたりで最大まで拡大 */

6.66% {
	transform: scale(1.2);
}

/* 20%あたりで一気に小さく */

13.32% {
	transform: scale(0.8);
}

/* 30%あたりで一旦元の大きさに */

20% {
	transform: scale(1);
}

/* ここから細かく動かしてバウンス感 */

23.32% {
	transform: scale(0.95);
}

26.66% {
	transform: scale(1);
}

30% {
	transform: scale(0.98);
}

33.32% {
	transform: scale(1);
}

/* 残りは静止して終了 */

100% {
	transform: scale(1);
}

}

@keyframes target2ArrowUpDown {

0% {
	transform: translateY(0); /* 初期位置 */
}

/* 矢印が下に動くアニメーション */

50% {
	transform: translateY(13px); /* 下に移動 */
}

100% {
	transform: translateY(0); /* 元の位置に戻る */
}

}

@-moz-document url-prefix() {
	/* Firefox のみに適用するスタイル */
		.fv__title-lower {
		 margin-top: 41px;
		}
}