@import url('https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap');

:root {
  --font-en: 'Lato', sans-serif;
}

.c-module-container {
	background: var(--sub-bg);
}

/* -------------------------------------------
共通パッチ
------------------------------------------- */
/* PCとタブレットのみ改行を適用 */
@media screen and (min-width: 768px) {
	.pc-tab {
		display: block;
	}
}

@media screen and (max-width: 767px) {
	.pc-tab {
		display: none;
	}
}

.m-footer-001__copyright {
	padding: 30px 0;
}

@media screen and (max-width: 767px) {
	.m-footer-001__copyright {
		padding: 20px 0;
	}
}

/* -------------------------------------------
ヘッダー
------------------------------------------- */
.m-header-001__logo-link-img {
	max-height: 40px;
}

/* -------------------------------------------
共通 ヘッドライン
------------------------------------------- */
.c-headline-001__en {
	font-weight: normal;
}

/* -------------------------------------------
メッセージ 001
------------------------------------------- */
.m-message-001 {
	background: #000 !important;
	color: #fff;
}

@media screen and (max-width: 767px) {
	.m-message-001 {
		padding: 0 20px;
	}
}

.m-message-001__detail {
	padding: 110px 0;
}

@media screen and (min-width: 768px) and (max-width: 1024px) {
	.m-message-001__detail {
		padding: 80px 30px;
	}
}

@media screen and (max-width: 767px) {
	.m-message-001__detail {
		padding: 40px 0;
	}
}

.m-message-001__headline {
	color: #fff;
}

@media screen and (max-width: 320px) {
	.m-message-001__headline-txt {
		font-size: 2.2rem;
		letter-spacing: .2rem;
	}
}

.m-message-001__desc-txt {
	padding: 35px 0 0;
	color: #fff;
	line-height: 1.875;
	letter-spacing: .05em;
}

@media screen and (max-width: 767px) {
	.m-message-001__desc-txt {
		text-align: left;
	}
}

/* -------------------------------------------
仕事内容(一覧) 001
------------------------------------------- */
.m-works-001 {
	padding-top: 110px;
}

@media screen and (max-width: 1024px) {
	.m-works-001 {
		padding: 70px 0 40px;
	}
}

@media screen and (max-width: 767px) {
	.m-works-001 {
		padding: 40px 0 15px;
	}
}
@media screen and (max-width: 767px) {
	.m-works-001__inner {
		padding: 0;
	}
}

.m-works-001 .c-headline-001 {
	margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
	.m-works-001 .c-headline-001 {
		margin-bottom: 20px;
	}
}

.m-works-001__desc-txt {
	padding-bottom: 0;
	letter-spacing: .1em;
}

@media screen and (max-width: 767px) {
	.m-works-001__item:not(:last-child) {
		margin-bottom: 40px;
	}
}

.m-works-001__ttl-en {
	padding-top: 2px;
}

_:-ms-fullscreen,
:root .m-works-001__ttl-en {
	padding-top: 0;
	padding-bottom: 4px;
}

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

	_:-ms-fullscreen,
	:root .m-works-001__ttl-en {
		padding-top: 6px;
		padding-bottom: 8px;
	}
}

_:-ms-fullscreen,
:root .m-works-001__ttl-ja {
	padding-top: 6px;

}

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

	_:-ms-fullscreen,
	:root .m-works-001__ttl-ja {
		padding-bottom: 2px;
	}
}

/* -------------------------------------------
メッセージ 003
------------------------------------------- */
.m-message-003__detail {
	/*background: #000; */
}

.m-message-003__desc-txt {
	padding-bottom: 10px;
	letter-spacing: .1em;
}

@media screen and (max-width: 1024px) {
	.m-message-003 {
		padding: 20px 20px 40px;
	}
}

@media screen and (max-width: 767px) {
	.m-message-003 {
		padding: 40px 10px 30px;
	}
}

@media screen and (max-width: 1024px) {
	.m-message-003__inner {
		padding: 0;
		flex-direction: column;
	}
}

@media screen and (max-width: 1024px) {
	.m-message-003__figure {
		width: 100%;
	}
}

.m-message-003__figure-img {
	vertical-align: bottom;
}

@media screen and (max-width: 1024px) {
	.m-message-003__detail {
		width: 100%;
		margin: 0% 0 0 0%;
	}
}

/* -------------------------------------------
評価制度 001
------------------------------------------- */
.m-assessment-001 {
	padding-bottom: 110px;
}

@media screen and (max-width: 1024px) {
	.m-assessment-001 {
		padding: 40px 0 60px;
	}
}
@media screen and (max-width: 767px) {
	.m-assessment-001 {
		padding: 20px 0 40px;
	}
}

.m-assessment-001__list-item-ttl {
	border-color: #bcc1c6;
	border-width: 1px 0;
}

.m-assessment-001__list-item-ttl-txt {
	color: #000;
}

.m-assessment-001__list-item-desc {
	margin-top: 15px;
	color: #000;
	letter-spacing: .1em;
}

.m-assessment-001__list-item-ttl-num {
	line-height: 60px;
}

@media screen and (max-width: 767px) {
	.m-assessment-001__list-item-ttl-num {
		line-height: 40px;
	}
}

.m-assessment-001__list-item-desc {
	padding: 0 20px;
}

@media screen and (max-width: 767px) {
	.m-assessment-001__list-item-desc {
		padding: 0;
	}
}

@media screen and (max-width: 1024px) {
	.m-assessment-001__list-item {
		padding: 24px;
	}
}

@media screen and (max-width: 767px) {
	.m-assessment-001__list-item {
		padding: 12px 24px;
	}
}

@media screen and (max-width: 767px) {
	.m-assessment-001__list-item-figure {
		padding: 0;
	}
}

/* -------------------------------------------
福利厚生 001
------------------------------------------- */
.m-welfare-001 {
	padding: 110px 0;
	background: #000 !important;
	color: #fff;
}

@media screen and (max-width: 1024px) {
	.m-welfare-001 {
		padding: 60px 0;
	}
}
@media screen and (max-width: 767px) {
	.m-welfare-001 {
		padding: 30px 0;
	}
}

.m-welfare-001 .c-headline-001__ja {
	color: #fff;
}

.m-welfare-001__list-item-inner {
	border: 1px solid #ddd;
	/* background: #000; */
}

@media screen and (min-width: 1025px) {
	.m-welfare-001__list>* {
		padding-bottom: 0;
	}
}

@media screen and (max-width: 1024px) {
	.m-welfare-001__list-item:last-child {
		padding-bottom: 0;
	}
}

/* 番号の背景色の変更を行いたい場合に使用 */
.m-welfare-001__list-item-ttl-num {
	/* background: #333; */
}

.m-welfare-001__list-item-ttl-txt {
	font-size: 2.5rem;
	font-weight: 700;
	color: #000;
}

@media screen and (max-width: 767px) {
	.m-welfare-001__list-item-ttl-txt {
		font-size: 2rem;
	}
}

.m-welfare-001__list-item-desc {
	padding: 0 0 10px;
	font-size: 15px;
	font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
	.m-welfare-001__list-item-desc {
		padding-top: 5px;
	}
}

.m-welfare-001__list-item-desc-txt {
	font-size: 1.5rem;
	letter-spacing: .05em;
	color: #000;
	text-align: justify;
}

.m-welfare-001__list-item-ttl-num {
	line-height: 60px;
}

@media screen and (max-width: 767px) {
	.m-welfare-001__list-item-ttl-num {
		line-height: 40px;
	}
}

.m-welfare-001__desc-txt {
	letter-spacing: .05em;
}

@media screen and (max-width: 1024px) {
	.m-welfare-001__desc-txt {
		padding: 10px 15px 0;
	}
}

/* -------------------------------------------
インタビュー 001
------------------------------------------- */
.m-interview-001 {
	padding: 120px 20px;
}

@media screen and (max-width: 1024px) {
	.m-interview-001 {
		padding: 80px 10px;
	}
}
@media screen and (max-width: 767px) {
	.m-interview-001 {
		padding: 60px 0;
	}
}

@media screen and (max-width: 767px) {
	.m-interview-001 .c-headline-001 {
		margin-bottom: 0;
	}
}

.m-interview-001__nav-item-ttl:first-child {
	border-width: 2px;
}

@media screen and (max-width: 767px) {
	.m-interview-001__contents {
		margin-top: 25px;
	}
}

.m-interview-001__contents-card {
	margin-bottom: 70px;
}

@media screen and (max-width: 767px) {
	.m-interview-001__contents-card {
		margin-bottom: 30px;
	}
}

.m-interview-001__contents-card-content:only-child {
	width: 100%;
}

.m-interview-001__contents-card-content:only-child::after {
	display: none;
}

.m-interview-001__contents-section-detail:only-child {
	width: 100%;
	padding: 0;
}

.m-interview-001__contents-section-detail-question {
	font-size: 20px;
	font-size: 2rem;
}

@media screen and (max-width: 767px) {
	.m-interview-001__contents-section-detail-question {
		font-size: 16px;
		font-size: 1.6rem;
	}
}

.m-interview-001__contents-card-lead {
	line-height: 2;
	letter-spacing: .05em;
}

/* -------------------------------------------
メッセージ 002
------------------------------------------- */
/* 背景画像の配置を変更したい場合に使用 */
.m-message-002 {
	/* background-position: top center; */
}

.m-message-002__inner::before {
	/* display: none; */
	background: #000;
	/* background: var(--primary); */
	opacity: .7;
}

@media screen and (max-width: 767px) {
	.m-message-002__detail {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	.m-message-002__desc-txt {
		padding: 10px 0 0 0;
		text-align: left;
	}
}

.m-message-002__desc-txt {
	letter-spacing: .05em;
	line-height: 1.875;
}

/* -------------------------------------------
募集要項 003
------------------------------------------- */
.m-require-003 {
	/* background: #f7f7f7 !important; */
}

/* タイトル（英語）の見出しを大文字に変更したい場合に使用 */
.m-require-003 .c-headline-001__en {
	/* text-transform: uppercase; */
}

.m-require-003 .c-headline-001__ja {
	font-weight: 700;
}

.m-require-003__detail-row {
	border-top: 1px solid #bcc1c6;
}

.m-require-003__detail-row:last-child {
	border-bottom: 1px solid #bcc1c6;
}

.m-require-003__detail-ttl {
	color: #000;
}

.m-require-003__detail-desc {
	font-weight: 400;
	color: #000;
}

/* 「STEP番号」の背景色を変更したい場合に適用 */
.m-require-003__detail-flow-ttl-number {
	/* background-color: #f2f2f2; */
	/* color: #333; */
}

/* -------------------------------------------
フッター
------------------------------------------- */
.m-footer-001 {
	background: #fff;
	color: rgba(0,0,0,.8);
}
