@charset "utf-8";
/* CSS Document */
/*共通*/
html {
	margin: 0px;
}
body {
	margin: 0px;
	font-family: "Noto Serif JP", serif, Verdana, "游ゴシック", YuGothic, "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", sans-serif;
}
main {
	width: 100%;
	margin: 0 auto;
	right: 0;
	overflow: hidden;
	background-color: #ffffff;
}
li{
  list-style: none;
}
a{
  text-decoration: none;
}
.none {
    display: none;
}

/* ===============================================
ヘッダーのスタイリング
=============================================== */
.header {
  height: 10vh;
  background-color: #fff;
  position: relative;
}
.header h1 {
  position: absolute;
  left: 6%;
   top: -18px;

  
}
.header__navigation {
  display: none;
}
@media (max-width: 640px) {
  .header {
  height: 7vh;
  background-color: #fff;
}
  .header h1 {
  position: absolute;
  left: 6%;
  top: -18px;
  
}
  /*ハンバーガーアイコン*/
  #nav-drawer{
    padding: 5% 6% 0 0;
    text-align: right;
    position: relative
  }
  #nav-open {
    display: inline-block;
    vertical-align: middle;
    width: 25px;
    height: 22px;
  }
  #nav-open span,#nav-open span:before,#nav-open span:after {
    position: absolute;
    height: 3px;
    width: 30px;
    background-color: #2A2A2A;
    display: block;
    content: "";
  }
  #nav-open span:before {
    bottom: -10px
  }
  #nav-open span:after {
    bottom: -20px;
  }
  #nav-close {
    z-index: 999;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    opacity: 0.5;
  }
  #nav-content {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    width: 76%;
    height: 100%;
    background-color: #FFF;
    text-align: left;
    padding: 80px 0 0 60px;
    transform: translateX(-105%);
    transition: 0.3s ease-in-out;
    box-shadow: 5px 0 25px rgba(0,0,0,0.25);
  }
  
  .nav-drawer__link-top {
    display: block;
  }
  
  #nav-content ul li {
    margin-bottom: 36px;
  }
  #nav-content ul li a {
    text-decoration: none;
    font-size: 1.6rem;
    font-weight: 600;
    color: #2A2A2A;
  }
  #nav-input:checked ~ #nav-close {
    display: block;
  }
  #nav-input:checked ~ #nav-content {
    transform: translateX(0%);
  }
}

@media (min-width: 640px) {
  .header {
   
    margin: 0 auto;
    
    padding: 0 6%;
    box-sizing: border-box;
  }
  
  .header__navigation {
    display: block;
    text-align: right;
  }
  .header__navigation ul li {
    display: inline-block;
    margin-left: 40px;
  }
  .header__navigation ul li a {
    text-decoration: none;
        font-size: 18px;
        font-weight: 600;
        color: #2A2A2A;
  }
}




/* トップイメージ */
.top_image {
  width: 100%;
  height: 100vh;
  background-image: url("../images/top_bk_pc.png");
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
}



.rela {
	position: relative;
}
.abso {
	position: absolute;
}
input[type="submit"] {
	-webkit-appearance: none;
}
img {
	width: 100%;
	vertical-align: bottom;
}
.center{
  text-align: center;
}

section h2{
   padding: 0% 6%;
    font-size: 48px;
    color: #645f4d;
}
section h3{
  color: #B5B2A9;
  font-size: 64px;
  margin: 0;
}

section p{
  color: #2A2A2A;
  font-size: 18px;
  line-height: 2.5;
  
}
.br{
display: none;
}
.about{
padding-top: 6%;

}
.about_image {
  width: 100%;
  height: 100vh;
  background-image: url("../images/about_bk_pc.webp");
  background-position: center;
  background-repeat: no-repeat;
  
}

.contact_image {
  width: 100%;
  height: 100vh;
  background-image: url("../images/contact_bk_pc.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.mail{
   padding: 1% 5%;
    background-color: #ffffff;
    width: 380px;
    margin: 0 auto 4%;
    border-radius: 15px;
    font-size: 22px;
}
@media screen and (max-width: 640px) {
   section {
    margin: 0 auto; 
}
section h2{
  font-size: 10vw;
  padding: 11px 24px;
}
section h3{
  color: #B5B2A9;
  font-size: 40px;
}
section p{
  font-size: 16px;
  line-height: 2.4;
  padding: 0 4%;
}
.br{
display: block;
}

 .top_image {
  width: 100%;
  height: 100vh;
  background-image: url("../images/top_bk_sp.png");
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  background-size: cover;
 } 
 .about{
padding-top: 6%;

} 
 .about_image {
  width: 100%;
  height: 90vh;
  background-image: url("../images/about_bk_sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
 }
  .contact_image {
  width: 100%;
  height: 100vh;
  background-image: url("../images/contact_bk_sp.webp");
  background-position: center;
  background-repeat: no-repeat;
  position: relative;
  background-size: cover;
 }
 .mail{
  width: 73%;
  margin: 0px auto 9%;
  font-size: 16px;
}
}



/* read moreボタン */
.c-btn{
  cursor: pointer;
  transition:　2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-btn a{
  text-decoration: none;
  color: inherit;
}
.c-btn {
  background: #E19EE1;
  border: 2px solid #E19EE1;
  border-radius: 60px;
  color: #fff;
  display: block;
  font-weight: bold;
  max-width: 200px;
  padding: 15px 40px;
  text-align: center;
  margin:0 auto;
}

.c-btn.reverse:hover {
  background: #fff;
  color: #E19EE1;
}
@media screen and (max-width: 640px) {
  .c-btn {
    max-width: 180px;
  padding: 15px 40px;
  }
  
}

/*Gallery*/
.gallery .flex {
 display: flex;
  flex-wrap: wrap;
    gap: 20px 2%;
    justify-content: center;
    margin: 2% 0 4%;
}
.gallery .flex a{
width: 24%;
display: block;
}
.gallery .flex img{
width: 100%;
display: block;
}

@media screen and (max-width: 640px) {
.gallery .flex {
  gap: 24px 7%;
  margin: 10% 0 7%;
    
}
.gallery .flex a{
width: 38%;
}

}

/* ホバー時の装飾（パターン3） */
.content-hover {
  transition: all 0.2s;
  margin-right: 20px;
}
.content-hover:hover {
  transform: translateY(-20px);
  border-radius: 10%;
  box-shadow: 0 3px 10px 0 #333;
  opacity: 0.8;
  cursor: pointer;
}

/*お問い合わせ*/

footer {
	background:#CDD59B;
	color:#fff;
	text-align:center;
	font-size: 18px;
	margin: 0 auto;
	padding: 20px 0;
}


/* read moreボタン */
.c-btn2{
  cursor: pointer;
  transition:　2s cubic-bezier(0.45, 0, 0.55, 1);
}
.c-btn2 a{
  text-decoration: none;
  color: inherit;
}
.c-btn2 {
  background: #b5b2a9;
  border: 2px solid #b5b2a9;
  border-radius: 60px;
  color: #fff;
  display: block;
  font-weight: bold;
  max-width: 300px;
  padding: 15px 40px;
  text-align: center;
  margin:0 auto;
  margin-top: 9%;
}

.c-btn2.reverse2:hover {
  background: #fff;
  color: #b5b2a9;
}
@media screen and (max-width: 640px) {
  .c-btn2 {
    max-width: 148px;
     padding: 10px 15px;
     margin-top: 20%;
  }
  
}
/*Galleryページ*/
.gallery_content {
  text-align: center;
}

.gallery_img {
  display: block;
  margin: 0 auto;
  width: 60%;
}

.caption {
  text-align: center;
  margin-top: 10px;
}
.caption_title{
 font-size: 24px;
}
@media screen and (max-width: 640px) {
  .gallery_img {
  display: block;
  margin: 0 auto;
  width: 80%;
}
  }






/*ABOUTページ*/
section h4{
  color: #B5B2A9;
  font-size: 20px;
  margin: 8% 0 0 0;
}
.oillust01, .oillust02 {
width: 27%;

}
.oillust01{
 left: 0%;
 top: 1%;
}
.oillust02{
 top: 41%;
 right: 0%;


}

.title{

 padding-top: 6%; 
}
.about_image2 {
  width: 100%;
  background-image: url("../images/about2_bk_pc.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}
.padding_b{
  padding-bottom: 8%;
}
.padding_t{
  padding-top: 8%;
}
@media screen and (max-width: 640px) {
 section h4{
  color: #B5B2A9;
  font-size: 20px;
  margin: 16% 0 0 0;
}
.title{

 padding-top: 14%; 
 
}
.padding_t2{
  padding-top: 10%;
}
}
 

@media screen and (max-width: 640px) {
  .oillust01, .oillust02 {
width: 26%;

}
.oillust01{
 left: 0%;
 top: 1%;
}
.oillust02{
 top: 1%;
 right: 0%;


}
  }

 /*Exhibitionページ*/ 

.exh{
  padding: 0 3%;
margin-top: 5%;
}
.exh p{
line-height: 0.8;
}
.exh .time{
 background-color: #f0f5d9;
padding: 2%;
  border-radius: 30px;
}
.exh .pleice{
padding: 0 5%;
}

@media screen and (max-width: 640px) {
.exh .pleice{
font-size: 13px;
line-height: 1.0;
}
}

