@charset "utf-8";
/*
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
トラステック標準WEBサイト PHP + BootStrap
見附ニット組合　カスタム対応
	ver.2026.02.05.mitsukeknit.jp
	工場紹介		スタイルシート
────────────────────────────────────────
FileName:		/resources/css/factories.css
Editor:			TRUSTEC
Description:	工場紹介　スタイルシート。
────────────────────────────────────────
2025/02/05:		サンプル開発開始。
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
*/





/* ::::: [CUSTOM PROPERTIES] ::::: */
:root {
}





/* ::::: [COMMON-PARTS: OVER WRITE] ::::: */
#factories-page-title {
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url(../images/factories/factories-intro-background.jpg);
}

@media(max-width: 991px){
    #factories-page-title {
		background-image: url(../images/factories/factories-intro-background-md.jpg);
    }
}
@media(max-width: 767px){
    #factories-page-title {
        padding-top: 1rem !important;
		background-position: center;
    }
}

/* list
--------- --------- --------- ------- */
.factories-list {
	display: grid;
    padding-left: 2em;
    padding-bottom: 2em;
    margin: 0;
    list-style: none;
    align-items: flex-start;
    grid-auto-flow: row;
    grid-template-columns: repeat(3, auto);
    column-count: 3;
    justify-content: space-evenly;
    max-width: 1500px;
}
.factories-list-item {
    flex: 1;
    height: max-content;
    padding: .5em;
    margin-bottom: 1.5em;
	display: flex;
    justify-content: center;
}
.factories-list-item .caption{
	color: #261A18;
	font-size: max(1rem, 1vw);
    letter-spacing: var(--common-letter-spacing-title);
    font-weight: 300;
    text-align: start;
    width: 90%;
    margin: auto;
}
.btn-factories-modal {
    border: none;
    background-color: transparent;
}
.button-img{
    overflow: hidden;
    aspect-ratio: 1 / 1;
    max-width: 450px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
	transition: all 0.3s ease-out;
    border-radius: 50px !important;
    margin-bottom: 1em;
}
.gallary-picture{
	transition: all 0.3s ease-out;
}
.btn-factories-modal:hover .gallary-picture{
	transform: scale(1.03);
	transition: all 0.3s ease-out;
}
.detail-button {
	display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: 5%;
    margin-top: 2em;
}
.detail-button .text{
	color: #261A18;
	line-height: 4em;
	font-family: var(--common-font-family-english);
    letter-spacing: 0.02em;
    font-variation-settings: 'wght' 400, 'slnt' 0;
}
.detail-button .icon{
	border: solid 1px #261A18;
    border-radius: 50%;
    width: 2em;
    height: 2em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 1em;
	transition: all 0.3s ease-out;
}
.detail-button .icon .fa-plus{
	color: #261A18;
	font-size: .9em;
	transition: all 0.3s ease-out;
}
.btn-factories-modal:hover .detail-button .icon{
	background-color: #020764;
	border: solid 1px #020764;
	transition: all 0.3s ease-out;
}
.btn-factories-modal:hover .detail-button .icon .fa-plus{
	transform: rotate(45deg);
	color: #FFFFFF;
	transition: all 0.3s ease-out;
}
@media (max-width: 991px) {
	.factories-list {
		grid-template-columns: repeat(2, auto);
		column-count: 2;
	}
	.button-img{
		max-width: 390px;
	}
}
@media (max-width: 767px) {
	.button-img{
		max-width: 300px;
	}
	.factories-list {
		grid-template-columns: repeat(2, auto);
	}
	.factories-list-item .caption{
		font-size: max(.9rem, 1vw);
	}
	.detail-button .text{
		font-size: max(.9rem, 1vw);
	}
	.detail-button .icon .fa-plus{
		font-size: .8em;
	}
}
@media (max-width: 576px) {
	.factories-list {
		grid-template-columns: repeat(1, auto);
		column-count: 1;
	}
	.factories-list-item {
		padding: 0.5em;
	}
	.detail-button {
		margin-top: 1em;
	}
}



/* modal
--------- --------- --------- ------- */
.factories-modal{
	z-index: 2000;
	padding: 0;
}
.factories-modal-content .modal-header{
	padding: 1rem 2rem;
	border-bottom: none;
}
.factories-modal-content .modal-header,
.factories-modal-content .modal-body{
    background-color: #F2F0EA;
}
.factories-modal-content .modal-body{
    padding-left: 0;
    padding-right: 0;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
}
@media (max-width: 991px) {
	.factories-modal-content .modal-body{
		flex-direction: column;
		align-items: center;
	}
}
.factories-modal-header .btn-close{
	width: auto;
    background: none;
    display: flex;
    flex-direction: row;
    align-items: baseline;
	opacity: 1;
	box-shadow: none;
	transition: .4s;
}
.btn-close:hover{
	opacity: .5;
	transition: .4s;
}
.factories-modal-header .btn-close .text{
	margin-right: .5em;
    line-height: 1em;
}
.company-inf-wrapper,
.machinery-inf-wrapper{
    margin-left: 3em;
    min-height: 270px;
    margin-top: 2.5em;
}
.company-inf-wrapper{
	margin-bottom: 3em;
}
.company-inf-title,
.machinery-inf-title{
    position: relative;
    margin-bottom: .25em;
}
.company-inf-title .title,
.machinery-inf-title .title{
    color: var(--common-color);
    letter-spacing: var(--common-letter-spacing-title);
    font-family: var(--common-font-family-serif);
    display: flex;
    align-items: center;
    font-weight: 400;
    line-height: 1.5em;
    font-size: max(1.2rem, 1.3vw);
}
.company-inf-title .title-short,
.machinery-inf-title .title-short{
    position: absolute;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    display: flex;
    align-items: center;
    left: -2.8em;
    top: .5em;
    font-size: max(.9rem, .9vw);
    white-space: nowrap;
    font-family: var(--common-font-family-english);
    color: var(--common-accent-color);
    letter-spacing: 0.02em;
    font-variation-settings: 'wght' 100, 'slnt' 0;
    margin-bottom: .5em;
}
.company-inf-title .title-short::before,
.machinery-inf-title .title-short::before {
    content: url(../images/common/headline-icon.svg);
    display: inline-block;
    margin-bottom: .35em;
    width: 1em;
    height: 1em;
}
@media (max-width: 576px) {
	.company-inf-wrapper,
	.machinery-inf-wrapper{
		margin-left: 1.5em;
	}
	.company-inf-title .title-short,
	.machinery-inf-title .title-short{
		left: -2em;
	}
}
.table-company-inf th,
.table-company-inf td,
.table-machinery-inf th,
.table-machinery-inf td{
	font-weight: 400;
	text-align: start;
    border-left: none;
    border-right: none;
	padding: .5em 0;
}
.table-company-inf th{
    width: 10em;
}
.table-machinery-inf th{
    width: 20em;
}
.table-company-inf tr,
.table-machinery-inf tr{
	border-top: none;
}
.tr-caption{
	border-bottom: none;
	display: block;
}
.tr-caption:not(:first-child){
	margin-top: 1em;
}
@media(max-width: 1199px){
	.table-company-inf th,
	.table-company-inf td,
	.table-machinery-inf th,
	.table-machinery-inf td{
		width: 100%;
		display: block;
		padding: 0;
	}
	.table-company-inf th,
	.table-machinery-inf th{
		padding-top: .5em;
	}
	.table-company-inf td,
	.table-machinery-inf td{
		padding-bottom: .5em;
	}
}



/* image
--------- --------- --------- ------- */

/*	Picture	*/
.log-feed .detail-log-feed .feed-detail-picture {
	background-color: #F7F7F7;
	padding: 0.5rem;
	height: 100%;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.log-feed .detail-log-feed .feed-detail-picture img {
	width: 100%;
	height: 100%;
	max-width: initial;
	object-fit: contain;
	max-width: 100%;
	height: auto;
	object-position: center;
	display: block;
}
@media(max-width: 767px){
	.log-feed .detail-log-feed .feed-detail-picture,
	.topics-image-container,
	.topics-image-container figure{
		height: 50vh;
	}
}
.factories-modal-picture-wrapper{
    width: 50%;
}
.factories-modal-text-wrapper{
    width: 50%;
    max-width: 850px;
    padding: 1em 3em;
	margin: auto;
}
.factories-image-container{
    padding: 0;
	margin: auto;
    margin-bottom: 1rem;
	width: 100%;
}
@media (max-width: 991px) {
	.factories-modal-text-wrapper,
	.factories-modal-picture-wrapper{
		width: 100%;
	}
	.factories-image-container{
		display: flex;
		justify-content: center;
	}
	.factories-modal-text-wrapper{
		width: 80%;
		max-width: 850px;
		padding: 1em;
		margin: auto;
	}
}
@media (max-width: 576px) {
	.factories-modal-text-wrapper{
		width: 100%;
		padding: 1em;
		margin: auto;
	}
}
/*	Picture	*/
.log-feed .detail-log-feed .feed-detail-picture {
	background-color: #F7F7F7;
	padding: 0.5rem;
	height: 100%;
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.log-feed .detail-log-feed .feed-detail-picture img {
	width: 100%;
	height: 100%;
	max-width: initial;
	object-fit: contain;
	max-width: 100%;
	height: auto;
	object-position: center;
	display: block;
}
.factories-image-container figure{
    object-fit: cover;
	margin-bottom: 0;
    width: 50vw;
	max-width: 950px;
}
@media (max-width: 991px) {
	.factories-image-container figure{
		width: 80vw;
	}
}
@media(max-width: 776px){
	.factories-image-container figure{
		width: 95vw;
	}
}
.factories-image-section{
    display: flex;
    flex-direction: row;
    align-items: flex-start;
	height: fit-content;
}
.factories-image-single{
	margin: auto;
    max-height: 45vh;
    overflow: hidden;
}
.factories-image-section .single figure{
	margin: auto;
}
.factories-image-section .multiple{
    width: 90%;
}
.single figure,
.multiple .slick-list{
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
    margin: auto;
    overflow: hidden;
    width: 55vw;
    max-width: 950px;
    object-fit: cover;
    object-position: center;
    margin-bottom: 0;
    aspect-ratio: 3 / 2;
}
@media (max-width: 991px) {
	.single figure,
	.multiple .slick-list{
        border-radius: 1rem;
		width: 80vw;
	}
}
@media(max-width: 776px){
	.single figure,
	.multiple .slick-list{
        border-radius: 1rem;
		width: 95vw;
	}
	.factories-image-section .multiple{
		width: 100%;
	}
}
.factories-image-single,
.factories-image-multiple{
    margin: auto;
    object-fit: cover;
    overflow: hidden;
    width: 55vw;
	max-width: 950px;
    object-fit: cover;
    margin-bottom: 0;
    aspect-ratio: 3 / 2;
    border-radius: 1rem;
    border-bottom-left-radius: 0;
    border-top-left-radius: 0;
}
@media (max-width: 991px) {
	.factories-image-single,
	.factories-image-multiple{
		width: 83vw;
	}
}
@media(max-width: 776px){
	.factories-image-single,
	.factories-image-multiple{
		width: 100vw;
	}
}
.search-photo-nav-wrap{
	width: 100%;
	margin-left: 0;
}
.slick-track{
    margin: 0;
}
.search-photo-nav .slick-track{
    padding-left: 1rem;
    display: flex;
    flex-direction: row;
    align-items: start;
    width: fit-content !important;
}
@media (max-width: 991px) {
	.search-photo-nav .slick-track{
		padding-left: 0;
        margin: auto;
	    justify-content: center;
	}
}
.thumbnail{
	width: 150px !important;
    text-align: center;
    margin: 0 1%;
    margin-bottom: 1rem;
    overflow: hidden;
    aspect-ratio: 3 / 2;
}
.thumbnail:first-child{
	margin-left: 0;
}
.thumbnail:last-child{
	margin-right: 0;
}
.thumbnail:not(.slick-current) {
	filter: brightness(70%);
}
.thumbnail img{
    object-fit: cover;
	object-position: center;
    overflow: hidden;
	width: 100%;
	height: 100%;
	border-radius: 1rem;
}
@media (max-width: 776px) {
	.thumbnail{
		max-width: 150px;
		width: 25% !important;
	}
    .search-photo-nav-wrap {
        display: flex;
        justify-content: center;
    }
}


/* table
--------- --------- --------- ------- */
.modal-title .title{
    color: var(--common-color);
    letter-spacing: var(--common-letter-spacing-title);
    font-family: var(--common-font-family-serif);
    display: flex;
    align-items: center;
    font-weight: 400;
    line-height: 1.5em;
	text-align: start;
    font-size: max(1.4rem, 1.5vw);
}
.factories-modal-text{
	margin-top: 1em;
    font-size: max(.9rem, .9vw);
}