@charset "UTF-8";
/* =========================================================

ページ別スタイル

========================================================= */
/* トップ
--------------------------------------- */
#index_page {
	position: relative;
	font-size: calc(30 / 960 * var(--contents_width));
	background-color: #e2cffc;
	padding: 13.54% 0 17.18%;
}
#index_page:before {
	content: "";
	position: absolute;
	margin-top: 90%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: linear-gradient(to bottom, #e2cffc 0%, #fffdd1 10%, #fffdd1 100%);
}
#index_page .sec_mv {
	z-index: 2;
	position: relative;
	padding: 1.45% 0 0;
	margin: 0;
}
#index_page .sec_mv:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	-webkit-clip-path: polygon(0 19.8%, 100% 0%, 100% 80.2%, 0 100%);
	        clip-path: polygon(0 19.8%, 100% 0%, 100% 80.2%, 0 100%);
	padding: 0 0 113%;
	margin: 0;
	background-color: #272727;
}
#index_page .sec_mv:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	-webkit-clip-path: polygon(0 20.3%, 102.3% 0%, 100% 79.7%, 0 99.5%);
	        clip-path: polygon(0 20.3%, 102.3% 0%, 100% 79.7%, 0 99.5%);
	padding: 0 0 113%;
	margin: 0;
	background-color: #fffed1;
}
#index_page .sec_mv .sec_mv_in {
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 0;
}
#index_page .sec_download {
	z-index: 2;
	position: relative;
	margin: 0;
	padding: 4% 0 0;
}
#index_page .sec_download .sec_download_in {
	margin: 0;
	padding: 0;
}
#index_page .sec_download .p_download_btnlist {
	margin: 2.8% 0 0;
}
#index_page .sec_what_gakuwari {
	z-index: 2;
	position: relative;
	margin: 0;
	padding: 13.12% 0 0;
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_in {
	margin: 0;
	padding: 0;
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_layoutbox01 {
	position: relative;
	margin: 5% 5.2% 0;
	padding: 5.2% 6%;
	background-color: #ffffff;
	border: 2px solid #272727;
	border-radius: calc(50 / 960 * var(--contents_width));
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_layoutbox01 .sec_what_gakuwari_layoutbox01_txt {
	margin: 2.4% 0 0;
	font-size: calc(30 / 960 * var(--contents_width));
	font-weight: 500;
	color: #232323;
	line-height: 2;
	letter-spacing: 0.03em;
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_layoutbox01 .sec_what_gakuwari_layoutbox01_txt .sec_what_gakuwari_layoutbox01_txt_strong {
	z-index: 1;
	font-weight: bold;
	position: relative;
	display: inline-block;
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_layoutbox01 .sec_what_gakuwari_layoutbox01_txt .sec_what_gakuwari_layoutbox01_txt_strong:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: calc(21 / 960 * var(--contents_width));
	background-color: #ffea96;
	border-radius: 100px;
	z-index: -1;
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_layoutbox01 .sec_what_gakuwari_layoutbox01_item > *:first-child {
	margin-top: 0;
}
#index_page .sec_what_gakuwari .sec_what_gakuwari_layoutbox01 .sec_what_gakuwari_layoutbox01_item:nth-of-type(2) {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 4.4%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 36.6%;
	padding: 0 0 2%;
}
#index_page .sec_what_gakuwariapp {
	z-index: 2;
	position: relative;
	margin: 0;
	padding: 8.33% 0 0;
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_in {
	margin: 0;
	padding: 0;
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_layoutbox01 {
	position: relative;
	margin: 5% 5.2% 0;
	padding: 5.2% 6%;
	background-color: #ffffff;
	border: 2px solid #272727;
	border-radius: calc(50 / 960 * var(--contents_width));
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_layoutbox01 .sec_what_gakuwariapp_layoutbox01_txt {
	margin: 2.4% 0 0;
	font-size: calc(30 / 960 * var(--contents_width));
	font-weight: 500;
	color: #232323;
	line-height: 2;
	letter-spacing: 0.03em;
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_layoutbox01 .sec_what_gakuwariapp_layoutbox01_txt .sec_what_gakuwariapp_layoutbox01_txt_strong {
	z-index: 1;
	font-weight: bold;
	position: relative;
	display: inline-block;
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_layoutbox01 .sec_what_gakuwariapp_layoutbox01_txt .sec_what_gakuwariapp_layoutbox01_txt_strong:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: calc(21 / 960 * var(--contents_width));
	background-color: #ffea96;
	border-radius: 100px;
	z-index: -1;
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_layoutbox01 .sec_what_gakuwariapp_layoutbox01_item > *:first-child {
	margin-top: 0;
}
#index_page .sec_what_gakuwariapp .sec_what_gakuwariapp_layoutbox01 .sec_what_gakuwariapp_layoutbox01_item + * {
	margin-top: 2.4%;
}
#index_page .sec_feature {
	z-index: 2;
	position: relative;
	margin: 37.5% 0 0;
	padding: 0 0 22%;
}
#index_page .sec_feature:before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #272727;
	-webkit-transform: skewY(-11.2deg);
	        transform: skewY(-11.2deg);
	-webkit-transform-origin: top left;
	        transform-origin: top left;
	z-index: 0;
}
#index_page .sec_feature:after {
	content: "";
	position: absolute;
	inset: 0;
	background-color: #dedff9;
	-webkit-transform: skewY(-11.2deg);
	        transform: skewY(-11.2deg);
	-webkit-transform-origin: top left;
	        transform-origin: top left;
	z-index: 1;
	bottom: 2px;
	top: 2px;
}
#index_page .sec_feature .sec_feature_in {
	position: relative;
	z-index: 2;
	margin: 0;
	padding: 0;
}
#index_page .sec_feature .sec_feature_ttl01 {
	-webkit-transform: translate(0, -66.2%);
	        transform: translate(0, -66.2%);
}
#index_page .sec_feature .sec_feature_grid01 {
	margin: -14% 0 0;
}
#index_page .sec_feature .sec_feature_grid01 .sec_feature_grid01_item {
	margin: -4.79% 0 0;
}
#index_page .sec_feature .sec_feature_grid01 .sec_feature_grid01_item:first-of-type {
	margin-top: 0;
}
#index_page .sec_use {
	z-index: 2;
	position: relative;
	margin: 0;
	padding: 8.33% 0 0;
}
#index_page .sec_use .sec_use_in {
	margin: 0;
	padding: 0;
}
#index_page .sec_use .sec_use_stepbox01 {
	position: relative;
	margin: 5% 5.2% 0;
	padding: 8% 6%;
	background-color: #ffffff;
	border: 2px solid #272727;
	border-radius: calc(50 / 960 * var(--contents_width));
}
#index_page .sec_use .sec_use_stepbox01 .sec_use_stepbox01_item {
	margin: 13.2% 0 0;
}
#index_page .sec_use .sec_use_stepbox01 .sec_use_stepbox01_item:first-of-type {
	margin-top: 0;
}
#index_page .p_download_btnlist {
	margin: calc(0.09375 * var(--contents_width)) auto 0;
	display: flex;
	text-align: center;
	justify-content: center;
}
#index_page .p_download_btnlist .p_download_btnlist_item {
	margin: 0;
	padding: 0;
}
#index_page .p_download_btnlist .p_download_btnlist_item img {
	width: auto;
	height: calc(136 / 960 * var(--contents_width));
}
#index_page .p_download_btnlist .p_download_btnlist_item + * {
	margin-left: 3.22%;
}

/* 会社概要
--------------------------------------- */
#company_page {
	padding: 10.8% 0 15.6%;
	background-color: #fffee1;
}

/* プライバシーポリシー
--------------------------------------- */
#privacy_page {
	padding: 10.8% 0 15.6%;
	background-color: #fffee1;
}
#privacy_page .sec_privacypolicy {
	padding: 0 24px;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_ttl01 {
	margin: 0;
	padding: 0;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_ttl02 {
	margin: 24px 0 0;
	padding: 0;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_ttl02 .sec_privacypolicy_ttl02_in {
	display: inline-block;
	color: #232323;
	font-size: 1.4rem;
	font-weight: bold;
	position: relative;
	margin: 0;
	padding: 0 0 2px;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_ttl02 .sec_privacypolicy_ttl02_in:before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 2px;
	background-color: #232323;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_txt01 {
	font-size: 1.4rem;
	font-weight: 500;
	color: #232323;
	line-height: 1.85;
	margin: 18px 0 0;
	padding: 0;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_list01 {
	counter-reset: sec_privacypolicy_list01;
	margin: 18px 0 0;
	padding: 0;
	font-size: 1.4rem;
	font-weight: 500;
	color: #232323;
	line-height: 1.85;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_list01 > .sec_privacypolicy_list01_item {
	counter-increment: sec_privacypolicy_list01;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
	margin: 18px 0 0;
	padding: 0;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_list01 > .sec_privacypolicy_list01_item:first-of-type {
	margin-top: 0;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_list01 > .sec_privacypolicy_list01_item:before {
	content: "・";
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_list01 > .sec_privacypolicy_list01_item .sec_privacypolicy_list01_item_in {
	flex: 1;
}
#privacy_page .sec_privacypolicy .sec_privacypolicy_list01.type_num_parentheses .sec_privacypolicy_list01_item:before {
	content: "（" counter(sec_privacypolicy_list01) "）";
}