/*------------------------------------------------------------------------------------------
*
*
    teaser.css
*
*
------------------------------------------------------------------------------------------ */
.disabled {
  visibility: hidden !important; }

.dnone {
  display: none; }

body {
  color: #231815; }

@media screen and (min-width: 641px) {
  .section_yodogawa .btn {
    text-align: center; }

  .section_yodogawa .btn img {
    width: 360px; }

  /*------------------------------------------------------------------------------------------
  *
  *
      min-width : 641px
  *
  *
  ------------------------------------------------------------------------------------------ */
  #main_visual {
    min-width: 1100px;
    text-align: center;
    padding: 45px 0 0 0;
    margin-bottom: 35px;
    background-color: #8c143c;
    position: relative;
    overflow: visible !important; }

  .yodogawa {
    padding: 55px 0 65px 0; }

  h1 {
    margin: 0 0 50px 0;
    text-align: center; }

  h1 img {
    width: 264px; }

  #main_visual .pic {
    width: 1000px;
    margin: 0 auto 0 auto;
    margin-top: -170px;
    margin-bottom: 230px;
    position: relative;
    bottom: -170px; }
    #main_visual .pic img {
      width: 100%; }

  #main_visual .badge {
    display: block;
    position: absolute;
    bottom: -116px;
    right: 35px; }

  #main_visual .badge img {
    width: 192px; }

  #wrap {
    width: 1000px;
    margin: 0 auto;
    padding: 0; }

  .section_yodogawa {
    max-width: 1000px;
    margin: 0 auto 70px auto;
    padding: 0 0 40px 0;
    overflow: hidden;
    text-align: center;
    box-sizing: border-box; }

  .section_yodogawa h2 {
    text-align: 0;
    margin: 40px 0 35px 0;
    text-align: center;
    position: relative;
    left: 15px; }

  .t02 .section_yodogawa h2 {
    left: -30px; }

  .t01 .section_yodogawa h2 img {
    width: 436px;
    height: auto; }

  .t02 .section_yodogawa h2 img {
    width: 465px;
    height: auto; }

  .section_yodogawa .desc {
    text-align: left;
    padding-left: 340px;
    display: block;
    position: relative; }

  .section_yodogawa p {
    margin: 0 0 30px 0;
    font-size: 16px;
    line-height: 1.875em; }

  article {
    margin-bottom: 90px;
    padding-bottom: 25px; }
    article.bd {
      border-bottom: 1px solid #8c143c; }

  .logo_a img {
    width: auto;
    height: 47px; }

  .logo_b img {
    width: auto;
    height: 47px; }

  .section_product {
    margin-top: -55px;
    overflow: hidden;
    position: relative; }
    .section_product.shoes {
      padding-top: 80px;
      padding-bottom: 5px;
      margin-bottom: -25px; }
      .section_product.shoes:before {
        content: '';
        display: block;
        width: 1000px;
        height: 1px;
        background-color: #8c143c;
        position: absolute;
        top: 0;
        left: 50px; }
      .section_product.shoes:after {
        content: '';
        display: block;
        width: 1000px;
        height: 1px;
        background-color: #8c143c;
        position: absolute;
        bottom: 0;
        left: 50px; }

  .product {
    max-width: 1000px;
    margin: 0 auto 35px auto; }
    .product .logo_a_s {
      display: block;
      margin-bottom: 15px; }
      .product .logo_a_s img {
        width: auto;
        height: 20px; }
    .product .h {
      width: 1000px;
      margin: 0 auto;
      padding-left: 100px;
      box-sizing: border-box; }

  .product .row {
    width: 1000px;
    padding: 0 0 0 100px;
    display: flex;
    box-sizing: border-box; }

  .product .pic {
    width: 420px;
    padding-right: 60px; }
    .product .pic p {
      margin-bottom: 35px; }
      .product .pic p img {
        display: block;
        width: 420px;
        margin-bottom: 5px; }

  .product .pic img:last-child {
    margin-bottom: 0; }

  .product .desc {
    width: 480px;
    margin-top: -5px;
    padding: 0 0 0 0;
    box-sizing: border-box;
    white-space: nowrap; }
    .product .desc .l {
      font-size: 40px; }

  .product h3 {
    margin: 0 0 35px 0;
    font-size: 22px;
    display: block;
    line-height: 1.4em;
    font-weight: bold;
    color: #8c143c;
    white-space: nowrap; }

  .product h3 span {
    font-size: 16px; }

  .product .price {
    margin: 0 0 20px 0;
    display: block;
    font-size: 14px;
    line-height: 1.4em;
    color: #8c143c; }

  .product .desc p {
    margin-bottom: 2em;
    font-size: 16px;
    line-height: 1.875em; }

  .pic_btm {
    max-width: 1000px;
    margin: 0 auto 0 auto;
    padding: 30px 0 0 0;
    box-sizing: border-box; }
    .pic_btm img {
      width: 100%; }

  .pic_btm span {
    display: block;
    position: relative; }

  #btm_nav {
    text-align: center;
    margin: 100px 0; }

  .t01 #btm_nav {
    margin-top: -140px !important; }

  #btm_nav li {
    margin: 0 120px;
    display: inline-block; }

  #btm_nav li img {
    width: auto;
    height: 32px; }

  #conv {
    width: 1000px;
    margin: 0 auto;
    margin-top: -40px;
    padding-bottom: 70px;
    position: relative; }
    #conv:before {
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background-color: #8c143c;
      position: absolute;
      top: 0;
      left: 0; }
    #conv:after {
      content: '';
      display: block;
      width: 100%;
      height: 1px;
      background-color: #8c143c;
      position: absolute;
      bottom: 0;
      left: 0; }
    #conv .talk {
      padding-top: 90px; }
      #conv .talk dl {
        width: 750px;
        display: flex;
        margin: 0 auto;
        margin-bottom: 35px; }
        #conv .talk dl dt {
          width: 101px;
          box-sizing: border-box;
          font-size: 16px;
          letter-spacing: .12em;
          font-weight: bold;
          color: #8c143c;
          position: relative;
          text-align: center;
          padding-top: 110px;
          margin-right: 40px;
          margin-left: 69px; }
          #conv .talk dl dt:before {
            content: '';
            width: 101px;
            height: 101px;
            display: block;
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
            position: absolute;
            top: 5px;
            left: 0; }
          #conv .talk dl dt.ohashi:before {
            background-image: url(../images/teaser/t03/ico_ohashi.jpg); }
          #conv .talk dl dt.umeda:before {
            background-image: url(../images/teaser/t03/ico_umeda.jpg); }
          #conv .talk dl dt.yokoyama:before {
            background-image: url(../images/teaser/t03/ico_yokoyama.jpg); }
          #conv .talk dl dt.takahashi:before {
            background-image: url(../images/teaser/t03/ico_takahashi.jpg); }
        #conv .talk dl dd {
          width: 540px;
          font-size: 16px;
          line-height: 1.875em;
          letter-spacing: 0; }
      #conv .talk .ph {
        width: 750px;
        margin: 0 auto;
        margin-top: 55px;
        margin-bottom: 70px; }
        #conv .talk .ph p img {
          width: 750px; }
        #conv .talk .ph p span {
          margin-top: 10px;
          display: block;
          font-size: 14px;
          letter-spacing: 0;
          color: #8c143c; }

  .section_product.shoes {
    padding-top: 80px;
    padding-bottom: 5px;
    margin-bottom: -25px; }
    .section_product.shoes:before {
      content: '';
      display: block;
      width: 1000px;
      height: 1px;
      background-color: #8c143c;
      position: absolute;
      top: 0;
      left: 50px; }
    .section_product.shoes:after {
      content: '';
      display: block;
      width: 1000px;
      height: 1px;
      background-color: #8c143c;
      position: absolute;
      bottom: 0;
      left: 50px; }

  .product h3.mail {
    margin-bottom: 40px;
    padding-top: 12px;
    padding-left: 62px;
    position: relative; }
    .product h3.mail:before {
      content: '';
      width: 52px;
      height: 52px;
      background-repeat: no-repeat;
      background-image: url(../images/teaser/t04/ico_mail.png);
      background-position: center;
      background-size: contain;
      display: block;
      position: absolute;
      top: 0;
      left: 0; }

  .btm_txt {
    width: 1000px;
    padding-left: 330px;
    box-sizing: border-box;
    margin: 0 auto;
    padding-top: 100px;
    margin-bottom: -45px; }
    .btm_txt p {
      font-size: 16px;
      line-height: 1.875em;
      letter-spacing: 0; }

  .btn_list {
    margin-bottom: 120px; }
    .btn_list ul {
      display: flex;
      justify-content: center; }
      .btn_list ul li {
        margin: 0 15px; }
        .btn_list ul li a img {
          width: 362px; }

  .h_shoes {
    text-align: center; }
    .h_shoes img {
      width: 336px; }

  .pic_btm.shoes .info {
    margin-top: 10px;
    display: block;
    color: #8c143c;
    font-size: 14px;
    line-height: 1.86em;
    letter-spacing: 0; } }
/* ----- min-width : 641px ----- */
@media screen and (max-width: 640px) {
  .section_yodogawa .btn {
    text-align: center; }

  .section_yodogawa .btn img {
    width: 80%;
    max-width: 360px; }

  /*------------------------------------------------------------------------------------------
  *
  *
      max-width : 640px
  *
  *
  ------------------------------------------------------------------------------------------ */
  #main_visual {
    text-align: center;
    padding: 20px 0 0 0;
    margin: 0 0 35px 0;
    background-color: #8c143c;
    position: relative;
    overflow: visible !important; }

  h1 {
    margin: 0 0 20px 0;
    text-align: center; }

  h1 img {
    width: 170px; }

  #main_visual .pic {
    margin: 0 auto;
    line-height: 0;
    position: relative; }

  #main_visual .pic img {
    width: 100%; }

  .head_badge {
    margin: 0 0 25px 0;
    display: block;
    text-align: center; }

  .head_badge img {
    width: 160px; }

  #main_visual .copy {
    margin: 0 0 11% 0;
    padding: 0 10%; }

  #main_visual .copy img {
    width: 100%;
    max-width: 360px; }

  .sp_yodogawa {
    padding: 0 10%;
    text-align: left;
    color: #fff; }

  .sp_yodogawa h2 {
    padding: 45px 0 40px 0;
    text-align: center; }

  .sp_yodogawa h2 img {
    width: 102px; }

  .sp_yodogawa p {
    line-height: 1.857em;
    margin-bottom: 2em; }

  .sp_yodogawa p:last-child {
    margin-bottom: 0; }

  #main_visual .badge {
    padding: 35px 0;
    text-align: center; }

  #main_visual .badge img {
    width: 152px; }

  #wrap {
    margin: 0 auto;
    padding: 0; }

  .section_yodogawa {
    padding-top: 10px;
    margin: 0 0 35px 0; }

  .section_yodogawa h2 {
    margin: 0 0 35px 0;
    text-align: center; }

  .section_yodogawa h2 img {
    width: 100%;
    max-width: 420px; }

  .section_yodogawa p {
    margin: 0 0 2em 0;
    font-size: 14px;
    line-height: 1.875em; }

  .section_yodogawa .badge {
    padding: 0 0;
    text-align: center; }

  .section_yodogawa .badge img {
    width: 152px; }

  article {
    margin: 0 30px;
    margin-bottom: 60px; }
    article.bd {
      border-bottom: 1px solid #8c143c; }

  .logo_a {
    margin-bottom: 10px !important; }
    .logo_a img {
      width: auto;
      height: 27px; }

  .logo_b {
    margin-bottom: 10px !important; }
    .logo_b img {
      width: auto;
      height: 27px; }

  .section_product {
    margin-top: 80px;
    position: relative; }

  .product {
    margin: 0 auto 35px auto; }
    .product .logo_a_s {
      display: block;
      margin-bottom: 15px; }
      .product .logo_a_s img {
        width: auto;
        height: 16px; }
    .product .h {
      box-sizing: border-box; }

  .product .row {
    box-sizing: border-box; }

  .product {
    margin: 0 0 50px 0; }

  .product .pic {
    text-align: center; }
    .product .pic p {
      margin-bottom: 30px; }
      .product .pic p:last-child {
        margin-bottom: 0; }

  .product .pic img {
    width: 100%;
    margin-bottom: 10px; }

  .product .pic img:last-child {
    margin-bottom: 0; }

  .product .desc {
    margin: 0 auto; }
    .product .desc .l {
      font-size: 26px; }

  .product h3 {
    margin: 0 0 10px 0;
    font-size: 15px;
    line-height: 1.666em;
    font-weight: bold;
    color: #8c143c;
    white-space: nowrap; }

  .product .desc h3 span {
    font-size: 12px; }

  .product .price {
    text-align: center;
    line-height: 1.4em;
    display: block;
    font-size: 13px;
    color: #8c143c; }

  .product .desc p {
    font-size: 14px;
    line-height: 1.857em;
    margin-bottom: 2em; }

  .pic_btm {
    margin: 35px 30px;
    padding: 35px 0 0 0; }

  .pic_btm img {
    width: 100%; }

  .pic_btm span {
    display: block;
    position: relative; }

  #btm_nav {
    text-align: center;
    margin: 40px 0 0 0;
    padding-bottom: 50px;
    overflow: hidden; }

  #btm_nav.n {
    margin-bottom: 0; }

  #btm_nav ul {
    width: calc(100% + 150px);
    position: relative;
    left: -75px; }

  #btm_nav li {
    margin: 0 65px;
    display: inline-block; }

  #btm_nav li img {
    width: 70px; }

  #conv {
    margin-top: 40px;
    padding-bottom: 10px;
    position: relative; }
    #conv:before {
      content: '';
      display: block;
      width: calc(100% + 30px);
      height: 1px;
      background-color: #8c143c;
      position: absolute;
      top: 0;
      left: -15px; }
    #conv:after {
      content: '';
      display: block;
      width: calc(100% + 30px);
      height: 1px;
      background-color: #8c143c;
      position: absolute;
      bottom: 0;
      left: -15px; }
    #conv .talk {
      padding-top: 45px; }
      #conv .talk dl {
        margin: 0 auto;
        margin-bottom: 35px; }
        #conv .talk dl dt {
          width: 73px;
          height: 105px;
          box-sizing: border-box;
          font-size: 12px;
          letter-spacing: .12em;
          font-weight: bold;
          color: #8c143c;
          position: relative;
          text-align: center;
          padding-top: 80px; }
          #conv .talk dl dt:before {
            content: '';
            width: 73px;
            height: 73px;
            display: block;
            background-repeat: no-repeat;
            background-position: center;
            background-size: contain;
            position: absolute;
            top: 0;
            left: 0; }
          #conv .talk dl dt.ohashi:before {
            background-image: url(../images/teaser/t03/ico_ohashi.jpg); }
          #conv .talk dl dt.umeda:before {
            background-image: url(../images/teaser/t03/ico_umeda.jpg); }
          #conv .talk dl dt.yokoyama:before {
            background-image: url(../images/teaser/t03/ico_yokoyama.jpg); }
          #conv .talk dl dt.takahashi:before {
            background-image: url(../images/teaser/t03/ico_takahashi.jpg); }
        #conv .talk dl dd {
          font-size: 14px;
          line-height: 1.857em;
          letter-spacing: 0; }
          #conv .talk dl dd br.sp {
            display: table-row !important; }
      #conv .talk .ph {
        margin: 0 auto;
        margin-top: 25px;
        margin-bottom: 40px; }
        #conv .talk .ph p img {
          width: calc(100% + 30px);
          position: relative;
          left: -15px; }
        #conv .talk .ph p span {
          margin-top: 5px;
          display: block;
          font-size: 12px;
          letter-spacing: 0;
          color: #8c143c;
          line-height: 1.6em;
          position: relative;
          left: -15px; }

  .btm_txt {
    box-sizing: border-box;
    margin: 0 auto;
    padding-top: 45px;
    margin-bottom: -35px; }
    .btm_txt p {
      font-size: 14px;
      line-height: 1.857em;
      letter-spacing: 0; }

  .section_product {
    position: relative; }
    .section_product.shoes {
      padding-top: 40px;
      padding-bottom: 20px;
      margin-top: -10px;
      margin-bottom: -25px; }
      .section_product.shoes:before {
        content: '';
        width: calc(100% + 30px);
        display: block;
        height: 1px;
        background-color: #8c143c;
        position: absolute;
        top: 0;
        left: -15px; }
      .section_product.shoes:after {
        content: '';
        display: block;
        width: calc(100% + 30px);
        height: 1px;
        background-color: #8c143c;
        position: absolute;
        bottom: 0;
        left: -15px; }
      .section_product.shoes .product .row {
        margin-bottom: 0;
        padding-bottom: 0;
        display: flex;
        flex-direction: column-reverse; }
      .section_product.shoes .pic {
        margin-bottom: 20px; }
      .section_product.shoes .desc {
        margin-bottom: -60px; }

  .product h3.mail {
    margin-bottom: 15px !important;
    padding-top: 0;
    padding-left: 54px;
    position: relative; }
    .product h3.mail:before {
      content: '';
      width: 42px;
      height: 42px;
      background-repeat: no-repeat;
      background-image: url(../images/teaser/t04/ico_mail.png);
      background-position: center;
      background-size: contain;
      display: block;
      position: absolute;
      top: 5px;
      left: 0; }

  .btn_list {
    margin-bottom: 40px; }
    .btn_list ul {
      display: flex;
      justify-content: center;
      flex-direction: column;
      align-items: center; }
      .btn_list ul li {
        margin-bottom: 20px; }
        .btn_list ul li a img {
          width: 300px;
          transition: opacity;
          transition-duration: .15s; }
        .is_pc .btn_list ul li a:hover, .is_sp .btn_list ul li a.touch {
          opacity: .7; }

  .h_shoes {
    text-align: center;
    margin-bottom: 20px; }
    .h_shoes img {
      width: 280px; }

  .pic_btm.shoes {
    padding-top: 0;
    margin-top: 0; }
    .pic_btm.shoes .info {
      margin-top: 10px;
      display: block;
      color: #8c143c;
      font-size: 12px;
      line-height: 1.86em;
      letter-spacing: 0; } }
/* ----- max-width : 640px ----- */
