@charset "UTF-8";

/*---- conoco memory(> .ctop-conoco) ----*/
.ctop-conoco {
  color: #725946;
}

@media screen and (min-width: 641px) { /*-- PC --*/
  .ctop-conoco {
    margin: 0 calc((var(--wrapperW) - 100cqw) /2);
    width: 100cqw !important;

    .block-base-container {
      overflow-x: visible;
      width: 100cqw;
    }
  }

  .block-conoco_top {
    font-family: var(--ff-zmg);

    h1 {
      margin: 25px 0 0;
      padding: 0;

      img {
        display: block;
        width: 100%;
      }
    }
  }

  .block-conoco_top-top-slider {
    display: flex;
    width: 100%;
    height: 140px;
    margin-top: 40px;
    overflow: hidden;

    > div {
      display: flex;
      flex-shrink: 0;

      &:first-child {
        animation: loop 160s -80s linear infinite;
      }

      &:last-child {
        animation: loop_2 160s linear infinite;
      }
    }

    img {
      display: block;
      flex-shrink: 0;
      width: 140px;
      height: 140px;
      margin-right: 10px;
      border-radius: 10px;
    }
  }

  @keyframes loop {
    0% {
      transform: translateX(100%);
    }
    100% {
      transform: translateX(-100%);
    }
  }
  @keyframes loop_2 {
    0% {
      transform: translateX(0);
    }
    100% {
      transform: translateX(-200%);
    }
  }

  .block-conoco_top-yellow_bg {
    margin-top: 56px;
    text-align: center;
    padding: 80px 0 60px;
    background-color: #f5e8d0;
    font-family: var(--ff-zmg);
  }

  .block-conoco_top-story,
  .block-conoco_top-content {
    margin: 0 auto;
    width: var(--wrapperW);
    padding: 100px;
    border-radius: 30px;
    background: #ffffff;
    box-shadow: 0 0 10px 0 rgb(230 227 211 /80%);
    overflow: hidden;
  }

  .block-conoco_top-story:not(:first-child) {
    margin-top: 40px;
  }

  .block-conoco_top-story-imgs picture {
    display: block;

    & + & {
      margin-top: 40px;
    }

    img {
      display: block;
      width: 100%;
    }
  }

  .block-conoco_top-story-flow {

    h2 {
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0;
      padding: 0;

      img {
        display: block;
      }
    }

    ul {
      display: flex;
      justify-content: space-between;
      margin-top: 20px;

      li {
        position: relative;
        width: 280px;

        &:not(:last-child) .list-img::after {
          content: "";
          display: block;
          position: absolute;
          top: 50%;
          right: -45px;
          width: 20px;
          height: 30px;
          margin-top: -15px;
          background-image: url("data:image/svg+xml;charset=utf8,%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2219.5%22%20height%3D%2230%22%3E%3Cpath%20d%3D%22M19.5%2015%200%2030V0Z%22%20fill%3D%22%23725946%22%2F%3E%3C%2Fsvg%3E");
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
        }
      }
    }

    .list-no {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 81px;
      height: 81px;
      margin: 0 auto;
      background-image: url("/img/usr/@brands/conoco/ctop/pc/story_no.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      font-size: 3.2rem;
      font-family: var(--ff-qs);
      font-weight: 600;
      letter-spacing: 0.1em;
    }

    .list-ttl {
      margin-top: 18px;
      font-size: 2.4rem;
      font-weight: 600;
      text-align: center;
      letter-spacing: 0.1em;
    }

    .list-img {
      position: relative;
      margin-top: 22px;

      img {
        width: 85%;
        margin: 0 auto;
      }
    }

    img {
      display: block;
      border-radius: 10px;
    }

    .list-comment {
      margin-top: 18px;
      text-align: justify;
      line-height: 1.714;
      letter-spacing: 0.04em;
    }
  }

  .block-conoco_top-content {
    h2 {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      height: 110px;
      margin: -100px -100px 10px;
      padding: 0 0 10px;
      background-color: #bdcca2;

      &::after {
        content: "";
        display: block;
        position: absolute;
        bottom: 10px;
        left: 0;
        width: 100%;
        height: 3px;
        background-image: url("/img/usr/@brands/conoco/ctop/pc/item_bdr.png");
        background-position: center;
        background-repeat: repeat;
        background-size: var(--wrapperW) 3px;
        filter: brightness(100);
        opacity: 0.7;
      }

      span {
        font-size: 3.6rem;
        font-weight: 600;
        font-family: var(--ff-zmg);
        text-align: center;
        letter-spacing: 0.1em;
        color: #f1f5e9;
      }
    }

    &:not(:first-child) {
      margin-top: 40px;
    }
  }

  .block-conoco_top-lineup {
    margin-top: 40px;
  }

  .block-conoco_top-lineup-item + .block-conoco_top-lineup-item {
    position: relative;
    margin-top: 60px;
    padding-top: 60px;

    &::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 3px;
      background-image: url("/img/usr/@brands/conoco/ctop/pc/item_bdr.png");
      background-position: center;
      background-repeat: repeat;
      background-size: var(--wrapperW) 3px;
    }
  }

  .block-conoco_top-lineup-ttl {
    display: flex;
    align-items: baseline;
    justify-content: center;

    .item-name {
      font-size: 3.2rem;
      font-weight: 600;
      letter-spacing: 0.1em;

      span {
        font-size: 2.4rem;
      }
    }

    .item-price {
      font-size: 3.2rem;
      font-weight: 600;
      letter-spacing: 0.04em;

      span {
        margin-left: 10px;
        font-size: 1.8rem;
      }
    }

    .item-annotation {
      margin-left: 20px;
      font-size: 1.2rem;
      letter-spacing: 0.04em;
    }
  }

  .block-conoco_top-lineup-imgs {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    margin-top: 40px;

    img {
      display: block;
      height: 300px;
    }

    .item-main {
      width: 430px;

      img {
        border-radius: 10px;
      }
    }

    .item-color-list {
      display: flex;
      justify-content: space-between;
      width: 510px;
      justify-content: center;

      li {
        width: 160px;

        p {
          font-size: 1.8rem;
          font-weight: 600;
          text-align: center;
          letter-spacing: 0.04em;
        }

        img {
          margin-top: 16px;
        }
      }
    }
  }

  .block-conoco_top-lineup-example {
    margin-top: 60px;

    ul {
      display: flex;
      flex-wrap: wrap;

      li {
        width: calc((100% - 60px) /4);

        &:not(:nth-child(4n)) {
          margin-right: 20px;
        }
        &:not(:nth-child(-n + 4)) {
          margin-top: 24px;
        }

        .list-qty {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          width: 210px;
          height: 202px;
          padding-bottom: 20px;
          background-image: url("/img/usr/@brands/conoco/ctop/lineup_qty.png");
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
          text-align: center;

          p:nth-child(1) {
            font-size: 2rem;
            font-weight: normal;
            letter-spacing: 0.1em;
          }
          p:nth-child(2) {
            margin-top: -16px;
            font-size: 6rem;
            font-weight: 600;

            span {
              margin-left: 2px;
              font-size: 2.6rem;
            }
          }
        }

        img {
          display: block;
          width: 100%;
          border-radius: 10px;
        }

        p {
          margin-top: 14px;
          font-size: 1.4rem;
          font-weight: 600;
          text-align: center;
          line-height: 1.571;
          letter-spacing: 0.04em;
        }
      }
    }
  }

  .block-conoco_top-lineup-btns {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 40px;
  }

  .block-conoco_top-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 60px;
    border-radius: 60px;
    color: var(--cl-br, #433d37);
    font-size: 1.8rem;
    font-weight: 600;
    text-align: center;
    text-decoration: none;
    letter-spacing: 0.1em;
    transition: 0.2s;

    &:hover {
      color: var(--cl-br, #433d37);
      opacity: 0.7;
    }

    &.cl-ly {
      background: #fff4c7;
    }

    &.cl-yw {
      background-color: #f8d335;
    }
  }

  .block-conoco_top-lineup-btns a {
    width: 320px;

    & + & {
      margin-left: 40px;
    }
  }

  .block-conoco_top-goods_detail {
    margin-top: 40px;
  }

  .block-conoco_top-goods_detail-top {
    display: flex;
    justify-content: space-between;

    .item-left {
      width: 547px;

      img {
        display: block;
        width: 100%;
        border-radius: 10px;
      }
    }

    .item-right {
      width: 393px;
      letter-spacing: 0.04em;
    }

    .item-name {
      font-size: 1.8rem;
      font-weight: 600;

      .item-list + & {
        margin-top: 36px;
      }
    }

    .item-list {
      margin-top: 18px;
      font-size: 1.4rem;
      line-height: 1.714;

      li {
        position: relative;
        padding-left: 15px;

        &::before {
          content: "";
          display: block;
          position: absolute;
          top: 9px;
          left: 0;
          width: 5px;
          height: 5px;
          border-radius: 5px;
          background: var(--cl-br, #433d37);
        }
      }
    }
  }

  .block-conoco_top-goods_detail-bot {
    margin-top: 80px;

    h3 {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      margin: 0;
      padding: 0;
      background-image: url("/img/usr/@brands/conoco/ctop/pc/item_bdr.png");
      background-position: center left;
      background-repeat: no-repeat;
      background-size: 1080px 3px;

      span {
        padding: 0 40px;
        background: #ffffff;
        font-size: 2.4rem;
        font-weight: 600;
        letter-spacing: 0.1em;
      }
    }

    .item-color-list {
      display: flex;
      justify-content: center;
      margin-top: 50px;

      li {
        width: 240px;

        & + & {
          margin-left: 80px;
        }

        img {
          display: block;
          width: 100%;
        }
      }

      p {
        margin-top: 18px;
        font-size: 1.8rem;
        font-weight: 600;
        text-align: center;
        letter-spacing: 0.04em;
      }
    }
  }

  .block-conoco_top-privilege-list {
    margin-top: 40px;

    ul {
      display: flex;
      justify-content: center;

      li {
        width: 260px;

        img {
          display: block;
          width: 100%;
        }

        p {
          margin-top: 8px;
          font-size: 1.8rem;
          font-weight: 600;
          text-align: center;
          letter-spacing: 0.1em;

          .txt-red {
            color: #bc0000;
          }
        }
      }
    }
  }

  .block-conoco_top-privilege-image {
    margin-top: 60px;

    ul {
      display: flex;
      justify-content: center;

      li {
        &:nth-child(1) {
          width: 240px;
        }

        &:nth-child(2) {
          width: 480px;
          margin-left: 80px;
        }

        img {
          display: block;
          width: 100%;
          border-radius: 10px;
        }

        p {
          margin-top: 28px;
          font-size: 1.8rem;
          font-weight: 600;
          text-align: center;
          letter-spacing: 0.04em;
        }
      }
    }
  }

  .block-conoco_top-bot-btn {
    width: 400px;
    margin: 60px auto 0;
  }

  .block-goods-list--display-style-items,
  .block-goods-list--pager .pager-total {
    display: block;
  }

  .block-pickup-list-p--item-description {
    display: flex;
    flex-direction: column;
    margin-top: 10px;
  }

  .block-pickup-list-p--comment {
    order: -10;
    color: #00000028;
  }
}

@media screen and (max-width: 640px) { /*-- SP --*/
  .ctop-lead {
    margin: 32px 12px 0;
  }

  /*---- conoco memory ----*/
  .ctop-conoco {
    margin: 0 -12px;
  }

  .block-conoco_top {
    font-family: var(--ff-zmg);

    h1 {
      margin: 0;
      padding: 0;

      img {
        display: block;
        width: 100%;
      }
    }
  }

  .block-conoco_top-top-slider {
    display: flex;
    width: 100%;
    height: 80px;
    margin-top: 16px;
    overflow: hidden;

    > div {
      display: flex;
      flex-shrink: 0;

      &:first-child {
        animation: loop 100s -50s linear infinite;
      }

      &:last-child {
        animation: loop_2 100s linear infinite;
      }

      img {
        display: block;
        flex-shrink: 0;
        width: 80px;
        height: 80px;
        margin-right: 5px;
        border-radius: 10px;
      }
    }
  }
  @keyframes loop {
    0% {
      transform: translateX(100%);
    }
    to {
      transform: translateX(-100%);
    }
  }
  @keyframes loop_2 {
    0% {
      transform: translateX(0);
    }
    to {
      transform: translateX(-200%);
    }
  }

  .block-conoco_top-yellow_bg {
    margin-top: 40px;
    padding: 40px 12px;
    background-color: #f5e8d0;
    font-family: var(--ff-zmg);
  }

  .block-conoco_top-story,
  .block-conoco_top-content {
    padding: 16px 16px 40px;
    border-radius: 20px;
    background: #ffffff;
    box-shadow: 0 0 10px 0 rgb(230 227 211 /80%);
    overflow: hidden;
  }

  .block-conoco_top-story:not(:first-child) {
    margin-top: 20px;
  }

  .block-conoco_top-story-flow {
    margin-top: 20px;

    h2 {
      display: flex;
      align-items: center;
      justify-content: center;
      margin: 0;
      padding: 0;

      img {
        display: block;
      }
    }

    ul {
      margin-top: 16px;

      li {
        position: relative;

        & + & {
          margin-top: 40px;

          &::before {
            content: "";
            display: block;
            position: absolute;
            top: -30px;
            left: 50%;
            width: 40px;
            height: 20px;
            margin-left: -20px;
            background-image: url("data:image/svg+xml;charset=utf8,%0A%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2240%22%20height%3D%2220%22%3E%3Cpath%20d%3D%22M20%2020%200%200h40Z%22%20fill%3D%22%23725946%22%2F%3E%3C%2Fsvg%3E");
            background-position: center;
            background-repeat: no-repeat;
            background-size: contain;
          }
        }
      }
    }

    .list-head {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      height: 70px;
    }

    .list-no {
      display: flex;
      align-items: center;
      justify-content: center;
      position: absolute;
      top: 0;
      left: 0;
      width: 72px;
      height: 70px;
      background-image: url("/img/usr/@brands/conoco/ctop/sp/story_no.png");
      background-position: center;
      background-repeat: no-repeat;
      background-size: contain;
      font-size: 3rem;
      font-family: var(--ff-qs);
      font-weight: 600;
      letter-spacing: 0.1em;
    }

    .list-ttl {
      font-size: 2.6rem;
      font-weight: 600;
      text-align: center;
      letter-spacing: 0.1em;
    }

    .list-img {
      position: relative;
      margin-top: 10px;

      img {
        width: 90%;
        margin: 0 auto;
      }
    }

    img {
      display: block;
      width: 100%;
      border-radius: 10px;
    }

    .list-comment {
      margin-top: 14px;
      text-align: justify;
      font-size: 1.4rem;
      line-height: 1.714;
      letter-spacing: 0.04em;
    }
  }

  .block-conoco_top-content {
    &:not(:first-child) {
      margin-top: 20px;
    }

    h2 {
      display: flex;
      align-items: center;
      justify-content: center;
      position: relative;
      height: 90px;
      margin: -16px -16px 0;
      padding: 0 0 10px;
      background-color: #bdcca2;

      &::after {
        content: "";
        display: block;
        position: absolute;
        bottom: 10px;
        left: 0;
        width: 100%;
        height: 3px;
        background-image: url("/img/usr/@brands/conoco/ctop/pc/item_bdr.png");
        background-position: center;
        background-repeat: repeat;
        background-size: var(--wrapperW) 3px;
        filter: brightness(100);
        opacity: 0.7;
      }

      span {
        font-size: 2.8rem;
        font-weight: 600;
        font-family: var(--ff-zmg);
        text-align: center;
        letter-spacing: 0.1em;
        color: #f1f5e9;
      }
    }
  }

  .block-conoco_top-lineup {
    margin-top: 24px;
  }

  .block-conoco_top-lineup-item + .block-conoco_top-lineup-item {
    position: relative;
    margin-top: 42px;
    padding-top: 42px;

    &::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 3px;
      background-image: url("/img/usr/@brands/conoco/ctop/pc/item_bdr.png");
      background-position: center;
      background-repeat: repeat;
      background-size: var(--wrapperW) 3px;
    }
  }

  .block-conoco_top-lineup-ttl {
    display: flex;
    flex-direction: column;
    text-align: center;
    line-height: 1.2;

    .item-name {
      font-size: 3.2rem;
      font-weight: 600;
      letter-spacing: 0.1em;

      span {
        font-size: 2.4rem;
      }
    }

    .item-price {
      margin-top: 3px;
      font-size: 3.2rem;
      font-weight: 600;
      letter-spacing: 0.04em;

      span {
        margin-left: 10px;
        font-size: 1.8rem;
      }
    }
  }

  .block-conoco_top-lineup-imgs {
    margin-top: 24px;

    img {
      display: block;
      width: 100%;
    }

    .item-main img {
      border-radius: 10px;
    }

    .item-color-list {
      display: flex;
      justify-content: space-between;
      margin-top: 24px;

      li {
        width: calc((100% - 20px) /3);

        p {
          font-size: 1.5rem;
          font-weight: 600;
          text-align: center;
          letter-spacing: 0.04em;
        }

        img {
          margin-top: 8px;
        }
      }
    }
  }

  .block-conoco_top-lineup-example {
    margin-top: 30px;

    ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;

      li {
        width: calc((100% - 10px) /2);

        &:not(:nth-child(-n + 2)) {
          margin-top: 16px;
        }

        .list-qty {
          display: flex;
          flex-direction: column;
          align-items: center;
          justify-content: center;
          width: 150px;
          height: 145px;
          padding-bottom: 10px;
          background-image: url("/img/usr/@brands/conoco/ctop/lineup_qty.png");
          background-position: center;
          background-repeat: no-repeat;
          background-size: contain;
          text-align: center;

          p {
            &:nth-child(1) {
              font-size: 1.4rem;
              font-weight: normal;
              letter-spacing: 0.1em;
            }

            &:nth-child(2) {
              margin-top: -8px;
              font-size: 4.2rem;
              font-weight: 600;
            }

            &:nth-child(2) span {
              margin-left: 2px;
              font-size: 1.8rem;
            }
          }
        }

        img {
          display: block;
          width: 100%;
          border-radius: 10px;
        }

        p {
          margin-top: 8px;
          font-size: 1.3rem;
          font-weight: 600;
          text-align: center;
          line-height: 1.538;
          letter-spacing: 0.04em;
        }
      }
    }
  }
}
