@media print, screen and (min-width: 769px) {
  article {
    margin-bottom: 120px;
    background: url(../../common/image/common/body_parts.svg) 0 200px no-repeat, url(../../common/image/common/body_parts.svg) 0 1938px no-repeat; }
    article section {
      max-width: 1200px;
      width: 90%;
      margin: 0 auto 120px; }
    article section:last-of-type {
      margin-bottom: 0; }
    article section.headline {
      position: relative;
      margin-bottom: 220px; }
      article section.headline figure {
        overflow: hidden; }
        article section.headline figure img {
          display: block;
          margin-bottom: 30px;
          width: 1200px; }
        article section.headline figure figcaption {
          text-align: right;
          width: 35%;
          float: right;
          font-size: 0.9em;
          line-height: 1.5em; }
      article section.headline figure:after {
        content: "";
        display: block;
        clear: both; }
      article section.headline div {
        position: absolute;
        left: 30px;
        top: 385px;
        width: 450px; }
        article section.headline div h3 {
          width: 510px;
          padding: 30px 30px 30px 90px;
          background: rgba(0, 0, 0, 0.9);
          margin-bottom: 20px;
          color: #fff;
          position: relative;
          left: -60px;
          font-size: 2.2em;
          letter-spacing: 0.05em;
          font-weight: bold; }
          article section.headline div h3 img {
            margin: 0 10px; }
          article section.headline div h3 p {
            padding: 10px 0 0 0;
            font-size: 0.6em;
            font-weight: normal; }
        article section.headline div dl {
          position: relative;
          background: #fff;
          border: 1px solid #f9f9f9; }
          article section.headline div dl dt {
            padding: 30px;
            line-height: 1.5em;
            border-bottom: 1px solid #000;
            font-size: 1.4em;
            letter-spacing: 0; }
          article section.headline div dl dd {
            padding: 30px;
            font-size: 1.05em;
            line-height: 1.85em;
            letter-spacing: 0; }
        article section.headline div dl:before {
          content: "PROJECT";
          display: block;
          position: absolute;
          left: 0;
          top: -30px;
          width: 100px;
          height: 30px;
          background: #1af6d4;
          font-size: 0.8em;
          text-align: center; }
    article section.supplier > div {
      position: relative;
      margin-bottom: 30px; }
      article section.supplier > div img {
        width: 100%;
        max-width: 785px;
        position: relative;
        z-index: 0; }
      article section.supplier > div > div {
        position: absolute;
        width: 45%;
        padding: 30px;
        background: #a395d7;
        right: 0;
        top: 90px; }
        article section.supplier > div > div h4 {
          font-size: 1.7em;
          font-weight: bold;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          margin-bottom: 30px;
          color: #000; }
        article section.supplier > div > div p {
          line-height: 1.5em;
          color: #000; }
    article section.supplier > p {
      font-size: 1.05em;
      letter-spacing: 0.1em;
      line-height: 1.85em; }
    article section.option figure {
      position: relative; }
      article section.option figure img {
        width: 100%; }
      article section.option figure figcaption {
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 15px;
        background: rgba(0, 0, 0, 0.8);
        color: #fff;
        letter-spacing: 0.1em;
        font-size: 1.1em;
        display: block;
        width: 100%; }
    article section.client > div {
      position: relative;
      margin-bottom: 30px; }
      article section.client > div img {
        width: 100%;
        max-width: 785px;
        position: relative;
        z-index: 0;
        float: right;
        top: 0; }
      article section.client > div > div {
        position: absolute;
        width: 45%;
        padding: 30px;
        background: #a395d7;
        top: 98px; }
        article section.client > div > div h4 {
          font-size: 1.7em;
          font-weight: bold;
          letter-spacing: 0.1em;
          line-height: 1.5em;
          margin-bottom: 30px;
          color: #000; }
        article section.client > div > div p {
          line-height: 1.5em;
          color: #000; }
    article section.client > div:after {
      content: "";
      display: block;
      clear: both; }
    article section.client > p {
      width: 100%;
      max-width: 785px;
      float: right;
      font-size: 1.05em;
      letter-spacing: 0.1em;
      line-height: 1.85em; }
    article section.client:after {
      content: "";
      display: block;
      clear: both; }
    article section.finish img {
      width: 100%; }

  aside {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap; }
    aside h3 {
      width: 100%;
      font-size: 2em;
      left: 0.1em;
      text-align: center;
      margin-bottom: 30px;
      letter-spacing: 0.1em; }
    aside div {
      width: 47.5%;
      position: relative; }
      aside div a {
        opacity: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 100; }
      aside div img {
        width: 100%;
        position: relative;
        z-index: 0;
        display: block;
        margin-bottom: 30px; }
      aside div h4 {
        text-align: center;
        font-size: 1.5em;
        margin-bottom: 10px;
        font-weight: bold;
        position: relative; }
      aside div p:nth-of-type(1) {
        font-size: 1.1em;
        text-align: center;
        margin-bottom: 10px; }
      aside div p:nth-of-type(2) {
        font-size: 1em;
        margin: 0 auto;
        text-align: center;
        width: 70%;
        height: 45px;
        line-height: 45px;
        border-radius: 22.5px;
        border: 2px solid #000;
        background: #fff;
        -webkit-transition: all .3s ease-in-out;
        -moz-transition: all .3s ease-in-out;
        -ms-transition: all .3s ease-in-out;
        -o-transition: all .3s ease-in-out;
        transition: all .3s ease-in-out; }
    aside div:hover p:nth-of-type(2) {
      font-size: 1em;
      margin: 0 auto;
      text-align: center;
      width: 70%;
      height: 45px;
      line-height: 45px;
      border-radius: 22.5px;
      border: 2px solid #000;
      background: #000;
      color: #FFF; }
    aside div a:focus + img + h4 + p + p {
      font-size: 1em;
      margin: 0 auto;
      text-align: center;
      width: 70%;
      height: 45px;
      line-height: 45px;
      border-radius: 22.5px;
      border: 2px solid #000;
      background: #000;
      color: #FFF; }
    aside div:nth-of-type(1) h4:before {
      content: "PRO AUDIO";
      color: #fff;
      background: #000;
      padding: 5px 10px;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -moz-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      position: absolute;
      z-index: 10;
      font-size: 0.7em;
      font-weight: normal;
      white-space: nowrap; }
    aside div:nth-of-type(2) h4:before {
      content: "FA SYSTEM";
      color: #fff;
      background: #000;
      padding: 5px 10px;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -moz-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      position: absolute;
      z-index: 10;
      font-size: 0.7em;
      font-weight: normal;
      white-space: nowrap; }
    aside div:nth-of-type(3) h4:before {
      content: "VEHICLE UNIT";
      color: #fff;
      background: #000;
      padding: 5px 10px;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -moz-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      position: absolute;
      z-index: 10;
      font-size: 0.7em;
      font-weight: normal;
      white-space: nowrap; } }
@media screen and (max-width: 768px) {
  article {
    margin-bottom: 60px;
    background: url(../../common/image/common/body_parts.svg) 0 150px no-repeat, url(../../common/image/common/body_parts.svg) 0 2580px no-repeat; }
    article section {
      width: 90%;
      margin: 0 auto 60px; }
    article section:last-of-type {
      margin-bottom: 0; }
    article section.headline {
      position: relative; }
      article section.headline figure {
        overflow: hidden;
        margin-bottom: 30px; }
        article section.headline figure img {
          display: block;
          margin-bottom: 30px;
          width: 100%; }
        article section.headline figure figcaption {
          font-size: 0.9em; }
      article section.headline div h3 {
        padding: 20px;
        background: #000;
        margin-bottom: 10px;
        color: #fff;
        position: relative;
        font-size: 1.4em;
        font-weight: bold;
        text-align: center; }
        article section.headline div h3 img {
          margin: 0 5px; }
        article section.headline div h3 p {
          padding: 10px 0 0 0;
          font-size: 0.6em;
          font-weight: normal;
          text-align: center; }
      article section.headline div dl {
        position: relative;
        background: #f9f9f9; }
        article section.headline div dl dt {
          padding: 20px;
          line-height: 1.5em;
          border-bottom: 1px solid #000;
          font-size: 1.4em;
          text-align: center; }
        article section.headline div dl dd {
          padding: 20px;
          font-size: 1em;
          line-height: 1.85em; }
      article section.headline div dl:before {
        content: "PROJECT";
        display: block;
        position: absolute;
        left: 0;
        top: -30px;
        width: 100px;
        height: 30px;
        background: #1af6d4;
        font-size: 0.8em;
        text-align: center; }
    article section.supplier > div,
    article section.client > div {
      margin-bottom: 30px; }
      article section.supplier > div img,
      article section.client > div img {
        width: 100%; }
      article section.supplier > div > div,
      article section.client > div > div {
        width: 100%;
        padding: 20px;
        background: #a395d7; }
        article section.supplier > div > div h4,
        article section.client > div > div h4 {
          font-size: 1.2em;
          font-weight: bold;
          letter-spacing: 0.01em;
          line-height: 1.5em;
          margin-bottom: 10px;
          color: #000; }
        article section.supplier > div > div p,
        article section.client > div > div p {
          line-height: 1.5em;
          color: #000; }
    article section.supplier > p,
    article section.client > p {
      font-size: 0.9em;
      line-height: 1.85em; }
      article section.supplier > p br,
      article section.client > p br {
        display: none; }
    article section.option figure {
      position: relative; }
      article section.option figure img {
        width: 100%; }
      article section.option figure figcaption {
        display: block;
        padding: 10px;
        background: black;
        color: #fff;
        font-size: 0.9em;
        display: block;
        width: 100%; }
    article section.finish img {
      width: 100%; }

  aside {
    width: 90%;
    max-width: 1200px;
    margin: 0 auto 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap; }
    aside h3 {
      width: 100%;
      font-size: 1.5em;
      left: 0.1em;
      text-align: center;
      margin-bottom: 30px;
      letter-spacing: 0.1em; }
    aside div {
      width: 100%;
      position: relative;
      margin-bottom: 30px; }
      aside div a {
        opacity: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        z-index: 100; }
      aside div img {
        width: 100%;
        position: relative;
        z-index: 0;
        display: block;
        margin-bottom: 30px; }
      aside div h4 {
        text-align: center;
        font-size: 1.5em;
        margin-bottom: 10px;
        font-weight: bold;
        position: relative; }
      aside div p:nth-of-type(1) {
        font-size: 1.1em;
        text-align: center;
        margin-bottom: 10px; }
      aside div p:nth-of-type(2) {
        font-size: 1em;
        margin: 0 auto;
        text-align: center;
        width: 70%;
        height: 45px;
        line-height: 45px;
        border-radius: 22.5px;
        border: 2px solid #000; }
    aside div:nth-of-type(1) h4:before {
      content: "PRO AUDIO";
      color: #fff;
      background: #000;
      padding: 5px 10px;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -moz-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      position: absolute;
      z-index: 10;
      font-size: 0.7em;
      font-weight: normal;
      white-space: nowrap; }
    aside div:nth-of-type(2) h4:before {
      content: "FA SYSTEM";
      color: #fff;
      background: #000;
      padding: 5px 10px;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -moz-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      position: absolute;
      z-index: 10;
      font-size: 0.7em;
      font-weight: normal;
      white-space: nowrap; }
    aside div:nth-of-type(3) h4:before {
      content: "VEHICLE UNIT";
      color: #fff;
      background: #000;
      padding: 5px 10px;
      top: -50px;
      left: 50%;
      -webkit-transform: translate(-50%, 0);
      -moz-transform: translate(-50%, 0);
      -o-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
      transform: translate(-50%, 0);
      position: absolute;
      z-index: 10;
      font-size: 0.7em;
      font-weight: normal;
      white-space: nowrap; }
    aside div:nth-last-of-type(1) {
      margin-bottom: 0; } }
