/* ===========================
Base
=========================== */
*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-padding-top: 115px;
}

body {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 18px;
	font-weight: 400;
	color: #242A30;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	text-rendering: optimizeLegibility;
}

img {
	max-width: 100%;
	height: auto;
}

.block-1400,
.block-1024,
.block-768,
.block-450 {
	display: none;
}

main {
	margin-top: 115px;
}

main.page-company,
main.page-job {
	background-color: rgba(248, 197, 177, 0.2);
}

.inner {
	width: 90%;
	max-width: 980px;
	margin: 0 auto;
}

/* ボタン */
.btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 390px;
	height: 76px;
	background-color: #223e78;
	border-radius: 999px;
	text-decoration: none;
	transition: transform 0.3s ease;
	margin: 0 auto;
}

.btn:hover {
	transform: translateY(-4px);
}

.btn__icon {
	position: absolute;
	left: 40px;
	top: 50%;
	width: 36px;
	height: 36px;
	transform: translateY(-50%);
}

.btn__arrow {
	position: absolute;
	right: 30px;
	top: 50%;
	width: 26px;
	height: 26px;
	transform: translateY(-50%);
}

.btn__text {
	font-size: 26px;
	font-weight: 700;
	color: #ffffff;
	white-space: nowrap;
}

/* ctaボタン */
.btn--cta {
	background-color: #F2685E;
}

.btn--cta .btn__icon {
	display: none;
}



/* =====================================
header ヘッダー
===================================== */
.header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 1000;
	background: #fff;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
}

.header__inner {
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: 115px;
}

/* ロゴ */
.header__logo-heading {
	margin: 0;
	font-size: inherit;
	font-weight: inherit;
	line-height: 1;
}

.header__logo-link {
	display: block;
	width: 310px;
	height: 37px;
	background-image: url(../img/logo-header.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
}

/* グロナビ */
.header__nav {
	flex: 1;
}

.header__nav-list {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 32px;
	margin: 0;
	padding: 0;
}

.header__nav-item a {
	color: #510D0D;
	text-decoration: none;
	font-size: 16px;
	font-weight: 700;
	/* 500 → 700 */
	white-space: nowrap;
	transition: opacity .2s ease;
}

.header__nav-item a:hover {
	opacity: .6;
}

/* ボタン */
.header__actions {
	display: flex;
	gap: 30px;
}

.header-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 8px 22px;
	border-radius: 999px;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: transform .2s ease;
}

.header-btn:hover {
	transform: translateY(4px);
}

.header-btn__icon {
	width: 16px;
	height: auto;
	display: block;
}

.header-btn__icon--mail {
	width: 20px;
}

.header-btn__icon--right {
	width: 11px;
}

/* お問い合わせ（アウトライン） */
.header-btn--contact {
	background: #fff;
	color: #FF948F;
	border: 2px solid #e8a9ae;
}

/* お申し込みはこちら（塗り） */
.header-btn--form {
	background: #223E78;
	color: #fff;
}

/* ===========================
モバイルナビ（ハンバーガーメニュー）
=========================== */

/* ハンバーガーボタン */
.header__hamburger {
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 10px;
	width: 44px;
	height: 32px;
	flex-shrink: 0;
	background: none;
	border: none;
	padding: 0;
	cursor: pointer;
}

.header__hamburger-bar {
	display: block;
	width: 100%;
	height: 4px;
	background-color: #510D0D;
	border-radius: 2px;
}

/* スマホ用テキストロゴ */
.header__logo-mobile {
	display: none;
	text-decoration: none;
}

.header__logo-mobile-sub {
	margin: 0 0 2px;
	font-size: 14px;
	font-family: 'Noto Sans JP', sans-serif !important;
	color: #510D0D;
	text-align: center;
}

.header__logo-mobile-main {
	display: inline-block;
	overflow: hidden;
	width: 260px;
	aspect-ratio: 1016 / 124;
	text-indent: -9999px;
	background-image: url('../img/logo.svg');
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
}

.header__logo-mobile--in-nav .header__logo-mobile-main {
	background-image: none;
	background-color: #ffffff;
	-webkit-mask-image: url('../img/logo.svg');
	mask-image: url('../img/logo.svg');
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	-webkit-mask-position: left center;
	mask-position: left center;
	-webkit-mask-size: contain;
	mask-size: contain;
}

/* モバイルオーバーレイナビ本体 */
.header__mobile-nav {
	position: fixed;
	inset: 0;
	z-index: 1100;
	background-color: #FF948F;
	overflow-y: auto;
	transform: translateY(-100%);
	transition: transform 0.3s ease;
}

.header__mobile-nav.is-open {
	transform: translateY(0);
}

.header__mobile-nav-inner {
	display: flex;
	flex-direction: column;
	min-height: 100%;
	width: 95%;
	margin: 0 auto;
	padding: 0 0 40px;
}

.header__mobile-nav-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-height: 80px;
	margin: 0 0 40px;
}

.header__logo-mobile--in-nav .header__logo-mobile-sub,
.header__logo-mobile--in-nav .header__logo-mobile-main {
	color: #ffffff;
}

/* 閉じるボタン（×） */
.header__mobile-close {
	position: relative;
	flex-shrink: 0;
	width: 40px;
	height: 40px;
	background: none;
	border: none;
	cursor: pointer;
}

.header__mobile-close-bar {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #ffffff;
	border-radius: 2px;
}

.header__mobile-close-bar:nth-child(1) {
	transform: rotate(45deg);
}

.header__mobile-close-bar:nth-child(2) {
	transform: rotate(-45deg);
}

/* ナビリスト */
.header__mobile-nav-list {
	margin: 0 0 auto;
	padding: 0;
}

.header__mobile-nav-list li {
	border-bottom: 1px solid #fff;
}

.header__mobile-nav-list a {
	display: block;
	padding: 24px 20px 16px;
	font-size: 20px;
	font-weight: 700;
	color: #ffffff;
}

/* フッター情報 */
.header__mobile-footer {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}

.header__mobile-footer-info {
	margin-bottom: 20px;
}

.header__mobile-footer-logo {
	display: inline-block;
	overflow: hidden;
	width: 220px;
	aspect-ratio: 1016 / 124;
	text-indent: -9999px;
	background-color: #ffffff;
	/* -webkit-mask-image: url(../img/logo.svg); */
	mask-image: url(../img/logo.svg);
	/* -webkit-mask-repeat: no-repeat; */
	mask-repeat: no-repeat;
	/* -webkit-mask-position: left center; */
	mask-position: left center;
	/* -webkit-mask-size: contain; */
	mask-size: contain;
	margin: 0 0 10px;
}

.header__mobile-footer-text {
	font-size: 16px;
	line-height: 1.8;
	color: #ffffff;
}

/* インスタリンク */
.header__mobile-footer-instagram {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
}

.header__mobile-footer-instagram-icon {
	width: 60px;
	height: auto;
}

/* メニューが開いている間、背景をスクロールさせない */
body.is-nav-open {
	overflow: hidden;
}



/* =====================================
footer フッター
===================================== */
.footer {
	padding: 90px 0 100px;
	background-color: #FF7C75;
	color: #fff;
}

.footer__inner {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 40px;
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
}

/* ロゴ・キャッチ */
.footer__tagline {
	margin: 0 0 8px;
	font-size: 20px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
}

.footer__logo img {
	width: 510px;
	height: auto;
}

.footer__credit {
	margin: 20px 0 0;
	font-size: 14px;
}

/* 右カラム（ナビ＋コピーライト） */
.footer__right {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}

/* ナビゲーション */
.footer__nav {
	display: flex;
	gap: 60px;
	flex-shrink: 0;
}

.footer__nav-heading {
	margin: 0 0 8px;
}

.footer__nav-heading a {
	position: relative;
	padding-left: 20px;
	font-size: 16px;
	font-weight: 700;
	color: #ffffff;
}

.footer__nav-heading a::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-style: solid;
	border-width: 8px 0 8px 14px;
	border-color: transparent transparent transparent #fff;
}

.footer__nav-heading a:hover {
	text-decoration: underline;
}

.footer__nav-heading--contact {
	margin-top: 20px;
}

.footer__nav-list {
	margin: 0;
	padding: 0;
}

.footer__nav-list li {
	position: relative;
	padding-left: 12px;
}

.footer__nav-list li::before {
	content: '-';
	position: absolute;
	left: 0;
}

.footer__nav-list li+li {
	margin-top: 4px;
}

.footer__nav-list a {
	font-size: 14px;
	color: #fff;
}

.footer__nav-list a:hover {
	text-decoration: underline;
}

.footer__tel {
	margin-left: 22px;
	font-size: 17px;
	font-weight: 500;
}

.footer__tel-number {
	font-size: 22px;
	color: #ffffff;
}

/* コピーライト */
.footer__copyright {
	margin: 0;
	font-size: 12px;
	font-weight: 700;
}



/* =====================================
template-parts テンプレートパーツ
===================================== */

/* ===========================
参加企業一覧
=========================== */

.companies {
	position: relative;
	overflow: hidden;
	padding: 120px 0 100px;
	background-color: rgba(248, 197, 177, 0.2);
}

.companies__decor {
	position: absolute;
	pointer-events: none;
	z-index: -1;
}

.companies__decor--left {
	left: 0;
	top: 0;
	width: 634px;
	height: auto;
}

.companies__decor--right {
	right: 0;
	bottom: 0;
	width: 786px;
	height: auto;
}

.companies__card {
	padding: 20px 40px 40px;
	border-radius: 10px;
	background-color: #f8c5b1;
}

.companies__title {
	margin: 0 0 26px;
	font-size: 36px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	text-align: center;
}

.companies__list-box {
	border-radius: 8px;
	background-color: #ffffff;
}

.companies__list {
	column-count: 2;
	column-gap: 48px;
	column-rule: 1px solid #707070;
	margin: 0;
	padding: 20px 30px;
}

.companies__item+.companies__item {
	margin-top: 10px;
}

.companies__item a {
	font-size: 20px;
	font-weight: 700;
	color: #242A30;
}

.companies__empty {
	padding: 40px;
	text-align: center;
	color: #666666;
}

.companies__cta {
	margin-top: 50px;
	text-align: center;
}


/* ===========================
overview 開催概要
=========================== */
.overview__box {
	display: flex;
	gap: 60px;
	align-items: flex-start;
}

.overview__left {
	flex: 1 1 62%;
}

.overview__map {
	flex: 1 1 46%;
	margin-top: 40px;
}

.overview__map iframe {
	display: block;
	width: 100%;
	height: 450px;
}

.overview__title {
	margin: 0 0 16px;
	font-size: 36px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #FF6767;
}

.overview__table {
	margin: 0;
}

.overview__row {
	display: flex;
	align-items: baseline;
	padding: 16px 30px;
	border-top: 1px solid #510D0D;
}

.overview__label {
	flex-shrink: 0;
	width: 170px;
	font-size: 22px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #FF6767;
}

.overview__value {
	flex: 1;
	line-height: 1.6;
	font-size: 20px;
}

.overview__tel {
	font-weight: 700;
	color: #242A30;
}

.overview__link {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	color: #242A30;
}

.overview__link-icon {
	width: 18px;
	height: auto;
}



/* =====================================
トップページ
===================================== */

/* ===========================
FV（ファーストビュー）
=========================== */
.fv {
	position: relative;
	overflow: hidden;
	background-image: url('../img/fv-bg.jpg');
	background-repeat: no-repeat;
	background-position: top center;
	background-size: cover;
	background-color: #fff;
	padding: 40px 30px 80px;
	text-align: center;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	border-bottom: 1px solid #eee;
	color: #510D0D;
}

.fv__inner {
	position: relative;
	z-index: 2;
	margin: 0 auto;
}

/* キャッチコピー */
.fv__catch {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 0 0 10px;
	font-size: 26px;
	font-weight: 800;
	width: 780px;
	margin: 0 auto 10px;
}

/* バッジ（入場無料など） */
.fv__badges {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 780px;
	margin: 0 auto 50px;
}

.fv__badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 26px;
	border-radius: 999px;
	background: #fff;
	font-size: 20px;
	font-weight: 700;
}

.fv__badge-icon {
	width: 22px;
	height: auto;
	display: block;
}

/* リード文 */
.fv__lead {
	margin: 0 0 8px;
	font-size: 30px;
	font-weight: 500;
}

/* ロゴ（メインタイトル） */
.fv__logo {
	margin: 0 0 24px;
	line-height: 1;
}

.fv__logo-img {
	display: block;
	margin: 0 auto;
	width: 1000px;
	max-width: 100%;
	height: auto;
}

/* 日程 */
.fv__schedule {
	margin-bottom: 32px;
}

.fv__date {
	display: flex;
	align-items: baseline;
	justify-content: center;
	gap: 10px;
	margin-top: -30px;
}

.fv__date-text {
	font-size: 70px;
	font-weight: 900;
}

.fv__date-text--large {
	font-size: 108px;
}

.fv__date-day {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background: #6379A9;
	color: #fff;
	font-size: 32px;
	font-weight: 700;
}

.fv__time {
	margin-top: -40px;
	font-size: 36px;
	font-weight: 800;
}

.fv__place {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	font-size: 24px;
	font-weight: 700;
}

.fv__place-icon {
	width: 24px;
	height: auto;
}

/* アクションボタン */
.fv__actions {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 26px;
}

.fv__btn {
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	gap: 14px;
	padding: 12px 36px;
	border-radius: 999px;
	color: #fff;
	font-size: 26px;
	font-weight: 700;
	text-decoration: none;
	white-space: nowrap;
	transition: transform .2s ease;
	width: 390px;
}

.fv__btn-content {
	display: inline-flex;
	align-items: center;
	gap: 14px;
}

.fv__btn:hover {
	transform: translateY(-4px);
}

.fv__btn-icon {
	width: 26px;
	height: auto;
}

.fv__btn-arrow {
	width: 12px;
	height: auto;
}

.fv__btn--search {
	background: #223E78;
}

.fv__btn--company {
	background: #FF6058;
}

/* 人物イラスト */
.fv__illust {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1;
	width: 100%;
	height: auto;
	pointer-events: none;
}


/* ===========================
多治見で働こフェスとは？
=========================== */

.prologue {
	position: relative;
	padding: 90px 0 50px;
}

.prologue__inner {
	max-width: 1460px;
}

.prologue__features {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 80px;
}

.feature-card {
	max-width: 350px;
	padding: 30px 20px;
	background-color: rgba(133, 204, 247, 0.15);
	border-radius: 16px;
	text-align: center;
}

.feature-card__icon {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 120px;
	height: 120px;
	margin: 0 auto 16px;
}

.feature-card__icon img {
	width: 100%;
	height: auto;
}

.feature-card__title {
	margin: 0 0 12px;
	font-size: 22px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	line-height: 1.6;
}

.feature-card__text {
	font-size: 16px;
	line-height: 1.6;
}

.prologue__content {
	text-align: center;
}

.prologue__title {
	position: relative;
	z-index: 1;
	margin: 0 0 40px;
	font-size: 65px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	line-height: 1.4;
}

.prologue__title-logo {
	display: inline-block;
	overflow: hidden;
	width: 780px;
	aspect-ratio: 1016 / 124;
	text-indent: -9999px;
	background-image: url('../img/logo.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	vertical-align: middle;
}

.prologue__title-sub {
	margin-left: 12px;
	vertical-align: bottom;
}

.prologue__wrap {
	margin-bottom: 60px;
	position: relative;
	background-image: url(../img/tajimi-map.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 500px auto;
}

.prologue__lead {
	position: relative;
	z-index: 1;
	margin: 0 0 30px;
	font-size: 36px;
	font-weight: 800;
	line-height: 1.4;
	color: #510D0D;
}

.prologue__text {
	position: relative;
	z-index: 1;
	font-size: 20px;
	font-weight: 500;
	line-height: 2;
	color: #510D0D;
}

.prologue__highlight {
	position: relative;
	z-index: 1;
	margin: 36px 0;
	font-size: 24px;
	font-weight: 700;
	color: #FF6767;
	line-height: 1.9;
}

.prologue__cta {
	position: relative;
	z-index: 1;
	margin-top: 44px;
}


/* ===========================
参加企業一覧
=========================== */

.companies {
	position: relative;
	overflow: hidden;
	padding: 120px 0 100px;
	background-color: rgba(248, 197, 177, 0.2);
}

.companies__decor {
	position: absolute;
	pointer-events: none;
	z-index: -1;
}

.companies__decor--left {
	left: 0;
	top: 0;
	width: 634px;
	height: auto;
}

.companies__decor--right {
	right: 0;
	bottom: 0;
	width: 786px;
	height: auto;
}


/* ===========================
過去開催実績
=========================== */

.results {
	position: relative;
	overflow: hidden;
	/* padding: 100px 20px; */
	padding: 100px 0;
}

.results__inner {
	width: 95%;
	max-width: 1700px;
	margin: 0 auto;
}

.results__decor {
	position: absolute;
	pointer-events: none;
	z-index: -1;
}

.results__decor--left {
	left: 0;
	top: 60px;
	width: 630px;
	height: auto;
}

.results__decor--right {
	right: 0;
	bottom: 50px;
	width: 764px;
	height: auto;
}

.results__subheading {
	margin: 0 0 20px;
	font-size: 30px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	text-align: center;
}

/* フォトギャラリー */
.results__gallery {
	display: flex;
	gap: 24px;
	margin: 0 0 60px;
	padding: 0;
}

.results__gallery-item {
	flex: 1 1 33.3333%;
}

.results__gallery-item img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 5px;
}

/* 来場者の声 */
.results__title {
	font-size: 36px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	text-align: center;
	margin-bottom: 20px;
}

.results__voice-box {
	max-width: 1000px;
	margin: 0 auto 70px;
	padding: 36px 30px;
	background-color: #ffffff;
	border: 6px solid #FFA988;
	border-radius: 3px;
}

.results__voice-item {
	display: flex;
	align-items: baseline;
	font-size: 16px;
}

.results__voice-item+.results__voice-item {
	margin-top: 20px;
}

.results__voice-label {
	position: relative;
	flex-shrink: 0;
	width: 190px;
	margin: 0;
	padding-left: 20px;
	font-weight: 700;
	color: #510D0D;
}

.results__voice-label::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	border-style: solid;
	border-width: 8px 0 8px 14px;
	border-color: transparent transparent transparent #510D0D;
}

.results__voice-text {
	flex: 1;
	line-height: 1.8;
}

/* ===========================
開催概要
=========================== */

.overview {
	/* padding: 100px 20px; */
	padding: 100px 0;
	background-color: rgba(248, 197, 177, 0.15);
}

.overview__inner {
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
}


/* =====================================
about 多治見で働こフェスとは
===================================== */

.about-heading {
	font-size: 36px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
	margin-bottom: 20px;
}

.about-heading span {
	font-size: 30px;
}

.about-recommend .about-heading,
.about-flow .about-heading {
	border-bottom: 1px solid #510D0D;
	padding-bottom: 6px;
}

/* ===========================
ヒーロー
=========================== */
.about-hero {
	position: relative;
	overflow: hidden;
	padding: 90px 0 120px;
	background-image: linear-gradient(to bottom, rgba(248, 197, 177, 0.55) 0%, rgba(255, 255, 255, 0.55) 100%);
}

.about-cta {
	position: relative;
	padding: 60px 0 100px;
	background-color: #ffffff;
	background-image: linear-gradient(to bottom, rgba(255, 169, 136, 0.2) 0%, rgba(255, 255, 255, 0.2) 85%);
}

.about-hero__inner {
	width: 95%;
	max-width: 1400px;
	margin: 0 auto;
}

.about-hero__content {
	position: relative;
	z-index: 1;
	max-width: 780px;
}

.about-hero__badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
	margin: 0 auto 40px;
}

.about-hero__badge {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 4px 20px;
	background-color: #ffffff;
	border-radius: 999px;
	font-size: 22px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
}

.about-hero__badge-icon {
	width: 20px;
	height: auto;
}

.about-hero__note {
	font-size: 28px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	text-align: center;
	position: relative;
	width: fit-content;
	margin: 0 auto;
	padding: 0 36px;
}

.about-hero__note::before {
	content: '＼';
	position: absolute;
	top: 50%;
	left: 16px;
	transform: translate(-50%, -50%);
}

.about-hero__note::after {
	content: '／';
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(-50%, -50%);
}

.about-hero__title {
	margin: 0 0 16px;
	line-height: 1;
}

.about-hero__title-logo {
	display: block;
	overflow: hidden;
	width: 90%;
	aspect-ratio: 1016 / 124;
	text-indent: -9999px;
	background-image: url(../img/logo.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	margin: 10px auto 0;
}

.about-hero__lead {
	margin: 0;
	font-size: 28px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
	text-align: center;
}

.about-hero__illust {
	position: absolute;
	border-radius: 50%;
}

.about-hero__illust--1 {
	top: 160px;
	right: 28%;
	z-index: 1;
	width: 305px;
	height: auto;
}

.about-hero__illust--2 {
	top: 30px;
	right: 14%;
	z-index: 2;
	width: 268px;
	height: auto;
}

/* ===========================
多治見で働こフェスとは？
=========================== */
.about-intro {
	padding: 60px 0 0;
}

.about-intro__inner {
	width: 90%;
	max-width: 1310px;
	margin: 0 auto;
}


.about-intro__heading {
	margin: 0 0 30px;
	font-size: 40px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	line-height: 1;
	text-align: center;
	color: #510D0D;
}

.about-intro__heading-logo {
	display: inline-block;
	overflow: hidden;
	width: 570px;
	aspect-ratio: 604 / 96;
	text-indent: -9999px;
	background-image: url('../img/logo-underline.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	vertical-align: middle;
}

.about-intro__text {
	margin: 0 0 30px;
	font-size: 20px;
	font-weight: 500;
	line-height: 2.4;
	text-align: center;
	color: #510D0D;
}

.about-intro__highlight {
	font-size: 24px;
	font-weight: 600;
	color: #FF6767;
}

/* ポイントボックス */
.about-intro__points {
	padding: 30px 90px 60px;
	background-color: rgba(181, 224, 245, 0.2);
	border-radius: 10px;
}

/* バッジ */
.about-intro__badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px;
	margin: 0 0 30px;
}

.about-intro__badge {
	padding: 6px 46px;
	background-color: #FF948F;
	border-radius: 999px;
	font-size: 26px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #ffffff;
}

/* カード */
.about-intro__cards {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.about-intro__card {
	max-width: 350px;
	padding: 32px 24px 28px;
	background-color: #ffffff;
	border-radius: 16px;
	text-align: center;
}

.about-intro__card-icon {
	display: block;
	width: 120px;
	height: 120px;
	margin: 0 auto;
}

.about-intro__card-icon img {
	width: 48px;
	height: 48px;
	object-fit: contain;
}

.about-intro__card-title {
	margin: 12px 0 8px;
	font-size: 22px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
}

.about-intro__card-text {
	font-size: 16px;
	line-height: 1.6;
}

/* ===========================
こんな人におすすめ
=========================== */
.about-recommend {
	padding: 120px 0 0;
}

.about-recommend__inner {
	width: 90%;
	max-width: 1310px;
	margin: 0 auto;
}

.about-recommend__heading {
	margin: 0 0 24px;
	padding-bottom: 16px;
	border-bottom: 2px solid #510D0D;
	font-size: 28px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
}

.about-recommend__body {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 40px;
}

.about-recommend__list {
	flex: 1;
}

.about-recommend__item {
	position: relative;
	padding-left: 40px;
	font-size: 28px;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
}

.about-recommend__item::before {
	content: '';
	position: absolute;
	left: 0;
	top: 50%;
	width: 24px;
	height: 24px;
	margin-top: -12px;
	background-image: url(../img/icon-check-circle.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.about-recommend__item+.about-recommend__item {
	margin-top: 16px;
}

.about-recommend__illust {
	flex-shrink: 0;
	width: 460px;
	height: auto;
}

/* ===========================
お申し込みから当日までの流れ
=========================== */
.about-flow {
	padding: 120px 0 110px;
}

.about-flow__inner {
	width: 90%;
	max-width: 1310px;
	margin: 0 auto;
}

.about-flow__steps {
	display: flex;
	gap: 66px;
	margin: 40px 0 60px;
}

.about-flow__step {
	position: relative;
	flex: 1;
	padding: 32px 30px;
	border-radius: 5px;
}

.about-flow__step:nth-child(1) {
	background-color: rgba(255, 169, 136, 0.2);
}

.about-flow__step:nth-child(2) {
	background-color: rgba(255, 169, 136, 0.35);
}

.about-flow__step:nth-child(3) {
	background-color: rgba(255, 169, 136, 0.5);
}

.about-flow__step:not(:last-child)::after {
	content: '';
	position: absolute;
	top: 50%;
	right: -44px;
	transform: translateY(-50%);
	border-style: solid;
	border-width: 16px 0 16px 22px;
	border-color: transparent transparent transparent #510D0D;
	border-radius: 6px;
}

.about-flow__step-head {
	display: flex;
	align-items: center;
	gap: 16px;
	margin: 0 0 20px;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
}

.about-flow__step-number {
	font-size: 60px;
	font-weight: 800;
	line-height: 1;
}

.about-flow__step-title {
	font-size: 36px;
	font-weight: 500;
	margin-top: 5px;
}

.about-flow__step-text {
	font-size: 16px;
	line-height: 1.9;
}

.about-flow__step-text span {
	font-size: 17px;
}

.about-flow__step-text a {
	color: #242A30;
}

.about-flow__link {
	text-decoration: underline;
	text-underline-offset: 2px;
}

.about-flow__catch {
	font-size: 26px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
	position: relative;
	width: fit-content;
	margin: 0 auto 20px;
	padding: 0 30px;
}

.about-flow__catch::before {
	content: '＼';
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}

.about-flow__catch::after {
	content: '／';
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
}

.about-flow__cta {
	text-align: center;
}

.about-flow__note {
	margin: 20px 0 0;
	font-size: 16px;
	text-align: center;
}

/* ===========================
過去開催実績
=========================== */
.about-results {
	position: relative;
	overflow: hidden;
	padding: 120px 0 160px;
}

.about-results__inner {
	width: 95%;
	max-width: 1700px;
	margin: 0 auto;
}

.about-results__decor--left {
	left: 0;
	top: 60px;
	width: 630px;
	height: auto;
}

.about-results__decor--right {
	right: 0;
	bottom: 0;
	width: 764px;
	height: auto;
}

/* フォトギャラリー自動スライダー */
.about-results__slider {
	overflow: hidden;
	width: 100%;
}

.about-results__slider-track {
	display: flex;
	width: max-content;
	gap: 24px;
	margin: 0;
	padding: 0;
	animation: about-results-slide 50s linear infinite;
}

.about-results__slider-item {
	flex-shrink: 0;
	width: calc((1700px - 48px) / 3);
}

.about-results__slider-item img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 5px;
}

@keyframes about-results-slide {
	from {
		transform: translateX(0);
	}

	to {
		transform: translateX(-50%);
	}
}

/* 来場者の声 */
.about-results__voice {
	width: 100%;
	max-width: 980px;
	margin: 60px auto 0;
}

.about-results__voice-group+.about-results__voice-group {
	margin-top: 40px;
}

.about-results__voice-label {
	margin: 0 0 10px;
	font-size: 20px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
}

.about-results__voice-label::before {
	content: '＼';
	margin-right: 6px;
}

.about-results__voice-label::after {
	content: '／';
	margin-left: 6px;
}

.about-results__voice-label-accent {
	color: #f2685e;
	font-weight: 700;
}

.about-results__voice-cards {
	display: flex;
	gap: 16px;
	margin: 0;
	padding: 0;
}

.about-results__voice-card {
	flex: 1;
	text-align: center;
}

.about-results__voice-card-bubble {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 86px;
	margin: 0 0 10px;
	padding: 24px 20px;
	background-color: #FFDDDD;
	border-radius: 8px;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.7;
}

.about-results__voice-card-bubble::after {
	content: '';
	position: absolute;
	left: 50%;
	bottom: -22px;
	transform: translateX(-50%);
	border-style: solid;
	border-width: 24px 8px 0 8px;
	border-color: #FFDDDD transparent transparent transparent;
}

.about-results__voice-card:nth-child(1) .about-results__voice-card-bubble::after {
	left: 30%;
	border-width: 24px 4px 0 16px;
}

.about-results__voice-card:nth-child(3) .about-results__voice-card-bubble::after {
	left: 70%;
	border-width: 24px 16px 0 4px;
}

.about-results__voice-card-icon {
	display: block;
	width: 105px;
	height: auto;
	margin: 0 auto;
}

/* イベントの感想／年代グラフ */
.about-results__data {
	display: flex;
	gap: 40px;
	margin-top: 60px;
}

.about-results__data-box {
	flex: 1;
	padding: 30px;
	border: 6px solid #FFA988;
	background-color: #fff;
	border-radius: 3px;
	text-align: center;
}

.about-results__data-title {
	margin: 0 0 20px;
	font-size: 30px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
}

.about-results__data-image {
	display: block;
	width: 350px;
	height: auto;
	margin: 0 auto;
}

/* ===========================
よくあるご質問
=========================== */
.about-faq {
	padding: 30px 0 160px;
}

.about-faq__inner {
	width: 90%;
	max-width: 1310px;
	margin: 0 auto;
}

.about-faq__box {
	margin: 0;
	padding: 100px 120px;
	border: 12px solid #F8C5B1;
	border-radius: 5px;
}

.about-faq__item+.about-faq__item {
	margin-top: 24px;
	padding-top: 24px;
	border-top: 1px solid #510D0D;
}

.about-faq__question {
	margin: 0 0 10px;
	font-size: 20px;
	position: relative;
	padding-left: 30px;
}

.about-faq__answer {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.6;
	position: relative;
	padding-left: 30px;
}

.about-faq__question::before {
	content: 'Q.';
	font-size: 26px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	position: absolute;
	left: 0;
	top: -6px;
}

.about-faq__answer::before {
	content: 'A.';
	font-size: 26px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #FF6767;
	position: absolute;
	left: 0;
	top: -6px;
}


/* ===========================
about-cta 開催概要・申し込み
=========================== */

.about-cta {
	position: relative;
	padding: 80px 0 100px;
	background-color: #ffffff;
	background-image: linear-gradient(to bottom, rgba(255, 169, 136, 0.2) 0%, rgba(255, 255, 255, 0.2) 85%);
}

.about-cta__highlights {
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
	margin: 0;
	padding: 0;
	width: 100%;
}

.about-cta__highlight {
	padding: 8px 60px;
	background-color: #FF948F;
	border-radius: 999px;
	font-size: 24px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #ffffff;
}

.about-cta__badges {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
	margin: 0 0 20px;
}

.about-cta__badge {
	padding: 4px 30px;
	background-color: #ffffff;
	border-radius: 999px;
	font-size: 20px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	color: #510D0D;
}

.about-cta__catch {
	margin: 0 0 8px;
	font-size: 26px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #FF6767;
}

.about-cta__title {
	font-size: 48px;
	font-weight: 800;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
}

.about-cta__title-logo {
	display: inline-block;
	overflow: hidden;
	width: 780px;
	aspect-ratio: 1016 / 124;
	text-indent: -9999px;
	background-image: url(../img/logo.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

.about-cta__date {
	font-size: 76px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
	margin-top: -20px;
}

.about-cta__date-day {
	font-size: 46px;
}

.about-cta__time {
	font-size: 32px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
	margin-top: -30px;
}

.about-cta__venue {
	margin: -10px 0 32px;
	font-size: 26px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
}

.about-cta__button {
	margin: 0 0 120px;
}


/* =====================================
tajimidehataraku 求人を探す
===================================== */
/* ===========================
求人を探す（検索・絞り込み）
=========================== */
.search {
	background-color: rgba(248, 197, 177, 0.20);
}

.search__panel {
	padding: 120px 0 0;
}

.search__heading {
	margin: 0 0 32px;
	text-align: center;
}

.search__heading-logo {
	display: inline-block;
	overflow: hidden;
	width: 660px;
	aspect-ratio: 604 / 96;
	text-indent: -9999px;
	background-image: url('../img/tajimidehataraku.svg');
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
}

/* 白いボックス */
.search__box {
	padding: 30px 110px 70px;
	background-color: #ffffff;
	border-radius: 10px;
}

/* 絞り込みグループ */
.search__group {
	display: flex;
	gap: 40px;
	padding: 40px 10px;
	border-bottom: 1px solid #000000;
}

.search__group--last {
	border-bottom: none;
}

.search__group-label {
	flex-shrink: 0;
	width: 108px;
	margin: 0;
	font-size: 18px;
	font-weight: 700;
	color: #510D0D;
}

.search__pills {
	display: flex;
	flex: 1;
	flex-wrap: wrap;
	gap: 12px;
}

.search__pills--3col {
	display: grid;
	flex: 1;
	grid-template-columns: repeat(3, 1fr);
	gap: 16px 8px;
}

.search__pills--4col {
	display: grid;
	flex: 1;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.search__pills--2col {
	display: grid;
	flex: 1;
	grid-template-columns: repeat(2, 1fr);
	gap: 16px 40px;
}

.search__pill {
	display: block;
}

.search__pill-input {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	opacity: 0;
}

.search__pill-text {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	height: 100%;
	min-width: 0;
	padding: 12px 12px;
	background-color: rgba(255, 169, 136, 0.2);
	border: 1px solid #510D0D;
	border-radius: 4px;
	font-size: 14px;
	font-weight: 700;
	color: #510D0D;
	text-align: center;
	cursor: pointer;
	transition: background-color 0.15s ease, color 0.15s ease;
}

.search__pill-icon {
	width: 20px;
	height: 20px;
	object-fit: contain;
	transition: filter 0.15s ease;
}

.search__pill-text:hover,
.search__pill-input:checked+.search__pill-text {
	background-color: #510D0D;
	border-color: #510D0D;
	color: #ffffff;
	font-weight: 700;
}

.search__pill-text:hover .search__pill-icon,
.search__pill-input:checked+.search__pill-text .search__pill-icon {
	filter: brightness(0) invert(1);
}

/* 検索ボタン */
.search__submit {
	display: block;
	width: 100%;
	padding: 12px;
	background-color: #223e78;
	border: none;
	border-radius: 5px;
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	cursor: pointer;
}

/* キーワード検索 */
.search__keyword {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 40px 0 0;
	margin-top: 46px;
	border-top: 1px solid #000000;
}

.search__keyword-label {
	flex-shrink: 0;
	width: 144px;
	font-size: 18px;
	font-weight: 700;
	color: #510D0D;
}

.search__keyword-input {
	flex: 1;
	padding: 12px 16px;
	border: 1px solid #222222;
	font-size: 16px;
}

.search__keyword-submit {
	flex-shrink: 0;
	padding: 8px 20px;
	background-color: #223e78;
	border: none;
	border-radius: 5px;
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	cursor: pointer;
}

/* 検索結果件数 */
.search__results-count {
	margin: 0 0 16px;
	font-size: 26px;
	font-weight: 500;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
}

.search__results-count-number {
	margin-right: 6px;
	font-size: 48px;
	font-weight: 800;
	color: #FF6767;
}

.search__results-count-arrow {
	display: inline-block;
	width: 0;
	height: 0;
	vertical-align: middle;
	border-style: solid;
	border-width: 18px 12px 0 12px;
	border-color: #510D0D transparent transparent transparent;
	border-radius: 3px;
}

/* 検索結果 */
.search__results {
	margin-top: 120px;
}

.search__results-box {
	padding: 32px 100px;
	background-color: #ffffff;
	border-radius: 10px;
}

.search__results-label {
	margin: 0 0 10px;
	padding: 10px;
	border: 1px solid #223e78;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	color: #223e78;
}

.search__result-list {
	margin: 0;
	padding: 0;
}

.search__result-item {
	padding: 20px 0;
	border-bottom: 1px dashed #cccccc;
}

.search__result-item:last-child {
	border-bottom: none;
}

.search__result-link {
	display: block;
	font-size: 18px;
	font-weight: 700;
	color: #510D0D;
}

.search__empty {
	font-size: 15px;
	color: #510D0D;
}

/* ページネーション */
.search__pagination {
	margin-top: 32px;
}

.search__pagination-list {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin: 0;
	padding: 0;
}

.search__pagination-item span,
.search__pagination-item a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 32px;
	height: 32px;
	font-size: 18px;
	color: #223e78;
}

.search__pagination-item span.current {
	font-weight: 800;
}

.search__pagination-item a {
	text-decoration: none;
}

.search__companies {
	padding: 120px 0 180px;
}

.search__pagination-item a.prev,
.search__pagination-item a.next {
	font-weight: 800;
	font-size: 22px;
}



/* =====================================
company 参加企業 詳細ページ
===================================== */

.company {
	padding: 80px 20px;
}

.company .inner {
	background-color: #fff;
}

.company__wrap {
	padding: 30px 60px 60px;
}

/* ヘッダー（会社名・業種・連絡先） */
.company__header {
	padding: 20px 60px;
	background-color: #223e78;
	color: #ffffff;
}

.company__header-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 12px;
}

.company__kana {
	font-size: 12px;
}

.company__name {
	font-size: 30px;
	font-weight: 700;
	line-height: 1.4;
}

.company__badge {
	flex-shrink: 0;
	padding: 6px 20px;
	background-color: #ffffff;
	font-size: 18px;
	font-weight: 700;
	color: #223e78;
}

.company__address,
.company__contact {
	font-size: 14px;
	line-height: 1.8;
}

.company__contact a {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.company__recruit-contact {
	margin-top: 12px;
	padding-top: 12px;
	border-top: 1px solid #fff;
}

.company__recruit-contact-title {
	margin: 0 0 4px;
	font-size: 14px;
	font-weight: 700;
}

.company__recruit-contact-tel,
.company__recruit-contact-mail {
	margin: 0;
	font-size: 14px;
}

.company__recruit-contact a {
	color: #ffffff;
	text-decoration: underline;
	text-underline-offset: 2px;
	margin-left: 6px;
}

/* セクション共通 */
.company__section+.company__section {
	margin-top: 48px;
}

.company__section-title {
	margin: 0 0 24px;
	padding: 8px 30px;
	border: 2px solid #223e78;
	font-size: 20px;
	font-weight: 700;
	color: #223e78;
	text-align: center;
}

.company__text {
	margin: 0;
	line-height: 1.9;
	padding: 0 10px;
	overflow-wrap: break-word;
	/* 単語の途中でも折り返し可能にする */
	word-break: break-word;
	/* URLなど長い文字列の強制改行 */
	white-space: pre-wrap;
}

/* 写真 */
.company-gallery {
	display: flex;
	gap: 20px;
	margin: 24px 0 0;
	padding: 0 10px;
}

.company-gallery__item {
	flex: 1 1 50%;
}

.company-gallery__item img {
	display: block;
	width: 100%;
	height: auto;
}

/* YouTube動画 */
.company__video {
	position: relative;
	margin-bottom: 48px;
	padding-top: 56.25%;
}

.company__video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

/* 会社概要／採用情報 */
.company-overview {
	display: flex;
	flex-wrap: wrap;
	font-size: 16px;
	padding: 0 10px;
}

.company-overview__item {
	display: flex;
	flex: 1 1 50%;
	align-items: baseline;
	padding: 16px 24px 16px 0;
	border-top: 1px dashed #cccccc;
}

.company-overview__item:nth-child(-n+2) {
	border-top: none;
}

.company-overview__label {
	flex-shrink: 0;
	width: 140px;
	font-weight: 700;
	color: #223e78;
}

/* 求人一覧 */
.company-jobs {
	padding: 0 10px;
}

.company-jobs__item {
	padding: 16px 0;
	border-bottom: 1px dashed #cccccc;
}

.company-jobs__item:last-child {
	border-bottom: none;
}

.company-jobs__item a {
	font-weight: 700;
	color: #223e78;
}

.company-jobs__item a:hover {
	text-decoration: underline;
	text-underline-offset: 3px;
}

.company-jobs__empty {
	margin: 0;
}



/* =====================================
job 求人 詳細ページ
===================================== */

.job {
	padding: 80px 0;
}

.job .inner {
	background-color: #fff;
	padding: 40px 60px;
}

.job__title {
	margin: 0 0 16px;
	font-size: 28px;
	font-weight: 700;
	line-height: 1.4;
	color: #223e78;
}

/* 会社情報ボックス */
.job__company-box {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	padding: 20px 24px;
	margin-bottom: 24px;
	background-color: #dbdbdb;
}

.job__company-name {
	font-size: 20px;
	font-weight: 700;
	line-height: 1.4;
	color: #223e78;
}

.job__company-industry {
	margin: 4px 0 0;
	font-size: 14px;
}

.job__company-contact {
	flex-shrink: 0;
	font-size: 14px;
	line-height: 1.6;
	color: #223e78;
}

.job__company-contact a {
	color: #223e78;
	text-decoration: underline;
	text-underline-offset: 2px;
}

.job__company-contact-title {
	font-weight: 700;
	margin-top: 10px;
}

/* 求人詳細テーブル */
.job-overview {
	margin: 0 0 50px;
	border-top: 1px solid #223e78;
	font-size: 16px;
}

.job-overview__item {
	display: flex;
	padding: 20px 10px;
	border-bottom: 1px solid #223e78;
}

.job-overview__label {
	flex-shrink: 0;
	width: 180px;
	font-weight: 700;
	color: #223e78;
}

.job-overview__value {
	flex: 1;
	color: #223e78;
}

/* 会社ページへ戻る */
.job__back {
	text-align: center;
}

.job__back-link {
	font-size: 15px;
	font-weight: 700;
	color: #223e78;
	text-decoration: underline;
	text-underline-offset: 3px;
}



/* =====================================
contact お問い合わせ
===================================== */

.contact {
	padding: 120px 0 180px;
	background-color: rgba(255, 169, 136, 0.2);
}

.contact__card {
	background-color: #ffffff;
	padding: 50px 60px;
	border-radius: 6px;
}

.contact__notice {
	padding: 0 0 20px;
	font-size: 16px;
	color: #510D0D;
}

.contact__notice-text {
	margin: 0 0 10px;
	line-height: 1.8;
}

.contact__notice-org {
	margin: 0 0 16px;
	text-align: right;
}


.contact__heading {
	margin: 0 0 30px;
	padding: 12px;
	background-color: #510D0D;
	font-size: 20px;
	font-weight: 700;
	text-align: center;
	color: #ffffff;
}

/* フォーム */
.contact__form {
	padding: 0;
}

.contact-form__row {
	margin-bottom: 30px;
}

.contact-form__row p {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
}

.contact-form__row br {
	display: none !important;
}

.contact-form__row label {
	display: block;
	flex-shrink: 0;
	width: 190px;
	font-size: 16px;
	font-weight: 500;
	color: #510D0D;
	text-align: center;
}

.contact-form__row .wpcf7-form-control-wrap {
	display: flex;
	flex: 1 1 auto;
	flex-wrap: wrap;
	min-width: 0;
}

.contact-form__row input[type="text"],
.contact-form__row input[type="email"],
.contact-form__row input[type="tel"],
.contact-form__row input[type="date"] {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding: 10px 12px;
	border: 1px solid #510D0D;
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
}

.contact-form__row--message p {
	align-items: flex-start !important;
}

.contact-form__row--message .wpcf7-form-control-wrap {
	display: flex;
	flex: 1 1 auto;
}

.contact-form__row--message textarea {
	flex: 1 1 auto;
	width: 100%;
	min-width: 0;
	box-sizing: border-box;
	padding: 10px 12px;
	border: 1px solid #510D0D;
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	min-height: 160px;
	resize: vertical;
}

.wpcf7-not-valid-tip {
	flex-basis: 100%;
	width: 100%;
	margin-top: 4px;
	font-size: 12px;
}

/* 送信ボタン */
.contact-form__submit {
	text-align: center;
	margin-top: 40px;
}

.contact-form__submit input[type="submit"] {
	padding: 12px 60px;
	background-color: #510D0D;
	border: none;
	font-size: 18px;
	font-weight: 700;
	color: #ffffff;
	cursor: pointer;
}

.contact-form__submit .wpcf7-spinner {
	display: none;
}



/* =====================================
サンクスページ（お問い合わせ完了）
===================================== */
.thanks {
	padding: 120px 0 180px;
	background-color: rgba(255, 169, 136, 0.2);
}

.thanks__card {
	margin: 0 auto;
	padding: 60px 40px;
	background-color: #ffffff;
	border-radius: 6px;
	text-align: center;
}

.thanks-heading {
	font-size: 36px;
	font-weight: 700;
	font-family: 'M PLUS Rounded 1c', 'Noto Sans JP', sans-serif;
	text-align: center;
	color: #510D0D;
	margin-bottom: 20px;
}

.thanks__text {
	margin: 0 0 40px;
	font-size: 16px;
	line-height: 1.9;
	color: #510D0D;
}

.thanks__button {
	text-align: center;
}