@charset "UTF-8";

/*-----------------------------------

	common

-----------------------------------*/
#contentsWrap {
	width: 100%;
	background: #FFF;
	position: relative;
	top: 100vh;
	left: 0;
}
#contents a.more {
	width: 280px;
	background: #114C98;
	color: #FFF;
	font-weight: 700;
	text-align: center;
	padding: 23px 0;
	background-image: url(../img/index/icon_arrow.svg);
	background-repeat: no-repeat;
	background-position:  calc(100% - 25px) center;
	background-size: 14px;
	transition: 0.5s;
}
#contents a.more:hover {
	opacity: 1;
	background-position:  calc(100% - 20px) center;
}
@media screen and (max-width: 640px) {
	#contentsWrap {
		top: 470px;
	}
	#contents a.more {
		width: 220px;
		padding: 18px 0;
		background-position:  calc(100% - 20px) center;
	}
}
/*-----------------------------------

	mainvisual

-----------------------------------*/
#mainvisual {
	width: 100vw;
	position: fixed;
	top: 8vw;
	left: 0;
}
#mainvisual .swiper .swiper-wrapper .swiper-slide img {
	width: 100%;
	height: calc(100vh - 8vw);
	object-fit: cover;
}
@media screen and (max-width: 840px) {
	#mainvisual {
		top: 70px;
	}
	#mainvisual .swiper .swiper-wrapper .swiper-slide img {
		height: calc(100vh - 70px);
	}
}
@media screen and (max-width: 640px) {
	#mainvisual .swiper .swiper-wrapper .swiper-slide img {
		height: 400px;
	}
}
/*-----------------------------------

	about_block

-----------------------------------*/
#about_block {
	padding: 100px 0;
	position: relative;
	z-index: 0;
}
#about_block::before {
	content: "";
	width: 100%;
	height: 310px;
	background: url(../img/index/about_bg.jpg) no-repeat center center/cover;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: -1;
}
#about_block .contents_inner {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
}
#about_block .textArea {
	width: 41%;
}
#about_block .textArea h2 {
	font-size: 36px;
	font-weight: 700;
	line-height: 1.44;
	margin-bottom: 40px;
}
#about_block .textArea h2::before {
	content: "Who we are";
	font-size: 15px;
	font-family: "Poppins", sans-serif;
	letter-spacing: 0.04em;
	color: #68B8F2;
	display: block;
	margin-bottom: 10px;
}
#about_block .textArea p {
	font-weight: 500;
	line-height: 2;
	margin-bottom: 60px;
}
#about_block .imageArea {
	width: 52%;
}
@media screen and (max-width: 1100px) {
	#about_block .textArea {
		width: 47%;
	}
	#about_block .textArea h2 {
		font-size: 32px;
	}
	#about_block .textArea h2::before {
		font-size: 13px;
	}
	#about_block .imageArea {
		width: 48%;
	}
}
@media screen and (max-width: 840px) {
	#about_block .contents_inner {
		flex-direction: column;
		align-items: center;
	}
	#about_block .textArea {
		display: contents;
	}
	#about_block .textArea h2 {
		order:1;
	}
	#about_block .textArea p {
		order:3;
	}
	#about_block .textArea a.more {
		order:4;
	}
	#about_block .imageArea {
		width: min(570px, 100%);
		order: 2;
		margin-bottom: 40px;
	}
}
@media screen and (max-width: 640px) {
	#about_block {
		padding: 50px 0;
	}
	#about_block .textArea h2 {
		font-size: 24px;
		margin-bottom: 20px;
	}
	#about_block .textArea h2::before {
		font-size: 11px;
		margin-bottom: 5px;
	}
	#about_block .imageArea {
		margin-bottom: 20px;
	}
	#about_block .textArea p {
		margin-bottom: 20px;
	}
	#about_block .textArea a.more {
		width: 220px;
		padding: 18px 0;
		background-position:  calc(100% - 20px) center;
	}
}
/*-----------------------------------

	itemArea

-----------------------------------*/
#itemArea {
	padding: 100px 0;
}
#itemArea .contents_inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#itemArea section {
	width: 48%;
	border: 1px solid #ACACAC;
	border-top: 4px solid #006BB9;
	padding: 40px;
}
#itemArea section h2 {
	font-size: 26px;
	font-weight: 700;
	text-align: center;
	color: #006BB9;
	margin-bottom: 20px;
}
#itemArea section img {
	margin-bottom: 30px;
}
#itemArea section p {
	font-weight: 500;
	line-height: 2;
	margin-bottom: 30px;
}
#itemArea section a.more {
	margin: 0 auto;
}
@media screen and (max-width: 840px) {
	#itemArea .contents_inner {
		gap: 30px;
	}
	#itemArea section {
		width: 100%;
	}
}
@media screen and (max-width: 640px) {
	#itemArea {
		padding: 50px 0;
	}
	#itemArea section {
		padding: 25px;
	}
	#itemArea section h2 {
		font-size: 20px;
		margin-bottom: 15px;
	}
	#itemArea section img {
		margin-bottom: 15px;
	}
	#itemArea section p {
		margin-bottom: 15px;
	}
}