@charset "utf-8";
html {
  scroll-behavior: smooth;
}
body{
    font-family: 'Hiragino Kaku Gothic Pro','ヒラギノ角語Pro W3', 'メイリオ', 'Meiryo','MSPゴシック','sans-serif';
    
    text-align:left;
    color:#000;
    

}




p{
  
  line-height: 1.8rem;
  
}


p span{
    background: linear-gradient(transparent 50%,#f8c8c8 50%);
    font-weight:bold;
}
h3 span{
    background: linear-gradient(transparent 50%,#fff059 50%);
}
strong{
    color:#dd8181;
    font-weight: bold;
}

cite{
  color: #696969;
  font-size: xx-small;
 
}


.br-sp{
    display: block;
}
.br-pc{
    display: none;
}


@media screen and (min-width:750px){
    .br-sp{
        display: none;
    }
    .br-pc{
        display: block;
    }
}
/*------------------------------------- 追従 */
.fixed_btn{
    z-index: 10;

    position: fixed;
   background-color:#dd8181;
    border: none;
    outline: none;
    box-shadow: none;
  bottom: 0;
  padding: 10px;
  cursor: pointer;
  transition: .3s;
   /*デフォルトで非表示にする*/
   opacity: 0;
   visibility: hidden;


}




img.btn_animate01 {
    margin: 0 auto;
    animation: fuwafuwa 1s ease 0s infinite alternate;
    transform-origin:center;
    cursor: pointer;
    }
    @keyframes fuwafuwa {
    from {transform: scale(0.9,0.9);}
    to {transform: scale(1,1);}
    }


  
  .active{
    opacity: 1;
    visibility: visible;
   

  }
   

  @media screen and (min-width:750px){
    .fixed_btn{
       display: none;

    }
   
    
        
    }
  
  
   /* 背景設定 */
  
  
  body{
      background-image: url(../images/pc-bg.jpg);
      background-size:cover;
      color: #333333;
      background-attachment: fixed;
      z-index: 1;
      font-family: 'Noto Sans JP', sans-serif;
      transition: .7s;
      
      
  }


   /* ナビ */


.nav_wrapper{
    position: fixed;
    z-index: 5;
    width: 130%;
    top: 40%;
    transform: translateY(-50%);
    .nav_list{
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        right: calc((100% - 150px) / 4);
        z-index: 5;
       
        li{
          
            
            a{
                display: inline-block;
                padding: 10px 40px;
                font-weight: 700;
                color:#dd8181;
                text-decoration: none;
            }
        }
    }
    .nav_title{
      font-weight: bold;
      font-size:2rem;
    }


    .nav_fv{
      width:400px;
      position:absolute;
      top:50%;
      transform: translateY(-30%);
        left: calc((10% - 10px) / 4);
        z-index: 5;

    }
    .nav_fv p{
      padding-top: 20px;
    }
    @media screen and (max-width:1200px){
        display: none;
    }
}



	

/* コンテンツ */


.article{
    max-width: 450px;
    margin: 0 auto;
    position: relative;

    box-shadow:0px 0px  20px #e4c7c7;
    background-color: #fff;
    
    @media screen and (max-width:768px){
        max-width: none;
        width: 100%;
    }
    .section{
        padding: 20px;
        height: 1000px;
    }
}


		





/*--------- FV -----------*/



.fv{
  
   
   text-align: center;
   position: relative;

  
    
    
}
.fv .cta{
    padding:30px 0 10px 0;
    position:absolute;
    bottom:30px;
   
}


.cta_guide2 {

    text-align: center;
    font-weight: bold;
    color: #333333;
    font-size:0.9rem;
    
}
.cta_guide3 {
    font-size: 9px;
    text-align: center;
    color: #333333;
}

.cta_guide4 {
    font-size: 1rem;
    font-weight: 700;
    text-align: center;
    color: #fff;
}


.step{
  background-image: url(..//images/step-bg.jpg);
  background-size: contain;
  padding:0px 10px 50px;
}
.step h2{
  padding:30px 50px 20px;
}




  
.media{
  padding:20px 0;
  
}
.media .title{
  padding:40px 30px 30px;
}
.item img{
  object-fit: contain;
  display: block;
  height:150px;
  
  width: 100%;
  
}


.sec01{
  background-image: url(..//images/sec01-bg.png);
  background-size: cover;
}
.sec01 .content{
  background-color: #fff;
  border: 2px solid #e2d06e ;
  margin:10px;
  padding:15px;
}

.sec01 h2{
  padding:20px 0;
}
.sec01 p{
  padding-bottom: 25px;
}
  
 
.sec02 .part2{
  padding:40px 0;
}


.sec03{
  background-image: url(..//images/sec03-bg.jpg);
  background-size: contain;
}
 


.sec05{
 background-image: url(..//images/sec05-bg.jpg);
 padding:13px 13px 25px 13px;
}
.sec05 .title{
  padding:15px 0 0;
}
.sec05 .con{
  padding:10px 0;
}



.cta-area-arrow{
  padding-top: 50px;;
}

.cta-area-arrow .cta{
  padding-top: 30px;
}


/* ----------------矢印----------------- */

.cta-area-arrow{
  position: relative;
}



 .arrow img{
  position: absolute;
  top:40px;
  width:40%;
  right: 0;
  left: 0;
  margin: 0 auto;
}




/* アニメーションの設定：上下にふわふわと浮遊する動き */
@keyframes floatAnimation {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-10px);/* 中間点：上10px移動 */
  }
  100% {
    transform: translateY(0);
  }
}

/* アニメーション対象の要素 */
.arrow img{
    animation: floatAnimation 2s infinite ease-in-out; /* 2秒周期でふわふわ移動 */
}

  

.sec07{
  background-image: url(..//images/seminar-bg.jpg);
  background-size: contain;
  margin-top:40px;
  padding:10px;
}

.sec07 .title{
  padding:40px 0px 20px 0px;
}
.sec07 .li{
  padding:5px 0 5px 2px;
}
  
.sec08{
  background-image: url(..//images/massage-bg.jpg);
  background-size: contain;
  padding-bottom: 20px;

}
.sec08 .title{
  padding-top:20px;
}

.message {
 
  margin: 0 15px 20px;
 
  
  
  
  
}



.faq{
  padding-bottom: 50px;
}

.faq .title{
  padding:50px;
  width:40%;
  text-align: center;
  margin: 0 auto;
}



.qa-6 {
    max-width: 500px;
    margin-bottom: 5px;
    border-bottom: 2px solid #d6dde3;
}

.qa-6 summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 1em 2em 1em 3em;
    color: #333333;
    font-weight: 600;
    cursor: pointer;
}

.qa-6 summary::before,
.qa-6 p::before {
    position: absolute;
    left: 1em;
    font-weight: 600;
    font-size: 1.3em;
}

.qa-6 summary::before {
    color: #e88787;
    content: "Q";
}

.qa-6 summary::after {
    transform: translateY(-25%) rotate(45deg);
    width: 7px;
    height: 7px;
    margin-left: 10px;
    border-bottom: 3px solid #333333b3;
    border-right: 3px solid #333333b3;
    content: '';
    transition: transform .5s;
}

.qa-6[open] summary::after {
    transform: rotate(225deg);
}

.qa-6 p {
    position: relative;
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: .3em 3em 1.5em;
    color: #333;
    transition: transform .5s, opacity .5s;
}

.qa-6[open] p {
    transform: none;
    opacity: 1;
}

.qa-6 p::before {
    color: #ff8d8d;
    line-height: 1.2;
    content: "A";
}

  

 

  .privacy{
    text-align: center;
    padding:30px;
    

}
.privacy a{
    color:#696969;
    font-size: 13px;
    
    text-decoration: none;
    
}

