@charset "UTF-8";
/*----------------------------------
全体
----------------------------------*/
#cp {
    font-family: 'Noto Sans JP', sans-serif;
    line-height: 1.5;
    letter-spacing: 0.1em;
    word-break: break-all;
    text-size-adjust: none;
    font-feature-settings: "palt";
    color: #464646;
    font-size: 16px;
}
.wrapper {
    width: 1040px;
    margin: 0 auto;
    overflow: hidden;
}
.t-center {
    text-align: center;
}
.t-left {
    text-align: left;
}
.t-right {
    text-align: right;
}
.block {
    display: block;
}

img {
    width: 100%;
    margin: 0 auto;
}
a:hover {
    opacity: 0.8;
}
sup {
    font-size: small;
}
.pc {
    display: block;
}
.mobi {
    display: none;
}
.mt25 {
    margin-top: 2.5rem;
}

.ptb15{
        margin: 1.5rem 0;
    display: block;
}
/*----------------------------------
文字スタイル
----------------------------------*/
strong, b, .strong {
    font-weight: bold;
}
.notes {
    font-size: 0.8em;
}
.border {
    border-bottom: 1px solid;
}
.f30 {
    font-size: 3rem;
}
/*----------------------------------
fv
----------------------------------*/
.fv {
    width: 100%;
    background-color: #ed7daa;
    padding: 4rem 0 0;
    background-image: url("../img/cp/bg_l.png"), url("../img/cp/bg_r.png");
    background-position: top left 6rem, top 5rem right;
    background-repeat: no-repeat, no-repeat;
    background-size: 12%, 23%;
}
.fv h1 {
    width: 726.4px;
    margin: 0 auto;
    display: block;
}
.fv picture {
    line-height: 0;
    display: block;
}

/*----------------------------------
メイン部分
----------------------------------*/
.limited-time{
        margin-top: 1.5rem;
    display: inline-block;
    font-weight: bold;
    line-height: 2;
}
.fbox {
    display: flex;
    justify-content: space-between;
}
.fbox_w {
    flex-wrap: wrap;
}
.fbox_alc {
    align-items: center;
}
ul.fbox li {
    width: calc(100% / 2 - 4rem);
    border-top: 1px solid #ed7daa;
    padding-top: 2rem;
    padding-bottom: 6rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start; 
}

ul.fbox li img{
    margin-top: auto;
}

section {
    margin: 10rem auto;
    box-sizing: border-box;
}
section h2 {
    text-align: center;
    padding-bottom: 3rem;
    font-size: 3.8rem;
    font-feature-settings: "palt";
    font-family: "BIZ UDPGothic", sans-serif;
    font-weight: 500;
    letter-spacing: 0.2em;
    padding-top: 10rem;
}
section h3 {
    font-weight: normal;
    padding-bottom: 1rem;
}
section h3 span.ic_num {
    background: #ed7daa;
    color: #FFFFFF;
    width: 68px;
    height: 68px;
    border-radius: 60px;
    line-height: 60px;
    display: inline-block;
    text-align: center;
    font-family: 'Noto Serif JP', serif;
}
section h3 span.ic_num span {
    font-size: 3.6rem;
}
section h3 span.cp_ttl {
    width: calc(100% - 68px);
    line-height: 1.35;
    padding-left: 1rem;
    font-size: 1.6rem;
    letter-spacing: 0.05em;
}
section h3 span.f_b {
    font-size: 2.6rem;
    color: #ed7daa;
    display: block;
}
.item_spec {
    font-size: 1.5rem;
    padding-bottom: 1rem;
    letter-spacing: 0.05em;
}
section dl {
    border: 1px solid;
    padding: 5%;
    margin-bottom: 3rem;
}
section dl dd {
    font-size: 1.5rem;
}
.btn {
    width: 34rem;
    height: 6rem;
    background: #81d5cd;
    color: #fff;
    border-radius: 30px;
    font-size: 1.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto;
}
@media(max-width: 1024px) {
    #cp {
        font-size: calc(30 * (100vw / 750));
    }
    .pc {
        display: none;
    }
    .mobi {
        display: block;
    }
    .wrapper {
        width: 100%;
    }
    sup {
        font-size: 0.5em;
    }
    .notes {
        font-size: calc(20 * (100vw / 750));
    }
    .f30 {
        font-size: calc(38 * (100vw / 750));
    }
    .fbox_w {
        flex-direction: column;
        flex-wrap: nowrap;
    }
    .fv{
              background-image: none;
        padding: 1rem 0 0;  
    }
    .fv h1{
               width: 100%;
        padding: 0;
    }
    .fv_text {
        width: calc(690 * (100vw / 750));
        margin: 0 auto;
        line-height: 1.85;
        padding-bottom: 3rem;
    }
    .cp_limit {
        font-size: calc(32 * (100vw / 750));
    }
    section {
        margin: 4rem auto;
        padding: 0 calc(30 * (100vw / 750));
    }
    section h2 {
        font-size: calc(48 * (100vw / 750));
        padding-top: 4rem;
        padding-bottom: 1.5rem;
    }
    section h3 {
        padding: .8rem 0;
        width: 100%;
    }
    section h3 span.ic_num {
        width: 56px;
        height: 56px;
        line-height: 53px;
    }
    section h3 span.ic_num span {
        font-size: calc(50 * (100vw / 750));
    }
    section h3 span.cp_ttl {
        font-size: calc(30 * (100vw / 750));
        width: calc(100% - 58px);
        padding-left: .5rem;
    }
    section h3 span.f_b {
        font-size: calc(40 * (100vw / 750));
    }
    ul.fbox li {
        width: 100%;
        padding-bottom: 2rem;
        padding-top: 1rem;
    }
    ul.fbox li img {
        padding: .8rem 0;
    }
    .item_spec {
        font-size: calc(28 * (100vw / 750));
        padding-bottom: .8rem;
    }
    .btn {
        margin: 1.5em auto 0;
        width: calc(480 * (100vw / 750));
        font-size: calc(30 * (100vw / 750));
        height: calc(100 * (100vw / 750));
    }
}