@charset "utf-8";


/* base */
picture{
	display: block;
}



/* common */

#container .content {
	background-color: #f4f4f1;
}

#container .mv::before {
  background: url(../img/power_mv.png) no-repeat center center;
  background-size: cover;
  background-position: bottom;
}

#container .mv #contents_title .sub_ttl {
	background: url(../img/ttl_after.png) no-repeat center center;
	background-size: 100% 100%;
}


@media screen and (max-width: 768px) {
	#container .mv #contents_title .sub_ttl {
    background: url(../img/ttl_after_sp.png) no-repeat center center;
		background-size: 100% 100%;
		font-weight: 700;
		line-height: 1;
		padding: 6px 10px 8px;
}
}


/*==============================================================
	power
==============================================================*/

/* nutrition_sec */
.nutrition_sec{
	color: #503700;
	padding: 95px 0;
}
.nutrition_sec .nutrition_inner{
	max-width: 1110px;
	width: 90%;
	margin: 0 auto;
}

.nutrition_sec .txt{
	font-family: "Shippori Mincho", serif;
	font-size: 25px;
	font-weight: 800;
	line-height: 2.56;
	letter-spacing: 0.09em;
	text-align: center;
	margin-bottom: 85px;
}
.nutrition_sec .img{
	margin: 0 auto 20px;
}
.nutrition_sec .source{
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.12em;
	text-align: right;
}

@media screen and (max-width: 1050px) {
	.nutrition_sec .txt{
		font-size: calc(25/1050*100vw);
	}
}

@media screen and (max-width: 768px) {
	.nutrition_sec{
		padding: 45px 0 60px;
	}
	.nutrition_sec .txt{
		font-size: 14px;
		line-height: 2.14;
		letter-spacing: 0;
		margin-bottom: 60px;
	}
	.nutrition_sec .img{
		margin: 0 auto 30px;
		max-width: 500px;
	}
	.nutrition_sec .source{
		font-size: 11px;
		font-weight: 600;
		letter-spacing: 0.01em;
		text-align: left;
	}
}


/* efficacy_sec */
.efficacy_sec{
	color: #503700;
	padding: 90px 0 100px;
	background-color: #fff;
}

.efficacy_sec.tra{
	background-color: transparent;
}

.efficacy_sec .efficacy_inner{
	max-width: 870px;
	width: 90%;
	margin: 0 auto;
}

.efficacy_sec .sttl{
	color: #ff551e;
	font-size: 38px;
	font-weight: 700;
	letter-spacing: 0.12em;
	padding: 0 0 15px 65px;
	margin-bottom: 30px;
	position: relative;
}
.efficacy_sec .sttl::after{
	content: '';
	position: absolute;
	background-image: url(../img/underline01.svg);
	background-repeat: no-repeat;
	background-size: cover;
	width: 775px;
	height: 6px;
	left: 60px;
	bottom: 0;
}
.efficacy_sec .sttl .num{
	max-width: 45px;
	position: absolute;
	left: 0;
	top: -10px;
}
.efficacy_sec .txt{
	font-size: 22px;
	font-weight: 600;
	line-height: 1.72;
	letter-spacing: 0.12em;
}
.efficacy_sec .memo_box{
	margin: 65px 0 0 40px;
	padding: 28px 50px;
	background-color: #fff4e1;
	border-radius: 40px;
	position: relative;
}
.efficacy_sec .memo_box .memo_ttl{
	max-width: 95px;
	position: absolute;
	left: -40px;
	top: -35px;
}
.efficacy_sec .memo_box .memo{
	color: #ff551e;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 18px;
	font-weight: 500;
	line-height: 1.65;
	letter-spacing: 0.1em;
}

.efficacy_sec .box{
	display: flex;
	gap: 0 30px;
}
.efficacy_sec .box .txt{
	width: 68%;
}
.efficacy_sec .box .img{
	width: 32%;
	margin-top: 10px;
}

@media screen and (max-width: 950px) {
	.efficacy_sec .sttl::after{
		width: calc(775/950*100vw);
	}
}

@media screen and (max-width: 768px) {
	.efficacy_sec{
		padding: 50px 0 45px;
	}
	.efficacy_sec.last{
		padding-bottom: 70px;
	}

	.efficacy_sec.tra{
		background-color: #fff;
		padding: 0;
	}

	.efficacy_sec .sttl{
		font-size: 18px;
		letter-spacing: 1px;
		padding: 0 0 15px 35px;
		margin-bottom: 20px;
	}
	.efficacy_sec .sttl::after{
		background-image: url(../img/underline01_sp.svg);
		width: calc(305/375*100vw);
		height: 4px;
		left: 30px;
	}
	.efficacy_sec .sttl .num{
		max-width: 22px;
	}
	.efficacy_sec .txt{
		font-size: 14px;
		line-height: 1.57;
	}
	.efficacy_sec .memo_box{
		width: 95%;
		margin: 50px auto 0;
		padding: 26px 23px;
		border-radius: 30px;
	}
	.efficacy_sec .memo_box .memo_ttl{
		max-width: 62px;
		left: -10px;
    top: -35px;
	}
	.efficacy_sec .memo_box .memo{
		font-size: 14px;
		line-height: 1.57;
	}

	.efficacy_sec .box{
		flex-direction: column;
		gap: 25px 0;
	}
	.efficacy_sec .box .txt{
		width: 100%;
	}
	.efficacy_sec .box .img{
		width: 71%;
		margin: 0 auto;
	}
}




/* grains_sec */
.grains_sec{
	color: #503700;
	background-color: #fff4e1;
	padding: 95px 0 100px;
	margin-bottom: 110px;
}
.grains_sec .grains_inner{
	max-width: 1024px;
	width: 90%;
	margin: 0 auto;
}

.grains_sec .icon{
	max-width: 163px;
	margin: 0 auto 75px;
}

.grains_sec .content_wrap{
	background-color: #fff;
	border-radius: 120px;
	padding: 90px 115px;
}
.grains_sec .content_wrap .sttl{
	color: #ff551e;
	font-size: 30px;
	font-weight: 700;
	line-height: 1.72;
	letter-spacing: 0.22em;
	text-align: center;
	margin-bottom: 35px;
}
.grains_sec .content_wrap .main_txt{
	font-size: 20px;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.12em;
	text-align: center;
	margin-bottom: 90px;
}
.grains_sec .content_wrap .type_ttl{
	font-size: 25px;
	font-weight: 600;
	line-height: 1;
	letter-spacing: 0.12em;
	text-align: center;
	padding-bottom: 35px;
	margin-bottom: 45px;
	position: relative;
}
.grains_sec .content_wrap .type_ttl::after{
	content: '';
	position: absolute;
	background-image: url(../img/underline02.svg);
	background-repeat: no-repeat;
	background-size: cover;
	width: 775px;
	height: 6px;
	left: 0;
	bottom: 0;
}
.grains_sec .content_wrap .type_ttl.org{
	color: #ff551e;
	margin-bottom: 30px;
}

.grains_sec .content_wrap .type_txt{
	color: #ff551e;
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	letter-spacing: 0.32em;
	text-align: center;
	margin-bottom: 65px;
}

.grains_sec .content_wrap .type_ttl.org::after{
	background-image: url(../img/underline01.svg);
	background-repeat: no-repeat;
	background-size: cover;
}

.grains_sec .content_wrap .type_list{
	display: flex;
	gap: 55px 25px;
	flex-wrap: wrap;
}
.grains_sec .content_wrap .type_list:first-of-type{
	margin-bottom: 90px;
}
.grains_sec .content_wrap .type_list li{
	width: 31%;
}
.grains_sec .content_wrap .type_list li .type_name{
	color: #fff;
	font-size: 23px;
	font-weight: 500;
	letter-spacing: 0.14em;
	text-align: center;
	vertical-align: bottom;
	padding: 4px 1px;
	background-color: #503700;
	border-radius: 8.5px;
	margin-bottom: 5px;
}
.grains_sec .content_wrap .type_list:last-of-type li .type_name{
	background-color: #ff551e;
}
.grains_sec .content_wrap .type_list li .type_name span{
	font-size: 16px;
}
.grains_sec .content_wrap .type_list li .img{
	max-width: 170px;
	margin: 0 auto 5px;
}
.grains_sec .content_wrap .type_list li .txt{
	font-size: 15px;
	font-weight: 500;
	line-height: 1.72;
	letter-spacing: 0.02em;
}

.grains_sec .source{
	font-size: 16px;
	font-weight: 400;
	line-height: 1;
	letter-spacing: 0.12em;
	text-align: right;
	margin-top: 25px;
}

@media screen and (max-width: 1150px) {
	.grains_sec .content_wrap .type_ttl::after {
		width: calc(775/1150*100vw);
	}
	.grains_sec .content_wrap .type_list {
		gap: 4.78vw 2.17vw;
	}
	.grains_sec .content_wrap .type_list li .type_name {
		font-size: calc(23/1150*100vw);
	}
	.grains_sec .content_wrap .type_list li .type_name span {
    font-size: calc(16/1150*100vw);
	}
	.grains_sec .content_wrap .type_list li .txt {
    font-size: calc(15/1150*100vw);
}
}

@media screen and (max-width: 1100px) {
	.grains_sec .content_wrap .sttl {
		font-size: calc(30/1100*100vw);
	}
}

@media screen and (max-width: 1000px) {
	.grains_sec .content_wrap .main_txt {
		font-size: calc(20/1000*100vw);
	}
	.grains_sec .content_wrap {
		padding: 9vw 11.5vw;
	}
}

@media screen and (max-width: 768px) {
	.grains_sec{
		padding: 35px 0 60px;
		margin-bottom: 45px;
	}

	.grains_sec .icon{
		max-width: 65px;
		margin: 0 auto 25px;
	}

	.grains_sec .content_wrap{
		border-radius: 25px;
		padding: 40px 25px;
	}
	.grains_sec .content_wrap .sttl{
		font-size: 18px;
		line-height: 1.55;
		letter-spacing: 1px;
		margin-bottom: 20px;
	}
	.grains_sec .content_wrap .main_txt{
		font-size: 13px;
		font-weight: 600;
		line-height: 1.7;
		letter-spacing: 0.01em;
		margin-bottom: 40px;
		text-align: left;
	}
	.grains_sec .content_wrap .type_ttl{
		font-size: 16px;
		font-weight: 700;
		letter-spacing: 1px;
		padding-bottom: 15px;
		margin-bottom: 20px;
	}
	.grains_sec .content_wrap .type_ttl::after{
		background-image: url(../img/underline02_sp.svg);
		width: calc(280/375*100vw);
		height: 4px;
		left: 50%;
		transform: translateX(-50%);
	}

	.grains_sec .content_wrap .type_ttl.org{
		margin-bottom: 20px;
	}

	.grains_sec .content_wrap .type_txt{
		font-size: 14px;
		font-weight: 700;
		line-height: 1.57;
		letter-spacing: 2px;
		margin-bottom: 20px;
	}
	.grains_sec .content_wrap .type_ttl.org::after{
		background-image: url(../img/underline01_sp.svg);
	}
	.grains_sec .content_wrap .type_list{
		flex-direction: column;
		gap: 15px 0;
	}
	.grains_sec .content_wrap .type_list:first-of-type{
		margin-bottom: 40px;
	}
	.grains_sec .content_wrap .type_list li{
		width: 100%;
	}
	.grains_sec .content_wrap .type_list li .type_name{
		font-size: 16px;
		font-weight: 600;
		letter-spacing: 0.1em;
		padding: 6px 2px;
		border-radius: 8px;
		margin-bottom: 15px;
	}
	.grains_sec .content_wrap .type_list li .type_name span{
		font-size: 12px;
	}
	.grains_sec .content_wrap .type_list li .type_flex{
		display: flex;
		gap: 0 10px;
	}
	.grains_sec .content_wrap .type_list li .img{
		max-width: none;
		width: 32%;
		margin: 0;
	}
	.grains_sec .content_wrap .type_list li .txt{
		width: 68%;
		font-size: 13px;
		font-weight: 600;
		line-height: 1.6;
		letter-spacing: 0.01em;
	}

	.grains_sec .source{
		font-size: 12px;
		font-weight: 600;
		letter-spacing: 0.01em;
		margin-top: 15px;
		margin-right: 5px;
	}
}

#container .content._02{
	background-color: #fff;
}