@charset "utf-8";
html, * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
html {
	background: #fff;
	overflow-x: hidden;
}

body, a, p, li, dd, td {
	color: #231815;
	font-family: Arial, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	-webkit-font-smoothing: antialiased;
	transition: .2s;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	letter-spacing: 1px;
}
h2 {
	color: var(--main-color);
	font-weight: normal;
}
input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
em, strong, span, figcaption {
	font-size: inherit;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom;
}
table {
	table-layout: fixed;
	width: 100%;
}
a { word-break: break-word; }
a:hover { opacity: .8; }

/* common */
:root {
	--main-color: #00214B;
}
.a1-font {
	font-family: "A1 Mincho", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.ly-flex {
	display: flex;
	gap: 2em;
}
.kerning { display: inline-block; }
footer,
.cm__inner {
	max-width: 880px;
	max-width: 910px;
	max-width: 1024px;
	width: 90%;
	margin: 0 auto;
}
.fullwide {
	position: relative;
	padding-top: 4em;
	padding-bottom: 4em;
}
.fullwide:before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	bottom: 0;
	width: 100vw;
	margin: 0 calc(50% - 50vw);
	z-index: -1;
}
.bk-gray:before {
	background: #DEE2E1;
	opacity: .6;
}
.en-font {
	font-family: Arial, serif;
}
@media(max-width: 640px) {
	.sp-spacer-6 {
		height: 5em !important;
	}
	.sp-spacer-12 {
		height: 6em !important;
	}
}
.grecaptcha-badge {
	visibility: hidden;
}
.page__header_height {
	background: var(--main-color);
	height: 80px;
	width: 100%;
}

/* header */
header {
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	height: 80px;
	content: '';
	z-index: 999;
}
header .ly-flex {
	width: 100%;
	height: inherit;
	justify-content: space-between;
	align-items: center;
	max-width: 1920px;
	margin: 0 auto;
	z-index: 999;
}
header .recruit__bnr {
	position: relative;
	height: inherit;
}
header .recruit__bnr:before {
	position: absolute;
	content: '';
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(255,255,255, .3);
}

header .recruit__bnr a {
	display: block;
	color: #fff;
	height: inherit;
	line-height: 80px;
	padding: 0 2em;
	letter-spacing: 2px;
	position: relative;
	z-index: 1;
}
header .recruit__bnr a span {
	font-size: 1.4em;
	padding-left: .25em;
}

header .logo {
	width: 320px;
	padding-left: 2em;
}
header .logo img {
	vertical-align: middle;
}
header .recruit__bnr a {
	background: var(--main-color);
}
@media(max-width: 767px) {
	header {
		height: 50px;
	}
	header .ly-flex {
		height: 100%;
	}
	header .recruit__bnr a {
		font-size: .7em;
		line-height: 1.4;
		padding: .7em .5em 0;
		text-align: center;
		min-width: 140px;
	}
	header .recruit__bnr a span {
		display: block;
	}
	header .logo {
		width: 300px;
		padding-left: 1em;
	}
}
/* top */
.cm__hero {
	position: relative;
	z-index: 0;
	height: 100dvh;
	height: auto;
}
.hero__img {
	height: inherit;
	width: 100%;
	object-fit: cover;
	object-fit: contain;
}

.hero__txt-img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 740px;
	margin: 0 auto;
	width: 80%;
	z-index: 99;
}
@media(max-width: 461px) {
	.cm__hero {
		height: 100dvh;
	}
	.cm__hero img {
		object-fit: cover;
		object-position: top;
	}
}
.top__about-wrap .ly-flex{
	gap: 4em;
	align-items: center;
	justify-content: center;
}
@media(max-width: 767px) {
	.top__about-wrap {
		padding-top: 3em;
		padding-bottom: 3em;
	}
	.top__about-wrap .ly-flex{
		display: block;
	}
}
.top__about-wrap:before {
	background: var(--main-color);
}
.top__about-wrap .top__about-desc {
	max-width: 508px;
}
.top__about-ttl {
	color: #fff;
}
.top__about-ttl h2 {
	font-family: Arial, "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-weight: normal;
	letter-spacing: 2px;
	line-height: 1.4;
	color: #fff;
	font-size: 1.8rem;
}
@media(max-width:767px) {
	.top__about-ttl h2 {
		border-bottom: 1px solid #fff;
		padding-bottom: .5em;
		margin-bottom: .8em;
		text-align: center;
	}
}
.top__about-ttl h2 small {
	display: block;
	font-size: .45em;
	letter-spacing: .5px;
}
.top__about-desc {
	max-width: 493px;
}
.top__about-desc p {
	color: #fff;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: .9em;
}
@media(max-width: 461px) {
	.top__about-desc p {
		font-size: .85em;
	}
}

.top__about-desc {
	position: relative;
}
.top__about-desc:after {
	position: absolute;
	content: '';
	top: 0;
	bottom: 0;
	left: -2em;
	width: 1px;
	background: #fff;
}
@media(max-width: 767px) {
	.top__about-desc:after {
		display: none;
	}
}
.cm__ttl-align-center {
	text-align: center;
	font-size: 1.8rem;
	margin-bottom: 1em;
	letter-spacing: 2px;
}
.top__service-wrap {
	padding-bottom: 6em;
}
.service-bk01, .service-bk02,
.map-bk01, .map-bk02 {
	position: absolute;
	content: '';
	z-index: -1;
}
.service-bk01, .service-bk02 {
	width: calc(100vw/4);
}
.map-bk01,
.service-bk01 {
	top: 0;
	left: 0;
}
.map-bk02,
.service-bk02 {
	right: 0;
	bottom: 0;
}
.top__search-wrap {
	text-align: center;
}
.serch-icon {
	display: block;

}
.serch-icon img {
	width: 55px;
	vertical-align: middle;
	margin-bottom: .15em;
}
@media(max-width: 767px) {
	.serch-icon img {
		width: 35px;
	}
}
.map-bk01, .map-bk02 {
	width: calc(100vw/1.5);
}
.map-wrap {
	position: relative;
	max-width: 800px;
	margin: 0 auto;
}
.map-wrap img {
	width: 100%;
}
.map-link {
	position: absolute;
	content: '';
	width: 12%;
	height: 4%;
	max-width: 96px;
	max-height: 33px;
}
.map-link:hover {
	background: rgba(255,255,255, .3);
}
#Hokkaido {
	top: 12.8%;
	right: 0;
}
#Tohoku {
	top: 30%;
	right: 16.6%;
}
#Chubu {
	right: 45.3%;
	top: 35.7%;
}

#Kanto {
	right: 22.1%;
	top: 49.5%;
}
#Chugoku {
	top: 49.56%;
	right: 63.6%;
}
#Kinki {
	top: 67.44%;
	right: 45.4%;
}
#Shikoku {
	top: 71.13%;
	right: 59.6%;
}
#Kyusyu {
	top: 57.82%;
	left: 0;
}
.blue-label {
	background: #1A306D;
	color: #fff;
	font-size: 1rem;
	border-radius: 6px;
	padding: .5em;
	font-weight: bold;
	letter-spacing: 2px;
}
.area-label {
	color: #fff;
	padding: 0 .25em;
	display: block;
	border-radius: 3px;
	font-weight: bold !important;
	white-space: nowrap;
}
#hokkaido .area-label,
.hokkaido_label {
	background: #0D7C7C;
}
#tohoku .area-label,
.tohoku_label {
	background: #4FBCB3;
}
#chubu .area-label,
.chubu_label {
	background: #4C8755;
}
#kanto .area-label,
.kanto_label {
	background: #96D3DC;
}
#kinki .area-label,
.kinki_label{
	background: #B0C671;
}
#chugoku .area-label,
.chugoku_label{
	background: #DB7835;
}
#shikoku .area-label,
.shikoku_label{
	background: #F5D123;
}
#kyusyu .area-label,
.kyusyu_label{
	background: #E37D7B;
}
.area-tbl tr th,
.area-tbl tr td {
	padding: .5em .25em;
}
.area-tbl tr th {
	width: 120px;
	font-size: 1rem;
}
.area-tbl tr td ul {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.area-tbl tr td ul li {
	background: #fff;
	border: 1px solid #898989;
	border-radius: 3px;
	display: inline-block;
	padding: 0 .5em;
	margin: .25em ;
	width: 115px;
	white-space: nowrap;
	color: #9C9C9C;
}
.area-tbl tr td ul li.link-enabled a {
	color: #ff3700;
}
.pref_link {
	display: flex;
	justify-content: space-between;
	letter-spacing: 0;
}
.pref_link span:last-child{
	letter-spacing: 1.5px;
}
@media(max-width: 767px) {
	.area-tbl tr td ul li {
		width: 100px;
		font-size: .9em;
		padding: 0 .25em;
	}
	.area-tbl tr td ul li a {
		font-size: inherit;
	}
}
.footer__attention-wrap {
	background: #904949;
}
.footer__attention-wrap .cm__inner {
	max-width: 750px;
}
.contact-btn {
	width: 100%;
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 3em;
	display: block;

}
.footer_logo {
	display: block;
	margin: 3em auto;
	max-width: 500px;
}
.copyright {
	color: #9FA0A0;
	text-align: center;
	font-size: .8em;
}

/* category - search */
.page__hero {
	position: relative;
	z-index: 0;
	height: auto;
	background: var(--main-color);
	padding-top: 80px;
}
@media(max-width: 767px) {
	.page__hero {
		padding-top: 50px;
	}
}
.page__hero-img {
	height: auto;
	width: 100vw;
	object-fit: cover;
}
.page__hero h1 {
	position: absolute;
	content: '';
	top: 60%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	color: #fff;
	font-weight: normal;
}
.page__hero h1 img {
	display: block;
	max-width: 60px;
	width: 40%;
	margin: auto;
}
@media(max-width: 767px) {
	.page__hero h1 {
		top: 65%;
		font-size: 1.5em;
	}
	.page__hero h1 img {
		width: 25%;
	}
}
.ah__area-label {
	display: inline-block;
	width: 120px;
	text-align: center;
}
.ah__search-wrap {
	margin-top: 4em;
}
.ah__detail-wrap {
	padding: 80px 4em 4em;
	background: #fff;
	position: relative;
	margin-bottom: 5em;
}
@media(max-width: 767px) {
	.ah__detail-wrap {
		display: block;
		padding-left: 2em;
		padding-right: 2em;
		padding-bottom: 2em;
	}
}
.ah__detail-gallery {
	width: 45%;
}
@media(max-width: 767px) {
	.ah__detail-gallery {
		width: 100%;
	}
}
.ah__detail-gallery img {
	margin-bottom: 2em;
	max-width: 370px;
}
@media(max-width: 767px) {
	.ah__detail-gallery img {
		width: 100%;
	}
}
.ah__detail-gallery img:last-child {
	margin-bottom: 0;
}
.ah__detail-ul {
	list-style: none;
	width: 54%;
}
@media(max-width: 767px) {
	.ah__detail-ul {
		width: 100%;
	}
}
.ah__detail-ul li {
	padding: .25em 0;
	font-family: inherit;
}
.ah__detail-ul li:not(:first-child) {
	padding: .5em 0;
}

.ah__detail-ul li:not(:last-child) {
	border-bottom: 1px solid #9FA0A0;
}
.ah__detail-ul li a {
	font-family: inherit;
	font-size:inherit;
}
.ah__baseinfo  {
	font-size: .9em;
}
.ah__feature {
	letter-spacing: 0;
}
.ah__feature small {
	font-size: .95em;
}
.ah__sns-wrap {
	padding-left: .5em;
	margin-bottom: 1.5em;
}
.ah__sns-wrap a {
	margin-right: .25em;
}
@media(max-width: 767px) {
	.ah__sns-wrap a img {
		width: 25px;
	}
}
.area__pref-name {
	position: absolute;
	content: '';
	top: 0;
	right: 0;
	background: #3E3A39;
	color: #fff;
	font-size: 1.1em;
	padding: .85em;
}
.ah__title {
	font-size: 1.3em;
	padding-top: 0 !important;
	margin-top: -10px;
}
.ah__recruit-btn {
	background: var(--main-color);
	color: #fff;
	display: inline-block;
	border-radius: 6px;
	text-align: center;
	padding: .2em;
	width: 60%;
	margin: .5em 0 1.5em;
	font-size: inherit;
}
/* recruit */
.recruit__area-ul {
	list-style: none;
	display: flex;
	justify-content: space-between;
	gap: 1em;
	margin-bottom: 5em;
}
@media(max-width: 767px) {
	.recruit__area-ul {
		flex-wrap: wrap;
		justify-content: center;
		margin-bottom: 2.5em;
	}
	.recruit__top-sec {
		padding-bottom: 1em;
	}
}
.recruit__area-ul li {
	width: 120px;
	text-align: center;
}
.recruit__ttl-icon {
	display: block;
	text-align: center;
	width: 50px;
	margin: 0 auto;
}
.recruit__about-wrap .ly-flex{
	gap: 0;
}
.recruit__about-wrap .top__about-ttl {
	min-width: 220px;
}
.recruit__about-wrap .top__about-desc {
	width: 400px;
	margin-right: 1.5em;
}
@media(max-width: 767px) {
	.recruit__about-wrap .top__about-desc {
		width: 100%;
	}
}
.recruit__hero h1 {
	text-align: left;
	left: 5%;;
	top: 40%;
	transform: translate(0,0);
	font-size: 5rem;
	line-height: 1.3;
}
.recruit__about-bnr {
	min-width: 250px;
	width: 250px;
}
@media(max-width: 767px) {
	.recruit__about-bnr {
		width: 100%;
		margin-top: 2em;
		max-width: 500px;
	}
}
.recruit__hero h1 span{
	display: block;
	font-size: 2rem;
}
.ah__eyecatch {
	margin-bottom: 4em;
	text-align: center;
}
.recruit__detail-ttl {
	font-weight: normal;
	color: var(--main-color);
	font-size: 1.6rem;
	margin-bottom: 2.5em;
}
@media(max-width: 767px) {
	.ah__recruit-detail-wrap .ah__eyecatch .cm__ttl-align-center {
		font-size: 1.6em;
	}
	.ah__recruit-detail-wrap {
		padding-top: 2em;
	}
}
.recruit__detail-ttl span {
	border-bottom: 2px solid var(--main-color);
	padding-bottom: .4em;
}
.recruit__table {
	margin-bottom: 2.5em;
}
.recruit__table th {
	font-weight: normal;
	width: 120px;
	text-align: left;
	font-size: 1.1rem;
	border-right: 1px solid var(--main-color);
}
.recruit__table td {
	padding: 0 0 .5em 2em;
	font-size: .95em;
}
.recruit__table td p,
.recruit__table td ul li,
.recruit__table td a {
	font-size: inherit;
}
.recruit__table td .ah__recruit-btn {
	width: 100%;
}
.recruit__table ul.ah__detail-ul li {
	border-bottom: none;
}
.recruit__table .ah__title {
	padding-bottom: 0;
	padding-top: 0;
	font-size: 1.2rem;
}
.recruit__table td p {
	letter-spacing: .5px;
}
.recruit__flex {
	margin-bottom: 4em;
}
@media(max-width: 767px) {
	.recruit__flex {
		flex-wrap: wrap;
		margin-bottom: 0;
	}
	.recruit__flex .ah__detail-gallery {
		order: 2;
	}
}
.recruit__detail-ttl small {
	display: block;
	line-height: 1;
	font-size: .6em;
}
.recruit__table ul.ah__detail-ul {
	width: 100%;
}
.recruit__table-wrap {
	position: relative;
}
.recruit__table-wrap:after {
	position: absolute;
	content: '';
	bottom: 0;
	left: 119.5px;
	width: 1px;
	height: 30%;
	background: var(--main-color);
}
@media(max-width: 767px) {
	.recruit__table th,
	.recruit__table td {
		display: block;
		width: 100%;
	}
	.recruit__table th {
		border-right: none;
		border-bottom: 1px solid var(--main-color);
	}
	.recruit__table td {
		padding-top: 1em;
		padding-left: 0;
	}
	.recruit__table-wrap:after {
		display: none;
	}
}
.recruit__sns-wrap {
	margin-top: .5em;
	margin-right: .5em;
	margin-bottom: 2em;
}
.recruit__sns-wrap a {
	margin-right: .25em;
}
@media(max-width: 767px) {
	.recruit__sns-wrap {
		margin-bottom: 0;
	}
	.recruit__table {
		margin-bottom: 0;
	}
	.recruit__sns-wrap a img {
		width: 20px;
		margin-bottom: .5em !important;
	}

]
