@charset "utf-8";
/* CSS Document */


* {
font-size:100%;
margin:0px;
padding:0px;
}


/*　背景　*/
body {
background-image:url(image/body_bg.jpg);
background-repeat:repeat-x;
text-align: center;
font-size: 90%;
margin:0px auto 0px auto;
padding:0px;
font-family: "メイリオ", "ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif, Osaka, "ヒラギノ角ゴ Pro W3";
}

.body-top {
background-image:url(image/body_bg_top.jpg);
background-repeat:repeat-x;
}


/*　画像　*/
img {
border:0px;
vertical-align:bottom;
}


/*　リンク　*/
a {
color:#0474BB;
text-decoration:none;
}

a:hover {
text-decoration:underline;
}


/*　段落　*/
p {
margin:0 0 10px 0;
line-height:1.4em;
}


/*　見出し　*/
h1 {
}

h2 {
	background:url(image/midashi_h2_back.jpg);
	background-repeat:no-repeat;
	color:#FFFFFF;
	font-weight:bold;
	font-size:17px;
	margin:0px 0px 20px 0px;
	padding:10px;
}

h3 {
font-size:19px;
font-weight:bold;
color:#036;
margin:10px 0 5px 0;
padding:0px;
clear:both;
}

h4 {
background-image:url(image/midashi_h4_bg.jpg);
background-repeat:no-repeat;
font-size:14px;
color:#333333;
margin:21px 0 7px 0;
padding:9px 0 10px 28px;
clear:both;
}


h3 a {
color:#148BAB;
text-decoration:underline;
}

h3 a:hover {
color:#FF3300;
text-decoration:none;
}


/*　リスト　*/
ul {
margin:7px 10px 10px 0px;
line-height:1.3em;
list-style:none;
}

li {
background-image:url(image/mark_01.gif);
background-repeat:no-repeat;
background-position:0em 0.3em;
margin:0 0 10px 0px;
padding:0 0 0 1.3em;
}


/*　トピックパス　*/
#topic_path {
margin-top:19px;
color:#666666;
font-size:11px;
}


/*　コンテナ要素　*/
#container {
text-align: left;
width:830px;
margin: 10px auto 0 auto;
padding:0px;
}


/*---------------------------
　ヘッダー　
---------------------------*/
#description {
	font-weight:bold;
	font-size:11px;
}

#header {
padding:0px 0 0px 0;
margin:15px 0 0 0;
height:125px;
font-size:0px;
}


html>/**/body #header {/*　IE7を除いたモダンブラウザに適用　*/
margin:15px 0 0px 0;
}

/*　サイトタイトル　*/
#site-title {
background-image:url(image/site_title.jpg);
width:202px;
height:50px;
text-indent:-9999px;
float:left;
}

#site-description {
background-color:#EFF4F9;
padding:7px;
margin:0 0 0 15px;
font-size:12px;
float:left;
}

#site-description p {
margin:0px;
padding:0px;
}

#header-inquiry {
background-image:url(image/tell.jpg);
width:265px;
height:50px;
text-indent:-9999px;
float:right;
}



/*　ヘッダーナビ　*/
#header-navi {
margin:19px 0 0 0px;
padding:0px;
text-indent:-9999px;
clear:both;
}

html>/**/body #header-navi {/*　IE7を除いたモダンブラウザに適用　*/
margin:17px 0 0px 0;
}

#header-navi ul {
margin: 0px;
padding:0px;
}

#header-navi li {
float: left;
margin: 0px;
padding:0px;
list-style:none;
}

#header-navi li a {
display: block;
margin: 0px;
padding:0px;
}


#header-navi-01 a ,
#header-navi-02 a ,
#header-navi-03 a ,
#header-navi-04 a ,
#header-navi-05 a ,
#header-navi-06 a ,
#header-navi-07 a ,
#header-navi-08 a {
background:url(image/header_menu_bg.jpg) no-repeat;
height:58px;
display:block;
text-indent:-9999px;
}

#header-navi-01 a			{ background-position: 0px 0px ; width:78px; }
#header-navi-02 a			{ background-position: -78px 0px ; width:83px; }
#header-navi-03 a			{ background-position: -161px 0px ; width:77px; }
#header-navi-04 a			{ background-position: -238px 0px ; width:105px; }
#header-navi-05 a			{ background-position: -343px 0px ; width:117px; }
#header-navi-06 a			{ background-position: -460px 0px ; width:107px; }
#header-navi-07 a			{ background-position: -567px 0px ; width:112px; }
#header-navi-08 a			{ background-position: -679px 0px ; width:120px; }

#header-navi-01 a:hover		{ background-position: 0px -58px; }
#header-navi-02 a:hover		{ background-position: -78px -58px ; }
#header-navi-03 a:hover		{ background-position: -161px -58px ; }
#header-navi-04 a:hover		{ background-position: -238px -58px ; }
#header-navi-05 a:hover		{ background-position: -343px -58px ; }
#header-navi-06 a:hover		{ background-position: -460px -58px ; }
#header-navi-07 a:hover		{ background-position: -567px -58px ; }
#header-navi-08 a:hover		{ background-position: -679px -58px ; }


/*---------------------------
　トップイメージ　
---------------------------*/
#page-title {
margin:0px auto 0px auto;
_margin: -17px auto 0px auto;
text-align:center;
clear:both;
}

#top-image {
margin: 0px auto 15px auto;
}

*:first-child+html #top-image {
margin:0px 0 15px 0;
text-align:center;

}


/*---------------------------
　サイドバー　
---------------------------*/
#sidebar-a {
background-image:url(image/box_bg01.jpg);
background-repeat:repeat-x;
width:180px;
margin:20px 0 0 20px;
_margin:20px 0 0 10px;
float:right;
}

html>/**/body #sidebar-a {/*　IE7を除いたモダンブラウザに適用　*/
margin:20px 0 14px 20px; 
}

#sidebar-navi {
}

#sidebar-navi ul {
margin:0px;
padding:0px;
list-style:none;
}

#sidebar-navi ul li {
background-image:url(image/sidemenu_bg.jpg);
background-position:bottom;
background-repeat:repeat-x;
margin:0px;
padding:0px;
width:200px;
vertical-align:bottom;
}

#sidebar-navi ul li ul li {
background-image:none;
background-color:#FFFFFF;
margin:0px;
padding:0px;
width:200px;
vertical-align:bottom;
}

#sidebar-navi ul li ul {
border-bottom:#CCCCCC solid 1px;
}

#sidebar-navi ul li a {
color:#333333;
background-image:url(image/mark_yazirusi.gif);
background-position:left;
background-repeat:no-repeat;
margin:0px;
padding:10px 0 10px 27px;
display:block;
}

#sidebar-navi ul li ul li a {
color:#333333;
background-image:url(image/mark_sub_yazirusi.gif);
background-position:left;
background-repeat:no-repeat;
margin:0px 0px 0px 0px;
padding:5px 0 5px 35px;
display:block;
}

/*　サイドバー　バナーリスト（未使用）　*/
#sidebar-banner {
margin:0 0 30px 0;
}

#sidebar-banner ul {
list-style:none;
padding:0px;
margin:0px;
}

#sidebar-banner ul li {
background-image:none;
padding:0px;
margin:5px 0px 5px 4px;
}

/*　サイドバー box　*/
.sidebar-box {
width:200px;
background-image:url(image/box_bg.jpg);
background-repeat:repeat-x;
margin:20px 0 0 0;
}

.sidebar-box h3 {
color:#FFFFFF;
background-image:none;
background-color:#003399;
margin:0 0 10px 0;
padding:8px;
}


/*---------------------------
　コンテンツ　
---------------------------*/

/*　トップページのみ　*/
#content-top {
width:800px;
margin:10px 0px 10px 0px;
clear:both;
}

#content-top p {
padding:0 0px 0 0px;
}

#content-top h2 {
background-image:none;
font-size:1.2em;
margin:0px 0 5px 0;
padding:0 0 5px 0;
line-height:1.4em;
}


/*　メニュー表示無し　*/
#content-no-menu {
width:800px;
margin:20px 20px 14px 20px;
_margin:20px 10px 14px 10px; 
float:left;
}


/*　トップページ以外の全ページ　*/
#content {
width:570px;
margin:20px 20px 14px 0;
_margin:20px 10px 14px 0; 
float:left;
}


.entry {
clear:both;
margin:5px 0 30px 0;
padding:15px;
border:#006 solid 2px;
width:800px;
}

.entry p {
}


.entry-odd {
padding:20px 15px 20px 15px;
margin:0px;
background-color:#EFF4F9;
}

.entry-even {
padding:20px 15px 20px 15px;
margin:0px;
}


p.card a {
	font-size:17px;
	background:#ff3f3e;
	padding:4px 25px 3px 10px;
	display:inline-block;
	border-radius:4px;
	color:#fff;
	margin-right:4px;
	position:relative;
    -moz-transition-duration:0.4s;
    -webkit-transition-duration:0.4s;
    -o-transition-duration:0.4s;
    -ms-transition-duration:0.4s;
}

p.card a::after {
    display: block;
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    top:35% ;
    right: 7px;
    box-sizing: border-box;
    border: 4px solid transparent;
    border-left: 10px solid #fff;
}

p.card a:hover {
	text-decoration:none;
	background:#b40403;
}

/* 新着情報 */
dl.information {
padding: 0;
/*border-bottom: 1px dotted #CCCCCC;*/
}

dl.information dt {
background-image:url(image/mark_01.gif);
background-repeat:no-repeat;
background-position:1em 0.8em;
margin: 0;
padding: 0.7em 0 0.7em 2.5em;
letter-spacing:0.1em;
/*border-top: 1px dotted #CCCCCC;*/
width: 8em;
float: left;
clear:left;
}

dl.information dd {
margin: 0 0 0 8em;
padding: 0.7em 1em;
/*border-top: 1px dotted #CCCCCC;*/
}

.line-odd {
background-color:#EFF4F9;

}


/*---------------------------
　フッター　
---------------------------*/
#footer {
margin:0 0px 0 0px;
padding:0 0 0px 0;
/*width:800px;*/
color:#666666;
clear:both;
}

#footer-site-title {
float:left;
background-image:url(image/logo_jme.jpg);
background-repeat:no-repeat;
text-indent:-9999px;
width:259px;
height:37px;
}

#footer-navi {
float:right;
margin:12px 5px 10px 0;
font-size:13px;
}

#footer-navi a {
text-decoration:none;
color:#333333;
}

#footer-navi a:hover {
text-decoration:underline;
}

#footer-navi ul {
padding:0px;
margin:0px;
list-style:none;
}

#footer-navi ul li {
background:url(image/mark_01.gif) 0px 1px no-repeat;
padding:0 0 0 17px;
margin:0 0 0 15px;
float:left;
}

#copyright {
background-image:url(image/footer_bg.jpg);
background-repeat:repeat-x;
color:#FFFFFF;
background-color:#001F87;
text-align:right;
font-size:80%;
padding:6px;
clear:both;
}



/*---------------------------
   module
---------------------------*/

.box-color1 {
	background-color:#E7F0FA;
	padding:15px;
}



.left-box {
float: left;
width: 280px;
}

/* ボックス　2カラム （未使用）*/
.col2-box {
}

.col2-left-box {
float: left;
width: 400px;
}

.col2-right-box {
float: right;
width: 400px;
}

.col2-wide-box {
clear:both;
}


/* ボックス　3カラム （トップページで使用）*/
.col3-box {
}

.col3-left-box {
background-image:url(image/box_bg.jpg);
background-repeat:repeat-x;
float: left;
width: 250px;
}

.col3-center-box {
background-image:url(image/box_bg.jpg);
background-repeat:repeat-x;
float: left;
width: 250px;
margin: 0 0 0 25px;
}

.col3-right-box {
background-image:url(image/box_bg.jpg);
background-repeat:repeat-x;
float: right;
width: 250px;
}


/* 詳細へ */
span.link-right a {
color:#FFFFFF;
background:#0099CC;
text-align:right;
padding:3px 10px;
float:right;
}


/* トップへ戻るボタン */
.return_navi {
padding:8px 5px 0 0;
_padding:8px 5px 0 0;
clear:both;
}

html>/**/body .return_navi {/*　IE7を除いたモダンブラウザに適用　*/
padding:16px 5px 12px 0;
}

.return_navi a {
float:right;
color:#999999;
font-size:10px;
}

.return_navi a:hover {
color:#999999;
}

.return_navi a:visit {
color:#999999;
}


/*　画像 float　*/
.image_R {
float: right;
margin: 0 0px 1em 15px;
}

.image_L {
float: left;	
margin: 0 30px 1em 0px;
}


/*　float クリア　*/
.clear {
display: block;
clear: both;
}


/*--------------------------------------
	Table Module		
---------------------------------------*/
table {
	margin: 0.5em 0;
	border-width: 1px;
	border-style: solid;
	border-color: #c1ced4 #97a4aa #97a4aa #c1ced4;
	line-height:1.5em;
}

caption {
	display: none;
}

td,th {
	color: white;
	padding : 0.5em 0.5em;
}

th {
	text-align:left;
	font-weight: normal;
	color: white;
	font-weight:bold;
	border-width: 0 1px 1px 0;
	border-style: solid;
	border-color: #666666;
}

td {
	color: #2d3b4e;
	border-width: 1px;
	border-style: solid;
	border-color: #eeeeee #bfc3c4 #bfc3c4 #eeeeee;
}


/*---------------------------------
   decoration
---------------------------------*/
.text_red {
color:#CC0000;
}

.text_orange {
color:#FF6600;
}

.text_blue {
color:#2752B1;
}

.text_green {
color:#77AC20;
}

.text_gray {
color:#999999;
}

.text_kyoutyou {
	color:#F33;
	font-weight:bold;
	font-size:17px;
}


.text_left {
text-align:left;
}

.text_right {
text-align:right;
}

.text_center {
text-align:center;
}


.font_10px {
font-size:10.5px;
}

.font_large {
font-size:1.2em;
}


/*---------------------------------
   form
---------------------------------*/


.form h2 {
	padding-left:25px;
}

.form h2 span {
	margin-left:100px;
}

/*  form  */

.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

p.trial_button {
	margin-top: 30px;
}

p.trial_button a {
	display: block;
	width: 100%;
	background: #ababab;
	color: #fff;
	padding: 15px 0 13px;
	text-align: center;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	text-decoration: none;
	font-size:18px;
}


p.trial_button a:hover {
	background: #ccc;
	text-decoration: none;
	color: #fd0748;
}

.form .goto_top {
	text-align:right;
}

.form .goto_top a {
	display:inline-block;
	padding:10px 40px 10px 15px;
	background: #ababab;
	color:#fff;
	text-decoration:none;
	position:relative;
	border-radius:10px;
}

.form .goto_top a:hover {
	background: #ccc;
	text-decoration: none;
}

.form .goto_top a::after {
	display: block;
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    top: 40%;
    right: 14px;
    box-sizing: border-box;
    border: 4px solid transparent;
    border-left: 10px solid #fff;
}

.form .step {
	margin-top: 20px;
}

.form .step h4 {
	font-size: 16px;
	font-weight: bold;
	color: #666;
}

.form .step ul {
	margin: 15px 0 0;
	padding: 0;
}

.form .step ul li {
	list-style: none;
	float: left;
	width: 174px;
	margin-right: 8px;
	padding: 10px;
	background: #ffe1e9;
	height: 100px;
}

.form .step ul li:nth-child(4){
	margin-right: 0;
}

.form .step ul li dl {
	margin: 0;
	padding: 0;
}

.form .step ul li dl dt {
	margin-bottom: 10px;
	border-bottom: 1px solid #fff;
	padding-bottom: 5px;
	font-size: 18px;
	font-weight: bold;
	color: #333;
}

.form .step ul li dl dd {
	color: #333;
}

.form form dl {
	margin: 15px 10px 0 10px;
}

.form form dl dt {
	float: left;
	font-size:16px;
	padding: 3px 0;
	clear:both;
}

.form form dl dd {
	padding-left: 210px;
	margin-bottom:15px;
	border-bottom:1px solid #dfdfdf;
	padding-bottom:10px;
	font-size:16px;
	color:#454545;
}

.form form dl dd input[type="text"],.form form dl dd input[type="tel"],textarea {
	font-size:16px;
	padding: 5px;
	border:1px solid #bababa;
	color:#454545;
}

.form .form_style {
	margin-top:30px;
}

.form .form_style p {
	background:#efefef;
	padding:8px 10px 6px;
	color:#ff3c00;
	font-size:16px;
	line-height:1.6em;
}

.form .form_style p span {
	font-weight:bold;
}

.form form dl dt span {
	font-size:14px;
	color:#ff3c00;
}

.form form dl dd input.company {
	width:460px;
}

.form form dl dd input.zip {
	width:100px;
}

.form form dl dd input.tel,
.form form dl dd input.tel2,
.form form dl dd input.fax {
	width:280px;
}

.form form dl dd input.email,
.form form dl dd input.address01 {
	width:460px;
}

.form form dl dd textarea.message {
	width:460px;
}

.form form dl dd button.submit {
	background:#ed102f;
	text-align:center;
	width:470px;
	padding:10px;
	border:none;
	cursor: pointer;
	cursor: hand;
	font-size:18px;
	color:#fff;
	position:relative;
}

.form form dl dd button.submit::after {
	display: block;
    position: absolute;
    content: '';
    width: 0;
    height: 0;
    top: 40%;
    right: 100px;
    box-sizing: border-box;
    border: 4px solid transparent;
    border-left: 10px solid #fff;
}

.form form dl dd button:hover.submit {
	background:#f8455e;
}

.form form dl dd button.back_botton {
	background:#dfdfdf;
	text-align:center;
	width:470px;
	padding:8px;
	border:none;
	cursor: pointer;
	cursor: hand;
	font-size:16px;
	color:#333;
	margin-top:10px;
}

.form .errors {
	background:#ffe8e1;
	padding:20px;
	color:#ff3c00;
}

.form form dl dd input[type="text"].error,.form form dl dd input[type="tel"].error {
	background:#ffe8e1;
	border:1px solid #999;
}

.form form dl dd p.error {
	background:#fff;
	margin:0;
	padding: 6px 0 6px;
	font-size:14px;
}

.form #message {
	margin-top:40px;
}

.form form dl dd h5 {
	margin-top:10px;
}

.form form dl dd label {
	display: block;
	margin-bottom:5px;
}

.form form dl dd input[type="radio"] {
	margin-right:5px;
}

.form form dl dd select {
	width: 180px;
	padding: 5px 5px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: 1px solid #999;
	background: #eee;
	background: url(image/arrow01.png) right 50% no-repeat, -webkit-linear-gradient(top, #fff 0%,#efefef 100%);
	background: url(image/arrow01.png) right 50% no-repeat, linear-gradient(to bottom, #fff 0%,#efefef 100%);
	background-size: 20px, 100%;
	border-radius: 0;
}

.form form dl dd select.error {
	border: 1px solid #999;
	background: #ffe8e1;
	background: url(image/arrow01.png) right 50% no-repeat, -webkit-linear-gradient(top, #ffe8e1 0%,#ffe8e1 100%);
	background: url(image/arrow01.png) right 50% no-repeat, linear-gradient(to bottom, #ffe8e1 0%,#ffe8e1 100%);
	background-size: 20px, 100%;
	border-radius: 0;
}

.form form dl dd p.sample {
	background:#fff;
	font-size:14px;
	color:#666;
	padding:5px 0 0;
	margin-bottom:3px;
}

.text_center  {
	margin-top:100px;
	text-align:center;
}
