@charset "utf-8";

#primary { padding: 0; }
#main {min-height:0;}
#main .breadcrumb {display:none;}

#rpd-2023 * {
    margin:0;
    padding:0;
    line-height:1;
}
#rpd-2023 {
    width:100%;
    background:#000;
}
#rpd-2023 section {
    max-width:750px;
    margin:0 auto;
}
#rpd-2023 picture,
#rpd-2023 img {
    display:block;
}
#rpd-2023 li {
    list-style:none;
}
#rpd-2023 .lp-button {
    display:block;
    width:420px;
    margin:0 auto;
    padding:21px 0;
    box-sizing:border-box;
    font-size:26px;
    letter-spacing: 0.05em;
    text-align:center;
    text-decoration:none;
    transition: background 0.3s;
}
@media screen and (max-width:750px) {
    #rpd-2023 .lp-button {
        width:56vw;
        padding:2.8vw 0;
        font-size:3.467vw;
    }
}
#rpd-2023 .lp-button.bg-white {
    border:1px solid #FFF;
    background:#FFF;
    color:#000;
}
#rpd-2023 .lp-button.bg-black {
    border:1px solid #000;
    background:#000;
    color:#FFF;
}
@media screen and (min-width:751px) {
    #rpd-2023 .lp-button.bg-white:hover {
        background:#000;
        color:#FFF;
    }
    #rpd-2023 .lp-button.bg-black:hover {
        background:#FFF;
        color:#000;
    }
}
#rpd-2023 .txt-en {
    font-size:118%;
    line-height:1;
    vertical-align: -3%;
}
#rpd-2023 .txt-link {
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:6px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .txt-link {
        text-underline-offset:0.8vw;
    }
}

/* Section head ----------------------------------------------------*/
#rpd-2023 .section-head *,
#rpd-2023 .section-footer * {
    font-family:"HelveticaNeueW01-UltLt", "Helvetica Neue LT W05 25 Ult Lt", "RodinCattleyaPro-L{pm}", sans-serif !important;
}
#rpd-2023 .section-head {
    padding-top:72px;
    background:#000;
    color:#FFF;
    text-align:center;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head {
        padding-top:9.6vw;
    }
}
#rpd-2023 .section-head h1 {
    font-size:34px;
    line-height:1.353;
    letter-spacing:0.05em;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head h1 {
        font-size:4.533vw;
    }
}
#rpd-2023 .section-head h1 + p {
    margin-top:11px;
    margin-bottom:27px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head h1 + p {
        margin-top:1.466vw;
        margin-bottom:3.6vw;
    }
}
#rpd-2023 .section-head .txt-small {
    display:inline-block;
    margin-right:10px;
    font-size:46px;
    letter-spacing:0.06em;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head .txt-small {
        margin-right:1.333vw;
        font-size:6.133vw;
    }
}
#rpd-2023 .section-head .txt-large {
    font-size:100px;
    letter-spacing:0;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head .txt-large {
        font-size:13.333vw;
    }
}
#rpd-2023 .section-head .txt-large .txt-en {
    font-size:120px;
    letter-spacing:-0.07em;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head .txt-large .txt-en {
        font-size:16vw;
    }
}
#rpd-2023 .section-head .lp-button + p {
    margin-top:39px;
    font-size:28px;
    line-height:1.643;
    letter-spacing:0.05em;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head .lp-button + p {
        margin-top:5.2vw;
        font-size:3.733vw;
    }
}
#rpd-2023 .section-head img {
    width:100%;
    margin-top:72px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-head img {
        margin-top:9.6vw;
    }
}

#rpd-2023 h2 {
    max-width:750px;
    margin:0 auto;
    padding-top:67px;
    background:#FFF;
    color:#000;
    font-family:"HelveticaNeueW01-UltLt", "Helvetica Neue LT W05 25 Ult Lt", "RodinCattleyaPro-L{pm}", sans-serif !important;
    font-size:44px;
    text-align:center;
    letter-spacing:0.02em;
}
@media screen and (max-width:750px) {
    #rpd-2023 h2 {
        padding-top:8.933vw;
        font-size:5.867vw;
    }
}

/* Section contents --------------------------------------------------------*/
/*▼共通*/
#rpd-2023 .section-contents * {
    font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif !important;
    font-feature-settings:"palt";
}
#rpd-2023 .section-contents {
    padding:0 44px;
    background:#FFF;
    color:#000;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents {
        padding:0 5.867vw;
    }
}
#rpd-2023 .section-contents h3 {
    position:relative;
    margin-bottom:31px;
    padding-left:36px;
    font-size:32px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents h3 {
        margin-bottom:4.133vw;
        padding-left:4.8vw;
        font-size:4.267vw;
    }
}
#rpd-2023 .section-contents h3:before {
    display:block;
    position:absolute;
    top:2px;
    left:0;
    width:26px;
    height:26px;
    background:#000;
    content:"";
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents h3:before {
        top:0.267vw;
        width:3.467vw;
        height:3.467vw;
    }
}
#rpd-2023 .section-contents p,
#rpd-2023 .section-contents .cpn-list li {
    font-size:30px;
    line-height:1.533;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents p,
    #rpd-2023 .section-contents .cpn-list li {
        font-size:4vw;
    }
}
#rpd-2023 .section-contents .cpn-list li {
    padding-left:33px;
    text-indent:-32px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-list li {
        padding-left:4.4vw;
        text-indent:-4.267vw;
    }
}
#rpd-2023 .section-contents .cpn-list li:not(:last-child) {
    margin-bottom:5px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-list li:not(:last-child) {
        margin-bottom:0.667vw;
    }
}
#rpd-2023 .section-contents .cpn-list li:before {
    content:"※";
}

/*▲共通*/

#rpd-2023 .section-contents .cpn-period {
    padding-top:50px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-period {
        padding-top:6.667vw;
    }
}
#rpd-2023 .section-contents .cpn-benefits {
    padding-top:85px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-benefits {
        padding-top:11.333vw;
    }
}
#rpd-2023 .section-contents .cpn-benefits-ex {
    width:664px;
    margin:33px auto 38px;
    padding:57px 45px 44px;
    background:#e5e5e7;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-benefits-ex {
        width:88.533vw;
        margin:4.4vw auto 5.067vw;
        padding:7.6vw 6vw 5.867vw;
    }
}
#rpd-2023 .section-contents .cpn-benefits-ex h4 {
    margin-bottom:22px;
    font-size:30px;
    text-align:center;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-benefits-ex h4 {
        margin-bottom:2.933vw;
        font-size:4vw;
    }
}
#rpd-2023 .section-contents .cpn-benefits-ex li {
    margin-left:30px;
    font-size:30px;
    line-height:1.533;
    text-indent:-30px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-benefits-ex li {
        margin-left:4vw;
        font-size:4vw;
        text-indent:-4vw;
    }
}
#rpd-2023 .section-contents .cpn-benefits-ex li:nth-child(2) {
    padding:10px 0;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-benefits-ex li:nth-child(2) {
        padding:1.333vw 0;
    }
}
#rpd-2023 .section-contents .cpn-website {
    padding-top:85px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-website {
        padding-top:11.333vw;
    }
}
#rpd-2023 .section-contents .cpn-website h3 + a {
    display:inline-block;
    margin-bottom:61px;
    padding-top:5px;
    font-size:30px;
    text-decoration:underline;
    text-decoration-thickness:1px;
    text-underline-offset:6px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-website h3 + a {
        margin-bottom:8.133vw;
        padding-top:0.667vw;
        font-size:4vw;
        text-underline-offset:0.8vw;
    }
}
#rpd-2023 .section-contents .cpn-point {
    padding-top:90px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-point {
        padding-top:12vw;
    }
}
#rpd-2023 .section-contents .cpn-point h3 + p {
    margin-bottom:35px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-point h3 + p {
        margin-bottom:4.667vw;
    }
}
#rpd-2023 .section-contents .cpn-entry {
    padding-top:86px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-entry {
        padding-top:11.467vw;
    }
}
#rpd-2023 .section-contents .cpn-entry h3:after {
    display:block;
    position:absolute;
    top:-6px;
    left:224px;
    width:80px;
    padding:8px 0;
    background:#e6001e;
    color:#FFF;
    font-size:24px;
    text-align:center;
    content:"必要";
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-entry h3:after {
        top:-0.8vw;
        left:29.867vw;
        width:10.667vw;
        padding:1.067vw 0;
        font-size:3.2vw;
    }
}
#rpd-2023 .section-contents .cpn-remarks {
    padding-top:86px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-remarks {
        padding-top:11.467vw;
    }
}
#rpd-2023 .section-contents .cpn-remarks h3 + p {
    margin-bottom:42px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-contents .cpn-remarks h3 + p {
        margin-bottom:5.6vw;
    }
}
#rpd-2023 .section-footer {
    padding-top:47px;
    padding-bottom:120px;
    background:#FFF;
    color:#000;
    text-align:center;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-footer {
        padding-top:6.267vw;
        padding-bottom:16vw;
    }
}
#rpd-2023 .section-footer a:nth-of-type(1) {
    margin-bottom:30px;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-footer a:nth-of-type(1) {
        margin-bottom:4vw;
    }
}
#rpd-2023 .section-footer a:nth-last-of-type(1) {
    padding:18.5px 0;
}
@media screen and (max-width:750px) {
    #rpd-2023 .section-footer a:nth-last-of-type(1) {
        padding:2.467vw 0;
    }
}












