@charset "UTF-8";
/* placeholder color */
/**********************************************************************************************

future

**********************************************************************************************/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@600;900&display=swap');
.inner {
	max-width: 1024px;
	container-type: inline-size;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.reveals{
	opacity: 1;
	transition: 1s all;
}
.showup{
	opacity: 1;
}

.pc{
	display: block;
}
.sp{
	display: none;
}
.pc-flex{
	display: flex !important;
}
.sp-flex{
	display: none !important;
}

.bg1{
/* 	background-image: url("../img/future/bg1.png");
	width: 100cqw;
	height: 126.212109375cqw; */
	background-image: url("../img/future/bg1-new.png");
/* 	width: 100vw;
	height: 85.60486979166666vw; */
	width: 1920px;
    height: 1643.6135px;
	background-size: cover;
	background-position: center top;
}
.bg1 div{
/* 	padding-top: 53.7109375cqw; */
	padding-top: 71.710938cqw;
	gap: 4.39453125cqw;
	display: flex;
	justify-content: center;
}
.bg1 p{
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
	font-style: normal;
	font-size: 1.7578125cqw;
	line-height: 3.515625cqw;
}
.bg1 p > span{
	font-weight: 900;
	font-size: 2.34375cqw;
}
.bg1 img{
	width: 21.484375cqw;
	height: 30.46875cqw;
	margin-top: 8.30078125cqw;
}


.bg2{
	background-image: url("../img/future/bg2.png");
	width: 100cqw;
	height: 102.05078125cqw;
	background-size: cover;
	background-position: center top;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.ribbon{
	width: 82.03125cqw;
	height: 4.19921875cqw;
	line-height: 4.19921875cqw;
	font-size: 2.34375cqw; 
	text-align: center;
	font-family: "Noto Serif JP", serif;
	font-weight: 900;
	font-style: normal;
	color: white;
}

.blue{
	background-color: #0070C0;
}

.red{
	background-color: #D73A33;
}

.celebrate{
	display: flex;
	justify-content: center;
	gap: 4.39453125cqw;
	margin-top: 4.8828125cqw;
}
.celebrate p{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.3671875cqw;
	line-height: 2.44140625cqw;
	width: 53.380390625cqw;
	text-align: justify;
}
.director{
	display: flex;
	align-items: center;
	flex-direction: column;
}
.director img{
	width: 24.12109375cqw;
	height: 29.78515625cqw;
}
.director p{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	text-align: center;
	font-size: 1.3671875cqw;
	line-height: 2.83203125cqw;
	margin-top: 1.953125cqw;
	letter-spacing: 0.07em;
	width: auto;
}
.director p span{
	font-size: 2.44140625cqw;
	letter-spacing: -0.01em;
}



.bg3{
	background-color: #E5F8FE;
	width: 100cqw;
	height: 332.401309cqw;
	background-size: cover;
	background-position: center top;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 13.4765625cqw;
}
.future{
	margin-top: 2.44140625cqw;
	margin-bottom: 5.859375cqw;
	line-height: 2.9296875cqw;
	font-size: 1.66015625cqw; 
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
	font-style: normal;
	text-align: center;
}

.future-list{
	display: flex;
	justify-content: space-between;
	width: 82.03125cqw;
}
.future-image{
	display: flex;
	flex-direction: column;
	align-items: center;
}
.future-image img{
	width: 35.9375cqw;
}
.future-image p{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	font-size: 1.85546875cqw;
	line-height: 2.34375cqw;
	margin-top: 0.9765625cqw;
	text-align: center;
}
.future-image p > span{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
	font-size: 1.3671875cqw;
}
.future-text{
	width: 43.9453125cqw;
}
.future-text p:nth-of-type(1){
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: bold;
	font-style: normal;
	font-size: 1.85546875cqw;
	line-height: 2.34375cqw;
	padding-bottom: 1.46484375cqw;
	border-bottom: 0.09765625cqw solid #0070C0;
	color: #0070C0;
}
.future-text p:nth-of-type(2){
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	margin-top: 1.46484375cqw;
	font-size: 1.3671875cqw;
	line-height: 2.44140625cqw;
}

.future-list:nth-of-type(2) {
	margin-top: 2.9296875cqw;
}
.future-list:nth-of-type(2) .future-text {
	margin-top: 5.859375cqw;
}
.future-list:nth-of-type(3){
	margin-top: 1.46484375cqw;
}
.future-list:nth-of-type(3) .future-text{
	margin-top: 8.7890625cqw;
}
.future-list:nth-of-type(4) {
	margin-top: 2.9296875cqw;
}
.future-list:nth-of-type(4) .future-text {
	margin-top: 4.8828125cqw;
}
.future-list:nth-of-type(5) {
	margin-top: 6.8359375cqw;
}
.future-list:nth-of-type(5) .future-text {
	margin-top: 0.9765625cqw;
}
.future-list:nth-of-type(6){
	margin-top: 4.8828125cqw;
}
.future-list:nth-of-type(6) .future-text {
	margin-top: 7.8125cqw;
}
.future-list:nth-of-type(7){
	margin-top: 7.32421875cqw;
}
.future-list:nth-of-type(7) .future-text{
	margin-top: 2.9296875cqw;
}
.future-list:nth-of-type(8) {
	margin-top: 8.7890625cqw;
}
.future-list:nth-of-type(8) .future-text {
	margin-top: 0.9765625cqw;
}

.bg4{
	background-image: url("../img/future/bg4.png");
	width: 100cqw;
	height: 249.0234375cqw;
	background-size: cover;
	background-position: center top;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.flow-container{
	margin-top: 4.8828125cqw;
	display: flex;
	justify-content: center;
}
.major{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	text-align: center;
	font-size: 1.66015625cqw;
	line-height: 3.7109375cqw;
	width: 20.5078125cqw;
	height: 4.00390625cqw;
	margin-top: 9.08203125cqw;
	left: 10.05859375cqw;
	border: 0.09765625cqw solid ;
	position: absolute;
	background-color: white;
}
.founder{
	display: flex;
	flex-direction: column;
	align-items: center;
	position: absolute;
	right: 13.76953125cqw;
	margin-top: 13.96484375cqw;
}
.founder img{
	width: 10.041171875cqw;
	height: 10.839980468750001cqw;
}
.founder p{
	margin-top: 0.48828125cqw;
	line-height: 1.7578125cqw;
	font-size: 1.3671875cqw; 
	text-align: center;
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
	font-style: normal;
}
.founder p > span{
	font-size: 1.66015625cqw; 
}
.left{
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	margin-right: 0.9765625cqw;
}
.left p{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	font-size: 1.66015625cqw;
}
.left p:nth-of-type(1) {
	margin-top: 7.51953125cqw;
}
.left p:nth-of-type(2) {
	margin-top: 0.87890625cqw;
}
.left p:nth-of-type(3) {
	margin-top: 18.26171875cqw;
}
.left p:nth-of-type(4) {
	margin-top: 8.3984375cqw;
}
.left p:nth-of-type(5) {
	margin-top: 0.9765625cqw;
}
.left p:nth-of-type(6) {
	margin-top: 5.859375cqw;
}
.left p:nth-of-type(7) {
	margin-top: 6.93359375cqw;
}
.left p:nth-of-type(8) {
	margin-top: 2.9296875cqw;
}
.left p:nth-of-type(9) {
	margin-top: 11.62109375cqw;
}
.left p:nth-of-type(10) {
	margin-top: 1.85546875cqw;
}
.left p:nth-of-type(11) {
	margin-top: 1.953125cqw;
}
.left p:nth-of-type(12) {
	margin-top: 3.61328125cqw;
}
.left p:nth-of-type(13) {
	margin-top: 1.171875cqw;
}
.left p:nth-of-type(14) {
	margin-top: 17.1875cqw;
}
.left p:nth-of-type(15) {
	margin-top: 3.80859375cqw;
}
.left p:nth-of-type(16) {
	margin-top: 11.328125cqw;
}
.left p:nth-of-type(17) {
	margin-top: 1.7578125cqw;
}
.left p:nth-of-type(18) {
	margin-top: 4.39453125cqw;
}
.left p:nth-of-type(19) {
	margin-top: 2.05078125cqw;
}
.left p:nth-of-type(20) {
	margin-top: 1.66015625cqw;
}
.left p:nth-of-type(21) {
	margin-top: 5.17578125cqw;
}
.flow-image{
	width: 19.53125cqw;
	height: 231.93359375cqw;
}
.right{
	margin-left: 0.9765625cqw;
}
.right p{
	line-height: 2.5390625cqw;
	font-size: 1.66015625cqw; 
	letter-spacing: 0.04em;
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
	font-style: normal;
}
.right p span{
	color: #0070C0;
}

.right p:nth-of-type(1){
	margin-top: 8.49609375cqw;
}
.right p:nth-of-type(2){
	margin-top: 12.890625cqw;
}
.right p:nth-of-type(3){
	margin-top: 8.7890625cqw;
}
.right p:nth-of-type(4){
	margin-top: 3.41796875cqw;
}
.right p:nth-of-type(5){
	margin-top: 1.3671875cqw;
}
.right p:nth-of-type(6){
	margin-top: 3.515625cqw;
}
.right p:nth-of-type(7){
	margin-top: 11.328125cqw;
}
.right p:nth-of-type(8){
	margin-top: 2.05078125cqw;
}
.right p:nth-of-type(9){
	margin-top: 8.10546875cqw;
}
.right p:nth-of-type(10){
	margin-top: 17.67578125cqw;
}
.right p:nth-of-type(11){
	margin-top: 1.26953125cqw;
}
.right p:nth-of-type(12){
	margin-top: 4.1015625cqw;
}
.right p:nth-of-type(13){
	margin-top: 12.59765625cqw;
}
.right p:nth-of-type(14){
	margin-top: 0.87890625cqw;
}
.right p:nth-of-type(15){
	margin-top: 1.26953125cqw;
}
.right p:nth-of-type(16){
	margin-top: 2.24609375cqw;
}


.last{
	line-height: 4.8828125cqw;
	font-size: 2.34375cqw; 
	margin-top: 3.90625cqw;
	font-family: "Noto Serif JP", serif;
	font-weight: 600;
	font-style: normal;
	text-align: center;
}
.foot_top {
	background-color: #E5F8FE;
}
@media (max-width: 750px) {
    .inner {
        max-width: 100vw;
    }
}
@media only screen and (max-width: 750px) {
	.pc{
		display: none;
	}
	.sp{
		display: block;
	}
	.pc-flex{
		display: none !important;
	}
	.sp-flex{
		display: flex !important;
	}
	.revealssp{
		opacity: 1;
		transition: 1s all;
	}
	.showupsp{
		opacity: 1;
	}
	.bg1{
		background-image: url("../img/future/bg1_sp.png");
		width: 100vw;
		height: 315.55152vw;
		background-size: cover;
		background-position: center top;
	}
	.bg1 div {
		padding-top: 160.333333vw;
		gap: 9.333333333333334vw;
		display: flex;
		align-items: center;
		flex-direction: column;
	}
	.bg1 p {
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-style: normal;
		width: 83.73333333333333vw;
		font-size: 3.4666666666666663vw;
		line-height: 6.4vw;
	}
	.bg1 p > span {
		font-weight: 900;
		font-size: 5.066666666666666vw;
		line-height: 7.466666666666668vw;
		letter-spacing: 0.02em;
	}
	.bg1 img {
		width: 72.8vw;
		height: 102.93333333333334vw;
		margin-top: 0;
	}


	.bg2{
		background-image: url("../img/future/bg2_sp.png");
		width: 100vw;
		height: 366.8vw;
		background-size: cover;
		background-position: center top;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.ribbon {
		width: 83.73333333333333vw;
		height: 10.666666666666668vw;
		line-height: 10.666666666666668vw;
		font-size: 5.066666666666666vw;
		text-align: center;
		font-family: "Noto Serif JP", serif;
		font-weight: 900;
		font-style: normal;
		color: white;
	}
	.celebrate {
		display: flex;
		justify-content: center;
		gap: 6.666666666666667vw;
		margin-top: 8vw;
		flex-direction: column-reverse;
		align-items: center;
	}
	.director {
		display: flex;
		flex-direction: row;
		align-items: center;
		gap: 4vw;
		width: 83.73333333333333vw;
	}
	.director img {
		width: 38.666666666666664vw;
		height: 47.733333333333334vw;
	}
	.director p {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		text-align: center;
		font-size: 3.4666666666666663vw;
		line-height: 7.733333333333333vw;
		margin-top: 0;
		letter-spacing: 0.07em;
		width: auto;
	}
	.director p span {
		font-size: 6.666666666666667vw;
		letter-spacing: -0.01em;
	}
	.celebrate p {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-size: 3.4666666666666663vw;
		line-height: 6.133333333333333vw;
		width: 83.73333333333333vw;
		text-align: justify;
	}


	.bg3{
		/*         background-image: url("../img/future/bg3_sp.png"); */
		width: 100vw;
		height: 1447.866667vw;
		background-size: cover;
		background-position: center top;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.red {
		background-color: #D73A33;
		height: 18.666666666666668vw;
		line-height: 6.666666666666667vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.blue {
		background-color: #0070C0;
		height: 18.666666666666668vw;
		line-height: 6.666666666666667vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	.future {
		margin-top: 6.666666666666667vw;
		margin-bottom: 14.133333333333335vw;
		line-height: 6.4vw;
		font-size: 3.4666666666666663vw;
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-style: normal;
		text-align: center;
	}
	.future-list {
		display: flex;
		width: 83.73333333333333vw;
		flex-direction: column;
		align-items: center;
	}
	.future-image img {
		width: 83.73333333333333vw;
	}
	.future-image p {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: bold;
		font-style: normal;
		font-size: 4.533333333333333vw;
		line-height: 6.4vw;
		margin-top: 1.3333333333333335vw;
		text-align: center;
	}
	.future-image p > span {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: 400;
		font-style: normal;
		font-size: 3.2vw;
	}
	.future-text {
		width: 83.73333333333333vw;
	}
	.future-text p:nth-of-type(1) {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: bold;
		font-style: normal;
		font-size: 4.533333333333333vw;
		line-height: 6.4vw;
		margin-top: 5.333333333333334vw;
		padding-bottom: 5.333333333333334vw;
		border-bottom: 0.26666666666666666vw solid #0070C0;
		color: #0070C0;
	}
	.future-text p:nth-of-type(2) {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		margin-top: 5.333333333333334vw;
		font-size: 3.4666666666666663vw;
		line-height: 5.866666666666666vw;
	}

	.future-list:nth-of-type(2){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(2) .future-text{
		margin-top: 0;
	}
	.future-list:nth-of-type(3){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(3) .future-text{
		margin-top: 0;
	}
	.future-list:nth-of-type(4){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(4) .future-text{
		margin-top: 0;
	}
	.future-list:nth-of-type(5){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(5) .future-text{
		margin-top: 0;
	}
	.future-list:nth-of-type(6){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(6) .future-text{
		margin-top: 0;
	}
	.future-list:nth-of-type(7){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(7) .future-text{
		margin-top: 0;
	}
	.future-list:nth-of-type(8){
		margin-top: 20vw;
	}
	.future-list:nth-of-type(8) .future-text{
		margin-top: 0;
	}


	.bg4{
		background-image: url("../img/future/bg4_sp.png");
		width: 100vw;
		height: 936.8000000000001vw;
		background-size: cover;
		background-position: center top;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	.founder {
		display: flex;
		flex-direction: row;
		align-items: center;
		position: absolute;
		right: 0;
		left: 29.333333333333332vw;
		margin-top: 66.66666666666666vw;
	}
	.founder img {
		width: 27.419093333333333vw;
		height: 29.600373333333334vw;
	}
	.founder p {
		margin-top: 0;
		margin-left: 4vw;
		line-height: 4.8vw;
		font-size: 3.733333333333334vw;
		letter-spacing: 0.06em;
		text-align: start;
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-style: normal;
	}
	.founder p > span {
		font-size: 4.533333333333333vw;
	}
	.flow-container {
		margin-top: 8.799999999999999vw;
		display: flex;
		justify-content: center;
	}
	.flow-image {
		width: 22.400000000000002vw;
		height: 897.3333333333333vw;
	}
	.left {
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		margin-right: 0;
		margin-left: 17.866666666666667vw;
		position: absolute;
	}
	.left p {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-weight: 500;
		font-style: normal;
		font-size: 3.733333333333334vw;
		line-height: 5.333333333333334vw;
	}    
	.left p:nth-of-type(1) {
		margin-top: 6.133333333333333vw;
	}
	.left p:nth-of-type(2) {
		margin-top: 2.1333333333333333vw;
	}
	.left p:nth-of-type(3) {
		margin-top: 85.86666666666667vw;
	}
	.left p:nth-of-type(4) {
		margin-top: 56.266666666666666vw;
	}
	.left p:nth-of-type(5) {
		margin-top: 5.066666666666666vw;
	}
	.left p:nth-of-type(6) {
		margin-top: 58.4vw;
	}
	.left p:nth-of-type(7) {
		margin-top: 18.666666666666668vw;
	}
	.left p:nth-of-type(8) {
		margin-top: 33.6vw;
	}
	.left p:nth-of-type(9) {
		margin-top: 42.4vw;
	}
	.left p:nth-of-type(10) {
		margin-top: 13.066666666666665vw;
	}
	.left p:nth-of-type(11) {
		margin-top: 16.53333333333333vw;
	}
	.left p:nth-of-type(12) {
		margin-top: 38.4vw;
	}
	.left p:nth-of-type(13) {
		margin-top: 5.333333333333334vw;
	}
	.left p:nth-of-type(14) {
		margin-top: 70.39999999999999vw;
	}
	.left p:nth-of-type(15) {
		margin-top: 22.666666666666664vw;
	}
	.left p:nth-of-type(16) {
		margin-top: 61.6vw;
	}
	.left p:nth-of-type(17) {
		margin-top: 2.1333333333333333vw;
	}
	.left p:nth-of-type(18) {
		margin-top: 13.866666666666665vw;
	}
	.left p:nth-of-type(19) {
		margin-top: 43.46666666666666vw;
	}
	.left p:nth-of-type(20) {
		margin-top: 1.866666666666667vw;
	}
	.left p:nth-of-type(21) {
		margin-top: 52vw;
	}

	.right {
		margin-left: 1.3333333333333335vw;
	}
	.right p {
		line-height: 6.4vw;
		font-size: 4.533333333333333vw;
		letter-spacing: 0.04em;
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-style: normal;
	}
	.right p:nth-of-type(1) {
		margin-top: 23.200000000000003vw;
	}
	.right p:nth-of-type(2) {
		margin-top: 71.46666666666667vw;
	}
	.right p:nth-of-type(3) {
		margin-top: 40vw;
	}
	.right p:nth-of-type(4) {
		margin-top: 21.866666666666667vw;
	}
	.right p:nth-of-type(5) {
		margin-top: 13.866666666666665vw;
	}
	.right p:nth-of-type(6) {
		margin-top: 13.866666666666665vw;
	}
	.right p:nth-of-type(7) {
		margin-top: 46.666666666666664vw;
	}
	.right p:nth-of-type(8) {
		margin-top: 10.933333333333334vw;
	}
	.right p:nth-of-type(9) {
		margin-top: 26.400000000000002vw;
	}
	.right p:nth-of-type(10) {
		margin-top: 73.06666666666666vw;
	}
	.right p:nth-of-type(11) {
		margin-top: 14.133333333333335vw;
	}
	.right p:nth-of-type(12) {
		margin-top: 13.333333333333334vw;
	}
	.right p:nth-of-type(13) {
		margin-top: 52.53333333333333vw;
	}
	.right p:nth-of-type(14) {
		margin-top: 28.26666666666667vw;
	}
	.right p:nth-of-type(15) {
		margin-top: 18.933333333333334vw;
	}
	.right p:nth-of-type(16) {
		margin-top: 2.933333333333333vw;
	}


	.last {
		line-height: 7.199999999999999vw;
		font-size: 4.533333333333333vw;
		margin-top: 0;
		font-family: "Noto Serif JP", serif;
		font-weight: 600;
		font-style: normal;
		text-align: center;
		width: 100vw;
		height: 22.133333333333333vw;
		background: linear-gradient(180deg, rgba(249, 252, 255, 1) 0%, rgba(255, 255, 255, 1) 100%);
	}
}