﻿@charset "utf-8";


/************* reset **************/

* {
	margin: 0;
	padding: 0;
	border: 0;
	outline: none;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

html{
	width: 100%;
	height: 100%;
	font-size: 100%;
}


/************* common **************/

body {
	width: 100%;
	height: 100%;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	font-weight: 500;
	color: #fff;
	line-height: 1.6;
	position: relative;
	background-color: #fffff;
	word-wrap: break-word;
	overflow-wrap: break-word;
	font-size: 100%;
	background-image: url(../img/soil.png);
	background-position: center top;
}

p {
	margin-bottom: 0.5em;
}


a {
	text-decoration: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
}


@media screen and ( min-width: 641px ) {

	.pconly {
		display: block;
	}

	.sponly {
		display: none;
	}

}

@media screen and ( max-width: 640px ) {

	body {
		font-size: 90%;
		background-image: url(../img/soil_sp.png);
	}

	.pconly {
		display: none;
	}

	.sponly {
		display: block;
	}

}


img {
	width: 100%;
}

.note {
	font-size: 80%;
	letter-spacing: normal;
}

h4 {
	font-weight: normal;
	margin-bottom: 0.5em;
}

p.pl {
	float: left;
	text-align: left;
}

p.pr {
	float: right;
	text-align: right;
}


.fadein {
	opacity: 0;
	transform : translate(0, 20px);
	transition : all 1200ms;
}

.fadein.scrollin{
	opacity: 1;
	transform: translate(0, 0);
}

span.sup {
	font-size: 75.5%;
	vertical-align: top;
	position: relative;
	top: -0.1em;
}


/************* cover **************/

.slideshowleft {
	width: 100%;
	height: 1200px;
	overflow: hidden;
	position: relative;
}

.slideshowleft div {
	width: 100%;
	height: 1200px;
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transform : translate(-50px, 0);
	transition: 3s; /* フェードの時間(秒) */
}

.slideshowleft .show {
	opacity: 1;
	z-index: 1;
	transform: translate(0, 0);
}

.slideshowleft div.bg01 {
	background-image: url(../img/slide_01_left.png);
	background-repeat: no-repeat;
	background-position: center top;
}

.slideshowleft div.bg02 {
	background-image: url(../img/slide_02_left.png);
	background-repeat: no-repeat;
	background-position: center top;
}

.slideshowright {
	width: 100%;
	height: 1200px;
	overflow: hidden;
	position: relative;
	margin-top: -1200px;
}

.slideshowright div {
	width: 100%;
	height: 1200px;
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transform : translate(50px, 0);
	transition: 3s; /* フェードの時間(秒) */
}

.slideshowright .show {
	opacity: 1;
	z-index: 1;
	transform: translate(0, 0);
}

.slideshowright div.bg01 {
	background-image: url(../img/slide_01_right.png);
	background-repeat: no-repeat;
	background-position: center top;
}

.slideshowright div.bg02 {
	background-image: url(../img/slide_02_right.png);
	background-repeat: no-repeat;
	background-position: center top;
}


.wrap {
	position: absolute;
	width: 100%;
	top: 0;
	left: 0;
}


.kv_pkg {
	position: relative;
	width: 280px;
	height: 550px;
	margin: 0 auto;
}

.kv_pkg img {
	position: absolute;
	left: 0;
	top: 0;
	opacity: 0;
	transition: 3s; /* フェードの時間(秒) */
}

.kv_pkg .show {
	opacity: 1;
	z-index: 1;
}

@media screen and ( max-width: 640px ) {


	.slideshowleft div.bg01 {
		background-image: url(../img/slide_01_left_sp.png);
		background-size: 100%;
	}

	.slideshowleft div.bg02 {
		background-image: url(../img/slide_02_left_sp.png);
		background-size: 100%;
	}

	.slideshowright div.bg01 {
		background-image: url(../img/slide_01_right_sp.png);
		background-size: 100%;
	}

	.slideshowright div.bg02 {
		background-image: url(../img/slide_02_right_sp.png);
		background-size: 100%;
	}

	.kv_pkg {
		width: 160px;
		height: 300px;
	}

}

#cover {
	width: 100%;
	position: relative;
	overflow: hidden;
	z-index: 2;
}

#cover_inner {
	width: 85%;
	max-width: 750px;
	margin: 0 auto;
	overflow: hidden;
	text-align: center;
	padding: 4em 0;
}

#cover_inner a {
	color: #FFF;
	text-decoration: underline;
}

.cover_logo {
	width: 400px;
	margin: 0 auto 1em;
}

.cover_h2 {
	width: 320px;
	margin-bottom: 3em;
}

.cover_p {
	width: 360px; 
	margin-bottom: 3em;
}

.cover_haba {
	margin-bottom: 2em;
}

@media screen and ( max-width: 640px ) {


	.cover_logo {
		width: 70%;
		margin: 0 auto 1em;
	}

	.cover_h2 {
		width: 65%;
		margin-bottom: 2.5em;
	}

	.cover_p {
		width: 80%;
		margin-bottom: 2.5em;
	}

}


/************* main **************/

.container {
	width: 100%;
	overflow: hidden;
	margin: 0 auto;
}

.container_inner {
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
	overflow: hidden;
	text-align: center;
	padding: 5em 0;
}


@media screen and ( max-width: 640px ) {

	.container {
		background-image: url(../img/soil_sp.png);
	}

	.container_inner {
		padding: 2em 0;
	}
}

.main {
	letter-spacing: -.4em;
	overflow: hidden;
	margin-bottom: 3em;
}


.product_ttl {
	width: 60%;
	max-width: 300px;
	margin-bottom: 1em;
}

.product_label {
	width: 12%;
	position: absolute;
	top: 0;
	right: 6%;
}

.product_icon {
	width: 25%;
	position: absolute;
	bottom: 28.5%;
	left: 2%;
}

.product_icon_arrow {
	width: 25%;
	position: absolute;
	bottom: 66%;
	left: 2%;
}

.product_icon_cal {
	width: 25%;
	position: absolute;
	bottom: 5%;
	left: 2%;
}

.product_icon_disuse {
	width: 25%;
	position: absolute;
	bottom: 49%;
	left: 2%;
}

.boxL {
	width: 55%;
	display: inline-block;
	letter-spacing: normal;
	box-sizing: border-box;
    overflow: hidden;
	position: relative;
	vertical-align: middle;
	margin-right: 5%;
	position: relative;
}

.boxR {
	width: 40%;
	display: inline-block;
	letter-spacing: normal;
	box-sizing: border-box;
    overflow: hidden;
	position: relative;
	vertical-align: middle;
	position: relative;
}


.sozai_ttl {
	width: 75%;
	overflow: hidden;
	margin: 0 auto 2em;
	padding-top: 2em;
}



@media screen and ( max-width: 640px ) {

	.container {
		padding: 3em 0 1em;
	}

	.boxL {
		width: 100%;
		margin-right: 0;
	}

	.boxR {
		width: 90%;
		margin-left: 0;
		padding-top: 1em;
	}

	.sozai_ttl {
		width: 100%;
	}


	.sozai_ttl_img {
		width: 25%;
	}

	.sozai_ttl_copy {
		width: 50%;
		margin: 0;
	}
}

.arrow {
	text-align: center;
	margin-bottom: 3em;
}

.arrow img {
	width: 6%;
}


.texture {
	width: 100%;
	margin: 0 auto;
	background-image: url(../img/paper.jpg);
	background-position: center top;
	overflow: hidden;
	letter-spacing: normal;
	color: #412020;
	padding: 1em 2.5em;
	box-sizing: border-box;
	margin-bottom: 3em;
	text-align: center;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
	border-radius: 20px 20px 20px 20px;
}


.texture_hatomugi {
	border: 5px #bd9d8d solid; 
}

.texture_kabocha {
	border: 5px #edaf41 solid;
}

#texture_img_h img {
	width: 65%;
	margin: 0 auto;
}

#texture_img_k img {
	width: 65%;
	margin: 0 auto;
}

.tabbox {
	width: 100%;
	margin: 0 auto;
	background-image: url(../img/paper.jpg);
	background-position: center top;
	overflow: hidden;
	letter-spacing: normal;
	color: #412020;
	padding: 3em 2.5em 1em 2.5em;
	box-sizing: border-box;
	margin-bottom: 3em;
	text-align: left;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

.hatomugi {
	border-top: 10px #bd9d8d solid;
}

.kabocha {
	border-top: 10px #edaf41 solid;
}

.happy {
	border-top: 10px #e8f1cf solid;
	background-image: url(../img/stripe.jpg);
	text-align: center;
	position: relative;
}

.happy_img {
	width: 95%;
	margin: 0 auto 2em;
}


.happy_hapi {
	position: absolute;
	top: 20%;
	left: 40%;
	width: 20%;
}


@media screen and ( max-width: 640px ) {

	.happy_hapi {
		top: 13%;
		left: 29%;
		width: 37%;
	}

}


h3.tab img {
	display: block;
	width: 50%;
	margin: -5px auto;
}

.tabbox dl {
	width: 100%;
	margin-bottom: 2em;
}

.tabbox dt {
	font-size: 120%;
	margin-bottom: 0.25em;
}

.tabbox dd.head {
	font-size: 105%;
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

hr {
	border-width: 1px 0px 0px 0px;
	border-style: solid;
	border-color: #412020;
	height: 1px;
	margin: 1em 0;
}

.tabbox_mainimg {
	display: block;
	width: 20%;
	float:left;
	margin: 0 2em 2em 0;
}

.tabbox_img {
	width: 20%;
	float: right;
	margin: 0 1em 1em 1em;
}

img.hatomugi_about {
	width: 40%;
}

table.about {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	letter-spacing: normal;
	border-top: 1px #412020 solid;
	border-left: 1px #412020 solid;
	box-sizing: border-box;
	margin-bottom: 2em;
	text-align: left;
	border-spacing: 0;
	background-color: #fff;
	box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.1);
}

table.about td {
	padding: 1.5em 1.5em 1em 1.5em;
	border-bottom: 1px #412020 solid;
	border-right: 1px #412020 solid;
	vertical-align: top;
	text-align: left;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

@media screen and ( max-width: 640px ) {

	.arrow {
		margin-bottom: 1em;
	}

	.arrow img {
		width: 10%;
	}

	.tabbox {
		width: 100%;
		padding: 2em 2em 0 2em;
	}

	.texture {
		width: 100%;
		padding: 1em;
	}

	#texture_img_h img {
		width: 100%;
	}

	#texture_img_k img {
		width: 100%;
	}


	h3.tab img {
		width: 100%;
	}

	.tabbox_mainimg {
		width: 40%;
		float: left;
		margin: 0 2em 1em 0;
	}

	.tabbox_img {
		width: 40%;
		margin: 0 0 1em 1em;
	}

	img.hatomugi_about {
		width: 100%;
	}

}

table.detailbox {
	width: 90%;
	max-width: 640px;
	margin: 5em auto;
	overflow: hidden;
	letter-spacing: normal;
	border-top: 1px #fff solid;
	border-left: 1px #fff solid;
	box-sizing: border-box;
	margin-bottom: 1em;
	text-align: left;
	border-spacing: 0;
	font-size: 90%;
}

table.detailbox td {
	padding: 1.5em 1.5em 1em 1.5em;
	border-bottom: 1px #fff solid;
	border-right: 1px #fff solid;
	vertical-align: top;
	text-align: center;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.table_ttl {
	width: 50%;
}

.table_pkg {
	width: 180px;
	margin: 1em 0;
}


.ingredients {
	width: 90%;
	max-width: 640px;
	text-align: left;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
	margin: 0 auto;
	overflow: hidden;
	font-size: 90%;
}

.ingredients p {
	line-height: 1.4;
	margin-bottom: 1em;
}


@media screen and ( max-width: 640px ) {

	table.detailbox td {
		padding: 1em 1em 0.5em 1em;
	}

	.table_ttl {
		width: 80%;
	}

	.table_pkg {
		width: 35%;
	}

}

.farm {
	width: 100%;
	height: 150px;
	background-image: url(../img/farm.png);
	background-position: center;
}


/************* footer **************/


.attention {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto 5em;
	background-image: url(../img/paper.jpg);
	background-position: center top;
	color: #412020;
	box-sizing: border-box;
	padding: 2em 2em 1em 2em;
	letter-spacing: normal;
	text-align: left;
}

.attention_img {
	width: 200px;
	margin-bottom: 1em;
}

.tel {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
	box-sizing: border-box;
	padding: 2em 0 1.5em;
	border-top: 1px #fff solid;
	border-bottom: 1px #fff solid;
	text-align: center;
	letter-spacing: normal;
}

.telimg {
	width: 40%;
	margin: 1em 0;
}


@media screen and ( max-width: 640px ) {

	.attention {
		margin: 0 auto 3em;
		padding: 2em 2em 1.5em 2em;
	}

	.attention_img {
		width: 60%;
		margin-bottom: 1em;
	}

	.tel {
		margin: 0 auto 3em;
		box-sizing: border-box;
		padding: 1em 0;
	}

	.telimg {
		width: 70%;
		margin: 0.5em 0;
	}

	.tel h2 {
		font-size: 110%;
		margin-bottom: 0.5em;
	}
}


#footer {
	text-align: center;
	overflow: hidden;
	margin-top: 3em;
}

.logo {
	width: 6em;
	margin-bottom: 1em;
}

#footer p {
	font-size: 75%;
	margin-bottom: 5em;
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}


#page-top {
	width: 2.5em;
	position: fixed;
	bottom: 0;
	right: 3em;
}

#page-top img {
	width: 100%;
	opacity: 0.8;
}


@media screen and ( max-width: 640px ) {

	#page-top {
		width: 2em;
		right: 1em;
	}

}



/************* blur **************/

img.blur {
  opacity: 0;
  -moz-transition: -moz-transform 0.5s linear;
  -webkit-transition: -webkit-transform 0.5s linear;
  -o-transition: -o-transform 1s linear;
  -ms-transition: -ms-transform 1s linear;
  transition: transform 1s linear;
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}
.img-blur {
  -webkit-animation-name: imageBlur;
  animation-name: imageBlur;
  opacity: 1;
  transition: .20s;
}

@-webkit-keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(100px);
    -moz-filter: blur(100px);
    -ms-filter: blur(100px);
    -o-filter: blur(100px);
    filter: blur(100px);
  }

  to {
    opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}
@keyframes imageBlur {
  from {
    opacity: 0;
    -webkit-filter: blur(100px);
    -moz-filter: blur(100px);
    -ms-filter: blur(100px);
    -o-filter: blur(100px);
    filter: blur(100px);
  }

  to {
      opacity: 1;
    -webkit-filter: blur(0px);
    -moz-filter: blur(0px);
    -ms-filter: blur(0px);
    -o-filter: blur(0px);
    filter: blur(0px);
  }
}



/************* tabarea **************/

.tab_wrap {
	width: 100%;
	margin: 0 auto 5em;
}

input[type="radio"] {
	display: none;
}

.tab_area {
	font-size: 0;
	letter-spacing: -.4em;
	margin: 0 10px;
}

.tab_area label {
	width: 18%;
	margin: 0;
	display: inline-block;
	color: #999;
	background: #d8cdcc;
	text-align: center;
	letter-spacing: normal;
	cursor: pointer;
	border-radius: 15px 15px 0 0;
}

.panel_area {
	background-image: url(../img/paper.jpg);
	background-position: center top;
	overflow: hidden;
	margin-top: -1px;
}

.tab_panel {
	width: 100%;
	color: #412020;
	padding: 3em 2.5em 1em 2.5em;
	display: none;
	overflow: hidden;
	text-align: left;
	box-sizing: border-box;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}

.tab_panel p {
	font-size: 100%;
}


#tab1:checked ~ .tab_area .tab1_label {
	background-image: url(../img/paper.jpg);
	background-position: center top;
}

#tab1:checked ~ .panel_area #panel1{
	display: block;
}

#tab2:checked ~ .tab_area .tab2_label {
	background-image: url(../img/paper.jpg);
	background-position: center top;
}

#tab2:checked ~ .panel_area #panel2 {
	display: block;
}

#tab3:checked ~ .tab_area .tab3_label {
	background-image: url(../img/paper.jpg);
	background-position: center top;
}

#tab3:checked ~ .panel_area #panel3 {
	display: block;
}


.tab_panel dd {
	margin-bottom: 1em;
}

.disuse_tab02_img {
	width: 50%;
}

.tablewidth {
	width: 80%;
	margin: 0 auto;
	overflow: hidden;
}

.tablewidth p {
	margin-bottom: 0.25em;
}

.tablewidth p.pright {
	text-align: right;
}


table.disusetable {
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
	letter-spacing: normal;
	border-top: 1px #412020 solid;
	border-left: 1px #412020 solid;
	box-sizing: border-box;
	margin-bottom: 0.5em;
	text-align: left;
	border-spacing: 0;
	background-color: #fff;
}

table.disusetable td {
	padding: 1em 1em 0.75em 1em;
	border-bottom: 1px #412020 solid;
	border-right: 1px #412020 solid;
	vertical-align: middle;
	text-align: center;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}


table.disusetable td.kabochabg {
	background-color: #fcecd3;
}

table.disusetable td.hatomugibg {
	background-color: #e9ded8;
}


@media screen and ( max-width: 640px ) {

	.tablewidth {
		width: 100%;
	}

	table.disusetable {
		font-size: 80%;
	}

	.tab_area label {
		width: 33.33%;

	}

	.disuse_tab02_img {
		width: 100%;
	}
}


/************* animation **************/


.animateed { 
	animation-duration: 3s; 
	animation-fill-mode: both; 
	animation-iteration-count:infinite; 
} 

@keyframes swn { 
	0% { transform: rotate(10deg); } 
	50% { transform: rotate(-10deg); } 
	100% { transform: rotate(10deg); } 
}

.swn { 
	transform-origin: bottom center; 
	animation-name: swn; 
}

#hapi {
	width: 150px;
	position: fixed;
	bottom: 0;
	right: 10%;
	z-index: 10000;
}

.wcb-chan {
	background: url(../img/hapi.png) no-repeat;
	width: 150px;
	height: 140px;
	animation: smile 2s steps(4) infinite;
}

@keyframes smile {
  to {
    background-position: -600px 0;
  }
}


@media screen and ( max-width: 640px ) {


	#hapi {
		width: 110px;
		right: 1em;
	}

	.wcb-chan {
		background: url(../img/hapi_sp.png) no-repeat;
		width: 110px;
		height: 105px;
		animation: smile 3s steps(4) infinite;
	}

	@keyframes smile {
	  to {
	    background-position: -440px 0;
	  }
	}

}