@charset "utf-8";
/* CSS Document */

.form-body {
	font-size: 16px;
}

.form-inputs dl {
	display: inline;
}
.form-inputs dl dt,
.form-inputs dl dd {
	width: 100%;
	min-width: initial;
}

.form-inputs dl dd img {
	max-width: 100%;
}

.form-inputs .input_catchcopy,
.form-inputs .input_producer,
.form-inputs .input_tips,
.form-inputs .input_profile {
	background: #f8f8f8;
	color: #cdcdcd;
	padding: 20px;
}

.form-inputs dl dd.input_before:empty {
	display: none;
}
.form-inputs dl dd.input_before {
	background: #f8f8f8;
	color: #cdcdcd;
	padding: 20px;
}

.form-inputs dl dd.input_after:empty {
	display: none;
}
.form-inputs dl dd.input_after.active {
	width: 100vw;
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
}
.form-inputs dl dd.input_after.active .modal {
	width: min(900px, 100vw);
	height: min(500px, 90vh);
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
}
.form-inputs dl dd.input_after ul li {
	display: flex;
	justify-content: space-between;
	padding: 10px;
	border-bottom: solid 1px #cdcdcd;
}

.form-inputs .input_process_box tr {
	display: none;
}
.form-inputs .input_process_box tr.active {
	display: flex;
	flex-wrap: wrap;
}
.form-inputs .input_process_box tr td {
	display: flex;
	/*width: 49%;*/
	width: 100%;
	margin-bottom: min(10px, 2vw);
}
/*
.form-inputs .input_process_box tr td:nth-child(odd) {
	margin-right: 2%;
}
*/
.form-inputs .input_process_box tr td .process_num {
	width: 30px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	display: block;
	color: #fff;
	background-color: #979580;
	border: solid 1px #bfbdb3;
	border-radius: 5px;
	margin-top: min(10px, 2vw);
}
.form-inputs .input_process_box tr td .input_process_left {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.form-inputs .input_process_box tr td .input_process_left .options {
	width: 100%;
	display: flex;
	justify-content: space-between;
	padding: min(10px, 2vw) 30px;
}
.form-inputs .input_process_box tr td .input_process_left .options .tr_delete,
.form-inputs .input_process_box tr td .input_process_left .options .sort_up,
.form-inputs .input_process_box tr td .input_process_left .options .sort_down {
	background: #f8f8f8;
	padding: min(10px, 2vw) 30px;
}
.form-inputs .input_process_box .add_process {
	width: 20%;
	height: min(40px, 8vw);
	background: #eee;
	border-radius: min(5px, 1vw);
	padding: min(10px, 2vw) min(10px, 2vw) min(10px, 2vw) min(40px, 8vw);
	margin: auto;
}
#sortable_process .sort_tr tr:first-child .sort_up,
#sortable_process .sort_tr tr:last-child .sort_down {
	display: none;
}
.form-inputs .input_process_box span.input_process {
	color: #cdcdcd;
	line-height: 30px;
	padding: min(10px, 2vw);
	width: calc(100% - 30px);
}
.form-inputs .input_process_box span.input_process.active {
	color: #000;
}
/*
@media screen and (max-width: 767px) {
	.form-inputs .input_process tr td {
		width: 100%;
	}
	.form-inputs .input_process tr td:nth-child(odd) {
		margin-right: 0;
	}
}
*/

/* モーダル(全般) */
.modal_container {
	display: none;
	overflow-y: scroll;
}
.modal_container.active {
	display: block;
	width: min(900px, 90vw);
	max-height: min(500px, 70vh);
	position: fixed;
	left: calc(50% - (min(900px, 90vw) / 2));
	top: calc(50% - (min(500px, 80vh) / 2));
	z-index: 9999;
	background: #fff;
}
.modal_container.active .modal_contents {
	padding: 0;
	width: 100%;
}
.modal_container.active .modal_contents .modal_head,
.modal_container.active .modal_contents .modal_body,
.modal_container.active .modal_contents .modal_bottom {
	display: flex;
	justify-content: space-between;
	margin-bottom: min(10px, 2vw);
	padding: min(10px, 2vw);
}
.modal_container.active .modal_contents > div:not(:last-child) {
	border-bottom: solid 1px #eee;
}
.modal_container.active .modal_contents .modal_head .close,
.modal_container.active .modal_contents .modal_head .save,
.modal_container.active .modal_contents .modal_bottom .close,
.modal_container.active .modal_contents .modal_bottom .add,
.modal_container.active .modal_contents .modal_bottom .save {
	width: 20%;
	height: min(40px, 8vw);
	line-height: min(40px, 8vw);
	background: #eee;
	border-radius: min(5px, 1vw);
}
/*
.modal_container.active .modal_contents .modal_bottom .save {
	background: #f8a624;
	color: #fff;
}
*/
.modal_container.active .modal_contents .modal_head .title,
.modal_container.active .modal_contents .modal_head .blank {
	width: 20%;
	height: min(40px, 8vw);
	padding: min(10px, 2vw);
	text-align: center;
	font-weight: bold;
	font-size: medium;
}
/* モーダル(材料) */
#material table tr td {
	display: flex;
	flex-wrap: wrap;
	padding: min(10px, 2vw);
	border-bottom: solid 1px #eee;
}
#material table tr td input[name="name"] {
	width: 68%;
	margin-right: 2%;
}
#material table tr td input[name="amount"] {
	width: 30%;
}
#material table tr td .options {
	width: 68%;
	display: flex;
	justify-content: space-between;
	padding: min(10px, 2vw) 0;
}
#material table tr td .options .tr_delete {
	background: #eee;
	border-radius: min(5px, 1vw);
	padding: min(10px, 2vw) min(20px, 4vw);
	cursor: pointer;
}
#material table tr td .options .sort_btns {
	display: flex;
	flex-direction: row-reverse;
}
#material table tr .sort_up,
#material table tr .sort_down {
	margin-left: min(10px, 2vw);
	background: #eee;
	border-radius: min(5px, 1vw);
	padding: min(10px, 2vw);
	cursor: pointer;
}
#material table tr:first-child .sort_up,
#material table tr:last-child .sort_down {
	display: none;
}
/* モーダル(作り方) */
#process table tr td {
	display: flex;
	flex-wrap: wrap;
	padding: min(10px, 2vw);
	border-bottom: solid 1px #eee;
}
#process table tr td input[name="name"] {
	width: 68%;
	margin-right: 2%;
}
#process table tr td input[name="amount"] {
	width: 30%;
}
#process table tr td .options {
	width: 68%;
	display: flex;
	justify-content: space-between;
	padding: min(10px, 2vw) 0;
}
#process table tr td .options .tr_delete {
	background: #eee;
	border-radius: min(5px, 1vw);
	padding: min(10px, 2vw) min(20px, 4vw);
}
#process table tr td .options .sort_btns {
	display: flex;
	flex-direction: row-reverse;
}
#process table tr td .options .sort_btns .sort_up,
#process table tr td .options .sort_btns .sort_down {
	margin-left: min(10px, 2vw);
	background: #eee;
	border-radius: min(5px, 1vw);
	padding: min(10px, 2vw);
}

/* :hover */
.recipe_img:hover,
.process_img:hover,
.form-inputs
	.input_process_box
	tr
	td
	.input_process_left
	.options
	.tr_delete:hover,
.form-inputs
	.input_process_box
	tr
	td
	.input_process_left
	.options
	.sort_up:hover,
.form-inputs
	.input_process_box
	tr
	td
	.input_process_left
	.options
	.sort_down:hover,
.form-inputs .input_catchcopy:hover,
.form-inputs .input_producer:hover,
.form-inputs .input_tips:hover,
.form-inputs .input_profile:hover,
.form-inputs dl dd.input_before:hover,
.form-inputs .input_process_box span.input_process:hover {
	background: #f8a624;
	opacity: 0.8;
	color: #fff;
	cursor: pointer;
}
/* ボタンの有効/無効 */
.modal_container.active .modal_contents .modal_head .save:not(:disabled),
.modal_container.active .modal_contents .modal_bottom .save:not(:disabled) {
	background: #f8a624;
	color: #fff;
}

/* 画像アップロード */
.process_fileupload_area .loading,
.process_fileupload_area .delete {
	display: none;
}
.process_fileupload_area .loading.on,
.process_fileupload_area .delete.on {
	display: block;
}
.process_fileupload_area .delete {
	margin-right: 20px;
}
.process_fileupload_area .btn-area {
	-webkit-justify-content: flex-start;
	-moz-justify-content: flex-start;
	-ms-justify-content: flex-start;
	-o-justify-content: flex-start;
	justify-content: flex-start;
}
.process_fileupload_area .btn-area > * {
	width: 30%;
}
.process_fileupload_area .btn-area .btn {
	width: 100%;
}
.process_fileupload_area .fileupload_result img {
	max-width: 100%;
}
@media screen and (max-width: 767px) {
	.process_fileupload_area .delete.on {
		width: 70%;
		margin-right: 10px;
	}
	.process_fileupload_area .upload {
		width: 100%;
	}
	.process_fileupload_area .fileupload_result img {
		max-width: 260px;
	}
}

/* 提供農家モーダル */
#producer .modal_contents .modal_head {
	justify-content: center;
	padding-bottom: 18px;
}
#producer .modal_contents .free_search_form.recipe {
	margin-bottom: 10px;
}
#producer .modal_contents .modal_tab .tab_orderlist,
#producer .modal_contents .modal_tab .tab_search {
	background: #aaffff;
	text-align: center;
	padding: 20px;
	margin: 10px;
}
#producer .modal_contents .choice_orderlist,
#producer .modal_contents .choice_orderlist_search_result {
	width: 100%;
	margin-bottom: 30px;
	text-align: center;
}
#producer .modal_contents .choice_orderlist ul,
#producer .modal_contents .choice_orderlist_search_result ul {
	display: flex;
	flex-wrap: wrap;
}
#producer .modal_contents .choice_orderlist ul li,
#producer .modal_contents .choice_orderlist_search_result ul li {
	display: flex;
	width: 50%;
}
#producer .modal_contents .choice_orderlist ul li figure,
#producer .modal_contents .choice_orderlist_search_result ul li figure {
	width: 30%;
	margin-right: 5%;
}
#producer .modal_contents .choice_orderlist ul li figure img,
#producer .modal_contents .choice_orderlist_search_result ul li figure img {
	width: 100%;
	border-radius: 50%;
}
#producer .modal_contents .choice_orderlist ul li .farmer-info,
#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info {
	position: relative;
	width: 65%;
}
#producer .modal_contents .choice_orderlist ul li .farmer-info button,
#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info button {
	position: absolute;
	bottom: 0;
	padding: min(10px, 2vw);
	background: #f8a624;
	color: #fff;
	border-radius: min(5px, 1vw);
}
#producer .modal_contents .choice_orderlist ul li .producer_list_remove,
#producer .modal_contents .choice_orderlist_search_result ul li .producer_list_remove {
	display: none;
}
#producer .modal_contents .choice_orderlist ul li .farmer-info .input_introduction,
#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info .input_introduction {
	display: none;
}
#producer .modal_contents .choice_orderlist_search,
#producer .modal_contents .farmers_icon_detail {
	width: 100%;
}
#producer button.more {
	display: block;
	margin: 30px auto 0 auto;
	padding: min(10px, 2vw);
	background: #f8a624;
	color: #fff;
	border-radius: min(5px, 1vw);
}
#producer .modal_contents .producer_list.selected .choice_orderlist ul li .farmer-info button {
	background: #eee;
}

/*212017追加*/
/*recipe/good_list*/
.farmerlist_nav {
	flex-wrap: nowrap;
	height: 80px;
}
@media screen and (max-width: 767px) {
	.farmerlist_nav {
		height: auto;
	}
}
.farmerlist_nav li {
	width: 100%;
}
.farmerlist_nav a {
	white-space: nowrap;
	padding: 0 20px;
}
.farmers_icon_detail a {
	width: 250px;
	padding: 16px 50px 12px 50px;
	background-color: #f8a624;
	color: #fff;
	border-radius: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.farmerlist li.recipe_list {
	width: 300px;
	border: solid 2px #e3e3e3;
	border-radius: 8px;
}
.farmerlist li ._df {
	display: flex;
	padding: 5px 0;
}
.farmerlist li.recipe_list figure.w_20 {
	width: 20%;
	height: auto;
}
.farmerlist li.recipe_list figure.w_20 img {
	width: 100%;
	border-radius: 50px;
}
.farmerlist li ._df dl {
	width: 70%;
	line-height: 1.2;
	padding-left: 10px;
}
.farmerlist li dl.recipe_detail {
	padding: 14px;
}
.farmerlist li dl.recipe_detail dt.recipe_title {
	font-size: 18px;
	font-weight: bold;
	color: #548235;
}
.farmerlist li ._df dt {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 5px;
}
.farmerlist li ._df dd span {
	display: block;
	line-height: 1.4;
}
.farmerlist li ._df dd span a {
	text-decoration: underline;
	position: relative;
}
.farmerlist li dd ul {
	display: flex;
	margin: 5px 0;
	justify-content: flex-end;
}
._heart,
._favorite {
	cursor: pointer;
	margin: 0;
}
._heart::before {
	content: "\f004";
	font-family: "Font Awesome 5 Free";
	padding-right: 5px;
}
._heart.active::before {
	/* color: #ED0D10; */
	color: #c21f3d;
	font-weight: 900;
}
._favorite::before {
	content: "\f02e";
	font-family: "Font Awesome 5 Free";
	padding-right: 5px;
}
._favorite.active::before {
	/* color: #F4EB00; */
	color: #ffc800;
	font-weight: 900;
}
.farmerlist li dd ul li:not(.slick-slide) {
	margin: 0;
}
.farmerlist li dd ul li:first-child {
	margin-right: 20px;
}
.farmerlist li.recipe_list figure.w_100 img {
	width: 100%;
}
.farmerlist li dl.recipe_detail dl._catch_copy {
	padding: 14px 0 0 0;
	line-height: 1.2;
}
.farmerlist li dl.recipe_detail dl._catch_copy dt {
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 5px;
}
.farmerlist li dl.recipe_detail_bottom {
	padding: 0 14px 14px 14px;
}
.farmerlist li dl.recipe_detail_bottom dt {
	font-size: 16px;
	font-weight: bold;
	padding-bottom: 14px;
}
.farmerlist li dl.recipe_detail_bottom dd ul {
	display: block;
}
.farmerlist li dl.recipe_detail_bottom dd ul a {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
/* .farmerlist li dl.recipe_detail_bottom dd ul li {
	width: 30%;
	margin: 0;
	text-align: center;
} */
/* .farmerlist li dl.recipe_detail_bottom dd ul li:not(:nth-of-type(3n)) {
	margin-right: 4.5%;
} */
.farmerlist li dl.recipe_detail_bottom dd ul li figure {
	width: 100%;
	padding-right: 0;
	padding-bottom: 5px;
}
.farmerlist li dl.recipe_detail_bottom dd ul li figure img {
	width: 100%;
	border-radius: 50px;
}
@media screen and (max-width: 970px) {
	.farmers_icon_detail a {
		justify-content: center;
	}
}
@media screen and (max-width: 850px) {
	.farmerlist_nav {
		max-width: inherit;
		margin: 0 auto 30px auto;
		padding: 0 3%;
		overflow-x: auto;
		white-space: nowrap;
		width: 100%;
		display: block;
	}
	.farmerlist_nav li {
		width: auto;
		margin-right: 5%;
		display: inline-block;
	}
	.farmerlist_nav a {
		padding: 5vw 0 4vw 0;
	}
}
@media screen and (max-width: 767px) {
	.free_search_form input {
		font-size: 3.5vw;
	}
}
@media screen and (max-width: 660px) {
	.farmerlist_nav {
		width: 100%;
	}
	.farmerlist_nav li {
		width: auto;
	}
}

/*212017追加*/
/*recipe/detail*/
.recipes_list {
	max-width: 100%;
	list-style: none;
	width: 990px;
	padding: 0 15px;
	margin: 65px auto 125px auto;
}
.recipes_list ._df {
	display: flex;
}
.recipes_list ._df.pb_20 {
	padding-bottom: 20px;
	border-bottom: solid 1px #a5a5a5;
}
.recipes_list ._df.pd_20 {
	padding: 20px 0;
	border-bottom: solid 1px #a5a5a5;
}
.recipes_list figure.w_40 {
	width: 40%;
}
.recipes_list figure.w_40 img {
	width: 100%;
}
.recipes_list ._df dl.recipe_list_detail {
	width: 60%;
	padding-left: 20px;
}
.recipes_list ._df dl.recipe_list_detail dt.recipe_list_title {
	font-size: 24px;
	font-weight: bold;
	color: #548235;
	padding-bottom: 10px;
}
#preview  .recipe_list_title,
#detail .recipe_list_title {
	font-size: 24px;
	font-weight: bold;
	color: #548235;
	line-height: 1.4;
}
.recipe_title {
	line-height: 1.4;
}
.recipe_list_title span,
.recipe_list_title span,
.recipe_title span {
	background: -webkit-linear-gradient(transparent 70%, #ffd2d2 70%);
	background: -o-linear-gradient(transparent 70%, #ffd2d2 70%);
	background: linear-gradient(transparent 70%, #ffd2d2 70%);
}
#preview  .recipe_list_title.pc,
#detail .recipe_list_title.pc {
	display: inline-block;
}
@media screen and (max-width: 767px) {
	#preview .recipe_list_title.pc,
	#detail .recipe_list_title.pc {
		display: none;
	}
	#preview .recipe_list_title.sp,
	#detail .recipe_list_title.sp {
		display: inline-block;
	}

}
.recipes_list ._df dl.recipe_list_detail dd {
	font-size: 18px;
	line-height: 1.4;
}
.recipes_list ._df dl.recipe_list_detail dd._df {
	align-items: center;
}
.recipes_list ._df dl.recipe_list_detail dd figure.w_20 {
	width: 20%;
	margin-right: 10px;
}
.recipes_list ._df dl.recipe_list_detail dd figure.w_20 img {
	width: 100%;
	border-radius: 50%;
}
.recipes_list ._df dl.recipe_list_detail dd dl {
	line-height: 1.2;
}
.recipes_list ._df dl.recipe_list_detail dd dl dt {
	font-weight: bold;
	margin-bottom: 5px;
}
.recipes_list ._df dl.recipe_list_detail dd span {
	display: block;
}
.recipes_list ._df dl.recipe_list_detail dd a {
	text-decoration: underline;
}
.recipes_list ._df dl.recipe_list_detail dd ul._cnt_list {
	display: flex;
	margin-bottom: 10px;
	justify-content: flex-end;
	font-size: 20px;
}
.recipes_list ._df dl.recipe_list_detail dd ul._cnt_list li:first-child {
	margin-right: 30px;
}
.recipes_list ._df dl.recipe_list_detail dd.__catch_copy {
	padding: 20px 20px 15px 20px;
	margin-top: 10px;
	background-color: #fff2cc;
	position: relative;
}
.recipes_list ._df dl.recipe_list_detail dd.__catch_copy::before {
	content: "";
	display: block;
	position: absolute;
	/*
	top: -8px;
	left: 80px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8px 0 0 80px;
	border-color: transparent transparent transparent #fff2cc;
	*/
	top: -10px;
	left: 80px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 0 10px;
	border-color: transparent transparent transparent #fff2cc;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report {
	padding-top: 20px;
	border-bottom: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li {
	width: 49%;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li.recipe_share {
	width: 100%;
	margin-top: 20px;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li a {
	width: 100%;
	font-weight: bold;
	padding: 20px 10px 15px 10px;
	color: #ed7d31;
	background-color: #fff;
	border: solid 3px #ed7d31;
	border-radius: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li a:hover {
	opacity: 0.8;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li.recipe_share > a {
	color: #333;
	background-color: #f9faf5;
	border: solid 3px #efefeb;
}
.recipes_list
	._df
	dl.recipe_list_detail
	ul.c_report
	li.recipe_share
	> a::before {
	content: "\f14d";
	font-family: "Font Awesome 5 Free";
	padding-right: 5px;
}

.recipes_list ._df._jsb {
	justify-content: space-between;
}
._material {
	width: 100%;
}
._material dl dt {
	font-size: 18px;
	font-weight: bold;
	padding: 10px 10px 10px 0;
	background-color: #fff;
	display: flex;
	align-items: center;
}
._material dl dt span {
	font-size: 16px;
	font-weight: normal;
	padding-left: 5px;
}
._material dl dd {
	font-size: 16px;
}
._material dl dd ul li {
	padding: 10px;
	background-color: #f9faf5;
	display: flex;
	justify-content: space-between;
}
._material dl dd ul li:nth-child(even) {
	background-color: #fff;
}
.cooking_method {
	width: 100%;
}
.cooking_method dl dt {
	font-size: 18px;
	font-weight: bold;
	padding: 0 0 10px 0;
}
.cooking_method dl dd {
	font-size: 16px;
}
.cooking_method dl dd ul {
	display: flex;
	flex-wrap: wrap;
}
.cooking_method dl dd ul li {
	margin-bottom: 20px;
	width: calc(33.3333% - 10px);
	display: flex;
	/* justify-content: space-between; */
}
.cooking_method dl dd ul li:not(:nth-of-type(3n + 1)) {
	margin-left: 15px;
}
.cooking_method dl dd ul li span.process_order {
	width: 30px;
	height: 30px;
	padding: 5px 5px 2px 5px;
	color: #fff;
	background-color: #979580;
	border: solid 1px #bfbdb3;
	border-radius: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cooking_method dl dd ul li span.process_text {
	width: calc(70% - 30px);
	line-height: 1.4;
	padding: 0 10px;
	flex: 1;
}
.cooking_method dl dd ul li figure {
	width: 35%;
	order: 1;
}
.cooking_method dl dd ul li figure img {
	width: 100%;
}
.recipes_list dl._knack {
	padding: 20px 0;
	border-bottom: solid 1px #a5a5a5;
}
.recipes_list dl._knack dt {
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 5px;
}
.recipes_list dl._knack dd {
	font-size: 16px;
	line-height: 1.2;
}
.recipes_list ul.c_report {
	padding: 20px 0;
	border-bottom: solid 1px #a5a5a5;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recipes_list ul.c_report li {
	width: calc(33.33333333% - 10px);
}
.recipes_list ul.c_report li a {
	width: 100%;
	font-size: 16px;
	font-weight: bold;
	padding: 20px 10px 15px 10px;
	color: #ed7d31;
	background-color: #fff;
	border: solid 3px #ed7d31;
	border-radius: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.recipes_list ul.c_report li a span.cookrepo_cnt {
	padding: 0 0 0 15px;
	color: #000;
}
.recipes_list ul.c_report li a:hover {
	opacity: 0.8;
}
.recipes_list ul.c_report li.recipe_share > a {
	color: #333;
	background-color: #f9faf5;
	border: solid 3px #efefeb;
}
.recipes_list ul.c_report li.recipe_share > a::before {
	content: "\f14d";
	font-family: "Font awesome 5 Free";
	padding-right: 5px;
}
.recipes_list dl._offer_farmer {
	padding: 20px 0;
	border-bottom: solid 1px #a5a5a5;
}
.recipes_list dl._offer_farmer dt {
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 10px;
}
.recipes_list dl._offer_farmer dd ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recipes_list dl._offer_farmer dd ul li {
	width: 300px;
}
.recipes_list dl._offer_farmer dd ul li .farm_link {
	display: flex;
	flex-wrap: wrap;
}
.recipes_list dl._offer_farmer dd ul li figure {
	width: 30%;
}
.recipes_list dl._offer_farmer dd ul li figure img {
	width: 100%;
	border-radius: 50%;
}
.recipes_list dl._offer_farmer dd ul li div.farmer-info {
	width: 70%;
	padding-left: 10px;
}
.recipes_list dl._offer_farmer dd ul li div.farmer-info .name {
	font-weight: bold;
}
.recipes_list dl._offer_farmer dd ul li a.food_request {
	margin: 20px auto 0 auto;
	padding: 12px 20px 8px 20px;
	color: #fff;
	background-color: #f8a624;
	border-radius: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.recipes_list dl._offer_farmer dd ul li a.food_request:hover {
	opacity: 0.8;
}
.recipes_list dl.cook_report {
	padding: 20px 0;
}
.recipes_list dl.cook_report dt.report_title {
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 10px;
}
.recipes_list dl.cook_report dd ul {
	display: none;
	flex-wrap: wrap;
	justify-content: space-between;
}
.recipes_list dl.cook_report dd .active {
	display: flex;
}
.recipes_list dl.cook_report dd ul li {
	width: 300px;
	margin: 10px 0;
}
.recipes_list dl.cook_report dd ul li span {
	display: block;
	line-height: 1;
}
.recipes_list dl.cook_report dd ul li span.nickname {
	color: #548235;
}
.recipes_list dl.cook_report dd ul li figure {
	width: 100%;
	padding: 5px 0 10px;
}
.recipes_list dl.cook_report dd ul li figure img {
	width: 100%;
}
.recipes_list dl.cook_report dd ul li dl.report_text {
	line-height: 1.4;
}
.recipes_list dl.cook_report dd ul li dl.report_text dt {
	font-size: 16px;
	padding-bottom: 3px;
	font-weight: bold;
	color: #548235;
}
.recipes_list dl.cook_report dd ul li dl.report_text dd {
	line-height: 1.2;
}
.recipes_list dl.cook_report dd ul li dl.report_text dd span {
	/* display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden; */
	line-height: 1.4;
}
.recipes_list dl.cook_report dd ul li dl.report_text dd span.nickname {
	margin-bottom: 5px;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
}
.recipes_list a.recipe_top {
	width: 250px;
	margin: 45px auto 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
.recipes_list a.recipe_top:hover {
	opacity: 0.8;
}
@media screen and (max-width: 1090px) {
	.recipes_list {
		width: 100%;
	}
	.recipes_list ._df dl.recipe_list_detail dd.__catch_copy::before {
		left: 8vw;
	}
	.recipes_list dl._offer_farmer dd ul li {
		width: 30%;
	}
	.recipes_list dl.cook_report dd ul li {
		width: 32%;
	}
}
@media screen and (max-width: 850px) {
	.recipes_list dl._offer_farmer dd ul li {
		width: 50%;
	}
}
@media screen and (max-width: 767px) {
	.recipes_list ._df {
		flex-direction: column;
	}
	.recipes_list ._df.pb_20 {
		padding-bottom: 0;
	}
	.recipes_list ._df.pd_20 {
		padding: 0;
	}
	.recipes_list figure.w_40 {
		width: 100%;
		padding-bottom: 5%;
	}
	.recipes_list ._df dl.recipe_list_detail {
		width: 100%;
		padding-left: 0;
	}
	.recipes_list ._df dl.recipe_list_detail dt.recipe_list_title {
		padding-bottom: 1%;
	}
	.recipes_list ._df dl.recipe_list_detail dd._df {
		flex-direction: row;
	}
	.recipes_list ._df dl.recipe_list_detail dd figure.w_20 {
		width: 30%;
		align-self: flex-end;
	}
	.recipes_list ._df dl.recipe_list_detail dd dl {
		width: 70%;
		padding-left: 3%;
	}
	.recipes_list ._df dl.recipe_list_detail dd.__catch_copy {
		margin-top: 5%;
		padding: 5% 3% 4% 3%;
	}
	.recipes_list ._df dl.recipe_list_detail dd.__catch_copy::before {
		top: -4vw;
		left: 18vw;
		border-width: 4vw 0 0 4vw;
	}
	.recipes_list ._df dl.recipe_list_detail ul.c_report {
		padding: 5% 0;
	}
	.recipes_list ._df dl.recipe_list_detail ul.c_report li a {
		padding: 8% 3%;
	}
	.recipes_list ._df dl.recipe_list_detail ul.c_report li.recipe_share a {
		padding: 4% 3% 3% 3%;
	}
	.recipes_list ._df dl.recipe_list_detail ul.c_report li.recipe_share {
		margin-top: 5%;
	}
	._material dl dt,
	.cooking_method dl dt {
		padding: 5% 3% 5% 0;
	}
	._material {
		margin-bottom: 5%;
	}
	._material dl dd ul li {
		padding: 5% 3%;
	}
	.cooking_method {
		width: 100%;
	}
	.cooking_method dl dd ul li {
		margin-bottom: 5%;
		width: calc(50% - 8px);
		display: block;
	}
	.cooking_method dl dd ul li:not(:nth-of-type(odd)) {
		margin-left: 15px;
	}
	.cooking_method dl dd ul li:not(:nth-of-type(even)) {
		margin-left: 0;
	}
	.cooking_method dl dd ul li span.process_text {
		width: 100%;
		padding: 0;
		margin-top: 5%;
		display: block;
	}
	.cooking_method dl dd ul li figure {
		width: 100%;
		margin-top: 3%;
	}
	.recipes_list dl._knack {
		padding: 5% 0;
	}
	.recipes_list dl._knack dt {
		padding-bottom: 3%;
	}
	.recipes_list ul.c_report {
		padding: 5% 0;
	}
	.recipes_list ul.c_report li {
		width: 49%;
	}
	.recipes_list ul.c_report li.recipe_share {
		width: 100%;
		margin-top: 5%;
	}
	.recipes_list ul.c_report li a {
		padding: 7% 3%;
	}
	.recipes_list ul.c_report li a span.cookrepo_cnt {
		padding: 0 0 0 5px;
		color: #000;
	}
	.recipes_list ul.c_report li.recipe_share a {
		padding: 4% 3% 3% 3%;
	}
	.recipes_list dl._offer_farmer {
		padding: 5% 0;
	}
	.recipes_list dl._offer_farmer dt {
		padding-bottom: 3%;
	}
	.recipes_list dl._offer_farmer dd ul li {
		width: 100%;
		margin: 0 5% 8% 8%;
	}
	.recipes_list dl._offer_farmer dd ul li div.farmer-info {
		padding-left: 3%;
	}
	.recipes_list dl._offer_farmer dd ul li a.food_request {
		width: 80vw;
		margin: 5% auto 0 auto;
		padding: 3% 3% 2% 3%;
	}
	.recipes_list dl.cook_report {
		padding: 5% 0;
	}
	.recipes_list dl.cook_report dd ul li figure {
		padding: 3% 0 5%;
	}
	.recipes_list dl.cook_report dt.report_title {
		padding-bottom: 3%;
	}
	.recipes_list dl.cook_report dd ul li {
		width: calc(50% - 8px);
		margin-bottom: 5%;
	}
}

/* レシピを共有ボタンの中 */
.recipe_share {
	position: relative;
}
.share_link_list {
	border: 1px solid;
	width: min(100%, 300px);
	position: absolute;
	top: calc(100% + 20px);
	left: 0;
	right: 0;
	margin: auto;
	display: none;
	border-radius: 5px;
	background-color: #ffffff;
	z-index: 1;
}
.share_link_list.active {
	display: block;
}
.share_link_list::before,
.share_link_list::after {
	content: "";
	display: block;
	position: absolute;
	width: 0;
	height: 0;
	bottom: 100%;
	left: 0;
	right: 0;
	margin: auto;
	border-style: solid;
}
.share_link_list::before {
	border-width: 0 10px 17.3px 10px;
	border-color: transparent transparent #464646 transparent;
}
.share_link_list::after {
	border-width: 0 9px 15.6px 9px;
	border-color: transparent transparent #ffffff transparent;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li .share_link_list li,
ul.c_report li .share_link_list li {
	width: 100%;
}
.recipes_list ._df dl.recipe_list_detail ul.c_report li .share_link_list a,
ul.c_report li .share_link_list a {
	color: inherit;
	border: none;
	border-radius: initial;
	padding: 15px 10px;
	line-height: 1;
	position: relative;
	background-color: transparent;
}
.recipes_list
	._df
	dl.recipe_list_detail
	ul.c_report
	li
	.share_link_list
	li:not(:last-of-type)
	a,
ul.c_report li .share_link_list li:not(:last-of-type) a {
	border-bottom: 1px solid;
}

.fa::before {
	font-weight: 400;
	font-size: 30px;
	position: absolute;
	left: 10px;
	top: 0;
	bottom: 0;
	display: flex;
	align-items: center;
}
.fa.brands::before {
	font-family: "Font Awesome 5 Brands";
}
.fa.free::before {
	font-family: "Font Awesome 5 Free";
}
.fa.line::before {
	content: "\f3c0";
	color: #06c755;
}
.fa.facebook::before {
	content: "\f082";
	color: #3b5998;
}
.fa.twitter::before {
	content: "\f081";
	color: #55acee;
}
.fa.mail::before {
	content: "\f0e0";
}

#recipe_mail {
	display: none;
	position: fixed;
	background-color: #ffffff;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: min(80%, 900px);
	height: 70vvh;
	max-height: 500px;
	line-height: 1.7;
	padding: 50px;
	z-index: 9999;
}
#recipe_mail.on {
	display: block;
}
#recipe_mail p.r_body {
	overflow-y: auto;
	height: 250px;
}
#recipe_mail .from {
	display: flex;
	align-items: center;
}
#recipe_mail .from label {
	width: 100%;
	flex: 1;
	margin-left: 10px;
}
.r_body {
	border: 1px solid #dcdcdc;
	padding: 20px;
}
#recipe_mail button {
	width: 195px;
	margin: 10px auto;
	display: block;
}
.sended {
	height: 100%;
}
dd.sended {
	display: flex;
	align-items: center;
	justify-content: center;
}
.sended form {
	display: none;
}
#cookrepo_modal .modal-trigger,
#recipe_mail .modal-trigger {
	position: absolute;
	right: 0;
	bottom: calc(100% + 10px);
}
#cookrepo_modal .modal-trigger span,
#recipe_mail .modal-trigger span {
	background-color: #ffffff;
}
@media screen and (max-width: 767px) {
	#recipe_mail {
		height: min(80vh, 600px);
		padding: 5%;
		overflow-y: auto;
	}
	#recipe_mail .r_title {
		line-height: 1.4;
		margin-bottom: 5%;
	}
	#recipe_mail .from {
		display: block;
	}
	#recipe_mail .from label {
		margin-left: 0;
		margin-top: 0;
	}
	#recipe_mail .modal-trigger,
	#recipe_mail .modal-trigger {
		position: fixed;
		right: calc((100% - min(80%, 900px)) / 2);
		top: calc(((100% - min(80vh, 600px)) / 2) - 12vw);
	}
}

#cookrepo_more {
	width: 250px;
	margin: 10px auto 0;
	display: block;
}

.farmerlist li dl.recipe_detail {
	position: relative;
}
.farmerlist li dl.recipe_detail > dd ._df dd {
	font-size: 13px;
}
.cover_link {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
}
#cookrepo_modal .sended {
	display: none;
}
.td_ul {
	text-decoration: underline;
}
#cookrepo_modal .add-element {
	margin-top: 20px;
}

/* 21_0225追加　my_recipi*/
.my_recipi {
	width: 990px;
	max-width: 100%;
	padding: 0 15px;
	margin: 65px auto 0 auto;
}
.my_recipi h1 {
	font-size: 24px;
	text-align: center;
	padding-bottom: 20px;
	border-bottom: solid 1px #a5a5a5;
}
.my_recipi .my_recipi_post {
	padding: 20px 0;
	border-bottom: solid 1px #a5a5a5;
}
.my_recipi .my_recipi_post h2 {
	padding-top: 0;
}
.my_recipi .my_recipi_post a {
	width: 250px;
	padding: 16px 50px 16px 50px;
	background-color: #f8a624;
	color: #fff;
	border-radius: 25px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.my_recipi .my_recipi_post a:hover {
	opacity: 0.8;
}
.my_recipi h2 {
	font-size: 18px;
	padding-top: 20px;
}
.farmerlist li.recipe_list .editor {
	padding: 0 14px 14px 14px;
}
.farmerlist li.recipe_list .editor a {
	font-weight: bold;
}
.farmerlist.my_recipi_list ._df dl {
	width: 80%;
}
@media screen and (max-width: 700px) {
	.my_recipi {
		width: 100%;
	}
	.my_recipi h1 {
		padding-bottom: 3%;
	}
	.my_recipi h1 {
		padding: 3% 0;
	}
	.my_recipi h2 {
		padding: 3% 0;
	}
	.farmerlist.my_recipi_list {
		width: 100%;
		padding: 0 3%;
		justify-content: space-between;
	}
	.farmerlist.my_recipi_list li.recipe_list {
		width: 48.5%;
		margin: 0 0 3% 0;
	}
}

/* /recipe/add/ */
.form-inputs .input_process_box span.input_process {
	width: calc(97% - 30px);
	padding: 10px 10px 245px 10px;
	margin-left: 3%;
}
.form-inputs .input_process_box tr td .input_process_left .options {
	align-items: center;
}
.form-inputs .input_process_box tr td .input_process_left {
	width: 65%;
}
.fileupload_area {
	width: 35%;
}
.upload label {
	padding: min(10px, 2vw) 30px;
}
.fileupload_area .btn-area > * {
	width: auto;
}
.fileupload_area .loading.on,
.fileupload_area .delete.on {
	width: 38%;
	margin-right: 3%;
}
#add .fileupload_area .delete.on {
	width: 100%;
	margin-right: 0;
}
#add .fileupload_area.main_img {
	margin: 0 auto;
}
.fileupload_area .btn-area .btn {
	padding: 12px 0;
}
.fileupload_area .btn-area > * {
	width: 59%;
}
.process_fileupload_area {
	width: 35%;
}
.process_fileupload_area .btn-area > * {
	width: 59%;
}
.process_fileupload_area .btn-area .btn {
	padding: 12px 0;
}
.form-inputs .input_process_box .add_process {
	width: 25%;
	padding: 25px 10px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.modal_container.active .modal_contents ._df {
	display: flex;
	align-items: center;
}
.modal_container.active .modal_contents ._df span.process_cnt {
	font-weight: bold;
	padding: 5px 0 0 5px;
}
.modal_container.active .modal_contents span.catchcopy_cnt {
	padding-left: 5px;
}
.modal_container.active .modal_contents span.tips_cnt {
	padding-left: 5px;
}
.modal_container.active .modal_contents span.profile_cnt {
	padding-left: 5px;
}
.modal_container.active .modal_contents .modal_head .title,
.modal_container.active .modal_contents .modal_head .blank {
	width: auto;
	padding: 0;
}
#producer .modal_contents .choice_orderlist ul li .farmer-info,
#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info {
	position: unset;
	display: flex;
	flex-direction: column;
}
#producer .modal_contents .choice_orderlist ul li,
#producer .modal_contents .choice_orderlist_search_result ul li {
	margin-bottom: 20px;
}
#producer .modal_contents .choice_orderlist ul li .farmer-info button,
#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info button {
	position: unset;
	margin-top: auto;
}
@media screen and (max-width: 767px) {
	.mw_form {
		width: 100%;
	}
	.form-inputs .input_process_box tr td .input_process_left {
		width: 60%;
	}
	.fileupload_area {
		width: 40%;
	}
	.fileupload_area.main_img {
		width: 100%;
	}
	.fileupload_area .fileupload_result img {
		width: 100%;
		max-width: none;
	}
	.form-inputs .input_process_box span.input_process {
		padding: 10px 3vw 15vw 3vw;
	}
	.form-inputs .input_process_box tr td .input_process_left .options .tr_delete,
	.form-inputs .input_process_box tr td .input_process_left .options .sort_up,
	.form-inputs
		.input_process_box
		tr
		td
		.input_process_left
		.options
		.sort_down {
		padding: 2vw 3vw;
	}
	.upload label {
		padding: 2vw 3vw;
	}
	.form-btns.bnts-right .w120 {
		min-width: auto !important;
	}
	.form-btns.bnts-right span:first-child {
		margin-left: 0;
	}
	.modal_container.active .modal_contents .modal_head .close,
	.modal_container.active .modal_contents .modal_head .save,
	.modal_container.active .modal_contents .modal_bottom .close,
	.modal_container.active .modal_contents .modal_bottom .add,
	.modal_container.active .modal_contents .modal_bottom .save {
		width: auto;
		min-width: 20%;
	}
	.modal_container.active .modal_contents ._df span.process_cnt {
		padding: 1% 0 0 1vw;
	}
	#producer .choice_orderlist ul,
	#producer .choice_orderlist_search_result ul {
		justify-content: space-between;
	}
	.form-inputs .input_process_box .add_process {
		width: 30vw;
	}
	#producer .modal_contents .choice_orderlist ul li,
	#producer .modal_contents .choice_orderlist_search_result ul li {
		width: 49%;
		margin-bottom: 5%;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	#producer .modal_contents .choice_orderlist ul li figure,
	#producer .modal_contents .choice_orderlist_search_result ul li figure {
		width: auto;
		margin-right: 0;
		margin-bottom: 3%;
	}
	#producer .modal_contents .choice_orderlist ul li .farmer-info,
	#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info {
		width: 100%;
		text-align: center;
	}
	#producer .modal_contents .choice_orderlist ul li .farmer-info button,
	#producer .modal_contents .choice_orderlist_search_result ul li .farmer-info button {
		margin-top: 3%;
	}
}
@media screen and (max-width: 500px) {
	/*
	.form-inputs .input_process_box tr td .input_process_left {
		width: 55vw;
	}
	.fileupload_area {
		width: 35vw;
	}
	*/
	.fileupload_area .upload_btns.btn-area {
		flex-direction: column;
	}
	.fileupload_area .loading.on,
	.fileupload_area .delete.on {
		width: 100%;
	}
	.fileupload_area .upload {
		width: 100%;
	}
	.fileupload_area .btn-area .btn {
		padding: 5% 3%;
	}
	.form-inputs .input_process_box .add_process {
		padding: 5% 3%;
	}
	#producer .modal_contents .choice_orderlist ul li .farmer-info button {
		padding: 5% 12%;
	}
}

/**
CSS追加
*/
#cookrepo_modal {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	justify-content: center;
	align-items: center;
	display: none;
	z-index: 9999;
}

#cookrepo_modal.on {
	display: flex;
}
#cookrepo_modal.on .modal_container {
	display: block;
	background-color: #ffffff;
	width: min(80%, 900px);
	position: relative;
	overflow-y: unset;
}
#cookrepo_modal.on .modal_body {
	overflow-y: auto;
	position: relative;
	padding: 50px;
	width: 100%;
	max-height: 70vh;
}
#cookrepo_modal textarea {
	margin: 10px 0;
	resize: vertical;
	min-height: 150px;
}

#cookrepo_modal .fileupload_area {
	width: auto;
}
.fileupload_result label > img {
	cursor: pointer;
	opacity: 0.3;
	border: 1px solid #f8f8f8;
}
.fileupload_area.main_img .fileupload_result label {
	position: relative;
}
.fileupload_area.main_img .fileupload_result label > div {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 80%;
	text-align: center;
	font-weight: bold;
}
#cookrepo_modal .fileupload_result label img,
#cookrepo_modal .fileupload_area .btn-area > * {
	width: 30%;
}
#cookrepo_modal .upload label {
	padding: 12px 0;
}
@media screen and (max-width: 767px) {
	#cookrepo_modal .fileupload_result label {
		text-align: center;
	}
	#cookrepo_modal .fileupload_result label img,
	#cookrepo_modal .fileupload_area .btn-area > * {
		width: 100%;
	}
}
#cookrepo_modal .login_text .btn,
#cookrepo_modal .close_btn,
#cookrepo_modal .send_btn button {
	width: 250px;
	display: block;
	margin: 20px auto 0;
}
#cookrepo_modal .btn-area {
	padding: 0;
}
#cookrepo_modal .input-parent {
	margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
	#cookrepo_modal.on .modal_body {
		padding: 5%;
	}
}
#cookrepo_modal .login_text {
	margin-top: 10px;
}
._cnt_list {
	position: relative;
}
._cnt_list .red {
	position: absolute;
	bottom: calc(100% + 10px);
	left: 0;
	background-color: #e04141;
	z-index: 3;
	padding: 7px 12px;
	border-radius: 9px;
	color: #fff;
	cursor: pointer;
}
._cnt_list .red::before,
._cnt_list .red::after {
	content: "";
	position: absolute;
	transform: rotate(62deg);
	border: 7px solid transparent;
	border-left: 17px solid #e04141;
}
._cnt_list .red::before {
	bottom: -12px;
	left: 7px;
	z-index: 1;
}
._cnt_list .red::after {
	bottom: -10px;
	left: 6px;
	z-index: 2;
}
.recipe_list ._cnt_list .red,
.recipe_list ._cnt_list .red::before,
.recipe_list ._cnt_list .red::after {
	left: initial;
}
.recipe_list ._cnt_list .red {
	right: 0;
}
.recipe_list ._cnt_list .red::before {
	right: 7px;
}
.recipe_list ._cnt_list .red::after {
	right: 7px;
}
.recipes_list dl.cook_report dd ul li figure {
	/* padding: 100% 0 0 0; */
	margin: 5px 0 10px;
	position: relative;
	/* height: 0; */
	overflow: hidden;
}
.recipes_list dl.cook_report dd ul li figure img {
	/* position: absolute; */
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
@media screen and (max-width: 767px) {
	.recipes_list dl.cook_report dd ul li figure {
		margin: 3% 0 5%;
	}
}
.recipes_list dl._offer_farmer dd ul li {
	display: flex;
	flex-direction: column;
}
.recipes_list dl._offer_farmer dd ul li .farm_link {
	margin-bottom: 10px;
}
.farmer_intro {
	margin-bottom: 10px;
}
.farmer_intro .comment {
	font-size: 14px;
	padding: 20px 20px 15px 20px;
	background-color: #fff2cc;
	position: relative;
}
.recipes_list dl._offer_farmer dd ul li a.food_request {
	margin-top: auto;
}
.recipes_list .btn_list {
	display: flex;
	justify-content: center;
	margin: 45px auto 0 auto;
}
.recipes_list a.recipe_top {
	margin: 0;
}
.recipes_list .btn_list a {
	width: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.recipes_list .btn_list a:first-of-type {
	margin-right: 10px;
}
.user_profile > div {
	display: flex;
	align-items: center;
	font-weight: bold;
	font-size: 16px;
	margin-top: 5%;
}
.user_profile figure {
	width: min(20%, 100px);
	margin-right: 5%;
}
.user_profile img {
	border-radius: 50%;
	width: 100%;
}
.user_profile .profile {
	font-size: 16px;
	line-height: 1.4;
	padding: 20px 20px 15px 20px;
	background-color: #fff2cc;
	position: relative;
	margin-top: 20px;
}
.user_profile .profile::before {
	content: "";
	position: absolute;
	bottom: 100%;
	left: 20px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 17.3px 10px;
	border-color: transparent transparent #fff2cc transparent;
}
.recipe_list_detail ._df {
	flex-direction: row;
}

/* 21_0226追加*/
table {
	table-layout: fixed;
	word-break: break-all;
}

.form-inputs .input_process_box span.input_process {
	width: calc(100% - 80px);
	margin: 0 auto;
	border: 1px solid #f8f8f8;
	border-radius: 8px;
	background-color: #f8f8f8;
}
.form-inputs .input_process_box .add_process {
	cursor: pointer;
}
.fileupload_result label > img:hover,
.form-inputs .input_process_box .add_process:hover {
	opacity: 0.8;
}
.form-inputs .input_process_box tr td .process_num {
	margin-top: 0;
}
.input_process_box label {
	margin-top: 0;
}
.fileupload_area {
	position: relative;
}
.fileupload_area .loading.on {
	position: absolute;
	top: 25%;
	left: 0;
	right: 0;
	display: flex;
	justify-content: center;
	z-index: 9999;
}
@media screen and (max-width: 767px) {
	.form-inputs .input_process_box span.input_process {
		width: 80%;
	}
}

.form-inputs .input_catchcopy.active,
.form-inputs .input_producer.active,
.form-inputs .input_tips.active,
.form-inputs .input_profile.active {
	color: initial;
}
.form-inputs .input_catchcopy.active:hover,
.form-inputs .input_producer.active:hover,
.form-inputs .input_tips.active:hover,
.form-inputs .input_profile.active:hover {
	color: #fff;
}

.delete_btn_list {
	display: flex;
	justify-content: center;
	padding: 0 5%;
}
.delete_btn_list a {
	width: 250px;
	padding: 15px;
	display: block;
}
.delete_btn_list a:first-of-type {
	margin-right: 10px;
}

/* 追加css: 2021-03-02 */
.modal_container.active .modal_contents .modal_head div.left_w30p,
.modal_container.active .modal_contents .modal_bottom div.left_w30p {
	width: 30%;
}
.modal_container.active .modal_contents .modal_head div.left_w30p button,
.modal_container.active .modal_contents .modal_bottom div.left_w30p button {
	width: 90%;
	max-width: 150px;
	margin-right: auto;
}

.modal_container.active .modal_contents .modal_head div.center_w40p,
.modal_container.active .modal_contents .modal_bottom div.center_w40p {
	width: 40%;
	position: relative;
}
.modal_container.active .modal_contents .modal_head div.center_w40p button,
.modal_container.active .modal_contents .modal_bottom div.center_w40p button {
	width: 80%;
	max-width: 150px;
	margin: auto;
}
.modal_container.active
	.modal_contents
	.modal_bottom
	div.center_w40p
	button.add {
	padding-left: min(40px, 8vw);
}
.modal_container.active
	.modal_contents
	.modal_head
	div.center_w40p
	button.add:before,
.modal_container.active
	.modal_contents
	.modal_bottom
	div.center_w40p
	button.add:before {
	position: absolute;
	background: #8da42b;
	color: #fff;
	content: "";
	display: block;
	font-size: 16px;
	border-radius: min(30px, 6vw);
	height: min(25px, 5vw);
	width: min(25px, 5vw);
	font-size: min(20px, 4vw);
	left: calc(50% - min(50px, 12vw));
	top: 0;
	bottom: 0;
	margin: auto;
	font-weight: 900;
	line-height: 26px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",
		Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	display: flex;
	justify-content: center;
	align-items: center;
	background-image: url(/assets/img/recipe/plus_btn.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.modal_container.active .modal_contents .modal_head div.right_w30p,
.modal_container.active .modal_contents .modal_bottom div.right_w30p {
	width: 30%;
}
.modal_container.active .modal_contents .modal_head div.right_w30p button,
.modal_container.active .modal_contents .modal_bottom div.right_w30p button {
	width: 70%;
	max-width: 150px;
	margin-left: auto;
}

/* 187行目あたりのsaveボタンを削除する */

.form-inputs .input_process_box .add_process {
	width: min(250px, 50%);
	position: relative;
	padding-left: min(40px, 8vw);
}
.form-inputs .input_process_box .add_process:before {
	position: absolute;
	background: #8da42b;
	color: #fff;
	content: "";
	display: block;
	font-size: 16px;
	border-radius: min(30px, 6vw);
	height: min(30px, 6vw);
	width: min(30px, 6vw);
	font-size: min(26px, 5vw);
	left: calc(50% - min(80px, 17vw));
	top: 0;
	bottom: 0;
	margin: auto;
	font-weight: 900;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	background-image: url(/assets/img/recipe/plus_btn.png);
	background-repeat: no-repeat;
	background-size: contain;
}

.fileupload_area.main_img .fileupload_result label > img:hover,
.fileupload_result label > img {
	cursor: pointer;
	opacity: 0.3;
	border: 1px solid #f8f8f8;
	border-radius: 8px;
}
.fileupload_result label > img.active {
	opacity: 1;
}
.fileupload_area.main_img .fileupload_result label {
	position: relative;
}
.fileupload_area.main_img .fileupload_result label > div {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 90%;
	text-align: center;
	font-weight: bold;
	font-size: 15px;
	cursor: pointer;
}

/* 画像の角を丸くする */
img {
	border-radius: min(10px, 2vw);
}
textarea {
	font-size: 18px;
}
input[type="text"] {
	font-size: 18px;
}
/* selectタグの矢印カスタマイズ */
.select_wrap {
	width: 100%;
	position: relative;
	display: inline-block;
}
@media screen and (max-width: 767px) {
	.select_wrap::after {
		content: "";
		width: 6px;
		height: 6px;
		border: 0px;
		border-bottom: solid 2px #b4b3b3;
		border-right: solid 2px #b4b3b3;
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: 15px;
		margin-top: -8px;
		pointer-events: none; /*クリック判定なし*/
	}
}
select::-ms-expand {
	display: none;
}

#detail label img,
#detail #cookrepo_modal img,
textarea {
	border-radius: 8px;
}
#detail #cookrepo_modal .fileupload_result > img {
	margin-top: 10px;
}
#cookrepo_modal .recipe_title {
	color: #548235;
}
#cookrepo_modal .login_user .icon {
	display: flex;
	align-items: center;
}
#detail #cookrepo_modal .login_user .icon img {
	border-radius: 50%;
	width: 30px;
}
#detail #cookrepo_modal .login_user .name {
	margin-left: 10px;
}
#cookrepo_modal textarea {
	margin: 10px 0 5px;
}
#cookrepo_modal.on .modal_body {
	max-height: 75vh;
}
.recipes_list dl.cook_report dd ul {
	justify-content: flex-start;
}
.recipes_list dl.cook_report dd ul li:not(:nth-of-type(3n)) {
	margin-right: 20px;
}
.recipes_list dl.cook_report dd ul li {
	border: solid 2px #e3e3e3;
	border-radius: 8px;
	padding: 14px;
	width: calc(33.3333333% - 15px);
}
@media screen and (max-width: 1090px) {
	.recipes_list dl.cook_report dd ul li:not(:nth-of-type(3n)) {
		margin-right: 2%;
	}
}
@media screen and (max-width: 767px) {
	#detail #cookrepo_modal p.read-6 {
		font-size: 16px;
	}
	.recipes_list dl.cook_report dd ul li:nth-of-type(even) {
		margin-right: 0;
	}
	.recipes_list dl.cook_report dd ul li:nth-of-type(odd) {
		margin-right: 16px;
	}
	#detail .cooking_method {
		border-top: solid 1px #a5a5a5;
	}
	.cooking_method dl dd ul li {
		width: 100%;
		display: flex;
	}
	.cooking_method dl dd ul li figure {
		width: 35%;
		margin-top: 0;
		margin-left: 10px;
	}
	.cooking_method dl dd ul li span.process_text {
		margin-top: 0;
		margin-left: 10px;
	}
	.cooking_method dl dd ul li:not(:nth-of-type(odd)) {
		margin-left: 0;
	}
	.recipes_list dl.cook_report dd ul li {
		width: calc(50% - 8px);
		margin-bottom: 10px;
	}
	.recipes_list dl.cook_report dd ul li dl.report_text dd span.nickname {
		font-size: 12px;
	}
}

.farmer_intro .comment,
.user_profile .profile,
.recipes_list dl.cook_report dd ul li figure img,
.recipes_list dl.cook_report dd ul li figure,
.recipes_list ._df dl.recipe_list_detail dd.__catch_copy {
	border-radius: min(10px, 2vw);
}

.recipes_list dl.cook_report {
	border-bottom: solid 1px #a5a5a5;
}
.recipe_user_profile {
	padding: 20px 0;
	border-bottom: solid 1px #a5a5a5;
}
@media screen and (min-width: 768px) {
	.user_profile > div {
		margin-top: 20px;
	}
	.user_profile figure {
		margin-right: 20px;
		width: 100px;
	}
	.user_profile .profile {
		width: auto;
		display: inline-block;
	}
	.user_profile .profile::before {
		left: 32px;
	}
}
@media screen and (max-width: 767px) {
	.recipe_user_profile {
		padding: 5% 0;
	}
}

.link_list {
	display: flex;
	flex-direction: column;
	align-items: center;
}
#favorite .link_list a:first-of-type,
.recipes_list .link_list a:first-of-type {
	margin-top: 30px;
}
#favorite .link_list a,
.recipes_list .link_list a {
	width: auto;
	display: inline-block;
	text-decoration: underline;
	font-size: 18px;
	margin-top: 20px;
	color: #628bff;
}
.recipes_list .link_list a:hover {
	opacity: 0.8;
}

#recipe ._catch_copy dd,
#log ._catch_copy dd,
#draft ._catch_copy dd {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
}
#recipe .farmerlist li,
#log .farmerlist li,
#draft .farmerlist li {
	width: calc(25% - 20px);
	margin: 10px;
}
#recipe .farmerlist li .date,
#log .farmerlist li .date,
#draft .farmerlist li .date {
	display: inline-block;
}
#recipe .farmerlist li .recipe_title,
#log .farmerlist li .recipe_title,
#draft .farmerlist li .recipe_title {
	font-size: 18px;
	font-weight: bold;
	color: #548235;
}
#recipe .farmerlist li dl.recipe_detail dl._catch_copy,
#log .farmerlist li dl.recipe_detail dl._catch_copy,
#draft .farmerlist li dl.recipe_detail dl._catch_copy {
	padding-top: 10px;
}
#recipe .draft {
	padding-top: 20px;
	margin-top: 0;
}
#recipe .draft .bdt {
	border-top: 1px solid #a5a5a5;
}

#recipe .link_list a,
#log .link_list a,
#draft .link_list a,
#post_complete .link_list a,
#delete .link_list a,
#delete_complete .link_list a,
#detail .hidden_recipe .link_list a,
#favorite .link_list a {
	display: inline-block;
	text-decoration: underline;
	font-size: 18px;
	color: #628bff;
}
@media screen and (max-width: 767px) {
	#recipe .farmerlist li,
	#log .farmerlist li,
	#draft .farmerlist li {
		width: 48.5%;
		margin: 0 0 3% 0;
	}
	#recipe .draft .bdt {
		padding-top: 20px;
	}
}

/* 提供農家 */
.input_producer ul {
	display: flex;
	flex-wrap: wrap;
}
.input_producer ul li {
	display: flex;
	width: 47%;
	padding: 10px;
	margin: 10px;
	background: #fff;
	border-radius: 10px;
	color: #000 !important;
}
.input_producer ul li figure {
	width: 25%;
	min-width: 25%;
	margin: 10px;
}
.input_producer ul li figure img {
	width: 100%;
    border-radius: 50%;
}
.input_producer ul li button.choice_producer {
	display: none;
}
.input_producer ul li div.farmer-info {
	margin-left: 10px;
	width: auto;
}
.input_producer ul li div.farmer-info .input_introduction {
	margin-top: 10px;
}
.input_producer ul li .producer_list_remove {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #f8f8f8;
	width: 30px;
	height: 30px;
	border-radius: 30px;
	margin-left: auto;
}
@media screen and (max-width: 767px) {
	.input_producer ul li {
		width: 100%;
	}
}


.free_search_form input {
	max-width: 370px;
}

#edit .form_btn_fixed,
#add .form_btn_fixed {
	display: flex;
    position: fixed;
    bottom: 0;
    z-index: 100;
    width: 100%;
    left: 0;
    background-color: rgba(255,255,255,.8);
    border-top: 1px solid;
	opacity: 0;
	visibility: hidden;
	transition: 0.3s ease opacity, 0.3s ease visibility;
    justify-content: center;
}
#edit .form_btn_fixed.on,
#add .form_btn_fixed.on {
	opacity: 1;
	visibility: visible;
}
#edit .form_btn_fixed div
#add .form_btn_fixed div {
	display: flex;
    width: 100%;
    justify-content: center;
}
@media screen and (min-width: 768px) {
	#edit .form_btn_fixed .btn-sm,
	#add .form_btn_fixed .btn-sm {
		width: 250px !important;
		max-width: 30%;
	}
}


#edit .input_after,
#add .input_after {
	cursor: pointer;
}
#edit .input_after:hover,
#add .input_after:hover {
	opacity: .7;
}

.recipes_list dl._offer_farmer dd ul {
	justify-content: flex-start;
}
#detail .recipes_list dl._offer_farmer dd ul li:not(:nth-of-type(3n)),
#preview .recipes_list dl._offer_farmer dd ul li:not(:nth-of-type(3n)) {
	margin-right: calc((100% - 900px) / 2);
}
#detail .recipes_list dl._offer_farmer dd ul li:nth-of-type(3n+1),
#preview .recipes_list dl._offer_farmer dd ul li:nth-of-type(3n+1) {
	margin-top: 20px;
}
@media screen and (max-width: 767px) {
	#detail .recipes_list dl._offer_farmer dd ul li:not(:nth-of-type(3n)),
	#preview .recipes_list dl._offer_farmer dd ul li:not(:nth-of-type(3n)) {
		margin-right: 0;
	}
	#detail .recipes_list dl._offer_farmer dd ul li:nth-of-type(3n+1),
	#preview .recipes_list dl._offer_farmer dd ul li:nth-of-type(3n+1) {
		margin-top: 0;
	}
}

.my_recipi h2 span {
	font-weight: normal;
}
@media screen and (max-width: 767px) {
	.my_recipi h2 span {
		font-size: 12px;
	}
}

.form-btn-txt {
	font-size: 12px;
	text-align: right;
}

#guideline h1 {
	line-height: 1.4;
}
#guideline ol {
	margin-top: 20px;
}
#guideline .contract a {
	text-decoration: underline;
}
#guideline .contract h3,
#guideline .contract h2 {
	line-height: 1.4;
}
#guideline .sub-area {
	background-color: #fff2cc;
	padding: 20px;
	border-radius: 8px;
	margin: 10px 0;
}
#guideline .sub-area h4 {
	margin-top: 15px;
	margin-bottom: 5px;
}
#guideline .contract li {
	list-style-type: initial;
}

.input-parent:not(.all-err) {
	position: relative;
}
.input-parent:not(.all-err) .err {
	position: absolute;
	top: -20px;
	left: 0;
}
.input-parent:not(.all-err) .err p.red {
    background-color: #e04141;
    position: relative;
    z-index: 3;
    padding: 7px 12px;
    border-radius: 9px;
    color: #FFF;
	display: inline-block;
	width: auto;
}
.input-parent:not(.all-err) .err p.red::after {
	position: absolute;
	content: '';
	border: 7px solid transparent;
	border-left: 17px solid #e04141;
	bottom: -10px;
	left: 6px;
	transform: rotate(62deg);
	z-index: 2;
}
.input-parent:not(.all-err) .err p.red::before {
	position: absolute;
	content: '';
	border: 7px solid transparent;
	border-left: 17px solid #e04141;
	bottom: -12px;
	left: 7px;
	transform: rotate(62deg);
	z-index: 1;
}
#add .form-inputs dl,
#edit .form-inputs dl {
	display: block;
}