@charset "UTF-8";

/* -----------------------------------------------
Table of Contents (common css)
--------------------------------------------------
0. Foundation
	 0-1. Reset
	 0-2. Base
	 0-3. Config
1. Layout
	 1-1. #l-document
	 1-2. #l-header
	 1-3. #l-container
				1-3-1. #l-main
				1-3-2. #l-sub
	 1-4. #l-footer
	 1-5. #l-navGlobal
	 1-6. pageHeader
	 1-7. layoutType
2. Object
	 2-1. Component a.k.a Module
				2-1-1.  Wrap     [wrp-***]
				2-1-2.  Box      [box-***]
				2-1-3.  Table    [tbl-***]
				2-1-4.  Headings [hdg-lv*]
				2-1-5.  Nav      [nav-***]
				2-1-6.  List     [lst-***]
				2-1-7.  Button   [btn-***]
				2-1-8.  Anchor   [acr-***]
				2-1-9.  Text     [txt-***]
				2-1-10. Icon     [icn-***]
				2-1-11. Label    [lbl-***]
				2-1-12. Form     [frm-***]
				2-1-13. Error    [err-***]
				2-1-14. Panel    [pnl-***]
				2-1-15. Media    [mda-***]
				2-1-16. UI
	 2-2. Utility
				2-2-1. clearfix
				2-2-2. margin,padding [mb10,pt20]
				2-2-3. Object-Oriented CSS
				2-2-4. Grid System [grid-***]
				2-2-5. CSS Animation [act-***]
				2-2-6. WebFont
	 2-3. State [is-***]
	 2-4. OverLayerConfig [z-index]
	 2-5. Project

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

/* -----------------------------------------------
 [0. Foundation]
-------------------------------------------------- */

/* 0-1. Reset
-------------------------------------------------- */
html{
	font-family: sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}
body{
	margin: 0;
	padding: 0;
}
a{
	background-color: transparent;
}
a:focus{
	outline: thin dotted;
}
a:active,
a:hover{
	outline-width: 0;
}
html,div,span,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,code,del,em,img,strong,
dl,dt,dd,ol,ul,li,
fieldset,form,label,
table,caption,tbody,tfoot,thead,tr,th,td{
	margin: 0;
	padding: 0;
	vertical-align: baseline;
}
article,aside,footer,header,small,nav,section,figure,figcaption,main{
	margin: 0;
	padding: 0;
	display: block;
	vertical-align: baseline;
	list-style: none;
	background-color: transparent;
	outline: none;
}
audio,canvas,progress,video{
	display: inline-block;
}
audio:not([controls]){
	display: none;
	height: 0;
}
progress{
	vertical-align: baseline;
}
template,
[hidden]{
	display: none;
}
ul,ol{
	list-style-type: none;
}
table{
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
}
img{
	line-height: 1;
	vertical-align: baseline;
	outline: none;
}
a img{
	border: none;
	outline: none;
}
sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}
hr{
	box-sizing: content-box;
	height: 0;
}
dt,dd,li,
th,td,
input,textarea{
	text-align: left;
	vertical-align: top;
}
button{
	border: none;
}
input,textarea,button{
	margin: 0;
	padding: 0;
}
input{
	border: 1px solid #dad7d3;
/*	height: 24px;*/
	padding: 2px 5px;
}
textarea{
	border: 1px solid #dad7d3;
	height: 78px;
/*	resize: none;*/
}
button,label{
	background-color: transparent;
	cursor: pointer;
}
button,select{
	text-transform: none;
}
button,
input[type="button"],
input[type="reset"],
input[type="submit"]{
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled],
input[disabled]{
	cursor: default;
}
input[type="checkbox"],
input[type="radio"]{
	box-sizing: content-box;
	padding: 0;
}
input[type="search"]{
	-webkit-appearance: textfield;
	box-sizing: content-box;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration{
	-webkit-appearance: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner{
	padding: 0;
	border: 0;
}
textarea{
	overflow: auto;
	vertical-align: top;
}
:focus{
	outline: none;
}

/* 0-2. Base
-------------------------------------------------- */
html{
	font-size: 100%;

}
html.wf-active{

}
body{
	font-family:"Noto Sans JP","游ゴシック","YuGothic","Roboto Regular","ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","helvetica","arial",sans-serif;
}
html,body{

}
h1,h2,h3,h4,h5,h6{
	font-size: 100%;
	font-weight: bold;
}
table{
	width: 100%;
}
input,textarea,button{
	font-family:"Noto Sans JP","游ゴシック","YuGothic","Roboto Regular","ヒラギノ角ゴ ProN W3","HiraKakuProN-W3","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","helvetica","arial",sans-serif;
	font-size: 100%;
}
strong{
	font-weight: bold;
}
em{
	font-weight: bold;
}
.ie9 .gradient{
	filter: none;
}


/* 0-3. Config
-------------------------------------------------- */
body{
	font-size: 14px;
	color: #333;
	background-color: #fff;
}
a,
a:link{
	color: #336699;
	text-decoration: none;
}
a:visited{
	color: #993399;
}
a:hover,
a:active{
	color: #336699;
	text-decoration: underline;
}
h1,h2,h3,h4,h5,h6{
	line-height: 1.4;
}
p{
	line-height: 1.7;
}
dt,dd,li,
th,td,
input,
textarea,
button{
	line-height: 1.6;
}
input{
	font-size: 16px;
	box-sizing: border-box;
}
select{
	display: block;
}
textarea{
	width: 100%;
	display: block;
	font-size: 16px;
	box-sizing: border-box;
}
/*共通部分のリンク色*/
#l-navGlobal .hdg a,
#l-navGlobal .hdg a:link,
#l-navGlobal .hdg a:visited,
.nav-sub a,
.nav-sub a:link,
.nav-sub a:visited,
.nav-pageGroup a,
.nav-pageGroup a:link,
.nav-pageGroup a:visited{
	color: #333;
}
.nav-breadCrumb a:hover,
.nav-breadCrumb a:active,
#l-navGlobal .hdg a:hover,
#l-navGlobal .hdg a:active,
.nav-sub a:hover,
.nav-sub a:active,
.nav-pageGroup a:hover,
.nav-pageGroup a:active{
	color: #a4002c;
	text-decoration: none;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	#l-navGlobal .hdg a,
	#l-navGlobal .hdg a:link,
	#l-navGlobal .hdg a:visited{
		color: #fff;
	}
}/* endMedia */


/* -----------------------------------------------
 [1. Layout]
-------------------------------------------------- */
/* 1-1. #l-document
-------------------------------------------------- */
#l-document{

}
@media only screen and (min-width:1px) and (max-width:1024px){
	#l-document{

	}
}/* endMedia */


/* 1-2. #l-header
-------------------------------------------------- */
#l-header{
	border-bottom: 1px solid #bababa;
	box-sizing: border-box;
	position: relative;
}
.l-header__inner {
	margin: 0 auto;
	max-width: none;
	float: left;
}
#sitelogo {
	padding: 25px 15px;
}
#sitelogo a {
	display: block;
	font-size: 0;
}
#sitelogo img {
	width: 286px;
}
.nav-btn{
	display: none;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	#sitelogo {
		padding: 15px 5px;
	}
	#sitelogo img {
		width: 186px;
	}
	.nav-btn{
		display: block;
		position: absolute;
		top: 4px;
		right: 28px;
		width: 24px;
		height: 24px;
		cursor: pointer;
	}
	.nav-btn span{
		display: block;
		width: 20px;
		height: 2px;
		position: absolute;
		left: 18px;
		background: #97999b;
		transition: all 0.5s;
	}
	.nav-btn.is-active span{
		background: #97999b;
	}
	.nav-btn span.b1{
		top: 13px;
	}
	.nav-btn span.b2{
		top: 18px;
	}
	.nav-btn span.b3{
		top: 23px;
	}
	.nav-btn span.txt{
		top: 24px;
		left: 10px;
		background: none;
	}
	.nav-btn.is-active span.b1{
		-ms-transform: translateY(5px) rotate(315deg);
		-webkit-transform: translateY(5px) rotate(315deg);
		transform: translateY(5px) rotate(315deg);
	}
	.nav-btn.is-active span.b2{
		filter: alpha(opacity=0);
		-ms-filter: "alpha(opacity=0)";
		opacity: 0;
	}
	.nav-btn.is-active span.b3{
		-ms-transform:translateY(-5px) rotate(-315deg);
		-webkit-transform:translateY(-5px) rotate(-315deg);
		transform:translateY(-5px) rotate(-315deg);
	}
	.nav-btn span.txt:before{
		width: 4em;
		width: auto;
		height: 1em;
		display: inline-block;
		content: "MENU";
		font-family: 'Roboto',sans-serif;
		font-size: 10px;
		letter-spacing: 0.01em;
		color: #525559;
	}
	.nav-btn.is-active span.txt:before{
		width: 4em;
		width: auto;
		content: "CLOSE";
		color: #525559;
		position: relative;
		left: -2px;
	}
	.nav-btn:after {
/*		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 0 6px 6px 6px;
		border-color: transparent transparent #525559 transparent;
		position: absolute;
		bottom: -2px;
		left: 0;
		right: 0;
		margin: auto;
		opacity: 0;
		transition: all 0.5s ease-in-out;
		z-index: 100;*/
	}
	.nav-btn.is-active:after {
		opacity: 1;
	}
}/* endMedia */


/* 1-3. #l-container
-------------------------------------------------- */
#l-container{

}
@media only screen and (min-width:1px) and (max-width:1024px){
	#l-container{

	}
}/* endMedia */


/* 1-3-1. #l-main
-------------------------------------------------- */
#l-main{

}


/* 1-3-2. #l-sub
-------------------------------------------------- */



/* 1-4. #l-footer
-------------------------------------------------- */
#l-footer{
	width: 100%;
	background-color: #525559;
}
.l-footer__inner{
	margin: 0 auto;
	padding: 25px 50px 25px;
	width: 100%;
	max-width: 1260px;
	box-sizing: border-box;
	color: #fff;
}
.l-footer__inner a,
.l-footer__inner a:link{
	color: #fff;
	text-decoration: none;
	font-size: 12px;
}
.l-footer__inner a:visited{
	color: #fff;
}
.l-footer__inner a:hover{
	color: #fff;
	text-decoration: underline;
	padding-bottom:1px;/* as Hack */
}
#l-footer .fa:before{
	color: #fff;
	font-size: 12px;
}
#l-footer .nav-contentinfo{
	text-align: center;
}
#l-footer .nav-contentinfo li{
	display: inline-block;
	vertical-align: top;
}
#l-footer .nav-row{

}
#l-footer .nav-col{
	width: 20%;
	float: left;
	box-sizing: border-box;
}
#l-footer .nav-col .fa-chevron-right{
	display: none;
}
#l-footer .nav-col li{
	margin-bottom: 2px;
}
#l-footer .nav-col .hdg{
	margin-bottom: 6px;
}
#l-footer .nav-col .hdg a{
	font-size: 16px;
}
#l-footer .nav-contentinfo1{

}
#l-footer .nav-contentinfo1 .is-ph{
	margin-bottom: 18px;
	padding-bottom: 18px;
	box-sizing: border-box;
	border-bottom: 1px solid #64666a;
}
#l-footer .nav-contentinfo1 .is-news{
	margin-bottom: 18px;
	padding-bottom: 18px;
	box-sizing: border-box;
	border-bottom: 1px solid #64666a;
}
#l-footer .nav-contentinfo1 .is-contact{
	margin-bottom: 18px;
	padding-bottom: 18px;
	box-sizing: border-box;
	border-bottom: 1px solid #64666a;
}
#l-footer .nav-contentinfo1 .is-partner{
	margin-bottom: 19px;
}
#l-footer .nav-contentinfo2{
	margin-top: 53px;
	padding-top: 17px;
}
#l-footer .nav-contentinfo2 li{
	padding: 0 10px;
}
#l-footer .nav-contentinfo3{
	margin-top: 20px;
	padding-top: 38px;
}
#l-footer .nav-contentinfo3 .hdg{
	margin-bottom: 27px;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	column-gap: 70px;
	row-gap: 30px;
	text-align: center;
	color: #ccc;
}
#l-footer .nav-contentinfo3 .hdg .is-haseko {

}
#l-footer .nav-contentinfo3 .hdg .is-haseko img {
	width: 100%;
	height: auto;
	max-width: 260px;
}
#l-footer .nav-contentinfo3 li{
	padding: 0 15px;
}
#l-footer .nav-contentinfo4{
	margin-top: 39px;
	padding-top: 19px;
}
#l-footer .nav-contentinfo2,
#l-footer .nav-contentinfo3,
#l-footer .nav-contentinfo4{
	border-top: 1px solid #64666a;
}
#l-footer .nav-contentinfo3 .fa-external-link:before{
	margin-left: 3px;
}
.nav-contentinfo + .nav-contentinfo{
	margin-top: 2px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	#l-footer{
		padding:  0 14px;
		box-sizing: border-box;
	}
	.l-footer__inner{
		padding-top: 0;
		padding: 0;
		max-width: 100%;
	}

	#l-footer .nav-col{
		width: 100%;
		float: none;
	}
	#l-footer .nav-col .fa-chevron-right{
		display: inline-block;
	}
	#l-footer .fa-chevron-right:before{
		margin-right: 8px;
		font-size: 12px;
	}
	#l-footer .nav-col .hdg{
		line-height: 1;
	}
	#l-footer .nav-col .hdg a{
		display: block;
		padding: 10px 0 13px;
		border-bottom: 1px solid #64666a;
		font-size: 14px;
	}
	#l-footer .nav-col:first-child .hdg a{
		padding: 11px 0 15px;
	}
	#l-footer .nav-col:first-child .hdg{
		padding-top: 6px;
	}
	#l-footer .nav-col ul{
		display: none;
	}
	#l-footer .nav-contentinfo{
		text-align: left;
	}
	#l-footer .nav-contentinfo li{
		display: block;
	}
	#l-footer .nav-contentinfo1 .is-ph{
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	#l-footer .nav-contentinfo1 .is-news{
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	#l-footer .nav-contentinfo1 .is-contact{
		margin-bottom: 0;
		padding-bottom: 0;
		border-bottom: none;
	}
	#l-footer .nav-contentinfo1 .is-partner{
		margin-bottom: 20px;
	}
	#l-footer .nav-contentinfo2,
	#l-footer .nav-contentinfo3,
	#l-footer .nav-contentinfo4{
		margin-top: 17px;
		padding-top: 0;
		border-top: none;
	}
	#l-footer .nav-contentinfo2 li,
	#l-footer .nav-contentinfo3 li{
		padding: 0;
	}
	#l-footer .nav-contentinfo2 li a,
	#l-footer .nav-contentinfo3 li a{
		display: block;
		padding:  12px 0 9px;
		border-bottom: 1px solid #64666a;
		font-size: 12px;
	}
	#l-footer .nav-contentinfo2{
		margin-top: 19px;
		border-top: 1px solid #64666a;
	}
	#l-footer .nav-contentinfo3{
		margin-top: 22px;
	}
	#l-footer .nav-contentinfo3 .hdg{
		margin-bottom: 0;
		padding-bottom: 18px;
		border-bottom: 1px solid #64666a;
	}
	#l-footer .nav-contentinfo3 .hdg p{
		font-size: 10px;
	}
	#l-footer .nav-contentinfo3 .fluid-image{
		padding-bottom: 4px;
		width: auto;
		height: 22px;
	}
}/* endMedia */


/* 1-5. #l-navGlobal
-------------------------------------------------- */
#l-navGlobal{
	float: right;
	margin: 0;
	width: auto;
	max-width: 690px;
	display: block;
}
#l-navGlobal ul {
	display: table;
	float: left;
}
#l-navGlobal ul li {
	display: table-cell;
	vertical-align: middle;
}
.l-navglobal__nav li a {
	display: block;
	color: #333;
	text-decoration: none;
	padding: 29px 30px;
}
.l-navglobal__nav li a span {
	position: relative;
}
.l-navglobal__nav li a span:after {
	content: "";
	display: block;
	position: absolute;
	left: -7px;
	right: -7px;
	height: 3px;
	background: #a4002c;
	bottom: -17px;
	opacity: 0;
	transition: all 0.2s ease;
}
.l-navglobal__nav li a.is-active span:after,
.l-navglobal__nav li a:hover span:after {
	opacity: 1;
}
.l-navglobal__navbutton {
	margin-left: 5px;
}
.l-navglobal__navbutton li a {
	color: #fff;
	background: #a4002c;
	text-decoration: none;
	padding: 29px 0;
	display: block;
	transition: all 0.2s ease;
	text-align: center;
	width: 120px;
/*	transition: background-color 0.5s ease-in-out;
	transition: border-left 0.5s ease-in-out;*/
	border-left: 1px solid #fff;
}
.l-navglobal__navbutton li:first-child a {
	background: #7d001a;
	border-right: 1px solid #7d001a;
}
.l-navglobal__navbutton li:last-child a {
	background: #a4002c;
	border-left: 1px solid #a4002c;
}
.l-navglobal__navbutton li a:hover {
	/*letter-spacing: 0.5em;*/
	background-color: #fff;
	color: #333;
	border-left: 1px solid #a4002c;
}
.l-navglobal__navbutton li:first-child a:hover {
	color: #7d001a;
	border-left: 1px solid #7d001a;
}
.l-navglobal__navbutton li:last-child a:hover {
	color: #a4002c;
	border-left: 1px solid #a4002c;
}
#l-navGlobal ul li a .fa{
	display: none;
}
#l-navGlobal ul li a .fa-angle-right{
	display: none;
}
#l-navGlobal ul li a .fa-external-link{
	display: inline-block;
}
.l-navglobal__navbutton a .fa-external-link:before{
	color: #fff;
	margin-left: 3px;
}
.l-navglobal__navbutton a:hover .fa-external-link:before{
	color: #7d001a;
}

@media only screen and (min-width:1px) and (max-width:1024px) {
	#l-navGlobal {
		display: none;
		padding-left: 0;
		padding: 0 15px;
		width: 100%;
		position: absolute;
		top: 44px;
		left: 0;
		right: 0;
		background: #525559;
		max-width: none;
		z-index: 1000;
		box-sizing: border-box;
	}
	#l-navGlobal ul {
		float: none;
		margin: 0;
	}
	#l-navGlobal ul,
	#l-navGlobal ul li {
		display: block;
	}
	#l-navGlobal ul li a {
		color: #fff;
		background: none;
		padding: 11px 0;
		border-bottom: 1px solid #64666a;
		border-left: none;
		width: 100%;
		text-align: left;
		font-size: 14px;
	}
	#l-navGlobal .l-navglobal__navbutton li:last-child a {
		border-bottom: 0;
	}
	#l-navGlobal ul li a:hover,
	#l-navGlobal ul li a.is-active,
	#l-navGlobal  ul li a.is-active .fa:before,
	#l-navGlobal  ul li a:hover .fa:before{
		letter-spacing: initial;
		color: #ffcc66;
	}
	#l-navGlobal ul li a:hover span:after {
		opacity: 0;
	}
	.l-navglobal__nav li a span:after{
		display: none;
	}
	#l-navGlobal ul li a .fa {
		display: inline-block;
	}
	#l-navGlobal ul li a .fa:before {
		margin-right: 9px;
		font-weight: normal;
		font-size: 18px;
		color: #fff;
	}
	.l-navglobal__navbutton li:first-child a {
		border-right: none;
	}
}/* endMedia */
@media only screen and (min-width:1025px) {
	#l-navGlobal {
		display: block !important;
	}
/*	#l-navGlobal ul li a .fa {
		display: none;
	}*/
}/* endMedia */


/* 1-6. pageHeader
-------------------------------------------------- */
.pageHeader{

}
@media only screen and (min-width:1px) and (max-width:1024px){

}/* endMedia */


/* 1-7. layoutType
-------------------------------------------------- */




/* -----------------------------------------------
 [2. Object]
-------------------------------------------------- */

/* 2-1. Component a.k.a Module
-------------------------------------------------- */
/*2-1-1.  Wrap     [wrp-***]*/
.wrp-structure {
	box-sizing: border-box;
	position: relative;
}
.wrp-structure__inner {
	max-width: 1240px;
	margin: 0 auto;
	padding: 0 15px;
}

/*2-1-2.  Box      [box-***]*/
.box-noscript{
 	padding: 24px;
	background: #3a3a3a;
	box-sizing: border-box;
}
.box-noscript p{
	text-shadow: 0 0 1px #fff;
	color: #fff;
}
.box-graduate {
	display: table;
	table-layout: fixed;
	width: 100%;
	min-height: 270px;
	height: 300px;
}
.box-graduate__item {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	color: #fff;
	font-size: 16px;
}
.box-graduate__item:first-child {
	background: #7d001a;
}
.box-graduate__item:last-child {
	background: #a4002c;
}
.box-graduate__btn,
.box-graduate__btn:link {
	background: #fff;
	border: 1px solid #fff;
	color: #a4002c;
	font-size: 18px;
	min-width: 360px;
	padding: 14px 0;
}
.box-graduate__btn:hover,
.box-graduate__btn:link:hover {
	background: transparent;
	color: #fff;
}
.box-graduate__btn:visited{
	color: #a4002c;
}
.box-graduate__btn:visited:hover{
	color: #fff;
}
.box-graduate__btn {
	margin-bottom: 20px;
}
.box-graduate__btn .fa:before {
	color: #a4002c;
	font-size: 16px;
}
.box-graduate__btn:hover .fa:before {
	color: #fff;
}

.box-graduate .fa-angle-right {
	display: none;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.box-graduate,
	.box-graduate__item {
		display: block;
	}
	.box-graduate {
		height: auto;
	}
	.box-graduate__item {
		font-size: 12px;
		padding: 24px 10px 40px;
	}
	.box-graduate .fa-angle-right {
		display: inline-block;
	}
	.box-graduate__btn,
	.box-graduate__btn:link {
		font-size: 12px;
		padding: 10px 0 9px;
		min-width: 200px;
		margin-bottom: 13px;
	}
	.box-graduate__btn .fa:before {
		font-size: 12px;
	}
	.box-graduate .btn__icon--right {
		display: none;
	}
}/* endMedia */

.box-company {
	text-align: center;
	background: #f5f5f2;
	display: none;
	color: #383838;
	padding: 30px 0 50px;
}
.box-company.is-home {
	display: block;
}
.box-company__title {
	font-size: 48px;
	font-weight: 200;
	margin-bottom: 30px;
}
.box-company__btn,
.box-company__btn:link {
	border: 1px solid #4b4b4b;
	background: #fff;
	color: #303030;
	font-size: 16px;
	min-width: 360px;
	padding: 15px 0;
	margin-bottom: 25px;
}
.box-company__btn:visited {
	color: #303030;
}
.box-company__btn .fa:before {
	color: #303030;
}
.box-company__btn:hover {
	background: #4b4b4b;
	color: #fff;
}
.box-company__btn:hover .fa:before {
	color: #fff;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.box-company {
		padding: 19px 0 20px;
		font-size: 12px;
	}
	.box-company__title {
		font-size: 25px;
		margin-bottom: 20px;
	}
	.box-company__btn,
	.box-company__btn:link {
		font-size: 13px;
		min-width: 200px;
		padding: 8px 0;
		margin-bottom: 12px;
		border: 1px solid #d3d3d1;
	}
}/* endMedia */

.box-banner {
	background: #fff;
	box-shadow: 0 1px 2px rgba(0,0,0,.15);
	transition: all 0.5s ease-in-out;
	position: relative;
	z-index: 1;
}
.box-banner:hover {
	box-shadow: 0 6px 13px rgba(0,0,0,.15);
	z-index: 2;
}
.box-banner__image {
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	width: 179px;
}
.box-banner__content {
	padding: 25px 30px 30px 209px;
}
.box-banner__title {
	font-size: 18px;
	font-weight: 600;
	font-family: 'Noto Sans JP', sans-serif;
	margin-bottom: 5px;
}
.box-banner__button {
	margin-top: 15px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.box-banner {
		font-size: 10px;
	}
	.box-banner__image {
		width: 102px;
	}
	.box-banner__content {
		padding: 10px 15px 10px 117px;
	}
	.box-banner__title {
		font-size: 12px;
		margin-bottom: 3px;
	}
	.box-banner__button {
		margin-top: 10px;
	}
	.box-banner__button .btn-primary,
	.box-banner__button .btn-primary:link {
		width: 100%;
		padding: 0;
	}
}

.box-work-nav {
	text-align: center;
	margin-bottom: 45px;
}
.box-work-nav__inner {
	font-size: 0;
	margin-bottom: 40px;
}
.box-work-nav__item {
	display: inline-block;
	vertical-align: top;
	font-size: 14px;
}
.box-work-nav__item li {
	display: inline-block;
	padding: 0 16px;
	position: relative;
}
.box-work-nav__item li + li:after {
	content: "\f105";
	display: block;
	/*background: #737373;*/
	width: 1em;
	height: 1em;
	position: absolute;
	left: -6px;
	top: 44px;
	font: normal normal normal 30px/1 FontAwesome;
	font-size: 40px;
	/*font-size: inherit;*/
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	margin-right: 5px;
	color: #999;
}
.box-work-nav__item li a {
	display: table;
	text-align: center;
	width: 100%;
	border-radius: 50%;
	width: 122px;
	height: 122px;
	color: #4b4b4b;
	text-decoration: none;
	border: 1px solid #8e2d2d;
	transition: all 0.5s ease-in-out;
	font-size: 20px;
}
.is-safari .box-work-nav__item li a{
	transition: none;
}
.box-work-nav__item li a:hover {
	background: #8e2d2d;
	color: #fff;
}
.box-work-nav__item li a span {
	display: table-cell;
	vertical-align: middle;
	line-height: 1.2;
}
.box-work-nav__title {
	text-align: center;
	margin-bottom: 16px;
	font-size: 20px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.box-work-nav {
		margin: 0 -7px 10px;
	}
	.box-work-nav__inner {
		padding: 0 7px;
		width: 50%;
		float: left;
		box-sizing: border-box;
	}
	.box-work-nav__item {
		display: block;
		margin-bottom: 10px;
	}
	.box-work-nav__item li {
		display: block;
		padding: 0;
		position: relative;
		margin-bottom: 20px;
	}
	.box-work-nav__item li:after,
	.box-work-nav__item li + li:after {
		content: "\f107";
		display: block;
		width: 1em;
		height: 1em;
		position: absolute;
		left: 50%;
		bottom: -20px;
		top: auto;
		font: normal normal normal 30px/1 FontAwesome;
		font-size: 20px;
		/*font-size: inherit;*/
		text-rendering: auto;
		-webkit-font-smoothing: antialiased;
	}
	.box-work-nav__item li:last-child:after {
		display: none;
	}
	.box-work-nav__item li a {
		width: 100%;
		border-radius: 2px;
		height: 42px;
		box-sizing: border-box;
		font-size: 12px;
	}
	.box-work-nav__item li a span {
		line-height: 1.5;
	}
	.box-work-nav__item li a .visible-sp {
		display: inline-block !important;
	}
	.box-work-nav__title {
		margin-bottom: 2px;
		font-size: 12px;
	}
}/* endMedia */

.box-work {
	display: table;
	width: 100%;
	position: relative;
	z-index: 1;
}
.box-work__image,
.box-work__content {
	display: table-cell;
	vertical-align: top;
}
.box-work--right {
	direction: rtl;
}
.box-work--right .box-work__content {
	direction: ltr;
}
.box-work__image {
	text-align: center;
	font-size: 0;
}
.box-work__content {
	background: #fff;
	color: #000;
	padding: 25px 24px 0;
}
.box-work__content p {
	line-height: 2.2;
	margin-bottom: 40px;
}
.box-work__content .box-work__title {
	font-size: 36px;
	font-weight: 200;
	margin-bottom: 20px;
	line-height: 1.7;
}
.box-work__content .box-work__title small {
	font-size: 18px;
	color: #8e2d2d;
	font-weight: 400;
	line-height: 0.2;
}
.box-work__button .btn-primary,
.box-work__button .btn-primary:link {
	padding: 0 20px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.box-work,
	.box-work__image,
	.box-work__content {
		display: block;
	}
	.box-work--right {
		direction: ltr;
	}
	.box-work__image img {
		max-width: 100%;
		height: auto;
	}
	.box-work__content .box-work__title {
		font-size: 20px;
		margin-bottom: 5px;
	}
	.box-work__content .box-work__title--last{
		margin: 15px 0 10px;
	}
	.box-work__content .box-work__title small {
		font-size: 12px;
		line-height: 0.8;
	}
	.box-work__content {
		padding: 15px 0;
	}
	.box-work__content p {
		font-size: 13px;
		line-height: 2;
		margin-bottom: 15px;
	}
	.box-work__button .btn {
		width: 100%;
	}
}/* endMedia */
.box-agree{
	margin-bottom: 40px;
	padding: 12px;
	background-color: #f5f5f2;
	box-sizing: border-box;
	border: 1px dotted #bbb;
	text-align: center;
}

/*2-1-3.  Table    [tbl-***]*/
.tbl-base{
	border: none;
	border-collapse: collapse;
	border-spacing: 0;
	margin-bottom: 100px;
	width: 100%;
	background-color: #fff;
	border-bottom: 1px dotted #bbb;
}
.tbl-base thead{

}
.tbl-base thead th{
	word-break: break-all;
}
.tbl-base tbody{
	text-align: left;
}
.tbl-base th,
.tbl-base td{

}
.tbl-base th{
	background: #f5f5f2;
}
.tbl-base td p{
	margin-bottom: 35px;
}
.tbl-base tr{
	border-top: 1px dotted #bbb;
}
.tbl-base th,
.tbl-base td{
	padding: 16px 38px;
	font-size: 14px;
	border-collapse: collapse;
	word-break: break-all;
	vertical-align: top;
	line-height: 1.8em;
	font-weight: normal;
}
.tbl-base th{
	white-space: nowrap;
}
.tbl-base.__has-date{

}
.tbl-base.__has-date .lbl-def{
	padding: 4px 7px 5px;
	width: 120px;
	letter-spacing: 0.05em;
}
.tbl-base.__has-date th{
	font-weight: normal;
}
.tbl-base.__has-date th small{
	display: inline-block;
}
.tbl-base.__has-date td{

}
@media only screen and (min-width:1px) and (max-width:1024px){
	col{
		display: block;
	}
	.tbl-base{
		margin-bottom: 30px;
	}
	.tbl-base tbody tr,
	.tbl-base th,
	.tbl-base td{
		display: block;
	}
	.tbl-base th{
		padding: 8px 0 0;
		font-size: 14px;
		font-weight: bold;
		background: none;
	}
	.tbl-base td{
		padding: 0 0 8px;
	}
	.tbl-base td p{
		margin-bottom: 8px;
	}
	.tbl-base.__has-date th{
		padding: 12px 10px 11px;
		display: inline-block;
	}
	.tbl-base.__has-date td{
		padding: 0 10px 12px;
	}
	.tbl-base.__has-date .__has-lbl{
		padding: 15px 10px 11px;
		display: inline-block;
	}
	.tbl-base.__has-list td{
		padding: 16px 10px;
	}
	.tbl-base .__has-separate{
		border-bottom: 1px dotted #bbb;
	}
}/* endMedia */

/*2-1-4.  Headings [hdg_lv*]*/
.pageHeader {
	text-align: center;
	font-size: 16px;
	margin-bottom: 95px;
}
.hdg-lv1 {
	font-size: 48px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 200;
	margin-bottom: 10px;
}
.pageHeader__lead {
	text-align: left;
	display: inline-block;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.pageHeader {
		font-size: 12px;
		margin-bottom: 25px;
		padding-top: 30px;
	}
	.hdg-lv1 {
		font-size: 28px;
		margin-bottom: 5px;
	}
}/* endMedia */
.section__header {
	position: relative;
}
.section__header__sub {
	color: #a4002c;
	margin-bottom: 5px;
}
.hdg-lv2{
	font-size: 36px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 200;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.hdg-lv2 {
		font-size: 28px;
		font-weight: 300;
	}
	.section__header {
		text-align: center;
	}
	.section__header__sub {
		font-size: 11px;
		margin-bottom: 25px;
	}
}/* endMedia */
.hdg-lv3{

}
.hdg-lv4{

}

/*2-1-5.  Nav      [nav-***]*/
.nav-pageGroup{
	margin: 45px auto 35px;
	box-sizing: border-box;
	max-width: 1160px;
}
.nav-pageGroup a,
.nav-pageGroup .fa{
	display: inline-block;
	vertical-align: baseline;
	font-weight: bold;
	font-size: 18px;
	font-family: 'BenchNine',sans-serif;
}
.nav-pageGroup a{
	text-decoration: none;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.nav-pageGroup{
		max-width: none;
		border-top: 1px solid #ddd;
		padding: 10px 0;
		margin: 0;
	}
	.nav-pageGroup li{
		width: 50%;
		box-sizing: border-box;
	}
	.nav-back2top{
		border-left: 1px solid #ddd;
		text-align: right;
	}
}/* endMedia */

.nav-back2top{
	float: right;
}
.nav-back2top .fa{
	margin-left: 6px;
}
.nav-back2page{
	float: left;
}
.nav-back2page .fa{
	margin-right: 6px;
}

.nav-breadCrumb{
	margin: 0 0 45px 50px;
	padding-top: 25px;
	font-size: 12px;
	color: #010101;
	line-height: 1;
}
.nav-breadCrumb span{
	display: inline-block;
	vertical-align: middle;
	color: #010101;
}
.nav-breadCrumb span:before{
	padding: 0 3px;
	width: 5px;
	height: 12px;
	content: ">";
	display: inline-block;
	vertical-align: middle;
}
.nav-breadCrumb span:first-child:before{
	padding: 0;
	width: 0;
	height: 0;
	content: "";
}
.nav-breadCrumb .fa{
	display: inline-block;
	vertical-align: middle;
	font-size: 12px;
	color: #010101;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.nav-breadCrumb{
		display: none;
	}
}/* endMedia */
.nav-flow{
	margin-bottom: 50px;
}
.nav-flow ol{
	width: 100%;
	height: 60px;
	display: table;
}
.nav-flow li{
	width: 33.333%;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
	position: relative;
}
.nav-flow li:before{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 30px;
	height: 60px;
	background: url("/recruit/assets/images/icn-arrow01.svg") 0 0 no-repeat;
}
.nav-flow li:first-child:before{
	background: none;
}
.nav-flow li.is-active{
	color: #a4002c;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.nav-flow{
		margin-bottom: 20px;
	}
	.nav-flow li:before{
		margin-top: -15px;
		top: 50%;
		background-size: 30px 60px;
	}
}/* endMedia */
@media only screen and (min-width:1px) and (max-width:750px){
	.nav-flow li{
		padding-left: 10px;
		box-sizing: border-box;
		font-size: 12px;
	}
}/* endMedia */

/*2-1-6.  List     [lst-***]*/
.list-note li{
	margin-bottom: 2px;
	padding-left: 14px;
	position: relative;
	font-size: 12px;
	color:#666;
}
.list-note li:last-child{
	margin-bottom: 0;
}
.list-note__mark{
	position: absolute;
	top: 0;
	left: 0;
}

.lst-work {
	max-width: 1160px;
	margin: 0 auto 156px;
}
.lst-work__title {
	text-align: center;
	display: table;
	width: 120px;
	height: 120px;
	margin: 0 auto 55px;
	color: #fff;
	font-size: 20px;
	background: #8e2d2d;
	border-radius: 50%;
	position: relative;
	z-index: 1;
}
.lst-work__title span {
	display: table-cell;
	vertical-align: middle;
	line-height: 1.2;
}
.lst-work > li {
	position: relative;
	padding-bottom: 120px;
}
.lst-work > li:last-child {
	padding-bottom: 0;
}
.lst-work > li:before {
	content: "";
	display: block;
	width: 4px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	margin-left: -2px;
	background: url("/recruit/assets/images/pct-line02.png") repeat-y top center;
	z-index: -1px;
}
.lst-work > li:last-child:before {
	bottom: 50%;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.lst-work {
		margin-bottom: 10px;
	}
	.lst-work.managing {
		margin-bottom: 5px;
	}
	.lst-work > li {
		padding-bottom: 10px;
	}
	.lst-work > li:before {
		display: none;
	}
	.lst-work__title {
		font-size: 12px;
		width: auto;
		border-radius: 2px;
		height: 40px;
		padding: 0 15px;
		margin-bottom: 35px;
	}
	.lst-work__title .visible-sp {
		display: inline-block !important;
	}
}/* endMedia */

.lst-label {
	margin: 0 -4px 35px;
}
.lst-label li {
	float: left;
	width: 33.3333333%;
	box-sizing: border-box;
	padding: 0 4px;
	margin-top: 5px;
}
.lst-label li .lbl {
	width: 100%;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.lst-label {
		margin-bottom: 0;
	}
	.lst-label li {
		float: none;
		width: 100%;
		margin-bottom: 10px;
	}
}

.lst-checkbox {
	margin: 0 -10px;
}
.lst-checkbox li {
	float: left;
	width: 25%;
	box-sizing: border-box;
	padding: 0 10px;
}

/*2-1-7.  Button   [btn-***]*/
.btn,
.btn:link {
	display: inline-block;
	text-align: center;
	text-decoration: none;
	outline: none;
	transition: all 0.5s ease-in-out;
	border-radius: 2px;
	box-sizing: border-box;
	font-weight: 400;
}
.btn .fa:before {
	transition: all 0.5s ease-in-out;
}
.btn-primary,
.btn-primary:link {
	background: #a4002c;
	color: #fff;
	border: 1px solid #a4002c;
	min-width: 120px;
	padding: 3px 0;
}
.btn-primary:visited {
	color: #fff;
}
.btn-primary .fa:before {
	color: #fff;
}
.btn-primary:hover{
	color: #a4002c;
	background: #fff;
}
.btn-primary:hover .fa:before {
	color: #a4002c;
}
.btn__icon--right {
	margin: 0 0 0 5px;
}

.btn-default{
	margin-bottom: 0;
	line-height: 1;
	text-align: center;
}
.btn-default a{
	display: inline-block;
	padding: 10px 12px 12px 12px;
	box-sizing: border-box;
	border-radius: 1px;
	background-color: #525559;
	color: #fff;
	text-decoration: none;
	transition: all 0.3s;
}
.btn-default a:hover{
	background-color: #a4002c;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.btn,
	.btn:link {
		border-radius: 1px;
	}
}
.btn-group{
	margin-bottom: 50px;
	position: relative;
}
.btn-group ul{
	text-align: center;
}
.btn-group li{
	display: inline-block;
}
.btn-group .btn-back{
	position: absolute;
	top: 0;
	left: 0;
}

.btn-submit.is-submit,
.btn-back{
	margin-bottom: 0;
	padding: 14px;
	width: 260px;
	display: inline-block;
	box-sizing: border-box;
	border-radius: 1px;
	background-color: #525559;
	color: #fff;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	transition: all 0.3s;
}
.btn-submit.is-submit:hover,
.btn-back:hover{
	background-color: #a4002c;
}
.btn-submit{
	margin-bottom: 0;
	padding: 14px;
	width: 260px;
	display: inline-block;
	box-sizing: border-box;
	border-radius: 1px;
	background-color: #f5f5f2;
	color: #d1d1d1;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	transition: all 0.3s;
}
.btn-back.extend{
	background-color: #fff;
	color: #333;
	border: 1px solid #ddd;
}
.btn-back.extend:hover{
	/*color: #fff;*/
	background-color: #f5f5f2;
}

.btn-back{
	width: 120px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.btn-group li button{
		margin-bottom: 10px;
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	.btn-group .btn-back{
		position: static;
	}
	.btn-submit.is-submit,
	.btn-back{
		width: 100%;
	}
}/* endMedia */

/*2-1-8.  Anchor   [acr-***]*/
.brightover:hover,
.brightover:hover img{
	opacity: 0.9;
	transition: opacity 0.2s;
}
.acr-facebook{
	text-align: center;
}
.acr-facebook a{
	display: block;
	padding: 12px 22px;
	box-sizing: border-box;
	background-color: #5b5e61;
	border: 1px solid #64666a;
	transition: all 0.3s;
}
.acr-facebook a:hover{
	padding: 12px 22px;
	background-color: rgba(59,89,152,1);
	border: 1px solid transparent;
	text-decoration: none;
}

/*2-1-9.  Text     [txt-***]*/
.txt-break{ /* <br> */
  display: none;
}
.txt-copyright{
	font-family: 'BenchNine';
	letter-spacing: 0.1em;
	text-align: center;
}
.txt-paragraph p{
	margin-bottom: 30px;
}
.txt-placeholder{
	padding-left: 10px;
	color: #999;
	font-size: 12px;
	opacity: 0;
	transition: all 0.6s;
}
.txt-placeholder.is-display{
	opacity: 1;
	transition: all 0.6s;
}
.txt-lead{
	font-size: 28px;
	line-height: 1.4;
}

/*2-1-10. Icon     [icn-***]*/

/*2-1-11. Label    [lbl-***]*/
.lbl {
	display: inline-block;
	border-radius: 3px;
	font-weight: 200;
	padding: 3px 5px;
	text-align: center;
	box-sizing: border-box;
}
.lbl-primary {
	color: #3c3c3b;
	border: 1px solid #ca9d9d;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.lbl {
		font-size: 13px;
		border-radius: 2px;
		padding: 2px 10px;
	}
}
.lbl-required,
.lbl-any,
.lbl-def{
	margin-right: 0.5em;
	padding: 7px;
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
	text-align: center;
	color: #fff;
	white-space: nowrap;
	background-color: #a4002c;
	font-size: 12px;
	letter-spacing: 0.3em;
}
.lbl-required{
	background-color: #a4002c;
}
.lbl-any{
	background-color: #525559;
}
.lbl-def{
	background-color: #f5f5f2;
	font-size: 13px;
	border: 1px solid #ebebe6;
	color: #000;
}

/*2-1-12. Form     [frm-***]*/
::-webkit-input-placeholder{
  padding: 2px 6px 4px;
  font-size: 12px;
  color: #999;
}
::-moz-placeholder{
  padding: 8px;
  font-size: 12px;
  color: #999;
  opacity: 1;
}
:-ms-input-placeholder{
  padding: 8px;
  font-size: 12px;
  color: #999;
}
:-moz-placeholder{
  padding: 8px;
  font-size: 12px;
  color: #999;
}
label span{
	padding-left: 5px;
}

/*2-1-13. Error    [err-***]*/
.errormsg{ /* 石楠花仕様  */
	margin-top: 12px;
	margin-bottom: 8px;
	margin-left: 2px;
	font-size: 14px;
	font-weight: normal;
	color: #a4002c;
	display: inline-block;
}

/*2-1-14. Panel    [pnl-***]*/

/*2-1-15. Media    [mda-***]*/
.mda-landscape{
	width: 100%;
	position: absolute;
	bottom: -8px;
	left: 0;
	z-index: 100;
}
.mda-landscape img{
	width: 100%;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.mda-landscape{
		bottom: -5px;
	}
}/* endMedia */

/*2-1-16. UI*/
.js-fullbg__bg {
	display: none;
}
.visible-sp {
	display: none !important;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.visible-sp {
		display: inline-block !important;
	}
}
.visible-pc {
	display: block !important;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.visible-pc {
		display: none !important;
	}
}
.pull-left{
	text-align: left !important;
}
.scrollfade {
	-webkit-animation-fill-mode:both;
	-ms-animation-fill-mode:both;
	animation-fill-mode:both;
	-webkit-animation-duration:1s;
	-ms-animation-duration:1s;
	animation-duration:1s;
	-webkit-animation-name: scrollfade;
	-ms-animation-name: scrollfade;
	animation-name: scrollfade;
	visibility: visible !important;
}
@-webkit-keyframes scrollfade {
	0% {
		opacity: 0;
		-webkit-transform: translateY(15px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
	}
}
@keyframes scrollfade {
	0% {
		opacity: 0;
		-webkit-transform: translateY(15px);
		-ms-transform: translateY(15px);
		transform: translateY(15px);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateY(0);
		-ms-transform: translateY(0);
		transform: translateY(0);
	}
}


/* 2-2. Utility
-------------------------------------------------- */
/*2-2-1. clearfix [ModernType]*/
#l-header:after,.l-header__inner:after,#l-container:after,#l-main:after,#l-sub:after,#l-footer:after,
#l-navGlobal:after,.nav-contentinfo1:after,.nav-pageGroup:after,.nav-contentinfo1:after,
.grid-row:after,.wrp-structure__inner:after,.lst-label:after,.box-work-nav:after,.lst-checkbox:after,
.clearfix:after{
	display: block;
	clear: both;
	content: "";
}

/*2-2-2. margin,padding [mb10,pt20]*/


/*2-2-3. Object-Oriented CSS [OOCSS]*/
.__has-pullRight{
	float: right!important;
}
.__has-pullLeft{
	float: left!important;
}
.right{
	text-align: right!important;
}
.center{
	text-align: center!important;
}
.left{
	text-align: left!important;
}
.top{
	vertical-align: top!important;
}
.middle{
	vertical-align: middle!important;
}
.bottom{
	vertical-align: bottom!important;
}
ul.list li{
	margin-bottom: 6px;
	margin-left: 26px;
	list-style-type: disc!important;
}
ol.list li{
	margin-bottom: 1em;
	margin-left: 23px;
	list-style-type: decimal!important;
}
.length-10{
	width: 10%!important;
	box-sizing: border-box;
	display: inline-block;
}
.length-25{
	width: 25%!important;
	box-sizing: border-box;
	display: inline-block;
}
.length-50{
	width: 50%!important;
	box-sizing: border-box;
	display: inline-block;
}
.length-75{
	width: 75%!important;
	box-sizing: border-box;
	display: inline-block;
}
.length-100{
	width: 100%!important;
	box-sizing: border-box;
	display: inline-block;
}
/* for RWD */
.fluid-image{
	max-width: 100%;
	height: auto;
}
.video-container{
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}
.video-container iframe,
.video-container object,
.video-container embed{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* 2-2-4. Grid System [grid-***] */
.grid-row{
	margin-right: -10px;
	margin-left: -10px;
}
.grid-col,
.grid-col--1,
.grid-col--2,
.grid-col--3,
.grid-col--4,
.grid-col--5,
.grid-col--6,
.grid-col--7,
.grid-col--8,
.grid-col--9,
.grid-col--10,
.grid-col--11,
.grid-col--12{
	position: relative;
	min-height: 1px;
	padding-right: 10px;
	padding-left: 10px;
	float: left;
	box-sizing: border-box;
}
.grid-col--1 {width: 8.33333333333%}
.grid-col--2 {width: 16.6666666667%;}
.grid-col--3 {width: 25%;}
.grid-col--4 {width: 33.3333333333%;}
.grid-col--5 {width: 41.6666666667%;}
.grid-col--6 {width: 50%;}
.grid-col--7 {width: 58.3333333333%;}
.grid-col--8 {width: 66.6666666667%;}
.grid-col--9 {width: 75%;}
.grid-col--10{width: 83.3333333333%;}
.grid-col--11{width: 91.6666666667%;}
.grid-col--12{width: 100%;}

@media only screen and (min-width:1px) and (max-width:1024px){
	.grid-row{
		margin-left: -5px;
		margin-right: -5px;
	}
	.grid-col--1, .grid-col--2, .grid-col--3, .grid-col--4, .grid-col--5, .grid-col--6, .grid-col--7, .grid-col--8, .grid-col--9, .grid-col--10, .grid-col--11, .grid-col--12{
		width: 100%;
		padding: 0 5px 0 5px;
	}
	.grid-row img{
		width: 100%;
	}
}/* endMedia */

/* 2-2-5. CSS Animation [act-***] */
/* 画面外にいる状態 */
.act-fadein {
	opacity : 0.1;
	transform : translate(0, 50px);
	transition : all 500ms;
}
/* 画面内に入った状態 */
.act-fadein.scrollin {
	opacity : 1;
	transform : translate(0, 0);
}

/* 2-2-6. WebFont */
/* ========== 英字 ========== */
@font-face{
  font-family: 'BenchNine';
  font-style: normal;
  font-weight: 400;
  src: local('BenchNine Regular'), local('BenchNine-Regular'), url(https://fonts.gstatic.com/s/benchnine/v4/AVs3lMmyGvSpQmMt6DeeRoX0hVgzZQUfRDuZrPvH3D8.woff2) format('woff2');
  unicode-range: U+0100-024F, U+1E00-1EFF, U+20A0-20AB, U+20AD-20CF, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face{
  font-family: 'BenchNine';
  font-style: normal;
  font-weight: 400;
  src: local('BenchNine Regular'), local('BenchNine-Regular'), url(https://fonts.gstatic.com/s/benchnine/v4/xmB9oJNpSFKa3qTF2JABPpBw1xU1rKptJj_0jans920.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02C6, U+02DA, U+02DC, U+2000-206F, U+2074, U+20AC, U+2212, U+2215;
}

/* ========== icon ========== */
@font-face{
	font-family: 'FontAwesome';
	src: url("/recruit/assets/fonts/fontawesome-webfont.eot?v=4.5.0");
	src: url("/recruit/assets/fonts/fontawesome-webfont.eot?#iefix&v=4.5.0") format("embedded-opentype"),
	url("/recruit/assets/fonts/fontawesome-webfont.woff2?v=4.5.0") format("woff2"),
	url("/recruit/assets/fonts/fontawesome-webfont.woff?v=4.5.0") format("woff"),
	url("/recruit/assets/fonts/fontawesome-webfont.ttf?v=4.5.0") format("truetype"),
	url("/recruit/assets/fonts/fontawesome-webfont.svg?v=4.5.0#fontawesomeregular") format('svg');
	font-weight: normal;
	font-style: normal;
}
.fa{
	font-style: normal;
}
.fa:before{
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	margin-right: 5px;
	color: #999;
}
/* 使用する項目のみ追加
http://fontawesome.io/icons/
https://fortawesome.github.io/Font-Awesome/assets/font-awesome/css/font-awesome.css
*/
.fa-angle-left:before{
  content: "\f104";
}
.fa-angle-right:before{
  content: "\f105";
}
.fa-angle-up:before{
  content: "\f106";
}
.fa-angle-down:before{
  content: "\f107";
}
.fa-file-pdf-o:before{
	content: "\f1c1";
	color: #a4002c;
}
.fa-external-link:before{
  content: "\f08e";
}
.fa-addSquere{
	background: #525559;
	width: 16px;
	height: 16px;
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	line-height: 0;
	position: relative;
	top: -2px;
}
.fa-addSquere:before{
	margin: 0;
	font-size: 14px;
	color: #fff;
}
.fa-chevron-left:before{
  content: "\f053";
}
.fa-chevron-right:before{
  content: "\f054";
}
.fa-chevron-up:before{
  content: "\f077";
}
.fa-chevron-down:before{
  content: "\f078";
}
.fa-home:before{
	content: "\f015";
}
.fa-facebook-official:before{
  content: "\f230";
}
.fa-warning:before{
  content: "\f071";
  color: #a4002c;
}
.fa-envelope-o:before{
	content: "\f003";
}
.fa-camera:before {
	content: "\f030";
}

/* 2-3. State [is-***]
-------------------------------------------------- */
.is-error{
	background-color: #f9eceb;
}
.is-disabled{
	opacity: 0.3;
}
.is-visiblePc{
	display: block!important;
}
.is-visibleSp{
	display: none!important;
}
@media (max-width: 767px){
	.is-visiblePc{
		display: none!important;
	}
	.is-visibleSp{
		display: block!important;
	}
}

/* 2-4. OverLayerConfig [z-index]
-------------------------------------------------- */


/* 2-5. Project
-------------------------------------------------- */
.section {
	position: relative;
}
.section__line {
	display: block;
	position: absolute;
	background: url("/recruit/assets/images/pct-line02.png") repeat-y top center;
	width: 4px;
	height: 100px;
	z-index: 1;
	left: 50%;
	margin-left: -2px;
	bottom: -100px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.section__line {
		width: 2px;
		background-size: 2px auto;
		margin-left: -1px;
	}
}

/* .section-banner
-------------------------------------------------- */
.section-banner {
	background: #f5f5f2;
	padding: 50px 0;
	overflow-x: hidden;

}
.section-banner__inner {
	max-width: 1040px;
	margin: 0 auto;
	padding: 0 15px;
}
.section-banner ul {
	margin: 0 -20px;
}
.section-banner ul li {
	padding: 0 20px;
}
@media only screen and (min-width:1px) and (max-width:1024px){
	.section-banner {
		padding: 25px 0 10px;
	}
	.section-banner ul li {
		margin-bottom: 18px;
	}
}

.aform-error{
	display : none;
}

.aform-norequired {
    position: absolute;
    right: 38px;
    top: 16px;
    background-color: #525559;
    color: #fff;
    padding: 2px 5px;
	cursor:text;
}
.aform form dl{
	min-height: 60px;
}

.complaince-header{
	width:755px;
	margin:auto;
}

.hdg_lv3 {
    font-size: 24px;
    margin: 40px 0 20px;
    position: relative;
    font-weight: bold;
    text-align: center;
}
p.privacy{
	text-align: left;
	font-size: 15px;
}
.btn-pricacy{
	text-align: left;
    margin-top: 40px;
}

.btn-pricacy a{
	display:inline-block;
    padding: 15px 20px;
    text-align: center;
    color: #FFFFFF;
    background-color: #525559;
	font-size:16px;
	text-decoration: none;
	cursor:pointer;
}
.btn-pricacy a:hover{
	display:inline-block;
    padding: 15px 20px;
    text-align: center;
    color: #FFFFFF;
    background-color: #a4002c;
	font-size:16px;
	text-decoration: none;
}
.ul-compliance{
	margin-top : 30px;
}
.ul-compliance li{
	list-style:square;
	padding: 3px 0;
}
.ul-compliance li a{
	cursor:pointer;
}

@media (max-width: 767px){
	.complaince-header{
		width:100%;
	}
	.hdg_lv3 {
		font-size: 19px;
		margin: 45px 0 5px;
	}
	.ul-compliance{		
		padding: 0 3%;
	}
	
	.btn-pricacy a{
		display:inline-block;
		padding: 5px 10px;
		text-align: center;
		color: #FFFFFF;
		background-color: #525559;
		font-size:14px;
		text-decoration: none;
		cursor:pointer;
	}
	.btn-pricacy a:hover{
		display:inline-block;
		padding: 5px 10px;
		text-align: center;
		color: #FFFFFF;
		background-color: #a4002c;
		font-size:14px;
		text-decoration: none;
	}
	.aform-norequired {
		position: absolute;
		right: 8px;
		top: 10px;
		background-color: #525559;
		color: #fff;
		padding: 4px 5px;
		font-size: 12px;
		line-height: 1em;
		cursor:text;
	}
}
