@charset "UTF-8";

/* ▼▼ 汎用見出し設定（トップページ各セクション大見出し）@extend用 ▼▼ */
.chapter-header {
  margin-bottom: 30px;
  text-align: center; }

.chapter-header__en, .footer-header__en {
  font-family: "brandon-grotesque";
  font-weight: 300;
  font-style: italic;
  display: block;
  font-size: 4.5rem;
  margin-bottom: -10px; }

.chapter-header__ja, .footer-header__ja {
  font-size: 1.3rem; }

/*
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////

$$　ギャレリア各EC共通 ブランドリスト・アイテムカテゴリー

////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
*/


/* clear
-------------------------------------------------- */
.clear:after {
	height: 0;
	visibility: hidden;
	content: ".";
	display: block;
	clear: both;
}

/*section-branditem
-------------------------------------------------- */
.section-branditem {
	box-sizing: border-box;
	width: 100%;
	padding: 0;
	margin: 0 auto;
	margin-bottom: 100px;
	font-family: "tbudgothic-std";
    font-weight: 400;
	font-size: 1.4rem;
	letter-spacing: 0.08rem;
}

/*/////////////////////////////////////////////////////////////////////////////


              // BRAND LIST //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* brand-navigation 
-------------------------------------------------- */
.brand-navigation {
	height: 246px;
	 font-family: "brandon-grotesque";
	 font-weight: 400;
	 border-top: 1px solid #cccccc;
	 padding: 0;
}
.brand-navigation-inner {
	width: 100%;
	position: relative;
	z-index: 9999;
}

/* style-category */
.style-category {
	padding: 30px 20px 25px;
	width: 1160px;
	box-sizing: border-box;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #FFFFFF;
}
.style-category__ttl {
	width: 150px;
	font-size: 1.8rem;
}
.style-list {
	width: 965px;
}
.style-list li {
	width: 188px;
	margin: 0 0 5px 5px;
	float: left;
}
.style-list li .wid_all {
	width: 188px;
	margin: 0 0 5px 5px;
	float: left;
}
.style-list li a {
	display: block;
	width: 100%;
	line-height: 48px;
	border: 1px solid #2e3033;
	box-sizing: border-box;
	text-align: center;
	font-size: 1.4rem;
}
.style-list li a.all {
	/* line-height: 103px; */
	font-size: 1.6rem;
}
.style-list li a.active {
	background: #1c1f22;
	color: #FFFFFF;
}

/* alphabet-category */
.alphabet-category {
	width: 100%;
	background: #1c1f22;
}
.alphabet-category ul {
	width: 1160px;
	box-sizing: border-box;
	margin: 0 auto;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto;
	padding: 0 20px;
	transition: .3s all;
}
.alphabet-category li {
	width: 3.846%;
	position: relative;
}
.alphabet-category li::after {
    content: "";
    width: 1px;
    height: 4px;
    background: rgba(255,255,255,0.40);
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.alphabet-category li:last-child::after {
	display: none;
}
.alphabet-category a {
	display: block;
	font-size: 1.4rem;
	color: #FFFFFF;
	text-align: center;
}

/* fixed */
.brand-navigation-inner.fixed {
	position: fixed;
	left: 0;
	top: 0;
}
.fixed .style-category {
	width: 1270px;
	padding: 10px 20px;
}
.fixed .style-category__ttl {
	width: 120px;
	font-size: 1.4rem;
}
.fixed .style-list {
	width: 1110px;
}
.fixed .style-list li {
	width: 105px;
	margin-bottom: 0;
}
.fixed .style-list li a {
	line-height: 32px;
	font-size: 1.2rem;
}
.fixed .style-list li a.all {
	line-height: 32px;
	font-size: 1.2rem;
}
.fixed .style-list li a.home_f {
	line-height: 16px;
	font-size: 1.2rem;
}
.fixed .alphabet-category ul {
	height: 46px;
}


/* brand-container
-------------------------------------------------- */
.brand-container {
	padding: 80px 20px;
	width: 1160px;
	box-sizing: border-box;
	margin: 0 auto;
	text-align: center;
}
.alphabetGroup {
	padding-top: 140px;
	margin-top: -140px;
}
.nondisplay .alphabet,
.nondisplay .alphabetGroupElement {
	display: none;
}
.alphabet {
	display: inline-block;
	 font-family: "brandon-grotesque";
	 font-weight: 700;
	 font-size: 2.6rem;
	 position: relative;
	 margin: 10px 0;
}
.alphabet::before,
.alphabet::after {
	content: "";
	width: 100px;
	height: 1px;
	background: #1c1f22;
	position: absolute;
	top: 50%;
}
.alphabet::before {
	left: -135px;
}
.alphabet::after {
	right: -135px;
}
.alphabetGroupElement {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 50px;
}
.alphabetGroupElement::before{
	content:"";
	display: block;
	width: 265px;
	order:1;
}
.alphabetGroupElement::after{
	content:"";
	display: block;
	width: 265px;
}

/* brand-block
-------------------------------------------------- */
.brand-block {
	text-align: left;
	line-height: 1.5;
}
.brand-block a {
	display: block;
}
.brand-block__thumb {
	border: 1px solid #d9d9d9;
	overflow: hidden;
	position: relative;
	transition: .3s all;
}
.brand-block__thumb::after {
	display: block;
	content: "";
	padding-top: 56.25%;
}
.brand-block__thumb img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .3s all;
}
.brand-block-inner {
	padding: 10px;
}
.brand-block__ttl-en {
	 font-family: "brandon-grotesque";
	 font-weight: 500;
	 font-size: 1.5rem;
	 margin-bottom: 3px;
}
.brand-block__ttl-ja {
	 font-size: 1.1rem;
	  margin-bottom: 10px;
}
.brand-block__category {
	display: inline-block;
	font-size: 1.0rem;
	border: 1px solid #333333;
	padding: 3px 10px 2px;
}

/* brand-container */
.brand-container .brand-block {
	width: 265px;
	margin: 30px 0 0;
}
/* pick-up-brand */
.pick-up-brand .brand-block {
	width: 320px;
	margin: 0 10px 0;
	opacity: 0.3;
	transition: .3s all;
}
.pick-up-brand .brand-block.slick-active {
	opacity: 1;
}
.inv {
  display: none;
}

/* slick-slider
-------------------------------------------------- */
.slick-slider {
    position: relative;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}
.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0px !important;
}
.slick-list:focus {
    outline: none;
}
.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
}
.slick-track:before,
.slick-track:after {
    display: table;
    content: '';
}
.slick-track:after {
    clear: both;
}
.slick-loading .slick-track {
    visibility: hidden;
}
.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}
[dir='rtl'] .slick-slide {
    float: right;
}
.slick-slide img {
    display: block;
}
.slick-slide.slick-loading img {
    display: none;
}
.slick-slide.dragging img {
    pointer-events: none;
}
.slick-initialized .slick-slide {
    display: block;
}
.slick-loading .slick-slide {
    visibility: hidden;
}
.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
    display: none;
}
/* Dots */
.slick-dotted.slick-slider {
	padding-bottom: 50px;
}
.slick-dots {
    position: absolute;
    bottom: 0px;
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
}
.slick-dots li {
    position: relative;
    display: inline-block;
    width: 14px;
    height: 14px;
    margin: 0  5px !important;
    padding: 0 !important;
    cursor: pointer;
	border: none;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 14px;
    height: 14px;
	padding: 0;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
    background: #FFFFFF;
	border-radius: 50%;
	border: 2px solid #1c1f22;
	box-sizing: border-box;
}
.slick-dots li.slick-active button {
    background: #1c1f22;
}
/* Arrows */
.slick-prev,
.slick-next {   
    position:  absolute;
	top: 70px;
	width: 42px;
	height:42px;
	overflow: hidden;
	font-size: 0;
    line-height: 0;
	display: block;
	cursor: pointer;
	background-repeat: no-repeat;
	background-size: 10px auto;
	background-color: #1c1f22;
	background-position: center center;
	z-index: 999;
	transition: .3s all;
}
.slick-prev {
	background-image:url(../img/brand/arrow_prev_wht.png);
	left: 50%;
	margin-left: -550px;
}
.slick-next {
	background-image:url(../img/brand/arrow_next_wht.png);
	right: 50%;
	margin-right: -550px;
}


/*/////////////////////////////////////////////////////////////////////////////


              // ITEM CATEGORY //
	  

/////////////////////////////////////////////////////////////////////////////*/
.item-category {
	padding: 0 20px;
	width: 1160px;
	box-sizing: border-box;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.item-category::before{
	content:"";
	display: block;
	width: 24%;
	order:1;
}
.item-category::after{
	content:"";
	display: block;
	width: 24%;
}
.item-category li {
	width: 24%;
	display: flex;
	align-items: center;
	margin: 20px 0;
	cursor: pointer;
	font-weight: 700;
	line-height: 1.5;
	 transition: all 0.1s linear;
}
.item-category li:hover {
	opacity: 0.6;
}
.item-category li a {
	display: flex;
	align-items: center;
}
.item-category li a:hover {
	opacity: 1;
}
.item-category__thumb {
	width: 70px;
	height: 70px;
	border: 1px solid #d9d9d9;
	border-radius: 50%;
	overflow: hidden;
	margin-right: 15px;
}
.item-category__thumb img {
	width: 100%;
}
.item-category p span {
	font-size: 1.2rem;
}

/* modal
-------------------------------------------------- */
body.fixed {
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
	pointer-events: none;
}
.modal-overlay {
	width: 100%;
	height: 100vh;
	position: fixed;
	left: 0;
	top: 0;
	background: rgba(255,255,255,0.90);
	z-index: 99998;
	display: none;
	pointer-events: auto;
}
.modal-contents {
	width: 100%;
	height: 100vh;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 99999;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	display: none;
	font-family: "tbudgothic-std";
    font-weight: 400;
	font-size: 1.2rem;
	line-height: 1.5;
	letter-spacing: 0.08rem;
	pointer-events: auto;
}
.modal-wrapper {
	width: 1120px;
	position: absolute;
	left: 50%;
	top: 15%;
	z-index: 99999;
	transform: translateX(-50%);
	padding: 0 0 50px;
	margin: 0 auto;
	box-sizing: border-box;
}
.modal-wrapper .panel {
	background: #FFFFFF;
	padding: 40px 50px 50px;
	border: 1px solid #d9d9d9;
}
.modal-contents .close {
	display: inline-block;
	position: absolute;
	width: 50px;
	height: 50px;
	cursor: pointer;
	right: 0;
	top: -50px;
	background: #1c1f22;
}
.modal-contents .close::before,
.modal-contents .close::after {
	content: "";
	width: 20px;
	height: 2px;
	background: #FFFFFF;
	position: absolute;
	top: 25px;
	left: 15px;
	transform-origin: center center;
}
.modal-contents .close::before {
	transform: rotate(-45deg);
}
.modal-contents .close::after {
	transform: rotate(45deg);
}
.modal-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 1.5rem;
	border-bottom: 1px solid #cccccc;
	padding-bottom: 25px;
	margin-bottom: 10px;
}
.modal-header__ttl {
	display: flex;
	font-size: 2.2rem;
	align-items: center;
}
.modal-header__ttl .item-category__thumb {
	margin-right: 25px;
}
.modal-header a {
	background: url(../img/item/arrow.png) right center no-repeat;
	background-size: 6px auto;
	padding-right: 20px;
}
.item-detail-category {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.item-detail-category::before,
.item-detail-category::after {
	content:"";
	display: block;
	width: 234px;
	order:1;
}
.item-detail-block {
	width: 234px;
	margin-top: 25px;
	display: flex;
    flex-direction: column;
}
.item-detail-block::after {
	content:"";
	display: block;
	width: 100%;
}
.item-detail-block a {
	display: block;
}
.item-detail-block__parent {
	width: 100%;
	min-height: 55px;
	font-size: 1.3rem;
	font-weight: 700;
	border-bottom: 1px solid #333333;
	display: flex;
	align-items: center;
}
.item-detail-block__parent a {
	width: 100%;
	display: block;
	background: url(../img/item/arrow.png) right center no-repeat;
	background-size: 6px auto;
	padding: 0 15px 0 0;
	box-sizing: border-box;
}
.item-detail-block__parent span {
	width: 100%;
	display: block;
	padding: 0 15px 0 0;
	box-sizing: border-box;
}
.item-detail-block ul {
	padding-top: 10px;
}
.item-detail-block ul li {
	padding: 5px 0;
}
.item-detail-block ul li a {
	position: relative;
	padding: 0 0 0 15px;
	vertical-align: middle;
}
.item-detail-block ul li a::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	box-sizing: border-box;
	width: 6px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 6px solid #1c1f22;
}



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

  /* ▼▼ 要素のサイズ・配置基本設定 @extend用 ▼▼ */
  .w-1160__m-0auto, .global-header-shoulder, .global-header-logo, .global-header-menu, .global-header-usp, .footer-usp__list, .footer-menu-wrapper, .footer-switch__list, .footer-world__list {
    padding: 0; }

  /* ▼▼ 汎用見出し設定（トップページ各セクション大見出し）@extend用 ▼▼ */
  .chapter-header {
    margin-bottom: 5vw; }

  .chapter-header__en, .footer-header__en {
    width: 100vw;
    font-size: 9vw;
    margin-bottom: -1vw; }

  .chapter-header__ja, .footer-header__ja {
    font-size: 3vw; }

/*section-branditem
-------------------------------------------------- */
.section-branditem {
	margin-bottom: 50px;
	font-size: 1.2rem;
}

/*/////////////////////////////////////////////////////////////////////////////


              // BRAND LIST //
	  

/////////////////////////////////////////////////////////////////////////////*/

/* brand-navigation 
-------------------------------------------------- */
.brand-navigation {
	height: 261px;
}

/* style-category */
.style-category {
	padding: 20px 10px 15px;
	width: 100%;
	display: block;
}
.style-category__ttl {
	width: 100%;
	font-size: 1.6rem;
	text-align: center;
	margin-bottom: 15px;
}
.style-list {
	width: 100%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.style-list li {
	width: 32.3%;
	margin: 0 0 5px 0;
	float: none;
}
.style-list li a {
	line-height: 38px;
	font-size: 1.2rem;
}
.style-list li a.all {
	line-height: 38px;
	font-size: 1.2rem;
}
.style-list::after {
	display: none;
}

/* alphabet-category */
.alphabet-category {
	width: 100%;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}
.alphabet-category ul {
	width: 280%;
	padding: 0 15px;
	height: 60px;
}
.alphabet-category a {
	font-size: 1.2rem;
}

/* fixed */
.fixed .style-category {
	padding: 10px 0;
	width: 100%;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
}
.fixed .style-category__ttl {
	display: none;
}
.fixed .style-list {
	width: 820px;
	padding: 0 10px;
	height: 34px;
	flex-wrap: no-wrap;
	box-sizing: border-box;
}
.fixed .style-list li {
	width: auto;
}
.fixed .style-list li a {
	line-height: 32px;
	font-size: 1.1rem;
	padding: 0 15px;
}
.fixed .style-list li a.all {
	line-height: 32px;
	font-size: 1.1rem;
}
.fixed .alphabet-category ul {
	height: 46px;
}

/* brand-container
-------------------------------------------------- */
.brand-container {
	padding: 40px 15px;
	width: 100%;
}
.alphabetGroup {
	padding-top: 120px;
	margin-top: -120px;
}
.alphabet {
	 font-size: 1.8rem;
	 margin: 10px 0;
}
.alphabet::before,
.alphabet::after {
	width: 60px;
}
.alphabet::before {
	left: -90px;
}
.alphabet::after {
	right: -90px;
}
.alphabetGroupElement {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 50px;
}
.alphabetGroupElement::before,
.alphabetGroupElement::after {
	display: none;
}


/* brand-container */
.brand-container .brand-block {
	width: 47.8%;
	margin: 20px 0 0;
}
.brand-container .brand-block-inner {
	padding: 8px 5px;
}
.brand-container .brand-block__ttl-en {
	 font-size: 1.3rem;
	 margin-bottom: 2px;
}
.brand-block__ttl-ja {
	 font-size: 1.0rem;
	  margin-bottom: 8px;
}
.brand-block__category {
	font-size: 0.9rem;
}

/* pick-up-brand */
.pick-up-brand .brand-block {
	width: 73vw;
	margin: 0 2vw 0;
}

/* slick-slider
-------------------------------------------------- */
/* Dots */
.slick-dotted.slick-slider {
	padding: 0 0 30px !important;
}
.slick-dots li {
    width: 10px;
    height: 10px;
    margin: 0 3px !important;
}
.slick-dots li button {
    width: 10px;
    height: 10px;
	border: 1px solid #1c1f22;
}
/* Arrows */
.slick-prev,
.slick-next {   
	top: 60px;
	width: 34px;
	height:34px;
	background-size: 8px auto;
}
.slick-prev {
	left: 2vw;
	margin-left: 0;
}
.slick-next {
	right: 2vw;
	margin-right: 0;
}


/*/////////////////////////////////////////////////////////////////////////////


              // ITEM CATEGORY //
	  

/////////////////////////////////////////////////////////////////////////////*/
.item-category {
	padding: 0 10px;
	width: 100%;
}
.item-category::before,
.item-category::after{
	display: none;
}
.item-category li {
	width: 49%;
	margin: 10px 0;
	cursor: pointer;
	font-weight: 700;
	line-height: 1.5;
}
.item-category li:hover {
	opacity: 1;
}
.item-category__thumb {
	width: 40px;
	height: 40px;
	margin-right: 8px;
}
.item-category p span {
	font-size: 1.0rem;
}

/* modal
-------------------------------------------------- */
.modal-overlay {
	display: none !important;
}
.modal-contents {
	background: rgba(255,255,255,0.90);
}
.modal-wrapper {
	width: 100%;
	left: 0;
	top: 0;
	transform: none;
	padding: 0 0 50px;
}
.modal-wrapper .panel {
	padding: 15px 15px 100px;
	border: none;
}
.modal-contents .close {
	right: 0;
	top: 0;
}
.modal-header {
	display: block;
	font-size: 1.3rem;
	border-bottom: 1px solid #333333;
	padding-bottom: 0;
	margin-bottom: 0;
}
.modal-header__ttl {
	font-size: 1.6rem;
	font-weight: 700;
	border-bottom: 1px solid #333333;
	padding-bottom: 15px;
}
.modal-header__ttl .item-category__thumb {
	margin-right: 15px;
}
.modal-header a {
	background: url(../img/item/arrow.png) right 10px center no-repeat;
	background-size: 6px auto;
	display: block;
	padding: 15px 30px 15px 10px;
	font-weight: 700;
}
.item-detail-category {
	display: block;
}
.item-detail-block {
	width: 100%;
	margin-top: 0;
}
.item-detail-block a {
	display: block;
}
.item-detail-block__parent {
	width: 100%;
	min-height: inherit;
	display: block;
}
.item-detail-block__parent a {
	background: url(../img/item/arrow.png) right 10px center no-repeat;
	background-size: 6px auto;
	padding: 15px 30px 15px 10px;
}
.item-detail-block__parent span {
	padding: 15px 30px 15px 10px;
}
.item-detail-block ul {
	border-bottom: 1px solid #333333;
	padding: 10px 10px 15px;
}
.item-detail-block ul li {
	padding: 8px 0;
}

}