@charset "utf-8";

body.passionZh,
.passionZh th,
.passionZh td {
	font-family: "Noto Serif SC", serif!important;
	letter-spacing: 0.06em;
	/* line-height:1.3em; */
}
#header .headerTrademark,
#footer .footerTrademark,
#mainMenu .langList ul li:not(:last-child,:first-child),
#footer .langList ul li:not(:last-child) {font-family: "Amiri", serif;}

.headerText h2 {font-weight: bold;}

.passion01 {
	background-repeat: no-repeat;
}

.passion01 .leadSection p.leadText {
	text-align: center;
}

.passion01 .frontier {
	padding: 5.8% 0;
}

.passion02 .leadSection {
	margin-bottom: 6.2%;
}

.passion01 .frontier .infoBox h3 {
	font-weight: bold;
	margin-bottom: 0.93em;
}

.passion02 .policy h3 {
	font-size: 1.55em;
	font-weight: bold;
	text-align: center;
	margin-bottom: 2em;
	line-height: 1.25;
}

.passion02 .policy ul li {
	display: block;
	padding: 3.8em 3% 2.6em;
	position: relative;
	text-align: center;
}

.passion02 .policy ul li::before {
	position: absolute;
	content: "";
	display: block;
	height: 2px;
	width: 23%;
	background-color: #fff;
	left: 50%;
	right: 50%;
	top: -3px;
	transform: translate(-50%, 50%);
}

.passion02 .policy ul li img {
	position: absolute;
	top: -3.5em;
	left: 50%;
	right: 50%;
	transform: translate(-50%, 50%);
}

.passion02 .policy ul li h4 {
	font-size: 1.22em;
	font-weight: bold;
	margin-bottom: 1em;
}

.passion02 .policy ul li p {
	text-align: inherit;
}

.passion02 .SDGs .inner {
	max-width: 1100px;
	position: relative;
	background-color: #F3F3F3;
	text-align: center;
}

.passion02 .SDGs .inner:before {
	top: 0;
}

.passion02 .SDGs .inner:before,
.passion02 .SDGs .inner:after {
	content: "";
	height: 8px;
	width: 100%;
	display: block;
	position: absolute;
	left: 0;
}

.passion02 .SDGs h3 {
	font-size: 1.22em;
	font-weight: bold;
	line-height: 1.27em;
	position: relative;
	padding-top: 5%;;
	margin-bottom: 1em;
}

.passion02 .SDGs h3::after {
	content: "";
	display: block;
	width: 1.59em;
	height: 3px;
	background: #000;
	position: relative;
	bottom: -0.2em;
	left: 50%;
	transform: translate(-50%, -50%);
}

.passion02 .SDGs .inner:after {
	bottom: 0;
}

.deco::before {
	content: "";
	display: block;
	background-image: url(../../../images/passion/zh/zh_bg.jpg);
	background-position: center;
	background-size: auto 600px;
	position: absolute;
	z-index: -1;
}

.passion02 .teaGarden .infoBox .area {
	padding: 0.5em 0 0.5em 1.5em;
	position: relative;
}

.passion02 .teaGarden .infoBox .area {
	font-weight: bold;
	color: #E5BE90;
	margin-bottom: 1em;
}

.passion02 .teaGarden .infoBox .area::before {
	content: "";
	display: block;
	width: 0.72em;
	height: 1.11em;
	background: url(../../../images/passion/zh/icon-area.svg) no-repeat left center / 100% auto;
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(50%, 50%);
}

.passion02 .teaGarden .infoBox h3 {
	font-size: 1.55em;
	font-weight: bold;
	position: relative;
	margin-bottom: 2em;
	letter-spacing: 0.03em;
	line-height: 1.14em;
}

.passion02 .teaGarden .infoBox h3::after {
	position: absolute;
	display: block;
	content: "";
	background: #000;
	height: 1px;
	width: 1.78em;
	left: 0;
	bottom: -0.71em;
}

.passion02 .teaGarden .miyazaki p,
.passion02 .altitude .infoBox p {
	margin-bottom: 1em;
}

.passion02 .teaGarden .altitude {
	padding-top: 3.16em;
	position: relative;
}

.passion03 .headerText h2 span {
	margin-left: 0.76em;
}

.passion03 .box01 .infoText {
	position: relative;
}

.passion03 .prosess h3,
.passion04 .prosess h3 {
	position: relative;
	margin-bottom: 1em;
	line-height: 1.22em;
}

.passion03 .prosess h3::after,
.passion04 .prosess h3::after {
	content: "";
	display: block;
	width: 100%;
	height: 1px;
	background: #000;
	position: absolute;
	left: 0;
	bottom: -0.5em;
}

.passion03 .prosess .box03 .lBox {
	width: 51.8%;
	max-width: 680px;
}

.passion03 .box03 .lBox {
	padding-top: 1.55em;
	position: relative;
}

.passion04 .headerText h2 span {
	display: inline-block;
}

.passion04 .box01 .lBox {
	position: relative;
}

.passion04 .box01 .lBox.deco::before {
	left: 0;
}

.passion04 .box01 .rBox {
	position: relative;
}

.passion04 .box01 .rBox.deco::before {
	right: 0;
}

.passion04 .box03 .rBox {
	position: relative;
}

.passion04 .box03 .rBox.deco::before {
	right: 0;
}

#footer .exLinkList a:before {top:0.35em;}

/*===============================================
●画面の横幅が769px以下(スマホのみ)
===============================================*/
@media screen and (max-width: 769px){

	body.passionZh,
	.passionZh th,
	.passionZh td {
		font-size: 0.875em!important;
	}
	.passion01 {
		padding-top: 14.6%;
		background-position: 75% 4%;
		background-size: 78% auto;
	}

	.passion01 header {
		margin: 0 auto 5em;
		width: 100%;
	}

	.passion01 .leadSection .leadText,
	.passion01 .leadSection ul li {
		margin-bottom: 1em;
	}

	.passion01 .leadSection ul {
		margin-bottom: 9.3%;
	}

	.passion01 .leadSection ul img {
		width: 100%;
	}

	.passion01 .movieBox,
	.passion02 .movieBox {
		margin-bottom: 1em;
	}

	.passion01 .frontier .infoBox h3 {
		font-size: 1.37em;
	}

	.passionWrap .frontier .infoBox table th {
		width: 33.7%;
	}

	.passionWrap .frontier .infoBox table td {
		width: 66.3%;
		padding-left: 1em;
		font-size: 0.87em;
	}

	.frontier .imageBox img {
		width: 100%;
		margin-bottom: 1em;
	}

	.passionWrap .frontier .infoBox table {
		margin: 1.1em 0;
	}

	.passion02 header {
		margin-bottom: 1em;
	}

	.passion02 .policy .sdgsBadge {
		max-width: 280px;
		margin: 0 auto 3em;
	}

	.passion02 .policy ul li {
		width: 100%;
		max-width: 100%;
		margin-bottom: 2.5em;
	}

	.passion02 .SDGs {
		padding: 0 10px;
	}

	.passion02 .SDGs .inner {
		padding: 2em 1em;
	}

	.passion02 .SDGs .inner:before,
	.passion02 .SDGs .inner:after {
		background: url(../../../images/passion/border01.png) center / auto 61%;
	}

	.passion02 .SDGs .goal p {
		font-size: 0.87em;
		margin-bottom: 1em;
	}

	.passion02 .SDGs .goal img,
	.passion02 .SDGs .chart img {
		margin-bottom: 2em;
	}

	.passion03 header.horizonTitle {
		width: 100%;
	}
	
	.passion03 .prosess .box01 .inner,
	.passion03 .prosess .box02 .inner,
	.passion03 .prosess .box03 .inner {
		padding: 0;
	}

	.passion03 .prosess .box01 .lBox {
		width: 56%;
		margin-bottom: 4.5em;
	}

	.passion03 .prosess .box01 .rBox {
		position: relative;
	}

	.passion03 .prosess .box01 .rBox img {
		position: absolute;
		right: 0;
		top: -140%;
		width: 38.6%
	}

	.passion03 .prosess .box01 .infoText {
		width: 80%;
		margin: 0 0 2.5em auto;
	}

	.passion03 .prosess .box01 .infoText.deco::before {
		right: 0;
		top: -166%;
		width: 35%;
		padding-top: 140%;
	}

	.passion03 .prosess h3,
	.passion04 .prosess h3 {
		font-size: 1.25em;
	}

	.passion03 .prosess .box01 .infoText p {
		width: 90%;
	}

	.passion03 .infoText p {
		line-height: 1.28em;
		margin-bottom: 5em;
	}

	.passion03 .prosess .box02 .lBox {
		width: 64%;
		padding-left: 1.25em;
		margin-bottom: 1.25em;
		position: relative;
	}

	.passion03 .prosess .box02 .lBox.deco::before {
		width: 47.6%;
		padding-top: 163%;
		left: 0;
		top: 24.6%;
	}

	.passion03 .prosess .box02 .rBox {
		text-align: center;
		position: relative;
		margin-bottom: 28.2%;
	}

	.passion03 .prosess .box02 .rBox.deco::before {
		width: 50.9%;
		padding-top: 38.6%;
		right: 0;
		top: -14.6%;
	}
	
	.passion03 .prosess .box02 .rBox img {
		width: 73.3%;
	}

	.passion03 .prosess .box03 .inner {
		display: flex;
		justify-content: space-between;
	}

	.passion03 .prosess .box03 .lBox {
		width: 62.6%;
		position: relative;
		margin-bottom: 1.87em;
	}

	.passion03 .prosess .box03 .infoText h3 {
		padding-left: 8%;
	}

	.passion03 .prosess .box03 .infoText p {
		padding-left: 8%;
	}

	.passion03 .prosess .box03 .rBox {
		width: 32%;
		margin-left: 10px;
	}

	.passion03 .prosess .box04 .inner {
		width: 100%;
		margin: 0 auto 4.68em;
		padding: 0;
	}

	.passion03 .prosess .box04 .lBox {
		position: relative;
		padding: 0 13.35%;
	}

	.passion03 .prosess .box04 .lBox,
	.passion04 .box04 .lBox,
	.passion04 .box05 .bgBotanical .inner img:first-child {
		margin-bottom: 1em;
	}

	.passion03 .prosess .box04 .lBox.deco::before {
		width: 33.5%;
		height: 250%;
		left: 0;
		top: -30%;
	}

	.passion03 .prosess .box04 .lBox.deco::after {
		content: "";
		display: block;
		background-image: url(../../../images/passion/zh/zh_bg.jpg);
		background-position: center;
		background-size: auto 600px;
		position: absolute;
		z-index: -1;
	}

	.passion03 .prosess .box04 .lBox.deco::after {
		width: 33.5%;
		height: 250%;
		right: 0;
		top: -85%;
	}

	.passion03 .prosess .box04 .rBox {
		position: relative;
		width: 73.3%;
		margin: 0 auto;
	}

	.passion04 header {
		width: 70%;
		max-width: 230px;
		margin: 0 auto 1.87em;
	}

	.passion04 .box01 .inner,
	.passion04 .box02 .inner,
	.passion04 .box03 .inner {
		padding: 0;
	}

	.passion04 .box01 .lBox {
		width: 45%;
	}

	.passion04 .box01 .lBox.deco::before {
		width: 15%;
		height: 375%;
		top: 50%;
	}

	.passion04 .box01 .rBox.deco::before {
		width: 33.5%;
		height: 154.7%;
		top: -30%;
	}

	.passion04 .box01 .rBox img {
		width: 48.5%;
		position: absolute;
		right: 0;
		top: -20%
	}

	.passion04 .box01 .infoText {
		width: 80%;
		padding-top: 4.37em;
		margin-left: auto;
	}

	.passion04 .box01 .rBox .infoText p {
		padding-right: 1.25em;
	}

	.passion04 .infoText p {
		line-height: 1.28em;
		margin-bottom: 1em;
	}

	.passion04 .arrowBtn {
		margin-bottom: 2em;
	}

	.passion04 .box02 .lBox {
		width: 64%;
		max-width: 220px;
		margin: 0 0 1em 1.25em;
	}

	.passion04 .box02 .rBox {
		width: 73.3%;
		margin: 0 auto 4.68em;
		padding: 0;
	}

	.passion04 .box03 .inner {
		display: flex;
		justify-content: space-between;
		margin-bottom: 1.87em;
	}

	.passion04 .box03 .lBox {
		width: 60.8%;
	}

	.passion04 .box03 .lBox .infoText {
		margin-right: 1em;
	}

	.passion04 .box03 .lBox .infoText h3 {
		padding-left: 1em;
	}

	.passion04 .box03 .lBox .infoText p {
		padding-left: 1.25em;
	}
	
	.passion04 .box03 .lBox .infoText a {
		margin-left: 1.25em;
	}

	.passion04 .box03 .lBox .infoText .arrowBtn svg {
		margin-left: 1em;
	}

	.passion04 .box03 .imgBox {
		position: relative;
	}

	.passion04 .box03 .imgBox.deco::before {
		width: 59.1%;
		height: 139%;
		left: 0;
		top: 0;
	}

	.passion04 .box03 .rBox {
		width: 37.8%;
	}

	.passion04 .box03 .rBox.deco::before {
		width: 89.3%;
		height: 90.4%;
		top: -10%;
	}

	.passion04 .box04 .inner,
	.passion04 .box05 .bgBotanical .inner {
		width: 73.3%;
		margin: 0 auto 4.68em;
		padding: 0;
	}

	.passion05 .bgBotanical .inner .movieBox {
		margin-bottom: 1em;
	}
	
	.passion05 .imgBox img:first-child {
		margin-bottom: 1em;
	}

	.passion05 .quality {
		margin: 1em;
		border: 5px solid #000;
		padding: 10px;
	}

	.passion05 .quality .inner {
		padding: 10px;
	}

	.passion05 .quality h3 {
		font-size: 1.25em;
	}

	.passion05 .quality h4 {
		font-size: 1.12em;
	}

	.passion06 article h3 {
		padding-left: 1em;
		padding-top: 0.75em;
		background-size: auto 1.5em;
		text-align: left;
	}
}

/*===============================================
●画面の横幅が770px以上(PCのみ)
===============================================*/
@media screen and (min-width: 770px){
	body.passionZh,
	.passionZh th,
	.passionZh td {
		font-size: 16px!important;
	}
	.passion01 {
		padding-top: 200px;
		background-position: 55% 1.5%;
		background-size: 680px auto;
		background-repeat: no-repeat;
	}

	.passion01 header {
		max-width: 690px;
		margin: 0 auto 17.7%;
		display: flex;
		align-items: center;
	}

	.passion01 .leadSection p.leadText {
		margin-bottom: 3.4%;
	}

	.passion01 .leadSection ul {
		display: flex;
		justify-content: space-between;
		margin-bottom: 8.3%;
	}

	.passion01 .leadSection ul li {
		width: 46.8%;
		max-width: 450px;
	}

	.passion01 .frontier .infoBox h3 {
		font-size: 1.77em;
	}

	.passion02 .policy .sdgsBadge {
		margin: 0 auto 6.3%;
		text-align: center;
	}

	.passion02 .policy ul {
		width: 100%;
		max-width: 960px;
		display: flex;
		justify-content: space-between;
		margin: 0 auto 6.2%;
	}

	.passion02 .policy ul li {
		width: 31.8%;
		max-width: 306px;
	}

	.passion02 .SDGs .inner {
		padding: 4.3% 10px;
	}

	.passion02 .SDGs .inner:before,
	.passion02 .SDGs .inner:after {
		background: url(../../../images/passion/border01.png) center / 100% auto;
	}

	.passion02 .SDGs .goal p {
		font-size: 0.77em;
		margin-bottom: 0.5em;
	}

	.passion02 .SDGs .goal img {
		margin-bottom: 2.5%;
	}

	.passion02 .SDGs .chart img {
		width: 86%;
		max-width: 920px;
		margin-bottom: 2.5%;
	}

	.passion02 .SDGs .note {
		font-size: 0.77em;
		line-height: 1.42em;
		max-width: 920px;
		margin: 0 auto;
	}

	.passion02 .teaGarden {
		padding-top: 7.3%;
	}

	.passion02 .teaGarden article:not(:last-of-type) {
		margin-bottom: 10.4%;
	}

	.passion02 .teaGarden .mie {
		padding-top: 3.11em;
		position: relative;
	}

	.passion02 .teaGarden article {
		display: flex;
		justify-content: space-between;
	}

	.passion02 .teaGarden .mie.deco::before {
		width: 54.3%;
		padding-top: 40%;
		top: 0;
		right: -20%;
	}

	.passion02 .teaGarden .infoBox {
		width: 46.8%;
		max-width: 450px;
	}

	.passion02 .teaGarden .imgBox span:not(:last-of-type) {
		margin-bottom: 1.11em;
	}

	.passion02 .teaGarden .imgBox span {
		display: block;
	}

	.passion02 .teaGarden .miyazaki {
		padding-top: 1.55em;
		position: relative;
	}

	.passion02 .teaGarden .miyazaki.deco::before {
		width: 54.3%;
		padding-top: 40%;
		top: 0;
		left: -20%;
	}

	.passion02 .teaGarden .imgBox {
		width: 46.8%;
		max-width: 450px;
	}

	.passion02 .teaGarden .altitude.deco::before {
		width: 54.3%;
		padding-top: 40%;
		top: 0;
		right: -20%;
	}

	.passion03 header.horizonTitle {
		width: 100%;
	}
	
	.passion03.passionWrap {
		padding-top: 14.5%;
	}

	.passion03 .prosess .horizonBox .inner {
		justify-content: space-between;
	}

	.passion03 .prosess .inner {
		max-width: 1366px;
		margin: 0 auto;
		padding: 0;
	}

	.passion03 .prosess .box01 .lBox {
		width: 40.2%;
		max-width: 520px;
	}

	.passion03 .prosess .box01 .rBox {
		width: 54.5%;
		max-width: 745px;
	}

	.passion03 .prosess .box01 .infoText {
		position: relative;
	}

	.passion03 .prosess .box01 .rBox img {
		margin: 9% 0 16.7% 10.9%;
	}

	.passion03 .box01 .infoText {
		padding-top: 5.5%;
		bottom: 0;
		right: 0;
	}

	.passion03 .prosess .box01 .infoText.deco::before {
		right: 3.5%;
		top: -95%;
		width: 47%;
		padding-top: 60%;
	}

	.passion03 .prosess h3,
	.passion04 .prosess h3 {
		font-size: 2em;
	}

	.passion03 .prosess .box01 .rBox p {
		max-width: 490px;
	}

	.passion03 .prosess .box02 {
		padding: 7.32% 0 14.64%;
	}

	.passion03 .prosess .box02 .lBox {
		width: 48.3%;
		max-width: 660px;
		padding: 7.32% 0 0 9.5%;
	}

	.passion03 .box02 .lBox {
		padding-top: 1.55em;
		position: relative;
	}

	.passion03 .box02 .lBox.deco::before {
		width: 45.6%;
		padding-top: 97%;
		top: -23%;
		left: 12%;
	}

	.passion03 .prosess .box02 .rBox {
		max-width: 500px;
		width: 36.6%;
		margin-right: 5%;
	}

	.passion03 .box02 .rBox {
		position: relative;
	}

	.passion03 .box02 .rBox.deco::before {
		width: 75.6%;
		padding-top: 80%;
		top: 10%;
		left: -9%;
	}

	.passion03 .prosess .box03 {
		margin-bottom: 13.1%;
	}

	.passion03 .box03 .lBox.deco::before {
		width: 68.2%;
		padding-top: 65%;
		bottom: -34%;
		left: 0;
	}

	.passion03 .prosess .box03 .lBox h3 {
		padding: 9.8% 0 0 28.2%;
	}

	.passion03 .prosess .box03 .lBox p {
		padding: 0 9% 11.2% 28.2%;
	}

	.passion03 .prosess .box03 .lBox .imgBox {
		text-align: right;
		position: relative;
	}

	.passion03 .prosess .box03 .rBox {
		width: 39.6%;
		max-width: 542px;
	}

	.passion03 .prosess .box04 {
		margin-bottom: 5.8%;
	}

	.passion03 .prosess .box04 .inner {
		max-width: 960px;
	}

	.passion03 .prosess .box04 .lBox,
	.passion03 .prosess .box04 .rBox {
		width: 46.8%;
		max-width: 450px;
	}

	.passion04 .headerText h2 span {
		display: block;
		margin: 0.5em 0;
	}

	.passion04 .box01 .inner {
		max-width: 1366px;
		padding: 0 0 4.4%;
	}

	.passion04 .box01 .lBox {
		width: 40.6%;
		max-width: 555px;
		margin-right: 10px;
	}

	.passion04 .box01 .lBox.deco::before {
		width: 40%;
		padding-top: 228%;
		top: 0;
	}
	.passion04 .box01 .rBox {
		width:51.9%;
		max-width: 770px;
	}

	.passion04 .box01 .rBox.deco::before {
		width: 67.6%;
		padding-top: 124%;
		top: 23.5%;
	}

	.passion04 .box01 .rBox img {
		width: 62%;
		margin: 9% 0 15.4% 38%;
	}

	.passion04 .box01 .rBox .infoText p {
		padding-right: 10px;
		padding-bottom: 1.5em;
	}

	.passion04 .box02 .inner {
		max-width:1366px;
		margin-bottom: 18.3%;
	}

	.passion04 .box02 .lBox {
		width: 50.5%;
		max-width: 690px;
		padding-top: 4.22%;
		padding-left: 8.8%;
		margin-right: 10px;
	}

	.passion04 .box02 .rBox {
		width: 39.8%;
		max-width: 410px;
		margin: 0 auto 0 9.5%;
		text-align: right;
	}

	.passion04 .box02 .rBox .movieBox {
		width: 100%;
		max-width: 410px;
		margin: 0;
	}

	.passion04 .box03 .inner {
		max-width: 1366px;
		margin: 0 auto 13.2%;
		padding: 0;
	}

	.passion04 .box03 .lBox {
		width: 52%;
		max-width: 710px;
		margin-left: 10px;
	}

	.passion04 .box03 .infoText h3,
	.passion04 .box03 .infoText p {
		padding: 0 0 1em 25%;
	}

	.passion04 .box03 .infoText a {
		margin-left: 25%;
	}

	.passion04 .box03 .lBox .imgBox {
		width: 50.3%;
		max-width: 350px;
		margin-left: 39.4%;
		padding-top: 16.9%;
		position: relative
	}

	.passion04 .box03 .lBox .imgBox::before {
		position: absolute;
		width: 132%;
		padding-top: 114%;
		top: 16%;
		left: -57%;
	}

	.passion04 .box03 .rBox {
		width: 40.6%;
		max-width: 546px;
	}

	.passion04 .box03 .rBox.deco::before {
		width: 60.9%;
		padding-top: 146%;
		top: 0;
	}

	.passion04 .box04 .lBox.movieBox,
	.passion04 .box04 .rBox.movieBox {
		max-width: 460px;
	}

	.passion04 .box04 .lBox {
		margin-right: 10px;
	}

	.passion05 header {
		margin-bottom: 5.2%;
	}

	.passion05 .leadText {
		font-size: 1.22em;
		text-align: center;
		margin-bottom: 5.2%;
	}
	
	.passion05 .bgBotanical {
		margin-bottom: 3.6%;
	}

	.passion05 .bgBotanical .inner {
		display: flex;
		justify-content: space-between;
		padding: 6% 0;
	}

	.passion05 .bgBotanical .inner .movieBox {
		max-width: 450px;
		width: 48.9%;
		margin: 0;
	}

	.passion05 .quality .imgBox img,
	.passion05 .imgBox .movieBox  {
		width: 46.8%;
		max-width: 450px;
	}

	.passion05 .bgBotanical .inner img {
		max-width: 450px;
		width: 48.9%;
	}

	.passion05 .imgBox .movieBox img {
		width: 100%;
	}

	.passion05 .quality article table th {
		width: 48%;
		max-width: 414px;
	}

	.passion05 .quality .imgBox {
		display: flex;
		justify-content: space-between;
	}

	.passion06 .leadImage .deco::before {
		width: 100%;
		padding-top: 20.8em;
		top: 50%;
		left: 0;
		transform: translate(0, -50%);
	}

	.passion06 .imgBox {
		display: flex;
		justify-content: space-between;
	}

	.passion06 .imgBox img,
	.passion06 .imgBox .movieBox {
		width: 46.8%;
		max-width: 450px;
	}

	.passion06 .imgBox .movieBox img {
		width: 100%;
	}

	#footer .privacyLink {
		font-size: 0.75em;
	}
}