/* Left & Right alignment */
.left {
	float:left;
}
.right {
	float:right;
}

/* properties ======================================================== */
#gallery_top {
	background-color:#000;
	position:relative;
	width:898px;
	margin:0 auto;
}
/* ============================= Driver layout ====================== */
#main1 {
	background:url("../images/dr1_bg.jpg") no-repeat top;
	position:relative;
	width:898px;
	margin:0 auto;
}
#main1 .container_wide1 {
	width: 898px;
	height:600px;
}
#main1 .mgrid1_l,.mgrid1_r {
	display:inline;
	position: relative;
}

#main1 .container_wide1 .mgrid1_l {
	float: left;
	width:460px;
}

#main1 .container_wide1 .mgrid1_r {
	margin-top:140px;
	float: left;
	width:350px;
	margin-left:32px;
}
#main1 p {
	font-size: 12px;
	line-height:2.0em;
}


#main2 {
	background:url("../images/dr2_bg.jpg") no-repeat top;
	position:relative;
	width:898px;
	margin:0 auto;
}
#main2 .container_wide2 {
	margin-bottom:0px;
	width: 898px;
	height:600px;
}
#main2 .mgrid2_l,.mgrid2_r {
	display:inline;
	position: relative;
}

#main2 .container_wide2 .mgrid2_l {
	float: left;
	width:460px;
}

#main2 .container_wide2 .mgrid2_r {
	margin-top:140px;
	float: left;
	width:350px;
	margin-left:32px;
}
#main2 p {
	font-size: 12px;
	line-height:2.0em;
}


#main_cont {
	position:relative;
	width:898px;
	margin:0 auto;
}
#main_cont .container_wide_cont {
	margin-bottom:0px;
	width: 898px;
}
#main_cont .mgrid_cont_l,.mgrid_cont_r {
	display:inline;
	position: relative;
}

#main_cont .container_wide_cont .mgrid_cont_l {
	margin-top:10px;
	float: left;
	width:400px;
	margin-left:32px;
	margin-bottom:30px;
}

#main_cont .container_wide_cont .mgrid_cont_r {
	margin-top:65px;
	float: left;
	width:400px;
	margin-left:32px;
}
#main_cont p {
	font-size: 16px;
	line-height:2.0em;
}

#career_cont {
	padding:5px 5px;
	font:12px/21px;
	font-size: 12px;
	line-height: 1.8em;
	font-weight: normal;
	font-family: "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic Std", "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Std", "ＭＳ Ｐゴシック", "メイリオ", "Osaka" "Arial", "Helvetica", sans-serif; 
}


#career_cont dl{
	border-bottom-width: 1px;
	border-right-style: none;
	border-bottom: 1px solid #999;
	border-left-style: none;
	margin-bottom:0.2em;
}

#career_cont dl dt{
	clear: both;
	float:left;
	width:9.5em;
	letter-spacing:0.3em;
}

#career_cont dl dd{
	margin-left:8em;
	letter-spacing:0.2em;
}

#career_cont dl dt,#career_cont dl dd{
	line-height:1.4em;
	margin-bottom:0.3em;
}
h2 { font-size: 40px; font-weight:bold; line-height: 1.0; lemcolor: #fff; margin-bottom: 2px; padding-bottom: 3px; text-align: left; color: #CC0033; text-shadow:0 1px 1px #333;text-decoration: none; font-family: "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic Std", "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Std", "ＭＳ Ｐゴシック", "メイリオ", "Osaka", sans-serif; }
h4 { font-size: 20px; line-height: 2.0;   margin-bottom: 3px; padding-bottom: 3px; text-align: left;text-decoration: none; font-family: "Arial", "Helvetica","Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic Std", "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Std", "ＭＳ Ｐゴシック", "メイリオ", "Osaka", sans-serif; }


/* ============================= Machine layout ====================== */


#page_spinner {
	padding:30px;
	text-align: left;
	color: #333;
	vertical-align: top;
	width:898px;
	margin:10 auto;
	z-index:0;
}
#container_bottom120 { 
	margin-top: 20px;
	border-bottom-width: 1px;
	border-right-style: none;
	border-bottom-style: dotted;
	border-left-style: none;
	margin-bottom:1.2em;
 }

.grid_l,
.grid_r {
	display:inline;
}
.container_12 {
	margin-top: 20px;
	margin-left:120px;
	margin-right:118px;
	width: 449px;
	z-index:0;
}

.container_12 .grid_l {
	float: left;
	width:449px;
	margin-right:2px;
}

.container_12 .grid_r {
	float: right;
	width:449px;
}



#spec_cont {
	padding:10px 10px;
	font-size: 11px;
	line-height: 1.4em;
	font-weight: normal;
}

#spec_cont p {
	margin-bottom:1.2em;
}
#spec_cont dl{
	border-bottom-width: 1px;
	border-right-style: none;
	border-bottom-style: dotted;
	border-left-style: none;
	margin-bottom:1.2em;
}

#spec_cont dl dt{
	clear: both;
	float:left;
	width:12em;
}

#spec_cont dl dd{
	margin-left:1.2em;
}

#spec_cont dl dt,#spec_cont dl dd{
	line-height:1.2em;
	margin-bottom:1.2em;
}


div#noteArea {
	position: relative;
	width: 800px;
	height: 400px;
}

div#noteArea p.btn1 {
	position: absolute;
	top: 155px;
	left: 115px;
}

div#noteArea p.btn2 {
	position: absolute;
	top: 155px;
	left: 720px;
}
div#noteArea p.btn3 {
	position: absolute;
	top: 135px;
	left: 455px;
}
div#noteArea p.btn4 {
	position: absolute;
	top: 139px;
	left: 598px;
}
div#noteArea p.btn5 {
	position: absolute;
	top: 135px;
	left: 255px;
}
div#noteArea p.btn6 {
	position: absolute;
	top: 90px;
	left: 133px;
}


#control{
	width:874px;
	height:35px;
	margin-left:1px;
}
#controlBox{
	float:right;
	padding-top:0px;
	height:35px;
}

#controlBox dl{
	display:inline;
	margin:0 0px 0px 0;
	float:left;
}

#controlBox dt{
	text-align: center;
	margin:0px;
	padding:0px;
	height:35px;
	display:block;
}

#controlBox dd{
	text-align: center;
	margin:0px;
	clear:both;
}

#controlBox a{
	margin:0;
	padding:0;
}




/*slider*/
.slider_container {background: #b9b9b9; margin: 0 auto;}
.camera_wrap {height: 481px;}

/*arrows*/
.camera_prev, .camera_next, .camera_commands {
	opacity: 1 !important;
}
.slider_container .camera_prev {
	left: auto;
	left: 0px;
	bottom: 2px;
	top: auto;
}
.slider_container .camera_next {
	left: 43px;
	bottom: 2px;
	top: auto;
}

.slider_container .camera_prev > span,
.slider_container .camera_next > span {
	moz-transition: background 0.3s ease-out;
    -o-transition: background 0.3s ease-out;
    -webkit-transition: background 0.3s ease-out;
}
.slider_container .camera_prev > span {
	display: block;
	height: 42px;
	width: 43px;
	text-indent: -5000px;
	background: url(../images/arrows-1.gif) 0 bottom no-repeat;
}
.slider_container .camera_prev > span:hover {
	background: url(../images/arrows-1.gif) 0 0 no-repeat;
}
.slider_container .camera_next > span {
	display: block;
	display: block;
	height: 42px;
	width: 43px;
	text-indent: -5000px;
	background: url(../images/arrows-1.gif) right bottom no-repeat;
}
.slider_container .camera_next > span:hover {
	background: url(../images/arrows-1.gif) right 0 no-repeat;
}

.row-1 h2 {padding-top: 76px;}
.row-1 img  {padding: 0px 0 23px;}


/************Content***********/

h2 strong {font-weight: bold;}
.box-1 {border-top: 1px solid #888;}

h2 + .box-1 {border-top: none;}

h2 + h3 {padding-top: 13px;}
.text-3 + .btn {margin-top: 40px;}

.block-1 { padding-top: 45px; padding-bottom: 43px;}
.block-2 { padding-bottom: 43px;}

.w1 { display: block;}

.videogallery { margin-top: 26px; padding-bottom: 44px;}


.box-2 {float: left; width: 280px; margin-left: 1px;}
.box-2:first-child {margin-left: 0;}
.box-2 .various {
	position:relative;
	display:block;
}
.box-2 .various:after {
	background: url(../images/arrow-4.png) center center no-repeat #fff;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	opacity: 0;
	filter: alpha(opacity=0);
	left: 0;
	top: 0;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.box-2 .various:hover:after {
	opacity:0.4;
	filter: alpha(opacity=40);
	-webkit-transition:opacity .2s linear;
	-moz-transition:opacity .2s linear;
	-o-transition:opacity .2s linear;
	transition:opacity .2s linear;
	background: #000000 url(../images/arrow-4.png) center center no-repeat;
}


/*p-gallery*/

.gallery {margin-top: -5px;}
.gallery h3 {padding-top: 16px; padding-bottom: 14px;}
.gallery p {line-height: 18px;}
.gallery > div {margin-top: 5px;}


/*p-about*/

.b-people > div { margin-top: 21px;}
.b-people .wrapper { margin-bottom: 17px;}

.testimonials h2 {padding-top: 57px;}
.testimonials .t-block {padding: 15px 0 0 23px; color: #787878; font-style: italic; background: url(../images/bg-7.png) 0 20px no-repeat;}
.t-block .text-2 {padding-top: 5px; font-style: normal; padding-left: 4px;}


/*p-services*/

h2 + .text-5 {
    padding-top: 13px;
}
.text-5 + .text-2 { padding-top: 6px;}
aside .text-5,
aside .text-2 { padding-right: 35px;}
aside p { padding-bottom: 18px;}

.gallery-1 { margin-top: -5px;}
.gallery-1 h3 { padding-top: 26px; padding-bottom: 13px;}
.gallery-1 > div { margin-top: 27px;}

/*p-privacy*/

h2 + .color-3 {padding-top: 16px;}

.textpage p {padding-bottom: 21px;}

/************Footer************/

footer { margin-bottom: 40px;}
.f-address {
	margin-top: 60px; 
	font-size: 15px; 
	line-height: 26px; 
	font-family: Verdana, Arial, sans-serif;
	padding-left: 28px;
	background: url(../images/icon-1.png) 0 4px no-repeat;
	color: #878787;
}

.list-services { display: inline-block; margin-top: 60px; }
.list-services li {
	display: inline-block;
	float: left;
}

	[class*="list-services-"] {
		text-decoration: none;
		display: block;
		height: 30px;
		width: 30px;
		background: url(../images/soc-icons.jpg) no-repeat;
		background-position-x: -25px;
		background-position-y: 0px;
		-webkit-transition: all 0.2s ease-out;
	    -moz-transition: all 0.2s ease-out;
	    -o-transition: all 0.2s ease-out;
	    -ms-transition: all 0.2s ease-out;
	    transition: all 0.2s ease-out;
		margin-right: 2px;
	}
	.list-services-1 { background-position: 0px 0px;}
	.list-services-2 { background-position: -32px 0px;}
	.list-services-3 { background-position: -64px 0px;}
	.list-services-4 { background-position: -96px 0px;}
	.list-services-5 { background-position: -137px 0px;}
	
	[class*="list-services-"]:hover { opacity: 0.5;}
	
.f-last {
	margin-top: 59px;
	text-align: center;
	font-family: Verdana, Arial, sans-serif;
	font-size: 11px;
	line-height: 16px;
	color: #a1a1a1;
}
.f-logo img {padding-bottom: 10px;}



/*touch-touch*/
.magnifier {
	position:relative;
	display:block;
}
.magnifier:after {
	background: url(../images/magnifier.png) center center no-repeat #000000;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	opacity: 0;
	filter: alpha(opacity=0);
	left: 0;
	top: 0;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.magnifier:hover:after {
	opacity:0.4;
	filter: alpha(opacity=40);
	-webkit-transition:opacity .2s linear;
	-moz-transition:opacity .2s linear;
	-o-transition:opacity .2s linear;
	transition:opacity .2s linear;
}


/*toTop*/
#toTop {
	display:none;
	text-decoration:none;
	position:fixed;
	cursor:pointer;
	overflow:hidden;
	width: 48px;
	height: 24px;
	border:none;
	text-indent:-999px;
	z-index:20;
	background: url(../images/ui.totop.png) 0 0 no-repeat;
	margin-right: -670px !important;
	right: 50%;
	bottom: 30px;
	font: bold 18px/18px Arial, sans-serif;
	color: #464646;
}

	#toTop:hover {
		display:block;
		overflow:hidden;
		float:left;
		color: #000000;
		background-position: center bottom;
	}

	#toTop:active, #toTop:focus {outline:none;}


/*==================================RESPONSIVE LAYOUTS===============================================*/

@media only screen and (max-width: 1097px) {
	.bg-2-top, .border-2, .bg-3, .p5 {	width: 100%;}

}

@media only screen and (max-width: 995px) {
	.slider_container {width: 100%;}
	.camera_wrap {height: 358px;}
	.box-2 {float: left; width: 48%; margin-left: 4%;}
	.gallery-1 h3 { font-size: 16px;}
}
@media only screen and (max-width: 767px) {
	.camera_wrap {height: 274px;}
	.bg-2-main .grid_inside { margin-left: 0px; margin-right: 0;}
	.border-1:after {display: none;}
	.block-1 {padding: 10px 0;}
	.bg-3 {padding: 30px 0;}
	.b-people > div {width: 45% !important; padding-left:2%; padding-right: 3%;}

	.wrap-767 { width: 100%; margin-right: 0px; margin-bottom: 15px;}
	.gallery > div, .gallery-1> div {width: 46%!important; padding-left: 2%!important;padding-right: 2%!important;}

	.camera_wrap {margin-top: 15px;}
	footer .aligncenter, .f-last {text-align: center!important;}


}
@media only screen and (max-width: 480px) {
	.camera_wrap {height: 200px;}
}
@media only screen and (max-width: 320px) {
	.camera_wrap {height: 200px;}

	.gallery > div, .gallery-1> div {width: 100%!important; padding-left: 0 !important;padding-right: 0 !important;}
	.list-1 { padding-left: 10px;}
	.gallery-1 .box_inner {padding: 0 10px;}
}

#lay1_table { 
	font-size: 12px;
	margin-top: 2px;
	margin-bottom: 1.5em;
	margin-left: 0px;
	padding: 10px;
	width: 460px;
}

#lay1_table tr td {
	padding: 2px 2px;
	vertical-align: top;
	color: #333;
	background: #fff;
	empty-cells: show;
}
#lay1_table tr td.sdate {
	padding-left: 1px;
	padding-right: 1px;
	font-weight: bold;
}

#lay1_table tr td.sr {
	text-align:right;
}
#lay1_table tr td.sday {
	font-size: 14px;
	padding-left: 1px;
	padding-right: 1px;
}

#lay1_table tr td.sevnt {
	padding-left: 10px;
	font-size: 9px;
}
#lay1_table tr td.right {
	padding-left: 1px;
	padding-right: 1px;
	text-align:right;
	font-size: 9px;
}


#lay2_table {
	font-size: 12px;
	margin-top: 2px;
	margin-bottom: 1.5em;
	margin-left: 0px;
	padding: 0px;
	width: 460px;
}

#lay2_table tr td {
	padding: 3px 4px;
	vertical-align: middle;
	color: #333;
	background: #fff;
	border-bottom: 1px solid #ccc;
	empty-cells: show;
}
#lay2_table tr td.sw {
	padding-left: 2px;
	padding-right: 2px;
	font-weight: bold;
}


#lay2_table tr td.si {
	padding-left: 10px;
	padding-right: 1px;
}


#lay2_table tr td.ss {
	padding-left: 10px;
	font-size: 9px;
}


#lay3_table { 
	font-size: 12px;
	margin-top: 0.5em;
	margin-bottom: 0.5em;
	margin-left: 0px;
	padding: 2px;
}

#lay3_table tr td {
	padding: 1px 1px;
	vertical-align: middle;
	text-align:center;
	color: #333;
}
#lay3_table tr td.idx {
	padding-left: 1px;
	padding-right: 1px;
	font-size: 12px;
	font-weight: bold;
}
#lay3_table tr td.hd {
	padding-left: 1px;
	padding-right: 1px;
	font-size: 11px;
	font-weight: bold;
}
#lay3_table tr td.right {
	padding-left: 1px;
	padding-right: 1px;
	text-align:right;
	font-size: 9px;
}


#lay4_table {
	font-size: 12px;
	margin-top: 2px;
	margin-bottom: 1.5em;
	margin-left: 0px;
	padding: 0px;
}

#lay4_table tr td {
	padding: 3px 4px;
	vertical-align: top;
	text-align:left;
	color: #333;
	empty-cells: show;
}
#lay4_table tr td.ss {
	padding-left: 10px;
	font-size: 9px;
}


#lay5_table {
	width: 100%;
	font-size: 12px;
	margin-top: 2px;
	margin-bottom: 1.5em;
	margin-left: 0px;
	padding: 0px;
}

#lay5_table tr td {
	background: #e1e6e6;
	padding: 3px 4px;
	vertical-align: middle;
	text-align:left;
	color: #333;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	empty-cells: show;
}
#lay5_table tr td.sw {
	padding-left: 2px;
	padding-right: 2px;
	font-weight: bold;
}


#lay5_table tr td.si {
	padding-left: 10px;
	padding-right: 1px;
}


#lay5_table tr td.ss {
	padding-left: 10px;
	font-size: 9px;
}

#lay6_table {
	width: 100%;
	font-size: 12px;
	margin-top: 2px;
	margin-bottom: 1.5em;
	margin-left: 0px;
	padding: 0px;
}

#lay6_table th {
	color: #FFFFF3;
	background: #474747;
	text-align:center;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

#lay6_table tr.sel1 {
	background: #dfdfdf;
}
#lay6_table tr.sel2 {
	background: #fff;
}
#lay6_table tr td {
	padding: 3px 4px;
	vertical-align: middle;
	text-align:center;
	color: #333;
	border-top: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	empty-cells: show;
}
#lay6_table tr td.sw {
	padding-left: 2px;
	padding-right: 2px;
	font-weight: bold;
}


#lay6_table tr td.si {
	padding-left: 10px;
	padding-right: 1px;
}


#lay6_table tr td.ss {
	padding-left: 10px;
	text-align:left;
}
/*-----list-----*/
.list1 {
	display:inline-block;
	margin-top:30px;
	margin-left:9px;
}
.list1 li {
	margin-bottom:5px;
}
.list1 a {
	font:13px;
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Lucida Grande", "Hiragino Kaku Gothic Pro", Verdana, Arial,"ＭＳ Ｐゴシック", sans-serif;
}
.list1 li a:hover {color: #B5182D;}
.list1 li img {
	margin-right:9px;
	margin-top:5px;
}

.list2 {
	display:inline-block;
	margin-top:2px;
	margin-left:17px;
	margin-bottom:8px;
}
.list2 li {
	margin-bottom:6px;
}
.list2 a {
	font:13px;
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Lucida Grande", "Hiragino Kaku Gothic Pro", Verdana, Arial,"ＭＳ Ｐゴシック", sans-serif;
}
.list2 li a:hover {color: #B5182D;}
.list2 li img {
	margin-right:9px;
	margin-top:5px;
}


table.pt {
	margin-top:-10pt;
}
table.pt th,
table.pt td {
	padding: 5px;
}

table.pt th {
	color:#fff;
	text-align: center;
}

table.pt td {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	vertical-align:top;
}

table.pt td.center {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	text-align: center;
}

table.pt td.right {
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	text-align: right;
}

.txt14 {
	font-size: 14px;
	line-height: 1.4em;
}
.txt14b {
	font-size: 14px;
	line-height: 1.4em;
	font-weight:bold;
}


#contents .lt2 img {
	width:  260px;
}
.iphone #contents .lt2 img,
.android #contents .lt2 img {
	width:  100%;
}
