@charset "utf-8";


/*------------------------------------------------
   Layout
------------------------------------------------*/
html{
}

body{
font-size:12px;
}

a{
color:#191970;
text-decoration:none;
outline:none;
}
a:visited{
color:#191970;
text-decoration:none;
}
a:active{
color:#6286b2;
text-decoration:none;
}
a:hover{
color:#ff7800;
text-decoration:none;
}



table.collapse{
    border-collapse: collapse;
    width: 95%;
}

table,
table th,
table tr,
table td{
    border: 0px solid #000;
}

table {
	border-spacing: 1px;
	margin: 0px auto 0;
	text-align: left;
	
}


td {
	padding: 0;
	line-height: 1.2;
}

td h2{
padding: 0;
background:#f4f2ee;
	padding:0;
	color:#4D4D4D;
	line-height: 1.2;
	text-align: center;	
}


td h2 img{
width: 95%;
height: auto;
}

h2{
padding: 0;
background:#f4f2ee;
	padding:0 0 0 20px;
	color:#4D4D4D;
	line-height: 1.2;	
}



#wrap{
background:#f4f2ee;
}


li{	line-height:2.5;

}

#ul .li {
list-style-position:
	inside; 
	}
	
#ul{	line-height:1.5;
font-size:14px;
	text-align:left;
	padding:0 10px 0 14px;
	}


#head{
padding:0;
}

#head h1 img{
width: 320px;
margin:0 10px;
}

	
#head nav{
margin:0 10px 10px 10px;
font-size:12px;
box-shadow:2px 2px 4px #b9b9b9;
border-radius:4px;
}

#head nav em{
font-size:12px;
color:#ff7800;
font-style: normal;
}

#head nav ul{
display:-webkit-box;
display:-moz-box;
width:100%;
padding:0;
background:#577F92;
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
box-sizing:border-box;
border-radius:4px;
}


#head nav ul li{
margin:0 6px 0 0;
padding:0 8px 0 0;
-webkit-box-flex:1;
-moz-box-flex:1;
background:url(../img/all_line01.png) no-repeat right center;
-webkit-background-size:1px auto;
background-size:1px auto;
}


#head nav ul li:last-child{
margin:0;
padding:0;
background:none;
}

#head nav ul li a{
display:block;
height:36px;
font-weight:bold;
color:#E5E5E5;
text-align:center;
text-decoration:none;
line-height:36px;
}


#head nav ul li a.on{
color:#069;
background:#DDF2F9;
border-radius:3px;
}

#head nav a{
color:#FFFFFF;
text-decoration:none;
outline:none;
}


#head nav a:visited{
color:#FFFFFF;
text-decoration:none;
}

#head nav a:active{
color:#ff7800;
text-decoration:none;
}

#head nav a:hover{
color:#ff7800;
text-decoration:none;
}

	
#head h2{
margin:0 0 5px 10px;
padding:0 0 0 4px;
font-size:12px;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}


#head h3{ 
margin:10px 0 5px 10px;
padding:0 0 0 4px;
font-size:12px;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}

#contents{
margin:5px 10px 5px 10px;
padding:5px 0 0 4px;
background:#FFFFFF;
-webkit-box-shadow:4px 4px 6px #bababa;
box-shadow:2px 2px 4px #bababa;

}

#contents h2{
margin:5px 0 5px 5px;
font-size:12px;
font-weight:bold;
	color:#6E6E6E;
line-height:1;
border-left:#577F92 solid 4px;
}



#contents-2{
margin:5px 10px 5px 10px;
padding:5px 0 0 4px;
background:#f4f2ee;
}

#contents-2 h2{
margin:5px 0 5px 5px;
font-size:12px;
font-weight:bold;
	color:#6E6E6E;
line-height:1;
border-left:#577F92 solid 4px;
}


#fmenu{
margin:0;
background:#f4f2ee;
border-radius:4px;
}




#fmenu h3{
margin:0 0 15px 0;
padding:10px 0 5px 5px;
color:#565656;
text-align:left;
line-height:1.8;
font-weight:bold;
line-height:1;
text-shadow:2px 2px 4px #C0C0C0;
border-bottom:#7284A3 solid 1px;
font-size:14px;
	}


#fmenu h4{
margin:15px 0 10px 15px ;
color:#565656;
text-align:left;
line-height:1.8;
font-weight:bold;
line-height:1;
text-shadow:2px 2px 4px #C0C0C0;
font-size:14px;
	}

#fmenu h6{
margin:8px 0 0 0;
font-size:10px;
}


#fmenu section{
background: #FFFFFF;
margin:0 10px 20px 10px;
padding:0 0 14px 0;
-webkit-box-shadow:4px 4px 6px #bababa;
box-shadow:2px 2px 4px #bababa;
}

#fmenu section h4{
background: #708090;
margin:0 10px;
width: 95%;
text-align: center;
}

#fmenu section h4 img{
width:100%;
height: auto;
margin:0 0 0 0;
}

#fmenu section h5 img{
width:95%;
height: auto;
margin:0 10px 5px 10px;
}


#fmenu section em{
margin:0 0 5px 10px;
color:#565656;
text-align:left;
line-height:1.5;
font-style: normal;
font-size:14px;
	}
	
#fmenu section h3{
margin:0 0 15px 0;
padding:10px 0 5px 5px;
color:#565656;
text-align:center;
line-height:1.2;
font-weight:bold;
text-shadow:2px 2px 4px #C0C0C0;
border-bottom:#7284A3 solid 1px;
font-size:16px;
	}
	
#fmenu section h2{
	margin:0 10px 20px 10px;
	padding:10px 0;
	color:#565656;
	text-align:left;
	line-height:1.8;
font-weight:bold;
text-shadow:2px 2px 4px #C0C0C0;
line-height:1;
border-bottom:#7284A3 solid 1px;
font-size:18px;
	}

#fmenu section p{
margin:0 5px 6px 5px;
font-size:14px;
color:#565656;
line-height:1.6;
}

#fmenu section p:after{
content:"";
display:block;
clear:both;
}

#fmenu section p img{
float:left;
width:30%;
height: auto;
margin:0 10px 6px 10px;
}



#fmenu aside
{
padding:3px 10px;
background:#577F92;
border-radius:4px;
}
	
#fmenu aside h2{

background:#577F92;
	color:#EFEFEF;
	text-align:center;
font-size:18px;
	}


#fmenu aside ul{
margin:0;
list-style:none;
text-align:center;
}

#fmenu aside ul li{
margin:0 0 0 10px;
font-size:12px;
text-align:left;
font-style: normal;
background: #577F92;
color:#FFF;
}


#fmenu aside p{
font-size:10px;
text-align:left;
color:#FFF;
}




#fmenu aside em{
margin:0 0 0 10px;
font-size:12px;
text-align:left;
color:#e1cb34;
}



#fmenu aside a{
	color:#FFF;
text-decoration:none;
outline:none;
}

#fmenu aside a:visited{
color:#FFF;
text-decoration:none;
}

#fmenu aside a:active{
color:#6286b2;
text-decoration:none;
}

#fmenu aside a:hover{
color:#f67016;
text-decoration:none;
}


#fmenu a{
color:#191970;
text-decoration:none;
outline:none;
}
#fmenu a:visited{
color:#191970;
text-decoration:none;
}
#fmenu a:active{
color:#6286b2;
text-decoration:none;
}
#fmenu a:hover{
color:#FF4500;
text-decoration:none;
}


#fmenu .bluebtn{
margin:0 0 14px 0;
display:block;
width:100px;
height:18px;
padding:0 0 0  20px;
font-size:14px;
color:#fff;
text-decoration:none;
line-height:18px;
background:#7284A3 url(../img/all_arw02r.png) no-repeat 6px 3px;
-webkit-background-size:11px;
background-size:11px;
border-radius:3px;
}


.pagetop{
margin:0 10px 10px 10px;
text-align:right;
}

.pagetop a{
padding:0 15px 0 14px;
font-size:14px;
background:url(../img/all_arw01t.png) no-repeat left center;
-webkit-background-size:11px;
background-size:11px;
}
#foot{
margin:0 2px;
padding:10px 0 10px 0;
font-size:10px;
border-top:#577F92 solid 2px;
background: #EFEFEF;
}

#foot nav{
}

#foot nav ul{
margin:0 0 10px 0;
text-align:center;
}

#foot nav ul li{
display:inline;
margin:0 10px 0 0;
}

#foot nav ul li a{
padding:0 0 0 14px;
background:url(../img/all_arw01r.png) no-repeat left center;
-webkit-background-size:11px;
background-size:11px;
}

#foot section{
padding:3px 10px;
background:#577F92;
border-radius:4px;
}

#foot section ul{
margin:0 0 5px 0;
list-style:none;
text-align:center;
}

#foot section ul li{
margin:0 0 0 15px;
font-size:12px;
text-align:left;
font-style: normal;
background: #577F92;
color:#FFF;
}


#foot section ul li a{
padding:0 0 0 14px;
background:url(../img/all_arw03r.png) no-repeat left center;
-webkit-background-size:11px;
background-size:11px;
}

#foot section p{
text-align:center;
color:#FFF;
}

#foot section h6{
margin:0 0 0 15px;
font-size:10px;
text-align:left;
font-style: normal;
background: #577F92;
color:#FFF;
}


#foot section em{
margin:0 0 0 15px;
font-size:10px;
text-align:left;
color:#e1cb34;
}

#foot section h5{
margin:0 0 0 15px;
font-size:12px;
text-align:center;
border-bottom:#e1cb34 solid 1px;
color:#FFF;
}



#foot a{
	color:#FFF;
text-decoration:none;
outline:none;
}

#foot a:visited{
color:#FFF;
text-decoration:none;
}

#foot a:active{
color:#6286b2;
text-decoration:none;
}

#foot a:hover{
color:#f67016;
text-decoration:none;
}

/* =============================== */
/* Gridを使った画像ギャラリーのスタイル */
/* =============================== */

.gallery-grid {
  display: grid; /* Gridを有効にする */
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); /* 画面幅に応じて列数を自動調整 */
  gap: 20px; /* グリッドアイテム間の隙間 */
  margin-top: 20px;
}

.gallery-grid figure {
  margin: 0;
  text-align: center;
}

.gallery-grid img {
  width: 100%;
  height: auto; /* 画像のアスペクト比を維持 */
  display: block;
  border: 1px solid #ddd;
}

.gallery-grid figcaption {
  margin-top: 10px;
  font-weight: bold;
}

/* ======================== */
/* レスポンシブ対応の調整例 */
/* ======================== */

/* 740pxより小さい画面幅の場合 */
@media screen and (max-width: 239px) {
  #sitemapArea-2 {
    flex-direction: column; /* 縦並びにする */
  }

  .sitemap-list {
    margin-bottom: 20px;
  }
}


/* サイトマップ全体を囲むセクション */
.site-map-section {
    padding: 20px; /* 必要に応じて調整 */
    background-color: #f8f8f8; /* 背景色など、スタイルを適用 */
}

/* サイトマップのタイトル */
.site-map-section h5 {
    text-align: center; /* 中央寄せ */
    margin-bottom: 20px; /* 下の要素との余白 */
    /* その他のフォントスタイルなど */
}

/* サイトマップの各カラムを囲むコンテナ */
.site-map-columns {
    display: flex; /* Flexboxを有効にして横並びにする */
    flex-wrap: wrap; /* 画面幅が狭くなったら折り返す */
    justify-content: space-between; /* カラム間に均等なスペースを配置 */
    gap: 10px; /* カラム間の間隔 */
}

/* 各サイトマップカラムのスタイル */
.site-map-column {
    flex: 1; /* 各カラムが均等にスペースを占めるようにする */
    min-width: 170px; /* カラムの最小幅を設定し、それより狭くなったら折り返す */
    /* 各カラム内のパディングなどを調整 */
    padding: 10px;
    box-sizing: border-box; /* パディングとボーダーを幅に含める */
}

/* リストのデフォルトスタイルをリセット */
.site-map-column ul {
    list-style: none; /* リストの黒点を削除 */
    padding: 0; /* デフォルトの左パディングを削除 */
    margin: 0; /* デフォルトのマージンを削除 */
font-size:12px;
text-align:left;
font-style: normal;
background: #577F92;
color:#FFF;
}

.site-map-column ul li {
    margin-bottom: 5px; /* 各リストアイテム間の余白 */
}

/* 会社情報と著作権情報 */
.site-info-bottom,
.site-copyright {
font-size:12px;
text-align:left;
font-style: normal;
background: #577F92;
line-height:1.2;
color:#FFF; /* 中央寄せ */
    margin-top: 12px; /* 上の要素との余白 */
    /* 必要に応じてフォントサイズなどを調整 */
}

.site-copyright {
    margin-top: 10px;
}



/*------------------------------------------------
   Sitemap
------------------------------------------------*/
#sitemapArea{
margin:0 10px 0 10px;
display:-webkit-box;
display:-moz-box;
font-size:12px;
}

#sitemapArea em{
padding:0;
font-style: normal;
color:#ff7800;
}

#sitemapArea h2{
margin:0 0 10px 10px;
padding:0 0 0 5px;
font-size:14px;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}

#sitemapArea > ul{
list-style:none;
-webkit-box-flex:1;
-moz-box-flex:1;
}

#sitemapArea > ul > li{
margin:0 0 0 0;
}

#sitemapArea > ul > li > a,
#sitemapArea > ul > li > span{
padding:0 0 0 14px;
background:url(../img/all_arw01r.png) no-repeat left center;
-webkit-background-size:11px;
background-size:11px;
}

#sitemapArea ul li ul{
margin:0 0 0 10px;
list-style:none;
}

#sitemapArea ul li ul li{
margin:0 0 0 0;
}

#sitemapArea ul li ul li a{
padding:0 0 0 15px;
background:url(../img/all_arw03r.png) no-repeat left center;
line-height:2;
-webkit-background-size:11px;
background-size:11px;
}




/*------------------------------------------------
   Sitemap-2
------------------------------------------------*/
#sitemapArea-2{
width:100%;
margin:0 10px 0 10px;
display:-webkit-box;
display:-moz-box;
font-size:12px;
}


#sitemapArea-2 h2{
margin:5px 0 5px 5px;
padding:0 0 0 5px;
font-size:12px;
font-weight:bold;
line-height:1;
border-left:#577F92 solid 4px;
}




#sitemapArea-2 em{
padding:0;
font-style: normal;
color:#ff7800;
}


#sitemapArea-2 > ul{
list-style:none;
-webkit-box-flex:1;
-moz-box-flex:1;
}

#sitemapArea-2 > ul > li{
margin:0 0 0 0;
}

#sitemapArea-2 > ul > li > a,
#sitemapArea-2 > ul > li > span{
padding:0 0 0 14px;
background:url(../img/all_arw03r.png) no-repeat left center;
-webkit-background-size:11px;
background-size:11px;
}

#sitemapArea-2 ul li ul{
margin:0 0 0 0;
color:#ff7800;
list-style:none;
}

#sitemapArea-2 ul li ul li{
margin:0 0 0 0;
}

#sitemapArea-2 ul li ul li a{
padding:0 0 0 15px;
background:url(../img/all_arw03r.png) no-repeat left center;
line-height:2;
-webkit-background-size:11px;
background-size:11px;
}




/*------------------------------------------------
   Blue button
------------------------------------------------*/
#contents .bluebtn{
display:block;
width:80px;
height:18px;
padding:0 0 0 20px;
font-size:10px;
color:#fff;
text-decoration:none;
line-height:18px;
background:#7284A3 url(../img/all_arw02r.png) no-repeat 3px 3px;
-webkit-background-size:11px;
background-size:11px;
border-radius:3px;
}




/*------------------------------------------------
   Default
------------------------------------------------*/
.cf:after{
content:"";
display:block;
clear:both;
}

