@charset "utf-8";

.bai-con01{
    position: relative;
    width:100%;
    display: flex;
    justify-content: space-between;
    margin-bottom:40px;

}

@media screen and (min-width: 992px),
print {
    .bai-con01{
    width:80%;
        margin-bottom:100px;
}
}

.bai-con01-left{
    
    z-index:1;
    width:55%;
    
}

@media screen and (min-width: 992px),
print {
   .bai-con01-left{
    width:50%;
}
}

@media screen and (min-width: 992px),
print {
.bai-con01-left img{
    border-top-right-radius:25px;
}
    }

.bai-con01-right{
    z-index:2;
    width:45%; 
    padding-top:20px;
}

@media screen and (min-width: 992px),
print {
   .bai-con01-right{
    width:60%;
       padding:100px 0 0 10px;
        
}
}

@media screen and (min-width: 992px),
print {
.bai-con01-right img{
    border-top-right-radius:40px;
    border-bottom-left-radius:25px;
}
    }

.bai-con01-t01{
    font-size:9px;
    padding-left:10px;
}

@media screen and (min-width: 992px),
print {
  .bai-con01-t01{
    font-size:12px;
      padding-right:30px;
      text-align: right;
}
}

.bai-con01-t02{
    font-size:9px;
    padding-left:10px;
}

@media screen and (min-width:768px),
print {
  .bai-con01-t02{
    font-size:12px;
      padding-right:30px;
}
}


.bai-con02{
    width:100%;
    padding-left:20px;
margin-bottom: 5px;
}



@media screen and (min-width: 768px),
print {
    .bai-con02{
        padding-left:70px;
        margin-bottom:0;
}
}

.bai-con02-t01{
    font-size:22px;

    margin-bottom: 5px;
}

@media screen and (min-width: 768px),
print {
    .bai-con02-t01{
    font-size:3vw;

}
}

.bai-con02-t02{
    font-size:16px;

    margin-bottom: 5px;
}

@media screen and (min-width: 768px),
print {
    .bai-con02-t02{
    font-size:2vw;

        line-height: 1.4;
}
}

.bai-con02-t03{
    font-size:19px;
    margin-bottom: 15px;

}

@media screen and (min-width: 768px),
print {
    .bai-con02-t03{
    font-size:2.5vw;

        line-height: 1.4;
        margin-bottom:25px;
}
}

.bai-con03{
    width:90%;
    margin:0 auto 40px;
    display: flex;
    flex-direction: column;
    

}

@media screen and (min-width: 768px),
print {
   .bai-con03{
       flex-direction:row;
    width:90%;
    margin:0 auto 100px;
       justify-content: space-between;

}
}


.bai-con03-left{
    order:2;
    line-height: 2;
}

@media screen and (min-width: 768px),
print {
    .bai-con03-left{
    order:1;
        width:60%;
        font-size:1.1vw;

}
}

.bai-con03-right{
    order:1;
    margin:0 auto 30px;
    width:80%;
}

@media screen and (min-width: 768px),
print {
    .bai-con03-right{
    order:2;
        width:30%;
        margin-bottom:0;
        margin-top:-100px;
}
}

@media screen and (min-width: 992px),
print {
    .bai-con03-right{
    order:2;
        margin-top:-200px;
}
}

.bai-con03-t01{
    font-size:14px;
    color:#9F7211;
}

@media screen and (min-width: 992px),
print {
    .bai-con03-t01{
    font-size:1.6vw;
        line-height: 2.8;
}

}

.bai-con03-t02{
    font-size:16px;
    color:#9F7211;
}

@media screen and (min-width: 992px),
print {
    .bai-con03-t02{
    font-size:1.6vw;
}

}

.bai-con04{
    width:90%;
    

}

@media screen and (min-width: 992px),
print {
   .bai-con04{
 width:50%;
}
}

.bai-con05{
    width:100%;
    margin-top:-50px;
    background:rgba(249,246,222,0.4);
    padding:80px 15px 30px;
    

}

@media screen and (min-width: 992px),
print {
   .bai-con05{
       width:auto;
       margin:-150px 0 100px 100px;
       padding:200px 100px 100px;
       border-bottom-left-radius:25px;
       
}
}

.bai-con05-t01{
    font-size:20px;
}

@media screen and (min-width: 768px),
print {
    .bai-con05-t01{
    font-size:3vw;
        line-height: 2.8;
}

}

.bai-con05-t02{
    margin-bottom: 20px;
}

@media screen and (min-width: 768px),
print {
    .bai-con05-t02{
        font-size:1.5vw;
}
    
}

@media screen and (min-width: 992px),
print {
    .bai-con05-t02{
        font-size:1.1vw;
    margin-bottom: 30px;
}
    
}

.bai-con05-t03{
    font-size:17px;
    line-height:1.7;
    margin-bottom:15px;
}

@media screen and (min-width: 768px),
print {
    .bai-con05-t03{
    font-size:2.2vw;
        line-height:1.7;
        margin-bottom: 20px;
}

}

.bai-con05-t04{
    line-height:1.7;
}

@media screen and (min-width: 992px),
print {
    .bai-con05-t04{
        font-size:1.5vw;
}
    
}

@media screen and (min-width: 992px),
print {
    .bai-con05-t04{
        font-size:1.1vw;
}
    
}

.bai-con06{
    display: flex;
    margin-bottom: 40px;
}

@media screen and (min-width: 992px),
print {
   .bai-con06{
margin-bottom: 100px;
       padding:0 5px;
}
}

.bai-con06-left{
    width:26%;
}

@media screen and (min-width: 992px),
print {
    .bai-con06-left{
padding-right:5px;
}
}

.bai-con06-center{
    width:39%;
    padding-top:40px;
}

@media screen and (min-width: 992px),
print {
    .bai-con06-center{
padding-right:5px;
        padding-top:160px;
}
}


.bai-con06-right{
    width:35%;
    padding-top:15px;
}

@media screen and (min-width: 992px),
print {
    .bai-con06-right{
padding-top:30px;
}
}

.bai-con07{
    padding:0 15px;

}

@media screen and (min-width: 992px),
print {
   .bai-con07{
       margin:0 auto 20px;
       max-width:70%;
}
}

.iharu-gallery-title {
  padding:0 0 20px;
}

.iharu-gallery-title span {
  font-size:12px;
  letter-spacing: 0.28em;
  color: #444;
  display: block;
  margin-bottom:0;
    font-weight: 700;
}

@media screen and (min-width: 992px),
print {
   .iharu-gallery-title span {
  font-size:1vw;
}
}


.iharu-gallery-title h2 {
  font-size:2.3vw;
  font-weight: 400;
  margin: 0;
  letter-spacing: 0.01em;
}
@media (max-width: 767px) {
  .iharu-gallery-title h2 {
    font-size:20px;
    line-height: 1.3;
  }
}



@media screen and (min-width: 992px),
print {
   .bai-con07-t01{
    font-size:1.1vw;
} 
}

.bai-con08{
    padding:0 15px;
}

@media screen and (min-width: 992px),
print {
   .bai-con08{
       margin:0 auto 20px;
       max-width:70%;
}
}

.bai-con08-t01{
       margin-bottom: 30px;
} 

@media screen and (min-width: 992px),
print {
   .bai-con08-t01{
    font-size:1.1vw;
       margin-bottom: 50px;
} 
}

.bai-con09{
    padding:0 15px;
    margin-bottom: 40px;
}

@media screen and (min-width: 992px),
print {
   .bai-con09{
       margin:0 auto 100px;
       max-width:70%;
}
}

@media screen and (min-width: 992px),
print {
   .bai-con09-t01{
    font-size:1.1vw;
} 
}

.bai-con10{
    padding:0 15px;
    margin-bottom:30px;
}

@media screen and (min-width: 992px),
print {
   .bai-con10{
       margin:0 auto 100px;
       max-width:70%;
}
}

@media screen and (min-width: 992px),
print {
   .bai-con10-t01{
    font-size:1.1vw;
} 
}

.bai-con11{
    padding:0 15px;
    margin-bottom:20px;

}

@media screen and (min-width: 992px),
print {
   .bai-con11{
       margin:0 auto;
       max-width:70%;
       margin-bottom:30px;
}
}

@media screen and (min-width: 992px),
print {
   .bai-con11-t01{
    font-size:1.1vw;
} 
}

.bai-con12{
    padding:0 15px;

}

@media screen and (min-width:768px),
print {
   .bai-con12{
       margin:0 auto 0;
       width:100%;
       padding:0 0 0 2%;
       display: flex;
       justify-content: space-between;
}
}

@media screen and (min-width:992px),
print {
   .bai-con12{
       padding:0 0 0 16%;
}
}

.bai-con12-right{
    margin-bottom:20px;

}

@media screen and (min-width: 768px),
print {
   .bai-con12-right{
    margin-bottom:0;
       width:45%;

}
}

.bai-con12-left{
margin-bottom: 20px;
}

@media screen and (min-width: 768px),
print {
   .bai-con12-left{
       width:50%;
       margin-bottom:0;
}
}

@media screen and (min-width: 992px),
print {
   .bai-con12-left{
       width:40%;
}
}

.bai-con12-photo02{
    margin-top:-20px;
    width:80%;
    
}

.bai-con12-t01{
       margin-bottom:30px;
} 

@media screen and (min-width: 768px),
print {
   .bai-con12-t01{
    font-size:1.1vw;
       margin-bottom: 50px;
} 
}

.bai-con13{
    padding:0 15px;

}

@media screen and (min-width: 992px),
print {
   .bai-con13{
       margin:0 auto 20px;
       max-width:70%;
}
}

.bai-con14{
    padding:0 15px;
    margin-bottom: 40px;

}

@media screen and (min-width: 992px),
print {
   .bai-con14{
       margin:0 auto 100px;
       max-width:70%;
}
}

@media screen and (min-width: 992px),
print {
   .bai-con14-t01{
    font-size:1.1vw;
} 
}

.bai-con15{
    padding:0 15px;
    margin-bottom: 40px;

}

@media screen and (min-width: 992px),
print {
   .bai-con15{
       margin:0 auto 100px;
       max-width:70%;
}
}

 .bai-con15-t01{
       margin-bottom: 30px;
} 

@media screen and (min-width: 992px),
print {
   .bai-con15-t01{
    font-size:1.1vw;
       margin-bottom: 50px;
} 
}

.bai-con16{
    padding:0 15px;
margin-bottom: 40px;
}

@media screen and (min-width: 768px),
print {
   .bai-con16{
       margin:0 auto 100px;
       width:100%;
       display: flex;
       justify-content: space-between;
       padding-left:16%;
}
}

.bai-con16-left{
    margin-bottom: 15px;
}

@media screen and (min-width: 768px),
print {
    .bai-con16-left{
    margin-bottom:0;
        width:80%;
        font-size:1.1vw;
        padding-top:35px;
}
}

@media screen and (min-width: 992px),
print {
    .bai-con16-left{
        width:40%;

}
}

.bai-con16-right{
}

@media screen and (min-width:768px),
print {
    .bai-con16-right{
        width:50%;
}
}


/*
+++++++++++++++++++

.top-con11

++++++++++++++++++++
*/


.bai-con17{
    margin-bottom: 40px;

}

@media screen and (min-width: 768px),
print {
.bai-con17{
    margin:0 auto 100px;
    width:100%;
     display: flex;
    justify-content: space-between;
}
}

.bai-con17-left{
 margin-right:15px;
    margin-bottom: 40px;
  padding:60px 15px 30px 0;  
    background: #F9F9F9;
        border-top-right-radius:40px;
}

@media screen and (min-width: 768px),
print {
    .bai-con17-left{
width:48%;
  padding:70px 70px 40px 0; 
        margin:0;
        
}
}

.bai-con17-left-photo{
    width:70%;
    margin-bottom:20px;
}

@media screen and (min-width: 992px),
print {
    .bai-con17-left-photo{
    width:75%;
    margin-bottom:30px;
}
}

.bai-con17-left-photo img{
    border-top-right-radius:18px;
}

.bai-con17-left-t01{
    font-size:22px;
    margin-bottom: 10px;
    font-weight: 450;
    padding-left:15px;
}

@media screen and (min-width: 992px),
print {
    .bai-con17-left-t01{
    font-size:1.8vw;
        padding-left:7%;
}
}

.bai-con17-left-t02{
    padding-left:15px;
    line-height: 1.8;
}

@media screen and (min-width: 992px),
print {
    .bai-con17-left-t02{
    padding-left:7%;
    line-height: 2.5;
        font-size:1.1vw;
}
}

.bai-con17-right{
 margin-left:15px;
  padding:60px 0 30px 15px;  
    background: #F9F9F9;
        border-top-left-radius:40px;
}

@media screen and (min-width: 768px),
print {
    .bai-con17-right{
 width:48%;
  padding:70px 0 70px 70px; 
        margin-left:0;
        border-top-left-radius:0;
        border-bottom-left-radius:40px;
        
}
}

.bai-con17-right-photo{
    padding-left:70px;
    margin-bottom:20px;
}

@media screen and (min-width: 992px),
print {
    .bai-con17-right-photo{
    padding-left:25%;
    margin-bottom:30px;
}
}

.bai-con17-right-photo img{
    border-top-left-radius:18px;
}

.bai-con17-right-t01{
    font-size:22px;
    margin-bottom: 10px;
    font-weight: 450;
    padding-right:15px;
}

@media screen and (min-width: 992px),
print {
    .bai-con17-right-t01{
    font-size:1.8vw;
        padding-right:7%;

}
}

.bai-con17-right-t02{
    padding-right:15px;
    line-height: 1.8;
}

@media screen and (min-width: 992px),
print {
    .bai-con17-right-t02{
    padding-right:7%;
    line-height: 2.5;
        font-size:1.1vw;

}
}

/*
+++++++++++++++++++

.bai-con18

++++++++++++++++++++
*/


.bai-con18{
    margin-bottom: 40px;

}

@media screen and (min-width: 992px),
print {
.bai-con18{
    margin:0 auto 100px;
    width:95%;
}
}

@media screen and (min-width:768px),
print {
.bai-con18 ul{
     display:grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap:20px;
}
}

@media screen and (min-width: 992px),
print {
.bai-con18 ul{
     display:grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-column-gap:20px;
}
}



#bai-con18-link{
    background: #FFF9EC;
    padding:10px 20px 18px;
    display: flex;
    justify-content:space-between;
    color:#000;
    margin-right:10px;
}

@media screen and (min-width: 992px),
print {
    #bai-con18-link{
    background: #FFF9EC;
    padding:20px 20px 40px;
    display: flex;
        flex-direction: column;
        margin-right:0;
}
}

#bai-con18-link li a{
    color:#000;
}

#bai-con18-link li a:visited{
    color:#000;
}

.bai-con18-left{
    width:30%;
    margin-right: 30px;
    padding-top:35px;
}

@media screen and (min-width: 992px),
print {
    .bai-con18-left{
    width:70%;
    margin:0 auto 15px;
        padding-top:0;
}
}

.bai-con18-right{
    width:65%;
}

@media screen and (min-width: 992px),
print {
    .bai-con18-right{
    width:100%;
}
}

.bai-con18-t01{
    font-size:14px;
}

@media screen and (min-width: 992px),
print {
    .bai-con18-t01{
        text-align: center;
        font-size:1.2vw;
}
}

.bai-con18-t02{
    font-size:23px;
    color:#FF6100;
}

@media screen and (min-width:768px),
print {
    .bai-con18-t02{
    font-size:20px;
}
}

@media screen and (min-width: 992px),
print {
    .bai-con18-t02{
        
        font-size:1.6vw;
}
}

.bai-con18-t03{
    
    font-size:12px;
    margin-bottom: 5px;
}

@media screen and (min-width: 992px),
print {
    .bai-con18-t03{
        text-align: center;
        font-size:0.9vw;
}
}

.bai-con18-t04{

    
}

@media screen and (min-width: 992px),
print {
    .bai-con18-t04{
    display: none;
}
}

.bai-con18-t05{
    color:#FE0004;
    font-size:28px;
}

@media screen and (min-width: 992px),
print {
    .bai-con18-t05{
    font-size:2.3vw;
}
}

.bai-con18-t06{
    display: none;
    
}

@media screen and (min-width: 992px),
print {
    .bai-con18-t06{
        display: block;
    font-size:1.5vw;
  
        text-align: center;
}
}

/* うっすらドロップシャドウ（おすすめ） */
.box {
  background: #fff;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 12px;
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
}

/* もっと薄くしたい場合 */
.box.shadow-light {
  box-shadow: 0 4px 14px rgba(0,0,0,.06);
}

/* 影をさらに繊細に（2段影で自然） */
.box.shadow-soft {
  box-shadow:
    0 2px 6px rgba(0,0,0,.06),
    0 10px 24px rgba(0,0,0,.04);
}

/* hoverで少しだけ浮かせる（任意） */
.box.shadow-hover {
  transition: box-shadow .2s ease, transform .2s ease;
}
.box.shadow-hover:hover {
  box-shadow:
    0 4px 10px rgba(0,0,0,.07),
    0 14px 30px rgba(0,0,0,.05);
  transform: translateY(-1px);
}

/*
+++++++++++++++++++

.bai-con19

++++++++++++++++++++
*/


.bai-con19{
    margin-bottom:10px;
    padding:0 15px;

}

@media screen and (min-width: 992px),
print {
.bai-con19{
    margin:0 auto 20px;
    width:60%;
    padding:0;
    font-size:1.1vw;
}
}

/*
+++++++++++++++++++

.bai-con20

++++++++++++++++++++
*/



.bai-con20{
    padding:0 15px;
    margin-bottom: 40px;

}

@media screen and (min-width:768px),
print {
   .bai-con20{
       margin:0 auto 100px;
       width:100%;
       padding:0 0 0 4%;
       display: flex;
       justify-content: space-between;
}
}

@media screen and (min-width:992px),
print {
   .bai-con20{     
       padding:0 0 0 16%;

}
}

.bai-con20-right{
    margin-bottom:20px;

}

@media screen and (min-width: 768px),
print {
   .bai-con20-right{
    margin-bottom:0;
       width:40%;

}
}

.bai-con20-left{
margin-bottom: 20px;
}

@media screen and (min-width:992px),
print {
   .bai-con20-left{
       width:55%;
       margin-bottom:0;
}
}



.bai-con20-photo01 img{
    border-top-right-radius:20px;
}

@media screen and (min-width: 992px),
print {
    .bai-con20-photo01 img{
    border-top-left-radius:20px;
         border-top-right-radius:0;
}
}

.bai-con20-photo02{
    margin-top:2px;
    width:80%;
}

.bai-con20-photo02 img{
    border-bottom-left-radius:20px;
}

@media screen and (min-width: 992px),
print {
   .bai-con20-photo02 img{
    border-bottom-left-radius:0;
       border-bottom-right-radius:20px;
}
}

.bai-con20-t01{
    font-size:25px;
    font-weight: 500;
} 

@media screen and (min-width: 992px),
print {
   .bai-con20-t01{
    font-size:2vw;
} 
}

.bai-con20-t02{
    font-size:17px;
} 

@media screen and (min-width: 992px),
print {
   .bai-con20-t02{
    font-size:1.6vw;
} 
}

.bai-con20-t03{
    font-size:15px;
    margin-bottom: 10px;
    font-weight: bold;
} 

@media screen and (min-width: 992px),
print {
   .bai-con20-t03{
    font-size:1.3vw;
       margin-bottom:20px;
} 
}

.bai-con20-t04{
    line-height:2;
} 

@media screen and (min-width: 992px),
print {
   .bai-con20-t04{
    font-size:1.1vw;
       margin-bottom:20px;
} 
}

/*
+++++++++++++++++++

.bai-con21

++++++++++++++++++++
*/



.bai-con21{
    margin:0 auto 40px;
    width:97%;

}

@media screen and (min-width: 992px),
print {
   .bai-con21{
    margin:0 auto 100px;
    width:85%;

}
}

.bai-con21-t01{
    margin-bottom: 20px;
    padding-left: 20px;
}

/*
++++++++++++++++++

@media screen and (min-width: 992px),
print {
    
}

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


/*
+++++++++++++++++++++++++++++++

メインタイトル

.xxx img{
    border-top-left-radius: 10px;
  border-top-right-radius: 20px;
  border-bottom-right-radius: 30px;
  border-bottom-left-radius: 40px;
}

grid-template-columns: 1fr 1fr;

grid-column-gap:50px;

grid-column-gap:50px;
    grid-template-columns: 1fr 1fr;


+++++++++++++++++++++++++++++++
*/
