@charset "utf-8";
@import "compass";
@import "base";

$color_lgray : #efefef;
$color_border : #e9e9e9;
$color_border_vivid : #333;
$color_key : #e90000;
$color_key_light : #ff2924;
$color_key_slight : #fff5f5;
$color_title : #333;
$color_font : #666;
$color_bg_black : #000;
$color_bg_black_font : #999;
$color_bg_gray_border : #e5e5e5;
$color_bg_lgray : #f9f9f9;
$color_bg_searchform : #efefef;
$color_bg_footer : #f5f5f5;
$sidePadding : 25px;


@mixin linebox { border:1px solid #ccc;box-shadow:inset 0px 0px 0px 1px rgba(255,255,255,0.9);color:#fff; }
@mixin wakubox { box-shadow:inset 0px 0px 0px 4px rgba(0,0,0,0.05); border:1px solid #ccc;margin-bottom:20px; }
@mixin h2	{ border-bottom:1px solid #eee; padding:12px 0 9px; font-weight: lighter; }
@mixin h2_after	{ content: "."; line-height: 0; width: 30%; display: block; overflow: hidden; border-bottom: 1px solid $color_key; position: absolute; bottom: -1px; }
@mixin h3_after	{ }
@mixin vektor_kado_icons {
	font-family: 'vektor_kado_icons';
	speak: none;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1em;
	-webkit-font-smoothing: antialiased;
}
@mixin arrow_left_parent {
	content: "\f101";
	font-family: FontAwesome;
	padding-right: 5px;
	font-size: 90%;
}
@mixin arrow_left_child {
  content: "\f105";
  font-family: FontAwesome;
  padding-right: 5px;
  font-size: 74%;
}

/*-------------------------------------------*/
/*	header
/*-------------------------------------------*/
#header { z-index: 2; position:absolute; width: 100%; }
#header #headerInner { padding-top: 5px; padding-bottom: 5px; }
#header #site-title { margin: 0px 0 0px 10px; }
#header .innerBox #site-title a { color: #fff; line-height: 174%; }
#headerTop #site-description { padding: 4px 0; }
#main #container { margin-top: 20px; }
#header.itemOpen .menu-headernavigation-container { padding-top: 5px; }

/*-------------------------------------------*/
/*	Btn
/*-------------------------------------------*/
#searchform input[type=submit],
p.form-submit input[type=submit],
form#searchform input#searchsubmit,
.content form input.wpcf7-submit,
#confirm-button input,
a.btn,
.linkBtn a,
input[type=button],
input[type=submit]	{ color:#fff; }

form#searchform {
	color:#666;padding:0; background-color: $color_bg_searchform;
	input { background-color: $color_bg_searchform;border:none;box-shadow:inset 0 0 0 $color_bg_searchform;
		&#s {width:95%;}
		&:focus,
		&:active { border:none; }
		&#searchsubmit { margin:0; position: absolute;right:0; }
	 }
}

body { font-size: 100%; }
.moreLink { display:block; overflow:hidden; position: relative;
	a 		{ border:1px solid $color_key; display:block; overflow:hidden;float:right; padding: 7px 15px 6px 15px; text-align:left; font-size:12px; line-height: 140%;   }
	a:hover { color:#fff;  }
	a:after { color:#fff; content: "\f101"; font-family: FontAwesome; padding:2px 0px 0 3px; position: relative; }
	a:hover:after { color:#fff; }
}//.moreLink

::selection { color:#fff; }
::-moz-selection { color:#fff; }

#headerTop { color:#fff; z-index: 999; position: absolute; }

#gMenu {
	ul.menu {
			a strong { font-weight: lighter; }
		}
} // #gMenu
.headSubMenu	{
	ul li a:before {@include vektor_kado_icons; content:"\2b";margin-right:5px;}
}


@media (max-width: 969px) {
	#gMenu	{
		.assistive-text { color:#fff; border: 1px solid #fff; top: -35px; right: 10px;background:none;
			span { font-size:0;line-height: 0;
			&:before { font-size:24px;line-height: 24px; }
			}
		}
		.headMainMenu {
			ul {
				li { background-color: #fff;
					a:after { float:right;@include vektor_kado_icons;content:"\2b";}
				}
			}
		} // .headMainMenu
	}
} // @media (max-width: 969px)

#pageTitBnr { padding: 40px 0 5px; background-size: 100%; background-color:$color_bg_lgray; color: #fff;
	#pageTitInner	{ padding:0 17px;
		#pageTit { text-align: center; font-weight: lighter;width:100%;/*iPhone4sでの表示不良対策の為に100%は必要*/ }
	}
}//#pageTitBnr

#panList { 
	ul { width:100%; }
	ul a,
	ul a:active { color:#666;text-decoration: none; }
	ul li#panHome a:before { @include vektor_kado_icons;content: "\2d";padding-right:3px; }
}


.flex-direction-nav li {
	a { background: url(../images/bg_direction_nav2_30.png) no-repeat; }
	a:hover { background-image: url(../images/bg_direction_nav2_50.png); }
	.prev { left: 0; }
	.next { right: 0; }
}

// グローバルメニューやスライドが存在しない場合があるため #main で線を引く
#main {  }


/*				h2～h5
/*-------------------------------------------*/
.content {
	h2,
	h1.contentTitle,
	h1.entryPostTitle,
	.sideWidget h4 { @include h2; line-height: 100%;}
	h2:after,
	h1.contentTitle:after,
	h1.entryPostTitle:after,
	.sideWidget h4:after { @include h2_after; }

	.topPr h3 {  }
	h3 { position: relative; font-weight: lighter; padding-bottom: 5px;font-size:150%; margin: 35px 0px 15px;  }
	h3:after { @include h3_after; }
	blockquote,
	.sectionFrame { @include wakubox;padding:20px 20px 5px;margin-bottom:20px;
		h2,
		h3,
		h4,
		h5 { margin-top:0px; margin-bottom:15px; }
	}
	h3,h4,h5,h6 { font-weight: lighter; }
	h4 { padding-top:0;box-shadow:0px 1px 0px rgba(255,255,255,1);  }
	table { border-top:1px solid $color_border;border-spacing: 1px;border-collapse: inherit;
		th,td { border:none;margin-right:2px;border-bottom:1px solid $color_border; }
		th { font-weight: lighter; }
	}
	.infoList .infoDate { color: #666; }
}//.content 

/*				.infoListBox
/*-------------------------------------------*/
.content .infoList {
	ul li { padding: 10px 0px;
		.infoTxt a { color: #333; display: inline;}
		.infoTxt a:hover { text-decoration: none; border-bottom: 1px solid $color_key;}
		.infoDate:before { content:"\f073"; font-family: FontAwesome; padding-right: 5px; }	
	}//ul li
	.infoCate a { background: none; }
	.infoListBox { clear: both; padding: 30px 0;
		div.thumbImage div.thumbImageInner img	{ width:98px; border:none; }
		div.entryTxtBox { 
			h4.entryTitle a {color: #444;}
			h4.entryTitle a:hover { text-decoration: none; border-bottom: 1px solid $color_key; }
			p.entryMeta .infoDate:before { content:"\f073"; font-family: FontAwesome; padding-right: 5px; }
		} //div.entryTxtBox 
	} //.infoListBox
} //.content .infoList

.content #topBlog.infoList ul li .infoTxt { clear: both; }

/*				childPage
/*-------------------------------------------*/
.content .mainFootContact { padding:15px 0; border-top:1px solid $color_border;border-bottom:1px solid $color_border; }

.content {
	.child_page_block { @include wakubox;
		.child_page_blockInner { padding: 18px; margin:0; }
		h4 { border-bottom:1px solid $color_border; position: relative;font-size:114.3%;
			&:after { @include h3_after; }
		}
	}// .child_page_block 

	.childPageBox { @include wakubox;
		ul li a { background: none; }
		ul li a:before { @include arrow_left_parent; }
		ul li a:hover { background: none; text-decoration: none; }
		ul li ul li a:before{ margin-right: 5px; @include arrow_left_child; }
		ul li ul li a:hover,
		ul li ul li.current_page_item a { background-image: none; text-decoration: none;}
		h4 { border-bottom:1px solid $color_border; }
	}//.childPageBox

}//.content



/*				sideTower
/*-------------------------------------------*/
.sideTower {
	.localHead,
	h3.localHead { border-bottom:1px solid #efefef; font-size: 110%; }

	.sideWidget {
		h4 { border-bottom:1px solid #efefef;  }
			li a:before { padding-top:3px; @include arrow_left_parent; }
			li a { display: table; width: 100%; padding-left:10px;color:$color_font; }
			li a:first-letter { margin-left:-20px;@include vektor_kado_icons; }
			li ul li { font-size:12px; }
			li ul li a { padding-left:25px; }
			li ul li a:before { margin-right:5px;  @include arrow_left_child; }
	}//.sideWidget

	.ttBoxSection { padding: 0;
		.ttBox { padding: 13px 0px 11px; border-bottom: 1px dotted #ccc;font-size: 85.7%; line-height: 135.7%;
			a { color: #666; }
			.ttBoxThumb { width: 64px; }
			.ttBoxThumb img { border: 1px solid #cccccc; }
			} //ttBox
	}//.ttBoxSection
} // #sideTower


#footerSection #pagetop { display: none; }
#pagetop {
	.innerBox {  }
	a { color:#fff;margin-bottom:0;border:none; position: relative; }
			a	{ margin-top:5px;padding:5px 15px 5px;}
			a:hover	{ margin-top:0;padding-bottom:10px; }
	a:before { @include vektor_kado_icons;content: "\41";margin-right:5px;top:1px;position: relative; }
}

/*				sitemap page
/*-------------------------------------------*/
.content {
	ul.linkList {
		li a { background: none; }
	 	li a:hover { background: none; text-decoration: none; color: $color_key; }
	 	li a:before { @include arrow_left_parent; }
	 	li li a,
	 	li li a:hover { background: none; }
	 	li li a:before { @include arrow_left_child; }
	}//ul.linkList
}//.content

/*-------------------------------------------*/
/*	#footMenu
/*-------------------------------------------*/
#footMenu { border-top: 2px solid $color_key; border-bottom :1px solid $color_border;
	.innerBox { width:100%;
		a { color:#888; }
		.menu li { font-size: 14px;
			a { padding:8px 15px 8px 10px;
				&:before { @include arrow_left_parent;  }
				&:hover { }
			}
			a:hover { text-decoration: none; }
			&:last-child { border-bottom:none; }
		}
	 }
}

/*-------------------------------------------*/
/*	#footer
/*-------------------------------------------*/
#footer	{ padding:0; background-color: $color_bg_footer;
	.innerBox { padding-top:25px; width:100%;
	a { color:#888; }
	}
	dl#footerOutline { margin-left:10px; }
}

/*		#footerSiteMap
/*-------------------------------------------*/
#footerSiteMap {
	.menu { border-top:1px solid $color_bg_gray_border; font-size: 14px;
		li	{
			a { border-bottom:1px solid $color_bg_gray_border; padding:10px;
				&:before { @include arrow_left_parent;  }
				&:hover { }
			}
			ul li {
				a { padding:10px 10px 10px 20px;
					&:hover { }
					&:before { @include arrow_left_child; }
				}
			} //ul li
		}//li
	} //.menu
} // #footerSiteMap



#siteBottom { background-color: $color_bg_footer;border-top:1px solid $color_bg_gray_border;
	#siteBottomInner.innerBox { padding-top:0;
		#copy { padding-top:15px; }
		#powerd { color:#333;}
		#powerd a { color:#454545;}
	}
}

#topMainBnr { background-color: #fafafa; position: relative; top: 0px; left: 0px; z-index: 1; }
#topMainBnrFrame { padding:0px;width:100%;
	ul.slides {  }
}

.content .topPr p a{ line-height: 150%; }

.content{
	#topPr { border-top:1px dotted $color_border;
		a:hover {   }
		.topPrOuter {
			border-bottom:1px dotted $color_border;
			h3 { border-bottom:none; }
			h3 a:hover {color:$color_key; text-decoration: none;}
		}
	}//#topPr
}//content
.content .infoList .rssBtn { 
			a { padding: 3px 10px; font-weight: normal; font-size: 90%;}
			a:before { content: "\f09e"; font-family: FontAwesome; padding-right: 3px; }
			a:hover { color:#fff; }
}



/*-------------------------------------------*/
/* コンテンツ推奨サイズより大きい場合
/*-------------------------------------------*/
@media (min-width: 660px) { /* スクロール分余裕に20px */
/* home */
.headMainMenu {
	.menu > li > a{ }
	.menu > li > a:hover,
	.menu > li.current-menu-item > a,
	.menu > li.current_page_item > a { background-color: rgba( 255, 255, 255, 0.25); }
	.menu li.current_page_item .sub-menu li a { color: #333; }
} //headMainMenu

#header #site-title a img { max-height: 40px; }
#pageTitBnr { padding: 58px 0 23px; }
#pageTitBnr #pageTitInner #pageTit { font-size: 180%; }
.content {
	h2,
	h1.contentTitle,
	h1.entryPostTitle,
	.sideWidget h4 { @include h2;font-size:180%; }
	#topPr { border-top:none;
		.topPrOuter { border-bottom:none;
			.topPrInner { padding:0 6%;width:88%;border-right:1px solid $color_border; }
		} // .topPrOuter
		#topPrLeft .topPrInner { border-left:1px solid $color_border; }
		h3 { margin-bottom:10px;padding-bottom:2px; font-size:130%; }
		h3:after { }
		p.topPrDescription { font-size: 100%;}
	} // #topPr
	.infoList {
		ul li .infoTxt a { font-size: 150%; line-height: 160%; }
		.infoListBox div{
			&.thumbImage div.thumbImageInner img { width:120px; }
			&.entryTxtBox h4.entryTitle { font-size: 150%; }
		} // .infoListBox div
	}//.infoList
} // .content


.sideTower {
	.localHead,
	h3.localHead { font-size: 110%; }
}//.sideTower

} // min-width: 660px

/*-------------------------------------------*/
/* pc iPad3より大きい場合
/*-------------------------------------------*/
@media (min-width: 770px) {
#headerTop #site-description { display: none; }	
.content ul.linkList li a { padding: 3px 15px 3px 0; }


#pageTitBnr { padding: 90px 0 50px; 
 	#pageTitInner #pageTit { font-size: 260%; }
}//#pageTitBnr
#footMenu	{ background-color: $color_bg_footer;
	.innerBox { padding: 0px $sidePadding 0px;
		.menu { padding:10px 0;}
		.menu li a { background-position: left 50%; padding:0 20px 0 0;
			&:hover {  }
		}
		// .menu li a:before { font-family: 'vektor_kado_icons';content: "\2b";padding-right:5px; position: relative; top:1px;}
	}
} // #footMenu
#footer .innerBox { width:94%;padding-bottom:20px;
	dl#footerOutline { margin-left:0px; }
}

#footerSiteMap {
	.menu { border-top:none;
		> li { margin-right:10px; }
		li { width:150px;
			a { background:none; padding:2px 0 2px 0px; border-bottom:none;  
				&:before {  }
			}
			ul li a { padding:2px 0 2px 14px; font-size: 90%; 
					&:before {  }
			}//ul li a
		} //li
		// li:first-child	{ border-top:none; }
	} //.menu
} // #footerSiteMap

.three_column #main #container { position: relative;
	#thirdTower {margin-right:0;}
}

} // min-width: 770px

/*-------------------------------------------*/
/*	フルサイズ
/*-------------------------------------------*/
@media (min-width: 970px) { /* スクロール分余裕に20px */
.home #main #container { margin-top: 30px; }
.innerBox,
#panList .innerBox,
#footMenu .innerBox,
#footer .innerBox,
#pageTitBnr .innerBox{ width:950px; padding-left:0; padding-right:0; margin:0 auto; }
#pageTitBnr { padding: 150px 0 60px; 	
	 #pageTitInner #pageTit { font-size: 280%; }
}

#gMenu { float:right;clear:none;width:auto;padding-left:30px;
	#gMenuInner.innerBox { width:auto; }
	&:after { content:""; display: inherit; }
} // #gmenu
#headerTop #site-description { font-size: 11px; display: block; }
.home #header #headerInner { border-bottom:none; }
#header #headerInner { border-bottom-style: solid; border-bottom-width: 1px; border-bottom-color: rgba(255,255,255,0.3);}
#header.opacyHeader #headerInner { border-bottom: none;}
#header #headerInner { padding-top: 22px; padding-bottom: 10px; }
#header { padding-bottom: 0; position: fixed; }
#header .innerBox #site-title { margin-top: 5px; margin-bottom:5px;
					 img { max-height: 50px; }
} //#header .innerBox #site-title
.headMainMenu { margin-top:10px;
	.menu {
		 > li:first-child a { border-left:none; }
		 > li > a { color: #fff; }
		li > a { border-right:none; padding:8px 20px 8px 20px; }

		li.current_page_item,
		li.current_page_ancestor,
		li.current-page-ancestor,
		li:hover {
			ul {
				li { border-bottom:1px dotted #e5e5e5; background-color: #fff; 
					// &:nth-child(1) a { border-left:none; }
					a { margin:0;padding:10px 15px; }
				}
			}
		} // li:hover
	}

} //.headMainMenu
.content #topPr h3{ font-size: 150%; }
.content .childPageBox{
		h4 { padding: 0px 0px 10px; font-size: 110%; margin: 15px 20px 15px; }
 		ul li a { padding: 3px 5px 3px 0px; }
		ul li a:hover,
		ul li.current_page_item {
				a { background-image:none;  text-decoration: none; }
				ul li {
					a,
					a:hover { background-image:none;text-decoration:none; }
					}//ul li 
		}//ul li.current_page_item
		ul li ul { margin: 3px 0px 0 0; }
		ul li ul li a { background: none; }
} //.childPageBox
form#searchform input#searchsubmit { width:auto; }
} // min-width: 970px


/*-------------------------------------------*/
/*	color /* そのまま貼るのでsassで書かない */
/*-------------------------------------------*/
a { color:$color_key_light; }

#searchform input[type=submit],
p.form-submit input[type=submit],
form#searchform input#searchsubmit,
.content form input.wpcf7-submit,
#confirm-button input,
a.btn,
.linkBtn a,
input[type=button],
input[type=submit],
.sideTower li#sideContact.sideBnr a { background-color:$color_key; }

.moreLink a { color:$color_key; border-color: $color_key;  } 
.moreLink a:hover { background-color:$color_key; }
.content #topPr h3 a:hover,
.moreLink a:after { color:$color_key; }

::selection { background-color: $color_key_light;  }
::-moz-selection { background-color: $color_key_light;  }

#headerTop { border-top-color:$color_key; }
#header.itemOpen { background-color:$color_key; }
.headMainMenu li:hover {  }

.content h2:after,
.content h1.contentTitle:after,
.content h1.entryPostTitle:after,
.content .sideWidget h4:after { border-bottom-color:$color_key; }
.content h3:after,
.content .child_page_block h4:after { border-bottom-color:$color_key; }

.sideTower li#sideContact.sideBnr a:hover,
form#searchform input#searchsubmit:hover { background-color: $color_key_light; }

#panList .innerBox ul a:hover { color:$color_key_light; }

.content .mainFootContact p.mainFootTxt span.mainFootTel { color:$color_key; }
.content .mainFootContact .mainFootBt a { background-color: $color_key; }
.content .mainFootContact .mainFootBt a:hover { background-color: $color_key_light; }

.content .infoList .infoCate a,
.content .infoList .rssBtn a { background-color: $color_key_slight; color:$color_key; }
.content .infoList .infoCate a:hover,
.content .infoList .rssBtn a:hover { background-color: $color_key; }
.content .infoList ul li .infoTxt a:hover,
.content .infoList .infoListBox div.entryTxtBox h4.entryTitle a:hover { color:$color_key; border-bottom-color:$color_key; }

.content ul.linkList li a:hover  { color:$color_key; }

.paging span,
.paging a	{ color:$color_key;border-color:$color_key;}
.paging span.current,
.paging a:hover	{ background-color:$color_key;}

	/* アクティブのページ */
.sideTower .sideWidget li > a:hover,
.sideTower .sideWidget li.current_page_item > a,
.sideTower .sideWidget li.current-cat > a	{ color:$color_key;background-color: $color_key_slight;}

.sideTower .ttBoxSection .ttBox a:hover { color:$color_key; }

#footMenu { border-top-color: $color_key;}
#footMenu .menu li a:hover,
#footerSiteMap .menu a:hover { color:$color_key; }

@media (min-width: 970px) {
.content .childPageBox ul li a:hover,
.content .childPageBox ul li.current_page_item a { color:$color_key;}
}
