@charset "utf-8";


/*-------------------------------------------------------------------
	index
-------------------------------------------------------------------*/

#mainVisual {
	background: url("../image/index/top_slide_bg.jpg") left top no-repeat;
	background-size: auto 100%;
	position: relative;
	margin-bottom: 20px;
	max-height: 800px;
}

.mvFlex {
	width: 90%;
	margin: 0 auto;
	padding: 90px 0 50px;
	display: flex;
	justify-content: flex-end;
}

.mvCatch {
	position: absolute;
	top: 20%;
	left: 20%;
}


.mvFlex .slideWrap {
	width: 50%;
}

@media screen and (max-width: 1400px){
	
	#mainVisual {
		max-height: 680px;
	}
	
	.mvCatch {
		left: 10%;
	}
}

@media screen and (max-width: 1200px){
	#mainVisual {
		margin-top: unset;
	}

	.mvCatch {
		left: 10%;
		width: 40%;
	}
}

@media screen and (max-width: 1023px) {
	#mainVisual {
		margin-top: 120px;
	}
}

@media screen and (max-width: 767px){
	
	#mainVisual {
		margin-top: unset;
		max-height: inherit;
	}
	
	.indexCase {
		background: url("../image/index/index_bg.jpg") top left no-repeat;
		background-size: 100% auto;
	}
	
	.indexCase .headWrap {
		background: none;
		transition: background-color .3s;
	}
	.indexCase .navOpen .headWrap {
		background-color: #fff;
	}
	
	.indexCase .headFlex .logo {
		background: none;
		transform: all,.5s;
	}
	
	/* .indexCase .headFlex.topMove .logo {
		background: #fff !important;
	}
	.indexCase .headFlex.topMove {
		background: #fff;
	} */
	
	
	#mainVisual {
		background: none;
		position: relative;
		padding-bottom: 30px;
	}

	.mvFlex {
		width: 94%;
		margin: 0 auto;
		padding: 0;
		display: block;
	}

	.mvCatch {
		position: static;
		width: 90%;
		margin: 0 auto 30px;
		text-align: center;
	}


	.mvFlex .slideWrap {
		width: auto;
	}
}

.bnrBox {
	width: 1025px;
	position: relative;
	margin: 0 auto 70px;
}

/* slick */

.leftArrow {
	position: absolute;
	top: 50%;
	left: -30px;
	width: 20px;
  height: 20px;
  border: 2px solid;
  border-color:  transparent transparent #21130f #21130f;
  transform: rotate(45deg) translateY(-50%);
	cursor: pointer;
}

.RightArrow {
	position: absolute;
	top: 50%;
	right: -20px;
	width: 20px;
  height: 20px;
  border: 2px solid;
  border-color: #565656 #565656 transparent transparent;
  transform: rotate(45deg) translateY(-50%);
	cursor: pointer;
}

.slick-dots{
  position: absolute;
  bottom: -20px;
  display: block;
  width: 100%;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
}
.slick-dots li{
  position: relative;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li button{
  font-size: 0;
  line-height: 1.0;
  display: block;
  width: 8px;
  height: 8px;
  padding: 0;
  cursor: pointer;
  color: transparent;
  border: 0;
  outline: none;
  background: #d9d9d9;
	border-radius: 50%;
	box-sizing: border-box;
}
.slick-dots li button:hover,
.slick-dots li button:focus{
  outline: none;
}
.slick-dots li button:hover:before,
.slick-dots li button:focus:before{
  opacity: 1;
}
.slick-dots li button:before{
	position: absolute;
  top: 0;
  left: 0;
  content: '';
	width: 100%;
	height: 100%;
	border-radius: 50%;
}

.slick-dots li:hover button:before,
.slick-dots li:focus button:before,
.slick-dots li.slick-active button:before{
  background: #d29836;
}


.indexWrap {
	width: 1200px;
	margin: 0 auto;
}

@media screen and (max-width: 1200px){
	.indexWrap {
		width: 94%;
	}
}

/* こだわりの味 */

.greetBox {
	margin-bottom: 50px;
}

.greeTitle {
	line-height: 1.0;
	margin-bottom: 40px;
	background: url("../image/index/gree_title_bg.jpg") left bottom no-repeat;
	background-size: auto 100%;
	padding-left:20px;
	font-size: 2.8rem;
	line-height: 1.4;
}

.greeFlex {
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}

.grrLeft {
	width: 50%;
}

.grrRight {
	width: 47%;
}

.greeLead {
	font-size: 1.7rem;
	margin-bottom: 20px;
}

.presFlex {
	display: flex;
	justify-content: space-between;
	margin-bottom: 10px;
}

.presFlex li {
	max-width: 19%;
}

.nameFlex {
	display: flex;
	align-items: center;
}

.nameFlex .w20 {
	width: 20%;
	font-size: 1.3rem;
	line-height: 1.2;
}

.nameFlex .w60 {
	width: 60%;
	text-align: center;
	font-size: 1.7rem;
	line-height: 1.0;
}

@media screen and (max-width: 767px){
	.bnrBox {
		width: 84%;
		margin: 0 auto 50px;
	}
	
	.leftArrow {
		left: -7%;
	}

	.RightArrow {
		right: -3%;
	}
	
	
	.greeFlex {
		display: block;
	}

	.grrLeft {
		width: auto;
	}

	.grrRight {
		display: none;
	}

	.greeLead {
		font-size: 1.7rem;
		margin-bottom: 20px;
	}
	
	.presFlex {
		display: flex;
		justify-content: space-between;
		margin-bottom: 10px;
	}

	.presFlex li {
		max-width: 48%;
	}
	
	.presFlex li:nth-child(n + 3) {
		display: none;
	}

	.nameFlex {
		display: block;
		align-items: center;
	}

	.nameFlex .w20 {
		width: auto;
		font-size: 1.3rem;
		line-height: 1.4;
		margin-top: 10px;
	}
	
	.nameFlex .w60 {
		display: none;
	}

}

/* 利用シーンで選ぶ */
.sceneBox {
	padding: 6rem 0 12rem;
	background: url("../image/index/bg-scene-top.jpg") no-repeat center center / cover;
}

@media screen and (min-width: 768px) {
	.sceneBox .indexWrap {
		padding: 0 6rem;
	}
}
.sceneFlex {
	margin-top: 6rem;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
	gap: 3rem 1rem;
}

@media screen and (min-width: 768px) {
		.sceneFlex {
			grid-template-columns: repeat(auto-fit, minmax(30rem, 1fr));
			gap: 5rem 3rem;
		}
}

.sceneItem {
	position: relative;
	overflow: hidden;
}

.sceneItem .whTtl {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 1rem 0.5rem;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.4rem;
	font-weight: 700;
	color: #fff;
	text-align: center;
	background-color: rgb(171 104 84 / .9);
	z-index: 2;
}

@media screen and (min-width: 768px) {
	.sceneItem .whTtl {
		font-size: 2rem;
	}
}

.sceneItem:hover {
	cursor: pointer;
}

.sceneItem .whTtl::after {
	position: absolute;
	top: 50%;
	right: 0.5rem;
	content: "";
	width: 0.5rem;
	height: 0.5rem;
	border-right: 0.2rem solid #fff;
	border-bottom: 0.2rem solid #fff;
	transform: translate(-50%, -50%) rotate(-45deg);
	transition: right .3s;
}

@media screen and (min-width: 768px) {
	.sceneItem .whTtl::after {
		right: 1.5rem;
	}
	.sceneItem:hover .whTtl::after {
		right: 1rem;
	}
}

/* 定番料理のご案内 */

.dishBox {
	background: url("../image/index/dish_pcbg.jpg") top center no-repeat;
	background-size: cover;
	padding: 60px 0;
}



@media screen and (max-width: 767px){
	
	.dishBox {
		background: url("../image/index/dish_spbg.jpg") top center no-repeat;
		background-size: cover;
		padding: 30px 0;
	}
}


/* 美味しいを求めて日本全国へ */

.japanBox {
	padding: 60px 0 60px 0;
}

.beafFlex {
	display: flex;
	justify-content: space-between;
	margin-bottom: 70px;
}


.beafFlex .beafTxt,
.beafFlex .beafPhoto {
	width: 48%;	
}

.beafGall {
	display: flex;
	/*margin-top: 30px;*/
}

.beafGall li:nth-child(n + 2) {
	margin-left: 20px;
}

.dobbleImg {
	display: flex;
	justify-content: space-between;
}

.dobbleImg li {
	width: 48%;
	text-align: center;
}

.wasabi01 {
	font-size: 2.0rem;
	margin:20px 0 10px;
}

.wasabi02 {
	font-size: 1.3rem;
	line-height: 1.4;
	text-align: left;
}

.numberFlex {
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}

.numberFlex .numberSame {
	width: 31%;
}

.numLists {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 20px;
}

.numLists .numLeft {
	width: 14%;
}

.numLists .numRight {
	width: 84%;
	border-bottom: 1px solid #d29836;
	text-align: center;
	padding-bottom: 15px;
	line-height: 1.0;
	font-size: 2.0rem;
	font-family: 'Noto Serif JP', serif;
	font-weight: 500;
}




@media screen and (max-width: 767px){
	
	/*.japanBox {
		padding: 30px 0;
	}*/
	
	/*.japanBox {
		padding: 30px 0 60px;
	}*/
	
	.beafFlex {
		display: block;
		margin-bottom: 40px;
	}


	.beafFlex .beafTxt {
		width: auto;
	}
	.beafFlex .beafPhoto {
		display: none;
	}
	
	.beafGall {
		display: none;
	}
	
	.dobbleImg {
		display: none;
	}
	
	
	.numberFlex {
		display: block;
	}

	.numberFlex .numberSame {
		width: auto;
	}
	
	.numberSame figure img {
		width: 100%;
	}
	
	.numberFlex .numberSame:nth-child(n + 2) {
		margin-top: 30px;
	}
	
	.numLists .numRight {
		text-align: left;
		font-size: 1.8rem;
	}
	
	
}

/* News */

.newsArea{
	width: 1200px;
	margin: 0 auto 80px;
}



.newsTitle {
/*	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin-bottom: 15px;
*/}

.newsLink {
	display: inline-block;
	position: relative;
	padding-right: 20px;
	line-height: 1.0;
	color: #000000;
}

.newsLink::after {
	width: 5px;
  height: 5px;
  border: 1px solid;
  border-color: #000000 #000000 transparent transparent;
  transform: rotate(45deg);
	content: '';
	position: absolute;
	top: 5px;
	right: 0;
}

.newsLink:hover {
	text-decoration: none;
	opacity: 0.7;
}

.newsWrap {
/*	border-top: 1px solid #e95189;
	border-bottom: 1px solid #e95189;
	padding: 30px 0;
	line-height: 1.0;*/
	margin-bottom: 60px;
}

.newsLine {
	display: flex;
	border-bottom: 1px solid #000;
	padding: 20px 0;
}

.newsLine:nth-child(n + 2) {
	/*margin-top: 15px;*/
}

.newsLine .newsDay {
	flex-grow: 0;
	margin-right: 70px;
}

.newsLine .newsText {
	flex-grow: 1;
}

.newsArea .newsWrap a{
	text-decoration: none;
	color: #000;
}

.new_n{
	padding: 0 4px;
	background: #bd3a43;
	color: #fff;
	margin-left: 10px;
	font-size: 1.3rem;
}

.contact_flw{
	display: flex;
	justify-content: space-between;
	margin-top: 70px;
}

.flw_btn{
	/*width: 580px;*/
	background: url("../image/index/contact_btn.jpg");
	width: 48%;
	text-align: center;
}

.contact_flw .flw_btn a{
	display: block;
	font-size: 2.0rem;
	padding: 60px 0;
	color: #fff;
	text-decoration: none;
	font-family: 'Noto Serif JP', serif;
	font-weight: 600;
}

.flw_pc_none{
	display: none;
}

.mt_15{
	margin-top: 15px;
}

.phantom_h{
	height: 180px;
}

.mt_5{
	margin-top: 5px;
}





@media screen and (max-width: 1200px){
	.newsArea {
		width: 94%;
	}
}

@media screen and (max-width: 767px){
	
	.newsArea {
		width: auto;
		margin: 0 auto 60px;
	}
	
	.newsLine{
		display: block;
		padding: 10px 0;
	}
	
	.newsArea{
		width: 90%;
	}
	
	.flw_pc_none{
	    display: block;
    }
	
.contact_flw .flw_btn a{
	padding: 10px 0;
	font-size: 1.4rem;
}
	
	.deri_heigh{
		line-height: 1.7;
	}
	
	.mb_15{
		margin-bottom: 15px;
	}
	
	.contact_flw{
		margin-top: 30px;
	}
	
	.sp_m10{
		margin-bottom: 15px;
	}
	
	.newsWrap{
		margin-bottom: 30px;
	}
	
	/*.flowerTitle{
		margin-bottom: 20px;
	}*/
	
	/*.flowerTitle .flowerIcon{
		background-position-y: -8px;
	}*/
	
	#mainVisual{
		margin-bottom: 20px;
	}
	
	
	#wrap.indexCase {
		padding-bottom: 100px;
	}

	
}


