.body_area-cp {
    position: relative;
    margin: 0 auto;
    padding: 0;
    overflow-x: inherit;
    line-height: 1.4em;
    font-family: "ヒラギノ丸ゴ ProN", ' Noto Sans JP', sans-serif, " Helvetica Neue", Helvetica, Arial, sans-serif;
    background-color: #FFFFFF;
    /*font-size: 1.2rem;*/
    font-size: 1rem;
    /*font-feature-settings: "palt";*/
    /*max-width: 728px;*/
    min-height: 100dvh;
}

* {
    box-sizing: border-box;
}

h1, h2, h3.h4 {
    margin: 0;
    padding: 0;
}

p {
    margin: 0;
    padding: 0;
    line-height: 2.2;
    text-align: justify;
    font-size: 1.1rem;
}

a {
    text-decoration: none;
}

img {
    width: 100%;
    height: auto;
}

ul {
    margin: 0;
    padding: 0;
}

li {
    list-style: none;
}

@media (min-width: 728px) {
    /* html {
        font-size: 18px;
    }

    .fot-menu {
        transform: translateX(-50%);
        left: 50%;
    }

    .cap-h2 {
        padding: 0 5rem 0.5rem;
    }*/
}

/** 動画制御スタイル*********************************************/
video[poster].movie-wrapper,
video[poster].movie-wrapper-02,
video[poster].movie-wrapper-03,
video[poster].movie-wrapper-04 {
    width: 100%;
    height: 100%;
}

.mov-video-box {
    width: 27rem;
    text-align: center;
    margin: 0 auto;
}

.mov-video01 {
    border-radius: 1rem;
    border: 1px solid #1f1f1f;
}

.mov-video-p {
    font-size: 1.3rem;
    margin: 2rem 3rem .5rem;
    line-height: 1.2;
}

.mov-video-p-span {
    color: #E87C97;
}

.mov-video {
    border-radius: 1rem;
    border: 1px solid #1f1f1f;
}

/** 動画制御 end*****************************************/

.t-center {
    text-align: center;
}


.cap-h1-box {
    position: relative;

}

.container {
    overflow: hidden;
}


/** テキスト装飾  *****************************************/
.pink-span {
    color: #E87C97;
}

.blue-span {
    color: #5286CE;
}

.span-pink {
    color: #E87C97;
}

.span-blue {
    color: #5286CE;
}

/** 下線 **/
.under-pink {
    background: linear-gradient(transparent 50%, #FFD5DF 0%);
}

.under_yellow {
    background: linear-gradient(transparent 65%, #ff1 50%)
}

/** テキスト装飾 end *****************************************/

/** カラー *****************************************/
.c-ff7600 {
    color: #FF7600;
}

.col-FF5D86 {
    color: #FF5D86;
}

/** カラー end*****************************************/

/** フォント *****************************************/
.f-w700 {
    font-weight: 700;
}

.f-wbld {
    font-weight: bold;
}

/** カラー *end****************************************/

/** マージン  *****************************************/

/**  top  **/
.mg-t1 {
    margin-top: 1rem;
}

.mg-t2 {
    margin-top: 2rem;
}

.mg-t3 {
    margin-top: 3rem;
}

.mg-t4 {
    margin-top: 4rem;
}

.mg-t5 {
    margin-top: 5rem !important;
}

.mg-t6 {
    margin-top: 6rem;
}

.mg-t5-0 {
    margin-top: 5rem;
}

@media (min-width: 820px) {
    .mg-t5-0 {
        margin-top: 0rem;
    }
}

/**  top -  **/

.mg-t-2 {
    margin-top: -2rem;
}

.mg-t-3 {
    margin-top: -3rem;
}

.mg-t-5 {
    margin-top: -5rem;
}

.mg-t-7 {
    margin-top: -7rem;
}


/**  bottom   **/
.mg-b2 {
    margin-bottom: 2rem;
}

.mg-b3 {
    margin-bottom: 3rem;
}

.mg-b4 {
    margin-bottom: 4rem;
}

.mg-b5 {
    margin-bottom: 5rem;
}

.mg-b6 {
    margin-bottom: 6rem;
}

/**  bottom  - **/
.mg-b-8 {
    margin-bottom: -8rem;
}


/**       - **/
.mg-t-4-5 {
    margin-top: -4.5rem;
}


/** マージン end *****************************************/

/** padding  *****************************************/

.pd-2 {
    padding: 2rem;
}

/** top **/
.pd-t2 {
    padding-top: 2rem;
}

.pd-t5 {
    padding-top: 5rem;
}

.pd-t20 {
    padding-top: 2rem;
}

/** bottom **/
.pd-b1 {
    padding-bottom: 1rem;
}

.pd-b3 {
    padding-bottom: 3rem;
}

.pd-lr2 {
    padding-left: 2rem;
    padding-right: 2rem;
}

/** padding  end *****************************************/
/** 上下左右  *****************************************/
/** top **/
.t0 {
    top: 0;
}

.t-2 {
    top: -2rem;
}

.t-4 {
    top: -4rem;
}

/** bottom **/
.bt-0 {
    bottom: 0;
}

.b-2 {
    bottom: -2rem;
}

.bottom11 {
    bottom: 11rem;
}

.bottom13 {
    bottom: 13rem;
}

.disp-inb {
    display: inline-block;
}

.disp-sp {
    display: block;
}

.disp-pc {
    display: none;
}

/** left **/
.left-4rem {
    left: 4rem;
}

/** right **/
.right-4rem {
    right: 4rem;
}

/**  header style 移行  *****************************************/
/** ヘッダーしたのテキスト用**/
.re_head_flex {
    display: flex;
    padding: 1rem;
    justify-content: space-between;
    align-items: center;
}

.re_header_rogo_img {
    width: 11rem;
}

.re_header_text {
    background-color: #EFEFEF;
    padding: 3px;
    color: #1f1f1f;
    font-size: .9rem;
    text-align: center;
    margin: 0;
}

/** ヘッダーしたのテキスト用 end**/

/** ロゴ用 _不使用**/
.re_header_rogo {
    display: inline-block;
}

/** ロゴ用 _不使用 end**/

/** スタッフ応募の為のスタイル 25/0110 現在はつかってない**/
.re_header_btn_rec {
    border: 1px solid #1f1f1f;
    padding: 0.7rem 1rem;
    text-align: center;
    color: #1f1f1f;
    border-radius: 1rem;
}

.re_header_btn_rec_span {
    position: relative;
    padding-left: .8rem;
    font-feature-settings: "palt";
}

.re_header_btn_rec_span::before {
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    background-image: url(/assets/images/com_red_sankaku.svg);
    width: 0.7rem;
    height: 0.7rem;
    background-repeat: no-repeat;
    left: 0px;
    top: .2rem;
    transform: translate(-0%, -0%);
}

/** スタッフ応募の為のスタイル 25/0110 現在はつかってない end**/
/**  header style 移行  end *****************************************/



/*******共通スタイル  **************************************************************/

.inner {
    margin: 1rem 2rem;
}


/*******共通スタイル  end **********************************************************/



.rate-linkbaner {
    display: block;
    position: relative;
}

.rate-linkbaner::before {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(0%);
    width: 7rem;
    height: 7rem;
    top: -28.5rem;
    left: 0.5rem;
    animation: rate-banar-anime 3s infinite;
}

@keyframes rate-banar-anime {
    0% {
        transform: translate(4px, 0px);
    }

    5% {
        transform: translate(-4px, 0px);
    }

    10% {
        transform: translate(3px, 0px);
    }

    15% {
        transform: translate(-3px, 0px);
    }

    20% {
        transform: translate(1px, 0px);
    }

    25% {
        transform: translate(-1px, 0px);
    }

    30% {
        transform: translate(0px, 0px);
    }
}

/* flipLeft */
.flipLeft {
    animation-name: flipLeftAnime;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    perspective-origin: left center;
    opacity: 0;
    background-color: #FFFF33;
    padding: .5rem;
    margin-top: 2rem;
    border-radius: 1rem 1rem 0 0;
    display: block;
}

@keyframes flipLeftAnime {
    from {
        transform: perspective(600px) translate3d(3rem, 3rem, 0) rotateY(30deg);
        opacity: 0;
    }

    to {
        transform: perspective(600px) translate3d(0, 0, 0) rotateY(0deg);
        opacity: 1;
    }
}


.loop03__item {
    flex: 0 0 auto;
    white-space: nowrap;
    padding-right: 1rem;
    padding-left: 1rem;
    color: #fff;
}

.loop03__item:nth-child(odd) {
    animation: loop 50s -25s linear infinite;
}

.loop03__item:nth-child(even) {
    animation: loop2 50s linear infinite;
}

@keyframes loop {
    0% {
        transform: translateX(100%);
    }

    to {
        transform: translateX(-100%);
    }
}

@keyframes loop2 {
    0% {
        transform: translateX(0);
    }

    to {
        transform: translateX(-200%);
    }
}

/**  アニメ  end  ************************************************************/


.cap-h1-box::after {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/top-fukidashi.svg);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 10rem;
    height: 10rem;
    top: 1rem;
    right: -0.2rem;
}

.cap-h1-mod {
    position: absolute;
    transform: translateY(-50%) translateX(-50%);
    width: 28rem;
    height: 9rem;
    bottom: 6rem;
    left: 50%;
}

.cap-h1-mod-in {
    z-index: -1;
    position: absolute;
    transform: translateY(0%) translateX(-6%);
    width: 9rem;
    height: 9rem;
    top: -4.5rem;
    right: -2rem;
}

.top-und-text {
    color: #fff;
    background-color: #1f1f1f;
    text-align: center;
    font-size: 1.1rem;
}

.top-und-text-span01 {
    color: #E87C97;
    font-size: 1.4rem;
    font-weight: bold;

}

.text-box01 {
    letter-spacing: 3px;
    padding-left: 0.5rem;
}

.top-tu-disp {
    display: flex;
    position: relative;
    top: -4rem;
}

.top-zai-disp {
    display: flex;
    position: relative;
    top: -4rem;
    margin: 2rem 0rem 1rem;
    justify-content: space-around;
}


.top-tu-disp-img {
    width: 25%;
}

.top-zai-disp-img {
    width: 30%;
}

.top-tu-h2-box {
    padding: 1rem;
    text-align: center;
}

.top-tu-h2, .top-tu-h2-02,
.top-zai-h2 {
    position: relative;
    line-height: 1.4;
    text-align: center;
    border-bottom: 1px solid #1f1f1f;
    padding-bottom: 0.5rem;
    font-size: 1.5rem;
    margin: 1.5rem 3rem 1rem;
    padding-left: 5rem;
}

.top-tu-h2::before, .top-tu-h2-02::before,
.top-zai-h2::before {
    content: "";
    position: absolute;
    background-size: contain;
    transform: translate(0%, 0%);
}

.top-tu-h2::before, .top-tu-h2-02::before {
    background-image: url(/assets/images/area-cp/tu-img-icon.svg);
    background-repeat: no-repeat;
    width: 5rem;
    height: 5rem;
    left: 1rem;
}

.top-tu-h2::before {
    top: -1rem;
}

.top-tu-h2-02::before {
    top: 0;
}

.top-zai-h2::before {
    background-image: url(/assets/images/area-cp/zai-img-icon.svg);
    background-repeat: no-repeat;
    width: 5rem;
    height: 5rem;
    top: -1rem;
    left: -0.2rem;
    padding-right: 1rem;
}

.top-tu-h2-p {
    margin: 0 3rem;
    display: flex;
    align-items: center;
    text-align: justify;
    font-size: 1rem;
    line-height: 1.4;
}

.top-tu-h2-p::before {
    content: "";
    background-size: contain;
    background-image: url(/assets/images/area-cp/pokeko-icon01.svg);
    background-repeat: no-repeat;
    width: 11rem;
    height: 4rem;
    margin-right: 0.5rem;
}

.sig-btn-p {
    position: relative;
    border: 1px solid #1f1f1f;
    padding: 1.5rem;
    width: 25rem;
    border-radius: 3rem;
    background-color: #FFF9DB;
    color: #1f1f1f;
    font-size: 1.3rem;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 3px 6px #00000029;
}

.sig-btn-p::before,
.sig-btn-p::after {
    content: "";
    background-size: contain;
    background-repeat: no-repeat;
}

.sig-btn-p::before {
    background-image: url(/assets/images/area-cp/pokeko-icon01.svg);
    background-repeat: no-repeat;
    width: 2rem;
    height: 2rem;
    margin-right: 0.5rem;
}

.sig-btn-p::after {
    background-image: url(/assets/images/area-cp/arrow01.svg);
    background-repeat: no-repeat;
    width: 1.6rem;
    height: 1.6rem;
    margin-left: 0.5rem;
}

.top-tu-51000-img {
    width: 28rem;
    display: block;
    margin: 0 auto;
    padding-left: 1.7rem;
}

.bg-b {
    background-color: #F5F9FF;
}

.top-zai-dl {
    margin: -5rem 1.5rem 7rem;
}

.top-zai-dl dt {
    margin: 0 auto;
    font-size: 1.6rem;
    font-weight: bold;
    text-align: center;
    border: 3px dotted #1f1f1f;
    padding: 0.5rem;
    width: 25rem;
    border-radius: 1rem;
}

.top-zai-dl-dt-span {
    color: #E87C97;
    background: linear-gradient(transparent 50%, #FFF9DB 0%);
}

.top-zai-dl dd {
    margin-left: 0;
    margin-top: 1rem;
    text-align: center;
    padding-bottom: 1rem;
}

.top-zai-dl dd ul {
    display: flex;
    padding-left: 0;
    margin: 1rem auto 0;
    flex-wrap: wrap;
    width: 27.5rem
}

.top-zai-dl dd ul li {
    background-color: #fff;
    padding: 0.3rem 0.5rem;
    border: 2px solid #A2C9FF;
    border-radius: 0.6rem;
    margin: 0.2rem;
    text-align: center;
    list-style: none;
    font-size: 1.2rem;
    box-shadow: 0px 3px 6px #00000029;
    width: 5.1rem;
}

.top-zai-dl-dd-ul-li02 {
    font-size: 1rem !important;
    padding: 0.3rem 0.3rem !important;
}

.f-b {
    font-weight: bold;
    background: linear-gradient(transparent 50%, #FFD5DF 0%);
}

.cap-h1 {
    margin: 0 auto;
    display: block;
}

.cap-h2 {
    margin: 1rem auto;
    display: block;
}

.cap-h2-2 {
    margin: 1rem auto;
    display: block;
    padding: 0 1rem;
}

.chap {
    margin: 1rem auto;
    display: flex;
    align-items: center;
    position: relative;
    z-index: 2;
}

.chap::before,
.chap::after {
    content: "";
    flex-grow: 1;
    border-top: 2px dotted #1f1f1f;
    display: block;
}

.chap:before {
    margin-right: .2rem;
}

.chap:after {
    margin-left: .2rem;
}


.chap-p {
    content: "";
    display: block;
    border: 2px dotted #1F1F1F;
    width: 6rem;
    height: 6rem;
    border-radius: 3rem;
    text-align: center;
    padding-bottom: 0.2rem;
    padding-top: 1rem;
    color: #E87C97;
    font-weight: bold;
    box-sizing: border-box;
    font-size: 1.4rem;
    line-height: .9;
    background-color: #fff;

    transition: opacity .5s, transform .5s;
    transform: rotate(90deg);
}




.chap-p-span {
    color: #1f1f1f;
    font-weight: normal;
    display: inline-block;
    font-size: 1rem;
}

.chap-p-span:after {
    content: "";
    border-bottom: 1px solid #1f1f1f;
    display: block;
    padding: 0.2rem;
}


/****目次 ******************************************************************
.nav-box {
    margin: 3rem 2rem;
}

.nav-box-ul {
    margin: 1rem 0;
}

.nav-box-ul-li {
    display: block;
    border-bottom: 1px solid #1f1f1f;
    padding-bottom: 0.5rem;
    font-size: 1.2rem;
    padding: 0.5rem 0;
    position: relative;
    margin-bottom: .8rem;
}

.nav-box-ul-li3 {
    display: block;
    padding-bottom: 0.5rem;
    font-size: 1.2rem;
    padding: 0.5rem 0;
    position: relative;
    margin-bottom: .8rem;
}

.nav-box-ul-li2 {
    display: block;
    border-bottom: 1px dashed #1f1f1f;
    padding-bottom: 0.5rem;
    font-size: 1rem;
    padding: 0.5rem;
    position: relative;
    margin-bottom: .8rem;
    margin-left: 2rem;
}

.nav-box-ul-li::after,
.nav-box-ul-li2::after,
.nav-box-ul-li3::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/arrow01.svg);
    background-repeat: no-repeat;
    width: 1.6rem;
    height: 1.6rem;
    margin-left: 0.5rem;
    right: 0.2rem;
    top: 0.5rem;
    transform: translate(-0%, -0%);
    z-index: -1;
}

.nav-box-ul-li-a {
    display: block;
    color: #1f1f1f;
}

.nav-box-ul-li-a2 {
    display: block;
    color: #1f1f1f;
}

.nav-box-ul-li-a2::before {
    display: block;
    color: #1f1f1f;
    padding-left: 2rem;
}

.nav-h2 {
    margin: 3rem 0;
}

***目次 end****************************************************************/

.shape_box {
    padding: 0.5rem;
    width: 22rem;
    height: 22rem;
    margin: auto;
    border-radius: 50%;
    display: block;
    border: 1px solid;
    box-sizing: content-box;
    overflow: hidden;
    position: relative;
}

.shape_box-mini {
    padding: 0.5rem;
    width: 18rem;
    height: 18rem;
    margin: auto;
    border-radius: 50%;
    display: block;
    border: 1px solid;
    box-sizing: content-box;
    overflow: hidden;
    position: relative;
}

.left {
    float: left;
    width: 50%;
    height: 100%;
    shape-outside: radial-gradient(circle farthest-corner at center right, rgba(255, 255, 255, 0) 70%, rgb(255, 255, 255) 70%, white 100%);
}

.right {
    float: right;
    width: 50%;
    height: 100%;
    shape-outside: radial-gradient(circle farthest-corner at center left, rgba(255, 255, 255, 0) 70%, rgb(255, 255, 255) 70%, white 100%);
}

.shape_box-out,
.shape_box-out-mini {
    position: relative;
    margin: -1rem 0;
}

.shape_box-p01 {
    text-align: center;
    padding: 1rem 0 0.5rem;
    margin: 2.2rem 0 0;
    font-size: 1.3rem;
    border-bottom: 1px dashed #1f1f1f;
    line-height: 1.4;
}

.shape_box-out::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(/assets/images/area-cp/chapter-1-icon00.svg);
    transform: translate(-50%, -50%);
    width: 5rem;
    height: 5rem;
    top: 6%;
    left: 50%;
    Z-INDEX: 1;
}

.shape_box-out-mini::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(/assets/images/area-cp/chapter-1-icon00.svg);
    transform: translate(-50%, -50%);
    width: 5rem;
    height: 5rem;
    top: 6%;
    left: 50%;
    Z-INDEX: 1;
}

.shape_box-out::after {
    content: "";
    position: absolute;
    transform: translate(-50%, -50%);
    width: 23rem;
    height: 23rem;
    border: 1px solid #1f1f1f;
    border-radius: 50%;
    top: 11rem;
    left: 50.5%;
    Z-INDEX: 0;
}

.shape_box-out-mini::after {
    content: "";
    position: absolute;
    transform: translate(-50%, -50%);
    width: 19rem;
    height: 19rem;
    border: 1px solid #1f1f1f;
    border-radius: 50%;
    top: 10rem;
    left: 51%;
    Z-INDEX: 0;
}

.shape_box-p02 {
    padding: 0.5rem 0;
    line-height: 2;
    font-size: 1rem;
}



.shape_box-out>.shape_box-out-span01::before,
.shape_box-out-mini>.shape_box-out-span02::before,
.shape_box-out>.shape_box-out-span03::before,
.shape_box-out>.shape_box-out-span04::before,
.shape_box-out>.shape_box-out-span05::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    transform: translate(-50%, -50%);
    Z-INDEX: 1;
}

.shape_box-out>.shape_box-out-span01::before,
.shape_box-out>.shape_box-out-span03::before,
.shape_box-out>.shape_box-out-span05::before {
    width: 10rem;
    height: 8rem;
    top: 60%;
    Z-INDEX: 1;
}

.shape_box-out-mini>.shape_box-out-span02::before,
.shape_box-out>.shape_box-out-span04::before {
    width: 10rem;
    top: 60%;
    Z-INDEX: 1;
}

.shape_box-out>.shape_box-out-span01::before {
    background-image: url(/assets/images/area-cp/chapter-01-img001.svg);
    left: 2%;
    height: 8rem;
}

.shape_box-out-mini>.shape_box-out-span02::before {
    background-image: url(/assets/images/area-cp/chapter-01-img002.svg);
    right: -32%;
    height: 8rem;
}

.shape_box-out>.shape_box-out-span03::before {
    background-image: url(/assets/images/area-cp/chapter-01-img003.svg);
    left: 10%;
    height: 8rem;
}

.shape_box-out>.shape_box-out-span04::before {
    background-image: url(/assets/images/area-cp/chapter-01-img004.svg);
    right: -32%;
    height: 8rem;
}

.shape_box-out>.shape_box-out-span05::before {
    background-image: url(/assets/images/area-cp/chapter-01-img005.svg);
    left: 5%;
    height: 14rem;
}


.link-box {
    text-align: right;
}

.link-p-box {
    font-size: 1.3rem;
    line-height: 1.3;
    padding-right: 2rem;
    display: inline-block;
    margin: 3rem 2rem 2rem auto;
    text-align: right;
    border-bottom: 1px solid blue;
    color: #1f1f1f;
    letter-spacing: 3px;
}

.link-p-box span {
    position: relative;

}

.link-p-box span::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(/assets/images/area-cp/arrow01.svg);
    transform: translate(100%, 100%);
    width: 1.3rem;
    height: 1.3rem;
    top: -1.5rem;
    right: -0.5rem;
    Z-INDEX: 1;
}

.about-flex-dl-box {
    display: flex;
    justify-content: center;
    align-items: center;
}

.about-dl-line {
    width: 0.5rem;
    border-left: 1px solid #1f1f1f;
    transform: rotate(10deg);
    margin: 0 1rem;
    height: 6rem;
}

.about-dl {
    line-height: 1.2;
    width: 20%;
    text-align: center;
    margin: 0;
    font-size: 1rem;
}

.about-dl dd {
    margin: .5rem 0 0;
    border-top: 1px solid #1f1f1f;
    padding-top: .5rem;
}

.store-info-h3-box {
    margin: 0 2rem;
    padding-top: 3rem;
}

.store-info-h3 {
    font-size: 1.5rem;
    margin: 1rem 0 2rem;
    padding-left: 1rem;
    border-left: 11px double #FFA2B9;
    line-height: 1.4;

}


.area-reg-img-box {
    width: 40%;
}

.area-reg-bg {
    border: 1px solid #1f1f1f;
    border-radius: 2rem;
    background-color: #fff;
    position: relative;
    top: -12rem;
    z-index: -1;
    padding: 13rem 1rem 0;
    margin: 1rem 2rem -10rem;
}

.area-reg-inner {
    justify-content: flex-end;
    margin: 0 auto;
    box-sizing: border-box;
    display: flex;
    align-items: center;
}

.area-reg-dl,
.area-reg-dl-01,
.area-reg-dl-02,
.area-reg-dl-03,
.area-reg-dl-04 {
    position: relative;
    margin: 0.5rem;
    width: 60%;

}

.area-reg-dl {
    font-size: 1rem;
    line-height: 1.4;
}

.area-reg-dl-01::before,
.area-reg-dl-02::before,
.area-reg-dl-03::before,
.area-reg-dl-04::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    transform: translate(0%, 0%);
    width: 4rem;
    height: 2rem;
    top: -2rem;
    left: 0;
}

.area-reg-dl-01::before {
    background-image: url(/assets/images/area-cp/area-reg-step01.svg);
}

.area-reg-dl-02::before {
    background-image: url(/assets/images/area-cp/area-reg-step02.svg);
}

.area-reg-dl-03::before {
    background-image: url(/assets/images/area-cp/area-reg-step03.svg);
}

.area-reg-dl-04::before {
    background-image: url(/assets/images/area-cp/area-reg-step04.svg);
}

.area-reg-step-box {
    margin-bottom: 2rem;
    padding: 1rem;
}

.area-reg-dl-01-dt,
.area-reg-dl-01-dt02 {
    border: 1px solid #1f1f1f;
    background-color: #FFF9DB;
    border-radius: 0 2rem 2rem 0;
    text-align: left;
    padding: 0.5rem;
    margin: 0.5rem;
    display: table-cell;
    width: 14rem;
    height: 2rem;
    vertical-align: middle;
}

.area-reg-dl-01-dt {
    font-size: 1.4rem;
    font-feature-settings: "palt";
}

.area-reg-dl-01-dt02 {
    font-size: 1.7rem;
}

.area-reg-dl-01-dd,
.area-reg-dl-01-dd02,
.area-reg-dl-01-dd03 {
    margin: 0.5rem 0;
    font-size: 1.1rem;
    line-height: 1.8;
}

.area-reg-dl-01-dd03 {
    width: 60%;
    margin-right: 0.5rem;
}

.area-reg-dl-01-dd02 {
    border-bottom: 1px solid #1f1f1f;
    padding-bottom: 1rem;
}

.area-reg-img-box02 {
    width: 25%;
    margin-right: 1rem;
}

.area-reg-img-box03 {
    width: 30%;
    margin-right: 2rem;
}

.area-reg-line-top {
    border-top: 1px dashed #1f1f1f;
    padding-top: .5rem;
}

.area-reg-h2-p {
    border: 1px solid #1f1f1f;
    text-align: center;
    width: 27rem;
    margin: 0 auto;
    font-size: 1.1rem;
}



.area-que-bg {
    background-color: #F8F5FA;
    margin-top: -3rem;
    padding-top: 3rem;
}

.area-trial-img-box {
    margin: 1rem;
}

.area-trial-p {
    margin: 0 3rem;
}

.qa-dl {
    padding: 1rem 1rem 0;
    border-bottom: 1px solid #707070;
}

.qa-dl dt {
    font-size: 1.4rem;
    font-weight: bold;
    margin-bottom: 2rem;
    padding-left: 3rem;
    position: relative;
}

.qa-dl dt::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/icon-q.svg);
    background-repeat: no-repeat;
    width: 1.5rem;
    height: 1.5rem;
    margin-left: 0;
    left: 0.5rem;
    top: -0.2rem;
}

.qa-dl dd {
    font-size: 1rem;
    margin-bottom: 2rem;
    padding-left: 3rem;
    position: relative;
    line-height: 2;
    margin-left: 0;
}

.qa-dl dd::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/icon-a.svg);
    background-repeat: no-repeat;
    width: 1.5rem;
    height: 1.5rem;
    margin-left: 0;
    left: 0.5rem;
    top: .2rem;
}

.sec-bg-female {
    position: relative;
    width: 100%;
    height: auto;
    top: -1rem;
    margin-bottom: 6rem;
}

.sec-bg-female::before {
    content: '';
    position: absolute;
    left: 0;
    top: -24rem;
    transform: skewY(-30deg);
    transform-origin: top right;
    z-index: -1;
    width: 100%;
    height: 30rem;
    background: #EEDAD3;
}

.sec-bg-female::after {
    content: '';
    position: absolute;
    left: 0;
    top: 32rem;
    transform: skewY(30deg);
    transform-origin: top right;
    z-index: -1;
    width: 100%;
    height: 30rem;
    background: #EEDAD3;
}

.area-female-box {
    background-color: #fff;
    border: 2px solid #EEDAD3;
    border-radius: 2rem;
    padding: 1.5rem;
    box-shadow: 0px 3px 6px #00000029;
}

.area-female-h3 {
    font-size: 1.2rem;
    border-left: 4px solid #EA97AC;
    padding-left: 1rem;
}

.inner02 {
    margin: 0 1rem;
}

.area-female-img-box {
    margin: 1rem;
}

.area-female-h3-span {
    font-size: 2rem;
    line-height: 1.4;
    display: inline-block;
}



.rec-ban-box {
    margin-bottom: -0.5rem;
    border-top: 1px solid #ccc;
    padding-top: 2rem;
    position: relative;
}

.rec-ban-box::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/text-job_offer.svg);
    background-repeat: no-repeat;
    width: 10rem;
    height: 5rem;
    margin-left: 0.5rem;
    left: 10rem;
    top: 1.5rem;
    transform: translate(-100%, -100%);
}

/**** other 共通 ********************************************************************/
.other-inner {
    margin: 3rem 1rem 5rem;
}

.other-btn01,
.other-btn02,
.other-btn03,
.other-btn04,
.other-btn05,
.other-btn06,
.other-btn07,
.other-btn08 {
    background-size: contain;
    background-repeat: no-repeat;
    border: 1px solid #1f1f1f;
    border-radius: 2rem;
    text-align: right;
    height: auto;
    box-shadow: 0px 3px 6px #00000029;
    margin: 1.5rem 1rem;
}

.other-btn01 {
    background-image: url(/assets/images/area-cp/chapter-12-img01.webp);
    padding: 2.5rem;
}

.other-btn02 {
    background-image: url(/assets/images/area-cp/chapter-12-img02.webp);
    padding: 2rem 3rem;
}

.other-btn03 {
    background-image: url(/assets/images/area-cp/chapter-12-img03.webp);
    padding: 2.5rem;
}

.other-btn04 {
    background-image: url(/assets/images/area-cp/chapter-12-img04.webp);
    padding: 2.5rem;
}

.other-btn05 {
    background-image: url(/assets/images/area-cp/chapter-12-img05.webp);
    padding: 2.5rem;
}

.other-btn06 {
    background-image: url(/assets/images/area-cp/chapter-12-img06.webp);
    padding: 2.5rem;
}

.other-btn07 {
    background-image: url(/assets/images/area-cp/chapter-12-img07.webp);
    padding: 2.5rem;
}

.other-btn08 {
    background-image: url(/assets/images/area-cp/chapter-12-img08.webp);
    padding: 2.5rem;
}

.other-btn-p {
    position: relative;
    top: 2rem;
    font-size: 1.3rem;
    border-bottom: 1px solid #386CB4;
    display: inline-block;
    font-weight: bold;
    color: #1f1f1f;
    line-height: 1.2;
}

.other-btn-p-02 {
    line-height: 1.3;
    position: relative;
    top: 1.5rem;
    font-size: 1.3rem;
    border-bottom: 1px solid #386CB4;
    display: inline-block;
    font-weight: bold;
    color: #1f1f1f;
}

.other-btn-p::before,
.other-btn-p-02::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/arrow03.svg);
    background-repeat: no-repeat;
    width: 3rem;
    height: 3rem;
    margin-left: 0.5rem;
    right: 24.5rem;
    bottom: 4.5rem;
    transform: translate(100%, 100%);
}

/**** other 共通 end  ****************************************************************/

/**** フッター 共通  ****************************************************************/
.fot-bg {
    background-color: #1f1f1f;
    padding: 1rem 0;
}

.fot-ul {

    border-top: 2px solid #fff;
    padding: 2rem;
    text-align: left;
    border-bottom: 2px solid #fff;
}

.fot-ul li {
    font-size: 1.3rem;
    line-height: 2;
    color: #fff;
    list-style: disc;
    margin-left: 2rem;
}

.fot-p {
    font-size: 1rem;
    padding: 0;
    text-align: left;
    background-color: #1f1f1f;
    margin: 0 0 7rem 3rem;
    color: #fff;
}

/**  footer  応募ボタン *******/
.fot-menu-bg-flex02 {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 999;
    bottom: 0;
    margin: 1rem;
    top: -2rem;
    text-align: center;
}

@media (min-width: 728px) {
    .fot-menu-bg-flex {
        right: calc(50% - 288px);
    }
}

.fot-menu-bg01,
.fot-menu-bg02,
.fot-menu-bg03 {
    border: 4px solid #fff;
    border-radius: 2rem;
    box-shadow: 0px 3px 10px rgb(0 0 0 / 30%);
    padding: 0.2rem 0 0.2rem 5rem;
    width: 14rem;
    display: inline-block;
    margin: .5rem;
}

.fot-menu-bg01 {
    background-color: #FFA2B9;
}

.fot-menu-bg03 {
    background-color: rgba(0, 0, 0, 0.3);
}

.fot-menu-bg01:hover {
    background-color: #FFC1D0;
    transform: translate(0, 3px);
    box-shadow: 0px 0px 3px #444;
}

.fot-menu-bg02:hover {
    background-color: #C1DAFD;
    box-shadow: 0px 0px 3px #444;
    transform: translate(0, 3px);
}

.fot-menu-p-flex {
    display: flex;
    align-items: center;
}

.fot-menu-p02 {
    font-size: .8rem;
    color: #1f1f1f;
    text-align: center;
    background-color: #fff;
    border-radius: .5rem;
    margin-right: 1.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.fot-menu-p02::after {
    content: "";
    background-size: contain;
    background-image: url(/assets/images/area-cp/arrow01.svg);
    background-repeat: no-repeat;
    width: 1rem;
    height: 1rem;
    margin-left: 0.5rem;
}


.f-bg {
    background-color: #fff;
    height: 1rem;
    width: 26rem;
    position: relative;
    top: 3.7rem;
    margin: 0 auto;
    left: -1.1rem;
}

/**  footer  応募ボタン *******/

/**  footer  end  ************************************************************/
/**** フッター 共通  end *************************************************************/

.area-job-dl dt {
    font-size: 1.3rem;
    background-color: #FFF9DB;
    border: 2px dotted #707070;
    padding: 0.5rem;
    margin: 1rem 2rem;
    padding-left: 1rem;
    border-radius: 1rem
}

.area-job-dl dd {
    font-size: 1.2rem;
    line-height: 1.4;
}

.area-job-dl dd span {
    color: #EA97AC;
}

.area-job-dl-ul li {
    font-size: 1rem;
    line-height: 1.8;
    list-style: disc;
}

.area-job-dl-ul {
    margin-left: 2rem;
    margin-bottom: 1rem;
}

.area-job-bx {
    border-radius: 2rem;
    background-color: #fff;
    padding-top: 2rem;
    padding-bottom: 6rem;
    box-shadow: 0px 3px 6px #00000029;
}

.area-job-bg {
    z-index: -1;
    background-size: initial;
    background-image: url(/assets/images/area-cp/job-pokeko-bg.svg);
    background-color: #FAFAFA;
    padding: 6rem 2rem;
    position: relative;
    top: -3rem;
    margin-bottom: -6rem;
}

.store-info-h4-box {
    background-color: #EFEFEF;
    border-radius: 1rem;
    padding: 1.5rem 1rem;
    margin-bottom: 2rem;
    box-shadow: 0px 3px 6px #00000029;
}

.store-info-h4-01, .store-info-h4-02, .store-info-h4-03, .store-info-h4-04, .store-info-h4-05, .store-info-h4-06, .store-info-h4-07 {
    position: relative;
    margin-left: 5.5rem;
    font-size: 1.4rem;
    line-height: 1.3;
    margin-top: 1rem;
}

.store-info-h4-01-img {
    border-radius: 1rem;
    border: 2px solid #fff;
    box-shadow: 0px 3px 6px #00000029;
    margin: 0 auto 1rem;
}


.store-info-h4-01::before, .store-info-h4-02::before, .store-info-h4-03::before, .store-info-h4-04::before, .store-info-h4-05::before, .store-info-h4-06::before, .store-info-h4-07::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    width: 4rem;
    height: 3.5rem;
    left: -5rem;
    top: 50%;
    transform: translate(0%, -50%);
}

.store-info-h4-01::before {
    background-image: url(/assets/images/area-cp/point-01.svg);
}

.store-info-h4-02::before {
    background-image: url(/assets/images/area-cp/point-02.svg);
}

.store-info-h4-03::before {
    background-image: url(/assets/images/area-cp/point-03.svg);
}

.store-info-h4-04::before {
    background-image: url(/assets/images/area-cp/point-04.svg);
}

.store-info-h4-05::before {
    background-image: url(/assets/images/area-cp/point-05.svg);
}

.store-info-h4-06::before {
    background-image: url(/assets/images/area-cp/point-06.svg);
}

.store-info-h4-07::before {
    background-image: url(/assets/images/area-cp/point-07.svg);
}

.chap-01-h2-under-p, .h2-under-p {
    position: relative;
    text-align: center;
    font-size: 1.4rem;
    margin-bottom: 4rem;
    line-height: 1.3;
    font-feature-settings: "palt";
}

.chap-01-h2-under-p {
    margin-bottom: 4rem;
}

.h2-under-p {
    border: 1px solid #1f1f1f;
    padding: 0.5rem;
    margin-bottom: 2rem;
    font-size: 1.3rem;
}

.chap-01-h2-under-p::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/text-01.svg);
    background-repeat: no-repeat;
    width: 7rem;
    height: 2rem;
    margin-left: 0.5rem;
    left: 11rem;
    top: 0rem;
    transform: translate(-100%, -100%);
}

.arrow02 {
    text-align: center;
    display: block;
    margin: 1rem auto;
    width: 2rem;
    height: 2rem;
}

/*====================================================================
slick
====================================================================*/

.sliderArea {
    max-width: 100%;
    margin: 0 auto;
    padding: 0 2rem;
}

.sliderArea.w300 {
    max-width: 300px;
}

.slick-slide {
    margin: 0 5px;
}

.slick-slide img {
    width: 100%;
    height: auto;
}

.slick-prev, .slick-next {
    z-index: 1;
}

.slick-prev:before, .slick-next:before {
    color: #FFA2B9;
}

.slick-slide {
    transition: all ease-in-out .3s;
    opacity: .2;
}

.slick-active {
    opacity: 1;
}

.slick-current {
    opacity: 1;
}

.thumb, .thumb02 {
    margin: .5rem 0 0;
}

.thumb .slick-slide, .thumb02 .slick-slide {
    cursor: pointer;
}

.thumb .slick-slide:hover, .thumb02 .slick-slide:hover {
    opacity: .7;
}

.slick-slide img {
    border-radius: 0.5rem;
}

.slick-next {
    right: -1.5rem;
}

.slick-prev {
    left: -1.5rem;
}

.thumb .slick-track, .thumb02 .slick-track {
    transform: unset !important;
    width: 100% !important;
    display: flex;
    flex-wrap: wrap;
    flex-flow: row wrap;
}

.thumb .slick-slide, .thumb02 .slick-slide {
    display: block !important;
    float: none !important;
    flex: 0 0 30%;
    margin-top: 0.5rem;
}

/*====================================================================*/

table {
    border-collapse: collapse;
    margin: 3rem auto 0;

}

.reward-tbody td, .sal-reward-tbody td {
    text-align: center;
    padding: 1rem 0.5rem;
    border-top: 1px solid #1f1f1f;
}

.reward-tbody {
    border-top: 1px solid #fff;
    border-bottom: 1px solid #fff;
}

.reward-tbody tr {
    border-left: 1px solid #fff;
    border-right: 1px solid #fff;
}

.reward-tbody-th {
    box-sizing: border-box;
    text-align: center;
    padding: 1rem;
    border-left: 1px solid #1f1f1f;
}

.reward-tbody tr td:first-of-type, .sal-reward-tbody tr td:first-of-type {
    font-size: 1.2rem;
    font-weight: normal;
    border-right: 1px solid #1f1f1f;
}

.reward-tbody tr td:nth-of-type(2), .sal-reward-tbody tr td:nth-of-type(2) {
    font-size: 1.2rem;
    font-weight: bold;
    color: #E87C97;
    border-right: 1px solid #1f1f1f;
}

.reward-tbody tr td:nth-of-type(3), .sal-reward-tbody tr td:nth-of-type(3) {
    font-size: 1.2rem;
    font-weight: bold;
    color: #91B4E5;
}

.reward-tbody tr td span, .sal-reward-tbody tr td span {
    font-size: .8rem;
    font-weight: normal;
    color: #1f1f1f;
}

.area-average-tbody-th {
    border-right: 1px solid #fff;
    padding: 1rem;
    background-color: #DDCAE2;
}

.area-average-tbody-td {
    border-right: 1px solid #fff;
}

/*=======口コミ====================================================================*/

.pokecom-enq-srider {
    display: flex;
    overflow-x: scroll;
}

.pokecom-enqcom, .pokecom-enqcom2 {
    position: relative;
}

.pokecom-enq-date-flex-matome {
    max-width: 26rem;
    display: inline-block;
    min-width: 24rem;
    margin: 1rem 1.07rem 3.21rem;
    user-select: none;
}

.pokecom-enqcom2::before {
    background-image: url(/assets/images/area-cp/kuchikomi-tu-icon.svg);
}

.pokecom-enqcom::before {
    background-image: url(/assets/images/area-cp/kuchikomi-zai-icon.svg);
}

.pokecom-enqcom::before, .pokecom-enqcom2::before {
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    width: 4.3rem;
    height: 4.3rem;
    background-repeat: no-repeat;
    left: 3rem;
    transform: translate(-50%, -100%);
    top: 3.4rem;
}

.pokecom-enq-p, .pokecom-enq-p2 {
    color: #fff;
    margin: 0.5rem 0;
    text-align: center;
    font-size: 1rem;
    font-weight: bold;
    padding: 0.5rem 0 0.5rem 3rem;
    border-radius: 1rem 1rem 0 0;
}

.pokecom-enq-p {
    background-color: #E87C97;
}

.pokecom-enq-p2 {
    background-color: #91B4E5;
}

.pokecom-enq-date-flex {
    display: flex;
}

.enq-date-text {
    width: 70%;
}

.pokecom-enq-dl {
    border-bottom: 1px dashed #1f1f1f;
    margin: 0.6rem .5rem 0.6rem 0;
    display: flex;
    justify-content: space-between;
}

.pokecom-enq-dl dt, .pokecom-enq-dl dd {
    display: inline-block;
}

.pokecom-enq-dl dt {
    padding-left: 0.5rem;
}

.enq-date-img {
    width: 30%;
}

.enq-date-img-img {
    max-width: 100%;
    height: 16rem;
    object-fit: cover;
    width: 100%;
}

.pokecom-enq-p02 {
    border: 1px solid #1f1f1f;
    border-radius: 0 0 1rem 1rem;
    padding: 0.5rem;
    color: #1f1f1f;
    height: 8rem;
    overflow-y: scroll;
    word-break: break-all;
    line-height: 1.6;
}

.zai-re-dl-box {
    border-bottom: 1px solid #1f1f1f;
    margin: 1rem;
    padding-bottom: .5rem;
}

.zai-re-dl {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 0;
    margin-left: 2rem;
    font-size: 1.1rem;
}

.zai-re-dl dt {
    background-color: #A2C9FF;
    counter-reset: #1f1f1f;
    padding: .5rem;
    text-align: center;
    border-radius: 0.5rem;
}

.zai-re-dl dd {
    font-weight: bold;
    margin-left: 1rem;
}

.zai-re-dl-box-p {
    font-size: 1rem;
    text-align: left;
    margin-left: 4rem;
}

.zai-re-dl-box-p span {
    font-size: 1.5rem;
    color: #A2C9FF;
    font-weight: bold;
}





.area-review-p {
    margin: 1rem 2rem 3rem;
    text-align: center;
    line-height: 1.6;
}

.t_access_move {
    position: relative;
    width: 100%;
    padding-top: 76%;
    width: 27rem;
    margin: 1rem auto 2rem;
}

.t_access_move iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
}

iframe {
    border: 1px solid #1f1f1f;
    border-radius: 2rem;
}

.access-p01 {
    text-align: center;
    line-height: 1.4;
}

.access-p01 span {
    position: relative;
    font-size: 1.1rem;
    padding-left: 2rem;
}

.access-p01 span::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/access-icon01.svg);
    background-repeat: no-repeat;
    width: 2rem;
    height: 2.5rem;
    margin-left: 0;
    left: -0.1rem;
    top: -0.5rem;
    font-size: 1.2rem;
}

.access-dl-box {
    border-top: 1px dashed #1f1f1f;
    border-bottom: 1px dashed #1f1f1f;
    padding: 1rem 0;
    margin: 1rem 6rem;
}

.access-dl {
    display: flex;
    justify-content: flex-start;
    width: 20rem;
    margin: 0 auto;
    text-align: end;
}

.access-dl dt {
    width: 2.5rem;
}

.access-dl dd {
    margin-left: 0;
}

.sec-access-bg, .sec-access-bg2, .sec-access-bg3 {
    z-index: -1;
    background-size: contain;
    background-repeat: no-repeat;
    width: 100%;
    padding-top: 9rem;
    background-color: #E4F5EB;
    padding-bottom: 3rem;
    margin-bottom: 4rem;
    margin-top: -4rem;
}

.sec-access-bg {
    background-image: url(/assets/images/area-cp/access-bg.svg);
    height: 65rem;
}

.sec-access-bg2 {
    background-image: url(/assets/images/area-cp/access-bg-1mov.svg);
    height: 89rem;
}

.sec-access-bg3 {
    background-image: url(/assets/images/area-cp/access-bg-2mov.svg);
    height: 108rem;
}

@media (min-width: 728px) {
    .sec-access-bg {
        height: 83rem;
    }

    .sec-access-bg2 {
        height: 110rem;
    }

    .sec-access-bg3 {
        height: 135rem;
        padding-top: 16rem;
    }

    /*.zai-re-dl {
        margin-left: 6rem;
    }*/

    .area-job-bg {
        padding: 1rem 5rem;
    }

    /*.zai-re-dl-box-p {
        margin-left: 8rem;
    }*/

    /*.other-btn-p::before, .other-btn-p-02::before {
        right: 32.5rem;
    }*/

    .thumb .slick-slide, .thumb02 .slick-slide {
        flex: 0 0 15%;
    }

}

.sec-flow-bg {
    z-index: -1;
    background-size: initial;
    background-image: url(/assets/images/area-cp/pink-dot.svg);
    background-color: #fff;
    position: relative;
    padding-top: 6rem;
    top: -3rem;
}

.sec-bg {
    background-color: #fff;
    margin-bottom: 6rem
}


.top-und-text02 {
    color: #fff;
    background-color: #1f1f1f;
    text-align: center;
    font-size: 1.1rem;
    position: relative;
    margin-top: -3rem;
}

/**  topへ戻るボタン  *************************************************************/
.page_top {
    width: 5rem;
    height: 5rem;
    position: fixed;
    bottom: -5rem;
    border-radius: 50%;
    right: 1rem;
    z-index: 10;
}

.page_top a {
    position: relative;
    display: block;
    width: 5rem;
    height: 5rem;
    text-decoration: none;
    line-height: 4;
}

.page_top a::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/top-back-btn.svg);
    background-repeat: no-repeat;
    width: 5rem;
    height: 5rem;
}

.fot-ul a {
    color: #fff;
}

.other-btn01 a {
    color: #1f1f1f;
}

/**  topへ戻るボタン  end*************************************************************/
/*アニメ*/
.top-tu-h2-span,
.top-zai-h2-span {
    position: relative;
    background: linear-gradient(transparent 50%, #FFF9DB 0%);
}

.top-tu-h2-span {
    left: 0;
}

.top-zai-h2-span {
    left: 0;
}

.top-tu-h2-span::before,
.top-tu-h2-span::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    transform: translate(0%, 0%);
}

.top-tu-h2-span::before {
    background-image: url(/assets/images/area-cp/asirai-2line-left.svg);
    width: 1.5rem;
    height: 2rem;
    top: -.5rem;
    left: -2rem;
}

.top-tu-h2-span::after {
    background-image: url(/assets/images/area-cp/asirai-2line-right.svg);
    width: 1.5rem;
    height: 2rem;
    top: -.5rem;
    right: -2rem;
}

.top-zai-head-img {
    display: block;
    position: relative;
    top: 1rem;
}



/*s札幌追加分*/

.com_sa_table {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    margin-top: 1rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 1rem;
    margin: 3rem auto;
}

.com_sa_table th:last-child {
    border-radius: 0 5px 0 0;
    border-right: 1px solid #CBE1FF;
}

.com_sa_table th {
    text-align: center;
    color: white;
    background: linear-gradient(#CBE1FF, #91B4E5);
    border-left: 1px solid #91B4E5;
    border-top: 1px solid #91B4E5;
    border-bottom: 1px solid #91B4E5;
    box-shadow: 0px 1px 1px rgb(255 255 255 / 30%) inset;
    width: 25%;
    padding: 10px 0.2rem;
    line-height: 1.2;
}

.background-color_pink {
    background-color: #FFD5DF;
}

.com_sa_table td {
    text-align: center;
    border-left: 1px solid #a8b7c5;
    border-bottom: 1px solid #a8b7c5;
    border-top: none;
    /* box-shadow: 0px -3px 5px 1px #eee inset; */
    width: 25%;
    padding: 10px 0.2rem;
    line-height: 1.2;
}

.com_sa_table td:last-child {
    border-right: 1px solid #a8b7c5;
}

.com_sa_table-td3 {
    text-align: justify !important;
    font-size: .9rem;
    line-height: 1.2 !important;
}

.com_sa_table tr:last-child td:last-child {
    border-radius: 0 0 5px 0;
}

.com_sa_table td:last-child {
    border-right: 1px solid #a8b7c5;
}


/*仙台追加*/
.area-mature-cause-img {
    border-radius: 2rem;
}

.mature-bg {
    background: linear-gradient(to bottom, #FFF, #DDCAE2 20%, #EEDAD3 80%, #fff);
    padding-bottom: 6rem;
    margin-bottom: -6rem;
}

.area-mature-cause-box {
    margin-top: 3rem;
}

.cap-h2-mat-left {
    padding-right: 1.5rem;
}

.cap-h2-mat-right {
    padding-left: 1.5rem;
}

.area-mature-cause-flex {
    display: flex;
    margin: 0 1.5rem;
}

.area-mature-cause-flex img {
    width: 40%;
}

.area-mature-cause-h3-flex,
.area-mature-cause-h3-flex02 {
    display: flex;
    flex-direction: column;
}

.area-mature-cause-h3-flex02 {
    margin: 0 1.5rem;
}

.area-mature-cause-h3-flex-h3 {
    border-bottom: 1px dashed;
    padding: 1rem 0;
    margin: 0;
    font-size: 1.6rem;
    line-height: 1.3;
}

.area-mature-cause-h3-flex p {
    line-height: 1.6;
    padding-top: 1rem;
}

.area-season-h3-box {
    margin-left: 1rem;
    margin-right: 1rem;
    text-align: center;
}

.area-season-h3 {
    display: inline-block;
    font-size: 1.8rem;
    border: 2px dashed #1F1F1E;
    padding: 1rem 4rem;
    margin: 0;
    position: relative;
    background-color: #DDD2E0;
    border-radius: 2rem;
}

.area-season-h3::before {
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    background-image: url(/assets/images/area-cp/sannbonnsen.svg);
    width: 3rem;
    height: 3rem;
    background-repeat: no-repeat;
    left: 1.5rem;
    transform: translate(-100%, -100%);
    top: 1.5rem;
}

.area-season-h3-img {
    margin: 1rem 0 4rem;
}

.area-season-p {
    margin: 1rem 3rem;
}

@media screen and (min-width: 728px) {
    .page_top {
        right: calc(50% - 340px);
    }
}

/*220822追記*/
.cap-h1-zai-box-area {
    position: relative;
}

.cap-h1-zai-box-area::after {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/area-top-51000-re.webp);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 16rem;
    height: 14rem;
    top: 1.5rem;
    right: 0rem;
    animation: yureru-s-zai 5s infinite;
}

.top-zai-und-text-area {
    color: #fff;
    background-color: #1f1f1f;
    text-align: center;
    font-size: 1rem;
    position: relative;
    margin-top: -1rem;
    line-height: 1.3;
    padding: 0.5rem 1rem 0.5rem;
}

.top-zai-und-text-area::before {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/siki-ichiji-dairiten.webp);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 7rem;
    height: 7rem;
    top: -6.2rem;
    left: 0.8rem;
}


/*** com-css-new02 からの以降****/

/*========= 背景動画設定のCSS ===============*/



/*header設定*/
.top-mov01 {
    position: relative;
    height: auto;
}

.top-mov01-box {
    position: fixed;
    z-index: -1;
    /*最背面に設定*/
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    overflow: hidden;
}

.mov01-02 {
    position: relative;
    z-index: -1;
    top: -4.8rem;
    width: 100%;
    height: 100%;
    object-fit: cover;
    left: 0;
}

/*見出し設定*/
.h1-text {
    /*要素の配置*/
    position: absolute;
    /*要素を天地中央寄せ*/
    top: 45%;
    left: 40%;
    transform: translateY(-50%) translateX(-50%);
    width: 23rem;
    height: auto;
    /*見た目の調整*/
}

.top-p-text {
    /*要素の配置*/
    position: absolute;
    /*要素を天地中央寄せ*/
    top: 3%;
    left: 22%;
    transform: translateY(-50%) translateX(-50%);
    width: 14rem;
    height: auto;
    /*見た目の調整*/
}

.header-p {
    border-top: 1px solid #1f1f1f;
    border-bottom: 1px solid #1f1f1f;
    padding: 3px;
    color: #1f1f1f;
    font-size: 1rem;
    text-align: center;
    margin: 0;
}

.fot-menu {
    position: fixed;
    bottom: -12rem;
    z-index: 10;
    /*width: 100%;*/
}

.fot-menu02 {
    position: relative;
    bottom: 2rem;
}

.fot-menu03 {
    position: absolute;
    bottom: 0;
}

.fot-menu04 {
    position: absolute;
    bottom: 3rem;
}

.top-und-text03, .top-und-text03-mov, .top-und-text04-mov {
    color: #fff;
    background-color: #1f1f1f;
    text-align: center;
    font-size: 1.1rem;
    position: absolute;
    bottom: -0.5rem;
    width: 100%;
}

.top-und-text03 {
    bottom: -0.5rem;
}

.top-und-text03-mov {
    bottom: 13.8rem;
}

.top-und-text04-mov {
    bottom: 8.3rem;
}

.header-mov-btn {
    border: 1px solid #fff;
    padding: 10px 13px;
    font-size: 14px;
    text-align: center;
    color: #fff;
    border-radius: 12px;
    background-color: rgba(0, 0, 0, 0.1);
}



.tsu-link02 {
    padding: 0.2rem 1rem;
    margin: 0 auto;
    display: inline-block;
    text-align: right;
    font-size: .9rem;
    position: relative;
    padding-right: 2rem;
    right: -19rem;
    bottom: -4rem;
    color: #1f1f1f;
    z-index: 4;
}

.tsu-link02::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/arrow01.svg);
    background-repeat: no-repeat;
    width: 1rem;
    height: 1rem;
    margin-left: 0.5rem;
    right: 0.7rem;
    top: 0.5rem;
    transform: rotate(-90deg);
}

/*ローディング*/
.video_wrapper {
    position: relative;
}

.video_wrapper:not(.js_active)::before {
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    background-color: rgba(0, 0, 0, 0.5);
    content: "";
}

.video_wrapper:not(.js_active)::after {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    width: 60px;
    height: 60px;
    background-image: url(/assets/images/tsuukin/loading.png);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    content: "";
}

.video_wrapper>video {
    width: 100%;
}

.h1-text-re {
    position: relative;
}

.pokecom-enq-srider {
    display: flex;
    overflow-x: scroll;
    margin-left: 1rem;
}

.area-line-rink-flex {
    padding: 1rem;
    border-radius: 1.5rem;
    margin: 1rem 0.5rem;
    box-shadow: 0px 3px 15px rgb(25 25 25 / 20%);
    height: 100%;
    min-width: 24rem;
}

.area-line-rink-img {
    height: 14rem;
}

.tiiki_syousai_rink {
    width: 100%;
    background: #EA97AC;
    font-size: 1rem;
    color: #fff;
    text-align: center;
    font-weight: bold;
    border-radius: 0 0 1rem 1rem;
    padding: 0;
}

.area-line-rink-box-img {
    border-radius: 1rem 0 0 0;
    object-fit: cover;
    padding: 0 0.5rem 0 0;
}

.re_zaitaku_textlink::after,
.re_tsukin_textlink::after {
    content: "▶︎";
    color: #ffa;
    font-size: 15px;
    position: relative;
    right: -0.5rem;
}

.re_zaitaku_textlink::before, .re_tsukin_textlink::before {
    content: "";
    position: absolute;
    margin-left: 0.5rem;
    transform: translate(-0%, 0%);
}

.re_zaitaku_textlink::before {
    background-image: url(/assets/images/area-cp/zai-img-icon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 6rem;
    height: 4rem;
    left: 1.8rem;
    top: -0.2rem;
}

.re_tsukin_textlink::before {
    background-image: url(/assets/images/area-cp/tu-img-icon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    width: 5rem;
    height: 5rem;
    left: 1.8rem;
    top: -1.2rem;
}


.re_zaitaku_textlink,
.re_tsukin_textlink {
    text-align: center;
    font-size: 18px;
    display: inline-block;
    padding: 0.5rem 3rem 0.5rem 7rem;
    border-radius: 1rem;
    color: #1f1f1f;
    margin: 3rem 0;
    box-shadow: 0px 3px 10px #00000029;
    position: relative;
    text-decoration: none;
}

.re_zaitaku_textlink {
    background-color: #A2C9FF;
}

.re_tsukin_textlink {
    background-color: #FFA2B9;
}

.pokecom_meri_matome_cont ul li {
    position: relative;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 15px 0 15px 2.5rem;
    line-height: 1.2;
    border-bottom: 2px dotted #888;
}

.pokecom_meri_matome_cont ul li:before {
    content: "";
    position: absolute;
    width: 2rem;
    height: 2rem;
    left: 0;
    margin-top: -5px;
}

.pokecom_meri_matome_cont ul #cont_meri_1:before {
    background: url(/assets/images/area-cp/tsu-nomber-01.svg) no-repeat;
    background-size: contain;
}

.pokecom_meri_matome_cont ul #cont_meri_2:before {
    background: url(/assets/images/area-cp/tsu-nomber-02.svg) no-repeat;
    background-size: contain;
}

.pokecom_meri_matome_cont ul #cont_meri_3:before {
    background: url(/assets/images/area-cp/tsu-nomber-03.svg) no-repeat;
    background-size: contain;
}

.pokecom_meri_matome_cont ul #cont_meri_4:before {
    background: url(/assets/images/area-cp/tsu-nomber-04.svg) no-repeat;
    background-size: contain;
}

.pokecom_meri_matome_cont ul #cont_meri_5:before {
    background: url(/assets/images/area-cp/tsu-nomber-05.svg) no-repeat;
    background-size: contain;
}

.pokecom_meri_matome_cont ul #cont_meri_6:before {
    background: url(/assets/images/area-cp/tsu-nomber-06.svg) no-repeat;
    background-size: contain;
}

.pokecom_meri_matome_cont ul #cont_meri_7:before {
    background: url(/assets/images/area-cp/tsu-nomber-07.svg) no-repeat;
    background-size: contain;
}



.city-map-tukin-h2 span {
    position: relative;
    display: flex;
    top: 3rem;
}

.city-map-tukin-h2 span::before {
    position: relative;
    content: "";
    display: inline-block;
    top: -1rem;
    left: 0;
    width: 6rem;
    height: 6rem;
    background: url(/assets/images/other/icon-map-marker.svg) no-repeat;
    background-size: contain;
}

.city_background_img-tu {
    background-image: url(/assets/images/other/japan-map.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: relative;
    width: 25rem;
    height: 20rem;
    margin: 0 auto;
    display: inline-block;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.sapporo-t,
.sendai-t,
.sinjyuku-t,
.yokohama-t,
.nagoya-t,
.osaka-t,
.hiroshima-t,
.fukuoka-t {
    position: absolute;
    background: #FFE8E8;
    padding: 0.1rem 0.5rem;
    border: solid 1px #1f1f1f;
    color: #1f1f1f;
    font-weight: 700;
}

.sapporo-t {
    top: 12%;
    right: 0%;
}

.sendai-t {
    top: 40%;
    right: 20%;
}

.sinjyuku-t {
    top: 63%;
    right: 12%;
}

.yokohama-t {
    top: 74%;
    right: 29%;
}

.nagoya-t {
    top: 59%;
    right: 40%;
}

.osaka-t {
    top: 78%;
    right: 54%;
}

.hiroshima-t {
    top: 62%;
    right: 69%;
}

.fukuoka-t {
    top: 76%;
    right: 80%;
}

.city_contents-flex-t {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.city-map-tukin-h2 {
    position: absolute;
    top: 1rem;
    left: 1rem;
    display: contents;
}

.city_contents-flex-t p {
    text-decoration: none;
    color: #1f1f1f;
    background: #FFE8E8;
    font-size: 1.2rem;
    line-height: 1.6;
}

.city_contents-flex-t p span::before {
    position: absolute;
    content: "";
    display: inline-block;
    top: -0.7rem;
    left: -2.4rem;
    width: 2.5rem;
    height: 2.5rem;
    background: url(/assets/images/other/pokeko.svg) no-repeat;
    background-size: contain;
}

/*エリアスライダー
.area-line-rink-flex {
  padding: 1rem;
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
  max-width: 1200px;
  flex-direction: column;
  align-items: center;
  background-color: #fff;
  border-radius: 1.5rem;
  margin: 1rem 0.5rem;
  box-shadow: 0px 3px 15px rgb(25 25 25 / 20%);
  height: auto;
}*/
.area-line-rink-box {
    display: flex;
    width: 100%;
    border-bottom: 1px #1f1f1f dashed;
    padding-bottom: 0.35rem;
    margin-bottom: 0.6rem;
    text-decoration: none;
    color: #1f1f1f;
}

.area-line-rink-box-img {
    height: 80px;
    border-radius: 1rem 0 0 1rem;
    width: 32%;
    object-fit: cover;
    padding: 0 0.5rem 0 0;
}

.area-rink-box-dl {
    margin: 0;
    width: 100%;
}

.area-line-rink-box-dt {
    background-color: #eee;
    font-weight: bold;
    position: relative;
    margin-bottom: 0.35rem;
    padding-left: 1.5rem;
    font-size: 1rem;
    border-radius: 0 1rem 0 0;
    padding: 0.2rem;
    text-align: center;
    color: #E87C97;
}

.area-line-rink-box-dt-span {
    position: relative;
}

.area-line-rink-box-dt-span::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    background: url(/assets/images/other/pokeko.svg) no-repeat;
    background-size: contain;
    left: -1.5rem;
}

.area-line-rink-box-dd {
    font-weight: bold;
    overflow: hidden;
    margin: 0;
    font-size: .9rem;
}

.sup-box01 .moz-p-bold-center, .sup-box02 .moz-p-bold-center, .sup-box03 .moz-p-bold-center, .sup-box04 .moz-p-bold-center, .sup-box05 .moz-p-bold-center, .sup-box06 .moz-p-bold-center {
    text-align: center;
    font-weight: 700;
    line-height: 1.2;
    font-size: 1.4rem;
    padding: 1rem 0 0.5rem;
    margin: 0;
}

.sup-box01 .moz-h2, .sup-box02 .moz-h2, .sup-box03 .moz-h2, .sup-box04 .moz-h2, .sup-box05 .moz-h2, .sup-box06 .moz-h2 {
    font-family: 'Satisfy', cursive;
    color: #FF7600;
    text-align: center;
    font-size: 1.14rem;
}

.sup-box02 .moz-h2, .sup-box03 .moz-h2, .sup-box04 .moz-h2, .sup-box05 .moz-h2, .sup-box06 .moz-h2 {
    margin-top: 0rem;
    margin-bottom: 0.5rem;
}

.sup-box01 .moz-h2::before, .sup-box01 .moz-h2::after, .sup-box02 .moz-h2::before, .sup-box02 .moz-h2::after, .sup-box03 .moz-h2::before, .sup-box03 .moz-h2::after, .sup-box04 .moz-h2::before, .sup-box04 .moz-h2::after, .sup-box05 .moz-h2::before, .sup-box05 .moz-h2::after, .sup-box06 .moz-h2::before, .sup-box06 .moz-h2::after {
    content: '';
    background: #1f1f1f;
    height: 2px;
    width: 20%;
    vertical-align: middle;
    display: inline-block;
    border-radius: 30px;
}

.sup-box01 .moz-h2::before, .sup-box01 .moz-h2::after, .sup-box02 .moz-h2::before, .sup-box02 .moz-h2::after, .sup-box03 .moz-h2::before, .sup-box03 .moz-h2::after, .sup-box04 .moz-h2::before, .sup-box04 .moz-h2::after, .sup-box05 .moz-h2::before, .sup-box05 .moz-h2::after, .sup-box06 .moz-h2::before, .sup-box06 .moz-h2::after {
    content: '';
    background: #1f1f1f;
    height: 2px;
    width: 15%;
    vertical-align: middle;
    display: inline-block;
    border-radius: 30px;
}

.sup-box02 .moz-p, .sup-box03 .moz-p, .sup-box04 .moz-p, .sup-box05 .moz-p, .sup-box06 .moz-p {
    padding: 2rem;
}

/*報酬*/
.moz-money01, .moz-money01-2 {
    text-align: center;
    letter-spacing: -1.45px;
    color: #1F1F1F;
    position: relative;
    margin-left: 1rem;
    font-size: 1.6rem;
    display: inline-block;
}

.moz-money01::before, .moz-money01-2::before {
    position: absolute;
    top: 0;
    left: -2.8rem;
}

.moz-money01::before {
    content: url(/assets/images/jp_img/area/salary-img-05.svg);
}

.moz-money03 {
    font-weight: 400;
    display: block;
    text-align: right;
    color: #1f1f1f;
}

.moz-money04 {
    border: 2px dashed #B9B9B9;
    border-radius: 20px;
    padding: 0.3rem;
    margin: 0.3rem;
}

.interview-img-box {
    padding: 2rem 2rem 0;
    position: relative;
}

.interview-img-box::before {
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    background-image: url(/assets/images/area-cp/beg-icon01-piyo.svg);
    width: 6rem;
    height: 6rem;
    background-repeat: no-repeat;
    left: 0px;
    top: 2px;
    transform: translate(-0%, -0%);
}

.tu-reward-h3-box {
    margin: 1rem 2rem;
}

.moz-money01::before,
.moz-money01-2::before {
    content: "";
    position: absolute;
    margin-left: 0.5rem;
    transform: translate(-0%, 0%);
    background-size: contain;
    background-repeat: no-repeat;

    left: -4rem;
    top: -0.2rem;
}

.moz-money01-2::before {
    background-image: url(/assets/images/area-cp/tu-img-icon.svg);
    top: 0rem;
    width: 3rem;
    height: 4rem;
}

.moz-money01::before {
    background-image: url(/assets/images/area-cp/zai-img-icon.svg);
    top: 0;
    width: 3rem;
    height: 3rem;
}

.tu-reward-div01 {
    padding: 1rem;
    border: 1px solid #1f1f1f;
    border-radius: 1rem;
    background-color: #fff;
}

.moz-money02 {
    font-size: 1.4rem;
    font-weight: 700;
    text-align: center;
    color: #EA97AC;
    display: inline-block;
}

.moz-money02 .moz-b {
    font-size: 2rem;
    font-weight: 700;
    text-align: center;
    color: #EA97AC;
    display: inline-block;
}

.com_p_span_color_pink {
    color: #EA97AC;
}

.sup-box01 .moz-h2,
.sup-box02 .moz-h2,
.sup-box03 .moz-h2,
.sup-box04 .moz-h2,
.sup-box05 .moz-h2,
.sup-box06 .moz-h2 {
    font-family: 'Satisfy', cursive;
    color: #FFA2B9;
    text-align: center;
    font-size: 1.14rem;
}

/*6つの安心*/
.com_pokeouen_6_matome {
    margin: 10px auto;
    width: 100%;
}

.com_pokeouen_6_flex {
    display: flex;
    text-align: center;
    justify-content: space-around;
}

.com_pokeouen_6_box {
    display: block;
    width: 30%;
}

.com_pokeouen_6_box img {
    display: block;
    width: 100%;
    object-fit: cover;
}

.com_pokeouen_6_box p {
    display: inline-block;
    font-size: 14px;
    line-height: 1.2;
    font-weight: bold;
    color: #888;
    margin: 0 0 20px;
}

.under-faf8cb {
    background: linear-gradient(transparent 0%, #faf8cb 0%);
    color: #1f1f1f;
    padding: 0 0.5rem;
}

.interview-img {
    border-radius: 1rem;
    box-shadow: 0px 7px 10px 3px #f0d3d3;
    border: 2px solid;
}

.inner-2box {
    margin: 1rem 2rem -1.8rem;
    position: relative;
    top: -1.8rem;
    z-index: -2;
}

.tsu-h4 {
    border: 1px dashed #1f1f1f;
    padding: 0.5rem;
    text-align: center;
    font-size: 1.2rem;
    line-height: 1.3;
    font-feature-settings: "palt";
    margin: 1rem 0;
    background-color: #ffe;
}

.com_p_span_underbar_yello {
    background: linear-gradient(transparent 60%, #FCFFB1 0%);
}

.inneer-2 {
    background-color: #FFF1F1;
    border-radius: 2rem;
    padding-top: 1rem;
}

.mov-cont-under {
    margin-top: -2rem;
    position: relative;
    z-index: 3;
    background-color: #fff;
}

.picup-baner-img {
    display: block;
    padding: 0 1rem;
}

.tsu-cap2-h3-imgbox {
    position: relative;
    text-align: center;
}

.tsu-cap2-h3-imgbox img {
    padding: 0 1rem;
    width: 14rem;
}

.tsu-cap2-h3-imgbox::before,
.tsu-cap2-h3-imgbox::after {
    content: '';
    background: #1f1f1f;
    height: 2px;
    width: 13%;
    vertical-align: middle;
    display: inline-block;
    border-radius: 30px;
}

.reward-example-h3 {
    border-left: 1rem solid #ccc;
    padding-left: 1rem;
}

.reward-example-h3-span {
    font-size: 2rem;
    color: #EA97AC;
}

.reward-example-h3-p01 {
    color: #EA97AC;
    font-size: 1.4rem;
    border-bottom: 1px dashed #ccc;
    margin-bottom: 1rem
}

.reward-example-h3-img {
    border: 1px solid #1f1f1f;
    border-radius: 1rem;
}

.reward-example-h3-p01-span {
    color: #1f1f1f;
    font-size: 1rem;
}

/*在宅追加分*/

.cap-h1-zai-box {
    position: relative;
}

.cap-h1-zai-box::after {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/zai-top-fukudashi.svg);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 10rem;
    height: 10rem;
    top: 1rem;
    right: -0.2rem;
}


.cap-h1-zai-box-img01,
.cap-h1-zai-box-img02,
.cap-h1-zai-box-img03 {
    position: absolute;
    transform: translateY(0%) translateX(0%);
    left: 1rem;
}

.cap-h1-zai-box-img01 {
    height: 8rem;
    width: 8rem;
    top: 0;
}

.cap-h1-zai-box-img02 {
    height: 8rem;
    width: 8rem;
    top: 8rem;
}

.cap-h1-zai-box-img03 {
    height: 12rem;
    width: 14rem;
    top: 15rem;
}

.fot-menu-zai-bg-flex02 {
    display: flex;
    justify-content: center;
    position: relative;
    z-index: 999;
    bottom: 0;
    margin: 0 1rem;
    top: -2rem;
}

.top-zai-und-text02 {
    color: #fff;
    background-color: #1f1f1f;
    text-align: center;
    font-size: 1rem;
    position: relative;
    margin-top: -5rem;
    line-height: 1.3;
    padding: 0.5rem;
}

.picup-baner-img {
    display: block;
    padding: 1rem;
}

.zai-caph2-img {
    border-radius: 1rem;
    box-shadow: 0px 3px 10px 6px #eee;
    border: 2px solid;
    width: 20rem;
    margin-top: 2rem;
}

.under_blue {
    background: linear-gradient(transparent 65%, #CBE1FF 50%);
}

.zai-what-chatlady-ul li {
    padding: 0.8rem;
    font-size: 1.4rem;
}

/*content*/

.cont-front-Choose-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    position: relative;
    margin: 8rem auto 0;
}

.cont-front-Choose-flex p {
    display: inline-block;
    position: absolute;
    font-size: 1.2rem;
    line-height: 1.3;
    font-weight: bold;
    text-align: center;
    color: #1f1f1f;
}

.cont-front-Choose-flex hr {
    border: 3px solid #EA97AC;
    border-radius: 11rem;
    position: absolute;
    width: 22rem;
    height: 22rem;
    top: 5%;
    left: 50%;
    transform: translateX(-50%);
    z-index: -30;
}

.front-Choose-box01a, .front-Choose-box02a, .front-Choose-box03a {
    position: relative;
}

.front-Choose-box01, .front-Choose-box02, .front-Choose-box03 {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transform: perspective(2px) translateZ(0);
    transform: perspective(2px) translateZ(0);
    -webkit-transition-duration: 0.3s;
    transition-duration: 0.2s;
    -webkit-transition-property: transform;
    transition-property: transform;
}

.front-Choose-box01, .front-Choose-box02, .front-Choose-box03 {
    display: inline-block;
    position: relative;
    width: 15rem;
    height: 15rem;
    left: 0;
    background-repeat: no-repeat;
    background-size: contain;
    box-shadow: 0px 3px 6px #00000029;
    border-radius: 7.5rem;
}

.front-Choose-box01 {
    animation: front-Choose-box01 2s infinite;
}

.front-Choose-box02 {
    animation: front-Choose-box01 3s infinite;
}

.front-Choose-box03 {
    animation: front-Choose-box01 2.5s infinite;
}

.front-Choose-box01 {
    background-image: url(/assets/images/tsuukin/img-circle01.webp);
    top: 12rem;
}

.front-Choose-box02 {
    background-image: url(/assets/images/tsuukin/img-circle02.webp);
    top: 12rem;
}

.front-Choose-box03 {
    background-image: url(/assets/images/tsuukin/img-circle03.webp);
    top: -17rem;
}

.front-Choose-box01a::before {
    position: absolute;
    content: "";
    background: url(/assets/images/other/kirakira001.svg) no-repeat;
    background-size: contain;
    top: 12rem;
    left: -1rem;
    width: 10rem;
    height: 15rem;
    z-index: -3;
}

.front-Choose-box01b::after {
    position: absolute;
    content: "";
    background: url(/assets/images/other/kirakira004.svg) no-repeat;
    background-size: contain;
    left: 23rem;
    width: 9rem;
    height: 14rem;
    top: -1rem;
    z-index: -3;
}

.front-Choose-box01c::before {
    position: absolute;
    content: "";
    background: url(/assets/images/other/kirakira002.svg) no-repeat;
    background-size: contain;
    top: -1rem;
    left: 6rem;
    width: 8rem;
    height: 11rem;
    z-index: -3;
}

.front-Choose-box03::before {
    display: inline-block;
    position: absolute;
    content: "";
    top: -4rem;
    left: 5.5rem;
    width: 4rem;
    height: 4rem;
    background: url(/assets/images/other/icon-crown01.svg) no-repeat;
    background-size: contain;
}

.front-Choose-box01c::after {
    position: absolute;
    content: "";
    background: url(/assets/images/other/kirakira003.svg) no-repeat;
    background-size: contain;
    top: 14rem;
    left: 15rem;
    width: 9rem;
    height: 11rem;
    z-index: -3;
}

.front-Choose-box03 p {
    top: 7.5rem;
    left: 2.5rem;
}

.front-Choose-box02 p {
    top: 7.5rem;
    left: 1.8rem;
}

.front-Choose-box01 p {
    top: 7.5rem;
    left: 1.8rem;
}

.front-Recommended-wrap {
    margin: 2rem 1rem 2rem;
    border-bottom: 1px solid #1f1f1f;
    padding-bottom: 2rem;
    padding-top: 2rem;
}

.front-Recommended-wrap-last {
    margin: 2rem 1rem 2rem;
    padding-bottom: 2rem;
    padding-top: 2rem;
}

.front-Recommended-box figure {
    float: left;
    margin: 0 2px 2px 0;
    shape-outside: circle();
}

.front-Recommended-box-m figure {
    float: right;
    margin: 0 0 2px 2px;
    shape-outside: circle();
}

.front-Recommended-box img, .front-Recommended-box-m img {
    object-fit: contain;
    width: 15rem;
    height: 15rem;
    position: relative;
}

.front-Recommended-box, .front-Recommended-box-m {
    margin: 0 auto;
}

.front-Recommended-box-div01 {
    display: block;
    padding-left: 12rem;
    text-align: center;
}

.front-Recommended-box-div02 {
    display: block;
    padding-right: 160px;
    text-align: center;
}

.front-Recommended-box-div01 h3, .front-Recommended-box-div02 h3 {
    margin: 3rem auto 2.6rem;
    text-align: center;
    position: relative;
    display: inline-block;
    color: #ff7600;
    font-weight: bold;
    font-size: 1.2rem;
}

.front-Recommended-box01::before, .front-Recommended-box03::before, .front-Recommended-box02::before {
    display: inline-block;
    position: absolute;
    content: "";
}

.front-Recommended-box01::before {
    top: -5rem;
    left: -5rem;
    width: 10rem;
    height: 5.5rem;
    background: url(/assets/images/content/front-student-text01.svg) no-repeat;
    background-size: contain;
}

.front-Recommended-box02::before {
    top: -4rem;
    left: 6rem;
    width: 6rem;
    height: 6rem;
    background: url(/assets/images/content/front-mature-text01.svg) no-repeat;
    background-size: contain;
}

.front-Recommended-box03::before {
    top: -5rem;
    left: -10rem;
    width: 10rem;
    height: 8rem;
    background: url(/assets/images/content/front-business-text01.svg) no-repeat;
    background-size: contain;
}

.front-Recommended-box-div01 h3::after, .front-Recommended-box-div02 h3::after {
    position: absolute;
    content: "";
    display: inline-block;
    top: 3rem;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    border-bottom: 2px solid #1f1f1f;
    font-size: 1.2rem;
}

.front-Recommended-p {
    padding-bottom: 1rem;
    max-width: 900px;
}

.front-workstyle-box-wrep {
    display: flex;
    justify-content: center;
    margin: 0 0.5rem;
}

.front-workstyle-box {
    border: 1px solid #1f1f1f;
    margin: 0.33rem 0.2rem;
    padding: 0.33rem;
}

.front-workstyle-box h4 {
    font-size: 1.33rem;
    text-align: center;
    color: #7DA4CB;
    font-weight: bold;
    border-bottom: 1px solid #1f1f1f;
    margin: 0;
}

.front-workstyle-box h4 span {
    font-size: .8rem;
    color: #1f1f1f;
    font-weight: 300;
}

.front-workstyle-box ul {
    padding: 0.33rem 0.33rem 0.33rem 0;
    margin: 0;
}

.front-workstyle-box li {
    font-size: 1rem;
    line-height: 1.4;
    list-style: none;
}

.front-workstyle-box img {
    height: 3.33rem;
    width: 100%;
    object-fit: cover;
    border: 1px solid #1f1f1f;
    display: block;
}

.front-workstyle-box a {
    display: block;
    color: #1f1f1f;
    font-weight: bold;
    position: relative;
    height: auto;
    text-align: right;
}

.front-workstyle-box a span {
    padding-right: 2rem;
}

.front-workstyle-box a::after {
    position: absolute;
    top: 3.5rem;
    right: 0;
    content: "";
    display: inline-block;
    width: 1.5rem;
    height: 1.5rem;
    background: url(/assets/images/other/poke-arrow-maru.svg) no-repeat;
    background-size: contain;
}

/*利用規約*/
.agreement dt, .privacy dt {
    border-bottom: 1px solid #707070;
    font-size: 1.2rem;
    font-weight: bold;
    padding-left: 1rem;
    line-height: 1.8;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.agreement dd, .privacy dd {
    margin: 1rem 2rem 3rem;
    line-height: 2.2;
    text-align: justify;
    font-size: 1.1rem;
}

.agreement dd, .privacy ul li {
    list-style-type: disc;
    margin-left: 2rem;
    line-height: 1.4;
    padding: 0.5rem 0;
}

.agreement, .privacy {
    padding: 0 2rem;
}

.bread-box_com {
    font-size: 0.6em;
    overflow: hidden;
    margin-top: 0;
    margin-left: 10px;
    padding: 0;
}

.bread-box_com li {
    display: inline-block;
}

.bread-box_com a {
    text-decoration: none;
    color: #333;
}

.bread-box_com>li+li:before {
    padding: 0 5px;
    color: #ccc;
    content: "/\00a0";
}

/*salary*/
/*エリアコンテンツ(背景色)*/


.sal-cont-pink,
.sal-cont-beige,
.sal-cont-purple,
.sal-cont-blue,
.sal-cont-green {
    padding: 5rem 0;
    position: relative;
    top: -4rem;
    margin-bottom: -4rem;
}

.sal-cont-green {
    padding: 3rem 0;
}

.sal-cont-beige {
    background: linear-gradient(to bottom, #FFF, #F7F0E5 30%, #F7F0E5 80%, #fff)no-repeat padding-box;
}

.sal-cont-pink {
    background: linear-gradient(to bottom, #FFF, #F7E8E5 30%, #F7E8E5 80%, #fff)no-repeat padding-box;
}

.sal-cont-purple {
    background: linear-gradient(to bottom, #FFF, #E6E5F7 30%, #E6E5F7 80%, #fff)no-repeat padding-box;
}

.sal-cont-blue {
    background: linear-gradient(to bottom, #FFF, #E5F2F7 30%, #E5F2F7 80%, #fff)no-repeat padding-box;
}

.sal-cont-green {
    background: linear-gradient(to bottom, #FFF, #EAF7E5 30%, #EAF7E5 80%, #fff)no-repeat padding-box;
}

.sal-p01 {
    border-top: 1px dashed;
    padding: 1rem 0;
    margin: 1rem;
}

.sal-h2-left {
    position: relative;
    left: 1rem;
    top: 2rem;
    width: 12rem;
}

.sal-h2-img {
    position: relative;
    right: 0;
    width: 16rem;
}

.sal-cont-beige .moz-Order,
.sal-cont-pink .moz-Order,
.sal-cont-purple .moz-Order,
.sal-cont-blue .moz-Order,
.sal-cont-green .moz-Order {
    text-align: left;
    font: bold 7rem/2rem "ヒラギノ丸ゴ ProN", ' Noto Sans JP';
    letter-spacing: -5px;
    color: #EA97AC;
    padding: 1.5rem;
    padding-left: 1rem;
    display: block;
    position: relative;
}

.sal-cont-beige .moz-under,
.sal-cont-pink .moz-under,
.sal-cont-purple .moz-under,
.sal-cont-blue .moz-under,
.sal-cont-green .moz-under {
    text-align: left;
    color: #333333;
    margin-top: -1rem;
    padding: 3rem;
    padding-left: 1rem;
    padding-right: 0;
    display: block;
    font-weight: bold;
    font-size: 1.2rem;
}

.sal-cont-beige .moz-img01,
.sal-cont-pink .moz-img02,
.sal-cont-purple .moz-img03,
.sal-cont-blue .moz-img04,
.sal-cont-green .moz-img05 {
    width: 100%;
    height: 0;
    padding-top: 100%;
    background-repeat: no-repeat;
    background-size: contain;
}

.sal-cont-beige .moz-img01 {
    background-image: url('/assets/images/salary/salary-img01-1.webp');
}

.sal-cont-pink .moz-img02 {
    background-image: url('/assets/images/salary/salary-img01-2.webp');
}

.sal-cont-purple .moz-img03 {
    background-image: url('/assets/images/salary/salary-img01-3.webp');
}

.sal-cont-blue .moz-img04 {
    background-image: url('/assets/images/salary/salary/salary-img01-4.webp');
}

.sal-cont-green .moz-img05 {
    background-image: url('/assets/images/salary/salary-img01-5.webp');
}

.sal-cont-flex {
    width: 100%;
    display: flex;
    align-items: center;
}

.sal-cont-flex-item2 {
    width: 20%;
}

.sal-cont-flex-item3 {
    width: 80%;
}

.sal-cont-blue .moz-maru {
    border-radius: 50%;
    height: 50px;
    width: 50px;
    line-height: 50px;
    background: #ffffff;
    border: solid 1px #333333;
    font-weight: 700;
    text-align: center;
    display: inline-block;
}


.sal-cont-green .moz-input {
    margin: 0 auto;
}

.sal-cont-green .moz-box {
    border: solid 1px #1F1F1F;
    padding: 1rem;
    position: relative;
    margin-top: 2rem;
    margin-bottom: 1rem;
}

.sal-cont-green .moz-box::before {
    content: '+特別報酬';
    position: absolute;
    top: -1rem;
    left: 1rem;
    background: #EAF7E5;
    font-weight: 700;
    padding: 0 0.5rem;
}

.sal-reward-tbody {
    border-top: 1px solid #EAF7E5;
    border-bottom: 1px solid #EAF7E5;
}

.sal-reward-tbody tr {
    border-left: 1px solid #EAF7E5;
    border-right: 1px solid #EAF7E5;
}

.sal-cont-purple .moz-whitebox01,
.sal-cont-purple .moz-whitebox02 {
    margin: 3rem 0;
    padding: 2rem;
    background: #FFFFFF;
    position: relative;
    box-shadow: 0px 3px 10px 6px #e0e0f0;
    border-radius: 0 2rem 0 0;
}

.sal-cont-purple .moz-subtitle01 {
    background: #BDB9FB;
    margin-left: -2rem;
    line-height: 1.5;
    width: 100%;
}

.moz-subtitle01 span {
    background: #E6E5F7;
    margin-left: 3rem;
    padding-left: 4rem;
    display: block;
    font-size: 1.8rem;
    color: #3B4043;
    font-weight: bold;
    position: relative;
    border: solid #E6E5F7;
}

.moz-subtitle01 span::before {
    content: url(/assets/images/salary/salary-img-10.webp);
    position: absolute;
    left: 0.5rem;
    top: -0.1rem;
}

.sal-cont-purple .moz-whitebox01::before {
    content: '日払い';
}

.sal-cont-purple .moz-whitebox02::before {
    content: "銀行振込";
}

.sal-cont-purple .moz-whitebox01::before,
.sal-cont-purple .moz-whitebox02::before {
    top: -1rem;
    background: #E6E5F7;
    position: absolute;
    padding: 0.3rem 1rem;
    font-weight: 700;
}

.moz-color_orange_b {
    font-weight: bold;
    color: #EA97AC;
    font-size: 1.257rem;
}

.sal-chat {
    background-color: #fff;
    padding: 1rem 0.5rem;
    border: 1px dashed #1f1f1f;
    border-radius: 1rem;
}

.sal-h4 {
    border: 1px dashed;
    text-align: center;
    display: inline-block;
    padding: 0.5rem 2rem;
    border-radius: 1rem;
    margin: 0;
    background-color: #fff;
}

.sal-cont-flex-item-w-left,
.sal-cont-flex-item-w-rigft,
.sal-cont-flex-item-w-lefted,
.sal-cont-flex-item-w-rigfted {
    background: #ffffff;
    width: 50%;
    border: solid 1px #333333;
    padding: 0.3rem;
    text-align: center;
    font-size: 1rem;
}

.sal-cont-flex-item-w-left {
    border-right: none;
    border-bottom: none;
}

.sal-cont-flex-item-w-rigft {
    border-bottom: none;
}

.sal-cont-flex-item-w-lefted {
    border-right: none;
}

.sal-cont-flex-item-w-rigfted {
    content: '';
}

.sal-cont-blue .moz-comparison01,
.sal-cont-blue .moz-comparison02 {
    position: relative;
    display: block;
    padding-left: 4rem;
    margin-bottom: 0.5rem;
    line-height: 1.2;
    font-size: 1rem;
}

.sal-cont-blue .moz-comparison01::before {
    background-image: url(/assets/images/salary/salary-img-14.webp);
}

.sal-cont-blue .moz-comparison02::before {
    background-image: url(/assets/images/salary/salary-img-15.webp);
}

.sal-cont-blue .moz-comparison01::before,
.sal-cont-blue .moz-comparison02::before {
    left: 0.3rem;
    top: -1.5rem;
    position: absolute;
    content: '';
    display: inline-block;
    width: 4rem;
    height: 4rem;
    background-repeat: no-repeat;
    background-size: contain;
    vertical-align: middle;
}

.sal-tokubetu-dl dt {
    font-size: 1.2rem;
    font-weight: bold;
    margin-left: 2rem;
    margin-top: 1rem
}

.sal-tokubetu-dl dd {
    margin: 0 1rem;
    border: 1px dashed;
    padding: 0.5rem;
    font-size: 1rem;
    border-radius: 1rem;
}

.sal-simulat-ind-p {
    font-size: 1rem;
    line-height: 1.4;
}

.sal-cont-flex-item {
    width: 50%;
}

.sal-bg01, .sal-bg02 {
    background-color: #eee;
}

.sal-bg01 {
    border-radius: 1rem 0 0 0;
}

.sal-bg02 {
    border-radius: 0 1rem 0 0;
}

.span-strong {
    color: #E87C97;
    font-weight: bold;
    font-size: 1.3rem;
    padding: 0.5rem;
    line-height: 1.4;
}

/*merit*/
.merit-bg-pink_dot {
    padding: 0 2rem;
    background-image: radial-gradient(#E87C97 10%, transparent 20%);
    background-size: 0.7rem 0.7rem;
}

.merit-bg-blue_dot {
    padding: 0 2rem;
    background-image: radial-gradient(#5286CE 10%, transparent 20%);
    background-size: 0.7rem 0.7rem;
}

.merit-bg-fff {
    background-color: #fff;
    padding: 0 1rem;
    margin: 0 auto;
}

.img-merit {
    padding-bottom: 1rem;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);

}

.img-merit-p {
    text-align: center;
    line-height: 2.6;
}

.p-merit-underyellow {
    letter-spacing: 4px;
    background: linear-gradient(transparent 50%, #FFFFC2 50%);
    font-size: 1.3rem;
    font-weight: bold;
}

.maru {
    border-radius: 0 0 50% 50%;
    border: solid 1px #333333;
    height: 7rem;
    width: 22rem;
    border-top: none;
    border-left: none;
    border-right: none;
    position: relative;
    top: -4rem;
    margin-bottom: -2rem;
}

.other-box {
    margin: 2rem auto;
    text-align: center;
    background-color: #eee;
    border-radius: 2rem;
    padding: 8rem 2rem 3rem;
}

.box-identity-text .moz-p {
    border: 1px solid #1f1f1f;
    padding: 1rem;
    border-radius: 1rem;
    position: relative;
    background-color: #eee;
    line-height: 1.6;
}

.contents-merit2 {
    margin: 0 auto;
    padding: 0 1rem;
    margin: 1rem 2rem;
}

.p-identity {
    font-size: 1.3rem;
    font-weight: 600;
    position: relative;
    text-align: center;
    margin: 2rem 0;
}

.p-identity>span {
    display: inline-block;
    position: relative;
}

.p-identity>span::before {
    position: absolute;
    content: url(/assets/images/merit/merit-img13-1.webp);
    left: -3rem;
}

.p-identity>span::after {
    position: absolute;
    content: url(/assets/images/merit/merit-img13-2.webp);
    right: -3rem;
}

.p-identity2 {
    padding-left: 1rem;
    margin: 1rem auto;
    border-left: solid 0.5rem #E87C97;
    margin-bottom: 0.5rem;
    font-weight: bold;
    line-height: 1.4;
    font-size: 1.1rem;
}

.box-identity {
    display: inline-block;
    margin-bottom: 2rem;
    border-bottom: 1px dashed;
}

.box-identity .face {
    float: left;
    margin-right: -9rem;
    width: 6rem;
}

.text-merit-border_side {
    font-size: 1.4rem;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 0 2rem;
    position: relative;
}

.text-merit-border_side-span,
.text-merit-border_side-zai-span {
    position: relative;
}

.text-merit-border_side-span::before,
.text-merit-border_side-zai-span::before {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;

    background-repeat: no-repeat;
    transform: translateY(-50%) translateX(-50%);

}

.text-merit-border_side-span::before {
    background-image: url(/assets/images/area-cp/tu-img-icon.svg);
    width: 5rem;
    height: 6rem;
    top: -3rem;
    left: 50%;
}

.text-merit-border_side-zai-span::before {
    background-image: url(/assets/images/area-cp/zai-img-icon.svg);
    width: 5rem;
    height: 4rem;
    top: -3rem;
    left: 50%;
}

.text-merit-border_right,
.text-demerit-border_right,
.text-merit-border_side::before {
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: left;
    margin: 0 0.5rem 0 0;
}

.text-merit-border_side::after,
.text-merit-border_side::before {
    border-top: 1px solid #333333;
    content: "";
    width: 10%;

}

.text-merit-border_side::after {
    margin: 0 0 0 0.5rem;
}

.box-identity-text {
    display: inline-block;
    margin: 0 0 0 6rem;
    padding: 0.6rem 1.1rem;
    border-radius: 1rem;
}

.box-identity-text .moz-p:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0%;
    margin-top: -7px;
    margin-left: -28px;
    border: 8px solid transparent;
    border-right: 20px solid #eee;
    z-index: 2;
}

.box-identity-text .moz-p:after {
    content: "";
    position: absolute;
    top: 50%;
    left: 0%;
    margin-top: -8px;
    margin-left: -31px;
    border: 9px solid transparent;
    border-right: 21px solid #1f1f1f;
    z-index: 1;
}

.p-merit-underblue {
    background: linear-gradient(transparent 0%, #d4ecff 0%);
}

.merit-h3-img-tsu,
.merit-h3-img-zai,
.demerit-h3-img-tsu,
.demerit-h3-img-tsu {
    position: relative;
}

.merit-h3-img-tsu::before,
.demerit-h3-img-tsu::before,
.merit-h3-img-zai::after,
.demerit-h3-img-zai::after {
    content: "";
    position: absolute;
    transform: translate(-50%, -50%);
    background-size: contain;
    background-repeat: no-repeat;
    width: 14rem;
    height: 8rem;
}

.merit-h3-img-tsu::before {
    background-image: url(/assets/images/area-cp/merit-h3-tsu.svg);
    right: -6rem;
    top: 3rem;
}

.demerit-h3-img-tsu::before {
    background-image: url(/assets/images/area-cp/demerit-h3-tsu.svg);
    right: -6rem;
    top: 3rem;
}

.merit-h3-img-zai::after {
    background-image: url(/assets/images/area-cp/merit-h3-zai.svg);
    left: 8rem;
    top: 4rem;
}

.demerit-h3-img-zai::after {
    background-image: url(/assets/images/area-cp/demerit-h3-zai.svg);
    left: 8rem;
    top: 4rem;
}

.merit-h4-box h4,
.demerit-h4-box h4 {
    position: relative;
    font-weight: bold;
    margin: 3rem 0 1rem;
    margin-left: 1rem;
    border-bottom: 1px dashed;
    padding-bottom: .5rem;
}

.merit-h4-box p,
.demerit-h4-box p {
    padding-left: 1rem;
}

.merit-h4-box h4:before,
.demerit-h4-box h4::before {
    content: "";
    position: absolute;
    display: inline-block;
    background-size: contain;
    width: 6.5rem;
    height: 2.5rem;
    background: url(/assets/images/area-cp/text-merit.svg) no-repeat;
    top: -2.3rem;
    left: -1.5rem;
    transform: translate(-0%, -0%);
}

.merit-h4-box h4:before {
    background: url(/assets/images/area-cp/text-merit.svg) no-repeat;
}

.demerit-h4-box h4::before {
    background: url(/assets/images/area-cp/text-demerit.svg) no-repeat;
}

.img-merit>img {
    object-fit: cover;
}

.other-h5 {
    font-size: 1.2rem;
    padding: 0.5rem;
    margin: 2rem 0 0.5rem;
    font-weight: bold;
    background-color: #fff;
    border-radius: 3rem;
    box-shadow: 0px 0px 8px rgb(25 25 25 / 10%);
}

.fot-menu-p-flex {
    display: block;
    align-items: center;
}


.pokecom_meri_matome_point {
    margin: 0 2rem;
}

/**trial**/
.tri-h2-under-box01,
.tri-h2-under-box02 {
    position: relative;
    margin-bottom: 2rem;
}

.tri-h2-under-box01 {
    padding-left: 10rem;
    margin-top: 3rem;
}

.tri-h2-under-box02 {
    padding-right: 10rem;
}

.tri-h2-under-box01::before,
.tri-h2-under-box02::before {
    position: relative;
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    background-repeat: no-repeat;
}

.tri-h2-under-box02::before {
    background-image: url(/assets/images/area-cp/trial-img02.webp);
    width: 11rem;
    height: 25rem;
    right: -1rem;
    top: -2rem;
    transform: translate(0%, 0%);
}

.tri-h2-under-box01::before {
    background-image: url(/assets/images/area-cp/trial-img01.webp);
    width: 15rem;
    height: 28rem;
    left: -3rem;
    top: -4rem;
    transform: translate(0%, 0%);
}

.tri-flow-box-01::before,
.tri-flow-box-02::before,
.tri-flow-box-03::before,
.tri-flow-box-04::before,
.tri-flow-box-05::before {
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    width: 6rem;
    height: 6rem;
    background-repeat: no-repeat;
    left: -1rem;
    top: 0;
    transform: translate(-0%, -0%);
}

.tri-flow-box-01::before {
    background-image: url(/assets/images/area-cp/tri-step1.svg);
}

.tri-flow-box-02::before {
    background-image: url(/assets/images/area-cp/tri-step2.svg);
}

.tri-flow-box-03::before {
    background-image: url(/assets/images/area-cp/tri-step3.svg);
}

.tri-flow-box-04::before {
    background-image: url(/assets/images/area-cp/tri-step4.svg);
}

.tri-flow-box-05::before {
    background-image: url(/assets/images/area-cp/tri-step5.svg);
}

.tri-flow-box-01,
.tri-flow-box-02,
.tri-flow-box-03,
.tri-flow-box-04,
.tri-flow-box-05 {
    position: relative;
    padding: 1rem;
    margin-bottom: 3rem;
}

.tri-h3 {
    font-size: 1.5rem;
    margin: 1rem 0 2rem 4rem;
    padding-left: 1rem;
    line-height: 1.4;
    border-bottom: 1px solid;
}


.tri-h3-02 {
    border: 1px dashed;
    padding: 0.5rem;
    margin: 0.5rem 0;
    text-align: center;
    font-weight: bold;
    background-color: #fff1c2;
}

.moz-under_orange {
    background: linear-gradient(transparent 0%, #fff1c2 0%);
}

/**よくある質問**/
.question-content-search {
    box-sizing: border-box;
    position: relative;
    display: block;
    padding: .5rem;
    width: 100%;
    margin: 0 auto;
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    overflow: hidden;
    background-color: #eee;
}

.question-content-search input[type="moz-text"] {
    border: none;
    height: 2em;
    font-size: 1rem;
    background-color: #eee;
    padding-left: 3rem;
    width: 90%;
}

input[type="checkbox"] {
    display: none;
}

.question-content-table {
    width: 90%;
    margin: 3rem auto 3rem;
    text-align: left;
}

.question-content-td {
    font-weight: bold;
    font-size: 0.8rem;
    width: 30%;
    text-align: center;
    margin: 0.5rem 0.45rem;
    display: block;
    float: left;
    cursor: pointer;
    border-radius: 0.5rem;
    background-color: #DDD2E0;
    padding: 0.5rem 0;
    font-size: 1rem;
}

.question-ki-th {
    border-left: 5px solid #E87C97;
    padding-left: 1rem;
    font-size: 1.14rem;
}

.question-content .moz-Q {
    margin-bottom: 2rem;
    padding-left: 3rem;
    position: relative;
}

.question-content .moz-A {
    padding-bottom: 2rem;

    padding-left: 3rem;
    position: relative;
    line-height: 2;
    margin-left: 0;
}

.question-content .moz-Q::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/icon-q.svg);
    background-repeat: no-repeat;
    width: 1.5rem;
    height: 1.5rem;
    margin-left: 0;
    left: 0.5rem;
    top: -0.2rem;
}

.question-content .moz-text2, .question-content .moz-text {
    position: relative;
}

.question-content .moz-text2 {
    font-size: 1.4rem;
    font-weight: bold;
}

.question-content .moz-text {
    font-size: 1;
}

.question-content .moz-A::before {
    content: "";
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/icon-a.svg);
    background-repeat: no-repeat;
    width: 1.5rem;
    height: 1.5rem;
    margin-left: 0;
    left: 0.5rem;
    top: 0.2rem;
}

.question-content .moz-link {
    color: #ffffff;
    bottom: 0;
    right: 0;
    z-index: 1;
    line-height: 1.5;
    font-size: 0.8rem;
    margin-bottom: 0.7rem;
}

.question-content .moz-link, .question-content .moz-text:after {
    content: "";
    position: absolute;
    padding: 0.3rem 0.5rem;
    opacity: 0.8;
    border-radius: 3rem;
}

.qa-box {
    padding: 0 1rem;
    border-bottom: 1px solid #707070;
    margin-bottom: 3rem;
}

/*プライバシー*/
.optaut-p-a {
    text-decoration: none;
    display: inline-block;
    background-color: #EA97AC;
    padding: 0.2rem 1rem;
    border-radius: 2px;
    color: #1f1f1f;
}

/*会社概要*/
.company_table {
    border-collapse: collapse;
    margin: 3rem auto;
    color: #1f1f1f;
}

.company_table td,
.company_table th {
    border: 1px solid #1f1f1f;
    padding: 1.5rem 0.5rem;
    font-size: 1.1rem;
}

.sim-dl {
    margin: 3rem 0 2rem;
}

.sim-dl .dt01,
.sim-dl .dt02,
.sim-dl .dt03,
.sim-dl .dt04,
.sim-dl .dt05 {
    padding-left: 8rem;
    letter-spacing: .1rem;
    font-weight: bold;
    position: relative;
}

.sim-dl .dt01::before,
.sim-dl .dt02::before,
.sim-dl .dt03::before,
.sim-dl .dt04::before,
.sim-dl .dt05::before {
    content: "";
    position: absolute;
    left: 4rem;
    margin-top: -5px;
}

.sim-dl .dt01::before {
    background: url(/assets/images/area-cp/sim-01.webp);
    background-size: contain;
    background-repeat: no-repeat;
    width: 4rem;
    height: 4rem;
    top: -2rem;
}

.sim-dl .dt02::before {
    background: url(/assets/images/area-cp/sim-02.webp);
    background-size: contain;
    background-repeat: no-repeat;
    width: 4rem;
    height: 4rem;
    top: -2rem;
}

.sim-dl .dt03::before {
    background: url(/assets/images/area-cp/sim-03.webp);
    background-size: contain;
    background-repeat: no-repeat;
    width: 3.5rem;
    height: 3rem;
    top: -1rem;
}

.sim-dl .dt04::before {
    background: url(/assets/images/area-cp/sim-04.webp);
    background-size: contain;
    background-repeat: no-repeat;
    width: 3.5rem;
    height: 3rem;
    top: -1rem;
}

.sim-dl .dt05::before {
    background: url(/assets/images/area-cp/sim-05.webp);
    background-size: contain;
    background-repeat: no-repeat;
    width: 3.5rem;
    height: 3rem;
    top: -1rem;
}

.sim-dl dd {
    margin: 0 auto 1rem;
}

.sim-dl dd select {
    display: block;
    width: 80%;
    height: 3rem;
    padding: 0.5rem 0 0.5rem 1rem;
    font-size: 1.1rem;
    color: #1f1f1f;
    background-color: #fff;
    border: 1px solid #1f1f1f;
    border-radius: 1rem;
    margin: 0 auto 0 3rem;
}

.sim-dl .sim-matome {
    display: block;
    width: 60%;
    height: 3rem;
    padding: 1rem;
    color: #333333;
    background-color: #FDFFC3;
    border: 1px solid #1f1f1f;
    border-radius: 1rem;
    margin-right: 0.5rem;
    font-size: 1.4rem;
    letter-spacing: 2px;
    font-weight: bold;
    margin-left: 3rem;
}

.rew-box01 {
    display: flex;
    margin-left: 0 !
}

.rew-en {
    line-height: 3;
    font-size: 1.4rem;
    font-weight: bold;
}

/*area-cp02から移動*/
.fot-menu-bg-flex {
    display: block;
    justify-content: center;
    z-index: 999;
    bottom: 0;
    margin: 1rem;
}

.fot-menu-bg-flex02 {
    display: flex;
    position: relative;
    justify-content: center;
    z-index: 0;
    bottom: 0;
    margin: 1rem;
    padding: 0.5rem;
    top: 1.5rem;
}

.fot-menu-p-box01, .fot-menu-p-box02, .fot-menu-p-box04 {
    position: relative;
    margin-left: 4rem;
}

.fot-menu-p-span01, .fot-menu-p-span02, .fot-menu-p-span03, .fot-menu-p-span04 {
    font-size: 1.5rem;
    height: 2.5rem;
    font-weight: bold;
    line-height: 2;
}

.fot-menu-p-span05 {
    font-size: 1.1rem;
    display: block;
    padding-left: 3rem;
    margin-top: -1rem;
    color: #ffc;
}

.fot-menu-p-span03, .fot-menu-p-span04 {
    color: #fff;
}

.fot-menu-p-span01, .fot-menu-p-span02 {
    color: #fff;
}



.fot-menu-p-box01::after, .fot-menu-p-box02::after {
    content: "";
    background-size: contain;
    background-image: url(/assets/images/area-cp/arrow01.svg);
    background-repeat: no-repeat;
    width: 1.6rem;
    height: 1.6rem;
    top: 0.7rem;
    left: 20rem;
    display: inline-block;
    position: absolute;
}


.fot-menu-bg01, .fot-menu-bg02, .fot-menu-bg03 {
    border: 4px solid #fff;
    border-radius: 2rem;
    box-shadow: 0px 3px 10px rgb(0 0 0 / 30%);
    padding: 0.2rem 0;
    width: 28rem;
    display: block;

}

.fot-menu-bg04 {
    border: 4px solid #fff;
    border-radius: 0 2rem 2rem 0;
    box-shadow: 0px 3px 10px rgb(0 0 0 / 30%);
    padding: 0.2rem 0;
    width: 50%;
    display: block;

}

.fot-menu-bg05 {
    border: 4px solid #fff;
    border-radius: 2rem 0 0 2rem;
    box-shadow: 0px 3px 10px rgb(0 0 0 / 30%);
    padding: 0.2rem 0;
    width: 50%;
    display: block;

}

.fot-menu-bg01, .fot-menu-bg02, .fot-menu-bg05 {
    height: 4rem;
}

.fot-menu-bg01, .fot-menu-bg03, .fot-menu-bg05 {
    background-color: #FF5D86;
    height: 5rem;
    margin: 0.5rem auto;
}

.fot-menu-bg02 {
    background-color: #5D97E6;
    margin: 1.5rem auto 1.5rem;
}

.fot-menu-bg04 {
    background-color: #06c755;
    height: 5rem;
    margin: 0.5rem auto;
}

/*area-cp02から移動 end*/


/*在宅修正*/
.cap-h1-zai-box-zai {
    position: relative;
}

.top-zai-und-text-zai {
    color: #fff;
    background-color: #1f1f1f;
    text-align: justify;
    font-size: 1rem;
    position: relative;
    margin-top: -1rem;
    line-height: 1.3;
    padding: 0.5rem 1rem 0.5rem 9.5rem;
}

.top-zai-und-text-zai::before {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/siki-ichiji-dairiten.webp);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 9rem;
    height: 9rem;
    top: -2rem;
    left: 0.8rem;
}

.top-zai-und-text-zai::after {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/beg-icon01-piyo.svg);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 5rem;
    height: 5rem;
    top: -5rem;
    right: 5rem;
}

.fot-menu-zai {
    position: relative;
    top: -2rem;
}




.zai-tsu-text-link {
    text-align: center;
    display: block;
    text-decoration: underline;
}

@media (min-width: 728px) {

    /* .fot-menu {
        width: 728px;

    }

    .fot-menu02 {
        left: 0;
    }

    .fot-menu03, .fot-menu04 {
        left: 10%;
        transform: translate(-50%, 100%);
    }*/


    /*.top-mov01 {
          height: 135vh;
        }*/

    .disp-pc {
        display: block;
    }

    .disp-sp {
        display: none;
    }

    .img-merit {
        margin-right: 0;
        margin-left: 0;
    }

    .tsu-link02 {
        right: -20rem;
    }

    .cap-h1-zai-box-zai::after {
        width: 20rem;
        height: 13rem;
        top: 6rem;
    }

    .top-zai-und-text-zai::after {
        width: 7rem;
        height: 6rem;
        top: -6.5rem;
        right: 6rem;
    }


}

/*統合ボタン用*/
.fot-menu-p-box07 {
    position: relative;
    margin-left: 0;
}

.fot-menu-p-flex07 {
    display: block;
    /* align-items: center; */
    text-align: center;
    line-height: 1.4;
}

.fot-menu-p-span06 {
    font-size: .9rem;
    display: block;
    margin-top: -1rem;
    color: #ffc;
    position: relative;
    top: -0.5rem;
    padding-left: 0;
}

.fot-menu-p-span07 {
    font-size: 1.8rem;
    /* height: 2.5rem; */
    font-weight: bold;
    line-height: 2.3;
    text-align: center;
    position: relative;
    top: -0.5rem;
}

.fot-menu-p-span08 {
    font-size: 1.5rem;
    color: #fff;
    font-weight: bold;
    line-height: 2.8;
    text-align: center;
    position: relative;
}

.fot-menu-p-span09 {
    font-size: 1.8rem;
    color: #fff;
    font-weight: bold;
    line-height: 2.2;
    text-align: center;
    position: relative;
    top: -0.5rem;
}

.fot-menu-p-span10 {
    font-size: 1.5rem;
    color: #fff;
    font-weight: bold;
    line-height: 2.8;
    text-align: center;
    position: relative;
}

.fot-menu-p-span07 {
    color: #fff;
}


/*tell*/
.t-lady-title {
    font-size: 1.57rem;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
    padding-bottom: 2rem;
}

.t-lady-title-span,
.t-lady-title-h3-span {
    position: relative;
    display: inline-block;
    margin: 0 auto;
}

.moz-underpink {
    background: linear-gradient(transparent 65%, #FFE8E8 50%);
    font-weight: 700;
}

.t-lady-title-span::before,
.t-lady-title-h3-span::before {
    position: absolute;
    content: url(/assets/images/tell/merit-img13-2.svg);
    left: -4rem;
    top: -20%;
}

.t-lady-title-span::after,
.t-lady-title-h3-span::after {
    position: absolute;
    content: url(/assets/images/tell/merit-img13-1.svg);
    right: -4rem;
    top: -20%;
}

.tell-t-text {
    padding-top: 5rem;
    font-size: 1.2rem;
    line-height: 2;
    font-weight: 700;
    position: relative;
    text-align: center;
    padding-bottom: 2rem;
}

.tell-t-text::before {
    content: '';
    display: inline-block;
    position: absolute;
    vertical-align: middle;
    background-size: contain;
    background-image: url(/assets/images/tell/tel-img-2.webp);
    width: 80px;
    height: 80px;
    background-repeat: no-repeat;
    left: 50%;
    top: 1rem;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}



.wid100 {
    width: 100%;
}

/*在宅新料率　2022/12/1適用*/
.Rate-change-inner {
    margin: 3rem 2rem;
}

.Rate-change-h3 {
    font-size: 1.5rem;
    margin: 1rem 0 0;
    padding-left: 1rem;
    border-left: 11px double #FFA2B9;
    line-height: 1.4;
}

.Rate-change-h3-span {
    font-size: .9rem;
    font-weight: normal;
}

.Rate-change-h4,
.Rate-cp-h4 {
    position: relative;
    font-size: 1.4rem;
    line-height: 1.4;
    font-weight: bold;
    padding-left: 2rem;
    letter-spacing: 1px;
    margin: 4rem 0 2rem 2rem;
    display: inline-block;
}

.Rate-change-h4::before,
.Rate-cp-h4::before {
    border-radius: 2rem;
    padding: 0.5rem 1rem;
    position: absolute;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 0;
    font-size: 1.4rem;
    font-weight: bold;
    background-color: #FFA2B9;
    color: #fff;
}

.Rate-change-h4::before {
    content: "1";
}

.Rate-cp-h4::before {
    content: "2";
}


.Rate-change-small,
.Rate-cp-small {
    position: relative;
    font-size: .9rem;
    padding-left: 1rem;
    display: block;
    margin-top: 1rem;
    line-height: 1.2;
}

.Rate-change-small::before,
.Rate-cp-small::before {
    content: "※";
    margin-left: -1rem;
}

.Rate-change-box-flex {
    display: flex;
    justify-content: space-between;
}

.Rate-change-box-left {
    width: 44%;
    position: relative;
    z-index: 10;
}

.Rate-change-box-left::after {
    content: "";
    position: absolute;
    width: 1rem;
    height: 2em;
    right: -0.5rem;
    top: 12rem;
    background-size: contain;
    transform: translate(50%, 50%);
    background-image: url(/assets/images/rate/icon-tri.svg);
    background-repeat: no-repeat;
}

.Rate-change-box-left>li:first-of-type,
.Rate-change-box-right>li:first-of-type {
    text-align: center;
}

.Rate-change-box-right {
    width: 54%;
    position: relative;
}


.Rate-change-box-right-dd01-flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.3rem 0;
}

.fw-b {
    font-weight: bold;
}

.Rate-change-box-left-dl,
.Rate-change-box-right-dl {
    background-color: #FFFCEB;
    border-radius: 2rem;
    padding: 1rem;
    height: 24rem;
    border: 1px solid #FFA2B9;
    margin: 0;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, .2));
}

.Rate-cp-box-dl {
    background-color: #FFFCEB;
    border-radius: 2rem;
    padding: 1rem;
    border: 1px solid #FFA2B9;
    margin: 0;
    filter: drop-shadow(0px 0px 10px rgba(0, 0, 0, .2));
}

.Rate-change-box-right-dl,
.Rate-change-box-right-dd01,
.Rate-change-box-right-dd02 {
    margin-left: 0;
}

.Rate-change-box-right-dt,
.Rate-change-box-left-dt {
    font-weight: bold;
    font-size: 1.3rem;
    border-bottom: 2px solid #1f1f1f;
    padding: 1rem 0;
    text-align: center;
}

.fs-15 {
    font-size: 1.5rem;
}

.Rate-change-box-left-dd01 {
    margin-left: 0;
    height: 12rem;
    padding: 6rem 0;
    text-align: center;
}

.Rate-change-box-left-dd02,
.Rate-change-box-right-dd02 {
    margin-left: 0;
    font-size: 1rem;
    font-weight: normal;
    border-top: 1px dashed #1f1f1f;
    padding-top: 0.5rem;
}

.Rate-change-p01,
.Rate-cp-p01 {
    font-size: 1.5rem;
    margin: 2rem 0 0;
    line-height: 1;
}


.Rate-change-p02 {
    line-height: 1;
    padding: 0.5rem 1rem;
    background-color: #FFA2B9;
    border: 1px solid #1f1f1f;
    border-radius: 1rem;
    color: #fff;
    display: inline-block;
    position: relative;
}

.Rate-change-p02::before {
    color: #1f1f1f;
    content: "例";
    position: absolute;
    left: -2rem;
    font-size: 1.5rem;
    top: 1.5rem;

}

.Rate-change-p02-flex {
    display: flex;
}

.Rate-change-p02-flex-p02 {
    padding-left: 2rem;
    position: relative;
}

.Rate-change-p02-flex-p02::before {
    content: "";
    position: absolute;
    width: 1rem;
    height: 1rem;
    left: 0.7rem;
    top: 0.7rem;
    background-size: contain;
    background-image: url(/assets/images/rate/icon-tri-02.svg);
    background-repeat: no-repeat;
}

.Rate-change-p02-box {
    padding-bottom: 1rem;
    margin-top: 1rem;
    padding-left: 2rem;
    border-top: 1px dashed;
    padding-top: 1rem;
    border-bottom: 1px dashed;
}

.Rate-cp-box-dt {
    font-size: 1rem;
    border-bottom: 1px solid #1f1f1f;
    padding-bottom: 0.5rem;
    text-align: justify;
}

.Rate-cp-box-dd01 {
    text-align: center;
    margin: 0;
    font-size: 2.5rem;
    padding: 3rem 6px;
    line-height: 1.2;
}

.border-b {
    border-bottom: 1px dashed #1f1f1f;
    width: 100%;
    height: 1px;
    margin: 1rem 0;
}

.mgt-1pdt1 {
    margin-top: -1rem;
    padding-top: 1rem;
}



.Rate-change-cp {
    background-color: #f0f2f2;
    padding: 1;
    margin: 1rem 0;
    padding-bottom: 1rem;
}

/**2023/0215_23区強化LP様追加css********************************************************************/
@font-face {
    font-family: "マキナス";
    src: url(/assets/fonts/Makinas-4-Flat.otf);
    font-display: swap;
}


.h2-makinasu {
    letter-spacing: .2rem;
    font-family: "マキナス";
    font-weight: 100;
    margin: 0;
    line-height: 1.5;
}

.area-h1 {
    position: relative;
}

.area-h1-name, .area-h1-name-3, .area-h1-name-4 {
    position: absolute;
    background-color: #FFF5D7;
    color: #1f1f1f;
    text-align: center;
    top: 18rem;
    left: 5rem;
    height: 3.5rem;
    display: flex;
    align-items: center;
    transform: translate(-50%, -50%)rotate(-26deg);
}

.area-h1-name {
    font-size: 2.5rem;
    padding: 0.5rem 0.5rem;
}

.area-h1-name-3 {
    font-size: 1.7rem;
    padding: 0.5rem 0.5rem;
}

.area-h1-name-4 {
    font-size: 1.5rem;
    padding: 0.5rem 0.2rem;
}

@media (min-width: 728px) {
    .area-h1-name, .area-h1-name-3, .area-h1-name-4 {
        top: 22.8rem;
        left: 6.45rem;
    }

    .area-h1-name {
        font-size: 2.8rem;
        padding: 2.3rem 1rem;
        height: 3.5rem;
    }

    .area-h1-name-3 {
        font-size: 2.2rem;
        padding: 0.5rem 0.5rem;
        height: 4rem;
    }

    .area-h1-name-4 {
        font-size: 1.9rem;
        padding: 0.5rem 0.2rem;
        height: 4rem;
    }
}

.top-tu-h2-uep01 {
    text-align: center;
    font-size: 1.3rem;
    line-height: 1.3;
}

.top-tu-h2-uep02 {
    background-color: #fff;
    border: 1px solid #1f1f1f;
    border-radius: 2rem;
    padding: .3rem;
    text-align: center;
    font-size: 1.5rem;
}

.top-tu-bg02 {
    background-color: #FFEBEB;
}

.top-tu-area-img {
    margin-bottom: 0;
    padding-bottom: 0;
    display: block;
}

.top-tu-h2-area-box {
    padding: 0 1rem 1rem;
    text-align: center;
}

.area-hourlywage-dl {
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.area-hourlywage-dl-dt {
    background: linear-gradient(transparent 55%, #FFFF33 50%);
    display: inline-block;
}

.area-hourlywage-dl-dd {
    font-size: 4rem;
    color: #FF5D86;
    margin: 0;
    display: inline-block;
    line-height: 1.2;
    font-weight: bold;

}

.area-hourlywage-zaitaku-box {
    border: 1px solid #1f1f1f;
    border-radius: 2rem;
    padding: 1rem 0 4rem;
    margin: 6rem 0;
}

.area-hourlywage-tr {
    border-bottom: 1px solid #1f1f1f;
}

.area-hourlywage-tr:last-of-type {
    border-bottom: none;
}

.area-hourlywage-tr>.area-hourlywage-td {
    padding: 1rem;
    width: 50%;
    text-align: center;
}

.area-hourlywage-tr>.area-hourlywage-td:first-of-type {
    border-right: 1px solid #1f1f1f;
}

.area-hourlywage-zaitaku-tr {
    border-bottom: 1px dashed #1f1f1f;
}

.area-hourlywage-zaitaku-tr:last-of-type {
    border-bottom: none;
}

.area-hourlywage-zaitaku-tr>.area-hourlywage-zaitaku-td {
    padding: 1rem 1rem 1rem 0;
    width: 50%;
    text-align: left;
}

.area-hourlywage-zaitaku-tr>.area-hourlywage-zaitaku-td:first-of-type {
    text-align: right;
    padding: 1rem 1rem 1rem 0;
}

.trial-h3 {
    position: relative;
    display: inline-block;
    margin: 2rem 0 0;
    padding-left: 2rem;
}

.trial-h3::before {
    content: "";
    position: absolute;
    background-size: contain;
    transform: translate(-50%, 100%);
    background-image: url(/assets/images/area-cp/pokeko-icon01.svg);
    background-repeat: no-repeat;
    width: 2rem;
    height: 2rem;
    left: 0.5rem;
    top: -2.2rem;
}

.trial-h3-box {
    border: 1px solid #1f1f1f;
    border-radius: 2rem;
    padding: 1rem;
}

.under-bar {
    border-bottom: 1px dashed #1f1f1f;
    padding: 1rem 0;
    margin-bottom: 1rem;
}

.area-kikou-dt {
    text-align: center;
    margin: 3rem 0 1rem;
    border-bottom: 1px dashed #1f1f1f;
    padding-bottom: 0.5rem;
}

.area-kikou-dd {
    margin: 0;
}

.area-kikou-ul {
    display: flex;
    justify-content: center;
}

.area-kikou-ul li a {
    background-color: #eee;
    color: #1f1f1f;
    padding: .5rem;
    margin: .5rem;
}

/*20230228_月刊達成報酬の追加*/

.mons-salary-h4 {
    text-align: center;
    font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: -2rem;
    margin-top: 5rem;
    position: relative;
    display: flex;
    justify-content: center;
}

.mons-salary-h4::before {
    content: "";
    position: absolute;
    top: 70%;
    left: 16%;
    transform: translate(-50%, -50%);
    width: 2rem;
    height: 2rem;
    background-image: url(/assets/images/coin01.png);
    background-size: contain;
    background-repeat: no-repeat;
}

.mons-salary-tb td {
    width: calc(100%/2);
    text-align: center;
    padding: .6rem 0.3rem;
    border: dotted 2px;
    font-size: .9rem;
}

.mons-salary-tb td>span {
    font-weight: bold;
    font-size: 1.1rem;
    color: #FF5D86;
}

.mons-salary-tb td:nth-child(1) {
    background: #fff;
    color: #1f1f1f;
    position: relative;
}

.mons-salary-tb td:nth-child(1)::after {
    content: "";
    position: absolute;
    top: 55%;
    right: -14%;
    transform: translate(-50%, -50%);
    width: 1.5rem;
    height: 1.5rem;
    background-image: url(/assets/images/arrow_pink.svg);
    background-size: contain;
    background-repeat: no-repeat;
}

.mons-salary-tb td:nth-child(2) {
    background: #fff8c7;
    color: #1f1f1f;
}

.mons-salary-p span {
    background: linear-gradient(transparent 60%, yellow 30%);
}

/*  20230306_cb追加css**/
.fot-navmenu-p01 {
    text-align: center;
    margin: 0;
    font-size: 1.3rem;
    position: relative;
    display: inline-block;
    padding-left: 3rem;
    padding-right: 3rem;
    background-color: #fff;
    border-radius: 1rem 1rem 0 0;
    bottom: -4rem;
    line-height: 1.2;
    padding: .7rem 2rem;
}

.fot-navmenu-p01>span {
    font-weight: bold;
    color: #FF5D86;
}

.fot-navmenu-p01-small {
    font-size: .8rem;
    padding-right: 2rem;
    display: block;
}

.fot-navmenu-p01::before,
.fot-navmenu-p01::after {
    content: "";
    display: inline-block;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1.5rem;
}

.fot-navmenu-p01::before {
    background-image: url(/assets/images/other/line-lef.svg);
    transform: translateY(-50%) translateX(100%);
    top: 1.5rem;
    left: -.1rem;
}

.fot-navmenu-p01::after {
    background-image: url(/assets/images/other/line-rgh.svg);
    transform: translateY(-50%) translateX(-100%);
    top: 1.5rem;
    right: -.1rem;
}

.line-btn-arow-oya02::after {
    content: "";
    display: block;
    position: relative;
    background-size: contain;
    background-image: url(/assets/images/btn-tri-icon2.svg);
    background-repeat: no-repeat;
    transform: translateY(-50%) translateX(-100%);
    width: 1rem;
    height: 1rem;
    top: 0.5rem;
    right: -1.5rem;
}

.line-btn-arow-oya01::before {
    content: "";
    display: block;
    position: relative;
    background-size: contain;
    background-image: url(/assets/images/btn-tri-icon.svg);
    background-repeat: no-repeat;
    transform: translateY(-50%) translateX(100%);
    width: 1rem;
    height: 1rem;
    top: 0.5rem;
    left: -1.5rem;
}

.line-btn-arow-oya01, .line-btn-arow-oya02 {
    position: relative;
}

.flex-ali-js_center {
    display: flex;
    align-items: center;
    justify-content: center;
}

/******************230321リモ活css*************************/
.h1-makinasu {
    letter-spacing: .2rem;
    font-family: "マキナス";
    font-weight: 100;
    margin: 0 0 5rem;
    line-height: 1.5;
    text-align: center;
    font-size: 1.5rem;
}

.inner-inbox {
    padding: 2rem;
    border: 1px dashed #999;
    border-radius: 1rem;
}

.rimo-h2-p-rela01,
.rimo-h2-p-rela02 {
    position: relative;
}

.rimo-h2-p-rela01::after,
.rimo-h2-p-rela02::after {
    content: "";
    position: absolute;
    top: 90%;
    right: -4rem;
    transform: translate(-50%, -50%);
    background-size: contain;
    background-repeat: no-repeat;
}

.rimo-h2-p-rela01::after {
    width: 9rem;
    height: 10rem;
    background-image: url("/assets/images/rimokatsu/com_ilast_rimokatsu01.svg");
}

.rimo-h2-p-rela02::after {
    width: 9rem;
    height: 10rem;
    background-image: url("/assets/images/rimokatsu/com_ilast_rimokatsu02.svg");
}

.rimo-h2-p-rela01::before,
.rimo-h2-p-rela02::before {
    content: "";
    position: absolute;
    top: -1rem;
    left: 3rem;
    transform: translate(-50%, -50%);
    width: 6rem;
    height: 6rem;
    background-image: url("/assets/images/rimokatsu/rimo-answer01.svg");
    background-size: contain;
    background-repeat: no-repeat;
}



.rimo-ol {
    list-style: none;
    padding-left: 0;
}

.rimo-ol li {
    list-style: none;
    text-align: left;
    padding: 1rem 0 1rem 5rem;
    font-size: 1.3rem;
    position: relative;
    margin: 1.5rem 0.5rem;
    border-radius: 1rem;
}

.rimo-ol .meri {
    background-color: #FFD5DF;
}

.rimo-ol .demeri {
    background-color: #DDD2E0;
}

.rimo-ol .tax, .rimo-ol .rimo {
    background-color: #EEDAD3;
}

.rimo-ol .meri::before,
.rimo-ol .demeri::before {
    content: "";
    position: absolute;
    top: 1.5rem;
    left: 3rem;
    transform: translate(-50%, -50%);
    width: 4rem;
    height: 4.5rem;
    background-size: contain;
    background-repeat: no-repeat;
}

.rimo-ol .meri::before {
    background-image: url("/assets/images/rimokatsu/com-good01.svg");
}

.rimo-ol .demeri::before {
    background-image: url("/assets/images/rimokatsu/com-bad01.svg");
}

.rimo-ol li:last-of-type {
    border-bottom: none;
}

.rimo-str-p01 {
    border-radius: 1rem;
    margin: 0.5em 0;
    padding: 1em;
    background-color: #A2C9FF;
    font-weight: bold;
    text-align: center;
    line-height: 1.3;
}

.under-yellow {
    background: linear-gradient(transparent 60%, rgb(255, 255, 0) 60%);
    font-weight: 700;
}

.rimo-h2-under-p {
    /*border: 1px solid #1f1f1f;*/
    text-align: center;
    background-color: #ffa;
    margin-bottom: 1rem;
    font-size: 1.2rem;
    font-weight: bold;
    /*border-radius: 1rem 0 1rem 0;*/
    padding: 1rem 7.9rem 1rem 2rem;
    line-height: 1.3;
}

.sec-flow-bg02 {
    z-index: 0;
    background-size: initial;
    background-image: url(/assets/images/area-cp/pink-dot.svg);
    background-color: #fff;
    position: relative;
    padding-top: 6rem;
}

.area-reg-bg02 {
    border-radius: 2rem;
    background-color: #fff;
    position: relative;
    top: -12rem;
    padding: 13rem 1rem 0;
    margin: 1rem 2rem -10rem;
    z-index: -1;
}

.under-yellow {
    background: linear-gradient(transparent 60%, rgb(255, 255, 0) 60%);
    font-weight: 700;
}



/*  20230718_身分証誘導バナー設置css */
.ib-bana-bg {
    display: none;
}

.ib-bana-bg-waku {
    padding: .5rem 1rem;
    border: 1px dashed #1f1f1f;
    border-radius: 1rem 1rem 0 0;
}

.ib-bana-flex {
    display: flex;
    align-items: center;
}

.ib-bana-fig {
    width: 23%;
    margin: 0;
    padding-top: 2rem;
}

.ib-bana-dl {
    width: 77%;
    padding-left: 0.5rem;
}

.ib-bana-dl>dt {
    font-size: 1.3rem;
    letter-spacing: 4.5px;
    font-weight: bold;
    line-height: 1.2;
    border-bottom: 1px solid #1f1f1f;
    padding-bottom: 0.5rem;
}

.ib-bana-dl>dd {
    font-size: .9rem;
    margin-left: 0;
    line-height: 1.3;
    padding-top: 0.5rem;
}

.ib-bana-dl>dd strong {
    background: linear-gradient(transparent 60%, #FF88A6 60%);
    font-weight: 700;
    border-bottom: 1px dashed;
    padding: 0 4px 3px;
}

.ib-bana-btn {
    display: block;
    margin-left: auto;
    margin-right: auto;
    background-color: #ffff33;
    border: none;
}

.ib-bana-btn-lab {
    width: 14rem;
    font-size: 1rem;
    border: 1px solid #1f1f1f;
    background-color: #ffff33;
    border-radius: 1.5rem;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    padding: 0.3rem;
    box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
    position: relative;
    cursor: pointer;
}

.ib-bana-btn-lab::before,
.ib-bana-btn-lab::after {
    content: "";
    position: absolute;
    border-top: 1px dashed #1f1f1f;
    width: 8rem;
    height: 1px;
    transform: translate(-50%, -50%);
    top: 55%;
}

.ib-bana-btn-lab::before {
    left: -4.2rem;
}

.ib-bana-btn-lab::after {
    right: -12.2rem;
}

.ib-bana-ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    background-color: #ffc;
    border-radius: 0.5rem;
    margin-bottom: 0.5rem;
}

.ib-bana-ul li {
    width: 33%;
    height: auto;
    padding: 1rem 1rem 0;
}

.ib-bana-ul li:last-of-type {
    width: 27%;
}

input[type="checkbox"] {
    display: none;
}

label[for="id-img-all"] {
    display: block;
    background: #ffff33;
}

.dropdown {
    display: none;
}

#id-img-all:checked+.dropdown {
    display: flex;
}


.ib-bana-btn-lab-span {
    position: relative;
}


.ib-bana-btn-lab-span::after {
    content: "";
    display: inline-block;
    position: absolute;
    border-top: #000 2px solid;
    border-left: #000 2px solid;
    transform: rotate(225deg);
    width: 0.5rem;
    height: 0.5rem;
    top: 0.1rem;
    right: -2rem;
}



@media (min-width: 728px) {

    .ib-bana-btn-lab::before,
    .ib-bana-btn-lab::after {
        width: 11.4rem;
    }

    .ib-bana-btn-lab::before {
        left: -5.9rem;
    }

    .ib-bana-btn-lab::after {
        right: -17.3rem;
    }

    .ib-bana-dl>dt {
        font-size: 1.6rem;
        letter-spacing: 7.5px;
    }

    .ib-bana-btn-lab {
        width: 16rem;
        font-size: 1.2rem;
    }

    .ib-bana-ul li {
        width: 20%;
    }

    .ib-bana-ul li:last-of-type {
        width: 17%;
    }

    .ib-bana-dl {
        width: 74%;
        padding-left: 1rem;
    }

    .ib-bana-fig {
        width: 26%;
        height: 9rem;
        padding: 1rem;
    }
}

/*  20230718_身分証誘導バナー設置css ここまで*/

/*231205_地方ページ改修*/

.top-zai-und-text-area {
    color: #fff;
    background-color: #1f1f1f;
    text-align: center;
    font-size: 1rem;
    position: relative;
    margin-top: -1rem;
    line-height: 1.3;
    padding: 0;
    display: flex;
}



.top-tu-h2-span2 {
    left: -1rem;
    font-size: 2.5rem;
}

.top-tu-h2,
.top-tu-h2-02,
.top-zai-h2 {
    position: relative;
    line-height: 1.4;
    text-align: center;
    border-bottom: none;
    /*padding-bottom: 0.5rem;*/
    font-size: 1.8rem;
    margin: 1.5rem 1rem 1rem;
    padding-left: 5rem;
}

.top-tu-h2::before,
.top-tu-h2-02::before,
.top-zai-h2::before {
    content: "";
    position: absolute;
    background-size: contain;
    transform: translate(0%, 20%);
}

/**  アニメ ************************************************************/


.h2-anime, .h2-anime-02 {
    opacity: 0;
    transition: opacity .4s, transform .4s;
    transform: translateY(20px);
}

.anime-left {
    opacity: 0;
    transition: opacity .5s, transform .5s;
    transform: translateX(-30px);
    transition-timing-function: ease-out;
}

.anime-right {
    opacity: 0;
    transition: opacity .5s, transform .5s;
    transform: translateX(30px);
    transition-timing-function: ease-out;
}

.fadein {
    transform: rotateY(0);
}

.fadein02 {
    opacity: 1;
    transform: translateY(0);
}

.fadein03 {
    opacity: 1;
    transform: translateX(0);
}

.anime-tu-01,
.anime-tu-02,
.anime-tu-03,
.anime-tu-04,
.anime-zai-02,
.anime-zai-03,
.anime-zai-01 {
    position: relative;
}

.anime-tu-02,
.anime-tu-03,
.anime-zai-02 {
    top: -1rem;
}

.anime-tu-01,
.anime-tu-02,
.anime-tu-03,
.anime-tu-04,
.anime-zai-02,
.anime-zai-03,
.anime-zai-01 {
    opacity: 0;
}

.anime-tu-01,
.anime-zai-01 {
    transition: opacity 1s, transform .8s;
    transform: translate(100%, 100%);
}

.anime-tu-02 {
    transition: opacity 1s, transform 1.2s;
    transform: translate(0%, 100%);
}

.anime-tu-03,
.anime-zai-02 {
    transition: opacity 1s, transform .6s;
    transform: translate(0%, 100%);
}

.anime-tu-04,
.anime-zai-03 {
    transition: opacity 1s, transform 1s;
    transform: translate(-100%, 100%);
}

.fadein04 {
    opacity: 1;
    transform: translate(0, 0);
}

.anime-top-01 {
    animation-name: fadeUpAnime;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(50px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.anime-top-02 {
    animation-name: fadeUpAnime02;
    animation-duration: .5s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime02 {
    from {
        opacity: 0;
        transform: translate(-50%, 50%)rotate(-90deg);
        transform-origin: left bottom;
    }

    to {
        opacity: 1;
        transform: translate(0, 0) rotate(0deg);
        transform-origin: left bottom;
    }
}

.yureru-s {
    animation: yureru-s 2s infinite;
}

@keyframes yureru-s {
    0% {
        transform: translate(2px, 0px);
    }

    5% {
        transform: translate(-2px, 0px);
    }

    10% {
        transform: translate(2px, 0px);
    }

    15% {
        transform: translate(-2px, 0px);
    }

    20% {
        transform: translate(2px, 0px);
    }

    25% {
        transform: translate(-2px, 0px);
    }

    30% {
        transform: translate(0px, 0px);
    }
}

.yureru-s-top {
    animation: yureru-s-top 2s infinite;
}

@keyframes yureru-s-top {
    0% {
        transform: translate(-51%, -50%);
    }

    5% {
        transform: translate(-49%, -50%);
    }

    10% {
        transform: translate(-51%, -50%);
    }

    15% {
        transform: translate(-49%, -50%);
    }

    20% {
        transform: translate(-51%, -50%);
    }

    25% {
        transform: translate(-49%, -50%);
    }

    30% {
        transform: translate(-50%, -50%);
    }
}

.yureru-j {
    animation: yureru-j 2s infinite;
}

@keyframes yureru-j {
    0% {
        transform: translate(0px, 2px);
    }

    5% {
        transform: translate(0px, -2px);
    }

    10% {
        transform: translate(0px, 2px);
    }

    15% {
        transform: translate(0px, -2px);
    }

    20% {
        transform: translate(0px, 2px);
    }

    25% {
        transform: translate(0px, -2px);
    }

    30% {
        transform: translate(0px, 0px);
    }
}

.cap-h1-zai-box-zai::after {
    content: "";
    display: block;
    position: absolute;
    background-size: contain;
    background-image: url(/assets/images/area-cp/zai-top-15000-re.svg);
    background-repeat: no-repeat;
    transform: translateY(0%) translateX(-6%);
    width: 16rem;
    height: 12rem;
    top: 2rem;
    right: 0rem;
    animation: yureru-s-zai 5s infinite;
}

@keyframes yureru-s-zai {
    0% {
        transform: translate(100%, 0%);
    }

    5% {
        transform: translate(-6%, 0%);
    }
}