@charset "utf-8";

/*-------------------------
 Tag
--------------------------*/
body{
	color:#777;
}
p{
}

/*-------------------------
 Layout
--------------------------*/
#container {
	width:100%;
}
#header{
	width:100%;
	margin:0 auto;
	background-image:url(../images/bg/bg_header.png);
	background-position:top;
	background-repeat:repeat-x;
}
#gnav{
	margin: 16px auto 10px;
	width:900px;
	height:58px;
}
#contents{
	width:900px;
	margin:20px auto 0;
}
#footer{
    background-image: url("../images/bg/bg_footer.png");
    background-position: center bottom;
    background-repeat: repeat-x;
    color: #666666;
    height: 123px;
    margin-top: 20px;
    overflow: hidden;
    width: 100%;
}

/*-------------------------
 Layout Grid Layout
--------------------------*/
#contents .layout_1in1{
	margin:0;
	padding:0;
}
#contents .layout_1in1 > div{
	width:858px;
	padding:10px;
	margin:0px;
}
#contents .layout_2in1{
	margin:0;
	padding:0;
}
#contents .layout_2in1 > div{
	width:403px;
	margin:15px 30px 30px 0;
	padding:10px;
}
#contents .layout_3in1{
	margin:0;
	padding:0;
}
#contents .layout_3in1 > div{
	width:258px;
	border:solid 1px #ddd;
	margin:0 30px 30px 0;
	padding:10px;
	height:100px;
}
#contents .layout_3in1 > div p {
	padding:10px 5px;
	text-align:justify;
	font-size:0.9em;
}
#contents .layout_4in1{
	width:21.8%;
	border:dotted 1px #aaa;
}
#contents .layout_5in1{
	width:16.8%;
	border:dotted 1px #aaa;
}

/*-------------------------
 Header
--------------------------*/
#header #header_contents {
	margin: 0 auto;
	width:900px;
}
#header #header_left {
	margin-top:30px;
	width:200px;
}
#header #header_right {
	margin-top:24px;
	width:500px;
}
#header #header_right #header_navi{
}
#header #header_right #header_navi li{
	margin-left:10px;
}
#header #header_right #contact_block{
	margin-top:10px;
	text-align:right;
}

/*-------------------------
 GNAV
--------------------------*/
#gnav ul li{
	line-height: 58px;
	width: 150px;
}
#gnav ul li a{
	color:#fff;
}

/*-------------------------
 BREAD CRUMB
--------------------------*/
#bread_crumb{
}
#bread_crumb ul{
	line-height: 28px;
}

/*-------------------------
 MV
--------------------------*/
#mv{
	margin: 0 auto;
	width:900px;
}

/*-------------------------
 Side Menu
--------------------------*/
#contents_menu{
	width:200px;
	height:100%;
}
#contents_menu .contents_menu_block{
	margin-bottom:10px;
}
#contents_menu .bn_area{
	margin-top:10px;
}
#contents_menu .bn_area img{
	width:200px;
}

/*-------------------------
 Contents
--------------------------*/
#contents_main{
	float:none;
}
#contents_head{
}
#contents_body{
}
#contents_foot{
}

.contents_block_2{
	padding:0px;
}
.contents_block_3{
	margin:10px;
	padding:10px;
}
.contents_block_4{
	margin:10px;
	padding:10px;
}
.contents_block_5{
	margin:0 0 20px 0;
	padding:0px;
}
.contents_block_2 h2,
.contents_block_3 h3,
.bg_headline{
	background-image:url(../images/bg/bg_headline.png);
	background-position:left top;
	background-repeat:no-repeat;
	height:25px;
}
.bg_headline{
	margin-bottom:10px;
}
#contents .contents_block_4 h4{
}
#contents .contents_block_5 h5{
	font-size:0.9em;
	line-height:2em;
}
h2 + p{
	margin:20px 10px;
}
h2 + p.h2_p{
	margin:20px;
}
h3 + p{
	margin:20px 10px 10px;
	max-width: 880px;
}
h5 + p{
	font-size:0.9em;
}
span.frexible_bar{
	background-image:url(../images/bg/bg_headline_right.png);
	background-repeat:no-repeat;
	background-position:right top;
	padding:5px 14px 5px 14px;
	display:block;
}

/*-------------------------
 Contents layout_2column
--------------------------*/
.layout_2column #contents_block_3_1{
	width:550px;
	margin:0;
	padding: 7px 0px 0;
	float:left;
}
.layout_2column #contents_block_3_2{
	float:right;
	margin:0;
	padding:0;
	width:320px;
}
.layout_2column #contents_block_3_2 .contents_block_4{
	margin:0 0 20px;
	padding:0;
}

/*-------------------------
 Contents layout_2column_helf
--------------------------*/
.layout_2column_helf #contents_block_3_1{
	width:430px;
	margin:0;
	padding: 0px 0px 0;
	float:left;
}
.layout_2column_helf #contents_block_3_2{
	float:right;
	margin:0;
	padding:0;
	width:450px;
}
.layout_2column_helf #contents_block_3_2 .contents_block_4{
	margin:0 0 20px;
	padding:0;
}
.layout_2column_helf #contents_block_3_2 .image_block{
	text-align:right;
}

/*-------------------------
 feed_list
--------------------------*/
#contents #contents_main .feed_list .contents_block_4{
	margin:0;
	padding:10px;
	border-bottom: 1px dashed #DDDDDD;
}
#contents #contents_main .feed_list h4{
	float:right;
	width:450px;
	color:#444444;
	font-size:0.9em;
	padding:5px 0 5px 5px;
}
#contents #contents_main .feed_list .list_image{
	float:left;
	width:60px;
	overflow:hidden;
}
#contents #contents_main .feed_list .list_text{
	float:right;
	width:450px;
	color:#999;
	font-size:1em;
}

/*-------------------------
 image_list
--------------------------*/
#contents #contents_main .image_list .contents_block_4{
    border: 1px solid #ddd;
    margin: 15px 20px 15px 0;
    overflow: auto;
    padding: 20px;
}
#contents #contents_main .image_list .contents_block_4.scroll-pane{
    padding-right: 10px;
}
#contents #contents_main .image_list.layout_2in1 .contents_block_4{
    width: 408px;
	height:165px;
}
#contents #contents_main .image_list.layout_1in1 .contents_block_4{
	margin:0px 20px 20px 0;
}
#contents #contents_main .image_list h3{
	margin-bottom:20px;
}
#contents #contents_main .image_list h4{
	float:right;
	width:275px;
	color:#444444;
	font-size:1.1em;
	margin-top:8px;
	border-bottom:dotted 1px #ddd;
	padding:0 0 4px 10px;
	background-image:url(../images/icon/icon_arrow_right.png);
	background-repeat:no-repeat;
	background-position:left 4px;
}
#contents #contents_main .image_list.layout_1in1 h4{
	width:733px;
}
#contents #contents_main .image_list .list_image{
	float:left;
	width:95px;
	overflow:hidden;
	text-align:center;
}
#contents #contents_main .image_list .list_text{
	float:right;
	width:450px;
	color:#999;
	font-size:0.9em;
}
#contents #contents_main .image_list.layout_1in1 .list_text{
	font-size: 1em;
	letter-spacing: -0.5px;
	line-height: 1.6em;
	margin-top: 5px;
	width: 743px;
	color:#666;
}
#contents #contents_main .image_list dl{
    float: right;
    font-size: 1em;
    letter-spacing: -0.5px;
    line-height: 18px;
    margin-top: 5px;
	width:285px;
}
.list_text2{
	font-size: 1em;
	letter-spacing: -0.5px;
	line-height: 1.6em;
	margin-top: 5px;
}
.list_text3{
	font-size:0.9em;
	letter-spacing: -0.6px;
	line-height: 1.4em;
	margin-top: 5px;
	color:#666;
}
.list_qr{
	margin-top: 15px;
	margin-left:15px;
	margin-bottom:15px;
}
.list_btn{
	text-align:center;
	margin-top: 5px;
	margin-bottom:15px;
}
	

/*-------------------------
 table_list
--------------------------*/
#contents #contents_main .table_list .contents_block_4{
	margin:0px 30px 15px 0;
	padding:15px 15px 5px;
	border: 1px solid #ddd;
}
#contents #contents_main .table_list h4{
	color:#444444;
	font-size:0.9em;
	border-bottom:dotted 1px #ddd;
	padding:0 0 4px 10px;
	background-image:url(../images/icon/icon_arrow_right.png);
	background-repeat:no-repeat;
	background-position:left 4px;
}
#contents #contents_main .table_list table{
	margin-top:15px;
}
#contents #contents_main .table_list table th,
#contents #contents_main .table_list table td{
    text-align: left;
	vertical-align:top;
	padding:0 0 10px 0;
}
#contents #contents_main .table_list table th{
    white-space: nowrap;
	width:85px;
}
#contents #contents_main .table_list table td{
	letter-spacing:-0.5px;
}

/*-------------------------
 table_list .list_style_1
--------------------------*/
#contents #contents_main .table_list.list_style_1 > div{
	border:none;
	margin-right:20px;
	width:443px;
	padding:0px;
	margin:0 15px 0 0;
}
#contents #contents_main .table_list.list_style_1 > div table{
	width:100%;
}
#contents #contents_main .table_list.list_style_1 > div table th,
#contents #contents_main .table_list.list_style_1 > div table td{
	border-bottom:dotted 1px #ddd;
	padding:10px 5px 5px;
	letter-spacing:-0.5px;
}

/*-------------------------
 box_list
--------------------------*/
#contents #contents_main .box_list .contents_block_4{
	border: 1px solid #ddd;
}
#contents #contents_main .box_list h4{
	color:#444444;
	font-size:0.9em;
	border-bottom:dotted 1px #ddd;
	padding:0 0 4px 10px;
}

/*-------------------------
 text_list
--------------------------*/
#contents #contents_main .text_list .contents_block_3{
	margin-top:0;
	padding-top:0;
}
#contents #contents_main .text_list .contents_block_4{
	margin:0 0 10px 0;
}
#contents #contents_main .text_list .contents_block_4 h4{
	line-height:2em;
}
#contents #contents_main .text_list .contents_block_4 p{
	font-size:1em;
}
#contents #contents_main .text_list .contents_block_4  .btn_block{
	text-align:right;
}
#contents #contents_main .text_list #contents_block_3_2 .contents_block_4{
	margin-bottom:15px;
}

/*-------------------------
 style_noborder
--------------------------*/
#contents #contents_main .contents_block_4.style_noborder{
	width:278px;
	border:solid 1px #fff;
	margin:0 30px 20px 0;
	padding:0px;
	min-height:130px;
}
#contents #contents_main  .contents_block_4.style_noborder h4 {
	margin: 5px 15px;
}
#contents #contents_main  .contents_block_4.style_noborder p {
	border-top:dotted 1px #ddd;
	padding:10px;
	text-align:justify;
	font-size:0.85em;
	letter-spacing:-0.5px;
}
#contents #contents_main  .contents_block_4.style_noborder .btn_block {
	position:absolute;
	bottom:10px;
	right:10px;
	padding:0;
	border:0;
}

/*-------------------------
 style_centerbar
--------------------------*/
#contents #contents_main .contents_block_3.style_centerbar{
	border:solid 1px #fff;
	margin:0 30px 0px 0;
	padding:0px;
	min-height:130px;
}
#contents #contents_main  .contents_block_3.style_centerbar .contents_block_4 {
	border-right:dotted 1px #ddd;
	width:417px;
	margin-right:25px;
	margin-top:0px;
	margin-bottom:0px;
}
#contents #contents_main  .contents_block_3.style_centerbar h4 {
	margin: 5px 15px;
}
#contents #contents_main  .contents_block_3.style_centerbar + p {
	padding:0px;
	text-align:justify;
	font-size:1em;
	letter-spacing:-0.5px;
	width:880px;
}

/*-------------------------
 Contents sub
--------------------------*/
.contents_sub .bn_area{
	margin-bottom:10px;
}
.contents_sub .bn_area img{
	width:200px;
}

/*-------------------------
 footer
--------------------------*/
#footer #footer_wrap {
	width:900px;
	margin:0 auto;
	color:#888;
}
#footer #footer_top {
	text-align:right;
	height:24px;
}
#footer #footer_top ul{
	margin: 0;
	width: 100%;
}
#footer #footer_top ul li{
	display: inline;
	margin-left:15px;
}
#footer #footer_left{
	margin-top:5px;
}
#footer #footer_right{
	margin-top:15px;
	width: 100%;
	text-align:right;
	font-size: 0.85em;
}
#footer_bottom{
	height:23px;
	width:100%;
	float:right;
}
#footer address {
	text-align:right;
	font-size:0.7em;
}
#footer .company_name{
	font-weight:bold;
}
#footer .company_address{
	margin-top:2px;
	font-weight:bold;
}
#footer .company_name span{
	font-size:1.2em;
	margin-left:5px;
}
#footer .comapny_contact{
	margin-top:-4px;
	font-weight:bold;
}
#footer .comapny_contact p{
	display:inline;
	margin-left:5px;
}

/*-------------------------
 Form
--------------------------*/
#form_contact th p {
	width:	117px;
}
#btn_back {
    color: #c8161d;
}

#form_contact .name_need, #form_contact .require {
    color: #c8161d;
}
#form_contact .name_ja {
	font-size:0.85em;
}
#form_contact .name_en {
	font-size:0.8em;
	line-height:0.8em;
	color:#666;
}
#form_contact table {
	margin:10px;
}
#form_contact table th,
#form_contact table td{
    padding: 10px 5px;
    vertical-align: top;
}
#form_contact table th{
	white-space: nowrap;
}
#form_contact table label{
	margin:0 0 0 9px;
	font-size:0.85em;
}
#form_contact table label input{
	margin:2px 0 2px 3px;
}
#form_contact table label input{
	margin:2px 0 2px 3px;
}
#form_contact{
	margin: -10px 5px 0;
}
#form_contact table{
	margin-top:0px;
}
#form_contact textarea,
#form_contact input[type=text]{
	width:270px;
}
#form_contact input[type=text].size_auto{
	width:auto;
}
#contents #contents_main #form_contact .txt_headline{
	background-position:left 7px;
	float: right;
}
#contents #contents_main #form_contact .txt_headline a{
	font-size:0.7em;
	text-decoration:none;
}
#contents #contents_main #form_contact .txt_headline a:hover{
	text-decoration:underline;
}
.btn_area{
	margin-left:140px;
}
.btn_area .info{
    display: inline;
    font-size: 0.8em;
    margin-left: 5px;
	vertical-align: 6px;
}
#contents .form_result{
	text-align:center;
	height:300px;
}
#mv .form_result{
	text-align:center;
	margin: -230px 0 100px;
}
#mv .form_result .reslut_title{
	font-size:20px;
	font-weight:bold;
	margin-bottom:30px;
}
#mv .form_result .reslut_message{
	margin-bottom:20px;
}

/*-------------------------
 message_block
--------------------------*/
.message_block{
	background-color:#f6f6f6;
	padding:15px;
	margin:0px;
}
.message_block h3{
	font-weight:bold;
}
.message_block p{
	font-size: 1em;
	letter-spacing: -0.5px;
	text-align: justify;
	margin:0;
}
.message_block .btn_block{
	float:right;
	margin-top: -5px;
}
.message_block .btn_block span{
	vertical-align: 4px;
	margin-right:7px;
}

/*-------------------------
 Custmize basic style
--------------------------*/
.txt_red {
	color: #c8161d;
	font-weight: bold;
}
.txt_red a{
	color: #c8161d;
	text-decoration:underline;
}
#contents #contents_main .txt_headline {
	font-size:1.2em;
	padding:0 0 0 10px;
	background-image:url(../images/icon/icon_arrow_right.png);
	background-repeat:no-repeat;
	background-position:left 4px;
}
#contents #contents_main .txt_headline_nostyle {
	font-size:0.9em;
	padding:0 0 0 0px;
	line-height:2em;
}

/*-------------------------
 Custmize basic style
--------------------------*/
body #lightbox {
}
body #lightbox .lb-dataContainer{
	position: absolute;
	top: -50px;
	left:0;
}
#lb_wrapper{
	display:inline-block;
	position:relative;
}
.lb-nav {
	text-align:right;
}


