@charset "UTF-8";

/* ===================================================
    Common
=================================================== */
html { font-size: 62.5%; }
body{
    background-color: #FFFFFF;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif;
    text-align: center;
    font-size: 18px; line-height: 1.9;
    font-weight: 400;
    color: #000;
    padding-bottom: 120px;
}
a img { transition: opacity .2s ease-in-out; }
a:hover img { opacity: 0.7; }

img{
    max-width: 100%;
    vertical-align: top;
}
div, p, img, h1, h2, h3, h4, h5, h6, ul {
    margin: auto;
}

.brSp { display: none; }
.brPc { display: block; }

.notes { font-size: 13px; line-height: 1.6; }

/*======= acc ========*/
.accHead { cursor: pointer; }
.accBody { display: none; }

@media screen and (max-width:750px){
    body {
        font-size: calc((26/750)*100vw); line-height: 1.7;
        padding-bottom: calc((150/750)*100vw);
    }
    a:hover img { opacity: 1; }

    .brSp { display: block; }
    .brPc { display: none; }

    .accContent{ padding: 0 calc((10/750)*100vw); }

    .notes { font-size: calc((20/750)*100vw); line-height: 1.6; }
}

/* ===================================================
    header
=================================================== */
.headerInner {
    padding: 11px 10px 14px;
    max-width: 1200px;
    text-align: left;
}

header img {
    width: 30%;
}

@media screen and (max-width:750px){
    .headerInner{ padding: calc((40/750)*100vw); }
    .headerInner img {
        width: calc((669/750)*100vw);
    }
}

/* ===================================================
    counterCovid19
=================================================== */
.counterCovid19 .accHead {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 0;
    border: 2px #b24350 solid;
    background: #FFF;
    font-size: 17px;
    color: #b24350; font-weight: 400; line-height: 1.1;
}
.counterCovid19 .accHead::after {
    content: "▼";
    display: inline-block;
    transition: .3s;
    margin-left: 8px;
}
.counterCovid19 .accHead.active::after {
    transform: scale(1,-1);
}
.counterCovid19 .accBody {
    border: 1px #b24350 solid;
    border-top: none;
    background: url(../img/pc/bg-covid19.png) center top repeat;
}
.counterCovid19 .accInner {
    padding: 32px 0 25px;
    max-width: 980px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: row wrap;
}
.txtCovid19 {
    width: 36.7346%;
    text-align: left;
    font-size: 13px; color: #8a4a50; line-height: 1.692;
    margin: auto 0;
}
.imgCovid19 { width: 61.2244%; margin: auto 0; }

@media screen and (max-width:980px){
    .txtCovid19 {
        font-size: calc((13/980)*100vw); line-height: 1.692;
    }
}
@media screen and (max-width:750px){
    .counterCovid19 .accHead {
        border: 1px #b24350 solid;
        padding: calc((10/750)*100vw) 0;
        font-size: calc((24/750)*100vw);
    }
    .counterCovid19 .accBody {
        border-radius: 0 0 calc((6/750)*100vw) calc((6/750)*100vw);
        background: url(../img/pc/bg-covid19.png) center top repeat;
        background-size: 3.2% auto;
    }
    .counterCovid19 .accInner {
        padding: calc((25/750)*100vw) 0;
        width: calc((670/750)*100vw);
    }
    .txtCovid19 {
        width: 100%;
        font-size: calc((22/750)*100vw);
    }
    .imgCovid19 {
        width: 100%;
        margin-top: calc((30/750)*100vw);
    }
}

/* ===================================================
    fv
=================================================== */
/*======= fv1 ========*/
#fv1 .fvWrap {
    background: url(../img/pc/bg-fv1.jpg) center center no-repeat;
}
#fv1 .fvInner {
    overflow: hidden;
    max-width: 997px;
    height: 612px;
    position: relative;
}
#fv1 .fvImg, #fv1 .fvName { position: absolute; }
#fv1 .fvImg { bottom: 0; }
#fv1 .fvName {
    bottom: 5.4%; right: 27.8%;
    font-size: 12px; color: #703b15; line-height: 1.5;
    text-align: left;
}
#fv-time{
    background: rgb(224,222,212);
    background: linear-gradient(138deg, rgba(224,222,212,1) 0%, rgba(255,255,255,1) 50%, rgba(224,222,212,1) 100%);
    margin-bottom: 5px;
}
.kv-notes{
    text-align: left;
    max-width: 1035px;
    margin: 0 auto;
    padding: 0 5px 10px;
    font-size: 12px;
}
.fv-time_a img{
    padding: 30px 5px 0 20px;
}
.fv-time_a .fvPointWrap{
    background: rgb(233,232,230);
    background: linear-gradient(90deg, rgba(233,232,230,1) 0%, rgba(232,231,227,1) 100%);
}
.fv-time_a .fvPoint{
    max-width: 761px;
    margin: 0 auto;
    padding: 25px 0;
    display: flex;
    gap: 27px;
}
.fv-time_a .fvPoint li{
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    padding: 5px;
    background: rgb(236,62,63);
    background: linear-gradient(0deg, rgba(236,62,63,1) 10%, rgba(138,14,14,1) 100%);
    border: solid 2px #bd1313;
    line-height: 1.2;
    flex: 1;
    font-size: 16px;
    font-weight: bold;
}
.fv-time_a .fvPointInner{
    position: relative;
}
.fv-time_a .fvPointTop{
    display: flex;
    justify-content: center;
    align-items: center;
}
.fv-time_a .fvPointTop .unit{
    text-align: left;
    line-height: 1.1;
}
.fv-time_a .fvPoint li .fvPointXL{
    font-size: 40px;
    line-height: 0.9;
}
.fv-time_a .fvPoint li .fvPointLg{
    font-size: 30px;
}
.fv-time_a .fvPoint li .fvPointMs{
    font-size: 20px;
}
.fv-time_a .fvPoint li .fvPointSm{
    font-size: 10px;
}
.fv-time_a .fvPoint li .fvPointSm.note01{
    position: absolute;
    top: 0;
    right: 0;
}
.fv-time_a .fvPoint li .fvPointSm.note02{
    position: absolute;
    top: 0;
    right: 5px;
}
.fv-time_b img{
    padding: 17px 30px;
}
.fv-time_b .fvPoint li{
    border: solid 2px #bd1313;
    min-height: 69px;
    margin-bottom: 12px;
    border-radius: 50px;
    font-size: 16px;
    line-height: 1.2;
    color: #8f1110;
    font-weight: bold;
    background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(138,14,14,0) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    width: 189px;
}
.fv-time_b .fvPointInner{
    position: relative;
}
.fv-time_b .fvPointTop{
    display: flex;
    justify-content: center;
    align-items: center;
}
.fv-time_b .fvPointTop .unit{
    text-align: left;
    line-height: 1.1;
}
.fv-time_b .fvPoint li .fvPointXL{
    font-size: 36px;
    line-height: 0.9;
}
.fv-time_b .fvPoint li .fvPointLg{
    font-size: 30px;
}
.fv-time_b .fvPoint li .fvPointMs{
    font-size: 20px;
}
.fv-time_b .fvPoint li .fvPointSm{
    font-size: 10px;
}
.fv-time_b .fvPoint li .fvPointSm.note01{
    position: absolute;
    top: 0;
    right: 0;
}
.fv-time_b .fvPoint li .fvPointSm.note02{
    position: absolute;
    top: -1px;
    right: 10px;
}
@media screen and (min-width:751px){
    .fv-time_b .fvInner{
        position: relative;
    }
    .fv-time_b .fvPointWrap{
        position: absolute;
        top: 60px;
        left: calc(50% + 270px);
    }
}
@media screen and (max-width:980px){
    #fv1 .fvWrap { background-size: auto 100%; }
    #fv1 .fvInner { height: calc((612/980)*100vw); }
    #fv1 .fvInner img {
        max-width: 997px;
        width: calc((997/980)*100vw);
    }
    .kv-notes{
        font-size: calc((20/750)*100vw);
    }
    .fv-time_b .fvPointWrap{
        top: 30px;
        left: auto;
        right: 20px;
    }
    .fv-time_b .fvPoint li{
        min-height: auto;
        padding: 5px;
        font-size: calc((16/980)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointXL{
        font-size: calc((32/980)*100vw);
        line-height: 0.9;
    }
    .fv-time_b .fvPoint li .fvPointLg{
        font-size: calc((28/980)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointMs{
        font-size: calc((18/980)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointSm{
        font-size: calc((9/980)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointSm.note02{
        top: -5px;
    }
}
@media screen and (max-width:750px){
    #fv1 .fvInner { height: auto; }
    #fv1 .fvInner img {
        max-width: 100%;
        width: auto;
    }
    #fv1 .fvImg { position: static; }
    #fv1 .fvImg { bottom: auto; }
    #fv1 .fvName {
        bottom: 18.5%; right: 53.6%;
        font-size: calc((18/750)*100vw); line-height: 1.24;
    }
    .kv-notes{
        padding: 0 calc((20/750)*100vw) 0;
    }
    .fv-time_a{
        margin-bottom: 0;
    }
    .fv-time_a img{
        padding: 25px 0 0 14px;
    }
    .fv-time_a .fvPoint{
        width: 100%;
        max-width: none;
        gap: 12px 24px;
        flex-wrap: wrap;
        padding: 19px 42px;
    }
    .fv-time_a .fvPoint li{
        width: calc(50% - 12px);
        flex: auto;
        font-size: calc((24/750)*100vw);
        line-height: 1.3;
        min-height: auto;
    }
    .fv-time_a .fvPoint li .fvPointXL{
        font-size: calc((62/750)*100vw);
        line-height: 1;
    }
    .fv-time_a .fvPoint li .fvPointLg{
        font-size: calc((46/750)*100vw);
    }
    .fv-time_a .fvPoint li .fvPointMs{
        font-size: calc((30/750)*100vw);
    }
    .fv-time_a .fvPoint li .fvPointSm{
        font-size: calc((18/750)*100vw);
    }
    .fv-time_a .fvPoint li .fvPointSm.note01{
        top: 0;
        right: calc((-10/750)*100vw);
    }
    .fv-time_a .fvPoint li .fvPointSm.note02{
        top: 0;
        right: calc((16/750)*100vw);
    }
    .fv-time_b img{
        padding: 24px 0 0;
    }
    .fv-time_b .fvPointWrap{
        padding: 16px 40px;
        margin-top: -2px;
        background: #e8e7e3;
    }
    .fv-time_b .fvPoint{
        display: flex;
        flex-wrap: wrap;
        gap: 6px 15px;
    }
    .fv-time_b .fvPoint li{
        width: calc(50% - 8px);
        margin: 0;
        border-radius: 17px;
        border-width: 1px;
        font-size: calc((24/750)*100vw);
        min-height: auto;
        padding: 5px 0;
        background: linear-gradient(0deg, rgba(255,255,255,1) 0%, rgba(253,253,253,0.6) 100%);
    }
    .fv-time_b .fvPoint li .fvPointXL{
        font-size: calc((50/750)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointLg{
        font-size: calc((42/750)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointMs{
        font-size: calc((30/750)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointSm{
        font-size: calc((18/750)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointSm.note01{
        position: absolute;
        top: 0;
        right: calc((-10/750)*100vw);
    }
    .fv-time_b .fvPoint li .fvPointSm.note02{
        position: absolute;
        top: calc((-10/750)*100vw);
        right: calc((20/750)*100vw);
    }
}

/*======= fv2-4 ========*/
#fv2, #fv3, #fv4 {
    position: relative;
    overflow: hidden;
    width: 100%;
    height: 612px;
}
#fv2 .fv, #fv3 .fv, #fv4 .fv {
    position: absolute;
    top: 0%; left: 50%;
    transform: translateX(-50%);
    width: 1920px;
    height: 612px;
}
@media screen and (max-width:1020px){
    #fv3, #fv4 { height: calc((612/1020)*100vw); }
    #fv3 .fv, #fv4 .fv {
        width: calc((1920/1020)*100vw);
        height: calc((612/1020)*100vw);
    }
}
@media screen and (max-width:980px){
    #fv2 { height: calc((612/980)*100vw); }
    #fv2 .fv {
        width: calc((1920/980)*100vw);
        height: calc((612/980)*100vw);
    }
}
@media screen and (max-width:750px){
    #fv2, #fv3, #fv4 {
        width: 100%;
        height: auto;
    }
    #fv2 .fv, #fv3 .fv, #fv4 .fv {
        position: static;
        top: auto; left: auto;
        transform: translateX(0);
        width: auto;
        height: auto;
    }
}

/* ===================================================
    cta
=================================================== */
.ctaInter, .ctaTel a {
    max-width: 606px;
    width: calc((606/980)*100vw);
}
.ctaInter { padding: 16px 0 50px; }
.secondCta .ctaInter { padding: 50px 0 55px; }
.ctaTel, .ctaBtn { margin-top: 30px; }
.ctaTel a, .ctaTel .telNum, .ctaTel .ctaTxt {
    display: block;
}
.ctaTel a {
    position: relative;
    max-height: 187px;
    height: calc((187/980)*100vw);
    color: #FFF; text-decoration: none;
    background: url(../img/pc/btn-cta-tel_time.png) center center no-repeat;
    background-size: contain;
}
.ctaTel a,
.ctaTel .ctaTxt { pointer-events: none; }
.ctaTel .telNum, .ctaTel .ctaTxt {
    position: absolute;
}
.ctaTel .telNum {
    left: 23.8%; top: 33.5%;
    font-family: 'Oswald', sans-serif;
    font-size: 60px; line-height: 1; letter-spacing: 0.1em;
    text-shadow: 0 3px 0 #3e7217;
}
.ctaTel .ctaTxt {
    bottom: 7%;
    width: 100%;
    font-size: 16px;
}
@media screen and (max-width:980px){
    .ctaInter h2 { width: calc((409/980)*100vw); }
    .ctaTel .telNum {
        font-size: calc((60/980)*100vw);
        text-shadow: 0 calc((3/980)*100vw) 0 #3e7217;
    }
}
@media screen and (max-width:750px){
    .ctaInter h2 { width: calc((682/750)*100vw); }
    .ctaInter, .ctaTel a::before {
        max-width: 716px;
        width: calc((716/750)*100vw);
    }
    .ctaInter {
        padding: calc((90/750)*100vw) 0 calc((80/750)*100vw);
    }
    .secondCta .ctaInter { padding: calc((75/750)*100vw) 0 calc((80/750)*100vw); }
    .ctaTel {
        margin-top: calc((45/750)*100vw);
        pointer-events: all;
    }
    .ctaTel a,
    .ctaTel .ctaTxt { pointer-events: all; outline: none; }
    .ctaTel a {
        max-width: 100%; width: auto;
        max-height: 100%; height: auto;
        background: none;
    }
    .ctaTel a::before {
        display: block;
        content: "";
        max-height: 138px;
        height: calc((138/750)*100vw);
        background: url(../img/sp/btn-cta-tel.png) center center no-repeat;
        background-size: contain;
    }
    .ctaTel .telNum { display: none;
    }
    .ctaTel .ctaTxt {
        margin-top: calc((12/750)*100vw);
        position: static;
        bottom: 0;
        font-size: calc((26/750)*100vw); color: #8a4a50;
    }
    .ctaBtn { margin-top: calc((55/750)*100vw); }
}

/* ===================================================
    problem
=================================================== */
.problem {
    padding-top: 112px;
    background: url(../img/pc/bg-deco.png) center top no-repeat, url(../img/pc/bg-problem.png) center top repeat-x;
    background-size: 116px auto, 10px auto;
}
.solveProblem {
    background: url(../img/pc/img-solve.jpg) center bottom no-repeat;
    margin-top: 75px;
    padding-bottom: 295px;
}
.solveTxt {
    position: relative;
    font-size: 32px; font-weight: 500; color: #5b3a0f; line-height: 1.5;
}
.solveTxt span { color: #bc1413; }
.solveTxt:last-of-type { margin-top: 70px; }
.solveTxt:last-of-type span {
    font-size: 46px; font-weight: 600; line-height: 1.62;
}
.solveTxt:last-of-type::before {
    display: inline-block;
    content: "…";
    position: absolute;
    top: -35%; left: 50%;
    transform: translateX(-50%) rotate(-90deg);
    font-size: 36px;
}
@media screen and (max-width:980px){
    .problem {
        background-size: 11.8367% auto, 1.0204% auto;
        padding-top: calc((112/980)*100vw);
    }
    .solveProblem {
        background-size: 152.0408% auto;
        margin-top: calc((75/980)*100vw);
        padding-bottom: calc((295/980)*100vw);
    }
    .solveTxt {
        font-size: calc((32/980)*100vw); line-height: 1.5;
    }
    .solveTxt:last-of-type { margin-top: calc((70/980)*100vw); }
    .solveTxt:last-of-type span {
        font-size: calc((46/980)*100vw); line-height: 1.62;
    }
    .solveTxt:last-of-type::before {
        font-size: calc((36/980)*100vw);
    }
}
@media screen and (max-width:750px){
    .problem {
        padding-top: calc((152/750)*100vw);
        background: url(../img/sp/bg-deco.png) center top no-repeat, url(../img/sp/bg-problem.png) center top repeat-x;
        background-size: 18.5333% auto, 1.3333% auto;
    }
    .solveProblem {
        margin-top: calc((102/750)*100vw);
        padding-bottom: calc((288/750)*100vw);
        background: url(../img/sp/img-solve.jpg) center bottom no-repeat;
        background-size: 100% auto;
    }
    .solveTxt {
        font-size: calc((36/750)*100vw); line-height: 1.5;
    }
    .solveTxt:last-of-type { margin-top: calc((114/750)*100vw); }
    .solveTxt:last-of-type span {
        font-size: calc((55/750)*100vw); line-height: 1.62;
    }
    .solveTxt:last-of-type::before {
        top: -49%;
        font-size: calc((50/750)*100vw);
    }
}

/* ===================================================
    merit
=================================================== */
.merit h3 { margin-top: 65px; }
.solution { margin-top: 60px; }
.freeAsk {
    margin-top: 80px;
    padding: 100px 0 70px;
    background: #f2ebe1 url(../img/pc/bg-deco.png) center top no-repeat;
    background-size: 116px auto;
}
@media screen and (max-width:980px){
    .merit h3 { margin-top: calc((65/980)*100vw); }
    .merit h3 img { width: calc((810/980)*100vw); }
    .solution { margin: calc((60/980)*100vw) 20px 0; }
    .freeAsk {
        background-size: 11.8367% auto;
        margin-top: calc((80/980)*100vw);
        padding: calc((100/980)*100vw) 20px calc((70/980)*100vw);
    }
}
@media screen and (max-width:750px){
    .merit h3 { margin-top: calc((90/750)*100vw); }
    .merit h3 img { width: calc((710/750)*100vw); }
    .solution { margin: calc((96/750)*100vw) 0 0; }
    .freeAsk {
        margin-top: calc((90/750)*100vw);
        padding: calc((110/750)*100vw) 0 calc((80/750)*100vw);
        background: #f2ebe1 url(../img/sp/bg-deco.png) center top no-repeat;
        background-size: 18.5333% auto;
    }
    .freeAsk img { width: calc((629/750)*100vw); }
}

/* ===================================================
    caseStudy
=================================================== */
.case {
    position: relative;
    overflow: hidden;
    padding: 70px 0 55px;
    background: url(../img/pc/bg-case-deco.png) center bottom no-repeat, url(../img/pc/bg-case.png) center center repeat;
}
.caseWrap, .caseWrap2 {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 960px;
}
.caseWrap {
    margin-top: 40px;
    padding: 40px 72px 45px;
    border: 2px #b24350 solid;
    background: #ffffff;
}
.caseWrap:first-of-type {
    margin-top: 64px;
}
.caseUser, .caseWrap .overview { margin: 0; }
.caseUser { width: 210px; }
.caseUser .statusHead, .userInner img { width: 174px; }
.caseUser .statusHead, .userInner { margin: 0; }
.caseUser {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
}
.caseUser .userImg { overflow: hidden; border-radius: 6px; }
.caseUser .userName { margin-top: 10px; }
.caseUser .status {
    margin-top: 25px;
    width: 100%;
    text-align: left;
    line-height: 1.55;
}
.caseUser .statusHead {
    margin-bottom: 10px;
    padding: 10px 0;
    background: #bc1413;
    text-align: center;
    font-size: 20px; font-weight: 500; color: #FFF; line-height: 1em;
}
.caseWrap .overview {
    width: 600px;
}
.caseComment { width: 100%; }
.caseComment .accHead {
    margin: 0 auto 6px;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 8px 0;
    width: 197px;
    border: 2px #bc1413 solid;
    border-radius: 6px;
    box-shadow: 0 4px 0 #bc1413;
    background: #FFF;
    font-size: 16.8px; color: #bc1413; font-weight: 400; line-height: 1.1;
}
.caseComment .accHead::after {
    content: "▼";
    display: inline-block;
    transition: .3s;
    margin-left: 8px;
}
.caseComment .accHead.active {
    border: 2px #646464 solid;
    box-shadow: 0 4px 0 #646464;
    color: #646464;
}
.caseComment .accHead.active::after { transform: scale(1,-1); }
.caseComment .accInner { padding-top: 35px; text-align: left; }

.case h4 { margin-top: 75px; }
.caseWrap2 {
    align-items: stretch;
    margin-top: 35px;
}
.caseWrap2 .caseComment {
    padding: 20px 20px 25px;
    margin: 0;
    width: 300px;
    text-align: left;
    font-size: 15px; color: #5b3a0f; line-height: 1.9;
    border: 2px #b24350 solid;
    background: #ffffff;
}
.case .notes {
    max-width: 960px;
    text-align: left;
    margin-top: 15px;
}

@media screen and (max-width:980px){
    .case {
        padding: calc((70/980)*100vw) 0 calc((55/980)*100vw);
        background-size: calc((1920/980)*100vw) auto, calc((1920/980)*100vw) auto;
    }
    .caseWrap {
        margin: calc((40/980)*100vw) 20px 0;
        padding: calc((40/980)*100vw) calc((40/980)*100vw) calc((45/980)*100vw);
    }
    .caseWrap:first-of-type {
        margin-top: calc((62/980)*100vw);
    }
    .caseUser { width: calc((210/980)*100vw); }
    .caseUser .statusHead, .userInner img { width: calc((174/980)*100vw); }
    .caseUser,
    .caseComment .accInner { font-size: calc((18/980)*100vw); }
    .caseUser .userImg { border-radius: 6px; }
    .caseUser .userName { margin-top: calc((10/980)*100vw); }
    .caseUser .status {
        margin-top: calc((25/980)*100vw);
    }
    .caseUser .statusHead {
        margin-bottom: calc((10/980)*100vw);
        padding: calc((10/980)*100vw) 0;
        background: #bc1413;
        text-align: center;
        font-size: calc((20/980)*100vw); line-height: 1;
    }
    .caseWrap .overview {
        width: calc((600/980)*100vw);
    }
    .caseComment { width: 100%; }
    .caseComment .accInner { padding-top: calc((35/980)*100vw); }

    .case h4 { width: calc((508/980)*100vw); margin-top: calc((75/980)*100vw); }
    .caseWrap2 { margin: calc((40/980)*100vw) calc((20/980)*100vw) 0; }
    .caseWrap2 .caseComment {
        padding: calc((20/980)*100vw) calc((20/980)*100vw) calc((25/980)*100vw);
        width: calc((290/980)*100vw);
        font-size: calc((15/980)*100vw);
    }
    .case .notes {
        margin: calc((15/980)*100vw) calc((20/980)*100vw) 0;
    }
}
@media screen and (max-width:750px){
    .case {
        padding: calc((84/750)*100vw) 0 calc((80/750)*100vw);
        background: url(../img/sp/bg-case-deco.png) center bottom no-repeat, url(../img/sp/bg-case.png) repeat;
        background-size: 100% auto, 100% auto;
    }
    .case h3 { width: calc((682/750)*100vw); }
    .caseWrap {
        margin: calc((60/750)*100vw) calc((20/750)*100vw) 0;
        padding: calc((55/750)*100vw) calc((28/750)*100vw) calc((60/750)*100vw);
        border: calc((2/750)*100vw) #b24350 solid;
    }
    .caseWrap:first-of-type { margin-top: calc((32/750)*100vw); }
    .caseUser, .caseWrap .overview {
        width: 100%;
    }
    .userInner { width: calc((285/750)*100vw); margin: 0; }
    .caseUser .userImg { border-radius: 0; }
    .userInner img { width: calc((215/750)*100vw); }
    .caseUser .userName { margin-top: calc((14/750)*100vw); font-size: calc((26/750)*100vw); }
    .caseUser .status {
        margin: 0;
        width: calc((310/750)*100vw);
        font-size: calc((26/750)*100vw);
    }
    .caseUser .statusHead {
        margin: 0 calc((40/750)*100vw) calc((15/750)*100vw) 0;
        padding: calc((12/750)*100vw) 0;
        width: auto;
        font-size: calc((36/750)*100vw); line-height: 1em;
    }
    .caseWrap .overview { margin-top: calc((30/750)*100vw); }
    .caseComment { width: 100%; margin-top: calc((60/750)*100vw); }
    .caseComment .accHead {
        margin-bottom: calc((8/750)*100vw);
        padding: calc((15/750)*100vw) 0;
        width: calc((300/750)*100vw);
        border: calc((2/750)*100vw) #bc1413 solid;
        border-radius: calc((6/750)*100vw);
        box-shadow: 0 calc((8/750)*100vw) 0 #bc1413;
        font-size: calc((26/750)*100vw);
    }
    .caseComment .accHead::after {
        margin-left: calc((8/750)*100vw);
    }
    .caseComment .accHead.active {
        border: calc((2/750)*100vw) #646464 solid;
        box-shadow: 0 calc((8/750)*100vw) 0 #646464;
    }
    .caseComment .accContent { padding: 0; }
    .caseComment .accInner {
        padding-top: calc((50/750)*100vw);
        font-size: calc((25.5/750)*100vw);
        line-height: 1.7;
    }

    .case h4 { width: calc((641/750)*100vw); margin-top: calc((88/750)*100vw) }
    .caseWrap2 { margin: calc((40/750)*100vw) calc((40/750)*100vw) 0; }
    .caseWrap2 .caseComment {
        margin-top: calc((50/750)*100vw);
        padding: calc((25/750)*100vw) calc((28/750)*100vw);
        width: auto;
        border: calc((2/750)*100vw) #b24350 solid;
        font-size: calc((25/750)*100vw); line-height: 1.76;
    }
    .caseWrap2 .caseComment:first-of-type { margin-top: 0; }
    .case .notes {
        margin: calc((25/750)*100vw) calc((40/750)*100vw) 0;
    }
}

/* ===================================================
    satisfaction
=================================================== */
.satisfaction {
    background: #f2ebe1;
    padding: 60px 20px 55px;
}
.satisfaction .notes { margin-top: 10px; }

@media screen and (max-width:980px){
    .satisfaction { padding: calc((60/980)*100vw) 20px calc((55/980)*100vw); }
    .satisfaction .notes { margin-top: calc((10/980)*100vw); }
}
@media screen and (max-width:750px){
    .satisfaction { padding: calc((60/750)*100vw) 0 calc((55/750)*100vw); }
    .satisfaction .notes {
        margin: calc((75/750)*100vw) calc((20/750)*100vw) 0;
        text-align: left;
    }
}

/* ===================================================
    performance
=================================================== */
.performance {
    background: url(../img/pc/bg-deco.png) center top no-repeat, url(../img/pc/bg-red.png) center top repeat;
    background-size: 116px auto, auto;
    padding: 110px 0 55px;
}
.performanceIntro {
    position: relative;
    max-width: 960px;
    margin-top: 20px;
}
.performanceIntro p { position: absolute; }
.performanceIntro .txt1, .performanceIntro .txt2 {
    font-size: 40px; font-weight: 600; color: #5b3a0f; line-height: 1.45;
}
.performanceIntro p span { color: #bc1413; }
.performanceIntro .txt1 {
    bottom: 30%;
    left: 8%;
}
.performanceIntro .txt2 {
    bottom: 29.2%;
    right: 4%;
}
.performanceIntro .txt2 .num {
    font-family: 'Oswald', sans-serif;
    font-size: 55px; font-weight: normal; line-height: 1.25;
}
.performanceIntro .txt2 .asterisk {
    display: inline-block;
    position: relative;
    transform: translate(-16%,-196%);
    font-size: 16.5px;
}
.performanceIntro .notes {
    bottom: 1%;
    right: 9%;
    color: #FFF;
    text-align: left;
    font-size: .8rem;
}
@media screen and (max-width:980px){
    .performance {
        background-size: 18.5333% auto, 3.0612% auto;
        padding: calc((110/980)*100vw) 0 calc((55/980)*100vw);
    }
    .performanceIntro { margin: calc((20/980)*100vw) calc((10/980)*100vw) 0; }
    .performanceIntro .txt1, .performanceIntro .txt2 {
        font-size: calc((40/980)*100vw); line-height: 1.45;
    }
    .performanceIntro .txt2 .num {
        font-size: calc((55/980)*100vw); line-height: 1.25;
    }
    .performanceIntro .txt2 .asterisk {
        font-size: calc((16.5/980)*100vw);
    }
}
@media screen and (max-width:750px){
    .performance {
        background: url(../img/sp/bg-deco.png) center top no-repeat, url(../img/pc/bg-red.png) center top repeat;
        background-size: 18.5333% auto, 4% auto;
        padding: calc((140/750)*100vw) 0 calc((110/750)*100vw);
    }
    .performance h3 { width: calc((583/750)*100vw) }
    .performanceIntro {
        margin: calc((34/750)*100vw) auto 0;
        max-width: 710px;
        width: calc((710/750)*100vw);
    }
    .performanceIntro .txt1, .performanceIntro .txt2 {
        font-size: calc((36/750)*100vw); line-height: 1.27;
    }
    .performanceIntro .txt1 { bottom: 55%; left: 7.5%; }
    .performanceIntro .txt2 { bottom: 53.2%;}
    .performanceIntro .txt2 .num {
        font-size: calc((47/750)*100vw); line-height: 1.25;
    }
    .performanceIntro .txt2 .asterisk {
        position: absolute;
        bottom: 94%; right: 2%;
        transform: translate(0,0);
        font-size: calc((20/750)*100vw);
    }
    .performanceIntro .notes { bottom: 1%; right: 0%; color: #000; }
}

/*======= advice ========*/
.advice {
    padding: 50px 10px;
    box-shadow: 0 11px 0 rgba(126, 13, 12, 0.7);
    background: #FFF;
}
@media screen and (max-width:750px){
    .advice {
        padding: calc((48/750)*100vw) 0 calc((32/750)*100vw);
        max-width: 710px;
        width: calc((710/750)*100vw);
        box-shadow: 0 calc((11/750)*100vw) 0 rgba(126, 13, 12, 0.7);
    }
    .advice h4 { width: calc((658/750)*100vw); }
}

/*======= cautions ========*/
.cautions {
    padding: 48px 0 114px;
    position: relative;
    overflow: hidden;
    background: url(../img/pc/bg-cautions.png) center bottom no-repeat;
}
.cautions::after, .cautions::before {
    background: #f2ebe1;
    display: block;
    content: "";
    position: absolute; left: 60%; bottom: 0;
    width: 100%; height: 54px;
}
.cautions::before { left: auto; right: 60%; }
.cautionsInner {
    max-width: 960px;
}
.cautions .accHead {
    padding: 20px 25px 20px 0;
    position: relative;
    border: 1px #ffffff solid;
    font-weight: 500; color: #FFF; line-height: 1;
}
.cautions .accHead::after {
    content: "＋";
    display: inline-block;
    position: absolute;
    top: 50%;
    right: 7.4%;
    transform: translateY(-50%);
}
.cautions .accHead.active::after {
    content: "－";
}
.cautions .accBody {
    padding: 65px 75px 50px;
    background: #FFF;
    text-align: left;
    font-size: 13px; line-height: 1.76;
}
.cautions .example {
    margin: 25px auto;
    padding: 20px 15px;
    background: #e5e5e5;
}
@media screen and (max-width:980px){
    .cautions {
        background: url(../img/pc/bg-cautions.png) center bottom no-repeat;
        background-size: calc((1920/980)*100vw);
        padding: calc((48/980)*100vw) 0 calc((152/980)*100vw);
    }
    .cautions::after, .cautions::before { display: none; }
    .cautionsInner { margin: 0 20px; }
    .cautions .accHead {
        padding: calc((20/980)*100vw) calc((25/980)*100vw) calc((20/980)*100vw) 0;
    }
    .cautions .accBody {
        padding: calc((65/980)*100vw) calc((55/980)*100vw) calc((50/980)*100vw);
    }
    .cautions .example {
        margin: calc((25/980)*100vw) auto;
        padding: calc((20/980)*100vw) calc((15/980)*100vw);
    }
}
@media screen and (max-width:750px){
    .cautions {
        background: url(../img/sp/bg-cautions.png) center bottom no-repeat;
        background-size: 100% auto;
        padding: calc((45/980)*100vw) 0 calc((154/980)*100vw);
    }
    .cautionsInner {
        margin: auto;
        max-width: 710px;
        width: calc((710/750)*100vw);
    }
    .cautions .accHead {
        padding: calc((15/750)*100vw) calc((35/750)*100vw) calc((15/750)*100vw) 0;
    }
    .cautions .accHead::after { right: 1.8%; }
    .cautions .accBody {
        padding: calc((40/750)*100vw) calc((34/750)*100vw);
        font-size: calc((22/750)*100vw); line-height: 1.85;
    }
    .cautions .example {
        margin: calc((25/750)*100vw) auto;
        padding: calc((20/750)*100vw) calc((25/750)*100vw);
    }
}


/*======= features ========*/
.features {
    background: #f2ebe1;
    margin-top: -1px;
    padding: 60px 0 55px;
}
.featuresInner {
    display: flex;
    justify-content: center;
    flex-flow: row wrap;
    max-width: 1000px;
}
.featuresInner .item {
    /*margin: 40px 24px 0;*/
    width: 245px;
    font-size: 20px; color: #5b3a0f; line-height: 1.4;
}
.featuresInner .item:not(.line2) {
    margin-top: 0;
}
.featuresInner .img {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    height: 181px;
}
.featuresInner .txt {
    position: relative;
    margin-top: 15px;
}
.featuresInner .txt p { margin-top: 5px; }
.featuresInner .txt span {
    font-size: 28px; font-weight: 600; color: #bc1413; line-height: 1.3;
}
.featuresInner .txt span.num {
    font-family: 'Oswald', sans-serif;
    font-size: 38px; font-weight: normal; line-height: 1.2;
}
.featuresInner .txt .asterisk {
    display: inline-block;
    position: absolute;
    font-size: 13px; font-weight: 400;
    transform: translateY(0.25em);
}
/*.featuresInner .item:nth-of-type(2) .txt,
.featuresInner .item:nth-of-type(3) .txt {
    padding-top: 0.6em;
}*/
.featuresInner .item:nth-of-type(2) p,
.featuresInner .item:nth-of-type(3) p {
    padding-top: 0.4em;
}
.features .notes {
    max-width: 810px;
    text-align: left;
    margin-top: 35px;
}
@media screen and (max-width:980px){
    .features { padding: calc((60/980)*100vw) 0 calc((55/980)*100vw); }
    .featuresInner {
        max-width: calc((880/980)*100vw);
        row-gap: calc((40/980)*100vw);
    }
    .featuresInner .item {
        margin: 0 calc((24/980)*100vw) 0;
        width: calc((245/980)*100vw);
        font-size: calc((20/980)*100vw);
    }
    .featuresInner .item:not(.line2) { margin-top: 0; }
    .featuresInner .img { height: calc((181/980)*100vw); }
    .featuresInner .txt { margin-top: calc((15/980)*100vw); }
    .featuresInner .txt p { margin-top: calc((5/980)*100vw); }
    .featuresInner .txt span {
        font-size: calc((28/980)*100vw); line-height: 1.3;
    }
    .featuresInner .txt span.num {
        font-size: calc((38/980)*100vw); line-height: 1.2;
    }
    .featuresInner .txt .asterisk {
        font-size: calc((13/980)*100vw);
        transform: translateY(0.25em);
    }
    .features .notes {
        max-width: calc((810/980)*100vw);
        margin-top: calc((35/980)*100vw);
    }
}
@media screen and (max-width:750px){
    .features {
        padding: calc((150/750)*100vw) 0 calc((90/750)*100vw);
    }
    .featuresInner {
        max-width: 100%;
        width: 100%;
        padding: 0 calc((5/750)*100vw);
    }
    .featuresInner .img { width: calc((309/750)*100vw); }
    .featuresInner .item,
    .featuresInner .item:not(.line2) {
        margin: calc((100/750)*100vw) 0 0;
        width: 50%;
        font-size: calc((32/750)*100vw); line-height: 1.375;
    }
    .featuresInner .item:nth-of-type(1),
    .featuresInner .item:nth-of-type(2) { margin-top: 0; }
    .featuresInner .txt { margin-top: calc((20/750)*100vw); }
    .featuresInner .txt p { margin-top: calc((5/750)*100vw); }
    .featuresInner .txt span {
        font-size: calc((42 / 750) * 100vw);
    }
    .featuresInner .item:nth-of-type(2) .txt,
    .featuresInner .item:nth-of-type(3) .txt,
    /*.featuresInner .item:nth-of-type(2) p,*/
    .featuresInner .item:nth-of-type(33) p { padding-top: 0; }
    .featuresInner .txt span.num {
        font-size: calc((75/750)*100vw); line-height: 1.2;
    }
    .featuresInner .txt .asterisk,
    .featuresInner .item:nth-of-type(3) .asterisk,
    .featuresInner .item:nth-of-type(2) .asterisk {
        font-size: calc((20/750)*100vw);
        transform: translateY(0.25em);
    }
    .featuresInner .item:not(:nth-of-type(3)) .asterisk {
        transform: translate(.1em, 0.25em);
    }
    .featuresInner .item:nth-of-type(1) span {
        font-size: calc((36/750)*100vw);
    }
    .featuresInner .item:nth-of-type(3) span,
    .featuresInner .item:nth-of-type(2) span {
        font-size: calc((42/750)*100vw); line-height: 1.1;
    }
    .featuresInner .item:nth-of-type(3) span.num{
        font-size: calc((48/750)*100vw); line-height: 1;
    }
    .featuresInner .item:nth-of-type(5) span {
        font-size: calc((42/750)*100vw); line-height: 1.14;
    }
    .features .notes {
        max-width: 710px;
        width: calc((710/750)*100vw);
        margin-top: calc((55/750)*100vw);
    }
}

/*======= refund ========*/
.refund {
    padding: 120px 20px 0;
    max-width: 850px;
    width: calc((850/980)*100vw);
    background: url(../img/pc/bg-deco2.png) center top no-repeat;
}
.refund .notes, .refund .notes a { color: #FFF; }
.refund .notes {
    text-align: left;
    margin-top: 15px;
}
@media screen and (max-width:980px){
    .refund {
        padding: calc((120/980)*100vw) calc((20/980)*100vw) 0;
        background-size: 11.8367% auto;
    }
}
@media screen and (max-width:750px){
    .refund {
        padding: calc((118/750)*100vw) 0 0;
        max-width: 680px;
        width: calc((680/750)*100vw);
        background: url(../img/sp/bg-deco2.png) center top no-repeat;
        background-size: 18.5333% auto;
    }
}



/* ===================================================
    relief
=================================================== */
.relief {
    overflow: hidden;
    background: url(../img/pc/bg-deco.png) center top no-repeat, url(../img/pc/bg-gray.png) center top repeat;
}
.reliefInner {
    padding: 116px 0 58px;
    position: relative;
    overflow: hidden;
    background: url(../img/pc/bg-bottom-deco.png) center bottom no-repeat;
}
.reliefInner::after, .reliefInner::before {
    background: #FFF;
    display: block;
    content: "";
    position: absolute; left: 60%; bottom: 0;
    width: 100%; height: 54px;
}
.reliefInner::before { left: auto; right: 60%; }
.reliefList {
    max-width: 1060px;
}
.reliefList .item {
    position: relative;
    margin-top: 60px;
}
.reliefList .item:first-of-type { margin-top: 40px; }
.reliefList .item img {
    margin-left: -1060px;
    transform: translateX(50%);
    position: relative;
    max-width: 1060px;
    width: 1060px;
}
.reliefList .item .txt1, .reliefList .item .txt2 {
    position: absolute;
    width: 282px;
    left: 50%; top: 26%;
    transform: translateX(-107.4%);
}
.reliefList .item .txt1,
.reliefList .item .txt2 span {
    font-size: 20px; font-weight: 500; line-height: 1.5;
}
.reliefList .item .txt2 {
    left: auto; right: 50%;
    transform: translateX(107.4%);
    font-size: 18px; color: #5b3a0f; line-height: 1.66;
}
.reliefList .item .txt2_notes{
    position: absolute;
    bottom: 5%;
    right: 50%;
    width: 282px;
    transform: translateX(107.4%);
    text-align: left;
    font-size: .8rem;
}
.reliefList .item .txt2 span { font-weight: 600; color: #bc1413; }
.reliefList .item:first-of-type .txt2 { top: 10.6%; }
.reliefList .item:nth-of-type(2) .txt1,
.reliefList .item:nth-of-type(2) .txt2 { top: 22.6%; }
.reliefList .item:nth-of-type(3) .txt1,
.reliefList .item:nth-of-type(3) .txt2 { top: 18.4%; }
.reliefList .item:nth-of-type(4) .txt1 { top: 22%; }
.reliefList .item:nth-of-type(4) .txt2 { top: 16.2%; }
.reliefList .item:nth-of-type(5) .txt1 { top: 20.8%; }
.reliefList .item:nth-of-type(5) .txt2 { top: 10.4%; }

@media screen and (max-width:980px){
    .relief { background-size: 18.5333% auto, 3.0612% auto; }
    .reliefInner {
        padding: calc((116/980)*100vw) 0 calc((58/980)*100vw);
        background-size: calc((1920/980)*100vw) auto;
    }
    .reliefInner::after, .reliefInner::before { display: none; }
    .reliefList .item { margin-top: calc((60/980)*100vw); }
    .reliefList .item:first-of-type { margin-top: calc((40/980)*100vw); }
    .reliefList .item img {
        margin-left: calc((-1060/980)*100vw);
        transform: translateX(50%);
        position: relative;
        max-width: calc((1060/980)*100vw);
        width: calc((1060/980)*100vw);
    }
    .reliefList .item .txt1, .reliefList .item .txt2 {
        position: absolute;
        width: calc((282/980)*100vw);
        left: 50%; top: 26%;
        transform: translateX(-107.4%);
    }
    .reliefList .item .txt1,
    .reliefList .item .txt2 span {
        font-size: calc((20/980)*100vw); line-height: 1.5;
    }
    .reliefList .item .txt2 {
        left: auto; right: 50%;
        transform: translateX(107.4%);
        font-size: calc((18/980)*100vw); color: #5b3a0f; line-height: 1.66;
    }
    .reliefList .item .txt2_notes{
        bottom: 4%;
        width: calc((282/980)*100vw);
    }
    .reliefList .item .txt2 span { font-weight: 600; color: #bc1413; }
    .reliefList .item:first-of-type .txt2 { top: 10.6%; }
    .reliefList .item:nth-of-type(2) .txt1,
    .reliefList .item:nth-of-type(2) .txt2 { top: 22.6%; }
    .reliefList .item:nth-of-type(3) .txt1,
    .reliefList .item:nth-of-type(3) .txt2 { top: 18.4%; }
    .reliefList .item:nth-of-type(4) .txt1 { top: 22%; }
    .reliefList .item:nth-of-type(4) .txt2 { top: 16.2%; }
    .reliefList .item:nth-of-type(5) .txt1 { top: 20.8%; }
    .reliefList .item:nth-of-type(5) .txt2 { top: 10.4%; }
}
@media screen and (max-width:750px){
    .relief {
        overflow: hidden;
        background: url(../img/sp/bg-deco.png) center top no-repeat, url(../img/pc/bg-gray.png) center top repeat;
        background-size: 18.5333% auto, 4% auto;
    }
    .reliefInner {
        padding: calc((142/750)*100vw) 0 calc((58/750)*100vw);
        background: url(../img/sp/bg-bottom-deco.png) center bottom no-repeat;
        background-size: 100% auto;
    }
    .relief h3 {
        width: calc((638/750)*100vw);
    }
    .reliefList {
        max-width: 722px;
        width: calc((722/750)*100vw);
    }
    .reliefList .item { margin-top: calc((65/750)*100vw); }
    .reliefList .item:first-of-type { margin-top: calc((70/750)*100vw); }
    .reliefList .item img {
        margin-left: 0;
        transform: translateX(0);
        max-width: 100%;
        width: auto;
    }
    .reliefList .item .txt1, .reliefList .item .txt2 {
        width: calc((330/750)*100vw);
        left: 1.4%; top: 15.2%;
        transform: translateX(0);
    }
    .reliefList .item .txt1,
    .reliefList .item .txt2 span {
        font-size: calc((26/750)*100vw); line-height: 1.46;
    }
    .reliefList .item .txt2 {
        left: auto; right: 1.4%;
        transform: translateX(0);
        font-size: calc((24/750)*100vw); line-height: 1.58;
    }
    .reliefList .item .txt2_notes{
        bottom: 0; right: 1.4%;
        width: calc((330/750)*100vw);
        transform: none;
    }
    .reliefList .item:first-of-type .txt2 { top: 3.4%; }
    .reliefList .item:nth-of-type(2) .txt1 { top: 11.6%; }
    .reliefList .item:nth-of-type(2) .txt2 { top: 8.2%; }
    .reliefList .item:nth-of-type(3) .txt1,
    .reliefList .item:nth-of-type(3) .txt2 { top: 8%; }
    .reliefList .item:nth-of-type(4) .txt1 { top: 9.8%; }
    .reliefList .item:nth-of-type(4) .txt2 { top: 5.6%; }
    .reliefList .item:nth-of-type(5) .txt1 { top: 12%; }
    .reliefList .item:nth-of-type(5) .txt2 { top: 5.4%; }
    .reliefList .item:nth-of-type(5) .txt2 { font-size: calc((22/750)*100vw); line-height: 1.46; }
    .reliefList .item:nth-of-type(5) .txt2 span { font-size: calc((24/750)*100vw); line-height: 1.58; }
}

/* ===================================================
    flow
=================================================== */
.flow {
    padding: 45px 0 114px;
    position: relative;
    overflow: hidden;
    background: #f2ebe1 url(../img/pc/bg-bottom-deco.png) center bottom no-repeat;
}
.flow::after, .flow::before {
    background: #FFF;
    display: block;
    content: "";
    position: absolute; left: 60%; bottom: 0;
    width: 100%; height: 54px;
}
.flow::before { left: auto; right: 60%; }
.flowList {
    max-width: 980px;
    padding: 0 10px;
}
.flowList .step { position: relative; }
.flowList .txt {
    padding: 0 75px;
    position: absolute;
    top: 44.2%; left: 0;
    width: 100%;
    text-align: left;
    color: #5b3a0f; line-height: 1.66;
}
.flowList .step:nth-child(2) .txt { top: 49.6%; }
.flowList .step:nth-child(3) .txt { top: 53.6%; }
.flowList .step:nth-child(4) .txt { top: 44%; }
.flowList .step:nth-child(6) .txt { top: 63.2%; }

@media screen and (max-width:980px){
    .flow {
        padding: calc((45/980)*100vw) 0 calc((114/980)*100vw);
        background-size: calc((1920/980)*100vw) auto;
    }
    .flow::after, .flow::before { display: none; }
    .flowList .txt {
        padding: 0 calc((75/980)*100vw);
        font-size: calc((18/980)*100vw); line-height: 1.66;
    }
}
@media screen and (max-width:750px){
    .flow {
        padding: calc((74/750)*100vw) 0 calc((146/750)*100vw);
        background: #f2ebe1 url(../img/sp/bg-bottom-deco.png) center bottom no-repeat;
        background-size: 100% auto;
    }
    .flow h2 { width: calc((652/750)*100vw); }
    .flowList {
        max-width: 750;
        padding: 0;
    }
    .flowList .txt {
        padding: 0 calc((75/750)*100vw);
        top: 34.2%;
        font-size: calc((26/750)*100vw); line-height: 1.69;
    }
    .flowList .step:nth-child(2) .txt { top: 40.2%; }
    .flowList .step:nth-child(3) .txt { top: 44.8%; }
    .flowList .step:nth-child(4) .txt { top: 34.8%; }
    .flowList .step:nth-child(6) .txt { top: 52.4%; }
}

/* ===================================================
    faq
=================================================== */
.faq { margin-top: 50px; }
.faqList {
    max-width: 980px;
    padding: 0 10px;
}
.faqList li {
    border-bottom: 2px #bc1413 solid;
    padding: 60px 0 25px;
}
.faqList li:first-child { padding: 50px 0 25px; }
.faqList .accHead, .faqList .faqInner {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    text-align: left;
}
.faqList .accHead p, .faqList .faqInner p {
    margin: 0;
    padding-right: 75px;
    width: 885px;
}
.faqList .accHead::before, .faqList .accHead::after,
.faqList .faqInner::before {
    box-sizing: border-box;
    margin: 0;
    display: block;
    content: "";
    width: 56px; height: 71px;
}
.faqList .accHead::before {
    background: url(../img/pc/icon-faq-q.png) no-repeat;
    background-size: contain;
}
.faqList .accHead::after {
    background: url(../img/pc/icon-open.png) center center no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%; right: 0;
    transform: translateY(-50%);
    width: 43px; height: 43px;
    border: 1px #bc1413 solid;
    border-radius: 100px;
}
.faqList .accHead.active::after {
    background: url(../img/pc/icon-close.png) center center no-repeat;
    background-size: contain;
}
.faqList .faqInner::before {
    background: url(../img/pc/icon-faq-a.png) no-repeat;
    background-size: contain;
}
.faqList .accHead { position: relative; align-items: center; }
.faqList .accHead p {
    padding-bottom: 7px;
    color: #5b3a0f; line-height: 1.66;
}
.faqList .faqInner { padding-top: 60px; }
.faqList .faqInner p {
    color: #bc1413; line-height: 1.83;
}
@media screen and (max-width:980px){
    .faq { margin-top: calc((50/980)*100vw); }
    .faqList {
        padding: 0 calc((20/980)*100vw);
    }
    .faqList li {
        padding: calc((60/980)*100vw) 0 calc((25/980)*100vw);
    }
    .faqList li:first-child { padding: calc((50/980)*100vw) 0 calc((25/980)*100vw); }
    .faqList .accHead p, .faqList .faqInner p {
        padding-right: calc((75/980)*100vw);
        width: calc((850/980)*100vw);
    }
    .faqList .accHead::before, .faqList .accHead::after,
    .faqList .faqInner::before {
        width: calc((56/980)*100vw); height: calc((71/980)*100vw);
    }
    .faqList .accHead::after {
        width: calc((43/980)*100vw); height: calc((43/980)*100vw);
    }
    .faqList .accHead p {
        padding-bottom: calc((7/980)*100vw);
    }
    .faqList .faqInner { padding-top: calc((60/980)*100vw); }
}
@media screen and (max-width:750px){
    .faq { margin-top: calc((144/750)*100vw); }
    .faq h3 { width: calc((656/750)*100vw); }
    .faqList {
        max-width: 710;
        padding: 0 calc((20/750)*100vw);
    }
    .faqList li {
        border-bottom: calc((2/750)*100vw) #bc1413 solid;
        padding: calc((80/750)*100vw) 0 calc((60/750)*100vw);
    }
    .faqList li:first-child { padding: calc((100/750)*100vw) 0 calc((60/750)*100vw); }
    .faqList .accHead p, .faqList .faqInner p {
        margin: 0;
        padding-right: calc((30/750)*100vw);
        width: calc((635/750)*100vw);
    }
    .faqList .accHead p { padding-right: calc((45/750)*100vw); }
    .faqList .accHead::before, .faqList .accHead::after,
    .faqList .faqInner::before {
        width: calc((56/750)*100vw); height: calc((71/750)*100vw);
    }
    .faqList .accHead::before {
        background: url(../img/sp/icon-faq-q.png) no-repeat;
        background-size: contain;
    }
    .faqList .accHead::after {
        background: url(../img/sp/icon-open.png) center center no-repeat;
        background-size: contain;
        width: calc((43/750)*100vw); height: calc((43/750)*100vw);
    }
    .faqList .accHead.active::after {
        background: url(../img/sp/icon-close.png) center center no-repeat;
        background-size: contain;
    }
    .faqList .faqInner::before {
        background: url(../img/sp/icon-faq-a.png) no-repeat;
        background-size: contain;
    }
    .faqList .accHead p {
        padding-bottom: calc((7/750)*100vw);
        font-size: calc((30/750)*100vw); line-height: 1.33;
    }
    .faqList .faqInner { padding-top: calc((75/750)*100vw); }
    .faqList .faqInner p {
        font-size: calc((26/750)*100vw); line-height: 1.61;
    }
}

/* ===================================================
    fixedCta
=================================================== */
.fixedCta {
    display: block;
    position: fixed;
    bottom: 0;
    width: 100%;
    background: url(../img/pc/bg-gray.png) center top repeat;
    z-index: 10;
}
.fixedCtaInner {
    background: -moz-linear-gradient(left,  rgba(255,255,255,0) 0%, rgba(255,255,255,0) 10%, rgba(255,255,255,1) 50%, rgba(255,255,255,0) 90%, rgba(255,255,255,0) 100%);
    background: -webkit-linear-gradient(left,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 10%,rgba(255,255,255,1) 50%,rgba(255,255,255,0) 90%,rgba(255,255,255,0) 100%);
    background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0) 10%,rgba(255,255,255,1) 50%,rgba(255,255,255,0) 90%,rgba(255,255,255,0) 100%);
}
.fixedCta .wrap {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    max-width: 852px;
    height: 100px;
    padding: 0 20px;
}
.fixedCta .microcopy{
    display: none;
}
.fixedCtaRead{
    font-size: calc((32/750)*100vw);
    margin-bottom: 2px;
    font-weight: bold;
}
.fixedTel, .fixedBtn { margin: 0; }
.fixedBtnMorning{
    margin: 0 auto;
}
.fixedTel, .fixedTel a {
    max-width: 520px;
    width: calc((520/852)*100vw);
}
.fixedTel {
    position: relative;
    padding-top: 10px;
}
.fixedTel a,
.fixedTel .telNum,
.fixedTxt {
    display: block;
    pointer-events: none;
}
.fixedTel a {
    max-height: 80px;
    height: calc((80/852)*100vw);
    color: #000; text-decoration: none;
    background: url(../img/pc/btn-fixed-tel_time.png) center center no-repeat;
    background-size: contain;
}
.fixedTxt, .fixedTel .telNum {
    position: absolute;
}
.fixedTel .telNum {
    top: 25%; left: 46%;
    font-family: 'Oswald', sans-serif;
    font-size: 44px; color: #5eb145; line-height: 1; letter-spacing: 0.05em;
}
.fixedTxt {
    bottom: 2px; left: 32.5%;
    font-size: 13px; line-height: 1;
}
.fixedBtn {
    padding-top: 15px;
}
@media screen and (max-width:852px){
    .fixedCta {
        background-size:3.0612% auto;
    }
    .fixedCta .wrap { height: calc((100/852)*100vw);
    }
    .fixedTel { padding-top: calc((10/852)*100vw); }
    .fixedTel .telNum {
        font-size: calc((44/852)*100vw); line-height: 1; letter-spacing: 0.05em;
    }
    .fixedTxt {
        position: absolute;
        bottom: calc((2/852)*100vw);
        font-size: calc((15/852)*100vw); line-height: 1;
    }
    .fixedBtn {
        width: calc((262/852)*100vw);
        padding-top: calc((15/852)*100vw);
    }
}
@media screen and (max-width:750px){
    .fixedCta {
        background: #f2ebe1;
        box-shadow: 0 -1px 5px 0px rgba(0, 0, 0, 0.1);
    }
    .fixedCtaInner { background: none; }
    .fixedCta .wrap {
        height: auto;
        padding: calc((17/750)*100vw) calc((20/750)*100vw) calc((8/750)*100vw);
    }
    .fixedCta .microcopy{
        /*display: inline-block;
        font-size: 2rem;
        color: #5b3a0f;
        line-height: 1;
        margin-top: 1rem;
        margin-bottom: 1rem;*/

        display: block;
        text-align: center;
        font-size: 2rem;
        line-height: 1;
        font-weight: 700;
        color: #5b3a0f;
        margin: 1rem 0 0;
    }
    .fixedTel, .fixedBtn { padding-top: 0; }
    .fixedTel a, .fixedTel .telNum, .fixedTxt { pointer-events: all; }
    .fixedTel { width: 59.85%; }
    .fixedTel a {
        width: 100%;
        max-height: 100%; height: auto;
        background: none;
    }
    .fixedTel a::before {
        display: block;
        content: "";
        width: 100%;
        max-height: 105px;
        height: calc((105/750)*100vw);
        background: url(../img/sp/btn-fixed-tel.png) center center no-repeat;
        background-size: contain;
    }
    .fixedTel .telNum, .fixedTxt { display: none; }
    .fixedBtn { width: 37.32%; }
    .fixedBtnMorning {
        width: 100%;
    }
}
.mgr-10{
    margin-right : 10px;
}

.copyright {
    max-width: 600px;
    margin: 0 auto;

}

.css-sp #footer .copyright {
    padding: .5rem 2rem;
    color: #fff;
    font-size: 1.4rem;
    text-align: center;
    padding-top: 30px;
}

.copyright_02 {
    margin-bottom: 10px;
}

.css-sp #footer .copyright {
padding: .5rem 2rem;
color: #fff;
font-size: 1.4rem;
text-align: center;
padding-top: 30px;
}

@media screen and (min-width: 639px){
.copyright-container {
    display: flex;
    text-align: center;
    font-size: 1.4rem;
    margin: 0 auto;
    max-width: 440px;
}
}
@media screen and (max-width: 639px){
    .copyright-container {
    padding: 0 30px 3.0rem;

    }
}

/* ===================================================
    ctaTel-z tel:orange web:green
=================================================== */
.ctaTel-z a {
    background: url(/lp/debt/assets/img/pc/btn-cta-tel-time-z.png) center center no-repeat;
    background-size: contain;
}
.ctaTel-z .telNum {
    text-shadow: 0 3px 0 #d53302;
}

@media screen and (max-width:750px){
    .ctaTel-z a {
    background: none;
    }
    .ctaTel-z a::before {
        background: url(/lp/debt/assets/img/sp/btn-cta-tel-z.png) center center no-repeat;
        background-size: contain;
    }
}

/* ===================================================
    fixedTel-z tel:orange web:green
=================================================== */
.fixedTel-z a {
    background: url(/lp/debt/assets/img/pc/btn-fixed-tel-time-z.png) center center no-repeat;
    background-size: contain;
}

.fixedTel-z .telNum {
    color: #f15c00;
}

@media screen and (max-width:750px){
.fixedTel-z a::before {
    background: url(/lp/debt/assets/img/sp/btn-fixed-tel-z.png) center center no-repeat;
    background-size: contain;
}
}



/* ========================================
	 Appeal Section (実績訴求)
======================================== */
.appeal-wrap {
    margin: 1.5em 3%;
}
@media screen and (min-width: 640px) {
    .appeal-wrap {
        max-width: 830px;
        margin: 2em auto;
    }
}

.appeal-box {
    border: solid 1px #fbe9ea;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0.5em;
}
@media screen and (min-width: 640px) {
    .appeal-box {
        margin-bottom: 1em;
    }
}

.appeal-box dt {
    background: url(/assets/img/ill-appeal_left.webp) left 1em center no-repeat, url(/assets/img/ill-appeal_right.webp) right 1em center no-repeat #fbe9ea;
    background-size: 36px auto;
    font-weight: bold;
    text-align: center;
    font-size: 2.0rem;
    padding: 1em;
}
@media screen and (min-width: 640px) {
    .appeal-box dt {
        background: #fdf0f0;
    }
	.appeal-box dd {
		padding: 2.2em 3.0em;
	}
}


@media screen and (min-width: 640px) {
    .appeal-ttl {
        position: relative;
    }
}

@media screen and (min-width: 640px) {
    .appeal-ttl::before {
        content: '';
        display: inline-block;
        width: 70px;
        height: 70px;
        background: url(/assets/img/ill-appeal_left.webp) no-repeat center;
        background-size: contain;
        position: absolute;
        left: -70px;
        top: 50%;
        transform: translateY(-50%);
    }
}

@media screen and (min-width: 640px) {
    .appeal-ttl::after {
        content: '';
        display: inline-block;
        width: 70px;
        height: 70px;
        background: url(/assets/img/ill-appeal_right.webp) no-repeat center;
        background-size: contain;
        position: absolute;
        right: -70px;
        top: 50%;
        transform: translateY(-50%);
    }
}

.text-color {
    color: #b21f31;
}

.appeal-main-inner {
    background: linear-gradient(transparent 60%,#fced00 60%);
}

@media screen and (min-width: 640px) {
    .appeal-box dd {
        display: flex;
        justify-content: center;
        align-items: flex-end;
        /*gap: 30px;*/
    }
    .appeal-main {
        line-height: 1.3;
        margin-bottom: 0;
    }
}

/*.appeal-main:not(:last-child) {
    margin-bottom: 0.5rem;
}*/
.appeal-main {
    font-size: 1.8rem;
    text-align: center;
    margin-bottom: 0;
    font-weight: bold;
}

@media screen and (max-width: 639px) {
    .appeal-main-lg {
		font-size: 3.0rem;
		line-height: 1;
		vertical-align: baseline;
	}
	.appeal-main-md {
		vertical-align: baseline;
	}
	.appeal-main:not(:last-child) {
		margin-bottom: 1.8rem;
	}
	.appeal-box dd {
		padding: 2.2em 1em;
	}
}
@media screen and (min-width: 640px) {
	.appeal-main-lg {
        font-size: 3.5rem;
        line-height: 1;
        vertical-align: baseline;
	}
	.appeal-main-md {
        vertical-align: baseline;
	}
}

.appeal-main-md {
    font-size: 2.0rem;
	line-height: 1;
}

.appeal-main-note {
    vertical-align: text-top;
    font-size: 1.0rem;
    font-weight: normal;
	text-align: left;
}



/* ==========================================================================
           PC/SP表示切り替え など
========================================================================== */

.pc-only {
    display: block;
}
@media screen and (max-width: 639px) {
    .pc-only {
        display: none;
    }
}

.sp-only {
    display: none;
}
@media screen and (max-width: 639px) {
    .sp-only {
        display: block;
    }
}

