.pageTitleBlock {
  width: 100%;
  background: url(/corporate/wp-content/images/common/pageTitleBlock_sp_bg@3x.png)
}
.service {
  padding-top: 26.66667vw;
  padding-bottom: 0
}
.service .titleBlock {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  width: 100%;
  max-width: 940px;
  margin: 0 auto;
  padding: 0 5.33333vw 0
}
.service .titleBlock .title {
  padding-bottom: 8vw;
  border-bottom: 1px solid #c03;
  letter-spacing: inherit
}
.service .titleBlock .text {
  padding-top: 13.33333vw;
  font-size: 14px;
  font-size: 3.73333vw;
  line-height: 1.85714
}
.service .contentsBlock {
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 16vw;
  padding-top: 6vw;
  padding-bottom: 16vw;
  border-bottom: 1px solid #e0e0e0
}
.service .contentsBlock > .inner {
  width: 100%;
  max-width: 1128px;
  margin: 0 auto;
  padding: 16vw 5.33333vw 0
}
.service .contentsBlock > .inner > .btnBlock {
  padding: 10.66667vw 0 16vw
}
.service .contentsBlock .title {
  width: 100%;
  margin-bottom: 16vw;
  font-size: 30px;
  font-size: 8vw
}
.service .contents {
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  width: 100%
}
.service .contents:nth-last-of-type(1) {
  margin-bottom: 0
}
.service .contents .contentsItemLink {
  display: inline;
  z-index: 1;
  position: relative;
  position: relative;
  bottom: 0;
  margin: auto 8vw 8vw 50.66667vw;
  margin-top: auto;
  padding-right: 4.49867vw;
  color: #c03;
  font-weight: 500;
  font-size: 14px;
  font-size: 3.73333vw;
  text-align: right
}
.service .contents .contentsItemLink::after {
  -webkit-transform: translateY(-50%);
  display: block;
  position: absolute;
  top: 50%;
  right: 0;
  width: 1.832vw;
  height: 3.38133vw;
  transform: translateY(-50%);
  background: url(/corporate/wp-content/images/common/img_btn_arrow_right_red.svg);
  background-size: cover;
  background-repeat: no-repeat;
  content: ""
}
.service .contents .listBlock {
  -ms-flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  z-index: 0;
  position: relative;
  flex-wrap: wrap;
  justify-content: center;
  width: 100%;
  border: 1px solid #e0e0e0;
  border-radius: 1.6vw
}
.service .contents .listBlock::before {
  display: block;
  z-index: 1;
  position: relative;
  width: 100%;
  background: #fff;
  content: ""
}
.service .contents .listBlock .list {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 5.33333vw 0;
  border-bottom: 1px solid #e0e0e0;
  background: #f4f4f4;
  font-weight: 700;
  font-size: 14px;
  font-size: 3.73333vw
}
.service .contents .listBlock .list:nth-last-of-type(1) {
  margin-right: 0
}
.service .contents .listBlock .list:nth-of-type(3) {
  z-index: 2;
  background: #fff;
  color: #c03
}
.service .contentsItem {
  -ms-flex-wrap: wrap;
  -webkit-box-shadow: 0 0 5.33333vw rgba(0,0,0,.03);
  -webkit-transition: -webkit-box-shadow .2s;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 16vw;
  border-radius: 1.6vw;
  background: #fff;
  box-shadow: 0 0 5.33333vw rgba(0,0,0,.03);
  transition: -webkit-box-shadow .2s;
  transition: box-shadow .2s;
  transition: box-shadow .2s,-webkit-box-shadow .2s
}
.service .contentsItem:hover {
  -webkit-box-shadow: 0 0 5.33333vw rgba(204,0,25,.25);
  -webkit-transition: -webkit-box-shadow .2s;
  box-shadow: 0 0 5.33333vw rgba(204,0,25,.25);
  transition: -webkit-box-shadow .2s;
  transition: box-shadow .2s;
  transition: box-shadow .2s,-webkit-box-shadow .2s
}
.service .contentsItem a {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  width: 100%;
  color: #000
}
.service .contentsItem a:hover .contentsTitle,
.service .contentsItem a:hover .text {
  color: #000
}
.service .contentsItem picture {
  display: block;
  width: 100%
}
.service .contentsItem img {
  width: 100%;
  height: auto
}
.service .contentsItem .contentsTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8vw 8vw 5.33333vw;
  font-size: 24px;
  font-size: 6.4vw
}
.service .contentsItem .contentsSubTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 8vw 5.33333vw;
  color: #c03;
  font-weight: 700;
  font-size: 18px;
  font-size: 4.8vw
}
.service .contentsItem .text {
  padding: 0 8vw 12vw;
  font-size: 14px;
  font-size: 3.73333vw;
  line-height: 1.85714
}
.service .contentsItem .tagArea {
  -ms-flex-wrap: wrap;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  padding: 0 8vw 8vw;
  font-size: 14px;
  font-size: 3.73333vw
}
.service .contentsItem .tagArea .tag {
  margin-right: 2.66667vw;
  margin-bottom: 2.66667vw;
  padding: 1.86667vw 2.66667vw 2.13333vw;
  border-radius: 1.6vw;
  background: #ffebee;
  color: #c03;
  font-size: 13px;
  font-size: 3.46667vw;
  line-height: 1.46154
}
.service > .btnBlock {
  padding-bottom: 16vw;
  border-bottom: 1px solid #d5d5d5
}
@media (min-width:768px) and (max-width:1128px) {
  .pageTitleBlock {
    background: url(/corporate/wp-content/images/common/pageTitleBlock_bg@2x.png)
  }
  .service {
    padding-top: 1.77305vw;
    padding-bottom: 0
  }
  .service .titleBlock {
    padding: 0 1.77305vw;
    padding-top: 5.31915vw
  }
  .service .titleBlock .title {
    padding-bottom: 2.65957vw
  }
  .service .titleBlock .text {
    padding-top: 5.31915vw;
    font-size: 14px;
    font-size: 1.24113vw
  }
  .service .contentsBlock {
    margin-bottom: 7.0922vw;
    padding-top: 0;
    padding-bottom: 7.0922vw
  }
  .service .contentsBlock > .inner {
    padding: 8.86525vw 1.77305vw 0
  }
  .service .contentsBlock > .inner > .btnBlock {
    padding: 5.31915vw 0 6.64894vw
  }
  .service .contentsBlock .title {
    margin-bottom: 5.31915vw;
    font-size: 30px;
    font-size: 2.65957vw
  }
  .service .contents {
    margin-bottom: 8.86525vw
  }
  .service .contents .contentsItemLink {
    margin: auto 4.43262vw 2.65957vw 30.93972vw;
    padding-right: 1.49557vw;
    font-size: 14px;
    font-size: 1.24113vw
  }
  .service .contents .contentsItemLink::after {
    width: .60904vw;
    height: 1.12411vw
  }
  .service .contents .listBlock {
    margin-top: -.88652vw
  }
  .service .contents .listBlock::before {
    -webkit-box-shadow: 0 .1773vw .44326vw -.1773vw rgba(0,0,0,.15);
    height: .88652vw;
    box-shadow: 0 .1773vw .44326vw -.1773vw rgba(0,0,0,.15)
  }
  .service .contents .listBlock .list {
    width: 31.02837vw;
    height: 5.4078vw;
    margin-right: .35461vw;
    padding: 0;
    border: none;
    border-radius: 0 0 .53191vw .53191vw;
    font-size: 14px;
    font-size: 1.24113vw
  }
  .service .contents .listBlock .list:nth-of-type(3):before {
    top: -.88652vw;
    height: .88652vw
  }
  .service .contents .listBlock .list:nth-of-type(3) {
    -webkit-box-shadow: 0 0 .35461vw 0 rgba(0,0,0,.15);
    box-shadow: 0 0 .35461vw 0 rgba(0,0,0,.15)
  }
  .service .contentsItem {
    -webkit-box-shadow: 0 0 1.77305vw rgba(0,0,0,.03);
    width: 47.24265%;
    margin-right: 4.59559%;
    margin-bottom: 5.31915vw;
    border-radius: .53191vw;
    box-shadow: 0 0 1.77305vw rgba(0,0,0,.03)
  }
  .service .contentsItem:hover {
    -webkit-box-shadow: 0 0 1.77305vw rgba(204,0,25,.25);
    box-shadow: 0 0 1.77305vw rgba(204,0,25,.25)
  }
  .service .contentsItem picture {
    height: 25.70922vw
  }
  .service .contentsItem .contentsTitle {
    padding: 2.65957vw 4.43262vw 1.77305vw;
    font-size: 24px;
    font-size: 2.12766vw
  }
  .service .contentsItem .contentsSubTitle {
    min-height: 6.56028vw;
    padding: 0 4.43262vw 1.77305vw;
    font-size: 18px;
    font-size: 1.59574vw
  }
  .service .contentsItem .text {
    padding: 0 4.43262vw 3.98936vw;
    font-size: 14px;
    font-size: 1.24113vw
  }
  .service .contentsItem .tagArea {
    padding: 0 4.43262vw 1.77305vw
  }
  .service .contentsItem .tagArea .tag {
    margin-right: .88652vw;
    margin-bottom: .88652vw;
    padding: .62057vw .88652vw .70922vw;
    border-radius: .53191vw;
    font-size: 13px;
    font-size: 1.15248vw;
    line-height: 1.46154
  }
  .service > .btnBlock {
    padding-bottom: 7.0922vw
  }
}
@media (min-width:768px) {
  .service .contents .listBlock {
    border: none;
    border-radius: 0
  }
  .service .contents .listBlock .list a {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%
  }
  .service .contents .listBlock .list:nth-of-type(3):before {
    display: block;
    position: absolute;
    width: 100%;
    background: #fff;
    content: ""
  }
  .service .contentsItem:nth-of-type(2n) {
    margin-right: 0
  }
  .service .contentsItem:nth-last-of-type(-n+2) {
    margin-bottom: 0
  }
}
@media (min-width:1129px) {
  .pageTitleBlock {
    background: url(/corporate/wp-content/images/common/pageTitleBlock_bg@2x.png)
  }
  .service {
    padding-top: 100px;
    padding-bottom: 0
  }
  .service .titleBlock {
    padding: 0 20px
  }
  .service .titleBlock .title {
    padding-bottom: 30px
  }
  .service .titleBlock .text {
    padding-top: 60px;
    font-size: 14px
  }
  .service .contentsBlock {
    margin-bottom: 80px;
    padding-top: 0;
    padding-bottom: 80px
  }
  .service .contentsBlock > .inner {
    padding: 100px 20px 0;
    padding-top: 100px
  }
  .service .contentsBlock > .inner > .btnBlock {
    padding: 60px 0 75px
  }
  .service .contentsBlock .title {
    margin-bottom: 60px;
    font-size: 30px
  }
  .service .contents {
    margin-bottom: 100px
  }
  .service .contents .contentsItemLink {
    margin: auto 50px 30px 335px;
    padding-right: 16.87px;
    font-size: 14px
  }
  .service .contents .contentsItemLink::after {
    width: 6.87px;
    height: 12.68px
  }
  .service .contents .listBlock {
    margin-top: -10px
  }
  .service .contents .listBlock::before {
    -webkit-box-shadow: 0 2px 5px -2px rgba(0,0,0,.15);
    height: 10px;
    box-shadow: 0 2px 5px -2px rgba(0,0,0,.15)
  }
  .service .contents .listBlock .list {
    width: 350px;
    height: 61px;
    margin-right: 4px;
    padding: 0;
    border: none;
    border-radius: 0 0 6px 6px;
    font-size: 14px
  }
  .service .contents .listBlock .list:nth-of-type(3):before {
    top: -10px;
    height: 10px
  }
  .service .contents .listBlock .list:nth-of-type(3) {
    -webkit-box-shadow: 0 0 4px 0 rgba(0,0,0,.15);
    box-shadow: 0 0 4px 0 rgba(0,0,0,.15)
  }
  .service .contentsItem {
    -webkit-box-shadow: 0 0 20px rgba(0,0,0,.03);
    width: 44.32624vw;
    max-width: 514px;
    max-width: 514px;
    margin-right: 60px;
    margin-bottom: 60px;
    border-radius: 6px;
    box-shadow: 0 0 20px rgba(0,0,0,.03)
  }
  .service .contentsItem:hover {
    -webkit-box-shadow: 0 0 20px rgba(204,0,25,.25);
    box-shadow: 0 0 20px rgba(204,0,25,.25)
  }
  .service .contentsItem picture {
    height: 290px
  }
  .service .contentsItem .contentsTitle {
    padding: 30px 50px 20px;
    font-size: 24px
  }
  .service .contentsItem .contentsSubTitle {
    min-height: 74px;
    padding: 0 50px 20px;
    font-size: 18px
  }
  .service .contentsItem .text {
    padding: 0 50px 45px;
    font-size: 14px
  }
  .service .contentsItem .tagArea {
    padding: 0 50px 20px
  }
  .service .contentsItem .tagArea .tag {
    margin-right: 10px;
    margin-bottom: 10px;
    padding: 7px 10px 8px;
    border-radius: 6px;
    font-size: 13px;
    line-height: 1.46154
  }
  .service > .btnBlock {
    padding-bottom: 80px
  }
}
@media (max-width:767px) {
  .service .contents:nth-of-type(1) {
    margin-bottom: 16vw;
    padding-bottom: 16vw;
    border-bottom: 1px solid #ededed
  }
  .service .contents .listBlock .list:nth-of-type(1) {
    border-radius: 1.6vw 1.6vw 0 0
  }
  .service .contents .listBlock .list:nth-last-of-type(1) {
    border-bottom: none;
    border-radius: 0 0 1.6vw 1.6vw
  }
  .service .contentsItem:nth-last-of-type(1) {
    margin-bottom: 0
  }
  .service > .btnBlock .btnRed {
    padding: 0 5.33333vw
  }
}