@charset "utf-8";
/*
name: G-03
designer: genova
designer_url: http://www.genova.co.jp/
developer: genova
developer_url: http://www.genova.co.jp/
*/


*{
	font-size: 100%;
	margin: 0;
	padding: 0;
}
body {
	font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
	font-size: 62.5%;
	line-height: 1.4em;
	background-color: #FFFFFF;
	text-align: center;
	color: #666;
}
img {
    border: 0;
}
table {
	font-size: 12px;
	border: 1px solid #666;
	line-height: 1.4em;
}
td,th {
	padding: 5px;
	border: 1px solid #666;
}
.bd0{
	border: 0;
}
.bd0 td, .bd0 th{
	border: 0;
}
.bd0 td{
	vertical-align: top;
}
.vtc-md td{
	vertical-align: middle;
}
/*
---------------------------- style ---------------------------*/

body {
	background-image: url(../img/header_bg.jpg);
	background-repeat: repeat-x;
}

body a:link{
	color:#3399CC;
	text-decoration: underline;
}

body a:visited{
	color:#246D91;
}

body a:hover{
	color:#63B1D8;
}
#wrapper {
}

/*
---------------------------- header ---------------------------*/

#header {
	text-align: center;
	height: 110px;
}
#headerInner {
	width: 800px;
	margin: 0px auto;
	text-align: left;
}
#header #headerLeft {
	width: 545px;
	float: left;
    padding-top: 15px;
}
#header #headerLeft h1 {
	font-size: 1.1em;
	font-weight: normal;
	color: #666;
	margin-top: 6px;

}
#header #headerLeft h2 { /* 6/2以降 変更箇所 */
	float: left;
	margin-top: 25px;
}
#header #headerLeft h2 a { /* 6/2以降 変更箇所 */
}
#header #headerLeft h3 {
	float: left;
	margin-top: 8px;
	font-weight: normal;
	line-height: 1.6em;
	margin-left: 0px;
	letter-spacing: -0.01em;
	width: auto;
	color: #666;
}
#header #headerRight {
	float: right;
	width: 245px;
}
#header #headerRight ul#naviButton {
	margin-left: 100px;
	width: 145px;
}
#header #headerRight ul#naviButton li {
	list-style-type: none;
	float: left;
}
#header #headerRight ul#naviButton li a.naviButton {
	background-image: url(h_navi_bg.jpg);
	background-repeat: no-repeat;
	font-size: 1.1em;
	display: block;
	line-height: 0.8em;
	text-decoration: none;
	width: 72px;
	color: #404040;
	background-position: 0px 3px;
}
#header #headerRight ul#naviButton li a.naviButton:hover {
    text-decoration: underline;
}
#header #headerRight ul#naviButton li a.naviButton span {
	padding-top:12px;
	display: block;
	letter-spacing: -0.1em;
	padding-left: 7px;
}
#header #headerRight ul#naviButton li#inquiry a.naviButton span {
}
#header #headerRight li#outline a {
}
#header #headerRight div#telNumber { /* 6/2以降 変更箇所 */
	margin-top: 15px;
	float: right;
}
#header #headerRight form {
	text-align: right;
}
#header #headerRight input {
}
#header #headerRight label {
}
#header #headerRight form ul#searchBox {
	margin-top: 10px;
}
#header #headerRight form ul#searchBox li {
	float: left;
	list-style-type: none;
}
#header #headerRight form ul#searchBox li#searchInput {
	padding-left: 31px;
}
#header #headerRight form ul#searchBox li#search-button {
	margin-right: 3px;
	margin-left:3px;
}
#header #headerRight form ul#searchBox li#rss {
	text-align: left;
}
#header #headerRight form ul#searchBox li#rss a {
	display: block;
	width: 43px;
	height: 20px;
	background-image: url(../img/b_rss.gif);
	background-repeat: no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	text-decoration: none;
}
#header #headerRight form input {
}
#header #headerRight form li#search-button input {
	width: 31px;
	height: 20px;
	background-image: url(../img/b_search.gif);
	background-repeat: no-repeat;
	cursor:pointer;
}
#header #headerRight form input#search {
	border: 1px solid #E1DCC8;
	width: 130px;
	height: 20px;
	color: #cccccc;
	background-repeat: repeat-x;
}
/*
#mainImage {
	margin: 0px auto 20px auto;
}
#mainImage img {
	width: 570px;
}
*/
#content {
	width: 800px;
	margin: 0px auto;
	text-align: left;
	padding-top: 20px;
	padding-bottom:70px;
}

/*
---------------------------- main ---------------------------*/
#main {
}
#main #bread {
    font-size: 1.2em;
	margin-bottom: 12px;
	line-height: 1em;
}
#main #bread #breadInner {
	float: right;
	padding-right: 7px; /* 6/2以降 変更箇所 */
}

#main .contentsBox {
	background-color: #FFFFFF;
}
#main .contentsBox .contentsBoxTitle {
	font-size: 1.6em;
	background-image: url(../img/h4_bg.jpg);
	background-repeat: no-repeat;
	margin-bottom: 20px;
	width: 570px;
	height: 37px;
}
#main .contentsBox .contentsBoxTitle h3, #main .contentsBox .contentsBoxTitle h4  {
	font-weight: bold;
	color: #003333;
	padding-top: 12px;
	padding-bottom:12px;
	padding-left: 19px;
}
#main .contentsBoxBody {
	padding-bottom: 20px;
}

#main #about {
}
#main #about .contentsBoxFooter {
}
#main #about h4 {
}
#main #about p {
	width: 340px;
	float: left;
	font-size: 1.2em;
	line-height: 1.6em;
	margin-left: 24px;
	display: inline;
	margin-bottom: 22px;
}
#main #about img.aboutImage {
	border: 1px solid #B2B2B2;
	float: left;
	margin-left: 13px;
	margin-top: 2px;
}

#main #contents {
}


#main #news {
}
#main #news .contentsBoxTitle {
	margin-bottom: 7px;
}
#main #news h4 {
	float: left;
}
#main #news p {
	float: right;
	background-image: url(news_icon.gif);
	background-repeat: no-repeat;
	background-position: 0px 3px;
	padding-left: 15px;
	line-height: 1.4em;
	margin-top: 8px;
	margin-right: 13px;
	display: inline;
}
#main #news p a {
	text-decoration: none;
	font-size: 0.7em;

}
#main #news p a:hover {
	text-decoration: underline;
}
#main #news dl {
	clear:both;
	color:#666666;
	font-size:1.2em;
	line-height:2em;
	margin:0 10px 17px 25px;
	width:520px;
}

#main #news dt {
	float:left;
	font-weight:bold;
	margin-bottom:3px;
	padding-bottom:5px;
}

#main #news dd {
	border-bottom:1px dotted #CCCCCC;
	margin:0 0 3px;
	padding:0 10px 5px 8em;
}
#main #news dd a {
	color: #333333;
}

#main #catch {
	width: 540px;
	padding: 15px 0px;
	font-size: 1.2em;
	line-height: 2em;
	margin-bottom: 15px;
	background-color: #F8FCE2;
	margin-left: 15px;
}
#main #catch p {
	width: 520px;
	margin-left: 15px;
}

/*
---------------------------- side ---------------------------*/
#side {
}
#sideInner {
}
#side #navigation {
	width: 210px;
}
#side #navigation ul {
	margin: 0;
	padding: 0;
}
#side #navigation li {
	list-style-type: none;
	margin-bottom: 2px;
}
#side #navigation li a {
	display: block;
	width: 210px;
	height: 38px;
	background-image: url(../img/side_navi_bg.jpg);
	background-repeat: no-repeat;
	color: #336633;
	text-decoration: none;
	font-size: 1.2em;
}
#side #navigation li a:visited {
	color: #244824;
}
#side #navigation li a:hover {
	color: #6AB56A;
}
#side #navigation li a span {
	padding-left: 13px;
	padding-top: 12px;
	display: block;
}
#side #navigation li.sub {
	margin:0px 0;
	background:#D1F0B3;
}
#side #navigation li.sub a {
	background-image: url(../img/sub_navi_line.gif);
	background-position:0 bottom;
	height: 33px;
}
#side #navigation li.sub a span {
	padding-top: 10px;
	padding-bottom: 0px;
	padding-left: 15px;
}

#side #banner {
	margin-top: 10px;
	margin-bottom: 10px;
}
#side #banner a {
}
#side #banner img {
	margin-bottom: 2px;
	width:auto;
	height:auto;
}
#side #contact {
	width: 210px;
	background:url(../img/contact_bg.gif) no-repeat;
	height:120px;
}
#side #contact div.tel {
	padding-bottom: 10px;
	padding-top: 40px;
}
#side #contact div.tel p {
	margin-left: 15px;
}

#side #contact div.tel img{
	width:auto;
	height:auto;
}
#side #contact p.form {
	margin-top: 0px;
	margin-left: 16px;
}
#side #contact p.form a {
	background-image: url(../img/b_inquiry_form.jpg);
	background-repeat: no-repeat;
	width: 177px;
	height: 25px;
	display: block;
	text-indent: -9999px;
	overflow: hidden;
	text-decoration: none;
}
#side #contact p.text {
	margin-left: 30px;
	margin-top: 6px;
	letter-spacing: 0.1em;
	color: #666;
	line-height: 1.5em;
}
#side #contact h5 {
	display: none;
}

/*
---------------------------- footer ---------------------------*/

#footerInner {
	width:800px;
	margin:0 auto;
	text-align:center;
	position:relative;

}
#footer #footerInner .pagetop {
}
#footer #footerInner .pagetop a {
	display: block;
	width: 87px;
	height: 17px;
	background-image: url(../img/pagetop.gif);
	background-repeat: no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	text-decoration: none;
	margin-left: 677px;
	color:#27A21A;
	position:absolute;
	top:-20px;
	right:0;
}
#footer #footerInner #footerLeft {
	padding-top: 30px;
	font-size: 1em;
	padding-left: 20px;
}
#footer #footerInner #footerLeft ul {
}
#footer #footerInner #footerLeft li {
	display: inline;
}
#footer #footerInner #footerLeft li a {
	color: #27A21A;
	text-decoration: none;
}
#footer #footerInner #footerLeft li a:hover {
	text-decoration:underline;
}
#footer #footerInner #footerLeft address {
	font-style: normal;
	margin-top: 20px;
}

/*---- sitemap ----*/ /* 6/2以降 変更箇所 */

#sitemap {
}
#sitemap .contentsBoxBody {
	font-size: 1.2em;
	line-height: 1.8em;
}
#sitemap .contentsBoxTitle h4 {
	font-size: 0.9em;
	line-height: 1.1em;
}
#sitemap a {
	color: #333333;
	text-decoration: none;
}
#sitemap a:hover {
    text-decoration: underline;
}
#sitemap ul {
	margin-left: 20px;
}
#sitemap ul li {
	list-style-type: none;
}
#sitemap ul li ul {
	margin-left: 12px;
}
#sitemap ul li ul li {
	background-image: url(sitemap_icon.gif);
	background-repeat: no-repeat;
	background-position: 0px 8px;
	padding-left: 15px;
	padding-top: 1px;
}
#sitemap ul li ul li.subNav {
	margin-left: 15px;
}
#sitemap ul li ul li.subNav {
	background-image: url(sitemap_icon_sub.gif);
}




/*--- ▼▼▼ここから左ＭＥＮＵ用スタイル▼▼▼ ---*/
.mainLeft {
	width: 570px;
	float: right;
}
.sideLeft {
	width: 210px;
	float: left;
	margin-left: 0px;
}
.bodyLeft #mainImage {
	margin: 0 auto;
}
.bodyLeft #mainImage img {
	width: 800px;
}
.bodyLeft2 #mainImage {
	margin: 0px auto 20px auto;
}
.bodyLeft2 #mainImage img {
	width: 570px;
}

/*--- ▲▲▲ここまで左ＭＥＮＵ用スタイル▲▲▲ ---*/

/*--- ▼▼▼ここから横ＭＥＮＵ用スタイル▼▼▼ ---*/
.navigationCross {
	width: 800px;
	margin: 0px auto;
	text-align: left;
	padding-bottom: 3px;
}
.navigationCross ul {
}
.navigationCross li {
	list-style-type: none;
	float: left;
}
.navigationCross li.last {
	margin-right: 0px;
}
.navigationCross li.large {
}
.navigationCross li.large a {
	background-image: url(navi_bg_133.jpg);
	width: 133px;
}
.navigationCross li a {
	background-image: url(navi_bg_133.jpg);
	background-repeat: no-repeat;
	text-decoration: none;
	font-size: 1.2em;
	width: 133px;
	height: 38px;
	display: block;
	color: #404040;
}
.navigationCross li a:hover {
	color: #960001;
}
.navigationCross li a span {
	padding-top: 12px;
	padding-left: 26px;
	display: block;
}
.mainCross {
	width: 570px;
	float: right;
}
.mainImageCross {
	padding-top: 30px;
	padding-bottom: 1px !important;
	margin-bottom: 0px !important;
}
.mainImageCross img {
	width: 800px !important;
}
.sideCross {
	width: 210px;
	float: left;
}
.sideCross #news {
	padding-top: 1px;
	width: 210px;
}
.sideCross #news #newsInner {
	background-color: #E3F389;
}
.sideCross #news .newsBox {
	background-image: url(dot_line_whatsnew_184.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding-bottom: 10px;
	padding-right: 13px;
	padding-top: 13px;
	padding-left: 13px;
}
.sideCross #news .last {
    background: none;
	padding-bottom: 0px;
}

.sideCross #news h4 {
	background-image: url(whats_new.gif);
	background-repeat: no-repeat;
	width: 162px;
	height: 22px;
	text-indent: -9999px;
	margin-bottom: 4px;
}
.sideCross #news .newsBox dl {
}
.sideCross #news .newsBox dt {
	font-size: 1.2em;
	font-weight: bold;
	margin-bottom: 4px;
	color: #404040	;
	background-image: url(date_icon.gif);
	background-repeat: no-repeat;
	background-position: 0px 4px;
	padding-left: 11px;
}
.sideCross #news .newsBox dd {
	margin-bottom: 7px;
	color: #172037;
	font-size: 1.2em;
	line-height: 1.4em;
}
.sideCross #news .newsBox dd a {
	color: #404040;
	text-decoration: none;
}
.sideCross #news .newsBox dd a:hover {
	text-decoration: underline;
}
.sideCross #news .newsBox p {
}
.sideCross #news .newsBox p a {
	display: block;
	width: 66px;
	height: 16px;
	background-image: url(more.gif);
	background-repeat: no-repeat;
	text-indent: -9999px;
	overflow: hidden;
	text-decoration: none;
	margin-left: 118px;
}
.sideCross #news .newsBox p a:hover {
}
.sideCross #news #newsList {
	background-image: url(dot_line_208.gif);
	background-repeat: no-repeat;
	margin-top: 15px;
	padding-top: 10px;
	padding-bottom: 8px;
}
.sideCross #news #newsList p {
	background-image: url(icon_list_view.gif);
	background-repeat: no-repeat;
	background-position: 0px 0px;
	margin-left: 131px;
}
.sideCross #news #newsList p a {
	margin-left: 16px;
	line-height: 1.6em;
	font-size: 1em;
	text-decoration: none;
	color: #404040;
}
.sideCross #news #newsList p a:hover {
	text-decoration: underline;
}
.sideCross #contact {
	margin-bottom: 0px !important;
}

/* subcategory */
.sideCross #subNavigation {
	background-color: #E3F389;
}
.sideCross #subNavigation ul {
	padding-bottom: 15px;
}
.sideCross #subNavigation li {
	list-style-type: none;
	background-image: url(sub_navigation.gif);
	background-repeat: no-repeat;
	width: 190px;
	height: 35px;
	margin-left: 11px;
}
.sideCross #subNavigation a { /* 6/2以降 変更箇所 */
	text-decoration: none;
	color: #FFFFFF;
	display: block;
}
.sideCross #subNavigation a:hover {
    color: #F9C6E1;
}
.sideCross #subNavigation span { /* 6/2以降 変更箇所 */
    margin-left: 28px;
	font-size: 1.2em;
	padding-top: 12px;
	color: #FFFFFF;
	display: block;
}

/*--- ▲▲▲ここまで横ＭＥＮＵ用スタイル▲▲▲ ---*/

/*--- ▼▼▼ここから右ＭＥＮＵ用スタイル▼▼▼ ---*/
.mainRight {
	width: 570px;
	float: left;
}
.mainRight #bread #breadInner { /* 6/2以降 変更箇所 */
	margin-right: 0px !important;
	margin-left: 4px;
	float: left !important;
}
.sideRight {
	width: 210px;
	float: right;
	margin-left: 0px;
}
.bodyRight #mainImage {
	margin: 10px auto 0px auto;
}
.bodyRight #mainImage img {
	width: 800px;
}
.bodyRight2 #mainImage {
	margin: 0px auto 20px auto;
}
.bodyRight2 #mainImage img {
	width: 570px;
}

/*--- ▲▲▲ここまで右ＭＥＮＵ用スタイル▲▲▲ ---*/
.elementor-element-d61f24f{
	margin-bottom: 15px;
}
.elementor-element-d61f24f .contentsBoxTitle{
	font-size: 1.6em;
    background-image: url(../img/h4_bg.jpg);
    background-repeat: no-repeat;
    margin-bottom: 20px;
    height: 37px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.elementor-element-d61f24f .contentsBoxTitle h4{
	font-weight: bold;
    color: #003333;
    padding-top: 12px;
    padding-bottom: 12px;
    padding-left: 19px;
}
.elementor-element-d61f24f .contentsBoxTitle p{
    background-image: url(../img/news_icon.gif);
    background-repeat: no-repeat;
    background-position: 0px 3px;
    padding-left: 15px;
    margin: 0 13px 0 0 !important;
    display: inline;
}
.elementor-element-d61f24f .contentsBoxTitle p a{
	text-decoration: none;
    font-size: 0.7em;
}
.elementor-element-d61f24f .post-box__content dl{
    color: #666666;
    font-size: 1.2em;
   	padding: 5px 0;
    display: flex;
	align-items: center;
	border-bottom: 1px dotted #CCCCCC;
	margin: 0 10px 10px 25px;
}
.elementor-element-d61f24f .post-box__content dt{
	width: 120px;
	font-weight: bold;
}
.elementor-element-d61f24f .post-box__content dd{
	flex: 1;
}
.elementor-element-d61f24f .post-box__content dd a{
	color: #666666;
	text-decoration: none;
}
#trackbackurl{
	margin-left: 45px;
}
#trackbackurl p{
	font-size: 1.2em;
    font-weight: bold;
    margin-top: 40px;
	line-height: 1.6;
}
#trackbackurl input.tbbg{
	font-size: 1.4em;
    width: 400px;
}
.box-comment{
	margin-left: 45px;
}
.box-comment p{
	font-size: 1.2em;
    line-height: 1.6em;
}
#respond{
	margin-left: 45px;
	font-size: 1.2em;
}
/* ipad */
@media only screen and (min-device-width: 768px) and (max-device-width: 1023px){
	#content {
		width: 100%;
		padding: 0 10px 70px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	.mainLeft{
		width: calc(100% - 228px);
		margin-left: 18px;
	}
	#main .contentsBox .contentsBoxTitle{
		width: 100%;
	}
	#footerInner{
		width: 100%;
	}
	#headerInner{
		width: 100%;
		padding: 0 10px;
		box-sizing: border-box;
	}
	#header #headerLeft{
		width: 500px;
	}
}
/* sp */
@media screen and (max-width: 767px){
	body{
		background: #fff;
	}
	#header{
		height: auto;
	}
	.bodyLeft #mainImage img {
		width: 100%;
	}
	#content{
		width: 100%;
		padding: 0 5%;
		box-sizing: border-box;
		margin: 20px auto 0;
	}
	.mainLeft{
		float: none;
		width: 100%;
	}
	.sideLeft{
		width: 100%;
		float: none;
		margin: 30px 0;
	}
	#main .contentsBox .contentsBoxTitle{
		width: 100%;
	}
	.elementor-element-d61f24f .post-box__content dl{
		margin: 0 10px 10px 0;
	}
	#side #navigation{
		margin: 0 auto;
	}
	#side #contact{
		margin: 0 auto;
	}
	#side #banner{
		width: 210px;
		margin: 10px auto;
	}
	#footerInner{
		width: 100%;
	}
	.box-comment, #respond, #trackbackurl {
		margin-left: 0;
	}
	#trackbackurl input.tbbg{
		width: 100%;
	}
}