@charset "UTF-8";

/* main */
#recruit .main {
	position: relative;
	width: 100%;
	height: 500px;
	overflow: hidden;
	background: url(../images/recruit/bg-main_pc.jpg) no-repeat center center;
	background-size: cover;
    display: flex;
    align-items: center;
    justify-content: center;
}
#recruit .content {
	padding-top: 96px;
    padding-bottom: 118px;
	overflow: hidden;
}
#recruit .content > section + section {
	margin-top: 120px;
}
#recruit .content .content-inner {
	max-width: 1100px;
	width: 100%;
	margin: 0 auto;
}

/* recruit */
#recruit p {
	font-size: 16px;
	line-height: 28px;
}
#recruit .recruit-read-ttl {
    text-align: center;
}
#recruit .recruit-read-ttl span {
	color: #003284;
	font-weight: bold;
	font-size: 44px;
    letter-spacing: 6.5px;
	display: inline-block;	
}
#recruit .recruit-read-ttl span:nth-of-type(1) {
    margin-right: 8px;
}
#recruit .recruit-read-ttl span:nth-of-type(3) {
    margin-right: -2px;
}
#recruit .recruit-read-ttl span.comma {
	font-size: 56px;
    vertical-align: top;
    margin-top: -7px;
}
#recruit .recruit-read {
    margin-right: -290px;
    background: url(../images/recruit/read-photo_pc.jpg) no-repeat top right;
    background-size: 840px;
    padding: 0;
    height: 496px;
}
#recruit .recruit-text {
	width: 495px;
    margin-top: 71px;
    padding-top: 99px;
}
#recruit .recruit-text p {
	letter-spacing: 1.8px;
}
#recruit .recruit-text .business {
	display: flex;
	justify-content: space-between;
	margin: 61px 0 53px;
}
#recruit .recruit-text .business > li {
	position: relative;
	display: flex;
	align-items: center;
	width: 240px;
	height: 98px;
	background: #EAEEF3;
}
#recruit .recruit-text .business > li .num {
	position: absolute;
	top: -12px;
	left: 1px;
	line-height: 1;
	font-size: 32px;
	font-weight: bold;
	color: #003284;
}
#recruit .recruit-text .business > li p {
	text-align: center;
	font-size: 24px;
	width: 100%;
	font-weight: bold;
    line-height: 1.4;
	letter-spacing: .5px;
	letter-spacing: 1.8px;
}
#recruit .recruit-text .business > li:nth-of-type(2) > p {
	padding-bottom: 8px;
}
#recruit .recruit-text .business > li p span {
	font-size: 13px;
    letter-spacing: .6px;
	font-weight: bold;
}
#recruit .recruit-anc {
	width: 100%;
	max-width: 1100px;
	margin: 56px auto 0;
	background: #EAEEF3;
	padding: 41px 70px 40px;
}
#recruit .recruit-anc > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#recruit .recruit-anc > ul > li {
	width: calc((100% / 3) - 20px);
	margin-top: 16px;
}
#recruit .recruit-anc > ul > li:nth-child(-n+3) {
	margin-top: 0;
}
#recruit .recruit-anc > ul > li a {
	position: relative;
	display: block;
	background: #fff;
	text-align: center;
	border: 1px solid #6684b5;
	border-radius: 30px 0 0 0;
	text-decoration: none;
	height: 80px;
    padding: 18px 0 31px;
}
#recruit .recruit-anc > ul > li a:after {
	content: "";
    position: absolute;
    left: 50%;
    margin-left: 4.5px;
    bottom: 16.5px;
    width: 8.5px;
    height: 8.5px;
    border-top: 2px solid #003284;
    border-right: 2px solid #003284;
    -webkit-transform: rotate(90deg);
    transform: rotate(135deg);
}
#recruit .recruit-anc > ul > li a span {
	color: #003284;
	font-size: 18px;
	font-weight: 500;
    letter-spacing: 3.5px;
    padding-left: 0.4rem;
    line-height: 1;
}
#recruit .recruit-anc > ul > li:nth-of-type(3) a span {
    letter-spacing: 2.1px;
}
#recruit .recruit-anc > ul > li.entry a {
	background: #003284;
	border: 1px solid #003284;
}
#recruit .recruit-anc > ul > li.entry a span {
	color: #fff;
}
#recruit .recruit-anc > ul > li.entry a:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
#recruit .recruit-anc > ul > li a:hover {
	background: #003284;
	border: 1px solid #003284
}
#recruit .recruit-anc > ul > li a:hover:after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
#recruit .recruit-anc > ul > li a:hover span {
	color: #fff;
}
#recruit .recruit-anc > ul > li.entry a:hover {
	background: #fff;
	border: 1px solid #6684b5;
}
#recruit .recruit-anc > ul > li.entry a:hover:after {
    border-top: 2px solid #003284;
    border-right: 2px solid #003284;
}
#recruit .recruit-anc > ul > li.entry a:hover span {
	color: #003284;
}

/* h3 */
#recruit h3,
#recruit h3 * {
	color: #003284;
	font-weight: bold;
}
#recruit h3 {
	text-align: center;
	font-size: 36px;
	letter-spacing: 3.5px;
    margin-bottom: 47px;
    line-height: 50px;
}
#recruit h3 span.num {
	font-size: 44px;
	padding: 0 0 0 3px;
}

#recruit h4 {
	font-weight: bold;
	text-align: center;
	color: #222;
	font-size: 28px;
	letter-spacing: 3.3px;
	line-height: 1;
	margin-bottom: 40px;
}

#recruit .ideal-block {
	max-width: 960px;
	margin: 0 auto;
	width: 100%;
}
#recruit .content-inner p.read-txt {
	text-align: center;
}
#recruit .ideal-block .list-ideal {
	display: flex;
	justify-content: space-between;
	margin-top: 43px;
}
#recruit .ideal-block .list-ideal > li {
	position: relative;
	width: 310px;
	height: 310px;
	background: #EAEEF3;
	border-radius: 50%;
}
#recruit .ideal-block .list-ideal > li * {
	text-align: center;
}
#recruit .ideal-block .list-ideal > li dl {
	position: absolute;
    top: 137px;
    left: 0;
    width: 100%;
}
#recruit .ideal-block .list-ideal > li:nth-of-type(3) dl {
    top: 131px;
}
#recruit .ideal-block .list-ideal > li dt {
	font-size: 22px;
	margin-bottom: 8px;
	font-weight: bold;
	line-height: 1.6;
}
#recruit .ideal-block .list-ideal > li dd {
	font-size: 16px;
	line-height: 28px;
}
#recruit .ideal-block .list-ideal > li img {
	display: block;
	margin: 0 auto;
}
#recruit .ideal-block .list-ideal > li .ico-01 {
	width: 101px;
    margin-top: 34px;
    padding-left: 10px;
}
#recruit .ideal-block .list-ideal > li .ico-02 {
    width: 125px;
    margin-top: 38px;
    padding-left: 32px;
}
#recruit .ideal-block .list-ideal > li .ico-03 {
	width: 113px;
	margin-top: 57px;
}
#recruit .ideal-block .list-ideal > li .num {
	color: #003284;
	font-size: 50px;
	line-height: 1;
	font-weight: bold;
	position: absolute;
	top: -9px;
	left: 50%;
	margin-left: -103px;
	letter-spacing: 1.9px;
}
#recruit .bg-blue {
	padding: 108px 0 118px;
	background: #EAEEF3;
}

#recruit .good-section {
	border: 2px solid #CDD5E3;
	max-width: 960px;
	width: 100%;
	padding: 47px 44px;
	margin: 40px auto 0;
}

#recruit .good-section .graph {
	width: 606px;
	display: block;
	margin: 0 auto;
}
#recruit .qualification-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: -16px;
}
#recruit .qualification-list > li {
	width: calc((100% / 3) - 11px);
	display: flex;
	background: #fff;
	margin-top: 16px;
	height: 54px;
	padding: 14px 0;
}
#recruit .qualification-list > li span {
	color: #003284;
	font-size: 16px;
	display: inline-block;
	text-align: center;
	width: 38px;
    line-height: 1.7;
    border-right: 1px solid #CDD5E3;
    font-weight: 600;
}
#recruit .qualification-list > li p {
	font-size: 18px;
	width: calc(100% - 38px);
	text-align: center;
	font-weight: 400;
    line-height: 1.3;
    letter-spacing: 1.7px;
}
#recruit .good-section .note {
	text-align: right;
	font-size: 16px;
	color: #7a7a7a;
	margin-top: 18px;
	letter-spacing: 1.1px;
}
#recruit .good-section .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#recruit .good-section .img-housing {
	width: 366px;
}
#recruit .good-section .txt-area {
	width: calc(100% - 366px);
	padding-left: 42px;
}
#recruit .good-section .txt-area ul > li + li {
    margin-top: 25px;
}
#recruit .good-section .txt-area dt {
	margin-bottom: 8px;
	font-size: 22px;
	letter-spacing: 1.9px;
}
#recruit .good-section .txt-area dt span {
	display: inline-block;
	color: #003284;
	font-weight: 600;
	vertical-align: middle;
	line-height: 1;
}
#recruit .good-section .txt-area dt span.num {
	font-size: 28px;
    letter-spacing: 1px;
    font-weight: 700;
    width: 49px;
}
#recruit .good-section .txt-area dt span.text {
	margin-bottom: 3px;
}

#recruit .list-img > li {
	width: 510px;
	margin-left: 14px;
	line-height: 0;
}
#recruit .list-img > li img {
   width: 100%;
}

#recruit .voice-section {
	background: #EAEEF3;
	padding: 53px 70px 56px;
	margin-top: 64px;
}
#recruit .list-voice > li {
	background: #fff;
	border-radius: 50px 0 0 0;
	padding: 68px 70px 54px;
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
}
#recruit .list-voice .img-area {
	position: relative;
	width: 290px;
}
#recruit .list-voice .img-area .label {
	position: absolute;
	top: -39px;
	left: -39px;
	width: 82px;
	height: 82px;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #597AAF;
	color: #fff;
	font-weight: 600;
	font-size: 21px;
	border-radius: 50%;
    letter-spacing: 2px;
	padding-left: 1px;
}
#recruit .list-voice .img-area .info {
	margin-top: 6px;
}
#recruit .list-voice .img-area .info p {
	margin-top: 4px;
}
#recruit .list-voice .img-area .info span {
	letter-spacing: 1.4px;
	font-size: 16px;
}
#recruit .list-voice .img-area .info p:nth-of-type(1) span + span {
	margin-left: 12px;
}
#recruit .list-voice .img-area .info span.name {
	font-weight: 500;
	font-size: 20px;
}
#recruit .list-voice .img-area .info span.annual {
	position: relative;
	font-size: 12px;
	padding-left: 14px;
	margin-left: 14px;
}
#recruit .list-voice .img-area .info span.annual:before {
	display: inline-block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: #CDD5E3;
	width: 1px;
	height: 18px;
}
#recruit .list-voice .img-area .label.production {
	background: #fff;
	color: #003284;
	border: 1px solid #003284;
}
#recruit .list-voice .txt-area {
	width: 473px;
	padding-left: 40px;
}
#recruit .list-voice .txt-area dl + dl {
	margin-top: 30px;
}
#recruit .list-voice .txt-area dl dt {
	position: relative;
	font-weight: bold;
	font-size: 22px;
	color: #003284;
	line-height: 1.6;
	margin-bottom: 5px;
    letter-spacing: 2.1px;
}
#recruit .list-voice .txt-area dl dt span {
	display: inline-block;
	position: absolute;
	top: 3px;
	left: -39px;
	font-size: 30px;
	line-height: 1;
	font-weight: bold;
	color: #003284;
}
#recruit .list-voice .txt-area dl dd p {
	letter-spacing: 1.55px;
}
#recruit .question-section {
	margin-top: 78px;
}
#recruit .list-question {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: -24px;
}
#recruit .list-question > li {
	width: calc(100% / 3 - 17px);
	margin-top: 24px;
	height: 110px;
}
#recruit .list-question > li .question-item {
	border: 1px solid #EAEEF3;
	position: relative;
	height: 100%;
	padding: 25px 40px 25px 85px;
	text-decoration: none;
	background: #EAEEF3;
	display: block;
	cursor: pointer;
}
#recruit .list-question > li .question-item:hover {
	border: 1px solid #003284;
	background: #fff;
	box-shadow: 8px 8px 2px 1px rgba(0, 0, 0, .08);
}
#recruit .list-question > li .question-item:hover p {
	color: #003284;	
}
#recruit .list-question > li .question-item:before,
#recruit .list-question > li .question-item:after {
	content: "";
	display: block;
	position: absolute;
	width: 1px;
	height: 18px;
	background: #6684b5;
	bottom: 15px;
	right: 24px;
}
#recruit .list-question > li .question-item:after {
	transform: rotate(90deg);
}
#recruit .list-question > li .question-item:hover:before,
#recruit .list-question > li .question-item:hover:after {
	background: #7a7a7a;
} 
#recruit .list-question > li .question-item .num {
	position: absolute;
	top: 20px;
	left: 16px;
	color: #003284;
	font-weight: bold;
	font-size: 30px;
	letter-spacing: 1px;
}
#recruit .modal-container{
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	background: rgba(34,34,34,50%);
	padding: 40px 20px;
	overflow: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	box-sizing: border-box;
	z-index: 5;
}
#recruit .modal-container:before {
	content: "";
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
#recruit .modal-container.active {
	opacity: 1;
	visibility: visible;
}
#recruit .modal-body {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	max-width: 600px;
	width: 100%;
}
#recruit .modal-close {
	position: absolute;
	display: flex;
	align-items: center;
	justify-content: center;
	top: 24px;
	right: 24px;
	width: 40px;
	height: 40px;
	cursor: pointer;
}
#recruit .modal-close span {
	position: relative;
}
#recruit .modal-close span:before,
#recruit .modal-close span:after {
	content: "";
	background: #003284;
	opacity: 0.6;
	display: inline-block;
	position: absolute;
	top: -14px;
	left: 0;
	width: 1px;
	height: 28px;
}
#recruit .modal-close span:before {
	transform: rotate(45deg);
}
#recruit .modal-close span:after {
	transform: rotate(-45deg);
}
#recruit .modal-content {
	border-radius: 50px 0 0 0;
	background: #fff;
	text-align: left;
	padding: 66px 75px 72px 130px;
}
#recruit .modal-text {
	position: relative;
}
#recruit .modal-text + .modal-text {
	margin-top: 34px;
}
#recruit .modal-text .num {
	line-height: 1;
    position: absolute;
    font-weight: bold;
    font-size: 30px;
    color: #003284;
    top: 0;
    left: -65px;
    letter-spacing: 1px;
}
#recruit .event-section {
    margin-top: 80px;
}
#recruit .event-section .event-content {
	display: flex;
}
#recruit .event-section .event-content .left {
	width: 473px;
}
#recruit .event-section .event-content .right {
	width: 627px;
    line-height: 0;
}
#recruit .event-section .bottom {
	display: flex;
}
#recruit .event-section .img-event03 {
	width: 310px;
}
#recruit .event-section .txt-area {
	background: #607AA5;
    padding: 72px 50px 60px;
    width: 316px;
}
#recruit .event-section .txt-area p {
	color: #fff;
    font-weight: 100;
    letter-spacing: 1.6px;
}
#recruit .company-section {
    margin-top: 78px;
}
#recruit .company-section h4 {
	margin-bottom: 44px;
}
#recruit .bnrs {
	max-width: 1100px;
	width: 100%;
	display: flex;
	justify-content: space-between;
	margin: 103px auto 0;
}
#recruit .bnrs a {
	position: relative;
	display: block;
	width: 530px;
    overflow: hidden;
}
#recruit .bnrs a:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.1);
    opacity: 1;
    transition: .5s all;
}
#recruit .bnrs a:hover:before {
	opacity: 0;
}
#recruit .bnrs a .txt-bnr {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
    padding: 75px 0;
	background: url(../images/recruit/ico-bnr-arrow-next.png) no-repeat right 152px center;
	background-size: 11px 20px;
	z-index: 10;
}
#recruit .bnrs a img {
    transition: .5s all;
}
#recruit .bnrs a:hover img {
    transform: scale(1.05,1.05);
}
#recruit .bnrs a .txt-bnr span {
	display: block;
	text-align: center;
	color: #fff;
	line-height: 1;
	font-weight: bold;
}
#recruit .bnrs a .txt-bnr span.en {
	font-size: 20px;
	opacity: .6;
	margin-bottom: 13px;
	letter-spacing: 1.8px;
}
#recruit .bnrs a .txt-bnr span.jp {
	font-size: 26px;
    letter-spacing: 4px;
}

#recruit .project {
	margin-top: 40px;
}
#recruit .project .project-head {
	background: url(../images/recruit/project01-pc.jpg) no-repeat center center;
	position: relative;
	background-size: cover;
	height: 300px;
	cursor: pointer;
	padding: 30px 50px;
	display: flex;
    align-items: center;
}
#recruit .project .project-head:before {
	content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,.06);
    opacity: 0;
    transition: .5s all;
}
#recruit .project .project-head:hover:before {
	opacity: 1;
}
#recruit .project:nth-of-type(2) .project-head {
	background: url(../images/recruit/project02-pc.jpg) no-repeat center center;
	background-size: cover;
}
#recruit .project .project-head dl {
	padding-bottom: 18px;
	width: 360px;
}
#recruit .project .project-head dl * {
	color: #fff;
}
#recruit .project .project-head dl dt {
	position: relative;
	padding-left: 72px;
	height: 60px;
	margin-bottom: 20px;
}
#recruit .project .project-head dl dt span {
	position: absolute;
	display: block;
	border-radius: 50%;
	width: 60px;
	height: 60px;
	background: #597AAF;
	font-size: 16px;
	text-align: center;
	left: 0;
	top: 0;
	line-height: 58px;
	letter-spacing: 2px;
	font-weight: 500;
    padding-left: 1px;
}
#recruit .project .project-head dl dt span.production {
	color: #003284;
	background: #fff;
}
#recruit .project .project-head dl dt p {
	line-height: 30px;
    font-weight: 500;
    font-size: 22px;
    letter-spacing: 2.1px;
}
#recruit .project .project-head dl dd p {
	letter-spacing: 1.5px;
}
#recruit .project .project-head .ico {
	position: absolute;
	top: 0;
	right: 0;
	width: 70px;
	height: 100%;
	background: #31538A;
	display: flex;
	align-items: center;
    justify-content: center;
}
#recruit .project .project-head .ico span {
	position: relative;
	display: block;
	width: 25px;
	height: 25px;
}
#recruit .project .project-head .ico span:before,
#recruit .project .project-head .ico span:after {
	position: absolute;
	width: 2px;
	height: 25px;
	background: #fff;
	content: "";
	display: block;
}
#recruit .project .project-head .ico span:before {
	top: 0;
	left: 11.5px;
	transform: rotate(90deg);
}
#recruit .project .project-head .ico span:after {
	top: 0;
	left: 11.5px;
}
#recruit .project .project-head.open span:after {
	opacity: 0;
}
#recruit .project .project-content {
	display: none;
	background: #fff;
	padding: 56px 70px 50px;
}
#recruit .project .project-content.open {
	display: block;
}
#recruit .project .capture {
	text-align: right;
	font-size: 14px;
	color: #606060;
    margin-top: 24px;
    letter-spacing: 1.4px;
}
#recruit .project-content-area {
	margin-top: 50px;
}
#recruit .project-content-area h5 {
	margin-bottom: 36px;
	display: flex;
}
#recruit .project-content-area h5 * {
	font-weight: bold;
	font-size: 20px;
	line-height: 1;
    letter-spacing: 1.5px;
    line-height: 28px;
}
#recruit .project-content-area h5.title-02 {
    margin-top: 52px;
}
#recruit .texts-wrap-right {
    padding-left: 34px;
}
#recruit .texts-wrap-left {
    padding-right: 34px;
}
#recruit .texts ul li {
	display: flex;
}
#recruit .texts ul li + li {
	margin-top: 34px;
}
#recruit .texts ul li span {
	display: inline-block;
	font-size: 16px;
	line-height: 28px;
    width: 160px;
}
#recruit .texts ul li p {
	width: calc(100% - 160px);
    letter-spacing: 1.4px;
}
#recruit .img-project02,
#recruit .img-project03 {
    width: 450px;
    height: 250px;
}
#recruit .flow {
	margin-top: 35px;
}
#recruit .flow ul {
	display: flex;
	justify-content: space-between;
}
#recruit .flow ul > li {
	position: relative;
	width: calc(100% / 4 - 35px);
	background: #EAEEF3;
	font-size: 20px;
	text-align: center;
	line-height: 1;
    padding: 30px 0;
    letter-spacing: 1.5px;
    padding-left: .75px;
}
#recruit .flow ul > li + li {
	position: relative;
}
#recruit .flow ul > li + li.offer {
	background: #003284;
	color: #fff;
}
#recruit .flow ul > li + li:before {
    position: absolute;
    content: "";
    display: block;
    width: 12px;
    height: 26px;
    top: 28px;
    left: -28px;
    background: url(../images/recruit/ico-flow-arrow-next.png) no-repeat center center;
}
#recruit .flow .note {
    font-weight: 600;
    color: #003284;
    font-size: 16px;
    text-align: left;
    line-height: 1;
    margin-top: 21px;
    letter-spacing: 1.5px;
}
#recruit .flow-contetn {
	margin-top: 76px;
}
#recruit .flow-contetn table {
	width: 100%;
	border-collapse:  collapse;
	border-bottom: 1px solid #CDD5E3;
}
#recruit .flow-contetn table tr {
	border-top: 1px solid #CDD5E3;
}
#recruit .flow-contetn table th,
#recruit .flow-contetn table td {
	text-align: left;
    letter-spacing: 1.6px;
}
#recruit .flow-contetn table th {
    padding: 19px 48px;
	width: 36.6%;
	background: #EAEEF3;
}
#recruit .flow-contetn table td {
	width: 63.4%;
    padding: 19px 55px;
}
#recruit .contact-block dl dt {
	font-size: 20px;
	line-height: 34px;
    position: relative;
    font-weight: bold;
    text-align: center;
    margin-bottom: 86px;
}
#recruit .contact-block dl dt:after {
    content: "";
    display: block;
    width: 44px;
    position: absolute;
    left: 50%;
    bottom: -55px;
    margin-left: -22px;
    height: 22px;
    background: url(../images/common/contact-arrow.png) no-repeat top left;
}
#recruit .contact-block .contact-btn {
    display: block;
    width: 420px;
    height: 64px;
    line-height: 64px;
    text-align: center;
    text-decoration: none;
    border-radius: 32px;
    margin: 0 auto;
    padding-left: 18px;
    background: url(../images/common/ico-mail-white.png) no-repeat center left 46px;
    background-color: #003284;
    background-size: 6.3%;
}
#recruit .contact-block .contact-btn:hover {
    background: url(../images/common/ico-mail-white.png) no-repeat center left 46px;
	background-size: 6.3%;
	background-color: #222;
}
#recruit .contact-block .contact-btn span {
    color: #fff;
    font-size: 16px;
    letter-spacing: 1.1px;
}
#recruit .contact-tel {
    margin-top: 36px;
    text-align: center;
}
#recruit .contact-tel .tel {
    position: relative;
    display: inline-block;
}
#recruit .ico-tel {
    position: absolute;
    top: 2px;
    left: 0;
    width: 28px;
    height: 28px;
}
#recruit .tel-num {
    padding-left: 36px;
    font-size: 32px;
    line-height: 1;
    color: #003284;
    letter-spacing: 2.35px;
    font-weight: bold;
}
#recruit .tel-date {
    font-size: 13px;
    color: #003284;
    text-align: center;
    margin-top: 5px;
}
#recruit .entry-block {
    padding: 74px 0 82px;
    background: url(../images/recruit/bg-entry-pc.jpg) no-repeat center center;
    background-size: cover;
}
#recruit .entry-block h3 {
	margin-bottom: 26px;
}
#recruit .entry-block h3 span {
	display: block;
	color: #fff;
	text-align: center;
	line-height: 1;
}
#recruit .entry-block h3 span.en {
	font-size: 46px;
	margin-bottom: 20px;
}
#recruit .entry-block h3 span.jp {
    font-size: 20px;
    font-weight: 100;
    letter-spacing: 6px;
}
#recruit .entry-block p {
	color: #fff;
	text-align: center;
	letter-spacing: 1.6px;
}
#recruit .entry-block a {
	position: relative;
	text-decoration: none;
	background: #fff;
	color: #003284;
	font-size: 16px;
	display: block;
	width: 420px;
	height: 64px;
	line-height: 64px;
	text-align: center;
	line-height: 64px;
	border-radius: 32px;
	margin: 20px auto 0;
}
#recruit .entry-block a::before {
    content: '';
    width: 8px;
    height: 8px;
    border: 0px;
    border-top: solid 1.2px #003284;
    border-right: solid 1.2px #003284;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 32px;
    margin-top: -5px;
}
#recruit .entry-block a:hover {
	background: #222;
	color: #fff;
}
#recruit .entry-block a:hover::before {
    border-top: solid 1.2px #fff;
    border-right: solid 1.2px #fff;
}

.btn-recruitform {
    position: fixed;
    right: 0;
    top: 50%;
    margin-top: -104.5px;
    width: 70px;
    height: 209px;
    z-index: 2;
	transition: .3s;
    opacity: 0;
    visibility: hidden;
}
.btn-recruitform.is-show {
    opacity: 1;
    visibility: visible;
}
.btn-recruitform a {
    display: block;
    text-decoration: none;
    height: 181px;
    background: rgba(0,50,132,0.8);
    border-radius: 30px 0 0 0;
}
.btn-recruitform a:hover {
    background: rgba(0,50,132,1);
}
.btn-recruitform a .btn-recruitformtxt {
    transform: rotate(-90deg);
    width: 119px;
    position: relative;
    top: 56px;
    left: -21px;
}
.btn-recruitform a .btn-recruitformtxt:after {
    content: "";
    display: block;
    width: 28px;
    height: 28px;
    position: absolute;
    bottom: 6px;
    left: 13px;
    margin-left: -40px;
    background: url(../images/recruit/ico-recruitform.png) no-repeat center right;
    background-size: 28px;
    transform: rotate(90deg);
}
.btn-recruitform a .btn-recruitformtxt span {
    color: #fff;
    display: block;
    width: 100%;
    text-align: center;
}
.btn-recruitform a .btn-recruitformtxt .btn-recruitformtxt-jp {
    margin-bottom: 7px;
    font-size: 11px;
    letter-spacing: 4.4px;
}
.btn-recruitform a .btn-recruitformtxt .btn-recruitformtxt-en {
    font-size: 20px;
    letter-spacing: 5px;
    font-weight: bold;
}

#recruit .img-loop-wrap {
	display: flex;
	overflow: hidden;
}
#recruit .Infiniteslide-img {
	height: 361px;
	display: flex;
	list-style: none;
	animation: infinity-scroll-left 300s infinite linear 0.5s both;
}
#recruit .Infiniteslide-img li {
	margin: 0 11px;
}
#recruit .Infiniteslide-img li img {
	height: 360px;
	width: auto;
}
#recruit .Infiniteslide-img > li {
  width: 509px;
}
#recruit .Infiniteslide-img > li img{
   width: 100%;
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
#recruit .recruit-company-bottom {
	margin-top: 15px;
}
#recruit .Infiniteslide li {
	margin: 0 50px;
	padding: 20px 0;
	height: 80px;
}
#recruit .Infiniteslide li img {
	height: 39px;
	width: auto;
}
#recruit .Infiniteslide li.kyudenko {
	padding: 2px 0 20px;
}
#recruit .Infiniteslide li.kyudenko img {
	height: 57px;
}
#recruit .Infiniteslide li.mitsubishielectric {
    padding: 17px 0 18px;
}
#recruit .Infiniteslide li.mitsubishielectric img {
	height: 44px;
}
#recruit .Infiniteslide li.hitachi {
    padding: 23px 0 17px;
}
#recruit .Infiniteslide li.nsk {
    padding: 23px 0 24px;
}
#recruit .Infiniteslide li.nsk img {
    height: 32px;
}
@media screen and (max-width:768px) {
	.flex {
		flex-wrap: wrap;
	}
	/* main */
	#recruit .main {
	    height: 82.67vw;
	    background: url(../images/recruit/bg-main_sp.jpg) no-repeat center center;
	    background-size: cover;
	}
	#recruit .content {
		padding-top: 8.6vw;
	    padding-bottom: 14vw;
	}
	#recruit .content > section + section {
		margin-top: 20vw;
	}
	#recruit .content > section.recruitment-block {
	    margin-top: 13.6vw;
	}
	#recruit .content > section.contact-block {
		margin-top: 24vw;
	}
	#recruit .content .content-inner {
		padding: 0 5.33vw 3vw;
	}

	/* recruit */
	#recruit p {
		font-size: 3.47vw;
		line-height: 5.87vw;
	}
	#recruit .recruit-read-ttl {
		position: relative;
	}
	#recruit .recruit-read-ttl span {
		font-size: 6.4vw;
		line-height: 9.6vw;
	    letter-spacing: .6vw;
	}
	#recruit .recruit-read-ttl span:nth-of-type(1) {
		position: absolute;
		top: 0;
		left: 15.5vw;
	    margin-right: 0;
	}
	#recruit .recruit-read-ttl span:nth-of-type(3) {
		position: absolute;
		top: 10vw;
	    margin-right: 0;
	}
	#recruit .recruit-read-ttl span.comma {
		font-size: 8.53vw;
	    margin-top: 0;
	}
	#recruit .recruit-read {
		margin-right: 0;
		background: url(../images/recruit/read-photo_sp.jpg) no-repeat bottom right;
		background-size: 94.5%;
		height: auto;
		padding-bottom: 65vw;
		margin-top: 7vw;
	}
	#recruit .recruit-text {
		width: 100%;
	    margin-top: 0;
	    padding: 0 5.33vw;
	}
	#recruit .recruit-text p {
		letter-spacing: .2vw;
	}
	#recruit .recruit-text .business {
		margin: 6vw 0 5vw;
	}
	#recruit .recruit-text .business > li {
		width: calc(50% - 1.4vw);
		height: 21.33vw;
	}
	#recruit .recruit-text .business > li .num {
		top: -4vw;
		left: .2vw;
		font-size: 6.4vw;
	}
	#recruit .recruit-text .business > li p {
		font-size: 4.27vw;
		letter-spacing: .5vw;
	}
	#recruit .recruit-text .business > li:nth-of-type(2) > p {
		padding-bottom: 3vw;
		line-height: .2;
	}
	#recruit .recruit-text .business > li p span {
		font-size: 2.67vw;
		letter-spacing: .1vw;
		line-height: 1.5;
		margin-bottom: 2vw;
		display: block;
	}
	#recruit .recruit-anc {
	    max-width: 100%;
	    width: 81%;
	    margin: 10.5vw auto 0;
	    padding: 6.7vw 5.3vw;
	}
	#recruit .recruit-anc > ul > li {
		width: calc((100% / 2) - 1.5vw);
		margin-top: 4.3vw;
	}
	#recruit .recruit-anc > ul > li:nth-child(-n+3) {
		margin-top: 4.3vw;
	}
	#recruit .recruit-anc > ul > li:nth-child(-n+2) {
		margin-top: 0;
	}
	#recruit .recruit-anc > ul > li a {
		border: .27vw solid #6684b5;
		border-radius: 8vw 0 0 0;
		height: 12.8vw;
	    padding: 3.9vw 0 2vw;
	    line-height: 0;
	}
	#recruit .recruit-anc > ul > li:nth-of-type(3) a {
	    padding: 2vw 0 2vw;
	}
	#recruit .recruit-anc > ul > li a:after {
		margin-left: 0;
		bottom: 2vw;
		width: 1.7vw;
		height: 1.7vw;
		border-top: 0.27vw solid #003284;
		border-right: 0.27vw solid #003284;
	}
	#recruit .recruit-anc > ul > li a span {
		font-weight: 600;
		font-size: 2.93vw;
	    letter-spacing: .3vw;
	    padding-left: 1vw;
	}
	#recruit .recruit-anc > ul > li:nth-of-type(2) a span {
	    letter-spacing: -.01vw;
	}
	#recruit .recruit-anc > ul > li:nth-of-type(3) a span {
	    letter-spacing: .01vw;
	}
	#recruit .recruit-anc > ul > li.entry a:after {
	    border-top: .27vw solid #fff;
	    border-right: .27vw solid #fff;
	}
	#recruit .recruit-anc > ul > li a:hover {
		background: #fff;
	}
	#recruit .recruit-anc > ul > li a:hover:after {
	    border-top: .27px solid #003284;
	    border-right: .27px solid #003284;
	}
	#recruit .recruit-anc > ul > li a:hover span {
		color: #6684b5;
	}
	#recruit .recruit-anc > ul > li.entry a:hover:after {
	    border-top: .27vw solid #fff;
	    border-right: .27vw solid #fff;
	}
	#recruit .recruit-anc > ul > li.entry a:hover span {
		color: #fff;
	}

	/* h3 */
	#recruit h3 {
		font-size: 6.4vw;
		letter-spacing: .5vw;
	    margin-bottom: 3.6vw;
	    line-height: 13.33vw;
	}
	#recruit h3 span.num {
		font-size: 5.6vw;
		padding: 0 0 0 .3vw;
	}

	#recruit h4 {
		font-size: 6.3vw;
		letter-spacing: .4vw;
		line-height: 1.4;
		margin-bottom: 6vw;
	}
	#recruit .read-block {
		margin: 0 -5.33vw;
	}
	#recruit .ideal-block {
		max-width: 100%;
	}
	#recruit .content-inner p.read-txt {
		text-align: left;
	}
	#recruit .ideal-block .list-ideal {
		display: block;
		margin-top: 5vw;
	}
	#recruit .ideal-block .list-ideal > li {
		display: flex;
		align-content: center;
		width: 100%;
		height: auto;
		background: #fff;
		border-radius: 0;
		min-height: 34.67vw;
	}
	#recruit .ideal-block .list-ideal > li + li {
		margin-top: 4.1vw;
	}
	#recruit .ideal-block .list-ideal > li * {
		text-align: left;
	}
	#recruit .ideal-block .list-ideal > li .img-area {
		position: relative;
		width: 31.47vw;
	}
	#recruit .ideal-block .list-ideal > li .img-area:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 34.67vw;
		height: 34.67vw;;
		background: #EAEEF3;
		display: block;
		border-radius: 50%;
	}
	#recruit .ideal-block .list-ideal > li dl {
	    top: 50%;
	    left: 32vw;
	    width: calc(100% - 31.47vw);
	    height: auto;
	    transform: translate(0, -50%);
	}
	#recruit .ideal-block .list-ideal > li:nth-of-type(3) dl {
	    top: 50%;
	}
	#recruit .ideal-block .list-ideal > li:nth-of-type(1) .img-area {
		padding: 8vw 7vw 9.5vw 10vw;
	}
	#recruit .ideal-block .list-ideal > li:nth-of-type(2) .img-area {
		padding: 6.8vw 7vw 9.2vw 10vw;
	}
	#recruit .ideal-block .list-ideal > li:nth-of-type(3) .img-area {
		padding: 11.4vw 4vw 0 6.5vw;
	}
	#recruit .ideal-block .list-ideal > li dt {
		font-size: 4.27vw;
		margin-bottom: 1.5vw;
		color: #003284;
	}
	#recruit .ideal-block .list-ideal > li dd {
		font-size: 3.47vw;
		line-height: 6.13vw;
	}
	#recruit .ideal-block .list-ideal > li img {
		position: relative;
	}
	#recruit .ideal-block .list-ideal > li .ico-01 {
		width: 16.53vw;
	    margin-top: 0;
	    padding-left: 0;
	}
	#recruit .ideal-block .list-ideal > li .ico-02 {
	    width: 18.13vw;
	    margin-top: 0;
	    padding-left: 0;
	}
	#recruit .ideal-block .list-ideal > li .ico-03 {
		width: 18.93vw;
		margin-top: 0;
	}
	#recruit .ideal-block .list-ideal > li .num {
		position: static;
		display: block;
		font-size: 5.6vw;
		top: 0;
		left: 0;
		margin-left: 0;
		letter-spacing: .1vw;
	}
	#recruit .bg-blue {
		padding: 14.4vw 0 6vw;
	}
	#recruit .bg-blue.symposium-block {
	    padding: 14.4vw 0 14vw;
	}

	#recruit .good-section {
		border: none;
		border-top: 0.27vw solid #CDD5E3;
		max-width: 100%;
		padding: 10vw 0 0;
		margin: 9vw auto 0;
	}

	#recruit .good-section .graph {
		width: 100%;
		padding-bottom: 2vw;
	}
	#recruit .qualification-list {
		margin-top: -2.7vw;
	}
	#recruit .qualification-list > li {
		width: calc((100% / 2) - 1.35vw);
		margin-top: 2.7vw;
		height: 14.3vw;
		padding: 2.4vw 0;
	}
	#recruit .qualification-list > li span {
		font-size: 4vw;
		width: 8.1vw;
	    border-right: .27vw solid #CDD5E3;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	}
	#recruit .qualification-list > li p {
	    font-size: 3.2vw;
	    width: calc(100% - 8.1vw);
	    text-align: left;
	    font-weight: 600;
	    line-height: 1.5;
	    letter-spacing: .18vw;
	    padding-left: 2.2vw;
	    display: flex;
	    align-items: center;
	}
	#recruit .good-section .note {
		font-size: 3.3vw;
		margin-top: 3.4vw;
		letter-spacing: .49vw;
	}
	#recruit .good-section .flex {
		flex-wrap: wrap;
	}
	#recruit .good-section .img-housing {
		width: 100%;
	}
	#recruit .good-section .txt-area {
		width: 100%;
		padding-left: 0;
	}
	#recruit .good-section .txt-area ul {
		margin-top: 6vw;
	}
	#recruit .good-section .txt-area ul > li + li {
	    margin-top: 5vw;
	}
	#recruit .good-section .txt-area dt {
		margin-bottom: 2.3vw;
	    font-size: 5.4vw;
	    letter-spacing: .5vw;
	}
	#recruit .good-section .txt-area dt span.num {
		font-size: 6vw;
	    letter-spacing: -.01vw;
	    width: 10.7vw;
	}
	#recruit .good-section .txt-area dt span.text {
		margin-bottom: .01vw;
	}

	#recruit .list-img > li {
		width: 59vw;
		margin-left: 2vw;
	}

	#recruit .voice-section {
		padding: 10.5vw 5.5vw 10.5vw;
		margin-top: 6.5vw;
	}
	#recruit .list-voice > li {
		border-radius: 8vw 0 0 0;
		padding: 13vw 5vw 54px;
		margin-top: 8.6vw;
		flex-wrap: wrap;
	}
	#recruit .list-voice .img-area {
		width: 100%;
	}
	#recruit .list-voice .img-area .label {
	    top: -2vw;
	    left: -2vw;
	    width: 17.1vw;
	    height: 10vw;
	    font-size: 4.1vw;
	    border-radius: 0;
	    letter-spacing: .2vw;
	    padding-left: 0.2vw;
	    padding-top: 0.6vw;
	}
	#recruit .list-voice .img-area .info {
		margin: 3.4vw 0 6vw;
	}
	#recruit .list-voice .img-area .info p {
		margin-top: 1.5vw;
	}
	#recruit .list-voice .img-area .info span {
		letter-spacing: .2vw;
		font-size: 3.6vw;
	}
	#recruit .list-voice .img-area .info p:nth-of-type(1) span + span {
		margin-left: 4vw;
	}
	#recruit .list-voice .img-area .info span.name {
		font-weight: 600;
		font-size: 4.2vw;
	}
	#recruit .list-voice .img-area .info span.annual {
		font-size: 3vw;
		padding-left: 2.8vw;
		margin-left: 2.8vw;
	}
	#recruit .list-voice .img-area .info span.annual:before {
		width: .27vw;
		height: 4vw;
	}
	#recruit .list-voice .img-area .label.production {
		border: .27vw solid #003284;
	}
	#recruit .list-voice .txt-area {
		width: 100%;
		padding-left: 0;
	}
	#recruit .list-voice .txt-area dl + dl {
		margin-top: 4.3vw;
	}
	#recruit .list-voice .txt-area dl dt {
		font-size: 5.1vw;
		margin-bottom: 5px;
	    letter-spacing: .46vw;
	}
	#recruit .list-voice .txt-area dl dt span {
		position: static;
		font-size: 5.1vw;
		margin-right: 2vw;
	}
	#recruit .list-voice .txt-area dl dd p {
		letter-spacing: .3vw;
	}
	#recruit .question-section {
		margin-top: 14vw;
	}
	#recruit .list-question {
		margin-top: -4.4vw;
	}
	#recruit .list-question > li {
		width: calc(100% / 2 - 1.5vw);
		margin-top: 2.6vw;
		height: 38.8vw;
	}
	#recruit .list-question > li .question-item {
		padding: 5vw 5vw 8vw;
	}
	#recruit .list-question > li .question-item:hover {
		border: 1px solid #EAEEF3;
		background: #EAEEF3;
		box-shadow: none;
	}
	#recruit .list-question > li .question-item:hover p {
		color: #222222	
	}
	#recruit .list-question > li .question-item:before,
	#recruit .list-question > li .question-item:after {
		width: .27vw;
		height: 4.7vw;
	    bottom: 2.8vw;
	    right: 4.6vw;
	}
	#recruit .list-question > li .question-item:after {
		transform: rotate(90deg);
	}
	#recruit .list-question > li .question-item:hover:before,
	#recruit .list-question > li .question-item:hover:after {
		background: #6684b5;
	} 
	#recruit .list-question > li .question-item .num {
		line-height: 1;
		position: static;
		display: block;
		text-align: left;
		font-size: 5vw;
		letter-spacing: .2vw;
		margin-bottom: 2.5vw;
	}
	#recruit .modal-container{
		padding: 40px 20px;
	}
	#recruit .modal-body {
		max-width: 90%;
		width: 90%;
	}
	#recruit .modal-close {
		top: 3vw;
	    right: 3vw;
	    width: 10vw;
	    height: 10vw;
	}
	#recruit .modal-close span:before,
	#recruit .modal-close span:after {
		top: -3vw;
	    left: 0;
	    width: 0.27vw;
	    height: 5vw;
	}
	#recruit .modal-content {
		border-radius: 12vw 0 0 0;
		padding: 12vw 5vw 10vw 17vw;
	}
	#recruit .modal-text + .modal-text {
		margin-top: 4.5vw;
	}
	#recruit .modal-text .num {
		font-size: 5vw;
	    left: -11vw;
	    top: 0.3vw;
	    letter-spacing: .1vw;
	}
	#recruit .event-section {
	    margin-top: 14vw;
	}
	#recruit .event-section .event-content {
		display: block;
	}
	#recruit .event-section .event-content .left {
		width: 100%;
	    line-height: 0;
	}
	#recruit .event-section .event-content .right {
		width: 100%;
	    line-height: 0;
	}
	#recruit .event-section .img-event03 {
		width: 50%;
		height: 50%;
	}
	#recruit .event-section .txt-area {
	    padding: 6vw 5vw;
	    width: 50%;
	}
	#recruit .event-section .txt-area p {
	    letter-spacing: .35vw;
	}
	#recruit .company-section {
	    margin-top: 14vw;
	}
	#recruit .company-section h4 {
		margin-bottom: 11.2vw;
	}
	#recruit .bnrs {
		padding: 0 5.33vw;
		max-width: 100%;
		flex-wrap: wrap;
		margin: 22.6vw auto 0;
	}
	#recruit .bnrs a {
		width: 100%;
	}
	#recruit .bnrs a + a {
		margin-top: 4.3vw;
	}
	#recruit .bnrs a:hover:before {
		opacity: 1;
	}
	#recruit .bnrs a .txt-bnr {
	    padding: 12.1vw 0;
	    background: url(../images/recruit/ico-bnr-arrow-next.png) no-repeat right 25.7vw center;
	    background-size: 2.6vw;
	}
	#recruit .bnrs a:hover img {
	    transform: scale(1,1);
	}
	#recruit .bnrs a .txt-bnr span.en {
		font-size: 3.5vw;
		margin-bottom: 2.5vw;
		letter-spacing: .5vw;
	}
	#recruit .bnrs a .txt-bnr span.jp {
		font-size: 5.2vw;
	    letter-spacing: 1vw;
	}

	#recruit .project {
		margin-top: 8.2vw;
	}
	#recruit .project + .project {
		margin-top: 11vw;
	}
	#recruit .project .project-head {
		display: block;
		background: url(../images/recruit/project01-sp.jpg) no-repeat center center;
		background-size: cover;
		height: 114vw;
		padding: 7vw 5.6vw;
	}
	#recruit .project .project-head:before {
		display: none;
	}
	#recruit .project:nth-of-type(2) .project-head {
		background: url(../images/recruit/project02-sp.jpg) no-repeat center center;
		background-size: cover;
	}
	#recruit .project .project-head dl {
		width: 100%;
		padding-bottom: 0;
	}
	#recruit .project .project-head dl dt {
		padding-left: 19.5vw;
		height: 16vw;
		margin-bottom: 3.2vw;
	}
	#recruit .project .project-head dl dt span {
		width: 16vw;
		height: 16vw;
		font-size: 4.27vw;
		line-height: 15vw;
		letter-spacing: .1vw;
	    padding-left: .05vw;
	}
	#recruit .project .project-head dl dt p {
		line-height: 7.1vw;
	    font-size: 5vw;
	    letter-spacing: .5vw;
	}
	#recruit .project .project-head dl dd p {
		line-height: 6.13vw;
		letter-spacing: .33vw;
	}
	#recruit .project .project-head .ico {
		display: none;
	}
	#recruit .project .project-content {
		padding: 8.8vw 5.33vw 7.47vw;
	}
	#recruit .project .project-foot {
		position: relative;
		width: 100%;
		background: #31538A;
		height: 16vw;
	    line-height: 15.2vw;
	    text-align: center;
	}
	#recruit .project .project-foot:before {
		content: "";
		display: block;
		position: absolute;
		top: 7vw;
		right: 6.67vw;
		width: 3.33vw;
		height: 1.87vw;
		background: url(../images/recruit/ico-bnr-arrow-bottom.png) no-repeat center center;
		background-size: 100%;
	    transform: rotate(0);
	}
	#recruit .project .project-foot.open:before {
	    transform: rotate(-180deg);
	}
	#recruit .project .project-foot span {
		color: #fff;
		font-size: 3.73vw;
	    letter-spacing: .35vw;
	}
	#recruit .project .capture {
		text-align: left;
		font-size: 2.93vw;
		line-height: 5.33vw;
	    margin-top: 2.95vw;
	    letter-spacing: .3vw;
	}
	#recruit .project-content-area {
		margin-top: 7vw;
	}
	#recruit .project-content-area h5 {
		margin-bottom: 4.5vw;
	}
	#recruit .project-content-area h5 * {
		font-size: 4.8vw;
	    letter-spacing: .51vw;
	    line-height: 6.4vw;
	}
	#recruit .project-content-area h5.title-02 {
		margin-top: 7.2vw;
	}
	#recruit .project-content-area .texts {
		margin-top: 3.7vw;
	}

	#recruit .texts-wrap-right {
	    padding-left: 0;
	}
	#recruit .texts-wrap-left {
	    padding-right: 0;
	    order: 2;
	}
	#recruit .texts ul li {
		display: block;
	}
	#recruit .texts ul li + li {
		margin-top: 3.7vw;
	}
	#recruit .texts ul li span {
		display: block;
		margin-bottom: 1vw;
		font-size: 3.47vw;
		line-height: 6.13vw;
	    width: 100%;
	}
	#recruit .texts ul li p {
		width: 100%;
		display: block;
	    letter-spacing: .37vw;
	    line-height: 6.13vw;
	}
	#recruit .img-project02,
	#recruit .img-project03 {
	    width: 100%;
	    height: 100%;
	    margin-bottom: 3.3vw;
	}
	#recruit .flow {
		margin-top: 11.8vw;
	}
	#recruit .flow ul {
		flex-wrap: wrap;
	}
	#recruit .flow ul > li {
		border: .27vw solid #CDD5E3;
		width: 81.2%;
		background: #fff;
		font-size: 4vw;
	    padding: 5.7vw 0;
	    letter-spacing: .7vw;
	    padding-left: .45vw;
	    margin: 0 auto;
        font-weight: 500;
	}
	#recruit .flow ul > li + li {
		margin-top: 8.5vw;
	}
	#recruit .flow ul > li + li:before {
	    width: 3.2vw;
	    height: 6.93vw;
	    top: -8vw;
	    left: 50%;
	    transform: rotate(90deg);
	    background: url(../images/recruit/ico-flow-arrow-next.png) no-repeat center center;
	    background-size: 100%;
	}
	#recruit .flow ul > li + li.offer {
		border: .27vw solid #eaedf2;
		background: #eaedf2;
		color: #222222;
	}
	#recruit .flow .note {
		width: 81.2%;
		margin: 0 auto;
	    font-size: 3.47vw;
	    margin-top: 4.1vw;
	    letter-spacing: .34vw;
	}
	#recruit .flow-contetn {
		margin-top: 10.7vw;
	}
	#recruit .flow-contetn table {
		width: 100%;
		border: 0.27vw solid #CDD5E3;
	}
	#recruit .flow-contetn table tr {
		border-top: .27vw solid #CDD5E3;
	}
	#recruit .flow-contetn table th,
	#recruit .flow-contetn table td {
	    letter-spacing: .4vw;
	}
	#recruit .flow-contetn table th {
	    padding: 3.3vw 5.5vw;
		width: 100%;
		display: block;
	}
	#recruit .flow-contetn table th p {
		font-weight: 600;
		line-height: 6.13vw;
	}
	#recruit .flow-contetn table td {
		width: 100%;
		display: block;
	    padding: 2vw 5.5vw 2.5vw;
	}
	#recruit .flow-contetn table td p {
		line-height: 6.13vw;
	    letter-spacing: .3vw;
	}
	#recruit .contact-block dl dt {
		font-size: 4.8vw;
		line-height: 7.47vw;
	    margin-bottom: 23.9vw;
	}
	#recruit .contact-block dl dt:after {
	    width: 11.73vw;
	    bottom: -14.4vw;
	    margin-left: -5.865vw;
	    height: 5.87vw;
	    background: url(../images/common/contact-arrow.png) no-repeat top left;
	    background-size: 100%;
	}
	#recruit .contact-block .contact-btn {
	    width: 80.53vw;
	    height: 12.8vw;
	    line-height: 11.9vw;
	    border-radius: 40.265vw;
	    padding-left: 7.5vw;
	    background: url(../images/common/ico-mail-white.png) no-repeat center left 7vw;
	    background-size: 8.5%;
	    background-color: #003284;
	}
	#recruit .contact-block .contact-btn:hover {
	    background: url(../images/common/ico-mail-white.png) no-repeat center left 7vw;
	    background-size: 8.5%;
		background-color: #003284;
	}
	#recruit .contact-block .contact-btn span {
	    font-size: 3.73vw;
	    letter-spacing: .2vw;
	}
	#recruit .contact-tel {
	    margin-top: 4.5vw;
	}
	#recruit .ico-tel {
		top: 0.9vw;
	    width: 5vw;
	    height: 5vw;
	}
	#recruit .tel-num {
	    padding-left: 7.2vw;
	    font-size: 6.4vw;
	    letter-spacing: .5vw;
	    text-decoration: none;
	}
	#recruit .tel-date {
	    font-size: 3.2vw;
	    margin-top: 1.5vw;
	    letter-spacing: .3vw;
	}
	#recruit .entry-block {
	    margin-top: 15vw;
	    padding: 15.7vw 0 21.3vw;
	    background: url(../images/recruit/bg-entry-sp.jpg) no-repeat center center;
	    background-size: contain;
	}
	#recruit .entry-block h3 {
		margin-bottom: 6.4vw;
	}
	#recruit .entry-block h3 span.en {
		font-size: 6.93vw;
		margin-bottom: 2.5vw;
	}
	#recruit .entry-block h3 span.jp {
	    font-size: 3.2vw;
	    letter-spacing: .2vw;
	}
	#recruit .entry-block p {
		letter-spacing: .35vw;
	}
	#recruit .entry-block a {
		font-size: 3.2vw;
		width: 66.67vw;
		height: 11.73vw;
		line-height: 10.9vw;
		border-radius: 5.85vw;
		margin: 9.5vw auto 0;
	}
	#recruit .entry-block a::before {
		width: 1.5vw;
		height: 1.5vw;
	    border-top: solid .27vw #003284;
	    border-right: solid .27vw #003284;
	    right: 4.7vw;
	    margin-top: -1.1vw;
	}
	#recruit .entry-block a:hover {
		background: #fff;
		color: #222;
	}
	#recruit .entry-block a:hover::before {
	    border-top: solid .27vw #003284;
	    border-right: solid .27vw #003284;
	}
	.btn-recruitform {
	    margin-top: -12.85vw;
	    width: 9.6vw;
	    height: 25.07vw;
	}
	.btn-recruitform a {
	    height: 25.07vw;
	    border-radius: 4.8vw 0 0 0;
	    background: none;
	}
	.btn-recruitform a:hover {
	    background: rgba(0,50,132,.8);
	}
	.btn-recruitform a .btn-recruitformtxt {
	    width: 25.07vw;
	    top: 9vw;
	    left: -7.5vw;
	}
	.btn-recruitform a .btn-recruitformtxt:after {
	    width: 4.27vw;
	    height: 4.27vw;
	    bottom: 1.5vw;
	    left: -2vw;
	    margin-left: 0;
	    background-size: 100%;
	}
	.btn-recruitform a .btn-recruitformtxt .btn-recruitformtxt-jp {
	    margin-bottom: 1vw;
	    font-size: 1.6vw;
	    letter-spacing: .3vw;
	}
	.btn-recruitform a .btn-recruitformtxt .btn-recruitformtxt-en {
	    font-size: 2.93vw;
	    letter-spacing: .6vw;
	}
	#recruit .Infiniteslide-img {
		animation: infinity-scroll-left 200s infinite linear 0.5s both;
	}
	#recruit .Infiniteslide-img {
		height: 38.27vw;
	}
	#recruit .Infiniteslide-img li {
		margin: 0 1.07vw;
		width: 64vw;
	}
	#recruit .Infiniteslide-img li img {
		height: 38vw;
		width: auto;
	}
	#recruit .recruit-company-middle,
	#recruit .recruit-company-bottom {
		margin-top: 6.3vw;
	}
	#recruit .Infiniteslide-sp li {
		margin: 0 5.5vw;
		padding: 1.5vw 0;
	    height: 8.3vw;
	}
	#recruit .Infiniteslide-sp li img {
		height: 5.2vw;
		width: auto;
	}
	#recruit .Infiniteslide-sp li.kyudenko {
		padding: 0 0 1.6vw;
	}
	#recruit .Infiniteslide-sp li.kyudenko img {
		height: 6.6vw;
	}
	#recruit .Infiniteslide-sp li.mitsubishielectric {
		padding: .5vw 0 1.2vw;
	}
	#recruit .Infiniteslide-sp li.mitsubishielectric img {
		height: 6.5vw;
	}
	#recruit .Infiniteslide-sp li.nsk {
	    padding: 1.5vw 0 1.5vw;
	}
	#recruit .Infiniteslide-sp li.nsk img {
		height: 4.8vw;
	}
	#recruit .Infiniteslide-sp li.hitachi {
		padding: 1.9vw 0 1.1vw;
	}
}