@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap');
html{
  scroll-behavior: smooth;
  scroll-padding-top: 160px;
}
#wrap{
}

#Content_feature * {
  font-family: 'Noto Sans JP', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
#Content_feature{
	position: relative;
  background: url("images/bg_head.jpg") repeat-x;
  background-size: auto 58px;
	padding-top: 58px;
 margin-bottom: 0
}
#Content_feature a{
	color: #fff !important;
	text-decoration: none;
}

#Content_feature .article_inner{
	margin: 0 auto;
	max-width: 1000px;
}


@media (max-width: 820px) {
  #Content_feature{
    padding-top: 40px
  }
  #Content_feature img{
	width: 100%;
}
  
	#Content_feature .article_inner{
		max-width: 390px;
 		margin: auto;
		padding-left: 2.6%;
		padding-right: 2.6%;
	}
}/*-SP tablet-*/
@media (max-width: 390px) {
	#Content_feature .article_inner{
		padding-left: 5.1%;
		padding-right: 5.1%;
	}
}/*-SP-*/


#Content_feature .flex{
	display: flex;

}
@media screen and (min-width: 820px){
#Content_feature .pcFlex{
	display: flex;
	
}
}/*-PC only-*/



/* leadWrap*/
.leadWrap{
  background: #d9c15f
}

/* mainvisual */
.mainvisual{
	font-size: 0;
	text-align: center;
  flex-wrap: nowrap;
}

.menuList{
  text-align: center;
}
.menuList .flex{
  gap: 20px;
}

.menuList li{
  width: 150px;
  text-align: center
}
.menuList li h4{
  font-size: 13px;
  align-items: center; 
  display: flex; 
  justify-content: center; 
  margin-bottom: 8px;
}

.menuList li h4::before,
.menuList li h4::after {
  background-color: #ff4161; 
  border-radius: 5px; 
  content: "";
  height: 2px; /* 線の高さ */
  width: 20px; /* 線の長さ */
}
.menuList li h4::before {
  margin-right: 3px; /* 文字との余白 */
  transform: rotate(70deg); /* 傾ける */
}
.menuList li h4::after {
  margin-left: 3px; /* 文字との余白 */
  transform: rotate(-70deg); /* 傾ける */
}

.menuList li figure{
  box-shadow: 1px 1px 13px -8px #777777;
max-width: 142px;
}

.menuList > p{
  background: #493503;
  padding: 5px 20px;
  display: inline-block;
  margin: 25px auto 0;
  color: #fff;
  line-height: 1
}

@media (min-width: 821px) {
.leadWrap{
  padding-bottom: 150px;
}  
  
#Content_feature .mainvisual{
    margin-left: calc(50vw - 500px);
}
#Content_feature .mainvisual .subImg img{
width: 500px;
}
.mainvisual .mainTitle{
  margin-top: -60px;
  margin-left: 20px
}
#Content_feature .mainvisual .mainTitle img{
    width: 675px;
  }
  
.menuList{
  background:url("images/bg_menu.png") no-repeat;
  background-size: contain;
  width: 930px;
  margin: -50px auto 0;
  padding: 78px 50px 58px;
  
}  

.menuList > p{
  font-size: 20px;
  
  }
}/*-PC only-*/

@media (max-width: 820px) {
.mainvisual{
   
  }
.mainvisual figure{
 width: 50vw;
  }
.mainvisual .mainTitle{
  width: calc(50vw + 40px);
  position: absolute;
  right: -50px;
  top:-5px
  }
.menuList{
  width: 96vw;
  margin: 0 auto;
  background:url("images/bg_menu_sp.png") no-repeat;
  background-size: 100%;
  padding: 50px 30px 120px
}  
  
  .menuList ul{
    flex-wrap: wrap;
    gap:10px
  }
  
  .menuList li{
    width: calc(50% - 10px)
  }
  .menuList li h4{
  font-size: 12px;
  }
  .menuList li h4::before {
  margin-right: 1px; /* 文字との余白 */
 
}
.menuList li h4::after {
  margin-left: 1px; /* 文字との余白 */

}
  .menuList > p{
    font-size: 16px;
    padding: 5px 10px;
    margin: 10px auto 0;
  }

}/*-SP tablet-*/



/** bookArea **/

#kamometei{
  background: #e6a2b9
}

#bayberry{
  background: #a7abd0
}

#nonno{
  background: #b89b93
}

.bookArea{
  position: relative;
}
.bookArea:before{
  position: absolute;
 display: block;
  content: "";
  
}
#kamometei.bookArea:before{
  background: url("images/bg_kamometei.png") no-repeat;
  background-size: contain;
}

#bayberry.bookArea:before{
  background: url("images/bg_bayberry.png") no-repeat;
  background-size: contain;
}

#nonno.bookArea:before{
  background: url("images/bg_nonno.png") no-repeat;
  background-size: contain;
}


.bookArea h2.contTi{
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  font-weight: bold;
  text-align: center;
  line-height: 1.2
}

#Content_feature .bookArea a.btn{
  display: block;
  padding: 5px;
  text-align: center;
  color: #fff !important;
  background: #493503
}

.bookArea .txts h4{
  border-bottom: 3px dashed #fff;
  padding-bottom: 10px;
  
}

.bookArea .h3Wrap{
    display: flex;
  justify-content: center;
}

.bookArea .h3Wrap .infos{
    background: url("images/bg_h3.png") no-repeat;
    background-size: contain;
  display: block;
  line-height: 1.2;
  text-align: center;
  }
.bookArea .h3Wrap .infos .date{
  color: #ff4161
}
#Content_feature .bookArea h3{
  font-family: "Noto Serif JP", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif" !important;
  font-weight: 600;
  text-align: center;
}

#Content_feature .bookArea h3 span{
  font-family: "Noto Serif JP", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif" !important;
}


.bookArea .txts dt{
    font-weight: normal;
  } 




@media (min-width: 821px) {
.bookArea{
  padding-top: 80px;
  padding-bottom: 162px
}  
  
.bookArea:before{
top:-115px;
left:calc(50% - 185px);
  width: 370px;
  height: 115px;
}
  
.bookArea h2.contTi{
  top: -64px;
  font-size: 36px;
}

  .bookArea h2.contTi span{
    font-size: 26px;
  }
  
  .bookArea .h3Wrap{
   margin: 0 auto 40px;
  }

  .bookArea h3{
    font-size: 58px
  }  
  
  .bookArea h3 span{
    display: block;
    font-size: 28px;
  }
  
  .bookArea .h3Wrap .infos{
    font-size: 11px;
    width: 90px;
    padding: 16px 14px 12px;
  }
  .bookArea .h3Wrap .infos .date{
    font-size: 18px;
  }
  
  .bookArea .h3Wrap .infos .fontl{
    font-size:14px;
  }
  
.bookArea .pcFlex{
    width: 896px;
  justify-content: space-between;
  flex-wrap: nowrap
}
  .bookArea .imgs{
    width: 275px;
  }  
  .bookArea .txts{
    width: 545px;
  }
  
#Content_feature .bookArea a.btn{
  font-size: 20px;
  margin-top: 23px
  }
  .bookArea .txts dl{
    justify-content: space-between;
    margin-bottom: 35px;
    align-items: baseline;
  }  
  .bookArea .txts dt{
    font-size: 18px;
  }  

  .bookArea .txts dt span{
    font-size: 24px;
  }
  .bookArea .txts dd{
    font-size: 16px;
  }
  .bookArea .txts h4{
    font-size: 23px;
    margin-bottom: 26px;
  }

  .bookArea .txts p{
    font-size:15px;
    line-height: 1.67;
    margin-bottom: 30px
  }
  
}/*-PC only-*/

@media (max-width: 820px) {
.bookArea{
  padding-top: 60px;
  padding-bottom: 80px
}  
#bayberry.bookArea,
  #nonno.bookArea{
    padding-top: 72px
  }  
  
.bookArea:before{
top:-58px;
left:calc(50% - 93px);
  width: 186px;
  height: 60px;
}
  
.bookArea h2.contTi{
  top: -25px;
  font-size: 24px
}
.bookArea h2.contTi span{
  font-size: 16px
}
  
  .bookArea .h3Wrap{
    margin: 0 auto 20px;
  }  
  
  .bookArea h3{
    font-size: 40px
  }  
  
    .bookArea h3 span{
    display: block;
    font-size: 20px;
  }
  
  .bookArea .h3Wrap .infos{
    font-size: 12px;
    width: 60px;
  }
  .bookArea .h3Wrap .infos .date{
    font-size: 18px;
  }
  
  .bookArea .h3Wrap .infos .fontl{
    font-size:18px;
  }
  
.bookArea .pcFlex{
    width:100%;

}
  .bookArea .imgs{
    width: 62%;
    margin: 0 auto 20px
  }  
  .bookArea .txts{
   
  }
  
#Content_feature .bookArea a.btn{
  font-size: 14px;
  margin-top: 18px
  }

  .bookArea .txts dl{
    flex-direction: column;
    margin-bottom: 20px;
    align-items: baseline;
  }  
  .bookArea .txts dt{
    font-size: 16px;
  }  

  .bookArea .txts dt span{
    font-size: 20px;
  }
  .bookArea .txts dd{
    font-size: 14px;
  }
  .bookArea .txts h4{
    margin-bottom: 20px;
    font-size: 18px
  }
  .bookArea .txts h4 img{
    height: 15px;
  }
  .bookArea .txts p{
    font-size:14px;
    line-height: 1.67;
    margin-bottom: 30px
  }
  


  
}/*-SP tablet-*/


#toLineup{
  background: url("images/bg_head.jpg") repeat-x #d9c15f;
  background-position: bottom;
  background-size: auto 58px;
	padding-top: 40px;
  padding-bottom: 92px;
  text-align: center
}
#toLineup p{
  display: inline-block;
  background: #ff4161;
  padding: 20px 50px;
  border-radius:10px ;
  margin: auto
}
@media (min-width: 821px) {
  #toLineup p img{
    width: 554px;
  }
}
@media (max-width: 820px) {
  #toLineup p{
    width: 96%;
    padding: 20px;
  }
    #toLineup p img{
    width: 80%;
  }
}

/* パソコンで見たときは"pc"のclassがついた画像が表示される */
@media (min-width: 821px) {
.sp { display: none !important; }
}
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media (max-width: 820px) {
.pc { display: none !important; }
}