@charset "utf-8";

/* --------------------------------
　tablet
-------------------------------- */
@media (max-width: 1024px) {
	
	#globalNavi .gMenu {
		width: 97%;	
	}
	
	/*---------------------------
	　直営店詳細ページ
	----------------------------*/

	.shopDataWrap {
		flex-direction: column;
		align-items: stretch;
	}

	.shoplist .shopDataWrap img {
		width: 100%;
	}

	.shopDataWrap .shopData {
		flex: none;
	}
	
	.shoplist .shopData-row {
		display: block;
	}
	
	.shoplist .shopData-row:last-child {
		border-bottom: 1px solid #d7d7d7;
	}
	
	.shoplist .shopData-row div {
		display: block;
		padding: 15px 0;
	}
	
	.shoplist .shopData-row .th {
		width: 100%;
		text-align: left;
		padding-bottom: 0;
	}

}

/* --------------------------------
　SP
-------------------------------- */
@media (max-width: 767px) {	

	/*---------------------------
	　共通パーツ	
	----------------------------*/
	
	.pc-br {
		display: none;
	}

	.sp-br {
		display: inline;
	}

	.news .part-pc {
		display: none;
	}
	
	.news .part-sp {
		display: block;
	}
	
	.contents, .news .contents, .leftContentsInner {
		padding: 10px;
	}

	.pankuzu {
		font-size: 11px;
	}

	.h4 span {
		display: block;
		margin-left: 0;
		margin-top: 10px;
	}
	
	.linkBtn {
		width: 100%
	}
	
	/*---------------------------
	　ヘッダー
	----------------------------*/

	#globalNavi {
		display: none;
	}

	#logoArea span {
		display: block;
	}

	/*---------------------------
	　フッター
	----------------------------*/

	.footer-nav {
		flex-direction: column;
		gap: 0;
	}
	
	.footer-nav li {
		border-bottom: 1px solid #535048;
		padding: 18px;
	}

	.footer-nav li:first-child {
		border-top: 1px solid #535048;
	}

	.footer-nav li:not(:last-child) {
		border-right: none;
		padding-right: 20px;
	}

	/*---------------------------
	　トップページ
	----------------------------*/

	.card-list .card-list__container {
	grid-template-columns: 1fr;
	}
	
	.card-list__item a {
		aspect-ratio: 3 / 1;
	}
	
	.card-list__item img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}

	.factory__container {
		grid-template-columns: 1fr;
	}

	/*---------------------------
	　ブランド
	----------------------------*/
	.brandBox p {
		text-align: left;
	}

	/*---------------------------
	　ショップリスト
	----------------------------*/	

	.contentsLayout {
		flex-direction: column;
	}
	
	.contentsLayout .shoplist {
		flex: 0 1 auto;
	}
		
	.h3Box .ttlHolder {
		display: none;
	}
	
	.h3Box h3 {
		border-top: 1px solid #CAC7C7;
		padding-top: 30px;
		text-align: center;
		white-space: normal !important;
		display: block;
	}
	
	/*　テーブル　*/
	.table-row {
		display: block;
	}
	
	.table-row div {
		display: block;
	}
	
	.table-row .th {
		width: 100%;
		font-weight: bold;
		padding-bottom: 0;
	}

	.shoplist .table-row {
		padding: 10px 5px;
	}

	.shoplist .table-row:nth-child(2) {
		border-top: 1px solid #ccc;
	}

	.shoplist .table-row div {
		width: 100% !important;
		padding: 5px;
	}

	.shoplist .table-row .shop {
		font-weight: bold;
	}
	
	.shoplist .table-row.th {
		display: none;
	}

	.shoplist .table-row .tel span {
		display: inline;
	}

	/* サイドメニュー */

	#sideNavi {
		display: none;
	}
	
	.shoplist #sideNavi {
		display: block;
		float: none;
		width: 100%;
	}

	#sideNavi.shoplist .menulist {
		margin: 20px 0;
		border: 1px solid #dfdfdf;
	}

	#sideNavi.shoplist .menulist > li {
		margin-bottom: 0;
	}

	#sideNavi.shoplist .hasChild {
		background-color: #ffffff;
		color: #333;
		font-weight: normal;
		cursor: pointer;
	}

	#sideNavi.shoplist .child a {
		padding: 15px 15px 15px 20px;
	}

	#sideNavi.shoplist .child {
		display: none;
	}

	#sideNavi.shoplist .child li {
		background-color: #ebeae9;
	}
	
	#sideNavi.shoplist .hasChild::before {
		font-family: "FontAwesome";
		content: "\f107";
		position: absolute;
		right: 10px;
		top: 50%;
		margin-top: -8px;
		color: #bfbfbf;
		font-size: 16px;
	}
	
	#sideNavi.shoplist .hasChild.active::before {
		content: "\f00d";
	}
	
	#sideNavi.shoplist .hasChild.active {
		background-color: #403624;
	}
	
	#sideNavi.shoplist .child a::before {
		content: "";
	}
	
	#sideNavi.shoplist .child li {
		border-bottom: 1px solid #d9d9d9;
	}

	/*---------------------------
	　直営店詳細ページ
	----------------------------*/
		
	.shoplist .shopData-row div {
		text-align: center !important;
	}

	/*---------------------------
	   FACTORY TOUR
	---------------------------*/

	.news .aligncenter {
		text-align: left;
	}

	.news .left-block, .news .right-block {
		float: none;
		margin-left: 0 !important;
		margin-right: 0 !important;
	}
	
	.news .right-block-withcap {
		float: none;
		width: 100%;
		margin: 0 0 2em 0;
	}

	.news h4 {
		border-left: 8px solid #b8a062;
		padding: 5px 15px;
	}

	.news .three-columns,
	.news .two-columns
	 {
		grid-template-columns: 1fr;
		justify-items: center;
	}
	.news .box {
		max-width: 460px;
	}

	/* FACTORY_SWEAT*/

	#factory_sweat .about-right,
	#factory_sweat .ura-left,
	#factory_sweat .ura-right {
		width: 100%;
	}
	
	#factory_sweat .about-right img {
		margin: 0 auto;
	}

	#factory_sweat .type-401, #factory_sweat .type-403 {
		padding-top: 70%;
	}

	/*   FACTORY_NEL   */
	#factory_nel .about-left, #factory_nel .about-right, #factory_nel .kimou-left, #factory_nel .kimou-right, #factory_nel .button-left, #factory_nel .button-right, #factory_nel .pocket-left, #factory_nel .pocket-right {
		width: 100%;
	}

	#factory_nel .about-left img,
	#factory_nel .kimou-left img {
		margin: 0 auto;
	}

	/*   FACTORY_DENIM   */
	#factory_denim .about-right, #factory_denim .g3-left, #factory_denim .hosei-right {
		width: 100%;
	}
	
	#factory_denim .about-right img,
	#factory_denim .g3-left img,
	#factory_denim .hosei-right img {
		margin: 0 auto;
	}
}


/* --------------------------------
	PC、タブレットのみ
-------------------------------- */

@media screen and (min-width: 768px) {

	/*　ショップリスト　*/
	#sideNavi.shoplist .hasChild {
		pointer-events: none;
	}
	
	#sideNavi.shoplist .child {
		display: block !important;
	}
	
}