@charset "UTF-8";



.fill-ptn1{
	background: url(../img/bg-grn-1-80.jpg) repeat-y 50% 0;
	background-size: 100% auto;
}
.fill-ptn2{
	background: url(../img/bg-brn-1-80.jpg) repeat 50%;
}
.fill-col1{
	background-color: var(--col-wh2);
}

.fill-ptn1.add-nami,
.fill-col1.add-nami{
	position: relative;
}
.fill-ptn1.add-nami>.inner,
.fill-col1.add-nami>.inner{
	position: relative;

}
.fill-ptn1.add-nami:before{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: min(8.3vw,120px);
	background: url(../img/bg-grn-0.png) repeat-x 0 100%;
	background-size: auto 100%;
	top: calc(var(--pixel25) *-1);
}

.fill-col1.add-nami:before{
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: var(--pixel80);
	background: url(../img/bg-wht-0.svg) repeat-x 0 100%;
	background-size: auto 100%;
	top: calc(var(--pixel45) *-1);
}


.com-title-h2{
	display: flex;
	justify-content: center;
	text-align: center;
	padding-bottom: var(--pixel65);
	margin: 0;
}
.com-title-h2 span{
	font-size: var(--pixel24);
	line-height: 1.4;
	padding-top: 0.3em;
	width: min(20.8vw,300px);
	height: var(--pixel54);
	background: url(../img/mid1_g.svg) no-repeat;
	color: #FFF;
}
.fill-ptn1 .com-title-h2 span{
	background-image: url(../img/mid1_w.svg);
	color: var(--col-green);
}
@media screen and (max-width: 768px) {
	.com-title-h2{
		padding-bottom: var(--pixel35);
	}
	.com-title-h2 span{
		font-size: var(--pixel12);
		width: 40vw;
		height: var(--pixel28);
	}
}

.com-btn-elli{
	position: relative;
	min-width: min(22.2vw,320px);
	font-size: var(--pixel18);
	text-align: center;
	letter-spacing: -0.03em;
	color: #FFF;
	background-color: var(--col-green);
	height: var(--pixel40);
	border-radius: var(--pixel20);
	padding-top: 0.6em;
	background-image: var(--ico-arr1);
	background-size: var(--pixel07) auto;
	background-repeat: no-repeat;
	background-position: top 50% right var(--pixel18);
}
.com-btn-elli.type2{
	min-width: min(27.6vw,397px);
	font-size: var(--pixel22);
	font-weight: bold;
	color: var(--col-green);
	background-color: var(--col-wh2);
	height: var(--pixel68);
	border-radius: var(--pixel34);
	padding-top: 1em;
	background-image: var(--ico-arr1b);
	background-size: var(--pixel08) auto;
	background-position: top 50% right var(--pixel12);
}
@media screen and (max-width: 768px) {
	.com-btn-elli{
		position: relative;
		min-width: 57.3vw;
		font-size: var(--pixel12);
		height: var(--pixel28);
		border-radius: var(--pixel14);
		padding-top: 0.6em;
		background-size: 1.2vw auto;
		background-position: top 50% right var(--pixel12);
	}
	.com-btn-elli.type2{
		min-width: 82.9vw;
		font-size: var(--pixel18);
		height: var(--pixel48);
		border-radius: var(--pixel24);
		padding-top:0.8em;
		background-size: var(--pixel05) auto;
		background-position: top 50% right var(--pixel16);
	}
}




#gh a{
	position: relative;
	color: #FFF;
	font-size: var(--pixel18);
	font-weight: bold;
}
#gh a:hover:after{
	content: "";
	position: absolute;
	width: 100%;
	height: var(--pixel03);
	background: var(--img-line1) repeat-x;
	background-size: auto 100%;
	bottom: calc(var(--pixel10) *-1);
	left: 0;
	right: 0;
}
#menu{
	height: var(--pixel80);
	display: flex;
	justify-content: center;
	align-items: center;
}
#menu li+li{
	margin-left: 6em;
}
@media screen and (max-width: 768px) {
	#gh a{
		font-size: var(--pixel14);
		font-weight: bold;
	}
	#menu{
		height: var(--pixel60);
	}
	#menu li+li{
		margin-left: 1.8em;
	}
}







.cont-concept{
	padding-top: var(--pixel80);
	padding-bottom: min(11.1vw,160px);
	overflow: hidden;
}
.cont-concept .elem1{
	width: min(69.4vw,1000px);
	min-height: min(68.2vw,982px);
	background: url(../img/copy1-bg.svg) no-repeat 50%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	margin: min(8.7vw,125px) auto;
}
.cont-concept .elem1 .part1{
	width: min(23.2vw,334px);
}
.cont-concept .elem1 .part2{
	width: min(51.8vw,746px);
	margin-top: var(--pixel55);
}
.cont-concept .elem1 .lead{
	font-size: var(--pixel22);
	line-height: 2.2;
	margin-top: var(--pixel25);
	text-align: center;
	font-weight: bold;
}


@media screen and (min-width:769px){
	.elem-bnrs{
		flex-direction: row;
		justify-content: center;
	}
	.elem-bnrs a+a{
		margin-left: var(--pixel30);
	}
}

@media screen and (max-width:768px){
	.elem-bnrs a+a{
		margin-top: var(--pixel15);
	}
}


@media screen and (max-width:768px){
	.cont-concept{
		padding: 0;
	}
	.cont-concept .inner{
		padding: var(--pixel20) 0 var(--pixel70);
	}
	.cont-concept .com-wrap-c{
		padding: 0 var(--pixel10);
	}
	.cont-concept .elem1{
		width: 100%;
		min-height: 100%;
		background-size: auto 100%;
		margin: var(--pixel80) auto 0;
		padding: var(--pixel80) var(--pixel20);
	}
	.cont-concept .elem1 .part1{
		width: 48.3vw;
	}
	.cont-concept .elem1 .part2{
		width: 100%;
		margin-top: var(--pixel30);
	}
	.cont-concept .elem1 .lead{
		font-size: var(--pixel14);
		margin-top: var(--pixel12);
		padding: 0 var(--pixel10);
	}
}




.cont-koda{
	overflow: hidden;
	padding: min(11.8vw,170px) 0;
}
.cont-koda [class^="wrap"]{
	position: relative;
}
.cont-koda [class^="abp"]{
	position: absolute;
}
@media screen and (min-width: 769px) {
	.cont-koda .abp-1{
		width: min(32.7vw,471px);
		top: calc(var(--pixel70) *-1);
		left: calc(min(12vw,171px) *-1);
	}
	.cont-koda .abp-2{
		width: min(22.8vw,329px);
		top: calc(var(--pixel64) *-1);
		right: 0;
	}
	.cont-koda .abp-3{
		width: min(19.7vw,283px);
		left: calc(var(--pixel40) *-1);
		top: calc((min(8.3vw,120px)) *-1);
	}
	.cont-koda .abp-4{
		width: min(28.5vw,410px);
		right: calc((min(10.4vw,150px)) *-1);
		top: calc(var(--pixel40) *-1);
	}
	.cont-koda .abp-4>*{
		-webkit-transform: rotate(225deg);
		transform: rotate(225deg);
	}
	.cont-koda .abp-5{
		width: min(21.4vw,308px);
		left: 0;
		bottom: calc((min(12.5vw,180px)) *-1);
	}
	.cont-koda .abp-6{
		width: min(14.7vw,211px);
		right: var(--pixel55);
		bottom: calc(var(--pixel55) *-1);
	}
	.cont-koda .abp-7{
		width: min(27.3vw,393px);
		left: calc((min(10.4vw,150px)) *-1);
		bottom: calc((min(15.3vw,220px)) *-1);
	}
	.cont-koda .abp-8{
		width: min(11.5vw,166px);
		right: var(--pixel40);
		bottom: calc((min(18.8vw,270px)) *-1);
	}
	.cont-koda .abp-9{
		width: min(28.8vw,415px);
		left: calc((min(9.7vw,140px)) *-1);
		bottom: calc(var(--pixel100) *-1);
	}
	.cont-koda .abp-9>*{
		-webkit-transform: rotate(52deg);
		transform: rotate(52deg);
	}
	.cont-koda .abp-10{
		width: min(19.7vw,283px);
		right: calc(var(--pixel50) *-1);
		bottom: var(--pixel14);
	}
	
	.cont-koda .abp-t1{
		top: calc(var(--pixel80) *-1);
		right: 0;
	}
	.cont-koda .abp-t2{
		top: calc(min(9.7vw,140px) *-1);
		left: 0;
	}
	.cont-koda .abp-t3{
		top: calc(min(9vw,130px) *-1);
		right: 0;
	}
}





.cont-koda [class^="abp-t"]{
	width: min(20.8vw,300px);
	height: auto;
}
.cont-koda .wrap1{
	padding-bottom: var(--pixel65);
}
.cont-koda .wrap1 .lead{
	font-size: var(--pixel22);
	text-align: center;
	font-weight: bold;
}
.cont-koda .wrap2+.wrap2{
	margin-top: var(--pixel80);
}
@media screen and (min-width: 769px) {
	.cont-koda .wrap2 .box2,
	.cont-koda .wrap2 .lu-wr{
		display: flex;
		align-items: flex-end;
	}
	.cont-koda .wrap2:nth-child(odd) .box2,
	.cont-koda .wrap2:nth-child(odd) .lu-wr{
		flex-direction: row-reverse;
	}
	.cont-koda .wrap2:nth-child(even) .elem-txt{
		margin-left: calc((var(--pixel100)) *-1);
	}
	.cont-koda .wrap2:nth-child(odd) .elem-txt{
		margin-right: calc((var(--pixel100)) *-1);
	}
}




.cont-koda .elem-img{
	width: min(48.6vw,700px);
}
.cont-koda .elem-txt{
	position: relative;
	width: min(34.7vw,500px);
	background: url(../img/ko-txtbg.svg) no-repeat 0 50%;
	background-size: 100% 100%;
	padding: var(--pixel80) var(--pixel100);
	min-height: min(26.4vw,380px);
}


.cont-koda .elem-txt .part-title{
	display: flex;
	align-items: center;
}
.cont-koda .elem-txt .part-title .num{
	color: var(--col-wh);
	font-size: var(--pixel76);
	font-weight: bold;
	line-height: 1;
	-webkit-text-stroke: 3px var(--col-green);
}
.cont-koda .elem-txt .part-title .txt{
	font-size: var(--pixel25);
	font-weight: bold;
	letter-spacing: 0;
	line-height: 1.4;
	padding-left: 0.8em;
	padding-top: 0.3em;
	white-space: nowrap;
}
.cont-koda .elem-txt .lead{
	font-size: var(--pixel18);
	line-height: 1.6;
	letter-spacing: -0.07em;
	text-align: justify;
	margin-top: 1.2em;
}


@media screen and (max-width: 768px) {
	.cont-koda{
		padding: 20vw 0 38.7vw;
	}
	.cont-koda [class^="abp-t"]{
		width: 55.5vw;
	}
	.cont-koda .wrap1{
		padding-bottom: var(--pixel70);
	}
	.cont-koda .wrap1 .lead{
		font-size: var(--pixel14);
	}
	.cont-koda .wrap2+.wrap2{
		margin-top: 34vw;
	}
	.cont-koda .wrap1 .inner{
		padding-left: var(--pixel40);
		padding-right: var(--pixel40);
	}
	.cont-koda .wrap2 .inner{
		padding-left: 0;
		padding-right: 0;
	}
	.cont-koda .elem-img{
		width: 92.3vw;
	}
	.cont-koda .wrap2:nth-child(3) .elem-img{
		width: 85.9vw;
	}
	.cont-koda .elem-txt{
		width: 86.9vw;
		padding: var(--pixel55) var(--pixel35) var(--pixel65);
		min-height: min(70vw,260px);
		margin-top: calc(var(--pixel90) *-1);
	}
	.cont-koda .wrap2:nth-child(even) .elem-img{
		margin-left: calc(var(--pixel40) *-1);
	}
	.cont-koda .wrap2:nth-child(even) .elem-txt{
		margin-left: auto;
		margin-right: var(--pixel15);
	}
	.cont-koda .wrap2:nth-child(odd) .elem-img{
		margin-left: auto;
		margin-right: calc(var(--pixel30) *-1);
	}
	.cont-koda .wrap2:nth-child(odd) .elem-txt{
		margin-left: var(--pixel15);
	}

	.cont-koda .elem-txt .part-title .num{
		font-size: var(--pixel62);
		-webkit-text-stroke: 2px var(--col-green);
	}
	.cont-koda .elem-txt .part-title .txt{
		font-size: var(--pixel22);
		font-weight: bold;
	}
	.cont-koda .elem-txt .lead{
		font-size: var(--pixel12);
	}



	.cont-koda .abp-t1{
		left: calc(var(--pixel15) *-1);
		bottom: calc(var(--pixel55) *-1);
	}
	.cont-koda .abp-t2{
		width: 58vw;
		right: calc(var(--pixel35) *-1);
		bottom: calc(var(--pixel90) *-1);
	}
	.cont-koda .abp-t3{
		width: 49.6vw;
		left: var(--pixel10);
		bottom: calc(var(--pixel95) *-1);
	}
	.cont-koda .abp-1{
		width: 38.9vw;
		top: calc(var(--pixel30) *-1);
		left: calc(var(--pixel60) *-1);
	}
	.cont-koda .abp-2{
		width: var(--pixel92);
		top: calc(var(--pixel48) *-1);
		right: 0;
	}
	.cont-koda .abp-3{
		width: var(--pixel90);
		top: calc(var(--pixel65) *-1);
		left: calc(var(--pixel10) *-1);
	}
	.cont-koda .abp-4{
		width: 36.5vw;
		top: calc(var(--pixel33) *-1);
		right: calc(var(--pixel43) *-1);
	}
	.cont-koda .abp-4>*{
		-webkit-transform: rotate(225deg);
		transform: rotate(225deg);
	}
	.cont-koda .abp-5{
		width: var(--pixel97);
		bottom: calc(35.5vw *-1);
		left: 0;
	}
	.cont-koda .abp-6{
		width: var(--pixel65);
		bottom: calc(var(--pixel47) *-1);
		right: var(--pixel10);
	}
	.cont-koda .abp-7{
		width: 32.5vw;
		bottom: calc(var(--pixel90) *-1);
		left: calc(var(--pixel48) *-1);
	}
	.cont-koda .abp-8{
		width: var(--pixel53);
		bottom: calc(48vw *-1);
		right: var(--pixel19);
	}
	.cont-koda .abp-9{
		width: 32.5vw;
		bottom: calc(var(--pixel20) *-1);
		left: calc(var(--pixel48) *-1);
	}
	.cont-koda .abp-9>*{
		-webkit-transform: rotate(52deg);
		transform: rotate(52deg);
	}
	.cont-koda .abp-10{
		width: var(--pixel90);
		bottom: calc(var(--pixel70) *-1);
		right: var(--pixel19);
	}
}




.cont-lineup{
	padding: min(8.3vw,120px) 0 min(11.1vw,160px);
}
.cont-lineup .elem1>li+li{
	margin-top: var(--pixel40);
}
.cont-lineup .elem-gr {
	background: url(../img/lineup-bg.svg) no-repeat;
	background-size: 100% 100%;
	padding: var(--pixel100) var(--pixel100) var(--pixel80);
}
.cont-lineup .gr-title{
	font-size: var(--pixel40);
	line-height: 1.5;
	padding-bottom: 1em;
	margin-bottom: 1em;
	/* background: url(../img/lineup-line.png) repeat-x 0 100%;
	background-size: auto var(--pixel03); */
	border-bottom: var(--pixel03) solid var(--col-k);
}
.cont-lineup .gr-img,
.cont-lineup .gr-txt{
	font-family: var(--wf-noto);
	font-weight: 400;
	font-size: var(--pixel16);
	line-height: 1.8;
	letter-spacing: 0;
}
.cont-lineup .gr-img .txt{
	margin-top: 0.8em;
}
@media screen and (min-width: 769px) {
	.cont-lineup .elem-gr {
		display: grid;
		grid-template-columns: 300px 1fr;
		align-items: start;
	}
	.cont-lineup .gr-img {
		width: min(20.8vw,300px);
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		height: 100%;
	}
	.cont-lineup .gr-info {
		display: grid;
		grid-template-rows: auto 1fr;
		padding-left: var(--pixel100);
		padding-bottom: var(--pixel70);
	}
	.cont-lineup .com-wrap-c {
		grid-column: 1 / -1;
		grid-row: 3;
		text-align: center;
	}
}

@media screen and (max-width: 768px) {
	.cont-lineup{
		padding: var(--pixel70) 0 var(--pixel85);
	}
	.cont-lineup .elem-gr {
		padding: var(--pixel40) var(--pixel30);
	}
	.cont-lineup .gr-info {
		margin-top: var(--pixel20);
		padding-bottom: var(--pixel40);
	}
	.cont-lineup .gr-img .img{
		padding: 0 var(--pixel10);
	}
	.cont-lineup .gr-title{
		font-size: var(--pixel20);
		letter-spacing: 0;
		/* background-size: auto var(--pixel02); */
		border-width: var(--pixel02);
	}
	.cont-lineup .gr-img,
	.cont-lineup .gr-txt{
		font-size: var(--pixel10);
	}
}




.cont-nature{
	padding: min(9vw,130px) 0 min(10.4vw,150px);
}
/* .cont-nature .part-title{
	font-size: var(--pixel20);
	font-family: var(--wf-noto);
	font-weight: 400;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: var(--pixel65);
} */
.cont-nature .part-title-img{
	width: min(23.6vw,340px);
	margin: 0 auto var(--pixel65);
}
.cont-nature .part-title .sizeL{
	font-size: var(--pixel34);
	font-family: var(--wf-notoS);
	font-weight: 600;
	margin-top: 0.5em;
}
.cont-nature .lead{
	font-family: var(--wf-notoS);
	font-size: var(--pixel16);
	letter-spacing: 0;
	text-align: center;
}
.cont-nature .lead+.lead{
	margin-top: 1.5em;
}
.cont-nature .part-img{
	margin: var(--pixel60) auto 0;
	width: min(20.3vw,292px);
}
@media screen and (max-width: 768px) {
	.cont-nature{
		padding: var(--pixel55) 0 var(--pixel75);
	}
	.cont-nature .elem1{
		padding-left: 4vw;
		padding-right: 4vw;
	}
	/* .cont-nature .part-title{
		font-size: var(--pixel12);
		margin: 0 0 var(--pixel40);
	} */
	.cont-nature .part-title-img{
		width: 53.6vw;
		margin: 0 auto var(--pixel40);
	}
	.cont-nature .part-title .sizeL{
		font-size: var(--pixel20);
	}
	.cont-nature .lead{
		font-size: var(--pixel12);
		letter-spacing: 0.15em;
		/* text-align: justify; */
	}
	.cont-nature .lead+.lead{
		margin-top: 1.5em;
	}
	.cont-nature .part-img{
		margin: var(--pixel40) auto 0;
		width: 48.3vw;
	}
}



.cont-foot{
	background-position: 50% 100%;
	padding: var(--pixel85) 0 var(--pixel25);
}
.cont-foot .inner{
	display: flex;
	justify-content: center;
	align-items: center;
}
.cont-foot .elem1{
	display: flex;
	flex-direction: column;
	align-items: center;
	color: var(--col-wh2);
	margin-left: var(--pixel55);
}
.cont-foot .elem1 .part-title{
	font-size: var(--pixel16);
	font-weight: bold;
	margin: 0 0 1em;
}
.cont-foot .elem1 .box3{
	display: flex;
}
.cont-foot .elem1 a{
	width: var(--pixel57);
	padding: var(--pixel05);
}
.cont-foot .elem1 a+a{
	margin-left: var(--pixel20);
}
@media screen and (max-width: 768px) {
	.cont-foot{
		padding: var(--pixel40) 0;
	}
	.cont-foot .inner{
		flex-direction: column;
	}
	.cont-foot .elem1{
		margin-left: 0;
		margin-top: var(--pixel40);
	}
	.cont-foot .elem1 a{
		width: var(--pixel61);
	}
}




.brandSiteFooter{
	border-top: none;
	font-family: "Zen Maru Gothic", serif;
	font-weight: 500;
}
.brandSiteFooter .link{
	background: url(../img/bg-grn-1-80.jpg) repeat-y 50% 0;
	background-size: 100% auto;
}
@media screen and (max-width: 599px) {
	.brandSiteFooter .link{
		background: #FFF;
	}
	.brandSiteFooter .link .policy{
		margin-top: 0;
		padding-left: 0;
	}
	.brandSiteFooter .link .copyright{
		margin: 0;
	}
    /* .brandSiteFooter .link {
		border-top: none;
	}
	.brandSiteFooter .link .policy{
		margin-top: 0;
	}
	.brandSiteFooter .link a{
		color: #FFF;
	}
	.brandSiteFooter .link .copyright{
		background: none;
	} */
}




