#knitwear #wrapper,
#fiber #wrapper {
	overflow: unset;
}

.page-content.has-sidebar {
	display: flex;
	flex-wrap: wrap;
	padding: 80px 0 100px;
}

.page-content.has-sidebar .page-aside {
	position: relative;
	width: 37.8%;
	z-index: 10;
}

.page-content.has-sidebar .page-aside .inner {
	position: sticky;
	top: 100px;
}

.page-content.has-sidebar .page-article {
	box-sizing: border-box;
	width: 62.2%;
}

.page-content.has-sidebar .page-article section+section {
	position: relative;
}

.page-content.has-sidebar .page-article section+section::before {
	content: '';
	background-image: url(../images/common/illust_thread_01.svg);
	background-repeat: repeat;
	background-size: contain;
	position: absolute;
	top: 0px;
	left: 0px;
	display: inline-block;
	width: 100%;
	height: 3px;
}

.page-content.has-sidebar .page-article .sec-inner {
	padding: 70px 0;
}

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

	.page-content.has-sidebar {
		padding: 40px 0 60px;
	}

	.page-content.has-sidebar .page-aside,
	.page-content.has-sidebar .page-article {
		width: 100%;
	}

	.page-content.has-sidebar .page-article {
		padding-top: 60px;
	}

	.page-content.has-sidebar .page-article .sec-inner {
		padding: 40px 0;
	}
}

.page-content.has-sidebar .page-article .ttl-knit {
	padding-top: 10px;
	padding-bottom: 10px;
}

.page-content.has-sidebar .page-article .content-box>*:first-child {
	margin-top: 0;
}

.page-content.has-sidebar .page-article .content-box h3 {
	position: relative;
	font-size: 1.8rem;
	font-weight: bold;
	margin: 60px 0 25px;
	padding-left: 15px;
	letter-spacing: 0.1em;
}

.page-content.has-sidebar .page-article .content-box h3::before {
	content: '';
	background: var(--gold);
	position: absolute;
	width: 2px;
	height: 80%;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 0px;
}

.page-content.has-sidebar .page-article .content-box p {
	margin-top: 20px;
}

.page-content.has-sidebar .page-article .content-box .img-row {
	display: flex;
	justify-content: space-between;
}

.page-content.has-sidebar .page-article .content-box .img-row.flex img {
	width: 49%;
}

#knitwear-fashion .content-box .img-row {
	margin-bottom: 60px;
}

#knitwear-business .ttl-knit .txt {
	letter-spacing: 0.2em;
}

@media screen and (max-width: 767px) {
	.page-content.has-sidebar .page-article .content-box .img-row {
		margin-bottom: 30px;
	}
}

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

company

---------------------------- */
#company-mv {
	background: url(../images/page/company/mv_02.jpg) bottom center / cover no-repeat;
}

#company-mv .mv-inner {
	padding: 185px 0 80px;
}

@media screen and (max-width: 767px) {
	#company-mv .mv-inner {
		padding: 60px 0 0;
	}
}

#company-ceo .img-area {
	width: 35.8%;
}

#company-ceo .txt-area {
	padding-right: 72px;
}

#company-ceo .txt-area .name {
	text-align: right;
	letter-spacing: 0.2em;
	font-size: 1.9rem;
	font-family: var(--shippori);
	margin-top: 30px;
	line-height: 1.7;
}

#company-ceo .sign {
	max-width: 260px;
	width: 100%;
	margin: 10px 0 0 auto;
}

#company-ceo .m-img-txt-box {
	flex-direction: column-reverse;
}

@media screen and (max-width: 767px) {
	#company-ceo .img-area {
		width: 100%;
		align-items: center;
	}

	#company-ceo .img-area .img-box {
		width: 50%;
	}

	#company-ceo .txt-area {
		padding-right: 0;
	}
	#company-ceo .m-img-txt-box {
		flex-direction: column;
	}
}

#company-summary {
	position: relative;
	margin-bottom: 115px;
}

#company-summary::before {
	content: '';
	background-image: url(../images/common/bg_cover_02.png);
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0px;
	left: 50%;
	transform: translateX(-584px);
	display: inline-block;
	width: calc(100vw - ((100vw - 1168px)/2));
	height: 100%;
	opacity: 0.5;
	z-index: -1;
}

#company-summary .sec-inner {
	padding: 87px 0;
}

#company-summary .img-area {
	width: 260px;
	margin-left: 60px;
}

#company-summary .txt-area {
	padding-left: 40px;
}

@media screen and (max-width: 767px) {
	#company-summary {
		background-color: var(--gold-bg);
		margin-bottom: 0;
	}

	#company-summary::before {
		content: none;
	}

	#company-summary .txt-area {
		padding-left: 0;
		margin-top: 0;
	}
}

#company-history {
	position: relative;
	background: url(../images/page/company/history_01.jpg) center / cover no-repeat;
	color: var(--white);
}

#company-history::before {
	content: '';
	background-color: rgba(34, 34, 34, 0.8);
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
}

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

#company-branch {
	position: relative;
}

#company-branch::before,
#company-branch::after {
	content: '';
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	display: inline-block;
	z-index: -1;
}

#company-branch::before {
	background-image: url(../images/common/thread_08.svg);
	bottom: -640px;
	left: -800px;
	width: 1928px;
	height: 1392px;
}

#company-branch::after {
	background-image: url(../images/common/thread_09.svg);
	top: -370px;
	right: -1035px;
	width: 2301px;
	height: 1661px;
}

@media screen and (max-width: 767px) {
	#company-branch::after {
		content: none;
	}
}

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

knitwear

---------------------------- */
#knitwear-facility .m-table-container th:nth-child(2):before {
	left: 22%;
}

#knitwear-facility .m-table-container th:nth-child(3):before {
	left: 46%;
}

#knitwear-facility .m-table-container th:nth-child(4):before {
	left: 56%;
}

#knitwear-fashion.bg-page-threads::after {
	top: 60px;
}

#knitwear-process.bg-page-threads::after {
	top: 250px;
}

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

textile

---------------------------- */
#textile-feature.bg-page-threads::after {
	top: 140px;
}

#textile-process.bg-page-threads::after {
	top: 510px;
}

#textile-process .m-process-container .item-box {
	align-items: center;
}

#textile-facility .m-table-container th:nth-child(2):before {
	left: 35%;
}

#textile-facility .m-table-container th:nth-child(3):before {
	left: 69%;
}

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

recruit

---------------------------- */
#recruit {
	background-color: var(--gold-bg);
}

#recruit-mv {
	position: relative;
}

#recruit-mv::before {
	content: '';
	background-image: url(../images/common/thread_13.svg);
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	width: 768px;
	height: 335px;
}

#recruit-mv .mv-inner {
	padding: 185px 0 150px;
	padding: 185px 0 220px;
}

#recruit-mv .below-page-ttl-cont {
	font-family: var(--shippori);
}

#recruit-mv .below-page-ttl-cont .ttl {
	font-size: 3.5rem;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

#recruit-mv .below-page-ttl-cont .txt {
	margin-top: 20px;
	letter-spacing: 0.1em;
}

#recruit-mv .below-page-ttl-cont .img-01,
#recruit-mv .below-page-ttl-cont .img-02 {
	position: absolute;
}

#recruit-mv .below-page-ttl-cont .img-01 {
	top: 0;
	left: 66%;
}

#recruit-mv .below-page-ttl-cont .img-02 {
	top: 160px;
	left: 57%;
}

@media screen and (max-width: 767px) {
	#recruit-mv::before {
		width: 100vw;
		height: 50vw;
	}

	#recruit-mv .mv-inner {
		padding: 60px 0 0;
		padding: 60px 0;
	}

	#recruit-mv .below-page-ttl-cont .ttl {
		font-size: 2.2rem;
		line-height: 1.4;
	}

	#recruit-mv .below-page-ttl-cont .txt {
		margin-bottom: 20px;
	}

	#recruit-mv .below-page-ttl-cont .img-01,
	#recruit-mv .below-page-ttl-cont .img-02 {
		position: relative;
	}

	#recruit-mv .below-page-ttl-cont .img-01 {
		top: 0;
		left: 0;
	}

	#recruit-mv .below-page-ttl-cont .img-02 {
		top: unset;
		left: unset;
		text-align: right;
		right: 10px;
		margin-top: -43px;
	}
}

#recruit-jobs .dep-box+.dep-box {
	margin-top: 80px;
}

@media screen and (max-width: 767px) {
	#recruit-jobs .dep-box+.dep-box {
		margin-top: 60px;
	}
}

#recruit-data .data-list {
	display: grid;
	grid-template-rows: 320px 320px 320px;
	grid-template-columns: 320px 320px 320px;
	grid-template:
		"data01 data02 data02"
		"data03 data03 data04"
		"data05 data06 data04";
	gap: 20px;
}

#recruit-data .data-list .img-box img {
	width: 100%;
	height: 100%;
}

#recruit-data .data-list .data-01 {
	grid-area: data01;
}

#recruit-data .data-list .data-02 {
	grid-area: data02;
}

#recruit-data .data-list .data-03 {
	grid-area: data03;
}

#recruit-data .data-list .data-04 {
	grid-area: data04;
}

#recruit-data .data-list .data-05 {
	grid-area: data05;
}

#recruit-data .data-list .data-06 {
	grid-area: data06;
}

@media screen and (max-width: 767px) {
	#recruit-data .data-list {
		gap: 5px;
	}
}