@charset "utf-8";
/* CSS Document */

/*-------------------------------------
基本装飾 -サイトにより変更-
-------------------------------------*/

:root {
	--base-width: min(100%, 520px);
	--over-width-half: calc((100% - var(--base-width)) / 2);
	--ff: "M PLUS Rounded 1c", sans-serif;
	--webf: "M PLUS 1p", sans-serif;
	--fw-b: 500;
	--fw-bb: 800;
}

@media screen and (max-width:520px) {
	:root {
		--base-width: 100%;
		--over-width-half: 0;
		--header-height: 50px;
	}
}

body {
	position: relative;
	font-family: var(--ff);
	font-size: clamp(16px, calc(11px + 0.75vw), 20px);
	color: #464646;
}

.t {
	transform: rotate(0.05deg);
}


article {
	position: relative;
	z-index: 10;
	width: var(--base-width);
	background: #fff;
	margin: 0 auto;
}

section {
	padding: 1px var(--over-width-half);
}

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

.btn {
	display: block;
	width: min(100%, 400px);
	background: #e42d80;
	color: #ffff66;
	font-family: var(--webf);
	font-weight: 800;
	font-size: 1.4em;
	border-radius: 20px;
	padding: 10px 30px;
	margin: 15px auto;
	text-align: center;
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.6);
}

.mv {
	background: #ecd3fa;
}

.sec-1 {
	background: #fff;
	padding-bottom: 30px;
}

.sec-inner {
	width: 90%;
	margin: 30px auto;
}

.sec-1 figure {
	margin: 0 0 30px;
}

.flow {
	border: 1px solid #963a8f;
	border-radius: 30px;
	padding: 20px 40px 40px;
	margin: 30px auto;
	text-align: center;
	line-height: 1.4;
}

.flow h2 {
	color: #963a8f;
	font-size: 2em;
	margin: 0 0 20px;
}

.flow span {
	display: block;
	text-align: center;
	color: #963a8f;
	margin: 10px auto;
	font-size: 1.2em;
}

.flow strong {
	font-weight: 800;
	font-size: 1.2em;
}

.inline-c {
	text-align: center;
	font-size: 0.9em;
}

.inline-c span {
	display: inline-block;
	text-align: left;
}

@media screen and (max-width:520px) {
	.flow {
		width: 90%;
		padding: 20px 15px;
	}
}

.sec-2 {
	background: url(../images/bg.jpg) no-repeat bottom center / 100% auto;
}

.sec-3 {
	padding-top: 30px;
	padding-bottom: 30px;
	text-align: center;
}

.sec-3 h2 {
	color: #963a8f;
	line-height: 1.3;
	font-size: 1.1em;
}

.sec-4 {
	background: #ffd4e7;
}

.sec-4 p {
	margin: 30px auto;
}

.sec-5 {
	padding-top: 20px;
	padding-bottom: 10px;

}

.sec-5 img {
	width: max(60%, 180px);
}

.sec-5 p {
	line-height: 1.4;
	font-size: 0.95em;
	margin: 20px 0 0;
}