@charset "utf-8";

/* iOS26 Safari */
:root{
  --safe-top: env(safe-area-inset-top, 0px);
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}

body,html {
	padding-top: var(--safe-top);
  padding-bottom: var(--safe-bottom);
}

body {
	overflow: hidden;
}
body.loaded {
	overflow: scroll;
}

main {
	overflow: hidden;
}

/*====================================
スプラッシュスクリーン
====================================*/
.splash_screen {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #FFF;
	z-index: 100000;
}


/*============================
共通ボタン
============================*/
.btn_common a {
	display: block;
	padding: 0.24rem 0 0.26rem;
	border-radius: 0.06rem;
	line-height: 0;
	position: relative;
	text-align: center;
	font-size: 0.16rem;
	font-weight: 500;
	color: #FFF;
}
@media screen and (max-width: 640px) {
	.btn_common a {
		font-size: 0.15rem;
	}
}

.btn_common a::after {
	content: "";
	width: 0.11rem;
	height: 0.11rem;
	background-image: url(../img/arrow-left-line.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	right: 0.10rem;
	transform: translateY(-50%);
	transition: all 0.3s;
}

.btn_common a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 640px) {
	.btn_common a:hover {
		opacity: 1;
	}
}

.btn_common a:hover::after {
	right: 0.07rem;
}
@media screen and (max-width: 640px) {
	.btn_common a:hover::after {
		right: 0.10rem;
	}
}

.btn_common a.black {
	background-color: #3E3A39;
}

.btn_common a.red {
	background-color: #D70027;
}

.btn_common a.blue {
	background-color: #0E6A9F;
}

/* 大きサイズ */
.btn_common.big a {
	/* font-size: 0.10rem; */
	font-weight: 700;
	padding: 0.29rem 0 0.31rem;
}

/*============================
セクションタイトル
============================*/
.sec_title {
	font-size: 0.38rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
}
@media screen and (max-width: 640px) {
	.sec_title {
		font-size: 0.24rem;
	}
}

/*============================
ファーストビュー
============================*/
.first-view {
	position: relative;
	height: 100vh;
}
@media screen and (max-width: 640px) {
	.first-view {
		height: 100svh;
	}
}

.first-view::before {
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../img/first-view_bg_pc.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
@media screen and (max-width: 640px) {
	.first-view::before {
		background-image: url(../img/first-view_bg_sp.png);
	}
}

.first-view .in {
	z-index: 1;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	max-width: 100%;
	transform: translateY(-50%);
}

.first-view .in img {
	display: block;
}

.first-view .in .logo {
	width: 1.36rem;
	margin: auto;
}

.first-view .in .catch {
	width: 100%;
	max-width: 6.28rem;
	margin: auto;
	padding-top: 0.57rem;
}
@media screen and (max-width: 640px) {
	.first-view .in .catch {
		width: calc(100% - 0.20rem);
	}
}

.first-view .in .catch img {
	display: block;
	width: 100%;
}

.first-view .in .txt {
	font-size: 0.16rem;
	font-weight: 500;
	letter-spacing: 0.05em;
	line-height: 2.2;
	padding: 0.30rem 0 0.15rem;
}
@media screen and (max-width: 640px) {
	.first-view .in .txt {
		font-size: 0.15rem;
		padding: 0.20rem 0 0.30rem;
	}
}

.first-view .in .big_txt {
	font-size: 0.20rem;
	font-weight: 700;
}
@media screen and (max-width: 640px) {
	.first-view .in .big_txt {
		font-size: 0.17rem;
		letter-spacing: 0;
	}
}

.first-view .in .btn_wrap {
	padding-top: 0.50rem;
	display: flex;
	justify-content: center;
	gap: 0 0.30rem;
}
@media screen and (max-width: 640px) {
	.first-view .in .btn_wrap {
		flex-wrap: wrap;
		gap: 0.20rem 0;
	}
}

.first-view .in .btn_wrap .btn_common {
	width: 2.80rem;
}

/*============================
スライド共通
============================*/
.slide_common {
	position: relative;
}

.slide_common .slick-track {
	padding: 0.40rem 0;
}
@media screen and (max-width: 640px) {
	.slide_common .slick-track {
		padding: 0.30rem 0;
	}
}

.slide_01 .lead_wrap span.black {
	background: #111111;
}

.slide_common .slick-initialized .slick-slide {
	margin:0 0.15rem;
	box-shadow: 0.15rem 0.15rem 0.35rem rgba(54, 81, 96, 0.2);
	border-radius: 0.1rem;
	overflow: hidden;
}
@media screen and (max-width: 640px) {
	.slide_common .slick-initialized .slick-slide {
		margin:0 0.10rem;
		box-shadow: 0.10rem 0.10rem 0.25rem rgba(54, 81, 96, 0.2);
	}
}

.slide_common .slick-initialized .slick-slide img {
	display: block;
}

/*============================
スライド１
============================*/
@media screen and (max-width: 640px) {
	.slide_01 {
		padding-bottom: 0.10rem;
		margin-bottom: 0.30rem;
	}
}

/* ドットデコ素材 */
.slide_01 .deco {
	position: absolute;
	top: -0.6rem;
	right: 8%;
	z-index: 1;
	width: 1.60rem;
	height: 1.60rem;
}
@media screen and (max-width: 640px) {
	.slide_01 .deco {
		top: 0;
		right: 0.15rem;
		width: 0.80rem;
		height: 0.80rem;
	}
}

/* 英字タイトル */
.slide_01 .title {
	position: absolute;
	bottom: 1.6rem;
	right: 8%;
	z-index: 1;
	width: 3.50rem;
}
@media screen and (max-width: 640px) {
	.slide_01 .title {
		bottom: 0.8rem;
		right: 0.05rem;
		width: 1.30rem;
	}
}

.slide_01 .lead_wrap {
	position: absolute;
	bottom: 0.5rem;
	left: calc((100% - 12rem) / 2);
	z-index: 1;
}
@media screen and (max-width: 640px) {
	.slide_01 .lead_wrap {
		position: absolute;
		bottom: 0.2rem;
		left: 0.20rem;
	}
}

.slide_01 .lead_wrap span {
	font-size: 0.63rem;
	font-weight: bold;
	color: #fff;
	background: #D70027;
	margin-bottom: 0.15rem;
	display: inline-block;
	padding: 0.1rem 0.1rem 0.15rem;
}
@media screen and (max-width: 640px) {
	.slide_01 .lead_wrap span {
		font-size: 0.27rem;
		margin-bottom: 0.10rem;
		padding: 0.03rem 0.06rem 0.05rem;
	}
}

.slide_01 .slide_item_01 {
	margin-top: 0.5rem !important;
}
@media screen and (max-width: 640px) {
	.slide_01 .slide_item_01 {
		margin-top: 0.2rem !important;
	}
}

.slide_01 .slide_item_03 {
	margin-top: 1rem !important;
}
@media screen and (max-width: 640px) {
	.slide_01 .slide_item_03 {
		margin-top: 0.5rem !important;
	}
}


/*============================
こんな悩み、ありませんか？
============================*/
.nayami {
	position: relative;
	padding-top: 2rem;
}
@media screen and (max-width: 640px) {
	.nayami {
		padding-top: 0.6rem;
	}
}

.nayami::before {
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../img/nayami_bg_pc.png);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% auto;
	position: absolute;
	top: -1.5rem;
	left: 0;
	z-index: -1;
}
@media screen and (max-width: 640px) {
	.nayami::before {
		background-image: url(../img/nayami_bg_sp.png);
		background-position: center top;
		top: -0.5rem;
	}
}

.nayami .title {
	font-size: 0.51rem;
	font-weight: 700;
	text-align: center;
	margin-bottom: 0.4rem;
}
@media screen and (max-width: 640px) {
	.nayami .title {
		font-size: 0.30rem;
		line-height: 1.4;
		margin-bottom: 0.20rem;
		font-feature-settings: normal;
	}
}

.nayami .ph_wrap {
	text-align: center;
	width: 100%;
	max-width: 10.49rem;
	margin: auto;
}

.nayami .ph_wrap img {
	width: 100%;
	display: block;
	margin: auto;
}
@media screen and (max-width: 640px) {
	.nayami .ph_wrap {
		margin: 0 -0.20rem;
		width: calc(100% + 0.40rem);
	}
}

.nayami .text {
	font-size: 0.34rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.6;
	margin-top: 0.4rem;
	position: relative;
	top: -0.7rem;
}
@media screen and (max-width: 640px) {
	.nayami .text {
		font-size: 0.22rem;
		margin-top: 0.2rem;
		top: 0;
	}
}

/*============================
次のステージへ。
============================*/
.next_stage {
	position: relative;
	margin-top: 1rem;
}

.next_stage .deco {
	position: absolute;
	top: -0.2rem;
	right: 0.4rem;
	z-index: 1;
	width: 2.2rem;
}
@media screen and (max-width: 640px) {
	.next_stage .deco {
		top: -0.05rem;
		right: -0.05rem;
		width: 0.76rem;
	}
}

.next_stage .deco img {
	display: block;
}

.next_stage::before {
	content: "";
	width: 85%;
	height:3.4rem;
	background-color: #F2F2F2;
	position: absolute;
	top: 0.3rem;
	left: 0;
	z-index: -1;
	border-radius: 0 0.2rem 0.2rem 0;
}
@media screen and (max-width: 640px) {
	.next_stage::before {
		width: calc(100% - 0.08rem);
		height:calc(100% - 0.15rem);
		top: auto;
		bottom: 0;
		border-radius: 0 0.1rem 0.1rem 0;
	}
}

.next_stage .sec_title {
	margin-bottom: 0.3rem;
}
@media screen and (max-width: 640px) {
	.next_stage .sec_title {
		margin-bottom: 0.2rem;
	}
}

.next_stage .lead {
	font-size: 0.16rem;
	text-align: center;
	line-height: 2;
	margin-bottom: 0.4rem;
}
@media screen and (max-width: 640px) {
	.next_stage .lead {
		font-size: 0.15rem;
		line-height: 1.8;
		text-align: justify;
		margin-bottom: 0.3rem;
	}
}

.next_stage .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
@media screen and (max-width: 640px) {
	.next_stage .list {
		flex-wrap: wrap;
		gap: 0.40rem 0;
		padding-bottom: 0.30rem;
	}
}

.next_stage .list .item {
	width: 23%;
}
@media screen and (max-width: 640px) {
	.next_stage .list .item {
		width: 100%;
	}
}

.next_stage .list .item .ph_wrap {
	border-radius: 0.10rem;
	overflow: hidden;
	width: 100%;
	height: 1.8rem;
}
@media screen and (max-width: 640px) {
	.next_stage .list .item .ph_wrap {
		border-radius: 0.10rem;
		height: 56vw;
	}
}

.next_stage .list .item .ph_wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.next_stage .list .item .text_wrap .list_title {
	font-size: 0.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	margin: 0.15rem 0 0.10rem;
}
@media screen and (max-width: 640px) {
	.next_stage .list .item .text_wrap .list_title {
		font-size: 0.18rem;
	}
}

.next_stage .list .item .text_wrap .text {
	font-size: 0.14rem;
	letter-spacing: 0;
	line-height: 1.8;
	text-align: justify;
}

.next_stage .list .item .text_wrap .text small {
	font-size: 0.12rem;
	line-height: 1.5;
	display: block;
	text-indent: -0.12rem;
	padding-left: 0.12rem;
	margin-top: 0.10rem;
}


/*============================
成長企業って厳しそう？
============================*/
.growth {
	position: relative;
	margin-top: 1.5rem;
}
@media screen and (max-width: 640px) {
	.growth {
		margin-top: 0.6rem;
	}
}

.growth::before {
	content: "";
	width: calc(100% - ((100% - 12rem) / 2));
	height:2.7rem;
	background-color: rgb(215, 0, 39,0.1);
	position: absolute;
	top: 0.3rem;
	right: 0;
	z-index: -1;
	border-radius: 0.2rem 0 0 0.2rem;
}
@media screen and (max-width: 640px) {
	.growth::before {
		width: calc(100% - 0.08rem);
		height: calc(100% - 0.20rem);
		top: auto;
		bottom: 0;
		right: 0;
		z-index: -1;
		border-radius: 0.1rem 0 0 0.1rem;
	}
}

.growth .sec_title {
	margin-bottom: 0.3rem;
}
@media screen and (max-width: 640px) {
	.growth .sec_title {
		margin-bottom: 0.2rem;
	}
}

.growth .lead {
	font-size: 0.16rem;
	text-align: center;
	line-height: 2;
	margin-bottom: 0.4rem;
}
@media screen and (max-width: 640px) {
	.growth .lead {
		font-size: 0.15rem;
		line-height: 1.8;
		margin-bottom: 0.3rem;
	}
}

.growth .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	max-width: 10rem;
	margin: 0 auto;
}
@media screen and (max-width: 640px) {
	.growth .list {
		gap: 0.30rem 0;
		padding-bottom: 0.40rem;
	}
}

.growth .list .item {
	width: 21%;
}
@media screen and (max-width: 640px) {
	.growth .list .item {
		width: 100%;
	}
}

.growth .list .item .ph_wrap {
	overflow: hidden;
	width: 1.8rem;
	height: 1.8rem;
	margin: auto;
}
@media screen and (max-width: 640px) {
	.growth .list .item .ph_wrap {
		width: 1.2rem;
		height: 1.2rem;
	}
}

.growth .list .item .ph_wrap img {
	display: block;
	width: 100%;
}

@media screen and (max-width: 640px) {
	.growth .list .item .text_wrap {
		padding: 0.10rem 0.20rem 0;
	}
}

.growth .list .item .text_wrap .list_title {
	font-size: 0.2rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	margin:0.15rem 0
}
@media screen and (max-width: 640px) {
	.growth .list .item .text_wrap .list_title {
	font-size: 0.16rem;
	margin: 0;
	padding-bottom: 0.05rem;
}
}

.growth .list .item .text_wrap .text {
	font-size: 0.14rem;
	line-height: 1.8;
	text-align: center;
}
@media screen and (max-width: 640px) {
	.growth .list .item .text_wrap .text {
		font-size: 0.13rem;
		text-align: justify;
	}
}


/*============================
求人情報
============================*/
.job {
	position: relative;
	margin-top: 1.5rem;
}
@media screen and (max-width: 640px) {
	.job {
		margin-top: 1.0rem;
	}
}

.job .deco_01 {
	position: absolute;
	top: 0;
	left: -0.2rem;
	z-index: 1;
	width: 1.02rem;
}
@media screen and (max-width: 640px) {
	.job .deco_01 {
		top: -0.15rem;
		left: 0.10rem;
		width: 0.50rem;
	}
}

.job .deco_02 {
	position: absolute;
	bottom: -1rem;
	right: 0;
	z-index: 1;
	width: 1.61rem;
}
@media screen and (max-width: 640px) {
	.job .deco_02 {
		bottom: -0.4rem;
		width: 0.80rem;
		z-index: 0;
	}
}

.job::before {
	content: "";
	width: 85%;
	height:100%;
	background-color: #F2F2F2;
	position: absolute;
	top: 0.3rem;
	left: 0;
	z-index: -1;
	border-radius: 0 0.2rem 0.2rem 0;
}
@media screen and (max-width: 640px) {
	.job::before {
		content: "";
		width: calc(100% - 0.08rem);
		top: 0.2rem;
		border-radius: 0 0.1rem 0.1rem 0;
	}
}

.job .sec_title {
	margin-bottom: 0.3rem;
}

.job .list {
	max-width: 8rem;
	margin: 0 auto;
}
@media screen and (max-width: 640px) {
	.job .list {
		padding-bottom: 0.30rem;
		display: flex;
		flex-wrap: wrap;
		gap: 0.30rem 0;
		position: relative;
		z-index: 1;
	}
}

.job .list .item {
	display: flex;
	justify-content: space-between;
	align-items: center;
	overflow: hidden;
	border-radius: 0.1rem;
	box-shadow: 0 0 0.10rem 0 rgba(0, 0, 0, 0.1);
	margin-bottom: 0.3rem;
	background-color: #FFF;
}
@media screen and (max-width: 640px) {
	.job .list .item {
		margin-bottom: 0;
	}
}

.job .list .item .text_wrap {
	padding-left: 0.4rem;
	box-sizing: border-box;
}
@media screen and (max-width: 640px) {
	.job .list .item .text_wrap {
		padding-left: 0.2rem;
	}
}

.job .list .item .text_wrap .list_title {
	font-size: 0.24rem;
	font-weight: 700;
	line-height: 1.4;
	margin-bottom: 0.2rem;
}
@media screen and (max-width: 640px) {
	.job .list .item .text_wrap .list_title {
		font-size: 0.14rem;
		padding-top: 0.20rem;
	}
}

.job .list .item .text_wrap .btn_wrap {
	width: 1.8rem;
}
@media screen and (max-width: 640px) {
	.job .list .item .text_wrap .btn_wrap {
		width: 1.4rem;
		padding-bottom: 0.20rem;
	}
	.job .list .item .text_wrap .btn_wrap a {
		padding: 0.16rem 0 0.18rem;
		font-size: 0.14rem;
	}
}


.job .list .item .ph_wrap {
	width: 2.8rem;
	height: 100%;
	overflow: hidden;
}
@media screen and (max-width: 640px) {
	.job .list .item .ph_wrap {
		width: 40%;
		height: -webkit-fill-available;
		height: fill-available;
		height: 100%;
	}
}

.job .list .item .ph_wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}


/*============================
メンバーの声
============================*/
.voice {
	position: relative;
	margin-top: 1.8rem;
}
@media screen and (max-width: 640px) {
	.voice {
		margin-top: 1.0rem;
	}
}

.voice::before {
	content: "";
	width: calc(100% - ((100% - 11.2rem) / 2));
	height: 100%;
	background-color: #3E3A39;
	position: absolute;
	top: 0;
	right: 0;
	border-radius: 0.2rem 0 0 0.2rem;
}
@media screen and (max-width: 640px) {
	.voice::before {
		width: 100%;
		border-radius: 0;
	}
}

.voice .deco {
	position: absolute;
	bottom: -1rem;
	left: -0.5rem;
	z-index: -1;
}
@media screen and (max-width: 640px) {
	.voice .deco {
		display: none;
	}
}

.voice .sec_title {
	margin-bottom: 0.3rem;
}

.voice .cont_wrap {
	display: flex;
	padding: 0.5rem 0;
}
@media screen and (max-width: 640px) {
	.voice .cont_wrap {
	flex-wrap: wrap;
	padding: 0.30rem 0.10rem;
}
}

.voice .cont_wrap .ph_wrap {
	width: 6.5rem;
	height: 100%;
	overflow: hidden;
	border-radius: 0.1rem;
	margin-top: 0.2rem;
}
@media screen and (max-width: 640px) {
	.voice .cont_wrap .ph_wrap {
		width: 100%;
		height: 66vw;
		margin-top: 0;
	}
}

.voice .cont_wrap .ph_wrap img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.voice .cont_wrap .text_wrap {
	padding-left: 0.6rem;
	box-sizing: border-box;
	width: calc(100% - 6.5rem);
}
@media screen and (max-width: 640px) {
	.voice .cont_wrap .text_wrap {
		width: 100%;
		padding-left: 0;
		padding-top: 0.25rem;
		padding-bottom: 0.20rem;
	}
}

.voice .cont_wrap .text_wrap .deco_title {
	width: 2.40rem;
	position: relative;
	left: -0.30rem;
}
@media screen and (max-width: 640px) {
	.voice .cont_wrap .text_wrap .deco_title {
		width: 1.20rem;
		position: relative;
		left:0;
		margin: auto;
		padding-bottom: 0.10rem;
	}
}

.voice .cont_wrap .text_wrap .sec_title {
	color: #fff;
	text-align: left;
	margin-bottom: 0.7rem;
}
@media screen and (max-width: 640px) {
	.voice .cont_wrap .text_wrap .sec_title {
		text-align: center;
		margin-bottom: 0.25rem;
		font-size: 0.20rem;
	}
}

/* .voice .cont_wrap .text_wrap .text {
	font-size: 0.16rem;
	line-height: 1.8;
	color: #fff;
} */


.voice .cont_wrap .text_wrap .slide_wrap {
	position: relative;
}

.voice .cont_wrap .text_wrap .slide_wrap .slide_item {
	outline: none;
}

.voice .cont_wrap .text_wrap .slide_wrap .slide_item .text {
	font-size: 0.16rem;
	line-height: 1.8;
	color: #fff;
}
@media screen and (max-width: 640px) {
	.voice .cont_wrap .text_wrap .slide_wrap .slide_item .text {
		font-size: 0.14rem;
	}
}

.voice .name_wrap {
	display: flex;
	align-items: center;
	gap: 0 0.20rem;
	margin-top: 0.3rem;
}
@media screen and (max-width: 640px) {
	.voice .name_wrap {
		margin-top: 0.2rem;
		gap: 0 0.15rem;
	}
}

.voice .name_wrap .icon {
	width: 0.60rem;
}

.voice .name_wrap .name {
	font-size: 0.16rem;
	line-height: 1.4;
	color: #fff;
}
@media screen and (max-width: 640px) {
	.voice .name_wrap .name {
		font-size: 0.14rem;
	}
}


/* slick の矢印とドットのスタイル調整 */
.voice .slick-prev,
.voice .slick-next {
	z-index: 2;
	width: 0.3rem;
	height: 0.3rem;
	border: none;
	background: transparent;
	cursor: pointer;
	padding: 0;
	top: auto;
	bottom: -0.4rem;
	transform: translateY(0);
}

.voice .slick-prev:before,
.voice .slick-next:before {
	display: none;
}

.voice .slick-prev img,
.voice .slick-next img {
	width: 100%;
	height: 100%;
	display: block;
}

.voice .slick-prev {
	left: auto;
	right: 0.4rem;
}

.voice .slick-next {
	right: 0;
}

.voice .slick-dots {
	bottom: -0.4rem;
	text-align: left;
	width: auto;
}

.voice .slick-dots li button:before {
	color: #fff;
	opacity: 0.5;
	font-size: 0.08rem;
}

.voice .slick-dots li.slick-active button:before {
	opacity: 1;
}

/*============================
スライド２
============================*/
.slide_02 {
	position: relative;
	padding-top: 1.80rem;
	overflow: hidden;
}
@media screen and (max-width: 640px) {
	.slide_02 {
		padding-top: 1.00rem;
	}
}

.slide_02 .lead_wrap span.black {
	background: #3E3A39;
}

.slide_02 .slick-initialized .slick-slide {
	margin:0 0.25rem;
}
@media screen and (max-width: 640px) {
	.slide_02 .slick-initialized .slick-slide {
		margin:0 0.10rem;
	}
}

.slide_02 .slick-initialized .slick-slide img {
	border-radius: 0.1rem;
	box-shadow: 0px 0px 15px -5px #777777;
}

.slide_02 .slide_item_01 {
	margin-top: 0.5rem!important;
}

.slide_02 .slide_item_03 {
	margin-top: 0.8rem!important;
}

.slide_02 .slide_item_04 {
	margin-top: 0.2rem!important;
}


/*============================
まずは話を聞いてみませんか？
============================*/
.talk {
	position: relative;
	margin-top: 1.8rem;
	padding-bottom: 0.2rem;
}
@media screen and (max-width: 640px) {
	.talk {
		margin-top: 0.8rem;
	}
}

.talk::before {
	content: "";
	width: calc(100% - 0.6rem);
	height: 100%;
	background-image: url(../img/talk_bg.jpg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	position: absolute;
	top: 0.3rem;
	left: 50%;
	transform: translateX(-50%);
	border-radius: 0.2rem;
	z-index: -1;
}
@media screen and (max-width: 640px) {
	.talk::before {
		content: "";
		width: 100%;
		height: 100%;
		top: 0;
		left: 0;
		transform: translateX(0);
		border-radius: 0;
	}
}

.talk .sec_title {
	margin-bottom: 0.3rem;
}
@media screen and (max-width: 640px) {
	.talk .sec_title {
		padding-top: 0.30rem;
		margin-bottom: 0.2rem;
	}
}

.talk .lead {
	font-size: 0.16rem;
	text-align: center;
	line-height: 2;
	margin-bottom: 0.4rem;
}
@media screen and (max-width: 640px) {
	.talk .lead {
		font-size: 0.15rem;
		line-height: 1.8;
		margin-bottom: 0.3rem;
	}
}

.talk .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 0 0.4rem;
}
@media screen and (max-width: 640px) {
	.talk .list {
		gap: 0.30rem 0;
	}
}

.talk .list .item {
	max-width: 4.4rem;
	width: 100%;
	box-shadow: 0 0 0.10rem 0 rgba(0, 0, 0, 0.1);
	border-radius: 0.1rem;
	box-sizing: border-box;
	padding: 0.15rem;
	background: #fff;
}
@media screen and (max-width: 640px) {
	.talk .list .item {
		padding: 0.20rem 0;
	}
}

.talk .list .item .list_title {
	font-size: 0.19rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
	margin: 0.15rem 0
}
@media screen and (max-width: 640px) {
	.talk .list .item .list_title {
		font-size: 0.18rem;
		margin: 0;
	}
}

.talk .list .item .list_title span {
	border-bottom: 1px solid #D70027;
	padding-bottom: 0.05rem;
	margin-bottom: 0.15rem;
}

.talk .list .item .text {
	font-size: 0.15rem;
	line-height: 1.8;
	text-align: center;
}
@media screen and (max-width: 640px) {
	.talk .list .item .text {
		font-size: 0.14rem;
		padding-top: 0.15rem;
	}
}

.talk .btn_wrap {
	text-align: center;
	margin-top: 0.5rem;
}
@media screen and (max-width: 640px) {
	.talk .btn_wrap {
		margin-top: 0.3rem;
		padding-bottom: 0.30rem;
	}
}

.talk .btn_wrap .btn_common {
	max-width: 4rem;
	margin: auto;
}

/*============================
「応募前にもっとSHIFTを知りたい・・・」
============================*/
.know {
	position: relative;
	margin-top: 0.7rem;
	padding-bottom: 0.5rem;
}
@media screen and (max-width: 640px) {
	.know {
		margin-top: 0.4rem;
	}
}

.know .sec_title {
	font-size: 0.28rem;
}
@media screen and (max-width: 640px) {
	.know .sec_title {
		font-size: 0.18rem;
	}
}

.know .sec_title span {
	font-size: 0.22rem;
	font-weight: normal;
}
@media screen and (max-width: 640px) {
	.know .sec_title span {
		font-size: 0.16rem;
	}
}



.know .btn_wrap {
	margin-top: 0.3rem;
}

.know .btn_wrap .btn_common {
	max-width: 3.3rem;
	margin: auto;
}

/*============================
よくある質問
============================*/
.faq {
	position: relative;
	margin-top: 1.5rem;
	padding-bottom: 0.5rem;
}
@media screen and (max-width: 640px) {
	.faq {
		margin-top: 1.0rem;
		padding-bottom: 0.2rem;
	}
}

.faq .deco {
	position: absolute;
	top: -0.3rem;
	right: -0.5rem;
	z-index: 1;
	width: 2.02rem;
}
@media screen and (max-width: 640px) {
	.faq .deco {
		position: absolute;
		top: -0.2rem;
		right: -0.15rem;
		z-index: 1;
		width: 0.70rem;
	}
}

.faq::before {
	content: "";
	width: calc(100% - ((100% - 11.5rem) / 2));
	height: 7rem;
	background-color: #F2F2F2;
	position: absolute;
	border-radius: 0 0.2rem 0.2rem 0;
	top: 0.3rem;
	left: 0;
}
@media screen and (max-width: 640px) {
	.faq::before {
		width: 100%;
		height: calc(100% + 1.00rem);
		border-radius: 0;
		top: 0;
	}
}

.faq .sec_title {
	margin-bottom: 0.3rem;
}
@media screen and (max-width: 640px) {
	.faq .sec_title {
		padding-top: 0.30rem;
	}
}

.faq .cont_wrap {
	max-width: 9.1rem;
	width: 100%;
	margin: 0 auto;
}

.faq .cont_wrap .qa_box {
	width: 100%;
	background: #fff;
	box-shadow: 0 0 0.10rem 0 rgba(0, 0, 0, 0.1);
	border-radius: 0.1rem;
	box-sizing: border-box;
	padding: 0.15rem 0.2rem;
	margin-bottom: 0.3rem;
}

.faq .cont_wrap .qa_box .q {
	font-size: 0.2rem;
	font-weight: bold;
	line-height: 1.5;
	position: relative;
	cursor: pointer;
	padding-right: 0.3rem;
}
@media screen and (max-width: 640px) {
	.faq .cont_wrap .qa_box .q {
		font-size: 0.16rem;
	}
}

.faq .cont_wrap .qa_box .q::before {
	content: "Q.";
	font-family: 'Inter', sans-serif;
	font-weight: bold;
	color: #D70027;
	display: inline-block;
	padding-right: 0.05rem;
}

.faq .cont_wrap .qa_box .q::after {
	content: "+";
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 0.24rem;
	font-weight: normal;
	color: #3E3A39;
	line-height: 1;
	transition: transform 0.3s;
}

.faq .cont_wrap .qa_box.active .q::after {
	content: "−";
}

.faq .cont_wrap .qa_box .a {
	font-size: 0.16rem;
	line-height: 1.8;
	display: none;
	margin-top: 0.15rem;
}
@media screen and (max-width: 640px) {
	.faq .cont_wrap .qa_box .a {
		font-size: 0.13rem;
	}
}

.faq .cont_wrap .qa_box .a p {
	margin: 0;
}

.faq .cont_wrap .qa_box .a::before {
	content: "A.";
	font-size: 0.2rem;
	font-family: 'Inter', sans-serif;
	font-weight: bold;
	color: #666666;
	display: inline-block;
	padding-right: 0.05rem;
}
@media screen and (max-width: 640px) {
	.faq .cont_wrap .qa_box .a::before {
		font-size: 0.16rem;
		padding-right: 0.03rem;
	}
}

/*============================
スライド3
============================*/
.slide_03 {
	position: relative;
	z-index: 1;
}

.slide_03 .lead_wrap span.black {
	background: #3E3A39;
}

.slide_03 .slick-initialized .slick-slide {
	margin:0 0.15rem;
}
@media screen and (max-width: 640px) {
	.slide_03 .slick-initialized .slick-slide {
		margin:0 0.10rem;
	}
}

.slide_03 .slick-initialized .slick-slide img {
	border-radius: 0.1rem;
	box-shadow: 0px 0px 15px -5px #777777;
}

.slide_03 .slide_item_01 {
	margin-top: 0.5rem!important;
}

.slide_03 .slide_item_03 {
	margin-top: 0.8rem!important;
}

.slide_03 .slide_item_04 {
	margin-top: 0.2rem!important;
}

/*============================
下部コンテンツ
============================*/
.bottom_content {
	position: relative;
	padding-bottom: 0.8rem;
	z-index: 0;
}
@media screen and (max-width: 640px) {
	.bottom_content {
		padding-bottom: 0.4rem;
	}
}

.bottom_content .deco {
	position: absolute;
	top: 0.5rem;
	right: -0.5rem;
	z-index: 1;
	width: 1.04rem;
}
@media screen and (max-width: 640px) {
	.bottom_content .deco {
		position: absolute;
		top: 0.10rem;
		right: 0.10rem;
		width: 0.50rem;
	}
}

.bottom_content::before {
	content: "";
	background: url(../img/bottom_bg_pc.png);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	width: 100%;
	height: 100%;
	position: absolute;
	top: -1rem;
	left: 0;
}
@media screen and (max-width: 640px) {
	.bottom_content::before {
		background: url(../img/bottom_bg_sp.png);
		top: -1rem;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
}

.bottom_content .sec_title {
	margin-bottom: 0.3rem;
	font-size: 0.5rem;
	line-height: 2;
	padding-top: 3.2rem;
	padding-bottom: 0.5rem;
}
@media screen and (max-width: 640px) {
	.bottom_content .sec_title {
		font-size: 0.26rem;
		line-height: 2;
		padding-top: 1.6rem;
		padding-bottom: 0.6rem;
		margin-bottom: 0;
	}
}

.bottom_content .btn_wrap {
	padding-top: 0.50rem;
	display: flex;
	justify-content: center;
	gap: 0 0.30rem;
}
@media screen and (max-width: 640px) {
	.bottom_content .btn_wrap {
		padding-top: 0;
		flex-wrap: wrap;
		gap: 0.20rem 0;
	}
}

.bottom_content .btn_wrap .btn_common {
	width: 2.80rem;
}

.bottom_content .bnr {
	text-align: center;
	max-width: 8rem;
	margin: 0.45rem auto 0;
}


.bottom_content .bnr a:hover {
	opacity: 0.7;
}
@media screen and (max-width: 640px) {
	.bottom_content .bnr a:hover {
		opacity: 1;
	}
}

/*============================
フッター
============================*/
footer {
	position: relative;
	background: #F2F2F2;
	padding-top: 0.4rem;
	padding-bottom: 0.3rem;
}

footer .cont_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-bottom: 0.3rem;
	border-bottom: 1px solid #CCCCCC;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap {
		flex-wrap: wrap;
		justify-content: center;
	}
}

footer .cont_wrap .logo {
	width: 1rem;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap .logo {
		margin: auto;
		padding-bottom: 0.20rem;
	}
}

footer .cont_wrap nav .list {
	display: flex;
	align-items: center;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap nav {
		margin: 0;
		padding: 0;
		width: 100%;
	}
	footer .cont_wrap nav .list {
		flex-wrap: wrap;
		gap: 0.20rem 0;
		width: 100%;
	}
	footer .cont_wrap .list_wrap .sns_list {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: center;
		padding-top: 0.30rem;
		gap: 0 0.20rem;
	}
	footer .cont_wrap .list_wrap .sns_list .sns {
		width: 0.30rem;
	}
	footer .cont_wrap .list_wrap .sns_list .sns img {
		display: block;
		width: 100%;
	}
}

footer .cont_wrap nav .list .item {
	margin-right: 0.3rem;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap nav .list .item {
		margin-right: 0;
		width: 50%;
		text-align: center;
	}
}

footer .cont_wrap nav .list .item.sns {
	margin-right: 0.1rem;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap nav .list .item.sns {
		margin-right: 0;
	}
}

footer .cont_wrap nav .list .item:last-child {
	margin-right: 0;
}

footer .cont_wrap nav .list .item a {
	color: #3E3A39;
	font-size: 0.14rem;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap nav .list .item a {
		text-decoration: underline;
	}
}

footer .cont_wrap nav .list .item a:hover {
	color: #D70027;
	opacity: 0.7;
}
@media screen and (max-width: 640px) {
	footer .cont_wrap nav .list .item a:hover {
		color: #3E3A39;
		opacity: 1;
	}
}

footer .copy_wrap {
	display: flex;
	justify-content: space-between;
	flex-direction: row-reverse;
	align-items: center;
	padding-top: 0.3rem;
}
@media screen and (max-width: 640px) {
	footer .copy_wrap {
		display: block;
		padding-top: 0.3rem;
	}
}

footer .copy_wrap .copy {
	font-size: 0.12rem;
}
@media screen and (max-width: 640px) {
	footer .copy_wrap .copy {
		font-size: 0.11rem;
	}
}


footer .copy_wrap .list {
	display: flex;
	align-items: center;
	gap: 0 0.3rem;
}
@media screen and (max-width: 640px) {
	footer .copy_wrap .list {
		padding-bottom: 0.20rem;
	}
}

footer .copy_wrap .list .item a {
	font-size: 0.12rem;
	color: #3E3A39;
	text-decoration: underline;
}

footer .copy_wrap .list .item a:hover {
	color: #D70027;
	opacity: 0.7;
}