@charset "UTF-8";

/*------------------------ 共通 ------------------------*/
* { -webkit-appearance: none; }
body {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif;
    margin:0;
}

p {
    line-height: 1.6;
    word-wrap: break-word;
    font-size: 18px; 
}

a:link {
    color: #fff;
}

img {
    max-width: 100%;
    vertical-align:top;
}

.wrapper {
    padding: 0;
    overflow: hidden;
    color: #222;
    background: #fff;
        width: 100%;
        margin: 0 auto;
}

/*------------------------ テキスト ------------------------*/
.bo{
    font-weight: bold;  
}

.ta_c{
    text-align: center;
}

/*------------------------ margin ------------------------*/
.mt0{
    margin-top: 0; 
}
.mt20{
    margin-top: 20px; 
}
.mt30{
    margin-top: 30px; 
}
.mt40{
    margin-top: 40px; 
}
.mb10{
    margin-bottom: 0; 
}
.mb20{
    margin-bottom: 20px; 
}
.mb30{
    margin-bottom: 30px; 
}
/*------------------------ padding ------------------------*/
.pt20{
    padding-top: 20px;
}
.pt30{
    padding-top: 30px;
}
.pb20{
    padding-bottom: 20px;
}
.pb30{
    padding-bottom: 30px;
}
/*------------------------ フォントサイズ ------------------------*/
.fsSS {
    font-size: 16px;
}

/*------------------------ カラー------------------------*/
.mark {
    background: rgba(0, 0, 0, 0)linear-gradient(transparent 56%, #fff952 0%)repeat scroll 0 0;
    font-weight: bold;
}
.bg_wb {
    background-color: #D2E6FF;
    padding: 60px 360px;
}
.bg_wb02 {
    background-color: #D2E6FF;
    padding: 80px 400px;
}
.bg_wh {
    background-color: #fff;
    padding: 55px;
}
.bg_gr {
    background-color: #e7e7e7;
}
.bg_gr01 {
    background-color: #e7e7e7;
    padding: 70px 0;
}
@media screen and (max-width:1600px){ 
    .bg_wb {
        background-color: #D2E6FF;
        padding: 60px 100px;
    }
    .bg_wb02 {
        background-color: #D2E6FF;
        padding: 60px 150px;
    }
}
@media screen and (max-width:1400px){ 
    .bg_wb02 {
        background-color: #D2E6FF;
        padding: 60px 100px;
    }
}
@media screen and (max-width:690px){ 
    .bg_wb {
        background-color: #D2E6FF;
        padding: 25px 15px;
    }
    .bg_wb02 {
        background-color: #D2E6FF;
        padding: 25px 15px;
    }
    .bg_wh {
        background-color: #fff;
        padding: 25px 15px;
    }
    .bg_gr01 {
        background-color: #e7e7e7;
        padding: 30px 0;
    }
}
/*------------------------ 幅 ------------------------*/
.wid90 {
    width: 60%;
    margin: auto;
}
.wid45 {
    width: 45%;
    margin: auto;
}
.wid100 {
    width: 100%;
}
@media (max-width: 1200px) {
    .wid90 {
        width: 70%;
        margin: auto;
    }
}
@media (max-width: 690px) {
    .wid90 {
        width: 90%;
        margin: auto;
    }
    .wid45 {
        width: 90%;
        margin: auto;
    }
}
/*------------------------ 背景------------------------*/
.bk_sut_ye{
background : url(../img/bg_ye.jpg) repeat;
}
/*------------------------ ポジション ------------------------*/
.po_r{
    position: relative;
}
/*------------------------ sp共通 ------------------------*/
@media (max-width: 767px) { 
body .wrapper{
    font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color emoji;
}

p {
    font-size: 15px;
    line-height: 1.6;
}

.sp_ds{
    display: inline-block;
}

.pc_ds{
    display: none;
}

/*-----spテキスト-----*/
.tex_sm{
    font-size: 90%; 
}

.tex_b{
    font-size: 130%;
}

/* ------------------------ margin ------------------------*/
.ml1{
    margin-left: 0; 
}

.ml2{
    margin-left: 0; 
}
}

/* FV~CTA */
.cta_area {
    position: absolute;
    z-index: 3;
    bottom:81px;
    width: 80%;
    text-align: center;
    margin: 10px 10%;
    bottom: -27px;
}
.cta_area p{
    color: #fff;
    font-weight: bold;
    font-size: 1.6rem;
    margin-bottom: 17px;
    line-height: 1.3;
}
.sc_area {
    width: 16%;
    margin: -17% 42% 0;
}
@media screen and (max-width:1400px){ 
    .cta_area {
        bottom: -5%;
        width: 41.5%;
        margin: 1px 29.5%;
    }
    .cta_area p {
        font-size: 1.4rem;
    }
}
@media screen and (max-width:1300px){ 
    .cta_area {
        bottom: -5%;
        width: 41.5%;
        margin: 10px 29.5%;
    }
    .cta_area p {
        font-size: 1.2rem;
    }
}
@media screen and (max-width:1200px){ 
    .cta_area {
        bottom: -5%;
        width: 46.5%;
        margin: 6px 27%;
    }
}
@media screen and (max-width:840px){ 
    .cta_area {
        bottom: -53px;
        width: 47.5%;
        margin: -7px 26.5%;
    }
    .cta_area p {
        font-size: 1rem;
        margin-bottom: 4px;
    }
}
@media screen and (max-width:640px){ 
    .cta_area {
        width: 90%;
        margin: -31px 5%;
        bottom: 80px;
    }
    .cta_area p{
        line-height: 23px;
        font-size: 1rem;
        margin-bottom: 8px;

    }
}
/*------------------------ クレジット ------------------------*/
.credit_area {
    width: 43%;
    margin: 0 auto;
    border-bottom: solid 4px #0058b1;
    margin-top: 143px;
}
.credit_ttl {
    background-color: #0058b1;
    color: #fff;
    font-weight: bold;
    font-size: 22px;
    padding: 4px;
    margin-bottom: 10px;
}
.credit_area img {
    width: 79%;
    margin: 13px 10.5% 20px;
}
@media screen and (max-width:640px){ 
    .credit_area {
        width: 88%;
        margin: 0 auto;
        border-bottom: solid 3px #0058b1;
        margin-top: 30px;
    }
    .credit_area img {
        width: 90%;
        margin: 0 5% 3%;
    }
    .credit_ttl {
        background-color: #0058b1;
        color: #fff;
        font-weight: bold;
        font-size: 1rem;
        padding: 2px;
        margin-bottom: 10px;
    }
}
/*------------------------ 目次 ------------------------*/
.mokuji_area {
    background-color: #eaeaea;
    margin-top: 35px;
    margin-bottom: -45px;
    padding-bottom: 50px;
}
.mokuji_ttl {
    font-weight: bold;
    color: #000;
    font-size: 16px;
    margin-bottom: 25px;
    line-height: 1.4;
}

.mokuji_content {
    max-width: 66%;
    margin: 67px auto 0;
    padding: 50px 0 60px;

}
.mokuji_flx a {
    width: calc(66% / 2);
    text-decoration: none;
}
.mokuji_flx {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 2% 0 3% 0;
}
.mokuji_child1 {
    background-color: #0e87f7;
    padding: 20px 25px 45px;
    font-weight: bold;
    color: #fff609;
    border-radius: 3px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    vertical-align: middle;
    height: 27px;
    margin-bottom: 7px;
    width: 80%;
}
.mokuji_child2 {
    background-color: #0e87f7;
    padding: 37px 25px 27px;
    font-weight: bold;
    color: #fff609;
    border-radius: 3px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    vertical-align: middle;
    height: 27px;
    margin-bottom: 13px;
    width: 80%;
}
.mokuji_child1:hover {
    background-color: #56aeff;
}
.mokuji_child2:hover {
    background-color: #56aeff;
}
.mokuji_child1 p {
    line-height: 28px;
    font-size: 23px;
    margin-block-start :0em;
    margin-block-end: 0em;
}
.mokuji_child1 img {
    width: 45px;
    height: 45px;
    margin-top: 1px;
}
.mokuji_child2 p {
    line-height: 23px;
    font-size: 23px;
    margin-block-start: 0em;
    margin-block-end: 0em;
}
.mokuji_child2 img {
    width: 45px;
    height: 45px;
    margin-top: -15px;
}
@media screen and (max-width:1400px){ 
    .mokuji_content {
        max-width: 75%;
    }
}
@media screen and (max-width:1175px){ 
    .mokuji_content {
        max-width: 95%;
    }
}
@media screen and (max-width:640px){ 
.mokuji_child1 {
    background-color: #0e87f7;
    padding: 10px;
    font-weight: bold;
    color: #fff609;
    border-radius:3px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    vertical-align: middle;
    height: 47px;
    width: 142px;
}
.mokuji_child2 {
    background-color: #0e87f7;
    padding: 20px 10px;
    font-weight: bold;
    color: #fff609;
    border-radius:3px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    vertical-align: middle;
    height: 27px;
    margin-bottom: 7px;
    width: 142px;
}
    .mokuji_child2 img {
        width: 25px;
        height: 25px;
        margin-top: 0;
    }
    .mokuji_child1 img {
        width: 25px;
        height: 25px;
        margin-top: 9px;
    }
.mokuji_ttl {
    font-size: 14px;
    margin-bottom: 25px;
    line-height: 1.4;
}
.mokuji_child2 p {
    line-height: 23px;
    font-size: 16.5px;
}
.mokuji_child1 p {
    line-height: 23px;
    font-size: 14.5px;
}
.mokuji_content {
    max-width: 88%;
    margin: 36px auto 0;
    padding: 20px 0 24px;

}
.mokuji_flx a {
    width: calc(97% / 2);
    text-decoration: none;
}
.mokuji_flx {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 2% 0 3% 0;
}
}

/*------------------------ コンテンツ①ぼったくり被害 ------------------------*/
.tyuui_ttl {
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 42px;
    line-height: 1.35;
    margin-top: -124px;
}
.tyuui img{
    width: 100%;
    z-index: 10;
}

.bg_city_pc {
    background: url(../img/bg_city_pc.jpg) no-repeat center/100%;
    padding: 343px 0 80px;
}
.bg_city_sp {
    background: url(../img/bg_city_sp.jpg) no-repeat center/100%;
    padding: 64px 0 80px;
}
.tyuui_blue {
    background-color: #fff;
    border: solid 3px #1a7bdd;
    width: 40%;
    margin: 0 auto;
    font-size: 37px;
    color: #1a7bdd;
    line-height: 1.4;
    padding: 26px 0px;
    font-weight: bold;
}
.sikasi {
    margin-top: -203px;
}
.tyuui_p_area {
    margin: 80px 0;
}
.genba {
    margin-top: 70px;
}
@media screen and (max-width:1400px){ 
    .tyuui_ttl {
        font-size: 42px;
        margin-top: -114px;
    }
    .tyuui_p_area {
        margin: 60px 0;
    }
    .tyuui_blue {
        width: 50%;
    }
}
@media screen and (max-width:1100px){ 
    .tyuui_ttl {
        font-size: 40px;
        margin-top: -110px;
    }
    .tyuui_blue {
        width: 60%;
        font-size: 30px;
        padding: 18px 0px;

    }
    .tyuui_p_area {
        margin: 50px 0 0;
    }
    .sikasi {
        margin-top: -186px;
    }
    .tyuui_blue {
        background-color: #fff;
        border: solid 3px #1a7bdd;
        width: 50%;
        margin: 0 auto;
        font-size: 28px;
        color: #1a7bdd;
        line-height: 1.4;
        padding: 10px 40px;
        font-weight: bold;
    }
}
@media screen and (max-width:750px){ 
    .tyuui_blue {
        background-color: #fff;
        border: solid 3px #1a7bdd;
        width: 60%;
        margin: 0 auto;
        font-size: 28px;
        color: #1a7bdd;
        line-height: 1.4;
        padding: 10px 40px;
        font-weight: bold;
    }
}
@media screen and (max-width:640px){ 
    .tyuui_ttl {
        font-size: 22px;
        margin-top: -85px;    
    }
    .tyuui_blue {
        width: 80%;
        margin: 0 auto;
        font-size: 19px;
        padding: 7px;
        border: solid 2px #1a7bdd;
    }
    .sikasi {
        margin-top: 0;
    }
    .tyuui_p_area {
        margin: 20px 0;
    }
    .genba {
        margin-top: 7px;
    }
}
/*------------------------ コンテンツ②コスパ ------------------------*/
.cospa {
    margin-top:64px;
}
.cospa_ima2 {
    width: 480px;
    margin-left: 50px;
}
.cospa_ttl {
    margin-top: -110px;
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 42px;
    line-height: 1.3;
    margin-bottom: 0;
}
.cospa_ttl02 {
    margin-top: -110px;
    color: #fff;
    font-weight: bold;
    padding: 20px 0 20px;
    font-size: 42px;
    line-height: 1.3;

}
.cospa_ttl03 {
    margin-top: -110px;
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 42px;

}
.cospa_ttl_ma {
    width: 90%;
    margin: 0 auto;

}
.cospa_box {
    width: 700px;
}
.check_flx01 {
    display: flex;
    flex-wrap: wrap;
    font-size: 30px;
    color: #1a7bdd;
    font-weight: bold;
}
.check_flx02 {
    display: flex;
    flex-wrap: wrap;
    font-size: 30px;
    color: #1a7bdd;
    font-weight: bold;
}
.check_flx03 {
    display: flex;
    flex-wrap: wrap;
    font-size: 30px;
    color: #1a7bdd;
    font-weight: bold;
}
.check_flx01 img, .check_flx02 img, .check_flx03 img {
    width: 40px;
    height: 30px;
}
 
.cospa_ima{
     width: 100%;
}
h2 {
    line-height: 1.3;
}
.cospa_flx{
    display: flex;
    justify-content: space-between;
}
.check_ma01 {
    margin: 0 auto;
    width: 290px;
}
.check_ma02 {
    margin: 0 auto;
    width: 530px;
}
.check_ma03 {
    margin: 0 auto;
    width: 440px;
}
@media screen and (max-width:1400px){ 
    .cospa_ttl {
        margin-top: -100px;
        font-size: 42px;
    }
    .cospa_ttl02 {
        margin-top: -92px;
        font-size: 42px;
    }
    .cospa_ttl03 {
        margin-top: -100px;
        font-size: 42px;
    }
    
}
@media screen and (max-width:1200px){ 
    .cospa_ttl {
        margin-top: -80px;
        font-size: 38px;
    }
    .cospa_ttl02 {
        margin-top: -89px;
        font-size: 38px;
    }
    .cospa_ttl03 {
        margin-top: -89px;
        font-size: 38px;
    }

}
@media screen and (max-width:1050px){ 
    .cospa_ttl {
        margin-top: -80px;
        font-size: 30px;
    }
    .cospa_ttl02 {
        margin-top: -80px;
        font-size: 30px;
    }
    .cospa_ttl03 {
        margin-top: -80px;
        font-size: 30px;
    }
}
@media screen and (max-width:640px){ 
    .cospa_ttl {
        margin-top: -95px;
        font-size: 22px;
    }
    .cospa_ttl02 {
        margin-top: -68px;
        font-size: 22px;
    }
    .cospa_ttl03 {
        margin-top: -73px;
        font-size: 22px;
    }
    .check_flx01 img, .check_flx02 img, .check_flx03 img {
        width: 28px;
        height: 20px;
    }
    .check_flx01, .check_flx02, .check_flx03{
        font-size: 19px;
    }
    .cospa_ima2 {
        width: 100%;
        margin: 0;
    }
    .cospa {
        margin-top:22px;
    }
}



/*------------------------ 続きを読む ------------------------*/
.grad-wrap {
    margin-top: 4px;
}
.grad-btn {
    z-index: 2;
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    width: 148px;
    margin: auto;
    padding: 0.5em 0;
    border-radius: 5px;
    background: #ff6c29;
    color: #fff;
    font-size: 1.3rem;
    text-align: center;
    cursor: pointer;
    transition: .2s ease;
    box-shadow: 0 0 3px rgb(0 0 0 / 30%);
    font-weight: bold;
}
.grad-btn:hover {
    background: #ff9a6c;
}
.grad-item {
    position: relative;
    overflow: hidden;
    height: 295px; /*隠した状態の高さ*/
}
.grad-item::before {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100px; /*グラデーションで隠す高さ*/
    background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
    background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
    content: "";
}
.grad-trigger {
    display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked + .grad-btn {
    display: none; /*チェックされていたら、grad-btnを非表示にする*/
}
.grad-trigger:checked ~ .grad-item {
    height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
    display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}
@media screen and (max-width:1400px){ 
.grad-wrap {
    margin-top: -15px;
    }
}
@media screen and (max-width:1000px){ 
    .grad-wrap {
        margin-top: -10px;
    }
}
@media screen and (max-width:640px){ 
    .grad-wrap {
        margin-top: -8px;
    }
}
/*------------------------ 鍵の救急屋さんって？ ------------------------*/
.kagino {
    margin-top: 90px;
}
.kagino_ma {
    max-width: 864px;
    margin: 0 auto;
}
.kagino_ttl p {
    top:15px;
    color: #fff;
    font-weight: bold;
    font-size: 42px;
    line-height: 1.35;
    margin-top: -120px;
    margin-bottom: 50px;
}
.kagino_ttl_ma {
    width: 90%;
    margin: 0 auto;
}
.kagino_box {
    position: relative;
    background: #D2E6FF;
    text-align: center;
    color: #000;
    font-size: 22px;
    font-weight: bold;
    border-radius: 10px;
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
    padding: 10px 19px;
    line-height: 1.4;
    margin-bottom: 30px;
}
.kagino_box:after {
    border: solid transparent;
    content: '';
    height: 0;
    width: 0;
    pointer-events: none;
    position: absolute;
    border-color: rgba(210, 230, 255, 0);
    border-top-width: 13px;
    border-bottom-width: 13px;
    border-left-width: 20px;
    border-right-width: 10px;
    margin-left: -10px;
    border-left-color: #D2E6FF;
    top: 35%;
    left: 102%;
}
.kagino_flx {
    display: flex;
    justify-content: space-between;
    margin-top: 24px;
}
.kagino_flx01 {
    display: flex;
    justify-content: space-between;
    margin-top: 75px;
}
.kagino_flx img {
    width: 35%;
    height: 80%;
    margin-right: 50px;
}
.kagino_flx01 img {
    width: 35%;
    height: 80%;
    margin-right: 50px;
}
.kagino_flx p {
    width: 351px;
    margin: 0 9px 0 42px;
}
.kagino_txt {
    width: 473px;
}
@media screen and (max-width:640px){ 
    .kagino {
        margin-top: 30px
    }
    .kagino_ttl p {
        position: absolute;
        top:-7px;
        margin: 0 14.5%;
        padding: 26px 0 20px;
        font-size: 22px;
    }
    .kagino_box {
        font-size: 17px;
        width: 80%;
        margin: 29px 5% 27px;
    }
    .kagino_flx p {
        width: 200px;
        margin: 0 9px 0 20px;
    }
    .kagino_box:after{
        border: solid transparent;
        content:'';
        height:0;
        width:0;
        pointer-events:none;
        position:absolute;
        border-color: rgba(210, 230, 255, 0);
        border-top-width:15px;
        border-bottom-width:15px;
        border-left-width:10px;
        border-right-width:10px;
        margin-left: -10px;
        border-top-color:#D2E6FF;
        top:100%;
        left:80%;
    }
    .kagino_flx {
        margin-top: 0;
    }
    .kagino_flx img {
        margin-right: 50px;
        width: 41%;
        height: 80%;
    }
}
/*------------------------ 料金について ------------------------*/
.ryokin_ima {
    width: 13%;
    margin: 0 43%;
}
.ryokin_ttl {
    background-color: #1a7bdd;
    padding: 7px;
    font-weight: bold;
    color: #fff;
    width: 130px;
    border-radius: 23px;
    margin: 40px auto 20px;
    font-size: 20px;
}
.ryokin_tbl {
    margin: 0 auto;
    max-width: 650px;
}
.ryokin_gr{
    display: flex;
    flex-wrap: wrap;
    background-color: #eaeaea;
    padding: 0 20px;
    line-height: 0;
    position: relative;
}
.hiyo_ttl {
    background-color: #fff;
    border: solid 1px #000;
    border-radius: 5px;
    padding: 0 3px;
    font-size: 17px;
    margin: 11px 20px 11px 0;
}
.hiyo_ttl p,.hiyo_fsS {
    line-height: 0;
}
.hiyo_fsL,.hiyo_fsL2{
    font-size: 30px;
    font-weight: bold;
}
.hiyo_fsS {
    font-size: 18px;
    font-weight: bold;
}
.hiyo_fsSS {
    font-size: 10px;
}
.hiyo_fsL::after {
    content: '+';
    font-size: 2.1rem;
    margin-right: 5px;
    vertical-align: middle;
    color: #cecece;
    position: absolute;
    top: 35px;
    left: 147px;
}
.tyusyaku {
    font-size: 14px;
    color: #a7a7a7;
    line-height: 1.5;
}

h3 {
    font-size: 42px;
    font-weight: bold;
    margin-top: 5px;
    letter-spacing:1.5px;
    margin-bottom: 20px;
}

@media screen and (max-width:640px){ 
    .tyusyaku {
        font-size: 10px;
        line-height: 1.2;
    }
    h3 {
        font-size: 22px;
        margin-bottom: 10px;
    }
    .ryokin_ttl {
        font-size: 18px;
        margin: 24px auto 20px;
    }
}
/*タブ切り替え全体のスタイル*/
.tabs {
    padding-bottom: 17px;
    background-color: #fff;
    width: 100%;
    margin: 45px auto 0;
}

/*タブのスタイル*/
.tab_item {
    width: 20%;
    height: 50px;
    border-bottom: 3px solid #1a7bdd;
    background-color: #b3b3b3;
    line-height: 50px;
    font-size: 16px;
    text-align: center;
    color: #161616;
    display: block;
    float: left;
    text-align: center;
    font-weight: bold;
    transition: all 0.2s ease;
    border-right: 1px solid rgb(255, 255, 255);
    box-sizing: border-box;
}
.tab_item:last-child {
    border-right: none;
}
.tab_item:hover {
    opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
    display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
    display: none;
    padding: 60px;
    clear: both;
}
@media screen and (max-width:1400px){ 
    .tab_content {
        padding: 30px;
    }
}
@media screen and (max-width:640px){ 
    .tab_content {
        padding: 15px;
    }
    .tabs {
        padding-bottom: 17px;
        background-color: #fff;
        width: 100%;
        margin: 20px auto 0;
    }
   
}

/*選択されているタブのコンテンツのみを表示*/
#all:checked ~ #all_content,
#koukan:checked ~ #koukan_content,
#torituke:checked ~ #torituke_content,
#sakusei:checked ~ #sakusei_content,
#syuri:checked ~ #syuri_content {
    display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
    background-color: #1a7bdd;
    color: #fff;
    font-size: 20px;
}
/*------------------------CTA　PCのみ------------------------*/
.cta_pc_area {
    background-color: #fffa63;
    padding: 80px 0;
    border-top: solid 7px #0e87f7;
}
.cta_pc_flx {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 60%;
    margin: 0 auto;
    margin-top: 15px;
}
.cta_pc_flx img {
    width: 100%;
    margin: 0;
}
.cta_pc_ttl {
    width: 700px;
    margin: 0 auto;
}
.cta_pc_flx a {
    padding: 15px;
}
.cta_credit {
    width: 47%;
    margin: 0 auto;
    margin-top: 40px;
}
@media screen and (max-width:1600px){ 
    .cta_pc_flx {
        width: 70%;
    }
    .cta_credit {
        width: 64%;
    }
}
@media screen and (max-width:1400px){ 
    .cta_pc_flx {
        width: 80%;
    }
    .cta_credit {
        width: 75%;
    }
}
@media screen and (max-width:1000px){ 
    .cta_pc_flx {
        width: 90%;
    }
    .cta_credit {
        width: 85%;
    }
}



/*------------------------ 返金保証 ------------------------*/
.henkin {
    margin: 70px auto 70px;
    width: 50%;
}
.henkin_ttl {
    font-size: 23px;
    font-weight: bold;
}
.henkin img {
    width: 100%;
    margin-top: -20px;
}
.tyusyaku_ma {
    margin-top: 20px;
}
@media screen and (max-width:1400px){ 
    .henkin {
        margin: 70px auto 20px;
        width: 60%;
        margin-bottom: 60px;
    }
}
@media screen and (max-width:1200px){ 
    .henkin {
        margin: 70px auto 20px;
        width: 75%;
        margin-bottom: 70px;
    }
}
@media screen and (max-width:640px){ 
    .henkin {
        margin-top: 30px;
        margin-bottom: 15px;
        width: 100%;
    }
    .henkin_ttl {
        font-size: 16px;
    }
    .henkin img {
        width: 90%;
        margin: -5px 5%;
    }
}

/*------------------------ お客様の声 ------------------------*/
.okyaku_ttl {
    margin-bottom: 50px;
}
.okyaku_ttl p {
    position: absolute;
    top:17px;
    margin: 0 36%;
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 42px;
    line-height: 1.35;
}
.slider_flx {
    display: flex;
    align-items: flex-end;
    margin: 10px 0;
}
.slider_flx p {
    font-size: 16px;
    font-weight: bold;
    text-align: left;
}
.syurui {
    background-color: #ff6c29;
    padding: 5px;
    color: #fff;
    font-weight: bold;
    font-size: 18px;
    border-radius: 5px;
    margin-left: 7px;
}
.voice-contents{
    padding: 30px 0 6% 0;
}

.voice-contents p.tex_sm{
    max-width: 1000px;
    margin: 0 auto;
}

li.slide_contents{
    border: 3px solid #0e87f7;
    background-color: #fff;
    border-radius: 10px;
    width: 600px!important;
    padding: 25px;
    margin: 0 ;
    text-align: left;
}


li.slide_contents div{
    padding: 3%;
}

li.slide_contents img{
    width: 100%;
}

li.slide_contents .slide_tit{
    font-weight: bold;
    font-size: 20px;
    padding: 1% 0 0;
}

li.slide_contents .slide_txt{
    text-align: left;
    font-weight: bold;
    padding: 1% 0 0;
}

li.slide_contents .slide_txt2{
    text-align: right;
    font-weight: bold;
    padding: 1% 0 0;
}
.slick-prev:before, .slick-next:before{
    opacity: 1;
}
.slick-dots li.slick-active button:before {
    opacity: .75;
    color: #0e87f7;
}
@media screen and (max-width:640px){ 
    .okyaku_ttl {
        margin-bottom: 30px;
        margin-top: 40px;
    }
    .okyaku_ttl p {
        position: absolute;
        top:-7px;
        margin: 0 35%;
        color: #fff;
        font-weight: bold;
        padding: 26px 0 20px;
        font-size: 22px;
        line-height: 1.35;
        margin-bottom: 0;
    }
    li.slide_contents{
        width: 73vw!important;
    }
    .voice-contents{
        padding: 4% 0;
    }
}
/*===========スライダー============*/
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width: 100%;
    margin:25px auto 0;
}

.slick-slide img {
    display: inline-block;
    padding: 0;
    margin: 0 auto;
}

.slider .slick-slide {
    transform: scale(0.8);/*左右の画像のサイズを80%に*/
    transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
    opacity: 0.3;/*透過50%*/
}

.slider .slick-slide.slick-center{
    transform: scale(1);/*中央の画像のサイズだけ等倍に*/
    opacity: 1;/*透過なし*/
}

.slick-list {
    overflow: inherit;
}

/*矢印の設定*/
.slick-prev {/*戻る矢印の位置と形状*/
    left: 1%;
    z-index: 999;
}

.slick-next {/*次へ矢印の位置と形状*/
    right: 5.2%;
}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
    margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
    margin:0 5px;
}

.slick-next:before {
    content: '▶';
}
.slick-prev:before {
    content: '◀';
}
.slick-prev:before, .slick-next:before{
    color: #0e87f7;
    font-size: 60px;
}
ul {
    padding-inline-start: 0px;
}


@media (max-width: 767px) {
    .voice{
        padding: 5% 2%;
    }

    .voice-contents p.tex_sm{
        margin: 20px 0 10px;
    }

    .slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
        margin: 0 auto;
    }

    /*矢印の設定*/
    .slick-prev {/*戻る矢印の位置と形状*/
        left: -22px;
        z-index: 999;
    }

    .slick-next {/*次へ矢印の位置と形状*/
        right: -1%;
        z-index: 999;
    }
    .slick-prev:before, .slick-next:before{
        font-size: 40px;
    }
}


/*------------------------ ご利用の流れSP ------------------------*/
.goriyou_ttl p {
    position: absolute;
    top:17px;
    margin: 0 36%;
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 34px;
    line-height: 1.35;
    margin-bottom: 0;
}
.goriyou_ttl {
    z-index: 10;
}
.goriyou_con_ttl {
    display: flex;
    align-items: flex-end;
}
.goriyou_con_ttl p {
    font-size: 21px;
    font-weight: bold;
    margin-left: 15px;
}
.goriyou_nakami {
    display: flex;
    margin-top: 20px;
}
.goriyou_nakami img{
    width: 40%;
    height: 40%;
    box-shadow: 0 5px 8px 0 rgba(0, 0, 0, .2);
    margin: -75px 0 30px 0;
}
.goriyou_nakami p{
    margin-right: 10px;
}
.goriyo_01 {
    width: 10%;
}
.goriyo_02 {
    width: 12.5%;
}
.triangle_w{
    border-top: 20px solid #fff;
    border-right: 350px solid transparent;
    border-left: 350px solid transparent;
    margin-top: 30px;
    background-color: #e7e7e7;
}   
.triangle_g{
    border-top: 20px solid #e7e7e7;
    border-right: 350px solid transparent;
    border-left: 350px solid transparent;
} 
.nagare_credit {
    width: 80%;
    margin: 0 auto;
    margin-top: 0px;
    margin-bottom: 75px;
}
@media (max-width: 767px) {
    .triangle_w{
        border-right: 180px solid transparent;
        border-left: 180px solid transparent;
        margin-top: 30px;
    } 
    .triangle_g{
        border-top: 20px solid #e7e7e7;
        border-right: 180px solid transparent;
        border-left: 180px solid transparent;
    } 
    .goriyou_nakami img{
        width: 40%;
        height: 40%;
        box-shadow: 0 5px 8px 0 rgba(0, 0, 0, .2);
        margin: 0;
    }
    .goriyou_ttl p {
        top:-7px;
        margin: 0 32%;
        font-size: 22px;
    }
    .nagare_credit {
        width: 80%;
        margin: 0 auto;
        margin-top: 10px;
        margin-bottom: 30px;
    }
}

/*------------------------ ご利用の流れPC ------------------------*/
.goriyou_pc {
    margin-top: 0;
}
.goriyou_pc_flx {
    display: flex;
}
.goriyou_pc01 {
    position:relative;
    width: 33.3%;
    background: #fff;
    padding: 80px 80px 105px;
}
.goriyou_pc01:after {
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(90, 230, 40, 0);
    border-top-width:379px;
    border-bottom-width:379px;
    border-left-width:20px;
    border-right-width:30px;
    margin-top: 0;
    border-left-color: #fff;
    left:100%;
    top:0%;
    z-index: 1;
}

.goriyou_pc02 {
    position:relative;
    width: 33.3%;
    background: #f0f0f0;
    padding: 80px 80px 105px;
}
.goriyou_pc02:after {
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(90, 230, 40, 0);
    border-top-width:379px;
    border-bottom-width:379px;
    border-left-width:20px;
    border-right-width:30px;
    margin-top: 0;
    border-left-color:#f0f0f0;
    left:100%;
    top:0%;
}
.goriyou_pc03 {
    width: 33.3%;
    background: #e6e6e6;
    padding: 80px 80px 105px;
}
.goriyou_pc01 p, .goriyou_pc02 p, .goriyou_pc03 p{
    margin-bottom: 20px;
}
.goriyou_pc_ttl_flx01, .goriyou_pc_ttl_flx02{
    display: flex;
    margin-bottom: 20px;
}
.goriyou_pc_ttl_flx01 p, .goriyou_pc_ttl_flx02 p {
    font-size: 30px;
    font-weight: bold;
    margin-left: 15px;
    margin-top: 15px;
}
.goriyou_pc_ttl_flx01 img {
    width: 10.5%;
    height: 10.5%;
    margin-top: 15px;
}
.goriyou_pc_ttl_flx02 img {
    width: 12%;
    height: 12%;
    margin-top: 15px;

}
.img28 {
    width: 96%;
    height: 96%;
}
@media (max-width: 1600px) {
    .goriyou_pc_ttl_flx01 img {
        width: 11.5%;
        height: 11.5%;
        margin-top: 15px;
    }
    .goriyou_pc_ttl_flx02 img {
        width: 12%;
        height: 12%;
        margin-top: 15px;
    }
    .goriyou_pc03 {
        padding: 80px 60px 105px;
    }
    .goriyou_pc02 {
        padding: 80px 40px 105px;
    }
    .goriyou_pc01 {
        padding: 80px 60px 105px;
    }
}
@media (max-width: 1400px) {
    .goriyou_pc_ttl_flx01 img {
        width: 13%;
        height: 13%;
        margin-top: 15px;
    }
    .goriyou_pc_ttl_flx02 img {
        width: 14%;
        height: 14%;
        margin-top: 15px;
    }
}
@media (max-width: 1100px) {
    .goriyou_pc_ttl_flx01 img {
        width: 13%;
        height: 13%;
        margin-top: 15px;
    }
    .goriyou_pc_ttl_flx02 img {
        width: 14%;
        height: 14%;
        margin-top: 15px;
    }
    .goriyou_pc03 {
        padding: 80px 40px 105px;
    }
    .goriyou_pc02 {
        padding: 80px 40px 105px;
    }
    .goriyou_pc01 {
        padding: 80px 40px 105px;
    }
}
/*------------------------ 対応エリア ------------------------*/
.area {
    background : url(../img/area_bg.jpg) repeat;
    padding-bottom: 30px;
}
.area_ttl {
    z-index: 10;
}
.area_ttl p {
    position: absolute;
    top:16px;
    margin: 0 36%;
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 42px;
    line-height: 1.35;
    margin-bottom: 0;
}  
.area_flx {
    display: flex;
    margin: 40px 120px;
    justify-content: space-between;
}
.area_flx_pc {
    display: flex;
    justify-content: space-between;
    max-width: 900px;
    margin: 0 auto;
    padding: 70px 0;
    
}
.area_ma {
    margin-left: 40px;
}
.area_flx img {
    width: 60%;
}
.area_blue1 {
    display: flex;
}
.area_blue1 p{
    font-size: 22px;
    font-weight: bold;
    padding: 3px 5px;
    background-color: #0e87f7;
    border-radius: 5px;
    color: #fff;
    text-align: center;
    margin-bottom: 20px;
    width: 100px;
    margin-right: 7px;
}
.area_flx p {
    font-size: 25px;
    font-weight: bold;
    padding: 3px 5px;
    background-color: #0e87f7;
    border-radius: 5px;
    color: #fff;
    text-align: center;
    margin-bottom: 9px;
}
@media (max-width: 767px) {
    .area_flx img {
        width: 70%;
    }
    .area_flx {
        display: flex;
        margin: 0 40px;
    }
    .area_ttl p {
        top:-7px;
        margin: 0 35%;
        font-size: 22px;
}
    .area_flx p {
        font-size: 16px;
        font-weight: bold;
        padding: 3px 5px;
        background-color: #0e87f7;
        border-radius: 5px;
        color: #fff;
        text-align: center;
        margin-bottom: 7px;
    }
}
/*------------------------ どんな鍵 ------------------------*/
.kagi_syurui_ttl {
    width: 100%;
}
.kagi_syurui_ttl p {
    position: absolute;
    top:16px;
    margin: 0 24.5%;
    color: #fff;
    font-weight: bold;
    padding: 26px 0 20px;
    font-size: 42px;
    line-height: 1.35;
    margin-bottom: 0;
    text-align: center;
}
.kagi_syuri_flx {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.kagi_syuri_flx p {
    font-size: 22px;
    font-weight: bold;
    color: #fff;
    background-color: #0e87f7;
    width: 184px;
    text-align: center;
    border-radius: 20px;
    z-index: 5;
    position: absolute;
    margin-left: 10px;
    margin-top: -12px;
}
.kagi_syuri_con {
    text-align: center;
    margin:30px;
    padding: 10px;
}
.kagi_syuri_nakami {
    width: 200px;
    margin: 0 auto 55px;
}
.bg_wh2 {
    background-color: #fff;
    margin: 50px 28%;
    padding: 5px 0 0 5px;
}
@media (max-width: 1600px) {
    .bg_wh2 {
        margin: 50px 24%;
    }
}
@media (max-width: 1400px) {
    .bg_wh2 {
        margin: 50px 22%;
    }
}
@media (max-width: 1250px) {
    .bg_wh2 {
        margin: 50px 15%;
    }
}

@media (max-width: 1000px) {
    .bg_wh2 {
        margin: 50px 8%;
    }
}

@media (max-width: 767px) {
    .kagi_syurui_ttl p {
        top:-7px;
        margin: 0 22%;
        padding: 26px 0 20px;
        font-size: 23px;
        line-height: 1.35;
    }
    .bg_wh2 {
        background-color: #fff;
        margin: 0 14px;
        padding: 5px 0 0 5px;
    }
    .kagi_syuri_flx p {
        font-size: 16px;
        width: 135px;
        text-align: center;
        z-index: 5;
        position: absolute;
        margin: 0 auto;
        top: 85px;
        left: 3px;
    }
    .kagi_syuri_nakami {
        width: 47%;
        position: relative;
        margin-bottom: 30px;
    }
    .kagi_syuri_con {
        text-align: center;
        margin:15px;
        padding: 10px;
    }
}
/*------------------------ 鍵メーカー ------------------------*/
.kagi_maker {
    margin: 0 0 65px 0;
}
.kagi_maker_con {
    background-color: #ebebeb;
    margin: 92px auto;
    margin-bottom: 50px;
    border-radius: 9px;
    padding: 25px;
    width: 500px;
}
.kagi_name_flx {
    display: flex;
    justify-content: space-between;
}
@media (max-width: 767px) {
    .kagi_maker_con {
        margin: 40px 13px 30px;
        padding: 20px 25px;
        width: 80%;
    }
    .kagi_maker {
        margin: 0 0 30px 0;
    }
}
/*------------------------ よくあるご質問 ------------------------*/
.QA_con1 {
    width: 300px;
    margin: 3px auto 10px;
}
.widQA {
    width:800px;
}
.accordion {
    margin-top: 50px;
}
.toggle {
    display: none;
}
.option {
    position: relative;
    margin-bottom: 1em;
}
.title,
.content {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: all 0.3s;
}
.title {
    background-color: #0058b1;
    padding: 1em;
    display: block;
    color: #fff;
    font-weight: bold;
}
.title_flx {
    display: flex;
}
.title_number {
    font-size: 30px;
    margin-right: 10px;
}
.tittle_nakami {
    line-height: 1.5;
    letter-spacing:1.5px;
}
.content {
    max-height: 0;
    overflow: hidden;
}
.A_nakami {
    margin: 0;
    padding: 1em 1em 1em;
    font-size: 0.9em;
    line-height: 1.5;
    background-color: #fff;
    border-bottom: solid 4px #0058b1;
    display: flex;
}
.tittle_nakami_A {
    font-size: 30px;
    margin-right: 14px;
    color: #ff6c29;
    font-weight: bold;
    margin-left: 22px;
    margin-top: -8px;
}
.tittle_nakami p {
    font-size: 20px;
}
.toggle:checked + .title + .content {
    max-height: 500px;
    transition: all 1.5s;
}
.toggle:checked + .title::before {
    transform: rotate(90deg) !important;
}
@media (max-width: 767px) {
    .tittle_nakami p {
        font-size: 16px;
    }
    .title_number {
        margin-right: 16px;
    }
    .tittle_nakami_A {
        margin-left: 18px;

    }
    .QA_con1 {
        width: 200px;
        margin: 3px auto;
    }
    .accordion {
        margin-top: 20px;
    }
}
/*-----WEBお問い合わせCTA-----*/
.web_cta_area {
    max-width: 540px;
    margin: 50px auto;
}
@media (max-width: 767px) {
    .web_cta_area {
        max-width: 90%;
        margin: 40px auto 30px;
    }
}
/*-----フッター-----*/
footer{
    width: 100%;
    color: #000;
    padding-bottom: 0px;
}
.fo_nakami {
    text-align: center;
    font-size: 13px;
}
footer a{
    text-decoration: none;
    color:#000!important;
}
footer a:visited{
    color: inherit;
}
@media screen and (max-width:640px){ 
    .fo_nakami {
        width: 56%;
        margin: 0 auto 7%;
    }
    footer{
        padding-bottom: 95px;
    }
}
/*----追従ボタン--*/

.ScrollTop {
    background-color:#0058b1;
    bottom: 0;
    position: fixed;
    padding: 5px 0 3px 0;
    z-index: 999;
    display: none;
    width: 100%!important;
    position: fixed;
    opacity: 0;
    transition: all 0.65s;
}
.ScrollTop.isActive {
    opacity: 1;
    transition: all 0.65s;
}
#follow_cta img{
    padding: 4% 0;
    padding: 0 3px;
    text-align: center;
}
#follow_cta a{
    margin: 0 auto;
    width: 172px;
}
#follow_cta p{
    color: #fff;
    font-weight: bold;
}
.follow_flx {
    display: flex;
    align-items: center;
    justify-content: center;
    margin:0 10px;
} 

/*-----改行-----*/
@media screen and (min-width:640px){ 
    .br-sp { 
        display: none; 
    } 
}     
@media screen and (max-width: 640px) { 
    .br-pc { display:none; } 
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */ 
.pc_no { display: block !important; } 
.sp_no { display: none !important; } 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */ 
@media only screen and (max-width: 640px) { 
    .pc_no { display: none !important; } 
    .sp_no { display: block !important; } 
}

/*プライバシーポリシー*/
#privacy a,a:visited{
    color: inherit;
    /*text-decoration:none;*/
}
.inner{
    width:60%;
    margin:0 auto;
    padding-top: 50px;
    padding-bottom: 50px;
    text-align: left;
}
.inner_ttl{
    font-size: 2rem;
    font-weight: bold;
    margin-top: 5px;
    letter-spacing: 1.5px;
    margin-bottom: 20px;
}
.inner dt{
    margin-bottom: 5px;
    font-weight: bold;
}
.inner dd{
    margin:0 auto;
}
.contact_box {
    border: 1px solid #d5d5d5;
    padding: 0 2%;
    margin-top: 2%;
}
@media screen and (max-width: 640px) { 
    .inner{
    width: 90%;
    margin: 0 auto;
    padding: 1%;
    }
    #privacy footer{
        padding-bottom:0;
    }
}