@charset "UTF-8";
.flex {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}

.j-around {
    justify-content: space-around;
}

.j-between {
    justify-content: space-between;
}

body.sub {
    background: 0;
}

.container {
    font-size: 1.5rem !important;
    color: #0f0f0f;
    line-height: 1.6;
    max-width: 750px;
    margin: 0 auto;
    font-family: 'Noto Sans JP', sans-serif !important;
}

.container * {
    box-sizing: border-box;
}

.hd_bx {
    background: url("../../../images/pc/tenpo/hd_bg.jpg");
    box-shadow: 0 0 20px 0 rgba(234, 223, 189, 0.6) inset;
    position: relative;
    /*margin-bottom: 2rem;*/
}

.hd_bx img {
    width: 100%;
}

.hd_bx>div {
    margin: 0 auto;
    position: relative;
}

.btn,
.btn_tel {
    display: block;
    /* background: #54d641; */
    background-color: #f9491a;
    /* color: #f4fddc; */
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    font-size: 2rem;
    text-align: center;
    /* border-radius: 5px; */
    padding: 1.5rem;
    /* box-shadow: 0 5px 0 0 #2a8d1d; */
    width: 63%;
    margin: 0 auto;
}

.btn_tel {
    background: #41ced6;
    color: #f3feff;
    box-shadow: 0 5px 0 0 #269096;
    line-height: 1.2;
}

.hd_bx .btn {
    position: absolute;
    bottom: 11rem;
    width: 90%;
    left: 5%;
    z-index: 1;
}

.hd_bx .bann {
    position: absolute;
    width: 100%;
    left: 0;
    top: 0;
    z-index: 99;
}

.hd_bx .login {
    font-size: 1.5rem;
    position: absolute;
    bottom: 5rem;
    width: 90%;
    left: 5%;
    text-decoration: underline;
}

.cnt_bx02 .login {
    font-size: 1.5rem;
    width: 90%;
    text-decoration: underline;
    margin-top: 20px;
}

.tenpo_nav>p {
    text-align: center;
    margin-bottom: 1rem;
    color: #ff4084;
}

.tenpo_nav ul {
    margin: 0 auto;
    text-align: center;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    border-top: 1px solid #ff4084;
}

.tenpo_nav li {
    width: 50%;
    border-bottom: 1px solid #ff4084
}

.tenpo_nav li:nth-child(odd) {
    border-right: 1px solid #ff4084
}

.tenpo_nav li a {
    display: block;
    padding: 1.5rem 0;
    position: relative
}

.tenpo_nav>ul>li {
    margin: 0
}

.cnt_bx {
    margin: 0 auto;
    padding: 0 1rem 5rem;
}

.cnt_bx p:not(:last-child) {
    margin-bottom: 1.5rem;
}

.cnt_bx02 {
    margin: 0 auto;
    padding: 0 1rem
}

.cnt_bx .pink {
    color: #ff77a3;
}

.diss .flex {
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
}

.diss div[class^="diss0"] {
    border: 1px solid #595e62;
    background: #f5f5f5;
    display: block;
    padding: 1rem;
    color: #f00;
    text-align: left;
    margin-bottom: 1.5rem;
    width: 48%;
    position: relative;
    border-radius: 0.5rem;
}

.diss div[class^="diss0"]:before,
.diss div[class^="diss0"]:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: 10px solid transparent;
    position: absolute;
    left: 50%;
    margin-left: -5px;
}

.diss div[class^="diss0"]:before {
    border-top: 10px solid #595e62;
    bottom: -20px;
}

.diss div[class^="diss0"]:after {
    border-top: 10px solid #f5f5f5;
    bottom: -19px;
}

.ttl02,
.ttl {
    background: #595e62;
    color: #fff9ca;
    position: relative;
    padding: 0 10px
}

.ttl02:after,
.ttl:after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border: 15px solid transparent;
    border-top: 15px solid #595e62;
    position: absolute;
    left: 50%;
    bottom: -30px;
    margin-left: -8px
}

.ttl h2 {
    display: inline-block;
    font-size: 2rem;
    font-weight: bold;
    padding: 1.5rem 0;
    padding-left: 8%;
    line-height: 1.2;
}

.ttl02 h2 {
    /*display: inline-block;*/
    font-size: 2rem;
    font-weight: bold;
    padding: 1.5rem 0;
    /*padding-left: 8%;*/
    line-height: 1.3;
}

.ttl02 h2 span,
.ttl h2 span {
    color: #e0c400;
}

#sec01 h2 {
    background: url("../../../images/pc/tenpo/ttl01.png") no-repeat center left;
    background-size: 7%;
}

#sec02 h2 {
    background: url("../../../images/pc/tenpo/ttl02.png") no-repeat center left;
    background-size: 7%;
}

#sec03 h2 {
    /*background: url("../../../images/pc/tenpo/ttl03.png") no-repeat center left;
	background-size: 7%;*/
}

#sec04 h2 {
    background: url("../../../images/pc/tenpo/ttl04.png") no-repeat center left;
    background-size: 7%;
}

#sec05 h2 {
    background: url("../../../images/pc/tenpo/ttl05.png") no-repeat center left;
    background-size: 20%;
}

#sec06 h2 {
    background: url("../../../images/pc/tenpo/ttl06.png") no-repeat center left;
    background-size: 7%;
}

#sec07 h2 {
    background: url("../../../images/pc/tenpo/ttl07.png") no-repeat center left;
    background-size: 7%;
}

@media screen and (max-width:525px) {
    .btn,
    .btn_tel {
        width: 100%;
    }
    .ttl h2 {
        padding-left: 14%;
    }
    #sec01 h2,
    #sec02 h2,
    /*#sec03 h2,*/
    #sec04 h2,
    #sec06 h2 {
        background-size: 12%;
    }
    #sec07 h2 {
        background-size: 17%;
    }
    #sec05 h2 {
        background-size: 20%;
    }
}

.about {
    margin-bottom: 40px
}

.diag img,
.about img {
    width: 100%
}

.tb {
    width: 100%;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.2;
    border-collapse: collapse
}

.tb span {
    font-size: 3rem;
}

.tb td:nth-of-type(odd) {
    background: #ff90b4;
    border: 1px solid #ff90b4;
    color: #fff;
    width: 30%;
    padding: 1rem 0;
    font-size: 1.6rem;
}

.tb td:nth-of-type(even) {
    border: 1px solid #ff90b4;
    color: #ff77a3;
    padding: 10px 0
}

.sub_ttl {
    color: #ff77a3;
    font-size: 2.6rem;
    font-weight: bold;
    margin-bottom: 3rem;
    text-align: center;
}

.sub_ttl span {
    display: inline-block;
    padding-bottom: 1rem;
    background: -moz-linear-gradient(top, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 88%, rgba(255, 144, 180, 1) 89%, rgba(255, 144, 180, 1) 100%);
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 88%, rgba(255, 144, 180, 1) 89%, rgba(255, 144, 180, 1) 100%);
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0, rgba(255, 255, 255, 0) 88%, rgba(255, 144, 180, 1) 89%, rgba(255, 144, 180, 1) 100%)
}

.cnt_bx2 {
    margin: 0 auto;
    padding: 4rem 1rem 0rem;
}

.cnt_bx2 img {
    max-width: 100%
}

.cnt_bx2 .w70 {
    max-width: 70%
}

.cnt_bx2 .w50 {
    max-width: 50%
}

.txt_box p {
    width: 95%;
    margin: 0 auto;
}

.txt_box p:not(:last-child) {
    margin-bottom: 1.5rem
}

.dia_box03 {
    background: url("../../../images/pc/tenpo/bg_dia_pink.jpg");
    padding: 0 10px;
}

.dia_box02,
.dia_box {
    background: url("../../../images/pc/tenpo/bg_dia_pink.jpg");
    margin-top: 45px;
    padding: 0 10px;
}

.dia_box03 h3,
.dia_box03 h2,
.dia_box02 h3,
.dia_box02 h2,
.dia_box h3,
.dia_box h2 {
    text-align: center;
    font-weight: 600
}

.dia_box03 h2,
.dia_box02 h2,
.dia_box h2 {
    color: white;
    font-size: 26px;
    padding: 15px 0;
    line-height: 1
}

.dia_box03 ul,
.dia_box02 ul,
.dia_box ul {
    display: flex;
    justify-content: space-between;
}

.dia_box03 li {
    background: white;
    padding: 15px 10px 10px;
    margin-bottom: 10px;
    width: 100%;
}

.dia_box02 li {
    background: white;
    padding: 15px 10px 10px;
    margin-bottom: 10px;
    width: 32%;
}

.dia_box li {
    background: white;
    padding: 15px 10px 10px;
    margin-bottom: 10px;
    width: 49%;
}

@media screen and (max-width:525px) {
    .dia_box02 {
        padding: 5px 10px;
    }
    .dia_box02 ul {
        display: block;
    }
    .dia_box02 li {
        width: 100%;
    }
}

@media screen and (max-width:425px) {
    .dia_box {
        padding: 5px 10px;
    }
    .dia_box ul {
        display: block;
    }
    .dia_box li {
        width: 100%;
    }
}

.dia_box02 li h3,
.dia_box li h3 {
    font-size: 20px;
    line-height: 1.2;
    color: #ff77a3
}

.dia_box02 li h3+p,
.dia_box li h3+p {
    text-align: center;
    margin: 10px 0
}

.dia_box02 li h3+p img,
.dia_box li h3+p img {
    vertical-align: bottom
}

.red {
    color: red
}

.yellow {
    color: yellow
}

.reason_list li {
    margin-bottom: 30px
}

.reason_list li>div>span {
    display: inline-block;
    background: #ff77a3;
    color: white;
    padding: 5px 10px;
    font-weight: 600
}

.reason h3 {
    font-weight: 600;
    font-size: 20px;
    line-height: 1.2;
    margin-bottom: 2.5rem;
    padding-left: 4.5rem;
}

.reason h3 span {
    color: #ff77a3
}

.reason h3 .big {
    font-size: 2.2rem;
}

.reason .num_1 {
    background: url("../../../images/sp/tenpo/reason_num_01.jpg") no-repeat left center;
    background-size: 4rem;
}

.reason .num_2 {
    background: url("../../../images/sp/tenpo/reason_num_02.jpg") no-repeat left center;
    background-size: 4rem;
}

.reason .num_3 {
    background: url("../../../images/sp/tenpo/reason_num_03.jpg") no-repeat left center;
    background-size: 4rem;
}

.reason .num_4 {
    background: url("../../../images/sp/tenpo/reason_num_04.jpg") no-repeat left center;
    background-size: 4rem;
}

.line_bg span {
    display: inline-block;
    background: url("../../../images/sp/tenpo/bg_line.jpg") repeat-x left bottom;
    padding-bottom: 1rem;
    font-weight: 600;
    font-size: 1.8rem;
}

.listing {
    padding: 1.5rem;
    background: url("../../../images/pc/tenpo/bg_box.jpg") repeat;
    position: relative;
    -webkit-box-shadow: 0 0 5px 0 rgba(196, 196, 196, 1);
    -moz-box-shadow: 0 0 5px 0 rgba(196, 196, 196, 1);
    box-shadow: 0 0 5px 0 rgba(196, 196, 196, 1);
    margin-top: 1.5rem;
    margin-bottom: 3rem;
}

.listing>img {
    position: absolute;
    left: -10px;
    top: -18px
}

.listing .ttl_list {
    font-size: 1.8rem;
    font-weight: 600;
    text-align: center;
}

.i_pink {
    font-size: 18px
}

.i_pink i {
    color: #ff77a3
}

.reason_merit {
    margin-top: 40px
}

.reason_merit div {
    padding: 20px 0 20px;
    border-top: 1px dotted #333
}

.reason_merit div img {
    margin-bottom: 25px
}

.bg_crystal {
    background: url("../../../images/pc/tenpo/bg_crystal.jpg") repeat-x center top;
    padding: 40px 10px
}

.price h2 span,
.support h2 span,
.bg_crystal h2 span {
    font-size: 25px;
    font-weight: 600;
    padding-bottom: 10px;
    color: #ff90b4;
    border-bottom: 8px solid;
    line-height: 1.2;
    display: inline-block;
    margin-bottom: 25px
}

.bg_crystal .btn {
    position: static;
    margin-top: 35px
}

.bg_crystal .btn:hover {
    margin-top: 59px
}

.support .dia_box ul {
    display: table;
    width: 100%;
    border-spacing: 1rem 0.5rem;
    table-layout: fixed;
}

.support .dia_box ul li {
    display: table-cell;
}

.support .dia_box h3 {
    padding-bottom: 1rem;
    border-bottom: 1px dotted;
}

.support .dia_box li p {
    margin-bottom: 0;
}

.support .dia_box li span {
    font-size: 1.6rem;
}

.price .price_range {
    /*margin-bottom: 40px*/
}

.price .price_range .table {
    border: 1px solid #ff77a3;
    margin: 0 auto 15px;
    display: flex;
    width: 85%;
}

.price .price_range .table>* {
    vertical-align: middle
}

.price .price_range .table>span {
    background: #ff90b4;
    padding: 3.6rem 2rem;
    line-height: 1.2;
    display: block;
    text-align: center;
    font-size: 2.5rem;
    color: white;
    font-weight: 800;
    width: 45%;
}

.price .price_range .table p {
    color: #ff77a3;
    font-weight: 800;
    font-size: 67px;
    text-align: center;
    width: 55%;
    vertical-align: middle;
}

@media screen and (max-width:525px) {
    .price .price_range .table {
        display: block;
        line-height: 1.2;
        width: 100%;
    }
    .price .price_range .table>span {
        width: 100%;
        padding: 1rem;
    }
    .price .price_range .table p {
        width: 100%;
    }
    .btn,
    .btn_tel {
        padding: 1.5rem 1rem;
    }
}

.price .price_range .table p>span {
    display: inline-block;
}

.price .price_range .table p>span.sml {
    font-size: 35px;
    display: inline-block;
}

.price .price_range .table p>span.sml02 {
    font-size: 15px;
    display: inline-block;
    color: #9b9b9b;
    line-height: 18px;
    text-align: left;
    padding-right: 0.5rem;
}

.price .flow li:not(:last-child) {
    margin-bottom: 10px
}

.price .num_ttl {
    color: #ff77a3;
    font-weight: 600;
    font-size: 18px;
    padding-top: 5px;
    padding-bottom: 5px
}

.price .flow li p {
    padding-left: 30px
}

.price .num_1 .num_ttl {
    background: url("../../../images/pc/tenpo/num_01.jpg") no-repeat left center;
    background-size: 25px
}

.price .num_2 .num_ttl {
    background: url("../../../images/pc/tenpo/num_02.jpg") no-repeat left center;
    background-size: 25px
}

.price .num_3 .num_ttl {
    background: url("../../../images/pc/tenpo/num_03.jpg") no-repeat left center;
    background-size: 25px
}

.price .num_4 .num_ttl {
    background: url("../../../images/pc/tenpo/num_04.jpg") no-repeat left center;
    background-size: 25px
}

.price .num_5 .num_ttl {
    background: url("../../../images/pc/tenpo/num_05.jpg") no-repeat left center;
    background-size: 25px
}

.flow .listing {
    margin: 3rem 0 0;
    padding: 1.5rem;
}

.flow .listing>img {
    position: absolute;
    left: auto;
    right: -10px;
    top: -18px
}

.flow .listing .ttl_1 {
    font-size: 20px;
    font-weight: 600;
    color: #72777a;
    margin-bottom: 1rem;
}

.flow .listing .ttl_2 {
    font-size: 30px;
    font-weight: 600;
    color: #ff77a3;
    line-height: 1;
}

.flow .listing .btn {
    position: static;
    display: block;
    padding: 1.5rem 0;
    font-size: 2rem;
    margin-top: 1rem
}

.flow .listing .btn:hover {
    margin-top: 29px
}

.voice li {
    border: 6px solid #ff90b4;
    padding: 10px 15px;
    width: 100%
}

.voice li:not(:last-child) {
    margin-bottom: 20px
}

.qa>ul>li h3,
.voice h3 {
    font-size: 18px;
    font-weight: 600;
    color: #ff77a3;
    /*border-bottom: 1px solid;*/
    /*padding: 0 0 10px;*/
    margin-bottom: 15px;
    line-height: 1.2
}

.voice h3 .sml {
    font-size: 14px;
    line-height: 1
}

.qa>ul>li p,
.qa>ul>li h3 {
    position: relative;
    padding-left: 30px;
}

.qa>ul>li h3:before {
    content: 'Q.';
    position: absolute;
    left: 0
}

.qa>ul>li p:before {
    content: 'A.';
    position: absolute;
    left: 0;
    top: 6px;
    font-size: 20px;
    font-weight: 600;
    color: #ff77a3
}

.qa>ul>li:not(:last-child) {
    margin-bottom: 30px
}

.qa>ul>li p {
    border-top: 1px solid #ff77a3;
    padding-top: 10px;
}

.contact .form {
    /* -webkit-box-shadow: 0 0 5px 0 rgba(196, 196, 196, 0.75);
    -moz-box-shadow: 0 0 5px 0 rgba(196, 196, 196, 0.75);
    box-shadow: 0 0 5px 0 rgba(196, 196, 196, 0.75); */
    /* padding: 20px 10px 15px; */
    /* margin-top: 30px */
}

.form_ttl {
    font-size: 2rem;
    text-align: center;
    color: #333;
    font-weight: 600;
    margin-bottom: 20px;
    line-height: 1.2
}

.form_ttl span {
    font-size: 12px;
    color: red;
    display: block
}

.touroku_form *,
.touroku_form {
    /*display: inline;*/
    margin: 0 auto;
}

@media screen and (max-width:525px) {
    .touroku_form *,
    .touroku_form {
        display: block
    }
}

.touroku_form span {
    display: inline
}

.touroku_form .kind {
    /* background: #ffdde6; */
    background: #f0f0f0;
    padding: 5px 40px 5px 5px;
    vertical-align: middle;
    position: relative;
    width: 30%;
}

@media screen and (max-width:525px) {
    .touroku_form .kind {
        width: 100%;
    }
    .touroku_form input {
        margin-bottom: 10px
    }
}

.required {
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -8.5px;
    font-size: 11px;
    padding: 1px 5px;
    background: #edd103;
    vertical-align: middle
}

.answer textarea {
    line-height: 1.2;
    height: 100px
}

.error_txt {
    border: 1px solid #f00;
    background: #fff7f9;
    padding: 10px;
    margin-bottom: 30px
}

.contact input[type="submit"] {
    display: none
}

.contact .btn {
    position: static;
    margin: 0px auto;
}


/* .contact .btn:hover {
    margin-top: 24px;
    margin-bottom: 16px
} */

.contact .a_blue {
    text-decoration: underline
}

@media screen and (max-width:425px) {
    .hd_bx .btn {
        bottom: 5.5rem;
        padding: 5px 15px;
    }
    .hd_bx .login {
        font-size: 1.2rem;
        bottom: 1.7rem;
    }
}

@media screen and (max-width:320px) {
    .hd_bx .btn {
        font-size: 16px;
    }
}


/* confirm */

.confirm {
    padding: 0 1rem;
    width: 80%;
    margin: 0 auto;
    font-family: 'Noto Sans JP', sans-serif !important;
}

.sp_tenpo_confirm {
    border-bottom: 5px solid #ad300e;
}


/* recruit-privacy */

.recruit-privacy {
    width: 100%;
    padding: 10px;
    border: 1px solid #ccc;
    height: 100px;
    overflow-y: auto;
    margin: 15px auto 15px;
    box-sizing: border-box;
}

.privacy-box {
    padding: 0 10px;
    font-size: 12px;
}

.privacy dl dt {
    font-size: 16px;
    font-size: 1.6rem;
    border-bottom: 1px dotted #B0A070;
    color: #B0A070;
    padding-top: 10px;
    margin-bottom: 15px;
    text-align: center;
}

.privacy-box p,
.privacy-box section ul li p {
    margin-bottom: 15px;
    width: auto;
}

.privacy-box ul {
    margin: 30px 0;
}

.privacy-box li:not(:last-child) {
    margin-bottom: 15px;
}

.privacy-box li {
    text-indent: -2em;
    padding-left: 2em;
}

.privacy-contact {
    padding: 15px;
    padding-bottom: 1px;
    border: 1px solid #B0A070;
    margin-bottom: 30px;
}

.privacy-box .ttl2 {
    margin-bottom: 10px!important;
    font-weight: 600;
}

.privacy-box li table {
    border-spacing: 0;
    border: 1px solid #ccc;
    border-bottom: 0;
}

.privacy-box li td:first-child {
    width: 130px;
    border-right: 1px solid #ccc;
    text-align: center;
}

.privacy-box li table td {
    text-indent: 0;
}

.privacy-box li td {
    width: auto;
    border-bottom: 1px solid #ccc;
}

.privacy-box table th,
.privacy-box table td {
    font-weight: normal;
    padding: 10px;
}

.riyou_txt {
    padding: 10px;
    /* border: 3px dashed #ffdde6; */
    font-size: 1.4rem;
}

.required2 {
    font-size: 1rem;
    padding: 0.2rem 0.5rem;
    margin-left: 0.5rem;
    /* color: #fff; */
    /* background: #e40019; */
    background: #edd103;
    vertical-align: middle;
}

.data_bx {
    padding: 20px;
    background: url("../../images/pc/tenpo/bg_box.jpg") repeat;
    position: relative;
    -webkit-box-shadow: 0px 0px 5px 0px rgba(196, 196, 196, 1);
    -moz-box-shadow: 0px 0px 5px 0px rgba(196, 196, 196, 1);
    box-shadow: 0px 0px 5px 0px rgba(196, 196, 196, 1);
    margin-top: 35px;
    margin-bottom: 30px;
    position: relative;
}

.data_bx .data_ttl {
    font-size: 20px;
    line-height: 1.2;
    color: #ff77a3;
    margin-bottom: 10px;
    font-weight: 600;
}

.data_bx .data_ttl span {
    display: inline-block;
    background: #595e62;
    font-size: 10px;
    color: #fff;
    line-height: 1;
    padding: 5px 10px;
    border-radius: 3px;
    vertical-align: middle;
    margin-right: 10px;
    font-weight: normal;
}

.data_bx .data_ttl+div {
    margin-bottom: 30px;
}

.data_bx select {
    padding: 0 0.5rem;
}

.data_bx .btn_data {
    display: inline-block;
    background: #ef3370;
    color: #fff;
    text-decoration: none;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    border-radius: 50px;
    padding: 10px 20px;
    cursor: pointer;
    border: 1px solid #ef3370;
    -webkit-transition: 0.3s;
    -moz-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
}

.data_bx .btn_data:hover {
    background: #fff;
    color: #ef3370;
}

.data_bx:before,
.data_bx:after {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border: 15px solid transparent;
    border-top: 15px solid #595e62;
    position: absolute;
}

.data_bx:before {
    bottom: -20px;
    left: 50%;
    transform: translate(-50%, 0);
}

.data_bx:after {
    bottom: -40px;
    left: 50%;
    transform: translate(-50%, 0);
}

.data_bx+.dia_box {
    padding: 10px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 35px;
    margin-top: 0;
}

.data_bx+.dia_box>div {
    background: #fff;
    padding: 10px;
    border-radius: 30px;
    font-size: 20px;
}

.data_bx+.dia_box>div>p {
    font-weight: 600;
}

.data_bx+.dia_box>div>p:last-of-type {
    font-size: 14px;
    font-weight: normal;
    margin-top: 10px;
}

.data_bx+.dia_box>div>p span {
    font-size: 30px;
}

footer {
    text-align: center;
    /* background: #FF73A2 !important; */
    background: #000 !important;
    color: #fff;
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
}

header {
    position: sticky;
    top: 0;
    z-index: 100;
    text-align: left;
    color: #fff;
    background: #fff;
    border-bottom: 1px solid #e7e7e7;
    font-family: 'Noto Sans JP', sans-serif;
    box-shadow: #333 1px;
}

header .inner {
    max-width: 750px;
    align-items: center;
    padding: 5px 0;
}

header p {
    /*background: #FF73A2;*/
    color: #fff799;
    padding: 10px 0;
    /*margin-top: 10px;*/
    font-size: 1em;
    font-weight: 600;
}

header img {
    width: 50%;
    padding-left: 10px;
    padding-top: 20px;
}

a.btn--or {
    background-color: #f9491a;
    border-bottom: 5px solid #ad300e;
    display: inline-block;
    margin-right: 0.5em;
    width: 180px;
    text-align: center;
    padding: 0.8em;
    color: #fff;
    font-weight: bold;
}


/* a.btn--or:hover {
    margin-top: 3px;
    color: #fff;
    background: #f9491a;
    border-bottom: 5px solid #ad300e;
} */

a.btn--cv {
    background-color: #f9491a;
    border-bottom: 5px solid #ad300e;
    display: inline-block;
    margin: 0 auto;
    width: 80%;
    text-align: center;
    padding: 1em;
    color: #fff;
    font-weight: bold;
}

.lp_tenpo_free_form {
    border-bottom: 5px solid #ad300e;
}


/* a.btn--cv:hover {
    margin-top: 3px;
    color: #fff;
    background: #f9491a;
    border-bottom: 5px solid #ad300e;
} */

.sp_on {
    display: none;
}

.sp_off {
    display: block;
}

@media screen and (max-width:525px) {
    header img {
        width: 70%;
    }
    .sp_on {
        display: block !important;
    }
    .sp_off {
        display: none !important;
    }
}

.f17 {
    font-size: 1.7rem;
}

.invalid_text {
    font-size: 1em;
    color: #fe6c7b;
}

#animate01 {
    animation-duration: 0.8s;
    /* アニメーションの時間 */
    animation-delay: 0.7s;
    /* アニメーション開始時間 */
    animation-iteration-count: 1;
    /* アニメーションの繰り返し回数 */
}

#animate02 {
    animation-duration: 1s;
    /* アニメーションの時間 */
    animation-delay: 2.5s;
    /* アニメーション開始時間 */
    animation-iteration-count: 1;
    /* アニメーションの繰り返し回数 */
}

#animate03 {
    animation-duration: 0.8s;
    /* アニメーションの時間 */
    animation-delay: 0.5s;
    /* アニメーション開始時間 */
    animation-iteration-count: 1;
    /* アニメーションの繰り返し回数 */
}

#animate04 {
    animation-duration: 0.8s;
    /* アニメーションの時間 */
    animation-delay: 1.7s;
    /* アニメーション開始時間 */
    animation-iteration-count: 1;
    /* アニメーションの繰り返し回数 */
}

#animate05 {
    animation-duration: 0.8s;
    /* アニメーションの時間 */
    animation-delay: 0.9s;
    /* アニメーション開始時間 */
    animation-iteration-count: 1;
    /* アニメーションの繰り返し回数 */
}

#animate06 {
    animation-duration: 0.8s;
    /* アニメーションの時間 */
    animation-delay: 1.1s;
    /* アニメーション開始時間 */
    animation-iteration-count: 1;
    /* アニメーションの繰り返し回数 */
}

ul.rank {
    margin: 2rem auto 0;
    width: 100%;
}

ul.rank li {
    display: inline-block;
    width: 32%;
}

ul.rank li:not(:last-child) {
    border-right: #ddd 1px dashed;
}

ul.rank .ico {
    width: 45px;
    margin: 10px auto;
}

ul.rank .ttl_class {
    font-size: 20px;
    font-weight: 700;
    padding-bottom: 10px;
}

ul.rank .ttl_class+p {
    padding: 0 10px;
    max-width: 350px;
    margin: 0 auto 1rem;
}

ul.rank .ttl_class+p img {
    width: 90%;
}

ul.rank .left {
    text-align: left;
    font-size: 14px;
    width: 90%;
    max-width: 400px;
    margin: 25px auto 0;
}

.arrow_box {
    position: relative;
    width: 85%;
    /*height:80px;*/
    background: #FFFFFF;
    padding: 10px;
    text-align: center;
    border: 1px solid #ff77a3;
    color: #000000;
    font-size: 24px;
    font-weight: bold;
    border-radius: 8px;
    -webkit-border-radius: 8px;
    -moz-border-radius: 8px;
    margin: 2rem auto 0;
    line-height: 1.2;
}

.arrow_box span.font_l {
    color: #ff77a3;
    font-weight: 800;
    font-size: 45px;
}

.arrow_box:after,
.arrow_box:before {
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    bottom: 100%;
    left: 50%;
}

.arrow_box:after {
    border-color: rgba(255, 255, 255, 0);
    border-top-width: 10px;
    border-bottom-width: 10px;
    border-left-width: 10px;
    border-right-width: 10px;
    margin-left: -10px;
    border-bottom-color: #FFFFFF;
}

.arrow_box:before {
    border-color: rgba(155, 155, 155, 0);
    border-top-width: 11px;
    border-bottom-width: 11px;
    border-left-width: 11px;
    border-right-width: 11px;
    margin-left: -11px;
    margin-bottom: 1px;
    border-bottom-color: #ff77a3;
}

@media screen and (max-width:525px) {
    ul.rank .ico {
        width: 30px;
    }
    ul.rank {
        margin: 2rem auto 0;
        width: 100%;
    }
    ul.rank li {
        width: 32%
    }
    ul.rank li:not(:last-child) {
        /*border-bottom: #ddd 1px dashed;
	    border-right: none;*/
    }
    ul.rank .ttl_class {
        font-size: 15px;
        line-height: 1.2;
    }
    ul.rank .ttl_class+p img {
        width: 100%;
    }
    .arrow_box {
        width: 100%;
    }
}

.q_title:after {
    font-family: "Font Awesome 5 Free";
    content: "\f0ab";
}

.q_title.open:after {
    font-family: "Font Awesome 5 Free";
    content: "\f0aa";
}

.mb20 {
    margin-bottom: 2rem;
}

.mb30 {
    margin-bottom: 3rem;
}

.mt30 {
    margin-top: 3rem;
}

.f30 {
    font-size: 3rem;
}

.f25 {
    font-size: 2.5rem;
}

.bg_crystal h2 span.f20 {
    font-size: 2rem;
    line-height: 0.5;
    border-bottom: 7px solid;
    margin-bottom: 15px;
}

.lh12 {
    line-height: 1.2;
}

.worries {
    color: #fff;
    background-image: url("../../../../../images//lp/tenpo_free/worries.jpg");
    background-position: center 40%;
    background-size: cover;
    background-repeat: no-repeat;
    padding-bottom: 3em;
}

h2 {
    color: #333 !important;
}

.worries h2 {
    color: #fff !important;
}

.col_white {
    color: #fff;
}

.col_yellow {
    color: #edd103;
}

.bg_yellow {
    background-color: #edd103;
}

.checkbox {
    display: block;
    text-align: center;
    width: 80%;
    margin: 0 auto;
    margin-bottom: 2em;
}

.checkbox ul {
    display: inline-block;
}

.checkbox ul li:not(:last-child) {
    margin-bottom: 2em;
}

.checkbox ul li {
    text-align: left;
}

.checkbox ul li p {
    border-bottom: 1px solid #dddddd;
    padding-bottom: 5px;
    display: inline;
    line-height: 2;
}

.worries_box {
    border: #fff 2px solid;
    padding: 1em;
    display: inline-block;
    margin-bottom: 2em;
}

.fa-check-square {
    color: #edd103;
}

.fa-angle-double-down {
    color: #fff;
}

.resolution {
    border-bottom: 3px solid #edd103;
    padding-bottom: 5px;
    display: inline;
    line-height: 2;
}

.contact_box_tel {
    padding: 0.5em;
    font-weight: bold;
    border: 2px solid #000;
    margin: 2em auto;
    width: 80%;
    border-bottom: #000 5px solid;
    /* background: #cc9d05; */
}

.contact_box_tel a {
    display: block;
}

.contact_box_mail {
    padding: 1em;
    font-weight: bold;
    /* border: 2px solid #000; */
    margin: 2em auto;
    width: 80%;
    background: #cc9d05;
}

.contact_box_mail a {
    display: block;
}

.mark_y {
    background-color: #edd103;
    padding: 0px 10px;
}

.lp_reason ul li:not(:last-child) {
    margin-bottom: 1em;
}

.lp_reason h3 {
    margin-bottom: 10px;
}

.txt {
    margin-top: 5px;
    padding: 1em;
    background-color: #edd103;
}

input[type=checkbox] {
    margin-right: 10px !important;
}

@media screen and (min-width:750px) {
    .lp_reason ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
    }
    .lp_reason ul li {
        width: 48%;
    }
    .txt {
        height: 200px;
    }
    .contact_box_tel {
        width: 50%;
    }
    a.btn--cv {
        width: 50%;
    }
    .recruit-privacy {
        width: 73%;
    }
    .lp_reason h2 {
        width: 70%;
        margin: 0 auto;
    }
}