*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}

/* 基本色 */
:root {
	--main-color: #5D9AB2;
	--accent-color: #BF6A7A;
	--dark-main-color: #2B5566;
	--text-bright-color: #fff;
	--icon-color: #fff;
	--icon-bk-color: #ddd;
	--gray-color: #ddd;
	--large-width: 1000px;
	--middle-width: 800px;
}

p {
	margin:0;
	margin-bottom:20px;
}

img {
	height: auto;
	vertical-align: bottom;
}

/* 基本設定： フォントサイズ */
@media (max-width: 599px) {
	:root {
		font-size: 14px;
	}
}

@media (min-width: 600px) and (max-width: 799px) {
	:root {
		font-size: 16px;
	}
}

@media (min-width: 800px) {
	:root {
		font-size: 18px;
	}
}

body {font-size: 16px;
	-webkit-text-size-adjust: 100%;
}

.pad0 {
	padding-left: 0;
	padding-right:0;
}
.pad1 {
	padding-left: 10px;
	padding-right:10px;
}

/* 基本設定： ページ全体 */
body {
	margin: 0;
	font-family: 'メイリオ',
		'Hiragino Kaku Gothic Pro', 
		sans-serif;
	background-image: url(images/bg_recipe.png);

}

/* ヘッダー */
header {
	height: 100vh;
	min-height: 600px;
	background-image: linear-gradient(rgba(0,0,0,0.1), rgba(0,0,0,0.1)), url(images/bg_mens.jpg);
	background-position: center;
	background-size: cover;
}
@media (min-width: 641px) {
	header .container {
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
}
@media (max-height: 800px) {
	header {
	background-position: center bottom;
	}
}
/* トップロゴ */
.top-logo {
	padding-top: 10px;
	margin-bottom:30px;
	margin-left:10px;
}
.top-logo img{
	width: 60px;
}
/* キャッチコピー */
.catch-copy {
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-start;
	justify-content: space-between;
}
.catch-copy .item {
	flex: 0 0 25%;
	padding:10px 6%;
	max-width: 25%;
}
.catch-copy .item img {
	width:130px;
    height:auto;
    max-width:100%;
    max-height:100%;
}
/* TSUNEZUMI麺’S ロゴ */
.mens-logo {
	text-align: center;
}
.mens-logo img{
	width: 150px;
	height: auto;
}

	
/* メニュー */
.menu {
	background: linear-gradient(#424242, #212121);
}
.menu ul {
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	flex-wrap: wrap;
}
.menu li{
	flex: 0 0 50%;
	text-align: center;
}
@media (min-width: 641px) {
	.menu li{
		flex: 1;
		text-align: center;
	}
}
.menu a {
	display: block;
	font-size: large;
	padding:20px;
	text-decoration: none;
	color:#FFC107;
	font-weight:bold;
}
.menu a:hover {
	transition: all 0.8s ease;
	color:#FF1744;
	 
}
/* リード文 */
.lead {
	overflow: hidden;
	padding-top:30px;
	padding-bottom: 30px;
		background-image: url(images/bg_recipe.png);

}
@media (min-width: 641px) {
	.lead .container {
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
}
.lead h2 {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 22px;
	line-height: 1.8;

}
.lead p {
	margin:20px 0 0 ;
	text-align: center;
}
@media (min-width: 641px) {
	.lead h2{
		text-align: center;
		background: url(images/catch.png) no-repeat;
		background-position: center center;
		background-size: contain;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	.lead h2 br {
		display: none;
	}
	.lead p {
		font-size: 20px;
		line-height: 1.8;
	}
}
@media (max-width: 640px) {
	.lead p br {
		display: none;
	}
}


/* TSUNEZUMI麺’S */

.mens {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 100px 10px;
  color:#fff;
}
@media (max-width: 640px) {
	.mens {
	  background: #1B5E20;
	  padding:20px 10px;
	  }
}
@media (min-width: 641px) {
	.mens {
	  margin-top: -30px;
	}
	.mens:before {
	  content: '';
	  position: absolute;
	  top: 0;
	  left: 0;
	  width: 120%;
	  height: 70%;
	  margin: 3% -10% 0;
	  background: #1B5E20;
	  -webkit-transform-origin: left center;
	  -ms-transform-origin: left center;
	  transform-origin: left center;
	  -webkit-transform: rotate(3deg);
	  -ms-transform: rotate(3deg);
	  transform: rotate(3deg);
	  z-index: -1; 
	}
	.mens .container {
  height: 100%;
  margin: 0 auto;
  padding: 0 10px 200px;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
		padding-top:20px;
		padding-bottom:20px;
	}
}
.mens .photo {
	text-align: center;
}
.mens img {
	max-width: 150px;
}
@media (min-width: 641px) {
	.mens .flex {
		display:flex;
	}
	.mens .photo {
		flex: 1;
	}
	.mens .text {
		flex: 4;
		padding:0 50px;
	}
	.mens img {
		max-width: 200px;
	}
}



/* 米麺「穂々の空」 */
.products {
	background: #EDDCC8;
	background-image: linear-gradient(RGBA(120,85,73, 0.1), RGBA(120,85,73, 0.1)), url(images/bg_men.jpg);
	background-position: center top;
	background-repeat: no-repeat;
}
@media (min-width: 641px) {
	.products .container {
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
		padding-top:20px;
		padding-bottom:20px;
	}
}
.products .logo {
	width: 150px;
	margin:0 auto;
}
.products .logo img {
	max-width: 100%;
}
.products h2 {
	text-align: center;
}
.products p {
	text-align: center;
	line-height: 1.4;
}
@media (min-width: 641px) {
	.products .flex {
		display:flex;
		flex-wrap: wrap;
	}
	.products .item {
		flex:1 1 50%;
		text-align: center;
	}
	.point .item {
		padding:20px;
	}
	.point p {
	margin-top:30px;
}

}
.point h3 {
	text-align: center;
}
.point h3 span{
	border-bottom: 2px solid #81D4FA;
}
.package .item {
	position: relative;
}

.package .item img {
	max-width: 100%;
	}
.package .caption {
	font-size:20px;
	display: inline-block;
	padding:30px 10px;
	background: rgba(255,255,255,0.9);
	position: absolute;
	top:10px;
	left:10px;
}


/* レシピ */
.recipe {
	padding-bottom:0;
}
@media (min-width: 641px) {
	.recipe .flex {
		display:flex;
	}
	.recipe .item {
		flex:1;
		text-align: center;
	}
}
.recipe h3 {
	margin-top:0;
	padding-top:30px;
}
.recipe h3,
.recipe h3 + p {
	text-align: center;
	color:#fff;
}
.chinese {
	background: linear-gradient(#D32F2F, #B71C1C);
}
.japanese {
	background: linear-gradient(#311B92, #1A237E);
}
.pasta {
	background: linear-gradient(#F9A825, #F57F17);
}.recipe .item {
	position: relative;
}
.recipe img {
	max-width: 100%;
}
.recipe .photo {
	min-height: 300px;
	background-size: cover;
	background-position: center center;
}
.gomatsukemen .photo {
	background-position: right center;	
}
@media (min-width: 641px) {
.recipe .photo {
	min-height: 400px;
}
}
.recipe .caption {
	font-size:16px;
	display: inline-block;
	padding:10px;
	border-radius:5px;
	background: rgba(255,255,255,0.9);
	position: absolute;
	top:10px;
	left:10px;
}


/* 購入 */
.purchase {
	padding-top:20px;
	padding-bottom:40px;
	background-image: url(images/bg_purchase.png);

}
@media (min-width: 641px) {
	.purchase .container {
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
}
.purchase h2,
.purchase h2 + p {
	text-align: center;
}

.purchase .flex {
	display:flex;
	flex-wrap: wrap;
}
.purchase .item {
	flex: 0 1 48%;
	margin:1%;
}
@media (min-width: 641px) {
.purchase .item {
	flex: 0 1 23%;
	margin:1%;
}
}
.purchase img {
	max-width: 100%;
}


/* フッター */
footer {
	color: #fff;
	color: var(--text-bright-color);
	background-color: #2B5566;
	background-color: var(--dark-main-color);
	
	display: flex;
	padding: 40px 40px 100px;
}

footer h2 {
	margin: 10px;
}
footer .address  {
	margin: 15px;
}
.copyright {
	font-size: 90%;
	margin-left: 20px;
}

footer a {
	color: inherit;
}	


footer .container {
	
}


@media (min-width: 641px) {
	footer .container {
		display: flex;
		flex-wrap: wrap;
		max-width: 1000px;
		max-width: var(--large-width);
		margin-left: auto;
		margin-right: auto;
	}
}

/* フッターSNSメニュー */
.sns {
	margin-top: 20px;
}

.sns ul {
	display: flex;
	margin: 0;
	padding: 0;
	list-style: none;
}

.sns a {
	display: block;
	margin-right: 8px;
	padding: 0;
	color: inherit;
	font-size: 24px;
	text-decoration: none;
	border: solid 1px currentColor;
	width: 2em;
	line-height: 2em;
	border-radius: 50%;
	text-align: center;
}

.sns a:hover {
	background-color: rgba(0,0,0,0.3);
}





/* スクロールボタン */
.ca3-scroll-down-arrow {
    background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48IURPQ1RZUEUgc3ZnIFBVQkxJQyAiLS8vVzNDLy9EVEQgU1ZHIDEuMS8vRU4iICJodHRwOi8vd3d3LnczLm9yZy9HcmFwaGljcy9TVkcvMS4xL0RURC9zdmcxMS5kdGQiPjxzdmcgdmVyc2lvbj0iMS4xIiBpZD0iQ2hldnJvbl90aGluX2Rvd24iIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMjAgMjAiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDIwIDIwIiBmaWxsPSJ3aGl0ZSIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+PHBhdGggZD0iTTE3LjQxOCw2LjEwOWMwLjI3Mi0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwYzAuMjcsMC4yNjgsMC4yNzEsMC43MDEsMCwwLjk2OWwtNy45MDgsNy44M2MtMC4yNywwLjI2OC0wLjcwNywwLjI2OC0wLjk3OSwwbC03LjkwOC03LjgzYy0wLjI3LTAuMjY4LTAuMjctMC43MDEsMC0wLjk2OWMwLjI3MS0wLjI2OCwwLjcwOS0wLjI2OCwwLjk3OSwwTDEwLDEzLjI1TDE3LjQxOCw2LjEwOXoiLz48L3N2Zz4=);
    background-size: contain;
    background-repeat: no-repeat;
}

.ca3-scroll-down-link {
  cursor:pointer;
    height: 60px;
    width: 80px;
    margin: 0px 0 0 -40px;
    line-height: 60px;
    position: absolute;
    left: 50%;
    bottom: 10px;
    color: #FFF;
    text-align: center;
    font-size: 70px;
    z-index: 100;
    text-decoration: none;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.4);

    -webkit-animation: ca3_fade_move_down 2s ease-in-out infinite;
    -moz-animation:    ca3_fade_move_down 2s ease-in-out infinite;
    animation:         ca3_fade_move_down 2s ease-in-out infinite;
}


/*animated scroll arrow animation*/
@-webkit-keyframes ca3_fade_move_down {
  0%   { -webkit-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -webkit-transform:translate(0,20px); opacity: 0; }
}
@-moz-keyframes ca3_fade_move_down {
  0%   { -moz-transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { -moz-transform:translate(0,20px); opacity: 0; }
}
@keyframes ca3_fade_move_down {
  0%   { transform:translate(0,-20px); opacity: 0;  }
  50%  { opacity: 1;  }
  100% { transform:translate(0,20px); opacity: 0; }
}

/* トップへ戻る */
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 80%;
}
 
#page-top a {
    display: block;
    background: #666;
    color: #fff;
    width: 100px;
    padding: 25px 0;
    text-align: center;
    text-decoration: none;
    border-radius: 10px;
}
 
#page-top a:hover {
    background: #999;
    text-decoration: none;
}


.recipe-item{
	background: #fff;
	padding:10px;
	text-align: left;
	font-size: 80%;
	
}