/* CSS Document */
/*  style css  */
*,
*:after,
*:before {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-size: 85%;
  color: #222222;
  line-height: 1.4;
}

a {
  color: #222222;
}
a img {
  background: #fff;
}

a:hover {
  text-decoration: underline;
}

/**********************************************************************
 HEADER
  **********************************************************************/
#header {
  height: 102px;
  background: url(../images/bg_redline_large.png) repeat-x;
}
#header .header-inner {
  width: 980px;
  margin: 21px auto;
  padding-left: 4px;
}
#header .header-inner a {
  float: left;
  margin-right: 3px;
}
#header .header-inner a img {
  background: #fff;
}
#header .header-inner a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);
  /* IE5.5+ */
  -moz-opacity: 0.75;
  opacity: 0.75;
}

/* *********************************************************************
 h
********************************************************************* */
h2.header-red {
  background: url(../images/img_h2_red.png) left center no-repeat;
  font-size: 16px;
  padding-left: 10px;
  padding-top: 3px;
}

/* *********************************************************************
MAIN VISUAL
********************************************************************* */
.main-visual-top {
  height: 515px;
  background: url(../images/bg_mainvisual.png) 0 0 transparent;
  border-top: 2px solid #c20000;
}
.main-visual-top .innner {
  width: 980px;
  height: 100%;
  margin: 0 auto;
  background: url(../images/img_mainvisual_top.png) 0 0 no-repeat;
}
.main-visual-top h1 {
  text-indent: -9999px;
}

.main-visual {
  background: url(../images/bg_mainvisual.png);
  height: 320px;
}
.main-visual .inner {
  position: relative;
  width: 980px;
  height: 100%;
  margin: 0 auto;
}
.main-visual .inner img.middle {
  position: absolute;
  top: 50%;
  right: 0;
}
.main-visual h1 {
  float: left;
  margin: 135px 50px 0 20px;
}
.main-visual h1.center {
  float: none;
  clear: both;
  margin: 135px auto 0 auto;
  text-align: center;
}

.main-visual-narrow {
  background: url(../images/bg_mainvisual.png);
  height: 200px;
}
.main-visual-narrow .inner {
  position: relative;
  width: 980px;
  height: 100%;
  margin: 0 auto;
}
.main-visual-narrow .inner img.middle {
  position: absolute;
  top: 50%;
  right: 0;
}
.main-visual-narrow h1 {
  float: left;
  margin: 78px 50px 0 20px;
}
.main-visual-narrow h1.center {
  float: none;
  clear: both;
  margin: 78px auto 0 auto;
  text-align: center;
}

p.center {
  float: none;
  clear: both;
  margin: 78px auto 0 auto;
  text-align: center;
}

.main-visual-system {
  background: url(../images/bg_bge.png);
  height: 415px;
}
.main-visual-system .inner {
  background: url(../images/img_large_cutting_01.png) right center no-repeat;
  width: 980px;
  height: 100%;
  margin: 0 auto;
}
.main-visual-system .inner h1 {
  margin-top: 159px;
}

.main-visual-cutting {
  background: url(../images/bg_bge.png);
  height: 415px;
}
.main-visual-cutting .inner {
  background: url(../images/img_large_cutting_02.png) right center no-repeat;
  width: 980px;
  height: 100%;
  margin: 0 auto;
}
.main-visual-cutting .inner h1 {
  margin-top: 80px;
}
.inner p {
  margin-bottom: 15px;
}


.sub-main-area {
  background: #222222;
  height: 220px;
}
.sub-main-area .inner {
  width: 980px;
  margin: 0 auto;
}
.sub-main-area h2 {
  color: #ffffff;
  text-align: center;
  font-size: 40px;
  margin-top: 30px;
}
.sub-main-area .column-checkboxs {
  background: url(../images/img_check_wht.png) left center no-repeat;
  float: left;
  color: #f2ae1c;
  font-size: 30px;
  font-weight: bold;
  overflow: hidden;
  padding-left: 47px;
  margin-top: 20px;
}

/* *********************************************************************
NAVI
********************************************************************* */
#nav {
  background: url(../images/bg_navi.png) repeat-x;
  height: 53px;
}
#nav ul {
  width: 980px;
  height: 100%;
  overflow: hidden;
  margin: 0 auto;
}
#nav ul li {
  display: block;
  cursor: pointer;
  width: 163px;
  height: 53px;
  border-left: 1px solid #ffffff;
  float: left;
  /* text-indent: -9999px; */
}
#nav ul li.large {
  width: 164px;
}
#nav ul li.last {
  border-right: 1px solid #ffffff;
}
#nav ul li a {
  display: block;
  width: 100%;
  height: 100%;
}
#nav ul li.top {
  background: url(../images/btn_nav_top.png) 0 0 no-repeat;
}
#nav ul li.top:hover {
  background-position: 0 -53px;
}
#nav ul li.system {
  background: url(../images/btn_navi_system.png) 0 0 no-repeat;
}
#nav ul li.system:hover {
  background-position: 0 -53px;
}
#nav ul li.cutting {
  background: url(../images/btn_navi_cutting.png) 0 0 no-repeat;
}
#nav ul li.cutting:hover {
  background-position: 0 -53px;
}
#nav ul li.products {
  background: url(../images/btn_navi_products.png) 0 0 no-repeat;
}
#nav ul li.products:hover {
  background-position: 0 -53px;
}
#nav ul li.casestudy {
  background: url(../images/btn_navi_casestudy.png) 0 0 no-repeat;
}
#nav ul li.casestudy:hover {
  background-position: 0 -53px;
}
#nav ul li.campany {
  background: url(../images/btn_navi_company.png) 0 0 no-repeat;
}
#nav ul li.campany:hover {
  background-position: 0 -53px;
}

/**********************************************************************
 MAIN
 ********************************************************************* */
.main {
  width: 980px;
  margin: 0 auto;
  overflow: hidden;
}
.main .column-half {
  width: 450px;
  float: left;
}
.main .column-half.last {
  margin-left: 80px;
}
.main .column-half h2 {
  position: relative;
  z-index: 100;
}
.main .column-half2 {
  width: 470px;
  float: left;
}
.main .column-half2.last {
  margin-left: 40px;
}
.main .main-caption {
  clear: both;
  color: #c20000;
  font-size: 30px;
  font-weight: normal;
  text-align: center;
  width: 100%;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

.main-01 {
  width: 980px;
  margin: 0 auto;
  overflow: hidden;
  /* column-middle end */
  /* column-info */
}
.main-01 .column-middle {
  position: relative;
  margin-top: 40px;
  padding-bottom: 3px;
  width: 475px;
  overflow: hidden;
}
.main-01 .column-middle h2 {
  width: 100%;
  height: 35px;
  margin-bottom: 10px;
  text-indent: -9999px;
}
.main-01 .column-middle h2.howto-use {
  background: url(../images/h2_howto_use.png) 0 0 no-repeat;
}
.main-01 .column-middle h2.about-products {
  background: url(../images/h2_about_products.png) 0 0 no-repeat;
}
.main-01 .column-middle h2.about-company {
  background: url(../images/h2_about_company.png) 0 0 no-repeat;
}
.main-01 .column-middle .btn_br {
  position: absolute;
  bottom: 0;
  right: 0;
  height: 39px;
}
.main-01 .column-middle .btn_br:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);
  /* IE5.5+ */
  -moz-opacity: 0.75;
  opacity: 0.75;
}
.main-01 .column-info {
  position: relative;
  margin-top: 40px;
  width: 475px;
  overflow: hidden;
}
.main-01 .column-info h2 {
  width: 100%;
  height: 44px;
  margin-bottom: 10px;
  background: url(../images/h2_news.png) 0 0 no-repeat;
  text-indent: -9999px;
  overflow: hidden;
}
.main-01 .column-info .news-area {
  width: 100%;
  height: 150px;
  overflow: auto;
}
.main-01 .column-info dl {
  margin: 5px;
  overflow: hidden;
}
.main-01 .column-info dl dt {
  float: left;
  font-size: 85%;
  font-weight: bold;
  line-height: 1.7;
}
.main-01 .column-info dl dd {
  float: left;
  font-size: 85%;
  margin-left: 10px;
  line-height: 1.7;
}

.main-02 {
  background: url(../images/bg_triangle.png) center top #f7f7f7 no-repeat;
  width: 980px;
  margin: 0 auto;
  overflow: hidden;
}
.main-02 h2.main-caption {
  color: #c20000;
  font-size: 30px;
  font-weight: normal;
  text-align: center;
  margin-top: 90px;
}
.main-02 .kougu1 {
  background: url(../images/bg_case_kougu.png) 0 0 no-repeat;
  font-size: 22px;
  font-weight: bold;
  color: #2f2f2f;
  width: 940px;
  height: 127px;
  margin: 30px auto 0;
  padding: 36px 10px 36px 216px;
}
.main-02 .setsubi1 {
  background: url(../images/bg_case_setsubi.png) 0 0 no-repeat;
  font-size: 22px;
  font-weight: bold;
  color: #2f2f2f;
  width: 940px;
  height: 127px;
  margin: 10px auto 0;
  padding: 36px 10px 36px 216px;
}

/* *********************************************************************
LISTS  ul li dd dl
********************************************************************* */
ul.checkmark-list li {
  background: url(../images/icon_checkmark_blk.png) left center no-repeat;
  padding-left: 30px;
  line-height: 2;
}

/* *********************************************************************
BOXS
********************************************************************* */
.info-box01 {
  width: 960px;
  border: 4px solid #c20000;
  margin: 90px auto 0;
  overflow: hidden;
}
.info-box01 .inner {
  float: left;
  padding: 20px;
  width: 290px;
}
.info-box01 .inner.first {
  width: 660px;
}
.info-box01 .inner p.large-txt {
  color: #c20000;
  font-size: 29px;
}
.info-box01 .inner p.probrem {
  background: url(../images/img_problem.png) left center no-repeat;
  font-size: 16px;
  font-weight: bold;
  height: 74px;
  padding-left: 100px;
  padding-top: 16px;
  margin-top: 25px;
  margin-left: 20px;
}

.border-box01 {
  width: 980px;
  border: 1px solid #b4b4b4;
  overflow: hidden;
  padding: 3px 20px 20px;
}
.border-box01 h2 {
  background: url(../images/img_h2_green.png) left center no-repeat;
  border-bottom: 1px dotted #222222;
  font-size: 18px;
  line-height: 2.5;
  padding-left: 12px;
  padding-top: 3px;
}
.border-box01 .inner {
  float: left;
  padding: 20px 20px 0 0;
}
.border-box01 .inner.last {
  width: 530px;
  padding-right: 0;
}
.border-box01 .show {
  background: url(../images/bg_show.png) 0 0 no-repeat;
  text-align: center;
  line-height: 3;
  padding-left: 142px;
  margin-top: 20px;
}
.border-box01 .listen {
  background: url(../images/bg_listen.png) 0 0 no-repeat;
  text-align: center;
  line-height: 3;
  padding-left: 142px;
  margin-top: 10px;
}
.border-box01 .talk {
  background: url(../images/bg_talk.png) 0 0 no-repeat;
  text-align: center;
  line-height: 3;
  padding-left: 142px;
  margin-top: 10px;
}

.border-box02 {
  width: 470px;
  border: 3px solid #e6e6e6;
  overflow: hidden;
  padding: 10px;
}

.boxstb
{
width: 470px;
}

.bottom-border1 {
  overflow: hidden;
  padding-bottom: 20px;
  border-bottom: 1px solid  #c1c1c1;
}

/**********************************************************************
 a p
 ********************************************************************* */
a.triangle-link {
  display: block;
  background: url(../images/icon_triangle_red.png) left center no-repeat;
  padding-left: 9px;
  font-size: 115%;
  text-decoration: underline;
}

/**********************************************************************
 FOOTER
 ********************************************************************* */
#footer {
  clear: both;
  background: #e6e6e6;
  margin-top: 40px;
  padding-bottom: 20px;
}

.footer-inner {
  width: 980px;
  margin: 0 auto;
  /* position:relative; */
}

ul.footer-nav {
  font-size: 12px;
  margin: 20px auto 0;
  overflow: hidden;
  width: 619px;
}
ul.footer-nav li {
  float: left;
  padding: 0 15px;
  background: url(../images/img_navi_sepalate.png) left center no-repeat;
}
ul.footer-nav li.first {
  background: none;
}

.footer-linkbox {
  float: left;
  margin-top: 55px;
  margin-left: 50px;
  width: 50%;
}
.footer-linkbox a {
  float: left;
  margin-right: 40px;
}
.footer-linkbox a img {
  background: #e6e6e6;
}
.footer-linkbox a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);
  /* IE5.5+ */
  -moz-opacity: 0.75;
  opacity: 0.75;
}

.footer-contact {
  position: relative;
  float: right;
  background: url(../images/bn_main_contact.png) 0 0 no-repeat;
  width: 270px;
  height: 105px;
  margin-top: 15px;
}
.footer-contact a {
  display: block;
  position: absolute;
  left: 14px;
  top: 26px;
}
.footer-contact a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=75);
  /* IE5.5+ */
  -moz-opacity: 0.75;
  opacity: 0.75;
}

#copy {
  background: #222222;
  height: 50px;
}
#copy .inner {
  width: 980px;
  margin: 0 auto;
  color: #ffffff;
  font-size: 12px;
  line-height: 4.4;
  text-align: center;
}

/**********************************************************************
 TABLE
 ********************************************************************* */
table.tbl-blue {
  border-collapse: collapse;
  border: 1px solid  #c1c1c1;
  width: 100%;
}
table.tbl-blue th {
  background: #acc0e1;
  border-bottom: 1px solid  #ffffff;
  font-weight: normal;
  vertical-align: middle;
  padding: 11px 10px;
}
table.tbl-blue th.last {
  border-bottom: none;
}
table.tbl-blue td {
  border: 1px solid  #c1c1c1;
  padding: 11px 10px;
  line-height: 1.44;
}

table.tbl-bluecase {
  border-collapse: collapse;
  border: 1px solid  #c1c1c1;  !important;
  width: 100%;
}
table.tbl-bluecase th {
  border: 1px solid  #c1c1c1;  !important;
  background: #acc0e1;
  font-weight: normal;
  vertical-align: middle;
  padding: 11px 10px;
}
table.tbl-bluecase td {
  border: 1px solid  #c1c1c1;
  padding: 11px 10px;
  line-height: 1.44;
  vertical-align:middle;
}


/**********************************************************************
FORM
 ********************************************************************* */
.form-area {
  width: 510px;
  margin-top: 0px;
}

form.contact-form input[type="text"] {
  width: 100%;
  padding: 7px;
  border: 1px solid  #c1c1c1;
}
form.contact-form input[type="text"]#tel1, form.contact-form input[type="text"]#tel2, form.contact-form input[type="text"]#tel3 {
  width: 30%;
  margin-right: 3px;
  margin-left: 3px;
}
form.contact-form input[type="text"]#tel1 {
  margin-left: 0;
}
form.contact-form textarea {
  width: 100%;
  padding: 7px;
  border: 1px solid  #c1c1c1;
  width: 100% !important;
  height: 100% !important;
}
form.contact-form button {
  background: none;
  border: none;
  /* 	img:hover {
  		@include 
  		} */
}
form.contact-form table {
  margin-top: 20px;
}
form.contact-form table tr {
  border-bottom: 1px dotted #c1c1c1;
}
form.contact-form table th {
  text-align: left;
  vertical-align: middle;
  width: 150px;
}
form.contact-form table td {
  padding: 10px;
  /* width: 80%; */
}

.header-red p{
  background: url(../images/q.png) left center no-repeat;
  font-size: 16px;
  padding-left: 10px;
  padding-top: 3px;
}

.question {
height: 40px;
margin: 10px 0;
padding-left: 50px;
line-height: 40px;
vertical-align: middle;
font-weight: bold;
background: url("../images/q.gif") no-repeat;
background-position: 5px;
}

.answer {
height: 40px;
margin-left: 50px;
margin-bottom: 10px;
padding-left: 50px;
background: url("../images/a.gif") no-repeat;
}

/**********************************************************************
 SUPPORT
 ********************************************************************* */
.pr87 {
  padding-right: 87px;
}

.inline {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

a.caseLink {/*リンクされた文字*/
    color:#BA1C1C;
    font-style:normal;
}

/*事例ページ用ページ*/
a:hover.caseLink {/*マウスをのせたとき*/
    color:#0000FF;
    font-style:normal;
    text-decoration:underline;
}
a:active.caseLink {/*クリック中*/
    text-decoration:none;
}