@charset "UTF-8"; @media (max-width: 750px) {
    body.home {
        background-image: url(../images/home/main_bg_sp.png);
        background-size: 100% 276.1rem;
    }

    /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
汎用
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    h2.cmn_ttl {
        width: 100vw;
        margin: 0 calc(50% - 50vw);
        padding: 0 2rem;
    }

    h2.cmn_ttl span.ja {
        font-size: 3rem;
    }

    h2.cmn_ttl span.en {
        font-size: 11rem;
    }
    /* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
プロモ
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
    .promo_frame {
        padding: 1.5rem 0 6rem;
    }

    .promo_frame .promo_inner p.img {
        width: 91rem;
        position: relative;
        left: 47%;
        transform: translateX(-50%);
        margin-top: -6rem;
        margin-bottom: 4rem;
    }

    .promo_frame .promo_inner .inner p.area {
        width: 47.7rem;
    }

    .promo_frame .promo_inner .inner h2.ttl {
        width: 56.2rem;
        margin-bottom: 0;
        position: relative;
        z-index: 1;
    }

    .promo_frame .promo_inner .inner ul.items {
        width: 100%;
        justify-content: center;
    }

    .promo_frame .promo_inner .inner ul.fst_items {
        left: 1.2rem;
    }

    .promo_frame .promo_inner .inner ul.bt_items {
        left: -1.2rem;
        margin-top: 1rem;
    }

    .promo_frame .promo_inner .inner ul.items li {
        font-size: 3.37rem;
        width: 30.5rem;
        height: 9.9rem;
        background-image: url(../images/home/promo/promo_box_sp.png);
    }


    /*============================
#lp_about
============================*/
    #lp_about {
        padding-bottom: 8rem;
    }

    #lp_about .inner01 .wide_width {
        width: calc(100% - 6rem);
    }

    #lp_about .inner01 fieldset {
        margin-top: 4.5rem;
        padding-bottom: 6rem;
    }

    #lp_about .inner01 fieldset legend {
        margin-bottom: 0rem;
        transform: translateY(-4rem);
        margin: 0 0 0;
    }

    #lp_about .inner01 fieldset legend h2.main_ttl {
        width: 55.5rem;
        margin: 0 2rem 0rem;
    }

    #lp_about .inner01 fieldset p.main_lead {
        font-size: 2.8rem;
        line-height: 1.25;
        margin: 0 0 5.5rem;
    }

    #lp_about .inner01 fieldset ul.items {
        padding: 0 3rem;
        gap: 7rem;
        margin-bottom: 5rem;
    }

    #lp_about .inner01 fieldset ul.items li {
        width: 100%;
    }

    #lp_about .inner01 fieldset ul.items li .img_area .cond {
        left: 0;
        padding: 0 2rem;
        bottom: 3rem;
        gap: 2rem 1rem;
    }

    #lp_about .inner01 fieldset ul.items li .img_area .cond p {
        font-size: 2.6rem;
        min-width: 19.1rem;
        height: 5rem;
        border-radius: 2.6rem;
    }

    #lp_about .inner01 fieldset ul.items li .img_area .cond p.wd_long {
        min-width: 26.5rem;
    }

    #lp_about .inner01 fieldset ul.items li .txt_area p.area {
        font-size: 3rem;
    }

    #lp_about .inner01 fieldset ul.items li .txt_area p.area::before {
        width: 2.36rem;
        height: 3.62rem;
    }

    #lp_about .inner01 fieldset ul.items li .txt_area p.txt {
        font-size: 3.4rem;
    }

    #lp_about .inner01 fieldset p.btn a {
        font-size: 3.6rem;
        border-radius: 1.4rem;
        width: 56rem;
        height: 12rem;
        justify-content: flex-start;
        padding: 0 5rem;
        letter-spacing: inherit;
        padding-bottom: 0.4rem;
    }

    #lp_about .inner01 fieldset p.btn a::after {
        width: 5rem;
        height: 5rem;
        background-image: url(../images/common/btn_arrow_gold_sp.png);
        background-size: 1.2rem 1.9rem;
    }

    #lp_about .inner02 {
        overflow: hidden;
        padding: 6rem 0 0;
    }

    #lp_about .inner02 .box .ttl_wrap p.logo {
        width: 60.7rem;
        margin: 0 0 6.5rem;
    }

    #lp_about .inner02 .box .ttl_wrap h2.main_ttl {
        width: 62.3rem;
    }

    #lp_about .inner02 .box p.main_txt {
        font-size: 3.2rem;
        white-space: nowrap;
    }

    #lp_about .inner02 .image_wrap {
        width: 79.3rem;
        margin: 5rem calc(50% - (79.3rem / 2)) 0;
        display: flex;
        flex-wrap: wrap;
        height: 93.5rem;
        position: relative;
    }

    #lp_about .inner02 .image_wrap p.img.img01 {
        top: 0;
        left: 0rem;
        width: 40.6rem;
    }

    #lp_about .inner02 .image_wrap p.img.img02 {
        top: 6.5rem;
        right: 0rem;
    }

    #lp_about .inner02 .image_wrap p.img.img03 {
        bottom: 7.5rem;
        left: 0;
        width: 40.2rem;
    }

    #lp_about .inner02 .image_wrap p.img.img04 {
        bottom: 0;
        right: -.5rem;
    }

    #lp_about .inner03 {
        padding: 12.5rem 0 1rem;
    }

    #lp_about .inner03 h2.main_ttl {
        width: 57.8rem;
        margin-bottom: 10.5rem;
    }

    #lp_about .inner03 ul.items {
        gap: 6rem;
    }

    #lp_about .inner03 ul.items li {
        background-image: url(../images/home/about_big_box_sp.jpg);
        height: 41rem;
        gap: 0;
        align-items: inherit;
        padding: 0 5.7rem;
    }

    #lp_about .inner03 ul.items li p.icon {
        width: 10.8rem;
        margin: -4.5rem auto -3rem;
    }

    #lp_about .inner03 ul.items li .txt_wrap {
        width: 100%;
        padding: 0;
    }

    #lp_about .inner03 ul.items li .txt_wrap h3.ttl {
        font-size: 3.8rem;
        text-align: center;
        margin-bottom: 3rem;
    }

    #lp_about .inner03 ul.items li .txt_wrap p.txt {
        font-size: 3rem;
    }


    /*============================
#lp_staff
============================*/
    #lp_staff .base_width {
        width: calc(100% - 7rem);
    }

    #lp_staff h2.main_ttl {
        width: 64.6rem;
        margin-bottom: 7rem;
    }

    #lp_staff ul.staff_items {
        margin-bottom: -6rem;
    }

    #lp_staff ul.staff_items li {
        height: auto;
        padding: 0 0 8rem;
        margin-bottom: 6rem;
    }

    #lp_staff ul.staff_items li .img_area {
        width: 59.8rem;
        margin: 0 auto 7.5rem;
        top: -2rem;
    }

    #lp_staff ul.staff_items li .img_area p.img.main {
        width: 39rem;
    }

    #lp_staff ul.staff_items li .img_area p.img.sub {
        width: 30rem;
        bottom: -5.5rem;
    }

    #lp_staff ul.staff_items li .txt_area {
        padding: 0 6rem;
    }

    #lp_staff ul.staff_items li .txt_area .tag_wrap span.tag {
        font-size: 2.8rem;
        min-width: 16rem;
        height: 5.6rem;
        border-radius: 2.8rem;
    }

    #lp_staff ul.staff_items li .txt_area h3.ttl {
        font-size: 5rem;
    }

    #lp_staff ul.staff_items li .txt_area p.txt {
        padding: 0;
        font-size: 3rem;
    }

    #lp_staff ul.staff_items li:nth-child(odd) {
        padding-right: 0;
    }

    #lp_staff ul.staff_items li:nth-child(even) {
        padding-left: 0;
    }

    #lp_staff ul.staff_items li:nth-child(odd) .img_area {
        left: 0;
    }

    #lp_staff ul.staff_items li:nth-child(even) .img_area {
        right: 0;
    }

    #lp_staff ul.staff_items li:nth-child(even) .img_area p.img.sub {
        left: 0;
    }

    #lp_staff ul.staff_items li:nth-child(odd) .txt_area {
        padding: 0 6rem;
        left: 0;
    }

    /*============================
#lp_flow
============================*/
    #lp_flow {
        padding-top: 5rem;
    }

    #lp_flow h2.cmn_ttl {
        margin: 0 calc(50% - 50vw);
    }

    #lp_flow ol.items li {
        background-image: url(../images/home/flow_bg_sp03.jpg);
        width: 100%;
        height: 37.4rem;
        background-size: cover;
        padding: 6rem 7rem 0;
    }

    #lp_flow ol.items li:nth-last-child(-n+2) {
        padding-top: 8.5rem;
    }

    #lp_flow ol.items li:first-child {
        background-image: url(../images/home/flow_bg_sp01.jpg);
        height: 45.6rem;
    }

    #lp_flow ol.items li:nth-child(2) {
        background-image: url(../images/home/flow_bg_sp02.jpg);
        height: 41.3rem;
    }

    #lp_flow ol.items li:not(:last-child)::after {
        background-image: url(../images/home/flow_bg_line_sp.png);
        top: auto;
        bottom: -3.6rem;
        left: 0;
        right: auto;
        width: 100%;
        height: 3.6rem;
    }

    #lp_flow ol.items li h3.ttl {
        font-size: 4rem;
        padding: 0 0 0 10rem;
        min-height: auto;
        display: table;
        margin: 0 0 3rem;
        text-align: left;
        text-indent: 2rem;
        margin-left: -2rem;
        line-height: 1.25;
    }

    #lp_flow ol.items li h3.ttl::before {
        left: 0;
        top: 54%;
        transform: translateY(-50%);
        font-size: 5.6rem;
    }

    #lp_flow ol.items li p.txt {
        font-size: 3rem;
        padding: 0;
    }

    #lp_flow ol.items li p.btn a {
        font-size: 3.4rem;
        width: 42rem;
        height: 10rem;
        border-radius: 5rem;
    }

    #lp_flow ol.items li p.btn a::after {
        width: 2rem;
        height: 2rem;
        border-width: 2px;
        border-radius: .2rem;
        right: 5rem;
    }

@media (min-width: 751px) and (max-width: 1700px) {
    #lp_flow ol.items li p.txt{
        padding: 0 1.5rem;
    }
}
    /*============================
#lp_column
============================*/
    #lp_column .ttl_wrap p.txt {
        font-size: 3rem;
        text-align: center;
        margin-bottom: 5.5rem;
        margin-right: 0;
        line-height: 1.5;
        padding: 0 5rem;
    }

    #lp_column .post_wrap {
        width: 65rem;
        margin-bottom: 4rem;
    }

    #lp_column p.btn a {
        font-size: 3.6rem;
    }

    #lp_column p.btn a::after {
        width: 9.6rem;
        height: 9.6rem;
        background-image: url(../images/common/btn_arrow_white_sp.png);
        background-size: 1.7rem 2.9rem;
    }

    /*============================
#lp_qa
============================*/
    #lp_qa {
        padding: 7rem 0 0;
    }

    #lp_qa .qa_wrap .qa_area h3.ttl_wrap {
        padding: 3rem 1rem;
    }

    #lp_qa .qa_wrap .qa_area .ttl {
        font-size: 3.2rem;
        line-height: 1.25;
    }

    #lp_qa .qa_wrap .qa_area .en {
        font-size: 5.2rem;
    }

    #lp_qa .qa_wrap .qa_area .Q {
        line-height: 1;
        margin-top: 1rem;
    }

    #lp_qa .qa_wrap .qa_area p.txt_wrap {
        padding: 3rem 2rem 4.5rem;
    }

    #lp_qa .qa_wrap .qa_area .txt {
        font-size: 3rem;
    }
}

/*FINISH*/
