
/*===============================================
●画面の横幅が813px以上(タブレット・PC)
===============================================*/
@media screen and (min-width: 813px) {

  #wrapper {
    padding: 80px 0 0 0;
  }


  /* メインタイトル
  ---------------------------------------------------------- */
  .main-title {
    position: relative;
    width: 100%;
    height: 200px;
    padding: 50px 0 0 0;
    background: url(../images/products_bg.jpg) center center no-repeat;
    background-size: cover;
  }

  .main-title h2 {
    color: #fff;
  }

  .main-title span.title-line {
    border-top: #fff 2px solid;
  }

  .main-title h3 {
    color: #fff;
  }


  /* 機械詳細
  ---------------------------------------------------------- */
  h4 {
    position: relative;
    width: 960px;
    margin: 60px auto 0 auto;
    padding: 0 0 0 35px;
    font-size: 24px;
    font-weight: bold;
    text-align: left;
    border-bottom: #cccccc 1px solid;
    line-height: 180%;
  }

  h4:before {
    position: absolute;
    top: 12px;
    left: 0;
    content: '';
    width: 20px;
    height: 20px;
    background-color: #005B98;
  }

  .wrap {
    width: 960px;
    min-height: 600px;
    margin: 40px auto 100px auto;
  }

  .detail {
    width: 600px;
    margin: 0 40px 0 0;
  }

  .detail > p.gaiyo {
    width: 600px;
    margin: 0 0 20px 0;
    font-size: 18px;
    text-align: left;
    line-height: 160%;
  }

  .detail table {
    width: 600px;
    margin: 0 auto;
    border-top: #cccccc 1px solid;
    border-right: #cccccc 1px solid;
  }

  .detail table th {
    width: 150px;
    padding: 15px 20px;
    font-size: 16px;
    font-weight: bold;
    text-align: left;
    line-height: 100%;
    border-left: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid;
    box-sizing: border-box;
  }

  .detail table td {
    position: relative;
    padding: 15px 20px;
    font-size: 16px;
    line-height: 160%;
    text-align: left;
    border-left: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid;
    box-sizing: border-box;
  }

  .detail table td a {
    text-decoration: underline;
  }

  .detail p.video-title {
    width: 100%;
    margin: 30px 0 0 0;
    font-size: 18px;
    line-height: 100%;
    text-align: left;
  }

  .detail p.video-txt {
    width: 100%;
    margin: 10px 0 0 0;
    text-align: left;
  }

  .detail p.video-txt > a {
    font-size: 16px;
    line-height: 100%;
    color: #0000ff;
    text-decoration: underline;
  }

  .detail video {
    width: 100%;
    margin: 10px 0 0 0;
  }


  .photo {
    width: 320px;
    margin: 0;
  }

  .photo p.pic-title {
    margin: 0 0 20px 0;
    font-size: 14px;
    line-height: 100%;
    text-align: left;
  }

  .photo > a {
    display: block;
    width: 320px;
    margin: 20px auto 0 auto;
  }

  .photo > a:nth-of-type(1) {
    margin: 0 auto;
  }
  .photo > a img {
    display: block;
    width: 320px;
    margin: 0 auto;
  }

  .photo > p.txt {
    margin: 10px 0 0 0;
    font-size: 16px;
    text-align: left;
    line-height: 160%;
  }


}


/*===============================================
●画面の横幅が812px以下(スマホのみ)
===============================================*/
@media screen and (max-width: 812px) {

  /* メインタイトル
  ---------------------------------------------------------- */
  .main-title {
    position: relative;
    width: 100%;
    height: 150px;
    padding: 65px 0 0 0;
    background: url(../images/products_bg.jpg) center center no-repeat;
    background-size: cover;
  }

  .main-title h2 {
    color: #fff;
  }

  .main-title span.title-line {
    width: 100px;
    border-top: #fff 2px solid;
  }

  .main-title h3 {
    color: #fff;
  }


  /* 機械詳細
  ---------------------------------------------------------- */
  h4 {
    position: relative;
    width: 94%;
    margin: 30px auto 0 auto;
    padding: 0 0 0 23px;
    font-size: 18px;
    font-weight: bold;
    text-align: left;
    border-bottom: #cccccc 1px solid;
    line-height: 160%;
  }

  h4:before {
    position: absolute;
    top: 7px;
    left: 0;
    content: '';
    width: 15px;
    height: 15px;
    background-color: #005B98;
  }

  .wrap {
    width: 94%;
    min-height: 600px;
    margin: 20px auto 100px auto;
  }

  .detail {
    width: 100%;
    margin: 0 auto;
  }

  .detail > p.gaiyo {
    width: 100%;
    margin: 0 auto 20px auto;
    font-size: 16px;
    text-align: left;
    line-height: 160%;
  }

  .detail table {
    width: 100%;
    margin: 0 auto;
    border-top: #cccccc 1px solid;
    border-right: #cccccc 1px solid;
    box-sizing: border-box;
  }

  .detail table th {
    display: block;
    width: 100%;
    padding: 10px 15px;
    font-size: 14px;
    font-weight: bold;
    text-align: left;
    line-height: 100%;
    border-left: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid;
    box-sizing: border-box;
  }

  .detail table td {
    display: block;
    width: 100%;
    position: relative;
    padding: 10px 15px;
    font-size: 14px;
    line-height: 160%;
    text-align: left;
    border-left: #cccccc 1px solid;
    border-bottom: #cccccc 1px solid;
    box-sizing: border-box;
  }

  .detail table iframe {
    width: 100% !important;
  }

  .detail table td a {
    text-decoration: underline;
  }

  .detail p.video-title {
    width: 100%;
    margin: 30px 0 0 0;
    font-size: 16px;
    line-height: 100%;
    text-align: left;
  }

  .detail p.video-txt {
    width: 100%;
    margin: 10px 0 0 0;
    text-align: left;
  }

  .detail p.video-txt > a {
    font-size: 14px;
    line-height: 100%;
    color: #0000ff;
    text-decoration: underline;
  }

  .detail video {
    width: 100%;
    margin: 10px 0 0 0;
  }


  .photo {
    width: 100%;
    margin: 0 auto;
  }

  .photo p.pic-title {
    margin: 0 0 20px 0;
    font-size: 14px;
    line-height: 100%;
    text-align: left;
  }

  .photo > a {
    display: block;
    width: 100%;
    margin: 20px auto 0 auto;
  }

  .photo > a img {
    display: block;
    width: 100%;
    margin: 0 auto;
  }

  .photo > p.txt {
    margin: 10px 0 0 0;
    font-size: 16px;
    text-align: left;
    line-height: 160%;
  }
}
