@charset "EUC-JP";
* {
	margin:0;
	padding:0;
	list-style-type: none;
}
body {
  background-color: #FFFFFF;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #000000;
  text-decoration: none;
}
.en {
 font-family: Verdana; 
 }
a:link  {
	color: #222222;
	text-decoration: none;
}
a:visited {
	color:#444444;
	text-decoration: none;
}
a:hover {
	color:#000000;
	background-color: #DDDDDD;
	text-decoration: none;
}
img { border: 0;  
}
.clear {
	clear:both;
}

#wrapper {
  width: 920px;
  padding: 0 20px;
  margin: 0 auto;
}
#indexheaderwrapper {
	height: 300px;
}
#indexheader {
	visibility: hidden;
	height: 100px;
}


#header {
  height: 100px;
  position: relative;
  overflow: hidden;
  text-align: center;
  width: 980px;
}

#header h1 {
  width: 121px;
  height: 100px;
  display: block;
  overflow: hidden;
  font-size: 18px;
  padding: 0 0 0 5px;
  vertical-align: bottom;
}
#header h1 a img {
  width: 111px;
  height: 100px;
  display: block;
}
h2 {
  font-size: 12pt;
  margin: 0 0 5px 0;
  font-weight: normal;
}
h3 {
  font-size: 12pt;
  margin: 0 0 5px 0;
  font-weight: normal;
}
/*メインメニュー*/
ul#main_menu  {
  position: absolute;
  top: 25px;
  left: 140px;
  padding: 0 40px 0 40px;
  border-bottom: 1px solid #ccc;
  letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
ul#main_menu li {
  list-style: none;
  display: inline-block;
  width: 140px;
  letter-spacing: 1px;
  font: bold 14px/1.2 Arial, Helvetica, sans-serif;
  margin: 0;
  vertical-align: bottom;
}
ul#main_menu li a {
  padding: 3px 0 1px 0;
  margin: 0;
  display: block;
}
ul#main_menu li.menu { 
  display: none; 
}

/*トップページ用メインメニュー指定*/
body.index #header h1 {
  display: none; 
}
body.index ul#main_menu {
  position: absolute;
  top: 25px;
  left: 0;
}
body.index ul#main_menu li.menu {
  display: inline-block;
  padding: 0 20px 0 0;
  width: 120px;
}
body.index ul#main_menu li.menu a {
  background-color: #fff;
  font-weight: normal;
}

/*メインメニューカレント指定*/
body.works ul#main_menu li a.works,
body.index ul#main_menu li a.top,
body.profi ul#main_menu li a.profile,
body.proce ul#main_menu li a.process,
body.conta ul#main_menu li a.contact {
  margin: 0 0 -1px 0;
  border-bottom: 2px solid #000;
  padding: 3px 0 0 0;
}

/*
body.index ul#main_menu li a.top {
  background-color: #999;
  color: #fff;
}
body.profile ul#main_menu li a.profile {
  background-color: #999;
  color: #fff;
}
body.works ul#main_menu li a.works {
  background-color: #999;
  color: #fff;
}
body.process ul#main_menu li a.process {
  background-color: #999;
  color: #fff;
}
body.contact ul#main_menu li a.contact {
  background-color: #999;
  color: #fff;
}
*/

/*ワークスメニュー*/
ul#works_menu  {
  position: absolute;
  top: 62px;
  left: 140px;
  padding: 0 10px 0 10px;
  border-bottom: 1px solid #ccc;
  letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
ul#works_menu li {
  list-style: none;
  display: inline-block;
  letter-spacing: 0;
  margin: 0;
  font: 14px/1.1 Arial, Helvetica, sans-serif;
  vertical-align: bottom;
}
ul#works_menu li a {
  padding: 3px 0 1px 0;
  display: block;
  height: 18px;
}
ul#works_menu li a.we {
  width: 176px;
}
ul#works_menu li a.ryo {
  width: 120px;
}
ul#works_menu li a.res {
  width: 99px;
}
ul#works_menu li a.caf {
  width: 94px;
}
ul#works_menu li a.sho {
  width: 71px;
}
ul#works_menu li a.beo {
  width: 74px;
}
ul#works_menu li a.hou {
  width: 63px;
}
ul#works_menu li a.oth {
  width: 63px;
}

/*ワークスメニュー日本語表示*/
ul#works_menu li a span.en{ display:block; }
ul#works_menu li a:hover span.en{ display:none; }
ul#works_menu li a span.jp{ display:none; }
ul#works_menu li a:hover span.jp{
  display: block;
  font-size: 12px;
  padding: 3px 0 0 0;
}

/*ワークスメニューカレント指定*/
body.index ul#works_menu, 
body.profi ul#works_menu, 
body.proce ul#works_menu, 
body.conta ul#works_menu {
  display: none;
}

body.works_we ul#works_menu li a.we, 
body.works_ry ul#works_menu li a.ryo, 
body.works_re ul#works_menu li a.res, 
body.works_ca ul#works_menu li a.caf, 
body.works_sh ul#works_menu li a.sho, 
body.works_be ul#works_menu li a.beo, 
body.works_ho ul#works_menu li a.hou, 
body.works_ot ul#works_menu li a.oth {
  margin: 0 0 -1px 0;
  border-bottom: 2px solid #000;
  padding: 3px 0 0 0;
}
/*
body.works_we ul#works_menu li a.we, 
body.works_ry ul#works_menu li a.ryo, 
body.works_re ul#works_menu li a.res, 
body.works_ca ul#works_menu li a.caf, 
body.works_sh ul#works_menu li a.sho, 
body.works_be ul#works_menu li a.beo, 
body.works_ho ul#works_menu li a.hou, 
body.works_ot ul#works_menu li a.oth {
  background-color: #888;
  color: #fff;
}*/


#contents h1 {
  margin-top: -40px;
	display: block;
	top: 40%;
	position: absolute;
	text-align: center;
	width: 920px;
}
#con {
  text-align: center;
  width: 920px;
  margin-top: 60px;
  padding-top: 0px;
  font-size: 16px;
  color: #666666;
  position: absolute;
  bottom: 25%;
}
#footer {
  height: 24px;
  text-align: center;
  margin: 0 auto;
  bottom: 0px;
  clear: both;
  padding-top: 20px;
  width: auto;
}
#copyright {
	font-size: 8pt;
	padding: 20px;
	border-top: 1px solid #CCCCCC;
}


#toppage_footer {
  height: 60px;
  text-align: center;
  margin: 0 auto;
  bottom: 0px;
  clear: both;
  padding-top: 20px;
  position: absolute;
  width: 920px;
}

#contents {
  margin: 0;
  padding: 0;
  overflow: hidden;
}


.contentsbox .logo {
  margin: 0 0 20px 0;
  position: relative;
  height: 50px;  
}
.contentsbox .logo.first {
  margin: 0 0 0 0;
}
.contentsbox .logo.hight_40px {
  height: 40px;  
}
.contentsbox .logo.size70 {
  height: 70px; 
}
.contentsbox .logo .box {
  position: absolute;
  bottom: -1px;
}
.contentsbox .logo .box img {
  display: inline-block;
    /display: inline;  /* IE用ハック */
    /zoom: ;  /* IE用ハック */
  padding: 0;
  margin: 0 12px 0 0;
  vertical-align: bottom;
  line-height: 1;
}
.contentsbox .logo .box img.right_m_6px {
  margin: 0 6px 0 0;
}
.contentsbox .logo .box img.right_m_0px {
  margin: 0 0 0 0;
}
.contentsbox .logo img.bottom_m_6px {
  margin: 0 12px 6px 0;
}
.contentsbox .logo img.bottom_m_2px {
  margin: 0 12px 2px 0;
}
.contentsbox .logo h2.setumei {
  display: inline-block;
    /display: inline;  /* IE用ハック */
    /zoom: ;  /* IE用ハック */
  font-size: 9pt;
  line-height: 1;
  margin: 0;
  vertical-align: bottom;
}
.contentsbox .logo h2.setumei p {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  display: block;
  font-weight: normal;
  line-height: 1.2;
  vertical-align: baseline;
}
.contentsbox .logo h2.setumei p.extra {
  padding: 10px 0 2px 0;
}
.contentsbox .logo h2.setumei p.extra.top_p_2px {
  padding: 4px 0 2px 0;
}

#contents.process { margin: 40px 0 20px 160px; }
#contents.process h2 { margin: 0 0 30px 0; }




#contents.profile { margin: 40px 0 20px 160px; }
#contents.profile h2 {
  margin: 0;
  float: left;
  width: 180px;
}
#contents.profile .box {
  margin: 0 0 0 0;
  float: left;
  overflow: hidden;
}
#contents.profile img.profile_img {
  margin: 3px 0 0 0;
  float: left;
}
#contents.profile .profile_txt {
  margin: 0 0 30px 160px;
  overflow: hidden;
}
#contents.profile .profile_txt h2 {
  font-size: 12pt;
  margin: 0 0 5px 0;
  font-weight: normal;
}
#contents.profile .profile_txt ul li {
  font-size: 9pt;
  line-height: 1.8;
}
#contents.profile .profile_txt ul li .name { font-size: 11pt;  
}

dl.policy {
  margin: 0 0 30px 0;
  overflow: hidden;
}
dl.policy dt  {
  font-size: 14pt;
  display: block;
  width: 38px;
  clear: left;
  float: left;
  line-height: 1.9;
  color: #929292;
}
dl.policy dd  {
  font-size: 10pt;
  display: block;
  padding: 8px 0 0 0;
  float: left;
}
.staff_txt {
  margin: 0 0 0 160px;
  font-size: 10pt;
  line-height: 2;
}


#contents.contact { margin: 40px 0 60px 160px; }
#contents.contact h2 {
  margin: 0 0 30px;
  float: left;
  width: 180px;
}
#contents.contact .box {
  margin: 0 0 0 0;
  float: left;
  overflow: hidden;
}
#contents.contact img.contact_img {
  margin: 3px 0 0 0;
  float: left;
}
#contents.contact .contact_txt {
  margin: 0 0 0 170px;
  overflow: hidden;
  width: auto;
}
.h3_sub {
  font-size: 10pt;
  line-height: 18px;
}
dl.contact {
  margin: 10px 0 30px 0;
  overflow: hidden;
  clear: both;
}

dl.contact dt  {
  font-size: 9pt;
  display: block;
  width: 7em;
  clear: left;
  margin: 0 0 3px 0;
  float: left;
}
dl.contact dt.zip {
  width: 10em;
  float: none;
}
dl.contact dd  {
  font-size: 10pt;
  display: block;
  float: left;
}







#slideshow {
  height: 530px;
  clear: both;
}


#contents2 {
  width: 506px;
  height: auto;
  margin: 70px auto 80px auto;
  padding-left: 0px;
}
.contentsmenu {
  width: 250px;
  position: relative;
  padding-top: 0px;
  letter-spacing: 0px;
  padding-left: 0px;
  font-size: 10px;
  margin: 0 0px 10px 0;
  float: left;
  margin-right: 0px;
}
.contentsmenu2 {
	width: 170px;
	height: 400px;
	position: relative;
	padding-top: 0px;
	letter-spacing: 0px;
	padding-left: 0px;
	margin: 0;
	float: left;
	margin-right: 0px;
}
.contentsbox {
  width: 615px;
  margin-top: 0px;
  text-align: left;
  float: right;
  padding: 20px 0 30px 0;
  margin-left: 0px;
}
.toptitle {
	width: 600px;
	margin-left: 100px;
	height: 300px;
}
#toplogo {
  position: relative;
  height: auto;
  max-height: 900px;
  min-height: 300px;
}
#center {
  margin-top: -40px;
  display: block;
  top: 45%;
  position: absolute;
  width: 920px;
  margin-left: 0px;
  text-align: center;
}
.indexmenulogo {
	display: block;
	width: 112px;
	margin-top: 31px;

}
.contentslogo {
	display: block;
	width: 112px;

}

.indexmenu {
	font-size:9pt;
	background-color:#CCCCCC;
	height:14px;
}
.profiletxtl {
	font-size: 16px;
	line-height: 19px;
}
.profiletxt {
	font-size: 14px;
	line-height: 18px;
}
.profiletxt2 {
	font-size: 12px;
	line-height: 18px;
}
.profiletxt3 {
	font-size: 12px;
	line-height: 14px;
}
.profiletxt4 {
	font-size: 12px;
	line-height: 14px;
	color: #666666;
}
.ca_index01 {
	height: 90px;
	width: 303px;
}
.ca_index02 {
	height: 180px;
	width: 203px;
	position: static;
	margin-left: 303px;
	margin-top: -90px;
}
.ca_index03 {
	height: 179px;
	width: 102px;
	position: static;
	margin-left: 0px;
	margin-top: -90px;
}
.ca_index04 {
	height: 179px;
	width: 102px;
	position: static;
	margin-left: 102px;
	margin-top: -179px;
}
.ca_index05 {
	height: 89px;
	width: 102px;
	position: static;
	margin-left: 303px;
	margin-top: -89px;
}
.ca_index06 {
	height: 178px;
	width: 101px;
	position: static;
	margin-left: 405px;
	margin-top: -89px;
}
.ca_index07 {
	height: 89px;
	width: 201px;
	position: static;
	margin-left: 0px;
	margin-top: -89px;
}
.ca_index08 {
	height: 89px;
	width: 204px;
	position: static;
	margin-left: 201px;
	margin-top: -89px;
}
.style1 {
  font-size: 14px;
  font-weight: bold;
  display: block;
  margin: 30px 0 20px 5px;
}
.style3 {
	font-size: 10px;
	word-spacing: 1px;
	font-family: Geneva, Arial, Helvetica, sans-serif;
	color: #ccc;
}
.style4 {color: #000}
.style5 {font-size: 9pt}


.contentsmenu ul {
	font-size: 9pt;
	line-height: 14pt;
	text-indent: 0px;
	list-style-type: disc;
}
.contentsmenu li {
	display: block;
	line-height: 14px;
}
.contentsmenu li.nolink {
  padding: 5px;
  color: #555;
}
.contentsmenu li a {
  display: block;
  background-color: #fff;
  padding: 6px 5px;
  color: #333;
}
.contentsmenu li a.current {
  background-color: #e6e6e6;
  color: #000;
  font-weight: bold;
}
.contentsmenu li a:hover {
	background-color: #bbb;
	color: #000;
}
.linon {
	font-size: 9pt;
	line-height: 14px;
	display: block;
	line-height: 14px;
	background-color: #fff;
	margin-top: 14px;
	color: #777;
	width: 100%;
	padding-left: 2px;
}
.thumbnailhidden {
	visibility: hidden;
}

.process_t {
	font-size: 12px;
	line-height: 15px;
}
.process_f {
	font-size: 11px;
	line-height: 18px;
}
.process_fs {
	font-size: 11px;
	line-height: 16px;
}

.process_s {
	font-size: 10px;
	line-height: 14px;
}
.process_ss {
	font-size: 10px;
	line-height: 12px;
}


body.movie {
  max-width: 1920px;
  margin: 0 auto;
  height: auto;
  text-align: center;
}
body.movie video {
  max-width: 1920px;
  width: auto; 
}
.video{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.video iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%!important;
	height: 100%!important;
}
