@charset "utf-8";

/*
  File Name   : business.css
  Description : 事業内容
*/



.article {
  margin-bottom: 100px;
}

/* intro
============================================================ */
.intro {
  padding-top: 70px;
}
.intro__ttl {
  text-align: center;
}
.intro__desc {
  text-align: center;
}
.intro__figure {
  margin: 30px 0;
}

.feature__item {
  border: 5px solid #00458c;
}
.feature__item + .feature__item {
  border-top: none;
}
.feature__item dl {
  display: table;
  table-layout: fixed;
  width: 100%;
  padding: 15px 25px;
}
.feature__item dl > * {
  display: table-cell;
  vertical-align: middle;
}
.feature__item dt {
  width: 270px;
}
.feature__item dt span {
  display: block;
  line-height: 45px;
  font-size: 15px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  border-radius: 2px;
  background: #00458c;
}
.feature__item dd {
  padding-left: 1.5em;
}


/* business-type
============================================================ */
.business-type {
  margin-top: 90px;
}
.business-type__ttl {
  font-size: 30px
}
.business-type__copy {
  text-align: center;
}
.business-type__desc {
  margin-top: 1em;
}

/* business-type-detail
============================================================ */
.business-type-detail-header {
  height: 180px;
  position: relative;
  background: no-repeat center center;
}
.business-type-detail__ttl {
  position: absolute;
  width: 310px;
  top: 50%;
  left: 50%;
  font-weight: bold;
  color: #fff;
  text-align: center;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}
.business-type-detail__ttl .en {
  display: block;
  padding-bottom: 1em;
  margin-bottom: 1em;
  font-size: 15px;
  border-bottom: 1px solid;
}
.business-type-detail__ttl strong {
  font-size: 26px;
}
.business-type-detail__figure {
  position: absolute;
  top: 50%;
  right: 30px;
  margin-top: -15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

/* business-type-feature
============================================================ */
.business-type-feature {
  margin-top: 40px;
}
.business-type-feature-wrap {
  float: left;
  width: 48%;
}
.business-type-feature__figure {
  float: right;
  width: 48%;
  position: relative;
}
.business-type-feature__figure figcaption {
  position: absolute;
  width: 100%;
  left: 0;
  bottom: 0;
  padding: 5em 2em 2em;
  color: #fff;
  background: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEgMSIgcHJlc2VydmVBc3BlY3RSYXRpbz0ibm9uZSI+CiAgPGxpbmVhckdyYWRpZW50IGlkPSJncmFkLXVjZ2ctZ2VuZXJhdGVkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgeDE9IjAlIiB5MT0iMCUiIHgyPSIwJSIgeTI9IjEwMCUiPgogICAgPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iIzAwMDAwMCIgc3RvcC1vcGFjaXR5PSIwIi8+CiAgICA8c3RvcCBvZmZzZXQ9IjEwMCUiIHN0b3AtY29sb3I9IiMwMDAwMDAiIHN0b3Atb3BhY2l0eT0iMC42Ii8+CiAgPC9saW5lYXJHcmFkaWVudD4KICA8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMSIgaGVpZ2h0PSIxIiBmaWxsPSJ1cmwoI2dyYWQtdWNnZy1nZW5lcmF0ZWQpIiAvPgo8L3N2Zz4=);
  background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.6) 100%);
  background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 100%);
  background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.6) 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#99000000',GradientType=0 );
}

/* business-type-maker
============================================================ */
.business-type-maker {
  margin-top: 70px;
}
.business-type-maker__ttl {
  font-size: 30px;
}
.business-type-maker-list {
  border-top: 4px solid #f3f3ec;
  border-left: 4px solid #f3f3ec;
}
.business-type-maker__item {
  width: 50%;
  float: left;
  padding: 20px;
  border-right: 4px solid #f3f3ec;
  border-bottom: 4px solid #f3f3ec;
}
.business-type-maker__item figure {
  float: right;
  max-width: 33%;
}
.business-type-maker__item dt {
  font-weight: bold;
  margin-bottom: .5em;
}
.business-type-maker__item dd {
  text-indent: -1em;
  margin-left: 1em;
  letter-spacing: -.1em;
}
.business-type-maker__item dd:before {
  content: "・";
  display: inline-block;
  width: 1em;
  text-indent: 0;
}
.business-type-maker__item dd a {
  text-decoration: underline;
}
.business-type-maker__item dd a:hover {
  text-decoration: none;
}

/* business01
============================================================ */
#business01 {
  margin-top: 40px;
}
#business01 .business-type-detail-header {
  background-image: url(/assets/img/business/bg-business01-ttl.jpg);
}
#business01 .business-type-feature-list {
  margin-top: 20px;
}
#business01 .business-type-feature__item {
  padding: 15px 20px;
  border: 4px solid #f3f3ec;
}
#business01 .business-type-feature__item + .business-type-feature__item {
  border-top: none;
}
#business01 .business-type-feature__item dt {
  font-size: 16px;
  font-weight: bold;
  color: #00458c;
  margin-bottom: .5em;
}
#business01 .business-type-feature__item dd {
  text-indent: -1em;
  margin-left: 1em;
}
#business01 .business-type-feature__item dd:before {
  content: "・";
  display: inline-block;
  width: 1em;
  text-indent: 0;
}

/* business02
============================================================ */
#business02 {
  margin-top: 100px;
}
#business02 .business-type-detail-header {
  background-image: url(/assets/img/business/bg-business02-ttl.jpg);
}
#business02 .business-type-feature-list {
  margin-top: 20px;
}
#business02 .business-type-feature__item {
  width: 33.33%;
  float: left;
  padding: 0 15px 15px 0;
}
#business02 .business-type-feature__item figcaption {
  text-align: center;
  font-weight: bold;
}


/* works
============================================================ */
.works {
  margin-top: 90px;
}
.works__ttl {
  font-size: 30px;
}
.works-list {
  border: 2px solid #f3f3f3;
}
.works__item {
  float: left;
  width: 33.33%;
  padding: 2.6%;
  border: 2px solid #f3f3f3;
}
.works__item figure {
  max-width: 250px;
  margin: 0 auto;
}
.works__item figcaption {
  margin-top: .5em;
}


/* follow
============================================================ */
.follow {
  margin-top: 80px;
}
.follow-header {
  float: left;
  width: 48%;
}
.follow__desc {
  margin-top: 1em;
}
.follow__figure {
  float: right;
  width: 48%;
}


@media screen and (max-width: 767px) {
  .article {
    margin-bottom: 12.5vw;
  }
  
  /* intro
  ============================================================ */
  .intro {
    padding-top: 3.5em;
  }
  .intro__desc {
    text-align: left;
  }
  .intro__figure {
    margin: 4.69vw 0;
  }

  .feature__item {
    border-width: .2em;
  }
  .feature__item dl {
    display: block;
    padding: .75em 1.25em 1.25em;
  }
  .feature__item dl > * {
    display: block;
  }
  .feature__item dt {
    width: auto;
  }
  .feature__item dt span {
    line-height: 2.25em;
    font-size: 110%;
  }
  .feature__item dd {
    padding-left: 0;
    margin-top: .5em;
  }


  /* business-type
  ============================================================ */
  .business-type {
    margin-top: 10.94vw;
  }
  .business-type__ttl {
    font-size: 170%;
  }
  .business-type__copy {
    margin: 0 -6.25vw;
  }

  /* business-type-detail
  ============================================================ */
  .business-type-detail-header {
    height: 180px;
    position: relative;
    background: no-repeat center center;
  }
  .business-type-detail__ttl {
    width: 67.19vw;
  }
  .business-type-detail__ttl .en {
    font-size: 70%;
  }
  .business-type-detail__ttl strong {
    font-size: 130%;
  }
  .business-type-detail__figure {
    width: 18vw;
    right: 3.125vw;
    margin-top: 0;
  }
  
  /* business-type-feature
  ============================================================ */
  .business-type-feature {
    margin-top: 6.25vw;
  }
  .business-type-feature-wrap {
    float: none;
    width: auto;
  }
  .business-type-feature__figure {
    float: none;
    width: auto;
    margin-top: 6.25vw;
    text-align: center;
  }
  .business-type-feature__figure figcaption {
    position: static;
    padding: 0;
    margin-top: 1em;
    color: inherit;
    text-align: left;
    background: none;
  }
  
  /* business-type-maker
  ============================================================ */
  .business-type-maker {
    margin-top: 6.25vw;
  }
  .business-type-maker__ttl {
    font-size: 170%;
  }
  .business-type-maker-list {
    border-width: .2em;
  }
  .business-type-maker__item {
    width: auto;
    float: none;
    padding: 1em;
    border-width: .2em;
  }
  .business-type-maker__item dt {
    font-weight: bold;
    margin-bottom: .25em;
  }

  /* business01
  ============================================================ */
  #business01 {
    margin-top: 6.25vw;
  }
  #business01 .business-type-feature-list {
    margin-top: 1em;
  }
  #business01 .business-type-feature__item {
    padding: 1em;
    border-width: .2em;
  }
  #business01 .business-type-feature__item dt {
    font-size: 110%;
  }

  /* business02
  ============================================================ */
  #business02 {
    margin-top: 6.25vw;
  }


  /* works
  ============================================================ */
  .works {
    margin-top: 7.81vw;
  }
  .works__ttl {
    margin: 0 -6.25vw 1em;
    font-size: 170%;
  }
  .works-list {
    border-width: .2em 0 0 .2em;
  }
  .works__item {
    width: 50%;
    padding: 4%;
    border-width: 0 .2em .2em 0;
  }

  /* follow
  ============================================================ */
  .follow {
    margin-top: 6.25vw;
  }
  .follow-header {
    float: none;
    width: auto;
  }
  .follow__figure {
    float: none;
    width: auto;
    margin-top: 1em;
    text-align: center;
  }

}

