@charset "utf-8";

/*----------------------------------------------------
 elements
----------------------------------------------------*/
body {
	background: #fff;
	color: #333;
	font-family: ArialMT, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", メイリオ, sans-serif;
	font-size: 14px;
	line-height: 1.4;
	-webkit-text-size-adjust: none; /* フォントサイズ自動調整 */
	background-size: 50% auto;
	width:100%;
}

a {
	-webkit-tap-highlight-color: rgb(218,232,254);
	color: #004ece;
}

a:link {
	text-decoration: underline;
}

a:visited {
	text-decoration: underline;
}

img {
	vertical-align: top;
}



/* common setting
------------------------------------------------------------------*/
.webkit body { font-size:85%;}
.opera body { font-size:85%;}
.win body { font-size:85%;}
.mac.safari body { font-size:75%;}
.gecko body { font-size:85%;}

/* margin class */
.mt0 {margin-top:0px !important;}
.mt5 {margin-top:5px !important;}
.mt10 {margin-top:10px !important;}
.mt20 {margin-top:20px !important;}
.mt25 {margin-top:25px !important;}
.mt30 {margin-top:30px !important;}
.mt40 {margin-top:40px !important;}
.mt50 {margin-top:50px !important;}

.mb0 {margin-bottom:0px !important;}
.mb5 {margin-bottom:5px !important;}
.mb10 {margin-bottom:10px !important;}
.mb20 {margin-bottom:20px !important;}
.mb25 {margin-bottom:25px !important;}
.mb30 {margin-bottom:30px !important;}
.mb40 {margin-bottom:40px !important;}
.mb50 {margin-bottom:50px !important;}

.ml0 {margin-left:0px !important;}
.ml5 {margin-left:5px !important;}
.ml10 {margin-left:10px !important;}
.ml20 {margin-left:20px !important;}
.ml30 {margin-left:30px !important;}
.ml40 {margin-left:40px !important;}
.ml50 {margin-left:50px !important;}

.mr0 {margin-right:0px !important;}
.mr5 {margin-right:5px !important;}
.mr10 {margin-right:10px !important;}
.mr20 {margin-right:20px !important;}
.mr30 {margin-right:30px !important;}
.mr40 {margin-right:40px !important;}
.mr50 {margin-right:50px !important;}

/* padding class */
.pt0 {padding-top:0px !important;}
.pt5 {padding-top:5px !important;}
.pt10 {padding-top:10px !important;}
.pt20 {padding-top:10px !important;}
.pt30 {padding-top:30px !important;}
.pt40 {padding-top:40px !important;}
.pt50 {padding-top:50px !important;}

.pb0 {padding-bottom:0px !important;}
.pb5 {padding-bottom:5px !important;}
.pb10 {padding-bottom:10px !important;}
.pb20 {padding-bottom:20px !important;}
.pb30 {padding-bottom:30px !important;}
.pb40 {padding-bottom:40px !important;}
.pb50 {padding-bottom:50px !important;}
.pb60 {padding-bottom:60px !important;}

.pl0 {padding-left:0px !important;}
.pl5 {padding-left:5px !important;}
.pl10 {padding-left:10px !important;}
.pl20 {padding-left:20px !important;}
.pl30 {padding-left:30px !important;}
.pl40 {padding-left:40px !important;}
.pl50 {padding-left:50px !important;}

.pr0 {padding-right:0px !important;}
.pr5 {padding-right:5px !important;}
.pr10 {padding-right:10px !important;}
.pr20 {padding-right:20px !important;}
.pr30 {padding-right:30px !important;}
.pr40 {padding-right:40px !important;}
.pr50 {padding-right:50px !important;}

.clear{
	font-size:0% !important;
	margin:0px !important;
	padding:0px !important;
	clear:both !important;
	line-height:0% !important;
	height:0px !important;
	width:0px !important;
	float:none !important;
}

.clearfix:after {
	display:block;
	clear:both;
	height:0px;
	visibility:hidden;
	content:".";
}
.clearfix {
	min-height: 1px; /*IE6、7対策*/
}
* html .clearfix {
	height: 1px;
	/*\*//*/ /*MAC IE5.x対策*/
	height: auto;
	overflow: hidden;
	/**/
}



img {
	padding: 0px;
	margin:0;
	border: none;
	line-height: 0%;
	vertical-align: bottom;
}



/* Retinaディスプレイ対応のためimg要素は半分の大きさに*/
img:not([width]) {
	zoom: .5;
}


@media only screen and (min-device-width: 481px) and (max-device-width: 1024px) {
	img.zoomOn:not([width]) {
	zoom: .0;
	}
}



/*----------------------------------------------------
 ランドスケープ表示
----------------------------------------------------*/
/*
@media all and (orientation:landscape) {
	#page {
		width: 480px;
	}
}
*/


/*----------------------------------------------------
 header
----------------------------------------------------*/
header {
	background:#fff;
	padding: 0;
	height:70px;
	width:100%;
}

header h1 {
	margin:0 auto;
	text-align:center;
}

header h1 img{
/*	width:290px;
	height:58px; */
	margin:13px auto 0;
}

header div.logo {
	margin:0 auto;
	text-align:center;
}

header div.logo img{
/*	width:290px;
	height:58px; */
	margin:13px auto 0;
}

/* gnav setting
------------------------------------------------------------------*/
#gnav {
	width:100%;
}

#gnav ul{
	display:block;
	height:41px;
	background:url(../images/common/bg_gnav.jpg) 0 0 repeat-x;
	background-size:100% 41px;
	text-align:center;
}

#gnav li{
	display:block;
	float:left;
	height:41px;
	width:33%;
	background:url(../images/common/bg_gnav_line.gif) right 3px no-repeat;
	background-size:2px 36px;
	font-size:12px;
}

#gnav li.rc{ width:34%; background:none; }

#gnav li a{
	display:block;
	height:41px;
	color:#fff;
	font-weight:bold;
	text-decoration: none;
}

#gnav li span{
	display:block;
	padding-top:11px;
}

#gnav li.line2 span{
	padding-top:3px;
}

#gnav li a:hover {
	background:url(../images/common/bg_gnav_on.jpg) 0 0 repeat-x;
	background-size:100% 41px;
}

#gnav li.on {
	background-image:url(../images/common/bg_gnav_line.gif), url(../images/common/bg_gnav_on.jpg);
	background-position:right 3px, 0 0;
	background-repeat:no-repeat, repeat-x;
	background-size:2px 36px,auto 41px;
}

#gnav li.rc.on {
	background-image: url(../images/common/bg_gnav_on.jpg);
	background-position:0 0;
	background-repeat:repeat-x;
	background-size:auto 41px;
}



h2#title {
	background:url(../images/common/bg_h2.jpg) 0  bottom repeat-x;
	background-size:100% 4px;
	height:80px;
	text-align:center;
	margin-bottom:14px;
}

h2#title span{
	display:block;
	margin:0 auto;
	padding-top:25px;
	font-size:20px;
	color:#0f2f74;
}



h1#title {
	background:url(../images/common/bg_h2.jpg) 0  bottom repeat-x;
	background-size:100% 4px;
	height:80px;
	text-align:center;
	margin-bottom:14px;
}

h1#title span{
	display:block;
	margin:0 auto;
	padding-top:25px;
	font-size:20px;
	color:#0f2f74;
}




/*
h2#title.line2 span{
	padding-top:12px;
}
*/
/*-- 各デバイス設定 --*/
@media only screen and (min-width: 320px) {
	h1#title.line2 span {
		padding-top:12px;
	}
}	

@media only screen and (min-width: 480px) {
	h1#title.line2 span {
		padding-top:25px;
	}
	
	h1#title.line2 span br{
		display:none;
	}
}	



h2#title em { font-style:normal;font-size:18px;}

h1#title em { font-style:normal;font-size:18px;}


.conts h4 {
	background:url(../images/common/bg_h4.gif) 0 0 repeat;
	background-size:auto 31px;
	min-height:23px;
	padding-top:4px;
	margin-bottom:15px;
	padding-bottom:4px;
}

.conts h4 span{
	display:block;
	border-left:4px solid #4c86cc;
	margin-left:7px;
	padding-left:5px;
	color:#195194;
	font-size:16px;
}

.picIntro {
	margin-right:10px;
	margin-bottom:10px;
}


@media only screen and (min-width: 321px) {
	.picIntro {
	display:block;
	float:none;
	margin:0 auto;
	margin-bottom:10px;
	}
}	

@media only screen and (min-width: 480px) {
	.picIntro {
	display:inline;
	float:left;
	padding-right:10px;
	padding-left:0px;
	margin-right:15px;
	}
}


.red { 
	color:#e72d2d;
	font-weight:bold;
}

.conts .box h5 {
	display:block;
	background-image:url(../images/common/icon_h5.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size:21px 19px;
	border-bottom:1px dotted #0f2f74;
	color:#0f2f74;
	padding-left:25px;
	padding-bottom:8px;
	font-size:15px;
	margin-bottom:15px;
}

.block {
	margin-bottom:30px;
}


.conts ul.pics{
	display:block;
	margin: 20px auto 10px;
	text-align:center;
	width:282px;
}

.conts ul.pics li{
	display:block;
	margin: 0 5px;
	float:left;
	width:82px;
}



/*----------------------------------------------------
 footer
----------------------------------------------------*/
footer {
	margin-top:30px;
}

.footerInner {
position:relative;
}


footer ul {
	display:block;
	margin-left:10px;
	margin-bottom:5px;
	float:left;
	width:60%;
	position:relative;
}

footer li{ 
	display:block;
	float:left;
	margin-right:11px;
	margin-bottom:3px;
}

footer li a {
	text-decoration: none !important;
	display:block;
	padding-left:20px;
	padding-top:2px;
	font-size:14px;
	background:url(../images/common/icon_arrow_footer.png) no-repeat 0 3px ;
	background-size:17px 17px;
}

footer span {
	display:block;
	margin-right:10px;
	float:right;
	background:#898989;
	border-top-left-radius: 5px;  
   	border-top-right-radius: 5px;
	-webkit-border-top-left-radius: 5px;  
    -webkit-border-top-right-radius: 5px;   
    -moz-border-radius-topleft: 5px;  
    -moz-border-radius-topright: 5px;
    position:absolute;
    bottom:0;
    right:10px;
    padding:0 5px;
}

footer span a{
	display:block;
	background:url(../images/common/icon_arrow_pagetop.png) no-repeat right 0.5em;
	background-size:17px 17px;
	float:right;
	text-decoration: none !important;
	color:#fff;
	font-weight:bold;
	font-size:12px;
	height:26px;
    padding:8px 20px 5px 5px;
}


footer p.copyright {
	display: block;
	font-size: 10px;
	background:#898989;
	color:#fff;
	padding:10px 8px;
	font-weight:bold;
	margin-bottom:0;
}


/*----------------------------------------------------
 mianImages
----------------------------------------------------*/
#picMain {
	margin:0 0 10px;
	padding:0;
}

#picMain img{
	width:100%;
	margin:0;
	padding:0;	
}


/*----------------------------------------------------
 mian setting
----------------------------------------------------*/
#main {
	padding:0 10px;
}

h3 {
	font-size:14px; 
	margin-bottom:20px;
}


.box {
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	background:#fafef1;
	border:1px solid #dbe0d9;
	margin-bottom:10px;
}

.boxBlue {
	background:#f2f8ff;
}

.box .boxInner {
	padding:10px;
}

.ind .box a{
	text-decoration:none;
}

.boxGray {
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	background:#e6e6e6;
	margin-bottom:10px;
}

.boxGray .boxInner {
	padding:10px;
}

.pics3 {
	margin-top:20px;
	text-align:center;
}

.pics3 img{
	margin:0 auto 5px;
}


/*----------------------------------------------------
 index setting
----------------------------------------------------*/

.ind .box h4 {
	display:block;
	color:#509d04;
	background-image:url(../images/top/bg_line.gif),url(../images/top/icon_arrow_top.gif);
	background-repeat: repeat-x, no-repeat;
	background-position: 0 bottom, 0 5px;
	background-size:50% 4px,13px 15px;
	padding:0 0 10px 20px;
	margin-bottom:10px;
	font-size:18px;
}

.ind .boxBlue h4 {
	color:#3f64b3;
	background-image:url(../images/top/bg_line02.gif),url(../images/top/icon_arrow_top02.gif);
}

.ind .box dt {
	display:block;
	float:left;
	width:56px;
	margin-right:10px;
}

.ind .box dt img{
	display:block;
	border:1px solid #dedede;
/*	width:54px;
	height:43px; */
}

.ind .box dd {
	display:block;
	float:left;
	width:70%;
}

.ind .box a dd {
	color:#000;
}

.ind .boxGray li{
	display:block;
	background:#fff;
	box-shadow: 0px 0px 3px #c6c6c6;
	-moz-box-shadow: 0px 0px 3px #c6c6c6;
    -webkit-box-shadow: 0px 0px 3px #c6c6c6;
    margin-bottom:10px;
}

.ind .boxGray li a{
	display:block;
	background:url(../images/top/icon_arrow_top2.png) 8px 20px no-repeat;
	background-size:26px 26px;
	height:47px;
	padding-left:40px;
	padding-top:18px;
	font-size:20px;
	text-decoration: none;
}

.ind .boxGray li.book {
	background:url(../images/top/bg_book.jpg) right bottom no-repeat #fff;
	background-size:62px 48px;
}

.ind .boxGray li.expert {
	background:url(../images/top/bg_expert.jpg) right bottom no-repeat #fff;
	background-size:100px 70px;
}

.ind .boxGray li.report {
	background:url(../images/top/bg_report.jpg) right bottom no-repeat #fff;
	background-size:90px 74px;
}

ul.banner li{
	display:block;
	background:#fff;
	border:1px solid #b9b9b9;
	width:49%;
	min-height:55px;
	text-align:center;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	margin-bottom:8px;
	max-height:55px;
}

ul.banner li.lefty { float:left; }
ul.banner li.righty { float:right; }

ul.banner li a{
	color:#3d3d3d;
	text-decoration: none;
	font-weight:bold;
	display:block;
}


ul.banner li.ban01 img{ margin-top:8px;}
ul.banner li.ban02 img{ margin-top:14px;}
ul.banner li.ban03 { background:#3e4f59;}
ul.banner li.ban04 img{ margin-top:20px;}
ul.banner li.ban05 img{ margin-top:8px;}
ul.banner li.ban06 a{ padding-top:14px; font-size:80%;}
ul.banner li.ban07 img{ margin-top:8px;}
ul.banner li.ban08 img{ margin-top:6px;}
ul.banner li.ban09 img{ margin-top:30px;}
ul.banner li.ban10 img{ margin-top:3px;}
ul.banner li.ban11 img{ margin-top:21px;}
ul.banner li.ban12{background:#3a3a3a;}
ul.banner li.ban12 img{ margin-top:21px;}

/*----------------------------------------------------
 food setting
----------------------------------------------------*/
table.food {
	border-collapse:collapse;;
	width:100%;
	text-align:left;
	border-top:1px solid #d8d8d8;
	border-left:1px solid #d8d8d8;
	border-right:1px solid #d8d8d8;
	font-size:12px;
}

table.food th, table.food td{
	border-bottom:1px solid #d8d8d8;
	padding:5px 10px;
	background:#fff;
}

table.food .title th, table.food .title td{
	background:#d0e386;
	font-weight:bold;
	text-align:center;
	padding-left:0;
	padding-right:0;
}

table.food td{
	padding-right:20px;
	text-align:right;
}

table.food th {
	border-right:1px dotted #d8d8d8;
	width:70%;
	min-width:120px;
}
 
table.food td.num01 {
	border-right:1px dotted #d8d8d8;
}


table.food td.num01 {
	max-width:60px;
}

table.food td.num02 {
	min-width:40px;
}

/*-- 各デバイス設定 --*/
@media only screen and (min-width: 360px) {
	table.food th {
		min-width:150px;
	}
	table.food td.num01 {
		min-width:70px;
	}
	table.food td.num02 {
		min-width:70px;
	}
}	

@media only screen and (min-width: 480px) {
	table.food br{
		display:none;
	}
	
	table.food th {
		min-width:150px;
	}
 
	table.food td.num01 {
		min-width:150px;
	}
	table.food td.num02 {
		min-width:60px;
	}
}	






.fbcomments,
.fb_iframe_widget,
.fb_iframe_widget[style],
.fb_iframe_widget iframe[style],
.fbcomments iframe[style],
.fb_iframe_widget span{
    width: 100% !important;
}


