@charset "UTF-8";
/*
Theme Name: 株式会社ユナイテッドウィル
Template: twentynineteen
Author: 株式会社ユナイテッドウィル
Author URI: 
Description:
Version: 1.0
Updated: 2022-09-12
*/

/* Color Scheme
-----------------------------------------------------

	=THEME COLOR = #5b4d45

-----------------------------------------------------
*/

@import url(reset.css);
@import url(wordpress.css);

@font-face {
font-family: 'Boston';
font-style: normal;
font-weight: normal;
src: local('Boston'), url('assets/fonts/BostonRegular.woff') format('woff');
}

@font-face {
font-family: 'Boston SemiBold';
font-style: normal;
font-weight: normal;
src: local('Boston SemiBold'), url('assets/fonts/BostonSemiBold.woff') format('woff');
}

@font-face {
font-family: 'Boston Bold';
font-style: normal;
font-weight: normal;
src: local('Boston Bold'), url('assets/fonts/BostonBold.woff') format('woff');
}

@font-face {
font-family: 'Boston Black';
font-style: normal;
font-weight: normal;
src: local('Boston Black'), url('assets/fonts/BostonBlack.woff') format('woff');
}

/*
-----------------------------------------------------

 	=GLOBAL LAYOUT

-----------------------------------------------------
*/

* {
	margin: 0; padding: 0;
}

*, *:before, *:after {
	-webkit-box-sizing: border-box;
		 -moz-box-sizing: border-box;
			 -o-box-sizing: border-box;
			-ms-box-sizing: border-box;
					box-sizing: border-box;
}

html {
	font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif, serif;
	-webkit-font-smoothing: antialiased !important;
	-webkit-text-stroke: 1px transparent;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	text-rendering: optimizeLegibility;
	color: #5b4d45;
	font-size: 10px;
	font-weight: normal;
	line-height: 1.8;
	word-wrap: break-word;
	letter-spacing: 0.05em;
}
/* Firefox
@-moz-document url-prefix() {
	html {
		font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif, serif;
	}
} */
/* IE11 */
_:-ms-lang(x)::-ms-backdrop, html {
	font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo", "メイリオ", sans-serif, serif;
}

body {
	font-size: 1.6rem;
}
body::before {
	content: "";
	position: fixed;
	z-index: -99;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(assets/images/bg-noise.jpg);
	background-size: 2160px auto;
}
h1, h2, h3, h4, h5, h6, p, pre, dt, dd, li {
	line-height: 2.0;
}
p, ul, ol, dl, table {
	margin-bottom: 2em;
}
p:last-child, ul:last-child, ol:last-child, dl:last-child, table:last-child {
	margin-bottom: 0;
}
table {
	width: 100%;
	border-collapse: collapse;
	line-height: 1.8;
	text-align: left;
}
th, td {
	padding: 1em 1.5em;
	vertical-align: top;
	border: none;
}
th {
	font-weight: bold;
	text-align: justify;
}
tr {
	border-bottom: solid 1px rgba(0,0,0,0.1);
}

hr {
	clear: both;
	border: none;
}
img {
	display: inline-block;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
a img {
	border: none;
}
a {
	color: #5b4d45;
	text-decoration: underline;
}
a {
	cursor: pointer;
	-webkit-transition: all ease-out 0.2s;
		 -moz-transition: all ease-out 0.2s;
			-ms-transition: all ease-out 0.2s;
					transition: all ease-out 0.2s;
}
a:hover {
	opacity: 0.5;
	text-decoration: none;
}
/*::selection {
	background-color: rgba(0,0,0,0.25);
}*/

em {}

ol{
	counter-reset: number;
	list-style: none;
}
ol li {
	position: relative;
	padding-left: 2.5em;
}
ol li:not( :last-child ) {
	margin-bottom: 1.5em;
}
ol li::before {
	position: absolute;
	left: 0;
	counter-increment: number;
	content: "("counter(number)")";
	margin: 0 1.0em 0 0;
}
ol li ol:last-child { margin-bottom: 2em; }
ol li ol li::before {
	content: "("counter(number,lower-roman)")";
}
ol li ol li:not( :last-child ) {
	margin-bottom: .5em;
}


strong { font-weight: bold; }
iframe { display: block; max-width: 100%;}
form {}
input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea {
	padding: 5px;
	font-size: 16px;
	font-weight: inherit;
	color: inherit;
	-webkit-appearance: none;
	-webkit-border-radius: 0;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
input[type=text],
input[type=email],
input[type=tel],
input[type=password],
textarea,
select {
	background-color: #eee;
	color: #555;
	border: 1px solid #eee;
	line-height: 1;
	vertical-align: middle;
	max-width: 100%;
	border-radius: 5px;
}
textarea {}
input[type=text] { margin-bottom: 0.5em; }
input[type=text]:last-child { margin-bottom: 0; }
input[type=email] {}
input[type=submit] { cursor: pointer;}
input[type=text]:focus,
textarea:focus {
	color: #555;
}
form ul { margin: 0 !important; padding: 0 !important; border: none !important;}
form ul li { display: inline-block !important;}
form label { margin-right: 1.4em;}
form input[type*="submit"] {
	display: block;
	width: 100%;
	max-width: 300px;
	margin: 0 auto 20px;
	padding: 1em 2em;
	border: none;
	background-color: #e45539;
	color: #fff;
	font-size: 1.0em;
	font-weight: bold;
	text-align: center;
	border-radius: 5px;
	cursor: pointer;
	-webkit-transform: translate3d(0,0,0);
		 -moz-transform: translate3d(0,0,0);
			-ms-transform: translate3d(0,0,0);
					transform: translate3d(0,0,0);
	-webkit-transition: all ease-out 0.1s;
		 -moz-transition: all ease-out 0.1s;
			-ms-transition: all ease-out 0.1s;
					transition: all ease-out 0.1s;
}
form input[type*="submit"]:hover {
	opacity: 0.7;
}
::placeholder {
	color: #ddd;
}



/*
-----------------------------------------------------

 	=GLOBAL STYLE

-----------------------------------------------------
*/

#container {
	overflow: hidden;
}

.wrapper {
	width: 1200px;
	max-width: 100%;
	margin: auto;
}
.wrapper-min { width: 800px;}
.wrapper-1120 { width: 1120px;}
.wrapper-1000 { width: 1000px;}
.wrapper-960 { width: 960px;}
.wrapper-800 { width: 800px;}
.wrapper-720 { width: 720px;}

#cont {}
#main {}
#main main {}


/*
-----------------------------------------------------

	=MEDIA QUERIES RESPONSIVE STRUCTURE

-----------------------------------------------------
*/

/* DESKTOP
----------------------------------------------------- */
@media screen and (min-width: 600px) {
	.sp { display: none !important; }

	body {
		min-width: 1200px;
	}
}

/* SMARTPHONE
----------------------------------------------------- */
@media screen and (min-width: 0px) and (max-width: 599px) {
	.pc { display: none !important;}

	html { 
		font-size: 10px; 
	}
	body { 
		font-size: 1.2rem; 
		letter-spacing: 0;
	}

	/* APPERANCE
	--------------------------------------------------*/
	input[type="button"],
	input[type="text"],
	input[type="email"],
	input[type="tel"],
	input[type="submit"],
	select {
		-webkit-appearance: none;
		border-radius: 0;
	}

	iframe {
		width: 100%; 
		max-height: 240px;
	}
	th, td {
		font-size: 1.2rem;
		padding: 1em 0.5em;
	}

	/* =GLOBAL STYLE
	-------------------------------------------------- */
	.wrapper {
		width: auto;
		padding: 0 6.25vw;
		margin: auto;
	}
}


/*
-----------------------------------------------------

 	=PRELOADER (imagesloaded.pkgd.min.js)

-----------------------------------------------------
*/

.js-imageloaded {}
.js-imageloaded.loaded {}

#progress,
#progress * {}
#progress{
		position:fixed;
		top:0;
		bottom:0;
		left:0;
		width:100%;
		height:100vh;
		padding:0;
		display:block;
		overflow:hidden;
		z-index:999999;
}
#progress .progress-start {
	background-color:#fff;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	z-index:999999
	opacity: 0;
	-webkit-transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;
		 -moz-transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;
			-ms-transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;
					transition: all cubic-bezier(0.230, 1.000, 0.320, 1.000) 1.2s;

	display: none;
}
#progress.complete10 .progress-start { left: -100%;}
#progress .progress-loading {
	background-color: #fff;
	top:0;
	left:0;
	width:100%;
	height:100%;
	display:block;
	z-index:999999;
}
#progress .progress-loading .logo {
	width:100%;
	height:100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
#progress .progress-loading .logo svg,
#progress .progress-loading .logo img {
	width: 250px;
	-webkit-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
	 -moz-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
		-ms-transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
				transition: all cubic-bezier(0.190, 1.000, 0.220, 1.000) 0.8s;
}
#progress,
#progress .progress-loading {
	-webkit-transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
		 -moz-transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
			-ms-transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
					transition: all cubic-bezier(0.550, 0.055, 0.675, 0.190) 0.6s;
}
#progress.complete100,
#progress.complete100 .progress-loading {
	left: 0%;
}
#progress.complete100 {
	opacity: 0;
	z-index: -9999;
}

@media screen and (min-width: 0px) and (max-width: 599px) {

	@supports (-webkit-touch-callout: none) {
		#progress {
			height: -webkit-fill-available;
		}
	}
	#progress .progress-loading img	{
		width: 80px;
	}
}



/* =ANIMATION (jquery.inview.js)
----------------------------------------------------- */
.js-inview {
		-webkit-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
			 -moz-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
				-ms-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
				 -o-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
						transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
}

.js-inview.inview-fadein {
	opacity: 0;
}
.js-inview.inview-fadein.is-show { 
	opacity: 1; 
}

.js-inview.inview-zoomin {
	opacity: 0;
	transform: scale(1.3);
	-webkit-transform: scale(1.3);
	-moz-transform: scale(1.3);
	-ms-transform: scale(1.3);
	-o-transform: scale(1.3);
	filter: blur(5px);
	-webkit-filter: blur(5px);
	-moz-filter: blur(5px);
	-ms-filter: blur(5px);
	-o-filter: blur(5px);
}
.js-inview.inview-zoomin.is-show {
	opacity: 1;
	filter: blur(0);
	-webkit-filter: blur(0);
	-moz-filter: blur(0);
	-ms-filter: blur(0);
	-o-filter: blur(0);
	transform: scale(1);
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-ms-transform: scale(1);
	-o-transform: scale(1); 
}


.js-inview.inview-maskedin {
	position: relative;
		overflow: hidden;
		background-color: #000;
}
.js-inview.inview-maskedin.is-show {}
.js-inview.inview-maskedin>* {
		transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		position: relative;
		top: 0;
		left: -100%;
}
.js-inview.inview-maskedin.is-show>* {
	left: 0;
}
.js-inview.inview-zoom {
		transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;

		opacity: 0;
		transform: scale(0.9);
		-webkit-transform: scale(0.9);
		-moz-transform: scale(0.9);
		-ms-transform: scale(0.9);
		-o-transform: scale(0.9);
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		-o-backface-visibility: hidden;
}
.js-inview.inview-zoom.is-show {
		opacity: 1;
		transform: scale(1);
		-webkit-transform: scale(1);
		-moz-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);
}

.js-inview.inview-blur {
		opacity: 0;
		filter: blur(100px);
		-webkit-filter: blur(100px);
		-moz-filter: blur(100px);
		-ms-filter: blur(100px);
		-o-filter: blur(100px);
}
.js-inview.inview-blur.is-show {
		opacity: 1;
		filter: blur(0);
		-webkit-filter: blur(0);
		-moz-filter: blur(0);
		-ms-filter: blur(0);
		-o-filter: blur(0);
}

.js-inview.inview-floatup {
		transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
		-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
		-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
		-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
		-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;

		opacity: 0;
		transform: translate3d(0px, 200px, 0px);
		-webkit-transform: translate3d(0px, 200px, 0px);
		-moz-transform: translate3d(0px, 200px, 0px);
		-ms-transform: translate3d(0px, 200px, 0px);
		-o-transform: translate3d(0px, 200px, 0px);
}
.js-inview.inview-floatup.is-show {
		opacity: 1;
		transform: translate3d(0px, 0, 0px);
		-webkit-transform: translate3d(0px, 0, 0px);
		-moz-transform: translate3d(0px, 0, 0px);
		-ms-transform: translate3d(0px, 0, 0px);
		-o-transform: translate3d(0px, 0, 0px);
}
.js-inview.inview-floatintoright {
		transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;

		opacity: 0;
		transform: translate3d(-40px, 0px, 0px);
		-webkit-transform: translate3d(-40px, 0px, 0px);
		-moz-transform: translate3d(-40px, 0px, 0px);
		-ms-transform: translate3d(-40px, 0px, 0px);
		-o-transform: translate3d(-40px, 0px, 0px);
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		-o-backface-visibility: hidden;
}
.js-inview.inview-floatintoright.is-show {
		opacity: 1;
		transform: translate3d(0px, 0, 0px);
		-webkit-transform: translate3d(0px, 0, 0px);
		-moz-transform: translate3d(0px, 0, 0px);
		-ms-transform: translate3d(0px, 0, 0px);
		-o-transform: translate3d(0px, 0, 0px);
}
.js-inview.inview-floatintoleft {
		transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-webkit-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-moz-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-ms-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;
		-o-transition: 1.6s cubic-bezier(0.19, 1, 0.22, 1) 0.3s;

		opacity: 0;
		transform: translate3d(40px, 0px, 0px);
		-webkit-transform: translate3d(40px, 0px, 0px);
		-moz-transform: translate3d(40px, 0px, 0px);
		-ms-transform: translate3d(40px, 0px, 0px);
		-o-transform: translate3d(40px, 0px, 0px);
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		-o-backface-visibility: hidden;
}
.js-inview.inview-floatintoleft.is-show {
		opacity: 1;
		transform: translate3d(0px, 0, 0px);
		-webkit-transform: translate3d(0px, 0, 0px);
		-moz-transform: translate3d(0px, 0, 0px);
		-ms-transform: translate3d(0px, 0, 0px);
		-o-transform: translate3d(0px, 0, 0px);
}



.js-inview.inview-slideintoright {
	display: block;
		width: 1%;
}
.js-inview.inview-slideintoright.is-show {
		width: 100%;
}

.js-inview.inview-grayscale {
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
.js-inview.inview-grayscale.is-show {
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
	filter: grayscale(0%);
}

.inview-slidein-wrap {
		overflow: hidden;
		display: inline-block;
}
.js-inview.inview-slidein {
	transform: translateX(-100%);
}
.js-inview.inview-slidein.is-show {
	animation-name: animationSlideText;
	animation-duration: 0.6s;
	animation-fill-mode:forwards;

}

@keyframes animationSlideText {
	0%{
		transform: translateX(-100%);
	}
	50%{
		transform: translateX(-100%);
	}
	100%{
		transform: translateX(0);
	}
}
.js-inview.inview-slideinreverse {
	transform: translateX(100%);
}
.js-inview.inview-slideinreverse.is-show {
	animation-name: animationSlideTextReverse;
	animation-duration: 0.6s;
	animation-fill-mode:forwards;
}

@keyframes animationSlideTextReverse {
	0%{
		transform: translateX(100%);
	}
	50%{
		transform: translateX(100%);
	}
	100%{
		transform: translateX(0);
	}
}

@media screen and (min-width: 0px) and (max-width: 599px) {
	.inview-slidein-wrap {
		width: 100%;
	}
}



/*
-----------------------------------------------------

 	=HEADER

-----------------------------------------------------
*/

/* =HEADER
----------------------------------------------------- */

#cont {
	padding-top: 0;
}
.header-global {
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	padding: 0;
	width: 100%;
}
.header-global,
.header-global * {
	-webkit-transition: all ease-out 0.2s;
		 -moz-transition: all ease-out 0.2s;
			-ms-transition: all ease-out 0.2s;
					transition: all ease-out 0.2s;
}
.header-global>.inner {
	padding: 30px;
	align-items: center;
	-webkit-transition: all ease-out 0.2s;
		 -moz-transition: all ease-out 0.2s;
			-ms-transition: all ease-out 0.2s;
					transition: all ease-out 0.2s;
}
.header-global>.inner .header-left {}
.header-global>.inner .header-right {}
.header-global>.inner .header-left {}
.header-global>.inner .header-right .nav-pc {}
.header-global>.inner .header-right .nav-sp {}

.header-global>.inner .header-left .logo {
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin-left: 15px;
	width: 185px;
	max-width: 100%;
}
.header-global>.inner .header-left .logo img {
	display: block;
	opacity: 1;
}
svg {
	max-width: 100%;
	fill: #6A3906;
}
svg .st0 {
	fill: #6A3906; 
}
svg .st1 {
	fill: #F39800; 
}
.header-global>.inner .header-right ul.nav-main li a.button-recruit {
	position: relative;
	display: block;
	display: inline-block;
	padding: 0 1.5em;
	width: auto;
	min-width: 150px;
	height: 52px;
	line-height: 50px;
	border: solid 1px #5b4d45;
	text-align: center;
		-webkit-transition: all ease-out 0.2s;
			 -moz-transition: all ease-out 0.2s;
				-ms-transition: all ease-out 0.2s;
						transition: all ease-out 0.2s;
}
.header-global>.inner .header-right ul.nav-main li a.button-recruit:hover {
	background-color: #5b4d45;
	color: #fff;
}

.header-global>.inner .header-right .nav-pc ul.nav-main li a {}
.header-global>.inner .header-right .nav-pc ul.nav-main li a:hover {}
.header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a.button-recruit {}
.header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a.button-recruit:hover {
	opacity: 1;
}

/* トップページのみ */
.top .header-global>.inner .header-left .logo img {}

/* 下層ページ共通 
.sub .header-global {
	background-color: #fff;
	border-bottom: solid 0 rgba(83,91,104,0.1);
}
.sub .header-global>.inner .header-left .logo img {
	opacity: 1;
}
.sub .header-global>.inner .header-left .logo:after {
	color: #000;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li,
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li a {
	color: #000000;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li ul {
	background-color: #fff;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a {
	color: #fff;
}
.sub .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a:hover {}
*/

/* 画面スクロール時 */
/*.scrolled .header-global {
	background-color: rgba(255,255,255,0.75);
	border-bottom: solid 0 rgba(83,91,104,0.1);
}
.scrolled .header-global>.inner .header-left .logo img {
	opacity: 1;
}
.scrolled .header-global>.inner .header-left .logo:after {
	color: #000;
}
.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li,
.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li a {
	color: #000000;
}
.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li ul {
	background-color: #fff;
}
.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a {
	color: #fff;
}
.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a:hover {}*/

.sub.scrolled .header-global {
	background-color: rgba(255,255,255,1);
}
.sub.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li ul {
	background-color: rgba(255,255,255,1);
}

@media screen and (min-width: 600px) {
	#cont {
		padding-top: 0;
	}

	/* トップページのみ */
	.top #cont {
		padding-top: 0;
	}
	/* 画面スクロール時 */
	.scrolled .header-global {
		height: auto;
	}
	.scrolled .header-global>.inner {}

	/* 下層ページ共通 */
	.sub .header-global {
		height: auto;
	}
	.sub .header-global>.inner {}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	#cont {
		padding-top: 0;
	}
	.top #cont {
		padding-top: 0;
	}
	.header-global {
		height: 60px;
	}
	.header-global>.inner {
		padding: 0 6.25vw;
		padding: 0 20px;
		height: 100%;
	}
	.header-global>.inner .header-left {
		width: 100%;
		padding: 0;
	}
	.header-global>.inner .header-right {}

	.header-global>.inner .header-left .logo {
		width: 120px;
		margin-left: 10px;
		max-width: 100%;
	}

	/* 画面スクロール時 */
	.scrolled .header-global {}
}



/*
-----------------------------------------------------

	=NAVIGATION - PC

-----------------------------------------------------
*/

@media screen and (min-width: 600px) {

	/* =NAVIGATION - PC
	----------------------------------------------------- */
	.nav-pc {}
	.nav-pc * {
		-webkit-transition: all ease-out 0.2s;
			 -moz-transition: all ease-out 0.2s;
				-ms-transition: all ease-out 0.2s;
						transition: all ease-out 0.2s;
		}
	.nav-pc ul.nav-main {
		letter-spacing: 0;
		font-size: 0;
	}
	.nav-pc ul.nav-main li {
		display: inline-block;
		vertical-align: middle;
		color: inherit;
		font-size: 1.6rem;
		font-weight: normal;
		letter-spacing: 0.00em;
		text-transform: uppercase;
	}
	.nav-pc ul.nav-main li:not( :last-child ) {
		margin: 0 2.0em 0 0;
	}
	.nav-pc ul.nav-main li a {
		position: relative;
		display: block;
		color: inherit;
		line-height: 1;
		text-decoration: none;
	}
	.nav-pc ul.nav-main>li>a {
		height: 50px;
		line-height: 50px;
	}
	.nav-pc ul.nav-main li a:hover {
		opacity: 0.25;
	}

	.nav-pc ul.nav-main li {
		position: relative;
	}
	.nav-pc ul.nav-main li ul {
		display: none;
		position: absolute;
		top: 100%;
		left: 0;
		width: 16em;
		padding: 1.5em;
		padding-top: 2em;
		padding-top: 0;
		background-color: transparent;
	}
	.nav-pc ul.nav-main li:hover ul {
		display: block;
	}
	.nav-pc ul.nav-main li ul li {
		display: block;
		padding: 0.75em 0;
		font-size: 90%;
		text-align: left;
	}
	.nav-pc ul.nav-main li ul li:last-child {
		padding-bottom: 0;
	}
}

@media screen and (min-width: 0px) and (max-width: 1199px) {

	.nav-pc ul.nav-main li {
		font-size: 1.6rem;
	}
	.nav-pc ul.nav-main li:not( :last-child ) {
		margin: 0 1.75em 0 0;
	}
}

/*
-----------------------------------------------------

	=NAVIGATION - SP

-----------------------------------------------------
*/

@media screen and (min-width: 0px) and (max-width: 599px) {

	/* =NAVIGATION - SP
	----------------------------------------------------- */
	.nav-sp {
		position: fixed;
		z-index: 9992;
		top: 0;
		left: 0;
		bottom: auto;
		width: 100vw;
		height: 100vh;
		height: auto;
		padding: 0;
		border-radius: 0;
		background-color: transparent;
		background-color: rgba(255,255,255,1);
		overflow-y:scroll;
		-webkit-overflow-scrolling:touch;
		-webkit-transform:translate3d(-100%,0,0);
			 -moz-transform:translate3d(-100%,0,0);
				-ms-transform:translate3d(-100%,0,0);
						transform:translate3d(-100%,0,0);
		-webkit-transition: opacity ease-out 0.25s;
			 -moz-transition: opacity ease-out 0.25s;
				-ms-transition: opacity ease-out 0.25s;
						transition: opacity ease-out 0.25s;
		opacity: 0;
		text-align: center;
	}

	.nav-sp.on {
		opacity: 1;
		-webkit-transform:translate3d(0,0,0);
			 -moz-transform:translate3d(0,0,0);
				-ms-transform:translate3d(0,0,0);
						transform:translate3d(0,0,0);
	}
	.nav-sp.on .inner {}

	.nav-sp .inner {
		padding: 6.25vw;
	}
	.nav-sp .inner .logo {
		margin: 0 0 6.25vw;
	}
	.nav-sp ul.nav-main {
		margin: 0 0 0 0;
	}
	.nav-sp ul.nav-main li:not( :last-child ) {
		margin: 0 0 1.5em 0;
	}
	.nav-sp ul.nav-main li {
		display: block;
		font-size: 1.4rem;
		font-weight: bold;
	}
	.nav-sp ul.nav-main li a {
		display: block;
		line-height: 1;
		color: inherit;
		text-decoration: none;
	}
	.nav-sp ul.nav-main li a:hover {
		opacity: 0.25;
	}
	.nav-sp ul.nav-main ul {
		margin: 1.5em 0 0 0;
	}
	.nav-sp ul.nav-main ul li {
		margin: 1.5em 0 0 0;

		position: relative;
		padding-left: 1.0em;
	}
	.nav-sp ul.nav-main ul li:before {
		position: absolute;
		left: 0.25em;
		top: -0.5em;
		content: "-";
	}

	.nav-sp ul.nav-main li {}
	.nav-sp ul.nav-main li a.button-sub {
		display: inline-block;
		line-height: 1.8;
	}

	.nav-sp ul.nav-main li.recruit {}
	.nav-sp ul.nav-main li.recruit a {
	}
	.nav-sp ul.nav-main li.recruit a:hover {
		opacity: 1;
	}



	/* =TOGGLER
	----------------------------------------------------- */
	ul.nav-icon {
		position: fixed;
		z-index: 9999;
		top: 0;
		right: 0;
		margin: 0;
		padding: 0;

		text-align: right;
		font-size: 0;
		letter-spacing: 0;
	}

	ul.nav-icon li {
		display: inline-block;
		vertical-align: top;
		z-index: 9999;
		top: 0;
		right: 6.25vw;
		width: 80px;
		height: 60px;
		border-radius: 0;
		background-color: #f0f5f2;
		text-align: center;
		-webkit-transition: all ease-out 0.4s;
			 -moz-transition: all ease-out 0.4s;
				-ms-transition: all ease-out 0.4s;
						transition: all ease-out 0.4s;
		cursor: pointer;
	}
	ul.nav-icon li:not( :last-child ) {
		margin-right: 0;
	}
	ul.nav-icon li a {
		display: block;
		text-decoration: none;
	}
	ul.nav-icon li.toggler {
		padding: 22px 0;
		background-color: transparent;
	}
	.scrolled ul.nav-icon li.toggler {}
	ul.nav-icon li.toggler a.trigger-bars {
		display: inline-block;
	}
	a.trigger-bars,
	a.trigger-bars span {
		box-sizing: border-box;
		display: inline-block;
		-webkit-transition: all ease-out 0.4s;
			 -moz-transition: all ease-out 0.4s;
				-ms-transition: all ease-out 0.4s;
						transition: all ease-out 0.4s;
	}
	a.trigger-bars {
		position: relative;
		z-index: 9999;
		width: 28px;
		height: 16px;
		color: #000000;
	}
	a.trigger-bars::after {
		position: absolute;
		width: 200%;
		left: -50%;
		top: 27px;
		display: block;
		letter-spacing: 0em;
		font-size: 1.0rem;
		font-weight: bold;
		text-transform: uppercase;
		line-height: 1;
	}
	a.trigger-bars span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #5b4d45;
		border-radius: 0;
		-webkit-transition: all ease-out 0.14s;
			 -moz-transition: all ease-out 0.14s;
				-ms-transition: all ease-out 0.14s;
						transition: all ease-out 0.14s;
	}
	.scrolled a.trigger-bars span,
	.sub a.trigger-bars span { background-color: #5b4d45; }
	a.trigger-bars span:nth-of-type(1) { top: 0;}
	a.trigger-bars span:nth-of-type(2) { top: 7px;}
	a.trigger-bars span:nth-of-type(3) { bottom: 0;}

	/*ul.nav-icon li.toggler.active { background-color: #fff;}*/
	.active a.trigger-bars { color: #5b4d45;}
	.active a.trigger-bars span { background-color: #5b4d45; }

	.active a.trigger-bars span:nth-of-type(1) {
		-webkit-transform: translateY(7px) rotate(-45deg);
						transform: translateY(7px) rotate(-45deg);
	}
	.active a.trigger-bars span:nth-of-type(2) {
		opacity: 0;
	}
	.active a.trigger-bars span:nth-of-type(3) {
		-webkit-transform: translateY(-7px) rotate(45deg);
						transform: translateY(-7px) rotate(45deg);
	}

	/* TOGGLER NAVIGATION - CONTACT
	ul.nav-icon li.entry {
		padding: 13px 12px;
		background-color: #d7000f;
	}
	ul.nav-icon li.entry a {
		position: relative;
		color: #fff;
	}
	ul.nav-icon li.entry a i.icon-envelope {
		display: inline-block;
		vertical-align: baseline;
		width: 22px;
		height: 22px;
	}
	ul.nav-icon li.entry a::after {
		content: "お問合せ";
		display: block;
		position: absolute;
		width: 200%;
		left: -50%;
		top: 27px;
		letter-spacing: 0em;
		font-size: 1.0rem;
		font-weight: bold;
		text-transform: uppercase;
		line-height: 1;
	} */
}


/*
-----------------------------------------------------

	=FOOTER

-----------------------------------------------------
*/

.footer-global {
	position: relative;
	z-index: 9990;
	padding: 300px 0 100px;
	background: url(assets/images/footer-bg.jpg) no-repeat center top;
	background-size: auto 100%;
	mix-blend-mode: multiply;
	color: #fff;
}
.footer-global a {
	color: #fff;
	text-decoration: none;
}
.footer-global hr:not([class])	{
	height: 2em;
}
.footer-global .footer-area {
	padding: 4.5vw 0 0;
}
.footer-global .footer-area > .inner {
	position: relative;
}
.footer-global .footer-area .footer-left { width: 420px;}
.footer-global .footer-area .footer-right { width: 740px;}

.footer-global .footer-area .footer-left {}
.footer-global .footer-area .footer-left > *:not( :last-child ) {}
.footer-global .footer-area .logo {
	margin: 0 0 2em 0;
}
.footer-global .footer-area .logo svg {
	width: 185px;
}
.footer-global .footer-area .logo svg .st0,
.footer-global .footer-area .logo svg .st1 {
	fill: #fff;
}
.footer-global .footer-area .address {
	font-size: 1.3rem;
}
ul.list-sns {
	margin: 0;
	display: block;
	font-size: 0;
	letter-spacing: 0;
}
ul.list-sns li {
	display: inline-block;
	vertical-align: middle;
	font-size: 1.4rem;
	line-height: 1;
}
ul.list-sns li:not( :last-child ) {
	margin: 0 2em 0 0;
}

ul.list-sns li.lang {}
/* a ver. */
ul.list-sns li.lang a {
	color: #fff;
	opacity: 0.25;
	font-size: 1.1em;
	text-decoration: none;
}
ul.list-sns li.lang a.active,
ul.list-sns li.lang a:hover {
	opacity: 1;
}
i.icon-twitter {
	display: inline-block;
	background: url(assets/images/icon-sns-twitter.png) no-repeat center;
	background-size: 100% auto;
	width: 18px;
	height: 15px;
}
i.icon-facebook {
	display: inline-block;
	background: url(assets/images/icon-sns-facebook.png) no-repeat center;
	background-size: 100% auto;
	width: 8px;
	height: 17px;
}
i.icon-instagram {
	display: inline-block;
	background: url(assets/images/icon-sns-instagram.png) no-repeat center;
	background-size: 100% auto;
	width: 20px;
	height: 20px;
}

/* 横並びver.
.footer-global .footer-area .nav-footer {}

.footer-global .footer-area .nav-footer ul {
	font-size: 0;
	letter-spacing: 0;
}
.footer-global .footer-area .nav-footer ul li {
	display: inline-block;
	vertical-align: top;
	font-size: 1.6rem;
	font-weight: bold;
}
.footer-global .footer-area .nav-footer ul li:not( :last-child ) {
	margin: 0 2em 0 0;
}
.footer-global .footer-area .nav-footer ul li a {}
*/

/* 縦列ver.*/
.footer-global .footer-area .nav-footer {
	text-align: right;
}
.footer-global .footer-area .nav-footer>ul {
	display: inline-block;
	vertical-align: top;
	margin: 0 0 0 80px;
}
.footer-global .footer-area .nav-footer ul li {
	margin: 0 0 0.15em;
	font-size: 1.4rem;
	text-align: left;
}
.footer-global .footer-area .nav-footer ul li a {
	text-decoration: none;
}
.footer-global .footer-area .nav-footer ul li a:hover {}

.footer-global .footer-area .nav-footer ul ul {
	margin-top: 0.25em;
	opacity: 1;
}
.footer-global .footer-area .nav-footer ul ul li {
	position: relative;
	padding-left: 1.0em;
}
.footer-global .footer-area .nav-footer ul ul li:before {
	position: absolute;
	left: 0.25em;
	content: "-";
}

.footer-global .footer-area .nav-footer ul li.external a {
	padding-right: 2em;
	background: url(assets/images/icon-external-white.png) no-repeat right center;
	background-size: 14px auto;
}

/* COPYRIGHT */
.footer-global .copyright-area {}
.footer-global .copyright-area .copyright {
	border-top: solid 1px rgba(255,255,255,0.5);
	margin: 80px 0 0;
	padding: 3.25vw 0;
	font-family: 'Boston', sans-serif;
	letter-spacing: 0.10em;
	font-size: 1.2rem;
	line-height: 1;
	text-align: center;
}

/* PAGETOP
#button-pagetop {
	position: absolute;
	right: 0;
	bottom: 0;
	padding: 3.125vw;
}
 */

@media screen and (min-width: 600px) {
}

@media screen and (min-width: 0px) and (max-width: 599px) {
	.footer-global {
		padding: 200px 0 50px;
		font-size: 1.0rem;
	}
	.footer-global .footer-area,
	.footer-global .copyright-area {
		padding: 0vw 0;
		text-align: center;
	}
	.footer-global .copyright-area {
		padding-top: 0;
	}
	.footer-global .footer-area .flex-parent.responsive > *,
	.footer-global .copyright-area .flex-parent.responsive > * {
		width: 100%;
		margin: 0;
	}
	.footer-global .footer-area .footer-left,
	.footer-global .footer-area .footer-right { width: 100%; }
	.footer-global .footer-area .footer-right { display: none; }
	.footer-global .footer-area .logo {
		margin: 0 auto 3.125vw;
		padding-bottom: 3.125vw;
	}
	.footer-global .footer-area .logo img {
		width: 170px;
	}
	.footer-global .copyright-area .footer-right {
		display: block;
		text-align: center;
	}
	.footer-global .copyright-area .copyright {
		text-align: center;
		font-size: 9px;
	}

	#button-pagetop {
		display: none;
	}
}




/*
-----------------------------------------------------

	=COMMON PARTS

-----------------------------------------------------
*/


/* =SECTION
----------------------------------------------------- */

.block:not( :last-child ) {
	margin-bottom: 120px;
}
.section {
	padding: 120px 0;
}

hr {
	clear: both;
	border: none;
	height: 60px;
}
hr.sep {
	background-color: #dcdcdc;
	height: 1px;
}
hr.hr-border {
	margin: 2em 0;
	height: 1px;
	background-color: #dcdcdc;
}

.section-header {
	text-align: center;
}

@media screen and (min-width: 0px) and (max-width: 599px) {
	.block:not( :last-child ) {
		margin: 0 auto 8vw;
	}
	.section {
		padding: 8vw 0;
	}
	hr { height: 8vw; }
}


/* =DECORATION
----------------------------------------------------- */
.bg-black { background-color: #000; }
.bg-white { background-color: #fff; }
.bg-gray { background-color: #f6f6f6; }

.fc-theme {
	color: #5b4d45;
}
.fc-white { color: #fff }

.text-strong { font-weight: bold;}

.frame {
	padding: 2.0em;
}

@media screen and (min-width: 0px) and (max-width: 599px) {
	.frame {
		padding: 6.25vw;
	}
}


/* =HEADING
----------------------------------------------------- */


/* =BUTTON
----------------------------------------------------- */
.button-more {
	position: relative;
	display: block;
	padding: 1.0em 2em;
	display: inline-block;
	min-width: 350px;
	background: url(assets/images/icon-arrow-right-button.png) no-repeat right 2em center;
	background-size: 30px auto;
	background-color: #5b4d45;
	color: #fff;
	font-size: 1.8rem;
	text-align: left;
	text-decoration: none;
		-webkit-transition: all ease-out 0.2s;
			 -moz-transition: all ease-out 0.2s;
				-ms-transition: all ease-out 0.2s;
						transition: all ease-out 0.2s;
}
.button-more:hover {
	opacity: 0.8;
	background-position: right 1.5em center;
}

	.button-more.ghost {
		background-image: url(assets/images/icon-arrow-right-button-brown.png);
		background-size: 30px auto;
		background-color: transparent;
		color: #5b4d45;
		border: solid 1px #5b4d45;
	}
	.button-more.ghost:hover {}


@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.button-more {
		min-width: 250px;
		font-size: 1.6rem;
	}
}

/**/
ul.list-button {
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
}
ul.list-button li {
	display: inline-block;
	margin: 0 10px 10px 0;
}
ul.list-button li .button-more {}


@media screen and (min-width: 0px) and (max-width: 599px) {
	ul.list-button li {
		display: block;
	}
}


/* =LIST
----------------------------------------------------- */

/*ul.list-circle li {
	margin: 0 0 0.00em;
	position: relative;
	padding-left: 1.2em;
	color: #000000;
	line-height: 1.8;
}
ul.list-circle li::before {
	content: "● ";
	position: absolute;
	left: 0;
	top: 0.5em;
	display: inline-block;
	vertical-align: middle;
	margin: 0 1.25em 0 0;
	color: #000000;
	font-size: 0.9rem;
}*/

/*
ul.list-inline {
	font-size: 0;
	letter-spacing: 0;
}
ul.list-inline li {
	display: inline-block;
	margin: 0 10px 10px 0;
	margin-bottom: 10px;
	font-size: 1.6rem;
}*/


ul.list-share {
	font-size: 0;
	letter-spacing: 0;
	text-align: center;
}
ul.list-share li {
	display: inline-block;
	margin: 0 5px 10px;
	margin-bottom: 10px;
	font-size: 1.6rem;
}

@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}




/*
-----------------------------------------------------

	=FRONTPAGE (TOP)

-----------------------------------------------------
*/


/* =PAGE BACKGROUND
----------------------------------------------------- */
#container {
	position: relative;
	overflow: hidden;
}
#container.top::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: -1135px;
	right: 5%;
	top: -1035px;
	right: -25%;
	width: 1708px;
	height: 2263px;
	background: url(assets/images/bg-gradient-main.jpg) no-repeat right top;
	background-size: contain;
	mix-blend-mode: multiply;
		-webkit-animation: gradientMove 16s infinite;
		animation: gradientMove 16s infinite;
}
.is-show#container.top::before {
	/*top: -1035px;
	right: -25%;*/
}
@keyframes gradientMove {
	0% {
		top: -1035px;
		right: -25%;
		opacity: 0.6;
	}
	15% {
		top: -1235px;
		right: -5%;
		opacity: 0.2;
	}
	50% {
		top: -935px;
		right: -15%;
		opacity: 0.5;
	}
	75% {
		top: -1015px;
		right: -5%;
		opacity: 0.45;
	}
	100% {
		top: -1035px;
		right: -25%;
		opacity: 0.6;
	}
}
.scrolled#container.top::before {}

@media screen and (min-width: 600px) {
	#container.top::before {}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	#container.top::before {
		width: 854px;
		height: 1131px;
	}
	@keyframes gradientMove {
		0% {
			top: -435px;
			right: -55%;
			opacity: 1;
		}
		15% {
			top: -235px;
			right: -15%;
			opacity: 0.6;
		}
		50% {
			top: -335px;
			right: -55%;
			opacity: 0.9;
		}
		75% {
			top: -415px;
			right: -35%;
			opacity: 0.85;
		}
		100% {
			top: -435px;
			right: -55%;
			opacity: 1;
		}
	}
}


/* =TOP - FIRSTVIEW (SLIDER)
----------------------------------------------------- */
.top-fv {
	position: relative;
	overflow: hidden;
	z-index: 1;
	width: 100vw;
	height: 100vh;
}
.top-fv::before {}

/* FIRSTVIEW - CONTENT */
.top-fv .content {
	position: absolute;
	overflow: hidden;
	z-index: 2;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	height: 100%;
}
.top-fv .content .wrapper {
	position: relative;
	height: 100%;
}

/* FIRSTVIEW - CONTENT - TAGLINE */
.top-fv .content .tagline {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;

	display: flex;
	align-items: center;
}
.top-fv .content .tagline .inner {
	width: 100%;
	max-width: 90vw;
	margin: 6.25vw auto;
}
.top-fv .content .tagline .inner .text {

}
.top-fv .content .tagline .inner .text01 {
	margin: 0 0 15px;
	font-family: 'Boston Bold', sans-serif;
	font-size: 2.8rem;
}
.top-fv .content .tagline .inner .text02 {
	margin: 0 0 40px;
	font-size: 6.0rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.8;
}
.top-fv .content .tagline .inner .text03 {
	display: inline-block;
	margin: 0 0 15px;
	border-bottom: solid 2px #5b4d45;
	font-family: 'Boston Bold', sans-serif;
	font-size: 2.0rem;
	font-weight: bold;
	font-style: italic;
}
.top-fv .content .tagline .inner .text04 {
	font-size: 1.9rem;
	font-weight: bold;
}

/* タグラインのアニメーション（imagesloaded.pkgd.min.js 利用） */
.top-fv .content .tagline {
		opacity: 0;
		transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-webkit-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-moz-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-ms-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;
		-o-transition: 1s cubic-bezier(0.19, 1, 0.22, 1) 0.4s;

		/**/
		filter: blur(100px);
		-webkit-filter: blur(100px);
		-moz-filter: blur(100px);
		-ms-filter: blur(100px);
		-o-filter: blur(100px);

		/* */
		transform: scale(1.1);
		-webkit-transform: scale(1.1);
		-moz-transform: scale(1.1);
		-ms-transform: scale(1.1);
		-o-transform: scale(1.1);
	 

		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
		-moz-backface-visibility: hidden;
		-ms-backface-visibility: hidden;
		-o-backface-visibility: hidden;
		
}
.imageloaded .top-fv .content .tagline {
		opacity: 1;
		/* */
		filter: blur(0);
		-webkit-filter: blur(0);
		-moz-filter: blur(0);
		-ms-filter: blur(0);
		-o-filter: blur(0);
	
		transform: scale(1);
		-webkit-transform: scale(1);
		-moz-transform: scale(1);
		-ms-transform: scale(1);
		-o-transform: scale(1);	 
}

@media screen and (min-width: 600px) {
	.top-fv {
		height: 100vh;
		min-height: 770px;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	
	/* 
	@supports (-webkit-touch-callout: none) {
		.top-fv {
			height: -webkit-fill-available;
		}
	}*/
	
	.top-fv {
		width: 100vw;
		height: auto;
		overflow: hidden;
	}
	.top-fv .content {
		position: inherit;
		top: auto;
		bottom: 0%;
		width: 100%;
		padding: 5vw;
	}
	.top-fv .content .tagline {
		position: inherit;
	}
	.top-fv .content .tagline .inner {
		padding-top: 15vh;
		max-width: 100%;
		margin-left: 0;
	}
	.top-fv .content .tagline .inner .text01 {
		font-size: 1.6rem;
	}
	.top-fv .content .tagline .inner .text02 {
		font-size: 2.6rem;
	}
	.top-fv .content .tagline .inner .text03 {
	}
	.top-fv .content .tagline .inner .text04 {
		font-size: 1.2rem;
	}
}


/* =TOP - COMMON PARTS
----------------------------------------------------- */
.anchor {
	visibility: hidden;
	height: 0;
		display: block;
		padding-top: 160px;
		margin-top: -160px;
}
/*.grayscale {
	-webkit-transition: all ease-out 0.4s;
		 -moz-transition: all ease-out 0.4s;
			-ms-transition: all ease-out 0.4s;
					transition: all ease-out 0.4s;
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	-o-filter: grayscale(100%);
	filter: grayscale(100%);
}
.grayscale:hover {
	-webkit-filter: grayscale(0%);
	-moz-filter: grayscale(0%);
	-ms-filter: grayscale(0%);
	-o-filter: grayscale(0%);
	filter: grayscale(0%);
}*/

/* HEADING */
.title-japanese {
	margin: 0 0 0.85em;
	font-size: 4.0rem;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.8;
}
.title-japanese.white {
	color: #fff;
} 

.title-italic {
	display: inline-block;
	margin: 0 0 40px;
	font-family: 'Boston Bold', sans-serif;
	font-size: 2.0rem;
	font-weight: bold;
	font-style: italic;
}
.title-italic.border {
	border-bottom: solid 2px #5b4d45;
}

.title-section {
	margin: 0 0 80px;
}
.title-section .english,
.title-section .japanese {
	display: block;
}
.title-section .english {
	font-family: 'Boston Bold', sans-serif;
	font-size: 6.4rem;
	line-height: 1.2;
}
.title-section .japanese {
	font-size: 2.4rem;
	font-weight: bold;
}

.title-english {
	margin: 0 0 1.0em;
	font-family: 'Boston Bold', sans-serif;
	font-size: 6.4rem;
	line-height: 1.5;
}
.title-24 {
	margin: 0 0 1.0em;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 2.0;
}

.title-image {
	margin: 0 0 70px;
}
.title-subenglish {
	margin: 0 0 40px;
	font-family: 'Boston Bold', sans-serif;
	font-size: 2.8rem;
}

@media screen and (min-width: 600px) {
	.title-japanese.min {
		font-size: 3.2rem;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {


	.title-japanese {
		font-size: 2.4rem;
		line-height: 1.8;
	}
	.title-section {
		margin: 0 0 .5em;
	}
	.title-section .english {
		font-size: 4.2rem;
	}
	.title-section .japanese {
		font-size: 1.8rem;
	}
	.title-english {
		margin: 0 0 .5em;
		font-size: 4.2rem;
	}
	.title-image {
		margin: 0 0 6.25vw;
	}
	.title-subenglish {
		font-size: 1.6rem;
	}
}


/* =TOP - INTRO
----------------------------------------------------- */
.top-intro {
	position: relative;
	z-index: 1;
}
.top-intro .figure {
	position: absolute;
	z-index: 1;
	top: -100px;
	left: 0;
	width: 1500px;
	height: auto;
}
.top-intro .inner {
	position: relative;
	z-index: 2;
	padding-top: 240px;
	padding-left: 45%;
}

@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.top-intro .figure {
		width: 120vw;
		left: -1.5vw;
	}
	.top-intro .inner {
		padding-top: 50vw;
		padding-left: 0;
	}
}


/* =TOP - MISSION
----------------------------------------------------- */
.top-mission {
	position: relative;
	z-index: 1;
}
.top-mission .image-content>.image {
	position: relative;
}
.top-mission .image-content>.image .figure {
	position: absolute;
	z-index: -1;
	top: 0;
	right: -280px;
	width: 784px;
}
@media screen and (min-width: 600px) {
	.top-mission .image-content { align-items: center; }
	.top-mission .image-content>.image { width: calc(100% - 560px); padding-left: 80px;}
	.top-mission .image-content>.content { width: 560px;}
	.top-mission .image-content>.image {
		padding-top: 180px;
	}

}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.top-mission .section {
		padding-top: 20vw;
	}
	.top-mission .title-image {
		width: 70%;
		margin: 0 0 6.25vw;
	}
	.top-mission .image-content>.image {
		padding-top: 15vw;
	}
	.top-mission .image-content>.image .figure {
		top: 5vw;
		right: -60px;
		width: 120vw;
	}
}




/* =TOP - SERVICES
----------------------------------------------------- */
.top-services {
	mix-blend-mode: multiply;
}
.top-services .wrapper {
	position: relative;
}
.top-services .figure {
	position: absolute;
	z-index: -1;
	top: -100px;
	right: -360px;
	width: 1334px;
	height: auto;
}
.top-services .figure img {
}
.top-services .button {
	margin: 40px 0 0;
}
.top-services .top-services-lineup {}

.top-services-lineup {}
.top-services-lineup .lineup {
	position: relative;
} 

.top-services-lineup .lineup .content .logo {
	margin: 0 0 40px;
}

@media screen and (min-width: 600px) {
	.top-services-lineup {
		margin: 180px 0 0;
	}
	.top-services-lineup .lineup .image {
		position: absolute;
		z-index: -1;
		left: -100px;
		top: -150px;
		width: 782px;
	}
	.top-services-lineup .lineup .content {
		width: 500px;
		margin-left: auto;
	}
	.top-services .button {
		margin-left: auto;
		width: 500px;
	}

}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.top-services .title-english {
		margin: 0 0 0;
	}
	.top-services-lineup .lineup .image {
		margin: 0 -6.25vw;
	}
}

	/* 
	--------------------------------------------------
	一枚フルサイズver. （swiper.min.css を上書き ）
	--------------------------------------------------
	*/
	.swiper-parent {}
	.swiper-grandparent .swiper-parent .swiper-container {}
	

	/* 
	--------------------------------------------------
	左右のスライドを見せるver. （swiper.min.css を上書き ）
	--------------------------------------------------
	.media-fv .swiper-parent {
		max-width: 960px;
	}
	.media-fv .swiper-grandparent .swiper-parent .swiper-container {
		overflow: visible !important;
	}
	*/

	.top-services .swiper-wrapper {
	}
	/* Prev & Next をフル画面にしたいとき */
	.top-services .swiper-container {
		position: static !important;
		overflow: visible;
	}
	.top-services .swiper-slide {
		opacity: 0 !important;
	}
	.top-services .swiper-slide-active {
		opacity: 1 !important;
	}

	/* Prev & Next */
	.top-services .swiper-button-prev,
	.top-services .swiper-container-rtl .swiper-button-next,
	.top-services .swiper-button-next,
	.top-services .swiper-container-rtl .swiper-button-prev {
		background-size: 100% auto !important;
		top: 0 !important;
		bottom: 0 !important;
		margin: auto !important;
		width: 30px !important;
		height: 100% !important;
	}
	.top-services .swiper-button-prev,
	.top-services .swiper-container-rtl .swiper-button-next {
		left: -30px !important;
		background-image: url(assets/images/icon-arrow-left-slider.png) !important;
	}
	.top-services .swiper-button-next,
	.top-services .swiper-container-rtl .swiper-button-prev {
		right: -30px !important; 
		background-image: url(assets/images/icon-arrow-right-slider.png) !important;
	}

	/* pagination */
	.top-services .swiper-container .swiper-pagination {
		position: static;
		padding: 15px 0 0;
		position: inherit !important;
		text-align: left !important;

	}
	.top-services .swiper-container .swiper-pagination-bullet {
		background-color: #5b4d45 !important; 
		opacity: 0.25 !important;
	}
	.top-services .swiper-container .swiper-pagination-bullet-active { 
		background-color: #5b4d45 !important; 
		opacity: 1 !important;
	}
	@media screen and (min-width: 600px) {
		.top-services .swiper-container .swiper-pagination {
			width: 500px;
			margin-left: auto;
		}
	}


	@media screen and (min-width: 0px) and (max-width: 599px) {
		.top-services .swiper-container {}
		.top-services .swiper-slide {}
		.top-services .swiper-slide-active { opacity: 1; }
		
		/* フル画面 ver.
		.top-services .swiper-grandparent { padding: 0 !important; }
		.top-services .swiper-grandparent .wrapper { padding: 0 !important; }
		*/

		/* センタリング ver.
		.top-services .swiper-grandparent {}
		.top-services .swiper-grandparent .wrapper { padding: 0 !important; }
		.top-services .swiper-grandparent .swiper-parent .swiper-container {
			overflow: hidden !important;
		} */

		/* Prev & Next */
		.top-services .swiper-button-prev,
		.top-services .swiper-container-rtl .swiper-button-next,
		.top-services .swiper-button-next,
		.top-services .swiper-container-rtl .swiper-button-prev {
			top: 0 !important;
			width: 20px !important;
			height: 50% !important;
			margin-top: 0 !important;
		}
		.top-services .swiper-button-prev,
		.top-services .swiper-container-rtl .swiper-button-next {
			left: 0px !important;
			background-size: 100% auto !important;
		}
		.top-services .swiper-button-next,
		.top-services .swiper-container-rtl .swiper-button-prev {
			right: 0px !important;
			background-size: 100% auto !important;
		} 
	}




/* =TOP - NEWS [ニュース]
----------------------------------------------------- */
.top-news {
	position: relative;
	z-index: 1;
}

/* トップページのみのループ */
.top-news-lineup {}
.top-news-lineup .lineup {
	overflow: hidden;
}
.top-news-lineup .lineup {
}
.top-news-lineup .lineup a {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
}
.top-news-lineup .lineup a:hover {
	opacity: 1;
	opacity: 0.7;
}
.top-news-lineup .lineup .inner {
	position: relative;
}
.top-news-lineup .lineup .inner .thumbnail {
	position: relative;
	overflow: hidden;
	padding-bottom: 66.66%;
	background-color: #000;
}
.top-news-lineup .lineup .inner .thumbnail img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
	opacity: 0.8;
-webkit-transition: all ease-out 0.2s;
	 -moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
			transition: all ease-out 0.2s;

}
.top-news-lineup .lineup a:hover .inner .thumbnail img {}
.top-news-lineup .lineup .inner .text {
	position: absolute;
	z-index: 2;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 20px;
	padding-right: 60px;
	background: url(assets/images/icon-arrow-right-white.png) no-repeat right 20px bottom 20px;
	background-size: 40px auto;
	color: #fff;
}
.top-news-lineup .lineup .inner .text .title {
	margin: 0 0 10px;
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 1.5;
	text-decoration: underline;
}
.top-news-lineup .lineup .inner .text .meta {
	font-weight: bold;
}
.top-news-lineup .lineup .inner .text .meta ul.list-tag {
	margin: 0;
}
.top-news-lineup .lineup .inner .text .meta ul.list-tag li {
	display: inline-block;
	line-height: 1.25;
}

@media screen and (min-width: 600px) {
	.top-news .section {}
	.top-news .image-content { align-items: flex-start; }
	.top-news .image-content>.image { width: 360px;}
	.top-news .image-content>.content { width: calc(100% - 360px); padding-right: 80px;}

}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.fb_iframe_widget {
		display: block;
		margin: auto;
	}
	.fb_iframe_widget iframe {
		max-height: 780px;
	}
	.top-news .image-content>.content {
		margin-bottom: 12.5vw;
	}
	.top-news .image-content>.image {
		text-align: center;
	}
	.top-news .button {
		margin: 6.25vw 0 0;
		text-align: center; 
	}
}



/* =ACTION - RECRUIT [採用情報]
----------------------------------------------------- */
.action-recruit {
	position: relative;
	z-index: 2;
	overflow: hidden;
}
.action-recruit .image-content>.content {
	background: url(assets/images/top-recruit-bg.jpg);
	background-size: cover;
}
.action-recruit .inner {
	padding: 80px;
}
.action-recruit .inner .title-english {
	margin: 0 0 20px;
}
@media screen and (min-width: 600px) {
	.action-recruit {}
	.action-recruit .image-content { align-items: center; }
	.action-recruit .image-content>.image,
	.action-recruit .image-content>.content {}
	.action-recruit .image-content>.image { width: calc(560px + 120px); margin-left: -120px }
	.action-recruit .image-content>.content { width: 640px; }
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.action-recruit {}
	.action-recruit .section {
		padding-top: 0;
	}
	.action-recruit .wrapper {
		padding: 0;
	}
	.action-recruit .flex-parent.responsive > .flex-child {
		margin-bottom: 0;
	}
	.action-recruit .inner {
		padding: 6.25vw;
	}
}


/* =ACTION - INQUIRY [お問い合わせ]
----------------------------------------------------- */
.action-inquiry {
	position: relative;
	z-index: 2;
	text-align: center;
}
.action-inquiry .inner {}
.action-inquiry .inner .title-english {
	margin: 0 0 30px;
}
.action-inquiry .inner .title-24 {
	margin: 0 0 40px;
}
@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}


/*
-----------------------------------------------------

	=SUBPAGES

-----------------------------------------------------
*/

/* =SUBPAGES - PAGE BACKGROUND
----------------------------------------------------- */
#container.sub {
	position: relative;
	overflow: hidden;
}
#container.sub::before {
	content: "";
	position: absolute;
	z-index: -1;
	top: -1035px;
	right: -25%;
	width: 1708px;
	height: 2263px;
	background: url(assets/images/bg-gradient-main.jpg) no-repeat right top;
	background-size: contain;
	mix-blend-mode: multiply;
		-webkit-animation: gradientMoveSubpages 16s infinite;
		animation: gradientMoveSubpages 16s infinite;
}

#container.nobg::before {
	display: none;
}

@keyframes gradientMoveSubpages {
	0% {
		top: -1235px;
		right: -25%;
		opacity: 0;
	}
	35% {
		top: -1335px;
		right: -35%;
		opacity: 0.6;
	}
	50% {
		top: -1535px;
		right: -15%;
		opacity: 0.5;
	}
	75% {
		top: -1515px;
		right: -35%;
		opacity: 0.85;
	}
	100% {
		top: -1235px;
		right: -25%;
		opacity: 0;
	}
}
.scrolled#container.top::before {}

@media screen and (min-width: 600px) {}
@media screen and (min-width: 0px) and (max-width: 599px) {
	#container.sub::before {
		width: 854px;
		height: 1131px;
	}
	@keyframes gradientMoveSubpages {
		0% {
			top: -735px;
			right: -55%;
		opacity: 0;
		}
		15% {
			top: -835px;
			right: -15%;
			opacity: 0.6;
		}
		50% {
			top: -805px;
			right: -55%;
			opacity: 0.6;
		}
		75% {
			top: -715px;
			right: -35%;
			opacity: 0.85;
		}
		100% {
			top: -735px;
			right: -55%;
		opacity: 0;
		}
	}
}




/* =SUBPAGES - FIRSTVEW
----------------------------------------------------- */
.sub-fv {
	position: relative;
	z-index: 1;
}
.sub-fv .content {
	position: relative;
	z-index: 2;
}
.sub-fv .wrapper {
	position: relative;
	height: 100%;
}

.sub-fv .content .tagline {
	padding: 200px 0 110px;
	z-index: 1;
	top: 0;
	height: 100%;
	display: flex;
	align-items: center;
}
.sub-fv .content .tagline .title-section {
	margin: 0;
}

/* ページごとのデザイン */


@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	
	/* 
	@supports (-webkit-touch-callout: none) {
		.sub-fv {
			height: -webkit-fill-available;
		}
	}*/
	.sub-fv {
		height: auto;
	}
	.sub-fv .content .tagline {
		padding: 0;
		padding: 20vw 0 10vw;
		align-items: center;
	}
	.sub-fv .content .tagline .title-section .english {
		font-size: 3.2rem;
	}
	.sub-fv .content .tagline .title-section .japanese {
		font-size: 1.6rem;
	}

}


/* =SUBPAGES - BREADCRUMBS
----------------------------------------------------- 
#breadcrumbs {
	padding: 30px 0 0;
	line-height: 20px;
	font-size: 0.875em;
	text-align: right;
}
#breadcrumbs,
#breadcrumbs a {
	color: #000;
}
#breadcrumbs .inner {}
#breadcrumbs a {
	display: inline-block;
	border-bottom: solid 1px #000;
	text-decoration: none;
}
#breadcrumbs a:hover {
	border-color: transparent;
}
*/

/* =SUBPAGES - CONTENTS NAVIGATION
----------------------------------------------------- */
.sub-othercontents {
	position: relative;
	z-index: 1;
}
.sub-othercontents .introduction {
	position: relative;
	padding: 0 0 120px;
	text-align: center;
}
.sub-othercontents .introduction::before {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	width: 1px;
	height: 100px;
	background-color: #5b4d45;
}
.sub-othercontents .introduction .title-english {
	margin: 0;
}
.sub-othercontents .introduction .title-italic {
	margin: 0;
}
.sub-othercontents ol {}
.sub-othercontents ol li::before {
	position: absolute;
	top: 1em;
	left: 0;
	counter-increment: number;
	content: "0"counter(number)" :";
	margin: 0 1em 0 0;
	font-family: 'Boston Bold', sans-serif;
	font-style: italic;
}
.sub-othercontents ol li {
	display: inline-block;
	padding-left: 0;
}
.sub-othercontents ol li a {
	display: block;
	padding: 0 0 0.5em;
	padding-left: 50px;
	padding-right: 50px;
	border-bottom: solid 1px #5b4d45;
	font-family: 'Boston Bold', sans-serif;
	font-size: 3.2rem;
	text-decoration: none;
	text-align: center;
}


@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-othercontents ol li::before {}
	.sub-othercontents ol li a {
		font-size: 2.0em;
	}
}


/* =SUBPAGES - COMMON PARTS
----------------------------------------------------- */
/* HEADING */
.title-18 {
	margin: 0 0 1.5em;
	font-size: 1.1em;
}

/*.title-simple {
	margin: 0 0 1.0em;
	font-size: 1.2em;
	font-weight: bold;
	line-height: 1.8;
}
*/

@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.title-section {
		margin: 0 0 1.5em;
		font-size: 1.025em;
	}
	.title-section .english {
		margin: 0 0 0.1em;
		font-size: 2.8rem;
	}
	.title-section .japanese {}
	.title-24 {
		font-size: 1.8rem;
	}
}

/* BUTTON */
.button-sub {
	display: inline-block;
	width: 100%;
	min-width: 16em;
	max-width: 540px;
	padding: 1.0em 2.4em;
	padding-right: 90px;
	background: url(assets/images/icon-arrow-right-white.png) no-repeat right 1.8em center;
	background-size: 42px auto;
	background-color: #5b4d45;
	color: #fff;
	font-size: 1.1em;
	font-weight: bold;
	text-decoration: none;
	text-align: left;
}
.button-sub:hover {
	opacity: 1;
	background-color: #0b78a6;
}

/* DECORATION */
.frame-greige {
	background-color: #e6ebed;
}
.bg-theme01 {
	background: url(assets/images/bg-theme01.jpg) no-repeat center;
	background-size: cover;
	color: #fff;
}

/* BACKGROUND */
.bg-gradient-pink {
	content: "";
	position: absolute;
	z-index: -1;
	top: 25%;
	left: -25%;
	width: 1224px;
	height: 1343px;
	background: url(assets/images/bg-gradient-pink.jpg) no-repeat left center;
	background-size: contain;
	mix-blend-mode: multiply;
	opacity: 0.25;
}
.bg-gradient-yellowpink {
	content: "";
	position: absolute;
	z-index: -1;
	bottom: 25%;
	right: -25%;
	width: 1224px;
	height: 1343px;
	background: url(assets/images/bg-gradient-yellowpink.jpg) no-repeat left center;
	background-size: contain;
	mix-blend-mode: multiply;
	opacity: 0.8;
}

/* OTHER */
.whitebox {
	background-color: #fff;
	box-shadow: 5px 8.66px 120px 0px rgba(255, 182, 143, 0.25);
}



/* =SUBPAGES - NEWS [ニュース]
----------------------------------------------------- */
.sub-news {}

/* ARCHIVE */
/* カテゴリー・年別絞り込みボタン（※TOPページなどでも使用） */
.news-archive-header {}
.news-archive-header .news-archive-header-inner {}
.news-archive-header .title {
	margin: 0 0 15px;
}

ul.list-news-archive {
	margin: 0 0 2rem;
	font-size: 0;
	letter-spacing: 0;
}
ul.list-news-archive:last-child {
	margin-bottom: 0;
}
ul.list-news-archive li {
	display: inline-block;
	vertical-align: top;
	margin: 0 1em 1em 0;
	font-size: 1.6rem;
}
ul.list-news-archive li a {
	display: block;
	padding: 0.5em 2em;
	color: #5b4d45;
	font-weight: bold;
	text-align: center;
	border-radius: 2em;
	border: solid 1px #cccccc;
	background-color: transparent;
	text-decoration: none;
}

ul.list-news-archive li.active a,
ul.list-news-archive li a[aria-current] {
	background: url(assets/images/icon-checkbox-active.png) no-repeat left 1.5em center;
	background-size: 15px auto;
	padding-left: 3em;
}
ul.list-news-archive li a:hover {
	opacity: 1;
	background-color: #5b4d45;
	color: #fff;
/*	box-shadow: 2.5px 4.33px 15px 0px rgba(0, 0, 0, 0.2);*/
}
@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	ul.list-news-archive li {
		margin: 0 1em 1em 0;
		font-size: 1rem;
	}
	ul.list-news-archive li a {
	}
}

/* ニュース記事ループ（※下層NEWSでも使用） */
.news-lineup {
}
.news-lineup .lineup {
}
.news-lineup .lineup a {
	display: block;
	text-decoration: none;
	color: inherit;
}
.news-lineup .lineup .inner {
	align-items: center;
}
.news-lineup .lineup .inner .date {
}
.news-lineup .lineup .inner .thumbnail {
	margin: 0 0 20px;

	height: 0;
	padding-bottom: 60%;
	position: relative;
}
.news-lineup .lineup .inner .thumbnail img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.news-lineup .lineup .inner .text {
	margin: 0 0 10px;
}
.news-lineup .lineup .inner .text .meta {
	margin: 0 0 10px;
	font-size: 1.2rem;
}
.news-lineup .lineup .inner .text > *:last-child {
	margin-bottom: 0;
}
.news-lineup .lineup .inner .text .meta > * {
	display: inline-block;
	vertical-align: middle;
}
.news-lineup .lineup .inner .text .meta > *:not(:last-child) {
	margin: 0 2em 0 0;
}
.news-lineup .lineup .inner .text .meta .date {
	color: #5b4d45;
	font-family: "Boston Bold", sans-serif;
}
.news-lineup .lineup .inner .text .meta .category,
.news-lineup .lineup .inner .text .meta .category * {
	color: #5b4d45;
	text-decoration: none;
}
.news-lineup .lineup .inner .text .meta .category {}
.news-lineup .lineup .inner .text .meta .category a {
	display: block;
	padding: 0.5em 1em;
	border: solid 1px #5b4d45;
	border-radius: 3px;
	font-size: 0.9em;
	font-weight: bold;
}
.news-lineup .lineup .inner .text .meta .category a:hover {
	opacity: 1;
	background-color: #5b4d45;
	color: #fff;
}
.news-lineup .lineup .inner .text .title {
	margin: 0 0 10px;
	font-size: 1.1em;
	font-weight: bold;
	line-height: 1.7;
	text-decoration: none;
}
.news-lineup .lineup .inner .text ul.list-tag {
	display: none;
	margin: 0 0 10px;
}
.news-lineup .lineup .inner .text ul.list-tag li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 1em 0 0;
}
.news-lineup .lineup .inner .text ul.list-tag li a {
	color: #5b4d45;
	font-weight: bold;
}

@media screen and (min-width: 600px) {
	.top-news {
	}
	.news-lineup .lineup {
		margin-bottom: 60px;
	}
}

@media screen and (min-width: 0px) and (max-width: 599px) {
	.news-lineup .lineup .inner {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-shrink: 0;
		justify-items: center;
		align-items: center;
		align-items: flex-start;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}
	.news-lineup .lineup .inner .thumbnail {
		margin: 0;
		width: 150px;
		padding-bottom: 90px;
	}
	.news-lineup .lineup .inner .text {
		width: calc(100% - 170px);
	}
	.news-lineup .lineup .inner .text .title {
		font-size: 1em;
	}
	.news-lineup .lineup .inner .viewmore {
		display: none;
	}
}


/* =SUBPAGES - NEWS - DETAIL [ニュース詳細]
----------------------------------------------------- */
.sub-news-detail {}
.sub-news-detail::before {}

/* 記事本文中のスタイルはownedmedia.cssを参照 */
.news-article-header {
	margin: 0 0 3em;
}
.news-article-header .meta {
	margin: 0 0 0.5em;
	font-size: 0.9em;
}
.news-article-header .meta > * {
	display: inline-block;
	vertical-align: middle;
}
.news-article-header .meta > *:not(:last-child) {
	margin: 0 2em 0 0;
}
.news-article-header .meta .date {
	font-family: "Boston Bold", sans-serif;
}
.news-article-header .meta .category {
}
.news-article-header .meta .category a {
	text-decoration: none;
}
.news-article-header .meta .category a:hover {
	opacity: 0.6;
}
.news-article-header .meta ul.list-tag {
	margin: 0 0 10px;
}
.news-article-header .meta ul.list-tag li {
	display: inline-block;
	vertical-align: middle;
	margin: 0 1em 0 0;
}
.news-article-header .meta ul.list-tag li a {
	color: #5b4d45;
	font-weight: bold;
	text-decoration: none;
}
.news-article-header .title {
	margin: 0 0 0.5em;
	font-size: 2em;
	font-weight: bold;
	line-height: 1.8;
}

.news-article-content {
}

/* 記事終わりのお問い合わせボックス */
.article .contactbox {
	background-color: #f6f6f6;
	padding: 3em 4em;
	text-align: left;
}
.article .contactbox .content {
	font-size: 1.3rem;
}
.article .contactbox .content .title {
	margin: 0 0 0.5em;
	font-size: 1.5em;
	line-height: 1.5;
}
.article .contactbox .button {
	width: 240px;
}

.news-article-footer {
	text-align: center;
}

/* シェアボタン */
ul.list-share {
	margin: 0 0 2rem;
	font-size: 0;
	letter-spacing: 0;
}
ul.list-share li {
	display: inline-block;
	margin: 0 5px 10px;
	font-size: 1.6rem;
}

/* 縦並び・追従ver. */
@media screen and (min-width: 600px) {
	.news-article-header {
		position: relative;
	}
	.news-article-header ul.list-share.vertical {
		position: absolute;
		top: 0;
		left: -100px;
	}
	.news-article-header ul.list-share.vertical li {
		display: block;
		margin: 0 0 10px;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.news-article-header ul.list-share.vertical {
		text-align: left;
	}
	.news-article-header .title {
		font-size: 1.5em;
	}
}

/* 関連記事・新着記事 */
.news-article-related {}

@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}


/* =SUBPAGES - ABOUT [私たちについて]
----------------------------------------------------- */
.sub-about-introduction {}
.sub-about-lineup {}
.sub-about-lineup .bg-gradient-mission {
	position: absolute;
	position: fixed;
	width: 1440px;
	height: auto;
	-webkit-animation: gradientMoveMission 16s infinite;
	animation: gradientMoveMission 16s infinite;
	mix-blend-mode: multiply;
}
.sub-about-lineup .bg-gradient-message {
	content: "";
	position: absolute;
	z-index: -2;
	top: 1135px;
	left: -15%;
	width: 1408px;
	height: 1863px;
	background: url(assets/images/bg-gradient-main.jpg) no-repeat right top;
	background-size: contain;
	mix-blend-mode: multiply;
	opacity: 0.8;
}

.sub-about-lineup .lineup {
	position: relative;
	z-index: 1;
}
.sub-about-lineup .lineup.mission {}
.sub-about-lineup .lineup.message {}
.sub-about-lineup .lineup.member {}
.sub-about-lineup .lineup .section {}
.sub-about-lineup .lineup .image-content {}
.sub-about-lineup .lineup .image-content > .image {}
.sub-about-lineup .lineup .image-content > .content {}

.sub-about-lineup .lineup.mission .title-subenglish {
	font-family: 'Boston', sans-serif;
}

.sub-about-lineup .lineup.message {
	background-color: rgba(245, 216, 201, 0.4);
}

.sub-about-lineup .lineup.member {}



@media screen and (min-width: 600px) {
	.sub-about-lineup .lineup .image-content { align-items: center; }
	.sub-about-lineup .lineup .image-content > .image { width: 720px;}
	.sub-about-lineup .lineup .image-content > .content { width: 520px;}
	.sub-about-lineup .lineup .image-content > .image {
		margin-left: -160px;
	}
	.sub-about-lineup .lineup:nth-of-type(even) .image-content > .image {
		margin-left: 0;
		margin-right: -160px;
	}

	.sub-about-lineup .lineup.member {
		background: url(assets/images/sub-about-member-bg.jpg) no-repeat center;
		background-size: cover;
	}
	.sub-about-lineup .lineup.member .image-content > .image {
		visibility: hidden;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-about-lineup .lineup.message .section,
	.sub-about-lineup .lineup.member .section {
		padding-top: 0;
	}
}

/* =SUBPAGES - ABOUT - MISSION [ミッションバリュー]
----------------------------------------------------- */
.sub-mission {
	mix-blend-mode: multiply;
}
.sub-mission .section {
	padding-top: 0;
}
.sub-mission .bg-gradient-mission {
	position: absolute;
	position: fixed;
	width: 1440px;
	height: auto;
	-webkit-animation: gradientMoveMission 16s infinite;
	animation: gradientMoveMission 16s infinite;
}
@keyframes gradientMoveMission {
	0% {
		top: 10vh;
		left: -25vw;
		opacity: 0;
	}
	50% {
		top: 5vh;
		left: -15vw;
		opacity: 1;
	}
	75% {
		top: -15vh;
		left: -5vw;
		opacity: 1;
	}
	100% {
		top: 10vh;
		left: -25vw;
		opacity: 0;
	}
}
.sub-mission .inner {
	position: relative;
	z-index: 2;
}
.sub-mission .inner p {
	font-size: 2.0rem;
	font-weight: bold;
	line-height: 3.0;
}
.sub-mission .inner .title-italic {
	margin: 0 0 100px;
}
.sub-mission .inner .title-japanese {
	margin: 0 0 20px;
}

.sub-value {
	position: relative;
	z-index: 1;
	background-color: rgba(91, 77, 69, 0.05);
}
.value-lineup {}
.value-lineup .lineup {}
.value-lineup .lineup .numbering {
	margin: 0 0 15px;
}
.value-lineup .lineup .title {}

@media screen and (min-width: 600px) {
	.value-lineup.flex-row.col-2 > .flex-child {
		width: 43%;
		margin-right: 7%;
		margin-bottom: 7%;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-mission .inner .title-italic {
		margin: 40px 0 20px;
	}
	.sub-mission .inner p {
		font-size: 1.5rem;
		font-weight: bold;
		line-height: 2.5;
	}
	.value-lineup {
		margin: 6.25vw 0 0;
	}
	.value-lineup .lineup .title br { display: none; }
}

/* =SUBPAGES - ABOUT - MESSAGE [代表挨拶]
----------------------------------------------------- */
#container.message {
	background-color: #fcece3;
	mix-blend-mode: multiply;
}
#container.message .footer-global {
	background-color: #fff;
	mix-blend-mode: normal;
}
.sub-message {
	position: relative;
}
.sub-message .section {
	padding-top: 0;
}
.sub-message .section p {}
.sub-message .inner {
	position: relative;
	z-index: 12;
}
.sub-message .inner .handwriting {
	font-family: "ta-miyabi", sans-serif;
	font-size: 3.5em;
	transform: rotate(-1deg);
}
.sign {
	line-height: 1.8;
}
.sign .name {
	display: inline-block;
	margin: 0 0;
	font-size: 1.5em;
	font-weight: bold;
}

.sub-message .frame-profile {
	padding: 3em;
	background-color: #fff;
	font-size: 80%;
}
.sub-message .frame-profile .frame {
	padding: 40px;
}
.sub-message .frame-profile .name {
	margin: 0 0 1em;
}
.sub-message .frame-profile .name > p {
	margin: 0;
}
.sub-message .frame-profile .name .job {
	color: #5b4d45;
}
.sub-message .frame-profile .name .japanese {
	font-size: 2.4rem;
	font-weight: bold;
}
.sub-message .frame-profile .name .japanese .english {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 1.5em;
	font-family: 'Boston Bold', sans-serif;
	font-size: 1.4rem;
	font-weight: bold;
}
.sub-message .frame-profile .list-sns {
	margin: 0 0 20px;
}
.sub-message .frame-profile .image-content > .image {}
.sub-message .frame-profile .image-content > .image img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

@media screen and (min-width: 600px) {
	.sub-message .frame-profile .image-content { align-items: center; }
	.sub-message .frame-profile .image-content > .image { width: 34%;}
	.sub-message .frame-profile .image-content > .content { width: 66%; padding-left: 3em}
	.sub-message .frame-profile {
		position: relative;
	}
	.sub-message .frame-profile .list-sns {
		position: absolute;
		right: 60px;
		top: 60px;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-message .inner .handwriting {
		font-size: 2.1rem;
		letter-spacing: -0.10em;
	}
  .sub-message .frame-profile {
	padding: 2em;
  }
}


/* =SUBPAGES - ABOUT - MEMBER [ボードメンバー]
----------------------------------------------------- */
.page-member .header-global {}
.page-member .header-global svg .st0,
.page-member .header-global svg .st1 {
	fill: #fff;
}
.page-member .header-global>.inner .header-right .nav-pc ul.nav-main li {
	color: #fff;
}
.page-member .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a.button-recruit {
	border-color: #fff;
}
.page-member.scrolled .header-global svg .st0,
.page-member.scrolled .header-global svg .st1 {
	fill: inherit;
}
.page-member.scrolled .header-global svg .st1 {
	fill: #F39800;
}
.page-member.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li {
	color: inherit;
}
.page-member.scrolled .header-global>.inner .header-right .nav-pc ul.nav-main li.recruit a.button-recruit {
	border-color: inherit;
}

.sub-fv.member {
	background: url(assets/images/sub-member-fv.jpg) no-repeat center top;
	background-size: 100% auto;
}

@media screen and (min-width: 1280px) {
	.sub-fv.member .content .tagline {
		padding: 400px 0 100px;
	}
}
.sub-fv.member .content .tagline .title-section {
	color: #fff;
}

.sub-member {
	position: relative;
	z-index: 1;
}
.sub-member .section {
/*	padding-top: 0;*/
}
.member-lineup {}
.member-lineup .lineup {}
.member-lineup .lineup a {
	color: inherit;
	text-decoration: none;
}
.member-lineup .lineup .inner {}
.member-lineup .lineup .inner>* {
	margin: 0 0 15px;
	line-height: 1.6;
}
.member-lineup .lineup .inner>*:last-child {
	margin: 0;
}
.member-lineup .lineup .inner>.thumbnail {
	position: relative;
	margin: 0 0 20px;
	height: 0;
	padding-bottom: 72.0%;
}
.member-lineup .lineup .inner>.thumbnail img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
}
.member-lineup .lineup .inner>.name {
	margin: 0 0 10px;
	font-size: 1.5em;
	font-weight: bold;
	line-height: 1.25;
}
.member-lineup .lineup .inner>.job {
	margin: 0 0 20px;
	color: #5b4d45;
}
.member-lineup .lineup .inner>.name .english {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 1em;
	color: #5b4d45;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.10em;
}
.member-lineup .lineup .inner>.school {
	display: none;
	opacity: 0.5;
}
.member-lineup .lineup .inner>.text {
	font-size: 80%;
}
.member-lineup .lineup .inner>.text,
.member-lineup .lineup .inner>.text p {
	line-height: 1.8;
}

.member-lineup.type-general .lineup .inner>.job,
.member-lineup.type-general .lineup .inner>.school,
.member-lineup.type-general .lineup .inner>.text {
	/*display: none;*/
	font-size: 1.2rem;
}
.member-lineup.type-general .lineup .inner>.name {
	font-size: 1.25em;
}

@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}



/* =SUBPAGES - SERVICES [事業案内]
----------------------------------------------------- */
/* HR事業 */
.sub-services-hr {
	overflow: hidden;
}
.sub-services-hr .section {
	padding-top: 0;
}
.sub-services-hr .introduction {
	position: relative;
}
.sub-services-hr .introduction .figure {}
.sub-services-hr .introduction .inner {}
.sub-services-hr .services-point-lineup {}
.services-point-lineup {}
.services-point-lineup .lineup {}

/* サービスブランド一覧 */
.sub-services-brands {}
.sub-services-brands .bg-gradient-pink {
	top: auto;
	bottom: 15%;
}
.sub-services-brands .bg-gradient-yellowpink {
	bottom: 35%;
}
.sub-services-brands .title-italic {
	margin: 0 0 30px;
}

.services-brand-lineup {}
.services-brand-lineup .lineup {
	background-color: rgba(255,255,255,0.3);
}
.services-brand-lineup .lineup .thumbnail {
	position: relative;
	height: 0;
	padding-bottom: 50%;
}
.services-brand-lineup .lineup .thumbnail img {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}
.services-brand-lineup .lineup .content {
	padding: 30px;
}



@media screen and (min-width: 600px) {
	.sub-services-hr .introduction .inner {
		width: 540px;
		max-width: 100%;
	}
	.sub-services-hr .introduction .figure {
		position: absolute;
		z-index: -1;
		top: 0;
		left: 420px;
		width: 1818px;
	    left: 560px;
	    width: 80vw;
		height: auto;
	}
	.services-point-lineup .lineup .image-content { align-items: flex-start; }
	.services-point-lineup .lineup .image-content>.image { width: 480px;}
	.services-point-lineup .lineup .image-content>.content { width: calc(100% - 560px);}

	.services-point-lineup .lineup:nth-child(even) .image-content {
		flex-direction: row-reverse;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-services-hr .introduction .inner {
		margin: 0 0 6.25vw;
	}
	.sub-services-hr .introduction .figure {
		width: 200vw;
	}
	.services-brand-lineup .lineup .thumbnail img {
		max-width: 80%;
		height: auto;
	}
}



/* =SUBPAGES - COMPANY [会社概要]
----------------------------------------------------- */
.sub-company {}
.sub-company .section {
	padding-top: 0;
}
.sub-company .bg-gradient-yellowpink {
	right: auto;
	left: -25%;
}
.sub-company table tr {
	border-bottom: none;
	background-color: #fff;
	margin-bottom: 12px;
	display: block;
}
.sub-company table th,
.sub-company table td {
	height: 80px;
	padding: 32px 2em;
	font-size: 1.4rem;
	text-align: left;
	line-height: 1.8;
	vertical-align: top;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
}
.sub-company table th {
	background-color: #cac1ba;
	color: #fff;
	font-weight: bold;
	width: 160px;
}
.sub-company table td {
}
.sub-company table a {
	color: #ff8c00;
	text-decoration: underline;
}
.sub-company table p {
	margin: 0;
}

/* アクセス */
.sub-access {}
.sub-access .wrapper {
	position: relative;
}

.sub-access .inner {
	padding: 80px;
	background-color: #fff;
}
.sub-access .title-image {
	position: absolute;
	top: -20px;
	margin: 0 0 40px;
}
#map_canvas {
	width: 100%;
	height: 420px;
	background-color: #eee;
}
@media screen and (min-width: 600px) {
	.sub-access .inner {
		width: calc(100% + 200px);
		margin-left: -200px;
	}
	.sub-access .image-content { align-items: center; }
	.sub-access .image-content>.image { width: 720px;}
	.sub-access .image-content>.content { width: calc(100% - 800px);}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-company table th,
	.sub-company table td {
		height: auto;
		padding: 1.5em 1.5em;
	}
	.sub-company table th {
		width: 100px;
	}
	.sub-access .title-image {
		max-width: 60%;
	}
	.sub-access .inner {
		padding: 6.25vw;
	}
	#map_canvas {
		height: 300px;
	}
}


/* =SUBPAGES - PRIVACY [プライバシーポリシー]
----------------------------------------------------- */
.sub-privacy {}
.sub-privacy .section {
	padding-top: 0;
}
.sub-privacy .privacy-content {}
.sub-privacy .privacy-content h2:not( :first-child ) {
	margin-top: 4em;
}
.sub-privacy .privacy-content ol {}
.sub-privacy .privacy-content ol li {}
.sub-privacy .privacy-content ol li::before {
	display: none;
}
.sub-privacy .privacy-content ol li span {
	position: absolute;
	left: 0;
}
.sub-privacy .privacy-content th,
.sub-privacy .privacy-content td {
	padding: 1em 2em;
	vertical-align: middle;
}
.sub-privacy .privacy-content b {
	display: block;
	margin: auto;
	text-align: center;
}
@media screen and (min-width: 600px) {
	.sub-privacy .privacy-content h2 {
		font-size: 3.2rem;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}

/* =SUBPAGES - INQUIRY [お問い合わせ]
----------------------------------------------------- */
#container.inquiry .sub-fv .content .tagline {
	justify-content: center;
}
#container.inquiry .sub-fv .content .tagline .title-section {
	text-align: center;
}
.sub-contact {}
.sub-contact .introduction {
	text-align: center;
}
.sub-contact .introduction .title {
	margin: 0 0 2.0em;
	font-size: 1.35em;
	font-weight: bold;
}
.sub-contact-main {}


	/* レイアウト強制 */
	.mw_wp_form .horizontal-item + .horizontal-item {
		margin-left: 0 !important;
	}
	.form-main .hidden-text .mwform-checkbox-field-text { display: none; }
	.form-main .hidden-text label { margin-right: 10px; }
	.form-main .horizontal>br {
		display: none;
	}
	.form-main .horizontal label {
		display: block;
		width: 100%;
		border: 1px solid #f2f2f2;
		background-color: #f2f2f2;
		color: #555;
		padding: 1em;
		line-height: 1;
		vertical-align: middle;
		max-width: 100%;
		border-radius: 0;
	}
	.form-main .horizontal label:hover {
		border-color: #f90;
	}
	@media screen and (min-width: 600px) {
		.form-main .horizontal {
			font-size: 0;
			letter-spacing: 0;
		}
		.form-main .horizontal>* {
			display: inline-block;
			vertical-align: text-top;
			width: 32.33%;
			margin: 0 1% 1% 0;

			font-size: 1.5rem;
		}
		.form-main .horizontal label {
			padding: 15px 20px;
		}
		.form-main .horizontal-half {
			display: -webkit-flex;
			display: flex;
			-webkit-justify-content: space-between;
			justify-content: space-between;
			flex-shrink: 0;
			justify-items: center;
			align-items: center;
			align-items: flex-start;
			-webkit-flex-wrap: wrap;
			-ms-flex-wrap: wrap;
			flex-wrap: wrap;
		}
		.form-main .horizontal-half>* {
			margin-bottom: 0;
			width: 50%;
		}
		.form-main .horizontal-half>*:nth-child(odd) {
			padding-right: 10px;
		}

		/* 調整 */
		.form-main .horizontal.naiyou .horizontal-item:nth-of-type(4) {
			width: 65.66%;
		}
	}

	@media screen and (min-width: 0px) and (max-width: 599px) {
		.sub-contact .introduction .title {
			font-size: 1.1em;
		}
		.form-main .horizontal>* {
			display: inline-block;
			vertical-align: middle;
			width: 100%;
			margin: 0 0 1%;
		}
		.form-main .horizontal-half>* {
			margin-bottom: 10px;
		}
	}

/* フォーム本体 */
.form-main {
	padding-top: 0;
}
.form-main * {
	line-height: 1.8;
}
.form-main table {
	width: 100%;
	border-collapse: collapse;
	line-height: 1.75;
	text-align: left;
}
.form-main tr,
.form-main th,
.form-main td {
	display: block;
	width: 100%;
	vertical-align: top;
	text-align: left;
	border: none;
	font-weight: 600;
}
.form-main tr {
	margin: 0 0 2em;
}
.form-main tr {}
.form-main th,
.form-main td {
	padding: 0.5em 0;
	font-weight: normal;
}
.form-main th {
	font-size: 1.125em;
}
.form-main input[type="text"],
.form-main input[type="email"],
.form-main input[type="tel"],
.form-main select,
.form-main textarea {
	width: 100%;
	padding: 1.005em;
	border-radius: 0;
	background-color: #f2f2f2;
}
.mwform-tel-field input[type="text"], 
.mwform-zip-field input[type="text"] {
	display: inline-block;
	vertical-align: unset;
}
/*.form-main .horizontal-item + .horizontal-item {
	margin-left: 0px;
	white-space: nowrap;
}*/
.form-main textarea {
	width: 100%;
}
.form-main select {
	max-width: 250px;
	font-size: inherit;
}
.form-main .vertical label {
	display: block;
}
.form-main ::placeholder {
	color: #aaa;
}
.form-main em {
	display: inline-block;
	vertical-align: middle;
	margin: 0 0 0 0.75em;
	padding: 0.25em 0.5em;
	background-color: #5b4d45;
	color: #fff;
	font-size: 0.75em;
	line-height: 1.0;
}
.form-main .error {
	display: block;
	margin: .5em 0 0;
	padding: .5em 1em;
	border: solid 1px #F00;
	background-color: #fbf1f1;
	color: #f00;
	border-radius: 0;
}
.form-main a {
	color: #ff8c00;
}

@media screen and (min-width: 0px) and (max-width: 599px) {
	/* MW WP Form */
	.form-main th,
	.form-main td { width: 100% !important; padding: 5px 0 !important; font-size: 1em !important; background-color: transparent; border: none !important;}

	.form-main input,
	.form-main input[type="text"],
	.form-main input[type="email"],
	.form-main textarea,
	.form-main select,
	.form-main input[type*="submit"] { font-size: 16px !important;}
	.form-main input[type="text"],
	.form-main input[type="email"],
	.form-main textarea { padding: 0.75em; width: 100%;}
	.form-main select { padding: 0.75em; width: auto;}
	.form-main input[type="radio"] { padding: 0 !important;}
	.form-main input[type*="submit"] { width: 100% !important;}
}

.form-main input[type="submit"] {
	border-radius: 0;

	position: relative;
	display: block;
	padding: 1.0em 2em;
	display: inline-block;
	min-width: 350px;
	background: url(assets/images/icon-arrow-right-button.png) no-repeat right 2em center;
	background-size: 30px auto;
	background-color: #5b4d45;
	color: #fff;
	font-size: 1.8rem;
	text-align: left;
	text-decoration: none;
		-webkit-transition: all ease-out 0.2s;
			 -moz-transition: all ease-out 0.2s;
				-ms-transition: all ease-out 0.2s;
						transition: all ease-out 0.2s;
}
.form-main input[type="submit"]:hover	{
	opacity: 0.8;
	background-position: right 1.5em center;
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.form-main input[type="submit"] {
		font-size: 1.0em;
		padding: 0.0em 1.5em;
		height: 60px;
		line-height: 55px;
	}
	.form-main input[type="submit"]::before {}
}
 
/* =SUBPAGES - THANKS [お問い合わせ完了]
----------------------------------------------------- */
.sub-thanks {
	text-align: center;
}
.sub-thanks .section {
	padding-top: 0;
}
.sub-thanks .title-italic {
	margin: 0 0 10px;
}

/* =SUBPAGES - RECRUIT [採用情報]
----------------------------------------------------- */
.sub-recruit-fv {
	background: url(assets/images/sub-recruit-fv.jpg) no-repeat center;
	background-size: cover;
}
.sub-recruit-fv,
.sub-recruit-fv .wrapper,
.sub-recruit-fv .wrapper .inner {
	height: 800px;
}
.sub-recruit-fv .inner {
	position: relative;
	display: flex;
	justify-content: center;
}
.sub-recruit-fv .inner .tagline {;
	position: absolute;
	left: 0;
	right: 0;
	bottom: 6.25vw;
	margin: 0 auto;
	color: #fff;
	text-shadow: 2px 3.464px 2px rgba(6, 0, 1, 0.2);
	text-align: center;
}
.sub-recruit-fv .inner .tagline .title {
	font-size: 6.4rem;
	font-weight: bold;
	line-height: 1.2;
}
.sub-recruit-fv .inner .tagline .title-subenglish {}

/* 採用情報 - メインコンテンツ */
.sub-recruit-main {
}
.sub-recruit-main .introduction {
	text-align: center;
}
.sub-recruit-main .figure {
	padding: 0 6.25vw;
	text-align: center;
}
.sub-recruit-main .figure img {}
.sub-recruit-main .figure #lottie {
	width: calc(100% + 200px);
    max-width: 1920px;
    margin: auto;
}

/* 採用情報 - バリュー */
.sub-recruit-main .value-lineup .lineup .numbering,
.sub-recruit-main .value-lineup .lineup .title {}

.recruit-value-lineup {}
.recruit-value-lineup .lineup {} 
.recruit-value-lineup {}
.recruit-value-lineup .lineup {
	overflow: hidden;
}
.recruit-value-lineup .lineup {
}
.recruit-value-lineup .lineup a {
	display: block;
	width: 100%;
	height: 100%;
	color: inherit;
	text-decoration: none;
}
.recruit-value-lineup .lineup a:hover {
	opacity: 1;
	opacity: 0.7;
}
.recruit-value-lineup .lineup .inner {
	position: relative;
}
.recruit-value-lineup .lineup .inner .thumbnail {
	position: relative;
	overflow: hidden;
	padding-bottom: 100%;
	background-color: #000;
}
.recruit-value-lineup .lineup .inner .thumbnail::before {
	content: "";
	position: absolute;
	z-index: 2;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 70%;
	background-image: -moz-linear-gradient( 90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	background-image: -ms-linear-gradient( 90deg, rgba(0,0,0,1) 0%, rgba(0,0,0,0) 100%);
	opacity: 0.5;
}

.recruit-value-lineup .lineup .inner .thumbnail img {
	position: absolute;
	z-index: 1;
	object-fit: cover;
	width: 100%;
	height: 100%;
	opacity: 0.9;
	-webkit-transition: all ease-out 0.2s;
	 -moz-transition: all ease-out 0.2s;
	-ms-transition: all ease-out 0.2s;
			transition: all ease-out 0.2s;

}
.recruit-value-lineup .lineup a:hover .inner .thumbnail img {}
.recruit-value-lineup .lineup .inner .text {
	position: absolute;
	z-index: 2;
	left: 0;
	bottom: 0;
	width: 100%;
	padding: 20px;
	color: #fff;
}
.recruit-value-lineup .lineup .inner .text p {
	line-height: 1.8;
	font-size: 90%;
}
.recruit-value-lineup .lineup .inner .text .numbering {
	margin: 0 0 0;
	font-family: 'Boston', sans-serif;
	font-size: 1.2rem;
	letter-spacing: 0.05em;
}
.recruit-value-lineup .lineup .inner .text .title {
	display: inline-block;
	margin: 0 0 10px;
	padding: 0 0 0.25em;
	border-bottom: solid 1px #fff;
	font-size: 2.4rem;
	font-weight: normal;
	line-height: 1.5;
}

/* 採用情報 - 募集職種一覧 */
.sub-recruit-jobs {
	position: relative;
}
.bg-gradient-jobs {
	content: "";
	position: absolute;
	z-index: -1;
	top: -25%;
	left: -70%;
	width: 2380px;
	height: 2141px;
	background: url(assets/images/bg-gradient-jobs.jpg) no-repeat left center;
	background-size: contain;
	mix-blend-mode: multiply;
	opacity: 1;
}

/* 採用情報 - エントリーはこちら */
.action-joinus {
	text-align: center;
}
.action-joinus .inner {}
.action-joinus .title-image {}
.title-image.joinus {}
.action-joinus .inner ul.list-button {
	margin: 0 0 20px;
}
.action-joinus .inner ul.list-button li {
	margin: 0 20px 20px;
}

@media screen and (min-width: 600px) {
	.sub-recruit-mission .image-content { align-items: center; }
	.sub-recruit-mission .image-content>.image { width: calc(100% - 560px); padding-left: 80px;}
	.sub-recruit-mission .image-content>.content { width: 560px;}
	.sub-recruit-mission .image-content>.image {
		padding-top: 0;
	}

	.sub-recruit-main .value-lineup .lineup {
		text-align: center;
	}
	.sub-recruit-main .value-lineup .lineup .numbering,
	.sub-recruit-main .value-lineup .lineup .title {
		display: block;
		margin-bottom: 10px;
		line-height: 1.5;
	}
	.recruit-value-lineup.col-2>.lineup {
	    width: 48%;
	    margin-right: 2%;
	    margin-bottom: 2%;
	}
	.recruit-value-lineup.col-2>.lineup .inner .thumbnail {
		padding-bottom: 75%;
	}
	.recruit-value-lineup.col-2>.lineup .inner .text .title {
		font-size: 4.2rem;
	}
	.recruit-value-lineup.col-4>.lineup {
	    width: 24%;
	    margin-right: 1%;
	    margin-bottom: 1%;
	}

	.sub-recruit-jobs .image-content { align-items: flex-start; flex-direction: row-reverse; }
	.sub-recruit-jobs .image-content>.image { width: calc(600px + 120px); margin-right: -120px }
	.sub-recruit-jobs .image-content>.content { width: 520px }
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.sub-recruit-fv,
	.sub-recruit-fv .wrapper,
	.sub-recruit-fv .wrapper .inner {
		height: 50vh;
	}
	.sub-recruit-fv .inner .tagline .title {
		font-size: 3.0rem;
	}
	.sub-recruit-main .figure #lottie {
		margin: 0;
	}
	.sub-recruit-jobs .image-content.responsive>.image {
		margin: 0 -6.25vw 6.25vw;
		width: 100vw;
	}
	.sub-recruit-jobs .image-content.responsive>.image img {
		max-width: 100vw;
	}
	.title-image.jobs {
		width: 30%;
	}
	.bg-gradient-jobs {
		width: 1190px;
		height: 1070px;
	}
	.title-image.joinus img {
		width: 190px;
	}
}


/* 募集職種一覧スライダー（※「採用情報」の下層ページでも共通） */
.jobs-slider {}
.jobs-lineup {}
.jobs-lineup .lineup {
	position: relative;
	background-color: #fff;
	box-shadow: 5px 8.66px 30px 0px rgba(255, 182, 143, 0.25);
}
.jobs-lineup .lineup>* {}
.jobs-lineup .lineup a {
	text-decoration: none;
	color: inherit;
}
.jobs-lineup .lineup a:hover {
	opacity: 1;
}
.jobs-lineup .lineup .image {
	overflow: hidden;
	position: relative;
	padding-bottom: 66.66%;
}
/*.jobs-lineup .lineup:first-child::before {
	content: "NEW";
	position: absolute;
	z-index: 1;
	right: -1em;
	top: -1em;
	background-color: #54c3f1;
	color: #fff;
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.10em;
	text-align: center;

	padding: 0.75em 2em;

	width: 70px;
	height: 70px;
	line-height: 70px;
	padding: 0;
	border-radius: 50%;
}*/
.jobs-lineup .lineup .image img {
	position: absolute;
	object-fit: cover;
	width: 100%;
	height: 100%;
-webkit-transition: all ease-out 0.2s;
	 -moz-transition: all ease-out 0.2s;
		-ms-transition: all ease-out 0.2s;
				transition: all ease-out 0.2s;
}
.jobs-lineup .lineup a:hover .image img {
	opacity: 1;
		transform: scale(1.05);
		-webkit-transform: scale(1.05);
		-moz-transform: scale(1.05);
		-ms-transform: scale(1.05);
		-o-transform: scale(1.05);
}
.jobs-lineup .lineup .content {
	padding: 3em;
	font-size: 1.4rem;
}
.jobs-lineup .lineup .content>* {}
.jobs-lineup .lineup .content .meta {
	margin: 0 0 20px;
	color: #aaa;
	font-size: 1.4rem;
}
.jobs-lineup .lineup .content .meta>* {
	display: inline-block;
	vertical-align: top;
}
.jobs-lineup .lineup .content .location {
	float: right;
	padding-left: 20px;
	background: url(assets/images/icon-marker.png) no-repeat left center;
	background-size: 13px auto;
	line-height: 1.5;
}
.jobs-lineup .lineup .content .title {
	margin: 0 0 15px;
	font-size: 2.0rem;
	line-height: 1.25;
}

.jobs-lineup .lineup ul.list-tag {
	font-size: 0;
	letter-spacing: 0;
}
.jobs-lineup .lineup ul.list-tag li {
	display: inline-block;
	vertical-align: top;
	margin: 0 10px 0 0;
	line-height: 1.5;
	color: #aaa;
	font-size: 1.4rem;
	font-weight: normal;
	text-decoration: none;
}

.jobs-lineup .lineup .content .text {
	margin: 0 0 20px;
	font-size: .8em;
}
.jobs-lineup .lineup .button {
	text-align: center;
}

.jobs-lineup .lineup a:hover .button-viewmore {
	background-color: #003953;
	color: #fff;
}


@media screen and (min-width: 0px) and (max-width: 599px) {
	.jobs-lineup .lineup .content {
		padding: 6vw;
	}
	.jobs-lineup .lineup .content .meta {
		font-size: 1.2rem;
	}
	.jobs-lineup .lineup .content .title {
		font-size: 1.7rem;
	}
}


	/* SWIPER.JS
	-------------------------------------------------- */
	.jobs-slider .swiper-grandparent {
		position: relative !important;
		overflow: hidden;
		width: 100%;
	}

	.jobs-slider .swiper-grandparent .swiper-parent {}

	.jobs-slider .swiper-grandparent .swiper-parent .swiper-container {
		/* Prev & Next をフル画面にしたいとき
			position: static !important; */
	}

	.jobs-slider .swiper-grandparent .swiper-parent .swiper-container .swiper-slide {}

	.jobs-slider .swiper-grandparent .swiper-parent .swiper-container .swiper-slide-active {
		opacity: 1;
	}

	/* 一枚フルサイズver. （swiper.min.css を上書き）
			.jobs-slider .swiper-parent {
				max-width: 1080px;
			}
			.jobs-slider .swiper-grandparent .swiper-parent .swiper-container {}
			*/

	/* 左右のスライドを見せるver. （swiper.min.css を上書き） */
	.jobs-slider .swiper-grandparent .swiper-parent {
		max-width: 100%;
	}

	.jobs-slider .swiper-grandparent .swiper-parent .swiper-container {
		overflow: visible !important;
	}

	/* PREV & NEXT [矢印ナビ] */
	.jobs-slider .swiper-button-prev,
	.jobs-slider .swiper-container-rtl .swiper-button-next,
	.jobs-slider .swiper-button-next,
	.jobs-slider .swiper-container-rtl .swiper-button-prev {
		background-size: 100% auto !important;
	}

	.jobs-slider .swiper-button-prev,
	.jobs-slider .swiper-container-rtl .swiper-button-next {
		background-image: url(assets/images/icon-arrow-left-slider.png) !important;
	}

	.jobs-slider .swiper-button-next,
	.jobs-slider .swiper-container-rtl .swiper-button-prev {
		background-image: url(assets/images/icon-arrow-right-slider.png) !important;
	}

	/* PAGINATION [ページャー] */
	.jobs-slider .swiper-container .swiper-pagination {
		position: static;
		padding: 20px 0 0;
	}

	.jobs-slider .swiper-container .swiper-pagination-bullet {
		background-color: #ccc !important;
		opacity: 1 !important;
	}

	.jobs-slider .swiper-container .swiper-pagination-bullet-active {
		background-color: #aaa !important;
	}

	/* 矢印ナビをスライダーの左右に配置する ver.
			.jobs-slider .swiper-button-prev,
			.jobs-slider .swiper-container-rtl .swiper-button-next,
			.jobs-slider .swiper-button-next,に
			.jobs-slider .swiper-container-rtl .swiper-button-prev {
				top: 0 !important;
				bottom: 0 !important;
				margin: auto !important;
				width: 14px !important;
				height: 100% !important;
			}
			.jobs-slider .swiper-button-prev,
			.jobs-slider .swiper-container-rtl .swiper-button-next {
				left: 3% !important;
			}
			.jobs-slider .swiper-button-next,
			.jobs-slider .swiper-container-rtl .swiper-button-prev {
				right: 3% !important;
			}
			*/

	/* 矢印ナビとページャーを一緒に配置する ver. */
	.jobs-slider .swiper-controls {
		/* 親要素 .swiper-controls を追加する */
		position: relative;
		display: block;
		/* 左右寄せ */
		width: 100%;
		height: 60px;
		margin: 30px auto 0;
	}

	.jobs-slider .swiper-controls .swiper-button-prev,
	.jobs-slider .swiper-controls .swiper-container-rtl .swiper-button-next,
	.jobs-slider .swiper-controls .swiper-button-next,
	.jobs-slider .swiper-controls .swiper-container-rtl .swiper-button-prev {
		position: absolute !important;
		top: 0 !important;
		bottom: 0 !important;
		margin: auto !important;

		/* 矢印のサイズ */
		width: 26px !important;
		height: 48px !important;
	}

	.jobs-slider .swiper-controls .swiper-button-prev,
	.jobs-slider .swiper-controls .swiper-container-rtl .swiper-button-next {
		left: 0;
	}

	.jobs-slider .swiper-controls .swiper-button-next,
	.jobs-slider .swiper-controls .swiper-container-rtl .swiper-button-prev {
		right: 0;
	}

	.jobs-slider .swiper-container .swiper-pagination {
		padding: 22px 0;
	}

	.jobs-slider .swiper-container .swiper-pagination-bullet {
		margin: 0 5px;
	}

	@media screen and (min-width: 0px) and (max-width: 599px) {
		.jobs-slider .swiper-container {}

		.jobs-slider .swiper-slide {}

		.jobs-slider .swiper-slide-active {
			opacity: 1;
		}

		/* フル画面 ver.*/
		.jobs-slider .swiper-grandparent {
			padding: 0 !important;
		}

		.jobs-slider .swiper-grandparent .wrapper {
			padding: 0 !important;
		}

		.jobs-slider .swiper-button-next,
		.jobs-slider .swiper-button-prev {
			/*display: none !important;*/
		}

		/* ページャー */
		.jobs-slider .swiper-controls {
			margin: 3.125vw 0;
			width: 100%;
		}

		/* 矢印ナビ */
		.jobs-slider .swiper-controls .swiper-button-prev,
		.jobs-slider .swiper-controls .swiper-container-rtl .swiper-button-next,
		.jobs-slider .swiper-controls .swiper-button-next,
		.jobs-slider .swiper-controls .swiper-container-rtl .swiper-button-prev {
			width: 14px !important;
			height: 26px !important;
		}
	}


/* =SUBPAGES - RECRUIT - JOBS [募集職種一覧]
----------------------------------------------------- */
.sub-jobs {}
.sub-jobs .section {
	padding-top: 0;
}
@media screen and (min-width: 600px) {
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}

/* =SUBPAGES - RECRUIT - JOBS - DETAIL [募集職種一覧 - 詳細ページ]
----------------------------------------------------- */
.sub-jobs-detail {
	position: relative;
	z-index: 2;
}
.sub-jobs-detail .section {
	padding-top: 0;
	padding-bottom: 0;
}

/* 募集要項 */
.jobs-header {}
.jobs-header .image-content>.image {}
.jobs-header .image-content>.content {}
.jobs-header .content {}
.jobs-header .content>* {}
.jobs-header .content .meta {
	margin: 0 0 20px;
	color: #aaa;
	font-size: 1.4rem;
}
.jobs-header .content .meta>* {
	display: inline-block;
	vertical-align: top;
}
.jobs-header .content .meta>*:not( :last-child ) {
	margin: 0 20px 0 0;
}
.jobs-header .content .location {
	padding-left: 20px;
	font-size: 1.6rem;
	background: url(assets/images/icon-marker.png) no-repeat left center;
	background-size: 13px auto;
	line-height: 1.5;
}
.jobs-header .content .title {
	font-size: 2.0em;
	line-height: 1.5;
}

.jobs-header .content ul.list-tag {
	font-size: 0;
	letter-spacing: 0;
}
.jobs-header .content ul.list-tag li {
	display: inline-block;
	vertical-align: top;
	margin: 0 10px 0 0;
	padding: 0.5em 1.5em;
	line-height: 1;
	font-size: 1.4rem;
	font-weight: normal;
	text-decoration: none;

	background-color: transparent;
	border: solid 1px #666;
	color: #666;
	border-radius: 1.5em;
}

.jobs-main {}

.frame {
	padding: 3em;
}
.frame:not( :last-child ) {
	margin: 0 0 2.0em;
}
.frame-gray {
	background-color: #f6f6f6;
	background-color: rgba(202, 193, 186, 0.2);
}

ul.list-circle li {
	position: relative;
	padding-left: 2.0em;
	background: url(assets/images/icon-list-circle.png) no-repeat left center;
	background-size: 15px auto;
	line-height: 1.8;
}
ul.list-circle li:not( :last-child ) {
	margin: 0 0 1.0em;
}

table.table-jobs {}
table.table-jobs tr {
	border-bottom: solid 2px #fff;
}
table.table-jobs th,
table.table-jobs td {
	border: none;
	letter-spacing: 0;
	vertical-align: middle;
}
table.table-jobs th {
}

.sub-joblist-other {}
.sub-joblist-other .section {
	padding-top: 0;
}

@media screen and (min-width: 600px) {
	.jobs-header .image-content>.image { width: 540px;}
	.jobs-header .image-content>.content { width: 580px; }
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	table.table-jobs tr {
		display: block;
		padding-bottom: 2em;
		margin-bottom: 2em;
	}
	table.table-jobs th, 
	table.table-jobs td {
		display: block;
		width: 100%;
		padding: 0;
	}
	table.table-jobs th {
		padding-bottom: 10px;
	}
}


/* =SUBPAGES - RECRUIT - ENTRY [応募フォーム]
----------------------------------------------------- */
.sub-entry {
	position: relative;
	z-index: 1;
	overflow: hidden;
}
.sub-entry .section {}
.sub-entry .introduction {}
@media screen and (min-width: 600px) {
	.sub-entry .whitebox {
		position: relative;
		width: calc(1200px + 240px);
		margin-right: -240px;
		padding-right: 240px;
	}
	.sub-entry .whitebox .bg-gradient-yellowpink {
		z-index: 1;
		opacity: 0.5;
	}
	.sub-entry .whitebox .section {
		position: relative;
		z-index: 2;
	}
}
@media screen and (min-width: 0px) and (max-width: 599px) {
}

/* =SUBPAGES - RECRUIT - ENTRY - THANKS [応募フォーム - 送信完了]
----------------------------------------------------- */
.sub-entry-thanks {
	position: relative;
	z-index: 2;
}
.sub-entry-thanks .section {
	padding-top: 0;
}
.title-image.thankyou {}

/* そのほかの募集職種一覧 */
.sub-jobs-other {
	position: relative;
	z-index: 1;
	mix-blend-mode: multiply;
}
.sub-jobs-other .title-italic {
	margin: 0;
}
.sub-jobs-other .bg-gradient-jobs {
	top: auto;
	left: auto;
	right: -60%;
	bottom: -25%;
}

@media screen and (min-width: 600px) {
	.sub-jobs-other .image-content { align-items: center; }
	.sub-jobs-other .image-content>.image { width: 50%; }
	.sub-jobs-other .image-content>.content { width: 50%; }
}
@media screen and (min-width: 0px) and (max-width: 599px) {
	.title-image.thankyou {
		width: 270px;
	}
}
