/*common start*/
.secHeader{
	width: 80%;
	margin: 0 auto 100px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}
.secTitle h2{
	font-family: 'Lato', sans-serif;
	font-size: 2.5rem;
	text-transform: uppercase;
	margin-bottom: 20px;
	line-height: 1;
	letter-spacing: 4px;
}
_::-webkit-full-page-media, _:future, :root .secTitle h2{
	font-family: 'Lato', sans-serif;
}
/*common end*/

/*heroHeader start*/
.heroHeader{
	box-sizing: border-box;
	width: calc( 100% - 200px );
	height: calc( 100vh - 167px );
	text-align: left;
	margin: 0 auto 200px;
	position: relative;
	background-position-y: bottom;
}
@media all and (-ms-high-contrast: none) {
  .heroHeader{
		margin: 112px auto 200px;
	}
}
.heroHeader .treat{
	width: 300px;
	height: 400px;
	background-color: #F5F9E1;
	position: absolute;
	bottom: -50px;
	right: -100px;
	z-index: -1;
}
.bg-slider {
	width: 100%;
	height: 100%;
	background-position:center center;
	background-size: cover;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* スクロールダウン */
.scrollDown {
  display: inline-block;
  position: absolute;
  right: -67px;
  bottom: 0;
  z-index: 2;
  padding: 10px 10px 110px;
  overflow: hidden;
  color: #222222;
  font-size: 14px;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}
@media all and (-ms-high-contrast: none){
  .scrollDown{
    right: -95px;
  }
}
.scrollDown::before{
	content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 100px;
  background: #bfd63e;
}
.scrollDown::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 100px;
  background: #222222;
	animation: sdl 1.5s cubic-bezier(1, 0, 0, 1) infinite;
}
@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.bg-slider.spOnly{
	display: none!important;
}
/*heroHeader end*/

/*concept start*/
.concept{
	margin-bottom: 200px;
}
.concept .wrapper{
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	position: relative;
}
.concept .secHeader{
	position: absolute;
	top: 0;
}
.concept .secTitle{
	width: 50%;
	position: absolute;
	top: 0;
	left: 0;
}
.concept .wrapper img{
	max-width: 48%;
	height: 100%;
}
@media all and (-ms-high-contrast: none){
  .concept .wrapper img{
		width: 48%;
  }
}
.concept .treat{
	width: 50%;
	height: 40%;
	background-color: #F5F9E1;
	position: absolute;
	bottom: -50px;
	left: 50%;
	transform: translate(-50%, 0%);
	z-index: -1;
}
/*concept end*/

/*staff staff*/
#front .staff{
	margin-bottom: 250px;
}
.staffList{
	max-width: 90%;
	margin: 0 0 0 10%;
	position: relative;
}
@media all and (-ms-high-contrast: none){
  .staffList{
		max-width: 90%;
		margin: 0 0 0 10%;
		position: relative;
    right: 7px;
  }
}
.staffList ul{
	display: flex;
}
@media all and (-ms-high-contrast: none){
  .staffList ul li{
		width: 33.3333%;
  }
}
.staff .treat{
	width: 50%;
	height: 40%;
	background-color: #F5F9E1;
	position: absolute;
	bottom: -50px;
	left: 0;
	transform: translate(-50%, 0%);
	z-index: -1;
}
/*staff end*/

/*style staff*/
#front .style{
	position: relative;
	margin-bottom: 200px;
}
.style .secHeader{
	width: 80%;
	margin: 0 auto 100px;
}
.style .secHeader span{
	text-transform: lowercase;
}
.style .instafeed ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.style .instafeed ul li{
	width: 20%;
}
.style .treat{
	width: 30%;
	height: 50%;
	background-color: #F5F9E1;
	position: absolute;
	top: -30px;
	right: 0;
	z-index: -1;
}
/*style end*/

/*menu start*/
#front .menu{
	position: relative;
	margin-bottom: 200px;
}
.menu .secHeader{
	width: 100%;
	margin-bottom: 120px;
}
.menu .menuList{
	display: flex;
	justify-content: space-between;
}
.menu .menuList .box{
	width: 30%;
	max-width: 370px;
}
.menu .menuList .box h3{
	font-size: 2.2rem;
	margin-bottom: 20px;
}
.menu .menuList .box table{
	width: 100%;
}
.menu .menuList .box th{
	text-align: left;
	line-height: 2.5;
}
.menu .menuList .box td{
	text-align: right;
	line-height: 2.5;
}
.menu .treat{
	width: 30%;
	height: 22%;
	background-color: #F5F9E1;
	position: absolute;
	top: 0;
	right: 0;
	z-index: -1;
}
/*menu end*/

/*coolItem start*/
.coolItem{
	position: relative;
}
.coolItem .inner{
	max-width: 90%;
	margin-right: 10%;
}
.coolItem .treat{
	width: 40%;
	height: 400px;
	background-color: #F5F9E1;
	position: absolute;
	bottom: -50px;
	right: 0;
	z-index: -1;
}
/*coolItem end*/

/*news start*/
.news{
	display: block;/*新着情報機能なしの場合は"none"に変更*/
	padding: 200px 0 100px;
	position: relative;
}
.news .inner{
	width: 1140px;
}
.news .secHeader{
	width: 30%;
	display: block;
	margin-bottom: 0;
}
.news .secHeader .secTitle h2{
	margin-bottom: 125px;
}
.news .wrapper{
	display: flex;
}
.news .contents{
	width: 70%;
}
.news .contents ul li{
	margin-bottom: 50px;
}
.news .contents ul li:last-of-type{
	margin-bottom: 0;
}
.news .contents ul li a{
	display: flex;
	align-items: center;
}
.news .contents ul li a time{
	font-size: 1.4rem;
	margin-right: 50px;
}
.news .treat{
	width: 100%;
	height: 160px;
	background-color: #F5F9E1;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
/*news end*/

/*blog start*/
#front .section.blog{
	margin-bottom: 0;
}
.blog{
	position: relative;
}
.section.blog{
	padding-bottom: 150px;
}
.blog .inner{
	width: 1140px;
}
.blog .secHeader{
	width: 100%;
	align-items: center;
}
.blog .secTitle h2{
	margin-bottom: 0;
}
.blog .contents ul{
	display: flex;
	justify-content: space-between;
}
.blog .contents ul li{
	width: 31%;
}
.blog .contents ul li figure{
	height: 250px;
	overflow: hidden;
	margin-bottom: 15px;
}
.blog .contents ul li time{
	margin-bottom: 5px;
	font-size: 1.4rem;
}
.blog .treat{
	width: 100%;
	height: 390px;
	background-color: #F5F9E1;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
/*blog end*/



@media screen and (max-width:767px){
	body{
		font-size: 1.3rem;
  }
  .inner{
		box-sizing: border-box;
		max-width: 90%;
		padding: 0;
		margin: 0 auto;
  }
  img{
		width: 100%;
		height: auto;
  }
  .pcOnly{
		display: none;
  }
  .spOnly{
		display: block;
  }
	
	/*common start*/
	.section{
		margin-bottom: 100px;
	}
	.secHeader{
		width: 80%;
		display: block;
		margin-bottom: 100px;
		position: relative;
	}
	.secTitle{
		margin-bottom: 20px;
	}
	.secTitle h2{
		font-size: 2rem;
	}
	.secTitle h2 span{
		font-size: 1.3rem;
		margin-top: 15px;
	}
	.secHeader .btn-02{
		position: absolute;
    top: auto;
    bottom: -65px;
	}
	.secHeader .btn-02::before{
		top: -3px;
	}
	/*common end*/

	/*heroHeader start*/
	.heroHeader{
		height: calc( 100vh - 50px );
		margin: 50px 0 100px;
		width: calc( 100% - 20px );
	}
	.scrollDown{
		right: 3px;
	}
	.heroHeader .treat{
		width: 70%;
		right: -20px;
		bottom: -20px;
	}
	.bg-slider.spOnly{
		display: block!important;
	}
	.scrollDown{
		bottom: -55px;
	}
	.scrollDown::before {
    height: 70px;
		bottom: 35px;
}
	.scrollDown::after {
    height: 70px;
		bottom: 35px;
	}
	/*heroHeader end*/

	/*concept start*/
	.concept .inner{
		max-width:100%;
		padding: 0;
	}
	.concept .wrapper{
		display: block;
	}
	.concept .secHeader{
		position: static;
		margin-bottom: 50px;
	}
	.concept .secTitle{
		box-sizing: border-box;
		width: 100%;
		position: static;
	}
	.concept .wrapper img {
		max-width: 90%;
		margin-bottom: 30px;
	}
	.concept .wrapper img:last-of-type{
		width: 80%;
		margin-left: 10%;
		margin-bottom: 0;
	}
	.concept .treat{
		transform: inherit;
		bottom: 20%;
	}
	/*concept end*/

	/*staff staff*/
	#front .staff {
    margin-bottom: 100px;
	}
	.staffList{
		max-width: 100%;
		margin: 0;
	}
	.staffList ul{
		flex-wrap: wrap;
	}
	.staffList ul li{
		margin-bottom: 30px;
	}
	.staffList ul li:first-of-type,
	.staffList ul li:last-of-type{
		margin-right: 10%;
	}
	.staffList ul li:nth-of-type(2){
		margin-left: 10%;;
	}
	.staffList ul li:last-of-type{
		margin-bottom: 0;
	}
	.staffList .treat{
		width: 100%;
		height: 20%;
		bottom: 25%;
	}
	.staffList .treat.spOnly{
		width: 50%;
		top: 22%;
		left: auto;
		right: 0;
		transform: translate(0%, 0%);
	}
	/*staff end*/

	/*style staff*/
	#front .style{
		margin-bottom: 100px;
	}
	.style .instafeed ul li{
		width: 50%;
	}
	#sb_instagram.sbi_col_10 #sbi_images .sbi_item, #sb_instagram.sbi_col_3 #sbi_images .sbi_item, #sb_instagram.sbi_col_4 #sbi_images .sbi_item, #sb_instagram.sbi_col_5 #sbi_images .sbi_item, #sb_instagram.sbi_col_6 #sbi_images .sbi_item, #sb_instagram.sbi_col_7 #sbi_images .sbi_item, #sb_instagram.sbi_col_8 #sbi_images .sbi_item, #sb_instagram.sbi_col_9 #sbi_images .sbi_item {
    width: 50%!important;
	}
	/*style end*/

	/*menu start*/
	#front .menu{
		margin-bottom: 100px;
	}
	#front .menu .inner{
		width: 80%;
	}
	.menu .secHeader::after{
		width: 50%;
		height: 100px;
		background-color: #f5f9e1;
		position: absolute;
		top: 0;
		right: 0;
		z-index: 5;
	}
	.menu .menuList{
		display: block;
	}
	.menu .menuList .box{
		width: 100%;
		margin-bottom: 50px;
	}
	.menu .menuList .box h3{
		line-height: 1;
	}
	/*menu end*/

	/*coolItem start*/
	.section.coolItem{
		margin-bottom: 0;
	}
	.coolItem .inner{
		max-width: 95%; 
	}
	.coolItem .treat{
		width: 50%;
    height: 80%;
    background-color: #F5F9E1;
    position: absolute;
    bottom: -15px;
    right: 0;
    z-index: -1;
	}
	/*coolItem end*/

	/*news start*/
	.section.news{
		margin-bottom: 0;
	}
	.news{
		padding: 100px 0 70px;
		border-bottom: solid 2px #bfd63e;
	}
	.news .wrapper{
		display: block;
	}
	.news .secHeader{
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-bottom: 40px;
		width: 100%;
	}
	.news .secHeader .secTitle h2{
		margin-bottom: 0;
	}
	.news .btn-02{
		top: -10px;
		right: 20px;
	}
	.news .contents {
    width: 100%;
	}
	.news .contents ul li{
		margin-bottom: 30px;
	}
	.news .contents ul li:last-of-type{
		margin-bottom: 0;
	}
	.news .contents ul li a{
		display: block;
	}
	.news .contents ul li a p{
		margin-bottom: 5px;
	}
	.news .treat {
    width: 50%;
    height: 80px;
    background-color: #F5F9E1;
    position: absolute;
    top: 73px;
		left: auto;
    right: 0;
    z-index: -1;
	}
	/*news end*/

	/*blog start*/
	.section.blog{
		padding-bottom: 0;
	}
	.blog .secHeader{
		margin-bottom: 70px;
	}
	.blog .secTitle h2{
		letter-spacing: 2px;
	}
	.blog .btn-02{
		top: -10px;
		right: 20px;
	}
	.blog .contents ul{
		display: block;
	}
	.blog .contents ul li{
		width: 100%;
		margin-bottom: 50px;
	}
	.blog .treat{
		height: 280px;
		bottom: -80px;
	}
	/*blog end*/
	
	
	
	
	}










