/* CSS Document */

#visual {
	width: 100%;
	position: relative;
}
#visual .image {
	/* Original: calc( 100vw * ( 1655 / 1918 )) */
	width: calc( 100vw * ( 1655 / 1918 ));
}
#visual .image img {
	width: 100%;	
}
#visual .title {
	position: absolute;
	/* Original: calc( 100vw * ( 494 / 1918 )) */
	min-width: calc( 100vw * ( 494 / 1918 ));
	/* Original: calc( 100vw * ( 591 / 1918 )) */
	top: calc( 100vw * ( 591 / 1918 ) );
	/* Original: calc( 100vw * ( 1250 / 1918 )) */
	left: calc( 100vw * ( 1250 / 1918 ) );
	background-color: #f18700;
	display: flex;
	justify-content: center;
	align-items: center;
	/* Original: calc(100vw * (60/1920)) */
	font-size: calc(100vw * (60/1920));
	color: #fff;
}

@media only screen and (max-width: 1024px) {

}

@media only screen and (max-width: 767px) {
	#visual .image {
		width: calc( 100vw * ( 626 / 730 ));
	}
	#visual .title {
		position: absolute;
		width: calc( 100vw * ( 220 / 730 ));
		top: calc( 100vw * ( 260 / 730 ));
		left:  calc( 100vw * ( 445 / 730 ));
		font-size: calc(100vw * (26.8/730));
	}
}

#pageNav {
	padding-top: calc(80px * 0.8); /* 80%に修正 */
	padding-bottom: calc(80px * 0.8); /* 80%に修正 */
}
#pageNav ul {
	width: calc(881px * 0.8); /* 80%に修正 */
	display: flex;
	margin: 0 auto;
	padding: 0;
	justify-content: space-between;
}
#pageNav ul li {
	display: flex;
	justify-content: center;
	align-items: center;
	width: calc(258px * 0.8); /* 80%に修正 */
}
#pageNav ul li a {
	width: calc(258px * 0.8); /* 80%に修正 */
	height: calc(46px * 0.8); /* 80%に修正 */
	font-size: calc(24px * 0.8); /* 80%に修正 */
	text-decoration: none;
	background-color: #d63183;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	border-radius: 15px;
}

@media only screen and (max-width: 1024px) {
	#pageNav {
		padding-top: calc(100vw * (80 / 1280));
		padding-bottom: calc(100vw * (80 / 1280));
	}
	#pageNav ul {
		width: calc(100vw * (881 / 1280));
	}
	#pageNav ul li {
		width: calc(100vw * (258 / 1280));
	}
	#pageNav ul li a {
		width: calc(100vw * (258 / 1280));
		height: calc(100vw * (46 / 1280));
		font-size: calc(100vw * (24 / 1280));
		border-radius: calc(100vw * (15 / 1280));
	}
}

@media only screen and (max-width: 767px) {

	#pageNav {
		padding-top: calc(100vw * (55 / 730));
		padding-bottom: calc(100vw * (55 / 730));
	}
	#pageNav ul {
		width: calc(100vw * (600 / 730));
	}
	#pageNav ul li {
		width: calc(100vw * (188 / 730));
	}
	#pageNav ul li a {
		width: calc(100vw * (188 / 730));
		height: calc(100vw * (39 / 730));
		font-size: calc(100vw * (20 / 730));
		border-radius: calc(100vw * (15 / 730));
	}
}

#about {
	padding-top: calc(100px * 0.8); /* 80%に修正 */
	padding-bottom: calc(200px * 0.8); /* 80%に修正 */
}
#about .header-wrap {
	padding-bottom: calc(100px * 0.8); /* 80%に修正 */
}
#about .header-wrap h2 {
	width: calc(880px * 0.8); /* 80%に修正 */
	display: flex;
	justify-content: center;
	margin: 0 auto;
	padding-bottom: calc(75px * 0.8); /* 80%に修正 */
}
#about .header-wrap h2 .number {
	padding-right: calc(60px * 0.8); /* 80%に修正 */
}
#about .header-wrap h2 .number img {
	height: calc(199px * 0.8); /* 80%に修正 */
}
#about .header-wrap h2 .text {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
#about .header-wrap h2 .text .en img { width: calc(602px * 0.8); } /* 80%に修正 */
#about .header-wrap h2 .text .ja { font-size: calc(30px * 0.8); } /* 80%に修正 */
#about .header-wrap p {
	text-align: center;
	font-size: calc(24px * 0.8); /* 80%に修正 */
	line-height: 1.6;
}

.label-sp {
	display: none;
}

@media only screen and (max-width: 1024px) {
	
	#about {
		padding-top: calc(100vw * (100 / 1280));
		padding-bottom: calc(100vw * (200 / 1280));
	}
	#about .header-wrap {
		padding-bottom: calc(100vw * (100 / 1280));
	}
	#about .header-wrap h2 {
		width: calc(100vw * (880 / 1280));
		padding-bottom: calc(100vw * (75 / 1280));
	}
	#about .header-wrap h2 .number {
		padding-right: calc(100vw * (60 / 1280));
	}
	#about .header-wrap h2 .number img {
		height: calc(100vw * (199 / 1280));
	}
	#about .header-wrap h2 .text .en img { width: calc(100vw * (602 / 1280)); }
	#about .header-wrap h2 .text .ja { font-size: calc(100vw * (30 / 1280)); }
	#about .header-wrap p {
		font-size: calc(100vw * (24 / 1280));
	}
	
}

@media only screen and (max-width: 767px) {
	
	#about {
		padding-top: calc(100vw * (55 / 730));
		padding-bottom: calc(100vw * (100 / 730));
	}
	#about .header-wrap {
		padding-bottom: calc(100vw * (130 / 730));
	}
	#about .header-wrap h2 {
		width: calc(100vw * (600 / 730));
		padding-bottom: calc(100vw * (75 / 730));
	}
	#about .header-wrap h2 .number {
		padding-right: calc(100vw * (60 / 730));
	}
	#about .header-wrap h2 .number img {
		height: calc(100vw * (148 / 730));
	}
	#about .header-wrap h2 .text {
		
	}
	#about .header-wrap h2 .text .en img { width: calc(100vw * (448 / 730));  }
	#about .header-wrap h2 .text .ja { font-size: calc(100vw * (22 / 730)); }
	#about .header-wrap p {
		width: calc(100vw * (600 / 730));
		margin: 0 auto;
		text-align: center;
		font-size: calc(100vw * (22 / 730)); 
	}

}

.businessSwiper {
	width: calc(1213px * 0.8); /* 全体の幅を80%に */
	margin: 0 auto;
}
.businessSwiper .swiper-slide {
	width: calc(1213px * 0.8); /* スライドの幅を80%に */
	display: flex;
	justify-content: space-between;
	transition-property: opacity !important;
}

.businessSwiper .swiper-slide .image {
	width: calc(681px * 0.8); /* 画像の幅を80%に */
}
.businessSwiper .swiper-slide .image img {
	max-width: 100%;	
}
.businessSwiper .swiper-slide .text {
	width: calc(420px * 0.8); /* テキストエリアの幅を80%に */
}
.businessSwiper .swiper-slide .label {
	font-size: calc(25px * 0.8); /* ラベルのフォントサイズを80%に */
	width: calc(150px * 0.8); /* ラベルの幅を80%に */
	height: calc(38px * 0.8); /* ラベルの高さを80%に */
	background-color: #f18700;
	color: #fff;
	display: inline-flex;
	justify-content: center;
	border-radius: calc(12px * 0.8); /* ラベルの角丸を80%に */
}
.businessSwiper .swiper-slide h3 {
	font-size: calc(30px * 0.8); /* h3のフォントサイズを80%に */
}
.businessSwiper .swiper-slide p {
	font-size: calc(25px * 0.8); /* pタグのフォントサイズを80%に */
}

/*
.thumbSwiper {
	width: 1213px;
	margin: 20px auto 0 auto;
	padding-bottom: 100px;
}
.thumbSwiper .swiper-slide {
	width: 257px;
	min-height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	border-bottom: 4px solid #999999;
	font-size: 22px;
	font-weight: bold;
}
.thumbSwiper .swiper-slide.swiper-slide-thumb-active {
	border-bottom: 4px solid #f18700;	
}
*/
#swiperNav ul {
	width: calc(1213px * 0.8); /* 幅を80%に */
	margin: calc(20px * 0.8) auto 0 auto; /* 上マージンを80%に */
	padding: 0;
	padding-bottom: calc(100px * 0.8); /* 下パディングを80%に */
	display: flex;
	justify-content: space-between;
}
#swiperNav ul li {
	width: calc(257px * 0.8); /* 幅を80%に */
	margin: 0;
	padding: 0;
	list-style: none;
}
#swiperNav ul li a {
	width: calc(257px * 0.8); /* 幅を80%に */
	min-height: calc(80px * 0.8); /* 最小高さを80%に */
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	border-bottom: calc(4px * 0.8) solid #999999; /* 下ボーダーを80%に */
	font-size: calc(22px * 0.8); /* フォントサイズを80%に */
	font-weight: bold;
	text-decoration: none;
}
#swiperNav ul li a.is-active {
	border-bottom: calc(4px * 0.8) solid #f18700; /* 下ボーダーを80%に */
}

@media only screen and (max-width: 1024px) {

	.businessSwiper {
		width: calc(100vw * (1213 / 1280));
	}
	.businessSwiper .swiper-slide {
		width: calc(100vw * (1213 / 1280));
	}
	
	.businessSwiper .swiper-slide .image {
		width: calc(100vw * (681 / 1280));
	}
	.businessSwiper .swiper-slide .image img {
		width: 100%;	
	}
	.businessSwiper .swiper-slide .text {
		width: calc(100vw * (420 / 1280));
	}
	.businessSwiper .swiper-slide .label {
		font-size: calc(100vw * (25 / 1280));
		width: calc(100vw * (150 / 1280));
		height: calc(100vw * (38 / 1280));
		border-radius: calc(100vw * (12 / 1280));
	}
	.businessSwiper .swiper-slide h3 {
		font-size: calc(100vw * (30 / 1280));
	}
	.businessSwiper .swiper-slide p {
		font-size: calc(100vw * (25 / 1280));
	}
	
	#swiperNav ul {
		width: calc(100vw * (1213 / 1280));
		margin: calc(100vw * (20 / 1280)) auto 0 auto;
		padding-bottom: calc(100vw * (100 / 1280));
	}
	#swiperNav ul li {
		width: calc(100vw * (257 / 1280));
	}
	#swiperNav ul li a {
		width: calc(100vw * (257 / 1280));
		min-height: calc(100vw * (80 / 1280));
		font-size: calc(100vw * (22 / 1280));
	}


	
}

@media only screen and (max-width: 767px) {
	
	
	#business-swiper-wrap {
		display: flex;
		flex-direction: column;
	}
	
	#business-swiper-wrap .label-sp {
		margin: 0 auto calc(100vw * (70 / 730)) auto;
		font-size: calc(100vw * (25 / 730));
		width: calc(100vw * (150 / 730));
		height: calc(100vw * (38 / 730));
		background-color: #f18700;
		color: #fff;
		display: inline-flex;
		justify-content: center;
		border-radius: 12px;
		order: 0;
	}
	
	.businessSwiper {
		width: calc(100vw * (595 / 730));
		margin: 0 auto;
		order: 2;
	}
	.businessSwiper .swiper-slide {
		width: 100%;
		display: flex;
		flex-direction: column;
	}

	.businessSwiper .swiper-slide .image {
		width: 100%;
	}
	.businessSwiper .swiper-slide .text {
		width: 100%;
	}
	
	.businessSwiper .swiper-slide .label {
		display: none;
	}
	
	.businessSwiper .swiper-slide h3 {
		font-size: calc(100vw * (30 / 730));
	}
	.businessSwiper .swiper-slide p {
		font-size: calc(100vw * (25 / 730));
	}
	.thumbSwiper {
		width: 100%;
	}
	.thumbSwiper .swiper-slide {
		width: 50%;
		min-height: 80px;
		font-size: 22px;
	}
	
	#swiperNav ul {
		width: calc(100vw * (595 / 730));
		margin: 0 auto 0 auto;
		padding: 0;
		padding-bottom: calc(100vw * (60 / 730));
		flex-wrap: wrap;
		order: 1;
	}
	#swiperNav ul li {
		width: calc(100vw * (257 / 730));
	}
	#swiperNav ul li a {
		width: 100%;
		min-height: calc(100vw * (80 / 730));
		font-size: calc(100vw * (22 / 730));
	}

}

#message-mov {
	padding-top: calc(50px * 0.8); /* 80%に修正 */
	padding-bottom: calc(50px * 0.8); /* 80%に修正 */
}

.movie-section {
	width: calc(1217px * 0.8);
	margin: 0 auto;
	padding-top: calc(100px * 0.8);
}

.movie-section h3 {
	font-size: calc(50px * 0.8); /* フォントサイズを80%に */
	text-align: center;
	margin: 0;
	padding: 0;
	padding-bottom: calc(80px * 0.8); /* パディングを80%に */
}
.movie-section .movie-wrap video {
    width: 100%;
}

@media only screen and (max-width: 1024px) {

	#message-mov {
		padding-top: calc(100vw * (50 / 1280));
		padding-bottom: calc(100vw * (50 / 1280));
	}

	.movie-section {
		width: calc(100vw * (1217 / 1280));
		padding-top: calc(100vw * (100 / 1280));
	}
	.movie-section h3 {
		font-size: calc(100vw * (50 / 1280));
		padding-bottom: calc(100vw * (80 / 1280));
	}
}

@media only screen and (max-width: 767px) {

	#message-mov {
		padding-top: calc(100vw * (35 / 730));
		padding-bottom: calc(100vw * (35 / 730));
	}

	.movie-section {
		width: calc(100vw * (600 / 730));
		padding-top: 0;
		margin: 0 auto;
	}
	.movie-section h3 {
		font-size: calc(100vw * (32 / 730));
		padding-bottom: calc(100vw * (65 / 730));
		text-align: center;
	}
}

/* about_detail
-------------------------------------------------------*/
#about_detail {
	background-color: #f5eedf;
	padding-top: calc(100px * 0.8); /* 80%に修正 */
	padding-bottom: calc(200px * 0.8); /* 80%に修正 */
}

#about_detail .header-wrap {
	padding-top: calc(50px * 0.8); /* 80%に修正 */
}
#about_detail .header-wrap .label {
	font-size: calc(25px * 0.8); /* 80%に修正 */
	width: calc(150px * 0.8); /* 80%に修正 */
	height: calc(38px * 0.8); /* 80%に修正 */
	background-color: #f18700;
	color: #fff;
	display: inline-flex;
	justify-content: center;
	border-radius: 12px;
}
#about_detail .header-wrap h3 {
	font-size: calc(35px * 0.8); /* 80%に修正 */
	color: #f18700;
	margin: 0;
	padding: calc(30px * 0.8) 0; /* 80%に修正 */
}
#about_detail .header-wrap p {
	font-size: calc(25px * 0.8); /* 80%に修正 */
	margin: 0;
	padding: 0 0 calc(60px * 0.8) 0; /* 80%に修正 */
}

#about_detail .contents-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: calc(60px * 0.8) 0; /* 80%に修正 */
}
#about_detail .contents-wrap div {
	display: flex;
	align-items: flex-end;
	margin-bottom: calc(100px * 0.8); /* 80%に修正 */
}
#about_detail .contents-wrap + .contents-wrap {
	padding: 0;
}
#about_detail .contents-wrap + .contents-wrap div {
	margin-bottom: 0;
}
.resutl div {
	margin-left: 30px;
	margin-right: 30px;
}
.basic div {
	margin-left: calc(35px * 0.8); /* 80%に修正 */
	margin-right: calc(35px * 0.8); /* 80%に修正 */
}

#about_detail .contents-wrap .illust01,
#about_detail .contents-wrap .illust01 img { width: 662px; }

#about_detail .contents-wrap .illust02,
#about_detail .contents-wrap .illust02 img { width:385px; }

#about_detail .contents-wrap .illust03,
#about_detail .contents-wrap .illust03 img { width: 431px; }

#about_detail .contents-wrap .illust04,
#about_detail .contents-wrap .illust04 img { width: 529px; }


#about_detail .contents-wrap .illust05,
#about_detail .contents-wrap .illust05 img { width: 211px; }

#about_detail .contents-wrap .illust06,
#about_detail .contents-wrap .illust06 img { width: 207px; }

#about_detail .contents-wrap .illust07,
#about_detail .contents-wrap .illust07 img { width: 210px; }

#about_detail .contents-wrap .illust08,
#about_detail .contents-wrap .illust08 img { width: 920px; }

@media only screen and (max-width: 1024px) {

	#about_detail {
		padding-top: calc(100vw * (100 / 1280));
		padding-bottom: calc(100vw * (200 / 1280));
	}
	#about_detail .header-wrap {
		padding-top: calc(100vw * (50 / 1280));
	}
	
	#about_detail .header-wrap .label {
		font-size: calc(100vw * (25 / 1280));
		width: calc(100vw * (150 / 1280));
		height: calc(100vw * (38 / 1280));
		border-radius: calc(100vw * (12 / 1280));
	}
	#about_detail .header-wrap h3 {
		font-size: calc(100vw * (35 / 1280));
		padding: calc(100vw * (30 / 1280)) 0;
	}
	#about_detail .header-wrap p {
		font-size: calc(100vw * (25 / 1280));
		padding: 0 0 calc(100vw * (60 / 1280)) 0;
	}

	#about_detail .contents-wrap {
		padding: calc(100vw * (60 / 1280)) 0;
	}
	#about_detail .contents-wrap div {
		margin-bottom: calc(100vw * (100 / 1280));
	}

	.resutl div {
		margin-left: calc(100vw * (60 / 1280));
		margin-right: calc(100vw * (60 / 1280));
	}
	.basic div {
		margin-left: calc(100vw * (35 / 1280));
		margin-right: calc(100vw * (35 / 1280));
	}
	
	#about_detail .contents-wrap .illust01,
	#about_detail .contents-wrap .illust01 img { width: calc(100vw * (662 / 1280)); }

	#about_detail .contents-wrap .illust02,
	#about_detail .contents-wrap .illust02 img { width: calc(100vw * (385 / 1280)); }

	#about_detail .contents-wrap .illust03,
	#about_detail .contents-wrap .illust03 img { width: calc(100vw * (431 / 1280)); }

	#about_detail .contents-wrap .illust04,
	#about_detail .contents-wrap .illust04 img { width: calc(100vw * (529 / 1280)); }


	#about_detail .contents-wrap .illust05,
	#about_detail .contents-wrap .illust05 img { width: calc(100vw * (211 / 1280)); }

	#about_detail .contents-wrap .illust06,
	#about_detail .contents-wrap .illust06 img { width: calc(100vw * (207 / 1280)); }

	#about_detail .contents-wrap .illust07,
	#about_detail .contents-wrap .illust07 img { width: calc(100vw * (210 / 1280)); }

	#about_detail .contents-wrap .illust08,
	#about_detail .contents-wrap .illust08 img { width: calc(100vw * (920 / 1280)); }

	
}

@media only screen and (max-width: 767px) {
	
	#about_detail .movie-section {
		margin-bottom: calc(100vw * (100 / 730));
	}
	
	#about_detail {
		padding-top: calc(100vw * (100 / 730));
		padding-bottom: calc(100vw * (100 / 730));
	}
	#about_detail .header-wrap {
		width: calc(100vw * (600 / 730));
		margin-left: auto;
		margin-right: auto;
	}
	#about_detail .header-wrap .label {
		display: block;
		text-align: center;
		font-size: calc(100vw * (25 / 730));
		width: calc(100vw * (150 / 730));
		height: calc(100vw * (38 / 730));
		border-radius: calc(100vw * (12 / 730));
		
		margin-left: auto;
		margin-right: auto;
	}

	#about_detail .contents-wrap {
		width: calc(100vw * (600 / 730));
		margin-left: auto;
		margin-right: auto;
		
		padding: calc(100vw * (55 / 730)) 0 0 0;
	}
	#about_detail .resutl div {
		margin: 0;
		margin-bottom: calc(100vw * (100 / 730));
	}
	#about_detail .basic div {
		margin: 0;
		margin-bottom: calc(100vw * (55 / 730));
	}
	#about_detail .header-wrap h3 {
		font-size: calc(100vw * (31 / 730));
	}
	#about_detail .header-wrap p {
		font-size: calc(100vw * (25 / 730));
		padding: 0 0 0 0;
	}

/*
	#about_detail .contents-wrap .illust01 { width: calc(100vw * (361 / 730)) }
	#about_detail .contents-wrap .illust02 { width: calc(100vw * (419 / 730)) }
	#about_detail .contents-wrap .illust03 { width: calc(100vw * (541 / 730)) }

	#about_detail .contents-wrap .illust01 img { width: calc(100vw * (361 / 730)) }
	#about_detail .contents-wrap .illust02 img { width: calc(100vw * (419 / 730)) }
	#about_detail .contents-wrap .illust03 img { width: calc(100vw * (541 / 730)) }

	#about_detail .contents-wrap .illust04 { width: calc(100vw * (263 / 730)); margin-right: calc(100vw * (30 / 730)); }
	#about_detail .contents-wrap .illust05 { width: calc(100vw * (258 / 730)); margin-left: calc(100vw * (30 / 730)); }
	#about_detail .contents-wrap .illust06 { width: calc(100vw * (263 / 730)) }

	#about_detail .contents-wrap .illust04 img { width: calc(100vw * (263 / 730)) }
	#about_detail .contents-wrap .illust05 img { width: calc(100vw * (258 / 730)) }
	#about_detail .contents-wrap .illust06 img { width: calc(100vw * (263 / 730)) }

	#about_detail .contents-wrap .image { width: calc(100vw * (598 / 730)) }
	#about_detail .contents-wrap .image img { width: calc(100vw * (598 / 730)) }
*/
	
	#about_detail .contents-wrap .illust01,
	#about_detail .contents-wrap .illust01 img { width: calc(100vw * (489  / 730)); }

	#about_detail .contents-wrap .illust02,
	#about_detail .contents-wrap .illust02 img { width: calc(100vw * (461 / 730)); }

	#about_detail .contents-wrap .illust03,
	#about_detail .contents-wrap .illust03 img { width: calc(100vw * (508 / 730)); }

	#about_detail .contents-wrap .illust04,
	#about_detail .contents-wrap .illust04 img { width: calc(100vw * (461 / 730)); }


	#about_detail .contents-wrap .illust05,
	#about_detail .contents-wrap .illust05 img { width: calc(100vw * (263 / 730)); margin-right: calc(100vw * (30 / 730)); }

	#about_detail .contents-wrap .illust06,
	#about_detail .contents-wrap .illust06 img { width: calc(100vw * (258 / 730)); margin-left: calc(100vw * (30 / 730)); }

	#about_detail .contents-wrap .illust07,
	#about_detail .contents-wrap .illust07 img { width: calc(100vw * (263 / 730)); }

	#about_detail .contents-wrap .illust08,
	#about_detail .contents-wrap .illust08 img { width: calc(100vw * (598 / 730)); }
	
	

}

/* environment
-------------------------------------------------------*/

#environment {
	padding-top: calc(100px * 0.8); /* 80%に修正 */
	padding-bottom: calc(100px * 0.8); /* 80%に修正 */
}
#environment .header-wrap {
	display: flex;
	justify-content: space-between;
	align-content: flex-end;
	padding-top: calc(100px * 0.8); /* 80%に修正 */
	padding-bottom: calc(120px * 0.8); /* 80%に修正 */
}
#environment .header-wrap .image {
	width: calc(554px * 0.8); /* 80%に修正 */
}
#environment .header-wrap .image img {
	max-width: 100%;	
}
#environment .header-wrap .image .caption {
	text-align: right;
	font-size: 17px;
}
#environment .header-wrap .header {
	width: calc(580px * 0.8); /* 80%に修正 */
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

#environment .header-wrap h2 {
	width: calc(580px * 0.8); /* 80%に修正 */
	display: flex;
	justify-content: center;
	align-content: flex-end;
	margin: 0 auto;
	padding-bottom: calc(70px * 0.8); /* 80%に修正 */
}
#environment .header-wrap h2 .number {
	padding-right: calc(60px * 0.8); /* 80%に修正 */
}
#environment .header-wrap h2 .number img {
	height: calc(202px * 0.8); /* 80%に修正 */
}
#environment .header-wrap h2 .text {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: calc(379px * 0.8); /* 80%に修正 */
}
#environment .header-wrap h2 .text .en img { width: calc(379px * 0.8); } /* 80%に修正 */
#environment .header-wrap h2 .text .ja { font-size: calc(30px * 0.8); } /* 80%に修正 */
#environment .header-wrap p {
	text-align: left;
	font-size: calc(24px * 0.8); /* 80%に修正 */
	margin: 0;
	padding: 0;
	line-height: 1.6;
}

@media only screen and (max-width: 1024px) {
	
	#environment {
		padding-top: calc(100vw * (100 / 1280));
		padding-bottom: calc(100vw * (100 / 1280));
	}
	#environment .header-wrap {
		padding-top: calc(100vw * (100 / 1280));
		padding-bottom: calc(100vw * (120 / 1280));
	}
	#environment .header-wrap .image {
		width: calc(100vw * (554 / 1280));
	}
	#environment .header-wrap .image img {
		width: 100%;
	}
	#environment .header-wrap .image .caption {
		font-size: calc(100vw * (17 / 1280));
	}
	#environment .header-wrap .header {
		width: calc(100vw * (580 / 1280));
	}
	#environment .header-wrap h2 {
		width: calc(100vw * (580 / 1280));
		padding-bottom: calc(100vw * (70 / 1280));
	}
	#environment .header-wrap h2 .number {
		padding-right: calc(100vw * (60 / 1280));
	}
	#environment .header-wrap h2 .number img {
		height: calc(100vw * (202 / 1280));
	}
	#environment .header-wrap h2 .text {
		width: calc(100vw * (379 / 1280));
	}
	#environment .header-wrap h2 .text .en img { width: calc(100vw * (379 / 1280)); }
	#environment .header-wrap h2 .text .ja { font-size: calc(100vw * (30 / 1280)); }
	#environment .header-wrap p {
		font-size: calc(100vw * (24 / 1280));
	}

}

@media only screen and (max-width: 767px) {
	
	#environment {
		padding-top: 0;
		padding-bottom: calc(100vw * (100 / 730));
	}
	#environment .header-wrap {
		padding-top: 0;
		padding-bottom: calc(100vw * (80 / 730));
		flex-direction: column;
	}
	#environment .header-wrap h2 {
		width: calc(100vw * (600 / 730));
		padding-bottom: calc(100vw * (75 / 730));
		justify-content: flex-start;
	}
	#environment .header-wrap h2 .number {
		padding-right: calc(100vw * (45 / 730));
	}
	#environment .header-wrap h2 .number img {
		height: calc(100vw * (151 / 730));
		vertical-align: bottom;
	}
	#environment .header-wrap h2 .text {
		width: calc(100vw * (282 / 730));
	}
	#environment .header-wrap h2 .text .en img { width: calc(100vw * (282 / 730));  }
	#environment .header-wrap h2 .text .ja { font-size: calc(100vw * (22 / 730)); }
	#environment .header-wrap p {
		text-align: center;
		font-size: calc(100vw * (22 / 730)); 
		width: calc(100vw * (600 / 730));
		margin-left: auto;
		margin-right: auto;
	}
	
	#environment .header-wrap .image {
		width: 100%;
	}
	#environment .header-wrap .image .caption {
		font-size: calc(100vw * (17 / 730));
		width: calc(100vw * (670 / 730));
	}
	#environment .header-wrap .header {
		width: 100%;
		padding-top: calc(100vw * (90 / 730));
	}

}

#environment .contents-wrap {
	width: calc(1220px * 0.8); /* Adjusted width */
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-left: auto;
	margin-right: auto;
}

.contents-wrap .env-item {
	width: calc(355px * 0.8); /* Adjusted width */
	margin-bottom: calc(80px * 0.8); /* Adjusted margin */
}

.contents-wrap .env-item h3 {
	width: calc(355px * 0.8); /* Adjusted width */
	font-size: calc(23px * 0.8); /* Adjusted font-size */
	margin: 0;
	padding: 0;
	padding-left: calc(45px * 0.8); /* Adjusted padding */
	padding-bottom: calc(18px * 0.8); /* Adjusted padding */
	position: relative;
}

.contents-wrap .env-item .border {
	border-top: calc(3px * 0.8) solid #f18700; /* Adjusted border */
	border-left: calc(3px * 0.8) solid #f18700; /* Adjusted border */
	min-height: calc(368px * 0.8); /* Adjusted min-height */
	padding-top: calc(35px * 0.8); /* Adjusted padding */
	padding-left: calc(45px * 0.8); /* Adjusted padding */
	display: flex;
	flex-direction: column;
}

.contents-wrap .env-item .border.btween {
	justify-content: space-between;
}

.contents-wrap .env-item p {
	margin: 0;
	padding: 0 0 calc(18px * 0.8) 0; /* Adjusted padding */
	font-size: calc(18px * 0.8); /* Adjusted font-size */
}

.contents-wrap .env-item p.captiton {
	font-size: calc(14px * 0.8); /* Adjusted font-size */
}

.contents-wrap .env-item .image {
	margin: 0;
	padding: 0;
	position: relative;
}
.contents-wrap .env-item .image img {
	max-width: 100%;
}
.contents-wrap .env-item .image + p:not(.captiton) {
	margin-top: calc(0.5em * 0.8); /* Adjusted margin */
}

.contents-wrap .env-item .image + p.captiton {
	padding-top: calc(10px * 0.8); /* Adjusted padding */
}

.contents-wrap .env-item .image p.captiton {
	position: absolute;
	bottom: calc(-40px * 0.8); /* Adjusted bottom positioning */
}

.contents-wrap .env-item .number {
	display: block;
	width: calc(71px * 0.8); /* Adjusted width */
	position: absolute;
	bottom: 0;
	left: 0;
	transform: translate(calc(-50% * 0.8), 50%); /* Adjusted transform */
}

.contents-wrap .env-item .number img {
	width: calc(71px * 0.8); /* Adjusted width */
}

/*
@media only screen and (max-width: 1024px) {
	
	#environment .contents-wrap {
		width: calc(100vw * (1220 / 1280));
	}
	
	.contents-wrap .env-item {
		width: calc(100vw * (355 / 1280));
		margin-bottom: calc(100vw * (50 / 1280));
	}
	.contents-wrap .env-item h3 {
		width: calc(100vw * (355 / 1280));
		font-size: calc(100vw * (23 / 1280));
		padding-left: calc(100vw * (45 / 1280));
		padding-bottom: calc(100vw * (18 / 1280));
	}
	.contents-wrap .env-item .border {
		min-height: calc(100vw * (368 / 1280));
		padding-top: calc(100vw * (40 / 1280));
		padding-left: calc(100vw * (45 / 1280));
	}

	.contents-wrap .env-item p {
		padding: 0 0 calc(100vw * (18 / 1280)) 0;
		font-size: calc(100vw * (18 / 1280));
	}
	.contents-wrap .env-item p.captiton {
		font-size: calc(100vw * (16 / 1280));
	}

	.contents-wrap .env-item .image img {
		width: 100%;
	}
	.contents-wrap .env-item .image + p.captiton {
		padding-top: calc(100vw * (10 / 1280));
	}
	.contents-wrap .env-item .image p.captiton {
		bottom: calc(100vw * (-40 / 1280));
	}
	.contents-wrap .env-item .number {
		width: calc(100vw * (71 / 1280));
	}
	.contents-wrap .env-item .number img {
		width:  calc(100vw * (71 / 1280));
	}

}
*/

@media only screen and (max-width: 1024px) {
	
	#environment .contents-wrap {
		width: calc(100vw * (1220 / 1380));
	}
	
	.contents-wrap .env-item {
		width: calc(100vw * (355 / 1380));
		margin-bottom: calc(100vw * (50 / 1380));
	}
	.contents-wrap .env-item h3 {
		width: calc(100vw * (355 / 1380));
		font-size: calc(100vw * (23 / 1380));
		padding-left: calc(100vw * (45 / 1380));
		padding-bottom: calc(100vw * (18 / 1380));
	}
	.contents-wrap .env-item .border {
		min-height: calc(100vw * (380 / 1380));
		padding-top: calc(100vw * (35 / 1380));
		padding-left: calc(100vw * (45 / 1380));
	}

	.contents-wrap .env-item p {
		padding: 0 0 calc(100vw * (18 / 1380)) 0;
		font-size: calc(100vw * (18 / 1380));
	}
	.contents-wrap .env-item p.captiton {
		font-size: calc(100vw * (14 / 1380));
	}

	.contents-wrap .env-item .image img {
		width: 100%;
	}
	.contents-wrap .env-item .image + p.captiton {
		padding-top: calc(100vw * (10 / 1380));
	}
	.contents-wrap .env-item .image p.captiton {
		bottom: calc(100vw * (-40 / 1380));
	}
	.contents-wrap .env-item .number {
		width: calc(100vw * (71 / 1380));
	}
	.contents-wrap .env-item .number img {
		width:  calc(100vw * (71 / 1380));
	}

}

@media only screen and (max-width: 767px) {
	#environment .contents-wrap {
		width: calc(100vw * (600 / 730));
		margin: 0 auto;
		justify-content: center;
	}
	.contents-wrap .env-item {
		width: calc(100vw * (273 * 2 / 730));
		margin-bottom: calc(100vw * (60 / 730));
	}
	.contents-wrap .env-item h3 {
		width: calc(100vw * (273 * 2 / 730));
		font-size: calc(100vw * (18 * 2 / 730));
		padding-left: calc(100vw * (40 * 2 / 730));
		padding-bottom: calc(100vw * (15 * 2 / 730));
	}
	.contents-wrap .env-item .border {
		/*min-height: calc(100vw * (300 * 2 / 730));*/
		padding-top: calc(100vw * (25 * 2 / 730));
		padding-left: calc(100vw * (30 * 2 / 730));
	}
	.contents-wrap .env-item p {
		padding: 0 0 calc(100vw * (15 * 2 / 730)); 0;
		font-size: calc(100vw * (15 * 2 / 730));
	}
	.contents-wrap .env-item p.captiton {
		font-size: calc(100vw * (10 * 2 / 730));
	}
	.contents-wrap .env-item .image img{
		margin-bottom: calc(100vw * (10 * 2 / 730));
	}
	.contents-wrap .env-item .image p.captiton {
		bottom: calc(100vw * (-25 * 2 / 730));

	}
	.contents-wrap .env-item .number {
		width: calc(100vw * (54 * 2 / 730));
	}
	.contents-wrap .env-item .number img {
		width: calc(100vw * (54 * 2 / 730));
	}
	
}

/* culture
-------------------------------------------------------*/
#culture {
	padding-top: calc(100px * 0.8);
	padding-bottom: 0px;
}
#culture .header-wrap {
	display: flex;
	justify-content: space-between;
	align-content: flex-end;
	padding-bottom: calc(100px * 0.8);
}
#culture .header-wrap .image {
	width: calc(554px * 0.8); /* 画像サイズを80%に */
}
#culture .header-wrap .image img {
	max-width: 100%;
}
#culture .header-wrap .image .caption {
	text-align: right;
	font-size: 17px;
}
#culture .header-wrap .header {
	width: calc(580px * 0.8); /* ヘッダー幅を80%に */
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

#culture .header-wrap h2 {
	width: calc(580px * 0.8); /* h2の幅を80%に */
	display: flex;
	justify-content: center;
	align-content: flex-end;
	margin: 0 auto;
	padding-bottom: calc(70px * 0.8);
}
#culture .header-wrap h2 .number {
	padding-right: calc(60px * 0.8); /* 数値部分の右パディングを80%に */
}
#culture .header-wrap h2 .number img {
	height: calc(202px * 0.8); /* 数値画像の高さを80%に */
}
#culture .header-wrap h2 .text {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	width: calc(379px * 0.8); /* テキスト部分の幅を80%に */
}
#culture .header-wrap h2 .text .en img {
	width: calc(379px * 0.8); /* 英語テキスト画像の幅を80%に */
}
#culture .header-wrap h2 .text .ja {
	font-size: calc(30px * 0.8); /* 日本語フォントサイズを80%に */
}
#culture .header-wrap p {
	text-align: left;
	font-size: calc(24px * 0.8); /* 本文フォントサイズを80%に */
	margin: 0;
	padding: 0;
	line-height: 1.6;
}

@media only screen and (max-width: 1024px) {
	
	#culture {
		padding-top: calc(100vw * (100 / 1280));
	}
	#culture .header-wrap {
		padding-bottom: calc(100vw * (100 / 1280));
	}
	#culture .header-wrap .image {
		width: calc(100vw * (554 / 1280));
	}
	#culture .header-wrap .image img {
		width: 100%;
	}
	#culture .header-wrap .image .caption {
		font-size: calc(100vw * (17 / 1280));
	}
	#culture .header-wrap .header {
		width: calc(100vw * (580 / 1280));
	}
	
	#culture .header-wrap h2 {
		width: calc(100vw * (580 / 1280));
		padding-bottom: calc(100vw * (70 / 1280));
	}
	#culture .header-wrap h2 .number {
		padding-right: calc(100vw * (60 / 1280));
	}
	#culture .header-wrap h2 .number img {
		height: calc(100vw * (202 / 1280));
	}
	#culture .header-wrap h2 .text {
		width: calc(100vw * (379 / 1280));
	}
	#culture .header-wrap h2 .text .en img { width: calc(100vw * (379 / 1280)); }
	#culture .header-wrap h2 .text .ja { font-size: calc(100vw * (30 / 1280)); }
	#culture .header-wrap p {
		font-size: calc(100vw * (24 / 1280));
	}
	
}

@media only screen and (max-width: 767px) {
	
	#culture {
		padding-top: 0;
		padding-bottom: calc(100vw * (100 / 730));
	}
	#culture .header-wrap {
		padding-top: 0;
		padding-bottom: 0;
		flex-direction: column;
	}
	#culture .header-wrap h2 {
		width: calc(100vw * (600 / 730));
		padding-bottom: calc(100vw * (75 / 730));
		justify-content: flex-start;
	}
	#culture .header-wrap h2 .number {
		padding-right: calc(100vw * (45 / 730));
	}
	#culture .header-wrap h2 .number img {
		height: calc(100vw * (151 / 730));
		vertical-align: bottom;
	}
	#culture .header-wrap h2 .text {
		width: calc(100vw * (282 / 730));
	}
	#culture .header-wrap h2 .text .en img { width: calc(100vw * (282 / 730));  }
	#culture .header-wrap h2 .text .ja { font-size: calc(100vw * (22 / 730)); }
	#culture .header-wrap p {
		text-align: center;
		font-size: calc(100vw * (22 / 730)); 
		width: calc(100vw * (600 / 730));
		margin-left: auto;
		margin-right: auto;
	}
	
	#culture .header-wrap .image {
		width: 100%;
	}
	#culture .header-wrap .image .caption {
		font-size: calc(100vw * (17 / 730));
		width: calc(100vw * (670 / 730));
	}
	#culture .header-wrap .header {
		padding-top: calc(100vw * (90 / 730));
		width: 100%;
	}

	
}

#culture .movie-section {
	width: calc(1207px * 0.8);
	margin: 0 auto;
	padding-top: calc(100px * 0.8);
	padding-bottom: calc(100px * 0.8);
}
#culture .movie-section h3 {
	font-size: calc(40px * 0.8);
	text-align: center;
	margin: 0;
	padding: 0;
	padding-top: calc(50px * 0.8);
	padding-bottom: calc(30px * 0.8);
}
#culture .movie-section p {
	width: 100%;
	font-size: calc(25px * 0.8);
	text-align: center;
	margin: 0 auto;
	line-height: 1.6;
}

.event-section {
	width: calc(1218px * 0.8);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.event-section .event-item {
	width: calc(551px * 0.8);
	margin-bottom: calc(120px * 0.8);
}
.event-section .event-item h3 {
	font-size: calc(28px * 0.8);
	margin: 0;
	padding: calc(5px * 0.8) 0;
	border-bottom: calc(2px * 0.8) solid #000;
}
.event-section .event-item .contents-wrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: calc(28px * 0.8) 0;
}
.event-section .event-item .contents-wrap .image {
	width: calc(257px * 0.8);
}
.event-section .event-item .contents-wrap .image img {
	max-width: 100%;
}
.event-section .event-item .contents-wrap .text {
	width: calc(264px * 0.8);
}
.event-section .event-item .contents-wrap .text p {
	margin-top: 0;
	font-size: calc(20px * 0.8);
}

@media only screen and (max-width: 1024px) {

	#culture .movie-section {
		width: calc(100vw * (1207 / 1280));
		padding-top: calc(100vw * (100 / 1280));
		padding-bottom: calc(100vw * (100 / 1280));
	}
	#culture .movie-section h3 {
		font-size: calc(100vw * (40 / 1280));
		padding-top: calc(100vw * (50 / 1280));
		padding-bottom: calc(100vw * (30 / 1280));
	}
	#culture .movie-section p {
		/*width: calc(100vw * (706 / 1280));*/
		font-size: calc(100vw * (25 / 1280));
	}

	.event-section {
		width: calc(100vw * (1218 / 1280));
	}
	.event-section .event-item {
		width: calc(100vw * (551 / 1280));
		margin-bottom: calc(100vw * (120 / 1280));
	}
	.event-section .event-item h3 {
		font-size: calc(100vw * (28 / 1280));
		padding: calc(100vw * (5 / 1280)) 0;
	}
	.event-section .event-item .contents-wrap{
		padding: calc(100vw * (28 / 1280)) 0;
	}
	.event-section .event-item .contents-wrap .image {
		width: calc(100vw * (257 / 1280));
	}
	.event-section .event-item .contents-wrap .image img {
		width: 100%;
	}
	.event-section .event-item .contents-wrap .text {
		width: calc(100vw * (264 / 1280));
	}
	.event-section .event-item .contents-wrap .text p {
		margin-top: 0;
		font-size: calc(100vw * (20 / 1280));
	}
}

@media only screen and (max-width: 767px) {
	#culture .movie-section {
		width: calc(100vw * (600 / 730));
		margin: 0 auto;
		
		padding-top: calc(100vw * (100 / 730));
		padding-bottom: calc(100vw * (200 / 730));
		
	}
	#culture .movie-section h3 {
		font-size: calc(100vw * (35 / 730));
		padding-top: calc(100vw * (70 / 730));
		padding-bottom: calc(100vw * (25 / 730));
	}
	#culture .movie-section p {
		width:100%;
		font-size: calc(100vw * (22 / 730));
	}

	.event-section {
		width: calc(100vw * (600 / 730));
		margin: 0 auto;
	}
	.event-section .event-item {
		width: 100%;
		margin-bottom: calc(100vw * (55 / 730));
	}
	.event-section .event-item h3 {
		font-size: calc(100vw * (31 / 730));
		margin: 0;
		padding: 5px 0;
		border-bottom: 2px solid #000;	
	}
	.event-section .event-item .contents-wrap{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		padding: 28px 0;
	}
	.event-section .event-item .contents-wrap .image {
		width: calc(100vw * (278 / 730));
	}
	.event-section .event-item .contents-wrap .text {
		width: calc(100vw * (286 / 730));
		font-size: calc(100vw * (21 / 730));
	}
	.event-section .event-item .contents-wrap .text p {
		font-size: calc(100vw * (21 / 730));
	}
}



