@charset "UTF-8";
.maintxt {
	animation-name: fadein;
	animation-duration: 1.3s;
}
@keyframes fadein {
	from {
		opacity: 0;
		transform: translateY(30px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
/* メインimg
---------------------------------------------------------------- */
#mainimg {
	width: 100%;
	height: 640px;
	background-position: center center;
	background-size: cover;
	margin-top: 100px;
}
#mainimg .inner {
	display: flex;
	justify-content: center;
	align-items: center;
	color: #ffffff;
	letter-spacing: 0.2em;
	font-feature-settings: "palt";
	text-shadow: 2px 2px 5px #000000;
	/* ドット　*/
	height: 100%;
	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAFklEQVQYV2NkKD6WxtBrNYuRAQSAHAAq9ASidjjteAAAAABJRU5ErkJggg==
) repeat;
}
#mainimg .inner .txtbox {
	text-align: center;
}
@media screen and (max-width: 1000px) {
	#mainimg {
		height: 500px;
		margin-top: 70px;
	}
}
@media screen and (max-width: 500px) {
	#mainimg {
		height: 210px;
		margin-top: 54px;
	}
}
#mainimg .inner p:nth-of-type(1) {
	font-size: 26px;
	font-weight: 600;
	line-height: 2.4em;
}
#mainimg .inner p:nth-of-type(1) span {
	font-size: 53px;
	font-weight: 500;
	display: block;
}
#mainimg .inner p:nth-of-type(2) {
	font-size: 26px;
	font-weight: 400;
	line-height: 1.9em;
	padding-top: 20px;
}
@media screen and (max-width: 1000px) {
	#mainimg .inner p:nth-of-type(1) {
		font-size: 22px;
	}
	#mainimg .inner p:nth-of-type(1) span {
		font-size: 44px;
		font-weight: 600;
	}
	#mainimg .inner p:nth-of-type(2) {
		font-size: 20px;
	}
}
@media screen and (max-width: 500px) {
	#mainimg .inner p:nth-of-type(1) {
		font-size: 15px;
	}
	#mainimg .inner p:nth-of-type(1) span {
		font-size: 30px;
		font-weight: 600;
	}
	#mainimg .inner p:nth-of-type(2) {
		font-size: 14px;
		font-weight: 500;
		line-height: 1.6em;
		padding-top: 14px;
	}
}
/* お知らせ
---------------------------------------------------------------- */
.newsbox {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 50px;
	padding-bottom: 50px;
	display: flex;
	justify-content: space-between;
	padding-left: 20px;
	padding-right: 20px;
}
@media screen and (max-width: 1000px) {
	.newsbox {
		padding-top: 30px;
		padding-bottom: 30px;
	}
}
@media screen and (max-width: 500px) {
	.newsbox {
		padding-top: 20px;
		padding-bottom: 20px;
		display: block;
	}
}
.newsbox h2 {
	width: 175px;
	background-color: #eff4f7;
	text-align: center;
	color: #1d5e93;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.08em;
	display: flex;
	justify-content: center;
	align-items: center;
}
.newsbox h2 div span {
	color: #282828;
	font-size: 14px;
	font-weight: 500;
	display: block;
}
@media screen and (max-width: 500px) {
	.newsbox h2 {
		width: 100%;
		padding-top: 10px;
		padding-bottom: 10px;
		font-size: 20px;
		display: block;
	}
	.newsbox h2 div {
		width: 100%;
		display: flex;
		justify-content: center;
		align-items: flex-end;
	}
	.newsbox h2 div span {
		font-size: 14px;
		padding-left: 8px;
	}
}
.newsbox dl {
	flex: 1;
	margin-left: 40px;
	border-top: #b3b3b3 solid 1px;
}
.newsbox dl dt {
	color: #1d5e93;
	font-weight: 500;
	padding-top: 15px;
	font-size: 110%;
}
.newsbox dl dd {
	border-bottom: #b3b3b3 dotted 1px;
	padding-bottom: 15px;
	font-size: 14px;
	line-height: 1.6em;
}
.newsbox dl dd:last-child {
	border-bottom: #b3b3b3 solid 1px;
}
@media screen and (max-width: 500px) {
	.newsbox dl {
		width: 100%;
		margin: 0;
	}
	.newsbox dl dt {
		padding-top: 10px;
	}
	.newsbox dl dd {
		padding-bottom: 10px;
	}
}
/* 事業内容
---------------------------------------------------------------- */
.businessbox {
	width: 100%;
	background-color: #eff4f7;
	padding-top: 35px;
	padding-bottom: 20px;
}
@media screen and (max-width: 500px) {
	.businessbox {
		padding-top: 20px;
		padding-bottom: 10px;
	}
}
.businessbox h2 {
	text-align: center;
	color: #1d5e93;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1.2em;
	padding-bottom: 20px;
}
.businessbox h2 span {
	display: block;
	color: #282828;
	font-size: 14px;
	font-weight: 500;
}
@media screen and (max-width: 500px) {
	.businessbox h2 {
		font-size: 22px;
		padding-bottom: 10px;
	}
}
.businessbox .bgimg {
	background-image: url("../images/bgimg_business.jpg");
	background-position: center bottom;
	background-size: cover;
}
.businessbox .bgimg .dot_inner {
	padding-top: 60px;
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 60px;
	/* ドット　*/
	height: 100%;
	background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAIAAAACCAYAAABytg0kAAAAGElEQVQYV2N0cnJq2LdvXwMjAwMDA4gDADYXBUnOSui7AAAAAElFTkSuQmCC
) repeat;
}
.businessbox .bgimg .dot_inner .inner {
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	justify-content: space-between;
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner {
		padding-top: 20px;
		padding-bottom: 20px;
		height: auto;
	}
	.businessbox .bgimg .dot_inner .inner {
		padding-left: 0px;
		padding-right: 0px;
		display: block;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox {
	padding-top: 25px;
	padding-left: 40px;
	padding-right: 40px;
	padding-bottom: 55px;
	background-color: rgba(255, 255, 255, .85);
	position: relative;
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) {
	width: 56%;
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(2) {
	width: 26%;
	margin-left: 40px;
}
@media screen and (max-width: 1000px) {
	.businessbox .bgimg .dot_inner .inner .busbox {
		padding-top: 15px;
		padding-left: 30px;
		padding-right: 30px;
		padding-bottom: 50px;
	}
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(2) {
		margin-left: 10px;
	}
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .inner .busbox {
		padding-top: 15px;
		padding-left: 20px;
		padding-right: 20px;
		padding-bottom: 15px;
	}
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1), .businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(2) {
		width: auto;
		margin: 0;
	}
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) {
		margin-bottom: 10px;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box {
	display: flex;
	padding-bottom: 20px;
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box {
		padding-bottom: 0;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box {
	width: 50%;
	padding-top: 15px;
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box:nth-of-type(1) {
	border-right: #282828 solid 1px;
	padding-right: 20px;
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box:nth-of-type(2) {
	padding-left: 20px;
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box:nth-of-type(1) {
		padding-right: 15px;
	}
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box:nth-of-type(2) {
		padding-left: 15px;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox h3 {
	font-size: 20px;
	font-weight: 500;
	border-bottom: #6a6a6a solid 1px;
	padding-bottom: 10px;
	text-align: center;
}
/*
.businessbox .bgimg .dot_inner .inner .busbox h3 span {
	display: block;
	color: #282828;
	font-size: 14px;
	font-weight: 400;
}
*/
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .inner .busbox h3 {
		font-size: 18px;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box h4 {
	color: #1d5e93;
	background-color: #cfe1ed;
	text-align: center;
	font-size: 115%;
	font-weight: 500;
	padding: 4px 0;
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box p {
	padding-top: 10px;
	font-size: 14px;
	line-height: 1.7em;
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box h4 {
		font-size: 110%;
	}
	.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(1) .inner-box .box p {
		line-height: 1.5em;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox:nth-of-type(2) p {
	padding-top: 15px;
	font-size: 14px;
	/*height: 140px;*/
	line-height: 1.7em;
}
.businessbox .bgimg .dot_inner .inner .busbox p:nth-of-type(2) {
	width: 150px;
	margin-left: auto;
	margin-right: auto;
}
.businessbox .bgimg .dot_inner .inner .busbox .morebtn {
	width: 150px;
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .inner .busbox .morebtn {
		position: static;
		left: inherit;
		transform: none;
		margin-left: auto;
		margin-right: auto;
		margin-top: 15px;
	}
}
.businessbox .bgimg .dot_inner .inner .busbox .morebtn a {
	display: block;
	background-color: #1d5e93;
	padding-top: 4px;
	padding-bottom: 4px;
	text-align: center;
	color: #ffffff;
	font-size: 13px;
	text-decoration: none;
}
.businessbox .bgimg .dot_inner .inner .busbox .morebtn a:hover {
	background-color: #40a8c4;
}
.businessbox .bgimg .dot_inner .inner .busbox .morebtn a i {
	padding-left: 8px;
	top: 10px;
	font-size: 15px;
}


.businessbox .bgimg .dot_inner .fudosan {
	max-width: 940px;
	margin-left: auto;
	margin-right: auto;
	background-color: rgba(255, 255, 255, .85);
	padding: 25px 80px;
	margin-top: 19px;
	display: flex;
	justify-content: space-between;
	position: relative;
}
@media screen and (max-width: 900px) {
	.businessbox .bgimg .dot_inner .fudosan {
		padding: 15px 30px;
		margin-top: 10px;
	}
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .fudosan {
		padding: 15px 20px;
		margin-top: 10px;
		display: block;
	}
}
.businessbox .bgimg .dot_inner .fudosan h3 {
	font-size: 20px;
	font-weight: 500;
	width: 140px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.businessbox .bgimg .dot_inner .fudosan h3 span {
	border-bottom: #6a6a6a solid 1px;
	padding-bottom: 6px;
	padding-left: 20px;
	padding-right: 20px;
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .fudosan h3 {
		width: 100%;
		font-size: 20px;
		font-weight: 500;
		border-bottom: #6a6a6a solid 1px;
		padding-bottom: 10px;
		text-align: center;
	}
	.businessbox .bgimg .dot_inner .fudosan h3 span {
		border-bottom: none;
		padding-bottom: 0;
	}
}
.businessbox .bgimg .dot_inner .fudosan .leadbox {
	flex: 1;
	padding-left: 80px;
	font-size: 14px;
}
.businessbox .bgimg .dot_inner .fudosan .leadbox i {
	padding-left: 6px;
	font-size: 14px;
	color: #1d5e93;
}
@media screen and (max-width: 900px) {
	.businessbox .bgimg .dot_inner .fudosan .leadbox {
		padding-left: 40px;
	}
}
@media screen and (max-width: 500px) {
	.businessbox .bgimg .dot_inner .fudosan .leadbox {
		padding-top: 10px;
		padding-left: 0;
	}
	.businessbox .bgimg .dot_inner .fudosan .leadbox i {
		padding-left: 6px;
		font-size: 14px;
		color: #1d5e93;
	}
}
/* 会社概要・採用情報
---------------------------------------------------------------- */
.bg_colorbox_left {
	background: linear-gradient(65deg, #eff4f7 0%, #eff4f7 60%, #ffffff 60%, #ffffff 100%);
	width: 100%;
	height: 334px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
.bg_colorbox_right {
	background: linear-gradient(-65deg, #eff4f7 0%, #eff4f7 60%, #ffffff 60%, #ffffff 100%);
	width: 100%;
	height: 334px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}
@media screen and (max-width: 500px) {
	.bg_colorbox_left,
	.bg_colorbox_right {
		/*
		padding-top: 20px;
		padding-bottom: 10px;
		margin-top: 20px;
		*/
		/* コンテンツ幅解除　*/
		/*
		width: 100vw;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
		*/
		height: 380px
	}
	.bg_colorbox_left {
		/*margin-top: 40px;*/
		background: linear-gradient(70deg, #eff4f7 0%, #eff4f7 82%, #ffffff 82%, #ffffff 100%);
	}
	.bg_colorbox_right {
		/*margin-top: 40px;*/
		background: linear-gradient(-70deg, #eff4f7 0%, #eff4f7 82%, #ffffff 82%, #ffffff 100%);
	}
}

.corpinfo-wrap {
	position: relative;
	margin-top: 150px;
}
.corpinfo-wrap.rec {
	margin-top: 100px;
}
.corpinfo-wrap .inner {
	max-width: 1000px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	display: flex;
	justify-content: space-between;
	
	background-color: rgba(1,29,126,0.0);
}
@media screen and (max-width: 900px) {
	.corpinfo-wrap {
		margin-top: 50px;
	}
	.corpinfo-wrap.rec {
		margin-top: 60px;
	}
	.corpinfo-wrap .inner {
		align-items: center;
	}
}
@media screen and (max-width: 500px) {
	.corpinfo-wrap {
		margin-top: 30px;
	}
	.corpinfo-wrap.rec {
		margin-top: 30px;
	}
	.corpinfo-wrap .inner {
		display: block;
	}
}
.corpinfo-wrap .inner .corpinfo {
	width: 45%;
	padding-top: 40px;
	padding-right: 50px;
}
.corpinfo-wrap.rec .inner {
	flex-direction: row-reverse;
}
.corpinfo-wrap.rec .inner .corpinfo {
	padding-right: 0px;
	padding-leftt: 50px;
}
.corpinfo-wrap .imgs {
	width: 50%;
	position: relative;
	top: -25px;
}
@media screen and (max-width: 900px) {
	.corpinfo-wrap .inner .corpinfo {
		width: 50%;
		padding-right: 20px;
	}
	.corpinfo-wrap .imgs {
		width: 45%;
		top: 0;
	}
}
@media screen and (max-width: 500px) {
	.corpinfo-wrap .inner .corpinfo,
	.corpinfo-wrap.rec .inner .corpinfo{
		width: auto;
		padding-left: 0px;
		padding-right: 0px;
		padding-top: 25px;
	}
}
@media screen and (max-width: 500px) {
	.corpinfo-wrap .corpinfo,
	.corpinfo-wrap.rec .corpinfo {
		padding-left: 20px;
		padding-right: 20px;
	}
	.corpinfo-wrap .imgs,
	.corpinfo-wrap.rec .imgs {
		width: 60%;
		margin-left: auto;
		margin-right: auto;
		margin-top: 15px;
	}
}

.corpinfo-wrap .corpinfo h2 {
	text-align: center;
	color: #1d5e93;
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 0.08em;
	line-height: 1.2em;
	padding-bottom: 20px;
}
.corpinfo-wrap .corpinfo span {
	display: block;
	color: #282828;
	font-size: 14px;
	font-weight: 500;
}
.corpinfo-wrap .corpinfo p:nth-of-type(1) {
	font-size: 20px;
	font-weight: 500;
	padding-bottom: 10px;
}
@media screen and (max-width: 900px) {
	.corpinfo-wrap .corpinfo h2 {
		font-size: 24px;
	}
	.corpinfo-wrap .corpinfo p:nth-of-type(1) {
		font-size: 18px;
	}
}
@media screen and (max-width: 500px) {
	.corpinfo-wrap .corpinfo h2 {
		font-size: 24px;
		padding-bottom: 10px;
	}
	.corpinfo-wrap .corpinfo span {
		font-size: 12px;
	}
	.corpinfo-wrap .corpinfo p {
		text-align: center;
	}
	.corpinfo-wrap .corpinfo p:nth-of-type(1) {
		font-size: 18px;
	}
}
.corpinfo-wrap .corpinfo .morebtn {
	width: 150px;
	margin-top: 25px;
}
.corpinfo-wrap .corpinfo .morebtn a {
	width: 100%;
	border: #999999 solid 1px;
	text-align: center;
	padding-top: 4px;
	padding-bottom: 4px;
	display: block;
	font-size: 14px;
	text-decoration: none;
}
.corpinfo-wrap .corpinfo .morebtn a:hover {
	background-color: #40a8c4;
	border: #40a8c4 solid 1px;
	color: #ffffff;
}
.corpinfo-wrap .corpinfo .morebtn i {
	padding-left: 8px;
	font-size: 18px;
}
@media screen and (max-width: 500px) {
	.corpinfo-wrap .corpinfo .morebtn {
		margin-top: 15px;
		margin-left: auto;
		margin-right: auto;
	}
	.corpinfo-wrap .corpinfo .morebtn a {
		background-color: #fff;
	}
}