@charset "utf-8";
/* ================================================================ */
/* 共通 */
/* ================================================================ */
@media screen and (max-width:1024px) {
}
@media screen and (max-width:840px) {
}
@media screen and (max-width:640px) {
}
/* ================================================================ */
/* 見出し */
/* ================================================================ */
#ProductFv {
    background: #ffffff;
}
@media screen and (max-width:1024px) {
}
@media screen and (max-width:840px) {
}
@media screen and (max-width:640px) {
}
/* ================================================================ */
/* ブランド説明 */
/* ================================================================ */
#ProductBrandDescription {
    background: #2f2f2f;
    display: block;
    position: relative;
    z-index: 0;
}
.brandsGlobeCanvasWrap {
    display: block;
    height: 100%;
    width: 60%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
}
#BrandsGlobeCanvas {
    display: block;
    height: 85vh;
    width: 100%;
    position: sticky;
    top: 10vh;
}
.brandDescriptions {
    display: block;
    min-height: 85vh;
    width: 50%;
    margin: 0 0 0 auto;
    padding: 4em;
    position: relative;
    z-index: 20;
}
.brandDescriptions > li + li {
    margin-top: 4em;
}
.brandDescription {
    background: #242424;
    color: #fcfcfc;
    display: block;
    width: 100%;
    min-width: 320px;
    max-width: 600px;
    padding: 2em 3em;
    position: relative;
}
.brandDescription_content {
}
.brandDescription_content_header {
}
.brandDescription_content_header_img {
    background: center/contain no-repeat rgba(255, 255, 255, 0.6);
    display: block;
    width: 90%;
    margin: 0 auto;
    padding-top: 30%;
    box-shadow: 0px 0px 6px 6px rgba(255, 255, 255, 0.6), 10px 10px 0px 0px rgba(0, 0, 0, 0.3), 15px 15px 0px 0px rgba(0, 0, 0, 0.2), 20px 20px 0px 0px rgba(0, 0, 0, 0.1);
    border-radius: 2px;
}
.brandDescription_content_header_text {
    display: block;
    margin-top: 0.5em;
    font-size: 1.5em;
    font-weight: 600;
    position: relative;
    padding: 0.25em 0.25em 0 0;
    text-align: right;
}
.brandDescription_content_header_text::before {
    background: linear-gradient(90deg, #005261, #00AFCC);
    content: '';
    display: block;
    height: 4px;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.brandDescription_content_text {
    font-weight: 500;
    font-size: 0.95em;
    padding-top: 2em;
    height: auto;
    overflow: hidden;
    transition: all .54s ease;
}
@media screen and (max-width:1024px) {
    .brandsGlobeCanvasWrap {
        width: 75%;
    }
    .brandDescriptions {
        padding: 4em 1.5em;
    }
    .brandDescription {
        padding: 1.5em;
    }
}
@media screen and (max-width:840px) {
    .brandsGlobeCanvasWrap {
        width: 100%;
        padding-top: 100%;
        position: relative;
    }
    #BrandsGlobeCanvas {
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 100%;
    }
    .brandDescriptions {
        margin: 0;
        padding: 2em 5%;
        width: 100%;
    }
    .brandDescription {
        min-width: auto;
        width: 100%;
        margin: 0 auto;
    }
    .brandDescriptions > li + li {
        margin-top: 2.5em;
    }
}
@media screen and (max-width:640px) {
}
/* ================================================================ */
/* 取扱いブランド一覧 */
/* ================================================================ */
#ProductBrands {
    background: #191919;
    color: #ffffff;
    position: relative;
}
#ProductBrands::after, #ProductBrands::before {
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
#ProductBrands::before {
    background: center/cover no-repeat url(./brands_bg_001.jpg);
    background-attachment: fixed;
    opacity: 0.75;
    z-index: 0;
}
#ProductBrands::after {
    background: #000000;
    opacity: 0.85;
    z-index: 1;
}
#ProductBrands > .inner {
    display: block;
    padding: 6em 0 0;
    position: relative;
    z-index: 10;
}
.productBrandCategories {
    padding: 6em 0 4em;
}
.productBrandCategory + .productBrandCategory {
    margin-top: 6em;
}
.productBrandCategory_headline, .productBrandCategory_content {
    padding-left: 50px;
    position: relative;
}
.productBrandCategory_headline {
    color: #ffffff;
    display: block;
    position: relative;
}
.productBrandCategory_headline::before {
    background: center/contain no-repeat;
    content: '';
    display: block;
    height: 35px;
    width: 35px;
    position: absolute;
    top: 50%;
    left: 0;
    transform: translate(0, -50%);
}
.productBrandCategory__bike .productBrandCategory_headline::before {
    background-image: url(./brand_category_bike_icon_001.svg);
}
.productBrandCategory__parts .productBrandCategory_headline::before {
    background-image: url(./brand_category_parts_icon_001.svg);
}
.productBrandCategory__wear .productBrandCategory_headline::before {
    background-image: url(./brand_category_wear_icon_001.svg);
}
.productBrandCategory__other .productBrandCategory_headline::before {
    background-image: url(./brand_category_other_icon_001.svg);
}
.productBrandCategory_headline_eng {
    font-size: 1.75em;
    font-style: italic;
    font-weight: bold;
    line-height: 1;
}
.productBrandCategory_headline_jpn {
    font-size: 1em;
    font-weight: bold;
    line-height: 1;
    padding: .25em 0;
}
.productBrandCategory_content {
    margin-top: 3em;
}
.productBrands {
    display: block;
    width: 100%;
}
.productBrands + .productBrands {
    margin-top: 1em;
}
.productBrands > li {
    display: inline-block;
    margin-left: 2.5em;
}
.productBrands > li > span {
    appearance: none;
    background: transparent;
    border: none;
    color: #ffffff;
    font-weight: bold;
    transition: color .4s ease;
}
/* .productBrands > li > span:hover {
    color: #00AFCC;
} */
@media screen and (max-width:1024px) {
}
@media screen and (max-width:840px) {
    .productBrands > li {
        margin-left: 2em;
    }
}
@media screen and (max-width:640px) {
    .productBrands > li {
        display: block;
        margin-left: 0;
    }
}
