@charset "UTF-8";
/* CSS Document */


	
	
/* globalnav
--------------------- */
#globalnav ul.list li a.head {
	color: #fff;
}


	
	
/* kv
--------------------- */
#kv {
	width: 100%;
	overflow: hidden;
	position: relative;
}
	#kv .area {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100vh;
	}
		#kv .area .text {
			color: #fff;
			text-align: center;
		}
			#kv .area .text h1 {
				font-size: 6.0rem;
				font-weight: 600;
				line-height: 1.5em;
				margin-bottom: 5px;
			}
			#kv .area .text .en {
				font-size: 2.4rem;
				font-weight: 700;
				line-height: 1;
			}


	
	
/* what
--------------------- */
#what {
	background: #F2F1EC url("../img/common/bg_motif03.svg") no-repeat center / 100%;
}
	#what .text {
		max-width: 500px;
		margin: 0 auto;
	}
		#what .text .txt {
			margin-bottom: 12px;
		}
		#what .text .txt:nth-last-child(1) {
			margin-bottom: 0;
		}

	#what .loopSlider {
		height: 220px;
		overflow: hidden;
		position: relative;
	}
		#what .loopSlider .loopslider_wrap {
			height: 220px;
			display: -webkit-flex;
			display: flex;
			position: absolute;
			top: 0;
			left: 0;
			z-index: 1;
		}
			#what .loopSlider .loopslider_wrap ul {
				display: -webkit-flex;
				display: flex;
			}
				#what .loopSlider .loopslider_wrap ul li {
					width: 465px;
					padding: 0 5px;
				}


	
	
/* point
--------------------- */
#point .p-box {
	margin-bottom: 80px;
}
#point .p-box:nth-last-child(1) {
	margin-bottom: 0;
}
#point .p-box:nth-child(2) {
	width: calc( 100vw - (100vw - 1005px) / 2 );
}
#point .p-box:nth-child(3) {
	width: calc( 100vw - (100vw - 1005px) / 2 );
	margin-left: calc( -100vw - (-100vw - 1195px) / 2 );
}
	#point .p-box .text {
		width: 47.5%;
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	#point .p-box:nth-child(odd) .text {
		order: 2;
	}
	#point .p-box:nth-child(1) .text {
		padding-right: 120px;
	}
	#point .p-box:nth-child(2) .text {
		padding-left: 120px;
	}
	#point .p-box:nth-child(3) .text {
		padding-right: 120px;
	}
		#point .p-box .text .en {
			font-size: 1.6rem;
			font-weight: 700;
			line-height: 1;
			margin-bottom: 10px;
		}

		#point .p-box .text h2 {
			font-size: 3.2rem;
			font-weight: 700;
			line-height: 1.3em;
			margin-bottom: 20px;
		}

	#point .p-box .pht {
		width: 47.5%;
	}
	#point .p-box:nth-child(odd) .pht {
		order: 1;
	}
	#point .p-box:nth-child(1) .pht {
		aspect-ratio: 4 / 4.5;
	}
	#point .p-box:nth-child(2) .pht {
		aspect-ratio: 4 / 3;
	}
	#point .p-box:nth-child(3) .pht {
		aspect-ratio: 4 / 2.5;
	}
		#point .p-box .pht img {
			width: 100%;
			height: 100%;
			object-fit: cover;
		}


	
	
/* achievements
--------------------- */
.achievements {
	width: 100%;
	overflow: hidden;
	position: relative;
}
	.achievements a.link-area {
		display: block;
		text-align: right;
	}

	.achievements .swiper-container {
		padding-bottom: 40px;
		position: relative;
	}
		.achievements .swiper-container a.swiper-slide {
			display: block;
			position: relative;
			padding-bottom: 15px;
		}
			.achievements .swiper-container a.swiper-slide h3 {
				font-size: 1.8rem;
				font-weight: 500;
				line-height: 1.5em;
				margin-bottom: 6px;
				margin-top: 20px;
			}

			 .achievements .swiper-container a.swiper-slide ul.cat {
				 margin-top: 15px;
			}
				 .achievements .swiper-container a.swiper-slide ul.cat li {
					 background: #F2F1EC;
					 border-radius: 5px;
					 font-size: 1.3rem;
					 line-height: 1;
					 letter-spacing: 0;
					 margin-top: 8px;
					 margin-right: 8px;
					 padding: 5px 8px;
				}

			 .achievements .swiper-container a.swiper-slide .more {
				 height: 40px;
				 font-size: 1.4rem;
				 font-weight: 700;
				 line-height: 40px;
				 padding-right: 46px;
				 position: absolute;
				 bottom: 0;
				 right: 0;
			}
			 .achievements .swiper-container a.swiper-slide .more:before {
				 content: "";
				 width: 40px;
				 height: 40px;
				 background: #313030 url("../img/common/icon_arrow_beige.svg") no-repeat center / 14px;
				 position: absolute;
				 top: 0;
				 right: 0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			 .achievements .swiper-container a.swiper-slide:hover .more:before {
				 width: 30px;
				 height: 30px;
				 top: 5px;
				 right: 5px;
			}


		 .achievements .swiper-container .swiper-pagination {
			bottom: -30px;
			text-align: left;
		}
			 .achievements .swiper-container .swiper-pagination .swiper-pagination-bullet {
				width: 8px;
				height: 8px;
				background: #F2F1EC;
				border: none;
				opacity: 1.0;
				transition: 0.3s;
				-webkit-transition: 0.3s;
			}
			.achievements .swiper-container .swiper-pagination .swiper-pagination-bullet-active {
				width: 20px;
				border-radius: 10px;
				background: #313030;
			}






/* 1360px */
@media screen and (max-width: 1360px) {


	
	
/* point
--------------------- */
#point .p-box:nth-child(2) {
	width: 108.1%;
}
#point .p-box:nth-child(3) {
	width: 108.1%;
	margin-left: -8.2%;
}
	#point .p-box:nth-child(1) .text {
		padding-right: 7%;
	}
	#point .p-box:nth-child(2) .text {
		padding-left: 7%;
	}
	#point .p-box:nth-child(3) .text {
		padding-right: 7%;
	}








}





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


	
	
/* kv
--------------------- */
#kv .area {
	height: 100dvh;
}
	#kv .area .text h1 {
		font-size: 5.0rem;
	}
	#kv .area .text .en {
		font-size: 2.2rem;
	}


	
	
/* what
--------------------- */
#what {
	background: #F2F1EC url("../img/common/bg_motif03.svg") no-repeat center top 100px / 100%;
}
	#what .loopSlider {
		height: 200px;
	}
		#what .loopSlider .loopslider_wrap {
			height: 200px;
		}
			#what .loopSlider .loopslider_wrap ul li {
				width: 372px;
			}


	
	
/* point
--------------------- */
#point .p-box {
	margin-bottom: 60px;
}
	#point .p-box .text .en {
		font-size: 1.4rem;
	}

	#point .p-box .text h2 {
		font-size: 2.6rem;
		margin-bottom: 16px;
	}


	
	
/* achievements
--------------------- */
.achievements .swiper-container a.swiper-slide {
	padding-bottom: 5px;
}
	.achievements .swiper-container a.swiper-slide h3 {
		font-size: 1.6rem;
		margin-top: 16px;
	}

	 .achievements .swiper-container a.swiper-slide ul.cat {
		 margin-top: 10px;
	}
		 .achievements .swiper-container a.swiper-slide ul.cat li {
			 border-radius: 3px;
			 font-size: 1.1rem;
			 margin-right: 6px;
			 margin-top: 6px;
		}

	 .achievements .swiper-container a.swiper-slide .more {
		 height: 30px;
		 font-size: 1.3rem;
		 line-height: 30px;
		 padding-right: 36px;
	}
	 .achievements .swiper-container a.swiper-slide .more:before {
		 width: 30px;
		 height: 30px;
		 background: #313030 url("../img/common/icon_arrow_beige.svg") no-repeat center / 12px;
	}
	 .achievements .swiper-container a.swiper-slide:hover .more:before {
		 top: 0;
		 right: 0;
	}








}





/* max 768px */
@media screen and (max-width: 768px) {


	
	
/* kv
--------------------- */
#kv .area .text h1 {
	font-size: 4.0rem;
}
#kv .area .text .en {
	font-size: 1.8rem;
}


	
	
/* what
--------------------- */
#what .loopSlider {
	height: 200px;
}
	#what .loopSlider .loopslider_wrap {
		height: 200px;
	}
		#what .loopSlider .loopslider_wrap ul li {
			width: 372px;
		}


	
	
/* point
--------------------- */
#point .p-box {
	display: block;
	margin-bottom: 55px;
}
	#point .p-box .text {
		width: 100%;
		padding-bottom: 25px;
	}
	#point .p-box:nth-child(1) .text {
		padding-right: 0;
	}
	#point .p-box:nth-child(2) .text {
		padding-left: 0;
		padding-right: 8.1%;
	}
	#point .p-box:nth-child(3) .text {
		padding-right: 0;
		padding-left: 8.1%;
	}
		#point .p-box .text .en {
			font-size: 1.3rem;
		}

		#point .p-box .text h2 {
			font-size: 2.2rem;
			margin-bottom: 12px;
		}

	#point .p-box .pht {
		width: 100%;
	}
	#point .p-box:nth-child(1) .pht {
		aspect-ratio: 4 / 3;
	}
	#point .p-box:nth-child(2) .pht {
		aspect-ratio: 4 / 3;
	}
	#point .p-box:nth-child(3) .pht {
		aspect-ratio: 4 / 3;
	}










}