html,
body {
	background-color: #fefbe3;
}

.regist_lp figure img {
	height: auto;
}

/* フッターバナー非表示 */
.footer_banner {
	display: none;
}

/* メインビジュアル */
.main_visual {
	width: 1070px;
	margin: 30px auto;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
}
.main_visual h1 {
	position: absolute;
}
.main_visual h1 img {
	display: block;
}
.main_visual ul {
	width: 100%;
	height: 100%;
	display: flex;
	flex-wrap: wrap;
	padding: 10px;
}
.main_visual ul li {
	width: 14.28%;
	height: 150px;
	flex-grow: 1;
}
.main_visual ul li:nth-child(8) {
	margin: 0 70% 0 0;
}
.main_visual ul li img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: top;
	display: block;
}
.main_visual span {
	position: absolute;
	height: 32px;
	padding: 5px 10px;
	background-color: rgb(255 255 255 / 90%);
	border: #ff80aa solid 2px;
	border-radius: 50px;
}
.main_visual span.men {
	border: #6e93fb solid 2px;
}
.main_visual span img {
	display: block;
	width: auto;
	height: 100%;
}
.come_1 {
	left: 403px;
	top: 15px;
	animation: yurayura-min 2.2s linear infinite;
}
.come_2 {
	left: 75px;
	top: 110px;
	animation: yurayura-min-r 2.4s linear infinite;
}
.come_3 {
	left: 855px;
	top: 110px;
	animation: yurayura-min 2.1s linear infinite;
}
.come_4 {
	left: 187px;
	top: 410px;
	animation: yurayura-min-r 2.3s linear infinite;
}
.come_5 {
	left: 515px;
	top: 312px;
	animation: yurayura-min 2.5s linear infinite;
}
.come_6 {
	left: 793px;
	top: 400px;
	animation: yurayura-min-r 2s linear infinite;
}
@media screen and (max-width: 760px) {
	.main_visual_block {
		background-color: #ffe061;
		padding: 4vw;
		margin: 0 0 10vw 0;
	}
	.sp_head_title {
		padding: 0 4vw 0 5vw;
	}
	.sp_head_title img {
		max-width: 100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	.main_visual {
		width: 100%;
		margin: 0;
	}
	.main_visual h1 {
		width: 50%;
	}
	.main_visual h1 img {
		width: 100%;
		height: auto;
	}
	.main_visual ul {
		padding: 0;
	}
	.main_visual ul li {
		width: 25%;
		height: 22.4vw;
		flex-grow: 1;
	}
	.main_visual ul li:nth-child(8) {
		margin: 0 0 0 0;
	}
	.main_visual ul li:nth-child(5),
	.main_visual ul li:nth-child(7) {
		margin: 0 0 0 0;
	}
	.main_visual span {
		position: absolute;
		height: 4.6vw;
		padding: 0.7vw 2vw;
	}
	.come_1 {
		left: 56vw;
		top: 2vw;
	}
	.come_2 {
		left: 12vw;
		top: 16vw;
	}
	.come_3 {
		left: 51vw;
		top: 68vw;
	}
	.come_4 {
		left: -4vw;
		top: 40vw;
	}
	.come_5 {
		left: 8vw;
		top: 83vw;
	}
	.come_6 {
		left: 66vw;
		top: 23vw;
	}
}


/* 共通セクション */
.regist_lp {
	color: #525252;
	padding: 0 0 150px 0;
}
.regist_lp a {
	transition: all 500ms 0s ease;
}
.regist_lp section {
	padding: 75px 0;
}
.regist_lp h2 {
	width: 900px;
	text-align: center;
	margin: 0 auto 60px auto;
	border-bottom: solid 2px #cbc6a0;
	padding: 0 0 15px 0;
}
@media screen and (max-width: 760px) {
	.regist_lp {
		padding: 0 0 20vw 0;
	}
	.regist_lp section {
		padding: 15vw 0;
	}
	.regist_lp h2 {
		width: auto;
		margin: 0 4vw 4vw 4vw;
		padding: 0 4vw 4vw 4vw;
		font-size: 4vw;
	}
	.regist_lp h2 img {
		max-width: 100%;
		height: auto;
	}
}


/* sec_1 */
.sec_1 ul {
	list-style: none;
	width: 900px;
	margin: 0 auto 60px auto;
}
.sec_1 ul li {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 0 60px 0;
}
.sec_1 ul li:last-child {
	margin: 0;
}
.sec_1 dt {
	font-size: 30px;
	font-weight: bold;
	margin: 0 0 5px 0;
}
.sec_1 dt strong {
	color: #5a3e3e;
	font-size: 36px;
	font-weight: bold;
	display: flex;
	align-items: flex-end;
	position: relative;
	display: flex;
	margin: 0 0 5px 0;
}
.sec_1 dt strong span {
	font-size: 70%;
	font-weight: bold;
	margin: 0 0 3px 0;
}
.sec_1 dt strong::before,
.sec_1 dt strong::after {
	content: '';
	display: block;
	width: 30px;
	height: 50px;
	background-position: center center;
	background-size: contain;
	background-repeat: no-repeat;
}
.sec_1 dt strong::before {
	background-image: url(/assets/img/global/emphasis_left.svg);
	margin: 0 10px 0 0;
}
.sec_1 dt strong::after {
	background-image: url(/assets/img/global/emphasis_right.svg);
	margin: 0 0 0 10px;
}
.sec_1 dd {
	font-size: 18px;
}
.sec_1 dd p {
	margin: 0 0 10px 0;
}
.sec_1 dd p:last-child {
	margin: 0;
}
.sec_1_foot_text {
	font-size: 36px;
	width: 900px;
	text-align: center;
	margin: 0 auto;
	font-weight: bold;
	color: #5a3e3e;
}
.sec_1_foot_text span {
	font-weight: bold;
	font-size: 80%;
}
.sec_1_foot_text ruby {
	font-weight: bold;
}
.sec_1_foot_text ruby rt {
	color: #ff7949;
	font-size: 30%;
	position: relative;
	margin: 0 0 20px 0;
	top: -5px;
}
@media screen and (max-width: 760px) {
	.sec_1 ul {
		list-style: none;
		width: 100%;
		margin: 0 0 5vw 0;
	}
	.sec_1 ul li {
		margin: 0 0 10vw 0;
		flex-direction: column;
	}
	.sec_1 ul li:nth-child(2) {
		flex-direction: column-reverse;
	}
	.sec_1 ul li:last-child {
		margin: 0;
	}
	.sec_1 dl {
		width: 100%;
		padding: 0 4vw;
		margin: 0 0 4vw 0;
	}
	.sec_1 dt {
		font-size: 6vw;
		font-weight: bold;
		margin: 0 0 5px 0;
	}
	.sec_1 dt strong {
		font-size: 7vw;
		justify-content: center;
		margin: 0 auto 1vw auto;
	}
	.sec_1 dt strong span {
		font-size: 70%;
		font-weight: bold;
		margin: 0 0 0.5vw 0;
	}
	.sec_1 dt strong::before,
	.sec_1 dt strong::after {
		width: 8vw;
		height: 7vw;
	}
	.sec_1 dt strong::before {
		background-image: url(/assets/img/global/emphasis_left.svg);
		margin: 0 1vw 1.5vw 0;
	}
	.sec_1 dt strong::after {
		background-image: url(/assets/img/global/emphasis_right.svg);
		margin: 0 0 1.5vw 1vw;
	}
	.sec_1 dd {
		font-size: 3.6vw;
	}
	.sec_1 dd p {
		font-size: 4vw;
		margin: 0 0 2vw 0;
	}
	.sec_1 dd p:last-child {
		margin: 0;
	}
	.sec_1_foot_text {
		font-size: 4.5vw;
		width: 100%;
	}
	.sec_1 figure {
		padding: 0 4vw;
	}
	.sec_1 figure img {
		width: 100%;
		height: auto;
	}
}


/* sec_2 */
.sec_2 h2 span {
	display: block;
	font-weight: bold;
}
.sec_2 {
	width: 900px;
	margin: 0 auto;
}
.sec_2 ul li {
	display: flex;
	justify-content: space-between;
	margin: 0 0 60px 0;
}
.sec_2 ul li:last-child {
	margin: 0;
}
.sec_2 ul li dt {
	font-weight: bold;
	font-size: 26px;
	margin: 0 0 10px 0;
}
.sec_2 ul li dd p {
	margin: 0 0 10px 0;
}
.sec_2 ul li dl {
	width: 340px;
}
.sec_2 .sec_2_foot_text {
	font-size: 36px;
	width: 900px;
	text-align: center;
	margin: 30px auto 0 auto;
	font-weight: bold;
	color: #5a3e3e;
}
@media screen and (max-width: 760px) {
	.sec_2 {
		width: 100%;
		margin: 0 auto;
		padding: 0 4vw;
	}
	.sec_2 ul {
		padding: 0 4vw;
	}
	.sec_2 ul li {
		flex-direction: column-reverse;
		margin: 0 0 10vw 0;
	}
	.sec_2 ul li:nth-child(2) {
		flex-direction: column;
	}
	.sec_2 ul li:last-child {
		margin: 0;
	}
	.sec_2 ul li dt {
		font-size: 6vw;
		margin: 0 0 2vw 0;
	}
	.sec_2 ul li dd p {
		font-size: 4vw;
		margin: 0 0 4vw 0;

	}
	.sec_2 ul li dl {
		width: 100%;
	}
	.sec_2 figure img {
		width: 100%;
		height: auto;
	}
	.sec_2 .sec_2_foot_text {
		margin-top: 5vw;
		font-size: 4.5vw;
		width: 100%;
	}
}


/* 共通の会員登録のボタンエリア */
.regist_member_area {
	background-color: #ffe061;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 35px 0;
}
.regist_member_area dl {
	position: relative;
}
.regist_member_area dt {
	font-weight: bold;
	font-size: 24px;
	text-align: center;
	margin: 0 0 15px 0;
	position: relative;
	color: #525252;
}
.regist_member_area dt::before,
.regist_member_area dt::after {
	display: block;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	content: '';
	height: 42px;
	width: 35px;
	position: absolute;
	top: 30px;
}
.regist_member_area dt::before {
	background-image: url(/assets/img/global/emphasis_left.svg);
	left: 20px;
}
.regist_member_area dt::after {
	background-image: url(/assets/img/global/emphasis_right.svg);
	right: 20px;
}
.regist_member_area dd a {
	display: block;
	font-size: 24px;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #ff7949;
	border: solid 3px #FFFFFF;
	border-radius: 6px;
	line-height: 1;
	padding: 18px 30px;
}
.regist_member_area dd a:hover {
	opacity: 0.8;
}
.regist_member_area dl.c_1::after,
.regist_member_area dl.c_2::after,
.regist_member_area dl.c_3::after {
	content: '';
	display: block;
	height: 150px;
	width: 300px;
	position: absolute;
	background-position: center center;
	background-repeat: no-repeat;
	top: 0;
}
.regist_member_area dl.c_1::after {
	background-image: url(/assets/mypage/img/regist/c_1.webp);
	left: 100%;
	animation: yurayura 2s linear infinite;
}
.regist_member_area dl.c_2::after {
	background-image: url(/assets/mypage/img/regist/c_2.webp);
	right: 100%;
	animation: yurayura-reverse 2s linear infinite;
}
.regist_member_area dl.c_3::after {
	background-image: url(/assets/mypage/img/regist/c_3.webp);
	left: 100%;
	animation: yurayura 2s linear infinite;
}
@media screen and (max-width: 760px) {
	.regist_member_area {
		padding: 7vw 4vw;
	}
	.regist_member_area dl {
		width: 100%;
	}
	.regist_member_area dt {
		font-size: 5vw;
		line-height: 1.3;
		margin: 0 0 3vw 0;
	}
	.regist_member_area dt::before,
	.regist_member_area dt::after {
		height: 7vw;
		width: 7vw;
		top: 5vw;
	}
	.regist_member_area dt::before {
		left: 10vw;
	}
	.regist_member_area dt::after {
		right: 10vw;
	}
	.regist_member_area dd a {
		display: block;
		text-align: center;
		font-size: 4.8vw;
		border: solid 2px #FFFFFF;
		padding: 4vw 0;
		width: 100%;
	}
	.regist_member_area dl.c_1::after,
	.regist_member_area dl.c_2::after,
	.regist_member_area dl.c_3::after {
		background-size: contain;
		content: '';
		display: block;
		height: 24vw;
		width: 46vw;
		position: absolute;
		background-position: top center;
		background-repeat: no-repeat;
		top: -13vw;
	}
	.regist_member_area dl.c_1::after {
		background-image: url(/assets/mypage/img/regist/c_1.webp);
		left: auto;
		right: -4vw;
	}
	.regist_member_area dl.c_2::after {
		background-image: url(/assets/mypage/img/regist/c_2.webp);
		right: auto;
		left: -4vw;
	}
	.regist_member_area dl.c_3::after {
		background-image: url(/assets/mypage/img/regist/c_3.webp);
		left: auto;
		right: -4vw;
	}
}

/* 揺らすアニメーション */
@keyframes yurayura {
	0%,
	100% {
		transform: rotate(5deg);
	}
	50% {
		transform: rotate(0deg);
	}
}
@keyframes yurayura-reverse {
	0%,
	100% {
		transform: rotate(0deg);
	}
	50% {
		transform: rotate(-5deg);
	}
}
@keyframes yurayura-min {
	0%,
	100% {
		transform: rotate(3deg);
	}
	50% {
		transform: rotate(-3deg);
	}
}
@keyframes yurayura-min-r {
	0%,
	100% {
		transform: rotate(-3deg);
	}
	50% {
		transform: rotate(3deg);
	}
}