@charset "utf-8";
/* CSS Document */


body {
	-webkit-print-color-adjust: exact;
}


html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	font-family: Meiryo,YuGothic,YuGothicM,sans-serif; }

ul li {
	list-style: none; }

strong {
	font-weight: bold; }

.ct {
	text-align: center !important; }

.clearfix:after {
	display: block;
	clear: both;
	height: 0px;
	visibility: hidden;
	content: "."; }

.clearfix {
	min-height: 1px; }

* html .clearfix {
	height: 1px;
	height: auto;
	overflow: hidden; }

article, main, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block; }

a:link {
		color: #19169a; }

	/*未訪問のリンクの色*/
	a:visited {
		color: #19169a; }

	/*訪問済みのリンクの色*/
	a:hover {
		color: #55b3d8; }

	/*カーソルが乗っているリンクの色*/
	a:active {
		color: #19169a; }

header nav ul {
		display: flex;
		align-items: center; }

	header nav ul li a {
		text-decoration: none;
		font-weight: bold;
		padding: 16px; }

	#nav_toggle {
		display: none; } 

.left {
		float: left; }

	.right {
		float: right; }

	#TOP #HeaderArea nav ul li.Menu {
		display: none; }

	#HeaderArea {
		height: 100px; }
		#HeaderArea .PC_MENU {
			float: right; }

	.inner {
		padding: 0 0 0 10px; }

	#SiteKeyword {
		font-size: 10px;
		margin-bottom: 20px;
		margin-top: 10px; }

	#SiteLOGO img {
		width: 285px;
		height: auto; }

	.TEL_MENU {
		margin: 0 20px; }
		.TEL_MENU img {
			width: 320px;
			height: auto; }

	.CONTACT_MENU a {
		width: 150px;
		min-width: 100px;
		background: #0d0aa7;
		color: #fff;
		display: block;
		text-align: center;
		position: relative;
		padding-top: 25px; }
		.CONTACT_MENU a:before {
			content: "";
			background-image: url("../images/img_commons/icon_contact.png");
			display: block;
			width: 30px;
			height: 25px;
			margin: 0 auto 10px;
			background-size: 30px 25px; }


#indexVisual {
		position: relative; }
		#indexVisual #SiteCopy {
			background: url("../images/img_index/main_visual_top.jpg") no-repeat center 0;
			height: 790px;
			text-indent: 100%;
			white-space: nowrap;
			overflow: hidden; }
		#indexVisual #indexMenu {
			position: absolute;
			top: 475px;
			left: 0;
			right: 0; }
			#indexVisual #indexMenu ul {
				display: flex;
				justify-content: center; }
				#indexVisual #indexMenu ul li {
					margin-right: 25px; }
					#indexVisual #indexMenu ul li:last-child {
						margin-right: 0; }


.Contents {
		width: 1000px;
		margin: 0 auto; }

	.TextStyle_01 {
		font-size: 16px;
		line-height: 2; }

	.TextStyle_02 {
		font-size: 16px;
		line-height: 2;
		margin-bottom: 20px; }

	.left {
		float: left; }

	.right {
		float: right; }

	#BrandMessage {
		background: url("../images/img_index/bg_message.jpg") no-repeat center;
		padding: 100px 0;
		background-attachment: fixed;
		background-size: cover;
		margin: 50px 0 100px; }
		#BrandMessage .ContactButton a {
			display: block;
			text-align: center;
			margin-top: 40px; }

	.BrandCopy {
		font-family: 'Noto Serif JP', sans-serif;
		text-align: center;
		font-size: 38px;
		margin-bottom: 40px; }


#BusinessContents .BusinessTitle {
		font-family: 'Noto Serif JP', sans-serif;
		font-size: 32px;
		color: #19169a;
		text-align: center;
		margin-bottom: 70px; }
		#BusinessContents .BusinessTitle:after {
			border-bottom: 1px solid #19169a;
			content: "";
			display: block;
			height: 0;
			margin: 0 auto;
			padding: 0 0 20px;
			width: 70px; }

	.BusinessContents_01 {
		position: relative;
		background: url("../images/img_index/bg_tokucho_gaiheki.jpg") no-repeat center;
		height: 510px;
		margin-bottom: 80px; }
		.BusinessContents_01 .BusinessContents_01_C_TOP {
			position: absolute;
			top: -30px;
			left: 0;
			right: 0; }
			.BusinessContents_01 .BusinessContents_01_C_TOP .BusinessContents_01_C {
				width: 1000px;
				margin: 0 auto; }

	.BusinessContents_02 {
		position: relative;
		background: url("../images/img_index/bg_tokucho_crane.jpg") no-repeat center;
		height: 510px;
		margin-bottom: 80px; }
		.BusinessContents_02 .BusinessContents_02_C_TOP {
			position: absolute;
			top: -30px;
			left: 0;
			right: 0; }
			.BusinessContents_02 .BusinessContents_02_C_TOP .BusinessContents_02_C {
				width: 1000px;
				margin: 0 auto; }

	.BusinessContents_03 {
		position: relative;
		background: url("../images/img_index/bg_tokucho_shuri.jpg") no-repeat center;
		height: 510px;
		margin-bottom: 80px; }
		.BusinessContents_03 .BusinessContents_03_C_TOP {
			position: absolute;
			top: -30px;
			left: 0;
			right: 0; }
			.BusinessContents_03 .BusinessContents_03_C_TOP .BusinessContents_03_C {
				width: 1000px;
				margin: 0 auto; }

	.BusinessText_01 {
		width: 470px;
		padding-top: 200px; }

	.Title_Black {
		font-size: 35px;
		margin-bottom: 20px; }


#ContactArea {
		background: #f2f2f2;
		padding: 100px 0 50px;
		margin-top: 100px; }
		#ContactArea .ContactTitle {
			color: #1f328c;
			font-size: 50px;
			font-weight: bold;
			margin-bottom: 50px;
			text-align: center;
			font-family: 'Noto Sans JP', sans-serif; }
		#ContactArea .ContactContents {
			width: 775px;
			margin: 0 auto; }
		#ContactArea .TEL_Text {
			color: #1f328c;
			font-size: 35px;
			text-align: center;
			font-weight: bold;
			font-family: 'Noto Sans JP', sans-serif; }
		#ContactArea .ContactButton {
			background: #484848;
			width: 1000px;
			color: #fff;
			font-weight: bold;
			text-decoration: none;
			font-size: 20px;
			padding: 20px 0;
			margin: 20px;
			display: block;
			text-align: center; }
			#ContactArea .ContactButton:before {
				background-position: -140px -170px;
				width: 25px;
				height: 17px;
				top: 50%;
				left: 0;
				-webkit-transform: translateY(-50%);
				-ms-transform: translateY(-50%);
				transform: translateY(-50%);
				background-image: url("../images/img_commons/icon_contact.png") no-repeat;
				position: absolute;
				display: block;
				content: ""; }

#FooterArea {
		background: #1f328c;
		padding: 80px 0 120px; }
		#FooterArea .contents {
			width: 1000px;
			margin: 0 auto;
			color: #fff;
			line-height: 2; }
			#FooterArea .contents .FooterTitle {
				margin-bottom: 20px; }
			#FooterArea .contents .tr {
				text-align: right; }
			#FooterArea .contents .FooterMenu li a {
				color: #6478d9;
				text-align: right;
				text-decoration: none; }
				#FooterArea .contents .FooterMenu li a em {
					font-weight: bold; }

	#CopyRight {
		background: #151f4c;
		padding: 15px;
		color: #4e6cf1;
		text-align: center;
		font-size: 14px; }

.PC_MENU ul li.Menu {
		text-align: center;
		margin-right: 30px; }
		.PC_MENU ul li.Menu a {
			padding: 16px 0; }
			.PC_MENU ul li.Menu a em {
				color: #19169a;
				font-size: 14px; }
			.PC_MENU ul li.Menu a i {
				color: #414141;
				display: block;
				font-size: 20px; }

#PageVisual_SERVICE {
		background: url("../images/img_service/img_header_service.jpg") no-repeat center 0px;
		height: 200px;
		padding: 58px 0;
		box-sizing: border-box;
		position: relative; }

	#PageVisual_COMPANY {
		background: url("../images/img_company/img_header_company.jpg") no-repeat center 0px;
		height: 200px;
		padding: 58px 0;
		box-sizing: border-box;
		position: relative; }

	#PageVisual_WORKS {
		background: url("../images/img_works/img_header_works.jpg") no-repeat center 0px;
		height: 200px;
		padding: 58px 0;
		box-sizing: border-box;
		position: relative; }

	#PageTitle {
		font-size: 30px;
		color: #414141;
		text-align: center; }

	#SiteEnglish {
		position: absolute;
		top: 130px;
		right: 150px; }
		#SiteEnglish h3 {
			color: #19169a;
			font-size: 40px;
			font-style: italic;
			text-align: center;
			line-height: 1; }
		#SiteEnglish span {
			color: #2aaad4;
			display: block;
			font-size: 15px; }

.mb40 {
		margin-bottom: 40px; }

	.mb50 {
		margin-bottom: 50px; }

	.mb60 {
		margin-bottom: 60px; }

	.mb70 {
		margin-bottom: 70px; }

	.mb80 {
		margin-bottom: 80px; }

	.Full_BG {
		padding: 50px 0; }

	.Blue_BG {
		padding: 50px 0;
		background: #e7e9ef; }

	.PageContents {
		width: 950px;
		margin: 0 auto; }

	.ImgR {
		float: right;
		width: 445px; }

	.TextL {
		float: left;
		width: 475px; }

	.ImgL {
		float: left;
		width: 445px; }

	.TextR {
		float: right;
		width: 475px; }

	.Title_Blue {
		color: #19169a;
		font-size: 35px;
		margin-bottom: 20px; }

	.BoxStyle_01 {
		border: 3px solid #e7e9ef;
		padding: 30px;
		margin-bottom: 30px; }

.BoxStyle_02 {
		border: 10px solid #e7e9ef;
		padding: 30px;
		margin-bottom: 30px; }

	ul.ListStyle_01 li {
		position: relative;
		font-size: 16px;
		line-height: 2;
		margin-left: 30px; }
		ul.ListStyle_01 li:after {
			display: block;
			content: '';
			position: absolute;
			top: .5em;
			left: -1em;
			width: 6px;
			height: 6px;
			background-color: #19169a;
			border-radius: 100%; }

table.TableStyle_01 tr th {
		padding: 20px;
		border-bottom: 1px solid #19169a;
		text-align: left;
		font-weight: bold; }
	table.TableStyle_01 tr td {
		padding: 20px;
		border-bottom: 1px solid #a7a7a7;
		text-align: left; }

ul.ImageList_01 {
		display: flex;
		flex-wrap: wrap; }
		ul.ImageList_01 li {
			width: 330px;
			border-right: 1px solid #a7a7a7;
			margin-bottom: 20px;
			padding: 40px 0;
			text-align: center; }
			ul.ImageList_01 li:nth-child(3n) {
				border: 0px solid #fff; }
			ul.ImageList_01 li img {
				margin-bottom: 20px; }
			ul.ImageList_01 li p {
				color: #3d3d3d;
				font-size: 16px; }

.GoogleMap iframe {
		width: 100%;
		height: 400px; }

.Title_sub {
		color: #414141;
		border-bottom: 3px solid #19169a;
		padding-bottom: 5px;
		margin-bottom: 15px;
		font-size: 25px; }

.Title_C {
		font-size: 20px;
		color: #414141;
		margin: 0 0 20px;
		line-height: 1.5em;
		font-weight: bold; }
		.Title_C:after {
			border-bottom: 2px solid #19169a;
			content: "";
			display: block;
			height: 0;
			margin: 0 auto;
			padding: 0 0 .9rem;
			width: 3rem; }

ul.ImageList_03 {
		display: flex;
		flex-wrap: wrap;
		justify-content: center; }
		ul.ImageList_03 li {
			margin-right: 20px; }
			ul.ImageList_03 li:last-child {
				margin-right: 0; }

input, textarea {
		border: 2px solid #d0d7ec;
		width: 90%;
		padding: 10px;
		margin: 3px 0; }

	input {
		line-height: normal; }

	.buttonArea {
		text-align: center;
		margin: 20px 0 40px; }
		.buttonArea input {
			width: 330px;
			background: #0d0aa7;
			border: none;
			padding: 10px 0;
			color: #fff;
			margin: 0 auto;
			font-size: 16px; }

	button, html input[type="button"], input[type="reset"], input[type="submit"] {
		-webkit-appearance: button;
		cursor: pointer; }