﻿@charset "utf-8";

/* ▼▼▼ここにテーマカラーセットを設定する▼▼▼ */

	@import "color_darkblue.css";	

/* ▲▲▲ここにテーマカラーセットを設定する▲▲▲ */


/*　テーマカラーの待機（この中から１つを上に設定する）

	@import "color_firebrick.css";	
	@import "color_darkblue.css";
	@import "color_green.css";
*/


/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

body{
	/*color:#333;*/
	font:12px verdana,"ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","Meiryo","ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	line-height:1.5;
	border-left-width:8px;
	border-left-style:solid;
	/*border-left-color:#134091;*/
	border-right-width:8px;
	border-right-style:solid;
	/*border-right-color:#134091;*/
	-webkit-text-size-adjust: none;
	/*background:#f0f8ff;		/* 背景色 */
	overflow-x: hidden;
}

html{
	border-left-width:5px;
	border-left-style:solid;
	/*border-left-color:#2871d7;*/
	border-right-width:5px;
	border-right-style:solid;
	/*border-right-color:#2871d7;*/
	overflow-x: hidden;
}


/* リンク設定
------------------------------------------------------------*/
a{
	color:#000;
	text-decoration:none;
}
a:hover{
	/*color:#ccc;*/
}
a:active,
a:focus{
	outline:0;
}


/* 全体
------------------------------------------------------------*/
#wrapper{
	margin:20px auto;
	padding:0 1%;
	width:98%;
	position:relative;
}

.inner{
	margin:0 auto;
	width:97%;
}


/*************
/* ヘッダー
*************/
h1{
	font-size:12px;
	line-height:1.6;
	font-weight:normal;
}

#header{
	overflow:hidden;
	padding:5px 0 0;
}

* html #header{
	height:1%;
}


/*************
/* ロゴ
*************/
#header .logo{
	float:left;
	padding:5px 0;
}
#header .logo img{
	width: 100%;
}
.logo a{
	font-size:20px;
	font-weight:bold;
	line-height:1;
	font-family:"Palatino Linotype", "Book Antiqua", Palatino,"ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","ＭＳ Ｐ明朝","MS PMincho",serif;
}

.logo span{
	font-size:14px;
	font-weight:normal;
}

.info{
	float:right;
	padding:5px 0;
}

.tel strong{
	font-size:20px;
	font-weight:bold;
}

/**************************
/* トップナビゲーション
**************************/

ul#topnav{
	/*background:#fff;*/
	overflow:hidden;
	margin:0px 0;
	border-left-width:1px;
	border-left-style:solid;
	/*border-left-color:#2871d7;*/
}

* html ul#topnav{
	height:1%;
}

ul#topnav>li{
	float:left;
	text-align:center;
}

ul#topnav>li>a,
ul#topnav>li>a+ul>li>a{
	/*color:#fff;*/
	font-size:14px;
	display:block;
	padding:5px 0;
	text-decoration:none;
	border-right-width:1px;
	border-right-style:solid;
	/*border-right-color:#2871d7;*/
}
ul#topnav>li>a{
	width:156px;
	/*background:#134091;*/
}
ul#topnav>li>a+ul>li>a{
	/*background:#ddd;*/
	width:100%;
	/*color:#333;*/
}

ul#topnav>li>a>span{
	font-size:12px;
}
ul#topnav>li:first-child>a,
ul#topnav>li:last-child>a{
	width:155px;
}

ul#topnav>li.active>a,
ul#topnav>li>a:hover{
	/*border-color:#2871d7;*/
	/*background:#2871d7;*/
	/*color:#fff;*/
}

#topnav>li:hover>a+ul{
	position:absolute;
	width:155px;
}
#topnav>li>a+ul>li>a{
	display:block;
}
#topnav>li>a+ul>li{
	clear:left;
	top:50px;
	/*background-color:#2871d7;*/
	opacity: 0.8;	/* ドロップダウンメニューの透過 */
	/*border-top:1px solid red;*/
	display:none;
}
#topnav>li>a+ul{
	position:absolute;
	width:100%;
}

#topnav>li>a+ul:hover>li,
#topnav>li>a:hover+ul>li{
	display:block;
}
#topnav>li>a+ul>li:hover>a{
	/*background:#2871d7;	/* ドロップダウンメニューの背景色 */
	/*color:#fff;*/
}

#topnav>li:hover>a+ul{
	position:absolute;
	z-index: 150;
	/*width:155px;*/
}
#topnav>li>a+ul>li>a{
	display:block;
}
#topnav>li>a+ul>li{
	clear:left;
	top:50px;
	/*background-color:red;*/
	/*border-top:1px solid #2871d7;*/
	display:none;
}
#topnav>li>a+ul{
	position:absolute;
	width:100%;
}

#topnav>li>a+ul:hover>li,
#topnav>li>a:hover+ul>li{
	display:block;
}


/**************************
/* メイン画像（トップページ+サブページ）
**************************/
#mainBanner{
	clear:both;
	line-height:0;
}

#mainBanner .inner{
	position:relative;
}

#mainBanner img{
	max-width:100%;
	height:auto;
}

.slogan{
	position:absolute;
	max-width:100%;
	height:auto;
	bottom:10px;
	left:10px;
	padding:5px 10px;
	line-height:1.4;
	z-index:100;
	border-radius: 5px;
	/*background:url(../images/tp2.png);*/
}

.slogan h2{
	padding-bottom:5px;
	/*color:#fff;*/
	font-size:18px;
	text-align: center;
}

.slogan h3{
	font-size:16px;
	/*color:#ccc;*/
	text-align: center;
}


/**************************
/* グリッド
**************************/
.gridWrapper{
	clear:both;
	padding:20px 0;
	overflow:hidden;
}

* html .gridWrapper{
	height:1%;
}
	
.grid{
	float:left;
}

.colDark,
.colLight{
	padding-bottom:10px;
	/*color:#fff;*/
	/*background:#2871d7;*/
}

.colLight{
	/*background:#134091;*/
}

.colDark h3,
.colLight h3{
	margin:10px 10px 5px;
	font-size:14px;
	border-bottom-width:1px;
	border-bottom-style:solid;
	/*border-bottom-color:#fff;*/
}

.colDark a,
.colLight a{
	display:block;
	/*color:#ccc;*/
}

.colDark a:hover,
.colLight a:hover{
	/*color:#fff;*/
}

.grid p{
	padding:5px 10px;
}

.grid ul{
	margin:5px 10px;
}

.grid li{
	padding:5px 0;
	list-style:inside;
	border-top-width:1px;
	border-top-style:dotted;
	/*border-top-color:#000;*/
	border-bottom-width:1px;
	border-bottom-style:dotted;
	/*border-bottom-color:#333;*/
}

.grid li:first-child{
	border-top:0;
}
.grid li:last-child{
	border-bottom:0;
}

.gridWrapper img{
	max-width:100%;
	height:auto;
}

/* フッター内のグリッド(3カラム) */
#footer .grid{
	/*color:#fff;*/
	background:transparent;
}

#footer .col3 ul{
	margin:0 0 10px 5px;
}

#footer .col3 li{
	padding:0 7px 0 5px;
	margin-bottom:3px;
	list-style:none;
	border-bottom:0;
	display:inline-block;
	border:0;
	border-right-width:1px;
	border-right-style:solid;
	/*border-right-color:#fff;*/
}


/*************
メイン コンテンツ
*************/
section.content{
	line-height: 2;
	margin-bottom:20px;
	font-size:14px;
	overflow:hidden;
	min-height: 250px;
}

* html section.content{
	height:1%;
}

section.content p{
	margin-bottom:3px;
}
section.content article{
	min-height:400px;
}

h3.heading,
#sub .grid h3{
	padding:5px 10px;
	margin-bottom:10px;
	font-size:16px;
	/*background:#134091;*/
	border-top-width:2px;
	border-top-style:solid;
	/*border-top-color:#2871d7;*/
	border-radius:4px;
}
#sub .grid h3{
	font-size: 16px;
	margin-right:10px;
	margin-bottom: 5px;
}
#sub .grid h3:hover{
	cursor: pointer;
}
h3.heading span,
#sub .grid h3 span{
	font-size: 0.8em;
}
h3.heading span:before,
#sub .grid h3 span:before{
	content: " ";
}

.alignleft{
	float:left;
	clear:left;
	margin:3px 10px 10px 1px;
}

.alignright{
	float:right;
	clear:right;
	margin:3px 1px 10px 10px;
}

img.frame{
	border-width:2px;
	border-style:solid;
	/*border-color:#333;*/
}


/*************
テーブル
*************/
table.table{
	border-collapse:collapse;
	width:100%;
	margin:10px auto;
}

table.table th,
table.table td{
	padding:5px;
	border-width:1px;
	border-style:solid;
	/*border-color:#2871d7;*/
}

table.table tr:first-child th,
table.table tr:first-child td{
	border-top-width:4px;
	border-top-style:solid;
	/*border-top-color:#2871d7;*/
}

table.table th{
	font-weight:bold;
	letter-spacing:1px;
	white-space:nowrap;
	/*color:#fff;*/
	/*background:#134091;*/
}
table.table td{
	/*background: #fff;*/
}

/*************
/* フッター
*************/
#footer .inner{
	clear:both;
	padding:20px 0;
	overflow:hidden;
	/*background:#134091;*/
	border-radius:5px 5px 0 0;
}

* html #footer{
	height:1%;
}

#footer .copyright{
	font-size:11px;
}
#footer a{
	/*color:#fff;*/
}
#footer a:hover{
	/*color:#ccc;*/
}

/* PC用 */
@media only screen and (min-width:960px){
	#wrapper,
	.inner,
	ul#topnav{
		width:940px;
		padding:0;
	}
	ul#topnav a{	
			border-bottom-width:1px; 
			border-bottom-style:solid; 
			/*border-bottom-color:#2871d7;*/ 
	}
	#wrapper{
		padding-bottom:20px;
	}
	
	#main{
		float:right;
		width:690px;
	}
		
	#subpage #sub{
		float:left;
		width:235px;
		overflow:hidden;
	}
	
	/* グリッド */
	.grid{
		width:235px;
	}
	.col2{
		width:470px;
	}
	.col3{
		width:705px;
	}
	#gallery .grid{
		width:230px;
	}
	#subpage #sub .grid{
		width:100%;
		float:none;
		padding-bottom:30px;
	}
	
	.colDark:first-child{
		border-radius:6px 0 0 6px;
	}
  	.colLight:last-child{
		border-radius:0 6px 6px 0;
	}
}


/* モニター幅960px以下 */
@media only screen and (max-width:960px){
	h1 p.inner{
		padding:0 2%;
		width:96%;
	}
	#header .logo{
		padding-left:10px;
	}
	#header .info{
		padding-right:10px;
	}
	
	ul#topnav{
		clear:both;
		width:100%;
	}
	ul#topnav li a{
		border-bottom-width:1px; 
		border-bottom-style:solid; 
		/*border-bottom-color:#2871d7; */
	}	
	
	ul#topnav>li,
	ul#topnav>li>a+ul>li{
		margin:0 0 0px; /* ナビの上下の隙間 */
		/*background:red; */
		/*border-bottom:1px solid #2871d7; */
	}
	ul#topnav>li{
		border-right-width:1px;
		border-right-style:solid;
		/*border-right-color:#1c1c1c;*/
	  	-webkit-box-sizing:border-box;
	  	-moz-box-sizing:border-box;
		box-sizing:border-box;
		width:33%;
	}
	ul#topnav>li>a+ul>li{
		width:96%;
		margin-bottom:0;
	}
	#topnav>li:hover>a+ul{
		width:32%;
	}

	ul#topnav>li:nth-child(3n){
		border-right:0;
		width:34%;
	}

	ul#topnav>li>a{
		width:100%;
		border-top:0;
	}

	ul#topnav>li:first-child>a,
	ul#topnav>li:last-child>a{
		width:100%;
	}
	#topnav>li>a+ul>li{
		opacity: 1;
	}
	
	.grid{
		width:50%;
		margin:2px 0;
	}
	
	.col2{
		float:none;
		width:100%;
		margin:0 0 20px;
	}
	
	.grid img{
		float:left;
		margin-right:5px;
	}
	
	#gallery .grid{
		width:31%;
		margin:0 1%;
		padding:0;
	}
	
	#gallery .grid img{
		float:none;
	}
	
	section.content{
		padding:0 10px;
		min-height: auto;
	}
	section.content article{
		min-height:auto;
	}
	
	section.content img{
		max-width:100%;
		height:auto;
	}
	
	#sub .grid{
		padding-bottom:0px;
	}
	
	#footer{
		padding:0;
	}
	
	#footer .grid{
		float:none;
		width:100%;
		margin-bottom:5px;
		text-align:center;
	}
}

@media only screen and (max-width:725px){
	.info{
		display: none;
	}
}

/* スマートフォン 横(ランドスケープ) */
@media only screen and (max-width:640px){
	.grid{
		width:100%;
	}
	
	.grid img{
		float:none;
		margin:20px auto 10px;
	}
	
	.grid p{
		text-align:left;
	}
	
	img.frame,
	#gallery img{
		border-width:2px;
	}

  	.alignleft,
	.alignright{
		float:none;
		display:block;
		margin:0 auto 10px;
	}
	
	#footer .grid p{
		text-align:center;
	}
}


/* スマートフォン 縦(ポートレート) */
@media only screen and (max-width:480px){
	#header .logo{
		padding-top:10px;
	}
  	.info{
		padding:10px 0;
	}
	ul#topnav>li{
		width:50%;
	}

	ul#topnav>a{
		padding:10px 0;
	}
	ul#topnav>a>span{
		display:none;
	}
	#topnav>li:hover>a+ul{
		width:47%;
	}

	ul#topnav>li:nth-child(3n){
		border-right-width:1px;
		border-right-style:solid;
		/*border-right-color:#1c1c1c;*/
		width:50%;
	}
	
	ul#topnav>li:nth-child(2n),
	ul#topnav>li:nth-child(6n){
		border-right:0;
	}	
	
	#mainBanner h2,
	#mainBanner h3{
		font-size:80%;
	}

}