@charset "UTF-8";
.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -o-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center; }

#bike .main-visual {
  padding-bottom: 3px;
  border-bottom: 1px solid #B0B0B0;
  background-color: #fff; }
  #bike .main-visual .layout img {
    margin: 12px 0 0; }

#bike .left {
  background-color: #fff;
  width: 730px; }

#bike section {
  padding: 25px 0 40px; }
  #bike section .layout .left {
    width: 730px; }
    #bike section .layout .left .sec1 {
      box-shadow: 0px 3px 6px 0 #000;
      position: relative;
      z-index: 1;
      float: left; }
      #bike section .layout .left .sec1 .head {
        background: url("../../../img/bike/pc/bg_head.png") no-repeat center;
        background-size: cover;
        box-shadow: 0px 2px 5px 0 #000; }
        #bike section .layout .left .sec1 .head h2 {
          padding: 20px 0 20px 40px;
          font-size: 0; }
      #bike section .layout .left .sec1 ul {
        justify-content: left;
        margin-top: 12px;
        padding: 0 10px; }
        #bike section .layout .left .sec1 ul li {
          width: 350px;
          background-color: #DFE7E9;
          margin-bottom: 11px;
          padding-bottom: 10px; }
          #bike section .layout .left .sec1 ul li .image {
            width: 210px; }
            #bike section .layout .left .sec1 ul li .image a {
              position: relative;
              display: block;
              font-size: 16px;
              font-weight: bold;
              color: #000;
              width: 185px;
              border: 1px solid #A7BCC3;
              background-image: linear-gradient(to bottom, #fff, #a7bcc3 150%);
              margin: 7px auto 0;
              padding-left: 5px; }
              #bike section .layout .left .sec1 ul li .image a::after {
                content: '';
                position: absolute;
                background: url("../../../img/bike/pc/icon_arrow.png") no-repeat;
                width: 20px;
                height: 28px;
                right: 5px; }
          #bike section .layout .left .sec1 ul li .details {
            width: 140px; }
            #bike section .layout .left .sec1 ul li .details h3 {
              background-color: #A7BCC3;
              font-size: 18px;
              border-bottom: 1px solid #000;
              display: table-cell;
              padding-left: 10px;
              width: 130px;
              height: 70px;
              vertical-align: middle;
              line-height: 1.2; }
            #bike section .layout .left .sec1 ul li .details p {
              font-size: 16px;
              border-bottom: 1px solid #000;
              padding-left: 10px;
              line-height: 1.6; }
            #bike section .layout .left .sec1 ul li .details span {
              font-size: 12px;
              color: #BF272D;
              display: block;
              line-height: 1.4;
              margin: 5px auto 0; }
          #bike section .layout .left .sec1 ul li:nth-child(even) {
            margin-left: 10px; }
        #bike section .layout .left .sec1 ul.txt-red {
          margin: 0;
          padding: 0;
          padding-bottom: 5px; }
          #bike section .layout .left .sec1 ul.txt-red li {
            font-size: 12px;
            line-height: 1.4;
            margin: 0;
            color: #BF272D;
            width: auto;
            padding-bottom: 0; }
            #bike section .layout .left .sec1 ul.txt-red li::before {
              content: '・'; }
      #bike section .layout .left .sec1 .container {
        border: 2px solid #BE272D;
        border-radius: 7px;
        margin: 13px 10px 25px; }
        #bike section .layout .left .sec1 .container .note {
          padding: 57px 12px; }
          #bike section .layout .left .sec1 .container .note h3 {
            font-size: 19px;
            color: #BE272D;
            display: inline-block; }
        #bike section .layout .left .sec1 .container .text {
          font-size: 14px;
          color: #BE272D;
          border-left: 1px solid #BE272D;
          padding: 5px 0 10px 4px;
          width: 600px;
          margin: 5px 0; }
          #bike section .layout .left .sec1 .container .text h4 {
            font-weight: bold; }
          #bike section .layout .left .sec1 .container .text dl {
            margin-top: 5px;
            line-height: 1.4; }
    #bike section .layout .left .sec2 {
      position: relative;
      z-index: 0;
      box-shadow: 0px 1px 2px 0 #000; }
      #bike section .layout .left .sec2 h2 {
        background-color: #BE272D;
        font-size: 24px;
        color: #fff;
        text-align: center;
        font-weight: normal;
        padding-top: 29px; }
      #bike section .layout .left .sec2 .content {
        padding: 0 10px 10px; }
        #bike section .layout .left .sec2 .content p {
          font-size: 14px;
          margin: 16px auto 18px; }
        #bike section .layout .left .sec2 .content .wrap h3 {
          background-image: url("../../../img/bike/pc/bg_headline.png");
          background-repeat: no-repeat;
          background-size: contain;
          font-size: 18px;
          color: #fff;
          height: 29px;
          padding-left: 12px;
          margin-bottom: 12px; }
        #bike section .layout .left .sec2 .content .wrap h4 {
          font-size: 16px;
          background-color: #A7BCC3;
          margin: 20px auto 0;
          line-height: 1.8;
          padding-bottom: 2px; }
          #bike section .layout .left .sec2 .content .wrap h4 span {
            display: inline-block;
            width: 20px;
            height: 10px;
            background-color: #000;
            margin-right: 8px; }
        #bike section .layout .left .sec2 .content .wrap h5 {
          font-size: 14px;
          color: #BE272D;
          font-weight: normal;
          margin-top: 15px;
          position: relative; }
          #bike section .layout .left .sec2 .content .wrap h5.bullets {
            margin-top: 0;
            padding-left: 20px; }
            #bike section .layout .left .sec2 .content .wrap h5.bullets::before {
              content: '・';
              position: absolute;
              left: 0; }
        #bike section .layout .left .sec2 .content .wrap span {
          font-size: 13px;
          color: #BE272D;
          text-align: right;
          display: block; }
        #bike section .layout .left .sec2 .content .wrap p {
          font-size: 14px;
          margin: auto; }
          #bike section .layout .left .sec2 .content .wrap p span {
            font-size: 14px;
            text-align: left; }
          #bike section .layout .left .sec2 .content .wrap p.ml10 {
            margin: 0 0 20px 15px; }
        #bike section .layout .left .sec2 .content .wrap table {
          border: 2px solid #969696;
          margin-top: 15px; }
          #bike section .layout .left .sec2 .content .wrap table tr th {
            background-color: #DFE7E9;
            font-size: 14px;
            font-weight: normal;
            color: #000;
            text-align: center;
            border: 1px solid #969696;
            width: 352px;
            line-height: 1.9;
            vertical-align: middle; }
            #bike section .layout .left .sec2 .content .wrap table tr th.half {
              width: 140px !important; }
          #bike section .layout .left .sec2 .content .wrap table tr td {
            background-color: #fff;
            font-size: 14px;
            color: #000;
            padding-left: 10px;
            text-align: left;
            border: 1px solid #969696;
            width: 352px;
            line-height: 1.5;
            padding: 2px 0 2px 10px; }
          #bike section .layout .left .sec2 .content .wrap table tr.half th {
            width: 140px; }
          #bike section .layout .left .sec2 .content .wrap table tr.half td {
            width: 565px;
            padding: 3px 0 5px 10px; }
          #bike section .layout .left .sec2 .content .wrap table.mb25 {
            margin-bottom: 25px; }
        #bike section .layout .left .sec2 .content .wrap .bg {
          background-color: #EDF2F3;
          padding: 14px 15px 11px;
          margin: 24px auto 20px; }
          #bike section .layout .left .sec2 .content .wrap .bg .mt0 {
            margin-top: 0; }
          #bike section .layout .left .sec2 .content .wrap .bg-bottom {
            padding: 5px 15px;
            margin-top: 20px; }
          #bike section .layout .left .sec2 .content .wrap .bg .box {
            border: 1px solid #A7BCC3;
            background-color: #fff;
            padding: 12px 20px; }
            #bike section .layout .left .sec2 .content .wrap .bg .box .float-left {
              padding-left: 15px; }
            #bike section .layout .left .sec2 .content .wrap .bg .box .float-right {
              width: 480px;
              padding: 10px 0; }
              #bike section .layout .left .sec2 .content .wrap .bg .box .float-right img {
                margin: 10px 20px 10px 0; }
              #bike section .layout .left .sec2 .content .wrap .bg .box .float-right p {
                display: inline-block; }

@media screen and (max-width: 750px) {
  #bike {
    font-family: sans-serif; }
    #bike .main-visual {
      background: rgba(255, 255, 255, 0.6);
      border-bottom: .1rem solid #B0B0B0; }
      #bike .main-visual .layout {
        margin: 0 3rem; }
        #bike .main-visual .layout h2 img {
          margin: 1rem 0 0; }
    #bike .page-link ul {
      margin: 0 3rem; }
      #bike .page-link ul li a::before {
        top: 0; }
    #bike .left {
      background-color: transparent;
      width: auto; }
    #bike section {
      padding: 2.8rem 0 4rem; }
      #bike section .layout .head-orange {
        background-color: #F5911E;
        text-align: center;
        margin: 0 0 2.8rem; }
        #bike section .layout .head-orange img {
          width: 3.5rem;
          margin-top: 1.8rem;
          margin-right: .5rem; }
        #bike section .layout .head-orange p {
          font-size: 3.4rem;
          color: #fff;
          display: inline-block; }
      #bike section .layout .left {
        width: auto;
        float: none; }
        #bike section .layout .left .sec1 {
          box-shadow: 0 4px 2px -2px #000;
          position: relative;
          z-index: 1;
          float: none;
          padding-bottom: 4.7rem;
          margin: 0 -3rem; }
          #bike section .layout .left .sec1 .head {
            background: url("../../../img/bike/sp/bg_head.png") no-repeat center;
            background-size: cover;
            box-shadow: 0 4px 2px -2px #000;
            margin: 0 3rem; }
            #bike section .layout .left .sec1 .head h2 {
              padding: 1.9rem 0 1.8rem 4rem;
              font-size: 0; }
              #bike section .layout .left .sec1 .head h2 img {
                width: 17.9rem; }
          #bike section .layout .left .sec1 ul {
            display: block;
            justify-content: left;
            margin: 3rem 3rem 0;
            padding: 0; }
            #bike section .layout .left .sec1 ul li {
              width: auto;
              background-color: #DFE7E9;
              margin-bottom: 2.7rem; }
              #bike section .layout .left .sec1 ul li .image {
                width: 41.6rem; }
                #bike section .layout .left .sec1 ul li .image a {
                  position: relative;
                  display: block;
                  font-size: 3.1rem;
                  width: 32rem;
                  border: .1rem solid #A7BCC3;
                  background-image: linear-gradient(to bottom, #fff, #a7bcc3 150%);
                  margin: 1.5rem auto;
                  padding: .3rem 3rem 0 1rem;
                  text-align: center; }
                  #bike section .layout .left .sec1 ul li .image a::after {
                    content: '';
                    position: absolute;
                    background: url("../../../img/bike/sp/icon_arrow.png") no-repeat;
                    background-size: contain;
                    width: 3.5rem;
                    height: 5.5rem;
                    right: 1rem;
                    top: 0; }
              #bike section .layout .left .sec1 ul li .details {
                width: 27.4rem; }
                #bike section .layout .left .sec1 ul li .details h3 {
                  background-color: #A7BCC3;
                  font-size: 3.5rem;
                  border-bottom: 1px solid #000;
                  display: table-cell;
                  padding: 1rem 0 1rem 2rem;
                  width: 27rem;
                  height: auto;
                  vertical-align: middle;
                  line-height: 1.2; }
                #bike section .layout .left .sec1 ul li .details p {
                  font-size: 3.1rem;
                  border-bottom: .1rem solid #000;
                  padding-left: 2rem;
                  line-height: 1.6; }
                #bike section .layout .left .sec1 ul li .details span {
                  font-size: 2.3rem;
                  color: #BF272D;
                  display: block;
                  line-height: 1.4;
                  margin: 1rem auto; }
              #bike section .layout .left .sec1 ul li:nth-child(even) {
                margin-left: auto; }
            #bike section .layout .left .sec1 ul.txt-red li {
              font-size: 2.3rem; }
          #bike section .layout .left .sec1 .container {
            border: .2rem solid #BE272D;
            border-radius: 1rem;
            margin: 3rem 3rem 0; }
            #bike section .layout .left .sec1 .container .note {
              padding: 10rem 1.3rem;
              text-align: center; }
              #bike section .layout .left .sec1 .container .note img {
                width: 5.5rem; }
              #bike section .layout .left .sec1 .container .note h3 {
                font-size: 3.3rem;
                color: #BE272D;
                display: block; }
            #bike section .layout .left .sec1 .container .text {
              font-size: 2.6rem;
              color: #BE272D;
              border-left: 1px solid #BE272D;
              padding: .5rem .8rem .5rem;
              width: 57.5rem;
              margin: .5rem auto 1rem; }
              #bike section .layout .left .sec1 .container .text h4 {
                line-height: 1.4; }
              #bike section .layout .left .sec1 .container .text dl {
                margin-top: .5rem;
                line-height: 1.4;
                font-size: 2.2rem; }
        #bike section .layout .left .sec2 {
          position: relative;
          z-index: 0;
          box-shadow: none;
          margin: 0 -3rem; }
          #bike section .layout .left .sec2 h2 {
            background-color: #BE272D;
            font-size: 3rem;
            color: #fff;
            text-align: center;
            font-weight: normal;
            line-height: 1;
            padding: 3rem 0 1rem; }
          #bike section .layout .left .sec2 .content {
            padding: 0 3rem 4.5rem; }
            #bike section .layout .left .sec2 .content p {
              font-size: 2.2rem;
              margin: 1rem auto; }
            #bike section .layout .left .sec2 .content .wrap h3 {
              background-image: url("../../../img/bike/sp/bg_headline.png");
              background-repeat: no-repeat;
              background-size: contain;
              font-size: 2.6rem;
              color: #fff;
              height: 4.2rem;
              padding-left: 1.2rem;
              margin-bottom: 1rem; }
            #bike section .layout .left .sec2 .content .wrap h4 {
              font-size: 2.2rem;
              background-color: #A7BCC3;
              margin: 3rem auto 0;
              line-height: 1.8;
              padding: .3rem 0 0; }
              #bike section .layout .left .sec2 .content .wrap h4 span {
                display: inline-block;
                width: 2.8rem;
                height: 1.4rem;
                background-color: #000;
                margin: 0 1rem .2rem 0; }
            #bike section .layout .left .sec2 .content .wrap h5 {
              font-size: 2rem;
              color: #BE272D;
              font-weight: normal;
              margin-top: 1.5rem; }
              #bike section .layout .left .sec2 .content .wrap h5.bullets {
                margin-top: 0;
                padding-left: 2rem; }
            #bike section .layout .left .sec2 .content .wrap span {
              font-size: 2rem; }
              #bike section .layout .left .sec2 .content .wrap span.no-wrap {
                white-space: nowrap;
                letter-spacing: -.1rem; }
            #bike section .layout .left .sec2 .content .wrap p {
              font-size: 2.2rem;
              margin: auto;
              line-height: 1.4; }
              #bike section .layout .left .sec2 .content .wrap p span {
                font-size: 2rem;
                text-align: left; }
              #bike section .layout .left .sec2 .content .wrap p.ml10 {
                margin: 0 0 2rem 1.5rem; }
            #bike section .layout .left .sec2 .content .wrap table {
              border: .2rem solid #969696;
              margin-top: 2.2rem; }
              #bike section .layout .left .sec2 .content .wrap table tr th {
                font-size: 2.2rem;
                border: .1rem solid #969696;
                width: 25.5rem; }
                #bike section .layout .left .sec2 .content .wrap table tr th.half {
                  width: 14rem !important; }
              #bike section .layout .left .sec2 .content .wrap table tr td {
                background-color: #fff;
                font-size: 2.2rem;
                color: #000;
                text-align: left;
                border: .1rem solid #969696;
                width: 43rem;
                line-height: 1.5;
                padding: .2rem 2rem .2rem 1.5rem; }
              #bike section .layout .left .sec2 .content .wrap table tr.half th {
                width: 20rem; }
              #bike section .layout .left .sec2 .content .wrap table tr.half td {
                width: 48rem;
                padding: .3rem 3rem .2rem 1.5rem; }
              #bike section .layout .left .sec2 .content .wrap table.mb25 {
                margin-bottom: 2.5rem; }
              #bike section .layout .left .sec2 .content .wrap table.w300 {
                margin-bottom: 1rem; }
                #bike section .layout .left .sec2 .content .wrap table.w300 tr th {
                  width: 29.8rem; }
                #bike section .layout .left .sec2 .content .wrap table.w300 tr td {
                  width: 38.8rem;
                  padding-left: 2.3rem; }
            #bike section .layout .left .sec2 .content .wrap .bg {
              background-color: #EDF2F3;
              padding: 1.4rem;
              margin: 1.5rem auto 1rem; }
              #bike section .layout .left .sec2 .content .wrap .bg .mt0 {
                margin-top: 0; }
              #bike section .layout .left .sec2 .content .wrap .bg-bottom {
                padding: .5rem 1.5rem;
                margin-top: 4rem; }
              #bike section .layout .left .sec2 .content .wrap .bg .box {
                border: .1rem solid #A7BCC3;
                background-color: #fff;
                padding: 1rem 2.3rem 1rem 1rem; }
                #bike section .layout .left .sec2 .content .wrap .bg .box .float-left {
                  padding-left: 0; }
                #bike section .layout .left .sec2 .content .wrap .bg .box .float-right {
                  width: 42rem;
                  padding: 0; }
                  #bike section .layout .left .sec2 .content .wrap .bg .box .float-right img {
                    width: 3.4rem;
                    margin: 3rem 2rem 1rem 0; }
                  #bike section .layout .left .sec2 .content .wrap .bg .box .float-right p {
                    display: inline-block; }
              #bike section .layout .left .sec2 .content .wrap .bg h4 {
                margin-top: 1.5rem; } }
