/*------------------------------------------------------------------------------------------
*
*
    teaser.css
*
*
------------------------------------------------------------------------------------------ */
@media screen and (max-width: 640px) {
  #teaser #wrap {
    padding-top: 0; }

  header {
    height: 70px;
    display: flex;
    text-align: center;
    justify-content: center;
    align-items: center; }
    header .logo img {
      width: 186px; }

  #kv {
    margin-bottom: 30px; }
    #kv img {
      width: 100%; }

  #teaser .btn {
    width: 82%;
    max-width: 360px;
    margin: 0 auto;
    margin-top: 30px;
    margin-bottom: 30px; }
    #teaser .btn a {
      display: block;
      position: relative; }
      #teaser .btn a img {
        width: 100%; }

  #yodogawa {
    padding-bottom: 5px;
    text-align: center;
    border-bottom: 1px solid #303061; }
    #yodogawa h2 {
      text-align: left;
      padding-left: 30px;
      margin-bottom: 25px; }
      #yodogawa h2 img {
        width: 88.4375vw;
        max-width: calc(566px * .7); }
    #yodogawa .inner {
      max-width: 420px;
      margin: 0 auto;
      padding: 0 30px;
      text-align: left; }
      #yodogawa .inner p {
        margin-bottom: 2em;
        line-height: 1.8571428571em;
        font-size: 14px; }
        #yodogawa .inner p br {
          display: none !important; }
    #yodogawa .pic {
      padding: 0 30px; }
      #yodogawa .pic img {
        width: 100%; }
    #yodogawa .btn_home {
      margin-top: 25px;
      margin-bottom: 40px !important;
      text-align: center; }
      #yodogawa .btn_home img {
        width: 51.875vw;
        max-width: calc(166 * 1.5px);
        height: auto; }

  hr.dot {
    width: calc(100% - 30px);
    height: 3px;
    margin: 0 auto;
    display: block;
    border: none;
    background-image: url(../images/teaser/line_dot.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: auto 3px; }

  .btn_detail a {
    width: 168px;
    height: 30px;
    margin: 0 auto;
    background-color: #303061;
    border: 1px solid #303061;
    color: #fff;
    font-size: 12.87px;
    letter-spacing: .1em;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 30px;
    transition: background, color;
    transition-duration: .15s; }
    .is_pc .btn_detail a:hover, .is_sp .btn_detail a.touch {
      background-color: #fff !important;
      color: #303061 !important; }

  #feature {
    padding-top: 55px;
    padding-bottom: 55px; }
    #feature .prod {
      margin: 0 auto;
      margin-bottom: -10px; }
      #feature .prod ul li {
        width: 81.25vw;
        max-width: calc(520px * .7);
        margin: 0 auto;
        margin-bottom: 45px;
        display: flex;
        align-items: center;
        flex-direction: column; }
        #feature .prod ul li .ph {
          width: 81.25vw;
          max-width: calc(520px * .7);
          margin-bottom: 20px; }
          #feature .prod ul li .ph img {
            width: 100%;
            height: auto;
            object-fit: contain;
            object-position: bottom;
            font-family: "object-fit: contain; object-position: bottom;"; }
        #feature .prod ul li .t {
          display: flex;
          flex-direction: column;
          justify-content: center;
          color: #303061;
          padding-left: 45px;
          min-height: 50px;
          background-image: url(../images/teaser/ico_new.png);
          background-repeat: no-repeat;
          background-size: 37px;
          background-position: 0px center;
          text-align: left; }
          #feature .prod ul li .t h3 {
            font-size: 16px;
            font-weight: bold;
            margin-bottom: 5px; }
          #feature .prod ul li .t .price {
            font-size: 14px;
            font-weight: bold; }
    #feature .desc {
      padding: 0 30px; }
      #feature .desc p {
        font-size: 14px;
        line-height: 1.8571428571em;
        margin-bottom: 2em; }
    #feature .ph_detail {
      margin: 0 auto;
      margin-bottom: 55px;
      padding: 0 15px;
      padding-top: 10px; }
      #feature .ph_detail p {
        line-height: 0; }
        #feature .ph_detail p img {
          width: 100%; }
    #feature .item {
      margin-top: 55px;
      padding-top: 40px;
      border-top: 1px solid #303061; }
      #feature .item h4 {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 10px; }
    #feature .btn_home {
      margin-top: 25px;
      text-align: center; }
      #feature .btn_home img {
        width: 51.875vw;
        max-width: calc(166 * 1.5px);
        height: auto; } }
/* ----- max-width : 640px ----- */
