@charset "UTF-8";


/*style上書き
---------------------------------------------------------- */
#contents {
	padding-top: 0;
}

.news_list {
	width: 940px;
	margin: 0 auto;
}


@media screen and (max-width: 750px) {
	
	.news_list {
		width: 94%;
		margin: 0 auto;
	}
}



/*main
---------------------------------------------------------- */
#main_block {
	height: 356px;
	background: url(../img/top/main_bg_pc.jpg) no-repeat;
	background-position: top center;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
}

.main_box {
	display: table;
	width: 100%;
	height: 100%;
}

.main_box h1 {
	display: table-cell;
	vertical-align: bottom;
	text-align: right;
	padding: 0 25px 30px 0;
	opacity: 0;
}

.main_box h1.on {
	opacity: 1;
}

.main_box h1 svg {
	width: 405px;
	height: 180px;
	-webkit-transform: rotate(-7deg);
	-moz-transform: rotate(-7deg);
	transform: rotate(-7deg);
}

.main_box h1.on #stroke {
	stroke-dasharray: 2500 2500;
	animation: write-the-text 6.5s linear;
}



@keyframes write-the-text {
	0% {
		stroke-dashoffset:2500;
	}
	20% {
		stroke-dashoffset:2500;
	}
	80% {
		stroke-dashoffset:0;
	}
	100% {
		stroke-dashoffset:0;
	}
}

@-webkit-keyframes write-the-text {
	0% {
		stroke-dashoffset:2500;
	}
	20% {
		stroke-dashoffset:2500;
	}
	80% {
		stroke-dashoffset:0;
	}
	100% {
		stroke-dashoffset:0;
	}
}



@media screen and (max-width: 750px) {
	
	#main_block {
		height: 200px;
		background: url(../img/top/main_bg_sp.jpg) no-repeat;
		background-position: top center;
		-webkit-background-size: cover;
		-moz-background-size: cover;
		-o-background-size: cover;
		background-size: cover;
	}
	
	.main_box h1 {
		padding: 0 15px 20px 0;
	}
	
	.main_box h1 svg {
		width: 230px;
		height: 102px;
	}

}



/*recommend_recipe
---------------------------------------------------------- */
.top_recommend_recipe {
	padding: 70px 0 50px;
	background: #f5ede0;
}

.recommend_recipe_slide_block {
	width: 100%;
	height: auto;
	position: relative;
	overflow: hidden;
}

.recommend_recipe_slide_block:before {
	content: "";
	display: block;
	width: 50%;
	height: 340px;
	position: absolute;
	top: 0;
	left: -335px;
	z-index: 1000;
	background-color: rgba(255,255,255,0.7);
}

.recommend_recipe_slide_block:after {
	content: "";
	display: block;
	width: 50%;
	height: 340px;
	position: absolute;
	top: 0;
	right: -335px;
	z-index: 1000;
	background-color: rgba(255,255,255,0.7);
}

.recommend_resipe_slide {
	width: 630px;
	margin: 0 auto;
}

.recommend_resipe_slide ul {
	margin-left: -20px;
}

.recommend_resipe_slide li {
	float:left;
	width: 630px;
	margin-left: 20px;
}

.recommend_resipe_slide li a {
	display: block;
	text-align: center;
	background: #fff;
	overflow: hidden;
	position: relative;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-ms-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

.recommend_resipe_slide li a:after {
	content: "";
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	box-shadow: 0 0 0 1px #cbb9a9 inset;
}

.recommend_resipe_slide li .ph {
	overflow: hidden;
	width: 630px;
	height: 340px;
}

.recommend_resipe_slide li .ph img {
	width: 100%;
	height: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%,-50%);
	-ms-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
}

.recommend_resipe_slide li a:hover .ph {
	opacity: 0.6;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.recommend_resipe_slide li .txt {
	display: table;
	width: 100%;
	height: auto;
	padding: 15px;
	overflow: hidden;
	position: absolute;
	bottom: 0;
	z-index: 10;
	background: rgba(118,70,37,0.8);
}

.recommend_resipe_slide li .txt h4 {
	display: table-cell;
	vertical-align: middle;
	height: 100%;
	font-size: 1.8rem;
	color: #fff;
}

.recommend_resipe_slide_marker {
	width: 800px;
	margin: 30px auto 0;
}

.recommend_resipe_slide_marker ul{
	text-align: center;
	letter-spacing: -0.5em;
}

.recommend_resipe_slide_marker ul li {
	display: inline-block;
	letter-spacing: normal;
	margin-left: 15px;
	width: 8px;
	height: 8px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	background: #8e8d87;
}

.recommend_resipe_slide_marker ul li.current{
	background: #df7132;
}

.recommend_resipe_slide_marker ul li:first-child{
	margin-left: 0;
}

.recommend_resipe_slide_marker ul li:hover{
	cursor: pointer;
}




@media screen and (max-width: 750px) {
	
	.top_recommend_recipe {
		padding: 35px 0;
	}
	
	.recommend_recipe_slide_block {
		width: 94%;
		margin: 0 auto;
	}
	
	.recommend_recipe_slide_block:before,
	.recommend_recipe_slide_block:after {
		display: none;
	}
	
	.recommend_resipe_slide {
		width: 100%;
	}
	
	
	.recommend_resipe_slide ul {
		margin-left: 0;
	}
	
	.recommend_resipe_slide li {
		width: 100%;
		margin-left: 0;
	}
	
	.recommend_resipe_slide li a:hover .ph {
		opacity: 1;
	}
	
	.recommend_resipe_slide li .ph {
		width: 50vw;
		height: 50vw;
	}
	
	.recommend_resipe_slide li .txt {
		padding: 12px;
	}
	
	.recommend_resipe_slide li .txt h4 {
		font-size: 1.6rem;
	}
	
	.recommend_resipe_slide_marker {
		width: 100%;
		margin: 15px auto 0;
	}

}


/*feature_recipe
---------------------------------------------------------- */
.top_feature_recipe {
	padding: 60px 0;
	position: relative;
}

.top_feature_recipe:before {
	display: block;
	content: "";
	width: 100%;
	height: 0;
	padding: 21px 0 0;
	overflow: hidden;
	background: url(../img/common/line_bg01.png) repeat-x;
	position: absolute;
	top: -21px;
	left: 0;
	z-index: 1;
}

.top_feature_recipe_block {
	width: 1140px;
	margin: 0 auto;
}

.feature_recipe_bnr {
	text-align: center;
}

.feature_recipe_bnr ul {
	margin-left: -40px;
}

.feature_recipe_bnr li {
	float: left;
	width: 550px;
	margin-left: 40px;
}

.feature_recipe_bnr li a {
	display: block;
}

.feature_recipe_bnr li a:hover {
	opacity: 0.6;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}


.top_feature_recipe_block .btn_area {
	text-align: center;
	margin-top: 40px;
}

.top_feature_recipe_block .btn_area .btn_red {
	display: inline-block;
	min-width: 280px;
	max-width: 90%;
	line-height: 1.4;
	background: #df7132;
	position: relative;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	-o-border-radius: 6px;
	border-radius: 6px;
}

.top_feature_recipe_block .btn_area .btn_red a {
	display: block;
	padding: 16px 20px;
	color: #fff;
	font-size: 1.8rem;
	position: relative;
	z-index: 10;
	text-align: center;
	
}

.top_feature_recipe_block .btn_area .btn_red:hover {
	background: #e36262;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}



@media screen and (max-width: 750px) {
	
	.top_feature_recipe {
		padding: 30px 0;
	}
	
	.top_feature_recipe:before {
		padding: 14px 0 0;
		background: url(../img/common/line_bg01.png) repeat-x;
		position: absolute;
		top: -14px;
		left: 0;
		-webkit-background-size: auto 14px;
		-moz-background-size: auto 14px;
		-o-background-size: auto 14px;
		background-size: auto 14px;
	}
	
	.top_feature_recipe_block {
		width: 94%;
		margin: 0 auto;
	}
	
	.feature_recipe_bnr ul {
		margin-left: 0;
	}
	
	.feature_recipe_bnr li {
		float: none;
		width: 100%;
		margin: 20px 0 0;
	}
	
	.feature_recipe_bnr li:first-child {
		margin-top: 0;
	}
	
	.feature_recipe_bnr li img {
		max-width: 100% !important;
		max-height: 100% !important;
	}
	
	.top_feature_recipe_block .btn_area {
		margin-top: 20px;
	}
	
	.top_feature_recipe_block .btn_area .btn_red {
		min-width: 70%;
		max-width: 70%;
	}
	
	.top_feature_recipe_block .btn_area .btn_red a {
		font-size: 1.4rem;
	}
}



/*ranking
---------------------------------------------------------- */
#top_ranking {
	margin-top: -105px;
	padding-top: 105px;
}

.top_ranking {
	margin-bottom: 60px;
}

.top_ranking_block {
	padding: 70px 0 60px;
	background: #f5ede0;
}

.ranking_list {
	width: 1140px;
	margin: 0 auto;
}

.ranking_list ul {
	margin-left: -73px;
	text-align: center;
}

.ranking_list li {
	float: left;
	width: 331px;
	margin-left: 73px;
	opacity: 0;
	-webkit-transform: translate(0, 30px);
	transform: translate(0, 30px);
	-webkit-transition: all 0.3s ease-out;
	-moz-transition: all 0.3s ease-out;
	transition: all 0.3s ease-out;
}

.ranking_list.is-showed li {
	opacity: 1;
	-webkit-transform: translate(0, 0);
	transform: translate(0, 0);
}

.ranking_list li a {
	display: block;
}

.ranking_list li a:hover {
	opacity: 0.6;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.ranking_list li .ph {
	display: inline-block;
	width: 100%;
	margin-bottom: 25px;
	position: relative;
}

.ranking_list li .ph .cover {
	height: 331px;
	background-position: center center;
	background-repeat: no-repeat;
	-webkit-background-size: cover;
	background-size: cover;
}

.ranking_list li .ph .ranking_icon {
	position: absolute;
	left: 5px;
	top: -12px;
	z-index: 10;
}

.ranking_list li .ph .ranking_icon img {
	width: 36px;
	height: auto;
}

.ranking_list li .ph div {
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
	position: relative;
}

.ranking_list li .ph div img {
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	-o-border-radius: 50%;
	border-radius: 50%;
}


.ranking_list li .txt {
	font-size: 1.3rem;
	padding: 0 20px;
	line-height: 1.7;
}

.ranking_list li .txt h4 {
	margin-bottom: 15px;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
}



@media screen and (max-width: 750px) {
	
	#top_ranking {
		margin-top: -60px;
		margin-bottom: 35px;
		padding-top: 60px;
	}
	
	.top_ranking_block {
		margin-bottom: 30px;
		padding: 35px 3% 30px;
	}
	
	.ranking_list {
		width: 100%;
		padding: 0 8%;
	}
	
	.ranking_list ul {
		margin-left: 0;
	}
	
	.ranking_list li {
		float: none;
		width: 100%;
		margin: 40px 0 0;
		opacity: 1;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
	
	.ranking_list li:first-child {
		margin-top: 20px;
	}
	
	.ranking_list li .ph {
		margin-bottom: 15px;
	}
	
	.ranking_list li .ph .cover {
		height: auto;
		padding-top: 100%;
	}
	
	.ranking_list li .txt {
		padding: 0;
		line-height: 1.5;
	}
	
	.ranking_list li .txt h4 {
		margin-bottom: 8px;
		font-size: 1.5rem;
	}
}




/*ft_bnr
---------------------------------------------------------- */
.top_ft_bnr {
	width: 940px;
	margin: 50px auto 0;
	/*padding-top: 50px;
	border-top: 1px dotted #bbb;*/
}

.top_ft_bnr ul {
	margin-left: -35px;
	text-align: center;
	font-size: 0;
}

.top_ft_bnr li {
	display: inline-block;
	width: 450px;
	vertical-align: bottom;
	margin-left: 35px;
	border: 1px solid #ccc;
}

.top_ft_bnr li a {
	display: block;
	padding: 14px 30px;
	font-size: 19px;
	text-align: left;
	position: relative;
	background: url(../img/common/icon_arrow01.png) right 20px center no-repeat;
	-webkit-background-size: 12px auto;
	-moz-background-size: 12px auto;
	-o-background-size: 12px auto;
	background-size: 12px auto;
}

.top_ft_bnr li a:hover {
	color: #df7132;
}

.top_ft_bnr .products a .ttl .icon,
.top_ft_bnr .products a .ttl p,
.top_ft_bnr .keyword a .ttl .icon,
.top_ft_bnr .keyword a .ttl p {
	display: table-cell;
	vertical-align: middle;
}

.top_ft_bnr .products a .ttl p,
.top_ft_bnr .keyword a .ttl p {
	padding-left: 20px;
}

.top_ft_bnr .products a .ttl .icon img,
.top_ft_bnr .keyword a .ttl .icon img {
	width: 95px;
	height: auto;
}

.products_top_ft_bnr .recipe a .ttl p,
.products_top_ft_bnr .online a .ttl p {
	padding-left: 15px;
}



@media screen and (max-width: 750px) {
	
	.top_ft_bnr {
		width: 94%;
		margin: 0 auto;
		/*padding-top: 30px;
		border-top: none;*/
	}
	
	.top_ft_bnr ul {
		margin-left: -3%;
	}
	
	.top_ft_bnr li {
		width: 47%;
		margin-left: 3%;
	}
	
	.top_ft_bnr li a {
		padding: 14px;
		text-align: center;
		background: none;
	}
	
	.top_ft_bnr .products a .ttl .icon,
	.top_ft_bnr .products a .ttl p,
	.top_ft_bnr .keyword a .ttl .icon,
	.top_ft_bnr .keyword a .ttl p {
		display: block;
	}
	
	.top_ft_bnr .products a .ttl .icon img,
	.top_ft_bnr .keyword a .ttl .icon img {
		width: 90px;
		height: auto;
	}
	
	.top_ft_bnr .products a .ttl p,
	.top_ft_bnr .keyword a .ttl p {
		margin-top: 10px;
		padding-left: 0;
		font-size: 12px;
		line-height: 1.4;
	}

	.top_ft_bnr .products a .ttl p span,
	.top_ft_bnr .keyword a .ttl p span {
		display: block;
		font-size: 18px;
	}
	
}



/*ttl_head
---------------------------------------------------------- */
.ttl_head {
	margin-bottom: 30px;
	text-align: center;
}

.ttl_head:after {
	display: inline-block;
	content: "";
	width: 215px;
	height: 26px;
	background: url(../img/common/ttl_line_bg01.png) center center no-repeat;
}

.ttl_head h2 {
	font-size: 2.2rem;
	font-family: 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro', "游明朝体", "Yu Mincho" , "HG明朝E", "メイリオ", Meiryo, sans-serif;
	line-height: 1.4;
	letter-spacing: 0.05em;
}

@media screen and (max-width: 750px) {
	
	.ttl_head {
		margin-bottom: 15px;
	}
	
	.ttl_head h2 {
		font-size: 1.8rem;
		font-weight: bold;
	}
	
	.ttl_head:after {
		display: inline-block;
		content: "";
		width: 132px;
		height: 16px;
		background: url(../img/common/ttl_line_bg01.png) center center no-repeat;
		-webkit-background-size: auto 16px;
		-moz-background-size: auto 16px;
		-o-background-size: auto 16px;
		background-size: auto 16px;
	}
}
