﻿@charset "utf-8";
/* CSS Document */
body{
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 14px;
	line-height: 1.6;
	color: #000;
	min-width: 1100px;
}

div{
	word-wrap: break-word;
}

a{text-decoration: none;}
a:hover{text-decoration:underline;}
a:visited,a:link{color:inherit;}

a:hover img:not(.rollover){/* 画像が切り替わるものは除外 */
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	transition: 0.5s;
}

.ma{
	display: block;
	margin: 0 auto;
}

tr, th, td{
	vertical-align: middle;
	box-sizing: border-box;
}

:focus{
	outline:0;
}

.common-width{
	width: 1100px;
	margin:0 auto;
}
.contents{
	position: relative;
	z-index: 0;
}
/*===============================common*/
.common_bg{
	background-color:#B9D8EA;
	padding-bottom:70px;
}
	.common_title{
		padding: 105px 0 55px 5px;
	    font-size: 230%;
	    font-weight: 600;
	}

/*画像リンクに下線を出さない*/
.common_imagelink a{
	text-decoration: none;
}

/*グローバルナビ*/
.gnav{
	background-color:#f9f9f9;
	height:50px;
}
.gnav_bg01 .gnav{
	background-color:#f9f9f9;
	box-shadow: 0 2px 1px -1px #acacac;
}
.gnav_bg02 .gnav{
	background-color:#f9f9f9;
}
.gnav_bgtop .gnav{
	background-color:#fff;
}
	.gnav_logo{
		position:absolute;
		top:10px;
		left:2px;
	}
	.gnav_list{
		position:absolute;
		left:59px;
	}
		.gnav_list li{
			display:inline-block;
		}
		.gnav_list li a{
			display:block;
			padding:10px 12px 18px;
		}
		.gnav_list.--english li a{
			padding:12px 20px 10px;
		}
	.gnav_rbox{
		position:absolute;
		right:0px;
		box-sizing:border-box;
		height:50px;
		width:172px;
		background-color:#f3f3f3;
	}
		.gnav_eng a{
			display:block;
			padding:10px 16px 18px 20px
		}
		.gnav_mail a{
			display:block;
			padding:7px 0;
			margin-right:11px;
		}
		.gnav_eng.--english a{
			padding:12px 5px 12px 17px;
		}
		.gnav_mail.--english a{
			margin-right:10px;
		}

/* footer_bnrbox01 */
.footer_bnrbox01{
	padding:30px 0;
	background-color:#f9f9f9;
}


	.footer_bnrbox01 ul li{
		float:left;
		width:348px;
		margin-right:27px;
	}
	.footer_bnrbox01 ul li:last-child{
		margin-right:0;
	}

/* フッター */
.footer_hr01{
	border-top:1px solid #e4e4e4;
	border-bottom:1px solid #fff;
}
.footer{
	background-color:#f3f3f3;
	padding-top:40px;
	width:100%;
}
	.footer_img{
		display:block;
		width:220px;
		float:left;
		margin-right:20px;
	}
	.footer_company{
		float:left;
		width:321px;
	}
		.footer_company_title{
			padding-bottom:20px;
		}
		.footer_company_info{
			font-size:13px;
			padding-bottom:10px;
		}
		.footer_company_info.--english{
			font-size:12px;
			line-height:1.3;
			padding-bottom:10px;
		}
		.footer_company_access{
		}
	.footer_sitemap{
		float:right;
		width:523px;
	}
		.footer_sitemap_list01{
			float:left;
			width:170px;
			margin-right:20px;
		}
		.footer_sitemap_list02{
			float:left;
			width:183px;
			margin-right:20px;
		}
		.footer_sitemap_list03{
			float:left;
			width:120px;
		}
		.footer_sitemap_list01.--english{
			width:197px;
			margin-right:20px;
		}
		.footer_sitemap_list02.--english{
			width:166px;
			margin-right:20px;
		}
			.footer_sitemap ul li{
				background:url(../img/common/list_icon01.jpg) no-repeat left 48%;
				font-size:12px;
				line-height:1.0;
				padding-left:15px;
				margin-bottom:18px;
			}
	.footer_copyright{
		padding:25px 0;
		text-align:right;
		font-size:11px;
		line-height:1.0;
	}
	
.to_top_btn{
	bottom:20px;
	right:20px;
	position:fixed;
	z-index:100;
}

/*ニュース デフォルト*/
.info_list{
	border-top:2px solid #000;
	overflow:hidden;
}
.info_list li{
	border-bottom:1px dotted #000;
	padding: 17px 20px 14px;
}
.info_list td{
	line-height:1.8;
	vertical-align:top;
}
	.info_list td.info_date{
		width:103px;
		color:#8f8f8f;
		font-size:13px;
		padding-top:1px;
	}
	.info_list td.info_title{
		color:#333;
	}
		.info_list td.info_title p{
			display:inline-block;
		}
	.info_list td .info_new{
		padding-left:10px;
	}
	.info_list a{
		color:#39c;
		text-decoration:underline;
	}

/*ページャー*/
.wp-pagenavi{
	text-align:center;
}
	.wp-pagenavi a{
		text-decoration: none;
	}
	.wp-pagenavi a:hover{
		background-color: #666;
		color: #fff;
	}
	.wp-pagenavi .current{
		background-color: #666;
		color: #fff;
	}
	.wp-pagenavi .pages,
	.wp-pagenavi .first,
	.wp-pagenavi .last,
	.wp-pagenavi .page,
	.wp-pagenavi .current,
	.wp-pagenavi .extend,
	.wp-pagenavi .previouspostslink,
	.wp-pagenavi .nextpostslink{
		display:inline-table;
		width: 36px;
		height: 36px;
		border: 1px solid #666;
		color: #333;
		vertical-align: middle;
		text-align: center;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		font-size: 14px;
		padding-top: 7px;
		margin-right: 9px;
	}
	.wp-pagenavi .pages,
	.wp-pagenavi .first,
	.wp-pagenavi .last{
		width:60px;
	}
	.wp-pagenavi .first,
	.wp-pagenavi .previouspostslink{
		padding-right:7px;
	}
	.wp-pagenavi .last,
	.wp-pagenavi .nextpostslink{
		padding-left:7px;
	}
	.wp-pagenavi .current{
		background-color: #666;
		color: #fff;
	}

/*お仕事環境カルーセル*/
.environment_bg{
	background-color:#B7D5E8;
}
#carousel{
	padding:20px 0;
	height:260px;
}
	#carousel ul li{
		float:left;
		margin-right:20px;
		width:260px;
		box-sizing:border-box;
	}
	.environment_list_img{
		width:260px;
		height:167px;
		text-align:center;
		background-color:#e7e7e7;
	}
	.environment_list_textarea{
		background-color:#fff;
		box-sizing:border-box;
		padding:15px 20px 0;
		height:93px;
	}
		.environment_list_title{
			padding-bottom:10px;
			line-height:1.0;
			font-size:16px;
		}
		.environment_list_content{
			font-size:12px;
			width:200px;
			height:40px;
			overflow:hidden;
		}
		.environment_list_btn{
			position:absolute;
			right:15px;
			bottom:15px;
		}
		a.environment_list_anc:hover{
			text-decoration:none;
		}
		a.environment_list_anc:hover .environment_list_title,
		a.environment_list_anc:hover .environment_list_content{
			opacity:0.7;
			transition:0.5s;
		}
/*===============================top*/
.main_bg{
	background:url(../img/top/top_main_bg.jpg) no-repeat center top;
	background-size:cover;
	height:504px;
}
.main{
	position:relative;
}
	.main_head{
		position:absolute;
		top:10px;
	}
		.main_head_info{
			font-size:11px;
			line-height:1.0;
			padding-bottom:10px;
		}
	.main_title{
		position:absolute;
		top:338px;
		left:15px;
	}

.sec01_bg {
    background: url(../img/top/top_bg01.jpg) no-repeat center top;
    background-size: cover;
    height: 600px;
    width: auto;
    padding-top: 2%;
}
.sec01{
	padding-top:57px;
}
	.sec01_img{
		margin:0 auto;
		width:620px;
		padding-bottom:32px;
	}
	.sec01_title{
		margin:0 auto;
		width:420px;
	}
	.sec01_info{
		text-align:center;
		line-height:2.1;
		margin:0 auto;
		width:715px;
		padding:23px 0;
	}
	.sec01_btn{
		margin:0 auto;
		width:240px;
	}

.sec02_bg{
	background:url(../img/top/top_bg02.jpg) no-repeat center top;
	background-size:cover;
	height:520px;
	overflow:hidden;
}
	.sec02{
		position:relative;
		padding-top:50px;
		height:470px;
	}
		.sec02_title{
			position:absolute;
			z-index: 99;
			padding:20px 0px;
		}
		.sec02_info{
			position:absolute;
			z-index: 99;
			line-height:2.1;
			padding:110px 0px;
		}
		.sec02_sp{
			position:absolute;
			bottom:0px;
			left:98px;
		}
		.sec02_cs{
			position:absolute;
			bottom:0px;
			left:308px;
		}
		.sec02_img01{
			position:absolute;
			bottom:0px;
			left:516px;
		}
		.sec02_btn01{
			position:absolute;
			bottom:38px;
			left:12px;
		}
		.sec02_btn02{
			position:absolute;
			bottom:38px;
			left:233px;
		}

.sec03{
	padding-top:95px;
	height:375px;
	overflow:hidden;
}
	.sec03_inner{
		position:relative;
	}
		.sec03_title{
			position:absolute;
			top:0;
		}
		.sec03_info{
			position:absolute;
			top:64px;
			/*padding-top:16px;
			line-height:2.1;*/
		}
		.sec03_info.--english{
			top:54px;
			/*padding-top:16px;
			line-height:2.1;*/
		}
		.sec03_btn01{
			position:absolute;
			top:92px;
		}
			.sec03_btn01 a{
				padding-bottom:15px;
			}
	
/*.slider01{
	position:absolute;
	top:0;
	width:1100px;
}
	.slider01_list{
	}
	.slider01_list li{
		float:left;
		margin-right:88px;
		font-size:280px;
		line-height:1.0;
		vertical-align:bottom;
	}
	.slider01_list li:first-child{
		margin-left:38px;
	}
	.slider01_list li:last-child{
		margin-right:0px;
	}
	.slider01_shadow{
		margin:0 auto 20px;
		box-shadow:0px 3px 20px 3px #000;
	}*/


.sec04_bg{
	background:url(../img/top/top_bg03.jpg) no-repeat center top;
	background-size:cover;
	height:624px;
	padding-top:66px;
}
	.sec04{
		position:relative;
		padding:53px 0 50px;
		background-color:rgba(255,255,255,0.9);
	}
	.sec04_title{
		padding-bottom:30px;
		width:212px;
		margin:0 auto;
	}
	.sec04_infobox{
		margin:0 auto 50px;
		width:938px;
	}
		.sec04_infobox .info_list{
			border-top:2px solid #000;
			height:285px;
			overflow:hidden;
		}

	.sec04_btn01{
		margin:0 auto;;
		width:240px;
	}

.sec05{
	padding:80px 0;
}
	.sec05_title{
		width:147px;
		margin:0 auto;
		padding-bottom:50px;
	}
	.sec05_joblist li{
		float:left;
		width:33%;
	}
	.sec05_jobimg{
		display:block;
		width:280px;
		margin:0 auto;
	}
	.sec05_jobtitle{
		display:block;
		width:236px;
		margin:0 auto;
		padding:15px 0;
	}
	.sec05_jobinfo{
		text-align:center;
		padding-bottom:15px;
		font-size:11px;
		color:#333;
	}
	.sec05_btn{
		width:200px;
		margin:0 auto;
		background-color:#fff;
	}
	

/*=============================== company*/
.company_about_bg{
	background:url(../img/company/company_bg01.jpg) no-repeat center bottom;
	background-size:cover;
	height:981px;
}
.company_bg{
	background-color:rgba(255, 255, 255, 0.85);
	padding:3%;
	box-shadow: 0px 0px 10px rgba(255, 255, 255, 0.85);
}
.company_about{
	padding-top:95px;
}
.company_about_title{
	padding-bottom:50px;
}
.company_about_tbarea{
	margin-left:75px;
	line-height:1.8;
}
.company_about_tb{
	float:left;
	margin-right:40px;
	width:435px;
}
	.company_about_tb th,
	.company_about_tb td{
		padding-bottom:10px;
		vertical-align:top;
	}
	.company_about_tb th{
		width:90px;
		font-weight:bold;
		padding-top:1px;
	}
	.company_about_tb td{
		width:345px;
	}
	.company_about_tb th{
		width:120px;
	}
.company_access{
	padding:30px 0 40px 86px;
}
	.company_access_title{
		margin-bottom:25px;
	}
	.company_access_box{
		line-height:1.8;
	}
	.company_access_boxl{
		float:left;
		width:360px;
	}
	.company_access_boxr{
		float:left;
		width:540px;
	}
	
.company_map{
	/*padding-left:86px;
	height:600px;*/
}
/*.company_map iframe{
	pointer-events: none;
}*/
.company_map_maskl,
.company_map_maskr{
	top:0px;
	width:25%;
	height:600px;
}
.company_map_maskl{
	left:0px;
}
.company_map_maskr{
	right:0px;
}
@media (max-width: 1100px){
	.company_map_maskl,
	.company_map_maskr{
		width:15%;
	}
}

.company_history{
	padding-left:86px;
	margin-bottom:100px;
}
.company_history_title{
	padding:30px 0;
}
.company_history_infobox{
	width:938px;
}
	.company_history_infobox .info_list{
		border-top:2px solid #000;
	}
	.company_history_infobox .info_list li{
		border-bottom:1px dotted #000;
		padding: 17px 20px 14px;
	}
	.company_history_infobox .info_list td{
		line-height:1.8;
		vertical-align:top;
	}
	.company_history_infobox td.info_date{
		width:103px;
		color:#8f8f8f;
		font-size:13px;
		padding-top:1px;
	}
/*=============================== recruit*/
.recruit_main_bg{
	background-color:#B7D5E8;
	padding:80px 0 60px;
}
.recruit_guidance{
	padding:60px 0 70px;
	background-color:#fff;
}
	.recruit_guidance ul li{
		width:200px;
		margin-right:25px;
		margin-bottom:25px;
		float:left;
		text-align:center;
	}
	.recruit_guidance ul li a{
		display:block;
		width:200px;
		height:60px;
		box-sizing:border-box;
		background-color:#999;
		color:#fff;
		line-height:1.0;
		text-decoration:none;
		display: grid;
		place-content: center;
		gap: 1ch;
	}
	.recruit_guidance ul li a:hover{
		opacity:0.7;
		transition:0.5s;
	}
	.recruit_guidance ul li:nth-child(5n){
		margin-right:0px;
	}

/*=============================== recruit/career_xxx */
.career_title{
	padding:100px 0 90px;
}
.career_container{
	padding-bottom:160px;
}
.recruit_side{
	width:230px;
}
	/*.recruit_side_top,
	.recruit_side_bottom{
		width:228px;
	}*/
		.recruit_side_sub{
			color:#333;
			font-size:16px;
			font-weight:bold;
			line-height:1.4;
			padding:10px 0;
			border-bottom:2px solid #000;
		}
		.recruit_side_list:not(:last-child){
			margin-bottom:40px;
		}
		.recruit_side_list li{
			padding:13px 0 13px 15px;
			color:#595959;
			border-bottom:1px solid #a7a7a7;
			background:url(../img/common/marker01.png) no-repeat left center;
		}

.career_content{
	width:830px;
}
	.career_title_sub{
		border-left:6px solid #333;
		padding: 2px 15px;
		color:#333;
		font-size:18px;
		line-height:1.0;
		font-weight:bold;
	}
	.career_table{
		width:100%;
		border-top:2px solid #000;
	}
		.career_table th,
		.career_table td{
			color:#333;
			line-height:1.8;
			padding:18px 18px 16px;
			border-bottom:1px dotted #000;
		}
		.career_table th{
			width:230px;
			background-color:#e7e7e7;
		}
		.career_table dt{
			padding-left:1em;
			text-indent:-1em;
		}
		.career_table dd{
			padding-left:1em;
		}
		.career_table a{
			color:#69c;
			text-decoration:underline;
		}
	.recruit_btn_entry{
		width:240px;
		margin:0 auto;
	}

/*===============================news */
.news_bg{
	background:url(../img/news/news_bg01.jpg) no-repeat center top;
	background-size:100%;
	padding-bottom:30px;
}
	.news_title{
		padding:100px 0 50px 5px;
	}
	.news_container{
		padding:30px 80px;
		background-color:rgba(255,255,255,0.8);
	}
	.news_title_sub{
		padding-bottom:20px;
	}
	.news_infobox{
		margin-bottom:45px;
	}
		.news_infobox .info_list{
			border-top:2px solid #000;
			/*max-height:1150px;*/
			min-height:285px;
			/*overflow:hidden;*/
		}
/*===============================jobs/xxx*/
/*共通パーツ*/
#jobs .contents{
	overflow-x: hidden;
}

.jobs_side {
	top: 80px;
	left: 0;
}
.jobs_side_list li{
		margin-bottom:20px;
}
.jobs_main_title{
	padding:0 0 20px 5px;
}
.jobs_main_info{
	line-height: 2.0;
	color:#333;
	width: 347px;
}
.jobs_sec01_bg{
	background-color:#efefef;
	/*margin-top:-52px;*/

}

	.jobs_sec01_title{
		padding:85px 0;
	}

	
	.jobs_jobflow_list{
	}
		.jobflow_title{
			padding-bottom:5px;
		}
		.jobflow_info{
			padding-left:75px;
			line-height:2.0;
		}

.jobs_faq_list{
	width:780px;
	/*width:1700px;*/
	margin:0 auto 70px;
	/*margin:0 0 0 -300px;*/
}
	.jobs_faq_list li{
		/*padding:30px 0 30px 450px;*/
		/*padding-left:150px;*/
	}
		.jobs_faq_title{
			padding:0 0 30px 130px;
		}
		.jobs_faq_boxr{
			display:table;
			padding-left:130px;
		}
		.jobs_faq_boxl{
			display:table;
			padding-left:50px;
		}
	
		.jobs_faq_text{
			display:table-cell;
			box-sizing:border-box;
			width:600px;
			padding:18px 30px 15px;
			border:1px solid #939393;
			line-height:2.0;
		}
		.jobs_faq_outr,
		.jobs_faq_outl
		{
			display:table-cell;
			vertical-align:middle;
		}
			.jobs_faq_outr img{
				margin-left:-3px
			}
			.jobs_faq_outl img{
				margin-right:-3px
			}
.jobs_faq_btn_area{
	text-align:center;
	margin-top:  10%;
}

.jobs_faq_btn{
	display:inline-block;
	vertical-align: middle;
	margin:0 1%;
}

.jobs_faq_scrollarea{
	width:1700px;
	top:190px;
	left:-300px;
	height:500px;
	background-color:rgba(0,0,0,.5);
}
	/*.jobs_faq_btn_area a:first-child{
		margin-right:30px;
	}*/
.jobs_sec02_bg{
	overflow:hidden;
}
	
.jobs_sec02{
	padding:70px 0 80px;
}
.jobs_sec02_title{
	padding-bottom:70px;
	margin:0 auto;
	width:431px;
}

	.jobs_human_text{
	font-size:11px;
	padding-left:5px;
}
	.jobs_human_text p{
		padding-top:10px;
	}

.jobs_footer{
	padding-bottom:105px;
}
	.jobs_footer_title{
		margin-bottom:20px;
		height:17px;
	}
	.jobs_footer_title img{
		display:block;
		position:absolute;
	}
	.jobs_footer_title img:nth-child(1){
		left:156px;
	}
	.jobs_footer_title img:nth-child(2){
		left:608px;
	}
	.jobs_footer_title img:nth-child(3){
		left:887px;
	}
	.jobs_footer_list li{
		float:left;
		width:250px;
		margin-right:33px;
	}
	.jobs_footer_list li:last-child{
		margin-right:0px;
	}
	
.facility_area{
	background-color:rgba(116,177,214,0.5);
	padding:30px 0;
}
.facility_list li{
	float:left;
	margin-right:20px;
	width:280px;
}
	.facility_list_textarea{
		background-color:#fff;
		box-sizing:border-box;
		padding:15px 10px;
		height:100px;
	}
		.facility_list_title{
			padding-bottom:10px;
			line-height:1.0;
			font-size:16px;
		}
		.facility_list_content{
			font-size:12px;
			width:220px;
		}
		.facility_list_btn{
			position:absolute;
			right:15px;
			bottom:15px;
		}
/*===============================jobs-planner*/
.planner_main_bg{
	background:url(../img/jobs/planner/planner_bg01.jpg) no-repeat center bottom;
	background-size:cover;
	height:838px;
	position:relative;
	z-index:1;
}
	.planner_main_title{
		padding:100px 5px 20px;
	}
	.planner_main_info{
		line-height:2.0;
		color:#fff;
		width:347px;
	}
	
.planner_jobflow_list{
}
	.planner_jobflow_list li{
		padding-bottom:40px;
	}
	.planner_jobflow_list li:nth-child(1){
		padding-left:60px;
		width:671px;
	}
	.planner_jobflow_list li:nth-child(2){
		padding-left:107px;
		width:732px;
	}
	.planner_jobflow_list li:nth-child(3){
		padding-left:159px;
		width:743px;
	}
	.planner_jobflow_list li:nth-child(4){
		padding-left:204px;
		width:778px;
	}
	.planner_jobflow_list li:nth-child(5){
		padding-left:252px;
		width:606px;
	}
	.planner_jobflow_list li:nth-child(6){
		padding-left:298px;
		width:577px;
	}
	
	.planner_sec01_img01{
		display:block;
		left:-168px;
		top:346px;
	}
	.planner_sec01_img02{
		display:block;
		right:-135px;
		top:792px;
	}
	.planner_sec01_human01{
		display:block;
		left:-320px;
		top:618px;
	}
	.planner_sec01_human02{
		display:block;
		right:-170px;
		top:52px;
	}

.planner_human01{
	width:162px;
	top:260px;
}
.planner_human02{
	width:162px;
	top:260px;
	right:0px;
}
.planner_human_text{
	font-size:11px;
	padding-left:10px;
}
	.planner_human_text p{
		padding:10px 0 20px;
	}

/*===============================jobs-designer*/
.designer_main_bg{
	/*background:url(../img/jobs/designer/designer_bg01.jpg) no-repeat center bottom;
	background-size:cover;*/
	min-height:848px;
	background-color:#efefef;
	height:auto;
	position:relative;
	z-index:1;
}
	.designer_main_bg .bg_img{
		width:100%;
		min-width:1600px;
	}
	.designer_main_wrapper{
		width:100%;
		top:0;
	}
	.designer_main_inner{
		padding:28px 37px;
		top:370px;
		right: 0;
		background-color:rgba(255,255,255,0.7)
	}

.designer_jobflow_list{
}
	.designer_jobflow_list li{
		padding-bottom:50px;
	}
	.designer_jobflow_list li:nth-child(1){
		padding-left:60px;
		width:699px;
	}
	.designer_jobflow_list li:nth-child(2){
		padding-left:107px;
		width:732px;
	}
	.designer_jobflow_list li:nth-child(3){
		padding-left:159px;
		width:743px;
	}
	.designer_jobflow_list li:nth-child(4){
		padding-left:204px;
		width:761px;
	}
	.designer_jobflow_list li:nth-child(5){
		padding-left:252px;
		width:686px;
	}
	.designer_jobflow_list li:nth-child(6){
		padding-left:302px;
		width:616px;
		padding-bottom:90px;
	}
	
	.designer_sec01_img01{
		display:block;
		left:-186px;
		top:277px;
	}
	.designer_sec01_img02{
		display:block;
		right:-145px;
		top:696px;
	}
	.designer_sec01_human01{
		display:block;
		left:-290px;
		top:520px;
	}
	.designer_sec01_human02{
		display:block;
		right:-237px;
		top:64px;
	}


.designer_human01{
	width:162px;
	top:280px;
}
.designer_human02{
	width:205px;
	top:260px;
	right:-20px;
}
.designer_human01_face{
	padding-top:50px
}

/*===============================jobs-programmer*/
.programmer_main_bg{
	background:url(../img/jobs/programmer/programmer_bg01.jpg) no-repeat center center;
	background-size:cover;
	height:787px;
	position:relative;
	z-index:1;
}
	.programmer_main_inner{
		padding:28px 37px;
		top:370px;
		right: 0;
		background-color:rgba(255,255,255,0.85)
	}
	.programmer_main_title{
		padding-bottom:20px;
	}

.programmer_jobflow_list{
}
	.programmer_jobflow_list li{
		padding-bottom:50px;
	}
	.programmer_jobflow_list li:nth-child(1){
		padding-left:60px;
		width:699px;
	}
	.programmer_jobflow_list li:nth-child(2){
		padding-left:107px;
		width:732px;
	}
	.programmer_jobflow_list li:nth-child(3){
		padding-left:159px;
		width:743px;
	}
	.programmer_jobflow_list li:nth-child(4){
		padding-left:204px;
		width:778px;
	}
	.programmer_jobflow_list li:nth-child(5){
		padding-left:252px;
		width:658px;
		padding-bottom:90px;
	}
	/*.programmer_jobflow_list li:nth-child(6){
		padding-left:302px;
		width:616px;
	}*/
	
	.programmer_sec01_img01{
		display:block;
		left:-166px;
		top:344px;
	}
	.programmer_sec01_img02{
		display:block;
		right:-154px;
		top:788px;
	}
	.programmer_sec01_human01{
		display:block;
		left:-280px;
		top:608px;
	}
	.programmer_sec01_human02{
		display:block;
		right:-220px;
		top:42px;
	}


.programmer_human01{
	width:162px;
	top:280px;
}
.programmer_human02{
	width:205px;
	top:260px;
	right:-20px;
}
.programmer_human01_face{
	padding-top:50px
}


/*===============================works*/
.works_bg01{
	background-color:#E4E4E4;
	padding-bottom:30px;
}
.works_bg02{
	background:url(../img/works/works_bg01.jpg) no-repeat center top;
	background-size:100%;
}
	.cat-consumer{
		background:url(../img/works/cat_icon01.png) no-repeat left top;
	}
	.cat-app{
		background:url(../img/works/cat_icon02.png) no-repeat left top;
	}
	.img-consumer li{
		margin-left: 20px;
		width:230px;
	}
	.img-app li{
		margin-left:16px;
		width:150px;
	}

	.works_title{
		padding:105px 0 80px 5px;
	}
	.works_product_area{
		padding:50px 60px;
		background-color:rgba(255,255,255,0.9);
		margin-bottom:50px;
	}
		.product_boxl{
			float:left;
			width:620px;
		}
			.product_cat{
				margin-bottom:8px;
				height:20px;
			}
			.product_title{
				padding-bottom:20px;
				font-size:24px;
				line-height:1.0;
			}
			.product_table th,
			.product_table td{
				font-size:13px;
				padding:0 20px 9px 0;
			}
		.product_boxr{
			float:right;
			width:330px;
			text-align:right;
		}
			.product_main_text{
				padding-top:6px;
				font-size:11px;
				color:#333;
			}
			.product_main_link a{
				font-size:13px;
				color:#39c;
				text-decoration:underline;
			}
		.product_img_area hr{
			color:#000;
			height:1px;
		}
		.product_img_list li{
			float:right;
		}
		.product_img_list li:last-child{
			margin-right:0px;
		}

/*===============================contact*/

.contact-box{
	padding:50px 80px 55px;
	background-color:#fff;
}
.contact_sub01{
	padding:0 0 20px 10px;
}
.contact_info01{
}
	.contact_info01 a{
		color:#0061B1;
		text-decoration:underline;
	}
	.contact_ast:after{
		content:"*";
		color:red;
	}
.contact_info02{
	border-bottom:2px solid #000;
}
.contact_sub02{
	padding:50px 0 10px;
}
.contact_privacy{
	border:1px solid #ccc;
	padding: 15px 22px 0;
	font-size:12px;
	line-height:1.8;
	height:200px;
	color:#333;
}
	.contact_privacy p{
		padding-bottom:20px;
	}
.contact_privacy_btn{
	padding-top:20px;
}
	.contact_privacy_btn label{
		padding-left:15px;
	}
	.contact_privacy_btn input{
		position: relative;
		top: 2px;
	}
/*====================================
contact
====================================*/
.contact_title{
	padding:50px 0;
}
.contact_bg{
	background-color:#B9D8EA;
	padding-bottom:50px;
}
.contact_table {
	width: 100%;
}
.contact_table th,
.contact_table td { 
	border-top: 1px dotted #000;
	border-bottom: 1px dotted #000;
	box-sizing: border-box;
	vertical-align: middle;
}
.contact_table td { 
	padding: 15px 25px;
}
.contact_table th {
	width: 230px;
	padding: 20px 15px 15px;
	vertical-align:top;
	position: relative;
	background-color:#f9f9f9;
}
.text_l {
	width: 45%;
}
.text_year {
	width: 83px;
	margin-right:10px;
}
.text_l100{
	width:100%;
	height: 200px;
	margin-bottom: -3px;
}
/*.required:before {
	content: "※";
	color: #e03500;
	position: absolute;
	right: 10px;
	border-radius: 5px;
	padding: 1px 5px;
}*/
.required:after{
	content:"*";
	color:red;
}
.submit {
	text-align: center;
	margin-top: 30px;
}

.submit_cf7_submit{
    background-color: #d2eaf7;
    border: 1px solid #5b638f;
    padding: 12px 80px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
}

.submit_cf7_submit:hover{
    background-color: #d7ecf8;
    border: 1px solid #5b638f;
}

div.wpcf7 .wpcf7-spinner {
    display: block;
    margin: auto;
}


.wpcf7-response-output {
    background: white;
    border: 2px solid #dc3232 !important;
    color: #dc3232;
}
/*.submit_btn {
	width: 276px;
	height: 46px;
	background-color: #3160A1;
	display: inline-block;
	cursor: pointer;
	padding: 9px 23px;
	text-decoration: none;
	color: #FFF;
	font-size: 20px;
	line-height: 1.4;
	border: none;
}*/
.submit_table {
	width: 100%;
	margin: 50px auto 0;
}
.submit_table td {
	text-align: center;
	vertical-align: top;
}
.alert {
	margin: 0 auto 20px;
}
.alert li {
	/*color: #e03500;*/
	color:red;
}
.require_massage {
	/*color: #e03500;*/
	color:red;

}
.message {
	color: #000;
}
.message_title {
	font-size: 22px;
}
.contact_return_top {
	margin:50px 0 0;
	text-align:center;
}
.contact_table input,
.contact_table select{
	box-sizing: border-box;
	background-color: #f8f8f8;
	border: 1px solid #ccc;
	height: 30px;
}
.contact_table input[type="radio"]{
	height: auto;
	position:relative;
	top:2px;
}
.contact_radio label{
	padding-right:15px;
}
.contact_date select{
	margin:0 10px;
}
.contact_table textarea{
	box-sizing: border-box;
	background-color: #f8f8f8;
	border: 1px solid #ccc;
}
.contact_table label{
	cursor: pointer;
}
.submit input[type="image"][disabled]{
	background:#ccc;
	cursor:default;
	opacity:0.3;
}

/*===============================environment*/
.environment_bg{
	overflow:hidden;
}

.environment_list{
	margin-right:-20px;
}
.environment_list li{
	float:left;
	margin-right:20px;
	margin-bottom:20px;
	width:260px;
	box-sizing:border-box;
}

.s-environment_bg{
	background-color:#e7e7e7;
	padding-bottom:70px;
}
	.s-environment_title{
		font-size:34px;
		line-height:1.3;
	}
	.article{
		padding:20px 20px 40px;
		background-color:#fff;
	}
		.article_main{
			margin-bottom:40px;
		}
		.article_img_main,
		.article_img_top{
			margin-bottom:20px;
			text-align:center;
		}
			.article_img_main img,
			.article_img_top img{
				max-width:1060px;
			}
		.article_text_top,
		.article_text_side{
			color:#333;
			line-height:1.8;
		}
		
	.article_left,
	.article_right,
	.article_top,
	.article_text{
		margin:40px 0;
	}
	.article_img_side{
		width:530px;
	}
		.article_img_side img{
			max-width:530px;
		}
	.article_right .article_img_side{
		text-align:right;
	}
	
	.article_btn{
		margin:0 auto;
		width:260px;
	}
	
.pagination {
	padding: 20px 0 30px;
}
	.pagination .next,
	.pagination .prev {
		line-height:1.8;
		width:110px;
	}
	.pagination .next{
		float:right;
	}
	.pagination .prev{
		float:left;
	}
	.pagination .prev img{
		padding-right:10px;
	}
	.pagination .next img{
		padding-left:10px;
	}

/*===============================consumer || app 共通*/
.dev_main_bg{
	background:url(../img/consumer/csm_bg01.png) no-repeat center center;
	background-size:cover;
	height:270px;
}
.app_main_bg{
	background:url(../img/app/app_bg01.png) no-repeat center center;
	background-size:cover;
	height:270px;
}
	.dev_main_title{
		padding-top:93px;
		margin-left:-12px;
	}
	
.dev_main{
	padding:35px 0 55px;
	line-height:2.0;
	color:#333;
}

.dev_point{
}
.dev_point_box{
	padding:40px;
	border:1px solid #ccc;
}
	.dev_point_textarea{
		width:665px;
		float:left;
	}
		.dev_point_sub{
			padding-bottom:18px;
		}
		.dev_point_txt{
			color:#333;
			line-height:2.0;
		}
	.dev_point_img{
		float:right;
		width:320px;
	}
	.dev_point hr{
		border-top:4px solid #0365B4;
		margin-bottom:-5px;
		position:relative;
		z-index:1;
	}
.dev_works{
	padding-bottom:60px;
}
	.dev_works p{
		padding-top:15px;
		color:#333;
		font-size:16px;
		line-height:1.0;
	}
	.dev_works p span{
		font-size:12px;
		padding-left:20px;
	}
	.dev_works_btnarea{
		padding-top:15px;
	}
	.dev_works_btnarea a:first-child{
		margin-right:30px;
	}
	.dev_works_box ul li{
		width:347px;
	}
	.dev_works_box ul li:nth-child(1){
		margin-right:30px;
		float:left;
	}
	.dev_works_box ul li:nth-child(2){
		float:left;
	}
	.dev_works_box ul li:nth-child(3){
		float:right;
	}
	
	.app_works_box ul li{
		width:256px;
	}
	.app_works_box ul li:nth-child(1),
	.app_works_box ul li:nth-child(2){
		margin-right:25px;
		float:left;
	}
	.app_works_box ul li:nth-child(3){
		float:left;
	}
	.app_works_box ul li:nth-child(4){
		float:right;
	}

/*===============================about*/
.about_main_bg{
	background:url(../img/about/about_bg01.jpg) no-repeat center center;
	background-size:cover;
	height:889px;
}
.about_main_bg img{
	display:block;
	margin:0 auto;
}
	.about_main_txt01{
		padding:105px 0 66px;
		width:919px;
	}
	.about_main_txt02{
		padding-bottom:50px;
		width:359px;
	}
	.about_main_txt03{
		padding-bottom:50px;
		width:322px;
	}
	.about_main_txt04{
		padding-bottom:74px;
		width:369px;
	}
	.about_main_img01{
		padding-bottom:58px;
		width:620px;
	}
	.about_main_bg p{
		font-size:16px;
		line-height:2.1;
		color:#333;
	}

.about_point{
	padding:80px 0 60px;
}
	.about_point_title{
		width:298px;
		margin:0 auto;
	}
	
	.about_point_box{
		/*padding:30px;
		border:1px solid #ccc;*/
	}
		.about_point_textarea{
			width:769px;
			float:left;
		}
			.about_point_sub{
				padding-bottom:18px;
			}
			.about_point_txt{
				color:#333;
				line-height:2.0;
			}
		.about_point_img{
			float:right;
			width:300px;
		}
		.about_point_btnarea{
			padding-top:50px;
		}
		.about_point_btnarea a{
			margin-right:30px;
		}
		.about_point_btnarea a:last-child{
			margin-right:0px;
		}
/*===============================sitemap*/
.sitemap_bg{
	padding-bottom:300px;
}
.sitemap_box{
	background-color:#fff;
	padding:70px 80px 90px;
	color:#333;
}
	.sitemap_box .err_box{
		border:1px solid #000;
		padding:40px;
		margin-bottom:50px;
	}
	.sitemap_box ul{
		border-top:1px solid #000;
	}
	.sitemap_box ul li{
		border-bottom:1px dotted #000;
		padding:20px 30px 18px;
	}

/*=============================== english*/

/*コンテンツ*/
.eng_about_bg{
	background:url(../img/company/company_bg01.jpg) no-repeat center center;
	background-size:cover;
	height:895px;
	padding-top:95px;
}
.eng_about{
	background-color:rgba(255, 255, 255, 0.85);
	padding:3%;
	box-shadow: 0px 0px 10px rgba(255, 255, 255, 0.85);
	
}
.eng_about_title{
	padding-bottom:50px;
}
.eng_about_tbarea{
	margin-left:75px;
	line-height:1.8;
}
.eng_about_tb{
	float:left;
	/*margin-right:40px;*/
	width:500px;
}
	.eng_about_tb th,
	.eng_about_tb td{
		padding-bottom:10px;
		vertical-align:top;
	}
	.eng_about_tb th{
		width:211px;
		font-weight:bold;
		padding-top:1px;
	}
	.eng_about_tb td{
		width:670px;
	}

.eng_main_bg{
	background:url(../img/about/about_bg01.jpg) no-repeat center center;
	background-size:cover;
	height:900px;
}
.eng_main_bg img{
	display:block;
	margin:0 auto;
}
	.eng_main_txt01{
		padding:105px 0 66px;
	}
	.eng_main_txt02{
		padding-bottom:50px;
	}
	.eng_main_txt03{
		padding-bottom:50px;
	}
	.eng_main_txt04{
		padding-bottom:74px;
	}
	.eng_main_img01{
		padding-bottom:73px;
	}
	.eng_main_bg p{
		font-size:16px;
		line-height:2.1;
		color:#333;
	}

.eng_point_textbox{
	width:750px;
}
	.eng_point_text{
		color:#333;
		font-size:14px;
		line-height:1.8;
	}
.eng_point_imgbox{
	width:300px;
}
.eng_point_bg{
	padding:58px 0 30px;
}


/*===============================*/
/*===============================*/
/*===============================*/
/*===============================*/

/*===============================404*/
.text_404{
	margin:50px 0;
	text-align:center;
}
	.text_404 a{
		text-decoration:underline;
	}

/*追記*/

/*お仕事紹介*/
.tr_job_mainbg_designer{
	background:url(../img/jobs/designer/designer_bg01.jpg) no-repeat center center;
	background-size:cover;
	height:848px;
}
.tr_job_nav{
	background-color:green;
	float:left;
	margin-left:11%;
}
.tr_job_text{
	background-color:orange;
	padding:2%;
	float:right;
	margin-right:15%;
}

/*非表示*/
.tr_display_none{
	display: none;
}

.job_mynavi{
	text-align:center;
	margin-top:3%;
	margin-bottom:3%;
}

/*ニュース記事*/
.news_contents{
	margin-top:3%;
	color:#333333;
}
.news_contents p{
	margin-bottom:2%;
}
.news_contents h2{
	padding-left:1%;
	font-size:230%;
	border-left:5px solid #0365b4;
	background-color:#f9f9f9;
	font-weight:700;
}

.news_contents h3{
	padding-left:1%;
	font-size:140%;
	border-left:10px solid #0365b4;
	font-weight:700;
	margin-bottom:2%;
}

.news_contents h4{
	font-size:115%;
	font-weight:700;
	color:#0365b4;
	margin-bottom:2%;
}
.news_contents img{
	width:600px;
	text-align:center;
	margin:2% 0;
}
#news_time_area{
	margin:1% 0 3% 0;
}

/*記事文字装飾*/
.attention{
	color:red;
	font-weight:700;
}
.txt_size_l{
	font-size:200%;
}
.txt_size_m{
	font-size:150%;
}
.txt_size_s{
	font-size:80%;
}
.gray_area{
	background-color:#f1f1f1;
	padding:1%;
}
.txt_bold{
	font-weight:700;
}

/*募集要項リンク*/
.recruit_side_inner li:hover{
	background-color:#e7e7e7;
}


/*20/4対応 コロナのお知らせ表示*/
#attention{
    background: #000000b0;
    color: #e0fdff;
    border: 3px #e0fdff solid;
    text-align: left;
    padding: 20px;
    box-sizing: border-box;
    margin: 0% 27% 0% 27%;
    text-shadow:0 0 5px #e0fdff;
    box-shadow:0 0 5px #e0fdff;
}

#attention_title{
	font-size:150%;
	font-weight:700;
	text-align:center;
}
/*20/4対応*/

#display_non{
	display: none;
}
/*20/7対応*/

/*コンシューマー・アプリ開発*/

.dm_title_01{
	margin-bottom: 30px !important;
    font-size: 28px;
    font-weight: 600;
    border-left: 6px solid #0365b4;
    padding-left: 14px;
}

.dm_title_02
{
	padding-bottom: 14px;
    font-size: 24px;
}

/*スリーリングスについて*/
.tr_title_01
{
	padding-bottom: 14px;
    font-size: 24px;
    font-weight: 600;
}