@charset "utf-8";
/* CSS Document */

html {
	scroll-behavior: smooth; }

* {
	box-sizing: border-box; }

::selection {
	color: #fff;
	background-color: #231815; }

body {
	background:#ffffff;
	font-family: 'Zen Old Mincho', serif;
	font-size: 15px;
	letter-spacing: 2px;
	line-height: 2;
	font-weight: 700;
	color:#231815;
	margin:0;
	padding:0; }

a {
	text-decoration: none;
	color:#231815; }

ul {
	padding:0; }

li {
	list-style: none; }

h1,h2,h3,h4,h5,strong,p {margin:0;}

h2 {
	font-size: 25px;
	line-height:1.8;
	letter-spacing: 3px; }

br.none {display: none;}

/*--------------------------------
	header
--------------------------------*/

.header_contact {
	display: block;
	width:130px;
	height: 16px;
	position: absolute;
	z-index: 9999;
	right:215px;
	top:102px; }

.header_contact>svg {
	display: block;
	width:100%;
	height: auto; }

.header_buy {
	display: block;
	background:#ffffff;
	border-radius: 50px;
	width:90px;
	height: 30px;
	position: fixed;
	z-index: 9999;
	right:110px;
	top:40px;
	opacity: 0;
	transform: translateX(5px);
	animation: header_buy_anime 1s;
	animation-delay: 4.5s;
	animation-fill-mode: forwards; }

@keyframes header_buy_anime {100% {opacity:1;transform: translateX(0);}}

.header_buy>svg {
	display: block;
	position: absolute;
	left:0;right:0;bottom:0;top:0;margin:auto;
	width:60px;
	height: 16px; }

.header_sns {
	position: fixed;
	z-index: 9999;
	right:40px;
	top:100px;
	opacity: 0;
	transform: translateY(-5px);
	animation: header_sns_anime 1s;
	animation-delay: 4.5s;
	animation-fill-mode: forwards; }

@keyframes header_sns_anime {100% {opacity:1;transform: translateY(0);}}

.header_sns>li {
	width:35px;
	height: 35px;
	padding:8px;
	background:#ffffff;
	border-radius: 100%;
	margin-bottom:30px; }

.header_sns>li>a,.header_sns>li>a>svg {
	display: block;
	width:100%;
	height: 100%; }

/*--------------------------------
	mainv
--------------------------------*/

#mainv {
	width:100%;
	height: 100vh;
	position: relative; }

.mainv_background {
	position: absolute;
	top:0;left:0;
	width:100%;
	height: 100%;
	object-fit: cover;
	transition: 2s;
	z-index: -1; }

.mainv_background.change {
	opacity: 0; }

.mainv_logo_tremolo {
	display: block;
	width:25%;
	height: auto;
	position: absolute;
	top:35px;
	left:35px;
	opacity: 0;
	animation: mainv_anime1 1s ease 4.5s;
	animation-fill-mode: forwards;
}
.mainv_logo_brownrice {
	position: absolute;
	left:0;bottom:0;right:0;top:0;margin:auto;
	display: block;
	width:50%;
	height: auto;
	opacity: 0;
	transform: translateY(15px);
	animation: mainv_anime1 1s;
	animation-delay: 3s;
	animation-fill-mode: forwards; }

@keyframes mainv_anime1 {100% {opacity:1;transform: translateY(0);}}

/*--------------------------------
	concept
--------------------------------*/

#concept {
	padding:100px 0 150px 0; }

.concept_sp {display: none;}

.concept_inner {
	width:80%;
	margin:0 auto;
	text-align: center; }

img.concept_tremolo {
	width: auto;
	height: 25px; }

h1.concept_h1 {
	margin:0 0 40px 0;
	font-size: 30px;
	letter-spacing: 5px; }

#concept svg {
	max-width:100%; }

#concept p {
	line-height: 2.5;
	margin:50px 0 0 0; }

/*--------------------------------
	svgアニメーション
--------------------------------*/

.svg__anime {
	display: none; }

.on .svg__anime {
	display: block; }

/*--------------------------------
	life
--------------------------------*/

#life {
	background:#ebe9e3;
	padding:100px 0; }

.life-image {
	margin: 0 auto;
	height: auto;
	position: relative;
	width:80%; }

.life-image>img {
	display: block;
	width:100%;
	height: auto; }

.life-image>p {
	position: absolute;
	right:20px;
	bottom:10px;
	color:#fff;
	font-size: 12px; }

.life-contents {
	width:80%;
	margin:50px auto 0 auto; }

.life-contents p {
	margin:30px 0 40px 0;
	font-size: 13px;
	letter-spacing: 3px; }

img.life-contents-logo {
	display: block;
	width:250px;
	height: auto; }

img.life-contents-ricepack {
	display: block;
	width:100%;
	height: auto;
	margin-top:50px; }

/*--------------------------------
	balance
--------------------------------*/

#balance {
	padding:100px 0; }

.balance_image_contents {
	width:80%;
	max-width:1200px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center; }

.balance_image_box {
	display: block;
	width:50%;
	height: auto; }

.balance_image_box img {
	display: block;
	width:100%;
	margin-bottom:10px;
	height: auto; }

.balance_box {
	width:80%;
	margin:100px auto 0 auto;
	background-image: url("../images/balance_image_03.jpg");
	background-position: right top;
	background-size: 50%;
	background-repeat: no-repeat; }

.balance_box_imgwrap {
	width:100%;
	margin:70px 0 50px 0; }

.balance_box_imgwrap svg {
	display: block;
	width:100%;
	height:auto; }

.balance_box>p {
	line-height: 2.5;
	text-align: center; }

.perfect_box {
	width:80%;
	margin: 150px auto 0 auto; }

.perfect_box p {
	font-size: 13px; }

.perfect_graf svg {
	display: block;
	width: 100%;
	height: auto; }

/*--------------------------------
	inside
--------------------------------*/

.inside_h2 {
	text-align: center;
	padding:35px 30px;
	background:#ebe9e3; }

.inside_h2_kana1,.inside_h2_kana2 {
	display: block;
	padding-top:15px;
	position: relative; }

.inside_h2_kana1:before {
	content:'トレモロ';
	font-size: 13px;
	position: absolute;
	top:5px;
	left:0;right:0;margin:auto; }

.inside_h2_kana2:before {
	content:'もっちりブラウンライス';
	font-size: 13px;
	position: absolute;
	top:0;
	left:0;right:0;margin:auto; }

.inside_h2_text {
	width:80%;
	font-size: 18px;
	text-align: center;
	margin: 50px auto 80px auto; }

.inside_table {
	width:80%;
	margin:0 auto 30px auto; }

.inside_table_box {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center; }

.inside_th {
	order:1;
	text-align: center;
	width:110px; }

span.inside_th {
	display: block;
	font-size: 30px;
	border-radius: 100%;
	width:150px;
	height: 150px;
	line-height: 150px;
	letter-spacing: 5px;
	background:#ebe9e3; }

span.inside_th_mochi {
	background:#dddbc6}

.inside_content {
	order:3;
	width:100%;;
	padding:30px 0 70px 0;
	text-align: center; }

.inside_image {
	order:2;
	padding-left:30px;
	width:150px; }

.inside_image>img {
	display: block;
	width:100%;
	height: auto; }

/*--------------------------------
	product
--------------------------------*/

#product {
	width:90%;
	border:1px solid #231815;
	margin: 0 auto;
	padding:40px 50px 30px 50px;
	text-align: center; }

#product h2 {
	border-bottom:1px solid;
	display: inline-block; }

.product_inner {
	margin-top:50px; }

.product_box {
	margin-bottom:80px;
	width:100%; }

.product_imgwrap {
	width: 100%;
	height: auto}

.product_imgwrap>img {
	display: block;
	width:100%;
	height: auto;}

.product_detail {
	text-align: left; }

.detail_logo {
	display: block;
	width:250px;
	max-width:100%;
	margin:20px 0 15px 0; }

.product_name {
	font-size: 17px; }

.product_table {
	font-size: 14px;
	line-height: 1.5;
	margin-top:10px; }

.product_table th {
	padding-right: 50px;}

.product_note {
	width: 100%;
	font-size: 12px;
	text-align: right; }


/*--------------------------------
	buynow
--------------------------------*/

#buynow {
	color:#231815;
	display: block;
	padding:80px 0;
	transition: .5s;
	text-align: center; }

#buynow strong,#buynow h3 {
	letter-spacing: 5px;
	display: inline-block;
	font-size: 25px; }

#buynow img {
	display: inline-block;
	width:23px;
	margin:20px 0; }

/*--------------------------------
	flow
--------------------------------*/

#flow {
	width:90%;
	border:1px solid #231815;
	margin: 0 auto 100px auto;
	padding: 50px;
	text-align: center; }

#flow h2 {
	margin-bottom:20px;
	letter-spacing: 5px; }

#flow p {
	font-size: 16px; }

#flow h3 {
	font-size: 23px;
	letter-spacing: 3px;
	margin-bottom:20px;
	margin-top:50px; }

#flow .imgwrap {
	width:300px;
	height: auto;
	margin: 50px auto;
	max-width:80%; }

#flow .imgwrap>img {
	display: block;
	width:100%;
	height: auto; }

.flow_box {
	padding-bottom:50px;
	position: relative; }

.flow_box:after {
	content:'';
	width:30px;
	height: 30px;
	background-image: url("../images/flow_down.svg");
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	bottom:0;left:0;right:0;margin:auto; }

.flow_box:nth-last-of-type(1) {padding-bottom:30px;}
.flow_box:nth-last-of-type(1):after {
	background:none; }

.flow_set {
	margin-bottom:50px;}

.flow_set p {
	margin-bottom:30px;
	width:100%;
	text-align: left; }

.flow_svgwrap {
	width:100%;
	margin: 50px auto; }

.flow_svgwrap svg {
	display: block;
	width:100%;
	height: auto; }

.flow_svgwrap .sp_image {
	display: none;
}
.flow_box p.mix {
	margin:10px 0 50px 0; }

.flow_box p span {
	font-size: 15px;
	letter-spacing: 1px; }

.flow_box strong.free {
	border-bottom:4px solid #fef8b7;
	display: inline;
	letter-spacing: 3px;
	margin-top:20px;
	font-size: 25px; }

.flow_box_inner {
	width:100%;
	margin:30px auto;
	padding:40px 30px 30px 30px;
	border:1px solid;
}
.flow_box_inner_pcimg {
	display: none;
}
.flow_box_inner_spimg {
	display: block;
	width:100%;
	height: auto;
}
.flow_course {
	width:100%; }

.flow_course img {
	display: block;
	width:100%;
	max-width:300px;
	height: auto;
	margin: 50px auto; }

p.flow_course_title {
	border-bottom:1px solid;
	display: inline-block; }

span.flow_course_mintext {
	display: block;
	width:100%;
	font-size: 13px;
	text-align: justify;
}
span.flow_course_mintext br {
	display: none;
}
.flow_course_mintext2 {
	display: block;
	text-align: justify;
	margin:0 auto 45px;
	font-size: 14px;	
}
/*--------------------------------
	eat
--------------------------------*/

.eat_inner {
	width:90%;
	border:1px solid #231815;
	margin: 50px auto;
	padding:50px;
	text-align: center; }

.eat_box {
	margin-bottom:80px;
	width:100%; }

.eat_box:nth-last-of-type(1) {
	margin-bottom:0; }

.eat_type svg {
	display: block;
	width:auto;
	max-width:100%;
	height: 60px;
	margin: 0 auto; }

.eat_person {
	display: flex;
	justify-content: center;
	margin:45px 0; }

.eat_person p {
	text-align: left; }

.eat_box_imgwrap {
	display: flex!important;
	justify-content: center;
	align-items: center;
	width:100%;
	height:160px; }

.eat_box_imgwrap img {
	display: block;
	width: auto;
	max-width:100%;
	height: 100%; }

p.eat_manner {
	width:100%;
	max-width:500px;
	margin:50px auto 0 auto;
	text-align: left; }

.warm_inner {
	width:80%;
	margin:80px auto 0 auto; }

.warm_inner strong {
	transform: translateX(-12px);
	display: block; }

.warm_box {
	margin-bottom:80px;
	display: flex;
	justify-content: space-between;
	align-items: center; }

.warm_box_image {
	width:200px; }

.warm_box_image img {
	display: block;
	width:100%;
	height: auto; }

.howto_soft {
	width:80%;
	text-align: center;
	margin:150px auto 50px auto; }

.howto_soft h2 {
	border-bottom:1px solid; }

.howto_soft_inner {
	padding-top:50px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start; }

.howto_soft_box {
	position: relative;
	margin-bottom:50px;
	width:46%; }

.howto_soft_box:before {
	position: absolute;
	left:0;top:0;
	width:40px;
	height:40px;
	text-align: center;
	line-height: 40px;
	letter-spacing: 0;
	background:#c0b9a7; }

.howto_soft_box:nth-of-type(1):before {content:'1';}
.howto_soft_box:nth-of-type(2):before {content:'2';}
.howto_soft_box:nth-of-type(3):before {content:'3';}
.howto_soft_box:nth-of-type(4):before {content:'4';}

.soft_image {
	width:100%;
	height: auto; }

.soft_image>img {
	display: block;
	width:80%;
	margin: 0 auto;
	height: auto; }

.soft_text {
	margin-top:25px;
	background:#949495;
	color:#fff;
	display: block;
	font-size: 12px;
	padding:10px 0;
	letter-spacing: 1px; }

/*--------------------------------
	arrange
--------------------------------*/

.arrange_h2 {
	text-align: center;
	padding:40px 0;
	background:#ebe9e3; }

.arrange_inner {
	width:80%;
	margin:60px auto 30px auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap; }

.arrange_box {
	width:48%;
	border:1px solid;
	margin-bottom:30px;
	padding-top:30%; }

/*--------------------------------
	amb
--------------------------------*/

#amb {
	background:#f3f1ee;
	padding:70px 0;
	text-align: center; }

.amb_inner {
	width:80%;
	margin: 0 auto; }

.amb_h3 {
	font-size: 25px;
	letter-spacing: 4px;
	border-bottom:1px solid;
	padding-bottom:5px;
	display: block;
	margin: 0 auto; }

.amb_down {
	display: block;
	width:25px;
	margin: 0 auto; }

.amb_link {
	border-bottom:1px solid; }

.amb_notes {
	text-align: left; }

/*--------------------------------
	voice
--------------------------------*/

#voice {
	padding:50px 0 60px 0;
	text-align: center;}

.voice_inner {
	width:80%;
	margin: 40px auto 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: flex-start; }

.voice_box {
	width:17%;
	border:1px solid;
	padding-top:16%; }

/*--------------------------------
	footer
--------------------------------*/

#footer {
	background:#c0b9a7;
	padding:40px 0 20px 0; }

.footer_inner {
	width:90%;
	margin: 0 auto; }

img.footer_logo {
	margin-bottom:50px;
	display: block;
	width:250px;
	height: auto; }

.footer_kana01,.footer_kana02 {
	position: relative; }

.footer_kana01:before {
	content:'トレモロ';
	font-size: 10px;
	position: absolute;
	top:-18px;left:0;right:0;margin:auto;
	text-align: center; }

.footer_kana02:before {
	content:'もっちりブラウンライス';
	font-size: 10px;
	position: absolute;
	top:-18px;left:0;right:0;margin:auto;
	text-align: center; }

.footer_box2 {
	margin-top:40px;
	text-align: right;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end; }

p.footer_min {
	width: 100%;
	height: auto;
	line-height: 10px;
	font-size: 10px; }

ul.footer_sns {
	width:100%;
	display: flex;
	justify-content: flex-end; }

ul.footer_sns>li {
	display: block;
	width:25px;
	height: 25px;
	margin-left:20px; }

ul.footer_sns a,ul.footer_sns a>svg {
	display: block;
	width:100%;
	height: 100%; }

ul.footer_menu {
	width:100%;
	display: flex;
	justify-content: flex-end; }

ul.footer_menu>li {
	height: 17px;
	border:1px solid rgba(0,0,0,0);
	margin-left:30px; }

ul.footer_menu>li svg {
	display: block;
	width: auto;
	height: 100%; }

/*--------------------------------
	loading
--------------------------------*/

#splash {
	position: fixed;
	width: 100%;
	height: 100%;
	z-index: 10000;
	background-color:#fff;
	text-align:center; }

#splash_logo {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%); }

#splash_logo img {
	display: block;
	height:auto;
	width:100px; }

/*--------------------------------
	inview
--------------------------------*/

.js-fadeUp {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .8s, transform .8s; }

.js-fadeUp.is-inview {
	opacity: 1;
	transform: translateY(0);
	transition-delay: .5s; }

/*--------------------------------
	loopslide
--------------------------------*/

.loop-content {
	width: 28vmax;
	height: auto; }

.loop-content>img {
	display: block;
	width:100%;
	height: auto; }

.loopslide_wrap {
	overflow: hidden;
	display: flex;
	align-items: center;
	height: auto; }

.loop-slideshow {
	margin:0;
	display: flex;
	-webkit-animation: loop-slide 150s infinite linear 1s both;
	animation: loop-slide 150s infinite linear 1s both; }

@-webkit-keyframes loop-slide {
	from {transform: translateX(0);}
	to {transform: translateX(-100%);}
}

@keyframes loop-slide {
	from {transform: translateX(0);}
	to {transform: translateX(-100%);}
}

.footer_company {
	width:100%;
	margin-top:30px;
	font-size: 13px; }