html{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: calc(10/375 * 100vw);
    color: #3a3a3a;

}



@media (min-width: 768px) {
    html {
        font-size: calc(10/1920*100vw); /* PCのカンプが1920pxなので1920としている */
    }

    .sp {
        display: none !important;
    }
}

@media (max-width:767px){
    .pc{
        display: none !important;
    }
}

.header{
    width: 100%;
    height: 50px;

   
    top:17px;

    z-index: 999;
}





.headerNav__logo {
    width: 100%;
    padding: 10px;

    
    display: flex;
}

.header__logo--img  {
   
    width: 13.0rem;
    height: auto;
    left: 26px; 
    padding-top: -0.5rem;


    display: flex;
}   

@media (min-width: 900px) {
    .header {
        height: 8rem;
        padding: 0 5rem;
        position: static;
    }

    .header__logo {
        width: 6.5rem;
        height: 6.5rem;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .header__logo--img {
        width: 38.7rem;
    }
}

.mv {
    background-image: url(../images/mv_bg_sp.jpg);
    background-size: cover;
    background-repeat: no-repeat;

    aspect-ratio: 375/655;
}

.mv__text--container {
   padding-top: 6.0rem;
    padding-left: 26px;

    position: relative;

}

.mv__minpaku--img {
    position: absolute;
    width: 6.0rem;
    height: auto;
    top: 15%;

}


.mv__ryokan--img {
    position: absolute;
    width: 8.0rem;
    height: auto;
    top: 15%;
    left: 25%;
}


.mv__day--img {
    position: absolute;
    width: 13.0rem;
    height: auto;
    top: 15%;
    left: 49%;
}



.mv__subtitle {
    font-size: max(2.4rem,12px);
}

.mv__maintitle {
    font-size: max(3.2rem,16px);
}

@media (min-width: 768px) {
    .mv {
        width: 100%;
        max-width: 100%;

        background-image: url(../images/fv_bg_pc.jpg);
        aspect-ratio: 1920 / 1000;
       
        position: relative;
    }

    .mv__text--container{
        width: 96.2rem;
        position: absolute;
        top:39rem;
        left:56.5rem;
        padding: 0;
    }

    .mv__minpaku--img {
        position: absolute;
        width: 20.0rem;
        height: auto;
        top: 15%;
    
    }
    
    
    .mv__ryokan--img {
        position: absolute;
        width: 25.0rem;
        height: auto;
        top: 15%;
        left: 25%;
    }
    
    
    .mv__day--img {
        position: absolute;
        width: 38.8rem;
        height: auto;
        top: 15%;
        left: 56%;
    }

    .mv__subtitle {
        font-size: clamp(14px,6.4rem,64px);
        text-align: left;

        position: relative;
        z-index: 1;
        top: 13rem;
    }
    
    .mv__maintitle {
        font-size: clamp(14px,6.4rem,64px);
        display: inline-block;
        text-align: right;
        position: relative;
        z-index: 1;
        top: 14rem;
    }
    

    

    .mv__subtext {
        font-size: clamp(14px,3.2rem,32px);
        text-align: left;

        position: relative;
        z-index: 1;
    }

    .mv__maintext {
        font-size: clamp(14px,7.0rem,70px);
        display: inline-block;
        text-align: right;
        position: relative;
        z-index: 1;
    }

    .mv__maintext--small{
        font-size: clamp(14px,5.5rem,55px);
    }


}

.worries{
    text-align: center;
}


.worries__content--wrap {
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(../images/bg_worries_sp.png);


    height: 75.6rem;
    position: relative;
}

.worries__content{
    width: 100%;
    position: absolute;
    top: 4rem;
    left: 50%;
    transform: translateX(-50%);
    text-align:center
}

.worries__title {
    font-size: 2rem;
    text-align: center;
    margin-bottom: 1.0rem;
    padding-top: 0.5rem;
}


.worries__title--emphasis{
    font-size: 2.4rem;
    color: #3D6EA0;
}

.worries__container{
    width: 100%;
    text-align: center;
}


.icon__kouji--img{
    padding-top: 3.0rem;
    width: 12.0rem;
    
    
    
}
.worries__subtitle{
   
    font-size: 1.6rem;
    
    
    text-align: center;
}

.worries__subtitle--emphasis{
    font-size: 2.0rem;
    color: #F48F1D;
}

.br::after {
    content: "\A";
    white-space: pre;
}


.icon__syorui--img{
    padding-top: 2.0rem;
    width: 12.0rem;
    
    
    
}

.icon__cost--img{
    padding-top: 2.0rem;
    width: 12.0rem;
    
    
    
}

@media (min-width: 768px) {
.worries__content--wrap {
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url(../images/bg_worries_pc.png);
    text-align: center;
    width: 120.5rem;
    height: 66.3rem;
    position: relative;
    aspect-ratio: 1920 / 860;
    left: 35rem;
}

.worries__content{
    max-width: 1205px;
    margin: 0 auto;
    display: flex;
   

    top: 10rem;
    left: 54%;
    text-align:center;
    gap:calc(30 / 1205 * 100%)
}

.worries__title {
    font-size: 5rem;
    text-align: center;
    margin-bottom: 1.0rem;
    padding-top: 2.5rem;
}


.worries__title--emphasis{
    font-size: 6rem;
    color: #3D6EA0;
}

.worries__container{

    width: calc(350 / 1205 * 100%);
   
}

.icon__kouji--img{
    padding-top: 3.0rem;
    width: 30.0rem;
    
    
    
}
.worries__subtitle{
   
    font-size: clamp(14px,1.8rem,18px);
    margin-left: 1.0rem;
}

.worries__subtitle--emphasis{
    font-size: clamp(14px,3.6rem,36px);
    color: #F48F1D;
}

.br::after {
    content: "\A";
    white-space: pre;
}


.icon__syorui--img{
    padding-top: 3.0rem;
    width: 30.0rem;
    
    
    
}

.icon__cost--img{
    padding-top: 3.0rem;
    width: 30.0rem;
    
    
}
}

.solution{
    padding-top: 5.0rem;
    color: #D6EBD9;
    height: 45rem;
    position: relative;
}

.solution__content--wrap {


    padding-top: 1.5rem;
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #D6EBD9;
    


    height: 41.0rem;
    position: relative;
}


.solution__content{
    width: 100%;
    position: absolute;
    text-align: center;
    
   



}


.solution--img{
    
    width: 28.2rem;
    padding-left: 0rem;
    
    

}

.solution__title{
    font-size: 1.8rem;
    text-align: center;
    margin-top: 1.0rem;
    color: #3a3a3a;
}

mark {
    background: linear-gradient(transparent 40%, #FEED4E 80%);
  }

  .solution__subtitle--emphasis{
    font-size: 2.4rem;
    color: #22AA41;
  }
.solution__subtitle2--emphasis{
    font-size: 1.6rem;
    color: #3a3a3a;
}


.solution__title2{
    font-size: 2.0rem;
    text-align: center;
    margin-top: 0.5rem;
    color: #3a3a3a;
}

.solution--img2{
    width: 45%;
    margin-top: 15px;

    
    text-align: center;
}

@media (min-width: 768px) {
.solution{
    padding-top: 5.0rem;
    color: #D6EBD9;
    height: 100rem;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
     background-color: #D6EBD9;
     text-align: center;

}

.solution__content--wrap {

   
    padding-top: 1.5rem;
    width: 120.5rem;
    left: 35rem;

    position: relative;
    gap:calc(115 / 1205 * 100%)
}


.solution__content{
    
   
  
    text-align: center;

}


.solution--img{
    
    width: 51.5rem;
    padding-left: 0rem;
    
    

}

.solution__title{
    font-size: 3.0rem;
    margin-top: 1.0rem;
    color: #3a3a3a;
}

mark {
    background: linear-gradient(transparent 40%, #FEED4E 80%);
  }

  .solution__subtitle--emphasis{
    font-size: 5.0rem;
    color: #22AA41;
  }
.solution__subtitle2--emphasis{
    font-size: 4.6rem;
    color: #3a3a3a;
}


.solution__title2{
    font-size: 5.0rem;
    text-align: center;
    margin-top: 0.5rem;
    color: #3a3a3a;
}

.solution--img2{
    width: 50%;
     margin-top: 15px;

   
    text-align: center;
}


}





.reason {
    background-color: #F0F0F0;
    padding: 3rem 0;
    text-align: center;

}

.reason__title {
    font-size: 2.2rem;
    text-align: center;
    margin-bottom: 1.0rem;
    color: #3a3a3a;

}

.reason--img2{
    margin-top: 15px;
    width: 18.5em;
    border-radius: 30px;   /* 角丸の指定 */
    text-align: center;
    margin-bottom: 15px;
}



@media (min-width: 768px) {
.reason {
    background-color: #F0F0F0;
    padding: 3rem 0;
    text-align: center;

}

.reason__title {
    font-size: 5.0rem;
    text-align: center;
    margin-bottom: 1.0rem;
    color: #3a3a3a;

}

.reason--img2{
    margin-top: 15px;
    width: 26rem;
    border-radius: 30px;   /* 角丸の指定 */
    text-align: center;
    margin-bottom: 15px;
    margin-right: 5rem;
}

}


.cta{
    padding-top: 1.5rem;
   
    height: 15rem;
    position: relative;
    background-color: #1EAA39;
}

.cta__title {
    font-size: 1.6rem;
    text-align: center;
  
    color: #FAD51A;

}

.cta--container {
    padding-top: 1.0rem;
     padding-left: 75px;
 
     position: relative;
 
 }


.cta--img{
    position: absolute;
    width: 3.0em;
    margin-bottom: 15px;
}

.cta__telephonenumber {
    font-size: 2.6rem;
    padding-left: 36.5px;
    font-family:  Roboto;
    color: #fff;

}

.cta__button {
    background-color: #FD6101;
    width:calc(300 / 375 * 100%);
    margin: 0 auto;
    position: relative;
    top: 1rem;
}

.cta__button--link {
    display: block;
    padding:1.8rem 5rem;
    text-align: center;
    color: #ffffff;
    font-size: 1.8rem;
}

.cta__button--arrow {
    display: inline-block;
    vertical-align: middle;
    color: #ffffff;
    line-height: 1;
    position: relative;
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 1.6rem;
    top: 50%;
    transform: translateY(-50%) translateX(-25%) rotate(45deg);
}

.cta__button--arrow::before, .cta__button--arrow::after {
    content: '';
    position: absolute;
    background: #ffffff;
    border-radius: 0.1rem;
}

.cta__button--arrow::before {
    top: 0;
    left: 0;
    right: 0;
    height: 0.2rem;
}

.cta__button--arrow::after {
    top: 0;
    right: 0;
    bottom: 0;
    width: 0.2rem;
}

@media (min-width: 768px) {
.cta{
    padding-top: 4.5rem;
   
    height: 35.5rem;
    position: relative;
    background-color: #1EAA39;
}

.cta__title {
    font-size: 5.0rem;
    text-align: center;
  
    color: #FAD51A;

}

.cta--container {
    padding-top: 2.0rem;
     padding-left: 320px;
 
     position: relative;
 
 }


.cta--img{
    position: absolute;
    width: 8.5rem;
    margin-bottom: 15px;
    left: 335px;
}

.cta__telephonenumber {
    font-size: 8.0rem;
    padding-left: 63.5px;
    font-family:  Roboto;
    color: #fff;

}

.cta__button {
    background-color: #FD6101;
    width:calc(105 / 375 * 100%);
    margin: 0 auto;
    position: relative;
    top: 1rem;
}

.cta__button--link {
    display: block;
    padding:1.8rem 5rem;
    text-align: center;
    color: #ffffff;
    font-size: 2.8rem;
}

.cta__button--arrow {
    display: inline-block;
    vertical-align: middle;
    color: #ffffff;
    line-height: 1;
    position: relative;
    width: 1rem;
    height: 1rem;
    position: absolute;
    right: 1.6rem;
    top: 50%;
    transform: translateY(-50%) translateX(-25%) rotate(45deg);
}

.cta__button--arrow::before, .cta__button--arrow::after {
    content: '';
    position: absolute;
    background: #ffffff;
    border-radius: 0.1rem;
}

.cta__button--arrow::before {
    top: 0;
    left: 0;
    right: 0;
    height: 0.2rem;
}

.cta__button--arrow::after {
    top: 0;
    right: 0;
    bottom: 0;
    width: 0.2rem;
}

}



.fireequipment__title{
    font-size: 3.0em;
    text-align: center;
    color: #F0F0F0;
    
    font-weight: bold;
}

.fireequipment__subtitle{
    font-size: 1.8em;
    text-align: center;
    color: #3a3a3a;
    padding-top: 15px;
    font-weight: bold;
}

.fireequipment{
    height: 67.5rem;
    position: relative;
}

.fireequipment--wrap {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #D6EBD9;
    


    height: 12.0rem;
    position: relative;
    top:15px;
}

.fireequipment--img{
    margin-top: 5px;
border-radius: 50%;  /* 角丸の半径を50%に*/
    width:  100px;
    height: 100px;

    position: absolute;
}

.fireequipment__title2{
    font-size: 1.6rem;
    margin-top: 1.0rem;
    color: #3a3a3a;
    padding-left: 11rem;
    position: relative;
    top:10px;
}

.fireequipment__title3{
    font-size: 1.4rem;
    margin-top: 2.0rem;
    color: #3a3a3a;
    padding-left: 9rem;
    position: relative;
    top:-5px;
}


.fireequipment--emphasis{
    font-weight: bold;
}


@media (min-width: 768px) {
.fireequipment__title{
    font-size: 14.0em;
    text-align: center;
    color: #F0F0F0;
    
    font-weight: bold;
}

.fireequipment__subtitle{
    font-size: 4.0em;
    text-align: center;
    color: #3a3a3a;
    padding-top: 15px;
    font-weight: bold;
}

.fireequipment{
    height: 100.0rem;
    position: relative;
}

.fireequipment--wrap {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #D6EBD9;
    


    height: 15.5rem;
    position: relative;
    top:15px;
    margin-bottom: 3rem;
}

.fireequipment--img{
    margin-top: 5px;
border-radius: 50%;  /* 角丸の半径を50%に*/
    width:  13.0rem;
    height: 13.0rem;
    left: 48rem;
    position: absolute;
}

.fireequipment__title2{
    font-size: 3.0rem;
    margin-top: 1.0rem;
    color: #3a3a3a;
    padding-left: 11rem;
    position: relative;
    top:10px;
    left: 55rem;
}

.fireequipment__title3{
    font-size: 2.0rem;
    margin-top: 3.0rem;
    color: #3a3a3a;
    padding-left: 11rem;
    position: relative;
    top:1px;
    left: 55rem;
}


.fireequipment--emphasis{
    font-weight: bold;
}

}


.casestudy{
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #f0f0f0;
    

    text-align: center;
    position: relative;
    
}

.casestudy__title{
    font-size: 3.0em;
    text-align: center;
    color: #fff;
    
    font-weight: bold;
}

.casestudy__container {
    display: block;
    
  }


.casestudy--img{
    margin-top: 10px;
    width:  265px;
   
    
}

.casestudy--img2{
    margin-top: 10px;
    width:  265px;
  
    
}

.casestudy--img3{
    margin-top: 10px;
    width:  265px;
   
    
}

.casestudy--img4{
    margin-top: 10px;
    width:  265px;
    
    
}

@media (min-width: 768px) {
.casestudy{
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #f0f0f0;
    

    text-align: center;
    position: relative;
    
}

.casestudy__title{
    font-size: 14.0rem;
    text-align: center;
    color: #fff;
    
    font-weight: bold;
}

.casestudy__container {
    display: flex;
    justify-content: space-between;
  }


.casestudy--img{
    margin-top: 20px;
    width: 60rem;
    height: 100%;
    margin-left: 15%;
   
    
}

.casestudy--img2{
    margin-top: 20px;
    width: 60rem;
    margin-right: 15%;
    
}

.casestudy--img3{
    margin-top: 10px;
    width: 60rem;
    height: 100%;
    margin-left: 15%;
    
}

.casestudy--img4{
    margin-top: 10px;
    width: 60rem;
    margin-right: 15%;
    
    
}
}


.hattyyuu{
    text-align: center;
   
    position: relative;
    
}

.hattyuu--img{
    margin-top: 10px;
    width:  352px;
    text-align: center;
    
}

@media (min-width: 768px) {
.hattyyuu{
    text-align: center;
   
    position: relative;
    
}

.hattyuu--img{
    margin-top: 10px;
    width:  70%;
    text-align: center;
    
}
}


.qa{
    background-size: cover;
    position: relative;
}


.qa__title{
    font-size: 1.8em;
    text-align: center;
    margin-top: 10px;
    font-weight: bold;
    
}

.qa--wrap {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #1EAA39;
    


    height: 4.0rem;
    position: relative;
    top:15px;
    padding-bottom: 2.0rem;
}

.qa--container {
    padding-top: 1.0rem;
     padding-left: 2.5rem;
     position: relative;
 
 }


.qa__subtitle{
    font-size: 2.0rem;
    width:  3.1rem;
    font-weight: bold;
    font-family:  Roboto;
    color: #fff;
    position: absolute;

}

.qa__subtitle2{
    font-size: 1.6rem;
    margin-left: 2.5rem;
    padding-left: 1.8rem;
    color: #fff;
}


.qa__answer{
    font-size: 1.6rem;
    color: #000;
    padding-top: 2.0rem;
    padding-bottom: 2.0rem;
    margin-left: 6.7rem;
    width:  29rem;
}

.qa--emphasis{
    font-size: 2.0rem;
    font-family:  Roboto;
    position: absolute;
    margin-left: -4rem;
}

.qa--wrap2 {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #1EAA39;
    


    height: 4.0rem;
    position: relative;
    padding-bottom: 2.0rem;
}

.qa__answer2{
    font-size: 1.6rem;
    color: #3a3a3a;
    padding-top: 1.0rem;
    padding-bottom: 2.0rem;
    margin-left: 6.7rem;
    width:  29rem;
}

.qa__answer3{
    font-size: 1.4rem;
    color: #3a3a3a;
    padding-bottom: 2.0rem;
    margin-left: 6.7rem;
    width:  29rem;
    padding-top: -1.0rem;
}

.qa__answer4{
    font-size: 1.6rem;
    color: #3a3a3a;
    padding-top: 1.0rem;
    padding-bottom: 1.0rem;
    margin-left: 6.7rem;
    width:  29rem;
}

@media (min-width: 768px) {
.qa{
    background-size: cover;
    position: relative;
}


.qa__title{
    font-size: 7rem;
    text-align: center;
    margin-top: 10px;
    font-weight: bold;
    
}

.qa--wrap {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #1EAA39;
    


    height: 10.0rem;
    position: relative;
    top:15px;
    padding-bottom: 2.0rem;
}

.qa--container {
    padding-top: 1.0rem;
     padding-left: 2.5rem;
     position: relative;
 
 }


.qa__subtitle{
    font-size: 5rem;
    width:  3.1rem;
    font-weight: bold;
    font-family:  Roboto;
    color: #fff;
    position: absolute;
    padding-left: 35rem;
    padding-top: 0.5rem;

}

.qa__subtitle2{
    font-size: 3.6rem;
    margin-left: 2.5rem;
    padding-left: 41rem;
    color: #fff;
    padding-top: 1rem;
}


.qa__answer{
    font-size: 3.6rem;
    color: #3a3a3a;
    padding-top: 4.0rem;
    padding-bottom: 2.0rem;
    margin-left: 43.7rem;
    width:  105rem;
    height: 15rem;
}

.qa--emphasis{
    font-size: 5rem;
    font-family:  Roboto;
    position: absolute;
    margin-left: -5rem;
 
}

.qa--wrap2 {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #1EAA39;
    


    height: 10.0rem;
    position: relative;
    padding-bottom: 2.0rem;
}

.qa__answer2{
    font-size: 3.6rem;
    color: #3a3a3a;
    padding-top: 1.0rem;
    padding-bottom: 2.0rem;
    margin-left: 43.7rem;
    width:  105rem;
    height: 17rem;
}

.qa__answer3{
    font-size: 3rem;
    color: #3a3a3a;
    padding-bottom: 2.0rem;
    margin-left: 43.7rem;
    padding-top: -1.0rem;
    width: 113rem;
}

.qa__answer4{
    font-size: 3.6rem;
    color: #3a3a3a;
    padding-top: 1.0rem;
    padding-bottom: 1.0rem;
    margin-left: 43.7rem;
    width:  105rem;
}
}
.footer--wrap {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #3a3a3a;
    


    height: 5.0rem;
    position: relative;
    text-align: center;
}

.footer--img{
    margin-top: 15px;
    width:  137px;

    
    
}


@media (min-width: 768px) {
.footer--wrap {


   
    background-size: cover;
    background-repeat: no-repeat;
    background-color: #3a3a3a;
    


    height: 10.0rem;
    position: relative;
    text-align: center;
}

.footer--img{
    margin-top: 15px;
    width:  165px;

    
    
}
}