@charset "UTF-8";

/*------------------------

トップ

------------------------*/
.top-page .main-recruit {
	/*background:#E71F19;
	求人募集なしの為一時的処置*/
	width: 100%;
	margin: 0 auto;
	text-align: center;
	/*padding:20px;
	求人募集なしの為一時的処置*/
	margin-bottom: 1.6em;
}

.top-page .main-recruit img {
	/*width:990px; 元*/
	/*width:810px;
	↓求人募集なしの為*/
	wwidth: 100%;
}


@media screen and (max-width:979px) {

.top-page .main-recruit {
	/*background:#E71F19;
	求人募集なしの為一時的処置*/
	width: 100%;
	/*padding:10px;
	求人募集なしの為一時的処置*/
	max-width: 560px;
	padding: 0 10px;
}
	
.top-page .main-recruit img {
	width:100%;
}
	
}
	

.top-page .main{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:979px) {
.top-page .main{
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 */
	padding-top: 52.416666666667%;
	background: url('../img/main01-sp.png') 0 0 no-repeat;
	background-size: contain;
}
.top-page .main img{
	display: none;
	}
}
.top-page .navigation{
	margin-bottom: 0;
	margin-top: 13px;
	}
.top-page .navigation ul{
	width: 1005px;
    margin: 0 auto;
    padding-left: 13px;
	}
.top-page .navigation ul li{
	float: left;
	margin-right: 13px;
	}
@media screen and (max-width:979px) {
.top-page .navigation{
	width: 100%;
    padding-left: 0;
	padding: 0 3%;
	}
.top-page .navigation ul{
	width: 100%;
    padding-left: 0;
	}
.top-page .navigation ul li{
	margin-right: 13px;
	margin-bottom: 13px;
	width: 48%;
	text-align: center;
	}
.top-page .navigation ul li+li{
	margin-right: 0;
	}
.top-page .navigation ul li+li+li{
	margin-right: 13px;
	margin-bottom: 0;
	}
.top-page .navigation ul li+li+li+li{
	margin-right: 0;
	}
}
@media screen and (max-width:345px) {
.top-page .navigation ul li{
	width: 235px;
	margin: 13px auto;
	float: inherit;
	}
.top-page .navigation ul li+li{
	margin: 13px auto;
	}
.top-page .navigation ul li+li+li{
	margin: 13px auto;
	}
.top-page .navigation ul li+li+li+li{
	margin: 13px auto;
	}
}
.top-page .content01,
.top-page .content03,
.top-page .content05{
	text-align: center;
	}
.top-page .content02 h2,
.top-page .content03 h2,
.top-page .content04 h2,
.top-page .content05 h2{
	font-size: 3rem;
    letter-spacing: 3px;
	font-weight: normal;
	margin-bottom: 25px;
	}
@media screen and (max-width:979px) {
.top-page .content02 h2,
.top-page .content03 h2,
.top-page .content04 h2,
.top-page .content05 h2{
	font-size: 2.6rem;
	}
.top-page .content02 h2,
.top-page .content04 h2{
	text-align: center;
	}
.top-page .content03 p,
.top-page .content05 p{
	text-align: left;
	}
}
.top-page .content01 em,
.top-page .content02 em,
.top-page .content03 em,
.top-page .content04 em,
.top-page .content05 em{
	display: block;
	font-size: 1.5rem;
	margin-bottom: 13px;
	}
.top-page .content01 a,
.top-page .content02 a,
.top-page .content03 a,
.top-page .content04 a,
.top-page .content05 a{
	display: inline-block;
	width: 260px;
	font-size: 1.5rem;
	padding: .5rem 0;
	text-align: center;
	font-weight: bold;
	border: 2px solid #65A0AB;
	color: #65A0AB;
	-webkit-border-radius: 7px;/* for Safari and Chrome */
	-moz-border-radius: 7px; /* for Firefox */
	-o-border-radius: 7px; /* for opera */
	border-radius: 7px;
	letter-spacing: 3px;
	}
.top-page .content01{
	padding-top: 45px;
	padding-bottom: 5px;
	}
.top-page .content01 h2{
	font-size: 2.3rem;
	margin-bottom: 40px;
	}
.top-page .content01 p{
	margin-bottom: 40px;
	font-weight: bold;
	}
@media screen and (max-width:979px) {
.top-page .content01{
	padding-top: 30px;
	padding-bottom: 10px;
	}
.top-page .content01 h2{
	font-size: 1.8rem;
	margin-bottom: 1.65rem;
	}
.top-page .content01 p{
	margin-bottom: 1.65rem;
    font-weight: bold;
    font-size: 1.6rem;
	}
}
.top-page .content02{
	background-image: url(../img/back01.png);
	background-repeat: no-repeat;
	height: 359px;
	background-position: center top;
	background-size: cover;
	padding-top: 30px;
    padding-bottom: 30px;
	}
.top-page .content02 h2{
	color: #FFF9B1;
	}
	
.top-page .content02 .wrap{
	width: 775px;
	position: relative;
	}
.top-page .content02 .left{
	margin-left: 120px;
	}
.top-page .content02 .img01{
	position: absolute;
	top: 9px;
	right: 0;
	}
@media screen and (max-width:979px) {
.top-page .content02 .left{
	margin-left: 0;
	}
.top-page .content02 .img01{
	position: inherit;
	top: inherit;
	right: inherit;
	display: none;
	}
}
@media screen and (max-width:415px) {
.top-page .content02{
	height: 405px;
	}
}
@media screen and (max-width:362px) {
.top-page .content02{
	height: 430px;
	}
}
.top-page .content02 em{
	color: #fff;
	}
.top-page .content02 p{
	color: #fff;
	}
.top-page .content02 a{
	border-color: #FFF9B1;
	color: #FFF9B1;
	}
@media screen and (max-width:979px) {
.top-page .content02 a{
	margin: 0 auto;
	display: block;
	}
}
.top-page .content03{
	background-image: url(../img/back02.png);
	background-repeat: no-repeat;
	height: 513px;
	background-position: center bottom;
	background-size: cover;
	padding-top: 45px;
	padding-bottom: 135px;
	}
.top-page .content03 h2{
	color: #66A0AB;
	}
.top-page .content03 em{
	color: #333;
	}
.top-page .content03 p{
	margin-bottom: 40px;
	}
.top-page .content03 p+p{
	margin-bottom: 30px;
	}
@media screen and (max-width:415px) {
.top-page .content03{
	height: 563px;
	}
}
@media screen and (max-width:362px) {
.top-page .content03{
	height: 615px;
	}
}
.top-page .content04{
	background-image: url(../img/back03.png);
	background-repeat: no-repeat;
	height: 360px;
	background-position: center top;
	background-size: cover;
	padding-top: 30px;
	padding-bottom: 30px;
	}
.top-page .content04 .wrap{
	display: block;
	width: 930px;
	padding-left: 223px;
	position: relative;
	}
.content04 .img02{
	position: absolute;
	top: 45px;
	left: 0;
	}
.content04 .img02-2{
	position: absolute;
	top: 48px;
	right: 0;
	}
.top-page .content04 h2{
	color: #FFF9B1;
	}
.top-page .content04 em{
	color: #fff;
	}
.top-page .content04 p{
	color: #fff;
	margin-bottom: 20px;
	}
.top-page .content04 a{
	border-color: #FFF9B1;
	color: #FFF9B1;
	}
@media screen and (max-width:979px) {
.top-page .content04 a{
	margin: 0 auto;
	display: block;
	}
	}
@media screen and (max-width:979px) {
.top-page .content04 .wrap{
	padding: 0 15px;
	}
.top-page .content04 .img02,
.top-page .content04 .img02-2{
	position: inherit;
	top: inherit;
	right: inherit;
	display: none;
	}
	
}
@media screen and (max-width:362px) {
.top-page .content04{
	height: 380px;
	}
}
.top-page .content05{
	background-image: url(../img/back04.png);
	background-repeat: no-repeat;
	height: 460px;
	background-position: center bottom;
	padding-top: 45px;
	padding-bottom: 160px;
	}
.top-page .content05 h2{
	color: #65A0AB;
	}
.top-page .content05 em{
	color: #333;
	}
@media screen and (max-width:475px) {
.top-page .content05{
	height: 506px;
	}
}
@media screen and (max-width:362px) {
.top-page .content05{
	height: 550px;
	}
}
@media screen and (max-width:979px) {
.top-page .content01 .wrap,
.top-page .content02 .wrap,
.top-page .content03 .wrap,
.top-page .content04 .wrap,
.top-page .content05 .wrap{
	width: 100%;
}
}

.bosyu_btn {
    width: 260px;
    margin: auto;
    text-align: center;
    background: #40699D;
    padding: 8px 0;
    border-radius: 7px;
    margin-top: 40px;
    margin-bottom: 60px;
}

.bosyu_btn a {
    display: block;
    color: #fff;
    letter-spacing: 5px;
	font-size: 1.5rem;
}

/*------------------------

社長の言葉

------------------------*/
.message .h1{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:979px) {
.message .h1{
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 //padding-top: %;*/
	padding-top: 18.3%;
	background: url('../../message/img/h1-sp.png') 0 0 no-repeat;
	background-size: contain;
}
.message .h1 img{
	display: none;
	}
}
.message .units-row {
	border-bottom: 1px dotted #7f7f7f;
	padding-top: 60px;
	margin-bottom: 0;
	}
.message footer .units-row{
	margin-bottom: 1.65em;
    border-bottom: 0;
    padding-top: 0;
	}
.message .units-row .unit-30,
.message .units-row .unit-50,
.message .units-row .unit-70{
	margin-bottom: 0;
}
.message .units-row .unit-50{
	width: 440px;
	}
.message .units-row .unit-50 + .unit-50{
	width: 490px;
	margin-left: 50px;
	}
.message .units-row .unit-70{
	max-width: 666px;
	}
.message .units-row .unit-30{
	margin-left: 20px;
	width: 293px;
	}
@media screen and (max-width:979px) {
.message .units-row .unit-30,
.message .units-row .unit-50,
.message .units-row .unit-70,
.message .units-row .unit-50 + .unit-50{
	width: 100%;
	max-width: inherit;
	margin-left: 0;
}
.message .units-row img{
	display: block;
	margin: 0 auto;
	}
}
.message .units-row + .units-row {
	padding-top: 40px;
	}
.message .units-row.end{
	border-bottom: 0;
	}
.message .units-row img{
	margin-bottom: 40px;
	}
.message .units-row h2,
.message .units-row p{
	margin-bottom: 30px;
	}
.message .units-row h2{
	font-size: 3rem;
	line-height: 40px;
	font-weight: normal;
	}
.message .units-row p{
	font-size: 1.3rem;
	}
@media screen and (max-width:979px) {
.message .units-row h2{
	font-size: 2.4rem;
	line-height: 3rem;
	font-weight: normal;
	}
.message .units-row p{
	font-size: 1.6rem;
	margin-bottom: 1.65rem;
	}
}
/*------------------------

日研DNA

------------------------*/
.talent .h1{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:979px) {
.talent .h1{
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 //padding-top: %;*/
	padding-top: 18.3%;
	background: url('../../talent/img/h1-sp.png') 0 0 no-repeat;
	background-size: contain;
}
.talent .h1 img{
	display: none;
	}
}
.talent > .units-row{
	padding-top: 67px;
	padding-bottom: 25px;
	margin-bottom: 28px;
	background: #000;
	text-align: center;
	}
.talent .wrap .units-row{
	padding-top: 57px;
	margin-bottom: 28px;
	}
.talent .units-row.end{
	background: inherit;
	padding-top: 0;
	}
.talent .units-row h2,
.talent .units-row p {
	color: #fff;
	}
.talent .units-row h2{
	font-size: 2.7rem;
	margin-bottom: 4rem;
	font-weight: normal;
	}
.talent .units-row h2 span{
	display: block;
	font-size: 6rem;
	font-family: "Times New Roman", Times, serif;
	}
.talent .units-row em{
	font-size: 2.2rem;
	}
.talent .units-row p{
	margin-bottom: 4rem;
	}
@media screen and (max-width:979px) {
.talent .units-row h2{
	font-size: 1.8rem;
	margin-bottom: 2rem;
	}
.talent .units-row h2 span{
	font-size: 4rem;
	}
.talent .units-row em{
	font-size: 1.8rem;
	}
.talent .units-row p{
	font-size: 1.6rem;
	margin-bottom: 1.6rem;
	}
.talent > .units-row{
	padding-top: 40px;
	padding-bottom: 25px;
	}
}
/*------------------------

福利厚生

------------------------*/
.welfare .h1{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:979px) {
.welfare .h1{
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 //padding-top: %;*/
	padding-top: 18.3%;
	background: url('../../welfare/img/h1-sp.png') 0 0 no-repeat;
	background-size: contain;
}
.welfare .h1 img{
	display: none;
	}
}
.welfare .units-row{
	margin-bottom: 1.65em;
	}
.welfare .units-row img{
	margin-top: 57px;
	margin-bottom: 40px;
	}
.welfare .units-row .unit-30,
.welfare .units-row .unit-70{
	margin-bottom: 16px;
	}
.welfare .units-row .unit-30{
	width: 235px;
	}
.welfare .units-row .unit-70{
	width: 715px;
	margin-left: 30px;
	}
@media screen and (max-width:979px) {
.welfare .units-row .unit-30,
.welfare .units-row .unit-70{
	width: inherit;
	margin-left: 0;
	}
}
.welfare .units-row .unit-30 p,
.welfare .units-row .unit-70 p{
	margin-bottom: 0;
	}
.welfare .units-row .unit-30 p{
	display: block;
	text-align: center;
	border-left: 1px solid #6a6a6a;
	border-right: 1px solid #6a6a6a;
	letter-spacing: 4px;
	line-height: 70px;
	}
.welfare .units-row .unit-70 p{
    letter-spacing: 1px;
	}
.welfare .units-row h2{
	margin-top: 12px;
	margin-bottom: 28px;
	}
.welfare .units-row p{
	margin-bottom: 3rem;
	}
/*------------------------

福利厚生

------------------------*/
.requirements .h1{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:979px) {
.requirements .h1{
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 //padding-top: %;*/
	padding-top: 18.3%;
	background: url('../../requirements/img/h1-sp.png') 0 0 no-repeat;
	background-size: contain;
}
.requirements .h1 img{
	display: none;
	}
}
.requirements .wrap02{
	width: 670px;
	margin: 0 auto;
	}
@media screen and (max-width:979px) {
.requirements .wrap02{
	width: 100%;
	}
}
.requirements .units-row{
	margin-bottom: 0;
	padding-top: 54px;
	}
.requirements footer .units-row{
	padding-top: inherit;
	margin-bottom: 1.65em;
	}
.requirements table tr th,
.requirements table tr td{
	display: block;
	width: inherit;
	border-bottom: none;
	}
.requirements table tr th{
	background: #1E2087;
	color: #fff;
	font-weight: normal;
	padding: 0 43px;
	position: relative;
	}
.requirements table tr th::after{
	content: "";
	position: absolute;
	display: block;
	width: 12px;
	height: 12px;
	border: 1px solid #fff;
	top: 4px;
    left: 25px;
	}
.requirements table tr td{
	padding-bottom: 45px;
	}
@media screen and (max-width:979px) {
.requirements .wrap{
	max-width: 670px;
	}
.requirements table tr th::after{
	width: 15px;
	height: 15px;
	top: 5px;
    left: 20px;
	}
}
/*------------------------

先輩の声

------------------------*/
.interview .h1{
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
@media screen and (max-width:979px) {
.interview .h1{
	height: 0;
	/* 表示画像の高さ ÷ 表示画像の幅 × 100 //padding-top: %;*/
	padding-top: 18.3%;
	background: url('../../interview/img/h1-sp.png') 0 0 no-repeat;
	background-size: contain;
}
.interview .h1 img{
	display: none;
	}
}
.interview .unit-20 {
	width: 265px;
	}
.interview .unit-20 .name-img{
	padding-top: 157px;
	}
.interview .unit-20 .name-s{
	padding-top: 5px;
	}
.interview .unit-20 a + a .name-s{
	padding-top: 5px;
	}
.interview .unit-20 p {
    margin-top: 15px;
    margin-bottom: 0px;
    color: grey;
}
.interview-side {
    margin-top: 50px;
    margin-bottom: 0px;
    color: grey;
}
.interview-name {
    margin-top: 50px;
}
@media screen and (max-width:979px) {
.interview-name {
		width:186px;
		margin: 0 auto;
	}
.interview .unit-20 .name-img{
	margin: 0 auto;
    padding-top: 50px;
    display: block;
	}
.interview .unit-20 a{
	display: block;
	text-align: center;
	margin-top: 5px;
	}
	.interview .unit-20 p {
    display: block;
	font-size: 12px;
}
.interview .unit-20 .name-s{
	padding-top: 0;
	}
.interview .unit-20 a + a .name-s{
	padding-top: 0;
	}
}
.interview .unit-80 {
	width: 700px;
	margin-left: 15px;
	}
.interview .unit-80 .units-row{
	margin-bottom: 0;
	}
.interview .unit-80 .units-row img{
	padding-top: 55px;
	padding-bottom: 45px;
	}
.interview .unit-80 .units-row h2{
	font-size: 3rem;
	font-weight: normal;
	margin-bottom: 30px;
	}
.interview .unit-80 .units-row p{
	margin-bottom: 60px;
	}
@media screen and (max-width:979px) {
.interview .unit-80 .units-row img{
	padding-top: 0;
	padding-bottom: 35px;
	}
}
.interview .unit-80 .units-row.end{
	display: inline-block;
	position: relative;
	padding-top: 57px;
	padding-bottom: 57px;
}
.interview .unit-80 .units-row.end::before{
	content: "";
	background: url('../../interview/img/line.png');
	background-repeat: repeat-x;
	position: absolute;
	display: block;
	width: 693px;
	height: 10px;
	border: 1px solid #fff;
	top: 0;
    left: 0;
	}
.interview .unit-80 .units-row.end::after{
	content: "";
	background: url('../../interview/img/line.png') 0 0 no-repeat;
	position: absolute;
	display: block;
	width: 693px;
	height: 10px;
	border: 1px solid #fff;
	bottom: 0;
    left: 0;
	}
@media screen and (max-width:979px) {
.interview .unit-80 .units-row.end::before,
.interview .unit-80 .units-row.end::after{
	min-width: 300px;
    width: 100%;
	}
}
.interview .unit-80 .units-row.end .unit-60{
	width: 368px;
	}
.interview .unit-80 .units-row.end .unit-40{
	width: 296px;
	margin-left: 25px;
	}
.interview .unit-80 .units-row.end h2{
	display: block;
	width: 160px;
	line-height: 35px;
	font-size: 1.6rem;
	font-weight: bold;
	border: 1px solid #333;
	-webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
	text-align: center;
	margin-bottom: 16px;
	}
.interview .unit-80 .units-row.end p{
	margin-bottom: 0;
	}

.interview .unit-80 .units-row.end img{
	padding: 0;
	}
@media screen and (max-width:979px) {
.interview .unit-20,
.interview .unit-80,
.interview .unit-80 .units-row.end .unit-60,
.interview .unit-80 .units-row.end .unit-40{
	width: inherit;
	margin-left: 0;
	}
.interview .unit-80 .units-row.end .unit-40{
	text-align: center;
	}
}
footer #footer .units-row{
	margin-bottom: 1.65rem;
	padding-top: 0;
	padding-bottom: 0;
	}
footer #footer .units-row img{
	margin-top: 0;
	margin-bottom: 0;
	}
