@charset "UTF-8";
/* CSS Document */

/*****************共通*****************/
:root {
	--orange: #fda000;
	--sans: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic, "メイリオ", Meiryo, Helvetica, Arial, sans-serif;
	--serif: 游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
	--wrapper: calc(100% - 30px);
	--max_w: 1200px;
}


body {
	font-size: 14px;
	line-height: 1.75;
	font-family: var(--serif);
	color: #333;
	overflow: hidden;
}
	

.wrapper {
	width: 100%;
	margin: 0 auto;
}

h1,h2,h3,h4,h5,h6 {
	line-height: 1.25;
	font-weight: bold;
	font-feature-settings: "palt";
}

strong {
	color: #●;
}

a {
	color: #333;
	text-decoration: none;
	transition: 0.2s;
}

#about a{
	text-decoration: underline;
}

a:hover {
	opacity: 0.7;
}

.bgcl {
	background: #●;
	color: #●;
}

.txtcl {
	color: #●;
}

.txtw {
	color: #fff;
}

/*基本色一覧
本文:		#333;
リンク：	#;
●色:		#;
●色:		#;
●色:		#;
*/



@media screen and (max-width: ●px) {

} /*レスポンシブ*/

@media screen and (min-width: ●px) {

} /*レスポンシブ(PC)*/


/*****************header*****************/
header {
}

header .wrapper {
	width: var(--wrapper);
	height: 100px;
	padding: 0 0 25px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

header .g_nav {
	text-align: right;	
}

header .g_nav li {
	display: inline-block;
}

header .g_nav li:last-child {
	margin-left: 2em;
}

header .g_nav a {
	color: var(--orange);
	font-family: var(--sans);
}


/*****************article*****************/

/*************** #main_visual  ***************/

#main_visual {
	background-image: url("../img/main_bg.png");
	background-repeat: no-repeat; 
	background-position: top center; 
	background-size: cover;
}

#main_visual h2 {
	text-align: center;
	padding: 120px 0;
}

#main_visual img {
	width: var(--wrapper);
	max-width: 810px;
}


/*************** form ***************/

form dl{display: flex;   flex-wrap: wrap; text-align: left; color: #000; margin: 10px 0}
form dt,form dd{width:100%}


input[type="submit"],
.btn{
	font-size: 30px;
	justify-content:center;
	align-items: center;
}

input[type="submit"]:hover,
.btn_1:hover {
	cursor: pointer;
	opacity: 0.8;
}

.btn{
	padding: 35px 15px 70px;
	display: flex; 
	position: relative;
	text-align: center;
	background: var(--orange); 
}

.btn2 {
    background: #333;
    color: #fffaf2;
} 

.btn h2::after {
	display: inline;
	position: absolute;
	bottom: 20px;
	left:0;
	right: 0;
	margin: auto;
	width: 100px;
	content: url(../img/arrow_bk.png);
}


.Plantect{width: 100%;max-width:1300px; background:#f8f5f4;align-items: flex-end;}
.Plantect_img{text-align: center;max-width: 800px;width: 100%;margin: 0 auto;}
section.float_text .Plantect_img img{width:100%;max-width:600px;}
.Plantect h4{font-size:43px; margin:40px auto 20px;}
form{margin: 20px auto;  max-width: 640px; width: 90%;}
section.float_text img.b_logo{max-width: 330px;width: 90%; margin: 0 auto 20px}
input[type="text"],
input[type="email"]{width:100%;height:30px;border: 1px solid #ccc;padding: 8px;}
textarea{width:100%;border: 1px solid #ccc;padding: 8px;}
input[type="submit"],
.float_text h2.btn{color: #fff; cursor: pointer}

#formWrap input[type="button"]:hover,
input[type="submit"]:hover,
.float_text h2.btn:hover{opacity: .7}
.Plantect h3{border:1px solid #7a3327; line-height: 2em;font-size:24px; margin: 30px auto;}
.form_w{ width: 100%; background: #fff;margin: 40px auto 0; text-align: center;}
.accordion .form_w{display: none;}
.form_w h3{font-size:24px; margin: 60px auto 40px; width:96%;}
.form_w span{font-size:12px; color: #aaa}
.form_w p{ margin: 0 0 20px;}
.form_w form{padding: 10px 0 0;}
input[type="submit"]{
	border:none;
	width: 100%; 
	max-width: 310px;
	margin: 30px auto 60px;
	display: block;
	background: var(--orange);
}


.formTable{width:100%;max-width: 640px;font-size: 18px; text-align: left;  border-collapse: collapse;  border-spacing: 0;padding:2px;}


.b_wrapper{ display: flex; justify-content:center;align-items: center;}
.formTable tr {display: flex; flex-wrap: wrap;}
.formTable td{border-bottom:1px solid var(--orange);padding:4px 8px;width:100%; display: block; color: #333}
.formTable th{padding:4px 8px;width:100%;}


h3.thank,
#formWrap h3{font-size: 30px; margin: 50px auto 20px; text-align: center;}
#formWrap p{font-size: 18px;color: #333}

#formWrap input[type="button"],
#formWrap input[type="submit"]{width: 45%;}
#formWrap input[type="button"]{border:1px solid var(--orange); height: 40px; margin:30px auto 60px; font-size: 16px;color: #AAAAAA}
dl.visit{ color: #333; display: flex;flex-wrap: wrap;}
.visit dt{width: 15%; text-align: left}
.visit dd{width: 83%; text-align: left;margin-left: 2%}

/*************** .item  ***************/

.item {
	background: #000;
	color: var(--orange);
	padding: 120px 0 0;
}

.item  .wrapper {
	margin: 0 auto;
	width: var(--wrapper);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}



.item section {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: 100%;
	max-width: 580px;
	margin-bottom: 120px;
}


.item h3 {
	font-size: 24px;
	margin-bottom: 30px;
}

.item figure {
	text-align: center;
	width: 100%;
	max-width: 280px;
	margin-bottom: 30px;
}

.item figure img {
	width: 100%;
}

.item .detail {
	width: 100%;
	max-width: 280px;
	position: relative;
	margin-bottom: 30px;
}

.item .detail .text {
	margin-bottom: 60px;	
}

.item .link {
	position: absolute;
	width: 100%;
	bottom: 0;
}

.item .link a {
	background: var(--orange);
	color: #333;
	font-size: 20px;
	line-height: 45px;
	display:block;
	width: 100%;
	text-align: center;
	border-radius: 10px;
}

/*************** #about ***************/

.bg_gradient {
	background: linear-gradient(to bottom,rgba(253,150,0,1),rgba(253,150,0,.5) 20%, rgba(253,150,0,0) 60%, rgba(253,150,0,0)),url("../img/ingredient_bg.png"); 
	background-repeat: no-repeat; 
	background-position: bottom center; 
	background-size: contain;
	padding: 0 0 65vw;
}


#about {
	padding: 70px 0;
	text-align: center;
	font-size: 22px;
}

#about .wrapper {
	width: var(--wrapper);
}


/*************** #ingredient ***************/

#ingredient h3,
#about h3 {
	font-size: 38px;
	margin-bottom: 30px;
	text-align: center;
}

#ingredient .wrapper {
	width: var(--wrapper);
}

#ingredient .flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}

#ingredient section {
	width: 100%;
	max-width: 370px;
	margin: 0 15px 60px;
	font-size: 16px;
	font-weight: bold;
}

#ingredient h4 {
	background: var(--orange);
	font-family: var(--sans);
	font-size: 24px;
	line-height: 1em;
	padding: 20px 10px;
	margin-bottom: 25px;
	text-align: center;
}

#ingredient .spec {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	align-items: center;
	margin-bottom: 25px;
}


#ingredient .spec img:nth-child(1) {
	width: 100%;
	max-width: 230px;
}

#ingredient .spec img:nth-child(2) {
	width: 100%;
	max-width: 100px;
}

#ingredient .doc {
	width: 100%;
	max-width: 430px;
	text-align: center;
}

#ingredient .doc img {
	box-shadow: 0 0 10px rgba(0,0,0,0.2);
}

#ingredient .doc figcaption {
	margin-top: 25px;
}

/*************** #cuisine ***************/

#cuisine {
	background: var(--orange);	
}

#cuisine .title {
	width: var(--wrapper);
	margin: 0 auto;
	padding: 80px 0 70px;
	text-align: center;
	font-size: 22px;
}
 
#cuisine .sankou {
        width: var(--wrapper);
        margin: 0 auto;
        padding: 30px 0 5px;
        text-align: center;
        font-size: 22px;
}

#cuisine .sankou h3{
	color: #fffaf2;
}

#about .info{
	width:90%;
	margin: 0 auto;
	text-align: left;
}

#cuisine .title h3 {
	padding: 0 0 30px;
}

#cuisine .title h3 img {
	width: 100%;
	max-width: 1071px;
}

#cuisine #case {
	background: #fff;
	padding: 145px 0 0;
	font-size: 16px;
}

#cuisine #case .wrapper {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: var(--wrapper);
	margin: 0 auto;
}



#cuisine #case section {
	width: 100%;
	max-width: 580px;
	margin: 0 0 100px;
}

#cuisine #case img {
	width: 100%;
	margin: 0 0 10px;
}


#cuisine #case h3 {
	text-align: center;
	font-size: 24px;
	margin: 0 0 10px;	
}

#cuisine .ather_case {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
	width: 100%;
}
#cuisine .ather_case li {
	width: 100%;
	max-width: 500px;
	margin: 0 0 100px;
}

#cuisine .ather_case figcaption {	
	line-height: 1.5;
}

/*************** #place  ***************/

#place section {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 100px;
}

#place .detail ,
#place figure {
	width: 100%;
}

#place .detail {
	background: var(--orange);
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 30px 15px;
	font-size: 18px;
}

#place figure img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}

#place .detail .inner {
	width: 100%;
	max-width: 400px;
}

#place .detail h3 {
	font-size: 44px;
	margin-bottom :20px;
}



/*****************footer*****************/
footer {
	background: var(--orange);
	text-align: center;
	padding: 40px 15px;
	font-size: 12px;
	font-family: var(--sans);
}

footer .footer_nav {
	margin-bottom: 15px;
}

footer .footer_nav li {
	display: inline-block;
	margin: 0 1em;
}

footer .footer_nav a {
	color: #333;
}

footer .copyright {
	font-size: 10px;
}

/*************** サブページ ***************/

.sub_page article {
	background: #fffaf2;
	padding: 60px 0;
}

.sub_page .wrapper {
	width: var(--wrapper);
	margin: 0 auto;
}

.sub_page h2 {
	font-size: 24px;
	margin-bottom: 40px;
}

/***************  #access ***************/

 #access figure {
	text-align: center;
	margin: 40px 0;
}

#access figure img {
	width: 100%;
	max-width: 678px;
}

/*************** #trade ***************/


#attention .detail,
#trade dl {
	width: 100%;
	margin: 40px auto;
}

#trade dt {
	font-weight: bold;
}

#trade dd {
	margin-bottom: 10px;
}

/*************** attention ***************/

#attention h3 {
	margin-bottom: 1em;
}

#attention h4 {
	margin: 2em 0 1em;
}

/*************** privacy ***************/

#privacy .detail {
	margin-top: 40px;
}

#privacy h3 {
	margin-bottom: 0.5em;
}

#privacy .detail > section:nth-of-type(n+2) h3 {
	margin-top: 2em;
}

#privacy p,
#privacy ol ,
#privacy ul {
	margin-bottom: 1em;
}

/*************** レスポンシブ(PC) ***************/

@media screen and (min-width: 1200px) {

	header .wrapper {
		max-width: var(--max_w);
	}
	
	#place .detail ,
	#place figure {
		max-width: 50%;
	}	
	
	#place section:nth-child(2) figure {
		order: 2;
	}

	#place section:nth-child(2) .detail {
		order: 1;
	}

	#ingredient .wrapper {
		max-width: var(--max_w);
	}
	
	#ingredient .flex ,
	.item .wrapper {
		justify-content: flex-start;
		width: var(--max_w);
	}

	#ingredient .spec {
		justify-content: space-between;
	}
	.item  .wrapper {
		max-width: var(--max_w);
		justify-content: space-between;
	}
	
	.item section {
		margin: 0 20px 120px 0;
		justify-content: flex-start;
	}
		
	.item figure {
		margin-right: 10px;
	}
	
	#cuisine #case .wrapper {
		max-width: var(--max_w);
		justify-content: space-between;
	}

	.sub_page .wrapper {
		width: var(--max_w);
	}
	
	#access figure img {
		width: 100%;
	}
	
	#privacy .detail,
	#attention .detail,
	#trade dl {
		width: 100%;
		max-width: 730px;
		margin: -45px auto 40px;
	}

	#privacy .detail{
		margin-top: 40px;
	}
	

	#trade dl {
		display: flex;
		flex-wrap: wrap;
	}

	#trade dt {
		width: 180px;
	}

	#trade dd {
		width: calc(100% - 180px);
		margin-bottom: 0;

	}

	/*フォーム*/
	form dt{width:25%}
	form dd{width:75%;}
	.formTable{width:100%;max-width: 640px;font-size: 18px; text-align: left;  border-collapse: collapse;  border-spacing: 0; padding:2px;}
	.formTable td,
	.formTable th{padding:4px 8px;}
	.formTable th{width: 30%;}
	.formTable td{color: #333; width:70%}
	
} /*レスポンシブ(PC)*/
