/* common.css
========================================*/
/* ==========================
	default style
============================= */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, legend, input, textarea, p, blockquote, th, td {
	margin:0;
	padding:0;
}

h1, h2, h3, h4, h5, h6, em, address, small {
	font-size:100%;
	font-style:normal;
	font-weight:normal;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

th {
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}

ul, ol, li {
	list-style-type:none;
}

img {
	border:0;
	vertical-align:bottom;
	max-width:100%;
}

a img {
	vertical-align:middle;
}

a {
	display:inline-block;
	text-decoration:none;
}

strong {
	font-size:100%;
	font-style:normal;
	font-weight:bold;
}

button, input[type=submit] {
	background:none;
	border:0;
	padding:0;
}

input[type=text], input[type=email], input[type=tel], textarea {
	border-radius:0;
	outline:none;
}

input[type=radio], input[type=checkbox] {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	display:none;
}

select {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	border-radius:0;
}

* {
	box-sizing:border-box;
}

/* font reset */
body {
	font-family:sans-serif;
	line-height:1;
}

input, button, textarea, select {
	color:inherit;
	font:inherit;
}

/* HTML5 */
article, aside, figure, figcaption, footer, header, nav, section, main, picture {
	display:block;
	margin:0;
	padding:0;
}

/* ==========================
	base style
============================= */
html {
	overflow:auto;
	scroll-behavior:smooth;
}
@media screen and (max-width: 767px) {
	html {
		font-size:3.2vw;
		-webkit-text-size-adjust:100%;
	}
}
@media print, screen and (min-width: 768px) {
	html {
		background-color:#eaf1f7;
		/* font-size:14px; */
	}
}

body {
	color:#333;
	font-family:"Noto Sans JP";
	font-weight:400;
}
@media print, screen and (min-width: 768px) {
	body {
		background-color:#fff;
		margin:0 auto;
		min-width:1280px;
		max-width:1920px;
	}
}
@media screen and (max-width: 767px) {
	body {
		width:100vw;
	}
}

a {
	color:#333;
	transition:.2s ease;
}

@media screen and (max-width: 767px) {
	.pconly {
		display:none;
	}
}
@media print, screen and (min-width: 768px) {
	.sponly {
		display:none;
	}
}
/* ==========================
	layout style
============================= */
.l-main {
	letter-spacing:.02rem;
	overflow-x:hidden;
}
.l-main._lower {
	background-color:#f2f4fb;
	padding-bottom:8vw;
	position:relative;
}
.l-main._lower:before {
	background-color:#fff;
	content:"";
	position:absolute;
	left:0;
	top:0;
	height:42.6666666667vw;
	width:100%;
}
@media screen and (max-width: 767px) {
	.l-main {
		line-height:1.6;
	}
	.l-main._lower {
		margin-top:4vw;
	}
}
@media print, screen and (min-width: 768px) {
	.l-main {
		line-height:1.5;
		min-width:1160px;
		max-width:1920px;
	}
	.l-main._lower {
		padding-bottom:100px;
	}
	.l-main._lower:before {
		height:250px;
	}
}

.l-container {
	box-shadow:0 0 10px rgba(19, 58, 113, .2);
	background-color:#fff;
	border-radius:10px;
	margin:0 2.6666666667vw;
	padding:6.6666666667vw 5.3333333333vw;
	position:relative;
	z-index:1;
}
@media print, screen and (min-width: 768px) {
	.l-container {
		box-shadow:0 0 20px rgba(19, 58, 113, .2);
	}
}
.l-container._nottl {
	margin-top:8vw;
}
.l-container._mb {
	margin-bottom:5.3333333333vw;
}
@media print, screen and (min-width: 768px) {
	.l-container {
		margin-left:auto;
		margin-right:auto;
		width:100%;
		max-width:1280px;
		min-width:1120px;
		padding:50px 0 70px;
		max-width:1200px;
	}
	.l-container._nottl {
		margin-top:100px;
	}
	.l-container._mb {
		margin-bottom:40px;
	}
}

.l-btnwrap {
	padding:5.3333333333vw 2.6666666667vw;
	text-align:center;
}
@media print, screen and (min-width: 768px) {
	.l-btnwrap {
		margin-left:auto;
		margin-right:auto;
		width:960px;
		display:flex;
		flex-wrap:wrap;
		align-items:flex-end;
		justify-content:center;
		padding:30px 10px;
	}
	.l-btnwrap .p-button {
		margin:0 20px;
	}
}

.l-search-sec {
	margin-top:10.6666666667vw;
}
.l-search-sec>h2 {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	color:#213787;
	font-size:4.2666666667vw;
	font-weight:700;
	margin-bottom:2.6666666667vw;
}
@media screen and (max-width: 767px) {
	.l-search-sec {
		padding:0 5.3333333333vw;
	}
}
@media print, screen and (min-width: 768px) {
	.l-search-sec {
		margin-left:auto;
		margin-right:auto;
		width:1120px;
		margin-top:60px;
	}
	.l-search-sec>h2 {
		font-size:1.4285714286rem;
		margin-bottom:15px;
	}
}
@media print, screen and (min-width: 768px) {
	.l-search-sec .search-wrap._area {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
}
.l-search-sec .-joblist {
	display:flex;
	flex-wrap:wrap;
}
.l-search-sec .-joblist>li>a {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	position:relative;
	background-color:#fff;
	border-radius:10px;
	font-feature-settings:"palt";
	font-weight:700;
}
.l-search-sec .-joblist>li>a:after {
	background-repeat:no-repeat;
	background-size:contain;
	content:"";
	display:block;
	position:absolute;
}
.l-search-sec .-joblist>li>a:before {
	background-color:#c6d0f3;
	border-radius:50%;
	content:"";
	display:block;
	position:absolute;
	top:calc(50% - 2.1333333333vw);
	right:2.6666666667vw;
	height:4.2666666667vw;
	width:4.2666666667vw;
}
.l-search-sec .-joblist>li>a:after {
	background-image:url(/front/img/common/icon_arrow_new.svg);
	top:calc(50% - .8vw);
	right:4.2666666667vw;
	height:1.8666666667vw;
	width:1.0666666667vw;
}
@media print, screen and (min-width: 768px) {
	.l-search-sec .-joblist>li>a:before {
		top:calc(50% - 12px);
		right:20px;
		height:24px;
		width:24px;
		transition:.3s ease;
	}
	.l-search-sec .-joblist>li>a:after {
		top:calc(50% - 5px);
		right:28px;
		height:11px;
		width:6px;
		transition:.3s ease;
	}
	.l-search-sec .-joblist>li>a:hover:after {
		transform:rotate(360deg);
	}
}
@media screen and (max-width: 767px) {
	.l-search-sec .-joblist {
		justify-content:space-between;
	}
	.l-search-sec .-joblist>li {
		margin-bottom:2.6666666667vw;
	}
	.l-search-sec .-joblist>li>a {
		padding:0 2.6666666667vw;
		height:12vw;
		width:43.7333333333vw;
	}
}
@media print, screen and (min-width: 768px) {
	.l-search-sec .-joblist>li {
		margin-bottom:15px;
		margin-right:20px;
	}
	.l-search-sec .-joblist>li:nth-of-type(4n) {
		margin-right:0;
	}
	.l-search-sec .-joblist>li>a {
		font-size:1.0714285714rem;
		padding:0 20px;
		height:60px;
		width:265px;
	}
	.l-search-sec .-joblist>li>a:hover {
		box-shadow:0 0 10px rgba(19, 58, 113, .2);
		color:#213787;
	}
}
@media print, screen and (min-width: 768px) and (min-width: 768px) {
	.l-search-sec .-joblist>li>a:hover {
		box-shadow:0 0 20px rgba(19, 58, 113, .2);
	}
}
.l-search-sec .-arealist {
	margin-top:5.3333333333vw;
}
.l-search-sec .-arealist:last-of-type {
	margin-top:0;
}
.l-search-sec .-arealist>li {
	margin-bottom:1.3333333333vw;
}
.l-search-sec .-arealist>li>dl {
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
}
.l-search-sec .-arealist>li>dl>dt {
	border-left:3px solid #213787;
	color:#213787;
	font-feature-settings:"palt";
	font-weight:700;
	line-height:1.8;
	padding-left:1.8666666667vw;
	width:26.6666666667vw;
}
.l-search-sec .-arealist>li>dl>dd {
	flex:1;
	line-height:2;
}
@media print, screen and (min-width: 768px) {
	.l-search-sec .-arealist {
		margin-top:15px;
		width:48%;
	}
	.l-search-sec .-arealist>li {
		margin-bottom:10px;
	}
	.l-search-sec .-arealist>li>dl {
		font-size:1.0714285714rem;
	}
	.l-search-sec .-arealist>li>dl>dt {
		border-left:4px solid #213787;
		padding-left:12px;
		width:140px;
	}
}
.l-search-sec .-preflist {
	display:flex;
	flex-wrap:wrap;
}
.l-search-sec .-preflist>li {
	margin-right:.35em;
	margin-bottom:.6em;
	width:4.6em;
}
.l-search-sec .-preflist>li>a {
	background-color:#fff;
	border-radius:6px;
	color:#333;
	font-weight:700;
	padding:.2em;
	text-align:center;
	width:100%;
}
.l-search-sec .-preflist>li>a:hover {
	box-shadow:0 0 10px rgba(19, 58, 113, .2);
	color:#213787;
}
@media print, screen and (min-width: 768px) {
	.l-search-sec .-preflist>li>a:hover {
		box-shadow:0 0 20px rgba(19, 58, 113, .2);
	}
}
@media screen and (max-width: 767px) {
	.l-search-sec .-preflist>li:nth-of-type(4n) {
		margin-right:0;
	}
}
@media print, screen and (min-width: 768px) {
	.l-search-sec .-preflist>li {
		margin-right:.5em;
		margin-bottom:.7em;
		width:4.7em;
	}
}

.l-topicpath {
	position:relative;
	z-index:1;
}
@media print, screen and (min-width: 768px) {
	.l-topicpath {
		background-color:#f2f4fb;
		margin-top:-30px;
		padding-bottom:30px;
	}
	.l-topicpath>ul {
		margin-left:auto;
		margin-right:auto;
		width:100%;
		max-width:1280px;
		min-width:1120px;
		display:flex;
		flex-wrap:wrap;
		max-width:1200px;
	}
	.l-topicpath>ul>li {
		color:#aaa;
		font-size:.9285714286rem;
	}
	.l-topicpath>ul>li>a {
		color:#aaa;
	}
	.l-topicpath>ul>li>a:hover {
		opacity:.7;
	}
	.l-topicpath>ul>li:after {
		content:">";
		display:inline-block;
		margin:0 10px;
	}
	.l-topicpath>ul>li:last-of-type:after {
		display:none;
	}
}
@media screen and (max-width: 767px) {
	.l-topicpath {
		background-color:#213787;
		border-bottom:1px solid #d4d9e9;
		height:8.5333333333vw;
		width:100%;
	}
	.l-topicpath>ul {
		overflow-x:scroll;
		white-space:nowrap;
	}
	.l-topicpath>ul>li {
		color:#eaf1f7;
		display:inline-block;
		padding:2.6666666667vw 4.8vw 2.6666666667vw 1em;
		position:relative;
	}
	.l-topicpath>ul>li>a {
		color:#eaf1f7;
	}
	.l-topicpath>ul>li:after, .l-topicpath>ul>li:before {
		border-style:solid;
		border-width:4.2666666667vw 0 4.2666666667vw 2.6666666667vw;
		content:"";
		display:block;
		position:absolute;
		top:0;
		height:0;
		width:0;
	}
	.l-topicpath>ul>li:after {
		border-color:transparent transparent transparent #213787;
		right:-.5333333333vw;
	}
	.l-topicpath>ul>li:before {
		border-color:transparent transparent transparent #eaf1f7;
		right:-.8vw;
	}
	.l-topicpath>ul>li:last-of-type:after, .l-topicpath>ul>li:last-of-type:before {
		display:none;
	}
}

.l-floating {
	background-color:rgba(33, 55, 135, .9);
	padding:1.8666666667vw 5.3333333333vw 2.4vw;
	position:fixed;
	left:0;
	bottom:0;
	width:100%;
	z-index:100;
}
@media print, screen and (min-width: 768px) {
	.l-floating {
		padding:12px 0 13px;
	}
}

#main-form p, a, li, dt, dd, h1,h2, h3, h4 {
    color: #191919;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-weight: bold;
    /* line-height: 1.5em; */
    font-size: 1.4rem;
    margin: 0;
    padding: 0;
	font-style:normal;
	font-weight:normal;
	
}