html{font-size: 10px;
    font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    Meiryo,
    sans-serif;
    color: #41424E; 
    scroll-behavior: smooth;
}
p, a, li{font-size: 16px}
h1{font-size: 4.8rem;}
h2{font-size: 3.6rem;}
h3{font-size: 3.2rem;}
h4{font-size: 2.8rem;}
h5{font-size: 2.4rem;}
h6{font-size: 2.0rem;}

ul{
    list-style: none;
    padding: 0;
}
a{
    text-decoration: none;
}

.text-right{
    text-align: right;
}
.text-center{
    text-align: center;
}
.maincolor{
    color: #FF666D;
}
.mt-30{
    margin-top: 20px;
}
.mt-50{
    margin-top: 50px;
}
.mb-10{
    margin-bottom: 10px;
}
.mb-20{
    margin-bottom: 20px;
}
.mb-30{
    margin-bottom: 20px;
}
.mb-50{
    margin-bottom: 50px;
}
.pb-97{
    padding-bottom: 97px;
}
.inline-block{
    display: inline-block;
}

.sp-br{
    display: none;
}
.fs-24{
    font-size: 24px;
}

.btn{
    display: inline-block;
    padding: 10px 30px;
    width: 256px;
    background: #FF666D;
    text-decoration: none;
    color: #FFF;
    border-radius: 5px;
}
.btn:hover{
    opacity: .8;
}

.btn02{
    width: 350px;
    margin: auto;
    text-align: center;
}
.btn02 a{
    font-size: 20px;
    padding: 15px 40px;
    border-radius: 10px;
    color: #FFF;
    text-decoration: none;
    display: block;
    background: #FF666D;

}
.btn02 a:hover{
    opacity: .8;
}


header{
    opacity: 0;
    top: -66px;/* 上に隠す鷹さ */
    display: flex;
    position: fixed;
    z-index: 10;
    width: 100%;
    background: rgba(255, 255, 255, .9);
    justify-content: space-between;
    align-items: center;
    height: 60px;
}

.header-logo{
    display: inline-block;
    position: fixed;
    top: 0;
    left: 10px;
    z-index: 50;
}
.header-info{
    margin: auto;

}
.header-info a{
    font-size: 16px;
    color: #CA2025;
    font-weight: bolder;
}

#gnavi nav {
    position: fixed;
    top: 0;
    right: -320px;
    width: 320px;
    height: 100%;
    padding-top: 50px;
    background:#41424E;
    font-size: 16px;
    box-sizing: border-box;
    z-index: 15;
}
#gnavi nav ul li {
    display:block;
    padding: 20px 28px
}
#gnavi nav ul li a {
    text-decoration: none;
    color: white;
}
#gnavi .btn-gnavi {
    position: fixed;
    top: 23px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 20;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms
}
#gnavi .btn-gnavi span {
    position: absolute;
    width: 24px;
    height: 3px;
    background: #41424E;
    -webkit-transition: all 400ms;
    transition: all 400ms
}
#gnavi .btn-gnavi span:nth-child(1) {
    top: 0;
}
#gnavi .btn-gnavi span:nth-child(2) {
    top: 7px;
    /* margin-top: 7px; */
}

#gnavi .btn-gnavi.open span:nth-child(1) {
    -webkit-transform: translateY(20px) rotate(-45deg);
    transform: translateY(4px) rotate(-45deg);
    background: white;
}
#gnavi .btn-gnavi.open span:nth-child(2) {
    -webkit-transform: translateY(-20px) rotate(45deg);
    transform: translateY(-3px) rotate(45deg);
    background: white;
}



.app-btn{
    position: fixed;
    right: 40px;
    bottom: 40px;
    text-align: center;
    z-index: 10;
}

.app-btn a{
    z-index: 9999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 140px;
    height: 140px;
    border-radius: 49%;
    background: #FF666D;
    -webkit-box-shadow: 0 0 16px 0 rgba(0,0,0,.24);
    box-shadow: 0 0 16px 0 rgba(0,0,0,.24);
    color: #fff;
    text-align: center;
    font-weight: 700;
    font-size: 1.8rem;
    line-height: 32px;
    cursor: pointer;
    -webkit-transition: all .3s cubic-bezier(.165,.84,.44,1);
    transition: all .3s cubic-bezier(.165,.84,.44,1);
    text-decoration: none;
    -webkit-transition: all 0.2s ease;
    transition: all 0.2s ease;
}


.app-btn a:hover{
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
    width: 160px;
    height: 160px;
}

.scroll-down a{
    position: absolute;
    bottom: 20px;
    right: 20%;
    z-index: 3;
    display: inline-block;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    text-decoration: none;
    padding-top: 60px;
    color: black;
}
.scroll-down a span{
    position: absolute;
    top: 0;
    left: 50%;
    width: 46px;
    height: 46px;
    margin-left: -23px;
    border: 1px solid #fff;
    border-radius: 100%;
    box-sizing: border-box;
}
.scroll-down a span::after{
    position: absolute;
    top: 50%;
    left: 50%;
    content: '';
    width: 16px;
    height: 16px;
    margin: -12px 0 0 -8px;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    box-sizing: border-box;
}
.scroll-down a span::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    content: '';
    width: 44px;
    height: 44px;
    box-shadow: 0 0 0 0 rgba(255,255,255,.1);
    border-radius: 100%;
    opacity: 0;
    -webkit-animation: sdb 3s infinite;
    animation: sdb 3s infinite;
    box-sizing: border-box;
}
@-webkit-keyframes sdb {
    0% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    60% {
        box-shadow: 0 0 0 60px rgba(255,255,255,.1);
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}
@keyframes sdb {
    0% {
        opacity: 0;
    }
    30% {
        opacity: 1;
    }
    60% {
        box-shadow: 0 0 0 60px rgba(255,255,255,.1);
        opacity: 0;
    }
    100% {
        opacity: 0;
    }
}



.breadcrumb {
    margin: 0;
    padding: 0;
    list-style: none;
}

.breadcrumb li {
    display: inline;/*横に並ぶように*/
    list-style: none;
}

.breadcrumb li:after {
    /* >を表示*/
    content: '>';
    padding: 0 0.2em;
    color: #737373;
}

.breadcrumb li:last-child:after {
    content: '';
}

.breadcrumb li a, .breadcrumb li span {
    text-decoration: none;
    color: #737373;
}

.breadcrumb-box01{
    width: 1000px;
    margin: auto;
}
.breadcrumb-box02{
    width: 900px;
    margin: auto;
}

.breadcrumb li a:hover {
    text-decoration: underline;
}




.service-sec{
    background: linear-gradient(360deg, #E9ECF2 0%, rgba(255, 255, 255, 0) 100%), #FFFFFF;
}


.main-view{
    height: 100vh;
    /* background-image: url('../img/main_back.png'); */
    background-image: url('../img/main_kamifubuki.png');
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    position: relative;
    overflow: hidden;
    z-index: -5;
}
.rec{
    position: absolute;
    background: #FFD42D;
    transform: rotate(20deg);
    z-index: -3;
}
.rec-r{
    right: -200px;
    top: -150px;
    width: 40%;
    height: 1299px;
}
.rec-l{
    left: -400px;
    top: -170px;
    width: 40%;
    height: 1299px;
}
.main-text{
    position: absolute;
    z-index: 2;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.main-text *{
    font-size: 24px;
    margin-bottom: 20px;
}
.main-thanks{
    position: absolute;
    top: 10px;
    left: 0;
}
.main-year{
    position: absolute;
    bottom: 0;
    left: 0;
}
.main-person{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
    width: 100%;
    text-align: center;
}


.b-w{
    background: black;
    color: white;
    padding: 2px;
}
.p-w{
    background: #FF666D;
    color: white;
    padding: 2px;
}
.mfs-42{
    font-size: 42px;
}
.mfs-48{
    font-size: 48px;
}
.mfs-64{
    font-size: 64px;
}
@media (max-width: 1400px) {
    .main-thanks, .main-year, .main-text{
        width: 500px;
    }
    .main-text *{
        font-size: 20px;
        margin-bottom: 10px;
    }
    .mfs-42{
        font-size: 30px;
    }
    .mfs-48{
        font-size: 40px;
    }
    .mfs-64{
        font-size: 50px;
    }
}
@media (max-width: 950px) {
    .main-view{
        background-size: cover;
    }

    .rec-l{
        left: -180px;
        top: -170px;
        width: 300px;
        height: 800px;
    }
    .rec-r{
        right: -200px;
        top: 0px;
        width: 300px;
        height: 1300px;
    }
    .main-year{
        width: 200px;
    }
    .main-thanks{
        width: 300px;
        top: 50px;
        left: 50%;
        transform: translateX(-50%);
    }
    .main-text{
        width: 98%;
    }
    .main-text *{
        font-size: 16px;
        margin-bottom: 5px;
    }
    .mfs-42{
        font-size: 20px;
    }
    .mfs-48{
        font-size: 24px;
    }
    .mfs-64{
        font-size: 28px;
    }
}

.pages-view{
    background-image: url('../img/topbg.png');
    background-position: center;
    background-repeat: repeat;
    background-size: contain;
    display: flex;
    height: 250px;
    justify-content: center;
    align-items: center;
}

.pages-title{
    text-align: left;
    width: 550px;
}
.pages-title img{
max-width: 100%;
}
.pages-title h2{
    color: white;
    font-size: 72px;
    /* text-shadow: 4px 4px 0px #FF666D; */
    -webkit-text-stroke: 1px #FF666D;
    text-shadow: 
    1px 1px 0 #FF666D,
    2px 2px 0 #FF666D,
    3px 3px 0 #FF666D,
    4px 4px 0 #FF666D,
    5px 5px 0 #FF666D,
    6px 6px 0 #FF666D,
    7px 7px 0 #FF666D,
    8px 8px 0 #FF666D,
    9px 9px 0 #FF666D,
    10px 10px 0px #FF666D;
}
.pages-title h3{
    color: #FF666D;
    font-size: 24px;
}



.service-title{
    text-align: center;
    padding-top: 50px;
}

.service-title span{
    display: inline-block;
    width: 80px;
    height: 5px;
    background: #FF666D;
}

.service-title h3{
    color: #FF666D;
    font-weight: bold;
    font-size: 2.4rem;
}

.service-title h2{
    font-weight: 500;
    font-size: 3.6rem;
}

.service-wraper{
    display: flex;
    justify-content: center;
    padding: 90px 0 90px 0;
}
.service-wraper:last-child{
    padding-bottom: 120px;
}

.reverse{
    flex-flow: row-reverse;
}

.service-point{
    text-align: center;
}

.service-point p{
    color: #FF666D;
    font-weight: bold;
    font-size: 2.4rem;
    margin-top: 50px;

}
.service-point h2 span{
    color: #FF666D;
    font-weight: bold;
    font-size: 9.6rem;
    font-family: Arial;
}

.service-num{
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 33%;
}

.service-content{
    text-align: center;
    width: 33%;
}
.service-content *{
    margin-bottom: 2rem;
}

.first-icon::before{
    content: '';
    display: block;
    width: 77px;
    height: 60px;
    background-image: url("../img/firsttime.png");
    background-size: cover;
    margin: auto;
}

.service-num p{
    font-style: normal;
    font-weight: medium;
    font-size: 200px;
    line-height: 150px;
    color: #FFB3B7;
    vertical-align: text-top;
}
.service-num h3{
    font-style: normal;
    font-weight: bold;
    font-size: 4.8rem;
    color: #000000;
}
.service-num span{
    display: inline-block;
    width: 129px;
    height: 10px;
    background: #FF666D;
}


.sec-wrapper{
    margin-bottom: 100px;
}

.section-icon-posi{
    position: absolute;
    left: 50%;
    transform: translate(-50%, -40%);
}
.section-icon-wrapper{
    width: 170px;
    height: 170px;
    border-radius: 50%;
    background: white;
    position: relative;
    z-index: -10;
}
.section-icon-wrapper--gray{
    background: #F2F2F2;

}
.section-icon{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-40%, -80%);
}
.section-icon img{
    width: 50px;
    height: 50px;
}


.sec-title{
    text-align: center;
    /* padding-top: 30px; */
    position: relative;
}
.sec-title p{
    font-size: 2.4rem;
    color: #FF666D;
}
.sec-title span{
    display: inline-block;
    width: 80px;
    height: 5px;
    background: #41424E;
}
.sec-title *{
    margin-bottom: 10px;
}
.sec-title::before{
    display: inline-block;
    content: '';
    display: inline-block;
    width: 50px;
    height: 50px;
    background-image: url("../img/plan.png");
    background-size: contain;
    vertical-align: middle;
    margin-top: -30px;
    margin-left: 5px;
}

.sec-text{
    text-align: center;
}
.sec-text p{
    font-size: 1.8rem;
    margin-bottom: 10px;
}
.sec-text span{
    display: block;
    font-size: 14px;
    margin-bottom: 0px;
}

.plan-container{
    width: 1400px;
    margin: auto;
    display: flex;
    justify-content: space-around;
    margin-top: 30px;
}


.plan{
    text-align: center;
    width: 340px;
    margin-bottom: 20px;
}
.plan-strong{
    font-weight: bold;
    font-size: 2.4rem;
    color: #FF666D;
}

.plan-top{
    height: 300px;
    margin-bottom: 20px;
}
.plan-contents{
    border: 3px solid #E4E4E4;
    border-radius: 10px;
    padding: 15px;
}
.plan-contents h3{
    padding: 3px 30px;
    font-size: 2.2rem;
    border-radius: 30px;
    margin-bottom: 20px;
}
.plan-contents--special h3{
    background: #FFD42D;
}
.plan-contents--light h3{
    background: #03ADCA;
    color: white;
}
.plan-contents--standard h3{
    background: #F96201;
    color: white;
}
.plan-contents--complete h3{
    background: #F0041B;
    color: white;
}


.plan-exp{
    font-weight: bold;
    font-size: 18px;
    color: #FF666D;
}
.plan-price{
    font-family: Arial;
    font-weight: bold;
    font-size: 96px;
    color: #FF666D;
}
.plan-before-price{
    color: #959595;
    line-height: 4rem;
}
.plan-before-price span{
    font-size: 6.4rem;
    font-family: Arial;
    font-weight: bold;
}

.plan-contents p img{
    width: 100px;
    height: 100px;
}

.plan-target{
    margin-bottom: 20px;
}
.plan-target li{
    text-align: left;
}

.plan-details p{
    font-weight: bold;
    font-size: 18px;
    line-height: 2.6rem;
    margin-top: 20px;
}
.plan-details ul{
    list-style: none;
    text-align: center;
    padding: 0;
    margin: 0;
}
.plan-details li{
    background: #F2F2F2;
    padding: 10px 20px;
    border-radius: 20px;
    font-size: 14px;
    margin-bottom: 15px;
}

.plan-details li:last-child{
    background: #FF666D;
    color: white;
    padding: 10px 20px;
    border-radius: 25px;
    font-size: 1.8rem;
    margin-bottom: 0px;
}
.plan-details li:last-child:hover{
    opacity: .8;
}
.light-list{
    background: #C5E7ED !important;
}
.standard-list{
    background: #FDD8C0 !important;
}.complete-list{
    background: #FFDBDE !important;
}
.point-list{
    color: #FF666D;
    font-weight: bold;
}
.option-list{
    background: #41424E !important;
    color: white;
}
.option-list--title{
    background: none !important;
}

.plan-details ul a{
    color: white;
    text-decoration: none;

}




.triangle{
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 15px 0 15px;
    border-color: #5F5F5F transparent transparent transparent;
    margin:auto;
    position: relative;
}
.triangle::after{
    content: "10%OFF";
    color: #FF666D;
    font-weight: bold;
    position: absolute;
    top: -20px;
    left: 20px;
}


.works{
    margin-bottom: 100px;
    text-align: center;
    margin-top: 30px;
}

#loopslider {
    margin: 0 auto;
    width: 90%;
    height: 300px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
#loopslider *{
    margin: 0;
    padding: 0;
}
#loopslider ul {
    height: 300px;
    float: left;
    display: inline;
    overflow: hidden;
}
 
#loopslider ul li {
    width: 300px;
    height: 300px;
    float: left;
    display: inline;
    overflow: hidden;
}
#loopslider ul li img{
    padding-right: 10px;
}
/* =======================================
    ClearFixElements
======================================= */
#loopslider ul:after {
    content: ".";
    height: 0;
    clear: both;
    display: block;
    visibility: hidden;
}
 
#loopslider ul {
    display: inline-block;
    overflow: hidden;
}



.text-img{
    text-align: center;
    margin-bottom: 20px;
}
.dot-text {
    padding-top: .3em;
    background-position: top left;
    background-repeat: repeat-x;
    background-size: 1em .3em;
    background-image: -webkit-radial-gradient(.15em .15em at center center,#FF666D,#FF666D 100%,transparent);
    background-image: radial-gradient(.15em .15em at center center,#FF666D,#FF666D 100%,transparent);
    /* -webkit-text-emphasis: filled circle #FF666D;
    text-emphasis: filled circle #FF666D; */
}
_::-webkit-full-page-media, _:future, :root .dot-text {
    background-position: bottom left;
}
.suport-text h2, .suport-text{
    text-align: center;
}
.suport-text ul{
    display: inline-block;
}
.suport-text li{
    text-align: left;
}
.suport-text *{
    font-size: 42px;
    font-weight: bold;
    margin-bottom: .3em;
}
.small-text{
    font-size: .8em;
}
.emphasis-num{
    font-size: 72px;
    color: #FF666D;
    padding-right: 10px;
}


.suport-price{
    font-size: 24px;
    font-weight: medium;
}

.suport-price--large{
    font-size: 48px;
    font-weight: medium;
}


.apply-sec, .sec-title--gray{
    background: #F2F2F2;
}

.apply-sec>p{
    text-align: center;
    margin-bottom: 100px;
}

.apply-step{
    width: 1200px;
    display: flex;
    margin: auto;
    justify-content: space-between;
}

.apply-step__img{
    position: relative;
    margin-bottom: 20px;
}
.appy-step__contents{
    width: 320px;
    text-align: center;
    margin-bottom: 50px;
}
.apply-step__num{
    position: absolute;
    top: 0%;
    left: 0%;
    transform: translate(-50%, -50%);
}

.appy-step__contents--title{
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 10px;
}
.appy-step__contents--text{
    margin-bottom: 10px;
}


.plan-wrapper{
    width: 900px;
    margin: auto;
}

.planpage-title{
    text-align: center;
    width: 95%;
    margin: auto;
    margin-bottom: 30px;
}
.planpage-title h2{
    font-size: 36px;
    color: #FF666D;
    margin-bottom: 10px;
}

.tab-fixed {
    position: fixed;
    top: 60px;
    padding: 0;
    z-index: 10;
    width: 900px;
}

.plan_tab{
    width: 100%;
    display: flex;
    flex-direction: row;
    text-align: center;
    background-color:#fff;
    position: relative;
}
.plan_tab:after{
    content:"";
    position:absolute;
    bottom:0;
    left:50%;
    width:49vw;
    height:1px;
    background: #CCCCCC;
}
.plan_tab:before{
    content:"";
    position:absolute;
    bottom:0;
    right:50%;
    width:49vw;
    height:1px;
    background: #CCCCCC;
}   


.plan_tab__item{
    flex:1;
}
.plan_tab__link{
    position:relative;
    display: block;
    text-decoration: none;
    color: #41424E;
    cursor:pointer;
    font-size: 18px;
    font-weight: bold;
    padding:  20px 0;
}
.plan_tab__link:before{
    content:"";
    position:absolute;
    bottom:0;
    right:50%;
    width:0;
    height:3px;
    transition:all 0.4s ease-out;
    z-index: 5;
}
.plan_tab__link:after{
    content:"";
    position:absolute;
    bottom:0;
    left:50%;
    width:0;
    height:3px;
    transition:all 0.4s ease-out;
    z-index: 5;
}
.plan_tab__link--special:after, .plan_tab__link--special:before{
    background-color:#FFD42D;
}
.plan_tab__link--light:after, .plan_tab__link--light:before{
    background-color:#03ADCA;
}
.plan_tab__link--standard:after, .plan_tab__link--standard:before{
    background-color:#FF8334;
}
.plan_tab__link--complete:after, .plan_tab__link--complete:before{
    background-color:#FF4B5D;
}
.plan_tab__link--special{
    color: #F6BE40;
}
.plan_tab__link--light{
    color: #03ADCA;
}
.plan_tab__link--standard{
    color: #FF8334;
}
.plan_tab__link--complete{
    color: #FF4B5D;
}


.plan_tab__link.on:before{
    width:50%;
}
.plan_tab__link.on:after{
    width:50%;
}
.plan_tab-body{
}
.plan_tab-body__item{
    width:100%;
    height: 100%;
    text-align:center;
    display: none;
}
.plan_tab-body__item.on{
    display: block;
    animation-name: fade-in;
    animation-duration: .7s;
}
@keyframes fade-in {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}


.planpage__price img{
    width: 150px;
}

.planpage__explanation{
    width: 80%;
    text-align: left;
    margin: auto;
}

.planpage__explanation p{
    margin-bottom: 20px;
}

.planpage__plan-contents{
    padding: 20px;
    margin-bottom: 50px;
}

.planpage__plan-contents--special{
    background: #FCF6E2;
}
.planpage__plan-contents--light{
    background: #E0F2F5;
}
.planpage__plan-contents--standard{
    background: #FFE9DB;
}
.planpage__plan-contents--complete{
    background: #FFE8EA;
}

.planpage__plan-contents-flex{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.planpage__plan-contents-item{
    background: white;
    border-radius: 5px;
    padding: 15px;
    width: 273.333px;
    margin-bottom: 20px;
}

.planpage__plan-contents-item .planpage__title{
    margin-bottom: 10px;
    font-size: 16px;
    font-weight: 600;
}

.planpage__plan-contents-item .planpage__text{
    text-align: left;
    color: #5F5F5F;
    font-size: 14px;
}

.planpage__suport-top--title{
    font-size: 24px;
}
.planpage__suport-top--point{
    font-size: 24px;
    color: #FF666D;
}
.planpage__suport-top--point span{
    font-size: 32px;
}

.planpage__suportpack{
    background: white;
    padding: 20px;
    margin-bottom: 30px;
}
.planpage__suportpack:last-child{
    margin-bottom: 0;
}

.planpage__suportpack--cat{
    color: #FF666D;
    font-size: 18px;
    font-weight: bold;

}

.planpage__suportpack--name{
    font-size: 24px;
}
.suportprice{
    font-size: 48px;
    color: #FF666D;
    font-weight: bold;

}
.suportname{
    font-weight: bold;
    margin-right: 30px;

}

.planpage__suportpack ul{
    text-align: left;
}



.btn03{
    width: 350px;
    margin: auto;
    text-align: center;
}
.btn03 a{
    font-size: 20px;
    padding: 15px 40px;
    border-radius: 10px;
    color: #FFF;
    text-decoration: none;
    display: block;
    background: #FF666D;

}
.btn03 a:hover{
    opacity: .8;
}



.gray-bg{
    background: #F3F3F3;
    padding-top: 50px;
    padding-bottom: 50px;
    position: relative;
}
.faq-wrapper{
    width: 1000px;
    margin: auto;
}

.faq-shadow{
    box-shadow: 3px 3px 0px rgba(0, 0, 0, 0.25);
}
.faq-menu{
    background: white;
    width: 250px;
    padding: 20px 10px !important;
}
.faq-menu a{
    color: #41424E;
}
.faq-menu-wrapper{
    /* display: inline-block; */
    position: absolute;
    top: 50px;
    border-radius: 5px;
}
.faq-menu li{
    padding: 10px;
    border-bottom: #E3E3E3 solid 1px;
    font-weight: bold;
}

.faq-list h2{
    font-size: 20px;
    font-weight: bold;
    box-sizing: border-box;
    padding-left: 1em;
    border-left: solid 5px #FF666D;
    margin-bottom: 20px;
}

.faq-q{
    display: flex;
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: center;
    position: relative;
}

.faq-q::before {
    font-family: Arial;
    content: 'Q.';
    display: inline-block;
    vertical-align: middle;
    font-size: 36px;
    line-height: 1;
    color: #FF666D;
    margin-right: 10px;
    width: 40px;
}
.faq-q::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-top: solid 5px #FF666D;
    border-right: solid 5px #FF666D;
    transform: rotate(135deg);
    transition: .3s;
}
.faq-a{
    display: flex;
    justify-content: flex-start;
    flex-wrap: nowrap;
    align-items: center;
}
.faq-a::before {
    font-family: Arial;
    content: 'A.';
    display: inline-block;
    vertical-align: middle;
    font-size: 36px;
    line-height: 1;
    color: #55C1CE;
    font-weight: bold;
    margin-right: 10px;
    width: 40px;
}
.faq-content-wrapper{
    margin-bottom: 40px;
    float: right;
    width: 700px;
}

.faq-content{
    font-size:0px; /* ラベルと開く部分を分離する時は数値を入れる */
    background: white;
    border-radius: 5px;
    margin-bottom: 30px;
}

.faq-content label{
    width: auto;
    font-size: 16px; /* ラベルの文字サイズ */
    font-weight: bold;
    background: white; /* ラベルの背景色 */
    position: relative;
    padding:20px;
    padding-right: 45px;
    cursor: pointer;
    color: #41424E;
}

.faq-content input{
    display: none;
}

.faq-content label:after{
    right: 25px;
    margin-top: -14px;
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    width: 20px;
    height: 20px;
    border-top: solid 5px #FF666D;
    border-right: solid 5px #FF666D;
    transform: rotate(135deg);
    transition: .3s;
}

.faq-content input:checked ~ label::after {
    transform: rotate(-45deg);

}

.faq-content div{
    height: 0px;
    overflow: hidden;
    opacity: 0;
    transition: 0.09s; /* 開閉スピードの設定 */
}

.faq-content input:checked ~ div{
    height: auto;
    padding: 20px;
    border-radius: 0px;
    opacity: 1;
}

.faq-content input:checked ~ label {
    border-bottom: #E3E3E3 solid 1px;
}

.faq-content-under{
    font-size: 15px; /* 開いた部分の文字サイズ */
    color: #555555; /* 開いた部分の文字色 */
}


.option{
    width: 1000px;
    margin: auto;

}
.option table{
    font-size: 16px;
    border-collapse:  collapse;     /* セルの線を重ねる */
}

.option table th:nth-child(1),.option table th:nth-child(2), .option table th:nth-child(3){
    width: 150px;
}

.option table th, .option table td{
    border: solid 1px #828282; 
    padding: 10px;
}
.option table td{
    background: white;
}



.white-bg{
    background: white;
}
.flow-wrapper{
    width: 900px;
    margin: auto;
}
.flow-flex{
    display: flex;
    justify-content: space-between;
}
.flow-content{
    padding: 20px;
    margin-bottom: 20px;
}
.flow-content h3{
    font-size: 24px;
    color: #FF666D;
    margin-bottom: 20px;
}
.flow-content p{
    margin-bottom: 20px;
}
.flow-plan{
    margin-bottom: 20px !important;
}
.flow-plan li{
    display: inline-block;
    width: 190px;
    padding: 10px 0;
    border-radius: 5px;
    font-weight: 600;
}
.flow-special{
    border: 2px solid #F6BE40;
    color: #F6BE40;
}
.flow-light{
    border: 2px solid #03ADCA;
    color: #03ADCA;
}
.flow-standard{
    border: 2px solid #FF8334;
    color: #FF8334;
}
.flow-complete{
    border: 2px solid #FF4B5D;
    color: #FF4B5D;
}
.flow-triangle {
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 15px 0 15px;
    border-color: #C4C4C4 transparent transparent transparent;
    margin: auto;
    position: relative;
}
.flow-flex-content{
    width: 49%;
}


.flow-step{
    counter-reset: my-counter;
    list-style: none;
    padding: 0;
    margin: 0;
}
.flow-step li {
    font-size: 24px;
    font-weight: bold;
    line-height: 1.5;
    position: relative;
}
.flow-step li:before {
    content: counter(my-counter);
    counter-increment: my-counter;
    background-color: #FF666D;
    border: 1px solid;
    border-radius: 50%;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 35px;
    width: 35px;
    color: #ffffff;
    font-size: 85%;
    font-weight: normal;
    line-height: 1;
    position: absolute;
    top: 0;
    left: 0;
}





.footer-item{
    background-image: url(../img/kamifubuki.png);
    background-repeat: repeat;
    background-size: contain;
    display: flex;
    justify-content: center;
    padding: 100px 0;
    margin-top: -100px;
}

.footer-contents{
    text-align: center;
    width: 400px;
    padding: 20px 0 0 0;
    border-radius: 10px;
}
.footer-contents p{
    font-size: 24px;
    margin-bottom: 20px;
}


.footer-contents a{
    color: white;
}

.footer-faq{
    background: #55C1CE;
    margin-right: 50px;
}

.footer-option{
    background: #FF666D;
}

.footer-list{
    width: 900px;
    display: flex;
    margin: auto;
    justify-content: space-between;
    padding-top: 50px;
}
.footer-list a{
    color: #000000;
}

.scroll-top{
    background: #41424E;
    text-align: center;
    cursor: pointer;
}
.scroll-top a{
    display: block;
    color: white;
}

.footer-bottom{
    background-image: url('../img/footer_bg.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    text-align: center;
    color: white;
}
.footer-logo{
    width: 400px;
    margin: auto;
    padding-top: 30px;
}
.torat-info a{
    color: white;
    font-size: 18px;
}
.linkmark a::after{
    content: url('../img/linkmark.png');
    padding-left: 5px;
}
.copyright, .torat-info{
    padding-bottom: 20px;
}

@media (max-width: 1400px) {
    .plan-container{
        width: 100%;
    }
    .plan{
        width: 24%;
    }
}

@media (max-width: 1230px) {
    .plan-container{
flex-wrap: wrap;
    }
    .plan{
        width: 48%;
    }

    .appy-step__contents {
        width: 250px;
    }
    .apply-step {
        /* display: block; */
        width: 100%;
        justify-content: space-around;
        padding-bottom: 20px;
    }
}

@media (max-width: 1000px) {
    .apply-step {
        display: block;
    }

    .appy-step__contents {
        margin: auto;
        margin-bottom: 100px;
    }
    .apply-step__num img{
        width: 100px;
    }

    .breadcrumb-box01, .breadcrumb-box02{
        width: 95%;
    }
    
    .faq-wrapper{
        width: 95%;
    }    
    .footer-contents {
        width: 90%;
    }
    .faq-menu-wrapper {
        display: flex;
        justify-content: center;
        position: static;
        margin: auto;
        margin-bottom: 30px;
    }
    
    .faq-content-wrapper {
        float: none;
        width: 100%;

    }

    .plan-wrapper{
        width: 95%;
    }

    .plan_tab__item span{
        font-size: 14px;
    }

    .faq-menu {
        width: 100%;
    }
    .option {
        width: 95%;
    }
    .option table{
        font-size: 13px;
    }
    .option table th:nth-child(1),.option table th:nth-child(2), .option table th:nth-child(3){
        width: 70px;
    }
    .option table th, .option table td {
        padding: 3px;
    }
}


@media (max-width: 900px) {
    .planpage__plan-contents-flex {
        justify-content: space-around;
    }

    .btn03{
        width: 100%;
    }
    .tab-fixed {
        width: 95%;
    }

    .flow-flex{
        display: block;
    }
    .flow-wrapper {
        width: 95%
    }
    .flow-flex-content {
        width: 100%;
        margin: auto;
        margin-bottom: 20px;
    }
    .flow-plan li {
        margin-bottom: 10px;
    }
    .footer-list {
        width: 100%;
    }

}


@media (max-width: 850px) {
    .footer-item {
        display: block;
    }
    .footer-contents {
        margin: auto;
    }
}

@media (max-width: 760px) {

    html{
        font-size: 8px;
    }

    .header-info{
        margin-top: 55px;
    }
    .header-info a{
        font-size: 12px;
    }
    header{
        height: 80px;
    }
    .plan_tab__link {
        padding: 10px 0;
    }
    .tab-fixed {
        top: 75px;
    }

    .service-wraper{
        display: block;
    }
    .service-content {
        width: 100%;
    }
    .service-num{
        width: 100%;
        margin-bottom: 30px;
    }
    .plan-container{
        display: block;
    }
    .plan{
        width: 100%;
    }

    .sp-sec{
        width: 95%;
        margin: auto;
        margin-bottom: 100px;
    }

    .app-btn{
        right: 30px;
        bottom: 30px;
    }
    .app-btn a{
        line-height: 20px;
        width: 120px;
        height: 120px;
    }
    .suport-text *{
        font-size: 22px;
        font-weight: bold;
    }
    .small-text{
        font-size: .8em;
    }
    .footer-contents p{
        font-size: 18px;
    }

    .header-info{
        font-size: 13px;
    }
    
    .footer-logo{
        width: 300px;
    }

    .pages-title{
        width: 90%;
    }
    .suportprice {
        font-size: 32px;
    }
    .suportname{
        display: block;
        margin-right: 0;
    }

    #gnavi .btn-gnavi {
        top: 15px;
        right: 10px;
    }

}
.sp-plan{
    display: none;
}
@media (max-width: 550px) {
    .sp-plan{
        display: block;
    }
    .btn03 a{
        font-size: 16px;
        padding: 10px 30px;
    }
}

@media (max-width: 420px) {
    p, a, li {
        font-size: 14px;
    }

    .btn02 a {
        font-size: 16px;
        padding: 10px 30px;
        border-radius: 8px;
    }
    .app-btn {
        right: 10px;
        bottom: 10px;
    }
    .faq-content label:after {
        right: 15px;
    }

    .planpage__explanation {
        width: 100%;
    }
    .planpage__plan-contents-item {
        width: 100%;
    }

    .footer-list{
        display: none;
    }
    .text-img{
        text-align: center;
    }
    .text-img img{
        max-width: 100%;
    }
    .footer-bottom:after{
        display: block;
        margin: 0 auto;
        width: 100%;
        height: 180px;
        background-color: #41424E;
        content: "";
    }

    .sp-br{
        display: block;
    }
    
}