* {
	font-family: yu-gothic-pr6, sans-serif;
}
.SP {
	display: none !important;
}
.SP-block {
	display: none !important;
}
@media (max-width: 768px) {
	.SP {
		display: inline-block !important;
	}
	.SP-block {
		display: block !important;
	}
	.PC {
		display: none !important;
	}
}
h2 {
	font-weight: bold;
}
.form_btn {
	border: solid 1px #8f2255;
	border-radius: 5px;
	padding: 0.5em 2em;
	background-color: #8f2255;
	color: #fff !important;
	transition: all 0.5s;
}
.form_btn > a {
	color: #fff !important;
}
.form_btn:hover {
	opacity: 0.7;
}
@media (max-width: 768px) {
	.form_btn {
		margin-top: 1rem;
		text-align: center;
	}
	.form_btn a::before {
		display: none;
	}
}
#to-success {
	background: url(../img/success_bg.png) no-repeat;
	background-size: cover;
	background-position: center;
	background-color: #ebebeb;
	margin: auto;
	padding: 40px 30px 80px;
}
#to-success .container {
	width: clamp(0px, 90%, 1000px);
	margin: auto;
	padding: 0;
}
#to-success .container > h1 {
	margin: 0 auto 0px;
	text-align: center;
}
#to-success .container > h1 img {
	width: clamp(0px, 100%, 800px);
}
#to-success .container > h2 {
	max-width: 528px;
	margin: 0 auto 40px;
	text-align: center;
}
#to-success .container > h3 {
	margin: 0 auto 40px;
	text-align: center;
	color: #8f2255;
	text-align: center;
	font-family: "yu-mincho-pr6n", serif, sans-serif;
	font-size: 2.8rem;
	font-style: normal;
	font-weight: 800;
	line-height: normal;
}
#to-success .container > p {
	font-family: "yu-mincho-pr6n", serif, sans-serif;
	/* font-size: 24px;
	 */
	font-style: normal;
	font-weight: 500;
	line-height: 1.6em;
	/* 166.667% */
	margin: 0 0 2em;
}
@media (max-width: 768px) {
	#to-success {
		padding: 2rem 0;
	}
	#to-success .container {
		width: clamp(0px, 90%, 1000px);
		margin: auto;
		padding: 0;
	}
	#to-success .container > h2 {
		margin: 0 auto 40px;
		text-align: center;
	}
	#to-success .container > h3 {
		margin: 0 auto 0.5em;
		text-align: center;
		color: #8f2255;
		text-align: center;
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 800;
		line-height: 1.5em;
	}
	#to-success .container > p {
		font-size: 1.125rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6em;
		/* 166.667% */
		margin: 0 0 1.5rem;
	}
}
#feature {
	/* .mb-5 {
		 margin-bottom: 4rem !important;
	}
	 */
}
#feature .bg_num {
	height: auto;
}
#feature h3 {
	color: #fff;
	font-family: yu-gothic-pr6, sans-serif;
	font-style: normal;
}
#feature .feature-fix-style-lists > li {
	width: 31%;
}
#feature .feature-fix-style-lists > li img {
	object-fit: contain;
}
@media (max-width: 768px) {
	#feature .feature-fix-style-lists > li {
		width: 50%;
	}
	#feature .feature-fix-style-lists > li:nth-child(1) {
		width: 100%;
		margin-bottom: -6vw;
	}
	#feature .feature-fix-style-lists > li:nth-child(1) > img {
		width: 45vw;
		height: 45vw;
	}
	#feature .feature-fix-style-lists > li:nth-child(2) {
		width: 45%;
	}
	#feature .feature-fix-style-lists > li:nth-child(2) > img {
		width: 45vw;
		height: 45vw;
	}
	#feature .feature-fix-style-lists > li:nth-child(3) {
		width: 45%;
	}
	#feature .feature-fix-style-lists > li:nth-child(3) > img {
		width: 45vw;
		height: 45vw;
	}
}
#feature .bg_num {
	margin: 8px 8px 6rem !important;
	padding: 7.5em 0;
}
#feature .bg_num .abs.abs_left {
	width: 15%;
	height: auto;
	left: 3%;
	right: auto;
}
#feature .bg_num .abs.abs_right {
	width: 16%;
	height: auto;
	left: auto;
	right: 2%;
}
@media (max-width: 768px) {
	#feature .bg_num {
		margin: 8px 8px 3rem !important;
		padding: 1em 0;
	}
	#feature .bg_num .abs.abs_left {
		width: 30%;
		height: auto;
		left: 3%;
		right: auto;
	}
	#feature .bg_num .abs.abs_right {
		width: 30%;
		height: auto;
		left: auto;
		right: 2%;
	}
}
#feature .feature-fix-style p {
	width: 93%;
	color: #000;
	/* 本文 游ゴシック24 */
	font-family: yu-gothic-pr6, sans-serif;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7em;
	/* 166.667% */
	margin: 0 auto 1.7em;
}
@media (max-width: 768px) {
	#feature .feature-fix-style p {
		font-size: 1.125rem;
		line-height: 1.5em;
		margin: 0 auto 1em;
	}
}
#feature .feature-fix-style p:last-of-type {
	margin: 0 auto 1rem;
}
#feature .feature-fix-style p span {
	color: #8f2255;
	font-weight: 700;
}
#feature .feature-fix-style .num01-img-contents {
	display: flex;
	justify-content: center;
	align-items: center;
}
#feature .feature-fix-style .num01-img-contents .num01-img-contents-txt {
	width: 312px;
	font-size: 1.5rem;
	line-height: 1.8em;
	margin: auto;
}
@media (max-width: 1400px) {
	#feature .feature-fix-style .num01-img-contents .num01-img-contents-txt {
		font-size: 1rem;
	}
}
#feature .feature-fix-style .num01-img {
	height: auto;
	display: flex;
	justify-content: center;
	align-items: center;
	max-width: 660px;
}
#feature .feature-fix-style .num01-img img {
	height: auto;
	width: 100%;
}
#feature .feature-fix-style .num02-img {
	display: flex;
	justify-content: center;
	align-items: center;
	height: auto;
}
#feature .feature-fix-style .num02-img img {
	height: auto;
}
@media (max-width: 768px) {
	#feature .feature-fix-style .num01-flex-img {
		flex: 3;
		display: flex;
		justify-content: center;
		align-items: center;
	}
}
#plan h2 {
	display: flex;
	justify-content: center;
	width: fit-content;
}
#plan .plan-fix-style-white-box {
	padding: 1.5em 0 !important;
	width: 93%;
	margin: auto;
}
#plan .plan-margin {
	margin: 7rem auto 0;
}
@media (max-width: 768px) {
	#plan .plan-margin {
		margin: 3rem auto 0;
	}
}
#plan .plan-fix-style > p {
	color: #000;
	/* 本文 游ゴシック24 */
	width: 90%;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7em;
	/* 166.667% */
	margin: 0 auto 1.5em;
}
#plan .plan-fix-style > p span {
	color: #8f2255;
	font-weight: 700;
}
@media (max-width: 768px) {
	#plan .plan-fix-style {
		width: 90% !important;
	}
	#plan .plan-fix-style.sp100 {
		width: 100% !important;
	}
	#plan .plan-fix-style .plan-margin {
		margin: 1rem auto 0;
	}
	#plan .plan-fix-style > p {
		font-size: 1.125rem;
		line-height: 1.7em;
		width: 100%;
		margin: 0 auto 1rem;
	}
}
#plan .plan-contents-wrapper .plan-contents-lists {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: stretch;
	padding: 0;
	width: 100%;
	gap: 2em 0;
}
#plan .plan-contents-wrapper .plan-contents-lists li {
	width: clamp(300px, 30%, 375px);
	height: auto;
	margin: 0 auto;
}
#plan .plan-contents-wrapper .plan-contents-lists li .plan-img-wrapper {
	text-align: center;
}
#plan .plan-contents-wrapper .plan-contents-lists li > h3 {
	border-radius: 10px;
	background: rgba(143, 34, 85, 0.15);
	line-height: 1.6em;
	text-align: center;
	margin: 27px auto 24px;
	font-size: 24px;
	font-weight: 700;
}
#plan .plan-contents-wrapper .plan-contents-lists li > p {
	font-size: 1.25rem;
	line-height: 1.5em;
}
#flow .container {
	max-width: 1230px;
}
#flow .r_box {
	padding: 90px 90px 60px;
}
@media (max-width: 768px) {
	#plan .plan-contents-wrapper .plan-contents-lists li{
		width: 100%;
	}
#plan .plan-contents-wrapper .plan-contents-lists li > p {
font-size: 1.125rem;
}
	#flow .r_box {
		padding: 2.5rem 1.25rem;
	}
}
#flow .step-container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-template-rows: auto 1fr;
	gap: 20px 60px;
}
#flow .step-img-wrapper {
	width: auto;
	height: auto;
	text-align: center;
}
#flow .step-txt-wrapper > h3 {
	color: #8f2255;
	text-align: center;
	/* font-size: 28px;
	 */
	font-style: normal;
	font-weight: 700;
	line-height: 36px;
	/* 128.571% */
	margin: 0 auto 2em;
}
#flow .step-txt-wrapper > p {
	color: #000;
	/* font-size: 20px;
	 */
	font-style: normal;
	font-weight: 500;
	line-height: 32px;
	/* 160% */
	text-align: justify;
}
#flow .step-txt-wrapper > p span {
	color: #8f2255;
}
#flow .item0 {
	grid-row: 1;
	grid-column: 0.25;
	background-color: gray;
	background: url(../img/step_bg.png) no-repeat;
	background-position: center;
	background-size: 75%;
}
#flow .item1 {
	grid-row: 1;
	grid-column: 1;
}
#flow .item2 {
	grid-row: 2;
	grid-column: 1;
}
#flow .item3 {
	grid-row: 1;
	grid-column: 2;
}
#flow .item4 {
	grid-row: 2;
	grid-column: 2;
}
#flow .item5 {
	grid-row: 1;
	grid-column: 3;
}
#flow .item6 {
	grid-row: 2;
	grid-column: 3;
}
@media (max-width: 768px) {
	#flow {
		padding: 0 0 1rem;
	}
	#flow .step-container {
		grid-template-columns: 25% 1fr;
		grid-template-rows: auto auto auto;
		gap: 0 1em;
	}
	#flow .step-container .step-txt-wrapper > h3 {
		text-align: left;
		margin: 1em 0 1em;
	}
	#flow .step-container .step-txt-wrapper > p {
		font-size: 1.125rem !important;
		font-style: normal;
		font-weight: 500;
		line-height: 1.5em;
		/* 160% */
		text-align: justify;
	}
	#flow .item0 {
		grid-row: 0.3333333333;
		grid-column: 1;
		background-color: gray;
		background: url(../img/step_bg_sp.png) no-repeat;
		background-position: center;
		background-size: contain;
	}
	#flow .item1 {
		grid-row: 1;
		grid-column: 1;
	}
	#flow .item2 {
		grid-row: 1;
		grid-column: 2;
	}
	#flow .item3 {
		grid-row: 2;
		grid-column: 1;
	}
	#flow .item4 {
		grid-row: 2;
		grid-column: 2;
	}
	#flow .item5 {
		grid-row: 3;
		grid-column: 1;
	}
	#flow .item6 {
		grid-row: 3;
		grid-column: 2;
	}
}
#why .container {
	max-width: 1230px;
}
#why .bg-white {
	padding: 60px;
}
#why .bg-white > p {
	color: #000;
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: 40px;
	/* 166.667% */
}
@media (max-width: 768px) {
	#why .bg-white {
		padding: 3em 1em;
	}
	#why .bg-white > p {
		font-size: 1.125rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.5em;
	}
}
#why .why-contents-wrapper {
	margin: 5em auto 3em;
}
#why .why-contents-wrapper .why-strong-txt {
	color: #000;
	text-align: center;
	font-size: 1.75rem;
	font-style: normal;
	font-weight: 700;
	line-height: 36px;
}
@media (max-width: 768px) {
	#why .why-contents-wrapper {
		margin: 1em auto;
	}
	#why .why-contents-wrapper .why-strong-txt {
		font-size: 1.2rem;
		font-style: normal;
		font-weight: bold;
		line-height: 2em;
	}
}
#why .why-contents-wrapper .why-elements {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 16px;
	margin: 40px auto 8px;
	flex-wrap: wrap;
}
@media (max-width: 768px) {
	#why .why-contents-wrapper .why-elements {
		gap: 0.1rem 0.3em;
	}
}
#why .why-contents-wrapper .why-elements .why-elements-item {
	width: fit-content;
	width: clamp(200px, 100%, 266px);
}
#why .why-contents-wrapper .why-elements .why-elements-item > p {
	width: clamp(200px, 100%, 266px);
	/* height: 266px;
	 */
	display: flex;
	aspect-ratio: 1;
	justify-content: center;
	align-items: center;
	background-color: #8f225535;
	border-radius: 50%;
	/* opacity: 0.15;
	 */
	color: #8f2255;
	text-align: center;
	font-size: 28px;
	font-style: normal;
	font-weight: 700;
	line-height: 36px;
	/* 128.571% */
}
@media (max-width: 768px) {
	#why .why-contents-wrapper .why-elements .why-elements-item:nth-child(1) {
		width: 100%;
	}
	#why .why-contents-wrapper .why-elements .why-elements-item:nth-child(1) > p {
		width: clamp(0px, 100%, 160px);
		margin: auto;
		font-size: 100% !important;
		line-height: 1.5em;
	}
	#why .why-contents-wrapper .why-elements .why-elements-item:nth-child(2) {
		width: 49%;
	}
	#why .why-contents-wrapper .why-elements .why-elements-item:nth-child(2) > p {
		width: clamp(155px, 100%, 160px);
		margin: auto;
		font-size: 100% !important;
		line-height: 1.5em;
	}
	#why .why-contents-wrapper .why-elements .why-elements-item:nth-child(3) {
		width: 49%;
	}
	#why .why-contents-wrapper .why-elements .why-elements-item:nth-child(3) > p {
		width: clamp(155px, 100%, 160px);
		margin: auto;
		font-size: 100% !important;
		line-height: 1.5em;
	}
}
#price h2 {
	margin-bottom: 6rem !important;
}
#price .fix-p {
	max-width: 1180px;
	margin: auto;
}
#price .price-contents-wrapper {
	display: flex;
	gap: 20px;
	margin: 0 auto 15px;
	justify-content: center;
	align-items: flex-end;
	max-width: 1180px;
}
#price .price-contents-wrapper .price-content {
	width: clamp(280px, 100% 560px);
	height: auto;
	flex-shrink: 0;
	border-radius: 12px 12px 4px 4px;
	background: #fff;
	box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.25);
}
#price .price-contents-wrapper .price-content .price-content-inner {
	text-align: center;
	border-bottom: solid 1px rgba(0, 0, 0, 0.25);
	width: 90%;
	margin: auto;
	padding: 19px 0;
}
#price .price-contents-wrapper .price-content .price-content-inner:last-child {
	border-bottom: none;
}
#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt {
	margin: 0 auto 10px;
	text-align: center;
	font-size: 1.125rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1em;
}
#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-large {
	margin: 0 auto;
	text-align: center;
	font-size: 2rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.5em;
}
#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-large span {
	font-size: 1.75rem;
}
#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-medium {
	margin: 0 auto;
	text-align: center;
	font-size: 1.75rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1em;
}
#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-medium span {
	font-size: 0.82rem;
	font-weight: normal;
}
#price .price-contents-wrapper .price-content .price-content-inner .price-content-icon {
	margin: auto;
	width: 40px;
	height: 40px;
}
#price .price-contents-wrapper .non-member {
	flex: 1 0 280px;
}
#price .price-contents-wrapper .non-member > h3 {
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 40px;
	/* 166.667% */
	background: rgba(0, 0, 0, 0.5);
	border-radius: 12px 12px 0 0;
	padding: 31px 0 26px;
}
#price .price-contents-wrapper .sub-member {
	flex: 1 0 280px;
}
#price .price-contents-wrapper .sub-member > h3 {
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 40px;
	/* 166.667% */
	background: #d4b16e;
	border-radius: 12px 12px 0 0;
	padding: 31px 0 26px;
}
#price .price-contents-wrapper .regular-member {
	flex: 2 1 560px;
	position: relative;
	border: #8f2255 solid 3px;
	border-radius: 20px 20px 4px 4px;
}
#price .price-contents-wrapper .regular-member .crown-wrapper {
	width: 72px;
	height: 50px;
	position: absolute;
	margin: auto;
	right: 0;
	left: 0;
	top: -1.5em;
}
#price .price-contents-wrapper .regular-member > h3 {
	color: #fff;
	text-align: center;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	line-height: 40px;
	/* 166.667% */
	background: #8f2255;
	border-radius: 12px 12px 0 0;
	padding: 51px 0 26px;
}
@media (max-width: 768px) {
	#price {
		/* width: 90%;
		 margin: auto;
		 */
	}
	#price h2 {
		margin-bottom: 1rem !important;
	}
	#price .price-contents-wrapper {
		display: flex;
		gap: 2em 1em;
		margin: 0 auto 15px;
		justify-content: center;
		align-items: flex-end;
		max-width: 1180px;
	}
	#price .price-contents-wrapper .price-content {
		width: clamp(280px, 100% 560px);
		height: auto;
		flex-shrink: 0;
		border-radius: 12px 12px 4px 4px;
		background: #fff;
		box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.25);
	}
	#price .price-contents-wrapper .price-content .price-content-inner {
		text-align: center;
		border-bottom: solid 1px rgba(0, 0, 0, 0.25);
		width: 90%;
		margin: auto;
		padding: 1rem 0;
	}
	#price .price-contents-wrapper .price-content .price-content-inner:last-child {
		border-bottom: none;
	}
	#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt {
		margin: 0 auto 10px;
		font-size: 0.625rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1em;
	}
	#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-large {
		margin: 0 auto;
		font-size: 1.5rem;
		font-style: normal;
		font-weight: 700;
		line-height: 1.5em;
	}
	#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-large span {
		font-size: 1rem;
	}
	#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-medium {
		margin: 0 auto;
		text-align: center;
		font-size: 1rem;
		font-style: normal;
		font-weight: 700;
		line-height: 1em;
	}
	#price .price-contents-wrapper .price-content .price-content-inner .price-content-txt-medium span {
		font-size: 0.82rem;
		font-weight: normal;
	}
	#price .price-contents-wrapper .price-content .price-content-inner .price-content-icon {
		margin: auto;
		width: 24px;
		height: 24px;
	}
	#price .price-contents-wrapper .non-member {
		flex: 1 0 120px;
	}
	#price .price-contents-wrapper .non-member > h3 {
		color: #fff;
		text-align: center;
		font-size: 1rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2em;
		/* 166.667% */
		background: rgba(0, 0, 0, 0.5);
		border-radius: 12px 12px 0 0;
		padding: 0.75em 0;
	}
	#price .price-contents-wrapper .sub-member {
		flex: 1 0 120px;
	}
	#price .price-contents-wrapper .sub-member > h3 {
		color: #fff;
		text-align: center;
		font-size: 1rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2em;
		background: #d4b16e;
		border-radius: 12px 12px 0 0;
		padding: 0.75em 0;
	}
	#price .price-contents-wrapper .regular-member {
		flex: 2 1 260px;
		position: relative;
		border-radius: 20px 20px 4px 4px;
	}
	#price .price-contents-wrapper .regular-member .crown-wrapper {
		width: 43px;
		height: auto;
		position: absolute;
		margin: auto;
		right: 0;
		left: 0;
		top: -1.5em;
	}
	#price .price-contents-wrapper .regular-member > h3 {
		color: #fff;
		text-align: center;
		font-size: 1rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2em;
		/* 166.667% */
		background: #8f2255;
		border-radius: 12px 12px 0 0;
		padding: 1em 0 0.75em;
	}
}
/******************** 
*  footer
********************/
#footer .footer-nav {
	padding: 2rem 0;
	background: #ebebeb;
}
#footer .footer-nav .nav_list {
	width: clamp(0px, 100%, 700px);
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 0.5em;
	margin-inline: auto;
	padding: 0;
}
#footer .footer-nav .sns_link_list {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 1.2em;
	margin-inline: auto;
	margin-top: 1.2rem;
	padding: 0;
}
#footer .footer-nav .sns_link_list img {
	width: 60px;
}
#footer .footer-nav .nav_list .nav_item {
	padding: 1rem 0;
}
@media (max-width: 769px) {
	#footer .footer-nav .nav_list {
		width: clamp(0px, 100%, 700px);
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
	}
	#footer .footer-nav .nav_list .nav_item {
		padding: 1rem 0;
		width: clamp(150px, 45%, 250px);
		border-top: solid 1px #fff;
	}
	#footer .footer-nav .nav_list .nav_item a {
		padding: 1em 0.5em;
		font-size: 0.7rem;
		width: 100%;
	}
	#footer .footer-nav .nav_list .nav_item a::before {
		width: 1rem;
		height: 1rem;
		background-image: url(../img/btn_arr3.svg);
	}
	#footer .footer-nav .sns_link_list {
		gap: 0.8em;
	}
	#footer .footer-nav .sns_link_list img {
		width: 50px;
	}
}