.br-sp {
    display: none;
}

@media (max-width:1024px) {
    /* ============================================
    comparison
    ============================================*/
    .comparison-sec01-outro-ttl br {
        display: block;
    }

    /* ============================================
    point
    ============================================*/
    .point__heading br.tab {
        display: block;
    }

    .header__tel {
        margin-right: 20px;
        font-size: 25px;
    }
}

@media (max-width:850px) {

    h2 {
        font-size: 32px;
    }

    h3 {
        font-size: 28px;
    }

    p {
        font-size: 14px;
    }

    /* ============================================
    header
    ============================================*/
    .header__conts {
        height: 70px;
    }

    .fixed-header-space {
        margin-top: 70px;
    }

    .fv {
        margin-top: 70px;
    }

    .header__mail {
        display: none;
    }

    .header__tel {
        margin-right: 0;
    }

    .header__tel-icon {
        width: 40px;
    }

    .header__tel-num {
       margin-bottom: 5px;
    }

    .header__tel-txt {
        font-size: 12px;
    }

    .comparison-sec01__heading {

    }

    .header__logo {
        -ms-flex-preferred-size: 240px;
            flex-basis: 240px;
        max-width: 240px;
    }

    /* ============================================
    cv
    ============================================*/
    .cv__itme {
        font-size: 20px;
    }

    .cv__itme--fz-s {
        font-size: 18px;
    }

    /* ============================================
    voice
    ============================================*/
    .voice__heading {
        margin-bottom: 32px;
    }

    .my-swiper-item {
        display: block;
    }

    .my-swiper-item__ttl {
        text-align: center;
    }

    .my-swiper-item__txt {
        font-size: 14px;
    }

    .my-swiper-item__pic {
        margin: 0 auto 24px;
    }

    .my-swiper-item__body {
        max-width: 100%;
        padding-left: 0;
    }

    /* ============================================
    cv
    ============================================*/
    .cv__mail,
    .cv__tel {
        -ms-flex-preferred-size: calc(50% - 15px);
            flex-basis: calc(50% - 15px);
    }

    .cv__mail {
        margin-right: 30px;
    }

    .cv__tel {
        font-size: 32px;
    }

    .cv__tel-txt {
        font-size: 14px;
        margin-top: 5px;
    }

    .cv__tel-icon {
        margin-right: 8px;
    }

    .cv__head-inner {
        padding: 14px 20px 12px;
    }

    /* ============================================
    point
    ============================================*/
    .point-achievement__item-head {
        display: block;
    }

    .point-achievement__item-foot-money-txt::after {
        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
    }

    .point-achievement__item-foot-money {
        display: block;
    }

    .point-achievement__item-ttl {
        margin-bottom: 8px;
    }

    .point-achievement__heading {
        margin-bottom: 24px;
    }

    /* ============================================
    comparison
    ============================================*/
    .comparison-sec02 {
        padding-bottom: 40px;
    }

    .comparison-sec02::before {
        left: calc(50% - 15px);
    }

    .comparison-pt__item-pt {
        font-size: 20px;
    }

    .comparison-pt__item-ttl {
        font-size: 24px;
    }

    .comparison-pt__item-ttl br.pc {
        display: none;
    }

    .comparison-pt__item-ttl br.sp {
        display: block;
    }

    .comparison-pt__item-pt-num {
        margin-left: 8px;
    }

    .comparison-pt__item-list {
        font-size: 14px;
    }

    .comparison-pt__item-list-txt {
        font-size: 24px;
        line-height: 1.6;
    }

    /* ============================================
    strength
    ============================================*/
    .strength__item {
        -ms-flex-preferred-size: 31%;
            flex-basis: 31%;
        max-width: 31%;
    }

    .strength__item-txt br.pc {
        display: none;
    }

    .strength__head-in {
        padding: 15px 16px;
    }

    /* ============================================
    point
    ============================================*/
    .point__intro {
        font-size: 28px;
    }

    .point__head-in {
        padding: 15px 20px;
    }

    .point-achievement__item {
        -ms-flex-preferred-size: 31%;
            flex-basis: 31%;
        max-width: 31%;
        margin-right: 3.5%;
    }

    .strength__table th,
    .strength__table td {
        font-size: 14px;
    }

    .strength__icon02,
    .strength__icon03,
    .strength__icon01 {
        width: 20px;
    }

    /* ============================================
    post
    ============================================*/
    .post-conts h2 {
        font-size: 20px;
        margin-bottom: 16px;
    }

    .post-conts h3 {
        font-size: 18px;
    }

    .post-conts h4 {
        font-size: 17px;
    }

    .post-conts h5 {
        font-size: 16px;
    }

    .post-conts h6 {
        font-size: 15px;
    }

    .post-conts input[type="button"],
    .post-conts input[type="submit"] {
        font-size: 15px;
    }

    .post-conts input[type="button"],
    .post-conts input[type="submit"] {
        max-width: 100%;
    }

    /* ============================================
    contact
    ============================================*/
    .c-form__heading {
        font-size: 18px;
    }
    .c-form__item-label {
        font-size: 14px;
    }

    /* ============================================
    flow
    ============================================*/
    .flow__head-in {
        padding: 22px 20px 23px;
    }

    /* ============================================
    floating
    ============================================*/
    .floating {
        display: block;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        background: #fff;
        z-index: 9999;
        text-align: center;
        padding: 8px 10px;
    }

    .floating__mail-btn {
        display: block;
        background: #01bf1e;
        color: #fff;
        font-size: 20px;
        text-align: center;
        padding: .5em .8em .35em;
        border-radius: 5px;
        border-bottom: 3px solid #007812;
        line-height: 1;
        white-space: nowrap;
        max-width: 520px;
        width: 100%;
        margin: 0 auto;
    }

    .floating__mail-top,
    .floating__mail-bottom {
        display: block;
    }

    .floating__mail-top {
        border-bottom: 1px solid #fff;
        letter-spacing: .01em;
        margin-bottom: 5px;
        padding-bottom: 5px;
        font-weight: 500;
    }

    .floating__mail-bottom {
        font-size: .65em;
        letter-spacing: .1em;
        font-weight: 300;
    }

}

@media (max-width:750px) {
    .br-sp {
        display: block;
    }

    h2 {
        font-size: 24px;
    }

    h3 {
        font-size: 21px;
    }
    
    /* ============================================
    header
    ============================================*/
    .header__tel-num {
        display: none;
    }

    .header__tel-txt {
        display: none;
    }
    
    .header__tel .pc_none {
        display: inline-block;
        width: 100%;
        max-width: 250px;
    }

    /* ============================================
    fv
    ============================================*/
    .fv img.sp {
        display: block;
    }

    .fv img.pc {
        display: none;
    }

    /* ============================================
    worry
    ============================================*/
    .worry img.pc {
        display: none;
    }

    .worry img.sp {
        display: block;
    }

    /* ============================================
    cv
    ============================================*/
    .cv__heading br.sp {
        display: block;
    }

    .cv__notice {
        text-align: center;
    }

    .cv__notice br.sp {
        display: block;
    }

    .cv__list {
        display: block;
        margin-bottom: -8px;
    }

    .cv__itme {
        width: 100%;
        margin-bottom: 8px;
        height: 64px;
    }

    .cv__btn-unit {
        display: block;
        text-align: center;
    }

    .cv__mail {
        text-align: center;
        margin: 0;
    }

    .cv__tel {
        text-align: center;
        margin-top: 8px;
    }

    .cv__tel-num {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }

    /* ============================================
    comparison
    ============================================*/
    .comparison-item::before {
        width: 40px;
        height: 40px;
    }

    .comparison-item::after {
        width: 85px;
        height: 85px;
    }

    .comparison-pt__item {
        display: block;
    }

    .comparison-pt__item-pt,
    .comparison-pt__item-foot {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }

    .comparison-pt__item-ttl {
        text-align: center;
        margin-bottom: 0 !important;
    }

    .comparison-pt__item-conts {
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding: 15px 20px;
    }

    .comparison-sec02__heading {
        margin-bottom: 22px;
        font-size: 18px;
    }

    .comparison-pt__item-pic,
    .comparison-pt__item-conts {
        max-width: 100%;
    }

    .comparison-sec02__outro {
        font-size: 24px;
    }

    .comparison-sec01-outro-ttl {
        margin-bottom: 30px;
    }

    .comparison-sec02__outro-in::before,
    .comparison-sec02__outro-in::after {
        height: 32px;
        top: calc(50% - 16px);
        width: 3px;
    }

    /* ============================================
    strength
    ============================================*/
    .strength__list {

    }
    .strength__item {
        -ms-flex-preferred-size: 48%;
            flex-basis: 48%;
        max-width: 48%;
        font-size: 11px;
    }

    .strength__table-wrapper {
        overflow-y: scroll;
    }

    .strength__table th:first-child {
        width: 180px;
    }

    .strength__item-icon {
        width: 50px;
        height: 50px;
    }

    /* ============================================
    point
    ============================================*/
    .point-media {
        display: block;
    }

    .point-media__thumb {
        margin: 0 auto 24px auto !important;
    }

    .point-media.point-media05 {
        padding-right: 10px;
    }

    .point-achievement__item {
        -ms-flex-preferred-size: 48%;
            flex-basis: 48%;
        max-width: 48%;
        margin-right: 4%;
    }

    .point-achievement__item:nth-child(2n){
        margin-right: 0;
    }

    .point-achievement__item:nth-child(3n) {
        margin-right: 4%;
    }

    .point {
        padding-top: 45px;
    }

    /* ============================================
    voice
    ============================================*/
    .voice__heading-top br.sp {
        display: block;
    }

    .voice__heading-bottom::before {
        width: 38px;
        height: 31px;
    }

    .voice__heading-bottom {
        padding-left: 45px;
    }

    /* ============================================
    contact
    ============================================*/
    .c-form__item {
        display: block;
        margin-bottom: 24px;
    }

    .c-form__item-head {
        margin-bottom: 8px;
    }

    .c-form__item-body,
    .c-form__item-head {
        max-width: 100%;
    }

    .c-form-wrapper {
        padding: 40px 26px 32px;
    }

    .c-form__btn-unit {
        margin-top: 32px;
    }

    /* ============================================
    POST（サンクスページ）
    ============================================*/
    .post-conts table,
    .post-conts tbody,
    .post-conts tr,
    .post-conts th,
    .post-conts td {
        display: block;
        width: 100%;
    }

    .post-conts th,
    .post-conts td {
        margin-bottom: -1px;
        font-size: 14px;
    }

    /* ============================================
    flow
    ============================================*/
    .flow__body {
        padding: 55px 20px;
    }

    .flow__figure img.pc {
        display: none;
    }

    .flow__figure img.sp {
        display: block;
    }

    /* ============================================
    cta
    ============================================*/
    .cta__img.sp {
        display: block;
    }

    .cta__img.pc {
        display: none;
    }

}

@media (max-width:540px) {
    /* ============================================
    header
    ============================================*/    
    .header__tel .pc_none {
        max-width: 200px;
    }
    
    /* ============================================
    comparison
    ============================================*/
    .comparison-item__graph img.pc {
        display: none;
    }

    .comparison-item__graph img.sp {
        display: block;
    }

    .comparison-item--cost .comparison-item__graph {
        display: none;
    }

    .comparison-item__sp-graph-head img,
    .comparison-item__sp-graph-body img {
        width: 100%;
    }

    .comparison-item__sp-accordion {
        display: block;
        background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,1)), to(rgba(255,255,255,.7)));
        background: -o-linear-gradient(top, rgba(255,255,255,1), rgba(255,255,255,.7));
        background: linear-gradient(to bottom, rgba(255,255,255,1), rgba(255,255,255,.7));
        padding-bottom: 30px;
        position: relative;
    }

    .comparison-item__sp-graph-body {
        display: none;
    }

    .comparison-item__btn {
        background: #134793;
        color: #fff;
        max-width: 154px;
        width: 100%;
        border-radius: 90px;
        text-align: center;
        padding: 7px;
        font-size: 10px;
        font-weight: 500;
        letter-spacing: .05em;
        position: absolute;
        bottom: -10px;
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
    }

    .comparison-item__btn::after {
        content: "\f078";
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        position: absolute;
        right: 10px;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
    }

    .comparison-item__btn.is_active::after {
        content: "\f077";
    }

    .comparison-item__notice {
        margin-top: 30px;
    }

    .comparison-item__notice br.pc {
        display: none;
    }

    .comparison-item__notice br.sp {
        display: block;
    }

    .comparison-list {
        margin-bottom: 30px;
    }

    .comparison-sec02__ly-cont {
        padding-top: 54px;
        padding-bottom: 0;
    }

    .comparison-sec02::before {
        width: 20px;
        top: -40px;
    }

    /* ============================================
    comparison-sec01_01
    ============================================*/
    .comparison-sec01_01 {
        margin-top: 80px;
    }

    .comparison-sec01_01 .comparison-sec01-outro-ttl {
        margin-bottom: 0;
    }

    .comparison-add2402-item .comparison-sec01-outro-ttl {
        font-size: 20px;
    }

    .comparison-sec01__btn {
        font-size: 12px;
    }

    /* ============================================
    header
    ============================================*/
    .header__inner {
        padding: 0 15px;
    }

    .header__tel {
        font-size: 15px;
        pointer-events: auto;
    }

    .header__tel-icon {
        width: 25px;
        margin-right: 5px;
    }

    .header__tel-txt {
        font-size: 11px;
    }

    .header__tel-txt-off {
        display: none;
    }

    .header__logo {
        max-width: 150px;
        -ms-flex-preferred-size: 150px;
            flex-basis: 150px;
    }

    .header__tel-txt {
        padding-left: 0;
        text-align: right;
    }

    /* ============================================
    cv
    ============================================*/
    .cv__catch {
        font-size: 20px;
    }

    .cv__tel {
        font-size: 28px;
        pointer-events: auto;
    }

    .cv__head-inner::before {
        bottom: -20px;
        border-width: 20px 10px 0px 10px;
    }

    /* ============================================
    comparison
    ============================================*/
    .comparison-sec01__heading {
        margin-bottom: 60px;
    }

    .comparison-sec01__heading-em-sp::before,
    .comparison-sec01__heading-em01::before {
        bottom: -5px;
    }

    .comparison-sec01__heading-em02::before {
        content: none;
    }

    .comparison-sec01__heading-em-sp {
        position: relative;
    }

    .comparison-sec01__heading-em-sp::before {
        content: "";
        background: url(../img/icon/heading-line01.png)repeat-x;
        background-size: auto;
        background-position: left center;
        background-size: contain;
        position: absolute;
        right: 0;
        left: 0;
        height: 5px;
    }

    .comparison-sec01__heading br.sp {
        display: block;
    }

    .comparison-item {
        padding: 55px 10px 30px;
    }

    .comparison-add2402-item {
        margin: 60px 0 90px;
    }

    .comparison-item--cost .comparison-item__graph {
        padding: 0;
    }

    .comparison-pt__item-pt {
        font-size: 18px;
    }

    .comparison-pt__item-ttl {
        font-size: 21px;
    }

    .comparison-pt__item-list {
        font-size: 12px;
    }

    .comparison-pt__item-list-txt {
        font-size: 20px;
    }

    /* ============================================
    point
    ============================================*/
    .point::before {
        width: 20px;
    }

    .point__intro {
        font-size: 20px;
    }

    .point__intro-in br {
        display: none;
    }

    .point__intro-in::before,
	.point__intro-in::after {
		width: 3px;
		height: 53px;
	}

	.point__intro-in::after {
		-webkit-transform: rotate(15deg);
		    -ms-transform: rotate(15deg);
		        transform: rotate(15deg);
		right: 20px;
		top: 8px;
	}

	.point__intro-in::before {
		-webkit-transform: rotate(-15deg);
		    -ms-transform: rotate(-15deg);
		        transform: rotate(-15deg);
		left: 20px;
		top: 8px;
	}

    .point-media__icon {
        -ms-flex-preferred-size: 80px;
            flex-basis: 80px;
        max-width: 80px;
    }

    .point-media__ttl {
        padding-left: 10px;
        font-size: 18px;
	}

    .point-media__ttl br.sp {
        display: block;
    }

    .point-media__txt br.sp {
        display: block;
    }

    .point-media__txt br.pc {
        display: none;
    }

    .point-achievement__list {
        margin-bottom: 0;
    }

    .point-achievement__heading {
        line-height: 1.4;
    }

    .point-achievement__heading br.sp {
        display: block;
    }

    .point-achievement__item-ttl {
        margin-bottom: 4px;
        font-size: 14px;
    }

    .point-achievement__item-meta-txt {
        font-size: 13px;
    }

    .point-achievement__item-meta-num {
        font-size: 18px;
    }

    .point-achievement__item-foot {
        padding: 6px 5px;
    }

    .point-achievement__item-foot-tag {
        display: block;
        font-size: 12px;
    }

    .point-achievement__item-foot-money-txt::after {
        width: 40px;
    }


    /* ============================================
    strength
    ============================================*/
    .strength {
        padding-bottom: 60px;
    }

    .strength__lv3-heading {
        margin-top: 45px;
    }

    .strength__gallery {
        display: block;
        margin-bottom: 50px;
    }

    .strength__gallery-img {
        max-width: 100%;
    }

    .strength__table.strength__table--sp {
        display: table;
        table-layout: fixed;
    }

    .strength__table.strength__table--pc {
        display: none;
    }

    .strength__table th,
    .strength__table td {
        white-space: normal;
        padding: 12px 6px;
        text-align: center;
        font-size: 11px;
        border-width: 1px;
    }

    .strength__table th:first-child {
        min-height: auto;
        width: 94px;
    }

    .strength__table-head-sm {
        font-size: 10px;
    }

    .strength__table-tag {
        font-size: 10px;
        margin-bottom: 2px;
    }

    .strength__item-txt {
        font-size: 11px;
    }

    .strength__item-txt .sp {
        display: block;
    }

    /* ============================================
    voice
    ============================================*/
    .my-swiper-wrapper {
        padding: 0;
    }

    .swiper-button-prev,
    .swiper-button-next {
        display: none;
    }

    .my-swiper-item {
        padding: 22px 16px;
    }

    .my-swiper-item__ttl {
        text-align: left;
    }

    .swiper-pagination {
        margin-top: 14px;
    }

    .my-swiper-item__ttl br.sp {
        display: block;
    }

    .my-swiper-item__txt {
        text-align: justify;
    }

    .my-swiper-item__txt br.sp {
        display: block;
    }
}

@media (max-width:375px) {  
    .header__tel .pc_none {
        max-width: 160px;
    }
    
    .strength__item-txt {
        font-size: 10px;
    }

    .my-swiper-item__txt {
        font-size: 12px;
    }
}

@media (max-width:359px) {
    .header__logo {
        margin-right: 20px;
    }

    .cv__tel {
        font-size: 22px;
    }

    .cv__tel-txt {
        font-size: 12px;
    }

    .header__tel {
        font-size: 14px;
    }

    .header__tel-icon {
        width: 20px;
    }

    .header__tel-txt {
        font-size: 10px;
    }

    .strength__item-txt .small-sp-none {
        display: none;
    }
}

@media (max-width:599px) {
    .comparison .point__intro {
        padding-bottom: 6px;
        padding-top: 60px;
    }
}

@media (max-width: 599px) {
    .comparison .point__intro-in {
        margin-bottom: 30px;
        font-size: 26px;
    }

    .comparison .point__intro-in::before {
        left: 7px;
        top: -3px;
        height: 43px;
    }

    .comparison .point__intro-in::after {
        right: 7px;
        top: -3px;
        height: 43px;
    }

    .comparison .point__head-in {
        padding: 30px 20px;
    }

    .comparison .point__body {
        padding: 110px 20px 50px;
        margin-bottom: 70px;

        width: 100%;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        -ms-overflow-style: block;
        scrollbar-width: block;
    }

    .comparison .point__body::-webkit-scrollbar-track{
        background-color: #bebebe;
    }

    .comparison .point__body::-webkit-scrollbar-thumb{
        background-color:#144793;
    }

    .comparison .point__body img {
        width: 578px;
    }

    /* スクロールバーの幅と高さを設定する */
    .scrollbar::-webkit-scrollbar {
        width: 10px;
        height: 10px;
    }
    /* スクロールバーの形を設定する */
    .scrollbar-thumb-rounded::-webkit-scrollbar-thumb {
        border-radius: 0.25rem;
    }
    /* スクロールバーの色を設定する */
    .scrollbar-thumb-black::-webkit-scrollbar-thumb {
        --bg-opacity: 1;
        background-color: black;
    }
}

