@charset "UTF-8";
/*!
* Bootstrap Reboot v4.3.1 (https://getbootstrap.com/)
* Copyright 2011-2019 The Bootstrap Authors
* Copyright 2011-2019 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
* Forked from Normalize.css, licensed MIT (https://github.com/necolas/normalize.css/blob/master/LICENSE.md)
*/
*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}


html {
	font-family: sans-serif;
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
	display: block;
}

body {
	margin: 0;
	color: #000;
	font-family: -apple-system, BlinkMacSystemFont, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Roboto, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-size: 1rem;
	font-weight: 400;
	line-height: 1.5;
	letter-spacing: .05em;
	text-align: left;
}

[tabindex="-1"]:focus {
	outline: 0 !important;
}

hr {
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

h1, h2, h3, h4, h5, h6 {
	margin-top: 0;
	margin-bottom: 0.5rem;
}

p {
	margin-top: 0;
	margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
	text-decoration: underline;
	-webkit-text-decoration: underline dotted;
	text-decoration: underline dotted;
	cursor: help;
	border-bottom: 0;
	-webkit-text-decoration-skip-ink: none;
	text-decoration-skip-ink: none;
}

address {
	margin-bottom: 1rem;
	font-style: normal;
	line-height: inherit;
}

ol,
ul,
dl {
	margin-top: 0;
	margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
	margin-bottom: 0;
}

dt {
	font-weight: 700;
}

dd {
	margin-bottom: .5rem;
	margin-left: 0;
}

blockquote {
	margin: 0 0 1rem;
}

b,
strong {
	font-weight: bolder;
}

sub,
sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}

sub {
	bottom: -.25em;
}

sup {
	top: -.5em;
}

a {
	color: #007bff;
	text-decoration: none;
	background-color: transparent;
}

a:hover {
	color: #0056b3;
}

a:not([href]):not([tabindex]) {
	color: inherit;
	text-decoration: none;
}

a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
	color: inherit;
	text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
	outline: 0;
}

pre,
code,
kbd,
samp {
	font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
	font-size: 1em;
}

pre {
	margin-top: 0;
	margin-bottom: 1rem;
	overflow: auto;
}

figure {
	margin: 0 0 1rem;
}

img {
	vertical-align: middle;
	border-style: none;
}

svg {
	overflow: hidden;
	vertical-align: middle;
}

table {
	border-collapse: collapse;
}

caption {
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
	color: #6c757d;
	text-align: left;
	caption-side: bottom;
}

th {
	text-align: inherit;
}

label {
	display: inline-block;
	margin-bottom: 0.5rem;
}

button {
	border-radius: 0;
}

button:focus {
	outline: 1px dotted;
	outline: 5px auto -webkit-focus-ring-color;
}

input,
button,
select,
optgroup,
textarea {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

button,
input {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

select {
	word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
	cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
	-webkit-appearance: listbox;
}

textarea {
	overflow: auto;
	resize: vertical;
}

fieldset {
	min-width: 0;
	padding: 0;
	margin: 0;
	border: 0;
}

legend {
	display: block;
	width: 100%;
	max-width: 100%;
	padding: 0;
	margin-bottom: .5rem;
	font-size: 1.5rem;
	line-height: inherit;
	color: inherit;
	white-space: normal;
}

progress {
	vertical-align: baseline;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	outline-offset: -2px;
	-webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

::-webkit-file-upload-button {
	font: inherit;
	-webkit-appearance: button;
}

output {
	display: inline-block;
}

summary {
	display: list-item;
	cursor: pointer;
}

template {
	display: none;
}

[hidden] {
	display: none !important;
}

/*!------------------------
* Base
*------------------------*/
body,
html {
	height: 100%;
}

body {
	background: #fff;
	overflow-x: hidden;
}

body * {
	word-wrap: break-word;
}

body *:focus {
	outline-width: 2px;
}

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

picture {
	display: block;
}

.clear:after {
	display: table;
	clear: both;
	content: "";
}

.l-header {
	background-color: #fff;
	background-image: url(../img/recruit/comn_bg_header_left.gif) , url(../img/recruit/comn_bg_header_right.gif);
	background-repeat: no-repeat;
	background-position: left top, right bottom;
	background-size: auto 50px,auto 50px;
}

.l-header-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 50px;
	padding: 5px 30px;
}

.l-header-logo {
	margin: 0;
}

.l-header-logo a {
	display: inline-block;
}

.l-header-logo a:not(.is-text) {
	line-height: 1;
}

@media (min-width: 769px) {
	.l-header-logo a {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.l-header-logo a:hover {
		opacity: .75;
	}
}

.l-header-utility {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	margin-left: auto;
}

.l-header-utility > *:not(:last-child) {
	margin-right: 10px;
}

.l-header-menu {
	line-height: 1;
}

.l-header-menu-btn {
	display: inline-block;
}

@media (min-width: 769px) {
	.l-header-menu-btn {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.l-header-menu-btn:hover {
		opacity: .75;
	}
}

.l-footer {
	background-color: #fff;
	background-image: url(../img/recruit/comn_bg_header_left.gif) , url(../img/recruit/comn_bg_header_right.gif);
	background-repeat: no-repeat;
	background-position: left top, right bottom;
	background-size: auto 50px,auto 50px;
}

.l-footer-inner {
	min-height: 50px;
}

@media (max-width: 768px) {
	.l-footer-inner {
		padding: 1rem 8%;
	}
}

@media (min-width: 769px) {
	.l-footer-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 0 30px;
		-webkit-box-sizing: content-box;
		box-sizing: content-box;
		max-width: 1020px;
		margin: 0 auto;
	}
}

@media (-ms-high-contrast: none) {
	.l-footer-inner {
		min-height: auto;
		padding-top: 1em;
		padding-bottom: 1em;
	}
}

.l-footer-nav {
	list-style: none;
	padding-left: 0;
	margin: 0;
	font-size: 0.75rem;
}

@media (max-width: 768px) {
	.l-footer-nav {
		padding: 0 8%;
	}
}

@media (min-width: 769px) {
	.l-footer-nav {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-right: 1rem;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.l-footer-nav {
		padding: 0;
		text-align: center;
	}
}

.l-footer-nav li {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.l-footer-nav li:not(:last-child) {
	margin-right: 1rem;
}

.l-footer-nav li:before {
	width: 1em;
	height: 1em;
	background: url(../img/recruit/icon_arrow_right_gray.svg) 0 0 no-repeat;
	background-size: contain;
	margin-right: 3px;
	content: "";
}

.l-footer-nav a {
	color: #000;
}

@media (min-width: 769px) {
	.l-footer-nav a {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.l-footer-nav a:hover {
		opacity: .75;
		text-decoration: underline;
	}
}

.l-footer-copyright {
	display: block;
	font-size: 0.75rem;
}

@media (max-width: 768px) {
	.l-footer-copyright {
		margin-top: .5em;
		text-align: center;
	}
}

@media (min-width: 769px) {
	.l-footer-copyright {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		margin-left: auto;
	}
}

.l-footer-sitemap {
	background: #f6f5f5;
	padding: 2rem 5.33333%;
	font-size: 0.75rem;
}

@media (min-width: 769px) {
	.l-footer-sitemap {
		padding: 3.125rem 0;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.l-footer-sitemap {
		padding: 2rem 5.33333%;
	}
}

@media (max-width: 768px) {
	.l-footer-sitemap-inner {
		margin: 0 -2%;
		overflow: hidden;
	}
}

@media (min-width: 769px) {
	.l-footer-sitemap-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		max-width: 1020px;
		margin: 0 auto;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.l-footer-sitemap-inner {
		margin: 0 -1%;
	}
}

@media (max-width: 768px) {
	.l-footer-sitemap-item {
		float: left;
		width: 48%;
		margin: 0 1% 0;
	}
}

@media (min-width: 769px) {
	.l-footer-sitemap-item {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		padding: 0 1rem 0;
	}
}

@media (min-width: 769px) {
	.l-footer-sitemap-item:last-child, .l-footer-sitemap-item:first-child {
		width: 10.76923%;
		max-width: 140px;
	}
}

@media (min-width: 769px) {
	.l-footer-sitemap-item:first-child {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		padding-left: 0;
	}
}

@media (min-width: 769px) {
	.l-footer-sitemap-item:last-child {
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		padding-right: 0;
	}
}

@media (min-width: 769px) {
	.l-footer-sitemap-item:not(:last-child) {
		border-right: 1px solid #e0e0e0;
	}
}

.l-footer-sitemap-list {
	list-style: none;
	padding-left: 0;
	margin: 0;
	line-height: 2;
}

.l-footer-sitemap-list > li > a {
	font-weight: bold;
}
.l-footer-sitemap-list > li > p {
	font-weight: bold;
	margin-bottom: 0;
}

.l-footer-sitemap-list ul {
	list-style: none;
	padding-left: 0;
	margin: 0;
	margin: 0 0 0 1em;
}

.l-footer-sitemap-list a {
	color: #000;
}

@media (min-width: 769px) {
	.l-footer-sitemap-list a {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.l-footer-sitemap-list a:hover {
		text-decoration: underline;
		opacity: .75;
	}
}

@media (max-width: 768px) {
	.l-container {
		overflow: hidden;
	}
}

.c-btn-fruid {
	width: 100%;
}

@media (min-width: 769px) {
	.c-btn-fruid-pc {
		width: 100%;
	}
}

@media (max-width: 768px) {
	.c-btn-fruid-sp {
		width: 100%;
	}
}

.c-btn-line {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	background: transparent;
	border: 1px solid #000;
	padding: .5em 1em;
	color: #000;
}

@media (min-width: 769px) {
	.c-btn-line {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.c-btn-line:hover {
		color: #000;
		opacity: .75;
	}
}

.c-btn-line:before {
	display: inline-block;
	width: 1em;
	height: 1em;
	background: url(../img/recruit/icon_arrow_right_black.svg) 0 0 no-repeat;
	background-size: contain;
	margin-right: .5em;
	content: "";
}

.c-btn-line-white {
	border-color: #fff;
	color: #fff;
}

.c-btn-line-white:hover {
	color: #fff;
}

.c-btn-line-white:before {
	background-image: url(../img/recruit/icon_arrow_right_white.svg);
}

.c-btn-entry {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	height: 50px;
	background-image: -webkit-linear-gradient(135deg, #1268cc 4%, #1829d3 100%);
	background-image: -o-linear-gradient(135deg, #1268cc 4%, #1829d3 100%);
	background-image: linear-gradient(-45deg, #1268cc 4%, #1829d3 100%);
	color: #fff;
	-webkit-transform: skew(-30deg, 0);
	-ms-transform: skew(-30deg, 0);
	transform: skew(-30deg, 0);
}

@media (max-width: 768px) {
	.c-btn-entry {
		padding: 0 1em;
	}
}

@media (min-width: 769px) {
	.c-btn-entry {
		width: 250px;
		font-size: 1.25rem;
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
		will-change: transform;
	}
	.c-btn-entry:hover {
		color: #fff;
		opacity: .75;
	}
}

.c-btn-entry > span {
	-webkit-transform: skew(30deg);
	-ms-transform: skew(30deg);
	transform: skew(30deg);
}

.c-btn-group {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.c-btn-group-center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

@media (max-width: 768px) {
	.c-contents-inner {
		padding: 3rem 0;
		margin: 0 5.33333%;
	}
}

@media (min-width: 769px) {
	.c-contents-inner {
		max-width: 1020px;
		margin: 0 auto;
	}
}

.p-staff-container {
	margin-bottom: 3.125rem;
}

@media (min-width: 769px) {
	.p-staff-container {
		margin-bottom: 5.625rem;
	}
}

.p-staff-title {
	margin: 3rem 0 2rem;
	text-align: center;
}

@media (max-width: 768px) {
	.p-staff-title img {
		width: auto;
		height: 60px;
	}
}

@media (min-width: 769px) {
	.p-staff-title {
		margin: 5rem 0;
	}
}

html:not(.is-visited) .p-staff-title {
	opacity: 0;
}

html.is-complete:not(.is-visited) .p-staff-title {
	-webkit-animation: fadeIn ease-in-out .3s .5s 1 alternate forwards;
	animation: fadeIn ease-in-out .3s .5s 1 alternate forwards;
}

.p-staff-nav {
	list-style: none;
	padding-left: 0;
	margin: 5.33333%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	margin: 2rem 0;
}

@media (max-width: 768px) {
	.p-staff-nav {
		font-size: 0.75rem;
	}
}

@media (min-width: 769px) {
	.p-staff-nav {
		margin: 3.125rem 0;
	}
}

html:not(.is-visited) .p-staff-nav {
	opacity: 0;
}

html.is-complete:not(.is-visited) .p-staff-nav {
	-webkit-animation: fadeIn ease-in-out .6s .5s 1 alternate forwards;
	animation: fadeIn ease-in-out .6s .5s 1 alternate forwards;
}

.p-staff-nav li:not(:last-child) {
	margin-right: 1.5em;
}

@media (min-width: 769px) {
	.p-staff-nav li:not(:last-child) {
		margin-right: 3.84615%;
	}
}

.p-staff-nav li.is_current > span,
.p-staff-nav li.is_current > a {
	border-color: #014493;
}

.p-staff-nav li > span,
.p-staff-nav li > a {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 100%;
	border-bottom: 2px solid #bababa;
	padding: .5em 1em;
	color: #000;
	text-align: center;
}

@media (min-width: 769px) {
	.p-staff-nav li > span,
	.p-staff-nav li > a {
		width: 200px;
		padding: .8em 0;
	}
}

@media (min-width: 769px) {
	.p-staff-nav li > a {
		position: relative;
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.p-staff-nav li > a:hover {
		opacity: .75;
	}
	.p-staff-nav li > a:hover:after {
		width: 100%;
	}
	.p-staff-nav li > a:after {
		position: absolute;
		bottom: -1px;
		left: 0;
		width: 0;
		height: 2px;
		background: #014493;
		z-index: 2;
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
		content: "";
	}
}

.p-staff-mainvisual {
	position: relative;
	margin-bottom: 2rem;
}

@media (min-width: 769px) {
	.p-staff-mainvisual {
		margin-bottom: 6.25rem;
		overflow: hidden;
	}
}

html:not(.is-visited) .p-staff-mainvisual {
	opacity: 0;
}

html.is-complete:not(.is-visited) .p-staff-mainvisual {
	-webkit-animation: fadeIn ease-in-out 1.2s .5s 1 alternate forwards;
	animation: fadeIn ease-in-out 1.2s .5s 1 alternate forwards;
}

.p-staff-mainvisual-content {
	font-size: 0.875rem;
	position: absolute;
	top: 0;
	left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding: 2rem 5.33333% 1rem;
	z-index: 2;
}

@media (max-width: 320px) {
	.p-staff-mainvisual-content {
		padding: 1rem 5.33333%;
	}
}

@media (min-width: 769px) {
	.p-staff-mainvisual-content {
		right: 0;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		max-width: 1020px;
		padding: 0;
		margin: auto;
	}
}

.p-staff-mainvisual-image {
	text-align: center;
	z-index: 1;
}

.p-staff-mainvisual-image img {
	width: 100%;
	height: auto;
}

.p-staff-mainvisual-plofile {
	margin: 0;
	color: #fff;
	font-size: 1.125rem;
	text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
}

@media (min-width: 769px) {
	.p-staff-mainvisual-plofile {
		font-size: 1.375rem;
		padding-left: 20px;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-mainvisual-plofile {
		font-size: 1.375rem;
	}
}

.p-staff-mainvisual-plofile dt {
	font-weight: normal;
}

.p-staff-mainvisual-plofile dd {
	margin: 0;
}

.p-staff-mainvisual-plofile-ruby {
	font-size: 0.875rem;
}

.p-staff-mainvisual-plofile-position {
	margin-top: 1em !important;
	font-size: 0.875rem;
}

@media (min-width: 769px) {
	.p-staff-mainvisual-plofile-position {
		margin-top: 2em !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-mainvisual-plofile-position {
		margin-top: 2em !important;
	}
}

.p-staff-mainvisual-catchcopy {
	max-width: 300px;
	background: url(../img/recruit/staff/staff_bg_catchcopy.png) 0 0 no-repeat;
	background-size: 100% 100%;
	padding: 0.5em 0.3em 0.3em 3em;
	margin: 0 -0.5em -0.5em auto;
}

@media (max-width: 320px) {
	.p-staff-mainvisual-catchcopy {
		font-size: 0.875rem;
	}
}

@media (min-width: 769px) {
	.p-staff-mainvisual-catchcopy {
		position: absolute;
		right: -7.91667em;
		bottom: 2vw;
		max-width: none;
		background: url(../img/recruit/staff/staff_bg_catchcopy.png) 0 0 no-repeat;
		background-size: 100% 100%;
		padding: 0.8em 7.91667em 0.8em 4em;
		font-size: 1.5rem;
		line-height: 1.8;
		z-index: 2;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-mainvisual-catchcopy {
		position: absolute;
		right: 5.33333%;
		bottom: 2vw;
		max-width: none;
		font-size: 1rem;
		line-height: 1.8;
	}
}

.p-staff-content ~ .p-staff-content {
	margin-top: 3rem;
}

@media (min-width: 769px) {
	.p-staff-content ~ .p-staff-content {
		margin-top: 6.25rem;
	}
}

@media (min-width: 769px) {
	.p-staff-image-layout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-image-layout {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}

.p-staff-image-layout-picture {
	margin: 0;
	text-align: center;
}

@media (min-width: 769px) {
	.p-staff-image-layout-picture {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		max-width: 650px;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-image-layout-picture {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		max-width: 384px;
	}
}

.p-staff-image-layout-segment {
	padding: 1rem 5.33333%;
	font-size: 0.875rem;
	line-height: 1.8;
}

.p-staff-image-layout-segment > *:first-child {
	margin-top: 0 !important;
}

.p-staff-image-layout-segment > *:last-child {
	margin-bottom: 0 !important;
}

@media (min-width: 769px) {
	.p-staff-image-layout-segment {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 0px;
		flex: 1 1 0;
		max-width: 650px;
		padding: 1rem 2.5rem 1rem 1rem;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-image-layout-segment {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 0px;
		flex: 1 1 0;
		max-width: none;
		padding: 1rem 1.875rem 1rem 5.33333%;
	}
}

@media (-ms-high-contrast: none) {
	.p-staff-image-layout-segment {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	}
}

.p-staff-image-layout-title {
	font-size: 1.375rem;
	text-align: center;
}
.p-staff-image-layout-subtitle {
	font-size: 1rem;
	font-weight: bold;
	text-align: left;
}

.p-staff-image-layout.p-staff-image-layout-secondary {
	background: #f6f6f6;
}

@media (min-width: 769px) {
	.p-staff-image-layout.p-staff-image-layout-secondary {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.p-staff-image-layout.p-staff-image-layout-secondary .p-staff-image-layout-segment {
		padding: 1rem 1rem 1rem 2.5rem;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-staff-image-layout.p-staff-image-layout-secondary {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.p-staff-image-layout.p-staff-image-layout-secondary .p-staff-image-layout-segment {
		padding: 1rem 5.33333% 1rem 1.875rem;
	}
}

@media (max-width: 768px) {
	.p-top-mainvisual .c-contents-inner {
		padding: 0;
		margin: 0;
	}
}

@media (min-width: 769px) {
	.p-top-mainvisual .c-contents-inner {
		max-width: none;
		margin: 0;
		text-align: center;
	}
	.p-top-mainvisual .c-contents-inner img {
		width: 100%;
	}
}

html:not(.is-visited) .p-top-mainvisual {
	opacity: 0;
}

html.is-complete:not(.is-visited) .p-top-mainvisual {
	-webkit-animation: fadeIn ease-in-out .6s .5s 1 alternate forwards;
	animation: fadeIn ease-in-out .6s .5s 1 alternate forwards;
}

.p-top-message {
	background: url(../img/recruit/top_message_bg_sp.jpg) 0 0 no-repeat;
	background-size: cover;
}

html:not(.is-visited) .p-top-message {
	opacity: 0;
}

html.is-complete:not(.is-visited) .p-top-message {
	-webkit-animation: fadeIn ease-in-out .6s .8s 1 alternate forwards;
	animation: fadeIn ease-in-out .6s .8s 1 alternate forwards;
}

@media (min-width: 769px) {
	.p-top-message {
		height: 30.76923vw;
		max-height: 400px;
		background: url(../img/recruit/top_message_bg.jpg) center 0 no-repeat;
		background-size: cover;
	}
}

@media (max-width: 768px) {
	.p-top-message .c-contents-inner {
		background: url(../img/recruit/top_message_bg_content_sp.png) right top no-repeat;
		background-size: auto 100%;
		padding: 0;
		margin: 0;
	}
}

@media (min-width: 769px) {
	.p-top-message .c-contents-inner {
		max-width: 1300px;
		height: 100%;
		background: url(../img/recruit/top_message_bg_content.png) right 0 no-repeat;
		background-size: auto 100%;
	}
}

.p-top-message-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

@media (max-width: 768px) {
	.p-top-message-content {
		width: 41.66667vw;
		height: 52.08333vw;
		max-height: 400px;
		padding: 0 3.90625% 0 0;
		margin-left: auto;
	}
}

@media (max-width: 320px) {
	.p-top-message-content {
		width: 42.96875vw;
	}
}

@media (min-width: 769px) {
	.p-top-message-content {
		width: 26.92308%;
		height: 100%;
		margin: 0 10.76923% 0 auto;
	}
}

.p-top-message-title {
	margin-bottom: 1rem;
}

@media (min-width: 769px) {
	.p-top-message-title {
		margin-bottom: 2.5rem;
	}
}

@media (min-width: 769px) {
	.p-top-message .c-btn-group {
		width: 100%;
	}
}

@media (max-width: 768px) {
	.p-top-message-btn {
		font-size: 0.6875rem;
	}
}

@media (max-width: 320px) {
	.p-top-message-btn {
		font-size: 0.625rem;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-message-btn {
		font-size: 1rem;
	}
}

.p-top-about {
	background-image: -webkit-gradient(linear, left top, left bottom, from(0), color-stop(0%, #e5e5e5), color-stop(22%, white), color-stop(78%, white), to(#e5e5e5));
	background-image: -webkit-linear-gradient(0, #e5e5e5 0%, white 22%, white 78%, #e5e5e5 100%);
	background-image: -o-linear-gradient(0, #e5e5e5 0%, white 22%, white 78%, #e5e5e5 100%);
	background-image: linear-gradient(0, #e5e5e5 0%, white 22%, white 78%, #e5e5e5 100%);
}

@media (min-width: 769px) {
	.p-top-about {
		padding: 3.75rem 0;
	}
}

@media (min-width: 769px) {
	.p-top-about .c-contents-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-about .c-contents-inner {
		margin: 0 5.33333%;
	}
}

.p-top-about-title {
	margin-bottom: 2rem;
	text-align: center;
}

@media (max-width: 768px) {
	.p-top-about-title img {
		width: auto;
		height: 60px;
	}
}

@media (min-width: 769px) {
	.p-top-about-title img {
		height: auto;
	}
}

@media (max-width: 768px) {
	.p-top-about-content {
		margin-bottom: 2rem;
	}
}

@media (min-width: 769px) {
	.p-top-about-content {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: 28.13725%;
	}
}

@media (max-width: 768px) {
	.p-top-about-image {
		padding: 0 5.33333%;
		margin-bottom: 2rem;
	}
}

@media (min-width: 769px) {
	.p-top-about-image {
		width: 57.05882%;
	}
	.p-top-about-image img {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.p-top-about-image img:hover {
		opacity: 0.7;
	}
}

.p-top-interview {
	background-color: #fff;
	background-image: url(../img/recruit/top_interview_bg_left.png) , url(../img/recruit/top_interview_bg_right.png);
	background-repeat: no-repeat;
	background-position: left -80px top, right bottom;
	background-size: auto 200px,auto 200px;
}

@media (min-width: 769px) {
	.p-top-interview {
		padding: 3.75rem 0;
		background-position: left top, right bottom;
		background-size: auto 100%, auto;
	}
}

@media (min-width: 769px) {
	.p-top-interview .c-contents-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-interview .c-contents-inner {
		margin: 0 5.33333%;
	}
}

.p-top-interview-title {
	margin: 0 0 2rem 0;
	text-align: center;
}

@media (max-width: 768px) {
	.p-top-interview-title img {
		width: auto;
		height: 60px;
	}
}

@media (min-width: 769px) {
	.p-top-interview-title {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: 23.33333%;
		margin: 0 0 0 4.90196%;
	}
	.p-top-interview-title img {
		height: auto;
	}
}

.p-top-interview-thumbnail {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.p-top-interview-thumbnail-item {
	display: block;
	width: 48%;
	background: #fff;
}

@media (min-width: 769px) {
	.p-top-interview-thumbnail-item {
		width: 33%;
		margin-right: .5%;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-interview-thumbnail-item {
		width: 33%;
		margin-right: .5%;
	}
}

@media (max-width: 768px) {
	.p-top-interview-thumbnail-item:nth-child(odd) {
		margin-right: 4%;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-interview-thumbnail-item:nth-child(odd) {
		margin-right: .5%;
	}
}

@media (max-width: 768px) {
	.p-top-interview-thumbnail-item:nth-child(n+3) {
		margin-top: 1em;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-interview-thumbnail-item:nth-child(n+3) {
		margin-top: 0;
	}
}

@media (min-width: 769px) {
	.p-top-interview-thumbnail-item:nth-child(3n) {
		margin-right: 0;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-interview-thumbnail-item:nth-child(3n) {
		margin-right: 0;
	}
}

@media (min-width: 769px) {
	.p-top-interview-thumbnail-item img {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.p-top-interview-thumbnail-item img:hover {
		opacity: .75;
	}
}

.p-top-recruit {
	background: url(../img/recruit/top_recruit_bg.jpg) 20% 0 no-repeat;
	background-size: cover;
}

@media (min-width: 769px) {
	.p-top-recruit {
		padding: 3.75rem 0;
		background: url(../img/recruit/top_recruit_bg.jpg) center 0 no-repeat;
		background-size: cover;
	}
}

@media (min-width: 769px) {
	.p-top-recruit .c-contents-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-recruit .c-contents-inner {
		margin: 0 5.33333%;
	}
}

.p-top-recruit-title {
	margin: 0 0 2rem 0;
	text-align: center;
}

@media (max-width: 768px) {
	.p-top-recruit-title img {
		width: auto;
		height: 60px;
	}
}

@media (min-width: 769px) {
	.p-top-recruit-title {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: 28.43137%;
		margin: 90px 4.41176% 0 0;
	}
	.p-top-recruit-title img {
		height: auto;
	}
}

@media (min-width: 769px) {
	.p-top-recruit-content {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 auto;
		flex: 1 1 auto;
		width: auto;
	}
}

@media (-ms-high-contrast: none) and (min-width: 769px) {
	.p-top-recruit-content {
		width: 300px;
	}
}

.p-top-recruit-info {
	background: rgba(255, 255, 255, 0.8);
	padding: 2rem 1rem;
}

@media (min-width: 769px) {
	.p-top-recruit-info {
		padding: 3.125rem 2.5rem 1.875rem;
	}
}

.p-top-recruit-info ~ .p-top-recruit-info {
	margin-top: 2rem;
}

.p-top-recruit-info > *:first-child {
	margin-top: 0 !important;
}

.p-top-recruit-info > *:last-child {
	margin-bottom: 0 !important;
}

.p-top-recruit-infotitle {
	margin-bottom: 1em;
	font-size: 1.125rem;
	text-align: center;
}

@media (min-width: 769px) {
	.p-top-recruit-infotitle {
		font-size: 1.625rem;
	}
}

.p-top-recruit-infotitle > span {
	display: inline-block;
	border-bottom: 1px solid #000;
}

.p-top-recruit-overview {
	font-size: 0.875rem;
}

@media (min-width: 769px) {
	.p-top-recruit-overview {
		font-size: 0.9375rem;
	}
}

.p-top-recruit-overview strong {
	font-size: 1rem;
	font-weight: normal;
}

@media (min-width: 769px) {
	.p-top-recruit-overview strong {
		font-size: 1.125rem;
	}
}

.p-top-recruit-overview .label {
	margin: 0 1em 0 -.5em;
}

.p-top-recruit-overview .label:before {
	content: "【";
}

.p-top-recruit-overview .label:after {
	content: "】";
}

.p-top-recruit-jobs {
	background: #fff;
	padding: 2rem 5.33333% 0;
	overflow: hidden;
	width: 100%;
	max-width: 1020px;
}

@media (min-width: 769px) {
	.p-top-recruit-jobs {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		padding: 3.75rem 2rem 0;
		margin: 0 auto;
	}
}

.p-top-recruit-jobs-title {
	font-size: 1.125rem;
	text-align: center;
}

@media (max-width: 768px) {
	.p-top-recruit-jobs-title {
		margin-bottom: 1rem;
		text-align: center;
	}
}

@media (min-width: 769px) {
	.p-top-recruit-jobs-title {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		margin: 0 3.125rem 0 0;
		font-size: 1.625rem;
	}
}



.faq-item_wrap {
	margin:2.0rem 0 0;
	padding:0;
}

.faq-item_list {
	list-style: none;
	margin-bottom: 1.0rem;
}

.faq-item_list:last-child {
	margin-bottom: 0;
}

.faq-item_wrap .faq-item_q {
	margin-bottom: 0;
}

.faq-item_wrap .faq-item_q button {
  position: relative;
  height: 100%;
  width: 100%;
  padding: 10px 50px 10px 15px;
  min-height: 55px;
  text-align: left;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-weight: bold;
  background-color:#fff;
	border:2px solid #014493;
	background-repeat: no-repeat;
  background-size: 30px;
  background-position: 10px 50%;
	font-size: 1.1rem;
  color:#014493;
}

.faq-item_wrap .faq-item_q button span{
  position:relative;
  left:-5px;
}

.faq-item_wrap .faq-item_q button:before {
  position: absolute;
  content: "";
  width: 13px;
  height: 10px;
  background-image: url("../img/recruit/icon-arrow-red.png");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  right: 18px;
  top: calc(50% - 5px);
  color:#fff;
}
@media print, screen and (min-width: 768px) {
  .faq-item_wrap .faq-item_q button {
    padding: 15px 15px 15px 25px;
    background-size: 40px;
    background-position: 15px 50%;
  }
  .faq-item_wrap .faq-item_q button:before {
    right: 30px;
  }
  .faq-item_wrap .faq-item_q button span{
    position:relative;
    left:-12px;
  }
}
.faq-item_wrap .faq-item_q.is-active button:before {
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1);
}

.faq-item_wrap .faq-item_q img {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 30px;
  flex: 0 0 30px;
  width: 30px;
  margin-right: 10px;
  float: left;
}

.faq-item_wrap .faq-item_a {
  border: 2px solid #014493;
  border-top: none;
  padding: 15px;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

@media print, screen and (min-width: 768px) {
  .faq-item_wrap .faq-item_a {
    padding: 30px;
  }
}

.faq-item_wrap .faq-item_a img {
  width: 30px;
  margin-right: 10px;
}

@media print, screen and (min-width: 768px) {
  .faq-item_wrap .faq-item_a img {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 40px;
    flex: 0 0 40px;
    width: 40px;
    margin-right: 15px;
  }
}

.faq-item_wrap .faq-item_a span {
  font-weight:bold;
	margin-bottom:15px;
	display:block;
	font-size:1.1rem;
	background:#f6f5f5;
	padding:10px;
}

@media print, screen and (min-width: 768px) {
  .faq-item_wrap .faq-item_a span {

  }
}

.faq-item_wrap button {
    cursor: pointer;
    background-color: transparent;
    border-style: none;
    color: inherit;
    border-radius: 0;
    outline: none;
}

.faq-item_wrap ul {
  margin-top:1.5rem;
}















.p-top-office {
	background: #f6f5f5;
	padding: 3rem	0;
}

@media (min-width: 769px) {
	.p-top-office {
		padding: 5rem 0 2.1875rem;
	}
}

.p-top-office-title {
	margin-bottom: 2rem;
	text-align: center;
}

@media (max-width: 768px) {
	.p-top-office-title img {
		width: auto;
		height: 60px;
	}
}

@media (min-width: 769px) {
	.p-top-office-title {
		margin-bottom: 3.125rem;
	}
}

.p-top-office-map {
	margin: 0 5.33333%;
}

@media (min-width: 769px) {
	.p-top-office-map {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin: 0;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-office-map {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		margin: 0;
	}
}

@media (min-width: 769px) {
	.p-top-office-map-item {
		width: calc(50% - 5px);
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-office-map-item {
		width: calc(50% - 5px);
	}
}

@media (max-width: 768px) {
	.p-top-office-map-item ~ .p-top-office-map-item {
		margin-top: 3rem;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-office-map-item ~ .p-top-office-map-item {
		margin-top: 0;
	}
}

@media (min-width: 769px) {
	.p-top-office-map-item:first-child .p-top-office-caption {
		position: relative;
		margin-left: auto;
	}
	.p-top-office-map-item:first-child .p-top-office-caption:after {
		position: absolute;
		top: 0;
		left: calc(100% + 3px);
		width: 1px;
		height: 100%;
		background: #e0e0e0;
		content: "";
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-top-office-map-item:first-child {
		position: relative;
	}
	.p-top-office-map-item:first-child:after {
		position: absolute;
		top: 0;
		left: calc(100% + 4px);
		width: 1px;
		height: 100%;
		background: #e0e0e0;
		content: "";
	}
}

.p-top-office-iframe {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 83.33333%;
	margin: 0 0 1rem;
}

@media (min-width: 769px) {
	.p-top-office-iframe {
		padding-bottom: 46.51163%;
		margin: 0;
	}
}

.p-top-office-iframe iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
}

@media (max-width: 768px) {
	.p-top-office-caption {
		padding: 0 2.66667%;
	}
}

@media (min-width: 769px) {
	.p-top-office-caption {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		max-width: 510px;
		padding: 1rem 0;
		margin-top: 1.875rem;
	}
}

.p-top-office-address {
	margin: 0;
}

.p-top-office-address dt {
	position: relative;
	padding-left: 1.2em;
	font-size: 1.125rem;
	font-weight: normal;
}

.p-top-office-address dt:before {
	position: absolute;
	left: 0;
	content: "○";
}

.p-top-office-address dd {
	margin: 0;
	font-size: 0.875rem;
}

.p-top-entry {
	background: #fff;
}

.p-top-entry .c-contents-inner {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

@media (min-width: 769px) {
	.p-top-entry .c-contents-inner {
		padding-top: 4.375rem;
		padding-bottom: 4.375rem;
	}
}

.p-top-entry-catchcopy {
	margin-bottom: 1em;
	font-size: 0.9375rem;
	font-weight: bold;
	text-align: center;
}

@media (min-width: 769px) {
	.p-top-entry-catchcopy {
		font-size: 1.5rem;
	}
}

.p-top-entry-btn-group {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: center;
}

@media (max-width: 768px) {
	.p-top-entry-btn {
		width: 50%;
		max-width: 300px;
	}
}

@media (min-width: 769px) {
	.p-top-entry-btn {
		width: 375px;
		height: 74px;
		font-size: 1.875rem;
	}
}

.p-topmessage-container {
	margin-bottom: 5rem;
}

@media (min-width: 769px) {
	.p-topmessage-container {
		margin-bottom: 6.25rem;
	}
}

.p-topmessage-mainvisual {
	margin-bottom: 3rem;
}

html:not(.is-visited) .p-topmessage-mainvisual {
	opacity: 0;
}

html.is-complete:not(.is-visited) .p-topmessage-mainvisual {
	-webkit-animation: fadeIn ease-in-out .6s .5s 1 alternate forwards;
	animation: fadeIn ease-in-out .6s .5s 1 alternate forwards;
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual {
		position: relative;
		margin-bottom: 6.25rem;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-topmessage-mainvisual {
		position: relative;
		margin-bottom: 6.25rem;
	}
}

@media (max-width: 768px) {
	.p-topmessage-mainvisual-content {
		padding: 3rem 0 1rem;
		margin: 0 5.33333%;
	}
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-content {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		width: 100%;
		max-width: 1020px;
		padding-bottom: 9.23077vw;
		margin: auto;
		z-index: 2;
	}
}
@media (min-width: 769px) and (max-width: 1024px){
	.p-topmessage-mainvisual-content {
		padding-left: 5.33333%;
		padding-right: 5.33333%;
	}
}

.p-topmessage-mainvisual-title {
	text-align: center;
}

@media (max-width: 768px) {
	.p-topmessage-mainvisual-title {
		margin-bottom: 1rem;
	}
	.p-topmessage-mainvisual-title img {
		width: auto;
		height: 40px;
	}
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-title {
		margin-bottom: 3.125rem;
	}
}

.p-topmessage-mainvisual-title-caption {
	margin: 0;
	font-size: 0.875rem;
	line-height: 1.8;
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-title-caption {
		margin-bottom: 3.125rem;
		font-size: 1.5rem;
		text-align: right;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-topmessage-mainvisual-title-caption {
		text-align: center;
	}
}

.p-topmessage-mainvisual-plofile {
	color: #fff;
}

@media (max-width: 768px) {
	.p-topmessage-mainvisual-plofile {
		background: rgba(0, 0, 0, 0.5) url(../img/recruit/topmessage/topmessage_plofile_bg.png) 1em 1em no-repeat;
		background-size: 80% auto;
		padding: 3rem 5.33333% 1rem;
		margin: 30px 5.33333% 0;
		margin-bottom: 1rem;
	}
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile {
		position: absolute;
		left: 0;
		width: 100%;
		bottom: 3.84615vw;
		background: rgba(0, 0, 0, 0.5);
		z-index: 3;
	}
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		background: url(../img/recruit/topmessage/topmessage_plofile_bg.png) 0 0 no-repeat;
		padding: 1rem 0;
		max-width: 1020px;
		margin: 0 auto;
	}
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile-address {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 auto;
		flex: 0 0 auto;
		width: 33.33333%;
		margin: 0 2.94118% 0 4.90196%;
	}
}

.p-topmessage-mainvisual-plofile-address dt {
	margin-bottom: 1em;
	font-size: 0.875rem;
	font-weight: normal;
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile-address dt {
		margin-bottom: 2em;
		font-size: 1.125rem;
	}
}

.p-topmessage-mainvisual-plofile-address dd {
	margin: 0;
	font-size: 1.125rem;
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile-address dd {
		font-size: 1.5rem;
	}
}

.p-topmessage-mainvisual-plofile-address dd .caption {
	display: block;
	font-size: 0.75rem;
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile-address dd .caption {
		font-size: 1rem;
	}
}

.p-topmessage-mainvisual-plofile-content {
	font-size: 0.875rem;
	line-height: 1.8;
}

.p-topmessage-mainvisual-plofile-content > *:first-child {
	margin-top: 0 !important;
}

.p-topmessage-mainvisual-plofile-content > *:last-child {
	margin-bottom: 0 !important;
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-plofile-content {
		-webkit-box-flex: 1;
		-ms-flex: 1 1 0px;
		flex: 1 1 0;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-topmessage-mainvisual-plofile-content {
		padding-right: 4.90196%;
		font-size: 0.625rem;
	}
}

@media (min-width: 769px) {
	.p-topmessage-mainvisual-image img {
		width: 100%;
		height: auto;
	}
}

.p-topmessage-contents ~ .p-topmessage-contents {
	margin-top: 3rem;
}

@media (min-width: 769px) {
	.p-topmessage-contents ~ .p-topmessage-contents {
		margin-top: 6.25rem;
	}
}

.p-topmessage-contents-title {
	margin: 0 5.33333% 1.5rem;
	text-align: center;
}

@media (max-width: 768px) {
	.p-topmessage-contents-title img {
		width: auto;
		height: 30px;
	}
}

@media (min-width: 769px) {
	.p-topmessage-contents-title {
		margin-bottom: 3.125rem;
	}
}

.p-topmessage-contents-subtitle {
	position: relative;
	margin: 0 5.33333% 1em;
	padding: 0 1em;
	font-size: 1.125rem;
	font-weight: bold;
	text-align: center;
}

@media (min-width: 769px) {
	.p-topmessage-contents-subtitle {
		max-width: 1020px;
		padding: 0;
		margin: 0 auto 1rem;
		font-size: 1.25rem;
	}
}

@media (max-width: 768px) {
	.p-topmessage-contents-subtitle:after, .p-topmessage-contents-subtitle:before {
		position: absolute;
	}
}

.p-topmessage-contents-body {
	margin: 0 5.33333% 1rem;
	font-size: 0.875rem;
	line-height: 1.8;
}

.p-topmessage-contents-body > *:first-child {
	margin-top: 0 !important;
}

.p-topmessage-contents-body > *:last-child {
	margin-bottom: 0 !important;
}

@media (min-width: 769px) {
	.p-topmessage-contents-body {
		max-width: 1020px;
		margin: 0 auto 1rem;
		line-height: 2.5;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.p-topmessage-contents-body {
		margin-left: 5.33333%;
		margin-right: 5.33333%;
	}
}


.p-topmessage-contents-image {
	margin: 0;
	text-align: center;
}

@media (min-width: 769px) {
	.p-topmessage-contents-image-fruid-pc img {
		width: 100%;
		height: auto;
	}
}

@media (min-width: 769px) {
	.u-hide-pc {
		display: none !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.u-hide-tb {
		display: none !important;
	}
}

@media (max-width: 768px) {
	.u-hide-sp {
		display: none !important;
	}
}





@media (min-width: 769px) {
	.staff2_br {
		display: none !important;
	}
}

@media (min-width: 768px) and (max-width: 1024px) {
	.staff2_br {
		display: inherit!important;
	}
}

@media (max-width: 768px) {
	.staff2_br {
		display: inherit!important;
	}
}






@media (max-width: 320px) {
	.u-hide-sp-sm {
		display: none !important;
	}
}

@media (min-width: 769px) {
	.u-text-small-pc {
		font-size: 0.875rem;
	}
}

.u-text-bold {
	font-weight: bold !important;
}

.u-text-center {
	text-align: center !important;
}

@media (min-width: 769px) {
	.u-text-center-pc {
		text-align: center !important;
	}
}

@media (max-width: 768px) {
	.u-text-center-sp {
		text-align: center !important;
	}
}

.u-text-right {
	text-align: right !important;
}

.u-text-sup {
	position: relative;
	bottom: .5em;
	font-size: 70%;
}

.u-text-wide {
	line-height: 1.8 !important;
}

.u-text-link {
	color: #000;
	text-decoration: underline;
}

@media (min-width: 769px) {
	.u-text-link {
		-webkit-transition: all 0.2s ease-in-out;
		-o-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.u-text-link:hover {
		color: #000;
		opacity: .75;
	}
}

.u-text-link-pdf:after {
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	background: url(../img/recruit/icon_pdf@2x.png) 0 0 no-repeat;
	background-size: contain;
	margin-left: 5px;
	vertical-align: middle;
	content: "";
}

.u-text-notice {
	position: relative;
	padding-left: 1.2em;
}

@media (min-width: 769px) {
	.u-text-notice {
		font-size: 90%;
	}
}

.u-text-notice:before {
	position: absolute;
	left: 0;
	display: inline-block;
	content: "※";
}

@-webkit-keyframes flash_primary {
	50% {
		opacity: 0;
	}
}

@keyframes flash_primary {
	50% {
		opacity: 0;
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0;
		-webkit-transform: translateX(10px);
		transform: translateX(10px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}

@keyframes fadeIn {
	0% {
		opacity: 0;
		-webkit-transform: translateX(10px);
		transform: translateX(10px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		transform: translateX(0);
	}
}

/* menu
---------------------------------------------------- */
#glaylayer {
	position: fixed;
	display: none;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: 0.7;
	z-index: 9;
}
#slidemenu {
	display: none;
	position: absolute;
	top: 50px;
	width: 100%;
	background: #000;
	list-style: none;
	z-index: 10;
}
#slidemenu .nav_contents {
	width: 980px;
	margin: 50px auto;
}
#slidemenu .nav_contents .nav_topmessage {
	float: left;
	width: 285px;
}
#slidemenu .nav_contents .nav_topmessage a {
	display: block;
}
#slidemenu .nav_contents .nav_topmessage a:hover {
	opacity: 0.7;
}
#slidemenu .nav_contents .nav_topmessage p {
	display: block;
	background-color: #333333;
	font-size: 26px;
	line-height: 40px;
	color: #FFF;
	font-weight: bold;
	margin: 0;
	padding: 10px 20px 4px;
}
#slidemenu .nav_contents .nav_topmessage p span {
	display: block;
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
}
#slidemenu .nav_contents .nav_aboutbbt {
	float: left;
	width: 285px;
	margin-left: 20px;
}
#slidemenu .nav_contents .nav_aboutbbt p {
	display: block;
	background-color: #333333;
	font-size: 26px;
	line-height: 40px;
	color: #FFF;
	font-weight: bold;
	margin: 0;
}
#slidemenu .nav_contents .nav_aboutbbt p a {
	display: block;
	color: #FFF;
	padding: 10px 20px;
}
#slidemenu .nav_contents .nav_aboutbbt p a:hover {
	background-color: #1B1B1B;
}
#slidemenu .nav_contents .nav_aboutbbt p span {
	display: block;
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
	padding: 7px 0;
}
#slidemenu .nav_contents .nav_aboutbbt ul {
	margin: 0;
	padding: 0;
}
#slidemenu .nav_contents .nav_aboutbbt ul li {
	border-top: 1px solid #5c5c5c;
	background-color: #333333;
	list-style: none;
}
#slidemenu .nav_contents .nav_aboutbbt ul li a {
	display: block;
	font-size: 15px;
	color: #FFF;
	padding: 19px 20px 18px;
}
#slidemenu .nav_contents .nav_aboutbbt ul li a:hover {
	background-color: #1B1B1B;
}
#slidemenu .nav_contents .nav_aboutbbt ul li span {
	position: relative;
	padding-left: 24px;
}
#slidemenu .nav_contents .nav_aboutbbt ul li span::before {
	position: absolute;
	top: 50%;
	left: 0;
	margin-top: -7px;
	content: "";
	vertical-align: middle;
	width: 12px;
	height: 12px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#slidemenu .nav_contents .nav_interview {
	float: left;
	width: 370px;
	margin-left: 20px;
}
#slidemenu .nav_contents .nav_interview p {
	display: block;
	background-color: #333333;
	font-size: 26px;
	line-height: 40px;
	color: #FFF;
	font-weight: bold;
	margin: 0;
	padding: 10px 20px;
}
#slidemenu .nav_contents .nav_interview p span {
	display: block;
	font-size: 12px;
	font-weight: normal;
	line-height: 20px;
	padding: 7px 0;
}
#slidemenu .nav_contents .nav_interview ul {
	margin: 0;
	padding: 0;
}
#slidemenu .nav_contents .nav_interview ul li {
	float: left;
	width: 122px;
	margin-left: 2px;
	list-style: none;
	position: relative;
}
#slidemenu .nav_contents .nav_interview ul li:first-child {
	margin-left: 0;
}
#slidemenu .nav_contents .nav_interview a {
	display: block;
}
#slidemenu .nav_contents .nav_interview a:hover {
	opacity: 0.7;
}
#slidemenu .nav_contents .nav_interview ul li p {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color: rgba(0,0,0,0.5);
	font-size: 13px;
	font-weight: normal;
	padding: 6px;
	line-height: 20px;
	letter-spacing: 0;
}
#slidemenu .nav_contents .nav_interview ul li p span.txt1,
#slidemenu .nav_contents .nav_interview ul li p span.txt3 {
	padding: 0;
	font-size: 10px;
}
#slidemenu .nav_contents .nav_interview ul li p span.txt2 {
	padding: 0;
}
#slidemenu .nav_contents .nav_bn ul {
	margin: 30px 0 0;
	padding: 0;
}
#slidemenu .nav_contents .nav_bn ul li {
	float: left;
	width: 190px;
	margin-left: 7.5px;
	list-style: none;
}
#slidemenu .nav_contents .nav_bn ul li:first-child {
	margin-left: 0;
}
#slidemenu .nav_contents .nav_bn ul li a {
	text-align: center;
	display: block;
	font-size: 20px;
	font-weight: bold;
	line-height: 80px;
	color: #FFF;
	background-color: #333333;
	background-position: left top;
	background-repeat: no-repeat;
}
#slidemenu .nav_contents .nav_bn ul li:nth-child(1) a {
	background-image: url(../img/recruit/nav_bn01.png);
}
#slidemenu .nav_contents .nav_bn ul li:nth-child(2) a {
	background-image: url(../img/recruit/nav_bn02.png);
}
#slidemenu .nav_contents .nav_bn ul li:nth-child(3) a {
	background-image: url(../img/recruit/nav_bn03.png);
}
#slidemenu .nav_contents .nav_bn ul li:nth-child(4) a {
	background-image: url(../img/recruit/nav_bn04.png);
}
#slidemenu .nav_contents .nav_bn ul li:nth-child(5) a {
	background-image: url(../img/recruit/nav_bn05.png);
}
#slidemenu .nav_contents .nav_bn ul li a:hover {
	background-color: #1B1B1B;
}
#slidemenu .nav_contents .nav_bn ul li a span {
	display: block;
	position: relative;
}
#slidemenu .nav_contents .nav_bn ul li a span::after {
	position: absolute;
	bottom: 6px;
	right: 8px;
	content: "";
	width: 10px;
	height: 10px;
	border-top: 2px solid #FFF;
	border-right: 2px solid #FFF;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#slidemenu .nav_contents .nav_bn ul li a span::before {
	position: absolute;
	bottom: 0;
	right: 0;
	content: "";
	width: 25px;
	height: 25px;
	background-color: #191919;
}
#hamburgerbtn {
	cursor: pointer;
	display: block;
	width: 47px;
	height: 35px;
	background-image: url(../img/recruit/comn_btn_menu@2x.png);
	background-size: 47px auto;
}
#hamburgerbtn.close {
	background-image: url(../img/recruit/comn_btn_menu_close.png);
}


@media (max-width: 768px) {

	#slidemenu .nav_contents {
		width: 100%;
		margin: 0 auto;
	}
	#slidemenu .nav_contents .nav_topmessage {
		float: none;
		width: 100%;
		margin-bottom: 3px;
	}
	#slidemenu .nav_contents .nav_topmessage img {
		display: none;
	}
	#slidemenu .nav_contents .nav_topmessage p {
		font-size: 18px;
		padding: 10px 10px;
		position: relative;
	}
	#slidemenu .nav_contents .nav_topmessage p::after {
		position: absolute;
		bottom: 6px;
		right: 8px;
		content: "";
		width: 10px;
		height: 10px;
		border-top: 2px solid #FFF;
		border-right: 2px solid #FFF;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#slidemenu .nav_contents .nav_topmessage p::before {
		position: absolute;
		bottom: 0;
		right: 0;
		content: "";
		width: 25px;
		height: 25px;
		background-color: #191919;
	}
	#slidemenu .nav_contents .nav_topmessage p span {
		font-size: 10px;
		position: absolute;
		line-height: 16px;
		left: 164px;
		top: 14px;
	}
	#slidemenu .nav_contents .nav_aboutbbt {
		float: none;
		width: 100%;
		margin: 0 0 3px;
	}
	#slidemenu .nav_contents .nav_aboutbbt p {
		font-size: 18px;
		position: relative;
	}
	#slidemenu .nav_contents .nav_aboutbbt p::after {
		position: absolute;
		bottom: 6px;
		right: 8px;
		content: "";
		width: 10px;
		height: 10px;
		border-top: 2px solid #FFF;
		border-right: 2px solid #FFF;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#slidemenu .nav_contents .nav_aboutbbt p::before {
		position: absolute;
		bottom: 0;
		right: 0;
		content: "";
		width: 25px;
		height: 25px;
		background-color: #191919;
	}
	#slidemenu .nav_contents .nav_aboutbbt p a {
		display: block;
		color: #FFF;
		padding: 10px 10px;
	}
	#slidemenu .nav_contents .nav_aboutbbt p span {
		font-size: 12px;
		position: absolute;
		line-height: 16px;
		left: 144px;
		top: 16px;
	}
	#slidemenu .nav_contents .nav_aboutbbt ul li a {
		font-size: 12px;
		padding: 14px 20px;
	}
	#slidemenu .nav_contents .nav_aboutbbt ul li span {
		position: relative;
		padding-left: 24px;
	}
	#slidemenu .nav_contents .nav_aboutbbt ul li span::before {
		margin-top: -7px;
		width: 10px;
		height: 10px;
	}
	#slidemenu .nav_contents .nav_interview {
		float: none;
		width: 100%;
		margin-left: 0;
	}
	#slidemenu .nav_contents .nav_interview p {
		font-size: 18px;
		padding: 10px 10px;
		position: relative;
	}
	#slidemenu .nav_contents .nav_interview p span {
		font-size: 12px;
		position: absolute;
		line-height: 16px;
		left: 124px;
		top: 16px;
	}
	#slidemenu .nav_contents .nav_interview ul {
		margin: 0;
		padding: 0;
	}
	#slidemenu .nav_contents .nav_interview ul li {
		border-top: 1px solid #5c5c5c;
		background-color: #333333;
		list-style: none;
		float: none;
		width: 100%;
		margin-left: 0;
	}
	#slidemenu .nav_contents .nav_interview ul li img {
		display: none;
	}
	#slidemenu .nav_contents .nav_interview ul li a {
		display: block;
		font-size: 12px;
		padding: 14px 20px;
		color: #FFF;
	}
	#slidemenu .nav_contents .nav_interview ul li p {
		display: flex;
		flex-flow: row wrap;
		position: relative;
		padding: 0 0 0 24px;
		background-color: transparent;
	}
	#slidemenu .nav_contents .nav_interview ul li p::before {
		position: absolute;
		top: 50%;
		left: 0;
		margin-top: -7px;
		content: "";
		vertical-align: middle;
		width: 10px;
		height: 10px;
		border-top: 2px solid #FFF;
		border-right: 2px solid #FFF;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	#slidemenu .nav_contents .nav_interview ul li p span {
		font-size: 12px;
		position: inherit;
		line-height: 16px;
		left: inherit;
		top: inherit;
		display: inline-block;
		margin-right: 10px;
	}
	#slidemenu .nav_contents .nav_interview ul li p span.txt1 {order: 3;}
	#slidemenu .nav_contents .nav_interview ul li p span.txt2 {order: 1;}
	#slidemenu .nav_contents .nav_interview ul li p span.txt3 {order: 2;}

	#slidemenu .nav_contents .nav_bn ul {
		margin: 3px 0 0;
	}
	#slidemenu .nav_contents .nav_bn ul li {
		float: none;
		width: 100%;
		margin: 2px 0 0;
	}
	#slidemenu .nav_contents .nav_bn ul li a {
		font-size: 18px;
		line-height: 60px;
	}
}

ul.list {
	padding-left: 20px;
}
