@charset "utf-8";

.main-index .titLArea {
max-width: 74rem;
}
.main-index h2:not([class]) {
position: relative;
margin: 2rem 0 4rem 0;
padding: 3rem;
color: #000;
font-size: 3.4rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.main-index h2:not([class]) a {
display: inline-block;
padding: 0 5rem 0 0;
background: url(img/arrow02_green.png) no-repeat right center;
background-size: 22px auto;
color: inherit;
text-decoration: none;
}
.main-index h2:not([class]) span {
font-size: 2rem;
}


/*--------------------------------------
keyArea
---------------------------------------*/
.keyArea {
padding: 5rem 0 0 0;
}
.keyArea .inner {
position: relative;
width: 140rem;
margin: 0 auto;
}
.keyArea .inner::before {
position: absolute;
left: -2.5rem;
top: -5rem;
width: calc(100% - 5rem);
height: 100%;
background: #2aab9f;
content: "";
z-index: -1;
}
.keyArea .txtArea {
position: relative;
width: 135rem;
min-height: 44rem;
margin: 0 auto;
padding: 3rem 68rem 3rem 12rem;
background: #fafafa url(img/z24f_mv_bg_01.jpg) no-repeat right bottom;
}
.keyArea .mainTit {
margin: 0 0 2rem 0;
color: #31394C;
font-size: 3.8rem;
font-weight: 700;
line-height: 1.4;
}
.keyArea .mainTit span {
display: inline-block;
margin: 0 0 0.5rem 0;
padding: 0.4rem 0.8rem 0.6rem 0.8rem;
background: #354341;
color: #f5bf09;
font-size: 3rem;
line-height: 1.1;
}
.keyArea p:not([class]) {
margin: 1em 3rem 0 0;
color: #000;
font-size: 1.5rem;
line-height: 2;
}


/*--------------------------------------
addCont02
---------------------------------------*/
.addCont02 {
padding: 8rem 0;
background: #f2fce6;
}
.addCont02-company {
margin: 0 0 8rem 0;
padding: 5rem;
background: #fff;
border: 3px solid #354341;
}
.addCont02-company:last-child {
margin: 0;
}
.addCont02 .catch-title {
position: relative;
margin: 0 0 3rem 0;
padding: 1.6rem 6rem;
background: #354341;
color: #f5bf09;
font-size: 3.2rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.addCont02 .catch-title::before {
position: absolute;
left: -2.8rem;
top: -3.8rem;
width: 9.6rem;
height: 9.6rem;
background: url(img/add01_ico_01.png) no-repeat left top;
background-size: contain;
content: "";
}
#company-2 .catch-title::before {
background: url(img/add01_ico_02.png) no-repeat left top;
background-size: contain;
}
#company-3 .catch-title::before {
background: url(img/add01_ico_03.png) no-repeat left top;
background-size: contain;
}
.addCont02 .catch-title span {
font-size: 3.7rem;
}
.addCont02 .name {
margin: 0 0 5rem 0;
padding: 0 0 2rem 0;
border-bottom: 1px solid #3b465b;
font-size: 3rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.addCont02 .fig {
max-width: 64rem;
margin: 0 auto;
text-align: center;
}
.addCont02 .fig + .caption {
text-align: center;
}
.addCont02 .title {
margin: 8rem 0 3rem 0;
font-size: 3rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}




.block-feature {
margin: 5rem 0 0 0;
padding: 3rem 3.5rem 4rem 3.5rem;
background: rgb(242,252,230);
background: -webkit-linear-gradient(180deg, rgba(242,252,230,1) 20%, rgba(197,234,212,1) 100%);
background: linear-gradient(180deg, rgba(242,252,230,1) 20%, rgba(197,234,212,1) 100%);
}
.block-feature .title-wrap {
text-align: center;
}
.block-feature .title {
display: inline-block;
margin: 0;
padding: 1.2rem 3rem;
background: #fff;
}
.addCont02 .ttl {
margin: 4rem 0 1.5rem 0;
padding: 0 0 1rem 0;
border-bottom: 1px solid #354341;
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
}
.block-case {
position: relative;
margin: 4rem 0 0 0;
background: #f6f6f7;
}
.block-case::before {
position: absolute;
left: -1.2rem;
top: -1.5rem;
width: 16.6rem;
height: 4rem;
padding: 0 0 0 2.6rem;
background: #f5bf09;
color: #384357;
font-size: 1.7rem;
font-weight: 700;
line-height: 3.8rem;
content: "CASE";
}
.block-case::after {
position: absolute;
left: -1.2rem;
top: 0.3rem;
width: 1.8rem;
height: 0.2rem;
background: #384357;
content: "";
}
.block-case .box {
padding: 5rem 4rem;
}
.block-case .box p:not([class]) {
margin: 2rem 0;
}
.block-case .box .catch {
margin: 0 0 2.5rem 0;
font-size: 2.2rem;
font-weight: 700;
line-height: 1.4;
text-align: center;
}
.block-case .box .float-wrap {
margin: 0;
}
.block-case .box .float-wrap .fl {
width: 30rem;
}
.block-case .box .btn-web {
max-width: 37rem;
margin: 3rem auto 0 auto;
}
.addCont02 .title + ul:not([class]) {
margin: 0 4rem;
font-size: 1.6rem;
font-weight: 700;
}
.addCont02 table th {
width: 18rem;
background: #f5f5f5;
color: #354341;
font-size: 1.5rem;
}
.addCont02 table td {
font-size: 1.3rem;
}


/*--------------------------------------
addCont03
---------------------------------------*/
.addCont03 {
padding: 8rem 0 0 0;
}
.addCont03 .accordion-btn::after {
content: "ロボット保守会社をもっとみる";
}
.addCont03 .accordion-btn.is-open::after {
content: "ロボット保守会社を閉じる";
}


/*--------------------------------------
addCont04
---------------------------------------*/
.addCont04 {
padding: 6rem 0;
}


/*--------------------------------------
addCont05
---------------------------------------*/
.addCont05 {
padding: 8rem 0;
background: rgb(242,252,230);
background: -webkit-linear-gradient(180deg, rgba(242,252,230,1) 20%, rgba(197,234,212,1) 100%);
background: linear-gradient(180deg, rgba(242,252,230,1) 20%, rgba(197,234,212,1) 100%);
}
.addCont05 .accordion-btn {
margin: 0 auto 4rem auto;
}
.addCont05 .block {
margin: 6rem 0 0 0;
counter-reset: number 0;
}
.addCont05 .box {
margin: 0 0 2.4rem 0;
padding: 1rem 4.5rem 3.5rem 4.5rem;
background: #fff;
}
.addCont05 .box .ttl {
display: flex;
align-items: center;
position: relative;
min-height: 6.8rem;
margin: 0 0 2rem 0;
padding: 2rem 0 2rem 6.8rem;
border-bottom: 1px dashed #354341;
font-size: 2.3rem;
font-weight: 700;
line-height: 1.4;
}
.addCont05 .box .ttl::before {
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
color: #2aab9f;
font-family: "Oswald", sans-serif;
font-size: 5rem;
font-weight: 600;
line-height: 1.1;
content: counter(number, decimal-leading-zero);
counter-increment: number 1;
}
.addCont05 .box .ttl a {
display: block;
width: 100%;
padding: 0 2rem 0 0;
background: url(img/arrow_black.png) no-repeat right center;
background-size: 10px auto;
color: inherit;
text-decoration: none;
}
.addCont05 .box p:not([class]) {
margin: 0;
}


































@media screen and (max-width: 480px) {

.main-index .titLArea {
max-width: 100%;
}
.main-index h2:not([class]) {
margin: 0 0 4rem 0;
padding: 2rem;
font-size: 2.4rem;
}
.main-index h2:not([class]) a {
display: block;
padding: 0 3rem 0 0;
}
.main-index h2:not([class]) span {
font-size: 1.6rem;
}


/*--------------------------------------
keyArea
---------------------------------------*/
.keyArea {
margin: 1rem 0;
padding: calc(65% + 1.5rem) 1.5rem 2rem 1.5rem;
background: url(img/z24f_mv_bg_02.jpg) no-repeat center top;
background-size: 100% auto;
}
.keyArea .inner {
width: 100%;
}
.keyArea .inner::before {
display: none;
content: none;
}
.keyArea .txtArea {
width: 100%;
min-height: auto;
padding: 0;
background: none;
}
.keyArea .txtArea::before {
display: none;
content: none;
}
.keyArea .mainTit {
margin: 0 0 1.5rem 0;
font-size: 2.4rem;
}
.keyArea .mainTit span {
font-size: 2.1rem;
}
.keyArea p:not([class]) {
margin: 0;
line-height: 1.7em;
}


/*--------------------------------------
addCont02
---------------------------------------*/
.addCont02 {
padding: 5rem 0;
}
.addCont02-company {
margin: 0 0 5rem 0;
padding: 3rem 1.2rem;
}
.addCont02 .catch-title {
padding: 1.6rem 3rem;
font-size: 1.8rem;
}
.addCont02 .catch-title::before {
left: -1rem;
top: -2rem;
width: 5rem;
height: 5rem;
}
.addCont02 .catch-title span {
font-size: 2.1rem;
}
.addCont02 .name {
margin: 0 0 3rem 0;
padding: 0 0 1rem 0;
font-size: 2.4rem;
}



.addCont02 .fig {
max-width: 100%;
}
.addCont02 .title {
margin: 6rem 0 3rem 0;
font-size: 2rem;
position: relative;
}

.addCont02 .title:before,
.addCont02 .title:after{
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 30px;
  height: 2px;
  border-top: solid 2px #354341;
}

.addCont02 .title:before {
    left:0;
  }
  .addCont02 .title:after {
    right: 0;
  }


  .addCont02 .title-wrap h4:before,
  .addCont02 .title-wrap h4:after{
    border: none;    
}
  

.block-feature {
margin: 4rem 0 0 0;
padding: 2rem;
}
.block-feature .title {
margin: 0;
padding: 1.2rem 2rem;
}
.addCont02 .ttl {
margin: 3rem 0 1.5rem 0;
font-size: 1.8rem;
}
.block-case {
position: relative;
margin: 4rem 0 0 0;
background: #f6f6f7;
}
.block-case::before {
left: -1rem;
width: 12rem;
}
.block-case .box {
padding: 4rem 2rem 2rem 2rem;
}
.block-case .box .catch {
margin: 0 0 2rem 0;
font-size: 1.8rem;
}
.block-case .box .float-wrap .fl {
width: 100%;
}
.block-case .box .btn-web {
max-width: 90%;
margin: 3rem auto 0 auto;
}
.addCont02 .title + ul:not([class]) {
margin: 0;
font-size: 1.4rem;
}
.addCont02 table th {
width: 100%;
}


/*--------------------------------------
addCont03
---------------------------------------*/
.addCont03 {
padding: 5rem 0 0 0;
}


/*--------------------------------------
addCont04
---------------------------------------*/
.addCont04 {
padding: 4rem 0;
}


/*--------------------------------------
addCont05
---------------------------------------*/
.addCont05 {
margin: 0;
padding: 5rem 0 2rem 0;
}
.addCont05 .accordion-btn {
margin: 0 auto 3rem auto;
}
.addCont05 .block {
counter-reset: number 0;
}
.addCont05 .box {
margin: 0 0 3rem 0;
padding: 1rem 2rem 2rem 2rem;
}
.addCont05 .box .ttl {
min-height: 5rem;
padding: 1rem 0 1rem 5rem;
font-size: 2rem;
}
.addCont05 .box .ttl::before {
font-size: 4rem;
}

}
