@charset "utf-8";
strong{
    color: 000;
}
.lowerWrap {
    margin: 0 auto;
    padding: 0 19px;
    max-width: 918px;
}
.lower_wrap_subcont {
    margin: 0 auto;
    max-width: 800px;
    width: 100%;
}
@media screen and (max-width: 834px) {
    .lowerWrap {
        width: 100%;
        padding: 0 19px;
    }
}
@media screen and (max-width: 834px) {
    .lowerWrap {
        padding: 0 19px;
    }
        .lower_wrap_subcont {
        width: calc(100% - 20px);
    }
}
.general_h2 {
    width: 880px;
    padding: 35px 0 35px 0px;
}
@media screen and (max-width: 834px){
    .general_h2{
        padding: 26px 0 26px 19px;
        width: 100%;
    }
}
@media screen and (min-width: 835px) {
    .general_h2 > span:before {
        content: '';
        position: absolute;
        transform: translateY(-50%);
        top: 50%;
        left: -123px;
        width: 110px;
        height: 122px;
        background: 0 0 / contain no-repeat;
    }
}
@media screen and (min-width: 835px) {
    .general_h2 > span:before {
        background: url(/mega/wp-content/themes/site/images/reason/warranty01.svg) center / cover no-repeat;
    }
    .general_h2 > span.seiseki::before {
        background: url(/mega/wp-content/themes/site/images/reason/warranty02.svg)center/cover no-repeat;
    }
}
.lowerWrap {
    margin: 0 auto;
    padding: 0 19px;
    max-width: 918px;
}

.lower_wrap_subcont {
    margin: 0 auto;
    max-width: 800px;
    width: 100%;
}
@media screen and (max-width: 834px) {
    .lowerWrap {
        width: 100%;
        padding: 0 19px;
    }
}
@media screen and (max-width: 834px) {
    .lowerWrap {
        padding: 0 19px;
    }
        .lower_wrap_subcont {
        width: calc(100% - 20px);
    }
}

.h2Main {
    display: block;
    font-size: 2.6rem;
    font-size: max(2.4rem,min(6.933vw,4.6rem));
    font-weight: 700;
    line-height: 1.1;
    -webkit-font-feature-settings: "halt";
    font-feature-settings: "halt";
}
.h2Sub {
    display: block;
    font-size: 1.8rem;
    font-size: max(1.6rem,min(4.8vw,2.8rem));
    font-weight: 600;
    line-height: 1.2;
    -webkit-font-feature-settings: "halt";
    font-feature-settings: "halt";
}
@media screen and (min-width: 835px){
    .h2Main {
        font-size: 4.8rem;
    }
    .h2Sub {
        font-size: 3rem;
        line-height: 1.3;
    }
}
@media screen and (max-width: 480px){
    .h2Main {
        font-size: 6.25vw;
    }
}

#lower_container {
    max-width: 100%;
}

.catch_black {
    color: #000000;
    font: 700 2.4rem "Yu Mincho", "YuMincho", serif;
}

.annotation {
    font-size: 1.4rem;
    color: #555555;
    line-height: 1.3;
    font-weight: normal;
}

#cashback_detail dd span {
    display: inline-block;
    font-size: 1.4rem;
    line-height: inherit;
    text-indent: -1.4rem;
    padding-left: 1.4rem;
}

/* Firsr view on icon
----------------------------------------- */
.firstView {
    display: grid;
    grid-gap: min(var(--sp-15px), 20px) 20px;
    --background-color: #fff7f8;
}
.firstView_txt {
    position: relative;
    display: grid;
    align-content: center;
    grid-gap: clamp(5px, var(--sp-5px), 5px);
}
.firstView h1 {
    margin-bottom: 0;
    color: #a10017;
    font: 900 clamp(2.6rem, var(--sp-29px), 5.3rem)/1.2 var(--fontFamily-serif-noto);
    -webkit-font-feature-settings: "halt";
    font-feature-settings: "halt";
}
.firstView_txt p {
    margin-bottom: 0;
    font: 900 clamp(1.4rem, var(--sp-17px), 3.2rem)/1.3 var(--fontFamily-sans-noto);
    -webkit-font-feature-settings: "halt";
    font-feature-settings: "halt";
}
.firstView_txt .subBtm {
    margin-top: min(var(--sp-7px),13px);
    font-size: clamp(1.5rem,var(--sp-18px),3rem);
}
.firstView_emblem {
    display: grid;
    place-content: center;
    grid-auto-columns: min(var(--sp-140px), 200px);
    grid-auto-flow: column;
    grid-gap: min(var(--sp-10px), 20px);
}
.firstView_emblem div {
    display: grid;
    align-content: start;
    justify-items: center;
    grid-gap: min(var(--sp-7px), 10px);
}
.firstView_emblem :is(picture, img) {
    display: block;
    max-width: min(var(--sp-120px), 170px);
    width: 100%;
    height: auto;
}

.firstView_emblem .hideCont {
    --hide-height: 1.4em;
}
.firstView_emblem p {
    padding-left: 1em;
    text-indent: -1em;
    color: #777;
    font: 400 1rem/1.3 var(--fontFamily-sans-yakuhan);
}
.firstView_emblem .hideTxt::after {
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 40%, #fff 100%);
}
@media screen and (max-width: 834px) {
    .firstView {
        align-content: start;
        padding: 0;
        background: none;
    }
    .firstView_txt {
        padding: 20px;
        border-bottom: 1px solid #dadada;
        background-color: var(--background-color);
    }
}
@media not screen and (max-width: 834px) {
    .firstView {
        align-content: start;
        align-items: start;
        grid-template-columns: 1fr auto;
        margin-inline: auto;
        margin-bottom: 30px;
        padding-block: 20px 10px;
        min-height: 270px;
        max-width: 1150px;
        border-image: linear-gradient(var(--background-color) 0 100%) 0 fill/auto/0 100vw;
    }
    .firstView_emblem {
        grid-column: 2;
        padding: 40px 30px 0 0;
    }
    .firstView_emblem .hideCont {
        --hide-color: #fff7f8;
    }
}


/* 見出し
------------------------------*/
.warranty_h2_container .common_h2 {
    font-size: 4.4rem;
    font-size: max(2.2rem, min(6.4vw, 4.4rem));
    font-feature-settings: "palt";
    font-family: YakuHanMP, 'Noto Serif JP', serif;
}

.warranty_h2_container .common_h2 .blue {
    color: #7c660b;
}

@media screen and (min-width: 835px) {
    .warranty_h2_container .common_h2 .common_h2_txt:before {
        content: '';
        position: absolute;
        transform: translateY(-50%);
        top: 50%;
        left: -80px;
        width: 110px;
        height: 110px;
        background: 0 0/contain no-repeat;
    }

    .warranty_h2_container .common_h2 .common_h2_txt.henkin:before {
        background: url(../images/reason/warranty01.png)center/cover no-repeat;
    }

    .warranty_h2_container .common_h2 .common_h2_txt.seiseki:before {
        background: url(../images/reason/warranty02.png)center/cover no-repeat;
    }
}

#cashback_detail {
    border: solid 1px #e2d9b1;
    padding: 33px 50px 27px 50px;
    margin: 25px 0;
    position: relative;
    border-radius: 10px;
}

.win #cashback_detail {
    padding-bottom: 26px;
}

#cashback_detail::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - 20px);
    height: calc(100% - 20px);
    border: solid 2px #947f28;
    border-radius: 5px;
}

#cashback_detail p:first-child {
    display: inline-block;
    position: absolute;
    left: 0;
    width: 835px;
    height: 60px;
    box-sizing: border-box;
    color: #ffffff;
    font-size: 2.6rem;
    line-height: 1.3;
    font-weight: bold;
    margin: 0 0 10px 0;
    padding: 12px 0 6px 50px;
}

#cashback_detail p:first-child::after {
    position: absolute;
    content: "";
    z-index: 1;
    top: 0;
    right: 0;
    width: 0px;
    height: 0px;
    border-width: 30px 15px 30px 0;
    border-color: transparent #fffcf4 transparent transparent;
    border-style: solid;
}

#cashback_detail p.henkin {
    background: #a08a23;
}

#cashback_detail p.seiseki {
    background: #c92d24;
}

#cashback_detail dl {
    padding: 20px 0;
    overflow: hidden;
    clear: both;
    border-bottom: dashed 1px #c4b794;
}

#cashback_detail dl:nth-of-type(1) {
    padding-top: 80px;
}

#cashback_detail dl:last-child {
    padding-bottom: 8px;
    border: none;
}

#cashback_detail dt {
    font-size: 2.0rem;
    line-height: 1.3;
    color: #423b1c;
    float: left;
    width: 160px;
    margin-top: 1px;
    font-weight: bold;
}

#cashback_detail dt strong {
    font-size: inherit;
    line-height: inherit;
}

#cashback_detail dd {
    font-size: 1.7rem;
    line-height: 1.5;
    color: #000000;
    margin-left: 0;
    float: right;
    width: 615px;
}

#cashback_detail dd span {
    display: inline-block;
    font-size: 1.4rem;
    line-height: inherit;
    text-indent: -1.4rem;
    padding-left: 1.4rem;
}

#cashback_detail dd ul {
    padding-left: 0;
}

#cashback_detail dd ul li {
    padding-left: 1em;
    text-indent: -1.3em;
    list-style-type: none;
}

#cashback_detail dd ul li:before {
    content: "●";
    font-size: 1.2rem;
    margin-right: 1rem;
    color: #ac9b6b;
}
.closeWrap{
    margin-top: 80px;
}

@media (max-width: 768px) {

    /*----------------------------------------------------------------------
    保証エリア
    ----------------------------------------------------------------------*/
    .lower_wrap {
        width: auto;
        padding: 0 19px;
    }

    .catch_black {
        font-size: 2.0rem;
        line-height: 1.4;
        margin-top: 15px;
    }

    .warranty_h2.oneline span::before {
        margin-top: 12px;
    }

    #cashback_detail {
        padding: 15px 20px 10px 20px;
    }

    #cashback_detail::before {
        width: calc(100% - 14px);
        height: calc(100% - 14px);
    }

    #cashback_detail p:first-child {
        width: 80%;
        font-size: 2.1rem;
        line-height: 1.2;
        height: 61px;
        margin: 5px 0 18px 0;
        padding: 6px 0 6px 15px;
    }

    #cashback_detail p:first-child::before {
        border-width: 31px 0 30px 15px;
    }

    #cashback_detail p:first-child::after {
        border-width: 31px 15px 30px 0;
    }

    #cashback_detail dl {
        padding: 0 0 25px 0;
        border: none;
    }

    #cashback_detail dt {
        font-size: 2.0rem;
        float: none;
        width: 100%;
        margin-bottom: 8px;
        padding: 0 0 7px 0;
        border-bottom: dashed 1px #c4b794;
    }

    #cashback_detail dd {
        float: none;
        width: 100%;
    }

    #cashback_detail dd span {
        display: block;
    }

    #cashback_detail dd span:nth-of-type(1) {
        margin-top: 5px;
    }

    #cashback_detail dd ul li {
        margin-left: 1em;
    }

}