﻿@charset "UTF-8";
* {
	box-sizing: border-box;
	overflow-wrap: break-word
}

/*--- CSS Variables ---*/
:root {
  /* color */
  --color-primary: #dd984c;
  --color-secondary: #dcbfa3;
  --color-bg: #fff;
  --color-fg: #4c4842;
  --color-accent: #7d766c;
  --color-gradient: #dd984c, #f2b15a;
}

/*--- base ---*/
html { 
	width: 100%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%
}
body {
	font-family: "Ibarra Real Nova", "Shippori Mincho B1", serif;
	background: var(--color-bg);
	font-size: clamp(0.875rem, 0.82rem + 0.22vw, 1rem);
	line-height: 1.6;
	color: var(--color-fg);
	font-weight: 500;
}
body::before {
	content: "";
	display: block;
	height: 100%;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: url('../img/recruit/bg_repeat.webp') no-repeat 0 0;
	background-size: cover;
	z-index: -1;
}
img { width: 100%;	vertical-align:top;}
a {
	-webkit-transition: all ease-in-out .2s;
	transition: all ease-in-out .2s;
	color: var(--color-fg);
}
/* base */
section#point,
section#simulation{
	padding-top: 3%;
}

section:nth-child(even) {
	background: rgba(255, 255, 255, .7);
}
section:nth-child(odd) {
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
}
.section_inner {
	width: 100%;
	max-width: 1000px;
	padding: 50px 0;
	margin: 0 auto;
}
h2 {
	position: relative;
	padding-top: 48px;
	font-size: clamp(24px, calc(24px + (32 - 24) * ((100vw - 390px) / (1280 - 390))), 32px);
	font-weight: 600;
	text-align: center;
	line-height: 1.25;
	width: fit-content;
	margin: 0 auto;
	z-index: 0;
	text-shadow: 0 0 5px rgb(255 255 255 / 0.8),0 0 5px rgb(255 255 255 / 0.8),0 0 5px rgb(255 255 255 / 0.8),0 0 10px rgb(255 255 255 / 0.8),0 0 10px rgb(255 255 255 / 0.8);
}
h2:after {
	content: '';
	display: block;
	width: 50%;
	height: 2px;
	margin: 24px auto 0;
	background: linear-gradient(to right, transparent, var(--color-fg), transparent);
}
.fancy-ruby {
  position: relative;
  display: inline-block;
}
.fancy-ruby > span {
  position: absolute;
  top: -1.25em;
  left: 0;
  width: 100%;
  font-size: 0.3em;
  display: flex;
  justify-content: space-between;
  color: var(--color-primary);
  padding: 0 1.2em;
}
h2 span {
	font-weight: 600;
}
h2>img {
	max-width: 640px
}
strong {
	font-weight: 700;
}
.m10  { margin: 10px; } .mt10 { margin-top: 10px; } .mr10 { margin-right: 10px; } .mb10 { margin-bottom: 10px; } .ml10 { margin-left: 10px; }
.m15  { margin: 15px; } .mt15 { margin-top: 15px; } .mr15 { margin-right: 15px; } .mb15 { margin-bottom: 15px; } .ml15 { margin-left: 15px; }
.m20  { margin: 20px; } .mt20 { margin-top: 20px; } .mr20 { margin-right: 20px; } .mb20 { margin-bottom: 20px; } .ml20 { margin-left: 20px; }
.m25  { margin: 25px; } .mt25 { margin-top: 25px; } .mr25 { margin-right: 25px; } .mb25 { margin-bottom: 25px; } .ml25 { margin-left: 25px; }
.m30  { margin: 30px; } .mt30 { margin-top: 30px; } .mr30 { margin-right: 30px; } .mb30 { margin-bottom: 30px; } .ml30 { margin-left: 30px; }
.m35  { margin: 35px; } .mt35 { margin-top: 35px; } .mr35 { margin-right: 35px; } .mb35 { margin-bottom: 35px; } .ml35 { margin-left: 35px; }
.m40  { margin: 40px; } .mt40 { margin-top: 40px; } .mr40 { margin-right: 40px; } .mb40 { margin-bottom: 40px; } .ml40 { margin-left: 40px; }
.m45  { margin: 45px; } .mt45 { margin-top: 45px; } .mr45 { margin-right: 45px; } .mb45 { margin-bottom: 45px; } .ml45 { margin-left: 45px; }
.m50  { margin: 50px; } .mt50 { margin-top: 50px; } .mr50 { margin-right: 50px; } .mb50 { margin-bottom: 50px; } .ml50 { margin-left: 50px; }
.p10  { padding: 10px; } .pt10 { padding-top: 10px; } .pr10 { padding-right: 10px; } .pb10 { padding-bottom: 10px; } .pl10 { padding-left: 10px; }
.p15  { padding: 15px; } .pt15 { padding-top: 15px; } .pr15 { padding-right: 15px; } .pb15 { padding-bottom: 15px; } .pl15 { padding-left: 15px; }
.p20  {padding: 20px;} .pt20 { padding-top: 20px; } .pr20 { padding-right: 20px; } .pb20 { padding-bottom: 20px; } .pl20 { padding-left: 20px; }
.p25  { padding: 25px; } .pt25 { padding-top: 25px; } .pr25 { padding-right: 25px; } .pb25 { padding-bottom: 25px; } .pl25 { padding-left: 25px; }
.p30  { padding: 30px; } .pt30 { padding-top: 30px; } .pr30 { padding-right: 30px; } .pb30 { padding-bottom: 30px; } .pl30 { padding-left: 30px; }
.p35  { padding: 35px; } .pt35 { padding-top: 35px; } .pr35 { padding-right: 35px; } .pb35 { padding-bottom: 35px; } .pl35 { padding-left: 35px; }
.p40  { padding: 40px; } .pt40 { padding-top: 40px; } .pr40 { padding-right: 40px; } .pb40 { padding-bottom: 40px; } .pl40 { padding-left: 40px; }
.p45  { padding: 45px; } .pt45 { padding-top: 45px; } .pr45 { padding-right: 45px; } .pb45 { padding-bottom: 45px; } .pl45 { padding-left: 45px; }
.p50  { padding: 50px; } .pt50 { padding-top: 50px; } .pr50 { padding-right: 50px; } .pb50 { padding-bottom: 50px; } .pl50 { padding-left: 50px; }
/* flexbox */
.flex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
  }
.flex_harf{
	width: 50%;
}
.flex_inner50-100 {
	width: 50%
}
.ai_center {
	align-items: center;
}
.ai_end {
	align-items: flex-end
}
/* SP style */
@media print, screen and (max-width:1023px) {
}
/* PC style */
@media print, screen and (min-width:1024px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
	h2 {
	letter-spacing: .15em;
	}
}

/* header */
header{
	background:none;
	position: relative;
	z-index: 999;
}
h1.rec_logo{
	width: min(240px, 40%);
	height: auto;
	font-size: 0;
}
h1 span{
	display: block;
	width: 10vw;
	position: absolute;
	left: 5vw;
	top: 5vh;
	z-index: 5;
}
.globalnavi li a {
	font-family: 'Shippori Mincho', serif;
}
#sp_header{
	position: fixed;
	top: 0;
	width: 100%;
	height: 56px;
	z-index: 2;
	background: #FFF;
	z-index: 9999;
	justify-content: flex-end;
	align-items: center;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	.pc_view { display: none}
	.sp_view {display: block}
	header{
		height: 56px;
		background: #e9e2e9;
	}
	header > img {
		padding-top: 60px;
	}
	h1.rec_logo {
		position: fixed;
		left: 60px;
		z-index: 99999;
	}
	h1.rec_logo a {
		display: -webkit-box;
		display: flex;
		-webkit-box-align: center;
		align-items: center;
		height: 56px;
	}
	h1.rec_logo img {
	}
	.section_inner {
		padding: 8px 8px 32px;
	}
	.recruitpage h2 {
		font-size: 2rem;
		margin-bottom: 25px
	}
	.flex_inner50-100 {
		width: 100%
	}
	h1 span{
		width: 16vw;
		left: 3vw;
	}
	#spMenu {
		background: #553A05;
		position: fixed;
		top: 0;
		left: 0;
		width: 56px;
		height: 56px;
		z-index: 10000;
	}
	#spMenu span {
		position: absolute;
		left: 0;
		right: 0;
		margin: 0 auto;
		width: 70%;
		height: 2px;
		background: #FFF;
		transition: all .4s;
	  }
	  #spMenu span:nth-of-type(1) {
		top: 15px;
	  }
	  #spMenu span:nth-of-type(2) {
		top: 27px;
	  }
	  #spMenu span:nth-of-type(3) {
		bottom: 15px;
	  }
	  #spMenu.active {
	  }
	  #spMenu.active span:nth-of-type(1) {
		transform: translateY(12px) rotate(-315deg);
	  }
	  #spMenu.active span:nth-of-type(2) {
		opacity: 0;
	  }
	  #spMenu.active span:nth-of-type(3) {
		transform: translateY(-12px) rotate(315deg);
	  }
	#sp_header-logo{
		height: auto;
		width: 200px;
		padding-left: 60px;
		font-size: 0;
	}
	figure{
	}
	#header_globalnavi {
		display: none;
		position: fixed;
		top: 54px;
		left: 0;
		right: 0;
		bottom: 45px;
		background: rgba(255,255,255,.9);
		width: 100%;
		height: 100%;
		padding: 0;
		margin: 0;
		backdrop-filter: blur(5px);
		-webkit-backdrop-filter: blur(5px);
		z-index: 999;
	}
	#header_globalnavi ul {
		flex-direction: column;
		flex-wrap: nowrap;
		height: calc(100vh - 60px);
		justify-content: center;
		align-items: center;
	}
	#header_globalnavi ul li + li {
		margin-top: 16px;
		padding-top: 16px;
	}
	#header_globalnavi ul li.salespage {
		width: 90%;
		max-width: 320px;
		margin: 40px auto;
	}
	#header_globalnavi ul li.salespage a {
		display: block;
		width: 100%;
		padding: 10px;
		border: none;
		background: var(--color-accent);
		color: #fff;
	}
	#header_globalnavi ul li a {
		display: block;
		position: relative;
		font-size: 1.125rem;
		text-align: center;
	}
	#header_globalnavi ul li a span {
		display: block;
		font-size: 1.25em;
	}
	#sp_header ul{
	}
	#sp_header ul li {
		list-style: none;
		text-align: center;
		padding: 0px 4px;
	}
	#sp_header ul li:last-child {
		border-right: none;
	}
	#sp_header .btn{
		display: block;
		background-size: contain;
		white-space: nowrap;
		overflow: hidden;
		margin: 0 auto;
	}
	.sp_header-menu {}
	#sp_header li a i {
		display: block;
		font-size: 3rem;
		position: relative;
	}
	.sp_header-tel i {
		color: var(--color-primary);
	}
	.sp_header-line i {
		color: #06c755;
		transform: scale(0.9);
	}
	.sp_header-mail i {
		color: var(--color-accent);
	}
	#sp_header li a i::after {
		content: "";
		display: block;
		width: 30px;
		height: 30px;
		background: #fff;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		left: 0;
		right: 0;
		margin: 0 auto;
		z-index: -1;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	.pc_view {display: block}
	.sp_view {display: none}
	.section_inner {
		padding: 50px 10px;
	}
	/*--- header ---*/
	#spMenu {
		display: none;
	}
	header > img {
		padding-top: 80px;
	}
	.header_inner {
		position: fixed;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
		align-items: center;
		width: 100%;
		height: 80px;
		padding: 0 10px;
		background: rgba(255,255,255,.8);
		backdrop-filter: blur(8px);
	}
	.header_inner nav ul li a {
		align-items: center;
		flex-direction: column;
		justify-content: center;
		font-size: .8em;
		height: 80px;
		padding: 0 5px;
		text-transform: uppercase;
		font-weight: 600;
	}
	#header_nav ul li a span {
		display: block;
		font-size: .8em;
		line-height: 1.25;
	}
	#header_nav ul li a:hover {
		color: #699bd7;
	}
	#sp_header{
		display: none;
	}
	figure{
		padding-top: 80px;
	}
	.globalnavi {
		overflow: hidden;
		width: calc(100% - 240px);
		max-width: 900px;
		z-index: 1;
	}
	.globalnavi ul {
		justify-content: flex-end;
	}
	.globalnavi li {
		height: 80px;
		text-align: center;
		width: calc(100% / 7);
	}
	.globalnavi li a {
		width: 100%;
		height: 80px;
		line-height: 1.5;
		transition: .5s color;
		align-items: center;
		justify-content: center;
		flex-direction: column;
	}
	.globalnavi li a > span.flex {
		flex-direction: column;
		justify-content: center;
		height: 100%;
	}
	.globalnavi li a span.serif {
		display: block;
		font-size: 1em;
	}
	.globalnavi li a:hover {
		color: var(--color-primary);
	}
	.mv p {
		padding-top: 80px;
		width: 100%;
		max-width: 1000px;
		margin: 0 auto;
		line-height: 0;
	}
}

/*footer*/
footer {
	text-align: center;
	background: #553A05;
	padding: 5px 0;
	color: #fff;
}
.rec_footer_link a {
	display: inline-block;
	margin: 5px;
	color: #fff;
}
.rec_footer_link a img {
	width: 100%;
	max-width: fit-content;
	height: auto;
}
.copyright {
	font-size: 0.75rem;
}
.copyright a {
	color: #fff;
}

/*about*/
#about{
	text-align: center;
}
.rec_about_box p {
	font-size: 1.2em;
}
.rec_about_box p:not(:last-of-type){
	margin-bottom: 0.8em;
}
.rec_about_box .txt_rec_fade {
	width: fit-content;
	margin: 0 auto 24px;
	line-height: 2;
	background: rgb(255 255 255 / 0.8);
	padding: 1.5em;
	box-shadow: 5px 5px 20px rgb(75 70 65 / 0.2);
	border-radius: 24px 0 24px 0;
}
.rec_about_box .txt_rec_fade strong {
	color: var(--color-primary);
	font-size: 1.2em;
	position: relative;
	padding: 0 0.5em;
	border-bottom: 1px solid var(--color-primary);
}
/*.rec_about_box .txt_rec_fade strong::before {
	content: "";
	display: block;
	width: 100%;
	height: 8px;
	background: var(--color-accent);
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: -1;
}*/
.rec_about_point h3 {
	background: linear-gradient(to right, transparent, var(--color-primary), transparent);
	color: #fff;
	font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 390px) / (1280 - 390))), 24px);
	font-weight: 600;
	margin-bottom: 0.75em;
	padding: 8px;
	text-shadow: 0 0 5px var(--color-primary), 0 0 5px var(--color-primary), 0 0 5px var(--color-primary), 0 0 10px var(--color-primary), 0 0 10px var(--color-primary), 0 0 10px var(--color-primary);
}
.rec_about_point p {
	font-size: 1rem;
	line-height: 2;
}
.rec_about_point p + h3 {
	margin-top: 24px;
}
.rec_about_point strong {
	background: var(--color-bg);
	padding: 0 4px;
}

/* SP style */
@media print, screen and (max-width:1023px) {
	.mv p {
		padding-top: 56px;
	}
	.rec_about_box p {
		padding: 0 1em;
	}
}

/*rec_slider*/
#rec_slider .section_inner {
	padding: 0;
}

/*reward*/
#reward .section_inner {
}
#reward .section_inner > div {
	position: relative;
}
.reward_txt {
	text-align: center;
}
.reward_txt p {
	line-height: 1.8;
	width: 100%;
	margin: 0 auto;
}
.reward_list {
	margin-bottom: 1em;
}
.reward_list dl {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-weight: bold;
	background: rgba(255,255,255,.6);
	max-width: 600px;
	width: calc(100% / 3 - 10px);
	margin: 5px;
	padding: 10px;
	border-radius: 20px;
	backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
	box-shadow: 5px 5px 3px rgb(0 0 0 / 20%);
}
.reward_list dl:nth-child(4), .reward_list dl:nth-child(5) {
	width: calc(100% / 2 - 10px);
}
.reward_list dl dt {
	position: relative;
	font-weight: bold;
	color: #fff;
	background: #a59480;
	font-size: 1.2em;
	line-height: 1.2;
	border-radius: 10px;
	margin-bottom: 10px;
	width: 100%;
	padding: 5px;
}
.reward_list dl dd {
	font-weight: bold;
	line-height: 1.2;
	width: 100%;
}
.reward_txt .check {
	display: inline-block;
	color: #3264af;
	font-weight: bold;
	font-size: 1.2em;
	margin: 0 .5em;
	border-bottom: 1px solid;
}
.ribbon {
	font-family: 'Shippori Mincho', serif;
	font-weight: 700;
	background: #ef5b70;
	padding: 5px 3em;
	color: #fff;
}
.ribbon span {
	font-size: 1.4em;
}

.reward_txt p.txt_box {
	width: fit-content;
	line-height: 1.8;
	position: relative;
	max-width: 100%;
}
.reward_banner {
	max-width: 690px;
	line-height: 0;
	margin: 0 auto;
}

/* SP style */
@media print, screen and (max-width:1023px) {
	#reward {
		background-position: 100% 0;
	}
	.reward_list {
		max-width: 640px;
		margin: 0 auto 1em;
	}
	.reward_txt p {
		font-size: 1.6rem;
		line-height: 1.5;
	}
	.reward_txt p + p {
		margin-top: 20px;
	}
	.reward_txt p strong {
		font-size: 5vw;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	#reward {
		background-position: center;
	}
	.reward_txt p {
		font-size: 1.2em;
	}
	.reward_txt p + p {
		margin-top: 40px;
	}
	.reward_txt p br.spbr {
		display: none;
	}
	.reward_txt .txt_box .spbr {
		display: none;
	}
	.txt_box strong {
		font-size: 1.2em;
	}
	.reward_list dl {
		font-size: 1.2em;
	}
	.reward_list dl dd {
		font-size: 1.2em;
	}
}

/*special_treatment*/
#special_treatment .point {
	flex-direction: column;
	align-items: center;
}
#special_treatment .point dl {
	line-height: 1.25;
	font-family: 'Shippori Mincho', serif;
	background: #FFF;
	padding: 10px;
	filter: drop-shadow(4px 4px 5px rgba(0,0,0,.25));
	transform: rotate(0deg);
	box-shadow: inset 0 0 0 2px #ffffff, inset 0 0 0 3px #0f718f;
}
#special_treatment .point dl dt {
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 100%;
	line-height: 1;
	text-align: center;
	color: #0f718f;
}
#special_treatment .point dl dt p {
	margin-bottom: 5px;
	border-bottom: 1px solid #FFF;
	color: #000;
}
#special_treatment .point dl dt p span {
	font-size: .75em;
	margin-right: .25em;
}
#special_treatment .point dl dt h3 {
	line-height: 1.2;
	font-weight: bold;
}
#special_treatment .point dl dd {
}
#special_treatment .point dl dd ruby {
	font-size: 1.2em;
	color: #0f718f;
	font-weight: 800;
}
#special_treatment ul.treatment {
	margin: 0 auto;
	justify-content: center;
}
#special_treatment ul.treatment li {
	position: relative;
	align-items: center;
	justify-content: center;
	aspect-ratio: 1/1;
	list-style: none;
	text-align: center;
	line-height: 1.5;
	font-weight: bold;
	margin: 5px;
	background: linear-gradient(45deg, var(--color-gradient));
	border-radius: 50%;
	overflow: hidden;
	border: 4px double #fff;
}
#special_treatment ul.treatment li::before {
	content: "";
	display: block;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	position: absolute;
	top: 1px;
	left: 1px;
}
.treatment li:nth-child(2) {animation-delay: .1s}
.treatment li:nth-child(3) {animation-delay: .2s}
.treatment li:nth-child(4) {animation-delay: .3s}
.treatment li:nth-child(5) {animation-delay: .4s}
.treatment li:nth-child(6) {animation-delay: .5s}
.treatment li:nth-child(7) {animation-delay: .6s}
.treatment li:nth-child(8) {animation-delay: .7s}
.treatment li:nth-child(9) {animation-delay: .8s}
.treatment li:nth-child(10) {animation-delay: .9s}
.treatment li:nth-child(11) {animation-delay: 1s}
.treatment li:nth-child(12) {animation-delay: 1.1s}
#special_treatment ul.treatment li i {
	text-align: center;
	opacity: .15;
	color: #FFF;
}
#special_treatment ul.treatment li span {
	position: absolute;
	color: #FFF;
	font-weight: 700;
	line-height: 1.2;
}
#special_treatment p.txt_note {
	text-align: right;
}
#special_treatment p:not(.txt_note) {
	font-size: 1.2em;
	text-align: center;
	font-weight: 600;
	line-height: 2;
	margin: 1.5em auto;
}
#special_treatment p:not(.txt_note) strong {
	font-size: 1.2em;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	/*special_treatment*/
	#special_treatment {
		background-size: 30%;
	}
	#special_treatment h2 {
		text-shadow: 0 0 10px rgb(255 255 255),0 0 10px rgb(255 255 255),0 0 10px rgb(255 255 255),0 0 10px rgb(255 255 255),0 0 10px rgb(255 255 255);
	}
	#special_treatment .point dl {
		display: flex;
		flex-direction: row;
		align-items: center;
		justify-content: space-between;
		width: 100%;
		max-width: 720px;
		margin-bottom: 10px;
	}
	#special_treatment .point dl dt {
		font-size: 1.1em;
		width: 100px;
	}
	#special_treatment .point dl dd {
		width: calc(100% - 110px);
	}
	#special_treatment ul.treatment {
		max-width: 500px;
	}
	#special_treatment ul.treatment li{
		width: calc(100% / 3 - 10px);
	}
	#special_treatment ul.treatment li i {
		font-size: 7rem;
	}
	#special_treatment ul.treatment li span {
		font-size: 1.2em;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	/*special_treatment*/
	#special_treatment h2 br {
		display: none;
	}
	#special_treatment .point {
		flex-direction: row;
		flex-wrap: nowrap;
		align-items: flex-start;
		justify-content: space-between;
		margin-bottom: 20px;
	}
	#special_treatment .point dl {
		width: calc(100% / 3 - 10px);
	}
	#special_treatment .point dl dd {
		display: inline;
		line-height: 1.5;
	}
	#special_treatment .point dl dt {
		font-size: 1.4em;
		margin: 0 auto 20px;
	}
	#special_treatment ul li {
		width: calc(50% - 10px);
	}
	#special_treatment .section_inner {
		max-width: 600px;
	}
	#special_treatment ul.treatment li {
		width: calc(100% / 4 - 10px);
	}
	#special_treatment ul.treatment li i {
		font-size: 9rem;
	}
	#special_treatment ul.treatment li span {
		font-size: 1.5em;
	}
}

/*example*/

.example_wrapper {

}
.example_wrapper > div {
	position: relative;
	padding: 24px 0;
	background: rgba(255, 255, 255, .8);
	border-radius: 20px;
	box-shadow: inset 0 0 0 3px #FFF, inset 0 0 0 5px #0f718f;
}
.example_wrapper > div:nth-child(2) {animation-delay: .25s;}
.example_wrapper > div:nth-child(3) {animation-delay: .5s;}
.example_wrapper > div img {
	text-align: center;
	color: #699bd7;
	font-weight: bold;
	font-size: 1.2em;
	line-height: 1.25;
	aspect-ratio: 1/1;
	transform: rotate(-5deg);
	filter: drop-shadow(4px 4px 2px rgba(50,0,0,.3));
}
.example_wrapper > div:nth-of-type(1) h3 span.eg_title_bg {
	background-image: url('../img/recruit/bg_example_01.png');
}
.example_wrapper > div:nth-of-type(2) h3 span.eg_title_bg {
	background-image: url('../img/recruit/bg_example_02.png');
}
.example_wrapper > div:nth-of-type(3) h3 span.eg_title_bg {
	background-image: url('../img/recruit/bg_example_03.png');
}
.example_wrapper > div:nth-of-type(4) h3 span.eg_title_bg {
	background-image: url('../img/recruit/bg_example_04.png');
}
.example_wrapper > div:nth-of-type(even) h3 span.eg_title_bg {
	background-position: left;
}
.example_wrapper p.eg_title_time {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	font-family: 'Shippori Mincho', serif;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	color: #FFF;
	background: #0f718f;
	height: auto;
	margin: 0 auto 24px;
	padding: 8px;
}
.example_wrapper p.eg_title_time span {
	display: block;
	font-weight: bold;
	font-size: .8em;
}
#example dl {
	width: 90%;
	margin: 0 auto 10px;
}
#example dl + dl {
	margin-top: 5px;
}
#example dl dt {
	width: 8em;
}
#example dl dd {
	width: calc(100% - 8em);
	text-align: right;
}
#example dl dd > div {
	justify-content: flex-end;
	align-items: center;
	width: fit-content;
	font-size: .5em;
	line-height: 1.25;
	text-align: right;
	position: relative;
	margin-left: auto;
	line-height: 1;
}
#example dl dd > div:before,
#example dl dd > div:after {
	position: absolute;
	font-size: 2em;
}
#example dl dd > div:before {
	content: '（';
	left: -1em;
}
#example dl dd > div:after {
	content: '）';
	right: -1.1em;
}
#example dl dd > div span {
	display: inline-block;
	margin-right: .5em;
}
#example dl:last-of-type {
	align-items: flex-end;
	border-top: 1px solid #554238;
	padding-top: 0.5em;
}
#example dl:last-of-type dt {
	font-weight: bold;
	width: 0;
}
#example dl:last-of-type dd {
	font-weight: bold;
	color: #0f718f;
	width: 100%;
}
#example p.example_txt {
	font-size: 1.2em;
	text-align: center;
	font-weight: bold;
	margin: 50px auto 0;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	.example_wrapper {
		margin: auto;
	}
	.example_wrapper > div {
		width: 100%;
		max-width: 460px;
		margin: auto;
	}
	.example_wrapper > div:after {
		width: 180px;
		height: 180px;
	}
	.example_wrapper > div img {
		max-width: 200px;
		margin:0 auto 10px;
	}
	.example_wrapper h3 {
		font-size: 1.2em;
	}
	.example_wrapper h3 span.eg_title_bg {
		padding: 0 10px;
	}
	.example_wrapper p.eg_title_time {
		font-size: 1.6em;
	}
	#example dl {
		font-size: 1.2em;
		padding: 0 5px;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	/*example*/
	.example_wrapper {
		justify-content: space-between;
		margin: auto;
	}
	.example_wrapper > div {
		width: calc(50% - 10px);
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}
	.example_wrapper > div:after {
		width: 200px;
		height: 200px;
	}
	.example_wrapper > div:nth-child(n + 3) {
		margin-top: 20px;
	}
	.example_wrapper > div img {
	width: calc(50% - 20px);
	}
	.example_wrapper h3 {
		font-size: 1.4em;
	}
	.example_wrapper h3 span.eg_title_bg {
		padding: 0 10px;
	}
	.example_wrapper > div:nth-of-type(odd) h3 span.eg_title_bg span {
		margin-right: 30%;
	}
	.example_wrapper > div:nth-of-type(even) h3 span.eg_title_bg span {
		margin-left: 30%;
	}
	.example_wrapper p.eg_title_time {
		font-size: 3rem;
		width: 100%;
		top: -70px;
	}
	#example dl {
		font-size: 1.6em;
		justify-content: space-between;
	}
}


/*job_description*/
#job_description {

}
.job_description p {
	font-size: 1.2em;
	font-weight: bold;
	text-align: center;
	margin: 24px auto 40px;
}
.job_description_eg {
	position: relative;
	font-size: 1.1em;
	width: 100%;
	max-width: 800px;
	background: rgb(255 255 255 / 0.8);
	margin: 0 auto;
	padding: 8px;
	box-shadow: 5px 5px 20px rgb(75 70 65 / 0.2);
}
.job_description_eg + .job_description_eg {
	margin-top: 32px;
}
.job_description_eg:nth-of-type(odd) {
	border-radius: 0 24px 0 24px;
}
.job_description_eg:nth-of-type(even) {
	border-radius: 24px 0 24px 0;
}
.job_description_eg dt {
	font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 390px) / (1280 - 390))), 24px);
	font-weight: 700;
	color: #FFF;
	padding: 8px;
	margin-top: -24px;
	text-shadow: 0 0 5px var(--color-primary), 0 0 5px var(--color-primary), 0 0 5px var(--color-primary), 0 0 10px var(--color-primary), 0 0 10px var(--color-primary), 0 0 10px var(--color-primary);
}
.job_description_eg:nth-of-type(odd) dt {
	margin-left: -16px;
	padding-left: 16px;
	background: linear-gradient(to right, var(--color-gradient), transparent);
}
.job_description_eg:nth-of-type(even) dt {
	text-align: right;
	padding-right: 16px;
	margin-right: -16px;
	background: linear-gradient(to left, var(--color-gradient), transparent);
}
.job_description_eg dd {
	padding: clamp(16px, calc(16px + (24 - 16) * ((100vw - 390px) / (1280 - 390))), 24px);
}
.job_description_eg ul {
	list-style: square;
	margin-left: 1.5em;
	margin-bottom: 1em;
}
.job_description_eg ul li {
	width: fit-content;
	font-weight: 600;
	border-bottom: 1px dashed var(--color-accent);
	padding-bottom: 4px;
	margin-bottom: 4px;
}
.job_description p.txt_rec_catch {
	line-height: 2;
	font-weight: 400;
	margin-top: 32px;
}
.job_description p.txt_rec_catch strong {
	display: block;
	font-size: 1.5em;
	line-height: 1.2;
	margin-bottom: 0.25em;
}

/* SP style */
@media print, screen and (max-width:1023px) {
	.job_description dl + dl {
		margin-top: 40px;
	}
	.job_description dl dt {
		margin: 0 auto;
	}
	.job_description dl dd {
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	/*.job_description dl:nth-of-type(odd) {
		left: 20px;
	}
	.job_description dl:nth-of-type(even) {
		right: 20px;
	}*/
	.job_description dl + dl {
		margin-top: 20px;
	}
	.job_description dl dt {
	}
	.job_description dl dd {
	}
}

/*COVID-19*/
#COVID-19 {
	padding: 1.2em .5em;
	background: #e0f0ff;
}
#COVID-19 img {
	display: block;
	max-width: 720px;
	margin: 0 auto;
}
/* SP style */
@media print, screen and (max-width:1023px) {
}
/* PC style */
@media print, screen and (min-width:1024px) {
}

/* recommend */
#recommend .section_inner {
}
#recommend ul li {
	align-items: flex-start;
	justify-content: center;
	text-align: center;
	color: #FFF;
	font-weight: bold;
	height: auto;
	aspect-ratio: 1/1;
	position: relative;
	box-shadow: 5px 5px 10px rgba(90, 75, 65, .3);
	border-radius: 50%;
}
#recommend ul li img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	height: 100%;
	object-fit: cover;
	border-radius: 50%;
}
#recommend ul li p {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	align-items: center;
	position: absolute;
	height: auto;
	aspect-ratio: 7/3;
	background: rgba(255,255,255,.8);
	color: #000;
	font-family: 'Shippori Mincho', serif;
	font-weight: 700;
	line-height: 2;
	backdrop-filter: blur(8px);
	-webkit-backdrop-filter: blur(8px);
	filter: drop-shadow(5px 5px 5px rgba(0,0,0,.3));
}
#recommend ul li:nth-child(2) {animation-delay: .1s}
#recommend ul li:nth-child(3) {animation-delay: .2s}
#recommend ul li:nth-child(4) {animation-delay: .3s}
#recommend ul li:nth-child(5) {animation-delay: .4s}
.recommend_txt {
	font-size: 1.4em;
	text-align: center;
	margin: 10px auto;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	#recommend ul {
		-webkit-box-pack: justify;
		justify-content: space-between;
		max-width: 460px;
		margin: 0 auto;
	}
	#recommend ul li {
		width: calc(100% / 2 - 16px);
		margin: 0 8px 32px 0;
	}
	#recommend ul li img {
	}
	#recommend ul li p {
		font-size: .7em;
		bottom: -20px;
		width: 100%;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	#recommend ul {
		justify-content: space-between;
		max-width: 820px;
		margin: 0 auto;
	}
	#recommend ul li {
		width: calc(100% / 3 - 20px);
		margin: 0 auto 60px;
	}
	#recommend ul li p {
		bottom: -30px;
		right: 0;
		width: 100%;
		min-width: fit-content;
	}
}

/* our_strength */
#our_strength h2 {
	margin-bottom: 120px;
}
#our_strength p.txt_box {
	font-weight: bold;
	font-size: 1.2em;
	color: #990000;
	padding: 0;
}
.our_strength {
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.our_strength ul {
	counter-reset: number 0;
	margin: 2em auto;
}
.our_strength ul li {
	position: relative;
	text-align: center;
	padding: 10px;
	background: rgb(255 255 255 / 80%);
	box-shadow: 5px 5px 20px rgb(75 70 65 / 0.2);
	border-radius: 0 24px 0 24px;
}
.our_strength ul li + li {
	margin-top: 80px;
}
.our_strength ul li dl {
	align-items: center;
	position: relative;
}
.our_strength ul li dl dt {
	position: absolute;
	top: -15%;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.2em;
	color: #FFF;
	background: var(--color-accent);
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	font-size: clamp(18px, calc(18px + (24 - 18) * ((100vw - 390px) / (1280 - 390))), 24px);
}
.our_strength ul li dl dt:after {
	text-align: center;
	counter-increment: number 1;
	content: counter(number);
}
.our_strength ul li dl dd {
	width: 100%;
	padding: 60px 1em 2em;
	font-size: clamp(16px, calc(16px + (18 - 16) * ((100vw - 390px) / (1280 - 390))), 18px);
}
.our_strength ul li dl dd strong {
	text-decoration: underline;
}
.our_strength ul li dl dd h4 {
	font-size: clamp(24px, calc(24px + (32 - 24) * ((100vw - 390px) / (1280 - 390))), 32px);
	color: var(--color-primary);
	font-weight: bold;
	margin-bottom: 10px;
	padding: 0 .5em;
}
.our_strength p {
	text-align: center;
	padding: 2.5em 1.5em 2em;
	margin: 0 auto;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	.our_strength ul {
		width: fit-content;
	}
	.our_strength ul li {
		padding: 30px 10px 10px 10px;
	}
	.our_strength ul li dl dt {
		width: 80px;
		margin: 0 auto 20px;
	}
	.our_strength ul li dl dd {
		padding-top: 40px;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	.our_strength ul {
		width: 640px;
	}
	.our_strength p {
		font-size: 1.2em;
		text-align: center;
	}
	.our_strength ul li {
		font-size: 1.8rem;
	}
	.our_strength ul li dl dt {
		width: 100px;
	}
	.our_strength ul li dl dd {
	}
}


/*flow*/
#flow .section_inner {
}
#flow ul.flowlist {
	max-width: 800px;
	margin: 0 auto;
	counter-reset: number 0;
}
#flow ul.flowlist > li {
	position: relative;
	border-radius: 15px;
	padding: 20px;
	background: var(--color-primary);
	color: #fff;
	filter: drop-shadow(5px 5px 10px rgb(75 70 65 / 0.2));
	filter: drop-shadow(0 0 5px rgb(255 255 255 / 1)) drop-shadow(0 0 5px rgb(255 255 255 / 1)) drop-shadow(0 0 5px rgb(255 255 255 / 1));
}
#flow ul.flowlist a {
	color: #fff;
	font-weight: 600;
}
#flow ul.flowlist > li:nth-child(even) {
	flex-direction: row-reverse;
}
#flow ul.flowlist > li:not(:last-of-type) {
	margin-bottom: 20px;
}
#flow ul.flowlist > li:not(:last-child):after {
	content: "";
	position: absolute;
	border-top: 30px solid  var(--color-primary);
	border-left: 30px solid transparent;
	border-right: 30px solid transparent;
	bottom: -30px;
	left: calc(50% - 30px);
	z-index: 1;
}
#flow ul.flowlist > li:nth-child(1) {
	z-index: 4;
}
#flow ul.flowlist > li:nth-child(2) {
	z-index: 3;
}
#flow ul.flowlist > li:nth-child(3) {
	z-index: 2;
}
#flow ul.flowlist > li:nth-child(4) {
	z-index: 1;
}
#flow ul.flowlist > li .flow_img {
	position: relative;
	width: 250px;
	height: 250px;
	overflow: hidden;
	border-radius: 24px 0 24px 0;
}
#flow ul.flowlist > li div + div {
	width: calc(100% - 270px);
	margin-left: 20px
}
#flow ul.flowlist > li:nth-child(even) div + div {
	margin-left: 0;
	margin-right: 20px;
}
#flow ul.flowlist > li div + div h3 {
	position: relative;
	font-size: clamp(22px, calc(22px + (32 - 22) * ((100vw - 390px) / (1280 - 390))), 32px);
	font-weight: 700;
	margin-bottom: 10px;
	border-bottom: 1px solid;
	border-image: linear-gradient(to right, #fff, transparent) 1;
}
#flow ul.flowlist > li h3:before {
	counter-increment: number 1;
	content: "Step. "counter(number);
	font-size: 0.8em;
}
#flow ul.flowlist > li .flow_img img {
	width: 100%;
	height: 100%;
}
#flow ul.flowlist_info * {
	font-weight: bold;
}
#flow ul.flowlist_info li a {
	position: relative;
	display: block;
	text-align: center;
	padding: .5em;
	border-radius: 10px;
}
#flow ul.flowlist_info li.tel_btn a,
#flow ul.flowlist_info li.mail_btn a {
	background: var(--color-bg);
	color: var(--color-primary);
}
#flow ul.flowlist_info li.line_btn a {
	background: #06c755;
	color: #FFF;
	border: 1px solid #fff;
}
#flow ul.flowlist_info li + li {
	margin-top: 10px;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	#flow ul.flowlist {
		margin: 0 10px;
	}
	#flow ul.flowlist > li .flow_img {
		width: 100%;
		height: 200px;
		margin: 0 auto 16px
	}
	#flow ul.flowlist > li .flow_img img {
		object-fit: cover;
	}
	#flow ul.flowlist > li div + div {
		width: 100%;
		margin: 0
	}
	#flow ul.flowlist > li div + div h3 {
		text-align: center;
		border-image: linear-gradient(to right, transparent, #fff, transparent) 1;
	}
	#flow ul.flowlist > li p {
		padding: 10px 20px;
	}
	#flow ul.flowlist_info {
		width: calc(100% - 40px);
		margin: 0 auto;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	#flow ul.flowlist > li p {
		padding: 10px 0;
	}
}

/*application*/
.application_wrap {
	margin: 0 auto
}
.application {
	margin: 0 auto;
	text-align: left;
}
.application>dt {
	justify-content: center;
	background: var(--color-accent);
	color: #fff;
}
.application>dd {
	padding: 5px 1em;
}
.application>dd:last-of-type {
	padding-bottom: 0
}
.application .treatment li:before {
	content: '・';
}
.app_contact>dt {
	width: 5em;
	margin-bottom: 10px;
}
.app_contact>dd {
	width: calc(100% - 5em);
	margin-bottom: 10px;
}
.linkbannerrec {
	margin: 0 auto;
	max-width: 320px;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	.application {
		width: 100%;
	}
	.application>dt {
		font-weight: bold;
		width: 100%;

	}
	.application>dd {
		width: calc(100% - 20px);
		margin: 0 auto;
		padding: 1em;
	}
	.application>dt:not(:first-of-type) {
		margin-top: 10px;
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	.application {
		width: 100%;
		max-width: 650px;
		margin: 0 auto;
	}
	.application>dt {
		align-items: center;
		width: 8em;
	}
	.application>dd {
		width: calc(100% - 8em);
	}
	.application>dt:not(:first-of-type),
	.application>dd:not(:first-of-type) {
		margin-top: 30px;
	}
}

/*FAQ*/
#acMenu {
	text-align: left;
	font-weight: 700;
	line-height: 1.5;
	max-width: 680px;
	margin: 0 auto;
}
#acMenu dt,#acMenu dd {
	padding: 12px 16px;
	box-shadow: 5px 5px 20px rgb(75 70 65 / 0.2);
}
#acMenu dt {
	position: relative;
	align-items: center;
	background: var(--color-accent);
	color: #fff;
	margin: 0 20px 10px 0;
	border-radius: 24px 0 24px 0;
}
#acMenu dt span {
	display: block;
	position: relative;
	padding-left: 1.75em;
	font-size: 1.2em;
	font-weight: 600;
}
#acMenu dt span:before {
	content: 'Q.';
	position: absolute;
	font-size: 1.5em;
	line-height: 1;
	left: 0;
	top: 0;
}
#acMenu dd {
	position: relative;
	display: block;
	background: rgb(255 255 255 / 0.8);
	margin-left: 20px;
	border-radius: 0 24px 0 24px;
}
#acMenu dd:not(:last-of-type) {
	margin-bottom: 20px;
}
#acMenu dd span {
	display: block;
	position: relative;
	padding-left: 30px;
	font-size: 1rem;
}
#acMenu dd span:before {
	content: 'A.';
	position: absolute;
	margin-right: 5px;
	font-size: 1.5em;
	text-align: right;
	line-height: 1;
	left: 0;
	top: 0;
}
/* SP style */
@media print, screen and (max-width:1023px) {
	#acMenu dt {
	}
}
/* PC style */
@media print, screen and (min-width:1024px) {
	#acMenu dt {
	}
}

/* recruit_comment */
#recruit_comment {
}
#recruit_comment .txt_box {
	width: fit-content;
	position: relative;
}
#recruit_comment div {
	text-align: center;
	position: relative;
}
#recruit_comment div p {
	display: inline-block;
	line-height: 2;
	padding: 20px;
}
/* SP style */
@media print, screen and (max-width:1023px) {
}
/* PC style */
@media print, screen and (min-width:1024px) {
	#recruit_comment div p {
		font-size: 1.2em;
		text-align: center;
	}
}

/*contact_btn*/
#contact_btn {
	width: 100%;
	padding: 0;
	text-align: center;
}
#contact_btn a {
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: clamp(16px, calc(16px + (32 - 16) * ((100vw - 390px) / (1280 - 390))), 32px);
}
.line-wrap, .mail-wrap, .tel-wrap {
	margin: 0 auto;
	overflow: hidden;
	width: calc(100% / 3 - 5px);
	font-size: 1rem;
	border-radius: 10px;
}
.line-id-text, .mailaddress-text, .tel-text {
	font-weight: 700;
}
.line-id-text {
	font-size: 2rem;
}
.mailaddress-text {
	font-size: 1.4rem;
}
.tel-text {
	font-size: 2.5rem
}
.tel-wrap {
	background: var(--color-primary);
}
.line-wrap {
	background: #06c755
}
.mail-wrap {
	background: var(--color-accent);
}
/********* SP *********/
@media print, screen and (max-width:1023px) {
	.line-wrap, .mail-wrap, .tel-wrap {
		height: 100px;
	}
	.line-wrap i, .mail-wrap i, .tel-wrap i {
		font-size: 2em;
		margin-bottom: 8px;
	}
	#contact_btn a {
		flex-wrap: nowrap;
		flex-direction: column;
	}
}
/********* PC *********/
@media screen and (min-width:1024px) {
	.line-wrap, .mail-wrap, .tel-wrap {
		height: 150px;
	}
	#contact_btn a {
	}
	.line-wrap i, .mail-wrap i, .tel-wrap i {
		margin-right: .25em;
	}
	.line-wrap img {
		width: 100px;
	}
}




.rec_footer_bn {
	width: 100%;
	align-items: center;
	justify-content: center;
}
.rec_footer_bn a {
	width: fit-content;
	height: auto;
	margin: 5px;
}

@media screen and (min-width: 1000px) {
    .slider-area {
      overflow: hidden;
     }
		.slick-list {
			background: #7f5a1a;
		}
    .slick-slide {
      max-width: 1000px;
  	  width: 100% !important;
  	  padding: 10px 5px;
    }
    .slick-current {
      max-width: 1000px;
      width: 100% !important;
      margin: auto;
  }
}

/* 2023.12.14 動き追加 */
#recruit .mv {
	visibility: hidden;
	opacity: 0;
	animation: fadeIn 1.5s forwards;
}
@keyframes fadeIn {
	0% {
		visibility: hidden;
		opacity: 0;
		filter: blur(5px);

	}
	100% {
		visibility: visible;
		opacity: 1;
		filter: blur(0);
	}
}
.fadeIn {
	opacity: 0;
	transition: 1s opacity;
}
.fadeIn.active {
	opacity: 1;
}