﻿@charset "UTF-8";


body {
  font-family: "Helvetica Neue", sans-serif;
  margin: 0;
  background-color: #fff;
  color: #333;
  line-height: 1.6;
}



img{
	display:block;
	vertical-align: bottom;
	}


#header{
	text-align:center;
	padding:5px 5px 0px 5px;
	width:100%;
	box-sizing:border-box;
	}

.main{
	width:100%;
	height:100%;
	margin:0 auto;
	z-index:-9;
	box-sizing:border-box;
	}

.btn_sp{
	padding:0px 5px 15px 5px;
	text-align:center;
	margin:0 auto;
	box-sizing:border-box;
	}



.img_center img{
	margin:10px;
	display:inline-block;
	text-decoration:none;
	}

.center{
	padding:2px 5px;
	text-align:center;
	margin:0 auto;
	box-sizing:border-box;
	}

.btn_center{
	text-align:center;
	margin:10px 10px;
	}	

.btn_center a{
	display:inline-block;
	}

/*-------会員登録ボタン------*/
.btn_2{
	margin:0 auto;
	width: 100%;
	padding:0;
	border-collapse: separate;
	border-spacing: 0px 5px 5px 5px;
	}

.btn_2 td{
	width: 50%;
	padding:0px;
	text-align:center;
	}

.btn_2 img{
	display:inline-block;
	}


/*-------menu画像横並び------*/
.wall_img3{
	margin:0 auto;
	width: 100%;
	padding:0;
	border-collapse: separate;
	border-spacing: 5px;
	}

.wall_img3 th{
	width: 20%;
	line-height:12px;
	padding: 0px;
	}


.wall_img3 td{
	width: 20%;
	padding:0px;
	}



/*-------デコメ画像横並び4個------*/
.decome_img4{
	margin:0 auto;
	width: 100%;
	padding:0;
	text-align:center;
	border-collapse: separate;
	}

.decome_img4 th{
	width: 20%;
	padding: 2px 2px;
	margin-top:0px;
	}


.decome_img4 td{
	width: 20%;
	padding:0px;
	}

.decome_moji{
	line-height:10px;
	font-size:10px;
	background:#839b5c;
	color:#ffffff;
	font-weight:normal;
	}

.decome_img4 img{
	display:inline-block;
	}


/*-------待受け画像横並び3個------*/
.machi_img3{
	margin:0 auto;
	width: 100%;
	padding:0;
	text-align:center;
	border-collapse: separate;
	}

.machi_img3 th{
	width: 20%;
	padding: 2px 2px;
	margin-top:0px;
	}


.machi_img3 td{
	width: 20%;
	padding:0px;
	}

.machi_img3 img{
	display:inline-block;
	}




.white_frame{
	border:2px #ffffff solid;
	background:#ffffff;
	box-shadow:1px 1px 3px #dddddd;
	}



.dot_hr{
	border:1px #c89100 dashed;
	margin:3px 0px;
	}

.btn_red{
	width:80px;
	background:#ff6666;
	color:#ffffff;
	border-radius:3px;
	font-size:10px;
	line-height:14px;
	padding:4px;
	text-decoration:none;
	display:block;
	margin:2px 0px;
	text-align:center;
	}


.btn_green{
	width:80px;
	background:#3cb371;
	color:#ffffff;
	border-radius:3px;
	font-size:10px;
	line-height:14px;
	padding:4px;
	text-decoration:none;
	display:block;
	margin:2px 0px;
	text-align:center;
	}


.btn_blue{
	width:80px;
	background:#6699ff;
	color:#ffffff;
	border-radius:3px;
	font-size:10px;
	line-height:14px;
	padding:4px;
	text-decoration:none;
	display:block;
	margin:2px 0px;
	text-align:center;
	}


.btn_yellow{
	width:80px;
	background:#ffa500;
	color:#ffffff;
	border-radius:3px;
	font-size:10px;
	line-height:14px;
	padding:4px;
	text-decoration:none;
	display:block;
	margin:2px 0px;
	text-align:center;
	}


.right_sp{
	width:100%;
	text-align:right;
	margin-bottom:5px;
	}

.left_sp{
	display:inline-block;
	width:80%;
	margin-left:10%;
	text-align:left;
	margin-bottom:5px;
	}


.sp_80{
	width:70%;
	display:inline-block;
	text-align:left;
	line-height:14px;
	}

.recipe{
	color:#333333;
	font-size:12px;
	line-height:14px;
	}

.recipe_img{
	float:left;
	margin-right:10px;
	margin-bottom:10px;
	width:40%;
	max-width:250px;
	}

.recipe_center{
	text-align:center;
	display:inline-block;
	width:90%;
	max-width:250px;
	margin-right:10px;
	margin-bottom:10px;
	margin-left:10px;
	}

.oya{
	position:relative;
	}
	
.ribbon{
	position: absolute;
	top: 0px;
	left: 0px;
	}



.tensen{
	border:1px #dddddd dotted;
	margin:5px 0px ;
	
	}


.recipe h1{
	color:#ff8c00;
	font-size:17px;
	line-height:20px;
	font-weight:bold;
	text-align:center;
	}

.date{
	width:50px;
	background:#ff6666;
	color:#ffffff;
	border-radius:3px;
	font-size:10px;
	line-height:14px;
	padding:4px;
	text-decoration:none;
	display:inline-block;
	margin:5px 5px 5px 0px;
	text-align:center;
	}

.salmon_moji{
	color:#ff6666;
	}
.aozora_moji{
	color:#5cc7ff;
	}

.title_everyone{
	background:#5cc7ff;
	font-size:15px;
	line-height:18px;
	color:#ffffff;
	text-align:center;
	font-weight:bold;
	padding:5px 5px;
	margin-bottom:5px;
	}


.btn_shousai{
	width:50%;
	background:#ffd700;
	color:#8b4513;
	border-radius:3px;
	border:1px #ffffff solid;
	box-shadow:0px 0px 5px #dddddd;
	font-size:10px;
	font-weight:bold;
	line-height:25px;
	padding:4px;
	text-decoration:none;
	display:inline-block;
	margin:5px 5px 5px 0px;
	text-align:center;
	}

.recipe_table{
	margin:0 auto;
	width: 100%;
	padding:0;
	border-collapse: separate;
	}

.recipe_table td{
	width: 50%;
	text-align:right;
	padding:0px;
	display:inline-block;
	}
	
td.rcp_left { text-align: left;}
td.rcp_right { text-align: right;}



.recipe_table a{
	display:inline-block;
	}


.point_pink{
	background:#ffb6c1;
	border-radius:3px;
	padding:10px;
	}

.point_pink h1{
	font-size:16px;
	font-weight:bold;
	line-height:18px;
	color:#e95295;
	}

.point_yellow{
	background:#f8e58c;
	border-radius:3px;
	padding:10px;
	}

.point_yellow h1{
	font-size:16px;
	font-weight:bold;
	line-height:18px;
	color:#ffa500;
	}


.footer_sp{
	padding:2px 5px;
	text-align:left;
	margin:0 auto;
	box-sizing:border-box;
	}




.yellow_moji{
	color:#ff8c00;
	font-size:12px;
	font-weight:bold;
	line-height:12px;
	text-decoration:none;
	}


.mizuiro_moji{
	color:#1e90ff;
	font-size:12px;
	font-weight:bold;
	line-height:12px;
	text-decoration:none;
	}

.d_pink_moji{
	color:#cd5c5c;
	font-size:12px;
	font-weight:bold;
	line-height:12px;
	text-decoration:none;
	}


.ice_gray_moji{
	color:#b0c4de;
	font-size:12px;
	font-weight:bold;
	line-height:12px;
	text-decoration:none;
	}


.red_moji{
	color:#cc0000;
	font-weight:bold;
	font-size:16px;
	line-height:10px;
	}

.gray_moji{
	color:#333333;
	font-size:12px;
	line-height:14px;
	text-decoration:none;
	}

.gray_moji2{
	color:#8b4513;
	font-weight:bold;
	font-size:14px;
	line-height:16px;
	text-decoration:none;
	}

.green_moji{
	color:#006600;
	font-size:12px;
	line-height:14px;
	}





.footer_text{
	width:180px;
	display:inline-block;
	border-radius:5px;
	background:rgba(255, 255, 255, 0.4);
	background:-webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,1)), to(rgba(255,255,255,0)));
	color:#333333;
	padding:5px;
	margin:5px;
	font-size:16px;
	line-height:20px;
	text-decoration:none;
	box-shadow:0px 0px 8px #9fc956;
	}



.contents{
	width:100%;
	background:rgba(255, 255, 255, 0.8); 
	padding:5px;
	margin-bottom:5px;
	border-radius:8px;
	box-sizing:border-box;
	position:relative;
	z-index:0;
	}

.contents2{
	width:100%;
	background:rgba(222,184,135, 0.5); 
	padding:5px;
	margin-bottom:5px;
	border-radius:8px;
	box-sizing:border-box;
	position:relative;
	z-index:0;
	}

.up10_img{
	margin: 10px 0 0 0;
	}

.img_earth{
	position:absolute;
	top:10%;
	right:2%;
	z-index:-1;
	}
	
.img_ninjin{
	position:absolute;
	bottom:50%;
	right:5%;
	z-index:-1;
	}

.img_tomato{
	position:absolute;
	bottom:20%;
	right:3%;
	z-index:-1;
	}

.img_potate{
	position:absolute;
	display:block;
	bottom:45%;
	left:2%;
	z-index:-1;
	}

.img_kyabetsu{
	position:absolute;
	bottom:30%;
	right:2%;
	z-index:-1;
	}


.img_onion{
	position:absolute;
	top:5%;
	left:2%;
	z-index:-1;
	}


.img_mame{
	position:absolute;
	top:10%;
	right:2%;
	z-index:-1;
	}

.img_kigu{
	position:absolute;
	bottom:33%;
	right:10%;
	z-index:-1;
	}


.img_kinoko{
	position:absolute;
	bottom:10%;
	right:2%;
	z-index:-1;
	}


.footer_company{
	width:100%;
	color:#003300;
	font-size:10px;
	line-height:12px;
	text-align:center;
	margin-bottom:10px;
	}
	


body.other_tomato{
	background: #ffffff url(http://eco-eco-cooking.jp/img/tomato_haikei.png) repeat;
	}

body.other_everyone{
	background: #dbbc84 url(http://eco-eco-cooking.jp/img/colk_haikei.png) repeat;
	}


body.other_quiz{
	background: #fffacd;
	}


body.other_rank{
	background: #ffe8af url(http://eco-eco-cooking.jp/img/rank_haikei.png) repeat;
	}

body.other_idea{
	background: #feeed8 url(http://eco-eco-cooking.jp/img/idea_haikei.png) repeat;
	}

body.other_new{
	background: #ffffff url(http://eco-eco-cooking.jp/img/new_haikei.png) repeat;
	}

.white_h1{
	color: #ffffff;
	font-size:15px;
	line-height:18px;
	font-weight:bold;
	text-shadow:0 0 10px #754c1b;
	text-align:center;
	}

body.other{
	background:#ffffff;
	}

.other_header{
	width:100%;
	height:36px;
	background:#87d3f7;
	font-size:18px;
	font-weight:bold;
	line-height:36px;
	text-align:center;
	color:#ffffff;
	margin-bottom:10px;
	}

.other_main{
	text-align:left;
	padding:0px 10px 10px 10px;
	font-size:14px;
	line-height:16px;
	}

.other_obi{
	width:100%;
	background:#d0ecf9;
	padding:3px 0px;
	margin-bottom:5px;
	}

.other_obi2{
	width:100%;
	background:#afeeee;
	padding:3px 0px;
	margin-bottom:5px;
	text-align:center;
	}

.other_obi3{
	width:100%;
	background:#5cc7ff;
	color:#ffffff;
	padding:3px 0px;
	margin-bottom:5px;
	text-align:center;
	}


.other_obi_rank{
	width:100%;
	background:#ff8c00;
	color:#ffffff;
	padding:3px 0px;
	margin-bottom:5px;
	text-align:center;
	}



h1{
	margin:0 auto;
	padding:0;
	text-align:center;
	}




hr{
	border: 0;
	border-top: 1px solid #d3d3d3;
	border-bottom: 1px solid #808080;
	margin:0px;
	}



.info{
	text-align:center;
	padding:10px;
	font-weight:bold;
	background:#ffffff;
	}


/*退会アンケート*/
.formPage{
	background: #FFFDF8;
	margin-bottom: 10px;
	padding-bottom: 15px;
	padding-left: 0 !important;
}
.question p:first-child{
	font-weight: bold;
}
.question h3 {
	font-size: 1em;
	color: #444;
	padding-top: 4px;
}
.question p{
	color: #FFF;
	background: #A7A7A7;
	text-shadow: 1px 1px #757575;
}
.question ul{
	padding-left: 0px;
}

.question ul li{
	position: relative;
}
.question label{
	display: block;
	color: #434343;
	padding: 15px 5px;
	border-top: 1px solid #aaa;
	background: #F2f2f2;
}
.question ul li:first-child label{
	border-top: none;
}
.question ul li:last-child label{
	border-bottom: 1px solid #aaa;
}
.question textarea{
	width: 96%;
	height: 150px;
	margin-top: 4px;
	margin-left: 2%;
	border-color: #aaa;
}
.question ul li input[type="radio"]{
	opacity: 0;
	position: absolute;
	top: -3px;
	left: -3px;
}
.question ul li input[type="radio"]:checked + label{
	color: #F2f2f2;
	background: #2F7ED9;
}
.question ul li input[type="checkbox"]{
	opacity: 0;
	position: absolute;
	top: -3px;
	left: -3px;
}
.question ul li input[type="checkbox"]:checked + label{
	color: #F2f2f2;
	background: url("../img/check_on.png") no-repeat,#2F7ED9;
	background-position: 95% 50%;
}

.question select{
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	font-size: 1em;
	background: url("../img/underArrow.png") no-repeat,#F2f2f2;
	background-position: 95% 50%;
	width: 100%;
	padding: 12px 5px;
	border: none;
	border-bottom: 1px solid #aaa;
	border-radius: 0px;
}
.formPage input[type="submit"] {
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	font-size: 1em;
	color: #fff;
	text-shadow: 1px 1px #757575;
	background: rgba(191,191,191,1);
	background: -moz-linear-gradient(top, rgba(191,191,191,1) 0%, rgba(158,158,158,1) 49%, rgba(166,166,166,1) 50%, rgba(171,171,171,1) 100%);
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(191,191,191,1)), color-stop(49%, rgba(158,158,158,1)), color-stop(50%, rgba(166,166,166,1)), color-stop(100%, rgba(171,171,171,1)));
	background: -webkit-linear-gradient(top, rgba(191,191,191,1) 0%, rgba(158,158,158,1) 49%, rgba(166,166,166,1) 50%, rgba(171,171,171,1) 100%);
	background: -o-linear-gradient(top, rgba(191,191,191,1) 0%, rgba(158,158,158,1) 49%, rgba(166,166,166,1) 50%, rgba(171,171,171,1) 100%);
	background: -ms-linear-gradient(top, rgba(191,191,191,1) 0%, rgba(158,158,158,1) 49%, rgba(166,166,166,1) 50%, rgba(171,171,171,1) 100%);
	background: linear-gradient(to bottom, rgba(191,191,191,1) 0%, rgba(158,158,158,1) 49%, rgba(166,166,166,1) 50%, rgba(171,171,171,1) 100%);
	box-shadow: 1px 1px 1px #ccc;
	border: none;
	border-top: 1px solid #aaa;
	border-bottom: 1px solid #aaa;
	padding: 12px;
	width: 100%;
}
.questionNom{
	display: block;
	font-size: 1em;
	margin-top: 16px;
	padding: 5px 2px;
	border-bottom: 2px groove #eee;
	border-top: 2px groove #eee;
	box-sizing: border-box;
}
.questionNom span{
	color: #C20000;
	text-shadow: 1px 1px rgba(255, 231, 231, 0.59);
}


.fs_big{
	font-size:20px;
	font-weight:bold;
	line-height:25px;
	}



/*新デザイン*/

.site-header {
  background-color: #f1faff;
  border-bottom: 2px solid #ddd;
}

.banner img {
  width: 100%;
  height: auto;
  display: block;
}

.logo {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin: 10px 0;
}

/* ナビゲーションスタイル */
.main-nav {
  text-align: center;
  padding: 10px 0;
}

.nav-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.nav-links a {
  text-decoration: none;
  color: #333;
  font-weight: bold;
}


.section {
  padding: 40px 20px;
}

.section h2 {
  font-size: 1.6rem;
  margin-bottom: 20px;
}

.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 20px;
}

.scroll-grid {
  display: flex;
  overflow-x: auto;
  gap: 16px;
}

.card {
  background-color: #fafafa;
  border-radius: 8px;
  overflow: hidden;
  text-align: center;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  min-width: 160px;
}

.card img {
  width: 100%;
  height: auto;
  display: block;
}

.card p {
  padding: 10px;
  margin: 0;
}

.about {
  display: flex;
  gap: 20px;
  align-items: center;
  flex-wrap: wrap;
}

.author-photo {
  max-width: 200px;
  border-radius: 12px;
}

.about-text {
  max-width: 500px;
}

@media (max-width: 768px) {
  .about {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 12px; /* スマホでは余白を詰める */
  }

  .about-text {
    max-width: 100%;
    padding: 0 10px; /* 少しだけ横に余裕 */
  }

  .author-photo {
    max-width: 160px; /* スマホでは画像少し小さくするのも◎ */
  }
}

.button-columns {
  display: inline-block;
  margin-top: 20px;
  padding: 10px 20px;
  background-color: #f76c6c;
  color: #fff;
  text-decoration: none;
  border-radius: 8px;
  font-weight: bold;
  transition: background-color 0.3s;
}

.button-columns:hover {
  background-color: #e55353;
}


.site-footer {
  background-color: #f1faff;
  padding: 30px 20px;
  font-size: 0.9rem;
  color: #666;
  border-top: 1px solid #ddd;
}

.footer-container {
  max-width: 1000px;
  margin: 0 auto;
  text-align: center;
}

.footer-menu {
  list-style: none;
  padding: 0;
  margin: 0 0 15px 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.footer-menu li a {
  text-decoration: none;
  color: #333;
  transition: color 0.2s ease;
}

.footer-menu li a:hover {
  color: #0073aa;
}

@media (max-width: 600px) {
  .footer-menu {
    flex-direction: column;
    gap: 10px;
  }
}

.subpage-header {
  background-color: #f1faff;
  padding: 40px 20px;
  text-align: center;
  border-bottom: 1px solid #ddd;
}

.subpage-header h1 {
  margin: 0;
  font-size: 2rem;
  font-weight: bold;
  color: #333;
}

.terms-content {
  max-width: 800px;
  margin: 40px auto;
  padding: 0 20px;
  font-size: 1rem;
  line-height: 1.8;
  color: #444;
}

.terms-content h2 {
  font-size: 1.2rem;
  margin-top: 30px;
  color: #222;
}

.terms-content p {
  margin: 10px 0 20px;
}

/* 登録ボタン */
.register-button {
  display: flex;
  justify-content: center;
  margin: 30px 0;
}

.register-button a {
  display: inline-block;
}

.register-button img {
  display: block;
  width: 300px; /* 必要に応じて調整 */
  height: auto;
}

/* コラム一覧 */

.column-header {
  background-color: #ffffff;
  padding: 20px 0;
  text-align: center;
  border-bottom: 1px solid #ddd;
}

.site-logo {
  max-width: 100%;
  height: auto;
}

.columnist-intro {
  background-color: #f9f9f9;
  padding: 40px 20px;
  border-bottom: 1px solid #ddd;
}

.columnist-container {
  display: flex;
  align-items: center;
  gap: 30px;
  max-width: 1000px;
  margin: 0 auto;
  flex-wrap: wrap;
}

.columnist-photo {
  width: 180px;
  height: 180px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.columnist-text {
  flex: 1;
  min-width: 250px;
}

.columnist-text h2 {
  font-size: 1.5rem;
  margin-bottom: 10px;
  color: #007755;
}

.columnist-text p {
  font-size: 1rem;
  color: #444;
  line-height: 1.8;
}

.column-list {
  padding: 40px 20px;
}

.section-title {
  font-size: 1.8rem;
  margin-bottom: 30px;
  text-align: center;
  color: #222;
}

/* 各記事ブロック */
.column-item {
  margin-bottom: 40px;
  border-bottom: 1px solid #eee;
  padding-bottom: 30px;
}

.column-title {
  font-size: 1.3rem;
  color: #444;
  margin-bottom: 15px;
}

.column-snippet {
  font-size: 1rem;
  color: #444;
  line-height: 1.8;
}

.read-more {
  display: inline-block;
  margin-top: 15px;
  padding: 8px 16px;
  background-color: #000277;
  color: #fff;
  border-radius: 20px;
  text-decoration: none;
  font-size: 0.9rem;
  transition: background-color 0.3s;
}

.read-more:hover {
  background-color: #babbe4;
}

/* 次へボタン */

.pagination {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 10px;
  margin: 40px 20px 60px;
  font-size: 0.95rem;
}

.pagination a {
  padding: 8px 14px;
  text-decoration: none;
  color: #000277;
  background-color: #f2f2f2;
  border-radius: 20px;
  transition: background 0.3s;
}

.pagination a:hover {
  background-color: #babbe4;
}

.pagination .active {
  background-color: #f1faff;
  color: #fff;
  font-weight: bold;
}

/* 記事ページ用 */

.article-header {
  background: #fff;
  border-bottom: 1px solid #ddd;
  padding: 20px 0;
  text-align: center;
}

.site-logo {
  max-width: 220px;
  height: auto;
}

.article-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 40px 20px;
}

.article-title {
  font-size: 1.8rem;
  color: #222;
  margin-bottom: 10px;
  line-height: 1.4;
}

.article-date {
  color: #888;
  font-size: 0.9rem;
  margin-bottom: 25px;
}

.article-image {
  width: 100%;
  max-height: 400px;
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: 30px;
}

.article-body p {
  font-size: 1rem;
  color: #333;
  line-height: 1.9;
  margin-bottom: 20px;
}

.back-to-list {
  margin-top: 50px;
  text-align: left;
}

.back-to-list a {
  text-decoration: none;
  color: #007755;
  font-weight: bold;
}

.back-to-list a:hover {
  text-decoration: underline;
}


/********* 最新レシピ*************/


.latest-recipe {
  padding: 1.5rem;
  background: #fafafa;
}

.latest-recipe-title {
  font-size: 1.5rem;
  text-align: center;
  margin-bottom: 1.5rem;
  font-weight: bold;
  border-bottom: 2px solid #ccc;
  padding-bottom: 0.5rem;
}

.recipe-item {
  display: flex;
  gap: 1.5em;
  margin-bottom: 2em;
  background: #fff;
  padding: 1em;
  border-radius: 12px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  align-items: flex-start;
  flex-wrap: wrap;
}

.recipe-thumb-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 150px;
  flex-shrink: 0;
}

.recipe-thumb {
  width: 150px;
  height: 150px;
  object-fit: cover;
  border-radius: 8px;
  margin-bottom: 0.5em;
}

.recipe-meta {
  font-size: 0.9em;
  color: #666;
  text-align: left;
}

.recipe-content {
  flex: 1;
  display: flex;
  flex-direction: column;
}

.recipe-title {
  font-size: 1.4em;
  margin-bottom: 0.5em;
  color: #222;
}

.recipe-description {
  font-size: 1em;
  color: #555;
  margin-bottom: 0.8em;
}

.recipe-date {
  font-size: 0.9em;
  color: #999;
  margin-bottom: 0.8em;
}

.recipe-link {
  align-self: flex-start;
  background-color: #ff7f50;
  color: #fff;
  padding: 0.5em 1.2em;
  text-decoration: none;
  border-radius: 6px;
  transition: background-color 0.2s;
}

.recipe-link:hover {
  background-color: #ff5a25;
}




/*******レシピ詳細**********/

.recipe-detail-container {
  max-width: 800px;
  margin: 0 auto;
  padding: 20px;
  font-family: "Helvetica Neue", sans-serif;
  color: #333;
  background-color: #fff;
}

.recipe-detail-title {
  font-size: 28px;
  margin-bottom: 10px;
  color: #222;
}

.recipe-detail-meta {
  font-size: 14px;
  color: #666;
  margin-bottom: 20px;
}
.recipe-detail-meta span {
  display: inline-block;
  margin-right: 15px;
}

.recipe-detail-images {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.recipe-detail-image-large {
  max-width: 100%;
  height: auto;
}
.recipe-detail-image-small {
  width: 200px;
  height: auto;
  object-fit: cover;
}

.recipe-detail-description {
  font-size: 16px;
  line-height: 1.6;
  margin-bottom: 30px;
}

.recipe-detail-steps h2 {
  font-size: 20px;
  margin-bottom: 10px;
  color: #444;
}
.recipe-detail-steps p {
  font-size: 16px;
  line-height: 1.8;
}

/*****検索******/


.search_word {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
}

.search_word input[type="text"] {
  padding: 8px 12px;
  font-size: 16px;
  border: 1px solid #ccc;
  border-radius: 6px;
  flex: 1; /* 余白を使って幅を取る */
  min-width: 200px;
  box-sizing: border-box;
}

.category-search-button-wrapper {
  flex-shrink: 0; /* ボタンのサイズが縮まないようにする */
}

.category-search-button {
  padding: 8px 20px;
  font-size: 16px;
  background-color: #007bff;
  color: #fff;
  border: none;
  border-radius: 6px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.category-search-button:hover {
  background-color: #0056b3;
}


.recipe-genre-search-form {
  margin: 20px 0;
  text-align: center;
}

.genre-search-wrapper {
  display: inline-flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.genre-search-wrapper select {
  padding: 8px 12px;
  border: 1px solid #ccc;
  border-radius: 6px;
  font-size: 16px;
  min-width: 180px;
}

.genre-search-button {
  padding: 8px 20px;
  background-color: #ff6f61;
  border: none;
  color: white;
  border-radius: 6px;
  font-size: 16px;
  cursor: pointer;
  transition: background-color 0.3s;
}

.genre-search-button:hover {
  background-color: #e05b4f;
}

.recipe-category-search-form {
  max-width: 600px;
  margin: 20px auto;
  font-family: sans-serif;
}

.category-search-wrapper {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.category-search-wrapper label {
  width: calc(33.333% - 10px);
  display: flex;
  align-items: center;
  gap: 5px;
}

.category-search-button-wrapper {
  margin-top: 20px;
  text-align: center;
}

.category-search-button {
  padding: 8px 20px;
  background-color: #f08300;
  color: #fff;
  border: none;
  border-radius: 4px;
  cursor: pointer;
}

.category-search-button:hover {
  background-color: #d97300;
}

/*****壁紙ダウンロード******/

.wallpaper-section {
  padding: 30px 20px;
  background-color: #f9f9f9;
  text-align: center;
  border-radius: 12px;
  margin: 40px auto;
  max-width: 600px;
}

.wallpaper-section h2 {
  font-size: 24px;
  margin-bottom: 30px;
}

.wallpaper-section p {
  font-size: 1rem;
  margin-bottom: 20px;
  color: #555;
}

.wallpaper-link-button {
  display: inline-block;
  padding: 10px 24px;
  font-size: 1rem;
  background-color: #007bff;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  transition: background-color 0.3s ease;
}

.wallpaper-link-button:hover {
  background-color: #0056b3;
}


.wallpaper-gallery {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
}

.wallpaper-item {
  position: relative;
  width: 180px;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.wallpaper-item img {
  width: 100%;
  height: auto;
  display: block;
}

.download-label {
  display: block;
  background: #f76c6c;
  color: #fff;
  font-size: 14px;
  padding: 8px 0;
  text-align: center;
  font-weight: bold;
  text-decoration: none;
}

.wallpaper-item a {
  text-decoration: none;
}

.download-label:hover {
  background: #e55353;
}

/*****待受*******/

.wallpaper-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}

.wallpaper-item {
  background: #fff;
  border-radius: 10px;
  padding: 10px;
  text-align: center;
  box-shadow: 0 0 5px rgba(0,0,0,0.1);
}

.wallpaper-thumb {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 10px;
}

.download-btn {
  display: inline-block;
  padding: 6px 12px;
  background-color: #007755;
  color: #fff;
  font-size: 0.9rem;
  text-decoration: none;
  border-radius: 5px;
  transition: background-color 0.3s;
}

.download-btn:hover {
  background-color: #005d44;
}

.wallpaper-more {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}

.wallpaper-more-btn {
  padding: 10px 20px;
  background-color: #444;
  color: #fff;
  text-decoration: none;
  border-radius: 6px;
  font-size: 1rem;
  transition: background-color 0.3s;
}

.wallpaper-more-btn:hover {
  background-color: #222;
}

/* 登録・退会・購入ボタン装飾 */
form button {

}
.docomo button,
.credit button,
.telecom button {
	padding: 0;
	border: 0;
	background: none;
}

form button img {
	max-width: 100%;

}

form + form {
	margin-top: 2em;
}

form label:first-of-type:last-of-type input[type='radio'] {
	display: none;
}
form.single label:first-of-type:last-of-type {
	display: none;
}

.sendmail {
	padding: 1em 2em;
}