@charset "UTF-8";





/* ---------------------------------- チェックシート ---------------------------------- */  

#sec01 {
    overflow: hidden;
}

#sec01 .sec-in {
    position: relative;
}

#sec01 .blur-1 {
  position: absolute;
  top: 0;
  right: 0;
  transform: translate(26%, -60%);
  z-index: -1;
}

#sec01 .blur-2 {
  position: absolute;
  top: 0;
  left: 0;
  transform: translate(-40%, -30%);
  z-index: -1;
}

.sec01-title {
    text-align: center;
    margin-bottom: 1.5em;
}


.sec01-title p {
    font-size: 1.1em;

    opacity: 0;
    transform: translateY(1em);
    transition: .5s ease all;
}
.sec01-title.active p {
    opacity: 1;
    transform: translateY(0);
}

.sec01-title h3 {
    font-size: 1.6em;
    font-family: "Zen Old Mincho", serif;
    font-weight: 700;
    line-height: 1.5;
    opacity: 0;
    filter: blur(10px);
    transform: translateY(1em);
    transition: 1s ease all;
}
.sec01-title.active h3 {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
}

.sec01-title h3 span {
    display: inline-block;
}

#sec01 .text-box {
    max-width: 1000px;
    margin: 0 auto 1em;
    background-color: #44613C;
    padding: 2em;
}

#sec01 .text-box-in {
    background-color: #fff;
    padding: 1em;
}



#sec01 .text-box .t-1 {
    text-align: center;
    font-size: 1.1em;
    margin-bottom: 1em;
}

#sec01 .text {
    width: 90%;
    max-width: 620px;
    margin: 0 auto;
}



#sec01 .text li {
    padding-bottom: .5em;
    margin-bottom: .5em;
    border-bottom: 1px #D9D9D9 solid;
    
    opacity: 0;
    transform: translateY(1em);
    transition: .5s ease all;
}
#sec01 .text li.active {
    opacity: 1;
    transform: translateY(0);
}

#sec01 .text li:last-child {
    border-bottom: 0;
    padding-bottom: 0;
    margin-bottom: 0;
}


#sec01 .text p {
    width: 88%;
    display: flex;
    align-items: center;
    margin: 0 auto;
}
#sec01 .text p::before {
    content: '';
    width: 1.5em;
    height: auto;
    aspect-ratio: 1 / 1;
    margin-right: .8em;
    border: 1px #333 solid;
}

#sec01 .arrow {
    width: auto;
    height: 2em;
    aspect-ratio: 3 / 1;
    margin: 0 auto 1em;
    background-color: #44613C;
    clip-path: polygon(0 0, 100% 0, 50% 100%);

    opacity: 0;
    transform: translateY(-1em);
    transition: .5s ease all;
}
#sec01 .arrow.active {
    opacity: 1;
    transform: translateY(0);
}


#sec01 .flex {
    width: 95%;
    max-width: 870px;
    margin: 0 auto;
    padding: 1em;
    gap: 1em;
    background-color: #fff;
    
    opacity: 0;
    filter: blur(10px);
    transition: 1s ease all;
}
#sec01 .flex.active {
    opacity: 1;
    filter: blur(0);
}

#sec01 .flex .flex-item-1 {
    width: 20%;
}

#sec01 .flex .flex-item-2 {
    width: 80%;
} 



/* ---------------------------------- 無料お試しサービス ---------------------------------- */  


#sec02 {
    position: relative;
    background: url(../images/hearing-aids/bg.webp) no-repeat center / cover;
}
#sec02::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: #15524D;
    opacity: .8;
}

#sec02 .sec-in {
    max-width: 1000px;
    margin: 0 auto;
}

#sec02 .t-1 {
    color: #fff;
    font-size: 1.3em;
    margin-bottom: .5em;
    
    opacity: 0;
    transform: translateY(1em);
    transition: .5s ease all;
}
#sec02 .t-1.active {
    opacity: 1;
    transform: translateY(0);
}

#sec02 .t-1 span {
    display: inline-block;
}

#sec02 .wrap {
    padding: 2em;
    text-align: center;
    background-color: #fff;
}

#sec02 .wrap h3 {
    font-size: 1.6em;
    text-align: center;

    opacity: 0;
    filter: blur(10px);
    transition: 1s ease all;
}
#sec02 .wrap h3.active {
    opacity: 1;
    filter: blur(0);
}

#sec02 .wrap .text {
    width: 90%;
    max-width: 700px;
    margin: 0 auto 1.5em auto;
    text-align: left;

    opacity: 0;
    filter: blur(10px);
    transform: translateY(1em);
    transition: 1s ease all;
}
#sec02 .wrap .text.active {
    opacity: 1;
    filter: blur(0);
    transform: translateY(0);
}

.text span {
    background: linear-gradient(transparent 60%, #D9E785 60%);
}



#sec02 .contact-btn {
    padding: .8em 4.5em .8em 3em;

    opacity: 0;
    transform: translateY(1em);
}
#sec02 .contact-btn.active {
    opacity: 1;
    transform: translateY(0);
}


#sec02 .contact-btn p span {
    display: inline-block;
}




/* ---------------------------------- 補聴器種類 ---------------------------------- */  


.sec.contact {
    padding: 3em 0 0 0 ;
}
 


#sec05.sec.contact {
    padding: 3em 0 6em 0;
}

.contact-title {
    position: relative;
    padding: .5em .5em .5em 1em;
    background-color: #ccc;
    background: linear-gradient(
        to right, 
        #E9E6D4 0%, 
        rgba(255, 255, 255, 0) 100%
    );

    max-width: 1920px;
    margin: 0 auto 1.5em auto;

    opacity: 0;
    transform: translateX(-1em);
    transition: 1s ease all;
}
.contact-title.active {
    opacity: 1;
    transform: translateX(0);
}

@media screen and (min-width: 1440px){
    .contact-title  {
        background: linear-gradient(
            to right, 
            rgba(255, 255, 255, 0) 0%,
            #E9E6D4 20%, 
            rgba(255, 255, 255, 0) 100%
        );
    }
}




.contact-title .inner {
    max-width: 1200px;
    margin: 0 auto;
}

.contact-title h3 {
    font-size: 1.6em;
    font-family: "Zen Old Mincho", serif;
}

.contact .sec-in {
    max-width: 1000px;
    margin: 0 auto;
}

.contact .sec-in p.t-1 {
    font-size: 1.1em;
    margin-bottom: .5em;
}

.contact .flex {
    gap: 2.5em;
}

.contact .flex-item-1 {
    position: relative;
    width: 45%;
    height: auto;
    aspect-ratio: 10 / 7;

    opacity: 0;
    filter: blur(10px);
    transition: 1s ease all;
}
.contact .flex-item-1.active {
    opacity: 1;
    filter: blur(0);
}

.contact .flex-item-1 img {
    height: 100%;
    object-fit: contain;
}

.contact .flex-item-1 .item {
    position: absolute;
    bottom: 0;
    right: 0;
    transform: translate(10% , 10%);
    width: 8em;
    height: auto;
    aspect-ratio: 2 / 1;
    background-color: #333;
}

.contact .flex-item-2 {
    width: 55%;

    opacity: 0;
    filter: blur(10px);
    transition: 1s ease all;
}

.contact .flex-item-2.active {
    opacity: 1;
    filter: blur(0);
}



/* ---------------------------------- 購入の流れ ---------------------------------- */  
 


#sec07 {
    background-color: #E9E6D4;
}

#sec07 h3 {
    margin-bottom: .5em;
    font-size: 1.6em;
    color: #333;
}

#sec07 .flex {
    position: relative;
    padding: 1em 0 2em 0;
}

#sec07 .flex::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50% , -2em);
    width: 5em;
    height: auto;
    aspect-ratio: 10 / 3;
    background: url(../images/hearing-aids/step-arrow.webp) no-repeat center / contain;

    opacity: 0;
    transition: .5s .5s ease all;
}
#sec07 .flex.active::after {
    opacity: 1;
    transform: translate(-50% , -1em);

}

#sec07 .flex:last-child::after {
    display: none;
}

#sec07 .flex-item {
    opacity: 0;
    filter: blur(10px);
    transition: 1s ease all;
}
#sec07 .flex-item.active {
    opacity: 1;
    filter: blur(0);
}

#sec07 .flex-item-1 {
    position: relative;
    width: 43%;
}

#sec07 .flex-item-1 h4 {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(0 , -50%);
    font-size: 2.7em;
    font-weight: 600;
    font-family: "Montserrat", sans-serif;
    color: #fff;
    opacity: .8;
}

#sec07 .flex-item-2 {
    width: 57%;
    padding: 2em;
    background-color: #fff;

    background: linear-gradient(
    to right, 
    #fff 0%, 
    rgba(255, 255, 255, 0) 100%
);
}

#sec07 .flex-item-2 .t-1 {
    font-weight: 700;
    margin-bottom: .5em;
}



/* ---------------------------------- よくある質問 ---------------------------------- */  


#sec08 h3 {
    margin-bottom: 1em;
    font-family: "Zen Old Mincho", serif;
    font-size: 1.6em;
    font-weight: 700;
    text-align: center;
}


.is-active .faq-item-a {
    border: 0;
}









@media screen and (max-width: 768px){

    .hero-img .inner h2 {
        transform: translate(0 , 8%) !important;
    }


    /* ---------------------------------- チェックシート ---------------------------------- */  

    #sec01 .text p {
        width: 100%;
    }

    #sec01 .flex {
        flex-direction: column;
        padding: 2em;
    }
    

    #sec01 .flex .flex-item-1 {
        width: 100%;
        max-width: 150px;
        margin: 0 auto;
    }

    #sec01 .flex .flex-item-2 {
        width: 100%;
    }



    /* ---------------------------------- 無料お試しサービス ---------------------------------- */  


    #sec02 .contact-btn p {
        line-height: 1.5;
    }





    /* ---------------------------------- 補聴器種類 ---------------------------------- */  

    .contact .flex {
        flex-direction: column;
    }

    .contact .flex-item-1 {
        width: 100%;
    }

    .contact .flex-item-2 {
        width: 100%;
    }




    /* ---------------------------------- 購入の流れ ---------------------------------- */  

    #sec07 .flex {
        flex-direction: column;
    }

    #sec07 .flex-item-1 {
        width: 100%;
    }

    #sec07 .flex-item-2 {
        width: 100%;
        background: linear-gradient(to bottom, #fff 0%, rgba(255, 255, 255, 0) 100%);
    }














}






































