﻿html
{
	height:100%;
	font-size:18px;
}
body
{
	margin:0;
	background-color:#ededff;
	width:100%;
	height:auto;
	overflow-y:scroll;/*縦にスクロールバーを表示する。ページのレイアウト統一用*/
}
/*▼ヘッダー部分*/
header
{
	position:fixed;
	top:0;
	left:0;
	text-align:left;
	height:110px;
	width:100%;
	background-image:linear-gradient(to top, rgb(181,189,200,1) 1%, rgb(187,187,187,1) 50%, rgb(170,170,170,1) 100%);
	z-index:3;
	min-height:auto;
}

/*▼見出しの調整*/
h1
{
	margin-top:40px;
	border-bottom:solid 10px #ffcc99;
	color:#555;
	line-height:1.5em;
}
h2
{
	border-bottom:solid 10px #ffcc99;
	color:#555;
}
/*▲見出しの調整*/

/*▼リンク表示部分の調整*/
a
{
	color:#202f55;
}
a:hover
{
	text-decoration:none;
	color:#ffa500;
	font-weight:bold;
}
/*▲リンク表示部分の調整*/

header div
{
	height:100%;
	/*margin-left:0;*/
	vertical-align:middle;
	max-width:1920px;
}

/*▼サイト全体の基盤設定*/
article
{
	overflow:hidden;
	background-color:#fff;
	font-size:16px;
	
	width:100%;
    clear:both;
    margin-top:110px;
    max-width:1920px;
    margin-right:auto;
    margin-left:auto;
    min-height:calc(100vh - 110px);
}
/*▲サイト全体の基盤設定*/
.company_logo
{
	max-width:80px;
	width:90%;
	min-height:auto;
	margin-left:auto;
	margin-right:auto;
}

.company_logo:hover
{
	cursor:pointer;
	opacity:0.8;
}

header div#div_img
{
	float:left;
	height:100%;
	display:flex;
	align-items:center;
}

header div#div_name
{
	height:100%;
	font-size:16px;
	display:flex;
	align-items:center;
	color:#202f55;
	white-space:nowrap;
}

header div#div_name div
{
	display:inline-block;
	font-weight:bold;
	vertical-align:top;
	height:auto;
}

/*▼協力会社様部分の調整*/
.CooperationCompany
{
	float:right;
	margin-top:0;
	padding-right:50px;
	width:25%;
}
.CooperationCompany ul 
{
	padding:0;
	color:#555;
}
.CooperationCompany ul li
{
	margin-bottom:10px;
	list-style:none;
}
/*▲協力会社様部分の調整*/

/*▼メインコンテンツ部分の調整*/
.mainContent
{
	float:left;
	width:60%;
	overflow:hidden;
	padding-left:50px;
	color:#555;
	padding-bottom:20px;
}
/*▲メインコンテンツ部分の調整*/

/*▼代表挨拶部分の調整*/
div.aisatu
{
	overflow:hidden;
}
.daihyousya
{
	margin:0 auto;
	float:right;
}
/*▲代表挨拶部分の調整*/

/*役割を太字にする*/
.bold,.toiawase p
{
	font-weight:bold;
}

/*▼画像のサイズ調整*/
figure
{
	margin-left:0;
	border:solid 1px #ddd;
	width:90%;
	box-shadow:0 0 6px #aaa;
}
figure img
{
	width:100%;/*figureを親とした時の100%分を表示*/
	height:100%;/*figureを親とした時の100%分を表示*/
	vertical-align:bottom;/*画像の謎の隙間をなくす方法*/
}
/*▲画像のサイズ調整*/

/*▼フッター部分の調整*/
footer
{
	clear:both;
	height:auto;
	background: -webkit-linear-gradient(bottom, rgba(181,189,200,1) 1%,rgba(187,187,187,1) 50%,rgba(170,170,170,1) 100%); /* Chrome10-25,Safari5.1-6 */
	width:100%;
	background-image:linear-gradient(to top, rgb(181,189,200,1) 1%, rgb(187,187,187,1) 50%, rgb(170,170,170,1) 100%);
	margin-right:auto;
	margin-left:auto;
	text-align:left;
	min-height:auto;
}

footer p
{
	color:#202f55;
}

div.footinfo
{
	padding:10px 15px 10px 2em;
	font-weight:bold;
}

/*アクセスマップの調整*/
iframe
{
	margin-left:0;
	box-shadow:0 0 10px #aaa;
	width:600px;
	height:450px; 
}

/*▼サイトのトップにスクロールする部分の調整*/	/*ネットより引用*/
#pageTop 
{
	position:fixed;
	bottom:10px;
	right:30px;
}
#pageTop i
{
	padding-top:6px
}
#pageTop a 
{
	display:block;
	z-index:999;
	padding:10px;
	border-radius:30px;
	width:55px;
	height:55px;
	background-image: linear-gradient(to top,#6666bb 0%,#6690bb 100%);
	color:#fff;
	font-weight:bold;
	text-decoration:none;
	text-align:center;
}
#pageTop a:hover
{
	text-decoration:none;
	opacity:0.7;
}
/*▲サイトのトップにスクロールする部分の調整*/

table
{
	width:100%;
	margin:24px auto;/*上下 左右*/
	border-collapse:collapse;/*二重線→一重線*/
	margin:1em auto;
}

th,td
{
	padding:0.5em;/*上下 左右*/
	text-align:left;/*左揃え*/
}

table,td,th
{
	border:1px solid #aaaaaa;/*枠の線*/
}

table.businessPerformance td:first-child
{
	width:5em;
}

table.officeData th
{
	width:4em;
}

.mainContent ul 
{
	padding-left:1.5em;
	box-sizing:border-box;
}

header ul
{
	margin-left:auto;
	margin-right:2%;
	margin-top:25px;
}

header li
{
	display:inline-block;
	padding-left:1em;
	padding-right:1em;
	border-right:solid 2px #eee;
	padding-top:15px;
	padding-bottom:10px;
	box-sizing:border-box;
	font-weight:bold;
}

header li:first-child
{
	border-left:solid 2px #eee;
}

header li a
{
	text-decoration:none;
	display:inline-block;
	position:relative;
	color:#fff;
}

/*リンクに触れると横棒が出る設定。*/
header li a:before
{
	content:"";
	/*位置を絶対固定*/
	position:absolute;
	left:0;
	bottom:-4px;
	background:#555;
	width:100%;
	height:3px;
	transform:scale(0,1);
	transition:0.4s;
}
header li a:hover:before
{
	color:#202f55;
	transform:scale(1);
}

.tabDesign
{
	display:none;
}

.under520
{
	display:none;
}

.pcDesign
{
	/*width:100%;
	margin-left:auto;
	margin-right:auto;
	float:none;*/
	display:flex;
}

div#head_name
{
	margin-left:2%;
}

header div#div_tel
{
	margin-right:2%;
	white-space:nowrap;
	color:#202f55;
	height:auto;
	margin-top:25px;
	text-align:right;
}


/*レスポンシブデザイン*/
/*幅が960以下になったとき*/
@media screen and (max-width: 960px)
{
	/*▼協力会社部分の調整*/
	.CooperationCompany
	{
		width:auto;
		float:none;
		padding-right:0;
		max-width:80%;
		margin-left:auto;
		margin-right:auto;
	}
	/*▲協力会社部分の調整*/

	/*メイン部分の調整*/
	.mainContent
	{
		float:none;
		width:80%;
		padding-left:0;
		margin-left:auto;
		margin-right:auto;
		padding-bottom:0;
	}

	/*▼フッター部分の調整*/
	footer
	{
		width:100%;
	}
	div.companyinfo
	{
		float:none;
	}
	div.companyinfo p,.toiawase p
	{
		margin-bottom:5px;
	}
	/*▲フッター部分の調整*/
	
	/*ページのトップにスクロールするボタンの調整*/
	#pageTop 
	{
		position:fixed;
		bottom:10px;
		right:10px;
	}
	
	.pcDesign
	{
		display:none;
	}
	
	header div.tabDesign
	{
		display:inline-block;
	}
	
	header div ul li br.link_br
	{
		display:block;
	}

	#top div
	{
		margin:10% auto;/*上下 左右*/
	}
	header h1 img
	{
		max-width:100%;/*横幅指定*/
		max-height:100%;/*縦幅指定*/
	}

	figure figcaption
	{
		font-size:12px;
	}
	
	article p
	{
		font-size:14px;
		margin-top:10px;
	}
	
	table
	{
		font-size:14px;
	}

	/*ナビゲーション(ページ上部のタブ)*/
	header ul li
	{
		font-size:12px;
	}
	
	/*ナビゲーション(ページ上部のタブ)*/
	
	/*access.htmlで使用*/
	iframe
	{
		width:80%;
	}
	/*access.htmlで使用*/
	
	header
	{
		height:120px;
	}
	
	article
	{
		min-height:calc(100vh - 120px);
		margin-top:120px;
		padding-bottom:20px;
	}
	
	.tabDesign
	{
		display:block;
		width:100%;
	}
	
	header div#div_name
	{
		font-size:16px;
	}
	
	header div#div_tel
	{
		margin-top:10px;
		font-size:14px;
	}
	
	header ul
	{
		margin-top:15px;
	}
}

/*レスポンシブデザイン*/
@media screen and (max-width:520px)
{
	header
	{
		height:110px;
	}
	
	article
	{
		line-height:1.2em;
		min-height:calc(100vh - 110px);
		margin-top:110px;
	}
	
	header ul li
	{
		padding-left:1%;
		padding-right:1%;
	}
	
	.company_logo
	{
		max-width:45px;
		max-height:40px;
		margin-left:auto;
		margin-right:auto;
	}
	
	footer ul
	{
		padding-left:0.75em;
	}
	
	footer div.companyinfo p
	{
		font-size:12px;
	}

	#top div
	{
		margin:10% auto;/*上下 左右*/
	}
	
	header h1 img
	{
		max-width:100%;/*横幅指定*/
		max-height:100%;/*縦幅指定*/
	}

	figure figcaption
	{
		font-size:12px;
	}
	
	/*access.htmlで使用*/
	iframe
	{
		width:80%;
		height:80%;
	}
	/*access.htmlで使用*/
	
	header div#div_img
	{
		width:20%;
		margin-left:0;
		display:inline-block;
		height:auto;
		margin-top:10px;
		
		width:40px;
		height:40px;
	}
	
	header div#div_name
	{
		margin-left:5px;
		font-size:10px;
		display:inline-block;
		margin-top:10px;
		height:auto;
	}
	
	table
	{
		font-size:12px;
	}
	
	.under520
	{
		display:inline-block;
		width:100%;
		height:auto;
	}
	
	header div.under520 ul
	{
		margin-top:0;
		margin-left:2.5%;
		margin-right:2.5%;
		padding:0;
		margin-bottom:0;
		display:table;
	}
	
	header div.under520 ul li
	{
		display:table-cell;
		width:1%;
		text-align:center;
		padding-top:5px;
		padding-bottom:5px;
		vertical-align:middle;
	}
	
	header div.tabDesign
	{
		display:none;
	}
	
	.CooperationCompany
	{
		/*max-width:90%;*/
	}
	
	.mainContent
	{
		/*width:90%;*/
	}
	
	header div#div_tel
	{
		font-size:10px;
	}
}

/*スマホ横向きのデザイン対応*/
@media screen and (max-height:500px)
{
	header
	{
		height:80px;
	}
	
	article
	{
		margin-top:80px;
	}
	
	footer
	{
		height:100px;
	}
}

@media screen and (max-width:320px)
{
	header div#div_name
	{
		font-size:8px;
	}
	
	header div#div_tel
	{
		font-size:8px;
	}
	
	header div#div_img
	{
		width:35px;
		height:35px;
	}
	
	header div.under520
	{
		font-size:8px;
		height:auto;
	}
}
