@charset "utf-8";

/*
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; }
*/



html{
	}

body{
	color:#000;
	font:12px verdana,"HG丸ｺﾞｼｯｸM-PRO","ヒラギノ丸ゴ ProN W4","Hiragino Maru Gothic ProN","メイリオ","ＭＳ Ｐゴシック",Sans-Serif;
	line-height:1.5;
	background: #aff;
	-webkit-text-size-adjust: none;
	}
/*** BG-COLOR 春ピンク#FDD 夏水色#aff ***/

/*** CSS Document Page-parts ***/

h3 {color: #333766; }

h4 {color: #333766; }

h5 {color: #333766; }

ol { line-height:150%; }

p#red{ color: #dd0000; padding:7px;} 

#red{ color: #dd0000; padding:7px;}

p#blue{ color: #000099; padding:7px;}

#hblue { background-color: #ccffff; padding-left:7px; }

#hblue2 { background-color: #99ffff; padding-left:7px; }

#hyellow { background-color: #ffffcc; padding-left:7px; }

#hpink { background-color: #ffccff; padding-left:7px; }

#salmon { color: #fa8072;  padding-left:7px; font-size:15px;	}

#hgreen { background-color: #ccffcc; padding-left:7px; }

#center { text-align:center; }

#center18 { text-align:center; font-size:18px }

#right { text-align:right;  }

#leaflet-bg{ background:#ffdab9;	}

#col2 {  column-count: 2;}
#col3 {  column-count: 3;}


	
ul {list-style: none;}

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;}


/*** リンク設定 ***/

a{color: #009; text-decoration:none; /*通常のリンクテキストカラー*/
	text-decoration:underline; /*マウスが乗った時下線を表示（つけない場合は underline を none へ）*/
	}
a:hover{
	color: #09C; /*マウスが乗った時の通常のリンクテキストカラー*/
	text-decoration:underline;
	}
a:active, a:focus{outline:0;
	}
a:visited {	color: #06F;
	}
	

/*** 全体 ***/

#wrapper{
	margin:0 auto;
	padding:0 1%;
	width:98%;
	position:relative;
	}
.inner{
	margin:0 auto;
	width:100%;
	}


/*** ヘッダー ***/

#header{
	padding:25px 0 15px;
	overflow:hidden;
	}
* html #header{height:1%;
	}
#header h1{
	font-size:5px;
	font-weight:normal;
	color: #eeffff;
	text-align:center;
	}
#header div{
	color: #000066;
	}
#header h2{
	font-size: 18px;
	font-weight: bold;
	color: #0000aa;
	text-align: center;
	}



/*  ページ上部　メインメニュー  */
#mainmenu {
	padding: 0px;
	margin:0px 0px 0px 0px; /*  マージン 上、右、下、左 */
	text-align:center;
	width:100%;
	}
#mainmenu ul {
	list-style:none;
	display:block;
	margin: 0px auto;
	text-align: left;
	line-height: 30px;
	height: 30px;
	background: #9FF;	/* 背景色 */
	border-top: 1px solid #666;
	border-bottom: 1px solid #666;
	}
#mainmenu li {
	float: left;
	width: 16.667%;
	}
#mainmenu ul li a {
	display: block;
	text-align: center;
	border-right: 1px solid #666;
	color: #009;	/* メニューの文字色 */
	text-decoration: none;
	list-style:none;
　　float:left;
	font-weight: bold;
	}
#mainmenu ul li a:hover {
	background: #3FF;	/* メニュー カーソルオーバー時背景色 */
	color: #00F;	/* カーソルオーバー時メニュー文字色 */
	}
#mainmenu ul li .active {
	background: #DFF;	/*  class="active"時背景色 */
	}
#mainmenu .last {
	border-right-style: none;	/* 一番右のメニューの右境界線を消す設定 */	
	}
#mainmenu h2{
	font-size: 14px;
	font-weight: bold;
	color: #00A;
	}
.line1{
	background: url('img/bg_line1.gif') repeat;
	width: 100%;
	height: 5px;
	clear:left
	}

.line2{
	background: #666;
	width: 100%;
	height: 1px;
	clear: left;
	margin:3px 0px 3px 0px; /*  マージン 上、右、下、左 */
	}

.icon-b{
	background-image: url(img/brown.gif) ;
	font-size:32px;
	}
.icon-c{
	background-image: url(img/cream.gif) ;
	font-size:32px;
	}
.icon-w{
	background-image: url(img/white.gif) ;
	font-size:32px;
	}


/*** 旧 ヘッド ナビゲーション ***/
ul#headnav{
float:right;
overflow:hidden;
}

* html ul#headnav{height:1%;}

ul#headnav li{
float:left;
margin:0 5px;
text-align:center;
}

ul#headnav a{
font-size:12px;
display:block;
padding:10px 10px;
color:#333;
}

ul#headnav span{
color:#00a;
font-size:10px;
}

ul#headnav li.active a,ul#headnav a:hover{
background:#e4e4e4;
border-radius:5px;
}


/*** メイン　イメージ ***/

#main_p {font-size: 12px;
    color: #0000aa;
    margin:0px 0px 0px 0px;
    padding:0px 0px 0px 0px;
    text-align: center;
    }

#top_memorial {font-size: 12px;
    color: #0000aa;

	background: url('img/zenken.gif') ;

    background-repeat:no-repeat;
    height: 280px;
    width: 940px;  
	margin:5px 0px 5px 0px; /* 上、右、下、左 */
    padding:0px 0px 0px 0px;
    text-align: center;
    }

#mainBanner{
margin:15px auto 20px auto;
padding:0;
width:100%;
position:relative;
line-height:0;
}

#mainBanner img{
max-width:100%;
height:auto;
border-radius:3px;
}

#mainBanner_p {font-size: 10px;
    color: #000000;
    margin:0px 0px 10px 0px;
    padding:0px 0px 0px 0px;
    text-align:right;
    }

.koushinbi{
	position: absolute;
	max-width: 100%;
	height: 10px;
	bottom: 0;
	right: 0px;
	padding: 5px 5px;
	top: 0px;
}

.koushinbi div{
color:#ffffff;
font-size:9px;
}

#lineimg img{
max-width:100%;
height:auto;
border-radius:3px;
}


/*** グリッド ***/

.gridWrapper{
padding-bottom:20px;
overflow: hidden;
}

* html .gridWrapper{height:1%;}

.grid{
float:left;
border-radius:5px;
background:#ffffff;
}

.grid h2{font-size: 20px;
padding:15px 5px;
text-align:center;
border-radius:5px 5px 0 0;
background:#ccffff;
 }

.grid h3{font-size: 18px;
padding:10px 5px;
text-align:center;
border-radius:5px 5px 0 0;
background:#ccffff;
 }

.grid p{
padding:5px 10px;
}

.gridWrapper img{
max-width:100%;
height:auto;
}


/*** メイン コンテンツ ***/

section.content{
padding:19px;
margin-bottom:20px;
border:1px solid #ebebeb;
border-radius:6px;
background:#fff;
overflow:hidden;
 /* font-size:14px; */
 border-top: 1px solid #0033ff;
 border-left: 1px solid #0033ff;
 border-right: 1px solid #000066;
 border-bottom: 1px solid #000066;
}

* html section.content{height:1%;}

section.content p{margin-bottom:5px;}

section.content img{
max-width:90%;
height:auto;
}

h2.heading{
padding-left:15px;
margin-bottom:0px;
border-left:10px solid #ffccff;
background-color:#ccffff;
}

h3.heading{
padding-left:25px;
margin-bottom:0px;
font-size:18px;
border-left:10px solid #ffccff;
background-color:#ccffff;
}

h4.heading{
padding-left:25px;
margin-bottom:0px;
font-size:18px;
border-left:10px solid #ffccff;
background-color:#ccffff;
}

.alignleft{
float:left;
clear:left;
margin:3px 10px 10px 0;
}

.alignright{
float:right;
clear:right;
margin:3px 0 10px 10px;
}

img.frame,#gallery img{
border:4px solid #fff;
box-shadow:0 0 2px rgba(0, 0, 0, 0.5);
-webkit-box-shadow:0 0 2px rgba(0, 0, 0, 0.5);
}

#gallery .grid{padding:5px 0 0;}


/*** テーブル ***/

table {
border-collapse:separate;
border-spacing: 0;
}
table.table{
border-collapse:collapse;
 /* width:100%; */
margin:10px auto;
}
table.table th,table.table td{
padding:5px;
border:1px solid #aaaaaa;
}
table.table th{
text-align:center;
font-weight:bold;
letter-spacing:1px;
background:#ddd;
word-wrap: break-word;
}


/*** フッター ***/

#footer{
clear:both;
padding:20px 0 40px;
overflow:hidden;
}

* html #footer{height:1%;}

#footer a{color:#333;}
#footer a:hover{color:#888;}

#copy{
	height:20px;
	font-size:10px;
	text-align:right;
	color:#333766;
	padding:5px;
	margin:4px 0 0 0;
	background-color: #FCC;}


/*** PC用 ***/

@media only screen and (min-width:960px){	
	/* width:940px */
	#wrapper,.inner{
	width:940px; /* 940px */
	padding:0;
	}
	
	#wrapper{padding-bottom:20px;}
		
	/* グリッド全体 width:960px */
	.gridWrapper{
	width:960px; /* 960px */
	margin:0 0 0 -20px;
	}
	
	/* グリッド共通 ベース:トップページ4カラム width:220px */
	.grid{
	float:left;
	width:220px;
	margin-left:18px;
	border-top: 1px solid #0033ff;
	border-left: 1px solid #0033ff;
	border-right: 1px solid #000066;
	border-bottom: 1px solid #000066;	
	}
	
	/* サブコンテンツ + フッター グリッド(3カラム) */
	#sub .grid, #footer .grid{
	width:300px;
	}
	
	/* ギャラリー グリッド(4カラム) */
	#gallery{
	width:920px;
	}

	/* width:210px */
 	#gallery .grid{
	width:210px;	
	}	
}


/*** モニター幅960px以下 ***/

@media only screen and (max-width:960px){
	#header h1{padding:0 0 5px 10px;}
	#header .logo{padding-left:10px;}
	
	.grid{
	float:left;
	width:47%; /* 48%→ */
	margin:10px 2% 0 0;
	
	border-top: 1px solid #0033ff;
	border-left: 1px solid #0033ff;
	border-right: 1px solid #000066;
	border-bottom: 1px solid #000066;	
	}
	
	.grid img{
	float:left;
	margin-right:5px;
	}
	
	#gallery{padding-left:1px;}
	
	#gallery .grid{
	width:23%;
	margin:0 2% 0 0;
	padding:0;
	}
	
	#gallery .grid img{
	float:none;
	margin:0;
	}
	
	#sub .grid{
	width:32%;
	margin:10px 1%;
	}
	
	#sub .grid:first-child{
	margin-left:0;
	}
	
	#sub .grid:last-child{
	margin-right:0;
	}
	
	#footer .grid{
	float:none;
	width:100%;
	text-align:center;
	}
	
	#footer .grid:last-child{padding-top:20px;}
}


/*** iPad 縦 ***/

@media only screen and (max-width:768px){
 	#header{padding-bottom:0;}	

	#header h1{text-align:center;}
	
	#header .logo{
	float:none;
	text-align:center;
	padding:10px 5px 20px;
	}

	ul#topnav{
	clear:both;
	width:100%;
	}

	ul#topnav li{
	width:33%;
	margin:0;
	border-top:1px solid #e4e4e4;
	border-right:1px dashed #e4e4e4;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-box-sizing:border-box;
	}

	ul#topnav li:nth-child(3n){border-right:0;width:34%;}

	ul#topnav li.active a,ul#topnav a:hover{border-radius:0;}
	
	#sub ul.list{padding:10px 10px 11px;}
	
	#sub ul.list li{
	padding-bottom:10px;
	margin-bottom:8px;
	}
}


/*** スマートフォン 横(ランドスケープ) ***/

@media only screen and (max-width:640px){
	#footer .grid p{text-align:center;}
	
	.grid img{
	float:none;
	margin:20px auto 10px;
	}

	.grid p,#sub .grid li{text-align:left;}
	
	img.frame,#gallery img{border-width:2px;}

  .alignleft,.alignright{
	float:none;
	display:block;
	margin:0 auto 10px;
	}
}


/*** スマートフォン 縦 ***/

@media only screen and (max-width:480px){
	
	.grid{ /* grid追加 */
	float:left;
	width:98%;
	margin:10px 2% 0 0; 	
	border-top: 1px solid #0033ff;
	border-left: 1px solid #0033ff;
	border-right: 1px solid #000066;
	border-bottom: 1px solid #000066;	
 	}

	ul#topnav li{width:50%;}

	ul#topnav li:nth-child(3n){
	border-right:1px dashed #e4e4e4;
	width:50%;
	}
	
	ul#topnav li:nth-child(2n),ul#topnav li:nth-child(6n){border-right:0;}
	
	#mainBanner{margin-left:1px;}
	#mainBanner h2,#mainBanner h3{font-size:80%;}
	
	#sub .grid{
	float:none;
	width:98%;
	}
	
	#sub .grid h3{padding:10px 5px;}
	
	#sub ul.list{padding:10px;}
	
	#sub ul.list li{
	padding-bottom:3px;
	margin-bottom:3px;
	}
	
	#sub ul.list li img{margin:0 5px 0 0;}
}

 
/*** メールフォーム ***/

table#form
 { border:1px solid #7777bb;
 border-collapse:collapse;
 margin-top:1em; }
table#form th
 { vertical-align: top;
 border:1px solid #7777bb;
 padding:7px;
 font-weight:normal; 
 background:#ffffcc; }
table#form td
 { text-align:left;
 border:1px solid #7777bb;
 padding:7px;
 font-weight:normal; }


/*** ボタン ***/

ul { list-style:none; /*白丸の場合list-style:circle*/  margin: 5; padding:0;}
　
li { display:block; float:left; width:125px; }

a#botan { 
	display:block; line-height:1.3em; width:125px;
	color:white;  background-color:#666e99;  text-align:center;

	text-decoration:underline;

	font-size:18px; text-decoration:none;; font-weight: bold　 
	border-top:solid 3px #a3bac2;
	border-left:solid 3px #a3bac2;
	border-bottom:solid 3px #333766;
	border-right:solid 3px #333766;
	}
	
li a#botan:hover { color:white;
  background-color:#006699;
  text-align: center}