@charset "UTF-8";

img {
    height: auto;
}

.fixed-btn a span {
    display: block;
    color: #000;
    font-weight: 400;
}

.hero-btn a span.b,
.fixed-btn a span.b {
    font-size: 85%;
    color: #009dff;
    margin-top: 0;
    font-weight: bold;
}

.benefit-hl.afternone {
    padding-bottom: 0;
}

.benefit-hl.afternone::after {
    display: none;
}

.about-txt.gpt {
    font-size: 250%;
    font-weight: bold;
    line-height: 1.3;
    margin-bottom: 0;
    margin-top: 0.3em;
    text-align: center;
    letter-spacing: .05em;
}

.about-txt.gpt b {
    color: rgb(52, 119, 246);
    font-size: 120%;
}

.about-txt.gpt span {
    font-size: 80%;
}

.free-contents {
    width: 100%;
    background-image: url(../img/free-contents/fc-background.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: bottom;
}

.free-contents-main {
    max-width: 1280px;
    margin: 0 auto;
    padding-top: 50px;
    padding-bottom: 93px;
}

.fc-title {
    text-align: center;
    font: normal normal 900 58px/115px "Noto Sans JP";
    letter-spacing: 0px;
    color: #282828;
    background: url(../img/free-contents/fc-title-bg.webp) no-repeat bottom center;
    padding-bottom: 6px;
    white-space: nowrap;
}

.fc-title span {
    font: normal normal 900 78px/115px "Noto Sans JP";
}

.fc-message {
    width: 800px;
    margin: 0 auto;
    text-align: left;
    font: normal normal 900 20px/35px "Noto Sans JP";
    letter-spacing: 0px;
}

.fc-message b {
    color: #FF6C15;
}

.fc-message.top {
    margin: 56px auto 93px;
}

.fc-message.bottom {
    margin: 0 auto;
}

.fc-box {
    max-width: 1280px;
    margin: 0 auto 70px;
    position: relative;
}

.fc-box img {
    max-width: 100%;
    margin: 0 auto;
}

.fc-box .fc-box-message {
    text-align: center;
    font: normal normal bold 25px/37px "Noto Sans JP";
    letter-spacing: 0px;
    color: #282828;
    width: 100%;
    position: absolute;
    top: 13%;
    margin: auto;
}

.fc-box .fc-box-submessage {
    text-align: center;
    font: normal normal normal 17px/25px "Noto Sans JP";
    letter-spacing: 0px;
    color: #282828;
    width: 100%;
    position: absolute;
    top: 18.5%;
    margin: auto;
}

.fc-box.b2 .fc-box-message {
    top: 11%;
}

.fc-box.b2 .fc-box-submessage {
    top: 18%;
}

.fc-box.b3 .fc-box-message {
    top: 14%;
}

.fc-box.b3 .fc-box-submessage {
    top: 22%;
}

.point06 {
    position: relative;
    z-index: 1
}

@media screen and (min-width:768px) {
    .point06 {
        background: url(../img/webp/point_bg_06_pc.webp) 50% 0/auto 100% no-repeat;
        height: 52.6em;
        margin-top: -0.1em;
    }

    .point06 .container {
        padding-top: 14.5em
    }

    .point06 .point-num {
        top: 9.5em;
        right: 30em;
    }

    .point06 .point-img {
        left: 10em;
        position: absolute;
        bottom: -1em;
        width: auto;
    }

    .point06 .point-catch {
        margin-left: 16%;
    }

    .point06 .point-desc {
        margin: 0 auto 0 16%;
        width: 35%;
    }

    .point06 .point-desc .last-bloc {
        margin-top: 1em;
        margin-left: 8em;
    }
}

@media screen and (max-width:767px) {
    .point06 {
        background: url(../img/webp/point_bg_06_sp.webp) 0 0/100% auto no-repeat;
        height: 198vw;
        margin-top: -22.133vw
    }

    .point06 .container {
        padding-top: 22.133vw
    }

    .point06 .point-num {
        top: 17vw;
        right: 10vw
    }

    .point06 .point-catch {
        margin: 7vw 0 4vw 10vw
    }

    .point06 .point-desc {
        line-height: 1.7;
        margin: 0 0 0 10vw;
        width: 40vw;
        text-align: justify;
    }

    .point06 .point-desc .last-bloc {
        margin-top: 0;
        margin-left: 0;
    }
}

@media screen and (min-width: 768px) {
    .fixed-btn {
        font-size: 160%;
        letter-spacing: .1em;
        width: 59.688%;
    }

    .fixed-btn a {
        background-position: 22.5em 50%;
        padding: 0.8em 0 0.8em;
    }

    .fixed-btn a span {
        font-size: .4em;
        margin-top: 20px;
    }

    .benefit-hl {
        font-size: 275%;
        letter-spacing: 0.08em;
        padding-bottom: 1.964em;
    }
}

@media screen and (max-width: 767px) {
    .benefit-hl.afternone {
        padding-bottom: 1em;
    }

    .fixed-btn a span {
        margin-top: 0;
        font-size: .5em;
        letter-spacing: 0 !important;
        -webkit-transform: scale(1);
        -moz-transform: scale(1);
        -ms-transform: scale(1);
        -o-transform: scale(1);
        transform: scale(1);
    }

    .about-txt.gpt {
        font-size: 230%;
    }

    .free-contents {
        background-image: url(../img/free-contents/fc-background-sp.webp);
        background-repeat: no-repeat;
        background-size: cover;
        background-position: bottom;
    }

    .free-contents-main {
        max-width: 90.667vw;
        margin: 0 auto;
        padding-top: 30px;
        padding-bottom: 50px;
    }

    h2.fc-title {
        font: normal normal 900 29px/57px "Noto Sans JP";
        background: url(../img/free-contents/fc-title-bg-sp01.webp) no-repeat bottom center;
    }

    h1.fc-title {
        font: normal normal 900 29px/57px "Noto Sans JP";
        background: url(../img/free-contents/fc-title-bg-sp02.webp) no-repeat bottom center;
    }

    h1.fc-title span {
        font: normal normal 900 38px/57px "Noto Sans JP";
    }

    .fc-message {
        width: 85vw;
        margin: 0 auto;
        font: normal normal 900 13px/21px "Noto Sans JP";
    }

    .fc-message.top {
        margin: 30px auto 37px;
    }

    .fc-message.bottom {
        margin: 0 auto;
    }

    .fc-box {
        max-width: 100%;
        margin: 0 auto 30px;
        position: relative;
    }

    .fc-box img {
        max-width: 100%;
        margin: 0 auto;
    }

    .fc-box .fc-box-message {
        font: normal normal bold 15px/22px "Noto Sans JP";
        top: 12%;
    }

    .fc-box .fc-box-submessage {
        font: normal normal normal 12px/18px "Noto Sans JP";
        top: 18%;
        width: 75vw;
        margin: 0 auto;
        left: 0;
        text-align: justify;
        right: 0;
    }

    .fc-box.b2 .fc-box-message {
        top: 15%;
    }

    .fc-box.b2 .fc-box-submessage {
        top: 22%;
    }

    .fc-box.b3 .fc-box-message {
        top: 16%;
    }

    .fc-box.b3 .fc-box-submessage {
        top: 30%;
    }
}

small.toolsub {
    font-size: 0.8em;
}

@media screen and (min-width: 768px) {
    .voice-card.voice02 {
        background-image: url(../img/voice04_bg_pc.png)
    }
}

@media screen and (max-width: 767px) {
    .voice-card.voice02 {
        background-image: url(../img/voice04_bg_sp.png)
    }
}

@media screen and (min-width: 768px) {
    .voice02 .voice-card-txt {
        font-size: 96.5%;
        line-height: 1.36;
    }
}

@media screen and (max-width: 767px) {
    .voice02 .voice-card-hl {
        height: 146.44px;
    }
}

@media screen and (max-width: 767px) {
    .voice02 .voice-card-txt {
        font-size: 3vw;
    }
}

@media screen and (min-width: 768px) {
    .case-notes {
        margin-left: 12%;
    }
}

/* 
@media screen and (max-width: 767px) {
    .benefit-hl {
        font-size: 5.4vw;
    }
}

@media screen and (max-width: 767px) {
    .benefit-hl span {
        font-size: .8em;
    }
}

.benefit-hl::after {
    content: none;
}

@media screen and (min-width: 768px) {
    .benefit-hl {
        padding-bottom: 0;
    }
}
 */