@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;700&display=swap');
a:hover{}
*{}
body{}
.wrap{
    width: 100%;
    min-width: 0;
}
.inner{
    width: 90%;
}
header{}

main{}
main .bothline{
    display: none;
}

.gnav{
    padding: 10px 0;
}
.gnav .inner{
    width: 100%;
    padding: 0 10px;
}
.gnav .inner figure{}
.gnav .inner figure img{}
.gnav .inner ul{
    position: absolute;
    display: none;
}
.gnav .inner ul li{}
.gnav .inner ul li a{}
.gnav .inner ul li.cta{
    padding: 0;
}
.gnav .inner ul li.cta a{
    display: block;
}
.gnav .inner .menu-btn{}
/*ハンバーガー*/
.gnav .inner .menu-btn{display: block;width: 40px;height: 40px;background-color: #000000;z-index: 10;right: 0;position: relative;}
.gnav .inner .menu{display: flex;position: fixed;width: 100%;left: -100vw;top: 0;flex-wrap: wrap;z-index: 5;background-color: #eee;}
.gnav .inner .menu.is-active{
    left: 0;
    top: 60px;
}

.gnav .inner .menu-btn span{display: block;height: 3px;width: 20px;background-color: #fff;position: absolute;left: 10px;}
.gnav .inner .menu-btn span:nth-of-type(1){
    top: 10px;
}
.gnav .inner .menu-btn span:nth-of-type(2){
    top: 18px;
}
.gnav .inner .menu-btn span:nth-of-type(3){
    top: 26px;
}
.gnav .inner ul li{
    width: 100%;
    text-align: center;
    padding: 1% 5%;
    color: #faac5e;
    border-bottom: dotted 1px #fff;
}
.gnav .inner ul.is-active{
    left: 0;
    top: 60px;
    display: block;
    width: 100%;
    background-color: #f1f1f1;
}


.fv{}
.fv figure{}
.fv figure img{
    width: 100%;
}

span.font-red{}
span.back-red{}

.ttl{}
.ttl h2{
    font-size: 4vw;
}
.ttl h3{
    font-size: 9vw;
}

.index.content-01{
    padding: 10% 0;
}
.index.content-01 h2{
    width: 100%;
    font-size: 7vw;
    margin-bottom: 10%;
    padding-bottom: 10%;
}
.index.content-01 p{
    width: 100%;
    font-size: 4vw;
}

.index.content-02{
    padding: 10% 0;
}
.index.content-02 .plan-area{}
.index.content-02 a{
    width: 100%;
    margin-bottom: 10%;
}
.index.content-02 .plan-box{}
.index.content-02 .plan-box figure{}
.index.content-02 .plan-box figure img{
    max-width: 100px;
}
.index.content-02 .plan-box h2{}
.index.content-02 .plan-box h3{}
.index.content-02 .plan-box:after{}

.index.content-03{
    padding: 10% 0;
}
.index.content-03 .company-area{
    margin-top: 10%;
    padding-top: 10%;
}
.index.content-03 .company-area .read-text{}
.index.content-03 .company-area .read-text h2{
    font-size: 3vw;
}
.index.content-03 .company-area .read-text h3{
    font-size: 7vw;
}
.index.content-03 .company-area .row{}
.index.content-03 .company-area .row figure{
    width: 100%;
    text-align: center;
}
.index.content-03 .company-area .row figure img{
    width: 50%;
}
.index.content-03 .company-area .row .text{
    width: 100%;
    margin-top: 5%;
    text-align: center;
}
.index.content-03 .company-area .row .text h3{
    font-size: 4vw;
}
.index.content-03 .company-area .row .text p{
    font-size: 3.5vw;
}

.index.content-04{
    padding: 10% 0;
}
.index.content-04 .voice-area{}
.index.content-04 .voice-area .voice-box{
    width: 100%;
}
.index.content-04 .voice-area .voice-box dl{}
.index.content-04 .voice-area .voice-box dl dt{}
.index.content-04 .voice-area .voice-box dl dd{}
.index.content-04 .voice-area .voice-box p{}
.index.content-04 a{}

.contact-area{
    padding: 10% 0;
}
.contact-area .row{}
.contact-area .row .text{
    margin-right: 0;
    text-align: center;
    width: 100%;
    margin-bottom: 3%;
}
.contact-area .row .text h2{
    font-size: 3vw;
}
.contact-area .row .text h3{
    font-size: 6vw;
}
.contact-area .row a{
    padding: 20px;
    width: 100%;
    font-size: 16px;
    line-height: 1.7em;
}
.contact-area .row a:before{}
.contact-area .row a:after{}


footer{}
footer p{}

/*下層ページ*/
.sub-fv{}
.sub-fv h2{
    font-size: 4vw;
}
.sub-fv h3{
    font-size: 8vw;
}

.service.content-01{
    padding: 10% 0;
}
.service.content-01 p.main-copy{
    font-size: 4vw;
    margin-bottom: 5%;
    padding-bottom: 5%;
}
.service.content-01 p.read-copy{
    font-size: 3vw;
}
.service.content-01 ul{}
.service.content-01 ul li{
    font-size: 3vw;
}

.service.content-02{
    padding: 10% 0;
}
.service.content-02 .service-area{}
.service.content-02 .service-area .service-box{}
.service.content-02 .service-area .service-box .row{}
.service.content-02 .service-area .service-box .row figure{
    width: 100%;
    padding: 5%;
}
.service.content-02 .service-area .service-box .row figure img{
    width: 15%;
}
.service.content-02 .service-area .service-box .row figure h2{
    margin-top: 3%;
    font-size: 4vw;
}
.service.content-02 .service-area .service-box .row figure h3{
    font-size: 3vw;
}
.service.content-02 .service-area .service-box .row .text{
    width: 100%;
    padding: 5%;
    margin-top: 20px;
}
.service.content-02 .service-area .service-box .row .text:before{
    top: -30px;
    left: calc(50% - 17px);
    transform: rotateZ(90deg);
}
.service.content-02 .service-area .service-box .row .text p{
    font-size: 3vw;
}
.service.content-02 .service-area .service-box .row .text ul{}
.service.content-02 .service-area .service-box .row .text ul li{
    font-size: 3vw;
}


.company.content-01{
    padding: 10% 0;
}
.company.content-01 .policy{}
.company.content-01 .policy h2{
    font-size: 8vw;
    padding: 10% 0;
}
.company.content-01 .policy h2::after{}

.company.content-02{
    padding: 0 0 10%;
}
.company.content-02 .ttl{}
.company.content-02 p{
    font-size: 3.5vw;
}

.company.content-03{
    padding: 10% 0;
}
.company.content-03 dl{
    margin-top: 5%;
}
.company.content-03 dl dt{width: 100%;font-size: 3vw;padding: 5% 5% 2%;border-bottom: none;}
.company.content-03 dl dd{
    width: 100%;
    font-size: 3vw;
    padding: 0 5% 5%;
}

.voice.content-01{
    padding: 10% 0;
}
.voice.content-01 h2.sort{
    font-size: 5vw;
}

.voice.content-01 .voice-box{
    padding: 7% 7% 0;
}
.voice.content-01 .voice-box .info{
    width: 100%;
    margin-bottom: 2%;
}
.voice.content-01 .voice-box .info h3{
    font-size: 12px;
}
.voice.content-01 .voice-box .info p{
    display: inline-block;
    margin-left: 3%;
    font-size: 12px;
}
.voice.content-01 .voice-box dl{
    width: 100%;
}
.voice.content-01 .voice-box dl dt{
    font-size: 3vw;
    font-weight: 600;
}
.voice.content-01 .voice-box dl dd{
    font-size: 4vw;
    margin-bottom: 7%;
}

h2.zai-ttl{
    margin-top: 5%;
}
h2.zai-ttl span{
    font-size: 4vw;
}

.zaitore.content-01{
    padding: 10% 0;
}
.zaitore.content-01 .worrie-area{}
.zaitore.content-01 .worrie-area .worrie-box{
    width: 100%;
    margin-bottom: 5%;
}
.zaitore.content-01 .worrie-area .worrie-box h3{
    font-size: 3vw;
}
.zaitore.content-01 .worrie-area .worrie-box ul{}
.zaitore.content-01 .worrie-area .worrie-box ul li{
    font-size: 3.5vw;
    margin-bottom: 3%;
}
.zaitore.content-01 .worrie-area .worrie-box img{
    width: 30%;
}
.zaitore.content-01 .arrow{}
.zaitore.content-01 .arrow img{}
.zaitore.content-01 .arrow img.pc{
    display: none;
}
.zaitore.content-01 .arrow img.sp{
    display: block;
    width: 100%;
}
.zaitore.content-01 .resolution{}
.zaitore.content-01 .resolution .text{
    width: 100%;
    order: 2;
}
.zaitore.content-01 .resolution .text h3{
    font-size: 5vw;
    margin-bottom: 2%;
}
.zaitore.content-01 .resolution .text h4{
    width: 100%;
    text-align: center;
    padding: 4% 0;
    font-size: 5vw;
}
.zaitore.content-01 .resolution .text h4 small{}
.zaitore.content-01 .resolution figure{
    width: 100%;
    margin-bottom: 5%;
    order: 1;
}
.zaitore.content-01 .resolution figure img{
    width: 60%;
}

.zaitore.content-02{
    padding: 0 0 5%;
}
.zaitore.content-02 figure{}
.zaitore.content-02 figure img{}

.zaitore.content-03{
    padding: 5% 0;
}
.zaitore.content-03 h3{
    font-size: 5vw;
}
.zaitore.content-03 figure{}
.zaitore.content-03 figure img{
    width: 100%;
}

.zaitore.content-04{
    padding: 5% 0;
}
.zaitore.content-04 h3{
    font-size: 5vw;
}
.zaitore.content-04 h3 span{}
.zaitore.content-04 h3 span small{}
.zaitore.content-04 ul{
    padding: 5%;
}
.zaitore.content-04 ul li{
    font-size: 3vw;
    margin-bottom: 3%;
}
.zaitore.content-04 a{
    font-size: 24px;
}


/*問合せページ*/
.contact{
    padding: 10% 0;
}
.contact .alert{}
.contact form{}
.contact form div.form-group{}
.contact form div.form-group label.col-form-label{
    width: 100%;
    font-size: 3vw;
}
.contact form div.form-group label.col-form-label span{}
.contact form div.form-group div.output{
    width: 100%;
    margin-bottom: 5%;
    padding: 0;
}
.contact form div.form-group div.output textarea{}
.contact form div.form-group div.output input[type="text"],
.contact form div.form-group div.output input[type="email"]{
    height: 11vw;
    font-size: 3vw;
}
.contact form div.form-group div.output input[type="radio"]{
}
.contact form .submit-area{}
.contact form div.form-group div.output div{
    margin-top: 2%;
}
.contact form div.form-group div.output div label{
    font-size: 3vw;
}
.contact form div.form-group div.output div label input{}
.contact form .submit-area input{
    font-size: 3vw;
    padding: 3% 7%;
}
.contact form .submit-area input.btn-primary{}
.contact form .submit-area input.btn-secondary{}
.contact p.text-right{}

