@charset "UTF-8";



/* -------------------------------------------

header

------------------------------------------- */
/* ---- h1 ---- */
h1 {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 10;
}
h1 a {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 10rem;
	height: 8.5rem;
	border-radius: 0 0 3rem 0;
	background: #fff;
	padding-bottom: 0.4rem;
	padding-right: 0.3rem;
}
h1 a img {
	width: 6rem;
}
/* ---- header-line ---- */
.header-line {
	position: absolute;
	right: 1.5rem;
	top: 1.5rem;
	z-index: 10;
}
.header-line a {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 500;
	font-size: 1.6rem;
	background: var(--green);
	border: solid 0.2rem #256030;
	border-radius: 10rem;
	height: 5.6rem;
	padding: 0 2rem 0.4rem 1rem;
	position: relative;
	box-shadow: inset 0 -0.5rem #3da151;
}
.header-line img {
	width: 4rem;
	margin-right: 0.2rem;
}



/* -------------------------------------------

cv

------------------------------------------- */
.interview + .cv {
	padding: 6rem 0;
}
.cv {
	padding: 2rem 0 6rem 0;
}
.cv p {
	font-size: 2.2rem;
	font-weight: 500;
	margin-bottom: 1.5rem;
	text-align: center;
}
@media screen and (max-width: 768px) {
	.cv p {
		font-size: 1.9rem;
	}
}
/* ---- btn ---- */
a.line {
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-weight: 500;
	font-size: 3rem;
	background: var(--green);
	border: solid 0.3rem #256030;
	border-radius: 2rem;
	height: 10.5rem;
	width: 48rem;
	position: relative;
	box-shadow: inset 0 -1rem #3da151;
	position: relative;
	padding-right: 1.4rem;
	padding-bottom: 1rem;
	margin: 0 auto;
}
a.line img {
	width: 8.8rem;
}
a.line i {
	position: absolute;
	right: 2rem;
	top: 4rem;
	font-size: 1.6rem;
}
@media screen and (max-width: 768px) {
	a.line {
		width: 90%;
		font-size: 2.6rem;
		height: 9.6rem;
	}
	a.line img {
		width: 7.2rem;
	}
}



/* -------------------------------------------

benefits

------------------------------------------- */
/* ---- wrap-1 ---- */
.benefits .wrap-1 {
	background: url(../img/benefits-bg-1.jpg) no-repeat center top;
	background-size: 100% auto;
	background-color: var(--bg-beige);
	padding: 10rem 0 20rem 0;
}
@media screen and (max-width: 768px) {
	.benefits .wrap-1 {
		background-size: 200% auto;
		padding: 6rem 0 20rem 0;
	}
}
.benefits .wrap-1 p {
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.8;
	margin-bottom: 2rem;
}
.benefits .wrap-1 p span {
	font-weight: 400;
	font-size: 1.4rem;
}
.benefits .wrap-1 figure {
	width: 68rem;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.benefits .wrap-1 p {
		text-align: center;
		line-height: 1.3;
	}
	.benefits .wrap-1 p span {
		margin-top: 1rem;
	}
	.benefits .wrap-1 figure {
		width: 100%;
	}
}
/* ---- wrap-2 ---- */
.benefits .wrap-2 {
	background-color: var(--bg-beige);
}
.benefits .wrap-2 > div {
	background: #fff;
	border-radius: 2rem;
	box-shadow: 0 0 4rem 0.8rem rgba(185,181,176,0.4);
	position: relative;
	top: -15rem;
	margin-bottom: -15rem;
	padding: 6rem 0 5rem 0;
	position: relative;
	z-index: 10;
}
@media screen and (max-width: 768px) {
	.benefits .wrap-2 {
		padding: 0 1.5rem;
	}
	.benefits .wrap-2 > div {
		top: -17rem;
		margin-bottom: -17rem;
		padding: 3rem 0 5rem 0;
	}
}
/* h2 */
.benefits .wrap-2 h2 {
	font-weight: 400;
	font-size: 4.4rem;
	font-family: var(--font-serif);
	text-align: center;
	margin-bottom: 2.5rem;
}  
.benefits .wrap-2 h2 span {
	position: relative;
}
.benefits .wrap-2 h2 span::before {
	content: "";
	width: 120%;
	height: 6rem;
	background: url(../img/trouble-deco-5.png) no-repeat center bottom;
	background-size: 100% auto;
	position: absolute;
	left: -10%;
	bottom: -0.8rem;
	z-index: -1;
}
@media screen and (max-width: 768px) {
	.benefits .wrap-2 h2 {
		font-size: 2.8rem;
		margin-bottom: 3rem;
	}  
}
/* ul */
.benefits .wrap-2 ul {
	padding: 0 8.5rem;
}
.benefits .wrap-2 ul li {
	display: flex;
	align-items: center;
}
.benefits .wrap-2 ul li:nth-child(even) {
	flex-direction: row-reverse;
}
.benefits .wrap-2 ul li:nth-child(even) > div {
	padding-left: 5rem;
}
.benefits .wrap-2 ul li > figure {
	width: 30%;
}
.benefits .wrap-2 ul li > div {
	width: 70%;
}
.benefits .wrap-2 ul li > div p {
	font-weight: 500;
	font-size: 2rem;
	margin-bottom: 1.5rem;
}
.benefits .wrap-2 ul li > div dl {
	font-weight: 500;
}
.benefits .wrap-2 ul li > div dd {
	display: flex;
	align-items: center;
}
.benefits .wrap-2 ul li > div dd span {
	font-size: 1.8rem;
	margin-bottom: 0.2rem;
	margin-left: 1rem;
}
.benefits .wrap-2 ul li > div dl.adjust {
	display: flex;
	align-items: center;
}
.benefits .wrap-2 dd.adjust i {
	font-size: 1.2rem;
	margin-right: 1rem;
	vertical-align: 0.16rem;
}
@media screen and (max-width: 768px) {
	.benefits .wrap-2 ul {
		padding: 0;
	}
	.benefits .wrap-2 ul li {
		align-items: flex-start;
	}
	.benefits .wrap-2 ul li:not(:last-child) {
		margin-bottom: 4rem;
	}
	.benefits .wrap-2 ul li:nth-child(odd) > div {
		padding-right: 2rem;
	}
	.benefits .wrap-2 ul li:nth-child(even) > div {
		padding-left: 2rem;
	}
	.benefits .wrap-2 ul li > figure {
		width: 35%;
	}
	.benefits .wrap-2 ul li > div {
		width: 65%;
	}
	.benefits .wrap-2 ul li > div p {
		font-size: 1.8rem;
	}
	.benefits .wrap-2 ul li > div dd.adjust {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
	}
	.benefits .wrap-2 ul li > div dd span.adjust {
		margin-left: 1rem;
	}
	.benefits .wrap-2 ul li > div dd span {
		margin-bottom: 0.2rem;
		margin-left: 0;
	}
	.benefits .wrap-2 ul li > div dl.adjust dd span {
		margin-left: 1rem;
	}

}



/* -------------------------------------------

trouble

------------------------------------------- */
/* ---- wrap-1 ---- */
.trouble .wrap-1 {
	background: url(../img/trouble-bg-1.jpg) no-repeat center bottom / cover;
	color: #fff;
	padding-top: 16rem;
	padding-bottom: 12rem;
	position: relative;
	top: -10rem;
	margin-bottom: -10rem;
}
.trouble .wrap-1 section {
	width: 64rem;
	margin: 0 auto;
}
@media screen and (max-width: 768px) {
	.trouble .wrap-1 {
		padding-bottom: 9rem;
		padding-left: 2rem;
		padding-right: 2rem;
		top: -12rem;
		margin-bottom: -12rem;
	}
	.trouble .wrap-1 section {
		width: auto;
	}
}
/* h2 */
.trouble .ttl-wrap {
	display: flex;
	justify-content: center;
}
.trouble h2 {
	text-align: center;
	font-family: var(--font-serif);
	font-weight: 400;
	font-size: 4rem;
	position: relative;
	line-height: 1.4;
	margin-bottom: 2rem;
}
.trouble h2 span {
	font-size: 6rem;
}
.trouble h2::before {
	content: "";
	width: 5.5rem;
	height: 5.5rem;
	background: url(../img/trouble-deco-1.png) no-repeat center;
	background-size: 100% auto;
	position: absolute;
	left: 8.5rem;
	top: 2.5rem;
}
@media screen and (max-width: 768px) {
	.trouble h2 {
		font-size: 3.2rem;
		line-height: 1.3;
	}
	.trouble h2 span {
		font-size: 5.2rem;
	}
	.trouble h2::before {
		width: 4.5rem;
		height: 4.5rem;
		left: 5.5rem;
		top: 1.7rem;
	}
}
/* h3 */
.trouble h3 {
	background: #5d5c6b;
	text-align: center;
	font-weight: 500;
	font-size: 2rem;
	padding: 1.2rem 0 1.3rem 0;
	margin-bottom: 4rem;
	position: relative;
}
.trouble h3::before {
	content: "";
	width: 0;
	height: 0;
	border-left: 1.6rem solid transparent;
	border-right: 1.6rem solid transparent;
	border-top: 1.6rem solid #5d5c6b;	
	position: absolute;
	right: 12rem;
	bottom: -1.5rem;
}
@media screen and (max-width: 768px) {
	.trouble h3 {
		font-size: 1.8rem;
	}
	.trouble h3::before {
		right: 7rem;
	}	
}
/* inner-1 */
.trouble .inner-1 {
	display: flex;
	flex-direction: row-reverse;
}
.trouble .inner-1 > * {
	width: 50%;
}
.trouble .inner-1 figure img {
	border-radius: 1.5rem;
}
.trouble .inner-1 ul {
	padding-left: 3rem;
}
.trouble .inner-1 ul li {
	display: flex;
	align-items: center;
	font-size: 1.8rem;
}
.trouble .inner-1 ul li:not(:last-child) {
	margin-bottom: 0.5rem;
}
.trouble .inner-1 ul li img {
	width: 2rem;
	margin-right: 1rem;
}
.trouble .inner-1 ul li span {
	width: calc(100% - 2rem);
}
@media screen and (max-width: 768px) {
	.trouble .inner-1 ul {
		padding-left: 0;
	}
	.trouble .inner-1 ul li {
		font-size: 1.6rem;
		align-items: flex-start;
		line-height: 1.3;
	}
	.trouble .inner-1 ul li:not(:last-child) {
		margin-bottom: 0.8rem;
	}
	.trouble .inner-1 ul li img {
		width: 1.5rem;
		margin-right: 0.7rem;
		margin-top: 0.4rem;
	}
	.trouble .inner-1 ul li span {
		width: calc(100% - 1.5rem);
	}
}
/* inner-2 */
.trouble .inner-2 {
	margin-top: 5rem;
	position: relative;
	border-left: solid 0.2rem #fff;
	border-right: solid 0.2rem #fff;
	border-bottom: solid 0.2rem #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding-bottom: 1rem;
}
@media screen and (max-width: 768px) {
	.trouble .inner-2 {
		margin-top: 4rem;
		padding-bottom: 0.6rem;
	}
}
.trouble .inner-2::before,
.trouble .inner-2::after {
	content: "";
	width: 7rem;
	height: 0.2rem;
	background: #fff;
	position: absolute;
	top: 0;
}
.trouble .inner-2::before {
	left: 0;
}
.trouble .inner-2::after {
	right: 0;
}
@media screen and (max-width: 768px) {
	.trouble .inner-2::before,
	.trouble .inner-2::after {
		width: 1rem;
	}
}
/* 95%の方が自力で */
.trouble .inner-2 > span:nth-child(1) {
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.2rem;
	margin-top: -3rem;
}
.trouble .inner-2 > span:nth-child(1) > span:nth-child(1) i {
	font-family: var(--font-bebas);
	font-size: 3.6rem;
}
.trouble .inner-2 > span:nth-child(1) > span:nth-child(2),
.trouble .inner-2 > span:nth-child(1) > span:nth-child(3) {
	font-size: 1.6rem;
	position: relative;
	bottom: -1rem;
}
.trouble .inner-2 > span:nth-child(1) > span:nth-child(2) {
	margin: 0 1rem;
	background: url(../img/trouble-deco-2.png) no-repeat center bottom;
	background-size: 100% auto;
	padding: 0 2rem 2rem 2rem;
}
.trouble .inner-2 > span:nth-child(1) > span:nth-child(3) {
	background: url(../img/trouble-deco-3.png) no-repeat center bottom;
	background-size: 100% auto;
	padding: 0 1.5rem 2rem 1.5rem;
}
@media screen and (max-width: 768px) {
	.trouble .inner-2 > span:nth-child(1) {
		font-size: 1.4rem;
	}
	.trouble .inner-2 > span:nth-child(1) > span:nth-child(2),
	.trouble .inner-2 > span:nth-child(1) > span:nth-child(3) {
		font-size: 1.2rem;
		bottom: -1.2rem;
	}
	.trouble .inner-2 > span:nth-child(1) > span:nth-child(2) {
		margin: 0 0.5rem;
		padding: 0 2rem 1.7rem 2rem;
	}
	.trouble .inner-2 > span:nth-child(1) > span:nth-child(3) {
		padding: 0 1.5rem 1.7rem 1.5rem;
	}
}
/* トレーニングジムユーザーの継続率はたったの5% */
.trouble .inner-2 > span:nth-child(2) {
	font-size: 2.4rem;
	line-height: 1;
	margin-top: -0.5rem;
}
.trouble .inner-2 > span:nth-child(2) i {
	font-family: var(--font-bebas);
	font-size: 5.2rem;
	vertical-align: -0.2rem;
}
@media screen and (max-width: 768px) {
	.trouble .inner-2 > span:nth-child(2) {
		margin-top: 1.5rem;
		text-align: center;
	}
}
/* ---- wrap-2 ---- */
.trouble .wrap-2 {
	background: url(../img/trouble-deco-4.png) no-repeat right 20rem top 7rem;
	background-size: 10rem auto;
	background-color: #f1efec;
	position: relative;
	padding-top: 10rem;
	padding-bottom: 15rem;
}
@media screen and (max-width: 768px) {
	.trouble .wrap-2 {
		background: url(../img/trouble-deco-4.png) no-repeat right top;
		background-size: 10rem auto;
		background-color: #f1efec;
		padding-top: 3rem;
		padding-bottom: 15rem;
	}
}
/* fiugre */
.trouble .wrap-2 > figure {
	position: absolute;
	left: 0;
	top: -11rem;
	width: 42rem;
}
@media screen and (max-width: 768px) {
	.trouble .wrap-2 > figure {
		left: -12rem;
		top: -9rem;
		width: 38rem;
	}
}
/* p */
.trouble .wrap-2 p {
	text-align: center;
	font-family: var(--font-serif);
	font-weight: 500;
	font-size: 5rem;
	display: flex;
	flex-direction: column;
	align-items: center;
	line-height: 1.3;
	background: url(../img/trouble-deco-5.png) no-repeat center bottom;
	background-size: 60% auto;
	padding-bottom: 3.5rem;
}
@media screen and (max-width: 768px) {
	.trouble .ttl-wrap {
		display: flex;
		justify-content: flex-end;
		padding-right: 2rem;
	}
	.trouble .wrap-2 p {
		font-size: 4.8rem;
		background: url(../img/trouble-deco-6.png) no-repeat center bottom 1.5rem;
		background-size: 140% auto;
		padding-bottom: 3.5rem;
	}
}
/* ul */
.trouble .wrap-2 ul {
	display: flex;
	justify-content: center;
}
.trouble .wrap-2 ul li {
	width: 18rem;
	height: 18rem;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: solid 0.2rem var(--grey);
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.2;
	padding-top: 0.6rem;
}
.trouble .wrap-2 ul li:not(:last-child) {
	margin-right: 2rem;
}
@media screen and (max-width: 768px) {
	.trouble .wrap-2 ul li {
		width: 12rem;
		height: 12rem;
		font-size: 1.5rem;
	}
	.trouble .wrap-2 ul li:not(:last-child) {
		margin-right: 1rem;
	}
}



/* -------------------------------------------

point

------------------------------------------- */
.point {
	background: url(../img/point-bg-1.png) no-repeat center top;
	background-size: 100% auto;
	position: relative;
	z-index: 10;
	margin-top: -13rem;
	padding-top: 15rem;
	padding-bottom: 4rem;
}
@media screen and (max-width: 768px) {
	.point {
		background: url(../img/point-bg-1-sp.png) no-repeat right top;
		background-size: 100% auto;
		padding-top: 8rem;
	}
}
/* ---- h2 ---- */
.point h2 {
	text-align: center;
	font-size: 4rem;
	text-shadow: 0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff;
}
.point h2 + p {
	font-size: 1.9rem;
	font-weight: 500;
	text-align: center;
	text-shadow: 0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff,0 0 1.5rem #fff;
	margin: 1.5rem 0 6rem 0;
}
@media screen and (max-width: 768px) {
	.point h2 {
		text-align: left;
		font-size: 3rem;
		padding-left: 3rem;
	}
	.point h2 + p {
		width: 80%;
		line-height: 1.8;
		font-size: 1.7rem;
		padding-left: 3rem;
		text-align: left;
	}
}
/* ---- ul ---- */
.point ul {
	width: 72rem;
	margin: 0 auto;
}
.point ul li {
	display: flex;
	align-items: center;
}
.point ul li:not(:last-child) {
	margin-bottom: 4rem;
}
@media screen and (max-width: 768px) {
	.point ul {
		padding: 0 3rem;
		width: 100%;
	}
	.point ul li {
		align-items: flex-start;
	}
	.point ul li:not(:last-child) {
		margin-bottom: 4rem;
	}
}
/* dl */
.point ul li > dl {
	width: calc(100% - 10rem);
}
.point ul li > dl dt {
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.3;
	margin-bottom: 0.5rem;
}
.point ul li > dl dd {
	font-size: 1.8rem;
}
@media screen and (max-width: 768px) {
	.point ul li > dl dt {
		font-size: 2rem;
	}
}
/* num */
.num {
	position: relative;
	line-height: 1;
	color: var(--blue);
	font-family: var(--font-bebas);
	font-size: 10rem;
	width: 10rem;
}
.num i {
	font-family: var(--font-dancing);
	font-weight: bold;
	font-size: 2rem;
	position: absolute;
	left: -1rem;
	top: -1.2rem;
	transform: rotate(-15deg);
}
@media screen and (max-width: 768px) {
	.num {
		font-size: 8rem;
		width: 8rem;
	}
}



/* -------------------------------------------

voice

------------------------------------------- */
.voice {
	background: url(../img/voice-bg-1.jpg) no-repeat left top;
	background-size: 100% auto;
	background-color: #f4f2ec;
	padding: 10rem 0;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
	.voice {
		background-size: 140% auto;
		padding: 10rem 2rem 6rem 2rem;
	}
}
/* ---- ul ---- */
.voice ul {
	width: 68rem;
	margin: 0 auto;
}
.voice ul li {
	background: #fff;
	border-radius: 1.5rem;
	padding: 2.5rem;
	box-shadow: 0 0 24px 3.5px rgba(220,205,183,0.4);
	width: 80%;
	line-height: 1.8;
	position: relative;
}
.voice ul li::before {
	content: "";
	position: absolute;
	z-index: -1;
}
.voice ul li:not(:last-child) {
	margin-bottom: 3rem;
}
.voice ul li:nth-child(even) {
	margin-left: auto;
}
@media screen and (max-width: 768px) {
	.voice ul {
		width: 100%;
	}
	.voice ul li {
		width: 100%;
	}
}
/* deco */
.voice ul li:nth-child(2)::before {
	width: 10rem;
	height: 10rem;
	background: url(../img/voice-deco-1.png) no-repeat center;
	background-size: 100% auto;
	right: -4.7rem;
	top: -4rem;
}
.voice ul li:nth-child(3)::before {
	width: 10rem;
	height: 10rem;
	background: url(../img/voice-deco-2.png) no-repeat center;
	background-size: 100% auto;
	left: -4.7rem;
	top: -4rem;
}
.voice ul li:nth-child(4)::before {
	width: 8rem;
	height: 8rem;
	background: url(../img/voice-deco-3.png) no-repeat center;
	background-size: 100% auto;
	right: -1.7rem;
	top: -7rem;
}
.voice ul li:nth-child(5)::before {
	width: 10rem;
	height: 10rem;
	background: url(../img/voice-deco-4.png) no-repeat center;
	background-size: 100% auto;
	left: -4.7rem;
	top: -4rem;
}
.voice ul li:nth-child(6)::before {
	width: 9rem;
	height: 9rem;
	background: url(../img/voice-deco-5.png) no-repeat center;
	background-size: 100% auto;
	right: -3.2rem;
	top: -5rem;
}



/* -------------------------------------------

staff

------------------------------------------- */
.staff {
	padding: 10rem 0 6rem 0;
}
@media screen and (max-width: 768px) {
	.staff {
		padding: 8rem 2rem 6rem 2rem;
	}
}
/* ---- staff-owner ---- */
.staff-owner {
	width: 68rem;
	margin: 0 auto 4rem auto;
}
.staff-owner > div {
	display: flex;
	justify-content: space-between;
}
.staff-owner > div > * {
	width: 49%;
}
.staff-owner > div > *:nth-of-type(1) {
	margin-bottom: 3rem;
}
.staff-owner figure img {
	border-radius: 1.5rem;
}
.staff-owner .staff-name {
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
	.staff-owner {
		width: 100%;
	}
	.staff-owner > div:nth-of-type(2) {
		flex-direction: column;
	}
	.staff-owner > div:nth-of-type(2) > * {
		width: 100%;
	}
}
/* name */
.staff-name {
	line-height: 1;
	font-weight: 500;
	font-size: 2.4rem;
}
.staff-name span {
	display: block;
	font-size: 1.3rem;
	line-height: 1.6;
	margin-bottom: 1.8rem;
}
/* dl */
.staff-detail dt {
	background: #e5e7ec;
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: 500;
	width: 9.6rem;
	height: 2.6rem;
	padding-bottom: 0.1rem;
	padding-left: 0.2rem;
	border-radius: 10rem;
	margin-bottom: 1rem;
}
.staff-detail dd:not(:last-of-type) {
	margin-bottom: 2rem;
}
.staff-detail.adjust {
	flex-wrap: wrap;
	margin-bottom: 1rem;
}
.staff-detail.adjust {
	display: flex;
}
.staff-detail.adjust dt {
	width: 16rem;
}
.staff-detail.adjust dd {
	width: calc(100% - 16rem);
	padding-left: 1.2rem;
	padding-top: 0.2rem;
}
.staff-detail.adjust dt:not(:last-of-type) {
	margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
	.staff-detail {
		font-size: 1.2rem;
	}
	.staff-detail.adjust dt {
		width: 20rem;
	}
	.staff-detail.adjust dd {
		width: calc(100% - 20rem);
		padding-top: 0;
	}
	.staff-owner dd.adjust {
		white-space: nowrap;
	}
	
}
/* ---- staff-other ---- */
.staff-other {
	width: 68rem;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.staff-other li {
	width: 48%;
}
.staff-other li:nth-child(n + 3) {
	margin-top: 3rem;
}
.staff-other img {
	border-radius: 2rem;
}
.staff-other dl {
	padding: 0 1.5rem;
}
.staff-other dt {
	margin: 1.5rem 0 1.5rem 0;
}
@media screen and (max-width: 768px) {
	.staff-other {
		width: 100%;
	}
}



/* -------------------------------------------

flow

------------------------------------------- */
.flow {
	padding: 20rem 0 8rem 0;
	background: url(../img/flow-bg-1.png) no-repeat center top;
	background-size: 100% auto;
}
@media screen and (max-width: 768px) {
	.flow {
		padding: 12rem 0 6rem 0;
		background: url(../img/flow-bg-1-sp.png) no-repeat center top;
		background-size: 100% auto;
	}
}
/* ---- h2 ---- */
.flow h2 {
	margin-bottom: 12rem;
}
@media screen and (max-width: 768px) {
	.flow h2 {
		margin-bottom: 8rem;
	}
}
/* ---- ul ---- */
.flow ul li {
	display: flex;
	align-items: center;
}
.flow ul li > figure {
	width: 55%;
}
.flow ul li > div {
	width: 45%;
}
.flow ul li:nth-child(even) {
	flex-direction: row-reverse;
}
.flow ul li:nth-child(odd) > div {
	padding-left: 16rem;
}
.flow ul li:nth-child(even) > div {
	padding-right: 16rem;
}
@media screen and (max-width: 768px) {
	.flow ul li {
		display: block;
	}
	.flow ul li > figure {
		width: 100%;
	}
	.flow ul li > div {
		width: 100%;
	}
	.flow ul li:nth-child(odd) > div {
		padding-left: 0;
	}
	.flow ul li:nth-child(even) > div {
		padding-right: 0;
	}
}
/* dl */
.flow dt {
	display: flex;
	align-items: center;
}
.flow dt > span:nth-child(2) {
	width: calc(100% - 10rem);
	font-weight: bold;
	font-size: 2.8rem;
	line-height: 1.3;
	padding-bottom: 1rem;
}
.flow dd {
	line-height: 2
}
@media screen and (max-width: 768px) {
	.flow dt {
		display: flex;
		align-items: center;
		padding-left: 6rem;
	}
	.flow dt > span:nth-child(2) {
		font-size: 2.4rem;
		line-height: 1.3;
		padding-bottom: 1rem;
	}
	.flow dd {
		padding: 0 3rem;
	}
}
/* deco */
.flow ul li:nth-child(1) {
	background: url(../img/flow-deco-1.png) no-repeat left 10.5rem top 12.8rem;
	background-size: 4.5rem auto;
}
.flow ul li:nth-child(2) {
	background: url(../img/flow-deco-2.png) no-repeat right 10em center;
	background-size: 3.5rem auto;
}
.flow ul li:nth-child(3) {
	background: url(../img/flow-deco-3.png) no-repeat left 9.5rem top 17rem;
	background-size: 4.5rem auto;
}
.flow ul li:nth-child(4) {
	background: url(../img/flow-deco-4.png) no-repeat right 10rem center;
	background-size: 4.5rem auto;
}
.flow ul li:nth-child(5) {
	background: url(../img/flow-deco-5.png) no-repeat left 11rem top 14rem;
	background-size: 3.5rem auto;
}
@media screen and (max-width: 768px) {
	.flow ul li:nth-child(1) {
		background: url(../img/flow-deco-1.png) no-repeat left 0.5rem top 3.8rem;
		background-size: 4.5rem auto;
	}
	.flow ul li:nth-child(2) {
		background: url(../img/flow-deco-2.png) no-repeat left 38rem top 4rem;
		background-size: 3.5rem auto;
	}
	.flow ul li:nth-child(3) {
		background: url(../img/flow-deco-3.png) no-repeat left top 5rem;
		background-size: 4.5rem auto;
	}
	.flow ul li:nth-child(4) {
		background: url(../img/flow-deco-4.png) no-repeat left 38rem top 4rem;
		background-size: 4.5rem auto;
	}
	.flow ul li:nth-child(5) {
		background: url(../img/flow-deco-5.png) no-repeat left 2rem top 2rem;
		background-size: 3.5rem auto;
	}
}



/* -------------------------------------------

price

------------------------------------------- */
.price {
	background: url(../img/price-bg-1.jpg) no-repeat center top;
	background-size: 100% auto;
	padding: 20rem 0;
}
@media screen and (max-width: 768px) {
	.price {
		background: url(../img/price-bg-1.jpg) no-repeat left -12rem top;
		background-size: 150% auto;
		padding: 10rem 2rem;
	}
}
/* ---- wrap ---- */
.price .wrap {
	background: url(../img/price-bg-2.jpg) no-repeat left top / cover;
	border-radius: 2rem;
	box-shadow: 0 0 40px 6px rgba(185,185,185,0.4);
	padding: 5rem 0;
	display: flex;
	flex-direction: column;
	align-items: center;
}
@media screen and (max-width: 768px) {
	.price .wrap {
		background: url(../img/price-bg-2.jpg) no-repeat left -1.5rem bottom;
		background-size: auto 95%;
		padding: 4rem 0;
		background-color: #fff;
	}
}
.price p {
	margin-bottom: 2rem;
}
@media screen and (max-width: 768px) {
	.price p {
		-webkit-text-stroke: 0.3rem #fff;
		paint-order: stroke;
	}

}
/* dl */
.price dl {
	display: flex;
	align-items: center;
}
.price dl:not(:last-of-type) {
	margin-bottom: 1.5rem;
}
.price dl dt {
	background: #e5e7ec;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 15rem;
	height: 4.4rem;
	font-size: 2rem;
	border-radius: 10rem;
	padding-bottom: 0.1rem;
}
.price dl dd {
	font-size: 3.2rem;
	padding-left: 1rem;
	padding-bottom: 0.3rem;
}
.price dl dd span {
	font-size: 2rem;
}
.price dl dd i {
	font-size: 1.2rem;
	margin-left: -0.6rem;
}
@media screen and (max-width: 768px) {
	.price dl {
		display: flex;
		align-items: center;
	}
	.price dl:not(:last-of-type) {
		margin-bottom: 1.5rem;
	}
	.price dl dt {
		width: 9.6rem;
		height: 3.6rem;
		font-size: 1.6rem;
	}
	.price dl dd {
		-webkit-text-stroke: 0.3rem #fff;
		paint-order: stroke;
		font-size: 2.4rem;
	}
	.price dl dd i {
		font-size: 1rem;
	}
}



/* -------------------------------------------

interview

------------------------------------------- */
.interview {
	background: #f4f2ec;
	padding: 10rem 0;
	position: relative;
}
@media screen and (max-width: 768px) {
	.interview {
		padding: 12rem 0 8rem 0;
	}
}
/* ---- deco ---- */
.interview > span {
	position: absolute;
}
.interview .deco-1 {
	left: 11rem;
	top: -9rem;
	width: 24rem;
}
.interview .deco-2 {
	right: 17rem;
	top: -5rem;
	width: 18rem;
}
@media screen and (max-width: 768px) {
	.interview .deco-1 {
		left: 1rem;
		top: -9rem;
		width: 22rem;
	}
	.interview .deco-2 {
		right: 1rem;
		top: -4.5rem;
		width: 15rem;
	}
}
/* ---- h2 ---- */
.interview h2 {
	text-align: center;
	font-family: var(--font-serif);
	font-weight: 500;
	font-size: 5rem;
	line-height: 1.3;
	background: url(../img/interview-deco-1.png) no-repeat center bottom;
	background-size: 60% auto;
	padding-bottom: 3.5rem;
	margin-bottom: 3rem;
}
@media screen and (max-width: 768px) {
	.interview h2 {
		font-size: 3.2rem;
		line-height: 1.3;
		background: url(../img/interview-deco-2.png) no-repeat center bottom 1.5rem;
		background-size: 80% auto;
		margin-bottom: 2rem;
	}
}
/* ---- dl ---- */
.interview dl {
	width: 76rem;
	margin: 0 auto;
}
.interview dl dd:not(:last-of-type) {
	margin-bottom: 5rem;
}
.interview dl dt {
	background: #fff;
	border-radius: 1rem;
	display: flex;
	align-items: center;
	padding: 1rem 2rem 1.1rem 1.5rem;
	margin-bottom: 1.5rem;
}
.interview dl dt > span:nth-child(1) {
	color: var(--blue);
	font-family: var(--font-bebas);
	font-size: 4rem;
	line-height: 1;
	padding-top: 0.6rem;
}
.interview dl dt > span:nth-child(2) {
	padding-left: 1.5rem;
	font-weight: 500;
	font-size: 1.6rem;
}
.interview dl dd {
	padding: 0 2rem;
	line-height: 2;
}
@media screen and (max-width: 768px) {
	.interview dl {
		padding: 0 2rem;
		width: auto;
	}
	.interview dl dd:not(:last-of-type) {
		margin-bottom: 3rem;
	}
	.interview dl dt {
		padding: 1.2rem 2rem 1.1rem 1.5rem;
	}
	.interview dl dt > span:nth-child(2) {
		font-size: 1.7rem;
	}
	.interview dl dd {
		padding: 0 1.5rem;
	}
}



/* -------------------------------------------

shop

------------------------------------------- */
.shop {
	padding: 6rem 0 4rem 0;
	background: url(../img/shop-bg-1.jpg) no-repeat center bottom;
	background-size: 100% auto;
}
@media screen and (max-width: 768px) {
	.shop {
		padding: 6rem 2rem 4rem 2rem;
		background-size: 150% auto;
	}
}
/* ---- ul ---- */
.shop ul {
	display: flex;
	justify-content: space-between;
}
.shop ul li {
	width: 30%;
}
.shop figure img {
	border-radius: 2rem;
}
@media screen and (max-width: 768px) {
	.shop ul {
		display: block;
	}
	.shop ul li {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.shop ul li:not(:last-child) {
		margin-bottom: 3rem;
	}
	.shop ul li > * {
		width: 48%;
	}
	.shop figure img {
		border-radius: 2rem;
	}
}
/* dl */
.shop dl {
	padding: 1.5rem 2rem 0 2rem;
}
.shop dt {
	font-size: 1.8rem;
	margin-bottom: 0.5rem;
}
.shop dd {
	line-height: 1.8;
}
@media screen and (max-width: 768px) {
	.shop dl {
		padding: 0;
	}
}



/* -------------------------------------------

footer

------------------------------------------- */
footer {
	background: #404b5a;
	color: #fff;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 4rem 0;
}
footer .logo {
	width: 9rem;
	margin-bottom: 2.5rem;
}
@media screen and (max-width: 768px) {

}