@charset "utf-8";

/* ---------------------------------- Page layout */
body { }

#container { min-height: 100%; height: auto !important; height: 100%; position: relative; }

#wrap { width: 100%; text-align: left; margin-top: 0; margin-right: auto; margin-bottom: 0; margin-left: auto; padding-bottom: 80px; }
#Main { width: 1280px; margin-right: auto; margin-left: auto; padding-right: 0px; padding-bottom: 80px; padding-left: 0px; }
#Contents { float: right; width: 945px; height: auto; margin-right: auto; margin-left: auto; font-size: 16px; font-size: 1.6rem; line-height: 1.6; }
#Side { float: left; width: 260px; }

/* ---------------------------------- Header */
header { background-image: url(../images/bg01.png); }
#Header { clear: both; width: 1280px; margin-right: auto; margin-left: auto; height: 80px; padding-top: 10px; }

div#Header h1 { text-indent: -9999px; height: 67px; width: 492px; padding: 0px; display: block; z-index: 1; position: relative; float: left; background-image: url(../images/logo1.png); background-repeat: no-repeat; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 10px; }
div#Header h1 a { display: block; height: 67px; width: 492px; margin: 0px; padding: 0px; }


div#Header .hdInfo { width: 500px; float: right; padding-top: 16px; }
div#Header .hdInfo .search { float: right; }
div#Header .hdInfo .search input#searchsubmit { position: relative; display: inline-block; padding-top: 0.4em; padding-right: 0.5em; padding-left: 0.5em; padding-bottom: 0.25em; text-decoration: none; color: #FFF; background-color: #20A450; border: 1px solid #0F9655; border-radius: 4px; box-shadow: inset 0 1px 0 rgba(255,255,255,0.2); text-shadow: 0 1px 0 rgba(0,0,0,0.2); font-size: 16px; font-size: 1.6rem; }

div#Header .hdInfo .search input#searchsubmit:active {/*押したとき*/
    border: solid 1px #03A9F4;
    box-shadow: none;
    text-shadow: none;
}
div#Header .hdInfo .search input#s { border-radius: 3px; border: 1px solid #CDCDCD; padding-top: 3px; padding-right: 5px; padding-bottom: 3px; padding-left: 5px; width: 200px; height: 20px; background-color: #EFEFEF; }
div#Header .hdInfo .socialBtn { float: right; }
div#Header .hdInfo .socialBtn ul { margin: 0px; padding: 0px; }
div#Header .hdInfo .socialBtn li { float: left; margin-left: 10px; padding: 0px; }



/* ---------------------------------- Menu */
header nav { background-color: #000000; box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.3); z-index: 100; }
header nav ul { margin: 0px; padding: 0px; }

.nav { z-index: 10; padding: 0px; width: 1280px; background: #000; margin-top: 0px; margin-right: auto; margin-bottom: 0px; margin-left: auto; 	font-size: 16px; font-size: 1.6rem; }
.nav li { text-align: center; list-style: none; float: left; }
.nav li a { text-decoration: none; color: #fff; padding-top: 12px; padding-right: 5px; padding-left: 5px; padding-bottom: 12px; display: block; width: 150px; }
.nav li a:hover {
	background: #666;
}

/* ナビゲーション */
.nav li ul {
	display: none;
 	z-index: 100;
	position: absolute;
	-webkit-border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-bottomright: 5px;
	-moz-border-radius-bottomleft: 5px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
	-webkit-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.3);
	box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.3);
}
.nav li ul li {
	float: none;
}
.nav li ul li a {
	background: #444;
}
.nav li ul li:last-child a {
	-webkit-border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-bottomright: 5px;
	-moz-border-radius-bottomleft: 5px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}

.fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
	-o-border-radius: 0;
 box-shadow: 0px 3px 5px 0px rgba(0,0,0,0.3);
}




/* ---------------------------------- Contents */
#Contents p { margin-bottom: 15px; }

section#hd h1 { font-size: 25px; font-size: 2.5rem; line-height: 100%; font-weight: bold; position: relative; text-align: left; padding-left: 10px; padding-right: 10px; padding-top: 10px; padding-bottom: 10px; background-color: #EDEADF; color: #353434; }
section#hd h1::after { position: absolute; top: 0; right: 0; content: ''; width: 0; border-width: 0 16px 16px 0; border-style: solid; 	border-color: #fff #fff #C4BB89 #C4BB89; box-shadow: -1px 1px 2px #DFD28D; -webkit-box-shadow: -1px 1px 2px #DFD28D; }

ul.List { list-style-type: disc !important; margin-left: 20px; padding: 0px; margin-top: 0px; margin-right: 0px; }

/* パンくず */

#pan { width: 945px; font-size: 12px; font-size: 1.2rem; line-height: 100%; }
#pan ul { list-style: none; padding: 0; margin: 0; }
#pan li { float: left; margin: 0 5px 0 0; padding: 0; }
#pan a:link,
#pan a:visited { color: #3C3C3C; text-decoration: underline; }
#pan a:hover,
#pan a:active { color: #999999; text-decoration: underline; }


/* 見出し */
#Info h2,
section#CntsBox h2,
section#PstLst h2 { position: relative; padding-left: 10px; padding-top: 5px; padding-bottom: 5px; font-size: 22px; font-size: 2.2rem; font-weight: bold; color: #635B31; margin-bottom: 0px; }
#Info h2::before,
#Info h2::after,
section#CntsBox h2::before,
section#CntsBox h2::after,
section#PstLst h2::before,
section#PstLst h2::after {
  position: absolute;
  left: 0;
  content: '';
  width: 100%;
  height: 4px;
  box-sizing: border-box;
}
#Info h2::before,
section#CntsBox h2::before,
section#PstLst h2::before {
  top: 0;
  border-top: 2px solid #BBB494;
  border-bottom: 1px solid #BBB494;
}
#Info h2::after,
section#CntsBox h2::after,
section#PstLst h2::after {
  bottom: 0;
  border-top: 1px solid #BBB494;
  border-bottom: 2px solid #BBB494;
}

#Info hr{ display: block;   height: 2px; background-color: #BBB494; border: 0; }

section#CntsBox h3 { padding-bottom: 0.5em; padding-left: 0.2em; border-bottom: 3px double #ccc; font-weight: bold; font-size: 18px; font-size: 1.8rem; color: #2E6237; margin-top: 1.5em; }
section#CntsBox h4 { padding-top: 0.2em; padding-right: 0; padding-left: .75em; padding-bottom: 0.2em; border-left: 6px solid #CCC; font-size: 18px; font-size: 1.8rem; font-weight: bold; }


section#CntsBox blockquote { padding-top: 30px; padding-bottom: 30px; margin-left: 30px; margin-right: 30px; }

/* ---------------------------------- Side */

#side-wrap section { margin-bottom: 30px;}

ul.subNav { width: 260px; }
ul.subNav { width:100%; margin-left: 0em; }
ul.subNav li { position: relative; margin-left: -0.9em; margin-top: 0.3em; padding-top: 2px; padding-left: 2px; }
ul.subNav li::after,
ul.subNav li::before { display: block; content: ''; position: absolute; }
ul.subNav li::after { top: .36em; left: -1.14em; width: 14px; height: 14px; background-color: #FF9E00; border-radius: 100%; }
ul.subNav li::before { z-index: 2; top: .628em; left: -.976em; width: 4px; height: 4px; border-right: 2px solid #fff; border-bottom: 2px solid #fff; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); }

ul.subNav li a:link,
ul.subNav li a:visited { color: #3C3C3C; }
ul.subNav li a:hover,
ul.subNav li a:active { color: #F2811D; }

#side-wrap h3 { background-color: #2E6237; color: #FFFFFF; font-size: 18px; font-size: 1.8rem; line-height: 100%; font-weight: bold; position: relative; padding-top: 0.65em; padding-right: 1em; padding-left: 1.5em; padding-bottom: 0.55em; border-radius: 3px; margin-top: 0px; }
#side-wrap h3::after { position: absolute; top: .5em; left: .5em; content: ''; width: 5px; height: -webkit-calc(100% - 1em); height: calc(100% - 1em); background-color: #9CE570; border-radius: 4px; }

#side-wrap h4 { border-left: 5px solid #36A048; margin-left: 8px; padding-left: 7px; padding-top: 0px; }

div.Rss { margin: 0px; padding: 0px; text-align: right; }
div.Rss a { background-image: url(../images/icon_rss.png); background-repeat: no-repeat; background-position: 0px center; padding-left: 20px; color: #999999; }


/* ---------------------------------- Footer */
#Footer { width: 100%; position: absolute; bottom: 0; clear: both; border-top: 2px solid #595956; }

#Footer #FootArea { width: 1280px; margin-right: auto; margin-left: auto; margin-bottom: 0px; margin-top: 0px; position: relative; padding-bottom: 5px; height: 65px; padding-top: 15px; }
#Footer #FootArea .info { float: left; }
#Footer #FootArea .member { float: right; width: 81px; } 


p.Copyrighnt { font-size: 85%; color: #7D7D7D; text-align: center; margin-top: 20px; }
p.PageTop { height: 40px; width: 40px; position: fixed; right: 25px; bottom: 25px; }
