@charset "UTF-8";

#t-about {
	background-attachment: fixed;
	background-repeat: repeat;
	background-size: 300px 293px;
	margin-top: 40px;
	padding: 0
}

@media screen and (max-width:800px) {
	#t-about {
		background-attachment: scroll;
		background-size: 200px 193px;
		margin: 20px 0;
		padding: 60px 0 0
	}
}

#t-products .item {
	display: inline-block;
	vertical-align: top;
	width: 30%;
	margin: 0 1%;
	text-align: center
}

@media screen and (max-width:640px) {
	#t-products .item {
		width: 46%;
		margin: 0 1% 40px
	}
}

#t-products .item a {
	display: block;
	padding: 40px 0
}

@media screen and (max-width:640px) {
	#t-products .item a {
		padding: 20px 0
	}
}

#t-products .item a:hover {
	color: #40220f
}

#t-products .item a:hover p img {
	animation: rubberBand 1s infinite
}

#t-products .thum {
	margin: 0 0 20px
}

#t-products .thum img {
	width: 70%
}

#t-products .title {
	font-size: 14px
}

@media screen and (max-width:640px) {
	#t-products .title {
		font-size: 12px;
		line-height: 20px
	}
}

#t-products .title img {
	height: 24px;
	margin: 0 0 10px
}

@media screen and (max-width:640px) {
	#t-products .title img {
		height: 20px
	}
}

#t-products .title img.wline {
	height: 52px
}

@media screen and (max-width:640px) {
	#t-products .title img.wline {
		height: 40px
	}
}

#t-products .banner a{
	padding-top: 0;
	margin-top: -30px !important;
}

@media screen and (max-width:640px) {
	#t-products .banner a{
	margin-top: 0 !important;
	}
}

#t-products .banner img {
    width: 80%;
}

@media screen and (max-width:640px) {
	#t-products .banner img {
		width: 100%;
	}
}

#t-products .banner a:hover img {
	animation: rubberBand 1s infinite
}

#t-info {
	background-color: #eae8e7;
	padding-left: 5%;
	padding-right: 5%
}

#t-info h2 {
	float: left
}

@media screen and (max-width:800px) {
	#t-info h2 {
		float: none;
		text-align: center
	}
}

#t-info ul {
	padding-left: 18em;
	margin: 0 0 20px
}

@media screen and (max-width:800px) {
	#t-info ul {
		padding-left: 0
	}
}

#t-info .btn,
#t-info p {
	margin-bottom: 0
}

#t-madein {
	background-image: url(../images/index/main_slide01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	text-align: center
}

#t-madein h2 {
	width: 70%;
	max-width: 400px;
	margin: 0 auto 60px
}

#t-madein .madein__box {
	width: 32%;
	max-width: 500px;
	align-self: stretch;
	background-color: rgba(255, 255, 255, .8);
	border-radius: 10px;
	padding: 40px 3%
}

@media screen and (max-width:1100px) {
	#t-madein .madein__box {
		width: 48%;
		margin: 0 1% 20px
	}
}

@media screen and (max-width:800px) {
	#t-madein .madein__box {
		width: 100%;
		max-width: 100%;
		margin: 0 0 20px
	}
}

#t-madein .madein__box_wrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: space-between;
	padding: 0 5%
}

@media screen and (max-width:1100px) {
	#t-madein .madein__box_wrap {
		justify-content: center
	}
}

#t-madein .madein__box h3 {
	width: 70%;
	max-width: 150px;
	margin: 0 auto 30px
}

#t-madein .madein__box .txt {
	margin: 0
}

@media screen and (max-width:1100px) {
	#t-madein .madein__box .txt {
		font-size: 14px
	}
}

#t-secret {
	text-align: center
}

#t-secret .secret {
	position: relative;
	width: 90%;
	max-width: 1280px;
	overflow: hidden;
	margin: 0 auto;
	padding: 15px 0 30px
}

#t-secret .secret__item {
	margin: 0 10px
}

#t-secret .slick-arrow {
	width: 40px;
	height: 40px;
	background-color: #fff;
	border-radius: 50%;
	border: solid 1px #40220f;
	position: absolute;
	top: 50%;
	margin: -20px 0 0;
	font-size: 12px;
	line-height: 40px;
	text-align: center;
	cursor: pointer;
	z-index: 10
}

#t-secret .slick-prev {
	left: 30px
}

#t-secret .slick-next {
	right: 30px
}

#t-sns .container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

#t-sns .sns__box {
	width: 30%;
	text-align: center
}

@media screen and (max-width:800px) {
	#t-sns .sns__box {
		width: 100%;
		margin-bottom: 30px
	}
}

#t-sns .sns__box h3 {
	line-height: 40px
}

@media screen and (max-width:640px) {
	#t-sns .sns__box h3 {
		line-height: 30px
	}
}

#t-sns .sns__box .btn {
	width: 180px;
	margin: 0 auto;
	line-height: 30px
}

@media screen and (max-width:640px) {
	#t-sns .sns__box .btn {
		width: 140px
	}
}

#t-sns .sns__box .btn i {
	display: inline-block;
	margin-right: .5em
}

#t-sustainability {
	position: relative;
	background-color: #40220f;
	background-image: url(../images/page/concept_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	color: #fff
}

#t-sustainability .container {
	position: static;
	padding: 200px 6% 0
}

@media screen and (max-width:930px) {
	#t-sustainability .container {
		padding: 180px 6% 0
	}
}

@media screen and (max-width:640px) {
	#t-sustainability .container {
		padding: 120px 3% 0
	}
}

#t-sustainability h2 {
	text-align: left;
	text-shadow: 0 0 5px #000
}

#t-sustainability p {
	text-shadow: 0 0 5px #000
}

#t-sustainability p a {
	text-shadow: none
}

#t-sustainability .logo_sdgs {
	width: 60%;
	max-width: 500px;
	position: absolute;
	left: 0;
	top: 0;
	margin: 0
}

.post {
	padding: 0 10%;
	margin: 0 0 60px
}

@media screen and (max-width:800px) {
	.post {
		padding: 0 5%;
		margin: 0 0 40px
	}
}

.post__title {
	padding: 0 15%
}

@media screen and (max-width:800px) {
	.post__title {
		padding: 0 5%
	}
}

.post__pw {
	text-align: center
}

.post__pw span {
	padding: 0 0 4px;
	border-bottom: solid 2px #40220f
}

@media screen and (max-width:640px) {
	.post__pw span {
		font-size: 10px
	}
}

.post h3 {
	margin: 0 0 .5em;
	color: #a1c303;
	font-size: 20px
}

@media screen and (max-width:640px) {
	.post h3 {
		font-size: 16px
	}
}

.post h4 {
	margin: 0 0 .5em;
	font-size: 18px
}

@media screen and (max-width:640px) {
	.post h4 {
		font-size: 14px
	}
}

.post ol {
	margin: 0 0 1em 2em
}

.post ol li {
	margin: 0 0 1em
}

.post ul {
	margin: 0 0 1em 1.5em
}

.post ul li {
	position: relative;
	margin: 0 0 1em
}

.post ul li:before {
	content: "";
	position: absolute;
	top: 0;
	left: -1em;
	content: "\f0da";
	font-family: FontAwesome
}

.post p {
	margin: 0 0 20px
}

.post em {
	font-style: normal;
	font-size: 12px;
	line-height: 1.2
}

.post hr {
	margin: 3em 0 2em;
	border-bottom: 1px solid #eae8e7
}

.post a {
	color: #a1c303;
	text-decoration: underline
}

.post a:hover {
	color: #40220f
}

.post .wp-caption {
	width: 100% !important
}

.post .wp-caption .wp-caption-text {
	font-size: 12px;
	line-height: 2em;
	opacity: .7;
	text-align: right
}

@media screen and (max-width:640px) {
	.post .wp-caption .wp-caption-text {
		font-size: 11px;
		text-align: left
	}
}

.post img {
	max-width: 100%;
	height: auto;
	display: inline-block
}

@media screen and (max-width:800px) {
	.post img {
		display: block;
		width: 100%;
		margin-left: auto;
		margin-right: auto
	}
}

.post img.alignright {
	float: right;
	margin: 1em 0 1em 1em
}

@media screen and (max-width:800px) {
	.post img.alignright {
		float: none;
		margin: 1em auto
	}
}

.post img.alignleft {
	float: left;
	margin: 1em 1em 1em 0
}

@media screen and (max-width:800px) {
	.post img.alignleft {
		float: none;
		margin: 1em auto
	}
}

.post img.aligncenter {
	display: block;
	margin: 1em auto
}

.post img.alignnone {
	float: none;
	margin: 1em auto
}

@media screen and (max-width:1180px) {
	.post iframe {
		width: 100%
	}
}

@media screen and (max-width:640px) {
	.post iframe {
		width: 100%;
		height: 200px
	}
}

.post table {
	margin: 0 auto 20px;
	text-align: center
}

.post table td,
.post table th {
	padding: 10px
}

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

	.post table td,
	.post table th {
		width: 100%;
		display: block;
		padding: 10px 0;
		margin: 0 auto
	}
}

.post blockquote {
	background-color: #eae8e7;
	padding: 40px 5% 20px;
	margin: 2em 0;
	border-radius: 10px
}

.post_pwform {
	text-align: center
}

.post_pwform__pass,
.post_pwform__submit {
	padding: 10px 5%;
	margin: 10px 0;
	box-sizing: border-box;
	font-size: 12px;
	font-weight: 700;
	font-family: "M PLUS Rounded 1c", メイリオ, sans-serif;
	line-height: 2;
	letter-spacing: .03em
}

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

	.post_pwform__pass,
	.post_pwform__submit {
		margin: 2px 0;
		padding: 8px 5%
	}
}

.post_pwform__pass {
	background: #eae8e7;
	border: solid 2px #fff;
	border-top-left-radius: 30px;
	border-bottom-left-radius: 30px;
	color: #40220f
}

@media screen and (max-width:640px) {
	.post_pwform__pass {
		width: 70%
	}
}

.post_pwform__pass:focus {
	border-color: #40220f
}

.post_pwform__submit {
	background: #40220f;
	border-top-right-radius: 30px;
	border-bottom-right-radius: 30px;
	color: #fff
}

@media screen and (max-width:640px) {
	.post_pwform__submit {
		width: 30%
	}
}

.post_pwform__submit:focus {
	opacity: .8
}

.philosophy {
	background-color: #40220f;
	background-image: url(../images/page/philosophy_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	color: #fff
}

@media screen and (max-width:930px) {
	.philosophy {
		background-position: 24% center
	}
}

@media screen and (max-width:640px) {
	.philosophy {
		padding: 60px 3% 40px
	}
}

.philosophy div {
	float: right;
	padding: 120px 6% 0
}

@media screen and (max-width:930px) {
	.philosophy div {
		float: none;
		padding: 180px 6% 0;
		text-align: center
	}
}

@media screen and (max-width:640px) {
	.philosophy div {
		padding: 80px 3% 0
	}
}

.philosophy h2 {
	text-align: left
}

@media screen and (max-width:930px) {
	.philosophy h2 {
		text-align: center
	}
}

.philosophy p {
	margin: 0;
	font-size: 20px;
	font-weight: 500
}

@media screen and (max-width:800px) {
	.philosophy p {
		font-size: 14px
	}
}

.outline dl {
	width: 640px;
	margin: 0 auto
}

@media screen and (max-width:800px) {
	.outline dl {
		width: 90%
	}
}

.outline__mov div {
	width: 100%;
	margin: 0 auto;
	text-align: center
}

@media screen and (max-width:640px) {
	.outline__mov div iframe {
		width: 100%;
		height: 200px
	}
}

.contact__intro strong {
	display: inline-block;
	margin: 0 20px 0 0;
	font-weight: 800;
	font-size: 24px
}

@media screen and (max-width:800px) {
	.contact__intro strong {
		display: block;
		margin: 0
	}
}

.contact__intro i {
	color: #a1c303
}

.contact__intro a {
	color: #a1c303;
	text-decoration: underline
}

.contact__form dt {
	float: left;
	width: 26%;
	padding: 10px 0;
	line-height: 50px;
	font-weight: 800
}

@media screen and (max-width:800px) {
	.contact__form dt {
		float: none;
		width: 100%;
		padding: 0 2%;
		line-height: 30px
	}
}

.contact__form dt:after {
	content: "";
	display: block;
	clear: both
}

.contact__form dt.must:after {
	content: "\f00c";
	float: right;
	color: #a1c303;
	font-family: FontAwesome
}

@media screen and (max-width:800px) {
	.contact__form dt.must:after {
		float: none;
		display: inline-block;
		margin: 0 0 0 20px
	}
}

.contact__form dd {
	margin: 0;
	padding: 0 0 0 30%
}

@media screen and (max-width:800px) {
	.contact__form dd {
		float: none;
		width: 100%;
		padding: 0 2% 10px
	}
}

.contact__policy {
	width: 100%;
	margin: 20px 0;
	padding: 30px 5%;
	border: solid 1px #eae8e7;
	font-weight: 500
}

.contact__policy p {
	margin: 0
}

.contact__policy a {
	color: #a1c303;
	text-decoration: underline
}

.about {
	padding-bottom: 20px
}

.about__box {
	background-color: #fff;
	width: 50%;
	margin: 0 auto;
	padding: 80px 0;
	text-align: center
}

@media screen and (max-width:800px) {
	.about__box {
		width: 76%
	}
}

.about__copy {
	width: 50%;
	margin: 0 auto 40px
}

@media screen and (max-width:800px) {
	.about__copy {
		width: 80%
	}
}

.about__intro {
	width: 11em;
	margin: 0 auto 40px;
	padding-left: 1em;
	font-size: 22px;
	text-align: left
}

@media screen and (max-width:640px) {
	.about__intro {
		font-size: 18px
	}
}

.about__intro span {
	letter-spacing: .12em
}

.concept {
	background-color: #40220f;
	background-image: url(../images/page/concept_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	color: #fff
}

.concept .container {
	padding: 200px 6% 0
}

@media screen and (max-width:930px) {
	.concept .container {
		padding: 180px 6% 0
	}
}

@media screen and (max-width:640px) {
	.concept .container {
		padding: 120px 3% 0
	}
}

.concept h2 {
	text-align: left
}

.madein {
	background-size: cover;
	background-position: center center;
	color: #fff;
	text-align: center
}

.madein#chile {
	background-image: url(../images/page/about_bg_chile.jpg)
}

.madein#usa {
	background-image: url(../images/page/about_bg_usa.jpg)
}

.madein#japan {
	background-image: url(../images/page/about_bg_jp.jpg)
}

.madein h2 {
	width: 80%;
	max-width: 600px;
	margin: 0 auto 40px
}

@media screen and (max-width:640px) {
	.madein h2 {
		margin: 0 auto 20px
	}
}

.madein__copy {
	font-size: 24px
}

@media screen and (max-width:640px) {
	.madein__copy {
		font-size: 12px
	}
}

.madein__point {
	position: relative;
	width: 90%;
	max-width: 1000px;
	margin: 0 auto 20px
}

.madein__point:after {
	display: none
}

@media screen and (max-width:800px) {
	.madein__point:after {
		content: "\f00d";
		display: block;
		width: 100%;
		position: absolute;
		top: 50%;
		right: 0;
		margin: -25px 0 0;
		font-family: FontAwesome;
		font-size: 50px;
		line-height: 50px;
		text-align: center
	}
}

.madein__point li {
	position: relative;
	width: 20%;
	display: inline-block;
	margin: 0 2%
}

@media screen and (max-width:800px) {
	.madein__point li {
		width: 40%;
		margin: 2%
	}
}

.madein__point li:after {
	content: "\f00d";
	display: block;
	width: 22%;
	position: absolute;
	top: 50%;
	right: -22%;
	margin: -20px 0 0;
	font-family: FontAwesome;
	font-size: 30px;
	line-height: 40px;
	text-align: center
}

@media screen and (max-width:800px) {
	.madein__point li:after {
		display: none
	}
}

.madein__point li.point03L:after,
.madein__point li.point04:after {
	display: none
}

.madein__point li.point03L {
	padding-top: 60px
}

.secret__nav {
	text-align: center;
	margin: 0 0 20px
}

.secret__nav li {
	display: inline-block;
	margin: 0 3px 20px;
	padding: 0 20px;
	background-color: #fff;
	border: solid 2px #40220f;
	border-radius: 30px;
	font-size: 14px;
	line-height: 40px;
	cursor: pointer
}

@media screen and (max-width:800px) {
	.secret__nav li {
		margin: 0 1px 10px;
		padding: 0 15px;
		border-radius: 20px;
		font-size: 12px;
		line-height: 26px
	}
}

.secret__nav li.active,
.secret__nav li:hover {
	background-color: #40220f;
	color: #fff
}

.secret__box {
	margin: 0 0 40px;
	position: relative
}

.secret__item {
	width: 32%;
	display: block;
	float: left;
	position: relative;
	background-color: #fff;
	margin-top: 10px;
	margin-right: 1%;
	text-align: center;
	vertical-align: top
}

@media screen and (max-width:800px) {
	.secret__item {
		width: 48%;
		margin-right: 2%
	}
}

@media screen and (max-width:640px) {
	.secret__item {
		width: 100%;
		margin-top: 20px
	}
}

.secret__item a {
	display: block
}

.secret__item a:hover {
	opacity: .8;
	color: #40220f
}

.secret__item a.new:after {
	content: "NEW";
	background-color: #40220f;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	position: absolute;
	top: -10px;
	left: -10px;
	color: #fff;
	font-size: 11px;
	font-family: Ubuntu, sans-serif;
	line-height: 40px;
	text-align: center
}

.secret__item .thum {
	margin: 0
}

.secret__item .thum img {
	width: 100%;
	height: auto
}

.secret__item h3 {
	height: 5em;
	margin: 20px 0;
	padding: 0 15px;
	overflow: hidden;
	font-size: 14px;
	line-height: 1.5em;
	text-align: center
}

.secret__item h3 span {
	display: block;
	color: #a1c303;
	font-size: 12px;
	line-height: 2em
}

.products__thum {
	width: 30%;
	margin: 0;
	text-align: center
}

@media screen and (max-width:800px) {
	.products__thum {
		float: none;
		width: 50%;
		margin: 0 auto 20px
	}
}

.products__thum .products_img img:hover {
	animation: rubberBand 1s infinite;
}

.products__thum .logo {
	width: 50%;
	margin: 0 auto 30px
}

.products__txt {
	width: 65%
}

@media screen and (max-width:800px) {
	.products__txt {
		float: none;
		width: 60%;
		margin: 0 auto 20px
	}
}

@media screen and (max-width:640px) {
	.products__txt {
		width: 100%
	}
}

.products__txt h3 {
	margin: 0 0 20px
}

@media screen and (max-width:800px) {
	.products__txt h3 {
		text-align: center
	}
}

.products__txt h3 img {
	width: auto;
	height: 36px;
	line-height: 36px
}

@media screen and (max-width:1100px) {
	.products__txt h3 img {
		height: 24px;
		line-height: 24px
	}
}

@media screen and (max-width:800px) {
	.products__txt h3 img {
		display: block;
		margin: 0 auto
	}
}

.products__txt h3 .flag {
	display: inline-block;
	width: 30px;
	height: 20px;
	margin: 0 0 0 25px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	vertical-align: middle
}

@media screen and (max-width:800px) {
	.products__txt h3 .flag {
		margin: 20px auto 0;
		text-align: center
	}
}

.products__txt h3 .flag+span {
	margin-left: 15px
}

.products__txt h3 .flag.chile {
	background-image: url(../images/common/icon_chile.png)
}

.products__txt h3 .flag.usa {
	background-image: url(../images/common/icon_usa.png)
}

.products__txt h3 .flag.jp {
	background-image: url(../images/common/icon_jp.png)
}

.products__txt h3 .flag.kor {
	background-image: url(../images/common/icon_korea.png)
}

.products__txt h3 .flag.nzl {
	background-image: url(../images/common/icon_nzl.png)
}

.products__txt h4 {
	margin: 0 0 20px;
	font-size: 20px
}

@media screen and (max-width:800px) {
	.products__txt h4 {
		text-align: center
	}
}

.products__txt p {
	font-size: 18px
}

@media screen and (max-width:800px) {
	.products__txt p {
		font-size: 14px;
		text-align: center
	}
}

.products__txt span .btn{
	display: inline-block;
}

@media screen and (max-width:800px) {
	.products__txt span .btn{
	display: inline-block;
	}
}

.products__txt span a{
	margin-right: 20px;
}

.products__info dd,
.products__info dt {
	float: left;
	margin: 0 0 15px;
	font-size: 14px
}

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

	.products__info dd,
	.products__info dt {
		margin: 0 0 10px;
		font-size: 12px
	}
}

.products__info dt {
	width: 15%;
	background-color: #40220f;
	border-radius: 20px;
	margin-right: 2%;
	color: #fff;
	text-align: center
}

@media screen and (max-width:850px) {
	.products__info dt {
		width: 30%;
		margin-right: 5%
	}
}

.products__info dd {
	width: 30%
}

@media screen and (max-width:850px) {
	.products__info dd {
		width: 65%
	}
}

@media screen and (max-width:800px) {
	#kiwikko section {
		position: relative;
		padding-bottom: 80px
	}

	#kiwikko .nomgb {
		position: absolute;
		left: 50%;
		bottom: 0;
		margin-left: -100px
	}
}

[class^=bg-products] {
	position: relative;
	padding: 100px 0 0
}

@media screen and (max-width:800px) {
	[class^=bg-products] {
		padding: 60px 0 0;
		margin-left: 0;
		margin-right: 0
	}
}

[class^=bg-products]:before {
	content: "";
	width: 100%;
	height: 400px;
	background-repeat: repeat;
	background-size: 300px 293px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1
}

@media screen and (max-width:800px) {
	[class^=bg-products]:before {
		height: 300px;
		background-size: 200px 193px
	}
}

.bg-products-g:before {
	background-image: url(../images/common/pattern_g.png)
}

.bg-products-d:before {
	background-image: url(../images/common/pattern_d.png)
}

.bg-products-k:before {
	background-image: url(../images/common/pattern_k.png)
}

.bg-products-j:before {
	background-image: url(../images/common/pattern_j.png)
}

.bg-products-jin:before {
	background-image: url(../images/common/pattern_jin.png)
}

.bg-products-w:before {
	background-image: url(../images/common/pattern_w.png)
}

.bg-products-avo:before {
	background-image: url(../images/common/pattern_avo.png)
}

.bg-products-sw:before {
	background-image: url(../images/common/pattern_sw.png)
}

.store__list {
	margin: 0 0 20px;
	text-align: center
}

.store__list li {
	width: 30%;
	display: inline-block;
	border: solid 2px #fff;
	margin: 10px 1%;
	color: #fff;
	line-height: 40px
}

@media screen and (max-width:800px) {
	.store__list li {
		width: 47%;
		margin: 5px 1%
	}
}

.store p {
	display: block;
	margin: 0;
	color: #fff;
	text-align: center
}

.faq dt {
	font-size: 24px
}

@media screen and (max-width:640px) {
	.faq dt {
		font-size: 18px
	}
}

.faq dt:before {
	content: "Q.";
	display: inline-block;
	margin: 0 10px 0 0;
	font-family: Ubuntu, sans-serif
}

.faq dd {
	position: relative;
	margin: .5em 0 40px;
	padding: 0 0 0 2.6em
}

.faq dd:before {
	content: "A.";
	position: absolute;
	top: 0;
	left: 0;
	color: #a1c303;
	font-size: 24px;
	font-family: Ubuntu, sans-serif;
	line-height: 30px
}

@media screen and (max-width:640px) {
	.faq dd:before {
		font-size: 18px;
		line-height: 20px
	}
}

.jpn__font {
	font-family: "Shippori Mincho", serif
}

.jpn__font .btn {
	font-family: "Shippori Mincho", serif
}

.jpn__kv {
	background-size: cover;
	background-position: center center;
	background-image: url(../images/page/about_bg_jp.jpg);
	padding: 200px 0;
	text-align: center
}

@media screen and (max-width:640px) {
	.jpn__kv {
		padding: 100px 0
	}
}

.jpn__kv h2 {
	width: 80%;
	max-width: 600px;
	margin: 0 auto 1em
}

@media screen and (max-width:640px) {
	.jpn__kv h2 {
		margin: 0 auto 20px
	}
}

.jpn__kv h3 {
	font-size: 24px;
	color: #fff
}

@media screen and (max-width:640px) {
	.jpn__kv h3 {
		font-size: 12px
	}
}

.jpn__msg {
	text-align: center
}

@media screen and (max-width:640px) {
	.jpn__msg {
		width: 90%;
		margin: 0 auto
	}
}

.jpn__msg h2 {
	margin: 0 0 1.5em;
	font-size: 40px;
	font-weight: 600
}

@media screen and (max-width:640px) {
	.jpn__msg h2 {
		font-size: 22px
	}
}

.jpn__msg p {
	font-size: 20px;
	line-height: 2.5em
}

@media screen and (max-width:640px) {
	.jpn__msg p {
		font-size: 14px
	}
}

.jpn__about_box {
	width: 70%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	margin: 0 auto 5em
}

@media screen and (max-width:1180px) {
	.jpn__about_box {
		width: 100%
	}
}

@media screen and (max-width:640px) {
	.jpn__about_box {
		width: 90%;
		margin: 0 auto 2em
	}
}

.jpn__about_box img {
	width: 40%;
	height: auto
}

@media screen and (max-width:640px) {
	.jpn__about_box img {
		width: 90%
	}
}

.jpn__about_box .txt {
	width: 50%
}

@media screen and (max-width:640px) {
	.jpn__about_box .txt {
		width: 100%
	}
}

.jpn__about_box .txt h3 {
	margin: 0 0 1em;
	font-size: 24px;
	font-weight: 600
}

@media screen and (max-width:800px) {
	.jpn__about_box .txt h3 {
		font-size: 18px
	}
}

.jpn__about_box .txt h3 span {
	font-size: 50px;
	margin-right: .5em
}

@media screen and (max-width:800px) {
	.jpn__about_box .txt h3 span {
		font-size: 30px
	}
}

.jpn__about_box .txt h3 a {
	text-decoration: underline
}

.jpn__about01 .txt {
	margin-top: 6em
}

@media screen and (max-width:640px) {
	.jpn__about01 .txt {
		margin-top: 1em
	}
}

.jpn__about02 {
	flex-direction: row-reverse
}

.jpn__about02 img {
	width: 45%;
	height: auto
}

@media screen and (max-width:640px) {
	.jpn__about02 img {
		width: 95%;
		margin: 0 0 1em
	}
}

.jpn__about02 .txt {
	width: 50%
}

@media screen and (max-width:640px) {
	.jpn__about02 .txt {
		width: 100%
	}
}

.jpn__about03 {
	margin: 0 auto
}

.jpn__about03 .txt {
	margin-bottom: 10em
}

@media screen and (max-width:640px) {
	.jpn__about03 .txt {
		margin: -5em 0 0
	}
}

.jpn__spmsg {
	background-color: #ecd33f
}

.jpn__spmsg .container {
	display: flex;
	flex-direction: row-reverse;
	flex-wrap: wrap;
	position: relative
}

@media screen and (max-width:800px) {
	.jpn__spmsg .container {
		flex-direction: row
	}
}

.jpn__spmsg .container:after,
.jpn__spmsg .container:before {
	content: "";
	position: absolute;
	background-size: cover;
	background-position: center center;
	background-image: url(../images/page/jpn_dot.png);
	z-index: -1
}

.jpn__spmsg .container:before {
	width: 150px;
	height: 150px;
	left: -10%;
	top: -5%
}

@media screen and (max-width:800px) {
	.jpn__spmsg .container:before {
		width: 100px;
		height: 100px;
		left: 0;
		top: auto;
		bottom: 35%
	}
}

.jpn__spmsg .container:after {
	width: 200px;
	height: 200px;
	right: -20%;
	bottom: -5%
}

@media screen and (max-width:800px) {
	.jpn__spmsg .container:after {
		width: 150px;
		height: 150px;
		right: 0;
		bottom: 0
	}
}

.jpn__spmsg h2 {
	display: none
}

@media screen and (max-width:800px) {
	.jpn__spmsg h2 {
		display: block
	}
}

.jpn__spmsg h3 {
	width: 140px;
	margin-top: -80px
}

@media screen and (max-width:800px) {
	.jpn__spmsg h3 {
		display: none
	}
}

.jpn__spmsg_txt {
	background-color: #fff;
	padding: 40px;
	height: 400px;
	margin: 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl
}

@media screen and (max-width:1180px) {
	.jpn__spmsg_txt {
		margin: 0 0 2em
	}
}

@media screen and (max-width:800px) {
	.jpn__spmsg_txt {
		width: 100%;
		height: auto;
		padding: 30px 10%;
		-ms-writing-mode: lr-tb;
		writing-mode: inherit
	}
}

.jpn__spmsg_txt span {
	-webkit-text-combine: horizontal;
	-ms-text-combine-horizontal: all;
	text-combine-upright: all
}

.jpn__spmsg_profile {
	width: 200px;
	margin: 0 40px 0 0;
	text-align: center
}

@media screen and (max-width:1180px) {
	.jpn__spmsg_profile {
		width: 100%;
		margin: 0 auto
	}
}

.jpn__spmsg_profile img {
	width: 150px;
	border: 5px solid #fff;
	border-radius: 50%
}

.jpn__spmsg_profile .name {
	margin: 1em 0;
	font-size: 14px
}

.jpn__spmsg_profile .name strong {
	font-size: 24px
}

@media screen and (max-width:800px) {
	.jpn__spmsg_profile .name strong {
		font-size: 18px
	}
}

.jpn__secret {
	background-color: #a1c303
}

.bg-jpn {
	position: relative
}

@media screen and (max-width:800px) {
	.bg-jpn {
		margin-left: 0;
		margin-right: 0
	}
}

.bg-jpn:before {
	content: "";
	width: 100%;
	height: 400px;
	background-image: url(../images/page/jpn_bg01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1
}

@media screen and (max-width:800px) {
	.bg-jpn:before {
		height: 300px
	}
}

.bg-jpn__title {
	position: relative;
	width: 80%;
	max-width: 400px;
	margin: 0 auto;
	padding: 3em 0;
	color: #fff;
	text-align: center;
	z-index: 3
}

@media screen and (max-width:800px) {
	.bg-jpn__title {
		max-width: 300px
	}
}

.bg-jpn__title img {
	margin: 0 0 1em
}

.bg-jpn__title a {
	color: #fff
}

.bg-jpn .message {
	border: 15px solid #a1c303;
	margin: 0 auto 3em
}

.bg-jpn .message p {
	text-align: center
}

.bg-jpn .message .name {
	margin: 0
}

.bg-jpn .message .name img {
	width: 150px;
	margin: 0 auto 1em
}

.bg-jpn .message .name strong {
	font-size: 24px
}

@media screen and (max-width:800px) {
	.bg-jpn .message .name strong {
		font-size: 18px
	}
}

.bg-jpn .about__diagram {
	margin: 0 0 5em;
	text-align: center
}

.bg-jpn .about__diagram img {
	width: 80%;
	margin: 2em auto
}

@media screen and (max-width:800px) {
	.bg-jpn .about__diagram img {
		width: 100%
	}
}

.bg-jpn .about .jpn__about_box {
	width: 100%;
	align-items: flex-start
}

.bg-jpn .about .jpn__about_box img {
	width: 40%
}

@media screen and (max-width:1180px) {
	.bg-jpn .about .jpn__about_box img {
		width: 100%
	}
}

.bg-jpn .about .jpn__about_box .txt {
	width: 55%;
	padding: 0
}

@media screen and (max-width:1180px) {
	.bg-jpn .about .jpn__about_box .txt {
		width: 100%;
		margin: 1em 0
	}
}

.bg-jpn .about .jpn__about_box .txt p {
	margin: 0 0 .75em
}

.bg-jpn .about .jpn__about03 {
	margin-bottom: 10em
}

@media screen and (max-width:1180px) {
	.bg-jpn .about .jpn__about03 .txt {
		margin: -8em 0 0
	}
}

.bg-jpn .about__pickup {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between
}

.bg-jpn .about__pickup_box {
	width: 45%
}

@media screen and (max-width:800px) {
	.bg-jpn .about__pickup_box {
		width: 100%
	}
}

.bg-jpn .about__pickup_box h3 {
	font-size: 24px;
	margin: 1em 0
}

@media screen and (max-width:800px) {
	.bg-jpn .about__pickup_box h3 {
		font-size: 18px
	}
}

.bg-jpn .about__pickup_box p {
	margin: 0 0 1em
}

.bg-jpn .about__pickup_box p span a {
	text-decoration: underline
}

.jpn__kiwi {
	width: 80%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 5em
}

@media screen and (max-width:1100px) {
	.jpn__kiwi {
		width: 100%
	}
}

.jpn__kiwi_box {
	width: 32%;
	background: #ffefbc;
	border-radius: 10px;
	padding: 30px
}

@media screen and (max-width:800px) {
	.jpn__kiwi_box {
		width: 90%;
		margin: 0 auto 1em
	}
}

.jpn__kiwi_box h4 {
	margin: 1em 0;
	font-size: 18px;
	text-align: center
}

.jpn__kiwi_box .img {
	border: 5px solid #fff
}

.jpn__kiwi_box .txt {
	font-size: 14px
}

.jpn__kiwi_box .info {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 1em 0 0;
	font-size: 14px
}

.jpn__kiwi_box .info dt {
	width: 25%;
	margin: 0 0 .5em;
	background: #fff;
	border-radius: 20px;
	text-align: center
}

.jpn__kiwi_box .info dd {
	width: 70%;
	margin: 0 0 .5em
}

.jpn__kiwi03 .img {
	width: 70%;
	margin: 0 auto
}

.jpn__kiwi_photo {
	width: 100%
}

.jpn__kiwi_photo li {
	display: block;
	margin: 0 10px;
	text-align: center;
	font-size: 14px
}

@media screen and (max-width:800px) {
	.jpn__kiwi_photo li {
		margin: 0 5px;
		font-size: 12px
	}
}

.ec__logo {
	width: 300px;
	margin: 0 auto 40px
}

@media screen and (max-width:800px) {
	.ec__logo {
		width: 200px;
		margin: 0 auto 20px
	}
}

.ec__logo a {
	display: block
}

.ec__logo a:hover {
	opacity: .8
}

.ec__top {
	width: 400px;
	margin: 0 auto 40px;
	text-align: center
}

@media screen and (max-width:800px) {
	.ec__top {
		width: 300px;
		margin: 20px auto
	}
}

@media screen and (max-width:640px) {
	.ec__top {
		width: 240px
	}
}

.ec__top h2 {
	margin: 0 0 20px
}

.ec__top p {
	font-size: 20px
}

@media screen and (max-width:800px) {
	.ec__top p {
		font-size: 16px
	}
}

.ec__guide h4 {
	margin: 0 0 30px;
	font-size: 16px;
	line-height: 24px
}

@media screen and (max-width:640px) {
	.ec__guide h4 {
		margin: 0 0 20px;
		font-size: 14px;
		text-align: center
	}
}

.ec__guide h4 span {
	display: inline-block;
	background-color: #40220f;
	padding: 0 30px;
	margin: 0 20px 0 0;
	border-radius: 15px;
	color: #fff
}

@media screen and (max-width:640px) {
	.ec__guide h4 span {
		display: block;
		margin: 0 0 10px
	}
}

.ec__guide h4 strong {
	font-size: 20px
}

.ec__guide a:not(.btn) {
	text-decoration: underline
}

.ec__guide a:not(.btn):hover {
	color: #108c49
}

.ec__guide_top {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #f5f7f7;
	padding: 60px 5%
}

@media screen and (max-width:800px) {
	.ec__guide_top {
		padding: 30px 5%
	}
}

.ec__guide_top h3 {
	margin: 0 0 15px;
	font-size: 20px
}

@media screen and (max-width:640px) {
	.ec__guide_top h3 {
		margin: 0 0 10px;
		font-size: 16px
	}
}

.ec__guide_top .nomgb {
	width: 100%
}

.ec__guide_box {
	width: 45%
}

@media screen and (max-width:800px) {
	.ec__guide_box {
		width: 100%
	}
}

.ec__guide_nav {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center
}

.ec__guide_nav li {
	width: 30%
}

@media screen and (max-width:800px) {
	.ec__guide_nav li {
		width: 49%;
		margin: 0 0 10px
	}
}

.ec__guide_nav a {
	display: block;
	padding: 10px 16px;
	background-color: #f5f7f7;
	border-radius: 25px;
	text-align: center;
	line-height: 30px
}

@media screen and (max-width:640px) {
	.ec__guide_nav a {
		padding: 5px 10px;
		border-radius: 20px;
		font-size: 11px;
		line-height: 30px;
		letter-spacing: normal
	}
}

.ec__guide_nav a:after {
	float: right;
	content: "\f107";
	font-size: 14px;
	font-family: FontAwesome;
	font-weight: 400
}

.ec__guide_nav a:hover {
	background-color: #108c49;
	color: #fff
}

.ec__guide_logo {
	margin: 0 0 20px
}

@media screen and (max-width:640px) {
	.ec__guide_logo {
		text-align: center
	}
}

.ec__guide_logo img {
	height: 30px
}

@media screen and (max-width:640px) {
	.ec__guide_logo img {
		height: 24px
	}
}

.ec__guide_att {
	margin: 15px 0 40px 1em
}

.ec__guide_att li {
	font-size: 11px;
	font-weight: 500
}

.ec__guide_att li:before {
	content: "※";
	margin: 0 0 0 -1em
}

.ec__itemlist {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	width: 100%
}

.ec__itemlist .item {
	width: 30%;
	margin: 0 1.5% 20px
}

@media screen and (max-width:800px) {
	.ec__itemlist .item {
		width: 48%
	}
}

@media screen and (max-width:640px) {
	.ec__itemlist .item {
		width: 80%
	}
}

.ec__itemlist .item a {
	display: block
}

.ec__itemlist .item a:hover {
	opacity: .8;
	color: #108c49
}

.ec__itemlist .itemTitle h2 {
	font-size: 16px;
	line-height: 1.6
}

@media screen and (max-width:640px) {
	.ec__itemlist .itemTitle h2 {
		font-size: 14px
	}
}

.ec__itemlist .itemDetail {
	color: #108c49;
	font-size: 18px;
	font-family: Ubuntu, sans-serif
}

@media screen and (max-width:640px) {
	.ec__itemlist .itemDetail {
		font-size: 12px
	}
}

.ec__itemlist .itemPrice span {
	font-size: 12px
}

.ec__itemlist .itemSend {
	display: inline-block;
	background: #f5f7f7;
	padding: 0 1em;
	margin: .5em 0;
	color: #40220f;
	font-size: 12px
}

.ec__itemlist .itemImg {
	position: relative;
	margin: 0 0 10px
}

.ec__itemlist .comingSoon {
	color: #e83828;
	font-size: 14px
}

.ec__itemlist .soldout_cover {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%
}

.ec__itemlist .soldout_cover p {
	margin: 0;
	font-size: 18px;
	font-family: Ubuntu, sans-serif;
	text-align: center
}

@media screen and (max-width:640px) {
	.ec__itemlist .label_image {
		width: 40px;
		height: 40px
	}
}

.ec__itempage .item {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 0 60px
}

.ec__itempage .itemImg {
	width: 50%
}

@media screen and (max-width:800px) {
	.ec__itempage .itemImg {
		width: 100%;
		margin: 0 auto 20px
	}
}

.ec__itempage .itemImg #slideImgPager .mCSB_container {
	display: flex;
	flex-wrap: wrap;
	width: 100%
}

.ec__itempage .itemImg #slideImgPager li {
	width: 18%;
	max-width: 70px;
	margin: 5px 1% 0
}

.ec__itempage .itemImg #slideImgPager img {
	width: 100%;
	height: auto
}

.ec__itempage .itemImg .imgBox .btn {
	max-width: 100%;
	margin: 0
}

.ec__itempage .purchase {
	width: 45%
}

@media screen and (max-width:800px) {
	.ec__itempage .purchase {
		width: 100%
	}
}

.ec__itempage .purchase .itemTitle {
	margin: 15px 0;
	font-size: 28px;
	line-height: 1.6
}

@media screen and (max-width:800px) {
	.ec__itempage .purchase .itemTitle {
		margin: 10px 0;
		font-size: 20px
	}
}

.ec__itempage .purchase .itemPrice {
	margin: 0 0 20px
}

.ec__itempage .purchase .itemPrice h2 {
	color: #108c49;
	font-size: 20px;
	font-family: Ubuntu, sans-serif
}

@media screen and (max-width:640px) {
	.ec__itempage .purchase .itemPrice h2 {
		font-size: 16px
	}
}

.ec__itempage .purchase .itemPrice h2 span {
	font-size: 12px
}

.ec__itempage .purchase .itemPrice span {
	color: #108c49
}

.ec__itempage .purchase .itemPrice.itemPrice_soldout h2 {
	text-decoration: line-through
}

.ec__itempage .purchase .itemPrice .comingSoon {
	color: #e83828;
	font-size: 14px
}

.ec__itempage .purchase #itemAttention {
	margin: 0 0 20px
}

.ec__itempage .purchase #itemAttention p {
	margin: 0;
	font-size: 11px;
	font-weight: 500
}

.ec__itempage .purchase #itemAttention a {
	text-decoration: underline
}

.ec__itempage .purchase #itemAttention a:hover {
	color: #108c49
}

.ec__itempage .purchase #itemSelect {
	margin: 0 0 20px
}

.ec__itempage .purchase #itemSelect #amountSelectWrap {
	display: flex;
	flex-wrap: wrap;
	align-items: center
}

.ec__itempage .purchase #itemSelect #amountSelect {
	margin: 0 0 0 10px;
	line-height: 20px
}

.ec__itempage .purchase .purchaseButton {
	margin: 0 0 20px
}

.ec__itempage .purchase .purchaseButton .purchaseButton__btn--addToCart {
	display: block;
	border-radius: 30px;
	width: 100%;
	background: #108c49;
	margin: 20px 0;
	padding: 10px 0;
	cursor: pointer;
	color: #fff;
	font-size: 20px;
	line-height: 40px;
	text-align: center;
	font-family: "M PLUS Rounded 1c", メイリオ, sans-serif;
	font-weight: 600
}

@media screen and (max-width:640px) {
	.ec__itempage .purchase .purchaseButton .purchaseButton__btn--addToCart {
		font-size: 16px;
		line-height: 30px
	}
}

.ec__itempage .purchase .purchaseButton .purchaseButton__btn--addToCart:hover {
	transition: .4s ease-in-out;
	background: #a1c303;
	color: #fff
}

.ec__itempage .purchase .purchaseButton .purchaseButton__btn--noItem {
	display: block;
	border: 1px solid #108c49;
	padding: 10px 0;
	color: #108c49;
	font-size: 12px;
	text-align: center
}

.ec__itempage .purchase .purchaseButton .purchaseButton__btn:hover {
	opacity: .8
}

.ec__itempage .purchase .shareButtons {
	display: flex;
	flex-wrap: wrap;
	margin: 10px 0
}

.ec__itempage .purchase .shareButtons>div {
	margin-right: 4px
}

.ec__itempage .purchase #reportBtn a {
	color: #ccc;
	font-size: 11px;
	font-weight: 500
}

.ec__itempage .itemDescription {
	width: 100%;
	margin: 20px 0
}

.ec__itempage .itemDescription a {
	text-decoration: underline
}

.ec__contact h1,
.ec__contact h2,
.ec__law h1,
.ec__law h2,
.ec__privacy h1,
.ec__privacy h2 {
	width: 100%;
	margin: 0 0 30px;
	font-size: 30px;
	font-weight: 700;
	line-height: 2;
	text-align: center
}

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

	.ec__contact h1,
	.ec__contact h2,
	.ec__law h1,
	.ec__law h2,
	.ec__privacy h1,
	.ec__privacy h2 {
		font-size: 26px
	}
}

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

	.ec__contact h1,
	.ec__contact h2,
	.ec__law h1,
	.ec__law h2,
	.ec__privacy h1,
	.ec__privacy h2 {
		font-size: 18px;
		line-height: 1.8
	}
}

.ec__contact h1:before,
.ec__contact h2:before,
.ec__law h1:before,
.ec__law h2:before,
.ec__privacy h1:before,
.ec__privacy h2:before {
	display: block;
	font-size: 14px;
	font-family: Ubuntu, sans-serif;
	line-height: 20px
}

.ec__contact h3,
.ec__law h3,
.ec__privacy h3 {
	display: inline-block;
	background-color: #40220f;
	margin: 30px 0;
	padding: 0 30px;
	border-radius: 15px;
	color: #fff;
	font-size: 16px;
	line-height: 24px
}

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

	.ec__contact h3,
	.ec__law h3,
	.ec__privacy h3 {
		margin: 15px 0;
		font-size: 14px;
		text-align: center
	}
}

.ec__contact p,
.ec__law p,
.ec__privacy p {
	margin: 0
}

.ec__contact .main {
	height: auto
}

.ec__contact .inquirySection {
	padding: 0
}

.ec__contact .inquirySection p {
	text-align: center
}

.ec__contact .inquirySection dt span {
	margin: 0 0 0 5px;
	color: #108c49
}

.ec__contact .inquirySection dd {
	margin: 0 0 20px
}

.ec__contact .inquirySection input {
	width: 100%
}

.ec__contact .inquirySection textarea {
	width: 100%;
	height: 200px
}

.ec__contact .inquirySection .control-panel {
	margin: 40px auto
}

.ec__contact .inquirySection #buttonLeave {
	display: block;
	width: 400px;
	padding: 5px 0;
	margin: 20px auto;
	background: #fff;
	border: solid 2px #40220f;
	cursor: pointer;
	font-size: 16px;
	font-family: "M PLUS Rounded 1c", メイリオ, sans-serif;
	font-weight: 600;
	line-height: 30px;
	text-align: center
}

@media screen and (max-width:640px) {
	.ec__contact .inquirySection #buttonLeave {
		font-size: 12px
	}
}

.ec__contact .inquirySection #buttonLeave:hover {
	background: #40220f;
	color: #fff;
	transition: .4s ease-in-out
}

.ec__privacy h2:before {
	content: "PRIVACY POLICY"
}

.ec__privacy .privacy_intro,
.ec__privacy dd {
	margin: 0 0 40px
}

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

	.ec__privacy .privacy_intro,
	.ec__privacy dd {
		margin: 0 0 20px
	}
}

.ec__privacy dt {
	font-size: 18px
}

@media screen and (max-width:640px) {
	.ec__privacy dt {
		font-size: 16px
	}
}

.ec__law h2:before {
	content: "LAW"
}

#baseMenu {
	position: absolute;
	top: 20px;
	right: 20px
}

#baseMenu ul {
	display: flex;
	flex-wrap: wrap
}

#baseMenu li {
	width: 24px;
	margin: 0 15px
}

@media screen and (max-width:640px) {
	#baseMenu li {
		width: 20px;
		margin: 0 5px
	}
}

#baseMenu a {
	display: block
}

#baseMenu a:hover {
	opacity: .8
}

#baseMenu img {
	width: 100%;
	height: auto
}