@charset "utf-8";
/* CSS Document */

/* PC & SP */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, section, summary, time, mark, audio, video, hr {
  margin: 0;
  padding: 0;
  border: 0;
  vertical-align: baseline;
}

body * {
  box-sizing: border-box;
}

ol, ul {
  list-style: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  vertical-align: bottom;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

a {
  color: #e11e23;
  font-weight: bold;
}

.flex-container1 > p > a:hover {
  filter: brightness(110%);
}

.cta-area > p > a:hover {
  filter: brightness(110%);
}

.threestep-zone p > a:hover {
  filter: brightness(110%);
}

p{
font-family: 'Zen Maru Gothic', sans-serif;
font-style: normal;
font-weight: 700;
color: #5B5B5B;
}


.swiper-slide2-5:hover {
  filter: brightness(100%);
}

.switch{
visibility: hidden;
}

    .text-wide{
        display: inline-block;
     transform: scale(1.2, 1);
        font-size: 108%;
}


/*PC版*/

@media screen and (min-width:779px) {
    
    
    body{
        width: 100vw;
    }
    
    p{
        font-size: 1.14vw;
    }
    
    .only-sp{
        display: none;
    }
    

.title-gray{
    font-size: 2vw;
    font-weight: 700;
}


.title-red{
    font-size: 2.86vw;
    font-weight:900;
    color:#CF0038;
    line-height: 1.5;
    margin-bottom: 0.7vw;
    letter-spacing: 0.03em;
}

.smalltitle-red{
    font-size: 1.9vw;
    font-weight: 900;
    color:#CF0038;
}
    
    
    .net {
        letter-spacing: -0.2em;
    }
    

.hero-container1{
    width: 62.5vw;
    margin: auto;
    position: relative;
}

.flex-container1{
    display:flex;
}



/*キービジュアル*/
.kv{
    width: 100vw;
    background-color: #CF0038;
}

    
/*劇場*/    
    
    .gekijo-zone{
        background-color: #CF0038;
        text-align: center;    
    }
    
    .jinbutsu{
        width: 50vw;
        margin-top: 4vw;
    }
    
    
    

/*トラブル内容部分*/
    
    .moshimo{
        width: 50vw;
        margin: 0 auto;
        margin-top:4vw;
    }

    .liskttl{
        width: 50vw;
        margin-bottom: 1vw;
        z-index: 10;
    }    
    
.trouble-zone{
    background-color: #FFF4F4;
    text-align: center;
    padding: 2vw 0 5vw 0;
    
}

.hero-container1 > .title-red{
    margin-top: -2vw;
}

.shikashi{
    width: 9.3vw;
    display: inline-block;
    margin-top: 0.5vw;
}

.swipe-container{
    width: 27.6vw;
}




/*CTA*/

.cta-area{
    background-image: url("../img/bg2.png");
    background-size: contain;
    background-repeat: round;
    text-align: center;
    width:100vw;  
    padding: 3vw;
    margin-bottom: -2vw;
    position: relative;
}

.cta1{
    width: 56vw;
    margin: 0 auto;
    margin-top: -4vw;
    z-index: 1;
}

.cta-area >.flex-container1{
    width: 58vw;
    margin: 0 auto;
}

.btn{
    width: 26vw;
    margin: 0vw 1.2vw 1vw 1.2vw;
}

.footnote1{
    color: #FFFFFF;
    margin-bottom: 1vw;
    font-weight: 700;
}

/*ネットに関するトラブルは年々増加しています*/

.graph-zone{
    background-color: #FFCDDB;
    text-align: center;
    position: relative;
    padding-top: 0.2vw;
}


.box1{
    width: 52vw;
    background-color: #FFFFFF;
    margin: 0 auto;
    margin-top: 2vw;
    z-index: 1;
    padding: 1vw;
    margin-bottom: 6vw;
    
}

.graph{
    width: 60vw;
    margin-bottom: 2vw;
    margin-left: 4vw;
    }

.graphcap{
    margin: 0 auto;
    width: 46vw;
    text-align: center;
    font-size: 0.5vw;
}


/*トラブル事例*/
    
    .sankaku1{
        width: 9.5vw;
    }

.jirei-zone{
    background-color: #FFF8B7; 
    text-align: center;
    padding-bottom: 4vw;
}


.jirei-title{
    width: 54.1vw;
}

.jirei-box{
    padding-top: 1.2vw;
    width: 60vw;
    background-color: #ffffff;
    margin: 0 auto;
    margin-bottom: 5vw;
    border-radius: 1.3vw;
    box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.20);
}

.circle{
    width: 1.2vw;
}

.flex-circle{
    display: flex;
    width: 56vw;
    margin: 0 auto;
    justify-content:space-between;
    flex-wrap: wrap;
}

.jireinumber{
    width: 15.15vw;
}


    
    
    .jirei02{
        margin-right:5vw;
    }
    
    
    .jirei03{
        margin-right:2vw;
    }
    
    
    
    
    
    

.jirei-box > .flex-container1{
    width: 54vw;
    margin: 0 auto;
    margin-top: 1.2vw;
}

.jirei-cont{
    font-size: 2.1vw;
    line-height: 1.5;
    font-weight: 800;
    color: #CF0038;
}

.kakko {
	padding: 0.2vw;
    padding-right: 1vw;
    padding-left: 1vw;
	position: relative;
    margin-left: 2vw;
}

.kakko::before, .kakko::after {
	content: '';
	width: 15px;
	height: 100%;
	position: absolute;
}

.kakko::before {
	border-left: solid 3px #000000;
	border-top: solid 3px #000000;
	border-bottom: solid 3px #000000;
	top: 0;
	left: 0;
    border-color: #CF0038;
}

.kakko::after {
	border-right: solid 3px #000000;
	border-top: solid 3px #000000;
	border-bottom: solid 3px #000000;
	top: 0;
	right: 0;
    border-color: #CF0038;
}

.jrei-read{
    margin: 0 auto;
    width: 55vw;
    margin-top: 1.2vw;
    margin-bottom: 1.2vw;
    font-weight: 700;
}

.jirei-hosyo{
    width: 54vw;
    margin: 0 auto;
    margin-bottom: 2vw;
}

.footnote2{
    font-size: 0.78vw;
    font-weight: 700;
    padding-top: 1vw;
}



/*5つのポイント*/

.fivepoint-zone{
    background-image: url("../img/bot-bg.png");
    background-size:repeat;
    text-align: center;
    position: relative;
    padding-bottom: 4vw;
}
    
    .fivepoint-ttl{
        margin: 0 auto;
        text-align: center;
        
    }
    

    .anshin-ttl{
        width: 70vw;
        margin-top: -3vw;
    }

.flex-point{
    display: flex;
    width: 58vw;
    margin: 0 auto;
    justify-content:space-between;
    flex-wrap: wrap;
    margin-top: 2vw;
}

.flex-point2{
    display: flex;
    width: 39vw;
    margin: 0 auto;
    justify-content:space-between;
    margin-top: 1vw;
    flex-wrap: wrap;
}


.swiper-wrapper2{
    margin: 0 auto;
    margin-top: 2vw;
    text-align: center;
}


    
    .point1{
        margin: 0 auto;
    }

.points{
    width: 18.75vw;
}

.swipebox{
    width: 53vw;
    
}

.pointicon{
    width: 7vw;
}

.swipe2ttl{
    font-size: 3.5vw;
    line-height: 1.4;
    color: #FF4B89;
    margin-left: 1vw;
    font-weight: 800;
    letter-spacing: -0.04em;
}


.swipe2-left1{
    width: 20vw;
}

.swipebox > .flex-container1{
    width: 51vw;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.6vw;
}

.point-hosyo{
    width: 20vw;
    margin-bottom: 1vw;
}

.soudan1{
    width: 26vw;
    margin-left: 1vw;
    
}

.p1text{
    width: 20vw;
    font-size: 1.1vw;
    line-height: 1.6;
    text-align: left;
}

.bengoshi1{
    width: 12.7vw;
    margin-left: 2vw;
}

.p2text{
    width: 20vw;
    font-size: 1.1vw;
    line-height: 1.6;
    text-align: left;
}

.swipebox > .swiper-slide2-2{
    width: 51vw;
    align-items: center;
    justify-content: center;

}

    
    .point-cont{
        margin-left: 2vw;
    }
    
    
    .hosyo-contents{
        width: 53vw;
    }
    
    
    



.swipe2-left3{
    width: 28vw;
}

.baisyo1{
    width: 15vw;
    margin-left: 1.2vw;
    
}


.p3text{
    width: 20vw;
    font-size: 1.1vw;
    line-height: 1.6;
    text-align: left;
}


.lost1{
    width: 21vw;
    margin-left: 1vw;
}

.p4text{
    width: 20vw;
    font-size: 1.03vw;
    line-height: 1.6;
    text-align: left;
}

.swipe2-left4{
    width: 24vw;
}


.phone1{
    width: 11vw;
    margin-left: 2vw;
}

.anshin-btn{
    width: 30vw;
}

.p5text{
    font-size: 2vw;
    color: #FF4B89;
    font-weight: 700;
    line-height: 1.5;
    margin-bottom: 1vw;
}

#anshin{
    background-color: #FFB8B8;
    text-align: center;
    padding: 2vw;
    position: relative;
}

.anshin-cont{
    margin: 0 auto;
    width: 62.4vw;
    position: relative;
    
}



/*料金*/
.ryokin-zone{
    text-align: center;
    margin-top: -1.5vw;
}

.footnote3{
    font-size: 1.3vw;
    color: #CF0038;
    margin-bottom: 1.5vw;
    font-weight: 700;
}

.ryokin-hikaku{
    background-color: #FFF8B8;
    padding-top: 4vw;
}

.twentyfive{
    width: 26vw;
}

.ryokin{
    width: 55vw;
}

.sankaku2{
    width: 5vw;
    margin-left: 24vw;
}

.ryokin-contents{
    background-color: #FFCEA8;
    text-align: center;
    margin: 0 auto;
    padding-top: 2vw;
    margin-bottom: -3vw;
}

.ryokin-box{
    background-color: #FFFFFF;
    border-width: medium;
    border-style: solid;
    border-color: #CF0038;
    width: 18.75vw;
    height: 25.7vw;
    border-radius: 1.3vw;
    text-align: center;
    
    
}

.ryokin-contents >.flex-container1{
    margin: 0 auto;
    width: 60vw;
    justify-content:space-between;
    flex-wrap: wrap;
    
}

.soudan2{
    margin-top: 1.9vw;
    width: 16vw;
}

.bengoshi2{
    margin-top: 0.7vw;
    width: 8vw;
}

.baisyo2{
    margin-top: 1.5vw;
    width: 10vw;
}


.w-area{
    height: 50%;
}

.redzone{
    width: 100%;
    height: 50%;
    background-color: #CF0038;
    border-radius: 0 0 0.7vw 0.7vw;
}

    .hosyo-naiyou{
        width: 60vw;
        padding-bottom: 3vw;
    }
    
.ryokin-box2 > .flex-container1{
    justify-content:space-between;
    flex-wrap: wrap;
}

.w-area2{
    background-color: #FFFFFF;
    width: 36%;
    border-radius: 0 1.2vw 1.2vw 0;
}

    .nishintou{
        width: 75.1vw;
        z-index: 10;
    }


/*3step*/
.threestep-ttl{
    font-size: 2.6vw;
    color: #FFFFFF;
    margin-bottom: 1.8vw;
    font-weight: 900;
    font-feature-settings: "palt";
    
}
    
    .ttl-yellow{
        color: #FFEA64;
    }
    
    .smalltitle-w{
        font-size: 80%;
    }
    
    .big3{
        font-size: 130%;
    }

    
.threestep-box{
    width: 18.6vw;
    background-color: #FFEA64;
    border-radius: 1.2vw;
    position: relative;
    text-align: center;
    margin-bottom: 2vw;
}

.threestep-icon{
    width: 7vw;
    position:absolute;
    left: -1.5vw;
    top: -1.5vw;
}


.icon{
    width: 6.25vw;
    margin-top: 1.5vw;
    margin-bottom: 1.5vw;
}


.cta-area >.flex-container2{
    display: flex;
    margin: 0 auto;
    width: 60vw;
    justify-content:space-between;
    flex-wrap: wrap;
    
}


.threestep-main{
    font-size: 1.6vw;
    color:#CF0038;
    font-weight: 800;
    line-height: 1.4;
    margin-bottom: 0.7vw;
    
}

        .step2-main{
            margin-bottom: 1.7vw;
    }
    
        .step2-icon{
         width: 8vw;       
    }    
    
    .step3-icon{
        margin-bottom: 0.7vw;
    }
    
    
    
    
.threestep-read{
    width: 15vw;
    margin: 0 auto;
    margin-bottom: 1.3vw;
}

    .step3-read{
        padding-top: 0.3vw;
    }

.cta2{
    width: 62.5vw;
    margin: 0 auto;
}


.qa{
    background-image: url("../img/bot-bg.png");
    background-size:repeat;
    background-position:center;
    text-align: center;
    position: relative;
    padding-top: 3vw;
    padding-bottom:3vw;

}

.qa-area{
    width: 62vw;
    margin: 0 auto;
}

.question{
    width: 2.6vw;
    margin-right: 1vw;
    margin-left: 1vw;
}

.answer{
    width: 2.6vw;
    margin-left: 1vw;
}

.qa-box{
    width: 60vw;
    margin-top: 2vw;
}

.QA-read-1{
    color: #FFFFFF;
    font-size: 1.5vw;
    font-weight: 700;
}

.qa-box > .redzone{
    border-radius: 0.7vw 0.7vw 0 0;
}

.qa-box > .redzone > .flex-container1{
    align-items: center;
}

.qa-box > .answer-zone > .flex-container1{
    align-items: center;
}


.answer-zone{
    background-color: #FFFFFF;
    border-radius: 0 0 0.7vw 0.7vw;
}

.qa-box > .answer-zone > .flex-container1 > p{
    text-align: left;
    padding-top: 0.5vw;
    padding-bottom: 0.5vw;
    padding-right: 1vw;
    line-height: 1.5;
     
}

.footer-zone{
    background-color: #FFEA64;
    padding: 1vw 0 1vw 0 ;
    position: fixed;
    bottom: 0;
    width: 100vw;
    z-index: 10;
}

.copyright-zone{
    background-color: #FFFFFF;
    text-align: center;
    padding-top: 2vw;
    padding-bottom: 8vw;
}

.footer-container > .flex-container1{
    margin: 0 auto;
    align-items: center;
    justify-content: space-between;
}


.footer-btn{
    width: 28vw;
}

}.footer-btn2{
    width: 21vw;
    }
    
    
.phone-btn{
    width: 18vw;
}

.footer-container{
    margin: 0 auto;
    width: 50vw;
}


.swiper-wrapper{
    margin: 0 auto;
    width: 62vw;
    margin-top: 2vw;
}

.slick-next{ 
    right:-0.5vw;
}
.slick-prev{ 
    left:-3vw!important; 
}
.slick-arrow{
    z-index:2!important; 
}

.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 2vw;
    line-height: 1;
    color: #CF0038;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li button:before{
    padding-top: 1vw;
}

.slick-dots li.slick-active button:before
{
    color: #CF0038;
    padding-top: 1vw;
}

.swiper-wrapper2{
    margin: 0 auto;
    width: 55vw;
    margin-top: 3vw;
}


    
    
    
    
    .soudan-cont{
        margin: 0 auto;
        width: 70%;
        text-align: right;
        margin-top:-20vw;
    }
    
    .soudan-w{
        width: 30vw;
    }

    

/*202303LPO*/


.yonkoma-zone{
    background-color: #CF0038;
    padding-top: 3vw;
    padding-bottom: 5vw;
    
}

.yonkoma{
    width: 60vw;
    margin-bottom: 2vw;
}

.footnote4{
    text-align: center;
    margin: 0;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 0.78vw;
}

.jirei-zone{
    padding-top: 3vw;
    margin-top: -3vw;
}

.jireicon{
    width: 55vw;
    margin :0 auto;
    margin-bottom:1vw;
    
}

.footnote5{
    text-align: center;
    font-size: 1vw;
    color: #464646;
    font-weight: 900;
}

.ctacopy{
    width: 60vw;
    margin: 0 auto;
    margin-bottom: 1.5vw;
}

.ctabtn{
    width: 50vw;
    margin: 0 auto;
}

.otoku{
    width: 55vw;
    margin: 0 auto;
}

.ryokin-zone{
    margin-top: 0;
    background-color: #FFCEA8;
    padding-top: 2vw;
}

.ryokin-family{
    background-color: #CF0038;
}

.zenin{
    width: 45vw;
}

.taiou-zone{
    background-color: #FFF8B8;
    text-align: center;
    padding-bottom: 2vw;
}

.taiou{
    width: 58vw;
    margin-left: 3vw;
} 

.threestep-zone{
    background-color: #CF0038;
    padding-top: 3vw;
    text-align: center;
    padding-bottom: 2vw;
}

.steps{
    width: 60vw;
    margin-bottom: 1vw;
}

.anshin-cont{
    margin-top: -3vw;
}

.cta-area{
    padding-bottom: 1.5vw;
}

.cta-area2{
    margin-bottom: 0;
    padding-bottom: 3vw;
}

.yonkomaparts{
    width: 15vw;
    height: 15vw;
}

.koma{
    position: relative;
}

.komatextbox1{
    width: 12vw;
    position: absolute;
    bottom: 1vw;
    left: 1.5vw;
}

.komatext1{
    font-size: 1vw;
    color: #000000;
    font-weight: 900;
    text-align: center;
    font-feature-settings: "palt";
    line-height: 1.3;
}

.komatextbox2{
    width: 13vw;
    position: absolute;
    bottom: 0.9vw;
    left: 15.5vw;
}

.komatext2{
    font-size: 1vw;
    color: #000000;
    font-weight: 900;
    text-align: center;
    font-feature-settings: "palt";
}

.komatextbox3{
    width: 12vw;
    position: absolute;
    bottom: 1vw;
    right: 19vw;
}

.komatext3{
    font-size: 1vw;
    color: #000000;
    font-weight: 900;
    text-align: center;
    font-feature-settings: "palt";
    line-height: 1.3;
}

.komatextbox4{
    width: 12vw;
    position: absolute;
    bottom: 0.9vw;
    right: 4vw;
    line-height:1.1; 
}

.komatext4{
    font-size: 1vw;
    color: #000000;
    font-weight: 900;
    text-align: center;
    font-feature-settings: "palt";
}

.sup{
    z-index: 10;
    position: relative;
    margin-top: -4.8vw;
    margin-left: 27vw;
}

.sup_woman{
    width: 5vw;
}

.yonkomalink{
    color: #000000;
    font-weight: 900;
}

.yonkomalink:hover{
    color: #CF0038;
}


/*SP版*/

@media screen and (max-width:780px){
    
    p{
        line-height: 1.4;
    }
    
    
    p{
font-family: 'Zen Maru Gothic', sans-serif;
font-style: normal;
font-weight: 500;
color: #404040;
}

    
.only-pc{
        display: none;
    }
    
.title-gray{
    font-size: 4.6vw;
    font-weight: 800;
}


.title-red{
    margin: 0 auto;
    font-size: 5.6vw;
    font-weight: 900;
    color:#CF0038;
    line-height: 1.5;
    margin-bottom: 0.7vw;
}
    .hero-conrtainer > .title-red{
        width: 100vw;
    }
    

.smalltitle-red{
    font-size: 4vw;
    font-weight: 800;
    color:#CF0038;
}

.hero-container1{
    width: 62.5 vw;
    margin: auto;
}

.flex-container1{
    display:flex;
}

    .footnote-container{
        margin: 0 auto;
        width: 90vw;
    }

    .net {
        letter-spacing: -0.2em;
    }
    


/*キービジュアル*/
.kv{
    width: 100vw;
}

    

    
    
    
    

/*トラブル内容部分*/
    
    .liskttl{
        width: 90vw;
        margin-top: 3vw;
        
        
    }      
    
    
    
.trouble-zone{
    background-color: #FFF4F4;
    text-align: center;
    width: 100vw;
    padding: 3vw 0 9vw 0;
}


.shikashi{
    width: 16vw;
    display: inline-block;
    margin-top: 0.5vw;
    vertical-align: middle;
}

.swipe-container{
    width: 68.9vw;
}

    .nanja-sp{
        margin: 0 auto;
        width: 70vw;
        margin-bottom: -2vw;
    }

    
        .moshimo{
        width: 70vw;
        margin: 0 auto;
        margin-top:6vw;
        margin-bottom:3vw;
    }
    

/*CTA*/

.cta-area{
    background-image: url("../img/bg2.png");
    background-size: contain;
    background-repeat: round;
    text-align: center;
    width:100vw;  
    padding-top: 4vw;
    position: relative;
}

.cta1{
    width: 90.5vw;
    margin: 0 auto;
    margin-top: -7vw;
    z-index: 1;
}

.cta-area >.flex-container1{
    width: 87.1vw;
    margin: 0 auto;
}

.btn{
    width: 41.95vw;
    margin: 0vw 1.2vw 1vw 1.2vw;
}

.footnote1{
    color: #FFFFFF;
    font-size: 2.8vw;
    margin-top: 3vw;
    text-align: center;
    font-weight: 700;
}
    


/*ネットに関するトラブルは年々増加しています*/

.graph-zone{
    background-color: #FFCDDB;
    text-align: center;
    position: relative;
    background-size: 38vw;
    padding-bottom: 3vw;
    padding-top: 4vw;


}


.graph-zone >.flex-container1{
    display: block;
    width: 90vw;
    text-align: left;
}
    
.graph-zone >.flex-container1 > .title-red{ 
    margin: 0 auto;
    text-align: center;
    }
    
    

.daijobu{
    width: 35.1vw;
}

    .daijo{
        margin-left: 3vw;
    }
.box1{
    width: 100vw;
    background-color: #FFFFFF;
    margin: 0 auto;
    margin-top: 4vw;
    z-index: 1;
    padding-top: 2vw;
    padding-bottom: 5vw;
    margin-bottom: 4vw;
    
}

.graph{
    width: 100vw;
}

.graphcap{
    margin: 0 auto;
    width: 87.17vw;
    text-align: center;
    font-size: 2.3vw;
}


/*トラブル事例*/
    .sankaku-con{
        margin-top: -2vw;
    }
    
    .sankaku1{
        width: 14vw;       
    }

.jirei-zone{
    background-color: #FFF8B7; 
    text-align: center;
    padding-bottom: 4vw;
}


.jirei-title{
    width: 80.85vw;
}

.jirei-box{
    width: 87.17vw;
    background-color: #ffffff;
    margin: 0 auto;
    margin-bottom: 10.25vw;
    border-radius: 1.3vw;
    box-shadow: 0px 3px 7px 0px rgba(0, 0, 0, 0.20);
    text-align: center;
    padding-bottom: 4vw;
}

    .jirei-number{
        margin-top: -3vw;
    }
    
    
    
.circle{
    width: 3vw;
}

.flex-circle{
    display: flex;
    width: 82vw;
    margin: 0 auto;
    justify-content:space-between;
    flex-wrap: wrap;
}




.jirei-box > .flex-container1{
    display: block;
    width: 80vw;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 1vw;
}

.jirei-cont{
    font-size: 4.5vw;
    font-weight: 900;
    line-height: 1.5;
    color: #CF0038;
    width: 79.2vw;
    margin: 0 auto;
    margin-top: 2vw;
}

.kakko {
	padding: 0.2vw;
	position: relative;
    margin-left: 2vw;
}

.kakko::before, .kakko::after {
	content: '';
	width: 15px;
	height: 100%;
	position: absolute;
}

.kakko::before {
	border-left: solid 3px #000000;
	border-top: solid 3px #000000;
	border-bottom: solid 3px #000000;
	top: 0;
	left: 0;
    border-color: #CF0038;
}

.kakko::after {
	border-right: solid 3px #000000;
	border-top: solid 3px #000000;
	border-bottom: solid 3px #000000;
	top: 0;
	right: 0;
    border-color: #CF0038;
}

.jrei-read{
    margin: 0 auto;
    font-size: 3.5vw;
    font-weight: 500;
    margin-top: 4vw;
    margin-bottom: 3vw;
    width: 79.2vw;
}

.jirei-hosyo{
    width: 78.7vw;
    margin: 0 auto;
    margin-bottom: 2vw;
}

.footnote2{
    font-size: 3vw;
    margin :0 auto;
    margin-top: 3vw;
    margin-bottom: 3vw;
    width: 90.8vw;
    font-weight: 700;
}

    
    .jireinumber{
    width:23.73vw;
        margin: 0 auto;
    margin-top: -30vw;
    padding-top: 2vw;
}

        .jirei2hosyo{
        width: 87vw;
    }

/*5つのポイント*/

.fivepoint-zone{
    background-image: url("../img/bot-bg.png");
    background-size:repeat;
    background-position:center;
    text-align: center;
    position: relative;
    padding-bottom: 7vw;
}


    .fivepoint-ttl{
        margin: 0 auto;
        text-align: center;
        
    }
    

    .anshin-ttl{
        width: 80vw;
        margin-top: -4vw;
        margin-right:-9vw;
    }    


.flex-point{
    margin: 0 auto;
    justify-content:space-between;
    flex-wrap: wrap;
    margin-top: 2vw;
}

.flex-point2{
    margin: 0 auto;
    justify-content:space-between;
    margin-top: 1vw;
    flex-wrap: wrap;
}


.swiper-wrapper2{
    margin: 0 auto;
    margin-top: 8vw;
    text-align: center;
    width: 79.48vw;
}



.points{
    width: 90.8vw;
    margin-top: 3vw;
}



.pointicon{
    width: 17.94vw;
}

.swipe2ttl{
    font-size: 7vw;
    line-height: 1.4;
    color: #FF4B89;
    margin-left: 1vw;
    font-weight: 800;
}

    
    
    
    

.swipe2-left1{
    width: 75vw;
}

.swipebox > .flex-container1{
    align-items: center;
    width: 74vw;
    margin: 0 auto;
    margin-bottom: 1.6vw;
    text-align: center;
    
    
}

.point-hosyo{
    width: 86vw;
}

.soudan1{
    width: 70vw;
    margin: 0 auto;
    margin-left: 1vw;
    margin-bottom: 3vw;
}

.p1text{
    margin: 0 auto;
    width: 65vw;
    font-size: 3.2vw;
    line-height: 1.6;
    text-align: left;
}

.bengoshi1{
    width: 29.38vw;
    margin-left: 2vw;
    margin-bottom: 3vw;
}

.p2text{
    margin: 0 auto;
    width: 65vw;
    font-size: 3.2vw;
    line-height: 1.6;
    text-align: left;
}



.swipe2-left2{
    margin-top: -3vw;
    width: 75vw;
} 


.swipe2-left3{
    width: 75vw;
}

.baisyo1{
    width: 38.5vw;
    margin-left: 1.2vw;
    
}


.p3text{
    margin: 0 auto;
    width: 70vw;
    font-size: 3.2vw;
    line-height: 1.6;
    text-align: left;
}


.lost1{
    width: 62vw;
    margin-left: 1vw;
    margin-bottom: 3vw;
}

.p4text{
    margin: 0 auto;
    width: 65vw;
    font-size: 3.2vw;
    line-height: 1.6;
    text-align: left;
    font-weight: 500;
}

.swipe2-left4{
    width: 75vw;
}
    
    .point-cont{
        margin-left: 2vw;
    }
    
    
    .hosyo-contents{
        width: 80vw;
    }
    
    

    .hosyo6man{
        width: 55vw;
    }

.phone1{
    width: 38.5vw;
    margin-left: 2vw;
    margin-bottom: 3vw;
    margin-top: 3vw;
}

.anshin-btn{
    width: 69.2vw;
    margin-top: 4vw;
}

.p5text{
    margin: 0 auto;
    font-size: 5.89vw;
    color: #FF4B89;
    line-height: 1.5;
    margin-bottom: 1vw;
    text-align: center;
    font-weight: 800;
}
    
    .p5-sp{
        margin: 0 auto;
    }

#anshin{
    background-color: #FFB8B8;
    text-align: center;
    padding: 2vw;
    padding-bottom: 3vw;
    position: relative;
}

.anshin-cont{
    margin: 0 auto;
    width: 93vw;
    position: relative;
    margin-bottom: 2vw;
    
}



/*料金*/
.ryokin-zone{
    text-align: center;
    margin-top: -1vw;
}

.footnote3{
    font-size: 2.8vw;
    color: #CF0038;
    margin-bottom: 3vw;
    font-weight: 700;
}

.ryokin-hikaku{
    background-color: #FFF8B8;
    padding-top: 5vw;
}

.twentyfive{
    width: 43.7vw;
}

.ryokin{
    width: 87vw;
}

.sankaku2{
    width: 10vw;
    margin: 0 auto;
    margin-top: 4vw;
}

.ryokin-contents{
    background-color: #FFCEA8;
    text-align: center;
    margin: 0 auto;
    padding-top: 2vw;
    margin-bottom: -8vw;
}

.ryokin-box{
    background-color: #FFFFFF;
    border-width: medium;
    border-style: solid;
    border-color: #CF0038;
    width: 87vw;
    border-radius: 1.3vw;
    text-align: center;

}

    
.ryokin-contents >.flex-container1{
    margin: 0 auto;
    display: block;
    width: 90vw;
    
}

.soudan2{
    margin-top: 10vw;
    width: 30vw;
}

.bengoshi2{
    margin-top: 1vw;
    width: 20vw;
}

.baisyo2{
    margin-top: 1.5vw;
    width: 28vw;
}



.redzone{
    width: 100%;
    height: 60%;
    background-color: #CF0038;
    border-radius: 0 0 0.7vw 0.7vw;
}

    .hosyo-naiyou{
        padding-top: 3vw;
        width: 90vw;
        padding-bottom: 8vw;
    }
    
    
.lost2{
    width: 29vw;
    margin-top: 10vw;
}

.ryokin-box2{
    width: 87vw;
    height: 34vw;
    margin: 0 auto;
    margin-top: 1.5vw;
    padding-left: 1vw;
    background-color: #CF0038;
    border-width: medium;
    border-style: solid;
    border-color: #CF0038;
    text-align: center;
    border-radius: 4vw;
}

.ryokin-box2 > .flex-container1{
    justify-content:space-between;
    flex-wrap: wrap;
}

.redzone2{
    margin: 0 auto;
    margin-top: 2vw;        
}    
    
.w-area2{
    background-color: #FFFFFF;
    width: 40%;
    height: 32.2vw;
    border-radius: 0 4vw 4vw 0;
}

.nami{
    width: 100vw;
    margin-top: 1.5vw;
    margin-bottom: -0.2vw;
}
    .namisen{
        width: 100vw;
    }


.ryokin-family{
    background-color: #FFA661;
}

.ryokin-family > .flex-container1{
    display: block;
    padding-top: 2vw;
    width: 68.5vw;
    margin: 0 auto;
}

.family{
    width: 73vw;
    margin-bottom: -0.7vw;
}

    .nishintou{
        width: 74.6vw;
        margin-bottom: -2vw;
    }
    
    
    .manen{
        font-size: 80%;
    }

/*3step*/
.threestep-ttl{
    font-size: 5.3vw;
    color: #FFFFFF;
    margin-top: 3vw;
    margin-bottom: 5vw;
    font-weight: 700;
    
}
    
    .ttl-yellow{
        color: #FFEA64;
    }
    
    .smalltitle-w{
        font-size: 80%;
    }
    
    .big3{
        font-size: 130%;
    }

.threestep-box{
    width: 87.14vw;
    background-color: #FFEA64;
    border-radius: 1.2vw;
    position: relative;
    text-align: center;
    margin: 0 auto;
    padding: 2vw 1vw 1vw 1vw;
    margin-bottom: 4vw;
}

.threestep-icon{
    width: 14.72vw;
    position:absolute;
    left: -2.5vw;
    top: -1.5vw;
}


.icon{
    position: absolute;
    text-align: right;
    width: 13vw;
    margin-top: 2vw;
    margin-bottom: 2vw;
    right: 2vw;
}


.cta-area >.flex-container2{
    text-align: center;
    margin: 0 auto; 
}


.threestep-main{
    font-size: 4.35vw;
    color:#CF0038;
    line-height: 1.4;
    margin-bottom: 0.8vw;
    font-weight: 900;
    
}

.threestep-read{
    width: 54vw;
    margin: 0 auto;
    margin-bottom: 3vw;
    font-size: 3.3vw;
    line-height: 1.5;
    font-weight: 700;
    
}


.cta2{
    width: 90vw;
    margin: 0 auto;
    margin-bottom: 2vw;
}


.qa{
    background-image: url("../img/bot-bg.png");
    background-size:repeat;
    background-position:center;
    text-align: center;
    position: relative;
    padding-top: 7vw;
    margin-top: 6vw;
    padding-bottom: 2vw;
}

.qa-area{
    width: 87.14vw;
    margin: 0 auto;
}

.question{
    width: 9vw;
    margin-right: 1vw;
    margin-left: 1vw;
}

.answer{
    width: 9vw;
    margin-right: 1vw;
    margin-left: 1vw;
    padding-left: 2vw;
    margin-top: -2vw;;
}

.qa-box{
    width: 87.14vw;
    margin-top: 4vw;
    margin-bottom: 5vw;
    
}

.QA-read-1{
    color: #FFFFFF;
    font-size: 4.1vw;
    line-height: 1.5;
    font-weight: 700;
    text-align: left;
}

.qa-box > .redzone{
    border-radius: 2vw 2vw 0 0;
}

.qa-box > .redzone > .flex-container1{
    align-items: center;
}

.qa-box > .answer-zone > .flex-container1{
}


.answer-zone{
    background-color: #FFFFFF;
    border-radius: 0 0 2vw 2vw;
    padding-bottom: 2vw;
    
}

.qa-box > .answer-zone > .flex-container1 > p{
    text-align: left;
    margin-top: 1vw;
    padding-top: 1vw;
    padding-bottom: 0.5vw;
    font-size: 3.58vw;
    line-height: 1.4;
    font-weight: 700;
    padding-right: 3vw;
}

.footer-zone{
    background-color: #FFEA64;
    padding: 0.5vw 0 2vw 0 ;
    position: fixed;
    bottom: 0;
    width: 100vw;
    z-index: 10;
}

.copyright-zone{
    font-size: 2.82vw;
    background-color: #FFFFFF;
    text-align: center;
    padding-top: 4vw;
    padding-bottom: 30vw;
}

.footer-container > .flex-container1{
    margin: 0 auto;
    align-items: center;
    width: 90vw;
    justify-content:space-between; 
}


.footer-btn{
    width: 40vw;
}.footer-btn2{
    width: 50vw;
}

.phone-btn{
    width: 80vw;
}

.footer-container{
    margin: 0 auto;
    margin-top: 1.4vw;
    text-align: center;
    width: 100vw;
    
}

    
.btn-sp{
    width: 87.17vw;
    margin: 0 auto;
    margin-top: 1.4vw;
        
}    

.swiper-wrapper{
    margin: 0 auto;
    width: 80vw;
    margin-top: 2vw;
}

.slick-next{ 
    right:-4.2vw!important; 
    margin-top: 0.1vw;
}

.slick-arrow{
    z-index:2!important; 
}

.slick-prev:before, .slick-next:before {
    font-family: 'slick';
    font-size: 8vw;
    line-height: 1;
    color: #CF0038;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li button:before{
    padding-top: 1vw;
}

.slick-dots li.slick-active button:before
{
    color: #CF0038;
    padding-top: 1vw;
}

.swiper-wrapper2{
    margin: 0 auto;
    width: 82vw;
    margin-top: 7vw;
}    
    
.slick-slide img {
    display: inline;
}    
    
    .slick-dots{
        margin-bottom: 4vw;
    }   
    
    
    
    .soudan-cont{
        margin: 0 auto;
        text-align: center;
    }
    
    .soudan-w{
        width: 80vw;
    }
    
 
/*202303LPO*/    
    
.yonkoma-zone{
    background-color: #CF0038;
    padding-top: 8vw;
    padding-bottom: 8vw;
    text-align: center;
    
}

.yonkoma{
    width: 100vw;
    margin: 0 auto;
    margin-bottom: 4vw;
}

.footnote4{
    width: 85vw;
    text-align: center;
    margin: 0 auto;
    color: #FFFFFF;
    font-weight: 700;
    font-size: 3vw;
    
}

.jirei-zone{
    padding-top: 3vw;
    margin-top: -10vw;
}

.jireicon{
    width: 94vw;
    margin :0 auto;
    margin-bottom:1vw;
    
}

.footnote5{
    width: 94vw;
    margin: 0 auto;
    text-align: center;
    font-size: 4vw;
    color: #464646;
    font-weight: 900;
}

.ctacopy{
    width: 90vw;
    margin: 0 auto;
    margin-bottom: 1.5vw;
}

.ctabtn{
    width: 94vw;
    margin: 0 auto;
    margin-left: 2vw;
}

.otoku{
    width: 94vw;
    margin: 0 auto;
}

.ryokin-zone{
    background-color: #FFCEA8;
    padding-top: 8vw;
    margin-top: -10vw;
}

.ryokin-family{
    background-color: #CF0038;
}

.zenin{
    width: 94vw;
}

.taiou-zone{
    background-color: #FFF8B8;
    text-align: center;
    padding-bottom: 7vw;
    padding-top: 4vw;
}

.taiou{
    width: 94vw;
    margin-top: -4vw;
}

.threestep-zone{
    background-color: #CF0038;
    padding-top: 7vw;
    text-align: center;
    padding-bottom: 2vw;
}

.steps{
    width: 94vw;
}

.anshin-cont{
    margin-top: -3vw;
}    
    
    .qa{
        margin-top: 0;
    }    
    
    
 .yonkomaparts{
    width: 100vw;
     height: auto;
}


.yonkomalink{
    color: #000000;
    font-weight: 900;
}

.yonkomalink:hover{
    color: #CF0038;
}   
    
    .komacon-sp{
        width: 69vw;
        margin: 0 auto;
        justify-content: space-between;
        margin-top: -12vw;
        margin-bottom: 4.6vw;
        padding-left: 2.6vw;
    }    

    .komatext1sp{
        font-size: 2.5vw;
        color: #000000;
       font-weight: 900;
        text-align: center;
       font-feature-settings: "palt";
    }
    
        .komatext2sp{
        font-size: 2.5vw;
        color: #000000;
       font-weight: 900;
        text-align: center;
       font-feature-settings: "palt";
    }
    

        .komatext3sp{
        font-size: 2.5vw;
        color: #000000;
       font-weight: 900;
        text-align: center;
       font-feature-settings: "palt";
    }    
    

            .komatext4sp{
        font-size: 2.5vw;
        color: #000000;
       font-weight: 900;
        text-align: center;
       font-feature-settings: "palt";
    }
    
    .komacon-sp2{
        width: 70vw;
        margin: 0 auto;
        justify-content: space-between;
        align-items: center;
        margin-top: -12.5vw;
        margin-bottom: 4vw;
    }    
    
    
}



