@charset "UTF-8";
/**
* base
* ============================== */
/* 
  html5doctor.com Reset Stylesheet
  v1.6.1
  Last Updated: 2010-09-17
  Author: Richard Clark - http://richclarkdesign.com 
  Twitter: @rich_clark
  */
html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

body {
	line-height: 1;
}

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

ul {
	list-style: none;
}

blockquote,
q {
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}

/* change colours to suit your needs */
ins {
	background-color: #ff9;
	color: #000;
	text-decoration: none;
}

/* change colours to suit your needs */
mark {
	background-color: #ff9;
	color: #000;
	font-style: italic;
	font-weight: bold;
}

del {
	text-decoration: line-through;
}

abbr[title],
dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}

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

/* change border colour to suit your needs */
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}

input,
select {
	vertical-align: middle;
}

/* our custom styles */
*,
*::before,
*::after {
	box-sizing: border-box;
}

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;
}

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

q:before,
q:after {
	content: "";
}

abbr,
acronym {
	border: 0;
}

ol,
ul {
	list-style: none;
}

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

fieldset,
img {
	border: 0;
}

/**
* base
* ============================== */
html {
	font-size: 62.5%;
}

body {
	font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
	line-height: 1.5;
	font-size: 16px;
	font-size: 1.6rem;
	background: #fcfcfc;
}

img {
	max-width: 100%;
	height: auto;
}

a {
	outline: none;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

a:link {
	color: #333333;
	text-decoration: none;
}

a:visited {
	color: inherit;
}

a:hover {
	color: inherit;
	text-decoration: none !important;
}

a:active {
	color: inherit;
}

h2 {
	margin-top: -6rem;
	margin-bottom: 20px;
	font-size: 6rem;
	line-height: 1;
}
h2 small {
	font-size: 2rem;
}
@media (max-width: 767px) {
	h2 {
		margin-top: 0rem;
		font-size: 4rem;
		text-align: center;
		margin-bottom: 30px;
		line-height: 1.2;
	}
}

footer {
	padding-top: 8px;
	background: #f7f7f7;
}

body.iOS {
	padding-top: constant(safe-area-inset-top);
	padding-right: constant(safe-area-inset-right);
	padding-bottom: constant(safe-area-inset-bottom);
	padding-left: constant(safe-area-inset-left);
}

.un_pc {
	display: block;
}
@media (max-width: 767px) {
	.un_pc {
		display: none;
	}
}

.un_sp {
	display: block;
}
@media (min-width: 1080px) {
	.un_sp {
		display: none;
	}
}
@media (min-width: 768px) {
	.un_sp {
		display: none;
	}
}

.movie-wrap {
	position: relative;
	padding-bottom: 56.25%;
	/*アスペクト比 16:9の場合の縦幅*/
	height: 0;
	overflow: hidden;
}

.movie-wrap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/**
* layout
* ============================== */
/*----------------------
//container
-----------------------*/
.ly_container {
	margin: 0 auto;
	padding: 0 20px;
	width: 1080px;
	max-width: 100%;
	height: inherit;
}
@media (min-width: 768px) {
	.ly_container {
		padding: 0 20px;
	}
}
@media (min-width: 1080px) {
	.ly_container {
		padding: 0 30px;
	}
}

.ly_container_wide {
	margin: 0 auto;
	padding: 0 20px;
	width: 100vw;
	max-width: 100%;
	height: inherit;
}
@media (min-width: 768px) {
	.ly_container_wide {
		padding: 0 20px;
	}
}
@media (min-width: 1080px) {
	.ly_container_wide {
		padding: 0 30px;
	}
}

/**
* section
* ============================== */
.ly_sect {
	padding: 120px 0;
}
@media (max-width: 767px) {
	.ly_sect {
		padding: 30px 0;
	}
}

/*----------------------
//ly_fbox
-----------------------*/
.ly_fbox {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	height: inherit;
	text-align: left;
}

.ly_fbox__top {
	align-items: flex-start;
}

.ly_fbox__middle {
	align-items: center;
}

.ly_fbox__center {
	justify-content: center;
}

.ly_fbox__reverse {
	flex-direction: row-reverse;
}

.ly_fbox_col {
	padding: 0;
	display: flex;
	align-items: stretch;
	flex-direction: column;
}
.ly_fbox__padding .ly_fbox_col {
	padding: 0.8em;
}

.ly_fbox_col01 {
	width: 8.3333333333%;
}

.ly_fbox_col02 {
	width: 16.6666666667%;
}

.ly_fbox_col03 {
	width: 25%;
}

.ly_fbox_col04 {
	width: 33.3333333333%;
}

.ly_fbox_col05 {
	width: 41.6666666667%;
}

.ly_fbox_col06 {
	width: 50%;
}

.ly_fbox_col07 {
	width: 58.3333333333%;
}

.ly_fbox_col08 {
	width: 66.6666666667%;
}

.ly_fbox_col09 {
	width: 75%;
}

.ly_fbox_col10 {
	width: 83.3333333333%;
}

.ly_fbox_col11 {
	width: 91.6666666667%;
}

.ly_fbox_col12 {
	width: 100%;
}

@media (min-width: 768px) {
	.ly_fbox_col01-tab {
		width: 8.3333333333%;
	}

	.ly_fbox_col02-tab {
		width: 16.6666666667%;
	}

	.ly_fbox_col03-tab {
		width: 25%;
	}

	.ly_fbox_col04-tab {
		width: 33.3333333333%;
	}

	.ly_fbox_col05-tab {
		width: 41.6666666667%;
	}

	.ly_fbox_col06-tab {
		width: 50%;
	}

	.ly_fbox_col07-tab {
		width: 58.3333333333%;
	}

	.ly_fbox_col08-tab {
		width: 66.6666666667%;
	}

	.ly_fbox_col09-tab {
		width: 75%;
	}

	.ly_fbox_col10-tab {
		width: 83.3333333333%;
	}

	.ly_fbox_col11-tab {
		width: 91.6666666667%;
	}

	.ly_fbox_col12-tab {
		width: 100%;
	}
}
@media (min-width: 1080px) {
	.ly_fbox_col01-pc {
		width: 8.3333333333%;
	}

	.ly_fbox_col02-pc {
		width: 16.6666666667%;
	}

	.ly_fbox_col03-pc {
		width: 25%;
	}

	.ly_fbox_col04-pc {
		width: 33.3333333333%;
	}

	.ly_fbox_col05-pc {
		width: 41.6666666667%;
	}

	.ly_fbox_col06-pc {
		width: 50%;
	}

	.ly_fbox_col07-pc {
		width: 58.3333333333%;
	}

	.ly_fbox_col08-pc {
		width: 66.6666666667%;
	}

	.ly_fbox_col09-pc {
		width: 75%;
	}

	.ly_fbox_col10-pc {
		width: 83.3333333333%;
	}

	.ly_fbox_col11-pc {
		width: 91.6666666667%;
	}

	.ly_fbox_col12-pc {
		width: 100%;
	}
}
/**
* element
* ============================== */
/**
* module
* ============================== */
/**
* key
* ============================== */
.bl_key {
	position: relative;
	padding-top: 0;
	padding-bottom: 0;
}
.bl_key h1 {
	position: relative;
	top: 60px;
}
.bl_key_inner {
	padding-top: 80px;
	background: #4ea3f7 url("../img/recruit/bg.jpg") no-repeat top center;
	background-size: 100% auto;
	height: 100%;
}
.bl_key .un_harapeco {
	position: relative;
	top: 90px;
	margin: 0 auto;
	max-width: 247px;
}
.bl_key .un_harapeco_txt {
	font-size: 1.2rem;
	padding-left: 63%;
	position: relative;
	top: 50px;
}

@media (max-width: 767px) {
	.bl_key {
		position: relative;
		padding-top: 0;
		padding-bottom: 0;
		margin-bottom: -30px;
	}
	.bl_key h1 {
		position: relative;
		top: 50px;
	}
	.bl_key_inner {
		padding-top: 50px;
		background: url("../img/recruit/bg.jpg") no-repeat top center;
		background-size: 100% auto;
		height: 100%;
	}
	.bl_key .un_harapeco {
		position: relative;
		top: 90px;
		margin: 0 auto;
		max-width: 200px;
		height: auto !important;
	}
	.bl_key .un_harapeco_txt {
		font-size: 0.9rem;
		padding-left: 66%;
		position: relative;
		top: 80px;
	}
}
/**
* intro
* ============================== */
.bl_intro {
	position: relative;
	background: url("../img/recruit/aboutus.svg") no-repeat bottom center;
	background-size: 100% auto;
	padding: 160px 0 300px 0;
}
.bl_intro_txt {
	font-size: 1.6rem;
	line-height: 2.5;
}

@media (max-width: 767px) {
	.bl_intro {
		position: relative;
		background: url("../img/recruit/aboutus.svg") no-repeat bottom center;
		background-size: 100% auto;
		padding: 160px 0 160px 0;
	}
	.bl_intro_txt {
		font-size: 1.4rem;
		line-height: 2.5;
	}
}
.bl_recruitment {
	margin-top: 40px;
	background: url("../img/recruit/bg.jpg") no-repeat top center;
	background-size: 100% auto;
}
.bl_recruitment_inner {
	margin: 30px 10px;
	padding: 20px 10px;
	text-align: center;
	border: 2px solid #444;
	background: #fff;
	height: 230px;
}
.bl_recruitment_inner h3 {
	font-size: 26px;
}
.bl_recruitment_inner h3 small {
	display: block;
	font-size: 14px;
}
.bl_recruitment_inner_txt {
	font-size: 16px;
}
.bl_recruitment_inner figure {
	padding: 10px;
}
.bl_recruitment_inner figure img {
	height: 62px;
}

@media (max-width: 767px) {
	.bl_recruitment {
		background: url("../img/recruit/bg.jpg") no-repeat top center;
		background-size: cover;
	}
	.bl_recruitment_inner {
		margin: 30px 10px;
		padding: 15px 10px;
		text-align: center;
		border: 2px solid #444;
		background: #fff;
		height: 220px;
	}
	.bl_recruitment_inner h3 {
		font-size: 20px;
	}
	.bl_recruitment_inner h3 small {
		display: block;
		font-size: 12px;
	}
	.bl_recruitment_inner_txt {
		font-size: 12px;
	}
	.bl_recruitment_inner figure {
		padding: 10px;
	}
	.bl_recruitment_inner figure img {
		height: 62px;
	}
}
.bl_member {
	padding-bottom: 60px;
}
.bl_member h2 {
	margin-top: 0;
}
.bl_member ul {
	justify-content: center;
}
.bl_member ul li {
	margin-top: 10px;
	padding: 10px;
}
.bl_member ul li img {
	max-width: 100px;
}

@media (max-width: 767px) {
	.bl_member {
		padding-bottom: 30px;
	}
	.bl_member h2 {
		margin-top: 0;
	}
	.bl_member ul {
		justify-content: center;
	}
	.bl_member ul li {
		margin-top: 10px;
		padding: 5px;
	}
	.bl_member ul li img {
		max-width: 85px;
	}
}
.un-border {
	height: 100%;
	border-right: 1px solid #eee;
	align-self: stretch;
}

.bl_card {
	height: 100%;
	padding: 15px;
	margin-bottom: -60px;
}
.bl_card figure img {
	width: 100%;
	padding-bottom: 10px;
}
.bl_card .bl_ourJob_ttl {
	font-size: 1.8rem;
	padding: 1em 0;
	color: #0979b4;
	text-align: center;
	letter-spacing: 0.1em;
}
.bl_card p {
	line-height: 1.8;
	font-size: 1.4rem;
}

.bl_slide {
	margin-top: -30px;
}

@media (max-width: 767px) {
	.bl_card {
		height: 100%;
		margin-bottom: 15px;
		padding: 15px;
	}
	.bl_card .bl_ourJob_ttl {
		font-size: 2rem;
		font-weight: bold;
		padding: 1em 0;
		color: #0979b4;
		text-align: center;
		letter-spacing: 0;
	}
	.bl_card p {
		line-height: 1.8;
		font-size: 1.4rem;
		padding-bottom: 40px;
	}
	.bl_card figure img {
		width: 100%;
	}

	.bl_slide {
		margin-top: -50px;
	}
}
.js-fade {
	position: relative;
	transition:
		opacity 0.7s,
		transform 0.8s;
	opacity: 0;
}
.js-fade.show {
	opacity: 1;
	z-index: +1;
}

.js-fadeInUp {
	transform: translateY(50px);
}
.js-fadeInUp.show {
	transition-delay: 0.3s;
	transform: translateY(0);
	z-index: +1;
}

.js-fadeInUp2 {
	transform: translateY(40px);
	animation-delay: 2s;
	animation: keyImg_zoomin 1.2s cubic-bezier(0.4, 0, 0.2, 1);
}
.js-fadeInUp2 img {
	filter: drop-shadow(10px 10px 10px rgba(0, 0, 0, 0.6));
}
.js-fadeInUp2.show {
	transform: translateY(0);
	z-index: +1;
}

@keyframes lineanime {
	from {
		transform: translateX(0);
	}
	/*30%, 70% {
  transform: translateX(0);}*/
	to {
		transform: translateX(100%);
	}
}
.lineanime {
	display: inline-block;
	position: relative;
	overflow: hidden;
}

.lineanime:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	background: #111;
	animation-name: lineanime;
	animation-timing-function: ease;
	animation-duration: 0.7s;
	animation-fill-mode: forwards;
}

.lineanime img {
	display: block;
}

.bl_message {
	margin-bottom: -30px;
}
.bl_message h2 {
	margin-top: 0rem;
	margin-bottom: 30px;
}
.bl_message_inner {
	padding: 20px 20px 50px 20px;
	background: #fdfdf7;
	border: 1px solid #ccc;
}
.bl_message_inner p {
	line-height: 2;
}
.bl_message_inner img {
	margin-top: 30px;
	padding-right: 40px;
	max-width: 100%;
}

@media (max-width: 767px) {
	.bl_message {
		margin-bottom: -10px;
	}
	.bl_message h2 {
		margin-top: 0rem;
		margin-bottom: 20px;
	}
	.bl_message_inner {
		padding: 10px 20px 30px 20px;
		background: #fdfdf7;
		border: 1px solid #ccc;
	}
	.bl_message_inner p {
		line-height: 2;
	}
	.bl_message_inner img {
		margin-top: 30px;
		padding-right: 0;
		max-width: 100%;
	}
}
#el_pageTopBtn {
	position: fixed;
	bottom: 32px;
	right: 16px;
	width: 48px;
	height: 48px;
	padding: 12px 5px;
	background: #f7f7f7;
	border-radius: 50%;
	transition: 0.3s;
	z-index: 9999;
	line-height: 1;
	box-shadow:
		0 2px 2px 0 rgba(0, 0, 0, 0.12),
		0 2px 2px 0 rgba(0, 0, 0, 0.24);
	text-align: center;
	cursor: pointer;
}
#el_pageTopBtn:hover {
	box-shadow:
		0 4px 5px 0 rgba(0, 0, 0, 0.14),
		0 1px 10px 0 rgba(0, 0, 0, 0.12),
		0 2px 4px -1px rgba(0, 0, 0, 0.2);
}
#el_pageTopBtn img {
	width: 24px;
}

.el_btn_wrapper {
	padding: 30px 0;
	text-align: center;
}

.el_btn {
	display: inline-block;
	width: 300px;
	max-width: 100%;
	padding: 20px 10px;
	background-color: #e25c00;
	border: 2px solid transparent;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	color: #fff !important;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	transition: 0.25s;
}
.el_btn:focus,
.el_btn:hover {
	background-color: #fff;
	color: #444 !important;
	border-color: currentColor;
	color: #e25cc00;
}

footer {
	margin-top: 60px;
	background: #f7f7f7;
	padding: 30px;
}
footer p {
	font-size: 1rem;
	text-align: cetnter;
}

/**
* animation
* ============================== */
/**
* helper
* ============================== */
/* CSS Document */
.hp_txt_right {
	text-align: right;
}

.hp_txt_center {
	text-align: center;
}

.hp_mt_20 {
	margin-top: 20px;
}

/**
* unique
* ============================== */
