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

* {
	margin:0;
	padding:0;
}

body {
	background-color:#E6E6E6;
	padding:0;
	margin:0;
	border:0;
	line-height:24px;
	letter-spacing:0px;
	color:#333333;
	font-family: 'Lato', arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size:12px;
	text-align:center;

}

body.index{
	background-image:url(../img/index-photo.jpg);
	background-repeat: no-repeat;
	background-position: 50% 152px;
	background-attachment: fixed;
}

img {
	border:0;
	display:block;
}	

p li div {
	text-align:justify; 
	text-justify:inter-ideograph;
}

a {
	border:0;
	color: #000000;
	text-decoration: none;
}
a:visited {
	color:#000000;
	text-decoration:none;
}	
a:hover {
	color:#CCCCCC;
	text-decoration:none;
}

br {
	letter-spacing:0px;
}

h2 {
}	

h4 {
	display:inline;
}	
	

/*---*/
#header {
	background-color:#FFFFFF;
	text-align:left;
	font-family: 'Lato', arial, sans-serif;
}

.h-inner-top {
	width:940px;
	margin:0 auto;
	height:152px;
	background-color:#FFFFFF;
	z-index:1;
}	

.h-inner {
	width:940px;
	margin:0 auto;
	height:224px;
	background-color:#FFFFFF;
	z-index:1;
}		

#g-navi {
	width:940px;
	height:152px;
	border-bottom:2px solid #E6E6E6;
}

#g-navi div {
	float:left;
	width:142px;
	height:17px;
	color:#000000;
	display:block;
}

#g-navi .logo {
	margin:96px 16px 0 0;
}

#g-navi .logo_on,
.h-inner-top #g-navi .logo {
	margin:0px 18px 0 0;
	padding:91px 0 0px 0;
	font-size:14px;
	text-decoration:none;
	border-top:5px solid #CF1049;
	width:140px;
	display:block;
	height:22px;
}
	
#g-navi .g-navi-n {
	border-bottom:2px solid #333333;
	margin:0px 18px 0 0;
	padding:0px 0 0px 0;
	font-size:14px;
	text-decoration:none;
	width:142px;
	height:114px;
}

#g-navi .g-navi-n_on {
	border-bottom:2px solid #333333;
	margin:0px 18px 0 0;
	padding:87px 0 0px 0;
	font-size:14px;
	text-decoration:none;
	border-top:5px solid #CF1049;
	width:142px;
	display:block;
	height:22px;
}

#g-navi #m-r-none {
	margin:0px 0px 0 0;
}		

#g-navi .g-navi-n a:link,
#g-navi .g-navi-n a:visited {
	text-decoration:none;
	color:#000000;
	margin:0px 0px 0px 0;
	padding:92px 0 0px 0;
	font-size:14px;
	width:142px;
	display:block;
	height:17px;
}

#g-navi .g-navi-n a:hover,
#g-navi .g-navi-n a.current {
	text-decoration:none;
	color:#000000;
	margin:0px 0px 0px 0;
	padding:87px 0 0px 0;
	font-size:14px;
	border-top:5px solid #CF1049;
	width:142px;
	display:block;
	height:12px
}

#sub-navi {
	height:70px;
	width:940px;
}

#sub-navi div {
	float:left;
	height:17px;
	color:#000000;
	font-size:13px;
	display:block;
	margin:0 30px 0 0;
}

#sub-navi div.lang {
	float:right;
	margin:25px 0px 0 0;
}

#sub-navi div.lang2 {
	float:right;
	margin:25px 0px 0 0;
}	

.s-navi01 a:link,
.s-navi01 a:visited {
	text-decoration:none;
	color:#000000;
	margin:0px 0px 0px 0;
	padding:25px 0 0px 0;
	font-size:13px;
	display:block;
	height:45px;
	_width:100px;
}

.s-navi01 a:hover {
	text-decoration:none;
	color:#000000;
	margin:0px 0px 0px 0;
	padding:23px 0 0px 0;
	font-size:13px;
	border-top:2px solid #CF1049;
	display:block;
	height:47px;
	_width:100px;
}

#sub-navi2 {
	height:44px;
	width:940px;
	border-top:1px solid #CCCCCC;
	padding:0px 0 0 0;
}

#sub-navi2 div {
	float:left;
	height:44px;
	color:#000000;
	font-size:13px;
	display:block;
	margin:0 30px 0 0;
	_text-align:center;
}


#sub-navi2 .stay {
	text-decoration:none;
	color:#000000;
	margin:0 30px 0 0;
	padding:7px 0 0px 0;
	font-size:12px;
	border-top:2px solid #CF1049;
	display:block;
	height:33px;
	_width:80px;
}	

#sub-navi2 .hidden {
	text-decoration:none;
	color:#999999;
	margin:0 30px 0 0;
	padding:9px 0 0px 0;
	font-size:12px;
	display:block;
	height:33px;
	_width:80px;
}	
	

.s-navi02 a:link,
.s-navi02 a:visited {
	text-decoration:none;
	color:#000000;
	margin:0px 0px 0px 0;
	padding:9px 0 0px 0;
	font-size:12px;
	display:block;
	height:35px;
	_width:80px;
}

.s-navi02 a:hover {
	text-decoration:none;
	color:#000000;
	margin:0px 0px 0px 0;
	padding:7px 0 0px 0;
	font-size:12px;
	border-top:2px solid #CF1049;
	display:block;
	height:33px;
	_width:80px;
}		
		

#contents {
	text-align:left;
	top:224px;
}

.contents-inner {
	clear: both;
	width:940px;
	margin:0 auto;
}	

.contents-inner2 {
	clear: both;
	width:960px;
	margin:0 auto;
	padding-left: 20px;
	padding-right: -20px;
	padding-bottom: 40px
}	

.contents-inner3 {
	clear: both;
	width:940px;
	margin:0 auto;
	padding-bottom: 40px
}

#pan-box {
	clear: both;
	height:42px;
	background-image:url(../img/other/pan-bg01.png);
	filter:alpha(opacity=90);
	opacity:0.90;
	-moz-opacity:0.90;
	background-repeat:repeat-x;
	background-position:left top;
	border-bottom:1px solid #E6E6E6;
	position: relative;
	z-index:5;
	font-family: 'Lato', arial, sans-serif;
}

#pan-box a:link,
#pan-box a:visited {
	color:#333333;
	text-decoration:none;
}

#pan-box a:hover {
	color:#333333;
	text-decoration:none;
}	

.pan-box-inner {
	width:940px;
	margin:0 auto;
	font-size:13px;
	text-align:left;
}		

.pan-box-inner p {
	float:left;
	line-height:34px;
	padding:7px 0 0 0;
}

.pan-box-inner img {
	float:right;	
}		

#footer {
	background-color:#666666;
	color:#000000;
	filter:alpha(opacity=90);
	opacity:0.90;
	-moz-opacity:0.90;
	padding:60px 0 0 0;
	text-align:left;
	position: relative;
	z-index:5;
	font-family: 'Lato', arial, sans-serif;
}

.f-inner {
	width:940px;
	margin:0 auto;
	padding:0 0 80px 0;
	zoom:1;
	overflow:hidden;
}

.footer-box {
	width:140px;
	float:left;
	margin:0 18px 0 0;
}

.footer-box02 {
	width:140px;
	float:left;
}	

.f-title {
	border-bottom:2px solid #333333;
	line-height:16px;
	height:18px;
	font-size:14px;
	color:#FFFFFF;
}	

.f-title2 {
	border-bottom:2px solid #333333;
	line-height:16px;
	height:18px;
	font-size:14px;
	color:#FFFFFF;
	margin:45px 0 0 0;
}	

.f-title a:link,
.f-title a:visited,
.f-title2 a:link,
.f-title2 a:visited {
	color:#FFFFFF;
	text-decoration:none;
}

.f-title a:hover,
.f-title2 a:hover {
	text-decoration:none;
	color:#CCCCCC;
}		

.footer-box ul,
.footer-box02 ul {
	list-style:none;
	font-size:12px;
	line-height:28px;
	margin: 3px 0 0 0;
}	

.footer-box ul a:link,
.footer-box ul a:visited,
.footer-box02 ul a:link,
.footer-box02 ul a:visited {
	color:#FFFFFF;
	text-decoration:none;
}

.footer-box ul a:hover,
.footer-box02 ul a:hover {
	text-decoration:none;
	color:#CCCCCC;
}	

.f-txt {
	font-size:12px;
	line-height:20px;
	color:#FFFFFF;
	padding:7px 0 30px 0;
}

.f-txt span {
	color:#000000;
}		

.f-andp {
	padding:80px 0 30px 0;
	text-align:right;
	width:940px;
	margin:0 auto;
}	

.f-andp img {
	display:inline;
}	


.index-main {
	background-image:url(../img/other/line01.png);
	background-repeat:no-repeat;
	background-position:left top;
	padding:70px 0 0 0;
	position: relative;
}	

.top-timg {
	margin:200px 0 80px 0;
	_margin:100px 0 80px 0;
	position: relative;
	z-index:3;
	filter:alpha(opacity=90);
	opacity:0.90;
	-moz-opacity:0.90;

}

.top-timg2 {
	margin:0px 0 0px 0;
	position: fixed;
	z-index:1;
}	

.contents01 {
	clear: both;
	margin:0 0 0 0px;
}

.contents02 {
	clear: both;
	padding:0 0 40px 0;
}

.style-inner {
	width:960px;
	margin-right: -20px;
}

.style-inner2 {
	width:940px;
	height:300px;
	padding:18px 0 0 0;
}

.style-inner a,
.style-inner2 a {
	float:left;
	display: block;
	margin-right: 20px;
	margin-bottom: 20px;
}

.icon {
	width:140px;
	height:30px;
	display:block;
}

.icon img {
	float:left;
	margin:6px 0 0 0px;
}

.icon p {
	float:left;
	padding:0 0 0 4px;
	line-height:26px;
}

.contact-main {
	padding:0px 0 80px 0;
}	

		
/*instagram*/

.photo {
	width:960px;
}

.photo div {
	height:300px;
	float:left;
	margin-right: 20px;
    margin-bottom: 20px;
}	

.photo li {
	list-style:none;
}		

/*↑*/

.lang {
	width:60px;
	position: fixed;
	right:54px;
	top: 0px;
	z-index: 5;
}	

.lang2 {
}


/*20110422~*/

.not-found-inner {
	width:940px;
	margin:0 auto;
	padding:150px 0 180px 0;
}

#book-main {
	width:960px;
	min-height:1px;
	margin:0 auto;
	padding:0 0 40px 0;
	position:relative;
	left:-10px;
	_left:-30px;
}	

.book-box {
	width:460px;
	_width:450px;
	margin:0 0px 0 20px;
	float:left;
	height:210px;
	border-top:1px solid #CCCCCC;
	padding:15px 0 0 0;
}	

.book-box-img {
	float:left;
	width: 160px;
}
 
.book-box ul {
	width:300px;
	float:left;
	list-style:none;
	color:#000000;
}	

.book-box-txt01 {
	font-size:17px;
	line-height:26px;
	padding:0 0 20px 0;
}

.book-box-txt02 {
	font-size:12px;
	line-height:20px;
}
	

.mag-box {
	width:300px;
	_width:290px;
	margin:0 0px 0 20px;
	float:left;
	height:125px;
	border-top:1px solid #CCCCCC;
	padding:15px 0 0 0;
}	

.mag-img {
	width:70px;
	float:left;
}

.mag-img img {
	width: 55px;
	height: auto;
}

.mag-box ul {
	width:210px;
	float:left;
	list-style:none;
	color:#000000;
}	

.mag-box-txt01 {
	font-size:12px;
	line-height:22px;
	padding:0 0 15px 0;
}

.mag-box-txt02 {
	font-size:10px;
	line-height:16px;
}

.book-box-txt01 a:link,
.book-box-txt01 a:visited,
.book-box-txt02 a:link,
.book-box-txt02 a:visited,
.mag-box-txt01 a:link,
.mag-box-txt01 a:visited,
.mag-box-txt02 a:link,
.mag-box-txt02 a:visited {
	color:#000000;
	text-decoration:none;
}	

.book-box-txt01 a:hover,
.book-box-txt02 a:hover,
.mag-box-txt01 a:hover,
.mag-box-txt02 a:hover {
	color:#666666;
	text-decoration:none;
}

.radio-box {
	width:300px;
	_width:290px;
	margin:0 0px 0 17px;
	float:left;
	height:35px;
	border-top:1px solid #CCCCCC;
	padding:15px 0 0 0;
	font-size:13px;
	color:#000000;
	text-align:center;
}		

.radio-box a:link,
.radio-box a:visited {
	color:#000000;
	text-decoration:none;
}	

.radio-box a:hover {
	color:#666666;
	text-decoration:none;
}

.sem-inner {
	background-image: url("../img/other/sem-line.png");
	background-position: left top;
	background-repeat: no-repeat;
	padding: 0 0 30px;
}

#sem-box {
	width:940px;
	min-height:1px;
	padding:14px 0 0;
}	

.sem-box-l {
	width:302px;
	float:left;
	background-image:url(../img/other/h-line01.gif);
	background-position:right top;
	background-repeat:repeat-y;
	padding:0 10px 0 0;
	text-align:right;
	color:#666666;
}	

.sem-box-l ul {
	list-style:none;
	font-size:10px;
}	

.sem-box-r {
	width:618px;
	float:left;
	color:#000000;
	padding:0 0 0 10px;
}

.sem-box-r ul {
	list-style:none;
	font-size:10px;
}	

.sem-txt01 {
	font-size:13px;
}	

.sem-txt02 {
	font-size:12px;
}

.sem-txt03 {
	font-size:10px;
}

.company-main {
	background-image:url(../img/other/sem-line.png);
	background-repeat:no-repeat;
	background-position:left top;
	padding: 0 0 30px 0;
	text-align:left;
	font-family: 'Lato', arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

.company-main-en {
	background-image:url(../img/other/sem-line.png);
	background-repeat:no-repeat;
	background-position:left top;
	padding: 0 0 30px 0;
	text-align:left;
	font-family: 'Lato', arial, sans-serif;
}


#company-main01 {
	width:940px;
	min-height:1px;
	padding:13px 0 15px 0;
	background-image:url(../img/other/w-line02.gif);
	background-position:left bottom;
	background-repeat:repeat-x;
}	

#company-main01-en {
	width:940px;
	min-height:1px;
	padding:13px 0 15px 0;
	background-image:url(../img/other/w-line03.gif);
	background-position:left bottom;
	background-repeat:repeat-x;
}

.company-l {
	float: left;
	width:300px;
	padding:0 20px 0 0;
	color:#000000;
	font-weight: normal;
	text-align: left;
}

.company-r {
	float: right;
	width:620px;
	margin:0;
	text-align: left;
}

.profile-main {
	padding:25px 0 0 320px;
}
.profile-main p {
	margin:0 0 20px 0;
}

#company-overview {
	border-collapse: collapse;
	margin-top: 1px;
}
#company-overview th.company-l {
	float: none;
	padding:13px 20px 15px 0;
	background: url(../img/other/w-line02.gif) left top no-repeat;
}
#company-overview td.company-r {
	float: none;
	padding:13px 0 15px 0;
	background: url(../img/other/w-line02.gif) right top no-repeat;
}
#company-overview th.tabletop,
#company-overview td.tabletop {
	background: none;
}

.company-title {
	height:30px;
	padding:4px 0 0px 20px;
	margin:20px 0 20px 0px;
	border-left:2px solid #CF1049;
}	

.banner {
	padding:30px 0 0 0;
}	

#banner-main {
	border-top:1px solid #CCCCCC;
	width:615px;
}	

.banner-left {
	width:160px;
	float:left;
	border-right:1px solid #CCCCCC;
	padding: 12px 0 12px 0;
}

.banner-right {
	padding:12px 0 12px 20px;
	float:left;
	width:434px;
	line-height:18px;
}	

.company-main02 {
	margin:30px 0 30px 0;
	padding:0px 0 0 0;
	border-top:1px solid #CCCCCC;
}	

#company-main01-2 {
	width:940px;
	min-height:1px;
	padding:13px 0 15px 0;
	background-image:url(../img/other/w-line03.gif);
	background-position:left bottom;
	background-repeat:no-repeat;
}	

#portfolio-main {
	width:960px;
	min-height:1px;
	background-image:url(../img/other/line02.png);
	background-position:16px 0px;
	background-repeat:no-repeat;
	padding:1px 0 40px 0;
	margin:0 auto;
}	

#portfolio-box {
	background-image:url(../img/other/w-line04.gif);
	background-position:left bottom;
	background-repeat:no-repeat;
	width:460px;
	_width:450px;
	float:left;
	min-height:1px;
	margin:0 0 0px 20px;
	padding:0 0 26px 0;
	position:relative;
	left:-10px;
	_left:-30px;
	font-family: 'Lato', arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}	

.portfolio-box-l {
	height:80px;
	float:left;
	width:184px;
	padding-top: 18px;
	border-right:1px solid #CCCCCC;
	text-align:center;
	font-family: 'Lato', arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
}

.portfolio-box-l img {
	display:inline;
}		

.portfolio-box-r {
	float:left;
	width:250px;
	_width:230px;
	line-height:20px;
	padding: 18px 0 0 25px;
	font-family: 'Lato', arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", sans-serif;
}	

.portfolio-box-r a:link,
.portfolio-box-r a:visited,
.banner-right a:link,
.banner-right a:visited {
	color:#333333;
	text-decoration:none;
}

.portfolio-box-r a:hover,
.banner-right a:hover {
	color:#CCCCCC;
	text-decoration:none;
}		

.company-list {
	list-style:none;
	margin:10px 0 10px 0;
}

.company-list li {
	background-image:url(../img/other/arrow01.png);
	background-position:0px 8px;
	background-repeat:no-repeat;
	padding:0 0 0 20px;
}	

#top-img {
	position: relative;
	width:940px;
	min-height:1px;
	margin:268px 0 0 0;
	_margin:0px 0 0 0;
	padding: 0;
	text-align: center;
}
#top-img2 {
	position: relative;
	clear: both;
	width:940px;
	min-height:1px;
	margin:0;
	_margin:0px 0 0 0;
	padding: 0 0 40px 0;
	text-align: center;
}

.top-img-box01 a {
	float:left;
	width:300px;
	height:248px;
	right:0px;
	background-image:url(../img/bg/top-bg01.gif);
	background-position:0px 0px;
	background-repeat:no-repeat;
	text-align:center;
	position:relative;
	z-index:3;
	filter:alpha(opacity=90);
	opacity:0.90;
	-moz-opacity:0.90;
}

.top-img-box01-2 a {
	float:left;
	width:300px;
	height:248px;
	right:-19px;
	background-image:url(../img/bg/top-bg01.gif);
	background-position:0px 0px;
	background-repeat:no-repeat;
	text-align:center;
	position:relative;
	z-index:3;
	filter:alpha(opacity=90);
	opacity:0.90;
	-moz-opacity:0.90;
}	

.top-img-box02 a {
	float:left;
	width:300px;
	height:248px;
	right:-36px;
	background-image:url(../img/bg/top-bg02.gif);
	background-position:0px 0px;
	background-repeat:no-repeat;
	text-align:center;
	position:relative;
	z-index:3;
	filter:alpha(opacity=90);
	opacity:0.90;
	-moz-opacity:0.90;
}

#top-img .top-img-box01 a,
#top-img .top-img-box01-2 a,
#top-img .top-img-box02 a {
	text-decoration: none;
	color: #000000;
}

#top-img2 .top-img-box01 a,
#top-img2 .top-img-box01-2 a,
#top-img2 .top-img-box02 a {
	height: 268px;
	text-decoration: none;
	color: #000000;
}

.top-img-box01 img,
.top-img-box01-2 img,
.top-img-box02 img {
	z-index:3;
	display:inline;
	text-align:center;
	margin:35px 0 0 0;
}

.top-img-box01 p,
.top-img-box01-2 p,
.top-img-box02 p {
	text-align:center;
	font-size:14px;
	color:#000000;
	padding:10px 0 0 0;
}	

.top-img-title {
	top: 200px;
}

.top-img-title,
.top-seminar01,
.top-seminar02,
.top-seminar03,
.top-seminar04 {
	position: absolute;
	display: block;
	width: 260px;
	padding: 0 20px;
	text-align: center;
}

.top-seminar01 {
	top: 30px;
	font-size: 28px;
	line-height: 28px;
	font-family: 'Lato', arial, sans-serif;
}
.top-seminar02 {
	top: 90px;
	font-size: 14px;
	line-height: 1.5em;
}
.top-seminar03 {
	top: 150px;
	font-size: 12px;
	line-height: 1.5em;
}
.top-seminar04 {
	top: 180px;
	font-size: 12px;
	line-height: 1.5em;
	margin-top: 30px;
}