@charset "utf=8";

/* ==========================================
カバー
========================================== */

.cover {
	max-width: 192rem;
	width: 100%;
	margin: 0 auto;
	position: relative;
}

.cover:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	background: var(--gradation-primary);
	z-index: 2;
}

.cover:after {
	content: "";
	display: block;
	width: 100%;
	height: 75%;
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	background: var(--gradation-secondary);
	z-index: 3;
}

.cover-title-block {
    position: absolute;
    bottom: 6rem;
    left: 13rem;
    z-index: 4;
}

.cover-title {
    font-size: 6.5rem;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.45;
}

.cover-en-title {
    margin: 1rem 0 0 0;
    font-size: 4.5rem;
    font-weight: 500;
    letter-spacing: 0.03em;
    line-height: 1.35;
}

/* ==========================================
お知らせ
========================================== */

.top01-btn-area-pc-none {
	display: none !important;
}

.top01-wrapper {
    max-width: 192rem;
    width: 100%;
    margin: 0 auto;
	padding: 13rem 0;
}

.top01-frame {
    max-width: 122rem;
    width: 100%;
    margin: 0 auto;
    display: flex;
    align-items:flex-start;
    justify-content: space-between;
}

.top01-text-area {
	max-width: 24rem;
	width: 100%;
	margin: 0 2rem 0 0;
}

.top01-title-block {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top01-area {
	margin: 1.5rem 0 0 0;
    max-width: 90rem;
    width: 100%;
}

.top-news-article {
    border-bottom: 1px solid var(--border-primary);
}

.top-news-link {
    display: block;
    padding: 1.2rem 1rem 2.6rem 0;
	position: relative;
	transition: all .3s;
}

/* .top-news-link:before {
    content: "";
	display: block;
	max-width: 2.1rem;
	width: 100%;
	height: 1.8rem;
	position: absolute;
	right: 3rem;
	top: 3rem;
	bottom: 0;
	margin: auto;
	background: url(../../../../uploads/arrow_gray.png);
	background-attachment: scroll;
    background-position: center top;
    background-repeat: no-repeat;
    background-size: cover;
	transition: all .3s;
} */

.top-news-link:hover {
	opacity: 0.7;
}

.top-news-link:hover:before {
	transform: translateX(8px);
}

.top-news-flex {
    display: flex;
    align-items: center;
}

.top-news-flex .date {
    font-size: 1.5rem;
    font-weight: 500;
    margin: 0 2rem 0 0;
}

.top-news-flex .cate {
    font-size: 1.3rem;
    font-weight: 500;
    letter-spacing: 0.05em;
    line-height: 1.2307;
    padding: 0.2rem 1.5rem;
	border-radius: 4rem;
}

.top-news-title {
    margin: 0.9rem 0 0 0;
    font-size: 1.8rem;
    font-weight: 400;
    letter-spacing: 0.05em;
    line-height: 1.2222;
	display: flex;
    align-items: center;
    justify-content: space-between;
}

.top-news-content {
    padding: 3rem 1rem;
}

.top01-btn-area {
	margin: 4.8rem 0 0 0;
	width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
}

.top-news-content figure {
	margin: 0 0 3rem 0;
}

/* ==========================================
私たちの仕事
========================================== */

.top02-wrapper {
    max-width: 192rem;
    width: 100%;
    margin: auto;
}

.top02-frame {
    max-width: 142rem;
    width: 100%;
    margin: 0 auto;
}

.top02-area01 {
	width: 100%;
	padding: 8.6rem 10rem 10rem;
	border-radius: 1.5rem;
}

.top02-main-title-block01 {
    display: flex;
    align-items: center;
}

.top02-main-title-block01 .title01 {
    margin: 0 2rem 0 0;
}

.top02-block01 {
	width: 100%;
	margin: 6rem 0 0 0;
}

.top02-content01 {
	margin: 6rem 0 0 0;
    width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.top02-content01:first-child {
	margin: 0;
}

.top02-content01:nth-of-type(even) {
    flex-direction: row-reverse;
}

.top02-text-area {
    max-width: 58rem;
    width: 47.4%;
}

.top02-text-block {
    margin: 3rem 0 0 0;
}

.top02-text-block-margin-0 {
    margin: 0;
}

.top02-img {
    max-width: 56rem;
    width: 45.9%;
	border-radius: 0.8rem;
	overflow: hidden;
}

.top02-btn-area {
	margin: 5rem auto 0;
	display: flex;
    align-items: center;
    justify-content: center;
}


/* ==========================================
20250523追加
========================================== */

.top03-wrapper {
	display: none;
}

.top04-wrapper {
    max-width: 192rem;
    width: 100%;
    margin: 0 auto;
    padding: 13rem 0;
}

.top05-wrapper {
    max-width: 192rem;
    width: 100%;
    margin: 0 auto;
    padding: 13rem 0;
}

.top-title-block {
	text-align: center;
}

.top05-frame {
    max-width: 122rem;
    width: 100%;
    margin: 4rem auto 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.top05-img, .top04-img {
    max-width: 56rem;
    width: 45.9%;
    border-radius: 0.8rem;
    overflow: hidden;
}

.top05-text-area01, .top04-text-area01 {
    max-width: 55rem;
    width: 45.1%;
}

.top05-text-block01 {
	margin: 3rem 0 0;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 1920px) {



}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 1550px) {



}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 1024px) {

/* ==========================================
カバー
========================================== */

	.cover-title-block {
		bottom: 4rem;
		left: 4rem;
	}
	
	.cover-title {
		font-size: 4.5rem;
	}

	.cover-en-title {
    font-size: 3rem;
	}

/* ==========================================
お知らせ
========================================== */

	.top01-text-area {
		max-width: 23rem;
	}

/* ==========================================
私たちの仕事
========================================== */

	.top02-area01 {
		width: 100%;
		padding: 8.6rem 5rem 10rem;
		border-radius: 1.5rem;
	}



}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 768px) {

/* ==========================================
お知らせ
========================================== */

	.top01-wrapper {
		padding: 8rem 0;
	}

	.top01-btn-area-sp-none {
		display: none;
	}

	.top01-btn-area-pc-none {
		display: flex !important;
	}

	.top01-frame {
		flex-direction: column;
	}

	.top01-area {
		margin: 4rem 0 0 0;
	}

	.top01-text-area {
		margin: 0 auto;
	}

	.top01-title-block {
		flex-direction: column;
	}

	.top01-btn-area {
		justify-content: center;
	}

/* ==========================================
私たちの仕事
========================================== */

	.top02-main-title-block01 {
		justify-content: center;
		flex-direction: column;
	}

	.top02-content01 {
		flex-direction: column-reverse;
	}

	.top02-content01:nth-of-type(even) {
		flex-direction: column-reverse;
	}

	.top02-text-area {
		margin: 2rem 0 0;
		width: 100%;
	}

	.top02-img {
		width: 100%;
	}


/* ==========================================
20250523追加
========================================== */

	.top05-wrapper, .top04-wrapper {
		padding: 8rem 0;
	}

	.top05-frame {
        margin: 4rem 0 0 0;
        flex-direction: column-reverse;
    }

	.top05-img, .top04-text-area01 {
    	width: 100%;
	}

	.top05-text-area01, .top04-img {
		margin: 3rem auto 0;
		width: 100%;
	}

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 576px) {
	
/* ==========================================
カバー
========================================== */

	.cover-title {
		font-size: 3rem;
	}

	.cover-en-title {
    	font-size: 2rem;
	}

/* ==========================================
私たちの仕事
========================================== */

	.top02-area01 {
		width: 100%;
		padding: 6rem 1.5rem 6rem;
		border-radius: 1.5rem;
	}

	.top02-block01 {
		margin: 4rem 0 0 0;
	}

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 414px) {



}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */