@charset "UTF-8";
.pc{display:none;}
.smp{display:block;}
.inner {
    width: auto;
    padding: 0 10px;
}
img{
	width:100%;
	height:auto;
}
a:hover img{
	opacity:1;
}
a:hover {
    text-decoration: none;
    opacity: 1;
}

html,body {
    min-width: auto;
    overflow-x: hidden;
    font-size: 14px;
}
#contact, #recruit, #staff, #advantage, #jobCategory, .anchor {
    margin-top: -44px;
    padding-top: 44px;
}
/**/
	#head-area .inner {
    padding: 0 0px;
	}
	#head-area .headerSmp{
    padding: 10px 12px;
    height: 44px;
	}
	#head-area {
    padding: 0;
    position: fixed;
    border: 0px solid;
	}
	#head-area .headCont {
		margin-top: 0;
	    height: 44px;
	}
	#head-area .logo {
    width: auto;
    margin-top: 0;
	position:relative;
	z-index:99;
	}
	#head-area:before {
	content: "";
    height: 40px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 98;
	}
	#head-area .logo img {
    width: auto;
    height: 23px;
	} 
	#head-area .logo .txt {
    margin-left: 10px;
	}
	#head-area .trigger {
    position: absolute;
    top: 6px;
    bottom: 0;
    margin: auto;
    right: 10px;
    z-index: 99;
	}
	#head-area .trigger .triggerInner {
    position: relative;
    width: 32px;
    height: 30px;
		background: #287939;
    margin: 0 auto;
    text-align: center;
	}
	#head-area .trigger.active .triggerInner {
	background: none;
	}
	#head-area .trigger .txt {
    font-size: 10px;
    line-height: .3;
    text-align: center;
	}
	#head-area .trigger .triggerInner span {
	position: absolute;
    left: 0;right: 0;margin: auto;
    width: 21px;
    height: 2px;
    background-color: #fff;
	}
	#head-area .trigger.active .triggerInner span {
    background-color: #99766e;
	}
	#head-area .trigger .triggerInner,
	#head-area .trigger .triggerInner span {
    display: inline-block;
    transition: all .4s;
    box-sizing: border-box;
	}
	#head-area .trigger .triggerInner span:nth-of-type(1) {
	top:7px;
	}
	#head-area .trigger .triggerInner span:nth-of-type(2) {
	top: 0;bottom: 0;margin: auto;
	}
	#head-area .trigger .triggerInner span:nth-of-type(3) {
	bottom: 7px;
	}
	#head-area .trigger.active .triggerInner span:nth-of-type(1) {
	-webkit-transform: translateY(14px) rotate(-45deg);
	transform: translateY(14px) rotate(-45deg);
    top: -1px;
	}
	#head-area .trigger.active .triggerInner span:nth-of-type(2) {
	left: 20%;
	opacity: 0;
	}
	#head-area .trigger.active .triggerInner span:nth-of-type(3) {
	-webkit-transform: translateY(-14px) rotate(45deg);
	transform: translateY(-14px) rotate(45deg);
    top: 33px;
	}
	#head-area .subnav {
	position: static;
    border-bottom: 1px solid #555555;
	}
	#head-area .subnav ul li {
    margin-left: 0;
    padding-left: 0;
    width: 50%;
	}
	#head-area .subnav ul li:first-child {
    border-right:1px solid #555555;
	}
	#head-area .subnav ul li a {
    padding: 18px 0 18px 48px;
	font-size: 14px;
	}
	#head-area .subnav ul li:after {
    left: 30px;
	}
	#head-area .navArea{
    top: 24px;
    left: 0;
    width: 100%;
    position: absolute;
    padding: 37px 0 0;
	transition:.2s;
    z-index: 97;
	transform: translateY(-160%);
	}
	#head-area .navArea.active{
	transform: translateY(0%);
	}
	#head-area .navBg.active{
	display:block;
	position:fixed;
    top: 0;
    left: 0;
	background:#d5d9db;
 	width: 100%;
	height:100vh;
	z-index:95;

	}
	#head-area .gnav {
    margin-top: 0;
	}
	#head-area .gnav ul li {
    padding: 0;
    width: 100%;
	}
	#head-area .gnav ul li a {
    font-size: 18px;
    float: none;
    display: block;
    width: 100%;
    padding: 10px 0;
    border:none;
		color: #000;
		height: auto;
	}
	#head-area ul li a{
    display:block;
	position: relative;
	color:#fff;
	padding: 18px 34px;
	font-size: 14px;
	}
	#head-area .gnav ul li:after {
    display:none;
	}
	#head-area .gnav ul li:last-child:before {
    display:none;
	}
/**/
	.scrollTop {
    right: 10px;
    bottom: 10px;
	}
	.scrollTop a {
		width: 30px;
		height: 30px;
	}
	.scrollTop a:after {
    bottom: 16px;
    right: 18px;
    width: 12px;
    height: 12px;
	border-top: 3px solid #fff;
    border-right: 3px solid #fff;
	}
#foot-area {
    padding: 10px 20px 5px;
    height: auto;
}
#foot-area .logo {
    float: none;
}
#foot-area .logo img {
    width: auto;
    height: 30px;
}
#foot-area .address {
    display: none;
}
/**/
.inner02 {
    width: auto;
}
#index .kvArea .kvMain {
    height: 300px;
}
#index .kvArea .kvMain .applyBtn {
    bottom: 25px;
}
#index .kvArea .kvMain .copy {
    font-size: 2rem;
    top: 80px;
    left: 20px;
	letter-spacing: 0;
}
#index .kvArea .kvSub {
    height: 145px;
    font-size: 28px;
}
#index .pointArea {
    padding: 60px 0 0;
}
#index .subTtl01 {
    font-size: 22px;
    margin-bottom: 30px;
}
#index .pointArea .pointBox {
         flex-direction: column;
}
#index .pointArea .pointBloc {
    width: 100%;
	padding-left: 10px;
	padding-right: 10px;
	margin: 0 auto 30px;
}
#index .pointArea .pointBloc .ttl {
    height: auto;
    margin-bottom: 15px;
}

#index .pointArea .pointBloc .ttl img {
	width: auto;
    height: 70px;
}
#index .pointArea .pointBloc .txt {
    font-size: 16px;
}
#index .pointArea .pointBloc .ttl .txt {
    font-size: 20px;
}
#index .safeArea {
    padding: 60px 10px;
}
#index .safeArea .imgBox .img02 .img:nth-child(1),
#index .safeArea .imgBox .img02 .img:nth-child(3) {
    height: auto;
}
#index .safeArea .leadTxt {
    text-align: left;
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 15px;
}
#index .safeArea .imgBox .top {
    margin-bottom: 20px;
    display: block;
}
#index .safeArea .imgBox .img01 {
    width: 100%;
}
#index .safeArea .imgBox .txt {
    font-size: 14px;
    margin-bottom: 10px;
}
#index .safeArea .imgBox .bottom .imgBox:after {
    display: none;
}
#index .safeArea .imgBox .img02 {
    width: 100%;
    display: block;
}
#index .environmentArea {
    padding: 60px 10px;
}
#index .environmentArea .subTtl01 {
    margin-bottom: 30px;
}
#index .environmentArea .pointBox {
         flex-direction: column;
}
#index .environmentArea .pointBox .pointBloc {
    width: 100%;
    font-size: 16px;
    line-height: 1.6;
	margin-bottom: 30px;
}
#index .environmentArea .pointBox .pointBloc img {
    width: 70px;
    height: auto;
    margin: 0 auto 20px;
}
#index .environmentArea .applyBtn {
    margin: 0px auto;
}

#index .mastarArea .mastarMv {
    height: 260px;
    margin-bottom: 30px;
	background-position:center top;
}
#index .mastarArea .mastarMv .copy {
    font-size: 22px;
    line-height: 1.3;
    top: 20px;
    left: 20px;
	margin-top: 0;
}
#index .mastarArea .mastarMv .prfBox,#index.lower .mastarArea .mastarMv .prfBox {
    font-size: 12px;
    padding: 10px;
    bottom: 55px;
    left: 20px;
}
.mastarArea .inner02 {
	padding-left: 10px;
	padding-right: 10px;
}
#index .mastarArea .mastarBottom .bottomTtl {
    font-size: 22px;
    margin-bottom: 15px;
}
#index .mastarArea .mastarBottom .mastarBottom_cont .txtBox {
    width: auto;
    float: none;
    font-size: 16px;
    line-height: 1.6;
	margin-bottom: 15px;
}
#index .mastarArea .mastarBottom .mastarBottom_cont .imgBox {
    width: 100%;
    float: none;
}
#index .mastarArea {
    padding-bottom: 60px;
}
#index .grafArea {
    padding: 60px 10px 40px;
}
#index .grafArea .subTtl01 {
    line-height: 1.2;
    margin-bottom: 10px;
}
#index .grafArea .subTtl01 .data {
    font-size: 16px;
}

#index .grafArea .grafBox {
    flex-wrap: wrap;
}
#index .grafArea .grafBox .img {
    width: 46%;
}
#index .grafArea .grafBox .img img{
    width: 100%;
}
#index .grafArea .atTxt {
    font-size: 14px;
    margin-bottom: 30px;
    line-height: 1.6;
}
#index .grafArea .bottomBox .copy .dash {
    width: 40px;
    height: 1px;
    margin-bottom: 5px;
}
#index .grafArea .bottomBox .copy .lead {
    display: block;
	text-align: right;
}
#index .grafArea .bottomBox .copy {
    font-size: 16px;
    margin-bottom: 10px;
}
#index .grafArea .bottomBox .imgBox {
         flex-direction: column;
	margin-bottom:0px;
}
#index .grafArea .bottomBox .imgBox img {
    width: 100%;
    height: auto;
    margin-bottom: 25px;
}
#index .grafArea .bottomBox .imgBox img {
    width: 100%;
    height: auto;
    margin-bottom: 25px;
}
#index .grafArea .bottomBox .linkBox {
    flex-wrap: wrap;display:flex;
}
#index .grafArea .bottomBox .linkBox a {
    width: 49%;margin-bottom:5px;
}
#index .grafArea .bottomBox .linkBox img {
    width: 100%;
}
#index .idearArea {
    padding: 60px 10px;
}
#index .idearArea .subTtl01 {
    margin-bottom: 20px;
}
#index .idearArea .forceBox .bloc {
	display: none;
}
#index .idearArea .forceBox {
    height: 300px;
    background: url(../img/sp/ideal.png)no-repeat center center;
	background-size: contain;
}
#index .idearArea .applyBtn {
    margin: 20px auto 0;
}
.map {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
.map iframe,.map object,.map embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 70%;
}
#index .messageArea {
    padding: 60px 10px;
    font-size: 16px;
    line-height: 1.6;
}
#index .messageArea .copy {
    font-size: 22px;
    line-height: 1.4;
}
#index .messageArea .name {
    margin-top: 12px;
    font-size: 12px;
    line-height: 1.6;
margin-bottom: 60px;
}
#index .messageArea .txt p + p {
    margin-top: 15px;
}
#index .messageArea .signature img {
    width: 130px;
    height: auto;
}
#index .messageArea .txt {
    margin-bottom: 25px;
}
#index .requireArea {
    padding: 60px 10px 0;
    font-size: 16px;
}
#index .requireArea .subTtl02 {
	text-align: center;
    font-size: 22px;
    margin-bottom: 20px;
}
#index .requireArea .requireCont > dl > dt {
    font-size: 16px;
}
#index .requireArea .requireCont > dl > dd .ttl {
    font-size: 16px;
}
#index .requireArea .requireCont > dl {
    margin-bottom: 20px;
}
#index .requireArea .requireCont > dl:nth-of-type(4) > dd .innerList,#index .requireArea .requireCont > dl:nth-of-type(5) > dd .innerList {
         flex-direction: column;
}
#index .requireArea .requireCont > dl:nth-of-type(4) > dd .innerList dt,#index .requireArea .requireCont > dl:nth-of-type(5) > dd .innerList dt{
	width:auto;
	color: #9B776F;
}
#index .requireArea .requireCont > dl:nth-of-type(5) > dd .innerList dt{
	font-size: 23px;
    color: #9B776F;
    padding: 0;
    background:none;
    line-height: 1;
    margin-bottom: 0;
}
#index .requireArea .requireCont dl dd .txtBox {
    width: auto;
    float: none;
	margin-bottom: 30px;
}
#index .requireArea .requireCont dl dd .ofiBtn a {
    width: 100%;
    font-size: 16px;
    padding: 10px 10px 10px 40px;
	display: block;
}
#index .requireArea .requireCont dl dd .ofiBtn a:after {
    width: 20px;
    height: 16px;
	top: 14px;
}
#index .requireArea .requireCont > dl > dd .innerList dt {
    width:auto;
}
#index .requireArea .requireCont dl dd .img {
    width: 100%;
    float: none;
}
#index .requireArea .requireCont {
    margin-bottom: 30px;
}
#index .requireArea .mapCont .mapTtl {
    margin-bottom: 10px;
    border-bottom: 2px solid #9B776F;
}
#index .requireArea .mapCont .mapTtl img{
	vertical-align: bottom;
}
#index .contactArea {
    padding: 30px 10px;
}

#index .contactArea .contactTtl {
    font-size: 22px;
}
#index .contactArea .leadTxt {
    font-size: 16px;
    margin-bottom: 20px;
}
#index .contactArea .formBox dl {
    width: 100%;
    margin: 0 auto 20px;
         flex-direction: column;
}
#index .contactArea .formBox dl dt {
    width: 100%;
    font-size: 16px;
	margin-bottom:10px;
}
#index .contactArea .formBox dl dd {
    width: 100%;
}

#index .contactArea .formBox .btnArea .btn {
    font-size: 22px;
    width: 100%;
    height: 40px;
    line-height: 40px;
}
#index .contactArea .formBox dl dd label{
    margin-left: 40px;
}
/*2nd*/
#index.lower .kvArea .kvSub {
    height: 270px;
}
#index.lower .leadArea {
    font-size: 16px;
    line-height: 1.6;
    margin: 0 auto ;
	padding: 60px 10px;
}
#index.lower .mastarArea .mastarMv {
    height: 260px;
}
#index .mastarArea .mastarMv .inner02 {
    height: 300px;
}
#index.lower.casting .mastarArea .mastarMv.casMv01,
#index.lower.casting .mastarArea .mastarMv.casMv02 {
    background-position:center top;
}
#index.lower.casting .mastarArea .mastarMv.casMv02 {
    background: url(../img/lower/casting_mv02_sp.jpg)no-repeat center top;
    background-size: cover;
}
#index.lower.electrical .mastarArea .mastarMv.eleMv02{
    background: url(../img/lower/electrical_mv_sp.jpg)no-repeat center top;
    background-size: cover;
}
#index.lower .mastarArea .mastarBottom {
    margin-bottom: 60px;
}
#index.lower .mastarArea .mastarMv .prfBox .ttl img {
    height: 25px;
    margin-bottom: 0px;
}
#index.lower.cad .mastarArea .mastarMv .prfBox .ttl img {
    height: 20px;
    margin-bottom: 0px;
}
#index.contact .contactArea {
    padding: 100px 10px 60px;
}