body { margin: 0; font-size: 12px; color: #222; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
h1,h2,h3,h4,ul,p { margin: 0; padding: 0;}
.container { width: 980px; margin: 0 auto; }

/***** Global Style *****/
.cf:before, .cf:after {
	content: " ";
	display: table;
}

.cf:after {
	clear: both;
}

.cf {
	*zoom: 1;
}

/*=====================

header
======================*/

header {
	position: absolute;
	top: 0;
	height: 93px;
	width: 100%;
	z-index: 10;
	background: -moz-linear-gradient(top,rgba(0,0,0,0.5),rgba(0,0,0,0.0)); /* Firefox用 */
	background: -o-linear-gradient(rgba(0,0,0,0.5),rgba(0,0,0,0.0)); /* Opera */
	background: -webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0.5)),to(rgba(0,0,0,0.0))); /* Safari,Google Chrome用 */
	background: linear-gradient(top,rgba(0,0,0,0.5),rgba(0,0,0,0.0));
	-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#00000000', GradientType=0)"; /* IE8用 */
}

header .container{
	position: relative;
}

header #headLogo { width: 210px; height:100px; border-top: solid 4px #004da0; background-color: #FFF; text-align: center;
-moz-box-shadow: 0px 0px 5px #000000;
-webkit-box-shadow: 0px 0px 5px #000000;
box-shadow: 0px 0px 5px #000000; }
header #headLogo img { padding-top: 15px; }


header div.action-buttons .button a,
header div.action-buttons .button a:hover {
    text-decoration: none;
    color: #187fc4;
}

header div.action-buttons {
	position: absolute;
    width: 270px;
    top: -1px;
    right: 0;
    z-index: 9999999999;
}

header.loggedin .action-buttons {
    display: none;
}

header .action-buttons .button-wrap {
    width: 132px;
    display: inline-block;
}

header .action-buttons .button {
    text-align: center;
    display: block;
    border-radius: 0 0 3px 3px;
    padding: 10px;
    border: 1px solid #3a6897;
    border-top: 0;
}

header .action-buttons .button:hover {
    text-decoration: none;
    cursor: pointer;
}

header .action-buttons .button.login {
    background: #07213D;
    border: 1px solid #FFF;
    border-top: 0;
    color: #FFF;
}

header .action-buttons .button.login:hover {
    background: #0A315B
}

header .action-buttons .button.register {
    background: #FFF;
    color: #07213D;
}

header .action-buttons .button.register:hover {
    background: #EEE;
}

header .action-buttons .button.register i {
    color: #07213D;
    margin-right: 6px;
    display: inline-block;
}

header .action-buttons a.button.register {
    color: #fff;
}

header .action-buttons ul {
    margin-top: 0;
}

header .action-buttons ul {
    display: none;
    position: absolute;
    padding: 10px 15px;
    width: auto;
    min-width: 115px;
    color: #fff;
    text-align: left;
    line-height: 1.4em;
    background: #fff;
    z-index: 0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
    overflow: visible;
    border-radius: 4px;
    z-index: 11;
    top: 40px;
}

header .action-buttons .button.login ul{
	left: -5px;
}

header .action-buttons .button.register ul{
	display: block;
    left: 132px;
}

header .action-buttons ul:before {
    content: "";
    position: absolute;
    top: -11px;
    left: 50%;
    margin-left: -10px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent rgba(0, 0, 0, 0.2) transparent;
}

header .action-buttons ul:after {
    content: "";
    position: absolute;
    top: -10px;
    left: 50%;
    margin-left: -10px;
    display: block;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    border-color: transparent transparent #fff transparent;
}

header .action-buttons li {
    float: none;
    background: none;
    padding: 5px 0;
}


header ul.menu {
	position: absolute;
	top: 50px;
	right: 0;
}
header ul.menu li { float: left; font-size: 12px; list-style: none; margin-top: 13px }
header ul.menu li a {
	display: inline-block;
	color: #FFF;
	background: url(/assets/default/img/site_top/arrow1_a.png) no-repeat 0 center;
	padding-left: 15px;
	margin-left: 20px;
	text-decoration: none;
}
header ul.menu li a:hover {
	text-decoration: underline;
}
header ul.menu li.total{
	color: #fff;
	font-size: 1.5em;
	margin-left: 25px;
	margin-top: 0;
}
header ul.menu li.total strong{
	display: inline-block;
	font-size: 1.3em;
	margin: 0 5px;
}

/*=====================

slider
======================*/
#headWrap { margin:0;
	position: relative;
	background: url(/assets/default/img/site_top/head_bg_03.png) repeat;
	height: 500px;
}

.slider-pro {
	position: absolute;
	top: 100px;
}

.sp-slide:after {
	content:"";
	display:block;
	background:rgba(0,0,0,0.6);
	height: 370px;
    width: 550px;
    position: absolute;
    z-index: 111;
    top: 0;
}

.slider-pro .sp-selected a{
	width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1111;
    display: block;
    background-color: transparent;
    transition: none !important;
    -moz-transition: none !important;
    -webkit-transition: none !important;
    -o-transition: none !important;
}

.sp-selected.sp-slide:after{
	background:none;
}


/*=====================

main
======================*/
#main a{
	color:#222;
	text-decoration:none;
}
#main a:hover{
	text-decoration:underline;
}
#main {
	margin: 40px 0 60px;
	width: 685px;
	float: left;
}

#title01 { font-weight: normal; color: #004da0; font-size: 22px; background: url(/assets/default/img/site_top/top_title01.png) no-repeat 0 0; padding-left: 47px; margin-bottom: 20px; }
#main article { width: 665px; padding: 15px 10px; position: relative; }
#main article { border-bottom: solid 1px #ddd; }
#main article:hover { background-color: #fafafa; }


#main article div.ivPhoto { width: 290px; }
#main article div.ivPhoto img { border: solid 1px #ddd; }
#main article div.ivDoc { width: 365px; }
#main article h3 { color: #222; font-size: 18px; line-height: 24px; font-weight: normal; margin-bottom: 6px; }
#main article h4 { color: #222; font-size: 14px; font-weight: normal; margin-bottom: 5px; }
#main article p { font-size: 12px; color: #777; margin-bottom: 10px;}
#main article div.prefind{
	line-height: 1.0em;
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
}
#main article div div.pref{
	display: inline-block;
	float:left;
	background-color: #DEC7A4;
	border-radius: 5px;
	padding: 6px 5px;
	margin: 0 5px 15px 0;
}
#main article div div.pref+p{
	margin-top: 5px;
}
ul.sns_btn li {
	display: inline-block;
	float: left;
	margin-right: 8px;
	font-size: 11px;
	line-height: 20px;
}
ul.sns_btn li span.fb,
ul.sns_btn li span.tw,
ul.sns_btn li span.gp,
ul.sns_btn li span.hb {
	display: inline-block;
	width: 30px;
	height: 20px;
	text-align: center;
	color: #fff;
	border-bottom-left-radius: 3px; border-top-left-radius: 3px;
	-webkit-border-bottom-left-radius: 3px; -webkit-border-top-left-radius: 3px;
	-moz-border-radius-bottomleft: 3px; -moz-border-radius-topleft: 3px;
}
ul.sns_btn li a:hover span.fb,
ul.sns_btn li a:hover span.tw,
ul.sns_btn li a:hover span.gp,
ul.sns_btn li a:hover span.hb {
	filter: alpha(opacity=70); -moz-opacity: 0.70; opacity: 0.70;
}
ul.sns_btn li span.fb{
	background: url(/assets/default/img/site_top/sns_fb.png) no-repeat center center #425597;
	border: 1px solid #425597;
}
ul.sns_btn li span.tw{
	background: url(/assets/default/img/site_top/sns_tw.png) no-repeat center center #4391c1;
	border: 1px solid #4391c1;
}
ul.sns_btn li span.gp{
	background: url(/assets/default/img/site_top/sns_gp.png) no-repeat center center #c14134;
	border: 1px solid #c14134;
}
ul.sns_btn li span.hb{
	background: url(/assets/default/img/site_top/sns_hb.png) no-repeat center center #6d9cd7;
	border: 1px solid #6d9cd7;
}
ul.sns_btn li a:hover span.counter{
	text-decoration: underline;
}
ul.sns_btn li span.counter{
	display: inline-block;
	width: 50px;
	height: 20px;
	color: #222;
	text-align: center;
	background-color: #fff;
	border-top: solid 1px #ccc;
	border-right: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	border-bottom-right-radius: 3px; border-top-right-radius: 3px;
	-webkit-border-bottom-right-radius: 3px; -webkit-border-top-right-radius: 3px;
	-moz-border-radius-bottomright: 3px; -moz-border-radius-topright: 3px;

}

/*ページナビ*/
#main ul.pageNav01 {
	text-align: center;
	margin-top: 40px;
}

#main ul.pageNav01 li {
	display: inline;
	margin: 0 2px;
	padding: 0;
	font-size: 13px;
}

#main ul.pageNav01 li span,
#main ul.pageNav01 li a {
	display: inline-block;
	margin-bottom: 5px;
	padding: 8px 13px;
	background: #fff;
	text-decoration: none;
	vertical-align: middle;
}
#main ul.pageNav01 li.current span{
	color: #fff;
	background-color: #004da0;
}

#main ul.pageNav01 li a:hover {
	background: #eeeff7;
	border-color: #00f;
}

/*=====================

右ナビ
======================*/
#rNavi {
	margin: 40px 0 60px;
	width: 275px;
	float: right;
}

#rSearch h2#searchTitle {
    font-weight: bold;
    font-size: 14px;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: solid 1px #ddd;
}

#rSearch input{
    border-radius: 5px;
    padding: 3px 5px
}
#rSearch input[type=text]{
    width: 74%;
}
#rSearch input[type=submit]{
    width: 18%;
    background-color: #004DA2;
    color: #fff;
}


#rNews .news { padding: 0 10px; margin-bottom: 15px; }
#rNews h2#newsTitle {
	font-weight: bold;
	font-size: 14px;
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: solid 1px #ddd;
}
#rNews .news p { margin-bottom: 3px; }
#rNews .news a { color: #187fc4; text-decoration: underline; }
#rNews .news a:hover { text-decoration: none; }


ul.rIvMenu>li { position: relative;}
.rIv ul.rIvSub {
	display: none;
	position: absolute;
	top:0;
	left: -230px;
	background-color: #fff;
	width: 230px;
	border: solid 1px #ddd;
	padding: 15px 0;
}
.rIv ul.rIvSub span{
	max-width:230px;
	white-space: nowrap;
	overflow: hidden;
}
.rIv ul.rIvSub li a,
.japan.rIv .rIvMenu li > span{
	height: 28px;
	line-height: 28px;
	padding: 0 20px;
	border: none;
}
.japan.rIv .rIvMenu li > span{
	color:#aaa;
}

.rIv h2 {
	font-weight: bold;
	font-size: 14px;
	background-color: #fafafa;
	line-height: 50px;
	color: #004da0;
	border-top: solid 3px #004da0;
	padding: 0 10px;
	border-bottom: solid 1px #ddd;
}
.rIv ul { list-style: none; }
.rIv ul li a {
	display: block;
	height: 40px;
	padding: 0 10px;
	line-height: 40px;
	border-bottom: solid 1px #ddd;
	color: #222;
	text-decoration: none;
}
.rIv ul li a:hover {
	background-color: #eee;
	text-decoration: underline;
}



.rBnr {
	display: block;
	width: 100%;
	height: auto;
	margin-bottom: 7px;
}
.rBnr:hover {
	filter: alpha(opacity=70); -moz-opacity: 0.70; opacity: 0.70;
}
.rBnr img{
	width: 100%;
}
/*=====================

footer
======================*/
footer #footerAreaInfo { background-color: #212121; font-size:12px; padding: 40px 0; }
span.ai01,span.ai02 { line-height: 2.5em;}
span.ai01 { display: inline-block; text-align: right; width: 110px; margin-right: 20px; color: #fff; font-weight: normal;}
span.ai02 { text-align: right; color: #777; }
span.ai02 a { color: #ccc; text-decoration: underline; }
span.ai02 a:hover { text-decoration: none; }

footer #footerAreaInfo .container{ position:relative; }
p#pageTopBtn a {
	position: absolute;
	right: 0;
	top: -75px;
	display: block;
	width: 120px;
	height : 35px;
	line-height : 35px;
	padding-left: 20px;
	text-decoration: none;
	text-align: center;
	background: url(/assets/default/img/site_top/arrow2_a.png) no-repeat 15px center #212121;
	color: #fff;
	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;
}
p#pageTopBtn a:hover {
	text-decoration: underline;
}
span.ai02 { position: absolute; left: 140px;}
p.ai03 { margin: 30px 0 0 140px; color: #777; }

/*#footNav { background: url(/assets/default/img/site_top/privacy.png) no-repeat right center;}*/
#footNav ul { margin: 22px 0 0; }
#footNav ul li { float: left; list-style: none; padding: 0 10px; border-left: solid 1px #aaa; }
#footNav ul li:first-child { padding-left: 0; border-left: none; }
#footNav ul li a { color: #333; text-decoration: none; }
#footNav ul li a:hover { text-decoration: underline; }
#footNav p small { color: #999; display: inline-block; margin-bottom: 40px; margin-top: 10px; }

/*=====================

その他
======================*/
.floatL { float: left; }
.floatR { float: right; }
.clear { clear: both; }
.mrgB10 { margin-bottom: 10px; }
.mrgB15 { margin-bottom: 15px; }
.mrgB20 { margin-bottom: 20px; }
.mrgB30 { margin-bottom: 30px; }
.mrgB40 { margin-bottom: 40px; }

/*=====================

CTA
======================*/
#buzipSolutionBanner{
    font-size: 12px;
    position: fixed;
    right: 0;
    bottom: 0;
    border: 1px solid #FFF;
    width: 260px;
    background-color: #fff;
}

#buzipSolutionBanner .head{
    position: relative;
    background-color: #7CC0E8;
    color: #fff;
    padding: 8px 10px;
    cursor: pointer;
    line-height: 1.4em;
    text-align: left;
}
#buzipSolutionBanner .head span{
    text-align: right;
    position: absolute;
    right: 8px;
    display: inline-block;
}

#buzipSolutionBanner .body{
    display: none;
    text-align: center;
    color: #fff;
    background-color: #238CCB;
    height: 100%;
    font-size: 18px;
    padding: 17px 17px;
    line-height: 1.4em;
}

#buzipSolutionBanner .body .btn{
    width: 75%;
    margin: 8px auto 0;
    display: block;
    background-color: #FF6C6C;
    border-radius: 5px;
    padding: 3px 15px;
    color: #fff;
    text-decoration: none;
    font-size: 0.9em;
}