@charset "utf-8";

/* -----------------------------------------------------------
    職種ページ共通
-------------------------------------------------------------- */ :root {
	--anchorlp: 86px;
	--anchorlp2: -86px;
	--anchorlpsp: 60px;
	--anchorlpsp2: -60px;
}

.page-occ .lp-anchor {
	padding-top: var(--anchorlp);
	margin-top: var(--anchorlp2);
}

.page-occ .header {
	position: absolute !important;
}

.page-occ .occ-sec-header {
	display: flex;
	gap: 70px;
	align-items: center;
}

.page-occ .occ-sec-header .txt {
	font-size: 2.3rem;
	letter-spacing: .05em;
	font-weight: 700;
}

.page-occ .sitemap_wrap, .page-occ .f_btm_list, .page-occ .f_address_pin, .page-occ .f_top {
	display: none;
}

.page-occ .f_btm_wrap {
	justify-content: center;
	margin: 0;
}

.page-occ .f_mid_area {
	background: transparent;
	padding: 0;
}

.page-occ .type-occ-secttl .ja::before {
	border-radius: 50%;
}

@media screen and (min-width: 769px) {
	.page-occ #wrapper {
		padding: 160px 0 0;
	}

	.page-occ .bread-h1-wrap {
		top: 20px;
	}
}

@media screen and (max-width: 768px) {
	.page-occ .lp-anchor {
		padding-top: var(--anchorlpsp);
		margin-top: var(--anchorlpsp2);
	}

	.page-occ .occ-sec-header {
		flex-wrap: wrap;
		gap: 20px;
	}

	.page-occ .occ-sec-header .txt {
		font-size: 2rem;
	}
}

/* -----------------------------------------------------------
    occ-underttl
-------------------------------------------------------------- */
.occ-underttl {
	aspect-ratio: 1600/450;
	width: 100%;
}

.occ-underttl img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: top;
}

/* -----------------------------------------------------------
    intro-area
-------------------------------------------------------------- */
.intro-area {
	margin: -120px 0 30px;
	position: relative;
}

.intro-area::before {
	content: "";
	background: #fff;
	border-radius: 0 140px 0 0;
	height: 120px;
	width: 100%;
	left: 0;
	top: 0;
	position: absolute;
	z-index: 2;
}

.intro-area .inner {
	position: relative;
	z-index: 4;
}

.intro-area .intro-en {
	font: 11rem /1 var(--en2);
	position: absolute;
	left: 0;
	top: -70px;
	letter-spacing: 0;
}

.intro-area .intro-ja {
	font-size: 3.5rem;
	font-weight: bold;
	padding: 60px 0 0;
}

.intro-area .intro-ja span {
	font-size: 6.5rem;
	margin: 0 8px 0 0;
}

.intro-area .intro-ttl {
	font-size: 3.3rem;
	letter-spacing: 0;
	line-height: 1.7;
	font-weight: 750;
	margin: 35px 0;
}

.intro-area .intro-inner {
	align-items: center;
	display: flex;
	gap: 80px;
}

.intro-area .intro-txt p {
	line-height: 2.2;
	font-size: 1.7rem;
}

.intro-area .intro-txt p + p {
	margin-top: 20px;
}

.intro-area .intro-job {
	width: 520px;
	position: relative;
	flex-grow: 1;
}

.intro-job-illust li {
	position: absolute;
	z-index: 2;
}

.intro-area .swiper-3d {
	width: 100%;
}

.intro-area .swiper-slide {
	background: #fff;
	border-radius: 15px;
	border: 5px solid #dfe2e8;
	height: 330px;
	padding: 20px 40px;
}

.jobex-box .info0-num {
	width: 100%;
	text-align: center;
	font-size: 1.3rem;
	letter-spacing: 0.03em;
	line-height: 1.6;
	font-weight: 500;
	color: #888;
	margin: 0 0 10px;
}

.jobex-box .info0-subttl {
	width: 100%;
	font-size: 1.5rem;
	letter-spacing: 0;
	line-height: 1.6;
	font-weight: 600;
	margin: 0 0 5px;
	text-align: center;
}

.jobex-box .info0-ttl {
	width: 100%;
	font-size: 2.2rem;
	letter-spacing: 0.03em;
	line-height: 1.3;
	font-weight: bold;
	text-align: center;
}

.jobex-box-list {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 20px 00;
}

.jobex-box-list li {
	align-items: center;
	border-radius: 5px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	padding: 10px 2px;
}

.jobex-box-list .info1 {
	border-style: solid;
	border-width: 1px;
	font-weight: 500;
	flex-shrink: 0;
	width: 80px;
	line-height: 1.3;
	min-width: calc((100% - 10px) / 2);
}

.jobex-box-list .info2 {
	flex-grow: 1;
	font-weight: 500;
	background: #f3f4f8;
	min-width: calc((100% - 10px) / 2);
}

.jobex-box-list .info2-ttl {
	font-size: 1.5rem;
	letter-spacing: 0.03em;
	line-height: 1.4;
	font-weight: 500;
	color: #888;
}

.jobex-box-list .info2-pay {
	font-size: 1.5rem;
	letter-spacing: 0;
	line-height: 1.5;
	font-weight: 500;
	display: block;
	color: var(--cmnblack);
}

.jobex-box-list .info2-num {
	font-size: 1.55rem;
	line-height: 1;
	letter-spacing: 0;
	font-weight: bold;
}

.jobex-box-list .info2-num span {
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.12em;
	margin: 0 0 0 3px;
}

.intro-area .jobex-box-cap {
	font-size: 1.3rem;
	text-align: right;
	color: #888;
	margin: 10px 0 0;
}

@media screen and (max-width: 768px) {
	.occ-underttl {
		aspect-ratio: 375/200;
	}

	.intro-area {
		margin: 0 0 40px;
	}

	.intro-area::before {
		display: none;
	}

	.intro-area .intro-en {
		font-size: 5rem;
		top: -30px;
		left: 20px;
	}

	.intro-area .intro-ja {
		padding: 35px 0 0;
		font-size: 2.5rem;
	}

	.intro-area .intro-ja span {
		font-size: 4rem;
	}

	.intro-area .intro-ttl {
		font-size: 2rem;
		line-height: 1.7;
		margin: 20px 0;
		text-align: left;
	}

	.intro-area .intro-inner {
		flex-direction: column;
		gap: 30px;
		margin: 20px 0 0;
	}

	.intro-area .intro-txt p {
		font-size: 1.5rem;
		line-height: 2;
	}

	.intro-area .intro-job {
		width: 100%;
	}

	.intro-area .swiper-slide {
		border-radius: 5px;
		border-width: 2px;
		height: auto;
		padding: 15px 20px 18px;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.jobex-box .info0-num {
		font-size: 1.2rem;
		margin: 0 0 5px;
	}

	.jobex-box .info0-subttl {
		font-size: 1.4rem;
		line-height: 1.4;
	}

	.swiper-job2 .jobex-box .info0-subttl {
		font-size: 1.2rem;
	}

	.jobex-box .info0-ttl {
		font-size: 1.9rem;
	}

	.swiper-job2 .jobex-box .info0-ttl {
		font-size: 1.5rem;
	}

	.jobex-box-list {
		flex-wrap: wrap;
		gap: 5px;
		margin: 15px 0 0;
	}

	.jobex-box-list li {
		padding: 7px 2px;
		min-width: calc((100% - 5px) / 2) !important;
	}

	.jobex-box-list .info1 {
		font-size: 1.5rem;
		width: auto;
	}

	.jobex-box-list .info2-ttl {
		font-size: 1.4rem;
	}

	.jobex-box-list .info2-pay {
		font-size: 1.4rem;
	}

	.jobex-box-list .info2-num {
		font-size: 1.5rem;
	}

	.jobex-box-list .info2-num span {
		font-size: 1.2rem;
	}

	.intro-area .jobex-box-cap {
		font-size: 1.2rem;
		line-height: 1.3;
	}
}

/* -----------------------------------------------------------
     関連求人 上部
-------------------------------------------------------------- */
.job-relation .point-list {
	display: flex;
	gap: 8px;
}

.job-relation .point-item {
	border-radius: 2px;
	width: 154px;
	height: 140px;
	color: #fff;
	font-weight: bold;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	position: relative;
}

@media screen and (min-width: 769px) and (max-width: 1400px) {
	.job-relation .point-item {
		width: 145px;
		height: 131px;
	}
}

.job-relation .point-item .color {
	color: #fff;
}

.job-relation .point-item p {
	font-size: 1.7rem;
	line-height: 1.5;
	letter-spacing: 0;
	z-index: 3;
	position: relative;
	text-align: center;
}

.job-relation .point-item span {
	line-height: 1.3;
}

.job-relation .point-item .point-num {
	font: 700 3rem /1 var(--en);
	margin: 0 3px 0 0;
}

.job-relation .point-item .point-small {
	font-size: 1.5rem;
}

.job-relation .point-item.point01 img {
	width: 89px;
	margin: 5px 0 0;
}

.job-relation .area-box {
	flex-shrink: 0;
}

.job-relation .area-box dt {
	color: #70727d;
	letter-spacing: 0;
	font-weight: 500;
	font-size: 1.5rem;
}

.job-relation .area-box dd {
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: 0;
	margin: 10px 0 0;
}

@media screen and (max-width: 768px) {
	.job-relation .point-list {
		margin: 25px 0 0;
		flex-wrap: wrap;
		gap: 5px;
		justify-content: center;
	}

	.job-relation .point-item {
		width: calc((100% - 10px) / 3);
		height: 106px;
		max-width: 150px;
	}

	.job-relation .point-item p {
		font-size: 1.3rem;
		line-height: 1.3;
		padding: 10px;
	}

	.job-relation .point-item .point-num {
		font-size: 1.8rem;
	}

	.job-relation .point-item .point-small {
		font-size: 1.3rem;
	}

	.job-relation .point-item.point01 img {
		max-width: 70px;
		width: 90%;
		margin: 5px auto 0;
	}

	.job-relation .area-box {
		margin: 30px 0 0;
	}

	.job-relation .area-box dd {
		font-size: 1.7rem;
	}
}

/* -----------------------------------------------------------
    関連求人
-------------------------------------------------------------- */
.job-relation {
	margin: 230px 0 0;
}

.job-relation .job-rel-header {
	align-items: center;
	display: flex;
	justify-content: space-between;
}

.job-relation .cmn-section-ttl {
	flex-shrink: 0;
}

.job-relation .job-rel-bg {
	padding: 40px 0 80px;
	margin: 50px 0 0;
}

.job-relation .job-select-wrap {
	align-items: center;
	display: flex;
	gap: 30px;
	margin-bottom: 40px;
	justify-content: center;
}

.job-relation .cmn-sort-select {
	border-radius: 5px;
	width: 250px;
	height: 40px;
}

@media screen and (max-width: 768px) {
	.job-relation {
		margin: 140px 0 0;
	}

	.job-relation .job-select-wrap {
		gap: 20px;
		margin: 0 auto 35px;
		padding: 0 20px;
	}

	.job-relation .job-rel-header {
		align-items: flex-start;
		flex-direction: column;
		gap: 0;
	}

	.job-relation .job-rel-bg {
		padding: 35px 0 40px;
		margin: 30px 0 0;
	}

	.job-relation .cmn-sort-select {
		border-radius: 30px;
		font-size: 1.5rem;
		flex-grow: 1;
		width: auto;
		max-width: 250px;
		padding: 0 0 0 20px;
	}
}

/* -----------------------------------------------------------
    topic
-------------------------------------------------------------- */
.topic-area {
	margin: 100px 0 0;
}

.topic-area .topic-box {
	margin: 40px 0 0;
}

.topic-area .topic-copy {
	align-items: center;
	display: flex;
	gap: 10px;
	position: relative;
	min-height: 100px;
	z-index: 2;
	margin: 0 0 40px;
}

.topic-area .topic-copy-ttl {
	color: var(--gray);
	flex-shrink: 0;
	width: 120px;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 1.3;
	text-align: center;
	padding: 100px 0 0;
	position: relative;
}

[data-topicstaff="1"] .topic-copy-ttl {
	padding: 100px 0 0;
}

[data-topicstaff="2"] .topic-copy-ttl {
	padding: 90px 0 0;
}

[data-topicstaff="3"] .topic-copy-ttl {
	padding: 80px 0 0;
}

.topic-area .topic-copy-ttl::before {
	content: '';
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	top: 0;
}

[data-topicstaff="1"] .topic-copy-ttl::before {
	aspect-ratio: 88/103;
	background: url(../img/illust-staff01.png)center/contain no-repeat;
	width: 80px;
}

[data-topicstaff="2"] .topic-copy-ttl::before {
	aspect-ratio: 96/99;
	background: url(../img/illust-staff02.png)center/contain no-repeat;
	width: 80px;
}

[data-topicstaff="3"] .topic-copy-ttl::before {
	aspect-ratio: 70/72;
	background: url(../img/illust-staff03.png)center/contain no-repeat;
	width: 70px;
}

.topic-area .topic-copy .fukidasi {
	border-radius: 8px;
	font-size: 2.3rem;
	font-weight: bold;
	line-height: 1.7;
	letter-spacing: .09em;
	position: relative;
	display: inline-block;
	background-color: #fff;
	border: solid 3px #d3d6dc;
	padding: 25px;
	width: calc(100% - 28px);
}

.topic-area .topic-copy .fukidasi:before, .topic-area .topic-copy .fukidasi:after {
	content: "";
	position: absolute;
	left: -26px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

.topic-area .topic-copy .fukidasi:before {
	border: solid 12px transparent;
	border-right: solid 12px #d3d6dc;
}

.topic-area .topic-copy .fukidasi:after {
	border: solid 16px transparent;
	border-right: solid 16px #fff;
}

.topic-area .topic-contents {
	display: flex;
	gap: 40px;
	margin: 0 0 50px;
}

.topic-area .inner .topic-contents:last-of-type {
	margin: 0;
}

.topic-area .topic-contents-img {
	aspect-ratio: 560/500;
	border-radius: 10px;
	flex-shrink: 0;
	width: 560px;
	overflow: hidden;
}

.topic-area .topic-contents-img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.topic-area .topic-contents-txt .txt-inner {
	margin-top: 35px;
}

.topic-area .topic-contents-txt .txt-inner:first-of-type {
	margin: 0;
}

.topic-area .topic-contents-txt .catch {
	border-radius: 3px;
	padding: 16px 15px 17px;
	position: relative;
	width: 100%;
	margin: 0 0 15px;
}

.topic-area .topic-contents-txt .catch span {
	align-items: center;
	color: #fff;
	font-size: 1.9rem;
	font-weight: bold;
	display: flex;
	gap: 7px;
	position: relative;
	letter-spacing: .05em;
	line-height: 1.4;
}

.topic-area .topic-contents-txt .catch span::before {
	content: "";
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	flex-shrink: 0;
}

.topic-area .topic-contents-txt .note p:not(:first-of-type) {
	margin-top: 20px;
}

@media screen and (max-width: 768px) {
	.topic-area {
		margin: 50px 0 0;
	}

	.topic-area .topic-box {
		margin: 20px 0 0;
	}

	.topic-area .topic-copy {
		gap: 10px;
		margin: 0 0 20px;
	}

	.topic-area .topic-copy-ttl {
		font-size: 1.2rem;
		width: 100px;
	}

	[data-topicstaff="1"] .topic-copy-ttl {
		padding: 70px 0 0;
	}

	[data-topicstaff="2"] .topic-copy-ttl {
		padding: 65px 0 0;
	}

	[data-topicstaff="3"] .topic-copy-ttl {
		padding: 65px 0 0;
	}

	.topic-area .topic-copy-ttl::before {
		width: 55px;
	}

	.topic-area .topic-copy .fukidasi {
		border-radius: 5px;
		font-size: 1.6rem;
		line-height: 1.7;
		letter-spacing: .05em;
		padding: 12px 15px 13px;
	}

	.topic-area .topic-contents {
		flex-direction: column;
		gap: 25px;
		margin: 0 0 40px;
	}

	.topic-area .topic-contents-img {
		border-radius: 5px;
		width: 100%;
	}

	.topic-area .topic-contents-txt .txt-inner {
		margin-top: 20px;
	}

	.topic-area .topic-contents-txt .catch {
		padding: 12px 10px;
	}

	.topic-area .topic-contents-txt .catch span {
		font-size: 1.7rem;
		letter-spacing: .03em;
	}

	.topic-area .topic-contents-txt .note p {
		font-size: 1.5rem;
		line-height: 2.2;
	}
}

/* -----------------------------------------------------------
    occ
-------------------------------------------------------------- */
.occ-area {
	margin: 100px 0 0;
}

/*cmn-modal.cssは他ページも使用のため、このファイルへ記述してください*/
.occ-area .modal-wrap {
	display: flex;
	gap: 16px 13px;
	flex-wrap: wrap;
}

.occ-area .modal_trg {
	align-items: center;
	border-style: solid;
	border-width: 7px;
	border-radius: 8px;
	display: flex;
	font-size: 1.9rem;
	font-weight: 500;
	width: calc((100% - 26px) / 3);
	padding: 25px 40px 25px 15px;
	pointer-events: none;
	line-height: 1.2;
	transition: .5s;
}

.occ-area .modal_trg.have-main {
	cursor: pointer;
	position: relative;
	pointer-events: auto;
}

.occ-area .modal_trg.have-main::before {
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 15px;
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	width: 25px;
	height: 25px;
}

.occ-area .modal_trg .num {
	font: 500 1.4rem / 1.2 var(--en);
	flex-shrink: 0;
	margin: 2px 13px 0 0;
}

.occ-area .occ-intro {
	margin: 40px 0 0;
}

.occ-area .occ-contents {
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.occ-area .occ-big-wrap {
	background: #dde2ed !important;
	border-radius: 10px;
	padding: 40px;
	position: relative;
	margin: 40px 0 0;
}

.occ-area .occ-big {
	background: #fff;
	border-radius: 10px;
	padding: 40px;
	position: relative;
	z-index: 2;
}

.occ-area .modal_content .occ-big {
	margin: 0;
	padding: 0;
}

.occ-area .occ-big::before {
	content: "";
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	top: -25px;
	left: 20px;
	width: 30px;
	height: 54px;
}

.occ-area .modal_content .occ-big::before {
	display: none;
}

.occ-area .occ-big-intro {
	align-items: center;
	display: flex;
	gap: 30px;
}

.occ-area .occ-big-thumb {
	aspect-ratio: 450/320;
	border-radius: 8px;
	flex-shrink: 0;
	width: 320px;
	overflow: hidden;
}

.occ-area .occ-big-thumb img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.occ-area .occ-big-name {
	align-items: center;
	display: flex;
	gap: 15px;
}

.occ-area .occ-big-name .num {
	font: 500 1.8rem / 1 var(--en);
}

.occ-area .occ-big-name .name {
	font-size: 3rem;
	font-weight: 800;
	letter-spacing: .05em;
	line-height: 1.4;
}

.occ-area .occ-big-list {
	margin: 25px 0 0;
	display: flex;
	gap: 20px;
}

.occ-area .occ-big-list:first-of-type {
	margin-top: 30px;
}

.occ-area .occ-big-list dt {
	align-items: center;
	border-radius: 3px;
	display: flex;
	font-weight: 500;
	flex-shrink: 0;
	padding: 15px;
	white-space: nowrap;
	width: 100px;
	height: 60px;
	justify-content: center;
}

.occ-area .occ-big-list dd {
	align-items: center;
	display: flex;
	min-height: 60px;
	line-height: 1.5;
	letter-spacing: .05em;
}

.occ-area .occ-element {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin: 30px 0 0;
}

.occ-area .occ-ele-list {
	justify-content: center;
	border-style: dashed;
	border-width: 1px;
	border-radius: 3px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 25px;
	width: 100%;
}

.occ-area .occ-ele-list.w50 {
	width: calc((100% - 20px) / 2);
}

.occ-area [data-occele="reward"], .occ-area [data-occele="terms"] {
	padding-left: 150px;
	position: relative;
	min-height: 120px;
}

.occ-area [data-occele="reward"]::before, .occ-area [data-occele="terms"]::before {
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	content: "";
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 20px;
	width: 105px;
}

.occ-area [data-occele="reward"]::before {
	aspect-ratio: 150/105;
	background-image: url("../img/occ-ele-reward.png");
}

.occ-area [data-occele="terms"]::before {
	aspect-ratio: 150/155;
	background-image: url("../img/occ-ele-terms.png");
}

.occ-area .occ-ele-subttl {
	font-weight: 700;
	font-size: 1.9rem;
}

.occ-area .occ-element .occ-ele-body {
	letter-spacing: .05em;
	line-height: 1.7;
}

/*給料*/
.occ-area .occ-element .ele-money {
	align-items: center;
	display: flex;
	flex-direction: row;
	gap: 25px;
	justify-content: flex-start;
}

.occ-area .occ-element .ele-money-salary {
	align-items: center;
	display: flex;
	gap: 5px;
}

.occ-area .occ-element .ele-money-salary img {
	width: 30px;
}

.occ-area .occ-element .ele-money dt {
	align-items: center;
	display: flex;
	flex-direction: column;
}

.occ-area .occ-element .ele-money-salary dd {
	align-items: center;
	display: flex;
	gap: 5px;
}

.occ-area .ele-money .occ-ele-subttl span {
	border-radius: 2px;
	color: #fff;
	font-size: 1.5rem;
	font-weight: 500;
	width: 100%;
	text-align: center;
	padding: 5px 3px 7px;
	margin: 8px 0 0;
	letter-spacing: .05em;
}

.occ-area .occ-ele-staff {
	align-items: center;
	display: flex;
	gap: 22px;
	position: relative;
	min-height: 100px;
	z-index: 2;
	margin: 15px 0 0;
	width: 100%;
}

.occ-area .staff-name {
	color: var(--gray);
	flex-shrink: 0;
	width: 120px;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 1.3;
	text-align: center;
	padding: 100px 0 0;
	position: relative;
}

.occ-area .staff-name::before {
	aspect-ratio: 88/103;
	background: url(../img/illust-staff01.png)center/contain no-repeat;
	content: '';
	width: 80px;
	position: absolute;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	top: 0;
}

.occ-area .staff-fukidasi {
	border-radius: 8px;
	padding: 24px 30px 27px;
	position: relative;
	width: 100%;
}

.occ-area .staff-fukidasi::before {
	content: "";
	border-style: solid;
	border-top: 15px solid transparent;
	border-bottom: 15px solid transparent;
	border-right: 0;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: -20px;
	width: 0;
	height: 0;
}

.occ-area .staff-catch {
	font-size: 1.9rem;
	font-weight: bold;
	line-height: 1.7;
	margin: 0 0 5px;
}

.occ-area .staff-note {
	line-height: 2;
	letter-spacing: .05em;
}

.occ-area .occ-ele-caption {
	color: var(--gray);
	margin: 0 0 0 auto;
}

@media screen and (max-width: 768px) {
	.occ-area {
		margin: 50px 0 0;
	}

	.occ-area .modal-wrap {
		gap: 15px;
	}

	.occ-area .modal_trg {
		border-width: 5px;
		border-radius: 5px;
		font-size: 1.7rem;
		width: 100%;
		padding: 17px 35px 17px 15px;
	}

	.occ-area .modal_trg.have-main::before {
		right: 10px;
		width: 20px;
		height: 20px;
	}

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

	.occ-area .occ-contents {
		gap: 20px;
	}

	.occ-area .occ-big-wrap {
		border-radius: 0;
		padding: 25px 20px;
		margin: 20px 0 0;
	}

	.occ-area .occ-big {
		border-radius: 5px;
		padding: 15px;
	}

	.occ-area .occ-big::before {
		left: 10px;
		width: 20px;
		height: 44px;
	}

	.occ-area .occ-big-intro {
		gap: 15px;
		flex-direction: column;
	}

	.occ-area .occ-big-thumb {
		width: 100%;
	}

	.occ-area .occ-big-name {
		align-items: flex-start;
		gap: 7px;
		flex-direction: column;
	}

	.occ-area .occ-big-name .num {
		font-size: 1.4rem;
	}

	.occ-area .occ-big-name .name {
		font-size: 2.1rem;
	}

	.occ-area .occ-big-list {
		margin: 20px 0 0;
		gap: 10px;
		flex-direction: column;
	}

	.occ-area .occ-big-list:first-of-type {
		margin-top: 20px;
	}

	.occ-area .occ-big-list dt {
		font-size: 1.5rem;
		padding: 10px;
		width: 100%;
		height: auto;
		justify-content: flex-start;
	}

	.occ-area .occ-big-list dd {
		display: block;
		min-height: auto;
		font-size: 1.5rem;
	}

	.occ-area .occ-element {
		gap: 15px;
		margin: 25px 0 0;
	}

	.occ-area .occ-ele-list {
		display: block;
		padding: 15px;
	}

	.occ-area [data-occele="reward"]::before, .occ-area [data-occele="terms"]::before {
		display: none;
	}

	.occ-area .occ-ele-list.w50 {
		width: 100%;
	}

	.occ-area .occ-ele-subttl {
		font-size: 1.6rem;
		float: left;
		width: 100%;
		margin: 0 0 15px;
	}

	.occ-area .occ-element .occ-ele-body {
		font-size: 1.5rem;
	}

	.occ-area [data-occele="reward"] .occ-ele-body::before, .occ-area [data-occele="terms"] .occ-ele-body::before {
		background-size: contain;
		background-repeat: no-repeat;
		background-position: center;
		content: "";
		width: 70px;
		float: left;
		margin: 0 10px 5px;
	}

	.occ-area [data-occele="reward"] .occ-ele-body::before {
		aspect-ratio: 150/105;
		background-image: url("../img/occ-ele-reward.png");
	}

	.occ-area [data-occele="terms"] .occ-ele-body::before {
		aspect-ratio: 150/155;
		background-image: url("../img/occ-ele-terms.png");
	}

	/*給料*/
	.occ-area .occ-element .ele-money {
		align-items: flex-start;
		display: flex;
		flex-direction: column;
		gap: 10px;
	}

	.occ-area .occ-element .ele-money dt {
		flex-direction: row;
		gap: 5px;
		white-space: nowrap;
		margin: 0;
	}

	.occ-area .ele-money .occ-ele-subttl {
		font-size: 1.6rem;
	}

	.occ-area .ele-money .occ-ele-subttl span {
		margin: 0;
		font-size: 1.4rem;
		padding: 5px 8px 7px;
		width: fit-content;
	}

	.occ-area .occ-element .ele-money-salary {
		font-size: 1.5rem;
	}

	.occ-area .occ-element .ele-money-salary img {
		width: 20px;
	}

	.occ-area .occ-ele-staff {
		border-radius: 5px;
		gap: 18px;
		min-height: unset;
		margin: 0;
		flex-direction: column;
		padding: 20px 20px 30px;
	}

	.occ-area .staff-fukidasi {
		background: transparent !important;
		padding: 0;
	}

	.occ-area .staff-fukidasi::before {
		display: none;
	}

	.occ-area .staff-name {
		font-size: 1.2rem;
		width: fit-content;
		padding: 0 0 0 55px;
	}

	.occ-area .staff-name::before {
		width: 50px;
		left: 0;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		top: 50%;
	}

	.occ-area .staff-catch {
		font-size: 1.7rem;
		text-align: center;
	}

	.occ-area .staff-note {
		font-size: 1.5rem;
	}

	.occ-area .occ-ele-caption {
		font-size: 1.3rem;
		margin: 0 auto;
		letter-spacing: 0;
		line-height: 1.6;
	}
}

/* -----------------------------------------------------------
    haken-area
-------------------------------------------------------------- */
.haken-area {
	background: url("../img/ptn-stripe.jpg")center repeat;
	padding: 120px 0 100px;
}

.haken-area .splide {
	visibility: visible !important;
}

[class^="haken-block__"] {
	background: #fff;
	border-radius: 15px;
	padding: 45px 40px 50px;
	position: relative;
}

[class^="haken-block__"]::before {
	content: "";
	aspect-ratio: 263/213;
	background: url("../img/haken-zoom.png") no-repeat center / cover;
	width: 120px;
	position: absolute;
	top: -80px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.haken-block__2 {
	margin: 105px 0 0;
}

.haken-area .haken-ttl {
	text-align: center;
	font-size: 2.6rem;
	font-weight: bold;
}

.haken-area .haken-intro {
	text-align: center;
}

.haken-block__1 .haken-intro {
	margin: 25px 0 50px;
}

.haken-block__2 .haken-intro {
	margin: 25px 0 45px;
}

@media (min-width: 769px) {
	.haken-area [class^="haken-list"] {
		display: flex !important;
		gap: 30px;
	}

	.haken-area .splide__track {
		overflow: unset;
	}

	.haken-area [class^="haken-item-box"] {
		width: calc((100% - 60px) / 3);
	}
}

.haken-area [class^="haken-item-box"] {
	position: relative;
}

.haken-area [class^="haken-item-box"]::before {
	content: "";
	background-position: center;
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
}

/*#haken-slider------------------------------*/
.haken-area .haken-item-box {
	background: var(--cmnbg2);
	border-radius: 10px;
	padding: 20px;
	height: 360px;
}

.haken-area .haken-item-box::before {
	aspect-ratio: 13/28;
	top: 20px;
	left: 15px;
	width: 76px;
}

.haken-area [data-haken1="1"]::before {
	background-image: url("../img/newsletter1.png");
}

.haken-area [data-haken1="2"]::before {
	background-image: url("../img/newsletter2.png");
}

.haken-area [data-haken1="3"]::before {
	background-image: url("../img/newsletter3.png");
}

.haken-area .haken-item-num {
	background: var(--main);
	color: #fff;
	font-size: 1.5rem;
	padding: 6px 10px 8px;
	line-height: 1;
	border-radius: 30px;
	position: absolute;
	top: -15px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.haken-area .haken-item-detail {
	padding: 0 0 0 90px;
}

.haken-area .haken-item-detail dt {
	font-size: 1.9rem;
	font-weight: 600;
	padding: 15px 0 0;
}

.haken-area .haken-item-detail dd {
	background: #fff;
	border: 5px solid #80dc8d;
	border-radius: 10px;
	padding: 15px;
	position: relative;
	margin: 25px 0 0;
	line-height: 1.9;
	letter-spacing: .03em;
	height: 225px;
}

.haken-area .haken-item-detail dd::before {
	content: "";
	aspect-ratio: 88/103;
	background: url("../img/illust-staff01.png") no-repeat center / cover;
	width: 60px;
	position: absolute;
	bottom: -40px;
	right: 10px;
}

/*#haken-slider2------------------------------*/
.haken-area .haken-item-box2::before {
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.haken-area [data-haken2="1"]::before {
	aspect-ratio: 150/155;
	background-image: url("../img/occ-ele-terms.png");
	width: 95px;
	top: -50px;
}

.haken-area [data-haken2="2"]::before {
	aspect-ratio: 150/138;
	background-image: url("../img/haken1.png");
	width: 85px;
	top: -30px;
}

.haken-area [data-haken2="3"]::before {
	aspect-ratio: 190/116;
	background-image: url("../img/haken2.png");
	width: 110px;
	top: -20px;
}

.haken-area .haken-item-box2 {
	background: #e6ecf7;
	border-radius: 5px;
	font-weight: 600;
	font-size: 1.7rem;
	line-height: 1.7;
	letter-spacing: .07em;
	padding: 60px 25px 20px;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.haken-area {
		margin-top: 0;
		padding: 70px 0 50px;
	}

	[class^="haken-block__"] {
		border-radius: 10px;
		padding: 30px 20px 30px;
	}

	.haken-block__2 {
		margin: 60px 0 0;
	}

	[class^="haken-block__"]::before {
		width: 75px;
		top: -40px;
	}

	.haken-area .haken-ttl {
		font-size: 2rem;
		line-height: 1.4;
	}

	.haken-area .haken-intro {
		text-align: left;
		margin: 15px 0 20px;
	}

	.haken-block__1 .haken-intro {
		margin: 20px 0 40px;
	}

	.haken-area [class^="haken-list"] {
		display: flex;
		flex-direction: column;
	}

	/*#haken-slider----------------------*/
	#haken-slider .splide__list {
		padding: 28px 0 20px !important;
	}

	#haken-slider .haken-list {
		gap: 35px;
	}

	.haken-area .haken-item-box {
		padding: 15px;
		height: auto;
		width: 100%;
	}

	.haken-area .haken-item-box::before {
		width: 45px;
		top: -20px;
		left: 10px;
	}

	.haken-area .haken-item-detail {
		padding: 0;
	}

	.haken-area .haken-item-detail dt {
		font-size: 1.8rem;
		padding: 12px 0 0 55px;
	}

	.haken-area .haken-item-detail dd {
		border-width: 3px;
		border-radius: 8px;
		margin: 20px 0 0;
		height: auto;
		font-size: 1.5rem;
	}

	.haken-area .haken-item-detail dd::before {
		width: 55px;
		bottom: -30px;
	}

	/*#haken-slider2----------------------*/
	#haken-slider2 .splide__list {
		padding: 40px 0 0 !important;
	}

	#haken-slider2 .haken-list2 {
		gap: 15px;
	}

	.haken-area .haken-item-box2 {
		font-size: 1.5rem;
		line-height: 1.7;
		letter-spacing: .07em;
		padding: 15px 13px 15px 75px;
		text-align: left;
		margin: 0 0 0 auto;
		width: calc(100% - 15px);
	}

	.haken-area .haken-item-box2::before {
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
	}

	.haken-area [data-haken2="1"]::before {
		width: 75px;
		left: -15px !important;
	}

	.haken-area [data-haken2="2"]::before {
		width: 65px;
		left: -10px !important;
	}

	.haken-area [data-haken2="3"]::before {
		width: 85px;
		left: -25px !important;
	}
}

/* -----------------------------------------------------------
    service-area
-------------------------------------------------------------- */
.service-area {
	margin-top: 120px;
}

@media screen and (max-width: 768px) {
	.service-area {
		margin-top: 60px;
	}

	.service-area .fmt-sticky {
		margin-top: 30px;
	}
}

/* -----------------------------------------------------------
    flow-area
-------------------------------------------------------------- */
.flow-area {
	margin-top: 100px;
}

.flow-area .occ-sec-header {
	margin: 0 0 35px;
}

@media screen and (max-width: 768px) {
	.flow-area {
		margin-top: 50px;
	}

	.flow-area .occ-sec-header {
		margin: 0 0 25px;
	}
}

/* -----------------------------------------------------------
    faq-area
-------------------------------------------------------------- */
.faq-area {
	margin-top: 100px;
}

.faq-area .fmt-tab-wrap2 {
	margin: 40px 0 0;
}

@media screen and (max-width: 768px) {
	.faq-area {
		margin-top: 50px;
	}

	.faq-area [data-fmttab="column"] .fmt-tab-item {
		font-size: 1.4rem;
		min-width: 80px;
		padding: 14px 22px 14px 12px;
	}

	.faq-area .fmt-tab-contents {
		display: none;
	}

	.faq-area .fmt-tab-contents.fmt-tabbox-active {
		display: block;
	}

	.faq-area .fmt-tab-wrap2 {
		margin: 30px 0 0;
	}

	.faq-area [data-fmttab="column"] [class^="fmt-tab-nav"] .fmt-tab-item {
		min-width: auto;
		padding: 16px 23px 16px 8px;
	}
}

@media screen and (max-width: 360px) {
	.faq-area [data-fmttab="column"] [class^="fmt-tab-nav"] .fmt-tab-item {
		min-width: auto;
		padding: 16px 20px 16px 8px !important;
	}
}

/* -----------------------------------------------------------
    access-area
-------------------------------------------------------------- */
.access-area {
	margin: 100px 0 0;
}

@media screen and (max-width: 768px) {
	.access-area {
		margin: 50px 0 0;
	}
}

/* -----------------------------------------------------------
    cv-area
-------------------------------------------------------------- */
.page-occ .lp_ft_cv_area .lp_ft_cv_btn .catch {
	font-size: 2.2rem;
}

@media screen and (max-width: 768px) {
	.page-occ .lp_ft_cv_area .lp_ft_cv_btn .catch {
		font-size: 1.8rem;
		letter-spacing: .03em;
		font-feature-settings: "palt";
	}
}