@charset "UTF-8";

/*
Theme Name: recruit2023
Description: Systex Website Recruit Theme
Author: 株式会社システックス
Author URI: http://www.systex.co.jp/rec2/
*/

body {
	background: #f5f5f5;
	line-height: 1.95;
	letter-spacing: .04em;
	font-size: 1.5rem;
	font-family: YakuHanJP,'Noto Sans JP','ヒラギノ角ゴシック','Hiragino Sans','ヒラギノ角ゴ ProN','Hiragino kaku Gothic ProN','メイリオ',Meiryo,sans-serif;
	font-weight: 400;
	color: #444;
}
header, #gNavi, #gNavi li ul, .entryBtn a, #topimage, #topNews, #topNewsList li, #interviewList, #faqWrap, .joinList, #companyInfo, #companyInfo dl, #headBox, #titleWrap, #titleWrap2, 
.twolines, .letterBody, .multiply, #contList, #contList li a, #otherList, .entryList li, .entryLink a, #flowList, .flowPoint, .btnFrame, .answerList, #newsWrap, #newsList li a, #pageNavi ul, .voiceList > li > a, .viewVoice,
#shinjoList, #shinjoList li, #educationBox, #teamworkList, #teamworkList li, .teamworkLink a, #commuList li, .noImgList, #salesforce, #salesforceList, #datahealth, #datahealth li, .qualifiedList, #otherList li, #otherList li a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
header, #topNews, #topNewsList li, #interviewList, #faqWrap/* , .joinList */, #companyInfo, .letterBody, #contList, #contList li a, #otherList, .entryList li, #flowList, .answerList, #newsWrap, #pageNavi ul, .voiceList > li > a,
#shinjoList, #educationBox, #teamworkList, #commuList li, .noImgList, #salesforce, #salesforceList, #datahealth {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
header, #gNavi, .entryBtn a, #topimage, #faqWrap, .joinList, #companyInfo, #companyInfo dl, #headBox, #titleWrap, #titleWrap2, .twolines, .multiply, .entryList li, .entryLink a, .flowPoint, .btnFrame, #pageNavi ul, .voiceList > li > a, .viewVoice,
#shinjoList li, #educationBox, .teamworkLink a, #commuList li, #salesforce, #datahealth li, #otherList li a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.entryBtn a, #titleWrap, #titleWrap2, .twolines, .multiply, .entryLink a, .flowPoint, .btnFrame, .teamworkLink a, #otherList li a/* , #joinCareer .joinList */, .joinList {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}
#gNavi li ul, .entryBtn a, #titleWrap, .twolines.interviewCaption, .multiply, #teamworkList li {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
#topInterview #interviewList {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-webkit-flex-flow: row-reverse;
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
}
#contList, #otherList, #shinjoList, .noImgList, #salesforceList, .qualifiedList, #teamworkList {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
}
.viewVoice {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}
/* ヘッダー */
header {
	padding-left: 75px;
	width: 100%;
	height: 125px;
	background: #fff;
}
/* グローバルナビ */
#gNavi {
	position: relative;
}
#gNavi li {
	position: relative;
	margin-right: 3.3vw;
	line-height: 1;
	letter-spacing: .07em;
	font-size: 1.5rem;
}
#gNavi li#jobinfoMenu {
	margin-right: 5.4vw;
}
#gNavi li:not(.entryBtn) a, .menuTitle {
	transition: .3s;
	-webkit-transition: .3s;
}
#gNavi ul li, #gNavi li.entryBtn {
	margin: 0;
	text-align: center;
}
#gNavi li.entryBtn {
	width: 190px;
	width: 13.19444vw;
	height: 125px;
	line-height: 1.45;
}
.entryBtn a {
	width: 100%;
	height: 100%;
	background: #004da0;
  letter-spacing: .1em;
	font-size: 1.7rem;
	font-weight: 500;
	color: #fff;
}
.entryBtn a span.en {
  letter-spacing: .25em;
  font-style: italic;
}
#entryCareer a {
	background: #0083ce;
}
@media screen and (min-width: 1920px) {
  #gNavi li {
    margin-right: 4.4vw;
  }
  #gNavi li#jobinfoMenu {
    margin-right: 5vw;
  }
  .entryBtn a {
    font-size: 1.8rem;
  }
}
#gNavi .subMenu {
	visibility: hidden;
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translate(-50%, 15px);
	-ms-transform: translate(-50%, 15px);
	transform: translate(-50%, 15px);
  padding-top: 25px;
	width: 218px;
	opacity: 0;
	transition: opacity .25s ease-in-out, transform .25s ease-in-out;
	z-index: 99;
}
#gNavi li:hover > .subMenu {
	visibility: visible;
	opacity: 1;
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
	z-index: 99;
}
#gNavi li ul li, .menuTitle {
	display: block;
	background: #004da0;
	text-align: center;
	font-size: 1.4rem;
	color: #fff;	
}
#gNavi li ul li a, .menuTitle {
	display: block;
	width: 100%;
	height: 100%;
	background: #004da0;
	font-weight: 400;
	color: #fff;
}
#gNavi li ul li a {
	padding: 0 1em 2.5em;
}
#gNavi li ul li:first-child a, .menuTitle {
	padding-top: 2em;
}
#gNavi li ul li:last-child a {
	padding-bottom: 2.75em;
}
#gNavi li ul li a span {
	padding-bottom: .5em;
	border-bottom: dashed 1px #f5f5f5;
}
#gNavi li .current {
	color: #004da0;
}
#gNavi li #newgradMenu li:first-child a, #careerMenu .menuTitle {
  padding-top: 0;
}
.menuTitle {
  padding-bottom: 1.65em;
  padding-left: 2.1em;
  padding-right: 2.1em;
  font-weight: 500;
}
.menuTitle span {
  display: block;
  padding: .6em 1em .65em;
  width: 100%;
  border: solid 1px #f5f5f5;
}
/* コンテンツ */
html, body {
	height: 100%;
}
section + section, #joinUs {
	margin-top: 130px;
}
.inner {
	margin: 0 auto;
	max-width: 1700px;
}
.contWrap {
	padding: 0 130px;
}
.contWrap2 {
	padding-left: 130px;
}
.contWrap3 {
	padding-right: 130px;
}
.en {
	font-family: 'Roboto', sans-serif;
}
.newline {
	display: inline-block;
}
.emphasis {
	font-weight: bold;
}
.telLink a {
	color: inherit;
}
.sptxt {
	display: none;
}
/* 見出し */
h1 {
	position: relative;
	z-index: 9999;
}
h2 .en {
	position: relative;
	top: 1px;
	display: inline-block;
	letter-spacing: .08em;
	font-size: 4.3rem;
}
h2 .jp {
	display: inline-block; 
	padding: .35em 0 .6em;
	border-bottom: solid 2px #004da0;
	letter-spacing: .07em;
	font-size: 1.7rem;
	font-weight: bold;
	font-weight: 700;
	color: #004da0;
}
#headBox {
	position: relative;
	height: 550px;
}
#titleWrap, #titleWrap2 {
	width: 35.417vw;
	height: 330px;
	background: #fff;
}
h2 .headTxt, h2 .headNo {
	display: inline;
	vertical-align: middle;
}
h2 .headTxt {
	position: relative;
	top: 2px;
	font-size: 3.2rem;
}
h2 .headNo {
	margin-left: .25em;
	font-size: 4.9rem;
}
.twolines {
	width: 100%;
	height: 50%;
}
.twolines .position {
	margin-bottom: .2em;
}
.twolines .position span {
	display: inline;
}
.name {
	font-size: 1.6rem;
}
.name span {
	margin: 0 .55em;
}
#headimg {
	position: absolute;
	top: 0;
	right: 0;
	width: 71.3545vw;
	height: 100%;
	background-size: cover!important;
	z-index: -1;
}
#interview #headimg {
	background: url(assets/images/interview/head_img.jpg?v3) no-repeat center center;
}
#interview #headimg.interview1 {
	background: url(assets/images/interview/head_interview1.jpg) no-repeat center center;
}
#interview #headimg.interview2 {
	background: url(assets/images/interview/head_interview2.jpg) no-repeat center center;
}
#interview #headimg.interview3 {
	background: url(assets/images/interview/head_interview3.jpg) no-repeat center center;
}
#interview #headimg.voice {
	background: url(assets/images/interview/head_voice.jpg) no-repeat center top;
}
#outline #headimg {
	background: url(assets/images/outline/head_img.jpg) no-repeat center center;
}
#jobinfo #headimg {
	background: url(assets/images/jobinfo/head_img.jpg?v2) no-repeat center center;
}
#news #headimg {
	background: url(assets/images/news/head_img.jpg) no-repeat center top;
}
#business #headimg {
	background: url(assets/images/business/head_img.jpg) no-repeat left center;
}
.subhead {
	text-align: left;
	line-height: 1.5;
	letter-spacing: .06em;
	font-size: 2.6rem;
}
.subhead.mid {
	margin-bottom: .55em;
	font-size: 2.8rem;
}
.subhead.large {
	margin-bottom: 1em;
	font-size: 3.0rem;
}
.leading {
	padding-top: 85px;
	padding-bottom: 85px;
	width: 77.084%;
}
#menuTxt {
	margin-bottom: -16px;
	text-align: center;
	letter-spacing: .06em;
	font-size: 3.1rem;
}
/* トップページ */
#topimage {
	width: 100%;
	height: -webkit-calc(100% - 125px);
	height: calc(100% - 125px);
	background: url(assets/images/index/topimage.jpg) no-repeat center center;
	background-size: cover!important;
}
#catch {
	margin-left: 10.5vw;
	width: 30vw;
}
#topNews {
	margin: 115px auto;
	max-width: 860px;
}
#newsTtl {
	width: 100px;
	text-align: center;
}
#newsTtl h2 {
	letter-spacing: .16em;
	font-size: 2.9rem;
}
#newsTtl .viewBtn a {
	display: block;
	margin-top: 5px;
	width: 95px;
	height: 30px;
	border: solid 1px #666;
	line-height: 29px;
	letter-spacing: .08em;
	font-size: 1.3rem;
	font-weight: 500;
}
#topNewsList {
	width: 690px;
}
#topNewsList li + li {
	margin-top: 25px;
}
#topNewsList li p {
	width: 470px;
}
time {
	position: relative;
	top: 1px;
	width: 220px;
	font-size: 1.5rem;
	font-weight: 300;
	color: #004da0;
}
#topNewsList time::after {
	content: "";
	position: absolute;
	top: calc(50% - 2px);
	right: 20px;
	width: 100px;
	height: 1px;
	background: #ccc;
}
.conttxtBox {
	position: relative;
	padding: 89px 85px 80px;
	width: 43.056%;
	background: #fff;
}
.contimgBox {
	float: right;
	display: block;
	margin-top: 85px;
	width: 59.161%;
	height: 580px;
	background: url(assets/images/index/outline_img.jpg) no-repeat center top;
	background-size: cover!important;
}
#topBusiness .contimgBox {
	float: left;
	margin: 0;
	background: url(assets/images/index/business_img.jpg?v2) no-repeat center center;
}
.contSummary dt {
	margin: 1.75em 0 .7em!important;
}
.contSummary dt span {
	display: block;
}
.contSummary dd {
	line-height: 1.95;
}
.contSummary .viewBtn.detail {
	margin-top: 35px;
}
#topOutline, #topBusiness {
	position: relative;
}
#topOutline::after, #topBusiness::after {
	content: "";
	display: block;
	clear: both;
}
#topOutline .conttxtBox {
	position: absolute;
	top: 0;
	left: 130px;
}
#topBusiness .conttxtBox {
	position: absolute;
	top: 75px;
	right: 130px;
}
#topInterview {
	position: relative;
	margin-top: 110px;
}
#interviewWrap::after {
	content: "";
	display: block;
	position: absolute;
	top: 100px;
	right: 0;
	width: 71.3545vw;
	height: 63%;
	background: #fff;
	z-index: -1;
}
#interviewWrap .subhead + dd {
	width: 38.136%;
}
#interviewWrap .subhead span {
	display: inline-block;
}
#interviewList {
	width: 100%;
}
#interviewList li {
	width: 29.662%;
	background: #fff;
}
#interviewList li a {
	display: block;
	overflow: hidden;
}
#interviewList li a img {
	transition: .45s;
}
#interviewList li a:hover img {
	opacity: 1;
	transform:scale(1.05);
	transition: .45s;
}
#topInterview #interviewList li:nth-child(2) {
	margin-top: 5.085%;
}
#topInterview #interviewList li:last-child {
	margin-top: 10.17%;
}
.interviewCaption {
	position: relative;
	padding: 25px 30px;
	width: 100%;
	background: linear-gradient(90deg, #0083ce, #004da0);
	color: #fff;
}
.interviewCaption dt {
	position: absolute;
	bottom: 10px;
	right: 30px;
	margin: 0!important;
	letter-spacing: .06em;
	font-size: 1.3rem;
	font-weight: 300;
	font-style: italic;
}
.interviewCaption dt span {
	display: inline;
	letter-spacing: .04em;
}
.interviewNo {
	padding-left: .2em;
	font-size: 3.6rem;
}
.position {
	margin-bottom: .5em;
	line-height: 1.5;
	font-size: 1.9rem;
	font-weight: 500;
}
.position span:first-child {
	margin-right: .5em;
}
.person {
	line-height: 1.7;
}
.person span {
	display: block;
	font-size: 1.3rem;
}
#faqWrap  {
	margin-top: 30px;
}
#faqWrap .contSummary {
	margin-bottom: 50px;
	width: 34.352%;
}
#faqWrap .contimgBox {
	margin-top: 0;
	height: auto;
	background: none;
}
#joinUs {
	margin-top: 115px;
	padding-bottom: 70px;
	text-align: center;
	background: #fff;
}
#joinUs h2 {
	position: relative;
	top: -2.21em;
}
#joinUs h2 .jp {
	margin-bottom: 1em;
}
.joinSubtxt {
	margin-top: -.5em;
	letter-spacing: .08em;
	font-size: 1.5rem;
}
.joinList {
	width: 100%;
}
.joinList li {
	margin-top: 34px;
	width: 100%;
}
.joinList li a {
	display: block;
	padding: 42px;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, #0083ce, #004da0);
	letter-spacing: .11em;
	font-size: 1.9rem;
	font-weight: 700;
	color: #fff;
}
.joinList li + li {
	margin-left: 2.7%;
}
.joinListBox {
 	margin-top: 40px; 
}
.joinGroup {
  display: inline-block;
  padding: .9em 1em 1em;
  width: 300px;
  border-top: solid 2px #004da0;
  border-bottom: solid 2px #004da0;
  line-height: 1;
  font-size: 1.9rem;
  font-weight: 700;
  color: #004da0; 
}
/* 社員を知る */
#interviewBody {
	position: relative;
}
#interviewBody #interviewWrap::after {
	top: 0;
}
#interview #interviewList li {
	margin-top: 7.628%;
}
#interview #faqWrap {
	margin-top: 100px;
}
#mainStory {
	line-height: 1.95;
}
#personSummary {
	padding-top: 85px;
	padding-bottom: 85px;
	padding-left: calc(100% - 71.3545vw);
	width: 100%;
}
#profileWrap {
	padding-right: 28vw;
}
#profile dt {
	margin-bottom: .5em;
	letter-spacing: .05em;
	font-size: 1.7rem;
	font-weight: 500;
	color: #004da0;
}
.interviewArticle {
	padding-top: 110px;
	padding-bottom: 115px;
	background: #fff;
}
.letterBody + .letterBody {
	margin-top: 105px;
}
.letterBody dt {
	padding-right: 70px;
	text-align: left;
	line-height: 1.55;
	font-size: 2.0rem;
	font-weight: 500;
	color: #004da0;
}
.letterBody dd {
	width: 67.797%;
}
.letterImg {
	margin-top: 55px;
}
#workSchedule {
	padding-top: 110px;
	padding-bottom: 105px;
}
#workFlow {
	position: relative;
	line-height: 1.7;
	font-size: 1.6rem;
	font-weight: 500;
}
#workSchedule ul::before {
	content: "";
	position: absolute;
	top: 17px;
	left: 92px;
	width: 2px;
	height: calc(100% - 17px);
	margin-right: auto;
	margin-left: auto;
	background: #ccc;
}
#workSchedule ul li {
	display: table;
}
#workSchedule ul li p {
	display: table-cell;
}
#workSchedule ul li + li {
	margin-top: 36px;
}
.startTime {
	position: relative;
	width: 134px;
	letter-spacing: .045em;
	font-size: 1.9rem;
	color: #004da0;
}
.startTime::after {
	content: "";
	position: absolute;
	top: -2px;
	right: 24px;
	width: 34px;
	height: 34px;
	background: #0083ce;
	border-radius: 50%;
	border: solid 8px #f5f5f5;
}
#fromManager {
	padding-bottom: 105px;
	background: #fff;
}
.multiply {
	width: 100%;
	height: 440px;
	background-size: cover!important;
}
#messageTop {
	background: url(assets/images/interview/ota_img_l.jpg) no-repeat center top;
}
#messageTop p {
	font-weight: 500;
	color: #fff;
}
#messageTop p:first-child {
	margin-bottom: .7em;
	padding-bottom: .32em;
	border-bottom: solid 2px #fff;
	font-size: 2.5rem;
}
#messageTop p + p {
	display: inline-block;
	border: none;
	font-size: 1.6rem;
}
#messageBody {
	margin-top: 60px;
	width: 100%;
	-webkit-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 42px;
	column-gap: 42px;
}
#interviewMenu {
	padding-top: 75px;
}
#contList {
	width: 100%;
}
#contList li {
	margin-top: 50px;
	width: 48%;
	width: calc((100% - 50px) / 2);
}
#contList li a img {
	transition: .45s;
}
#contList li a:hover img {
	opacity: 1;
	transform:scale(1.05);
	transition: .45s;
}
.contThumb {
	overflow: hidden;
	width: 210px;
}
#contList .interviewCaption {
	width: calc(100% - 210px);
}
#contList li:last-child .interviewCaption dt {
	bottom: 25px;
	right: 32px;
}
/* Q&A */
.titleJp {
	font-size: 2.1rem;
	font-weight: 500;
}
#voiceBody {
	background: #fff;
}
.voiceList {
	padding: 80px 0;
	width: 100%;
}
.voiceList > li {
	position: relative;
	border: solid 1px #5989bd;
}
.voiceList > li + li {
	margin-top: 25px;
}
.voiceList > li > a {
	padding: 1.4em 25px;
	background: #f0f5f9;
	cursor: pointer;
	line-height: 1.5;
	font-size: 2.0rem;
	font-weight: 500;
	color: #004da0;
}
.voiceList > li > div {
	display: none;
	padding: 35px 50px 25px;
}
.viewVoice {
	width: 150px;
}
.viewVoice p {
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1;
}
.viewVoice p + p {
	margin-left: 20px;
}
.btnIcon, .btnIcon span {
	display: inline-block;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
}
.btnIcon {
	position: relative;
	top: 11px;
	width: 25px;
	height: 25px;
}
.btnIcon span {
	position: absolute;
	width: 100%;
	height: 1px;
	background-color: #004da0;
}
.btnIcon span:nth-of-type(1) {
	transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	background-color: #004da0;
}
.btnIcon span:nth-of-type(2) {
	transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-moz-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-o-transform: rotate(90deg);
}
.btnIcon.active span:nth-of-type(2) {
	transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	-moz-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-o-transform: rotate(180deg);
}
.question {
	position: relative;
	padding-left: 45px;
	width: calc(100% - 150px);
}
.question::before {
	content: "Q";
	position: absolute;
	top: calc(50% - .5em);
	left: 0;
	width: 30px;
	text-align: center;
	line-height: 1;
	font-family: 'Roboto', sans-serif;
	font-weight: 500;
	font-size: 4.0rem;
	color: #004da0;
}
.answerList li {
	padding: 25px 35px;
	width: calc((100% - 60px) / 3);
	border: solid 4px #ccc;
}
.answerPoint {
	padding-top: 10px;
	text-align: center;
}
.answerPoint > span {
	display: inline-block;
	margin-bottom: 10px;
	padding: 1.5em 6em 1.5em 2em;
	border-radius: 6px;
	background: #5989bd;
	line-height: 1.5;
	font-weight: 500;
	font-size: 1.7rem;
	color: #fff;
}
.answerPoint::after {
	content: "";
	display: inline-block;
	vertical-align: bottom;
	margin-left: -5.5em;
	width: 135px;
	height: 135px;
	background: url(assets/images/interview/icon_man.svg) no-repeat;
	background-size: 100%!important;
}
.woman::after {
	width: 116px;
	background: url(assets/images/interview/icon_woman.svg) no-repeat;
}
/* 会社を知る */
#overview, #otherInfo {
	margin-top: 80px;
}
#history {
	margin-top: 65px;
}
#outline .subhead.mid {
	margin-bottom: 35px;
}
.contInner {
	padding: 80px;
	background: #fff;
}
.qualifiedList li {
	width: 34%;
	min-width: 310px;
	text-align: left;
}
.qualifiedList li:nth-child(odd) {
	margin-right: 65px;
}
.qualifiedList li:nth-child(2) {
	margin-top: 0;
}
.qualifiedList li > span {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 5em);
}
.qualifiedList li > span:nth-child(2) {
	width: 5em;
	text-align: right;
}
#otherInfo h3 {
	text-align: center;
	font-size: 3.1rem
}
#otherList li {
	width: calc((100% - 50px) / 3);
	line-height: 1.5;
}
#otherList li:nth-child(n+4) {
	margin-top: 25px;
}
#otherList li a {
	width: 100%;
	padding: 1.47em 2.1em;
	border: solid 1px #5989bd;
	background: #f0f5f9;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 500;
	color: #004da0;
}
#otherList li a, .entryLink a {
	position: relative;
}
#otherList li a::after, .entryLink a::after {
	content: "";
	position: absolute;
	right: 12px;
	bottom: 11px;
	display: block;
	width: 19px;
	height: 17px;
	background: url(assets/images/outline/icon_blank.svg) no-repeat;
}
.entryLink.careerForm a::after {
	content: none;
}
.tbStyle, .tbStyle2 {
	width: 100%;
	border-bottom: solid 1px #ddd;
}
.tbStyle th, .tbStyle td, .tbStyle2 th, .tbStyle2 td {
	padding: 20px 25px;
	border-top: solid 1px #ddd;
	vertical-align: middle;
}
.tbStyle th, .tbStyle2 th {
	width: 180px;
	background: #f0f5f9;
	text-align: center;
	font-weight: 500;
	color: #004da0;
}
.tbStyle2 {
	border: solid 1px #ddd;
}
.tbStyle2 th, .tbStyle2 td {
	border-right: solid 1px #ddd;
	text-align: center;
}
.tbStyle2 th {
	padding: 10px 25px;
}
.tbcap {
	margin-bottom: 22px;
	line-height: 1.5;
	text-align: left;
	font-size: 1.7rem;
	font-weight: 500;
	color: #004da0;
}
.col2 {
	width: 35%;
}
.col3 {
	width: 43%;
}
.listStyle li {
	list-style: disc;
	margin-left: 1.4em;
	line-height: 1.6;
}
.listStyle li + li {
	margin-top: .4em;
}
/* 事業を知る */
.businessArticle {
	padding: 110px 0 60px;
	background: #fff;
}
.linehead {
	position: relative;
	text-align: left;
	letter-spacing: .1em;
	line-height: 1.6;
	font-size: 2.5rem;
}
.linehead::after {
	content: '';
	position: absolute;
	top: calc(50% - 1px);
	left: 0;
	width: 100%;
	height: 1px;
	background: #bbb;
}
.linehead > span {
	position: relative;
	display: inline-block;
	padding-right: 2em;
	background: #fff;
	z-index: 111;
}
.businessArea {
	padding-top: 90px;
}
.dashedLine {
	margin-top: 55px;
	border-top: dashed 1px #ccc;
}
.businessBox {
	margin-top: 55px;
	padding: 70px 80px;
	border: solid 1px #5989bd;
}
.businessBox + .businessBox {
	margin-top: 45px;
}
#shinjoList.businessBox {
	padding: 0 55px;
}
#shinjoList li {
	padding: 1.9em 0 1.9em 2em;
	width: 48.5%;
	line-height: 1.5;
	text-indent: -2em;
	font-weight: 500;
	font-size: 1.8rem;
	color: #004da0;
}
#shinjoList li:nth-child(n+3) {
	border-top: solid 1px #acc4de;
}
.businessTxt {
	margin-top: 55px;
	width: 100%;
	-webkit-column-count: 2;
	column-count: 2;
	-webkit-column-gap: 42px;
	column-gap: 38px;
}
.bBoxTtl {
	line-height: 1.6;
	text-align: center;
	font-weight: 500;
	font-size: 2.1rem;
}
.bBoxTtl > span {
	display: inline-block;
	padding: 0 .4em .7em;
	border-bottom: solid 2px #666;
}
.bBoxSubTtl {
	margin-top: 1.2em;
	text-align: center;
	font-size: 1.9rem;
}
.bBoxCont {
	margin-top: 50px;
}
#educationBox > div:first-child {
	width: 43.7%;
}
.educationImg {
	width: 51.97%;
	text-align: center;
}
.educationCont {
	padding: 25px 30px;
	background: #f0f5f9;
	border: solid 1px #5989bd;
}
.educationCont dt {
	margin-bottom: .6em;
	line-height: 1.5;
	text-align: center;
	font-weight: 700;
	font-size: 1.9rem;
	color: #004da0;
}
.plus {
	position: relative;
	margin: 20px auto;
	width: 36px;
	height: 36px;
}
.plus::before, .plus::after {
	content: '';
	display: inline-block;
	position: absolute;
	left: 50%;
	width: 36px;
	height: 36px;
	border-top: 2px solid #5989bd;
	transform: translateX(-50%);
}
.plus::before {
	top: 17px;	
}
.plus:after {
	left: -17px;
	transform: rotate(90deg);
}
.educationTxt {
	margin-top: -75px;
	line-height: 1.5;
	text-align: center;
	font-weight: 500;
	font-size: 2.2rem;
	color: #004da0;
}
.educationTxt::before {
	content: "";
	display: block;
	margin: 0 auto 1em;
	width: 1px;
	height: 100px;
	background: #004da0;
}
#teamwork {
	position: relative;
}
#teamwork.businessBox {
	margin-bottom: 50px;
	padding-bottom: 90px;
}
#teamworkList li {
	width: calc((100% - 90px) / 4);
}
#teamworkList li > p {
	text-align: center;
}
#teamworkList dl {
	position: relative;
	padding: 20px;
	border: solid 1px #5989bd;
	height: 100%;	
}
#teamworkList li + li dl::before {
	content: "";
	display: block;
	position: absolute;
	left: -31px;
	top: calc(50% - 1px);
	width: 30px;
	height: 1px;
	background: #5989bd;
}
#teamworkList dt {
	margin-bottom: .6em;
	line-height: 1.5;
	text-align: center;
	font-weight: 500;
	font-size: 1.6rem;
	color: #004da0;
}
#teamworkList dd {
	line-height: 1.7;
}
.teamworkLink {
	position: absolute;
	bottom: -50px;
	left: 0;
	right: 0;
	margin: 0 auto;
	max-width: 550px;
	background: #fff;
}
.teamworkLink a {
	width: 100%;
	height: 100px;
	background: linear-gradient(90deg, #0083ce, #004da0);
	letter-spacing: .11em;
	text-align: center;
	line-height: 1.5;
	font-size: 1.9rem;
	font-weight: 700;
	color: #fff;
}
#community {
	padding: 110px 0;
}
#commuList, #commuList li + li, .noImgList {
	margin-top: 75px;
}
.commuImg {
	width: 57.2%;
	height: 440px;
	background-size: cover!important;
}
#moviePreview .commuImg {
	background: url(assets/images/business/moviepreview_img.jpg) no-repeat center center;
}
#contest .commuImg {
	background: url(assets/images/business/contest_img.jpg) no-repeat center center;
}
#kikin .commuImg {
	background: url(assets/images/business/kikin_img.jpg) no-repeat center center;
}
#sports .commuImg {
	background: url(assets/images/business/sports_img.jpg) no-repeat center center;
}
#commuList li > dl {
	width: calc(100% - (57.2% + 80px));
}
#commuList dt, .noImgList dt {
	margin-bottom: .6em;
	line-height: 1.5;
	font-size: 1.8rem;
	color: #004da0;
}
#commuList .contWrap2 > div {
	order: 2;
}
.noImgList li {
	padding: 35px 0;
	width: 48.5%;
	border-bottom: solid 1px #acc4de;
}
.noImgList li:nth-child(-n+2) {
	border-top: solid 1px #acc4de;
}
.noImgList dl {
	width: 100%;
}
.noImgList dt {
	font-size: 1.7rem;
}
#businessCont2 {
	margin-top: 0;
}
#salesforce {
	position: relative;
}
#salesforce.businessBox {
	padding: 50px;
}
#salesforce dt {
	width: 26%;
	text-align: center;
}
#salesforce dd {
	padding-left: 4.5%;
	width: 70%;
	border-left: solid 2px #0c98d1;
}
#salesforceList li {
	width: calc(48% - 1.4em);
	text-align: left;
	font-weight: 500;
}
#salesforceList li:nth-child(2) {
	margin-top: 0;
}
.updateDate {
	position: absolute;
	right: 25px;
	bottom: 15px;
	font-size: 1.2rem;
}
#datahealth {
	line-height: 1.5;
}
#datahealth li {
	text-align: center;
}
#oldData {
	width: 26.5%;
}
#kenpoSystem {
	width: 22.6%;
}
#kumiaiin {
	width: 18.4%;
}
.arrowAi {
	width: 8.3%;
}
#advice.arrowAi {
	margin-right: 2%;
	width: 22.2%;
}
#datahealth dl {
	width: 100%;
}
.aiTtl {
	margin-bottom: .8em;
	font-weight: 500;
	font-size: 1.9rem;
	color: #004da0;
}
#oldData, #kenpoSystem, #oldData > dl > dd, .aiTtl.ai {
	padding: 20px;
	background: #fff;
	border: solid 1px #5989bd;
}
#oldData, .aiTtl.ai {
	padding: 30px 20px 20px;
	background: #f0f5f9;
}
#kenpos .aiTtl {
	margin-bottom: .5em;
	font-size: 1.7rem;
}
#kenpos dd {
	font-size: 1.5rem;
}
#kenpos dd p + p {
	margin-top: 10px;
}
.aiTtl.ai {
	margin: 15px 0 0 0;
	padding: 13px;
	font-size: 1.8rem;
}
#kumiaiin > div {
	margin: 0 auto;
}
#kumiaiin .aiTtl {
	margin: 1em 0 0 0;
	font-size: 1.8rem;
}
.arrowAi {
	position: relative;
}
.arrowAi .arrowNext {
	top: calc(50% - 13px);
	right: inherit;
	width: 154%;
	height: 14px;
}
#advice.arrowAi .arrowNext {
	width: 100%;
}
.arrowAi .arrowNext::before {
	height: 2px;
}
.arrowAi .arrowNext::after {
	bottom: -7px;
	width: 17px;
	height: 17px;
	border-width: 2px;
}
.arrowAi > div {
	width: 100%;
}
.arrowAi p {
	position: relative;
	top: -1.5em;
	font-weight: 500;
	font-size: 1.7rem;
}
#advice.arrowAi p {
	top: 2.3em;
}
#summaryImg {
	height: 400px;
	background: url(assets/images/business/summary_img.jpg) no-repeat center bottom;
	background-size: cover;
}
.businessSummary {
	margin-top: 3.7em;
	text-align: center;
}
/* 採用を知る */
#jobinfo #headBox + section {
	padding-top: 80px;
}
#entry {
	margin-top: 80px;
}
#flow, #scheduleCheck, #requirements, #careerRequirements {
	margin-top: 65px;
}
#jobinfo .contSummary {
	margin-bottom: 45px;
}
#flow .subhead.mid, #requirements .subhead.mid, #careerEntryWrap .subhead.mid, #jobinfo #careerRequirements .contSummary {
	margin-bottom: 35px;
}
#careerRequirements .subhead.mid {
  margin-bottom: .45em;
}
.entryList li + li {
	margin-top: 30px;
}
.entryLink {
	width: 430px;
}
.entryLink + p {
	width: calc(100% - (430px + 40px));
}
.careerForm {
	width: 440px;  
}
.careerForm + p {
	width: calc(100% - (440px + 40px));
}
.entryLink a {
	height: 90px;
	border: solid 1px #5989bd;	
}
.myPage a {
	background: #f0f5f9;
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	color: #004da0;
}
.myPage br {
	display: none;
}
#listUnder {
	margin-top: 55px;
	padding-top: 50px;
	border-top: solid 1px #ddd;
	text-align: center;
}
#otherLink li {
	display: inline-block;
	margin: 0 10px;
}
.captionTxt {
  line-height: 1.7;
	font-size: 1.7rem;
	font-weight: 500;
	color: #004da0;
}
#listUnder .captionTxt {
	margin-bottom: 1.5em;
}
#flowList li {
	text-align: center;
	font-weight: 500;
	color: #004da0;
}
#flowList .en {
	margin-bottom: .15em;
	font-size: 2.0rem;
}
.flowPoint {
	position: relative;
	width: 12.2vw;
	height: 12.2vw;
	max-width: 210px;
	max-height: 210px;
	background: #fff;
	border: solid 1px #5989bd;
	line-height: 1.5;
	font-size: 1.9rem;
}
.careerFlow .flowPoint {
  width: 14.34vw;
  height: 10.6vw;
  max-width: 258px;
  max-height: 178px;
}
.arrowNext {
	display: block;
	position: absolute;
	right: -22px;
	width: 38px;
	height: 10px;
	z-index: 1;
}
.arrowNext::after, .arrowNext::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	margin: auto;
}
.arrowNext::before {
	width: 100%;
	height: 1px;
	background: #5989bd;
}
.arrowNext::after {
	bottom: -6px;
	right: 3px;
	width: 13px;
	height: 13px;
	border-top: 1px solid #5989bd;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.salaryCat dt, .salaryCat dd {
	display: inline-block;
	vertical-align: middle;
}
.salaryCat dt {
	width: 100px;
}
#jobinfo .multiply a {
	display: block;
}
#jobinfo .multiply p {
	text-align: center;
	letter-spacing: .1em;
	font-size: 2.4rem;
	color: #fff;
}
#jobinfo .multiply .en {
	letter-spacing: .35em;
	font-size: 2.7rem;
}
#jobinfo .multiply p.multiply-txt {
	font-size: 3.3rem;	
}
.btnFrame {
	margin-bottom: .7em;
	padding: 0 .85em;
	width: 440px;
	height: 88px;
	border: solid 2px #fff;
	font-style: italic;
	font-weight: 500;
}
#scheduleCheck {
	background: url(assets/images/jobinfo/schedule_img.jpg) no-repeat center top;
}
#entry {
	background: url(assets/images/jobinfo/entry_img.jpg) no-repeat center top;
}
#eventList {
	margin-top: 40px;
	line-height: 1.5;
}
.dateTime span {
	display: block;
}
.eventName, .eventLink {
	display: inline-block;
	vertical-align: middle;
}
.eventName {
	margin: 8px 6px;
}
.eventLink {
	margin: 0 6px;
}
.eventLink a {
	display: block;
	padding: 4px 8px 5px 10px;
	background: #f0f5f9;
	border: solid 1px #5989bd;
	font-size: 1.3rem;
	color: #004da0;
}
#flow .takePart {
	margin-top: 35px;
}
#session .takePart {
	margin-top: 22px;
	padding: 35px 40px;
	border: solid 1px #ddd;
}
.takePart p + p {
	margin-top: 1em;
}
.takePart a {
	text-decoration: underline;
	font-weight: 500;
	color: #004da0;
}
.takePart a:hover {
	text-decoration: none;
}
.careerNotes ul li {
  margin-left: 1.45em;
  list-style: disc;
}
.takePart.contactus {
  margin-top: .7em;
}
/* お知らせ */
#newsArea {
	margin-top: 85px;
}
#newsWrap {
	width: 100%;
}
#newsMain {
	width: calc(100% - 240px);
}
#newsList li {
	border-bottom: solid 1px #ddd;
	line-height: 1.65;
}
#newsList li:first-child {
	border-top: solid 1px #ddd;
}
#newsList li time {
	width: 125px;
}
#newsList li p {
	width: calc(100% - 125px);
}
#newsList li a {
	padding: 1.5em 0;
	width: 100%;
}
#sideMenu {
	width: 190px;
}
#archiveBox dt {
	padding: .77em 20px;
	background: linear-gradient(90deg, #0083ce, #004da0);
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
}
#archiveList li {
	margin-top: 12px;
}
#archiveList li a {
	display: block;
	width: 100%;
	padding: .465em 20px;
	border: solid 1px #999;
}
#archiveTitle {
	margin-bottom: 1.4em;
	font-size: 2.3rem;
}
.pagenation {
	margin: 65px 0 0 -16px;
	letter-spacing: 0;
	line-height: 1;
}
.pagenation span, .pagenation a {
	display: inline-block;
	vertical-align: top;
	margin: 0 16px;
	min-width: 16px;
	text-align: center;
	color: #666;
}
.pagenation .current::after {
	content: "";
	display: block;
	margin: 10px auto 0;
	width: 16px;
	height: 2px;
	background: #5989bd;
}
/* お知らせ・詳細ページ */
#articleTtl {
	margin-bottom: 40px;
	padding: 22px 0 25px;
	border-top: solid 3px #ddd;
	border-bottom: solid 1px #ddd;
}
#articleTtl h3 {
	margin-top: .15em;
	line-height: 1.45;
	font-size: 2.2rem;
}
.entryBody p + ol, .entryBody p + ul {
	margin-top: .5em;
}
.entryBody li {
	margin: .4em 0 0 1.7em;
	line-height: 1.5;
}
.entryBody ul li {
	list-style: disc;
	text-align: left;
}
.entryBody ol li {
	list-style: decimal;
	text-align: left;
}
.entryBody img {
	padding: .8em 0;
}
.entryBody a {
	text-decoration: underline;
	color: #0074ce;
}
.entryBody a:hover {
	text-decoration: none;
}
#pageNavi {
	margin-top: 65px;
	padding: 16px 15px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	width: 100%;
	text-align: center;
	line-height: 1;
}
#pageNavi ul li a {
	letter-spacing: .07em;
	font-size: 1.6rem;
	font-weight: 500;
	color: #004da0;
}
.all.en {
	padding: 15px;
}
.prev, .next {
	width: 40px;
}
.prev a, .next a {
	display: block;
	padding: 15px;
}
#pageNavi ul li a img {
	opacity: 1;
}
/* フッター */
#companyInfo {
	padding: 70px 75px;
}
#companyInfo dl dt {
	margin-right: 22px;
}
#companyInfo dl dd {
	font-size: 1.3rem;
}
#companyInfo .viewBtn a {
	display: block;
	padding: 10px 60px;
	max-width: 232px;
	border: solid 1px #666;
	text-align: center;
	letter-spacing: .08em;
	font-size: 1.3rem;
	font-weight: 500;
}
.border {
	position: relative;
	flex-grow: 1;
}
.border:before {
	content: "";
	position: absolute;
	top: 0;
	left: 8%;
	width: 84%;
	height: 1px;
	background: #ccc;
}
#copyright {
	padding: 35px;
	background: #fff;
	text-align: center;
	letter-spacing: .09em;
	font-size: 1.1rem;
	color: #666;
}
/* リンクボタン */
.viewBtn.detail a {
	position: relative;
	display: block;
	padding: 23px 42px;
	width: 230px;
	background: linear-gradient(90deg, #0083ce, #004da0);
	line-height: 1;
	letter-spacing: .06em;
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
}
.viewBtn.detail a span {
	animation: animeSample 1s ease .5s forwards;
}
.viewBtn.detail a span::after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	right: 42px;
	width: 25px;
	height: 1px;
	background: #fff;
}
/* 404 */
#notFound {
	padding: 110px 7vw 60px;
	text-align: center;
}
#notFound h2 .en {
	margin-bottom: 1em;
	font-size: 3.7rem;
}
#notFound p + p {
	margin-top: 1em;
}
#notFound a {
	text-decoration: underline;
}
#notFound a:hover {
	text-decoration: none;
}
/* キャリア採用エントリー */
#headForm {
  padding: 105px 40px 50px;
  text-align: center;
}
.captionTxt + .captionTxt {
  margin-top: .4em;
}
.contactus {
  margin-top: 1.2em;
}
.contactus + .contactus {
  margin-top: .1em;
}
.contactus a {
  font-weight: normal;
}
.careerFormBox {
  padding-top: 0!important;
}
.careerFormSummary {
  margin-bottom: 50px;
  padding-top: 80px;
}
.confirmSummary {
  display: none;
}
/* Mail Form */
button, input, select, textarea, option {
	font-family: inherit;
	font-size: inherit;
}
button, label, input[type="button"], input[type="reset"], input[type="submit"] {
  border: none;
}
input[type="text"],
input[type="submit"],
input[type="email"],
input[type="url"],
textarea,
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	color: #444;
}
#mailfield input[type="text"],
#mailfield input[type="email"],
#mailfield input[type="url"] {
  width: 100%;
	height: 48px;
}
#mailfield input, 
#mailfield textarea {
	border: solid 1px #ddd;
	padding: .8em;
	vertical-align: middle;
	letter-spacing: 1px;
	-webkit-user-select : auto;
}
#mailfield textarea {
	width: 100%;
	resize: vertical;
}
#mailfield .inputTxt .mwform-tel-field input[type="text"],
#mailfield .inputTxt .mwform-zip-field input[type="text"] {
	width: 74px;
}
#mailfield .postcode input[type="text"] {
  width: 150px;
}
.inputFull input {
	width: 100%;
}
.mwform-checkbox-field, .mwform-radio-field {
	display: inline-block;
	margin-right: 1.8em;
}
.mwform-checkbox-field input, .mwform-radio-field input {
	display: none;
}
.mwform-checkbox-field label, .mwform-radio-field label {
	display: inline-block;
	position: relative;
	padding: 9px 0 9px 37px;
	text-align: left;
	line-height: 1.5;
	vertical-align: middle;
	cursor: pointer;
}
.mwform-checkbox-field label::before {
	content: "";
	position: absolute;
	top: calc(50% - 12px);
	left: 0;
	display: block;
	width: 24px;
	height: 24px;
	border: solid 1px #ccc;
	background: #fff;
}
.mwform-checkbox-field span::after {
	-webkit-transition: opacity .2s linear;
	transition: opacity .2s linear;
	content: "";
	position: absolute;
	top: 50%;
	left: 8px;
	display: block;
	opacity: 0;
	margin-top: -7px;
	width: 8px;
	height: 11px;
	border-right: 2px solid #004da0;
	border-bottom: 2px solid #004da0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.mwform-radio-field label::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	display: block;
	margin-top: -12px;
	width: 24px;
	height: 24px;
  border: solid 1px #ccc;
	background: #fff;
	border-radius: 50%;
}
.mwform-radio-field-text::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 8px;
	display: block;
  margin-top: -4px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #004da0;
	opacity: 0;
	-webkit-transition: opacity .2s linear;
	transition: opacity .2s linear;
}
.mwform-checkbox-field input[type="checkbox"]:checked + span::after,
.mwform-radio-field input[type="radio"]:checked + span::after {
	opacity: 1;
}
.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0!important;
}
#mailfield dl {
	display: table;
	margin: 0;
	padding: 0 20px;
	width: 100%;
}
#mailfield dl:nth-of-type(odd) {
	background: #f8f8f8;
}
#mailfield dt, #mailfield dd {
	display: table-cell;
	vertical-align: middle;
	margin: 0;
	line-height: 1.6;
	text-align: left;
}
#mailfield dt {
	padding: 1.5em 1em 1.5em 3.7em;
	text-indent: -3.7em;
	width: 26%;
}
#mailfield dd {
	padding: 1.5em 1em 1.5em 1em;
	width: 72%;
}
.must span, .optional span {
	margin-right: 1.3em;
	padding: .25em .6em .35em;
	background: #e21726;
	font-size: 1.2rem;
	font-weight: 500;
	color: #fff;
}
.optional span {
	background: #999;
}
.mwNotes {
	display: block;
	margin-top: .85em;
	font-size: 1.3rem;
}
.mf_buttons {
	margin-top: 45px;
	width: 100%;
	text-align: center;
}
.mf_buttons input {
	display: inline-block;
	margin: 0 10px;
	width: 300px;
  height: 65px;
  border: none;
  background: #004da0;
	text-align: center;
	line-height: 65px;
	font-size: 1.8rem;
	font-weight: bold;
	font-weight: 500;
	color: #fff;
	cursor: pointer;
}
.mf_buttons input:focus {
	outline: none;
}
.mw_wp_form .error {
	margin-top: .5em;
	font-size: 1.3rem!important;
	color: #f02222!important;
}
/* IEのinput要素に出てくるマークを消去 */
/* text */
input::-ms-clear {
	visibility: hidden;
}
#mailfield input[type="checkbox"]:not(:target) {
	border: 0px\9;
}
::placeholder {
  color: #999;
}
/* 確認画面 */
.mw_wp_form_confirm .must span,
.mw_wp_form_confirm .optional span,
.mw_wp_form_confirm #mailfield dl#kakuninEmail,
.mw_wp_form_confirm #mailfield .mwNotes {
	display: none;
}
.mw_wp_form_confirm .optional::after {
	content: "（任意）";
}
.mw_wp_form_confirm #mailfield dt br {
	display: none;
}
.mw_wp_form_confirm .mf_buttons {
	margin-bottom: 0;
}
.confirmTxt {
	margin: 3em 0 2em;
}
.mw_wp_form_confirm .confirmTxt {
	display: block;
}
.confirmation {
  font-weight: 500;
}
.mf_buttons input.backSubmit {
  border: solid 1px #004da0;
  background: #fff;
  color: #004da0;
}
.mw_wp_form_confirm dl#personalInfo {
  display: none;
}
.mw_wp_form_confirm #personalInfo {
  display: none;
}
.mw_wp_form_confirm dl:nth-child(10), .mw_wp_form_confirm dl:nth-child(12) {
	background: #f8f8f8;
}
.mw_wp_form_confirm dl:nth-child(11) {
	background: none!important;
}
.mw_wp_form_confirm .confirmSummary {
  display: block;
}
/* 完了画面 */
.mw_wp_form_complete {
	display: none;
}
.sendNotes {
  margin-top: 1em;
}
/* reCAPTCHA v3のバッジ非表示 */
.grecaptcha-badge { 
	visibility: hidden!important;
}
.privacy {
	margin: .5em 0 .9em;
}
.privacy a {
	text-decoration: underline;
}
.privacy a:hover {
	text-decoration: none;
}

/*-------------------------------------------------
 * hover
-------------------------------------------------*/
@media screen and (min-width: 1366px) {
  #gNavi li a, .viewBtn a, #topNewsList a, .joinList li a, #otherList li a, #jobinfo .multiply a, .entryList a, .eventLink a, #newsList li a, #archiveList li a, #pageNavi ul li a, .teamworkLink a, .mf_buttons input {
	  transition: color .4s ease, opacity .4s ease;
    -webkit-transition: color .4s ease, opacity .4s ease;
  }
  #gNavi li ul li a span {
	  transition: border-color .4s ease;
    -webkit-transition: border-color .4s ease;;
  }
  #gNavi li:not(.entryBtn) a:hover {
	  color: #004da0;
  }
  #gNavi li.entryBtn a:hover {
	  opacity: .8;
  }
  .viewBtn a:hover, #topNewsList a:hover, .joinList li a:hover, #otherList li a:hover, #jobinfo .multiply a:hover, .entryList a:hover, .eventLink a:hover,  #newsList li a:hover, #archiveList li a:hover, #pageNavi ul li a:hover, .teamworkLink a:hover, .mf_buttons input:hover {
	  opacity: .6;
  }
  #gNavi li ul li a:hover {
	  color: #9ecbfc!important;
  }
  #gNavi li ul li a:hover span {
    border-color: #9ecbfc;  
  }
}

/*-------------------------------------------------
 * mediaqueries
-------------------------------------------------*/
@media screen and (max-width: 1679px) {
	/* 見出し */
	#headBox {
		height: 440px;
	}
	#titleWrap {
		height: 250px;
	}
	/* トップページ */
	#interviewWrap::after {
		height: 62.28%;
	}
	.position span {
		display: block;
	}
	#faqWrap  {
		margin-top: 2.432vw;
	}
	/* 社員を知る */
	#headimg, #interviewWrap::after {
		width: 79.584vw;
	}
	#interview #faqWrap {
		margin-top: 5.9vw;
	}
	#interview #interviewWrap::after {
		height: 63.579%;
	}
	#personSummary {
		padding-left: calc(100% - 79.584vw);
	}
	#messageTop {
		height: 440px;
	}
}
@media screen and (max-width: 1439px) {
	/* ヘッダー */
	header {
		padding:0 5vw;
		height: auto;
	}
	/* グローバルナビ */
	#toggle {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-align-items: center;
		align-items: center;
		width: 32px;
		height: 24px;
		color: #fff;
	}
	.trigger,
	.trigger span {
		display: inline-block;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.trigger {
		position: relative;
		width: 100%;
		height: 100%;
		cursor: pointer;
	}
	.trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 2px;
		border-radius: .001%;
		background: #0078cc;
		z-index: 9999;
	}
	.trigger span:nth-of-type(1) {
		top: 0;
	}
	.trigger span:nth-of-type(2) {
		top: 11px;
	}
	.trigger span:nth-of-type(2)::after {
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		width: 100%;
		height: 2px;
		border-radius: .001%;
		background: #0078cc;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.trigger span:nth-of-type(3) {
		bottom: 0;
	}
	.trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(8px) scale(0);
		transform: translateY(8px) scale(0);
	}
	.trigger.active span:nth-of-type(2) {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.trigger.active span:nth-of-type(2)::after {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	.trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-8px) scale(0);
		transform: translateY(-8px) scale(0);
	}
	.hide {
		overflow: hidden;
		visibility: hidden;
		opacity: 0;
	}
	.animation {
		-webkit-transition-property: opacity, visibility;
		transition-property: opacity, visibility;
		-webkit-transition-duration: .3s;
		transition-duration: .3s;
		-webkit-transition-timing-function: ease-in;
		transition-timing-function: ease-in;
	}
	.no-scroll {
		overflow: hidden;
	}
	#headWrap, nav {
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
		width: 100%;
	}
	#headWrap {
		-webkit-justify-content: space-between;
		justify-content: space-between;
		width: 100%;
		height: 104px;
		background: #fff;
		z-index: 9999;
	}
	#naviBox {
		display: -webkit-flex;
		display: flex; 
		position: fixed;
		top: 0;
		left: 0;
		margin: 0;
		width: 100%;
		height: 100%;
		-webkit-overflow-scrolling: touch;
		overflow: auto;
		background: #fff;
		z-index: 999;
	}
	#gNavi {
		display: -webkit-flex;
		display: flex;
		-webkit-box-align: start;
    align-items: start;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		margin: 0;
		padding: 0 10vw;
		width: 100%;
		max-height: 100%;
		background-color: transparent;
		border-bottom: none;
	}
	body.is-fixed #gNavi {
		position: static;
	}
	#gNavi .subMenu {
		visibility: visible;
		position: static;
		-webkit-transform: none;
		transform: none;
		padding: 0;
		width: auto;
		opacity: 1;
		transition: none;
	}
	.hide #gNavi .subMenu {
		visibility: hidden;
	}
	#gNavi li, #gNavi li#jobinfoMenu {
    margin: 0;
    width: calc((100% - 120px) / 4);
	}
	#gNavi li .current {
		color: #444;
	}
	#gNavi li.entryBtn {
  	margin-top: 40px;
		width: calc((100% - 40px) / 2);
		height: auto;
	}
	#gNavi li:not(.entryBtn) a, .menuTitle {
		-webkit-transition: none;
    transition: none;
	}
	#gNavi li:hover > .subMenu {
		-webkit-transform: none;
		transform: none;  	
	}
	#gNavi li:not(.entryBtn) a span {
		display: block;
		padding: 20px 0;
		width: 100%;
		border-bottom: solid 1px #ccc;
	}
	#gNavi li ul {
		padding: 15px 0;
		border-bottom: solid 1px #ccc;
	}
	#gNavi li ul#newgradMenu {
  	border: none;
  	padding-bottom: 0;
	}
	#gNavi li ul li {
		background: none;
		text-align: left;
		width: 100%;
	}
	#gNavi li#jobinfoMenu {
  	padding-bottom: 0;
	}
	#gNavi li:not(.entryBtn) ul li a, .menuTitle {
		padding: 15px 0;
		background: none;
		color: #444;
	}
	#gNavi li:not(.entryBtn) ul li a span {
		margin: 0;
		padding: 0;
		border: none;
	}
	.menuTitle {
    padding-top: 30px;
  	color: #004da0;
	}
	.menuTitle span {
  	border-color: #ccc;
	}
	.entryBtn a {
		padding: 20px 40px;
	}
	/* コンテンツ */
	.contWrap {
		padding: 0 7vw;
	}
	#faqWrap.contWrap2 {
		padding-left: 7vw;
	}
	#joinUs {
		padding-left: 5vw;
		padding-right: 5vw;
	}
	#joinUs .contWrap {
		padding: 0;
	}
	#contList {
		padding-left: 7vw;
		padding-right: 7vw;
	}
	.leading {
		padding: 6vw 7vw;
	}
	/* トップページ */
	#topimage {
		height: -webkit-calc(100% - 104px);
		height: calc(100% - 104px);
		background: url(assets/images/index/topimage_sp.jpg) no-repeat center center;
	}
	#interviewWrap::after {
		height: 65%;
	}
	#interviewList li a img, #contList li a img {
		transition: none;
	}
	#interviewList li a:hover img, #contList li a:hover img {
		transform:scale(1);
		transition: none;
	}
	#interviewWrap .subhead + dd {
		width: 55%;
	}
	/* 社員を知る */
	#personSummary {
		padding-top: 6vw;
		padding-bottom: 6vw;
	}
	.interviewArticle {
		padding-top: 8vw;
		padding-bottom: 9.5vw;
	}
	.letterBody + .letterBody {
		margin-top: 8vw
	}
	#workSchedule {
		padding-top: 8vw;
		padding-bottom: 8vw;
	}
	#fromManager {
		padding-bottom: 6vw;
	}
	#messageBody {
		margin-top: 4vw;
	}
	/* 会社を知る */
	#overview, #otherInfo, #history {
		margin-top: 6vw;
	}	
	/* 事業を知る */
	.businessArticle {
		padding: 8vw 0 4vw;
	}
	.linehead > span {
		padding-right: 3.5vw;
	}
	.businessArea {
		padding-top: 7vw;
	}
	.dashedLine, .businessBox, .businessTxt {
		margin-top: 4vw;
	}
	.businessBox {
		padding: 6vw;
	}
	.businessBox + .businessBox {
		margin-top: 3vw;
	}
	#shinjoList.businessBox {
		padding: 0 4vw;
	}
	.bBoxCont {
		margin-top: 3.5vw;
	}
	.educationCont {
		padding: 2.5vw 2vw;
	}
	#community {
		padding: 8vw 0;
	}
	#commuList, #commuList li + li, .noImgList {
		margin-top: 6vw;
	}
	#commuList .contWrap2 {
		padding-left: 7vw;
	}
	#commuList .contWrap3 {
		padding-right: 7vw;
	}
	#commuList li > dl {
		width: calc(100% - (57.2% + 7vw));
	}
	#salesforce.businessBox {
		padding: 4vw;
	}
	.businessSummary {
		margin-top: 4vw;
	}
	/* 採用を知る */
	#jobinfo #headBox + section {
		padding-top: 6vw;
	}
	#entry, #flow, #scheduleCheck, #requirements, #newsArea, #careerRequirements {
		margin-top: 6vw;
	}
  #jobinfo .contSummary {
		margin-bottom: 6vw;
	}
  #jobinfo #careerRequirements .contSummary {
		margin-bottom: 35px;
	}
	.contInner {
		padding: 50px;
	}
  .careerForm {
    width: 380px;
  }
  .careerForm + p {
    width: calc(100% - (380px + 30px));
  }
  .careerFlow .flowPoint {
  	width: 15.1vw;
	}
	#listUnder {
		margin-top: 50px;
		padding-top: 42px;
	}
	/* キャリア採用エントリー */
  #headForm {
    padding: 7.03125vw 5vw 3.90625vw;
  }
  .careerFormSummary {
    margin-bottom: 50px;
    padding-top: 50px;
  } 
}
@media screen and (max-width: 1279px) {
	/* グローバルナビ */
	#naviBox {
		padding-top: 104px;
	}
	#gNavi {
  	display: block;
	}	
	#gNavi li, #gNavi li.entryBtn, #gNavi li#jobinfoMenu {
  	margin: 0;
		width: 100%;
	}
	#gNavi li.entryBtn {
  	padding-bottom: 10px;
  }
  #gNavi li.entryBtn + li {
    padding-bottom: 10vw;
  }
  #gNavi li ul#careerMenu {
    border: none;
  }
  #gNavi li ul li, .menuTitle {
		font-size: 1.5rem;
	}
  .menuTitle {
		text-align: left;
	}
	.menuTitle span {
  	padding: .8em 1em;
	}
	.entryBtn {
		padding-top: 0;
	}
  .entryBtn a {
  	display: inline-block;
  	padding: 25px;
	}
	.entryBtn a span.en {
  	margin-left: .3em;
	}	
	/* フッター */
	#companyInfo {
		padding: 6vw 5vw;
	}
	#copyright {
		padding: 2.5vw;
	}
	/* 見出し */
	h2:not(.inter) .en {
		font-size: 4.0rem;
	}
	#joinUs h2 .jp {
		margin-bottom: .5em;
	}
	#titleWrap, #titleWrap2 {
		width: 42vw;
	}
	/* コンテンツ */
	section + section, #joinUs {
		margin-top: 90px;
	}
	#topInterview {
		margin-top: 75px;
	}
	/* トップページ */
	#catch {
		width: 340px;
	}
	#topNews {
		margin: 75px auto;
	}
	.conttxtBox {
		width: 55%;
	}
	#topOutline .conttxtBox {
		left: 0;
	}
	#topBusiness .conttxtBox {
		right: 0;
	}
	#interviewList li {
		width: 31%;
	}
	.interviewCaption dt {
		bottom: 5px;
		right: 15px;
	}
	.interviewNo {
		font-size: 3.2rem;
	}
	#joinUs {
		padding-bottom: 50px;
	}
	.joinList li {
		margin-top: 27px;
    width: calc((100% - 3.64583vw) / 2);
	}
	.joinList li + li {
    margin-left: 1.822915vw;
  }
	.joinList li a {
    padding: 2em 14px;
		line-height: 1.5;
	}
	.joinGroup {
  	font-size: 1.8rem;
	}
	/* 社員を知る */
	#profileWrap {
		padding-right: 7vw;
	}
	.letterBody dt {
		padding-right: 60px;
		width: 30%;
	}
	.letterBody dd {
		width: 70%;
	}
	.letterImg {
		margin-top: 35px;
	}
	#contList li {
		width: 23.5%;
	}
	#contList li {
		margin-top: 40px;
	}
	#contList li a {
		display: block;
	}
	.contThumb {
		width: 100%;
	}
	#contList .interviewCaption {
		padding: 20px;
		width: 100%;
		height: 180px;
	}
	#contList .position {
		font-size: 1.6rem;
	}
	#contList li:last-child .person span {
		display: inline;
	}
	#contList li:last-child .interviewCaption dt {
		bottom: 16px;
		right: 16px;
	}
	#interviewMenu {
		padding-top: 6vw;
	}
	.voiceList {
		padding: 7vw 0;
		width: 100%;
	}
	.voiceList > li + li {
		margin-top: 2.75%;
	}
	/* 会社を知る */
	.qualifiedList li {
		width: 100%;
		min-width: inherit;
		max-width: 370px;
	}
	.qualifiedList li:nth-child(odd) {
		margin-right: 0;
	}
	.qualifiedList li:nth-child(2) {
		margin-top: .4em;
	}
	#otherList li {
		width: 49%;
	}
	#otherList li:nth-child(n+4), #otherList li:nth-child(3) {
		margin-top: 2%;
	}
	/* 事業を知る */
	#teamworkList li {
		width: calc((100% - 25px) / 2);
	}
	#teamworkList li + li dl::before {
		content: none;
	}
	#teamworkList li:nth-child(n+3) {
		margin-top: 2.5vw;
	}
	#salesforceList li {
		width: 100%;
	}
	#salesforceList li:nth-child(2) {
		margin-top: .4em;
	}
	#datahealth {
		display: block;
	}
	#oldData, #kenpoSystem, #kumiaiin, .arrowAi, #advice.arrowAi {
		margin: 0 auto;
		width: 100%;
		max-width: 500px;
	}
	#kumiaiin {
		margin-top: 15px;
	}
	.arrowAi {
		height: 100px;
	}
	.arrowAi .arrowNext, #advice.arrowAi .arrowNext {
		top: calc(50% - 7px);
		right: -13px;
		left: 0;
		margin: 0 auto;
		width: 100px;
		transform: rotate(90deg);
	}
	.arrowAi .arrowNext::before {
		width: 100%;
	}
	#advice.arrowAi {
		height: 126px;
	}
	#advice.arrowAi .arrowNext {
		width: 126px;
	}
	.arrowAi p {
		padding: .4em;
		background: #fff;
		z-index: 11;
	}
	.arrowAi p, #advice.arrowAi p {
		top: -.15em;
	}
	/* 採用を知る */
	.flowPoint {
		font-size: 1.7rem;
	}
	.arrowNext::before {
		width: 81%;
	}
	.btnFrame {
		height: 80px;
	}
	#jobinfo .multiply p {
		font-size: 2.2rem;
	}
	#jobinfo .multiply .en {
		font-size: 2.6rem;
	}
	#jobinfo .multiply p.multiply-txt {
		font-size: 3.0rem;
	}
	.tbStyle2 td {
		padding: 15px 13px;
	}
	.col2 {
		width: 30%;
	}
	.col3 {
		width: 45%;
	}	
	.entryList li {
		display: block;
	}
	.entryLink, .entryList li > p + p {
		width: 100%;
	}
	.entryList li > p + p {
		margin-top: 1.2em;
	}
	.entryLink a {
		height: 80px;
	}
	/* お知らせ */
	#newsList li time, #newsList li p {
		width: auto;
	}
	#newsList li time {
		padding-right: 25px;
	}
}
@media screen and (max-width: 959px) {
	/* コンテンツ */
	.contWrap2, #faqWrap.contWrap2, .contWrap3, #graduate.contWrap, #requirements.contWrap, #jobFair.contWrap, #overview.contWrap, #history.contWrap, #entryMethod.contWrap, #careerEntryWrap.contWrap {
		padding: 0;
	}
	.leading {
		width: 100%;
	}
	.pctxt {
		display: none;
	}
	.sptxt {
		display: inline;
	}
	/* 見出し */
	#headBox {
		flex-direction: column;
		height: auto;
	}
	#titleWrap {
		flex-direction: row;
		justify-content: start;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		width: 100%;
		height: auto;
		order: 2;
	}
	#titleWrap h2 {
		padding: 5vw 7vw 6vw;
	}
	h2 .headNo {
		font-size: 4.4rem;
	}
	.twolines {
		justify-content: start;
		padding: 3vw 7vw!important;
		width: 100%;
		text-align: left;
	}
	.twolines.interviewCaption {
		-webkit-box-align: start;
		align-items: start;
		width: 100%;
	}	
	#headForm .twolines {
    justify-content: center;  
  	padding: 0!important;
	}	
	.name span {
		margin: 0 1em 0 0;
	}
	#headimg {
		position: static;
		height: 55vw;
		width: 100%;
	}
	.subhead.mid, .subhead.large {
		font-size: 2.6rem;
	} 
	#flow .subhead.mid {
		margin: 0;
	}
	#requirements .subhead.mid, #flow .subhead.mid, #outline .subhead.mid {
		margin-bottom: .7em;
	}
	.brsp {
		display: none;
	}	
	/* トップページ */
	#topNews {
		padding: 0 7vw;
	}
	#topNewsList {
		width: calc(100% - 140px);
	}
	#topNewsList li p {
		width: 100%;
	}
	#topNewsList time {
		padding-right: 25px;
		width: auto;
	}
	#topNewsList time::after {
		content: none;
	}
	#topOutline, #topBusiness, #faqWrap {
		display: -webkit-flex;
		display: flex;
		-webkit-box-direction: normal;
		flex-direction: column;
	}
	#topBusiness {
		margin-top: 0;
	}
	.conttxtBox {
		position: static!important;
		padding: 10% 7vw;
		width: 100%;
	}
	.contSummary dt:not(.interviewCaption .en) {
		margin: 1em 0 .5em;
	}
	.contSummary .viewBtn.detail {
		margin-top: 25px;
	}
	.contimgBox, #topBusiness .contimgBox {
		float: none;
		margin-top: 0;
		width: 100%;
		height: 72vw;
	}
	#interviewWrap::after {
		content: none;
	}
	#interviewWrap .subhead + dd {
		width: 100%;
	}
	#interviewList, #topInterview #interviewList {
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
	}
	#interviewList li {
		margin-top: 5.5%!important;
		width: 100%;
	}
	#interviewList li a {
		display: -webkit-flex;
		display: flex;
	}
	#interviewList li p:not(.position):not(.person), .interviewCaption {
		width: 50%;
	}
	.interviewCaption:not(#contList .interviewCaption) {
		padding: 6.5% 5%;
	}
	.position {
		font-size: calc(100vw / 36);
	}
	.person {
		font-size: 1.7rem;
	}
	.interviewCaption dt {
		right: 20px;
	}
	#faqWrap, #interview #faqWrap {
		margin-top: 3.5%;
	}
	#faqWrap .contSummary {
		margin-bottom: 40px;
		width: 100%;
		padding: 0 7vw;
	}
	#faqWrap .contimgBox {
		height: 60vw;
	}
	#faqWrap .contimgBox img {
		width: 100%;
		height: 60vw;
		object-fit: cover;
	}
	.joinList li a {
		font-size: 1.7rem;
	}
	/* 社員を知る */
	#personSummary {
		padding: 6vw 7vw;
	}
	#profileWrap {
		padding: 0;
	}
	#interview #interviewList li:first-child {
		margin: 0!important;
	}
	#messageTop, .multiply {
		height: 45vw;
	}
	#messageBody {
		-webkit-column-count: 1;
		column-count: 1;
	}
	.letterBody, .letterBody dt, .letterBody dd {
		display: block;
		width: 100%;
	}
	.letterBody dt {
		padding: 0 0 1em 0;
	}
	#contList li {
		width: calc((100% - 40px) / 2);
	}
	#contList li:nth-last-child(-n+2) {
		margin-top: 40px;
	}  
	.voiceList > li > a {
		padding: 1.4em 20px;
		font-size: 1.8rem;
	}
	.viewVoice p {
		font-size: 1.3rem;
	}
	.question::before {
		font-size: 3.4rem;
	}
	.answerList {
		display: block;
	}
	.answerList li {
		margin-bottom: 15px;
		width: 100%;
	}
	.answerPoint > span {
		padding: 1.5em 2em;
	}
	.answerPoint::after {
		display: block;
		position: relative;
		left: -15px;
		margin: 0 auto;
	}
	/* 会社を知る */
	#outline .subhead.mid {
		padding: 0 7vw;
	}
	#otherList li a {
		font-size: 1.7rem;
	}
	#otherInfo h3 {
		font-size: 2.9rem;
	}
	/* 事業を知る */
	.linehead {
		font-size: 2.2rem;
	}
	.linehead::after {
		content: none;
	}
	.linehead > span {
		padding-right: 0;
	}
	#shinjoList li {
		padding: 1.3em 0 1.3em 2em;
		width: 100%;
	}
	#shinjoList li:nth-child(2) {
		border-top: solid 1px #acc4de;
	}
	.businessTxt {
		-webkit-column-count: 1;
		column-count: 1;
	}
	.bBoxTtl {
		font-size: 2.0rem;
	}
	.bBoxTtl > span {
		padding: 0 .4em .5em;
	}
	.bBoxSubTtl {
		margin-top: .8em;
		font-size: 1.8rem;
	}
	#educationBox {
		display: block;
	}
	#educationBox > div:first-child, .educationImg {
		width: 100%;
	}
	.educationImg {
		margin-top: 6vw;
	}
	.educationCont dt {
		font-size: 1.8rem;
	}
	.educationTxt {
		margin-top: 0;
		font-size: 2.0rem;
	}
	.educationTxt::before {
		margin: 1em auto .8em;
		height: 70px;
	}
	#teamwork.businessBox {
		margin-bottom: 40px;
		padding-bottom: 70px;
	}
	.teamworkLink {
		bottom: -40px;
		width: 80%;
	}
	.teamworkLink a {
		height: 80px;
		padding: 0 1em;
		font-size: 1.8rem;
	}
	#commuList li {
		display: block;
	}
	#commuList .contWrap2, #commuList .contWrap3 {
		padding: 0 7vw;
	}
	.commuImg, #commuList li > dl, .noImgList li {
		width: 100%;
	}
	#commuList li > dl {
		margin-top: 3vw;
	}
	.commuImg {
		height: 45vw;
	}
	.noImgList li:nth-child(2) {
		border-top: none;
	}
	#salesforce {
		display: block;
	}
	#salesforce dt, #salesforce dd {
		width: 100%;
	}
	#salesforce dd {
		margin-top: 3vw;
		padding: 3vw 0 0 0;
		border-left: none;
		border-top: solid 2px #0c98d1;
	}
	#summaryImg {
		height: 45vw;
	}
	.businessSummary {
		text-align: justify;
	}
	.businessSummary .newline {
		display: inline;
	}
	.businessSummary br {
		display: none;
	}
	/* 採用を知る */
	.contInner {
		padding: 7vw 7vw 7.5vw;
	}
	#jobinfo .contSummary, #requirements .subhead.mid {
		padding: 0 7vw;
	}
	.entryLink a img {
		width: 170px;
	}
	#listUnder {
		margin-top: 35px;
		padding-top: 30px;
	}
	#otherLink {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	#otherLink li {
		margin: 0;
		width: 49%
	}
	#flowList {
		display: block;
	}
	.flowPoint, .careerFlow .flowPoint {
		margin: 0 auto;
		padding: .8em;
		width: 100%;
		max-width: 100%;
		height: auto;
		max-height: none;
		font-size: calc(100vw / 36);
	}
	.arrowNext {
		bottom: -8px;
		right: auto;
		left: calc(50% - 16px);
		transform: rotate(90deg);
	}
	.arrowNext::before {
		width: 88%;
	}
	#flowList .en {
		display: none;
	}
	#flowList li {
		padding: 10px 0;
	}
	.btnFrame {
		width: 380px;
	}
	#entry.multiply {
		margin: 0;
	}
	.tbWrap {
		overflow-x: auto;
		-webkit-overflow-scrolling: touch;
		width: 100%;
	}
	.tbStyle th {
		width: 140px;
	}
	.tbStyle2 {
		width: 880px;
	}
	.tbStyle2 th {
		padding: 8px 20px;
	}
	.col1 {
		width: 200px;
	}
	.col2 {
		width: 220px;
	}
	.col3 {
		width: 440px;
	}
  #jobinfo #careerRequirements .contSummary {
    margin-bottom: 25px;
  }
	#careerRequirements {
  	padding: 0;
	}
	#careerEntryWrap  h3 {
  	padding: 0 7vw;
	}
	#careerEntryWrap .subhead.mid {
  	margin-bottom: 30px;
	}
  #careerRequirements .subhead.mid {
    margin-bottom: .35em;
  }
	/* お知らせ */
	#newsArea.contWrap {
		margin-top: 0;
		padding: 0;
	}
	#newsWrap {
		display: block;
		padding-top: 0;
	}
	#newsMain, #sideMenu {
		width: 100%;
	}
	#sideMenu {
		margin-top: 7vw;
	}
	.pagenation {
		margin-top: 6vw;
	}
	#archiveList {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		padding-top: 5px;
	}
	#archiveList::after {
		content:"";
		display: block;
		width: calc((100% - 20px) / 3);
	}
	#archiveList li {
		margin-top: 10px;
		width: calc((100% - 20px) / 3);
	}
	#archiveTitle {
		margin: 0;
		padding: 0 7vw 3vw;
		background: #fff;
		font-size: 1.9rem;
	}	
	/* お知らせ・詳細ページ */
	#articleTtl {
		margin-bottom: 6vw;
		padding: 15px 0 20px;
	}
	#articleTtl h3 {
		font-size: 2.0rem;
	}
	#pageNavi {
		margin-top: 7vw;
		padding: 1vw 5vw;
	}
	.all.en {
		position: relative;
		top: 1px;
	}
	/* フッター */
	#companyInfo {
		display: block;
	}
	#companyInfo dl {
		-webkit-justify-content: center;
	}
	#companyInfo .viewBtn a {
		margin: 15px auto 0;
	}
	.border {
		display: none;
	}		
  /* キャリア採用エントリー */
  #headForm {
    padding-bottom: 6.25vw;
  }
  #headForm h2 .en {
    font-size: 3.8rem;
  }
  #headForm .titleJp {
    line-height: 1.7;
    font-size: 1.9rem;
  }
  .careerFormSummary {
    margin-bottom: 6.25vw;
    padding-top: 7vw;
  }
  /* Mail Form */
  #mailfield dl, #mailfield dt, #mailfield dd {
    display: block;
    width: 100%;
  }
  #mailfield dt {
    padding-bottom: 1em;
  }
  #mailfield dd {
    padding: 0 0 1.5em 0;
  }
  #mailfield input[type="text"], #mailfield input[type="email"], #mailfield input[type="url"] {
    height: auto;
  }
  #kakuninEmail .must br {
    display: none;
  }
  .mf_buttons {
    margin-top: 30px;
  }
  .mf_buttons input {
    margin-top: 15px;
  }
}
@media screen and (max-width: 599px) {
	body {
		line-height: 1.8;
	}
	/* グローバルナビ */
	#headWrap {
		height: 15vw;
	}
	#naviBox {
		padding-top: 15vw;
	}
	#toggle {
		width: 22px;
		height: 20px;
	}
	.trigger span:nth-of-type(2) {
		top: 9px;
	}
	#gNavi {
  	padding-top: 2vw;
	}
	#gNavi li, #gNavi li ul li, .menuTitle {
		font-size: 1.4rem;
	}
	#gNavi li:not(.entryBtn) a span {
		padding: 14px 0;
	}
	#gNavi li ul, #gNavi li:not(.entryBtn) ul li a {
		padding: 9px 0;
	}
	#gNavi li#entryNewgrad {
  	padding: 10px 0 6px;
	}
	.menuTitle {
  	padding: 20px 0 10px;
	}
	.entryBtn a {
  	display: inline-block;
		padding: 12px;
	}
	/* 見出し */
	h1 {
		width: 72vw;
	}
	h2:not(.inter) .en, h2 .headNo.en {
		font-size: 3.7rem;
	}
	h2 .headTxt {
		font-size: 2.8rem;
	}
	#titleWrap h2 .jp {
		padding-top: .15em;
	}
	#joinUs h2 {
		top: -1.5em;
	}
	#newsTtl h2 {
		letter-spacing: .08em;
	}
	#headBox {
		flex-direction: column;
		height: auto;
	}
	#titleWrap h2 {
		padding: 5vw 5vw 6vw;
	}
	.twolines {
		padding: 3vw 5vw!important;
	}
	.titleJp {
		font-size: 1.8rem;
	}
	.leading p br {
		display: none;
	}
	/* コンテンツ */
	.contWrap, #topNews, #faqWrap .contSummary, #jobinfo .contSummary, #requirements .subhead.mid, #careerEntryWrap .subhead.mid {
		padding: 0 5vw;
	}
	.leading, #personSummary {
		padding: 7vw 5vw;
	}
	#contList {
		padding-left: 5vw;
		padding-right: 5vw;
	}
	/* トップページ */
	#topimage {
		height: -webkit-calc(100% - 15vw);
		height: calc(100% - 15vw);
	}
	#catch {
  	margin: 0 auto;
    width: 70vw;
	}
	#topNews {
		display: block;
		margin: 8.5% auto;
	}
	#newsTtl {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		width: 100%;
	}
	#newsTtl .viewBtn a {
		margin: 0;
		font-size: 1.2rem;
	}
	#topNewsList {
		width: 100%;
	}
	#topNewsList li, #topNewsList li + li {
		margin-top: 12px;
	}
	time {
		font-size: 1.4rem;
	}
	.subhead, .subhead.mid {
		font-size: 1.9rem;
	}
	.subhead.large {
		font-size: 2.0rem;
	}
	.conttxtBox {
		padding: 8.5% 5vw;
	}
	#topInterview {
		margin-top: 10.5%;
	}
	.contSummary dd {
    line-height: 1.8;
	}
	.position {
		font-size: 1.6rem;
	}
	#joinUs {
		margin-top: 15vw;
		padding-bottom: 7vw;
	}
	.joinSubtxt {
  	margin-bottom: -10px;
		padding-bottom: .5em; 	
	}
	.joinList {
		display: block;
	}
	.joinList li {
		margin: 10px 0 0!important;
		width: 100%;
	}
	.joinList li a {
		display: block;
		padding: 4.5vw;
		font-size: 1.5rem;
	}
  .joinListBox {
    margin-top: 6.2vw;
  }
  .joinGroup {
    margin-bottom: 10px;
    padding: .8em;
    width: 210px;
    font-size: 1.6rem;
  }
	/* 社員を知る */
	#mainStory {
		line-height: 1.85;
	}
	.letterImg {
		margin-top: 22px;
	}
	.letterBody dt, .startTime {
		font-size: 1.7rem;
	}
	#workSchedule ul::before {
		left: 82px;
	}
	.startTime {
		width: 124px;
	}
	.startTime::after {
		right: 26px;
		width: 30px;
		height: 30px;
	}
	#messageTop p:first-child {
		font-size: 1.7rem;
	}
	#workFlow {
		font-size: 1.5rem;
	}
	#messageTop p + p {
		font-size: 1.4rem;
	}
	#messageTop p:first-child {
		border-width: 1px;
	}
	#menuTxt {
		font-size: 2.3rem;
	}
	.twolines .position {
		margin: 0;
		font-size: 1.6rem;
	}
	.name {
		font-size: 1.4rem;
	}
	.voiceList > li > a {
		padding: 1.1em 15px;
		font-size: 1.5rem;
	}
	.voiceList > li > div {
		padding: 25px 15px;
	}
	.viewVoice {
		width: 50px;
	}
	.viewVoice p.en {
		display: none;
	}
	.btnIcon {
		top: 9px;
		width: 19px;
		height: 19px;
	}
	.question {
		padding-left: 40px;
		width: calc(100% - 50px);
	}
	.question::before {
		font-size: 2.9rem;
	}
	.answerPoint > span {
		padding: 1em;
		font-size: 1.5rem;
	}
	.answerList li {
		padding: 20px 15px;
		border-width: 3px;
	}
	#contList li {
		margin-top: 7%;
		width: calc((100% - 18px) / 2);
	}
	#contList li:nth-last-child(-n+2) {
		margin-top: 18px;
	}
	/* 会社を知る */
	.qualifiedList li {
		max-width: 100%;
	}
	#outline #otherInfo h3 {
		margin-bottom: .4em;
		font-size: 2.4rem;
	}
	#otherList li {
		width: 100%;
	}
	#otherList li:nth-child(n+4), #otherList li:nth-child(3), #otherList li + li {
		margin-top: 10px;
	}
	#otherList li a {
		padding: 4.5vw;
	}
	/* 事業を知る */
	.linehead {
		font-size: 1.8rem;
	}
	.businessArticle {
		padding: 8vw 0;
	}
	.dashedLine, .businessBox, .businessTxt {
		margin-top: 6vw;
	}
	#shinjoList li {
		padding: 1em 0 1em 2em;
		font-size: 1.5rem;
	}
	.businessBox {
		padding: 6vw 5vw;
	}
	.businessBox + .businessBox {
		margin-top: 6vw;
	}
	.businessArea {
		padding-top: 8vw;
	}
	.bBoxTtl {
		font-size: 1.7rem;
	}
	.bBoxSubTtl {
		font-size: 1.5rem;
	}
	.bBoxCont {
		margin-top: 6vw;
	}
	.educationCont {
		padding: 4.5vw 4vw;
	}
	.educationCont dt {
		margin-bottom: .45em;
		font-size: 1.5rem;
	}
	.plus {
		margin: 12px auto;
		width: 26px;
		height: 26px;
	}
	.plus::before, .plus::after {
		width: 26px;
		height: 26px;
	}
	.plus::before {
		top: 12px;		
	}
	.plus:after {
		left: -12px;
	}
	.educationTxt {
		font-size: 1.7rem;
	}
	.educationTxt::before {
		margin: .8em auto .5em;
		height: 30px;
	}
	#teamwork.businessBox {
		margin-bottom: 35px;
		padding-bottom: 55px;
	}
	#teamworkList li {
		width: 100%;
	}
	#teamworkList li:nth-child(n+3), #teamworkList li + li {
		margin-top: 15px;
	}
	#teamworkList dt {
		margin-bottom: .45em;
		font-size: 1.5rem;
	}
	.teamworkLink {
		bottom: -35px;
	}
	.teamworkLink a {
		height: 70px;
		font-size: 1.6rem;
	}
	.teamworkLink {
		width: calc(100% - 10vw);
	}
	#commuList .contWrap2, #commuList .contWrap3 {
		padding: 0 5vw;
	}
	#commuList, #commuList li + li, .noImgList {
		margin-top: 7vw;
	}
	#commuList dt, .noImgList dt {
		margin-bottom: .45em;
		font-size: 1.6rem;
	}
	#commuList li > dl {
		margin-top: 15px;
	}
	.noImgList li {
		padding: 5.5vw 0;
	}
	#salesforce.businessBox {
		padding: 5vw;
	}
	#salesforce dt {
		margin: 0 auto;
		width: 60%;
	}
	#salesforce dd {
		margin-top: 4vw;
		padding: 4vw 0 0 0;
		border-width: 1px;
	}
	.updateDate {
		position: static;
		margin-top: .5em;
		text-align: right;
	}
	#oldData > dl > dd {
		padding: 4vw;
	}
	#oldData, #kenpoSystem {
		padding: 4.5vw 4vw 4vw;
	}
	.aiTtl {
		margin-bottom: .6em;
		font-size: 1.7rem;
	}
	#kenpos .aiTtl, #kumiaiin .aiTtl, .aiTtl.ai {
		font-size: 1.6rem;
	}
	#kumiaiin .aiTtl {
		margin: .6em 0 0 0;
	}
	#kenpos dd {
		font-size: 1.4rem;
	}
	.aiTtl.ai {
		margin: 10px 0 0 0;
		padding: 8px;
	}
	.arrowAi > div {
		width: 100%;
	}
	.arrowAi {
		height: 80px;
	}
	.arrowAi .arrowNext, #advice.arrowAi .arrowNext {
		width: 80px;
	}
	#advice.arrowAi {
		height: 100px;
	}
	#advice.arrowAi .arrowNext {
		width: 100px;
	}
	.arrowAi p {
		font-size: 1.5rem;
	}
	.businessSummary {
		margin-top: 6vw;
	}
	/* 採用を知る */
	.contInner {
		padding: 6vw 5vw;
	}
	#otherList li a::after, .entryLink a::after {
		right: 8px;
		bottom: 8px;
		width: 13px;
		height: 12px;
	}
	.entryList li + li {
		margin-top: 4.5vw;
	}
	.myPage a {
		height: 70px;
		font-size: 1.7rem;
	}
	#listUnder {
		margin-top: 5vw;
		padding-top: 4.5vw;
	}
	/* 202306修正 */
	#listUnder .captionTxt {
		margin-bottom: 4.5vw;
		font-size: 1.5rem;
	}	
	.flowPoint, .careerFlow .flowPoint {
		width: 100%;
		max-width: 100%;
		font-size: 1.6rem;
	}
	#flowList li:first-child {
		padding-top: 0;
	}
	#flow .takePart {
		margin-top: 3.5vw;
	}
	#jobinfo .multiply p {
		font-size: 1.8rem;
	}
	#jobinfo .multiply p.multiply-txt {
		font-size: 5vw;
	}
	.btnFrame {
		margin-bottom: .5em;
		padding: .5em 1.8em;
		width: auto;
		height: auto;
		border-width: 1px;
	}
	#entry.multiply .btnFrame{
		padding-top: .26em;
		padding-bottom: .23em;
	}
	.btnFrame + p {
		font-size: 1.6rem!important;
	}
	#jobinfo .multiply .en {
		font-size: 2.0rem;
	}
	#session .takePart {
		margin-top: 15px;
		padding: 5vw 5.5vw;
	}
	.tbcap {
		margin-bottom: 15px;
	}
	#eventList {
		margin-top: 5vw;
	}
	.tbStyle th, .tbStyle td {
		display: block;
		padding: 15px 0;
		width: 100%!important;
	}
	.tbStyle th, .tbStyle2 th {
		padding: 5px 0;
	}
	.tbStyle2 td {
		padding-top: 10px; 
		padding-bottom: 10px;
	}
	#careerEntryWrap .subhead.mid {
  	margin-bottom: 1em;
	}
	#jobinfo #careerRequirements .contSummary {
  	margin-bottom: 1.25em;
	}	
	/* お知らせ */
	#archiveBox dt {
		padding: .6em 20px;
		font-size: 1.4rem;
	}
	#newsList li a {
		padding: 1em 0;
	}
	#archiveList {
		padding: 0;
	}
	#archiveList li a {
		padding: .45em 15px;
	}
	#pageNavi ul li a img {
		width: 8px;
		height: auto;
	}
	#archiveTitle {
		padding: 0 5vw 4vw;
		font-size: 1.6rem;
	}
	/* お知らせ・詳細ページ */
	#articleTtl h3 {
		font-size: 1.7rem;
		font-weight: 500;
	}
	#pageNavi ul li a {
		font-size: 1.5rem;
	}
	/* フッター */
	#companyInfo {
		display: block;
	}
	#companyInfo dl {
		display: block;
		text-align: center;
	}
	#companyInfo dl dt {
		margin: 0 auto 8px;
		width: 47vw;
	}
	#companyInfo dl dd {
		line-height: 1.7;
		font-size: 1.2rem;
	}
	#companyInfo .viewBtn a {
		padding: 6px;
		max-width: 100%;
		font-size: 1.2rem;
	}
	#copyright {
		font-size: 1.0rem;
	}
	/* リンクボタン */
	.viewBtn.detail a {
		padding: 15px 25px;
		width: 180px;
		font-size: 1.3rem;
	}
	.viewBtn.detail a span::after {
		right: 25px;
	}	
	/* 404 */
	#notFound {
		padding: 14vw 7vw 9vw;
		font-size: 1.3rem;
	}
	#notFound h2 .en {
		margin-bottom: .5em;
		font-size: 2.6rem;
	}	
  /* キャリア採用エントリー */
  #headForm h2 .en {
    font-size: 3.4rem;
  }
  #headForm .titleJp {
    font-size: 1.7rem;
  }
  #entryMethod .captionTxt {
    font-size: 1.6rem;
  }
  .careerFormSummary {
    margin-bottom: 5vw;
    padding-top: 6vw;
  }  
  #mailfield dl {
    padding: 0 1em;
  }
  #mailfield dt {
    padding-top: 1em;
    padding-bottom: .8em;
  }
  #mailfield dd {
    padding-bottom: 1em;
  }
  .mwform-checkbox-field, .mwform-radio-field {
    margin-right: 1.2em;
  }
  .mf_buttons {
    margin-top: 2.82051vw;
  }
  .mf_buttons input {
    margin: 12px 0 0 0;
    height: 55px;
    line-height: 55px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 479px) {
	/* グローバルナビ */  
  .entryBtn a {
  	font-size: 1.6rem;
	}	
	/* 見出し */
	h2:not(.inter) .en {
    font-size: 7.729vw;
	}
	h2 .jp {
		font-size: 1.6rem;
	}
	#newsTtl h2 {
		font-size: 7.246vw;
	}
	/* トップページ */
	#topNewsList li, #topNewsList li + li {
		display: block;
		margin-top: 8px;
	}
	.contSummary dt {
		margin-top: 1.1em !important;
	}
	#interviewList li p:not(.position):not(.person) {
		width: 45%;
	}
	.interviewCaption {
		padding: 25px 18px;
		width: 55%;
	}
	.interviewCaption dt {
		right: 12px;
	}
	.interviewNo {
		font-size: 2.5rem;
	}
	.position {
		font-size: 4vw;
	}
	.person, #contList .position, #contList .person {
		font-size: 3.733vw;
	}
	.person span {
		font-size: 3.467vw;
	}
	/* 社員を知る */
	#workSchedule ul::before {
		top: 5px;
		left: 72px;
	}
	.startTime {
		width: 104px;
	}
	.startTime::after {
		right: 16px;
	}
	#contList li {
		width: calc((100% - 10px) / 2);
	}
	#contList li:nth-last-child(-n+2) {
		margin-top: 10px;
	}
	#contList .interviewCaption {
		padding: 18px 15px;
	}
	#contList .person {
		line-height: 1.6;
	}
	#contList li:last-child .interviewCaption dt {
		bottom: 12px;
	}
	/* 会社を知る */
	#otherList li a {
		font-size: 1.5rem;
	}
	/* 事業を知る */
	.bBoxTtl .newline {
		display: block;
	}
	.teamworkLink a {
		font-size: 1.5rem;
	}
	/* 採用を知る */
	#otherLink {
		display: block;
	}
	#otherLink li {
		width: 100%;
	}
	#otherLink li + li {
		margin-top: 10px;
	}
	.entryLink a {
		height: 74px;
		line-height: 1.4;
	}	
	.myPage br {
		display: inherit;
	}
	/* お知らせ */
	#newsList li a {
		display: block;
	}	
  /* キャリア採用エントリー */
  #headForm h2 .en {
    font-size: 7.692vw;
  }
  #headForm .titleJp {
    font-size: 3.846vw;
  }  
  /* Mail Form */
  #mailfield input, #mailfield textarea {
    padding: .6em;
  }
}