/*------------------------------------------
  First View
------------------------------------------*/
.top-first-view {
	background-image: url(../images/top/fv_main_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	height: 900px;
	margin-top: 80px;
	z-index: 1;
}

.overview {
	background-image: url(../images/top/fv_sub_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	justify-content: left;
	text-align: left;
	z-index: 2;
	margin-top: 320px;
	max-width: 600px;
}

.top-first-view .overview .txt01 {
	font-family: 'Noto Serif JP';
	font-size: 30px;
	font-weight: 800;
	line-height: 1.5;
	padding-top: 100px;
	text-align: center;
	padding-right: 20px;
}

.top-first-view .overview .txt02 {
	width: 550px;
	padding-top: 15px;
	text-align: center;
	padding-right: 40px;
	padding-left: 30px;
	margin-bottom: 30px;
}

.top-first-view .overview .m-button01 {
	padding-bottom: 60px;
	margin-left: 190px;
}

.top-first-view .slider {
	width: calc(100% - 770px);
}

.top-first-view .slider li img {
	height: 100%;
	object-fit: cover;
}

.top-first-view .slick-list,
.top-first-view .slick-track {
	height: 100%;
}

@media only screen and (max-width: 1024px) {
	.top-first-view {
		flex-flow: wrap column-reverse;
		justify-content: flex-end;
		height: auto;
		padding-top: 95px;
		margin-inline: 0;
		background-image: url(../images/top/fv_main_bg.png);
		background-size: cover;
		background-repeat: no-repeat;
		background-position: center;
	}

	.overview {
		background-image: url(../images/top/fv_sub_bg.png);
		background-size: cover;
		background-repeat: no-repeat;
		justify-content: left;
		text-align: left;
		z-index: 2;
		margin-top: 320px;
		max-width: 600px;
	}

	.top-first-view .overview .txt02 {
		margin: 3rem;
	}

	.top-first-view .slider {
		width: 90%;
		height: 660px;
		margin-left: auto;
	}

	.top-first-view .slider li img {
		width: 100%;
		border-radius: 5px 0 0 5px;
	}
}

@media only screen and (max-width: 600px) {
	.top-first-view {
		flex-flow: wrap column-reverse;
		justify-content: flex-end;
		margin-inline: 0;
		width: 100%;
		aspect-ratio: 390/317;
		background-image: url(../images/top/fv_main_sp.png);
		background-repeat: no-repeat;
		background-position: top center;
		background-size: 100% auto;
		padding-top: 0;
	}

	.overview {
		background-image: none;
		text-align: center;
		margin-top: 330px;
	}

	.top-first-view .overview .txt01 {
		font-size: 22px;
		padding-top: 40px;
		padding-bottom: 40px;
		padding-right: 0;
		background-color: rgb(255,255,255,.3);
		top: 20px;
	}

	.top-first-view .overview .txt02{
		width: fit-content;
	}

	.top-first-view .overview .m-button01{
		margin-left: auto;
		margin-right: auto;
	}

	.top-first-view .slider {
		height: 300px;

	}

}


/*------------------------------------------
  Main
------------------------------------------*/
/* banner */
.banner-content {
	background-image: url(../images/top/fv_section2_bg.png);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.banner-content .inner {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	align-items: flex-end;
	padding-top: 40px;
}

.banner-content .col {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	width: 40vw;
}

.banner-content .col h2 {
	font-family: 'Noto Serif JP';
	font-size: 24px;
	font-weight: 500;
}

.banner-content .col .txt {
	margin: 2rem 0;
}

.banner-content .flex {
	display: flex;
	flex-direction: column;
	background-color: #FFF;
	padding: 30px;
	border-radius: 28px;
	width: 40vw;
	text-align: center;
	margin-bottom: 190px;
}

.banner-content .flex .m-button01 {
	margin-left: auto;
	margin-right: auto;
}

.banner-content .col .img .m-button01 a {
	border-color: #fff;
}

.banner-content .col .img .m-button01 a:hover {
	background: #fff;
	color: #000;
}

@media only screen and (max-width: 1024px) {
	.banner-content .col .img .m-button01 {
		right: 2%;
	}
}

@media only screen and (max-width: 600px) {
	.banner-content .inner {
		flex-direction: column;
	}

	.banner-content .flex{
		margin-bottom: 60px;
	}

	.banner-content .col{
		width: 90vw;
		margin-left: auto;
		margin-right: auto;
	}

	.banner-content .inner .m-plus{
		order: 1;
		width: fit-content;
		text-align: left;
		margin-left: 0;
		font-weight: 700;
	}

	.banner-content .inner .txt{
		order: 2;
	}

	.banner-content .col02{
		padding-bottom: 60px;
	}

	.banner-content .inner .flex{
		order: 3;
		text-align: center;
		margin-left: auto;
		margin-right: auto;
		width: 90vw;
		display: flex;
		flex-direction: row;
		justify-content: space-around;
		align-items: center;
		padding: 0;
	}

	.banner-content .inner .flex .img{
		width: 30vw;
	}

	.banner-content .inner .m-button01{
		margin-right: 0;
		margin-left: 0;
		width: 30vw;
		font-weight: 300;
	}
}


/* News */
.news-content {
	background: #fff;
	padding-block: 129px;
}

.news-content .inner {
	display: flex;
	flex-flow: wrap row;
	justify-content: space-between;
	align-items: stretch;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
}

.news-content .left {
	width: 35.156%;
	min-height: 200px;
	border-right: 1px solid #000;
	padding: 3rem 0;
	text-align: center;
}

.news-content .left .m-button01 {
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

.news-content .right {
	width: 64.844%;
}

@media only screen and (max-width: 1024px) {
	.news-content .left {
		width: 100%;
		min-height: auto;
		border-right: none;
		border-bottom: 1px solid #000;
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		padding: 1.5rem 0;
	}

	.news-content .left .m-button01 {
		position: static;
		order: 2;
	}

	.news-content .right {
		width: 100%;
	}
}

@media only screen and (max-width: 600px) {
	.news-content .left .m-button01 {
		max-width: 178px;
	}

	.news-content .left .m-button01 a {
		height: 45px;
		line-height: 43px;
	}
}