@charset 'UTF-8';

/* -----------------------------------------------------------
エステティック採用 仕事紹介
-------------------------------------------------------------- */
.rec-header-img {
	background-image: url("../img/rec-esthe-job-mv.jpg");
}

.rec-nav-item[data-nav="job"] a {
	color: var(--esthec) !important;
}

@media screen and (min-width: 769px) {
	.rec-nav-item[data-nav="job"] a {
		cursor: auto !important;
		pointer-events: none !important;
	}
}

.rec-nav-item[data-nav="job"]::after {
	background: var(--esthec) !important;
	width: 100% !important;
}

#menu-box .rec-nav-sub.rec-nav-job, #menu-box .rec-nav-sub.rec-nav-descript {
	display: none !important;
}

@media screen and (max-width: 768px) {
	.rec-nav-item[data-nav="job"] {
		display: none !important;
	}
}

/* -----------------------------------------------------------
/* -----------------------------------------------------------
intro-area
-------------------------------------------------------------- */
.intro-area {
	margin: 80px 0 0;
}

.intro-note {
	margin: 30px 0 0;
}

.intro-note p {
	line-height: 2.1;
	letter-spacing: .05em;
	text-align: center;
}

.intro-note p:not(:first-of-type) {
	margin-top: 20px;
}

@media screen and (max-width: 768px) {

	.intro-area {
		margin: 40px 0 0;
	}
	
	.intro-note {
		margin: 20px 0 0;
	}
	
	.intro-note p {
		text-align: left;
	}

}

/* -----------------------------------------------------------
     env-list
-------------------------------------------------------------- */
.intro-area .env-list {
	width: 100%;
	max-width: 1600px;
	margin: 50px auto 0;
}

.intro-area .env-box {
	align-items: center;
	display: flex;
	gap: 0 50px;
}

.intro-area .env-box.reverse {
	flex-direction: row-reverse;
}

.intro-area .env-box .img {
	flex-shrink: 0;
	width: 50%;
}

.intro-area .env-box .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	aspect-ratio: 800/520;
}

.intro-area .env-ttl {
	align-items: center;
	border-bottom: 1px solid var(--esthec);
	display: flex;
	margin: 0 0 20px;
	padding: 0 0 15px;
}

.intro-area .env-ttl-en {
	flex-shrink: 0;
	font-size: 2.5rem;
	color: var(--esthec);
	margin: 0 20px 0 0;
}

.intro-area .env-ttl-ja {
	font-size: 2.3rem;
	color: var(--esthec);
	letter-spacing: .05em;
	line-height: 1.4;
}

.intro-area .env-txt p {
	line-height: 1.9;
	letter-spacing: .05em;
}

.intro-area .env-txt p:not(:first-of-type) {
	margin-top: 25px;
}

.intro-area .env-box .elements {
	max-width: 600px;
	padding: 0 0 10px;
}

.intro-area .env-note {
	display: flex;
	gap: 0 20px;
	margin: 30px 0 0;
}

.intro-area .env-note li {
	background: var(--esthec3);
	padding: 13px 20px 13px 90px;
	line-height: 1.3;
	letter-spacing: .03em;
	min-height: 67px;
}

.intro-area .env-note figure {
	position: relative;
	height: 100%;
	display: flex;
	align-items: center;
}

.intro-area .env-note figure img {
	width: 70px;
	height: 70px;
	position: absolute;
	left: -80px;
	bottom: -20px;
}

@media screen and (max-width: 768px) {

	.intro-area .env-list {
		margin: 20px 0 0;
	}

	.intro-area .env-box {
		display: block;
		margin: 30px 0 0;
	}

	.intro-area .env-list .env-box:first-of-type {
		margin-top: 0;
	}

	.intro-area .env-box .img {
		width: 100%;
	}

	.intro-area .env-box .img img {
		width: 100%;
		object-fit: unset;
		aspect-ratio: unset;
		height: auto;
	}

	.intro-area .env-box .elements {
		max-width: unset;
		padding: 15px 20px 0;
	}

	.intro-area .env-ttl {
		display: block;
		margin: 0 0 15px;
		padding: 0 0 10px;
	}

	.intro-area .env-ttl-en {
		font-size: 1.8rem;
		margin: 0 0 5px;
		text-align: center;
	}

	.intro-area .env-ttl-ja {
		font-size: 2.2rem;
		text-align: center;
	}

	.intro-area .env-note {
		display: block;
		margin: 25px 0 0;
	}

	.intro-area .env-note li {
		width: 100%;
	}

	.intro-area .env-note li:not(:first-child) {
		margin-top: 15px;
	}

	.intro-area .env-note figure img {
		width: 60px;
		height: 60px;
		bottom: -10px;
	}
	
	.intro-area .env-txt p:not(:first-of-type) {
		margin-top: 20px;
	}

}

/* -----------------------------------------------------------
flow-area
-------------------------------------------------------------- */
.flow-area {
	margin: 80px 0 0;
	position: relative;
	z-index: 2;
}

.flow-area .flow__outer {
	background: url("../img/rec-top-bg-esthe.jpg") right top/cover no-repeat;
	position: relative;
	height: 700px;
	width: 100%;
}

.flow-area .flow__inner {
	position: absolute;
	top: 60px;
	left: 0;
	display: flex;
}

.flow-area .flow__inner li {
	flex-shrink: 0;
	width: 500px;
	margin: 50px 0 0 80px;
}

.flow-area .flow__inner li:last-child {
	margin-right: 80px;
}

.flow-area .flow__inner li img {
	width: 100%;
}

.flow-area .flow-subttl {
	font-size: 2.3rem;
	color: var(--esthec);
	letter-spacing: .05em;
	line-height: 1.4;
	text-align: center;
	margin: 10px auto 0;
	width: fit-content;
	position: relative;
}

.flow-area .flow-subttl .rec-cmn-en {
	background: url("../img/rec-e-illust-flower.png")center/cover no-repeat;
	font-size: 2.3rem;
	margin: 0 7px 0 0;
	width: 50px;
	height: 47px;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	left: -50px;
	top:-20px;
}

.flow-area .flow-note {
	line-height: 1.9;
	letter-spacing: .05em;
	margin: 10px 0 0;
}

@media screen and (max-width: 768px) {

	.flow-area {
		margin: 50px 0 0;
	}
	
	.flow-area .flow__outer {
		background: url("../img/rec-top-bg-esthe.jpg") right top 170px/cover no-repeat;
		height: auto;
		margin: 20px 0 0;
		width: 100%;
	}
	
	.flow-area .flow__inner {
		position: static;
		display: block;
		top: 0;
	}
	
	.flow-area .flow__inner li {
		width: 100%;
		margin: 20px 0 0!important;
	}
	
	.flow-area .flow__inner li:first-child {
		margin-top: 0;
	}
	
	.flow-area .flow-subttl {
		font-size: 2.1rem;
	}
	
	.flow-area .flow-subttl .rec-cmn-en {
		font-size: 1.9rem;
		margin: 0 3px 0 0;
		width: 40px;
		height: 37px;
		left: -42px;
	}
	
	.flow-area .flow-note {
		margin: 5px 0 0;
		padding: 0 20px;
	}

}


/* -----------------------------------------------------------
career-area
-------------------------------------------------------------- */
.career-area .career-descript {
	line-height: 2.2;
	letter-spacing: .07em;
	margin: 30px 0 0;
}

.career-area .career-descript p:not(:first-of-type) {
	margin-top: 20px;
}

.career-area .career-descript p {
	text-align: center;
}

.career-area .career-img {
	text-align: center;
	margin: 20px 0 0;
}

@media screen and (max-width: 768px) {

	.career-area {
		margin: 50px 0 0;
	}
	
	.career-area .career-descript {
		margin: 20px 0 0;
	}
	
	.career-area .career-descript p {
		text-align: left;
		line-height: 2;
	}

}





/* -----------------------------------------------------------
faq-area
-------------------------------------------------------------- */
.faq-area {
	padding: 80px 0 0 0;
	position: relative;
	background: #fff;
}

.rec-e-subttl {
	font-size: 2.3rem;
	text-align: center;
	align-items: center;
	color: var(--esthec);
	display: flex;
	justify-content: center;
	letter-spacing: .07em;
	margin: 70px 0 0;
}

.rec-e-subttl::before, .rec-e-subttl::after {
	background: var(--esthec);
	content: "";
	flex-grow: 1;
	height: 1px;
}

.rec-e-subttl::before {
	margin: 0 20px 0 0;
}

.rec-e-subttl::after {
	margin: 0 0 0 20px;
}

.faq-accordion {
	margin: 20px 0 0;
	position: relative;
}

.faq-area .faq-accordion a:hover {
	color: inherit;
}

.faq-area .faq-accordion-icon {
	height: 20px;
	padding: 12px 0 0 0;
	position: relative;
	width: 20px;
}

.faq-area .faq-accordion-icon::before,
.faq-area .faq-accordion-icon::after {
	border-bottom: 2px solid #d7bd15;
	content: "";
	height: 1px;
	position: absolute;
	width: 100%;
	transition: all .3s;
}

.faq-area .faq-accordion-icon::before {
	transform: rotate(0deg);
}

.faq-area .faq-accordion-icon::after {
	transform: rotate(90deg);
}

.faq-area .faq-accordion li {
	border-bottom: 1px solid #ddd;
}

.faq-area .faq-accordion .title {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.7;
	width: 100%;
	letter-spacing: .03em;
	padding: 4px 0 0 50px;
}

.faq-area .faq-accordion .quest {
	align-items: center;
	display: flex;
	position: relative;
	padding: 20px 20px 20px 35px;
	justify-content: space-between;
	width: 100%;
	transition: .5s;
}

.faq-area .faq-accordion .quest::before {
	content: "Q";
	font: 400 2.5rem /1 'Yellowtail', cursive;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	color: var(--esthec);
}

.faq-area .faq-accordion .quest:hover {
	cursor: pointer;
}

.faq-area .faq-accordion .quest.active .faq-accordion-icon::after {
	transform: rotate(180deg);
}

.faq-area .faq-accordion .answer {
	display: none;
}

.faq-area .faq-accordion .answer-txt {
	background: var(--esthec3);
	padding: 20px 20px 20px 85px;
	line-height: 1.8;
	position: relative;
}

.faq-area .faq-accordion .answer-txt::before {
	color: var(--esthec);
	content: "A";
	font: 400 2.5rem /1 'Yellowtail', cursive;
	position: absolute;
	top: 22px;
	left: 38px;
}

.faq-area .faq-accordion .answer-txt p {
	line-height: 2;
	color: #2d2c2b;
	letter-spacing: .03em;
}

.faq-area .faq-accordion .answer-txt a {
	text-decoration: underline;
}

.faq-area .faq-accordion .answer-txt a:hover {
	opacity: .6;
	transition: all .2s;
}

.faq-area .faq-accordion li {
	position: relative;
}

div[class^="rec-e-subttl-wrap"] {
	position: relative;
}

div[class^="rec-e-subttl-wrap"]::before,
div[class^="rec-e-subttl-wrap"]::after {
	content: "";
	position: absolute;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 2;
}

.faq-area .rec-e-subttl-wrap1::before {
	background-image: url(../img/rec-e-faq1.png);
	width: 91px;
	height: 337px;
	top: -70px;
	left: -110px;
}

.faq-area .rec-e-subttl-wrap1::after {
	background-image: url(../img/rec-e-faq3.png);
	width: 121px;
	height: 344px;
	top: -30px;
	right: -140px;
}

.faq-area .rec-e-subttl-wrap2::before {
	background-image: url(../img/rec-e-faq4.png);
	width: 118px;
	height: 335px;
	top: 50px;
	left: -140px;
}

.faq-area .rec-e-subttl-wrap2::after {
	background-image: url(../img/rec-e-faq2.png);
	width: 125px;
	height: 350px;
	top: 100px;
	right: -150px;
	left: auto;
}

@media screen and (max-width: 768px) {

	.faq-area {
		margin: 50px 0 0 0;
		padding: 0;
	}
	
	.faq-area .rec-e-subttl {
		font-size: 2.1rem;
		margin: 40px 0 0;
	}

	.faq-area .faq-accordion-icon {
		height: 18px;
		width: 18px;
	}
	
	.faq-area .faq-accordion li {
		margin: 0;
	}
	
	.faq-area .faq-accordion li:last-child {
		border-bottom: none;
	}
	
	.faq-area .faq-accordion .title {
		font-size: 1.6rem;
		padding: 12px 10px 0 8px;
		line-height: 1.4;
	}
	
	.faq-area .faq-accordion .quest {
		padding: 5px 10px 15px 30px;
	}
	
	.faq-area .faq-accordion .quest::before {
		left: 8px;
		font-size: 2.3rem;
	}
	
	.faq-area .faq-accordion .answer-txt {
		padding: 15px 8px 15px 48px;
		width: 100%;
	}
	
	.faq-area .faq-accordion .answer-txt::before {
		font-size: 2.5rem;
		top: 18px;
		left: 13px;
	}
	
	.faq-area .faq-accordion .answer-txt p {
		line-height: 1.8;
		font-size: 1.6rem;
	}
	
	.faq-area .faq-sp-img {
		max-width: 375px;
		height: 175px;
		width: 85%;
		margin: 20px auto 0;
		position: relative;
	}
	
	.faq-area .faq-sp-img::before {
		content: "";
		height: 100%;
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		margin: 0 auto;
		background:
			url(../img/rec-e-faq1.png)left bottom/auto 97% no-repeat,
			url(../img/rec-e-faq2.png)left 30% bottom/auto 100% no-repeat,
			url(../img/rec-e-faq3.png)left 65% bottom/auto 100% no-repeat,
			url(../img/rec-e-faq4.png)right 0 bottom/auto 100% no-repeat;
	}
	
	.faq-area .faq-accordion ul li::before {
		display: none!important;
	}
	
	div[class^="rec-e-subttl-wrap"]::before,
	div[class^="rec-e-subttl-wrap"]::after {
		display: none!important;
	}

}



/* -----------------------------------------------------------
rec-ft-menu
-------------------------------------------------------------- */
.rec-ft-menu {
	margin-top: 60px;
}

.rec-ft-menu div[data-infobtn="job"]{
	display: none;
}

@media screen and (max-width: 768px) {
	.rec-ft-menu {
		margin-top: 30px;
	}
}


