@charset "utf-8";
/* CSS Document */

body,
button,
input,
select,
textarea {
	color: #555555;
	font-family: Century Gothic,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	font-size: 13px;
	line-height: 20px;
	-webkit-text-size-adjust: 100%;
	padding: 0px;
	margin: 0px;
	word-wrap:break-word;
}
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
    border: 0;
    margin: 0;
    outline: 0;
    padding: 0;
}
footer, header, main, nav {
    display: block;
}	
b, strong {
    font-weight: 700;
}
a img {
    border: none;
}
a:link,a:visited {
	color:#51A2C1;
	text-decoration:none;
}
a:hover {
	color:#000000;
	text-decoration:none;
}
.clear{
	clear:both;
	font-size:0;
	line-height:0;
}
h1{
	padding-bottom: 10px;
	border-bottom: 1px solid #dadada;
	margin-bottom: 30px;
}
h2{
	margin:0 0 30px 0;
}
h3{
	padding:9px 9px 9px 23px;
	font-size: 18px;
	font-weight: normal;
	color: #333333;
	border-radius:4px;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	margin: 10px 0 30px 0;
	background-color: #cce1e5;
}
h4{
	position:relative;
	padding-left:30px;
	font-weight: bold;
	font-size: 16px;
	line-height: 38px;
	margin: 20px 0;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #ccc;
}
h4:before{
	content:'';
	border-radius: 12px;
	-webkit-border-radius: 12px;
	-moz-border-radius: 12px;
	height: 12px;
	width: 12px;
	display: block;
	position: absolute;
	top: 13px;
	left: 5px;
	background-color: #78b3ce;
}
h5{
	font-size: 18px;
	font-weight: normal;
	color: #333333;
}
#site {
    max-width: 100%;
}
#site {
	padding: 0px;
	width: 100%;
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}

.contents {
	width:980px;
	margin: 10px auto;
	padding-bottom: 40px;
}

.contents2 {
	width:740px;
	margin: 10px auto;
	padding-bottom: 40px;
}

#main {
	width: 740px;
	float: left;
}
#main-img {
	width: 100%;
	max-width:1400px;
	min-width:980px;
	max-height:520px;
	padding: 0px;
	margin: 0px auto 20px auto;
	text-align: center;
	border-top: thin solid #CCC;
	border-bottom: thin solid #CCC;
    overflow: hidden;
}
#main-img img {
	width: 100%;
	max-width:1400px;
	height:auto;
	max-height:520px;
	padding: 0px;
	margin: 0px auto;
    overflow: hidden;
}
nav a {
    text-decoration: none;
}

nav ul {
    list-style: none;
}

/* Header */

#header {
	width: 980px;
	margin: 0 auto;
	padding: 25px 0 15px 0;
	text-align: center;
}
#header a:hover {
	filter:alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
}
#mainnav {
	float: left;
	margin: 0 10px 0 13px;
}
#mainnav ul li {
	float: left;
	line-height: 12px;
}
#mainnav ul li.nav01 {
	padding: 0 25px;
	margin: 10px 0;
    border-right: 1px solid #a3d6e1;
}
#mainnav ul li.nav01 a:hover {
	border-bottom: 2px solid #64a0b4;
}
#logo {
    float: left;
}
#netlogo {
    float: right;
	margin: 3px 0;	
}

/* Side bar */

#side {
	width: 210px;
	float: right;
}
#side #sideNav {
    overflow: hidden;
}
#side #sideNav h1 {
	padding-bottom: 0px;
	border-bottom: none;
	margin-bottom: 0px;

}
#side #sideNav h1 a{

}
#side #sideNav ul {
	border-top-width: 1px;
	border-top-color: #a3d6e1;
	border-top-style: solid;
}
#side #sideNav ul.business {
	border-top-width: 0;
}
#side #sideNav ul li.nav01 {
	border-bottom-width: 1px;
	border-bottom-color: #a3d6e1;
	border-bottom-style: solid;
}

#side #sideNav ul li.nav01 a {
	display: block;
	padding: 12px 7px 12px 20px;
}

/* Footer */

#footer {
	background: #f1f7f9;
	color: #999aa3;
	width: 100%;
	min-width: 980px;
	margin: 0;
	padding: 0px;
	border-top: 1px solid #dadada;
}
#sitemap {
	width: 980px;
	margin: 0 auto;
	padding-bottom: 20px;
	background-image: url(../images/footer_bg.png);
	background-repeat: no-repeat;
	background-position: center top;
}
#footer nav {
	line-height: 183%;
	padding: 15px 0 0 0;
}
#footer nav a {
	color: #999aa3;
}
#footer nav a:hover {
	color: #555555;
}
#footer nav ul {
    overflow: hidden;
}
#footer nav ul li {
    float: left;
    width: 220px;
    padding-left: 25px;
}
#footer nav ul li h1 {
	font-size: 14px;
	font-weight: normal;
	padding-left: 16px;
	margin-top: 10px;
	margin-bottom: 0px;
	border: 0;
}
#footer nav ul li ul li {
    list-style: disc inside;
}
#copyright {
	width: 270px;
	margin: 0px auto;
	text-align: center;
}
#main_tit {
	display:block;
	border-bottom: 1px solid #CCCCCC;
}

/* top business */
img.business_thum {
	border: thin solid #dadada;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
}
a:hover img.business_thum {
	box-shadow:0px 0px 8px 0px #ccc;
	-moz-box-shadow:0px 0px 8px 0px #ccc;
	-webkit-box-shadow:0px 0px 8px 0px #ccc;
}

/* infomation */

#infomation-block {
	width: 100%;
	padding-top: 40px;
	margin-bottom: 20px;
	display:block;
}
.entry-content {
	padding-top:15px;
	border-bottom: 1px solid #CCCCCC;
}
.news-list-thum {
	float: left;
	width: 130px;
	margin: 0px 15px 10px 0px;
	border: 1px solid #CCCCCC;
}
.news-date {
	color: #576c96;
	width: 90px;
	float: left;
	margin-right: 5px;
}
.news-txt {
	margin-bottom: 5px;
	width: 640px;
	float: right;
}
.news-country {
	color: #999;
	width: 640px;
	text-align:right;
	float: right;
	margin-bottom: 20px;
	padding-top: 3px;
	border-top: 1px dashed #E3E3E3;
}

/* Company */

.presidenttxt {
	line-height: 24px;
	width: 710px;
	margin: 20px auto;
}
.presidenttxt p {
	margin: 6px 0 0 0;
}
.presidenttxt img {
	margin: 0 0 10px 0;
}
#facility {
    width: 100%;
    margin: 0;
    padding: 0;
	text-align: center;
}
#facility .leftside {
	width: 340px;
	float:left;
	margin: 0;
	padding: 0 30px 20px 0;
	border-right: 1px solid #dadada;
}
#facility .rightside {
	width: 350px;
	float:right;
	margin: 0;
	padding: 0 0 20px 0;
}
#facility img {
    margin: 0 0 20px 0;
}
table.about {
	text-align: left;
	width: 100%;
	margin: 0 auto;
}
table.about th {
	font-weight: normal;
	color: #333;
	vertical-align: top;
	padding: 10px;
	background: #f0f0f0;
}
table.about td {
	padding: 10px;
	background: #f9f9f9;
}
.org {
	padding: 0 0 0 4px;
}

/* Contact */

#contact {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
#banner_block {
	margin: 20px auto;
    padding-bottom: 10px;
	border-bottom: 1px solid #CCC;
}
#faq_ban {
	margin: 0 auto;
    padding: 0;
}
#main_q {
    margin: 10px auto;
}
#main_q img {
    margin: 0 9px 0 0;
}
.chara_section {
	width: 960px;
	margin: 40px auto 0;
}
#main_q .chara_section img {
    margin: 0;
}
.chara {
	width: 200px;
    margin: 30px 60px;
	float: left;
}
.chara_list{
	width: 960px;
	margin: 0 auto;
	list-style-type: none;
	overflow: hidden;
}
.chara_list li{
	margin: 0;

	transition: .8s;
}
.list-mv01{
	opacity: 0;
	transform: translate(0,60px); 
	-webkit-transform: translate(0,60px); 
}
.mv01{
	opacity: 1.0;
	transform: translate(0,0); 
	-webkit-transform: translate(0,0);
}
.chara_list02{
	margin: 20px auto 0 100px;
	list-style-type: none;
	overflow: hidden;
	float: left;
}
.chara_list02 li{
	margin: auto 0;
	transition: .8s;
}
.list-mv02{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv02{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list03{
	margin: 40px 100px 0px 0px;
	list-style-type: none;
	overflow: hidden;
	float: right;
}
.chara_list03 li{
    margin: 30px 0 30px 0px;
	transition: .8s;
}
.list-mv03{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv03{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list04{
	margin: 80px auto 0 100px;
	list-style-type: none;
	overflow: hidden;
	float: left;
}
.chara_list04 li{
    margin: 0;
	transition: .8s;
}
.list-mv04{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv04{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list05{
	margin: 100px auto 0;
	list-style-type: none;
	overflow: hidden;
	float: left;
}
.chara_list05 li{
    margin: auto 0;
	transition: .8s;
}
.list-mv05{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv05{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list06{
	margin: 260px auto 0 10px;
	list-style-type: none;
	overflow: hidden;
	float: left;
	position: absolute;
}
.chara_list06 li{
    margin: 0;
	transition: .8s;
}
.list-mv06{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv06{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list07{
	margin: 20px auto 0 80px;
	list-style-type: none;
	overflow: hidden;
	float: left;
}
.chara_list07 li{
    margin: 0;
	transition: .8s;
}
.list-mv07{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv07{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}

#business_q_block {
	width: 900px;
	margin: 10px auto 20px 50px;
	text-align: left;
}
ul.business_radio {
	width: 600px;
    margin: 0;
    padding: 0;
	float: left;
}
.business_radio li {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}
.business_radio input {
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%; 
    height: 100%;
	cursor: pointer;
}
.business_radio input[type="radio"] + label {
    display: block;
    background-image: url(../contact/images/01_check_def.png);
    background-size: 30px;
    background-position: left center;
    background-repeat: no-repeat;
    padding: 10px 0 10px 40px;
}
.business_radio input[type="radio"]:hover + label {
	color:#999;
	background-image: url(../contact/images/01_check_on.png);
}

.business_radio input[type="radio"]:checked + label {
	background-image: url(../contact/images/check_select.png);
}
#press_q_block {
	width: 900px;
	margin: 10px auto 20px 50px;
	text-align: left;
}
ul.press_radio {
	width: 420px;
	margin: 0;
	padding: 0;
	float: right;
}
.press_radio li {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}
.press_radio input {
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%;  
    height: 100%;
	cursor: pointer;
}
.press_radio input[type="radio"] + label {
    display: block;
    background-image: url(../contact/images/02_check_def.png);
    background-size: 30px;
    background-position: left center;
    background-repeat: no-repeat;
    padding: 10px 0 10px 40px;
}
.press_radio input[type="radio"]:hover + label {
	color:#999;
	background-image: url(../contact/images/02_check_on.png);
}

.press_radio input[type="radio"]:checked + label {
	background-image: url(../contact/images/check_select.png);
}
#customer_q_block {
	width: 900px;
	margin: 10px 50px 20px auto;
	text-align: left;
}
ul.customer_radio {
	width: 420px;
	margin: 0 auto 0 200px;
	padding: 0;
	float: left;
}
.customer_radio li {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}
 
.customer_radio input {
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%;  
    height: 100%;
	cursor: pointer;
}
 
.customer_radio input[type="radio"] + label {
    display: block;
    background-image: url(../contact/images/03_check_def.png);
    background-size: 30px;
    background-position: left center;
    background-repeat: no-repeat;
    padding: 10px 0 10px 40px;
}

.customer_radio input[type="radio"]:hover + label {
	color:#999;
	background-image: url(../contact/images/03_check_on.png);
}

.customer_radio input[type="radio"]:checked + label {
	background-image: url(../contact/images/check_select.png);
}

#robot_q_block {
	width: 900px;
	margin: 10px auto 20px 20px;
	text-align: left;
}
ul.robot_radio {
	width: 460px;
	margin: 0;
	padding: 0;
	float: right;
}
.robot_radio li {
    position: relative;
    display: block;
    margin: 0;
    padding: 0;
}
 
.robot_radio input {
    position: absolute;
    top: 0;
    opacity: 0;
    width: 100%;  
    height: 100%;
	cursor: pointer;
}
 
.robot_radio input[type="radio"] + label {
    display: block;
    background-image: url(../contact/images/04_check_def.png);
    background-size: 30px;
    background-position: left center;
    background-repeat: no-repeat;
    padding: 10px 0 10px 40px;
}

.robot_radio input[type="radio"]:hover + label {
	color:#999;
	background-image: url(../contact/images/04_check_on.png);
}

.robot_radio input[type="radio"]:checked + label {
	background-image: url(../contact/images/check_select.png);
}
table.user {
	margin: 0 auto;
	border-collapse: collapse;
	text-align: left;
}

table.user td {
    padding: 10px;
    color: #555555;
    border:1px solid #cccccc;
}

table.user th {
    padding: 10px;
    color: #555555;
    border:1px solid #cccccc;
    background-color: #eee;
}
#contact input {
    padding: 4px;
}
#contact textarea {
    padding: 4px;
}
.submit {
    text-align: center;
    padding: 20px;
}
p#err {
	color: #f00;
	font-size: 12px;
}

/* FAQ */

#QandA {
	width: 100%;
	text-align: left;
}
#QandA h3 {
	margin: 10px 0 10px 0;
}
#QandA .left_block {
	width: 700px;
	float:left;
}
#QandA .left_block .faq {
	width: 670px;
	float:left;
}
#QandA .right_block {
	width: 700px;
	float:right;
}
#QandA .right_block .faq {
	width: 670px;
	float:right;
}

#QandA dl {
	margin: 10px 20px 30px 20px;
}
#QandA dt {
	font-weight: bold;
	color: #555555;
	padding: 5px 8px 12px 40px;
	border-bottom: 1px solid #a3d6e1;
	background-image: url(../contact/images/q_icon.png);
	background-repeat: no-repeat;
	background-position: left top;
}

#QandA dd {
	padding: 5px 8px 12px 40px;
	border-bottom: 1px solid #a3d6e1;
	background-image: url(../contact/images/a_icon.png);
	background-repeat: no-repeat;
	background-position: left top;
	margin: 10px 0 0 0;
	line-height: 140%;
}

.chara_list08{
	margin: 60px 20px 0 0;
	list-style-type: none;
	overflow: hidden;
	float: right;
}
.chara_list08 li{
	margin: auto 0;
	transition: .8s;
}
.list-mv08{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv08{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list09{
	margin: 150px 70px 0 0;
	list-style-type: none;
	overflow: hidden;
	float: right;
}
.chara_list09 li{
	margin: auto 0;
	transition: .8s;
}
.list-mv09{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv09{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list10{
	margin: 10px 40px 0 0;
	list-style-type: none;
	overflow: hidden;
	float: right;
}
.chara_list10 li{
	margin: auto 0;
	transition: .8s;
}
.list-mv10{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv10{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}
.chara_list11{
	margin: 120px 50px 0 0;
	list-style-type: none;
	overflow: hidden;
	float: right;
}
.chara_list11 li{
	margin: auto 0;
	transition: .8s;
}
.list-mv11{
	transform: scale(0, 0) rotateY(180deg);
	-webkit-transform: scale(0, 0) rotateY(180deg);
}
.mv11{
	transform: scale(1, 1) rotateY(360deg);
	-webkit-transform: scale(1, 1) rotateY(360deg);
}


/* Recruit */

.recruit{
	width: 100%;
	margin: 20px auto 40px auto;
}
.recruit table {
	text-align: left;
	width: 100%;
	margin: 0 auto;
}
.recruit table th {
	font-weight: bold;
	background-color: #cce1e5;
	color: #666;
	vertical-align: middle;
	padding: 15px;
	font-size: 14px;
}
.recruit table td {
	vertical-align: middle;
	padding: 15px;
	background-color: #f0f0f0;
	width: 43%;
}


/* Access */

.map {
	text-align: center;
	display: block;
	margin-top: 20px;
	margin-right: 0;
	margin-bottom: 40px;
	margin-left: 0;
}

/* Privacy */
.privacy-txt {
	line-height: 24px;
	width: 800px;
	margin-top: 20px;
	margin-right: auto;
	margin-bottom: 20px;
	margin-left: auto;
}

.fukidashi {
background-color: #ececec;
border-radius: 10px;
position: relative;
line-height: 40px;
padding: 20px;
}
 
.fukidashi:after {
border:10px solid transparent;
border-top-color:#ececec;
border-bottom-width:0;
bottom:-10px;
content:"";
display:block;
left:460px;
position:absolute;
width:0;
}
/* business image with caption */

div.imagebox {
	float: left;
	margin: 5px 8px 5px 0;
}
p.image img {
	border: 1px solid #ccc;
	margin-bottom: 3px;
}
p.image, p.caption {
	text-align: center;
	margin: 0px;
}
p.caption {
	font-size: 80%;
	line-height: 12px;
}
/* business txt shutten */
p.source {
	font-size: 90%;
	line-height: 12px;
	text-align: right;
}
/* business character txt top */
p.blockquote {
	padding-left: 60px;
}

/* report txt */
.report_txt_right{
	display:block;
	width: 236px;
	float: right;
}
.report_txt_right374{
	display:block;
	width: 374px;
	float: right;
}
.report_txt_left{
	display:block;
	width: 236px;
	float: left;
}
.report_txt_left374{
	display:block;
	width: 374px;
	float: left;
}
img.right{
	float:right;
	padding: 0 0 20px 5px;
	display:block;
}
img.left{
	float:left;
	padding: 0 5px 20px 0;
	display:block;
}

/* page top btn */

.pagetop {
    display: none;
    position: fixed;
    bottom: 50px;
    right: 15px;
	z-index:9999;
}
.pagetop a {
    display: block;

}

p.red {
    color: #FF0000 !important;
}


/* 1023px以下（スマホ）はロールオーバーはなし */
@media screen and (max-width: 1023px) {

a:hover {
	color:#51A2C1;
	text-decoration:none;
}
#header a:hover {
	filter:alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1;
}
#mainnav ul li.nav01 a:hover {
	border-bottom: 0;
}
#footer nav a:hover {
	color: #999aa3;
}
a:hover img.business_thum {
	box-shadow:0px 0px 0px 0px #ccc;
	-moz-box-shadow:0px 0px 0px 0px #ccc;
	-webkit-box-shadow:0px 0px 0px 0px #ccc;
}
}

#announce {
    padding: 30px;
    margin-top: 30px;
    margin-bottom: 30px;
    /*margin-bottom: 30px;*/
	border: thin solid #dadada;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
    
}

.pagination {
    padding: 10px;
}

.pagination span {
    padding: 2px;
}

.g-recaptcha {
    margin-top:20px;
}
.g-recaptcha div {
    margin: 0 auto;
}

/* added below */

/* banner */
#tzk-banner {
    margin: 80px auto;
}

#banner-block a {
    display: block;
}
#banner-block a:hover {
    box-shadow:0px 0px 8px 0px #ccc;
    -moz-box-shadow:0px 0px 8px 0px #ccc;
    -webkit-box-shadow:0px 0px 8px 0px #ccc;
}

#banner-wrapper {
    width: 980px;
    height: 400px;
    max-width: 100%;
    padding: 0;
    border: 1px solid #dadada;
    overflow: hidden;
    display:block;
    position:relative;
}

/* TZK */
#ban01 {
    position: absolute;
    top: 19px;
    left: -98px;
    width: 741px;
    height: 488px;
    z-index:99999;
}
#ban01 {
    transition: .4s;
}
.tzk{
    transform: translate(0,60px); 
    -webkit-transform: translate(0,60px); 
}
.tzk_mov{
    transform: translate(0,0); 
    -webkit-transform: translate(0,0);
}
/* CHARA */
#ban02 {
    position: absolute;
    top: 30px;
    left: -60px;
    width: 1108px;
    height: 524px;
    animation-duration: .8s; /* Animation time */
    animation-delay: .3s; //Delayed
}
/* LOGO */
#ban03 {
    position: absolute;
    top: 68px;
    right: 99px;
    width: 330px;
    height: 140px;
    animation-duration: .6s; /* Animation time */
    animation-delay: .6s; //Delayed
}
/* COPY */
#ban04 {
    position: absolute;
    top: 15px;
    right: 68px;
    width: 392px;
    height: 42px;
    animation-duration: .2s; /* Animation time */
    animation-delay: 1.2s; //Delayed
}

