@charset "UTF-8";

.card_bg_wh {
    display: grid;
    gap: 40px;
    padding: 30px;
    border-radius: 10px;
    background: var(--color-white);
    .inner_card {
        position: relative;
        display: grid;
        grid-template-columns: 26px auto;
        grid-template-rows: 26px auto;
        grid-template-areas: "num step"
                            "num desc";
        gap: 20px 7px;
        color: var(--color-black);
        &:not(:first-child):before {
            content: "";
            position: absolute;
            top: -20px;
            left: 50%;
            transform: translateX(-50%);
            display: block;
            width: 22px;
            height: 22px;
            padding: 10px 0;
            background: url(../../images/arrow_down.svg)no-repeat;
            object-fit: contain;
        }
         .num {
            position: relative;
            grid-area: num;
            display: flex;
            align-items: flex-start;
            justify-content: center;
            color: var(--color-white);
            font-family: "Aviano Future";
            font-size: 18px;
            font-weight: bold;
            z-index: 1;
            &:before {
                content: "";
                position: absolute;
                top: 4px;
                left: -1px;
                width: 28px;
                height: 28px;
                border-radius: 50%;
                background: var(--color-DE040A);
                z-index: -1;
            }
        }
        .step {
            grid-area: step;
            font-size: 18px;
            font-weight: bold;
            font-family: "Aviano Future";
            letter-spacing: 1.8px;
        }
        .desc {
            grid-area: desc;
            font-weight: bold;
        }
    }
}

.bx_type_card {
    display: grid;
    gap: 20px;
    margin-top: 20px;
}

.wrap_type_card {
    margin-top: 40px;
    .ttl_type_card {
        font-size: 20px;
        font-weight: bold;
    }
}

.type_card {
    display: grid;
    gap: 10px;
    padding: 20px 22px;
    border-radius: 18px;
    border-left: 6px solid var(--color-DE040A);
    background: var(--color-white);
    .ttl {
        color: var(--color-DE040A);
        font-weight: bold;
        img {
            width: 16px;
        }
    }
    .desc {
        color: var(--color-black);
        font-weight: normal;
    }
    &.line {
        border-left: 6px solid var(--color-06C755);
        .ttl {
            color: var(--color-06C755);
        }
    }
}

.prize_box {
  display: grid;
  gap: 20px;
  padding: 30px;
  border-radius: 10px;
  background: var(--color-white);
  margin-bottom: 20px;
}

.prize_box p {
  font-size: 18px;
  color: var(--color-black);
  text-align: center;
  font-weight: bold;
}

.stamp_txt {
  background: #000;
  width: 50%;
  margin: auto;
  text-align: center;
  padding: 10px;
  border-radius: 10px;
  color: var(--color-white) !important;
}

.com_son {
  background: var(--color-black);
  color: var(--color-white) !important;
  padding: 10px 0;
  font-family: "aviano-future", sans-serif;
}

.cont_shoplist_bx {
    .desc {
        margin-top: 40px;
    }

}

.cont_shoplist_bx  {
    .ttl_sub {
        font-size: 20px;
    }
}

.bx_inner_shoplist {
    margin-top: 40px;
    .ttl_sub+img {
        margin-top: 20px;
    }
}

.red_please_note {
    display: block;
    width: 100%;
    padding: 20px;
    border: 2px solid var(--color-DE040A);
    border-radius: 10px;
    background: var(--color-white);
    color: var(--color-DE040A);
    font-weight: bold;
}

#important_notes .bx_type_card {
    .type_card:nth-of-type(even) {
        border-left: 6px solid var(--color-00AFEC);
        .ttl {
            color: var(--color-00AFEC);
        }
    }
    .type_card:nth-of-type(3) {
        border-left: 6px solid var(--color-main-red);
        .ttl {
            color: var(--color-main-red);
        }
    }
}
