@charset "UTF-8";

/*!01ヘッダ*/
/*!1.5 ハンバーガーボタン*/
/*!02FV*/
/*!03 TOPコンテント*/
/*!4 TOP ABOUT*/
/*!5 TOP PRODUCT*/
/*!6 TOP DEVELOPMENT*/
/*!7 TOP SES*/
/*!8 TOP CLIENT*/
/*!9 news*/
/*!10 CONTACT*/
/*!11 FOOTER*/
/*!12 下層共通*/
/*!13 RECRUIT*/
/*!N-01 NEWS一覧ページ*/
/*!D-01 DEVELOP一覧ページ*/
/*!P-01 PRODUCT一覧ページ*/
/*!14 お問い合わせ*/








.banner_sp {
	display: none;
}
@media screen and (max-width: 999px){

	/*!1.5 ハンバーガーボタン*/
	
	/*!03 TOPコンテント*/

	
	/*!4 TOP ABOUT*/
	.top_text {
		font-weight: 600;
		color: #161414;
		font-size: 18px;
		line-height: 2.2em;
		letter-spacing: 0.16em;
	}
	
	/*!5 TOP PRODUCT*/
	/*!6 TOP DEVELOPMENT*/
	/*!7 TOP SES*/
	/*!8 TOP CLIENT*/
	/*!9 news*/
	.news_l {
		width: 100%;
		margin-bottom: 32px;
	}
	.news_r {
		width: 100%;
	}
	.h0 {
		height: 0;
		overflow: visible;
		position: relative;
		bottom: 32px;
	}
	
	/*!10 CONTACT*/

	
	
	
	/*!11 FOOTER*/
	
	/*!12 下層共通*/
	.content_right {
		width: 100%;

		margin-left: auto;
		margin-right: auto;
		margin-top: 0;
		max-width: 400px;
	}
	.content_left {
		width: 100%;
	
		margin: 0 auto;
	}
	
	.content_img {
		margin: 0 auto 32px;
	}
	

	.gp {
		font-size: 16px;
		line-height: 2.2em;
	}
	.font48_sps {
		font-size: 48px !important;
	}
	.sp999_mw600 {
		max-width: 600px !important;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}
	
	/*!S-01 SERVICE一覧ページ*/
	.pro_l {
		width: 100%;
		max-width: 340px;
		margin: 32px auto 32px;
		min-height: 340px;
	}
	.pro_r {
		width: 100%;
	}
	
	
	/*!!TOP ABOUT*/
	.recruit_l {
		width: 100%;
		margin-bottom: 64px;
	}
	.recruit_r {
		width: 100%;
	}
	
	/*!!footer*/
	.footer_content {
		width: 100%;
		margin-top: 64px;;
	}
	.footer_menu {
		justify-content: flex-start !important;
	}
	.footer_ttl {
			width: 160px;
			margin-left: 0px;
	}
	copyright {
			font-size: 10px;
			color: #2e2b2b;
			font-style: italic;
			text-align: center;
			display: block;
			line-height: 16px !important;
			position: relative;
			right: 24px;
	}
	
	
	/*採用情報ページ*/
	.post_info {
		font-size: 20px;
		width: 100%;
		padding: 64px 64px;

	}
	.job01 {
		width: calc(100% - 0px);
	}
	.job02 {
		width: 100%;
		background: #fff;
		border-radius: 16px;
		padding: 24px 24px;
	}
	.job02b {
		width: 100%;
		background: #fff;
		border-radius: 16px;
		padding: 24px 24px;
	}
	
	.banners {
		display: none;
	}
	
	.banner_sp {
		display: block;
		position: absolute;
		right: 32px;
		bottom: 32px;
		width: 200px;
		
	}
	.banner_sp img {
		overflow: hidden;
		border-radius: 8px;
	}
	
	
}/*999px*/


@media screen and (max-width: 799px){
	/*!01ヘッダ*/
	.ttl {

	}
	
	
	
	.banner {
		position: absolute;
		bottom: 32px;
		right: 32px;
		width: 200px;
		display: inline-block;
		background: #0063df;
		border-radius: 8px;
		overflow: hidden;
		z-index: 1;
		
	}
	.banner img {
		border-radius: 8px;
		overflow: hidden;
	}
	.banner img:hover {
		opacity: 0.8;
		transition: opacity 0.2s;
	}


	/*!02FV*/
	.fv_text {
		padding: 0 24px;
		position: relative;
		bottom: 192px;
	}
	.fv_text h1 {
		color: #2e2b2b;
		font-weight: 400;
		font-size: 13vw;
		
		font-weight: 400;
		font-style: normal;
		margin-bottom: 16px;
		letter-spacing: 0.1em;
		line-height: 1.3em !important;
	}
	.fv_text h1 span {
		line-height: 1.3em !important;
		margin-left: 0 !important;
	}

	
	/*!03 TOPコンテント*/
	.top_text {
		font-weight: 600;
		color: #161414;
		font-size: 16px;
		line-height: 2.2em;
		letter-spacing: 0.16em;
	}
	/*!4 TOP ABOUT*/
	.aboutus {
		position: relative;
		margin-top: 0px !important;
		z-index: 8;
	}
	/*!5 TOP PRODUCT*/
	.top_product {
		background: url(img/top_product.png) no-repeat;
		background-size: cover;
		width: 100%;
		padding: 160px 0 0px;
	}
	/*!6 TOP DEVELOPMENT*/
	/*!7 TOP SES*/
	.top_ses {
		background: url(img/top_ses.png) no-repeat;
		background-size: cover;
		width: 100%;
		padding: 160px 0 0px;
	}
	/*!8 TOP CLIENT*/
	/*!9 news*/
	.news_ttl {
		font-size: 14px;
		margin: 0;
		padding: 0;
		color: #2e2b2b;
		transition: .2s;
		display: block;
	}
	
	/*!10 CONTACT*/
	.recruit_banner {
		width: 100%;
		border-radius: 16px;
		overflow: hidden;
		background-size: cover;
		display: block;
		height: 240px;
	}
	.contact_banner {
		width: 100%;
		border-radius: 16px;
		overflow: hidden;
		background-size: cover;
		display: block;
		height: 240px;
		transition: .2s;
		margin-top :32px;
	}
	.recruit_text {
		width: 100%;
	}
	.conttact_text {
		width: 100%;
	}
	
	/*!11 FOOTER*/
	
	
	
	.footer_three {
		width: 100%;
		max-width: 799px;
		margin: 0 0;
	}
	
	.footer_three a {
		display: block;
		width: 100%;
		font-size: 16px;
		margin-top: 0 !important;
	}
	
	.fm_1st {
		border-top: none;
		padding: 12px 0;
		border-bottom: 1px solid #222;
	}
	.fm_2nd {
		border-bottom: 1px solid #222;
		padding: 12px 0;
	}
	.fm_3rd {
		padding: 12px 0 0 0;
		font-size: 14px !important;
		display: none !important;
	}
	
	
	
	
	
	/*!12 下層共通*/
	.ico_pc {
		width: 64px;
	}
	.w25per {
		width:calc(50% - 16px);
	}
	.lang_logo p {
		font-size: 14px;
	}
	
	.lang_logo:nth-child(2n) {
		margin-right: 0; /* 4の倍数の要素だけ余白をゼロに */
	}
	
	
	
	
	
	
	
	/*!14 お問い合わせ*/
	.top_contact_tbl {
		width: 100%;
		max-width: 540px;
		margin: 0 auto 0 !important;
		padding: 0;
	}
	.top_contact_tbl tr td:first-child {
	padding: 32px 0 8px !important;
	border: none !important;
	border-bottom: none !important;
	width: 100% !important;
	display: block !important;
	font-size: 14px !important;
	}
	
	/*FORM*/
	.top_contact_tbl th {
	padding: 32px 0 8px !important;
	border: none !important;
	border-bottom: none !important;
	width: 100% !important;
	display: block !important;
	font-size: 14px !important;
	}
	.top_contact_tbl td {
	 padding: 0 0 32px;
	 border: none !important;
	 border-bottom: none !important;
	 width: 100% !important;
	 display: block !important;
	}
	.top_contact_tbl tr td {
	padding: 16px 0px;
	}
	
	.top_contact_tbl tr td:first-child {
	padding: 32px 0 8px !important;
	border: none !important;
	border-bottom: none !important;
	width: 100% !important;
	display: block !important;
	font-size: 14px !important;
	}
	
	form {
	font-size: 14px;
	}
	
	
	.c_form {
	max-width: 800px;
	width: 100%;
	margin: 0 auto 0;
	text-align: left;
	}
	
	.top_contact_tbl select {
	background: url(https://plusoct.com//img/arrow_bottom.png) no-repeat right 16px center #f9f9f8;
	background-size: 10px;
	padding: 4px 32px 8px 4px;
	border-radius: 4px;
	margin-bottom: 16px;
	width: 100%;
	border: 1px solid #8b8b8b;
	}
	.top_contact_tbl input[type=text] {
	background: #f9f9f8;
	padding: 8px 8px;
	border-radius: 4px;
	width: 100%;
	border: 1px solid #8b8b8b;
	
	}
	.top_contact_tbl input[type=email] {
	background: #f9f9f8;
	padding: 8px 8px;
	border-radius: 4px;
	
	
	width: 100%;
	border: 1px solid #8b8b8b;
	
	}
	.top_contact_tbl input[type=tel] {
	background: #f9f9f8;
	padding: 8px 8px;
	border-radius: 4px;
	
	
	width: 100%;
	border: 1px solid #8b8b8b;
	
	}
	
	/* チェックボックス01 */
	input[type=checkbox] {
	
	}
	.border {
	text-decoration: underline;
	}
	.border:hover {
	text-decoration: none;
	}
	.top_contact_tbl textarea {
	background: #f9f9f8;
	padding: 8px 8px;
	border-radius: 4px;
	resize: none;
	width: 100%;
	border: 1px solid #8b8b8b;
	}
	.btn_send {
	background: #163fa7;
	color: #fff;
	font-size: 16px;
	font-weight: 600;
	padding: 16px 16x;
	text-align: center;
	margin: 0 auto 24px;
	display: inline-block;
	min-width: 240px;
	width: 100%;
	border-radius: 4px;
	}
	.btn_send:hover {
	background: #1b1818;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	cursor: pointer;
	}
	/*!14 お問い合わせ*/
	table {
	width: 100%;
	table-layout: fixed;
	word-break: break-all;
	word-wrap: break-all;
	}
	
	.ofh {
		min-width: 320px;
		overflow: hidden;
	}
	
	/*!D-01 DEVELOP一覧ページ*/
	.cus_eyecatch {
		max-height: 300px;
		height: auto;
		border-radius: 16px;
		overflow: hidden;
		object-fit: cover;
	}
	
	.single_post img {
		border-radius: 16px;
		overflow: hidden;
		max-width: 800px;
		width: 100%;
		height: auto;
		margin-left: auto;
		margin-right: auto;
	}


/*!TOP*/
/*求人ページ*/
.job_list02 {
	width: 100%;
	background: #fff;
	border-radius: 16px;
	padding: 0 0 24px;
}
.job_list01 {
	width: 100%;
}
	
}/*799px*/


.pc649 { display: block; }
.sp649 { display: none; }

