@charset "UTF-8";

html,
body {height: 100%;}

body {
	-webkit-text-size-adjust: 100%;
	padding: 0;
	margin: 0;
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Osaka","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif,verdana;
	font-feature-settings: "palt" 1;
	-webkit-font-feature-settings: "palt" 1;
        letter-spacing: .07em;
}

/* default */

div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
	word-break: break-all;
	font-size: inherit;
	width: 100%;
}

fieldset,img {border: 0;}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
	font-style: normal;
	font-weight: normal;
}

li {list-style: none;}

caption,th {text-align: left;}

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

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

abbr {
	border: 0;
	font-variant: normal;
}

sup {vertical-align: text-top;}

sub {vertical-align: text-bottom;}

input,
textarea,
select {
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
}

input,textarea,select {*font-size: 100%;}

legend {color: #000;}

select,input,button,textarea {font: 99% arial, helvetica, clean, sans-serif;}

pre,
code,
kbd,
samp {
	font-family: monospace;
	*font-size: 108%;
	line-height: 100%;
}

.aligncenter {text-align: center;}

figure {
	padding: 0;
	margin: 0;
}

img {
	vertical-align: bottom;
	line-height: 1;
	max-width: 100%;
	height: auto;
}

input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
    border: 1px solid #3EB370;
}

input[type="submit"]::-webkit-search-decoration,input[type="button"]::-webkit-search-decoration {display: none;}

input[type="submit"]::focus,input[type="button"]::focus {outline-offset: -2px;}

a {
	text-decoration: none;
	color: #000;
	transition: all .25s ease;
}

* {box-sizing: border-box;}


/* common item ---------------------------------------*/

.clearfix::after,
.inner::after {
	visibility: hidden;
	display: block;
	font-size: 0;
	content: " ";
	clear: both;
	height: 0;
}

.sp {display: none;}

.spbr {display: none;}

@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop,.foo {color: red}
	/* IE11 */
}

@media all and (-ms-high-contrast:none) {
	.foo {color: green}
	/* IE10〜Edge */
}

/* layout ---------------------------------------*/

header {
	position: relative;
	height: 108px;
}

.inner {
	max-width: 1000px;
	margin: 0 auto;
}

/* header ---------------------------------------*/

header {position: relative;}
.privacy .header-inner {
    border-bottom: 1px solid #999999;
}
.header-inner {
	height: 100%;
	position: relative;
}

.header-logo {
	display: block;
	background: url('../img/common/logo.svg') center center no-repeat;
	width: 266px;
	height: 54px;
	text-indent: -999em;
	overflow: hidden;
	position: absolute;
	left: 70px;
	top: 50%;
	transform: translate(0, -50%);
}

.header-recruit {
	position: absolute;
	right: 0;
	top: 0;
	width: 220px;
	height: 100%;
}

.header-recruit a {
	display: block;
	background: #3EB370;
	color: #fff;
	width: 100%;
	height: 100%;
	transition: all .25s ease;
}

.header-recruit a:hover {opacity: 0.7;}

.header-recruit a span {
	position: absolute;
	left: 50%;
	top: 46%;
	transform: translate(-50%, -50%);
	font-size: clamp(18px,2vw,20px);
	font-weight: bold;
	padding: 0 25px;
	line-height: 1;
}

.header-recruit a span::after {
	display: block;
	content: '';
	background-image: url('../img/common/recruit_arrow.svg');
	background-size: 100%;
	width: 14px;
	height: 17px;
	position: absolute;
	right: 0px;
	top: 57.5%;
	transform: translate(0, -50%);
}


/* gnav ---------------------------------------*/

.gnav {
	position: absolute;
	right: 232.5px;
	top: 54%;
	transform: translate(0, -50%);
	width: 680px;
}

.gnav-list {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}

.gnav-list-item {
	border-left:.25px solid rgb(148 148 149 / 70%);
	text-align: center;
	width: 20%;
}

.gnav-list-item:nth-child(1) {border-left: none;}

.gnav-list-item a {
	display: block;
	height: 46px;
	text-align: center;
	line-height: 1;
	position: relative;
	font-size: 15px;
	font-weight: bold;
	padding-top: 8px;
	transition: all .25s ease;
}

.gnav-list-item a:hover {opacity:0.7;}

.gnav-list-item a span {
	position: absolute;
	left: 0%;
	bottom: 5px;
	width: 100%;
	font-size: 12px;
	color: #3EB370;
    font-weight: 400;
    font-family: 'Roboto', sans-serif;
}

#openmenu {display: none;}


/* footer ---------------------------------------*/

footer {
	padding: 20px 0 30px;
	background: #3EB370;
	color: #fff;
}

footer a {color: #fff;}
footer a:hover{text-decoration:underline;}

.footer-inner {
	max-width: 1080px;
	margin: 0 auto;
	position: relative;
}

.footer-nav-list {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin-bottom: 25px;
}

.footer-nav-list li:not(:first-child) {border-left: 1px solid #fff;padding-left: 0px;}
.footer-nav-list li:last-child a {padding-right: 0px;}

.footer-nav-list li a {
	display: block;
	line-height: 1;
	padding: 0 40px;
}

.footer-subnav-list {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}

.footer-subnav-list li {font-size: 12px}
.footer-subnav-list li:not(:first-child) {border-left: 1px solid #fff;padding-left: 0px;}

.footer-subnav-list li a {
	display: block;
	line-height: 1;
	padding: 0 20px;
	font-size: 14px;
    font-family: 'Roboto', sans-serif;
    letter-spacing: 0.03em;
}

.footer-logo {
	text-align: center;
	padding-top: 90px;
}

.footer-logo a{
	display: inline-block;
	transition: all .25s ease;
}

.footer-logo a:hover {opacity:0.7;}


/* margin ---------------------------------------*/

.mt-0 {margin-top: 0px !important;}
.mt-5 {margin-top: 5px !important;}
.mt-10 {margin-top: 10px !important;}
.mt-15 {margin-top: 15px !important;}
.mt-20 {margin-top: 20px !important;}
.mt-25 {margin-top: 25px !important;}
.mt-30 {margin-top: 30px !important;}
.mt-35 {margin-top: 35px !important;}
.mt-40 {margin-top: 40px !important;}
.mt-45 {margin-top: 45px !important;}
.mt-50 {margin-top: 50px !important;}
.mt-55 {margin-top: 55px !important;}
.mt-60 {margin-top: 60px !important;}
.mt-65 {margin-top: 65px !important;}
.mt-70 {margin-top: 70px !important;}
.mt-75 {margin-top: 75px !important;}
.mt-80 {margin-top: 80px !important;}
.mt-85 {margin-top: 85px !important;}
.mt-90 {margin-top: 90px !important;}
.mt-95 {margin-top: 95px !important;}
.mt-100 {margin-top: 100px !important;}
.mb-0 {margin-bottom: 0px !important;}
.mb-5 {margin-bottom: 5px !important;}
.mb-10 {margin-bottom: 10px !important;}
.mb-15 {margin-bottom: 15px !important;}
.mb-20 {margin-bottom: 20px !important;}
.mb-25 {margin-bottom: 25px !important;}
.mb-30 {margin-bottom: 30px !important;}
.mb-35 {margin-bottom: 35px !important;}
.mb-40 {margin-bottom: 40px !important;}
.mb-45 {margin-bottom: 45px !important;}
.mb-50 {margin-bottom: 50px !important;}
.mb-55 {margin-bottom: 55px !important;}
.mb-60 {margin-bottom: 60px !important;}
.mb-65 {margin-bottom: 65px !important;}
.mb-70 {margin-bottom: 70px !important;}
.mb-75 {margin-bottom: 75px !important;}
.mb-80 {margin-bottom: 80px !important;}
.mb-85 {margin-bottom: 85px !important;}
.mb-90 {margin-bottom: 90px !important;}
.mb-95 {margin-bottom: 95px !important;}
.mb-100 {margin-bottom: 100px !important;}
.mb-110 {margin-bottom: 110px !important;}
.mb-120 {margin-bottom: 120px !important;}
.mb-130 {margin-bottom: 130px !important;}
.mb-140 {margin-bottom: 140px !important;}


/* width ---------------------------------------*/

.wid-10per {width: 10% !important;}

.wid-15per {width: 15% !important;}

.wid-20per {width: 20% !important;}

.wid-25per {width: 25% !important;}

.wid-30per {width: 30% !important;}

.wid-40per {width: 40% !important;}

.wid-50per {width: 50% !important;}

.wid-60per {width: 60% !important;}

.wid-70per {width: 70% !important;}

.wid-80per {width: 80% !important;}

.wid-100per {width: 100% !important;}

.wid-300 {width: 300px !important;}


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

	.spbr {display: none;}
}


/* small pc */
@media screen and (min-width: 981px) and (max-width: 1250px) {

	.header-recruit {width: 15%;}

	.gnav {
		right: 15%;
		width: 52%;
	}

	.header-logo {width: 22%;}

}


@media screen and (max-width: 980px) {


	/* default */
	img {max-width: 100%;}

	a img {opacity: 1;}

	* {box-sizing: border-box;}

	/* common item */
	.pc {display: none !important;}

	.pcbr {display: none}

	.sp {display: block}

	.spbr {display: block;}

	.headerInner,
	.footerInner,
	.inner {
		min-width: 0;
		width: 100%;
	}


	/* header ---------------------------------------*/

	header {
		height: 60px;
		width: 100%;
		background-color: #fff;
		position: fixed;
		left: 0px;
		top: 0px;
		z-index: 1000;
		padding: 0px 0 0 0;
	}

	.header-inner {
		width: auto;
		padding: 0px 0 0px 0;
		text-align: center;
		background: #fff;
		position: relative;
		z-index: 200;
	}

	.header-logo {
		background: url('../img/common/logo.svg') center center no-repeat;
		width: 180px;
		height: 60px;
		left: 15px;
	}

	.overlay {
		content: '';
		display: block;
		position: fixed;
		width: 100%;
		height: 300px;
		background: rgba(0, 0, 0, 0.5);
		left: 0;
		top: 0;
		z-index: 6;
	}

	#openmenu {
		display: block !important;
		width: 40px;
		height: 40px;
		text-indent: -99em;
		overflow: hidden;
		position: absolute;
		right: 10px;
		top: 15px;
	}

	#openmenu.is-open {right: 0px}

	#openmenu span {
		content: '';
		display: block;
		width: 25px;
		height: 2px;
		background: #000;
		position: absolute;
		right: 0;
		transition: all .25s ease;
	}

	#openmenu span:nth-child(1) {
		top: 4px;
		width: 25px;
	}

	#openmenu span:nth-child(2) {
		top: 14px;
		width: 20px;
	}

	#openmenu span:nth-child(3) {
		top: 24px;
		width: 15px;
	}

	#openmenu.is-open span:nth-child(1) {
		transform: rotate(45deg);
		top: 10px;
		left: 2px;
		width: 25px;
	}

	#openmenu.is-open span:nth-child(2) {
		opacity: 0;
		left: -25px;
	}

	#openmenu.is-open span:nth-child(3) {
		transform: rotate(-45deg);
		top: 10px;
		left: 2px;
		width: 25px;
	}

	.bodyfixed {
		position: fixed;
		width: 100%;
		height: 100%;
	}

	/* gnav ---------------------------------------*/

	.gnav {
		border: none;
		background: #fff;
		padding-bottom: 30px;
		overflow: auto;
		z-index: 100;
		position: absolute;
		left: 0px;
		top: 0px;
		width: 100%;
		transition: all .25s ease;
		transform: translate3d(0, -100%, 0);
	}

	.gnav.is-active {
		transform: translate3d(0, 0, 0);
		opacity: 1;
	}

	.gnav-list {
		display: block;
		width: auto;
		border-left: none;
		padding: 70px 0 20px;
		text-align: center;
	}

	.gnav-list-item {
		display: block;
		width: 100%;
		border: none;
		margin-bottom: 10px
	}

	.gnav-list-item a {
		width: auto;
		height: auto;
		line-height: 1.0;
		font-size: 15px;
		font-weight: bold;
		padding: 15px 20px;
	}

	.gnav-list-item a span {bottom: 0px;}

	/* footer ---------------------------------------*/

	footer {padding: 10px 0 15px 0;}

	.footer-subnav-list li {font-size: 10px}

	.footer-subnav-list li a {
		padding: 0 10px;
		font-size: 11px;
	}

	.footer-logo {padding-top: 20px;}

	.footer-logo img {width: 180px;}

}
