@charset "UTF-8";
/*!
 * "Renner" is lisenced under the SIL Open Font License 1.1
 * by https://indestructibletype.com/Renner.html
 */
.column-detail .other-column__list__category,
.column-detail .other-column__ttl,
.column-detail__shareBtn,
.column-detail__sectionTitle,
.column-detail__number,
.column-detail__category,
.column-detail__h1,
.column-list .colum-list__sectionTitle,
.column-list .column-list__subTitle,
.column-list .column-list__mainTitle,
.column-index__list__image span,
.column-index__txt span,
.topics-detail__category,
.topics-detail__date,
.topics-detail__h1,
.topics-index__date,
.topics-index__header__ttl,
.RecommendArea .RecommendArea__title,
.ToSupport .ToSupport__title,
.SpecArea .SpecArea__title,
.FunctionArea .FunctionArea__title,
.MovieContentBox .MovieContentBox__subTitle,
.MovieArea .MovieArea__title,
.ProductDetailFv .ProductDetailFv__price span,
.ProductDetailFv .ProductDetailFv__subTitle,
.product-index__header__h1,
.support-detail__faq__ttl,
.support-detail__name__model,
.support-detail__name__eng,
.support-detail__h1,
.support-index__header__h1,
.SupportBox .SupportBox__title,
.ChannelBox .ChannelBox__date,
.ChannelArea .ChannelArea__title,
.ConceptArea .ConceptArea__title,
.Product .Product__title,
.TopicBox .TopicBox__date,
.FvTitle .FvTitle__catch,
.pankuzu,
.search-box__sku__ttl,
.search-box__ttl,
.footer__copylight,
.footer__lang,
.mega-menu__onlineShop__ttl,
.mega-menu__middle__list a strong,
.mega-menu__middle__block__ttl,
.mega-menu__block__ttl,
.common-nav-pc .nav-pc__link span,
.nav-footer,
.nav-list-sp__contents__link,
.nav-list-sp__block__middle__ttl,
.nav-list-sp__block__big__ttl,
.nav-list-sp__support .nav__list-sp__ttl,
.nav-list-sp__contents .nav__list-sp__ttl,
.nav-list-sp__product .nav__list-sp__ttl,
sup,
.ColumnTags .ColumnTags__title,
.ArticleBox .ArticleBox__date,
.ArticleBox .ArticleBox__subTitle,
.ListPagenation .ListPagenation__pageNum,
.parts-btn-cv .parts-btn-cv__text span,
.parts-btn-03 .parts-btn-03__text,
.parts-btn-02 .parts-btn-02__text,
.parts-btn-01 .parts-btn-01__text,
.scroll-bar__text,
.SpecialArea .SpecialArea__title,
.SupportArea .SupportArea__title,
.SelectArea .SelectArea__title,
.ProductArea .ProductArea__title,
.TopicsArea .TopicsArea__title {
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.footer__menu__block .footer__menu__block__ttl {
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 200;
}
.SelectBox .SelectBox__catch,
.footer__menu-list__list a {
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 300;
    display: block;
}
.column-detail__article__section h5,
.column-detail__article__section h4,
.column-detail__article__section h3,
.column-detail__article__section h2,
.FunctionBox .FunctionBox__title,
.MovieContentBox .MovieContentBox__title,
.AboutArea .AboutArea__mainTitle,
.SelectBox .SelectBox__title,
.ConceptArea .ConceptArea__title span,
.notice-copy__ttl,
.support__warranty__ttl,
.nav-list-sp__block__middle__ttl small,
.nav-list-sp__block__big__ttl span,
.nav-list-sp__support span,
.nav-list-sp__contents span,
.nav-list-sp__product span,
.nav-list-sp__support,
.nav-list-sp__contents,
.nav-list-sp__product,
.SpecTable .SpecTable__label {
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.05em;
}

.column-detail .other-column__list__ttl,
.column-detail__article,
.column-detail__ttl,
.column-index__header,
.topics-detail__article p,
.topics-detail,
.topics-index,
.support-detail__faq,
.support-detail__name__name,
.notice-copy__txt,
.support__warranty__txt,
.nav-list-sp__block__middle__list__link,
body,
.parts-btn-01.-jp .parts-btn-01__text {
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 300;
    font-style: normal;
}

.SpecialArea,
.SupportArea,
.SelectArea,
.ProductArea,
.TopicsArea {
    margin-bottom: 30vw;
    padding: 10vw 0;
}
.u-forSp {
    display: block !important;
}
.u-forPc {
    display: none !important;
}
@media (min-width: 768px) {
    .SpecialArea,
    .SupportArea,
    .SelectArea,
    .ProductArea,
    .TopicsArea {
        margin-bottom: 150px;
        padding: 40px 0;
    }
    .u-forSp {
        display: none !important;
    }
    .u-forPc {
        display: block !important;
    }
}

.SpecialArea .SpecialArea__title,
.SupportArea .SupportArea__title,
.SelectArea .SelectArea__title,
.ProductArea .ProductArea__title,
.TopicsArea .TopicsArea__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .SpecialArea .SpecialArea__title,
    .SupportArea .SupportArea__title,
    .SelectArea .SelectArea__title,
    .ProductArea .ProductArea__title,
    .TopicsArea .TopicsArea__title {
        font-size: 3rem;
    }
}

.RecommendArea .RecommendArea__titleArea,
.SpecArea .SpecArea__titleArea,
.FunctionArea .FunctionArea__titleArea,
.MovieArea .MovieArea__titleArea,
.SpecialArea .SpecialArea__titleArea,
.SupportArea .SupportArea__titleArea,
.SelectArea .SelectArea__titleArea,
.ProductArea .ProductArea__titleArea,
.TopicsArea .TopicsArea__titleArea {
    margin-bottom: 12vw;
}
@media (min-width: 768px) {
    .RecommendArea .RecommendArea__titleArea,
    .SpecArea .SpecArea__titleArea,
    .FunctionArea .FunctionArea__titleArea,
    .MovieArea .MovieArea__titleArea,
    .SpecialArea .SpecialArea__titleArea,
    .SupportArea .SupportArea__titleArea,
    .SelectArea .SelectArea__titleArea,
    .ProductArea .ProductArea__titleArea,
    .TopicsArea .TopicsArea__titleArea {
        margin-bottom: 100px;
    }
}

.ChannelArea .ChannelArea__footer,
.Product .Product__footer,
.TopicsArea .TopicsArea__footer {
    margin: 10vw auto 0;
}
.ChannelArea .ChannelArea__footer .parts-btn-01,
.Product .Product__footer .parts-btn-01,
.TopicsArea .TopicsArea__footer .parts-btn-01 {
    width: 30vw;
    margin: 0 5vw 0 auto;
}
@media (min-width: 768px) {
    .ChannelArea .ChannelArea__footer,
    .Product .Product__footer,
    .TopicsArea .TopicsArea__footer {
        margin-top: 80px;
        width: 80%;
    }
    .ChannelArea .ChannelArea__footer .parts-btn-01,
    .Product .Product__footer .parts-btn-01,
    .TopicsArea .TopicsArea__footer .parts-btn-01 {
        width: 200px;
        margin: 0 0 0 auto;
    }
}

.icon-plusMinus {
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
}
.icon-plusMinus:before,
.icon-plusMinus:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    background: #707070;
    transition: transform 0.3s;
}
.icon-plusMinus:before {
    transform: translate(-50%, -50%);
}
.icon-plusMinus:after {
    transform: translate(-50%, -50%) rotate(-90deg);
}
.icon-plusMinus--minus:before {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.icon-plusMinus--minus:after {
    transform: translate(-50%, -50%) rotate(-135deg);
}
.icon-plusMinus--plus:after {
    width: 100%;
}
.icon-plusMinus--nega {
    background: #000;
}
.icon-plusMinus--nega:before,
.icon-plusMinus--nega:after {
    width: 70%;
    height: 2px;
    background: #fff;
}
.icon-plusMinus--nega.icon-plusMinus--minus:before {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.icon-plusMinus--nega.icon-plusMinus--minus:after {
    transform: translate(-50%, -50%) rotate(-135deg);
}

.icon-cross {
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
}
.icon-cross:before,
.icon-cross:after {
    content: "";
    display: block;
    width: 110%;
    height: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    border-radius: 0.5px;
    background: #222;
}
.icon-cross:before {
    transform: translate(-50%, -50%) rotate(-45deg);
    transition: width 0.2s;
}
.icon-cross:after {
    transform: translate(-50%, -50%) rotate(45deg);
    transition: width 0.3s 0.1s;
}
.icon-cross.-min:before,
.icon-cross.-min:after {
    width: 0;
}

.icon-play {
    position: relative;
    border: 1px solid #000;
    border-radius: 50%;
    width: 100%;
}
.icon-play:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.icon-play:after {
    content: "";
    display: block;
    border-bottom: 1px solid #000;
    border-right: 1px solid #000;
    width: 15%;
    height: 15%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-45deg);
}

.icon-linkTab {
    position: relative;
}
.icon-linkTab:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.icon-linkTab .icon-linkTab__svg {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 100%;
}

.icon-cart {
    position: relative;
    display: block;
    width: 100%;
    background: #000;
}
.icon-cart:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.icon-cart .icon-cart__cartImg {
    display: block;
    width: 60%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.icon-cart.icon-cart--red {
    background: #bf0713;
}
.icon-cart.icon-cart--yellow {
    background: #e8bf42;
}
.icon-cart--vividred {
    background: rgb(255, 1, 44);
}
.icon-cart--glay {
    background: rgb(147, 133, 126);
}
.icon-cart--purple {
    background: #dd4fff;
}

.icon-arrow {
    display: block;
    position: relative;
    width: 30px;
}
.icon-arrow:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    border-bottom: 1px solid #222;
    border-right: 1px solid #222;
}
.icon-arrow:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.icon-arrow--gray:after {
    border-bottom: 1px solid #aaa;
    border-right: 1px solid #aaa;
}
.icon-arrow--white:after {
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
}
.icon-arrow--left:after {
    transform: translate(-50%, -50%) rotate(135deg);
}
.icon-arrow--right:after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.icon-arrow--up:after {
    transform: translate(-50%, -50%) rotate(-135deg);
}
.icon-arrow--down:after {
    transform: translate(-50%, -50%) rotate(45deg);
}

.parts-btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    width: 100%;
    height: 15vw;
    box-sizing: border-box;
    border: 1px solid #000;
    font-size: 2.2rem;
}
.parts-btn__icon {
    position: absolute;
    right: 5%;
    top: 50%;
    z-index: 10;
    transform: translateY(-50%);
    display: block;
    width: 4vw;
    height: 4vw;
}
.parts-btn__icon--left {
    right: auto;
    left: 5%;
}
.parts-btn .icon-arrow {
    width: 2.5vw;
    height: 2.5vw;
}

@media (min-width: 768px) {
    .parts-btn {
        height: 87px;
        font-size: 1.6rem;
    }
    .parts-btn:after {
        content: "";
        position: absolute;
        left: 0;
        top: 0;
        z-index: -1;
        width: 0;
        height: 100%;
        background: rgba(50, 50, 50, 0.1);
        transition: width 0.8s cubic-bezier(0, 0.74, 0.41, 1);
    }
    .parts-btn:hover {
        cursor: pointer;
    }
    .parts-btn:hover:after {
        width: 100%;
    }
    .parts-btn__icon {
        width: 26px;
        height: 26px;
        right: 23px;
    }
    .parts-btn__icon--left {
        right: auto;
        left: 23px;
    }
    .parts-btn .icon-arrow {
        width: 10px;
        height: 10px;
    }
}
.comp-colorTips {
    font-size: 0;
}
.comp-colorTips__list {
    font-size: 2.4rem;
    width: auto;
    padding-right: 1em;
    margin: 0 4% 2% 0;
    font-weight: 300;
    display: inline-block;
    position: relative;
}
.comp-colorTips__list:after {
    content: "/";
    padding-left: 2%;
    display: inline-block;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}

@media (min-width: 768px) {
    .comp-colorTips__list {
        font-size: 1.4rem;
        text-align: left;
        width: auto;
        margin-right: 10px;
    }
}
.scroll-bar__text {
    position: absolute;
    display: block;
    font-size: 2rem;
    transform-origin: center;
    transform: translateX(-50%) rotate(90deg);
    top: -70%;
    left: 50%;
}
.scroll-bar__inner {
    position: relative;
    overflow: hidden;
    width: 3px;
    height: 13vw;
    line-height: 1em;
}
.scroll-bar__bar {
    display: block;
    height: 100%;
    width: 1px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background: #909090;
}
.scroll-bar__pointer {
    display: block;
    height: 45%;
    width: 1px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%);
    background: #333;
    animation: scrollPointer 2s cubic-bezier(0.29, 0.68, 0.69, 0.31) infinite;
}

@keyframes scrollPointer {
    0% {
        top: -100%;
    }
    100% {
        top: 100%;
    }
}
@media (min-width: 768px) {
    .scroll-bar__text {
        top: -60%;
        font-size: 1.2rem;
    }
    .scroll-bar__inner {
        height: 75px;
    }
    .scroll-bar__bar {
        background: #909090;
    }
}
.parts-btn-01 {
    position: relative;
    width: 100%;
    height: 12vw;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    font-size: 3vw;
    font-weight: 400;
    border: 1px solid #707070;
    border-radius: 100px;
}
.parts-btn-01.-jp .parts-btn-01__text {
    font-size: 90%;
}
.parts-btn-01 .parts-btn-01__text {
    display: inline-block;
    font-size: inherit;
    font-weight: inherit;
    margin: 0 0.5em;
}
.parts-btn-01 .parts-btn-01__icon {
    display: inline-block;
    width: 0.4em;
    height: 0.4em;
    position: absolute;
    right: 20px;
}
.parts-btn-01 .parts-btn-01__imgIcon {
    position: relative;
    width: 3vw;
    margin: 0 5px;
}
.parts-btn-01 .parts-btn-01__imgIcon:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.parts-btn-01 .parts-btn-01__imgIcon img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.parts-btn-01 .parts-btn-01__line {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    height: 1px;
    width: 100%;
    overflow: hidden;
    display: none;
}
.parts-btn-01 .parts-btn-01__line span {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #000;
    text-align: center;
}
.parts-btn-01.-alignLeft {
    justify-content: flex-start;
}
.parts-btn-01.-nega .parts-btn-01__text {
    color: #fff;
}
.parts-btn-01.-nega .parts-btn-01__line span {
    background: #fff;
}

@media (min-width: 768px) {
    .parts-btn-01 {
        height: 64px;
        font-size: 1.4rem;
        transition: opacity 0.3s;
    }
    .parts-btn-01.-jp .parts-btn-01__text {
        font-size: 90%;
        padding-top: 0;
    }
    .parts-btn-01 .parts-btn-01__text {
        font-size: 1.3rem;
    }
    .parts-btn-01 .parts-btn-01__icon {
        width: 5px;
        height: 5px;
        transition: transform 0.3s;
    }
    .parts-btn-01 .parts-btn-01__imgIcon {
        width: 20px;
    }
    .parts-btn-01:hover {
        opacity: 0.8;
        cursor: pointer !important;
    }
    .parts-btn-01:hover .parts-btn-01__line span {
        animation: btnAnimation 2s cubic-bezier(0.57, 0.01, 1, 1) infinite;
    }
    .parts-btn-01:hover .icon-arrow--right {
        transform: translateX(5px);
    }
    .parts-btn-01:hover .icon-arrow--left {
        transform: translateX(-5px);
    }
    .parts-btn-01:hover .icon-arrow--up {
        transform: translateY(-5px);
    }
    .parts-btn-01:hover .icon-arrow--down {
        transform: translateY(5px);
    }
}
@keyframes btnAnimation {
    0% {
        opacity: 1;
        left: 0%;
    }
    34% {
        opacity: 1;
        left: 100%;
    }
    35% {
        left: 100%;
        opacity: 0;
    }
    36% {
        opacity: 0;
        left: -100%;
    }
    37% {
        opacity: 1;
        left: -100%;
    }
    70% {
        left: 0%;
        opacity: 1;
    }
    100% {
        left: 0%;
        opacity: 1;
    }
}
.parts-btn-02 {
    position: relative;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 15vw;
}
.parts-btn-02.-dark {
    background: #333333;
    color: #fff;
}
.parts-btn-02.-lightGray {
    background: #efefef;
}
.parts-btn-02 .parts-btn-02__text {
    color: inherit;
    font-size: 3.5vw;
    letter-spacing: 0.2em;
}
.parts-btn-02 .parts-btn-02__icon {
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: translateY(-50%);
    width: 2vw;
}

@media (min-width: 768px) {
    .parts-btn-02 {
        height: 64px;
        transition: opacity 0.3s;
    }
    .parts-btn-02 .parts-btn-02__text {
        font-size: 1.4rem;
        padding-top: 0.3em;
    }
    .parts-btn-02 .parts-btn-02__icon {
        width: 5px;
        height: 5px;
        transition: transform 0.3s;
        right: 30px;
    }
    .parts-btn-02:hover {
        opacity: 0.8;
        cursor: pointer !important;
    }
}
.parts-btn-03 {
    position: relative;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 15vw;
}
.parts-btn-03.-dark {
    background: #333333;
    color: #fff;
}
.parts-btn-03.-lightGray {
    background: #f7f7f7;
}
.parts-btn-03 .parts-btn-03__text {
    color: inherit;
    font-size: 3vw;
    letter-spacing: 0.3em;
}
.parts-btn-03 .parts-btn-03__icon {
    position: absolute;
    top: 50%;
    right: 3vw;
    transform: translateY(-50%);
    width: 1.2vw;
}

@media (min-width: 768px) {
    .parts-btn-03 {
        height: 64px;
        transition: opacity 0.3s;
    }
    .parts-btn-03 .parts-btn-03__text {
        font-size: 1.4rem;
        padding-top: 0.3em;
    }
    .parts-btn-03 .parts-btn-03__icon {
        width: 5px;
        height: 5px;
        transition: transform 0.3s;
        right: 30px;
    }
    .parts-btn-03:hover {
        opacity: 0.8;
        cursor: pointer !important;
    }
}
.parts-btn-cv {
    position: relative;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 15vw;
}
@media (min-width: 768px) {
    .parts-btn-cv {
        transition: opacity 0.3s;
    }
    .parts-btn-cv:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.parts-btn-cv .parts-btn-cv__text {
    color: inherit;
    font-size: 3vw;
    letter-spacing: 0.2em;
}
.parts-btn-cv .parts-btn-cv__icon {
    position: absolute;
    top: 50%;
    right: 5vw;
    transform: translateY(-50%);
    width: 2vw;
}
.parts-btn-cv .parts-btn-cv__cartIcon {
    position: absolute;
    top: 50%;
    left: 5vw;
    transform: translateY(-50%);
    width: 8vw;
}

@media (min-width: 768px) {
    .parts-btn-cv {
        height: 60px;
    }
    .parts-btn-cv .parts-btn-cv__cartIcon {
        width: 30px;
        left: 20px;
    }
    .parts-btn-cv .parts-btn-cv__icon {
        right: 20px;
        width: 6px;
    }
    .parts-btn-cv .parts-btn-cv__text {
        font-size: 1.4rem;
    }
}

.parts-Btn-colorChoice {
    position: relative;
    display: block;
    width: 10vw;
    border: 1px solid #e4e4e4;
    border-radius: 50%;
}
.parts-Btn-colorChoice:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.parts-Btn-colorChoice.-current {
    border: 2px solid #000;
}
.parts-Btn-colorChoice span {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    display: block;
    width: 70%;
    height: 70%;
    border-radius: 50%;
}

@media (min-width: 768px) {
    .parts-Btn-colorChoice span {
        transition: transform 0.3s;
        transform-origin: center;
    }
    .parts-Btn-colorChoice:hover {
        cursor: pointer;
    }
    .parts-Btn-colorChoice:hover span {
        transform: translate(-50%, -50%) scale(0.6);
    }
}
.SpecTable {
    background: #fcfcfc;
}
.SpecTable .SpecTable__label {
    background: #f7f7f7;
    width: 100%;
    padding: 5vw;
    font-size: 3vw;
    letter-spacing: 0.2em;
}
.SpecTable .SpecTable__content {
    width: 100%;
    padding: 5vw;
    font-size: 2.8vw;
    line-height: 1.8em;
    border-bottom: 3px solid #fff;
}

@media (min-width: 768px) {
    .SpecTable {
        display: flex;
        flex-wrap: wrap;
    }
    .SpecTable .SpecTable__label {
        width: 30%;
        font-size: 1.3rem;
        padding: 30px;
        border-bottom: 3px solid #fff;
    }
    .SpecTable .SpecTable__content {
        width: 70%;
        font-size: 1.2rem;
        padding: 30px;
    }
}
.parts-itemBox .parts-itemBox__item {
    width: 50vw;
}
.parts-itemBox .parts-itemBox__link {
    display: block;
}
@media (min-width: 768px) {
    .parts-itemBox .parts-itemBox__link {
        transition: opacity 0.3s;
    }
    .parts-itemBox .parts-itemBox__link:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.parts-itemBox .parts-itemBox__imgWrapper {
    width: 100%;
    overflow: hidden;
}
.parts-itemBox .parts-itemBox__imgWrapper img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .parts-itemBox .parts-itemBox__imgWrapper:hover img {
        transform: scale(1.1);
    }
}
.parts-itemBox .parts-itemBox__img {
    display: block;
    width: 100%;
}
.parts-itemBox .parts-itemBox__text {
    font-size: 2.8vw;
    line-height: 1.6em;
    text-align: left;
    margin-top: 3vw;
    line-height: 1.7;
    margin-bottom: 5px;
}

@media (min-width: 768px) {
    .parts-itemBox .parts-itemBox__text {
        margin-top: 30px;
        font-size: 1.2rem;
        margin-bottom: 10px;
    }
}

.parts-itemBox .parts-itemBox__text .newIcon {
    display: inline-block;
    background: #707070;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: 10px;
    transform: scale(0.9);
    line-height: 1;
    padding: 5px 4px 3px 5px;
    letter-spacing: 1px;
}

/* ヘアケアカテゴリのみ、カラーパレット追加 */
.parts-itemBox__colorPallet__inner {
    display: flex;
}
.parts-itemBox__colorPallet__text {
    line-height: 1.3;
    margin-right: 5px;
    font-size: 10px;
    color: #707070;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
}
.parts-itemBox__colorPallet__colors {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -2px;
    width: 100%;
}
.parts-itemBox__colorPallet__colorsBox {
    -ms-flex-preferred-size: 14.28%;
    flex-basis: 14.28%;
    width: 14.28%;
    max-width: 16px;
    padding: 0 2px;
}
.Reccomend__item .parts-itemBox__colorPallet__colorsBox {
    -ms-flex-preferred-size: 18%;
    flex-basis: 18%;
    width: 18%;
}
.parts-itemBox__colorPallet__colorsBox span {
    display: block;
    border-radius: 60px;
    width: 12px;
    height: 12px;
    margin-bottom: 4px;
}

.ProductDetail__feature {
    background: #e4e4e4;
    border-radius: 3px;
    font-size: 10px;
    padding: 3px 10px;
    margin-top: 5px;
    display: inline-block;
}
@media (min-width: 768px) {
    .ProductDetail__feature {
        font-size: 12px;
    }
}

.CategoryNavi .CategoryNavi__list {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}
.CategoryNavi .CategoryNavi__item {
    width: calc(50% - 2px);
    margin-right: 4px;
    margin-bottom: 4px;
}
.CategoryNavi .CategoryNavi__item:nth-of-type(even) {
    margin-right: 0;
}
.CategoryNavi .CategoryNavi__item.-active .CategoryNavi__btn {
    background: #e4e4e4;
    pointer-events: none;
}
.CategoryNavi .CategoryNavi__item.-active .CategoryNavi__btn:hover {
    cursor: auto !important;
    opacity: 1 !important;
}

@media (min-width: 768px) {
    .CategoryNavi .CategoryNavi__item {
        width: calc(33.3333% - 2.6666px);
        margin-right: 4px;
    }
    .CategoryNavi .CategoryNavi__item:nth-of-type(even) {
        margin-right: 4px;
    }
    .CategoryNavi .CategoryNavi__item:nth-of-type(3n) {
        margin-right: 0;
    }
}
.parts-btn-spMenu {
    position: relative;
}
.parts-btn-spMenu:before {
    content: "";
    display: block;
    padding-top: 130%;
}
.parts-btn-spMenu .parts-btn-spMenu__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.parts-btn-spMenu .parts-btn-spMenu__inner.-open {
    height: 100%;
}
.parts-btn-spMenu .parts-btn-spMenu__inner.-close {
    opacity: 0;
}
.parts-btn-spMenu .parts-btn-spMenu__icon.-wave {
    margin-bottom: 5px;
}
.parts-btn-spMenu .parts-btn-spMenu__icon.-cross {
    margin: 0 auto;
    width: 22px;
}
.parts-btn-spMenu .parts-btn-spMenu__text {
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
    display: block;
    width: 103%;
    text-align: center;
    font-size: 2.7vw;
}

.ListPagenation {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    align-content: center;
    justify-content: space-between;
}
.ListPagenation * {
    box-sizing: border-box;
}
.ListPagenation .ListPagenation__side {
    width: 20%;
}
.ListPagenation .ListPagenation__sideBtn.-next {
    justify-content: flex-end;
}
.ListPagenation .ListPagenation__sideBtn.-prev {
    justify-content: flex-start;
}
.ListPagenation .ListPagenation__pages {
    width: 60%;
}
.ListPagenation .ListPagenation__pageList {
    display: flex;
    justify-content: center;
    align-content: center;
    align-items: center;
    height: 100%;
}
.ListPagenation .ListPagenation__page {
    width: 8vw;
    margin: 0 3px;
}
.ListPagenation .ListPagenation__pageNum {
    position: relative;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
    font-size: 4vw;
    font-weight: 400;
}
@media (min-width: 768px) {
    .ListPagenation .ListPagenation__pageNum {
        transition: opacity 0.3s;
    }
    .ListPagenation .ListPagenation__pageNum:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.ListPagenation .ListPagenation__pageNum:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.ListPagenation .ListPagenation__pageNum span {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.ListPagenation .ListPagenation__pageNum.-current:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    width: 90%;
    height: 1px;
    background: #000;
}
.ListPagenation .ListPagenation__pageNum.-icon {
    opacity: 1 !important;
    cursor: auto;
}
.ListPagenation .ListPagenation__pageNum.-icon span {
    padding-bottom: 0.5em;
}

@media (min-width: 768px) {
    .ListPagenation .parts-btn-01__text {
        font-size: 1.4rem;
        letter-spacing: 0.2em;
        margin: 0 1em;
        padding-top: 0.1em;
    }
    .ListPagenation .ListPagenation__side {
        width: 90px;
    }
    .ListPagenation .ListPagenation__pages {
        width: calc(100% - 180px);
    }
    .ListPagenation .ListPagenation__page {
        width: 14%;
        padding: 0 2%;
        margin: 0 4px;
    }
    .ListPagenation .ListPagenation__pageNum {
        font-size: 2.1rem;
        padding: 8px 0;
    }
}
.DetailPageNav * {
    box-sizing: border-box;
}
.DetailPageNav .DetailPageNav__btnList {
    display: flex;
    justify-content: space-between;
}
.DetailPageNav .DetailPageNav__btnItem.-prev .DetailPageNav__btn {
    justify-content: flex-start;
}
.DetailPageNav .DetailPageNav__btnItem.-next .DetailPageNav__btn {
    justify-content: flex-end;
}

@media (min-width: 768px) {
    .DetailPageNav .DetailPageNav__btn {
        padding: 0 10px;
        height: 40px;
    }
}
.CategoryNav-02 .icon-arrow {
    transform: translate(0, 0) !important;
}
.CategoryNav-02
    .CategoryNav-02__parentItem.-open
    .CategoryNav-02__parentBtn
    .icon-arrow--down {
    transform: translate(0, 0) rotate(180deg) !important;
}
.CategoryNav-02 .CategoryNav-02__parentBtn .parts-btn-01__text {
    width: 20vw;
    text-align: center;
    letter-spacing: 0.2em;
}
.CategoryNav-02 .CategoryNav-02__parentBtn.-current {
    background: #efefef;
}
.CategoryNav-02 .CategoryNav-02__parentBtn .icon-arrow--down {
    transition: transform 0.3s;
    transform-origin: center;
}
.CategoryNav-02 .CategoryNav-02__children {
    display: none;
    width: 90%;
    margin: 0 auto;
}
.CategoryNav-02 .CategoryNav-02__childList {
    margin: 4vw 0;
}
.CategoryNav-02 .CategoryNav-02__childItem {
    position: relative;
    margin: 1vw 0;
}
.CategoryNav-02 .CategoryNav-02__childBtn {
    box-sizing: border-box;
}
.CategoryNav-02 .CategoryNav-02__childBtn.-includeImgIcon {
    padding-right: 10%;
}
.CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__text {
    width: 30vw;
    text-align: center;
    letter-spacing: 0.2em;
}
.CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__imgIcon {
    width: 7vw;
}
.CategoryNav-02 .CategoryNav-02__childBtn.-current {
    background: #f3f3f3;
}

@media (min-width: 768px) {
    .CategoryNav-02 .parts-btn-01__text {
        width: auto !important;
    }
    .CategoryNav-02 .CategoryNav-02__parentlist {
        position: relative;
        display: flex;
        justify-content: center;
    }
    .CategoryNav-02 .CategoryNav-02__parentItem {
        width: 200px;
        margin: 0 35px;
    }
    .CategoryNav-02
        .CategoryNav-02__parentItem:hover
        .CategoryNav-02__parentBtn
        .icon-arrow--down {
        transform: translate(0, 0) rotate(180deg) !important;
    }
    .CategoryNav-02 .CategoryNav-02__children {
        position: absolute;
        left: 50%;
        top: 100%;
        transform: translateX(-50%);
        display: block;
        opacity: 0;
        width: 100%;
        background: #fff;
        overflow: hidden;
        transition: height 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
        padding-top: 50px;
        z-index: 2;
    }
    .CategoryNav-02 .CategoryNav-02__childList {
        display: flex;
        justify-content: center;
        margin: 0;
    }
    .CategoryNav-02 .CategoryNav-02__childItem {
        width: 25%;
        margin: 0;
    }
    .CategoryNav-02 .CategoryNav-02__childItem:before {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        z-index: 10;
        display: block;
        height: 40%;
        width: 1px;
        background: #000;
    }
    .CategoryNav-02 .CategoryNav-02__childItem:last-child:before {
        content: none;
    }
    .CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__imgIcon {
        width: 36px;
    }
}
.ArticleBox {
    display: block;
    overflow: hidden;
}
@media (min-width: 768px) {
    .ArticleBox {
        transition: opacity 0.3s;
    }
    .ArticleBox:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.ArticleBox img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .ArticleBox:hover img {
        transform: scale(1.1);
    }
}
.ArticleBox .ArticleBox__imgArea {
    width: 70%;
    margin: 0 auto 0 0;
    overflow: hidden;
}
.ArticleBox .ArticleBox__img {
    display: block;
    width: 100%;
}
.ArticleBox .ArticleBox__textArea {
    padding: 8vw 10vw;
}
.ArticleBox .ArticleBox__subTitle {
    position: relative;
    display: block;
    color: #707070;
    letter-spacing: 0.2em;
    font-size: 1.8vw;
    padding-bottom: 3vw;
    box-sizing: border-box;
    line-height: 1em;
}
.ArticleBox .ArticleBox__subTitle:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    height: 1px;
    width: 10vw;
    background: #e4e4e4;
}
.ArticleBox .ArticleBox__title {
    font-size: 4vw;
    display: block;
    padding: 3vw 0;
    letter-spacing: 0.3em;
}
.ArticleBox .ArticleBox__read {
    display: block;
    font-size: 3vw;
    padding: 3vw 0 5vw;
    line-height: 2.2em;
    letter-spacing: 0.15em;
}
.ArticleBox .ArticleBox__date {
    font-size: 3vw;
    color: #707070;
}
.ArticleBox.-large .ArticleBox__textArea {
    padding: 8vw 10vw;
}

@media (min-width: 768px) {
    .ArticleBox .ArticleBox__subTitle {
        font-size: 1.1rem;
        padding-bottom: 15px;
    }
    .ArticleBox .ArticleBox__subTitle:after {
        width: 30px;
    }
    .ArticleBox .ArticleBox__title {
        font-size: 1.5rem;
        padding: 10px 0;
        letter-spacing: 0.2em;
    }
    .ArticleBox .ArticleBox__read {
        font-size: 1.3rem;
        padding: 15px 0;
        line-height: 1.9em;
    }
    .ArticleBox .ArticleBox__date {
        font-size: 1rem;
    }
    .ArticleBox .ArticleBox__imgArea {
        width: 100%;
    }
    .ArticleBox .ArticleBox__textArea {
        padding: 20px 10px;
    }
    .ArticleBox.-large {
        display: flex;
        align-items: center;
        align-content: center;
        justify-content: space-between;
    }
    .ArticleBox.-large .ArticleBox__imgArea {
        width: 47%;
        order: 2;
    }
    .ArticleBox.-large .ArticleBox__textArea {
        width: 53%;
        order: 1;
        padding: 0 13% 0 0;
        box-sizing: border-box;
    }
    .ArticleBox.-large .ArticleBox__titleArea {
        display: flex;
        flex-wrap: wrap;
    }
    .ArticleBox.-large .ArticleBox__subTitle {
        order: 2;
        padding-bottom: 25px;
    }
    .ArticleBox.-large .ArticleBox__title {
        order: 1;
        padding: 0;
        margin-bottom: 20px;
        font-size: 2.1rem;
        letter-spacing: 0.3em;
    }
}
.TagList {
    text-align: center;
}
.TagList .TagList__item {
    display: inline-block;
    margin: 3vw 2vw;
    box-sizing: border-box;
}
.TagList .TagList__tag {
    display: block;
    line-height: 1em;
    font-size: 2.4vw;
    border-bottom: 1px solid #000;
    box-sizing: border-box;
}
@media (min-width: 768px) {
    .TagList .TagList__tag {
        transition: opacity 0.3s;
    }
    .TagList .TagList__tag:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.TagList .TagList__tag:before {
    content: "#";
}

@media (min-width: 768px) {
    .TagList .TagList__item {
        margin: 10px 7px;
    }
    .TagList .TagList__tag {
        font-size: 1.4rem;
    }
}
.ColumnTags {
    width: 100%;
}
.ColumnTags .ColumnTags__title {
    letter-spacing: 0.4em;
    display: block;
    font-size: 4vw;
    margin-bottom: 3vw;
}
.ColumnTags .ColumnTags__tagItem {
    display: inline-block;
    margin: 0 2vw 3vw 0;
    box-sizing: border-box;
}
.ColumnTags .ColumnTags__tag {
    display: block;
    line-height: 1em;
    font-size: 2.7vw;
    border-bottom: 1px solid #000;
    box-sizing: border-box;
}
@media (min-width: 768px) {
    .ColumnTags .ColumnTags__tag {
        transition: opacity 0.3s;
    }
    .ColumnTags .ColumnTags__tag:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.ColumnTags .ColumnTags__tag:before {
    content: "#";
}

@media (min-width: 768px) {
    .ColumnTags {
        display: flex;
        justify-content: flex-start;
        align-items: flex-start;
        align-content: flex-start;
    }
    .ColumnTags .ColumnTags__title {
        font-size: 1.4rem;
        margin: 0 16px 0 0;
        line-height: 1em;
    }
    .ColumnTags .ColumnTags__tagList {
        font-size: 0;
    }
    .ColumnTags .ColumnTags__tagItem {
        margin: 0 16px 10px 0;
    }
    .ColumnTags .ColumnTags__tag {
        font-size: 1.2rem;
    }
}
.HeaderBnr {
    width: 100%;
    background: #900000;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 90;
    padding-right: 14vw;
    box-sizing: border-box;
}

.HeaderBnr__inner {
    display: flex;
    justify-content: center;
    align-items: center;
    align-content: center;
    width: 100%;
    box-sizing: border-box;
    height: 10vw;
}

.HeaderBnr__label {
    display: inline-block;
    background: #fff;
    font-size: 3vw;
    color: #707070;
    margin-right: 1em;
    padding: 4px 0px 5px 6px;
    letter-spacing: 0.5em;
    color: #555;
    line-height: 1em;
}

.HeaderBnr__main {
    font-size: 3vw;
    color: #fff;
    padding-bottom: 0.08em;
}

@media (min-width: 768px) {
    .HeaderBnr {
        padding: 0;
    }

    .HeaderBnr__inner {
        height: 40px;
        transition: opacity 0.5s;
    }

    .HeaderBnr__inner:hover {
        opacity: 0.5;
    }

    .HeaderBnr__label {
        font-size: 1.2rem;
        padding: 4px 1px 6px 8px;
    }

    .HeaderBnr__main {
        font-size: 1.2rem;
    }
}
/*------------------------------------------------------------
共通
------------------------------------------------------------*/
html {
    font-size: 1.30208333vw;
}

@media (min-width: 768px) {
    html {
        font-size: 62.5%;
    }
}
body {
    -webkit-text-size-adjust: 100%;
    font-weight: 300;
    font-size: 2rem;
    line-height: 1.6;
    color: #333;
    letter-spacing: 1.5px;
    width: 100%;
}
body.sp {
    height: auto !important;
}
body.scrollOff {
    overflow: hidden;
    position: fixed;
    width: 100%;
    overflow-y: scroll;
}

img {
    vertical-align: bottom;
    border: none;
}

a {
    color: #333;
    text-decoration: none;
}

li {
    list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 300;
}

sup {
    font-size: 50%;
    vertical-align: super;
    letter-spacing: 0;
}

button,
button:hover,
button:active button:focus {
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
}

* {
    -webkit-tap-highlight-color: transparent;
}

@media (min-width: 768px) {
    .hoverAct {
        transition: opacity 0.3s;
    }
    .hoverAct:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}

.hoverAct__img {
    overflow: hidden;
}
.hoverAct__img img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .hoverAct__img:hover img {
        transform: scale(1.1);
    }
}

/*------------------------------------------------------------
ラッパー
------------------------------------------------------------*/
.wrapper {
    width: 100%;
    overflow: hidden;
}

::selection {
    background: #999;
    color: #fff;
}

::-moz-selection {
    background: #999;
    color: #fff;
}

/*-----------------------------------------------------
共通
-----------------------------------------------------*/
.sns-wrap {
    margin: 0 auto 16vw;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.sns-wrap img {
    width: 70%;
}

.sns-list {
    width: 6%;
}
.sns-list a {
    display: block;
    position: relative;
}
@media (min-width: 768px) {
    .sns-list a {
        transition: opacity 0.3s;
    }
    .sns-list a:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.sns-list a:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.sns-list img {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    height: 100%;
}

/*-------PC小-------*/
@media (min-width: 768px) {
    .sns-wrap {
        width: 250px;
        margin: 0 auto;
    }
    .sns-wrap img {
        width: 70%;
    }

    .sns-list {
        width: 20px;
    }
}
/*------------------------------------------------------------
header
------------------------------------------------------------*/
.common-header {
    width: 100%;
    padding: 0;
    margin-bottom: 24vw;
}
.common-header__logo_sp {
    width: 17.3333333333vw;
    margin: 8vw auto 0 5vw;
}
.common-header__logo_sp a {
    display: block;
}
.common-header__logo_sp img {
    display: block;
    width: 100%;
}
.common-header__nav-btn {
    position: fixed;
    right: 5vw;
    top: 5vw;
    z-index: 9000;
    width: 9vw;
    background: none !important;
}

@media (min-width: 768px) {
    .common-header {
        margin-bottom: 0;
    }
    .common-header__logo_sp {
        display: none !important;
    }
    .common-header__nav-btn {
        display: none !important;
    }
}
/*-----------------------------------------------------
NAVI SP
-----------------------------------------------------*/
.common-nav-sp {
    display: none;
    opacity: 0;
    background: #fff;
    z-index: 1000;
    position: absolute;
    overflow: auto;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 18vw;
}
.common-nav-sp img {
    width: 100%;
}
.common-nav-sp__header {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 18vw;
    z-index: 20;
    background: #fff;
    box-sizing: border-box;
    opacity: 0;
}
.common-nav-sp__headerBtn {
    position: absolute;
    width: 10vw;
    height: 10vw;
    top: 50%;
    transform: translateY(-50%);
    right: 5vw;
}
.common-nav-sp__ttl {
    width: 17.3333333333vw;
    margin: 8vw auto 0 5vw;
}
.common-nav-sp__ttl img {
    display: block;
}

@media (min-width: 768px) {
    .common-nav-sp {
        display: none !important;
    }
}
.nav-list-sp__support,
.nav-list-sp__contents,
.nav-list-sp__product {
    font-size: 2.8rem;
}
.nav-list-sp__support span,
.nav-list-sp__contents span,
.nav-list-sp__product span {
    padding-left: 4vw;
    font-size: 1.8rem;
    color: #999999;
}
.nav-list-sp__support .nav__list-sp__ttl,
.nav-list-sp__contents .nav__list-sp__ttl,
.nav-list-sp__product .nav__list-sp__ttl {
    font-size: 4vw;
    background: #ebebeb;
    padding: 3vw 5vw;
}

.nav-list-sp__block__big__ttl {
    position: relative;
    padding: 5.3333333333vw 8vw;
    background: #fff;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    border-bottom: 1px solid #ebebeb;
}
.nav-list-sp__block__big__ttl .icon-plusMinus {
    width: 15px;
    height: 15px;
    position: absolute;
    right: 8vw;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
}
.nav-list-sp__block__big__ttl img {
    width: 5vw;
    margin-right: 1.5vw;
    margin-bottom: 0.5vw;
}
.nav-list-sp__block__big__content {
    display: none;
    border-bottom: 1px solid #ebebeb;
}

.nav-list-sp__block__middle__ttl {
    position: relative;
    padding: 3vw 8vw 4vw;
    padding-left: 10vw;
    background: #fff;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    line-height: 1.2;
}
.nav-list-sp__block__middle__ttl small {
    font-size: 1.8rem;
    color: #999999;
}
.nav-list-sp__block__middle__ttl .icon-arrow {
    width: 8px;
    height: 8px;
    position: absolute;
    right: 13.3333333333vw;
    top: 50%;
    transform: translateY(-50%);
    padding: 0;
}
.nav-list-sp__block__middle__ttl a {
    text-decoration: none;
}
.nav-list-sp__block__middle__ttl img {
    width: 10vw;
    margin-right: 2.5vw;
    margin-bottom: 0.5vw;
}
.nav-list-sp__block__middle__list {
    background: #ebebeb;
    border-bottom: 1px solid #fff;
}
.nav-list-sp__block__middle__list__link {
    text-decoration: none;
    display: block;
    padding: 5vw 0vw 5vw 14vw;
    position: relative;
    width: 100%;
    box-sizing: border-box;
    font-size: 2.5rem;
}
.nav-list-sp__block__middle__content {
    display: none;
}

.nav-list-sp__contents__big {
    padding: 0;
    display: flex;
    align-items: stretch;
    justify-content: space-around;
    flex-wrap: wrap;
}
.nav-list-sp__contents__big h3 {
    background: #fff;
    width: 50%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    border-right: 1px solid #ebebeb;
}
.nav-list-sp__contents__big h3:nth-last-of-type(1) {
    border-right: none;
    border-top: 1px solid #ebebeb;
}
.nav-list-sp__contents__big h3:nth-last-of-type(2) {
    border-top: 1px solid #ebebeb;
}
.nav-list-sp__contents__big h3:nth-last-of-type(3) {
    border-top: 1px solid #ebebeb;
}

.nav-list-sp__contents__big h3:nth-last-of-type(4) {
    border-top: 1px solid #ebebeb;
}
.nav-list-sp__contents__big h3 span {
    padding-left: 0;
    display: block;
}
.nav-list-sp__contents__link {
    display: block;
    position: relative;
    top: 1px;
    padding: 3vw 3.3333333333vw;
    text-decoration: none;
    width: 100%;
    text-align: center;
    line-height: 1.5;
}
/*----- onlineshop -----*/
.nav-footer {
    padding: 13.3333333333vw 0;
    background: #f5f5f5;
}
.nav-footer__ttl {
    text-align: center;
    margin: 0 auto 6.6666666667vw;
    font-size: 3.8vw;
    font-weight: 400;
}
.nav-footer__list__shop {
    background: #fff;
    width: 77.7333333333vw;
    margin: 0 auto 3.7333333333vw;
}
.nav-footer__list__shop .nav-footer__list__shop-icon-andhabit,
.nav-footer__list__shop .nav-footer__list__shop-icon-amazon,
.nav-footer__list__shop .nav-footer__list__shop-icon-rakuten {
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    align-items: center;
}
.nav-footer__list__shop-icon-rakuten {
    background: #c6212c;
    width: 8vw;
    height: 8vw;
    padding: 2vw;
}
.nav-footer__list__shop-icon-amazon {
    background: #e8bf42;
    width: 8vw;
    height: 8vw;
    padding: 2vw;
}
.nav-footer__list__shop-icon-andhabit {
    background: #000;
    width: 8vw;
    height: 8vw;
    padding: 2vw;
}
.nav-footer + .sns-wrap {
    background: #f5f5f5;
    margin-bottom: 0;
    padding: 0 15% 10.6666666667vw 15%;
}
.nav-footer__list__shop .parts-btn-cv {
    justify-content: left;
}
.nav-footer__list__shop .parts-btn-cv__text {
    margin-left: 80px;
}

/*-----------------------------------------------------
NAVI PC
-----------------------------------------------------*/
@media (max-width: 767px) {
    .common-nav-pc {
        display: none !important;
    }
}
@media (min-width: 768px) {
    .common-nav-pc .nav-pc__link {
        transition: opacity 0.3s;
    }
    .common-nav-pc .nav-pc__link:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
@media (min-width: 768px) {
    .common-nav-pc {
        display: block;
        width: 100%;
        height: 62px;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10;
    }
    .common-nav-pc img {
        width: 100%;
    }
    .common-nav-pc.-fixed .common-nav-pc__ttl {
        display: block;
    }
    .common-nav-pc__inner {
        position: absolute;
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        box-sizing: border-box;
        padding-left: 5%;
        padding-right: 0;
        height: 100%;
        margin: 0;
    }
    .common-nav-pc__ttl {
        max-width: 80px;
        width: 13%;
        height: 100%;
    }
    .common-nav-pc__ttl a {
        display: flex;
        height: 100%;
        width: 100%;
        align-items: center;
    }
    .common-nav-pc__ttl img {
        vertical-align: middle;
    }
    .common-nav-pc__menuWrapper {
        position: relative;
        width: 100%;
    }
    .common-nav-pc__menu {
        display: none;
        opacity: 0;
        width: 100%;
        position: absolute;
        left: 0;
        top: 62px;
    }
    .common-nav-pc__right {
        position: absolute;
        display: flex;
        width: auto;
        height: 100%;
        top: 0;
        right: 0;
    }
    .common-nav-pc__white-block {
        content: "";
        display: block;
        width: 10vw;
        min-width: 60px;
        max-width: 100px;
    }

    .nav-pc {
        height: 100%;
        max-width: 880px;
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-right: 10px;
    }
    .nav-pc__list {
        box-sizing: border-box;
        height: 100%;
        font-size: 1.3rem;
        font-weight: 500;
    }
    .nav-pc__link {
        box-sizing: border-box;
        display: flex;
        width: 100%;
        height: 100%;
        justify-content: center;
        align-items: center;
        padding: 0 15px;
        transition: opacity 0.3s;
    }
    .nav-pc__link span {
        position: relative;
        padding: 7px 0 5px;
        letter-spacing: 0.2em;
    }
    .nav-pc__link span:before,
    .nav-pc__link span:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        width: 0;
        height: 1px;
        background: #000;
        transition: width 0.5s;
    }
    .nav-pc__link span:after {
        left: 0%;
    }
    .nav-pc__link:hover {
        cursor: pointer;
        opacity: 0.8;
    }
    .nav-pc__link:hover span:after {
        width: 100%;
    }
}
/*---------------------------------------------
MEGA MENU PRODUCT
-----------------------------------------------*/
.mega-menu {
    background: #fcfcfc;
}
.mega-menu__inner {
    max-width: 1400px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 50px 0;
}
.mega-menu__block {
    width: 45%;
}
.mega-menu__block__ttl {
    display: flex;
    align-items: center;
    justify-content: start;
    margin-bottom: 30px;
}
.mega-menu__block__ttl span {
    color: #999;
    font-size: 1.1rem;
    font-weight: normal;
    margin-left: 12px;
}
.mega-menu__block__ttl img {
    width: 20px;
    margin-right: 20px;
}
.mega-menu__block__ttl.face__mega {
    margin-left: 40px;
}
.mega-menu__middle__wrap {
    display: flex;
    justify-content: space-between;
}
.mega-menu__middle__block {
    width: calc(70% - 10px);
    margin-left: 0;
    margin-bottom: 20px;
}
.mega-menu__middle__block__ttl {
    font-size: 1.2rem;
    margin-bottom: 20px;
    border-bottom: 1px solid #9d9d9d;
    padding-bottom: 20px;
}
.mega-menu__middle__inner {
    margin-bottom: 40px;
}
.mega-menu__middle__list {
    font-size: 1.1rem;
    margin-bottom: 30px;
}
.mega-menu__middle__list a {
    display: flex;
    align-content: center;
    align-items: center;
}
@media (min-width: 768px) {
    .mega-menu__middle__list a {
        transition: opacity 0.3s;
    }
    .mega-menu__middle__list a:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.mega-menu__middle__list a img {
    width: 42px;
}
.mega-menu__middle__list a strong {
    display: flex;
    flex-wrap: wrap;
    font-weight: normal;
    width: 100%;
    margin-left: 10px;
    font-size: 1.5rem;
}
.mega-menu__middle__list a strong span {
    display: block;
    width: 100%;
    font-size: 1.1rem;
    color: #999;
}
.Arrow-Right {
    border-top: solid 2px #707070;
    border-right: solid 2px #707070;
    width: 12px;
    height: 10px;
    transform: rotate(45deg);
}

@media (min-width: 768px) {
    .mega-menu__onlineShop {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
    .mega-menu__onlineShop__ttl {
        text-align: left;
        margin: 0 auto;
        width: 20%;
        font-size: 1.4rem;
        display: flex;
        align-items: center;
    }

    .nav-footer__list {
        width: 80%;
        display: flex;
        align-items: center;
        font-size: 1.2rem;
        flex-wrap: wrap;
    }
    .nav-footer__list__shop {
        background: #fff;
        width: 30%;
        margin: 0px 15px 30px;
        border: 1px solid #e7e7e7;
    }
    .nav-footer__list__shop__link .parts-btn-cv__text {
        font-size: 1.2rem;
    }
}
@media (min-width: 768px) and (min-width: 1200px) {
    .nav-footer__list__shop__link br {
        display: none;
    }
}
@media (min-width: 768px) {
    .nav-footer__list__shop-icon-rakuten {
        background: #2e2e2e;
        width: 40px;
        height: 40px;
        padding: 10px;
    }
    .nav-footer__list__shop-icon-amazon {
        background: #e8bf42;
        width: 40px;
        height: 40px;
        box-sizing: border-box;
        padding: 10px;
    }
    .nav-footer__list__shop-icon-andhabit {
        background: #000;
        width: 40px;
        height: 40px;
        box-sizing: border-box;
        padding: 10px;
    }
}
/*------------------------------------------------------------
footer
------------------------------------------------------------*/
.footer {
    background: #f5f5f5;
    color: #333;
    position: relative;
    padding: 10.6666666667vw 0;
    margin-top: 29.3333333333vw;
}
.footer img {
    width: 100%;
}
.footer__inner {
    width: 78.6666666667vw;
    margin: 0 auto;
    position: relative;
}

.footer__ttl {
    width: 17.3333333333vw;
    margin: 0 auto 11.3333333333vw;
}
.footer__lang {
    position: absolute;
    top: 0;
    right: 0;
    color: #c8c8c8;
    width: 20vw;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.footer__lang__link {
    display: block;
    width: calc(50% - 1px);
    padding: 1.5vw;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-align: center;
    line-height: 1em;
    font-weight: 400;
}
.footer__langLine {
    display: block;
    height: 10px;
    width: 1px;
    background: #000;
}
.footer__menu-wrap {
    width: 100%;
    margin: 0 auto 10vw;
}
.footer__menu__block {
    margin: 0 0 8vw;
    width: 100%;
}
.footer__menu__block .footer__menu__block__ttl {
    font-size: 18px;
    font-weight: 300;
    margin: 0 0 5.3333333333vw;
    letter-spacing: 0.15em;
}
.footer__menu-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: 12px;
    margin: 0 -5px;
}
.footer__menu-list__list {
    width: 50%;
    margin: 0 0 2.6666666667vw 0;
}
.footer__menu-list__list span {
    display: inline-block;
    position: relative;
}
.footer__menu-list__list span:before {
    content: "";
    display: inline-block;
    background: url(../img/support/ico_window.svg) no-repeat;
    width: 7px;
    height: 7px;
    position: absolute;
    right: -11px;
    top: 6px;
    background-size: contain;
}
.footer__menu-list__list a {
    padding: 0 5px;
}
@media (min-width: 768px) {
    .footer__menu-list__list a {
        -webkit-transition: opacity 0.3s;
        transition: opacity 0.3s;
    }
    .footer__menu-list__list a:hover {
        cursor: pointer;
        opacity: 0.8;
    }
    .footer__menu-list__list span:before {
        content: "";
        display: inline-block;
        background: url(../img/support/ico_window.svg) no-repeat;
        width: 7px;
        height: 7px;
        position: absolute;
        right: -15px;
        top: 4px;
        background-size: contain;
    }
}
.footer__copylight {
    text-align: center;
}

/*-------PC小-------*/
@media (min-width: 768px) {
    .footer {
        padding: 80px 0 50px;
        margin-top: 150px;
    }
    .footer img {
        width: 100%;
        display: block;
    }
    .footer__inner {
        width: 80%;
        max-width: 1000px;
    }
    .footer__head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        margin-bottom: 100px;
    }
    .footer__ttl {
        width: 130px;
        margin: 0;
    }
    .footer__lang {
        position: static;
        width: 100px;
    }
    .footer__lang__link {
        padding: 10px 0;
        font-size: 1.2rem;
    }
}
@media (min-width: 768px) and (min-width: 768px) {
    .footer__lang__link {
        -webkit-transition: opacity 0.3s;
        transition: opacity 0.3s;
    }
    .footer__lang__link:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
@media (min-width: 768px) {
    .footer__menu-wrap {
        width: 100%;
        max-width: 1000px;
        margin: 0 auto 0px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
}
@media (min-width: 768px) {
    .footer__menu__block {
        margin: 0 0 60px;
    }
    .footer__menu__block .footer__menu__block__ttl {
        margin: 0 0 40px;
        font-size: 2rem;
    }
}
@media (max-width: 767px) {
    .footer__menu-list {
        display: flexbox;
    }
    .footer__menu-list__list.num01 {
        order: 1;
    }
    .footer__menu-list__list.num02 {
        order: 2;
    }
    .footer__menu-list__list.num03 {
        order: 4;
    }
    .footer__menu-list__list.num04 {
        order: 3;
    }
    .footer__menu-list__list.num05 {
        order: 4;
    }
    .footer__menu-list__list.num06 {
        order: 6;
    }
    .footer__menu-list__list.num07 {
        order: 5;
    }
    .footer__menu-list__list.num08 {
        order: 8;
    }
}
@media (min-width: 768px) {
    .footer__menu-list {
        font-size: 14px;
        justify-content: end;
    }
    .footer__menu-list__list {
        width: 33.333333%;
        margin: 0 0 15px;
    }
    .footer__menu-list__list .sp {
        display: none;
    }
}
@media (min-width: 768px) {
    .footer__copylight {
        text-align: center;
        font-size: 1rem;
    }
}
/*------------------------------------------------------------
ユニーク要素まとめ
------------------------------------------------------------*/
/*------------------------------------------------------------
共通要素
------------------------------------------------------------*/
/*--------検索エリア---------*/
.search-box__inner {
    width: 89.3333333333vw;
    margin: 0 auto 12.6666666667vw;
}
.search-box__header {
    margin-bottom: 17.3333333333vw;
}
.search-box__ttl {
    text-align: center;
    font-size: 2.6rem;
    letter-spacing: 3px;
    font-weight: 500;
    margin-bottom: 2vw;
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .search-box__ttl {
        font-size: 3rem;
    }
}
.search-box__subTtl {
    font-size: 2vw;
    text-align: center;
}
.search-box__select {
    margin-top: 12vw;
}
.search-box__sku {
    text-align: center;
    margin-bottom: 10.6666666667vw;
}
.search-box__sku__ttl {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    margin-bottom: 10.6666666667vw;
}
@media (min-width: 768px) {
    .search-box__sku__ttl {
        font-size: 3rem;
    }
}
.search-box__sku__ul {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
}
.search-box__sku__list {
    position: relative;
    width: 39.2vw;
    margin-right: 10.6666666667vw;
    margin-bottom: 10.6666666667vw;
}
.search-box__sku__list a {
    display: block;
    text-align: left;
}
@media (min-width: 768px) {
    .search-box__sku__list a {
        transition: opacity 0.3s;
    }
    .search-box__sku__list a:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.search-box__sku__list a figure {
    overflow: hidden;
}
.search-box__sku__list a figure img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .search-box__sku__list a figure:hover img {
        transform: scale(1.1);
    }
}
.search-box__sku__list:nth-of-type(2n) {
    margin-right: 0;
}
.search-box__sku__list img {
    width: 100%;
}
.search-box__sku__list figure {
    position: relative;
}
.search-box__sku__list figcaption {
    margin-top: 4.5333333333vw;
    margin-bottom: 5px;
    line-height: 1.5;
    font-size: 13px;
}
.search-box__sku__list figcaption .newIcon {
    display: inline-block;
    background: #707070;
    color: #fff;
    text-align: center;
    border-radius: 2px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: 10px;
    transform: scale(0.9);
    line-height: 1;
    padding: 5px 4px 3px 5px;
    letter-spacing: 1px;
}
.search-box__categoryNav {
    width: 80%;
    margin: 0 auto;
}

/*-------検索エリアPC-------*/
@media (min-width: 768px) {
    .search-box__inner {
        width: 90%;
        max-width: 1000px;
        margin: 0 auto;
    }
    .search-box__header {
        margin-bottom: 130px;
    }
    .search-box__ttl {
        margin-bottom: 10px;
    }
    .search-box__subTtl {
        font-size: 1.2rem;
    }
    .search-box__select {
        width: 100%;
        margin: 40px auto 0;
    }
    .search-box__sku {
        text-align: center;
        margin-bottom: 90px;
    }
    .search-box__sku__ttl {
        margin-bottom: 80px;
    }
    .search-box__sku__list {
        width: 30%;
        margin-right: 5%;
        margin-bottom: 65px;
    }
    .search-box__sku__list:nth-of-type(2n) {
        margin-right: 5%;
    }
    .search-box__sku__list:nth-of-type(3n) {
        margin-right: 0;
    }
    .search-box__sku__list img {
        width: 100%;
    }
    .search-box__sku__list figcaption {
        margin-top: 30px;
        font-size: 15px;
        line-height: 1.7;
        margin-bottom: 10px;
    }
    .search-box__categoryNav {
        width: 100%;
        margin-bottom: 240px;
    }
}
/*------------------------------------------------------------
パンクズ
------------------------------------------------------------*/
.pankuzu {
    padding: 0;
    display: none;
    justify-content: start;
    align-items: center;
    font-size: 1rem;
    width: 78.6666666667vw;
    margin: 0 auto 5.3333333333vw;
}
.pankuzu__list {
    display: flex;
    justify-content: start;
    align-items: center;
}
@media (min-width: 768px) {
    .pankuzu__list a {
        transition: opacity 0.3s;
    }
    .pankuzu__list a:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.pankuzu__list:after {
    content: "";
    width: 2vw;
    height: 1px;
    background: #666;
    display: block;
    margin: 0 1.3333333333vw 0 0;
}
.pankuzu__list:nth-last-of-type(1):after {
    display: none;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .pankuzu {
        width: 90vw;
        max-width: 1000px;
        margin: 0 auto 5vw;
        padding: 125px 0 0 0;
        display: flex;
        justify-content: start;
        align-items: center;
        font-size: 1.2rem;
    }
    .pankuzu__list {
        display: flex;
        justify-content: start;
        align-items: center;
    }
    .pankuzu__list:after {
        content: "";
        width: 15px;
        height: 1px;
        background: #666;
        display: block;
        margin: 0 10px;
    }
    .pankuzu__list:nth-last-of-type(1):after {
        display: none;
    }
}
/*------------------------------------------------------------
SUPPORT 一年保証
------------------------------------------------------------*/
.support__warranty {
    width: 100%;
    margin: 0 auto;
    background: url(/img/support/bg-hosho-sp.jpg) top center no-repeat;
    background-size: cover;
    padding: 17.3333333333vw 8vw;
    box-sizing: border-box;
    margin: 65px 0 0;
}
.support__warranty__ttl {
    text-align: center;
    font-size: 4rem;
    margin: 0 auto 5.3333333333vw;
}
.support__warranty__icon {
    display: block;
    margin: 0 auto 5.3333333333vw;
}
.support__warranty__txt {
    font-size: 2.4rem;
    line-height: 2;
    margin: 0 auto 8vw;
}
.support__warranty .small {
    font-size: 1.8rem;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .support__warranty {
        width: 100%;
        background: url(/img/support/bg-hosho-pc.jpg) top center no-repeat;
        margin: 0 auto 90px;
        padding: 130px 0;
        margin: 145px 0 0;
    }
    .support__warranty .sp {
        display: none;
    }
    .support__warranty__inner {
        max-width: 900px;
        width: 90%;
        margin: 0 auto;
    }
    .support__warranty__ttl {
        text-align: center;
        font-size: 2rem;
        font-weight: 300;
        margin: 0 auto 40px;
    }
    .support__warranty__txt {
        font-size: 1.8rem;
        line-height: 2;
        margin: 0 auto 40px;
        text-align: center;
    }
    .support__warranty__txt.small {
        font-size: 1.1rem;
        text-align: left;
    }
}
/*------------------------------------------------------------
類似品・模倣品
------------------------------------------------------------*/
.notice-copy {
    background: #f5f5f5;
    width: 89.3333333333vw;
    margin: 0 auto;
    padding: 10.6666666667vw 5.3333333333vw;
    box-sizing: border-box;
}
.notice-copy__ttl {
    margin-bottom: 10.6666666667vw;
    text-align: center;
    font-size: 3.2rem;
}
.notice-copy__txt {
    font-size: 2.6rem;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .notice-copy {
        width: 90%;
        max-width: 800px;
        margin: 0 auto;
        padding: 30px 40px;
    }
    .notice-copy__ttl {
        margin-bottom: 30px;
        text-align: center;
        font-size: 1.4rem;
    }
    .notice-copy__txt {
        font-size: 1.2rem;
    }
}

/*------------------------------------------------------------
製品に関するお問合わせ
------------------------------------------------------------*/
.product-contact {
    font-family:
        "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium",
        "游ゴシック", "Yu Gothic", sans-serif;
}
.product-contact__inner {
    width: 89.3333333333vw;
    padding: calc(55 / 415 * 100vw) 0 0;
    margin: 0 auto;
    box-sizing: border-box;
}
@media (min-width: 768px) {
    .product-contact__inner {
        width: 90%;
        max-width: 800px;
        margin: 0 auto;
        padding: 120px 0 0;
    }
}
.product-contact__ttl {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 30px;
}
@media (min-width: 768px) {
    .product-contact__ttl {
        margin-bottom: 50px;
    }
}
.product-contact__subTtl {
    font-size: 15px;
    font-weight: bold;
    position: relative;
    padding-left: 20px;
    margin-bottom: 15px;
    padding-bottom: 15px;
    border-bottom: 1px solid #707070;
}
@media (min-width: 768px) {
    .product-contact__subTtl {
        margin-bottom: 10px;
    }
}
.product-contact__subTtl:before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    background: #333333;
    position: absolute;
    top: 6px;
    left: 0;
    margin: auto;
}
.product-contact__flex {
    margin-bottom: 30px;
}
@media (min-width: 768px) {
    .product-contact__flex {
        display: flex;
        justify-content: space-between;
        margin: 0 -20px;
    }
}
.product-contact__flexAttention {
    font-size: 10px;
    color: #5b5b5b;
}
@media (min-width: 768px) {
    .product-contact__box {
        width: 50%;
        max-width: 50%;
        padding: 0 20px;
    }
}
.product-contact__box__inner {
    padding: 24px;
    font-size: 13px;
    border: 1px solid #707070;
    height: 100%;
}
@media (min-width: 910px) {
    .product-contact__box__inner {
        padding: 24px 21px;
        max-height: 160px;
    }
}

.product-contact__box:not(:last-of-type) {
    margin-bottom: 30px;
}
@media (min-width: 768px) {
    .product-contact__box:not(:last-of-type) {
        margin-bottom: 0px;
    }
}
.product-contact__flexTtl {
    font-size: 13px;
    font-weight: bold;
    margin: 0 0 5px -15px;
}
.product-contact__btn {
    border: 1px solid #707070;
    border-radius: 100px;
    text-align: center;
    display: block;
    padding: 15px;
}
.product-contact__flexLink {
    position: relative;
    display: inline-block;
    padding-right: 12px;
    font-size: 14px;
}
.product-contact__flexLink--window:before {
    content: "";
    display: inline-block;
    background: url(../img/support/ico_window.svg) no-repeat;
    width: 10px;
    height: 10px;
    position: absolute;
    right: -5px;
    top: 5px;
    background-size: contain;
}
.product-contact__Link {
    position: relative;
    display: inline-block;
    padding-right: 12px;
    line-height: 1;
}
@media (min-width: 768px) {
    .product-contact__Link {
        line-height: 0.5;
        margin-top: -10px;
    }
}
.product-contact__Link:before {
    content: "";
    display: inline-block;
    background: url(../img/support/ico_window.svg) no-repeat;
    width: 7px;
    height: 7px;
    position: absolute;
    right: 0;
    top: 3px;
    background-size: contain;
}
.product-contact__Link a {
    text-decoration: underline;
    font-size: 13px;
}

/* 220610 まっすー追記分css */
.CategoryNav-02 .icon-arrow {
    transform: translate(0, 0) !important;
}

.CategoryNav-02
    .CategoryNav-02__parentItem.-open
    .CategoryNav-02__parentBtn
    .icon-arrow--down {
    transform: translate(0, 0) rotate(180deg) !important;
}

.CategoryNav-02 .CategoryNav-02__parentBtn .parts-btn-01__text {
    width: 20vw;
    text-align: center;
    letter-spacing: 0.2em;
}

.CategoryNav-02 .CategoryNav-02__parentBtn.-current {
    background: #efefef;
}

.CategoryNav-02 .CategoryNav-02__parentBtn .icon-arrow--down {
    transition: transform 0.3s;
    transform-origin: center;
}

.CategoryNav-02 .CategoryNav-02__children {
    display: none;
    width: 90%;
    margin: 0 auto;
}

.CategoryNav-02 .CategoryNav-02__childList {
    margin: 4vw 0;
}

.CategoryNav-02 .CategoryNav-02__childItem {
    position: relative;
    margin: 1vw 0;
}

.CategoryNav-02 .CategoryNav-02__childBtn {
    box-sizing: border-box;
}

.CategoryNav-02 .CategoryNav-02__childBtn.-includeImgIcon {
    padding-right: 10%;
}

.CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__text {
    width: 30vw;
    text-align: center;
    letter-spacing: 0.2em;
}

.CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__imgIcon {
    width: 7vw;
}

.CategoryNav-02 .CategoryNav-02__childBtn.-current {
    background: #f3f3f3;
}

@media (min-width: 768px) {
    .CategoryNav-02 .parts-btn-01__text {
        width: auto !important;
    }

    .CategoryNav-02 .CategoryNav-02__parentlist {
        position: relative;
        display: flex;
        justify-content: center;
    }

    .CategoryNav-02 .CategoryNav-02__parentItem {
        width: 200px;
        margin: 0 35px;
    }

    .CategoryNav-02
        .CategoryNav-02__parentItem:hover
        .CategoryNav-02__parentBtn
        .icon-arrow--down {
        transform: translate(0, 0) rotate(180deg) !important;
    }

    .CategoryNav-02 .CategoryNav-02__children {
        position: absolute;
        left: 50%;
        top: 100%;
        transform: translateX(-50%);
        display: block;
        opacity: 0;
        width: 100%;
        background: #fff;
        overflow: hidden;
        transition: height 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
        padding-top: 50px;
    }

    .CategoryNav-02 .CategoryNav-02__childList {
        display: flex;
        justify-content: center;
        margin: 0;
    }

    .CategoryNav-02 .CategoryNav-02__childItem {
        width: 25%;
        margin: 0;
    }

    .CategoryNav-02 .CategoryNav-02__childItem:before {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        z-index: 10;
        display: block;
        height: 40%;
        width: 1px;
        background: #000;
    }

    .CategoryNav-02 .CategoryNav-02__childItem:last-child:before {
        content: none;
    }

    .CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__imgIcon {
        width: 36px;
    }
}
.app-menu-pc__panel--product .mega-menu__inner {
    justify-content: center;
}

.CategoryNav-02 {
    width: 100%;
    margin: 0 auto;
}

.CategoryNav-02 .parts-btn-01 {
    justify-content: space-between;
    height: 13vw;
}

.CategoryNav-02 .icon-arrow {
    transform: translate(0, 0) !important;
}

.CategoryNav-02
    .CategoryNav-02__parentItem.-open
    .CategoryNav-02__parentBtn
    .icon-arrow--down {
    transform: translate(0, 0) rotate(180deg) !important;
}

.CategoryNav-02 .CategoryNav-02__parentBtn .parts-btn-01__text {
    width: inherit;
    text-align: left;
    letter-spacing: 0.2em;
    font-size: 14px;
}

.CategoryNav-02 .CategoryNav-02__parentBtn.-current {
    background: #efefef;
}

.CategoryNav-02 .CategoryNav-02__parentBtn .icon-arrow--down {
    transition: transform 0.3s;
    transform-origin: center;
}

.CategoryNav-02 .CategoryNav-02__children {
    display: none;
    margin: 0 auto;
}

.CategoryNav-02 .parts-btn-01 .parts-btn-01__icon {
    height: auto;
}

.CategoryNav-02 .CategoryNav-02__childList {
    margin: 4vw 0 0;
    border-bottom: 1px solid #000;
    padding-bottom: 4vw;
}

.CategoryNav-02 .CategoryNav-02__childItem {
    position: relative;
    margin: 1vw 0;
}

/* 5/31時点でコメントアウト（のちに取る） */
.CategoryNav-02 .CategoryNav-02__childItem.hairironpre {
    /*display: none;*/
}

/* 5/31時点でコメントアウト（のちに取る） */
.CategoryNav-02 .CategoryNav-02__childBtn {
    /*box-sizing: border-box;*/
}

.CategoryNav-02 .CategoryNav-02__childBtn.-includeImgIcon {
    padding-right: 10%;
}

.CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__text {
    width: inherit;
    text-align: left;
    letter-spacing: 0.2em;
    font-size: 14px;
}

.CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__imgIcon {
    width: 7vw;
}

.CategoryNav-02 .CategoryNav-02__childBtn.-current {
    background: #f3f3f3;
}

.CategoryNav-02__parentItem--allBtn {
    border-bottom: 1px solid #000;
}

.CategoryNav-02__parentItem--allBtn .parts-btn-01__imgIcon {
    display: none;
}

@media (min-width: 768px) {
    .CategoryNav-02 .parts-btn-01 {
        height: inherit;
        padding: 20px 30px 20px 0;
        justify-content: center;
    }

    .CategoryNav-02 .parts-btn-01__text {
        width: auto !important;
    }

    .CategoryNav-02 .CategoryNav-02__parentlist {
        position: relative;
        display: flex;
        justify-content: center;
        align-items: center;
        margin: 0 -2.734375vw;
        width: 100%;
    }

    .CategoryNav-02 .CategoryNav-02__parentItem {
        width: 200px;
        margin: 0 35px;
        margin: 0 2.734375vw;
        /* width: 15.625vw;
    max-width: 200px; */
        width: 16.625vw;
        max-width: 200px;
        white-space: nowrap;
    }
    .CategoryNav-02 .CategoryNav-02__parentItem:nth-child(2) {
        width: 200px;
        max-width: 200px;
        margin-left: -1.3vw;
    }
    .CategoryNav-02 .CategoryNav-02__parentItem:nth-child(3) {
        width: 250px;
        max-width: 270px;
    }
    .CategoryNav-02 .CategoryNav-02__parentItem:nth-child(4) {
        width: 230px;
        max-width: 250px;
        padding-right: 20px;
    }

    .CategoryNav-02
        .CategoryNav-02__parentItem:hover
        .CategoryNav-02__parentBtn
        .icon-arrow--down {
        transform: translate(0, 0) rotate(180deg) !important;
    }

    .CategoryNav-02 .CategoryNav-02__children {
        position: absolute;
        left: 50%;
        top: 69px;
        transform: translateX(-50%);
        display: block;
        opacity: 0;
        width: 100%;
        /* background: #fff; */
        overflow: hidden;
        transition: height 0.5s cubic-bezier(0.17, 0.67, 0.83, 0.67);
        padding-top: 44px;
    }

    .CategoryNav-02 .CategoryNav-02__childList {
        display: flex;
        justify-content: left;
        margin: 0;
        border-bottom: none;
        flex-wrap: wrap;
    }

    .CategoryNav-02 .CategoryNav-02__childItem {
        width: 33%;
        margin: 0;
    }

    .CategoryNav-02 .CategoryNav-02__childItem:before {
        content: "";
        position: absolute;
        top: 50%;
        right: 0;
        transform: translateY(-50%);
        z-index: 10;
        display: block;
        height: 40%;
        width: 1px;
        background: #000;
    }

    .CategoryNav-02 .CategoryNav-02__childItem:last-child:before {
        content: none;
    }

    .CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__imgIcon {
        width: 36px;
    }

    .CategoryNav-02 .CategoryNav-02__parentItem--allBtn {
        border-bottom: none;
        width: auto;
    }

    .CategoryNav-02 .CategoryNav-02__parentItem--allBtn .parts-btn-01__imgIcon {
        display: block;
        width: 3.59375vw;
        max-width: 46px;
    }

    .CategoryNav-02 .CategoryNav-02__parentItem--allBtn .icon-arrow {
        display: none;
    }
}
@media (min-width: 1280px) {
    .CategoryNav-02 .CategoryNav-02__parentlist {
        margin: 0 -35px;
    }

    .CategoryNav-02 .CategoryNav-02__parentItem {
        margin: 0 35px;
    }

    .CategoryNav-02 .CategoryNav-02__childItem {
        width: inherit;
    }

    .CategoryNav-02 .CategoryNav-02__childBtn.-includeImgIcon {
        padding-right: 32px;
        padding-left: 15px;
    }

    .CategoryNav-02 .CategoryNav-02__childBtn .parts-btn-01__text {
        white-space: nowrap;
        padding-left: 0;
    }
}
/* 0527追加 */
.Product.-showerhead {
    margin-top: 30vw;
}

.Product.-showerhead .Product__bg {
    width: 84%;
    margin-right: auto;
}

.Product.-showerhead .Product__image {
    left: 0;
}

.Product .Product__title {
    letter-spacing: 0px;
}

.Product.-faceItem {
    margin-top: 150px;
}

.Product.-faceItem .Product__bg {
    width: 84%;
}

.Product.-faceItem .Product__image {
    left: 0;
}

.Product.-showerhead .Product__img-01 {
    position: absolute;
    left: 62.2vw;
    top: 5.3vw;
    width: 46.7vw;
}

@media (min-width: 768px) {
    .Product.-showerhead {
        margin-top: 150px;
    }
    .Product.-showerhead .Product__info {
        width: 50%;
    }

    .Product.-showerhead .Product__bg {
        width: 83%;
    }

    .Product.-showerhead .Product__image {
        left: 0;
    }
    .Product.-showerhead .Product__img-01 {
        top: 82px;
        left: 577px;
        width: 360px;
    }
}
.lity {
    background: rgba(255, 255, 255, 0.9);
}

.lity-content:after {
    box-shadow: none;
}

.lity-close {
    font-size: 0 !important;
    right: 5vw !important;
    top: 5vw !important;
}
.lity-close:after,
.lity-close:before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    left: 50%;
    top: 50%;
    background: #222;
}
.lity-close:after {
    transform: translate(-50%, -50%) rotate(-45deg);
}
.lity-close:before {
    transform: translate(-50%, -50%) rotate(45deg);
}

@media (min-width: 768px) {
    .lity-close {
        right: 40px !important;
        top: 40px !important;
    }
}
#app-scrollDelay {
    left: 0;
}

.app-menu-sp {
    width: 100%;
}
.app-menu-sp__contentWrapper {
    width: 100%;
}
.app-menu-sp__contentWrapper.modalOn {
    z-index: 10000;
}

.app-menu-pc__btn span {
    position: relative;
}
.app-menu-pc__btn span:before,
.app-menu-pc__btn span:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: 0;
    height: 1px;
    background: #000;
    transition: width 0.5s;
}
.app-menu-pc__btn span:after {
    left: 0%;
}
.app-menu-pc__btn--active span:after {
    width: 100%;
}

@keyframes menuFix {
    0% {
        opacity: 0;
    }
    1% {
        opacity: 0;
        position: fixed;
        z-index: 200;
    }
    100% {
        opacity: 1;
        position: fixed;
        z-index: 200;
    }
}
@keyframes menuStatic {
    0% {
        opacity: 1;
        position: fixed;
    }
    99% {
        opacity: 0;
        position: fixed;
    }
    100% {
        opacity: 1;
        position: absolute;
    }
}
.app-scrollObserver__title {
    opacity: 0;
    display: flex;
    justify-content: center;
}
.app-scrollObserver__title > span {
    display: inline-block;
    padding: 0 0.2em;
}
.app-scrollObserver__title > span.space {
    width: 0.5em;
    height: inherit;
}
.app-scrollObserver__cover {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: #fff;
    opacity: 0.9;
}
.app-scrollObserver__blurIn {
    filter: blur(10px);
    opacity: 0;
}
.app-scrollObserver__blurInBox {
    filter: blur(10px);
    opacity: 0;
    transform: translateY(10px);
}

.app-contentAccordion.-accordionOff .app-contentAccordion__cover {
    display: none;
}
.app-contentAccordion.-accordionOff .app-contentAccordion__content {
    height: auto;
}
.app-contentAccordion .app-contentAccordion__content {
    position: relative;
    height: 500px;
}
.app-contentAccordion .app-contentAccordion__cover {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 50%;
    width: 100%;
    background: linear-gradient(
        to bottom,
        rgba(255, 255, 255, 0) 0%,
        rgba(255, 255, 255, 0) 1%,
        rgb(255, 255, 255) 83%,
        rgb(255, 255, 255) 100%
    );
}

#index .app-loading__pcNavInner {
    opacity: 0;
}
#index .common-header {
    position: fixed;
    z-index: 999;
}

/* @media (min-width: 768px) {
  #index .common-nav-pc .common-nav-pc__ttl {
    display: none;
  }
  #index .common-nav-pc.-fixed .common-nav-pc__ttl {
    display: block;
  }
} */
.Top * {
    box-sizing: border-box;
}
.Top .Top__fv {
    margin-bottom: calc(105 / 375 * 100vw);
}
.Top .Top__concept {
    margin-bottom: 40vw;
}
@media (min-width: 768px) {
    .Top .Top__fv {
        margin-bottom: calc(150 / 1280 * 100vw);
        margin-top: 60px;
    }
    .Top .Top__concept {
        margin-bottom: 25vw;
    }
}
@media (min-width: 1000px) {
    .Top .Top__fv {
        margin-bottom: 150px;
    }
    .Top .Top__concept {
        margin-bottom: 250px;
    }
}
.Fv {
    height: calc(606 / 375 * 100vw);
}
@media (min-width: 768px) {
    .Fv {
        height: calc(700 / 1280 * 100vw);
    }
}
.Fv .Fv__inner {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 0;
}
.Fv .Fv__cover {
    position: fixed;
    left: 0;
    top: 0;
    z-index: 100;
    display: block;
    width: 100%;
    height: 100%;
    background: #fff;
}
.Fv .Fv__titleArea {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 110;
    transition: 1s;
}

.Fv .Fv__slider {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 80;
}
.Fv .Fv__scrollBar {
    position: absolute;
    right: 6vw;
    bottom: 5vw;
    z-index: 90;
    display: none;
}

@media (min-width: 768px) {
    .Fv .Fv__scrollBar {
        bottom: 80px;
        right: 40px;
    }
}
.FvTitle .FvTitle__title {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.FvTitle .FvTitle__catch {
    display: block;
    text-align: center;
    font-size: 3vw;
    letter-spacing: 0.2em;
    opacity: 0;
    filter: blur(10px);
    transition: opacity 1s ease, filter 1s ease;
}
.FvTitle .FvTitle__brand {
    display: block;
    margin-bottom: 5vw;
}
.FvTitle .FvTitle__brand img {
    width: 40vw;
}
.FvTitle .FvTitle__logo {
    display: block;
    opacity: 0;
    filter: blur(10px);
    transition: opacity 1s ease, filter 1s ease;
}

@media (min-width: 768px) {
    .FvTitle .FvTitle__brand {
        margin-bottom: 20px;
    }
    .FvTitle .FvTitle__brand img {
        width: 240px;
    }
    .FvTitle .FvTitle__catch {
        width: 100%;
        font-size: 1.4rem;
    }
}
.FvSlider {
    /*-------PC-------*/
}
.FvSlider .FvSlider__sliderWrapper {
    position: relative;
    height: 90%;
    background: #ddd;
}
.FvSlider .FvSlider__slider {
    display: block;
    width: 100%;
    height: 100%;
}
.FvSlider .FvSlider__slideList {
    width: 100%;
    height: 100%;
    position: relative;
}
.FvSlider .FvSlider__slide {
    width: 100%;
    height: 100%;
    overflow: hidden;
}
.FvSlider .FvSlider__link {
    display: block;
    width: 100%;
    height: 100%;
}
.FvSlider .FvSlider__imgWrapper {
    display: block;
    width: 100%;
    height: 100%;
    background-position: top;
    background-size: contain;
    transform-origin: top;
    background-repeat: no-repeat;
}
.FvSlider .FvSlider__imgWrapper--pc {
    display: none !important;
}
.FvSlider .FvSlider__imgWrapper img {
    width: 100%;
}
.FvSlider .FvSlider__navArea {
    position: absolute;
    left: 5vw;
    bottom: calc(-15 / 375 * 100vw);
    z-index: 10;
}
.FvSlider .FvSlider__navWrapper {
    opacity: 0;
}
.FvSlider .FvSlider__navList {
    /* position: relative; */
    display: flex;
    justify-content: center;
    width: auto;
}
.FvSlider .FvSlider__navList li {
    opacity: 1;
    display: block;
    width: 6vw;
    margin: 0 1.5vw 0 0;
    height: 2px;
    background: #707070;
    border-radius: 0;
}
/* .FvSlider .FvSlider__navList li:last-child {
  margin: 0;
} */
.FvSlider .pointer {
    display: block;
    width: 6vw;
    height: 2px;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: #000;
}
.FvSlider .FvSlider__btnArea {
    position: absolute;
    display: flex;
    gap: 10px;
}
.FvSlider .FvSlider__btnOfficial a{
    text-align: center;
    padding: 10px 0;
    background: #000;
    border-radius: 100px;
    color: #fff;
    font-size: 13px; 
    cursor: pointer;
    display: block;
}
.FvSlider .FvSlider__btnProduct a{
    text-align: center;
    padding: 10px 0;
    background: #000;
    border-radius: 100px;
    color: #fff;
    font-size: 13px;
    cursor: pointer;
    display: block;
    position: relative;
}
.FvSlider .FvSlider__btn--arrow{
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    width: 7px;
}
.FvSlider .FvSlider__btn--arrow:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.FvSlider .FvSlider__btn--arrow:after{
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
}
.FvSlider .FvSlider__btnOfficial a:hover{
    background-color: #333;
}
.FvSlider .FvSlider__btnProduct a:hover{
    background-color: #333;
}
.FvSlider .FvSlider--ico{
    margin-right: 5px;
}

@media (max-width: 767px) {
    .FvSlider .FvSlider__sliderWrapper {
        margin-bottom: 80px;
        overflow: visible;
    }
    .FvSlider .FvSlider__slider {
        overflow: visible;
    }
    .FvSlider .FvSlider__slideList {
        overflow: visible;
    }
    .FvSlider .FvSlider__slide {
        overflow: visible;
        height: calc(100% + 60px);
        background-color: #F7F7F7;
    }
    @media (min-width: 768px) {
        .FvSlider .FvSlider__slide {
            background-color: #F7F7F7;
        }
    }
    .FvSlider .FvSlider__navArea{
        bottom: calc(-75 / 375 * 100vw);
    }
    .FvSlider .FvSlider__btnArea {
        position: absolute;
        background-color: #F7F7F7;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
        gap: calc(15 / 375 * 100vw);
        padding: 20px 5vw;
    }
    .FvSlider .FvSlider__btnArea--name {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: calc(5 / 375 * 100vw);
        width: 100%;
    }
    .FvSlider .FvSlider__btnArea--nameTxt-en,
    .FvSlider .FvSlider__btnArea--nameTxt-ja {
        display: block;
        line-height: 1.2;
        margin: 0;
    }
    .FvSlider .FvSlider__btnArea--nameTxt-en {
        font-size: calc(17 / 375 * 100vw);
        font-weight: normal;
        letter-spacing: 0.1em;
        font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    }
    .FvSlider .FvSlider__btnArea--nameTxt-ja {
        font-size: calc(10 / 375 * 100vw);
        font-weight: normal;
    }
    .FvSlider .FvSlider__btnGroup {
        display: flex;
        gap: 5px;
        width: 100%;
        margin-top: 0;
    }
    .FvSlider .FvSlider__btnOfficial,
    .FvSlider .FvSlider__btnProduct {
        width: 50%;
    }
    .FvSlider .FvSlider__btnOfficial a,
    .FvSlider .FvSlider__btnProduct a {
        width: 100%;
        max-width: 100%;
        border-radius: 30px;
    }
    .FvSlider .FvSlider__btnOfficial a {
        font-size: calc(11 / 375 * 100vw);
    }
    .FvSlider .FvSlider__btnProduct a {
        font-size: calc(13 / 375 * 100vw);
    }
}

@media (min-width: 768px) {
    .FvSlider .FvSlider__slide {
        background-color: #F7F7F7;
        overflow: visible;
        /* height: calc(100% + 80px); */
    }
    .FvSlider .FvSlider__imgWrapper--sp {
        display: none !important;
    }
    .FvSlider .FvSlider__imgWrapper--pc {
        display: block !important;
    }
    .FvSlider .FvSlider__navArea {
        bottom: calc(-20 / 1280 * 100vw);
        left: calc(25 / 1280 * 100vw);
    }
    .FvSlider .FvSlider__navList li {
        width: 50px;
        height: 2px;
        margin: 0 7px 0 0;
    }
    .FvSlider .pointer {
        height: 2px;
        width: 50px;
    }
    .FvSlider .FvSlider__btnArea {
        position: absolute;
        background-color: #F7F7F7;
        justify-content: space-between;
        bottom: 0;
        left: 0;
        right: 0;
        width: 100%;
        max-width: 100%;
        padding: calc(20 / 1280 * 100vw) calc(20 / 1280 * 100vw);
        align-items: center;
        gap: 0;
    }
    .FvSlider .FvSlider__btnGroup {
        display: flex;
        gap: 10px;
        align-items: center;
        margin-left: auto;
    }
    .FvSlider .FvSlider__btnOfficial,
    .FvSlider .FvSlider__btnProduct {
        width: auto;
    }
    .FvSlider .FvSlider__btnArea--name {
        display: flex;
        align-items: center;
        gap: calc(25 / 1200 * 100vw);
        white-space: nowrap;
    }
    .FvSlider .FvSlider__btnArea--nameTxt-en,
    .FvSlider .FvSlider__btnArea--nameTxt-ja {
        display: inline-block;
        line-height: 1.2;
        margin: 0;
    }
    .FvSlider .FvSlider__btnArea--nameTxt-en {
        font-size: calc(20 / 1200 * 100vw);
        font-weight: normal;
        letter-spacing: 0.1em;
        font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    }
    .FvSlider .FvSlider__btnArea--nameTxt-ja {
        font-size: calc(13 / 1200 * 100vw);
        font-weight: normal;
    }
    .FvSlider .FvSlider__btnOfficial a,
    .FvSlider .FvSlider__btnProduct a {
        width: calc(210 / 1280 * 100vw);
        min-width: 150px;
        max-width: 210px;
        padding: calc(10 / 1280 * 100vw) 0;
        font-size: 13px;
        line-height: 1.2;
        box-sizing: border-box;
    }
    .FvSlider .FvSlider__btn--arrow {
        right: calc(25 / 1280 * 100vw);
        width: calc(7 / 1280 * 100vw);
        min-width: 5px;
    }
}

@media (min-width: 768px) and (max-width: 1200px) {
    .FvSlider .FvSlider__btnOfficial a,
    .FvSlider .FvSlider__btnProduct a {
        font-size: 12px;
        max-width: 240px;
        width: calc(240 / 1280 * 100vw);
    }
}
@media (min-width: 768px) and (max-width: 845px) {
    .FvSlider .FvSlider__btnOfficial a,
    .FvSlider .FvSlider__btnProduct a {
        font-size: 11px;
    }
}

@keyframes sliderImgScaleUp_sp {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.2);
    }
}
@keyframes sliderImgScaleUp_pc {
    0% {
        transform: scale(1);
    }
    100% {
        transform: scale(1.1);
    }
}
.TopicsArea .TopicsArea__topics {
    width: 80vw;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .TopicsArea .TopicsArea__topics {
        width: 80%;
        max-width: 900px;
    }
}
.Topics {
    position: relative;
}
.Topics .Topics__topic {
    margin-top: 7vw;
}
.Topics .Topics__topic.-large {
    margin-top: 0;
}

@media (min-width: 768px) {
    .TopicsArea .Topics__topicsList {
        width: 50%;
        margin-left: auto;
        padding-left: 5%;
    }
    .TopicsArea .Topics__topic {
        width: 100%;
        margin: 0 0 40px 0;
    }
    .TopicsArea .Topics__topic:last-child {
        margin: 0;
    }
    .TopicsArea .Topics__topic.-large {
        position: absolute;
        top: 0;
        left: 0;
        width: 45%;
    }
}
@media (min-width: 1000px) {
    .TopicsArea .Topics__topicsList {
        padding-left: 40px;
    }
    .TopicsArea .Topics__topic.-large {
        width: calc(50% - 40px);
    }
}
.TopicBox .TopicBox__link {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
@media (min-width: 768px) {
    .TopicBox .TopicBox__link {
        transition: opacity 0.3s;
    }
    .TopicBox .TopicBox__link:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.TopicBox .TopicBox__imgWrapper {
    width: 42%;
    overflow: hidden;
}
.TopicBox .TopicBox__imgWrapper img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .TopicBox .TopicBox__imgWrapper:hover img {
        transform: scale(1.1);
    }
}
.TopicBox .TopicBox__img {
    display: block;
    width: 100%;
}
.TopicBox .TopicBox__info {
    width: 52%;
    background: rgba(255, 255, 255, 0.8);
}
.TopicBox .TopicBox__date {
    font-style: oblique;
    font-size: 2.8vw;
    letter-spacing: 0.2em;
    color: #707070;
}
.TopicBox .TopicBox__title {
    font-size: 3vw;
    line-height: 1.6em;
    display: block;
    margin-top: 2vw;
    font-weight: 300;
}
.TopicBox.-largeBox .TopicBox__imgWrapper {
    width: 100%;
}
.TopicBox.-largeBox .TopicBox__info {
    width: 90%;
    margin: -10vw 0 0 auto;
    padding: 5vw;
}

@media (min-width: 768px) {
    .TopicBox .TopicBox__date {
        font-size: 1.2rem;
    }
    .TopicBox .TopicBox__title {
        font-size: 1.3rem;
        margin-top: 10px;
        line-height: 1.5em;
    }
    .TopicBox.-largeBox .TopicBox__info {
        position: absolute;
        right: 0;
        top: 85%;
        padding: 20px;
        margin: 0;
    }
}
@media (min-width: 1000px) {
    .TopicBox .TopicBox__imgWrapper {
        width: 31%;
    }
    .TopicBox .TopicBox__info {
        width: 63%;
    }
}
.ProductArea {
    padding-bottom: 0;
}
.ProductArea .ProductArea__product {
    width: 100%;
}

@media (min-width: 768px) {
    .ProductArea .Product__insert {
        width: 80%;
        max-width: 900px;
        margin: 0 auto;
    }
}
.Product .Product__imageArea {
    position: relative;
    padding-bottom: 11.11vw;
}
.Product .Product__bg {
    overflow: hidden;
}
.Product .Product__bgImg {
    display: block;
    width: 100%;
}
.Product .Product__image {
    position: absolute;
    top: 0;
    width: 0;
    height: 0;
}
.Product .Product__info {
    padding: 0 10vw;
    margin: 15vw 0 10vw;
}
.Product .Product__title {
    position: relative;
    font-size: 4vw;
    display: block;
    margin-bottom: 5vw;
}
.Product .Product__title span {
    padding: 0 0.1em;
}
.Product .Product__text {
    display: block;
    font-size: 3vw;
    line-height: 1.8em;
}
.Product .Product__productsSlider {
    width: 100%;
    overflow-y: auto;
    overflow-x: scroll;
    padding-bottom: 30px;
    margin-bottom: -20px;
}
.Product .Product__scrollCover {
    position: relative;
    z-index: 50;
    display: block;
    width: 100%;
    height: 9px;
    margin-top: 13px;
    background: #fff;
}
.Product.-hairItem .Product__bg {
    width: 84%;
    margin-right: auto;
}
.Product.-hairItem .Product__image {
    right: 0;
}
.Product.-hairItem .Product__img-01 {
    position: absolute;
    right: 24vw;
    top: 2vw;
    width: 7.5vw;
}
.Product.-hairItem .Product__img-02 {
    position: absolute;
    right: 6vw;
    top: 10vw;
    width: 15vw;
}
.Product.-hairItem .Product__title {
    text-align: left;
}
.Product.-hairItem .Product__title:after {
    left: 0;
}
.Product.-hairItem .Product__text {
    text-align: left;
}
.Product.-faceItem {
    margin-top: 30vw;
}
.Product.-faceItem .Product__bg {
    width: 84%;
    margin-left: auto;
}
.Product.-faceItem .Product__image {
    left: 0;
}
@media (min-width: 768px) and (max-width: 1000px) {
    .Product__productsArea {
        padding-top: 11vw;
    }
}
@media (max-width: 767px) {
    .Product__productsArea {
        padding: 11vw 0 0 calc(40 / 390 * 100vw);
    }
    .simplebar-scrollbar::before {
        background: #e4e4e4 !important;
        border-radius: 0;
        height: 3px !important;
        width: 110%;
        margin-left: 2px;
        margin-top: 3px;
    }
    .simplebar-scrollbar.simplebar-visible::before {
        opacity: 1;
    }
    .simplebar-track {
        height: 15px !important;
    }
    /* .Product.-faceItem .Product__title {
    text-align: right;
  }
  .Product.-faceItem .Product__title:after {
    right: 0;
  }
  .Product.-faceItem .Product__text {
    text-align: right;
  } */
}

@media (min-width: 768px) {
    .Product .Product__info {
        padding: 0;
        margin: 90px 0 60px;
    }
    .Product .Product__title {
        font-size: 2.6rem;
        margin-bottom: 10px;
    }
    .simplebar-scrollbar::before {
        display: none;
    }
    .simplebar-scrollbar.simplebar-visible::before {
        display: none;
    }
    .Product .Product__title:after {
        width: 30px;
    }
    .Product .Product__text {
        font-size: 1.4rem;
        line-height: 2.5em;
    }
    .Product.-hairItem .Product__bg {
        width: 83%;
    }
    .Product.-hairItem .Product__img-01 {
        width: 5.5vw;
        right: 11.5vw;
        top: 5vw;
    }
    .Product.-hairItem .Product__img-02 {
        width: 10.8vw;
        right: 0;
        top: 11vw;
    }
}
@media (min-width: 768px) and (min-width: 1125px) {
    .Product.-hairItem .Product__img-01 {
        width: 62px;
        top: 56px;
        right: 130px;
    }
    .Product.-hairItem .Product__img-02 {
        top: 124px;
        width: 122px;
    }
}
@media (min-width: 768px) {
    .Product.-faceItem .Product__info {
        width: 50%;
    }
    .Product.-faceItem .Product__bg {
        width: 83%;
    }
    .Product.-faceItem .Product__img-01 {
        position: absolute;
        left: 63px;
        top: 204px;
        width: 114px;
    }
    .Product.-faceItem .Product__img-02 {
        position: absolute;
        left: 165px;
        top: 247px;
        width: 114px;
    }
}
@media (max-width: 767px) {
    .Product.-faceItem .Product__img-01 {
        position: absolute;
        left: 11vw;
        top: 28.5vw;
        width: 11vw;
    }
    .Product.-faceItem .Product__img-02 {
        position: absolute;
        left: 23vw;
        top: 33vw;
        width: 13vw;
    }
}
@media (min-width: 768px) and (max-width: 1125px) {
    .Product.-faceItem .Product__img-01 {
        position: absolute;
        top: 202px;
        left: 60vw;
        width: 10vw;
    }
    .Product.-faceItem .Product__img-02 {
        position: absolute;
        width: 10vw;
        top: 248px;
        left: 70vw;
    }
}
@media (min-width: 768px) {
    .Product.-faceItem {
        margin-top: 150px;
    }
}
@media (min-width: 1000px) {
    .Product .Product__productsSlider {
        padding-bottom: 0;
        margin-bottom: 0;
        overflow: hidden;
    }
    .Product .Product__scrollCover {
        display: none;
    }
    .Product .Product__productsArea {
        width: 80%;
        max-width: 900px;
        margin: 0 auto;
    }
    .Product .Product__productList {
        width: 100%;
    }
}
.ProductList {
    padding: 0 2vw;
}
.ProductList .ProductList__item {
    width: calc(160 / 390 * 100vw);
}
.ProductList.-sliderOff .ProductList__item {
    width: calc(50% - 1vw);
}
.ProductList .ProductList__list {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

@media (min-width: 768px) {
    .ProductList {
        padding: 0 10vw;
    }
    .ProductList .ProductList__item {
        width: 30vw;
    }
    .ProductList.-sliderOff .ProductList__item {
        width: calc(50% - 1vw);
    }
}
@media (min-width: 1000px) {
    .ProductList {
        padding: 0;
    }
    .ProductList .ProductList__list {
        justify-content: flex-start;
    }
    .ProductList .ProductList__item {
        width: 23%;
    }
    .ProductList.-sliderOff .ProductList__item {
        width: 23%;
        margin-right: 2.6%;
    }
    .ProductList.-sliderOff .ProductList__item:last-child {
        margin-right: 0;
    }
}
.ConceptArea .ConceptArea__upper {
    position: relative;
    width: 100%;
    padding-top: 88%;
}
.ConceptArea .ConceptArea__concept {
    width: 80vw;
    margin: 17vw auto 40vw;
}
.ConceptArea .ConceptArea__under {
    position: relative;
    width: 100%;
}
.ConceptArea .ConceptArea__title {
    font-size: 5vw;
    text-align: left;
    letter-spacing: 0.2em;
    line-height: 1.6em;
}
.ConceptArea .ConceptArea__title span {
    font-size: 60%;
    letter-spacing: 0.1em;
}
.ConceptArea .ConceptArea__text {
    font-size: 3.2vw;
    line-height: 2.5em;
    margin-top: 10vw;
}
.ConceptArea .ConceptArea__imgBox {
    overflow: hidden;
}
.ConceptArea .ConceptArea__imgBox:before {
    content: "";
    display: block;
}

@media (min-width: 768px) {
    .ConceptArea .ConceptArea__inner {
        position: relative;
    }
    .ConceptArea .ConceptArea__upper {
        padding-top: 805px;
    }
    .ConceptArea .ConceptArea__textArea {
        position: absolute;
        left: 0;
        top: 0;
        z-index: 10;
        width: 100%;
    }
    .ConceptArea .ConceptArea__concept {
        position: absolute;
        margin: 0;
        left: calc(50% - -20px);
        top: 7vw;
    }
    .ConceptArea .ConceptArea__title {
        font-size: 2.4rem;
        line-height: 1.8em;
    }
    .ConceptArea .ConceptArea__text {
        font-size: 1.4rem;
        line-height: 3em;
        margin-top: 35px;
    }
    .ConceptArea .ConceptArea__under {
        max-width: 980px;
        margin: 15vw auto 0;
    }
}
@media (min-width: 1400px) {
    .ConceptArea .ConceptArea__concept {
        top: 98px;
    }
}
.ConceptBox01 {
    position: absolute;
    top: 0;
    left: 5vw;
    width: 48vw;
}
.ConceptBox01:before {
    padding-top: 138%;
}
.ConceptBox01 .ConceptBox01__img {
    display: block;
    width: auto;
    height: 105%;
    position: absolute;
    right: -2%;
    top: 0;
}

.ConceptBox02 {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 34vw;
}
.ConceptBox02:before {
    padding-top: 138%;
}
.ConceptBox02 .ConceptBox02__img {
    display: block;
    width: auto;
    height: 160%;
    position: absolute;
    right: -30%;
    top: -22%;
}

.ConceptBox03 {
    position: relative;
    width: 100%;
}
.ConceptBox03:before {
    padding-top: 48%;
}
.ConceptBox03 .ConceptBox03__img {
    position: absolute;
    left: 0;
    top: 53%;
    transform: translateY(-50%);
    width: 114%;
}

@media (min-width: 768px) {
    .ConceptBox01 {
        left: 5vw;
        top: 60px;
        width: 33vw;
        max-width: 425px;
        background: #ddd;
    }
    .ConceptBox01:before {
        padding-top: 137%;
    }
    .ConceptBox01 .ConceptBox01__img {
        right: 0;
        height: 100%;
    }
    .ConceptBox02 {
        display: none;
    }
}
@media (min-width: 768px) and (min-width: 1100px) {
    .ConceptBox01 {
        left: auto;
        right: calc(50% + 135px);
    }
}
@media (min-width: 768px) {
    .ConceptBox02 {
        right: 0;
        bottom: 0;
        width: 25vw;
        max-width: 220px;
    }
}
@media (min-width: 768px) and (min-width: 1100px) {
    .ConceptBox02 {
        right: auto;
        left: calc(50% + 330px);
    }
}
@media (min-width: 768px) {
    .ConceptBox03:before {
        padding-top: 40%;
    }
    .ConceptBox03 .ConceptBox03__img {
        top: 45%;
        width: 112%;
    }
}
.ChannelArea {
    margin-bottom: 30vw;
}
.ChannelArea .ChannelArea__titleAreaInner {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    width: 20vw;
}
.ChannelArea .ChannelArea__title {
    position: absolute;
    transform: translateX(50%) rotate(90deg);
    right: 0;
    top: 34vw;
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: left;
    font-weight: 400;
}
.ChannelArea .ChannelArea__main {
    position: relative;
}
.ChannelArea .ChannelArea__bg {
    position: absolute;
    left: 0;
    top: 10vw;
    z-index: -1;
    width: 80vw;
    height: 110vw;
    overflow: hidden;
}
.ChannelArea .ChannelArea__bgInner {
    width: 100%;
    height: 100%;
    background: #f5f5f5;
}
.ChannelArea .ChannelArea__channel {
    position: relative;
    width: 80vw;
    margin: 0 auto;
}
@media (min-width: 768px) {
    .ChannelArea {
        margin-bottom: 20vw;
    }
    .ChannelArea .ChannelArea__title {
        font-size: 3rem;
        top: 210px;
        right: -3vw;
    }
    .ChannelArea .ChannelArea__channel {
        width: 80%;
        max-width: 900px;
        margin-bottom: 20vw;
    }
    .ChannelArea .ChannelArea__bg {
        width: 88%;
        height: 105%;
    }
}
@media (min-width: 900px) {
    .ChannelArea .ChannelArea__title {
        top: 180px;
    }
    .ChannelArea .ChannelArea__bg {
        top: 90px;
        width: calc(50% + 345px);
    }
}
@media (min-width: 1000px) {
    .ChannelArea {
        margin-bottom: 200px;
    }
    .ChannelArea .ChannelArea__title {
        right: 0;
    }
    .ChannelArea .ChannelArea__channel {
        margin-bottom: 200px;
    }
}
.Channel .Channel__channelList {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.Channel .Channel__channelBox {
    width: 45%;
    margin-top: 10vw;
}
.Channel .Channel__channelBox.-large {
    margin-top: 0;
    width: 100%;
}

@media (min-width: 768px) {
    .Channel {
        position: relative;
    }
    .Channel .Channel__channelList {
        display: block;
        width: 50%;
        margin-left: auto;
        padding-left: 30px;
    }
    .Channel .Channel__channelBox {
        width: 70%;
        max-width: 200px;
        margin-top: 0;
        margin-bottom: 40px;
    }
    .Channel .Channel__channelBox.-large {
        position: absolute;
        left: 0;
        top: 0;
        width: 50%;
        padding: 0 10% 0 0;
        max-width: 450px;
    }
}
.ChannelBox.-large {
    padding: 0 18% 0 0;
}
.ChannelBox .ChannelBox__link {
    display: block;
}
@media (min-width: 768px) {
    .ChannelBox .ChannelBox__link {
        transition: opacity 0.3s;
    }
    .ChannelBox .ChannelBox__link:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.ChannelBox .ChannelBox__imgWrapper {
    width: 100%;
    margin-bottom: 5vw;
    overflow: hidden;
}
.ChannelBox .ChannelBox__imgWrapper img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .ChannelBox .ChannelBox__imgWrapper:hover img {
        transform: scale(1.1);
    }
}
.ChannelBox .ChannelBox__img {
    display: block;
    width: 100%;
}
.ChannelBox .ChannelBox__date {
    font-style: oblique;
    font-size: 2.8vw;
    letter-spacing: 0.2em;
    color: #707070;
}
.ChannelBox .ChannelBox__title {
    font-size: 3.2vw;
    line-height: 1.6em;
    display: block;
    margin-top: 2vw;
}
.ChannelBox .ChannelBox__text {
    display: none;
}

@media (min-width: 768px) {
    .ChannelBox .ChannelBox__imgWrapper {
        margin-bottom: 10px;
    }
    .ChannelBox .ChannelBox__date {
        font-size: 1.2rem;
    }
    .ChannelBox .ChannelBox__title {
        font-size: 1.4rem;
        margin-top: 10px;
        line-height: 1.6em;
    }
    .ChannelBox .ChannelBox__text {
        display: block;
        font-size: 1.4rem;
        line-height: 2.2em;
        letter-spacing: 0.1em;
        margin-top: 40px;
    }
    .ChannelBox.-large .ChannelBox__title {
        font-size: 1.9rem;
    }
}
@media (min-width: 768px) {
    .SelectArea .SelectArea__selectBox {
        margin: 0 auto;
        width: calc(760 / 1280 * 100vw);
        max-width: calc(900 / 1280 * 100vw);
    }
}
.SelectBox {
    position: relative;
}
.SelectBox:not(:last-of-type) {
    margin-bottom: calc(90 / 375 * 100vw);
}
.SelectBox .SelectBox__content {
    position: absolute;
    top: 40%;
    left: 10vw;
    transform: translateY(-50%);
    z-index: 10;
}
.SelectBox .SelectBox__title {
    display: block;
    font-size: calc(12 / 375 * 100vw);
    text-align: left;
    line-height: 1.8em;
    letter-spacing: 0.15em;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
}
.SelectBox .SelectBox__catch {
    display: block;
    font-size: 1.8vw;
    letter-spacing: 0.2em;
    line-height: 1.4em;
    font-weight: 400;
    margin-top: 3vw;
}
.SelectBox .SelectBox__moreBtn {
    width: 30vw;
    margin-top: calc(20 / 390 * 100vw);
}
.SelectBox .SelectBox__imageArea {
    position: relative;
    z-index: 5;
    width: 73vw;
    margin-left: auto;
    overflow: hidden;
}
.SelectBox .SelectBox__imageArea:before {
    content: "";
    display: block;
    padding-top: 58%;
}
.SelectBox .SelectBox__img {
    position: absolute;
    right: 0;
    top: 0;
    display: block;
    height: 100%;
}
.SelectBox .parts-btn-01 {
    height: calc(40 / 390 * 100vw);
    width: calc(190 / 390 * 100vw);
    letter-spacing: 2px;
}

.SelectBox .parts-btn-01__text {
    font-size: calc(10 / 390 * 100vw);
    margin: auto;
}
.SelectBox .parts-btn-01 .parts-btn-01__icon {
    display: none;
}
.SelectBox-02 .SelectBox__imageArea {
    margin-left: inherit;
    margin-right: auto;
}
.SelectBox-02 .SelectBox__img {
    right: 21%;
}
.SelectBox-02 .SelectBox__content {
    left: inherit;
    right: calc(32 / 375 * 100vw);
}

@media (min-width: 768px) {
    .SelectBox:not(:last-of-type) {
        margin-bottom: calc(115 / 1280 * 100vw);
    }
    .SelectBox .SelectBox__content {
        left: calc(70 / 1280 * 100vw);
    }
    .SelectBox .SelectBox__title {
        font-size: calc(25 / 1280 * 100vw);
    }
    .SelectBox .SelectBox__catch {
        font-size: calc(12 / 1280 * 100vw);
        margin-top: calc(30 / 1280 * 100vw);
    }
    .SelectBox .SelectBox__imageArea {
        width: calc(520 / 1280 * 100vw);
    }
    .SelectBox .SelectBox__imageArea:before {
        padding-top: 67%;
    }
    .SelectBox .parts-btn-01 .parts-btn-01__icon {
        display: block;
    }
    .SelectBox .SelectBox__img {
        width: auto;
        height: 100%;
        right: auto;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .SelectBox .SelectBox__moreBtn {
        width: calc(310 / 1366 * 100vw);
        margin-top: calc(30 / 1366 * 100vw);
        height: calc(50 / 1366 * 100vw);
    }
    .SelectBox .parts-btn-01__text {
        font-size: calc(13 / 1366 * 100vw);
        letter-spacing: 3px;
    }
    .SelectBox-02 .SelectBox__imageArea {
        width: calc(360 / 1280 * 100vw);
        margin: 0 auto 0 0;
    }
    .SelectBox-02 .SelectBox__img {
        right: inherit;
        left: 0;
        transform: translate(0%, -50%);
    }
    .SelectBox-02 .SelectBox__imageArea:before {
        padding-top: 133%;
    }
    .SelectBox-02 .SelectBox__content {
        left: inherit;
        right: calc(165 / 1280 * 100vw);
    }
}

.SupportArea .SupportArea__items {
    width: 80vw;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .SupportArea__items {
        width: 80%;
        max-width: 900px;
    }
}
.SupportItems .SupportItems__item {
    margin-bottom: 20vw;
}
.SupportItems .SupportItems__item:last-child {
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .SupportItems .SupportItems__itemList {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .SupportItems .SupportItems__item {
        width: 47%;
        margin-bottom: 0px;
    }
}
.SupportBox .SupportBox__inner {
    display: block;
    width: 100%;
}
@media (min-width: 768px) {
    .SupportBox .SupportBox__inner {
        transition: opacity 0.3s;
    }
    .SupportBox .SupportBox__inner:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.SupportBox .SupportBox__imgWrapper {
    width: 100%;
    overflow: hidden;
    overflow: hidden;
}
.SupportBox .SupportBox__imgWrapper img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .SupportBox .SupportBox__imgWrapper:hover img {
        transform: scale(1.1);
    }
}
.SupportBox .SupportBox__img {
    display: block;
    width: 100%;
}
.SupportBox .SupportBox__info {
    margin-top: calc(20 / 390 * 100vw);
    text-align: center;
}
.SupportBox .SupportBox__title {
    font-size: 3.6vw;
    display: block;
    text-align: center;
    margin-bottom: 1vw;
    letter-spacing: 0.25em;
}
.SupportBox .SupportBox__caption {
    height: 50px;
    font-weight: 300;
}
.SupportBox .SupportBox__caption .parts-btn-01__text {
    font-size: 13px;
    margin: auto;
}

@media (min-width: 768px) {
    .SupportBox .SupportBox__info {
        margin-top: 30px;
    }
    .SupportBox .SupportBox__title {
        font-size: 1.6rem;
        margin-bottom: 0;
    }
    .SupportBox .SupportBox__caption {
        height: 50px;
        max-width: 310px;
        margin: auto;
    }
}
.SpecialArea {
    padding-top: 0;
    padding-bottom: 20vw;
}
.SpecialArea .SpecialArea__titleArea {
    margin-bottom: 10vw;
}
.SpecialArea .SpecialArea__title {
    display: block;
    text-align: left;
    padding: 0 10vw;
}
.SpecialArea .SpecialArea__title span {
    padding: 0 0.1em;
}
.SpecialArea .SpecialArea__product {
    width: 100%;
}
.SpecialArea .SpecialArea__inner {
    padding: 0 10vw;
}
.SpecialArea .SpecialSlider__pagination {
    position: static;
    text-align: left;
    margin-top: 2vw;
}
.SpecialArea .SpecialSlider__pagination .swiper-pagination-bullet {
    width: 5.7971014493vw;
    height: 2px;
    margin: 0;
    margin-right: 2.6086956522vw;
    background-color: #707070;
    opacity: 1;
    border-radius: 0;
}
.SpecialArea .SpecialSlider__pagination .swiper-pagination-bullet-active {
    background-color: #000;
}
.SpecialArea .SpecialSlider__slide img {
    width: 100%;
    height: auto;
}
.SpecialArea .SpecialSlider__slider {
    overflow: visible;
}

@media (min-width: 768px) {
    .SpecialArea {
        margin-top: 150px;
        padding: 40px 0;
    }

    .SpecialArea .SpecialArea__main {
        width: 80%;
        max-width: 900px;
        padding: 0;
        margin: 0 auto;
    }

    .SpecialArea .SpecialArea__titleArea {
        margin-bottom: 60px;
    }

    .SpecialArea .SpecialArea__title {
        padding: 0;
    }

    .SpecialArea .SpecialArea__inner {
        padding: 0;
    }

    .SpecialArea .SpecialSlider__slider {
        overflow: hidden;
    }

    .SpecialArea .SpecialSlider__pagination .swiper-pagination-bullet {
        width: 49px;
        margin-right: 10px;
    }
}
/*------------------------------------------------------------
SUPPORT INDEX
------------------------------------------------------------*/

.support-index__header {
    width: 100%;
    margin: 0 auto 16vw;
    display: flex;
    text-align: center;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    padding: 0;
    height: 40vw;
}
.support-index__header.all {
    background: url(../img/support/fv/index-ttl-sp-all.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.hair {
    background: url(../img/support/fv/index-ttl-sp-hair.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.face {
    background: url(../img/support/fv/index-ttl-sp-face.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.iron {
    background: url(../img/support/fv/index-ttl-sp-iron.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.styling {
    background: url(../img/support/fv/index-ttl-sp-styling.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.dryerbrush {
    background: url(https://salonia.live/wp-content/uploads/2024/06/index-ttl-sp-dryerpre.webp)
        center center no-repeat;
    background-size: cover;
}
.support-index__header.deviceserum {
    background: url(../img/support/fv/index-ttl-sp-deviceserum.jpg) center
        center no-repeat;
    background-size: cover;
}
.support-index__header.ionfacialbrush {
    background: url(../img/support/fv/index-ttl-sp-ionfacialbrush.jpg) center
        center no-repeat;
    background-size: cover;
}
.support-index__header.facecare {
    background: url(../img/support/fv/fv-sp-face.webp) center center no-repeat;
    background-size: cover;
}
.support-index__header.facewash {
    background: url(../img/support/fv/fv-sp-facewash.webp) center center
        no-repeat;
}
.support-index__header.bodycare {
    background: url(../img/support/fv/cate_bodycare.webp) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.steamer {
    background: url(../img/support/fv/fv-steamer.webp) center center no-repeat;
    background-size: cover;
}
.support-index__header.showerhead {
    background: url(../img/support/fv/bg-showerhead.webp) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.hairpre {
    background: url(../img/support/fv/index-ttl-sp-hairpre.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header.hairironpre {
    background: url(../img/support/fv/index-ttl-sp-hairironpre.jpg) center
        center no-repeat;
    background-size: cover;
}
.support-index__header.dryerpre {
    background: url(../img/support/fv/index-ttl-sp-dryerpre.jpg) center center
        no-repeat;
    background-size: cover;
}
.support-index__header__h1 {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    width: 100%;
    color: #333;
}
.support-index__header__h1 {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    width: 100%;
    color: #333;
}

@media (min-width: 768px) {
    .support-index__header__h1 {
        font-size: 3rem;
    }
}
.support-index__header__h1 span {
    padding: 0 0.1em;
}
.support-index__header .white {
    color: #fff;
}
.support-index__header__txt {
    font-size: 2.4rem;
    line-height: 2;
    letter-spacing: 3px;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .support-index {
        padding-top: 0px;
    }
    .support-index .sp {
        display: none;
    }
    .support-index__header {
        width: 90%;
        max-width: 1400px;
        height: 500px;
        margin: 0 auto 90px;
        display: flex;
        text-align: left;
        justify-content: space-between;
        align-items: center;
        padding: 0;
    }
    .support-index__header.all {
        background: url(../img/support/fv/index-ttl-pc-all.jpg) center center
            no-repeat;
    }
    .support-index__header.hair {
        background: url(../img/support/fv/index-ttl-pc-hair.jpg) center center
            no-repeat;
    }
    .support-index__header.face {
        background: url(../img/support/fv/index-ttl-pc-face.jpg) center center
            no-repeat;
    }
    .support-index__header.iron {
        background: url(../img/support/fv/index-ttl-pc-iron.jpg) center center
            no-repeat;
    }
    .support-index__header.styling {
        background: url(../img/support/fv/index-ttl-pc-styling.jpg) center
            center no-repeat;
    }
    .support-index__header.dryerbrush {
        background: url(https://salonia.live/wp-content/uploads/2024/06/index-ttl-pc-dryerpre.webp)
            center center no-repeat;
    }
    .support-index__header.deviceserum {
        background: url(../img/support/fv/index-ttl-pc-deviceserum.jpg) center
            center no-repeat;
    }
    .support-index__header.ionfacialbrush {
        background: url(../img/support/fv/index-ttl-pc-ionfacialbrush.jpg)
            center center no-repeat;
    }
    .support-index__header.facecare {
        background: url(../img/support/fv/fv-pc-face.webp) center center
            no-repeat;
    }
    .support-index__header.facewash {
        background: url(../img/support/fv/fv-pc-facewash.webp) center center
            no-repeat;
    }
    .support-index__header.bodycare {
        background: url(../img/support/fv/cate_bodycare.webp) center center
            no-repeat;
        background-size: cover;
    }
    .support-index__header.steamer {
        background: url(../img/support/fv/fv-steamer.webp) center center
            no-repeat;
        background-size: cover;
    }
    .support-index__header.showerhead {
        background: url(../img/support/fv/bg-showerhead.webp) center center
            no-repeat;
        background-size: cover;
    }
    .support-index__header.hairpre {
        background: url(../img/support/fv/index-ttl-pc-hairpre.jpg) center
            center no-repeat;
    }
    .support-index__header.hairironpre {
        background: url(../img/support/fv/index-ttl-pc-hairironpre.jpg) center
            center no-repeat;
    }
    .support-index__header.dryerpre {
        background: url(../img/support/fv/index-ttl-pc-dryerpre.jpg) center
            center no-repeat;
    }
    .support-index__header__inner {
        text-align: left;
        width: 40%;
        padding-left: 150px;
    }
    .support-index__header__h1 {
        text-align: center;
        font-size: 3.8rem;
        margin-bottom: 0;
        justify-content: left;
    }
    .support-index__header span {
        justify-content: left;
    }
    .support-index__header__txt {
        width: 50%;
        background: rgba(255, 255, 255, 0.5);
        box-sizing: border-box;
        padding: 60px 80px;
        font-size: 2.4rem;
        line-height: 2;
        letter-spacing: 3px;
    }
}
/*------------------------------------------------------------
SUPPORT DETAIL
------------------------------------------------------------*/
.support-detail {
    padding-top: 25px;
}
@media (min-width: 768px) {
    .support-detail {
        padding-top: 0;
    }
}
.support-detail__h1 {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    margin: 0 auto 10.6666666667vw;
}
@media (min-width: 768px) {
    .support-detail__h1 {
        font-size: 3rem;
    }
}
.support-detail__header {
    margin-bottom: 80px;
    padding: 0 20px 60px;
    border-bottom: 1px solid #e4e4e4;
}
.support-detail__mv {
    margin-bottom: 25px;
    padding: 0 20px;
}
@media (min-width: 768px) {
    .support-detail__mv {
        margin-bottom: 0;
        padding: 0;
    }
}
.support-detail__mv img {
    width: 100%;
}
.support-detail__name__name {
    font-size: 17px;
    font-weight: 400;
    letter-spacing: 4px;
    margin-bottom: 5px;
}
.support-detail__name__eng {
    font-size: 10px;
    font-weight: 300;
    margin-bottom: 10px;
    color: #707070;
}
.support-detail__name__model {
    font-size: 2rem;
    font-weight: 300;
    color: #707070;
}
.support-detail__link {
    margin-top: 40px;
}
.support-detail__link a {
    width: 100%;
    margin: 0 auto;
    height: calc(50 / 390 * 100vw);
    font-size: 14px;
    letter-spacing: 0px;
}
.support-detail__link a:not(:last-of-type) {
    margin: 0 auto 12px;
}
.support-detail__link a .parts-btn-01 {
    font-size: 14px;
}
.support-detail__link a .parts-btn-01__imgIcon {
    width: calc(14 / 390 * 100vw);
}
@media (min-width: 768px) {
    .support-detail__link a .parts-btn-01__imgIcon {
        width: 16px;
    }
}
.support-detail__link.returnButton {
    width: 89vw;
    margin: 40px auto 0;
}
.support-detail__link.returnButton .parts-btn-01 .parts-btn-01__icon {
    right: inherit;
    left: 20px;
}
.support-detail__feature {
    background: #e4e4e4;
    border-radius: 3px;
    font-size: calc(10 / 390 * 100vw);
    padding: calc(3 / 390 * 100vw) calc(10 / 390 * 100vw);
    margin-top: 0;
    display: inline-block;
}
@media (min-width: 768px) {
    .support-detail__feature {
        background: #e4e4e4;
        border-radius: 3px;
        font-size: 12px;
        padding: 3px 10px;
        order: 2;
    }
}

/*-------PC-------*/
@media (min-width: 768px) {
    .support-detail {
        padding-top: 0px;
    }
    .support-detail__h1 {
        margin-bottom: 70px;
        margin-top: 100px;
    }
    .support-detail__header {
        margin-bottom: 150px;
        padding: 0 0 20px;
    }
    .support-detail__header-inner {
        max-width: calc(900 / 1366 * 100vw);
        position: relative;
        width: 90%;
        display: flex;
        justify-content: space-between;
        align-items: flex-start;
        margin: 0 auto;
        min-height: 460px;
    }
    .support-detail__mv {
        max-width: calc(400 / 1366 * 100vw);
        width: 50%;
    }
    .support-detail__mv img {
        display: block;
        width: 100%;
        margin: 0;
    }
    .support-detail__name {
        width: 50%;
        max-width: calc(400 / 1366 * 100vw);
        box-sizing: border-box;
        text-align: left;
    }
    .support-detail__name__name {
        font-size: 20px;
        font-weight: 400;
        margin-bottom: 2px;
    }
    .support-detail__name__eng {
        font-size: 10px;
        font-weight: 300;
        margin-bottom: 10px;
    }
    .support-detail__name__model {
        font-size: 1.2rem;
        font-weight: 300;
        color: #666;
        margin-bottom: 40px;
    }
    .support-detail__link a {
        height: 50px;
    }
    .support-detail__link a:not(:last-of-type) {
        margin-bottom: 10px;
    }
    .support-detail__link a .parts-btn-01__text {
        font-size: 14px;
    }
    .support-detail__link a .pdfIcon {
        width: 16px;
    }
    .support-detail__link.returnButton {
        max-width: 350px;
    }
}
@media (min-width: 1400px) {
    .support-detail__header-inner {
        max-width: 900px;
    }
    .support-detail__mv {
        max-width: 400px;
    }
    .support-detail__name {
        max-width: 400px;
    }
}
/*------------------------------------------------------------
Q & A
------------------------------------------------------------*/
.support-detail__faq {
    margin: 0 0 50px;
    padding: 0 20px;
}
.support-detail__faq__ttl {
    font-size: 18px;
    letter-spacing: 7px;
    text-align: center;
    font-weight: 400;
    margin: 0 auto 50px;
}
@media (min-width: 768px) {
    .support-detail__faq__ttl {
        font-size: 3rem;
    }
}

.faq__ul {
    width: 100%;
    margin: 0 0 5.3333333333vw;
}

.faq__list {
    margin: 0 0 40px;
}
.faq__list__question {
    position: relative;
    font-size: 14px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    line-height: 2;
    border-bottom: 1px solid #e4e4e4;
    padding: 0 0 10px 10px;
}
@media (min-width: 768px) {
    .faq__list__question {
        transition: opacity 0.3s;
    }
    .faq__list__question:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.faq__list__question__txt {
    width: 80%;
    padding-left: 35px;
    font-size: 14px;
    line-height: 1.5;
    position: relative;
}
@media (min-width: 768px) {
    .faq__list__question__txt {
        width: 92%;
        padding-left: 40px;
        font-size: 18px;
    }
}
.faq__list__question__txt:before {
    content: "Q.";
    font-size: 18px;
    font-weight: 400;
    position: absolute;
    left: 0;
    top: -3px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
}
@media (min-width: 768px) {
    .faq__list__question__txt:before {
        font-size: 24px;
        top: -4px;
    }
}
.faq__list__question__icon {
    position: absolute;
    right: 10px;
    top: 30%;
    transform: translateY(-50%);
    z-index: 0;
    width: 4vw;
    height: 4vw;
}
.faq__list__answerWrapper {
    padding-top: 5.3333333333vw;
}
@media (min-width: 768px) {
    .faq__list__answerWrapper {
        padding-top: 15px;
    }
}
.faq__list__answer {
    font-size: 12px;
    position: relative;
    padding-left: 45px;
    line-height: 2;
}
.faq__list__answer p {
    line-height: 1.5;
}
.faq__list__answer p+p {
    margin-top: 1em;
}
.faq__list__answer:before {
    content: "A.";
    font-size: 18px;
    font-weight: 400;
    position: absolute;
    left: 10px;
    top: -10px;
}
.faq__list__answerWrapper {
    display: none;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .support-detail__faq {
        margin: 0 auto 80px;
        padding: 0;
        width: 90%;
        max-width: 850px;
    }
    .support-detail__faq__ttl {
        font-size: 3.5rem;
        letter-spacing: 2px;
        text-align: center;
        font-weight: 400;
        text-align: center;
        margin: 0 auto 80px;
    }
}
@media (min-width: 768px) {
    .support-detail__faq__ttl {
        font-size: 30px;
        letter-spacing: 28px;
    }
}
@media (min-width: 768px) {
    .faq__ul {
        width: 100%;
        margin: 0 0 100px;
    }
}
@media (min-width: 768px) {
    .faq__list {
        margin: 0 0 60px;
    }
    .faq__list__question {
        font-size: 18px;
        margin: 0 auto;
        padding: 0 20px 15px;
    }
    .faq__list__question__icon {
        width: 18px;
        height: 18px;
    }
    .faq__list__answer {
        font-size: 14px;
        padding-top: 6px;
        padding-left: 60px;
    }
    .faq__list__answer p {
        width: calc(100% - 4rem);
    }
    .faq__list__answer:before {
        content: "A.";
        font-size: 24px;
        left: 20px;
        top: -6px;
    }
}
/*------------------------------------------------------------
取扱説明書
------------------------------------------------------------*/
.support-detail__pdf {
    margin: 0 0 21.3333333333vw;
    padding: 0 10.6666666667vw;
}
.support-detail__pdf__icon {
    margin-right: 2.6666666667vw;
    display: block;
    width: 4.6666666667vw;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .support-detail__pdf {
        margin: 0 0 160px;
        padding: 0;
    }
    .support-detail__pdf__link {
        width: 90%;
        max-width: 850px;
        margin: 0 auto;
    }
    .support-detail__pdf__icon {
        margin-right: 20px;
        display: block;
        width: 20px;
    }
}
/*------------------------------------------------------------
PRODUCT INDEX
------------------------------------------------------------*/
.product-index__header {
    width: 100%;
    margin: 0 auto 16vw;
    display: flex;
    text-align: center;
    justify-content: center;
    flex-wrap: wrap;
    align-items: center;
    padding: 0;
    height: 40vw;
}
.product-index__header.all {
    background: url(../img/product/fv/fv-sp-all.jpg) center center no-repeat;
    background-size: cover;
}
.product-index__header.hair {
    background: url(../img/product/fv/fv-sp-hair.jpg) center center no-repeat;
    background-size: cover;
}
.product-index__header.face {
    background: url(../img/product/fv/fv-sp-face.jpg) center center no-repeat;
    background-size: cover;
}
.product-index__header.iron {
    background: url(../img/product/fv/fv-sp-iron.jpg) center center no-repeat;
    background-size: cover;
}
.product-index__header.styling {
    background: url(../img/product/fv/fv-sp-styling.jpg) center center no-repeat;
    background-size: cover;
}
.product-index__header.dryerbrush {
    background: url(../img/product/fv/fv-sp-dryer.jpg) center center no-repeat;
    background-size: cover;
}
.product-index__header__h1 {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    width: 100%;
    color: #333;
}
@media (min-width: 768px) {
    .product-index__header__h1 {
        font-size: 3rem;
    }
}
.product-index__header__h1 span {
    padding: 0 0.1em;
}
.product-index__header__txt {
    font-size: 2.4rem;
    line-height: 2;
    letter-spacing: 3px;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .product-index {
        padding-top: 0px;
    }
    .product-index__header {
        width: 90%;
        max-width: 1150px;
        height: 500px;
        margin: 0 auto 90px;
        display: flex;
        text-align: left;
        justify-content: space-between;
        align-items: center;
        padding: 0;
    }
    .product-index__header.all {
        background: url(../img/product/fv/fv-pc-all.jpg) center center no-repeat;
    }
    .product-index__header.hair {
        background: url(../img/product/fv/fv-pc-hair.jpg) center center
            no-repeat;
    }
    .product-index__header.face {
        background: url(../img/product/fv/fv-pc-face.jpg) center center
            no-repeat;
    }
    .product-index__header.iron {
        background: url(../img/product/fv/fv-pc-iron.jpg) center center
            no-repeat;
    }
    .product-index__header.styling {
        background: url(../img/product/fv/fv-pc-styling.jpg) center center
            no-repeat;
    }
    .product-index__header.dryerbrush {
        background: url(../img/product/fv/fv-pc-dryer.jpg) center center
            no-repeat;
    }
    .product-index__header__h1 {
        width: 55%;
        text-align: center;
        font-size: 3.8rem;
        margin-bottom: 0;
    }
    .product-index__header__txt {
        width: 50%;
        background: rgba(255, 255, 255, 0.5);
        box-sizing: border-box;
        padding: 60px 80px;
        font-size: 2.4rem;
        line-height: 2;
        letter-spacing: 3px;
    }
}
.productFooterArea .productFooterArea__btnArea,
.SpecArea .SpecArea__btnArea,
.FunctionArea .FunctionArea__btnArea {
    margin-top: 10vw;
    width: 100%;
}
.productFooterArea .productFooterArea__btnArea .parts-btn-01,
.SpecArea .SpecArea__btnArea .parts-btn-01,
.FunctionArea .FunctionArea__btnArea .parts-btn-01 {
    width: 30vw;
    margin: 0 auto;
}
@media (min-width: 768px) and (max-width: 900px) {
    .product-index__header__h1 {
        padding-left: 3vw;
    }
}
@media (min-width: 768px) {
    .productFooterArea .productFooterArea__btnArea,
    .SpecArea .SpecArea__btnArea,
    .FunctionArea .FunctionArea__btnArea {
        margin-top: 0;
    }
    .productFooterArea .productFooterArea__btnArea .parts-btn-01,
    .SpecArea .SpecArea__btnArea .parts-btn-01,
    .FunctionArea .FunctionArea__btnArea .parts-btn-01 {
        width: 200px;
        margin: 0 auto;
    }
}

.SpecArea,
.FunctionArea,
.MovieArea {
    padding: 20vw 0;
}
@media (min-width: 768px) {
    .SpecArea,
    .FunctionArea,
    .MovieArea {
        padding: 10vw 5vw;
    }
}
@media (min-width: 1400px) {
    .SpecArea,
    .FunctionArea,
    .MovieArea {
        padding: 140px 0 100px;
    }
}

.ProductDetail * {
    box-sizing: border-box;
}
.ProductDetail .ProductDetail__info {
    margin-top: 20vw;
}

@media (min-width: 768px) {
    .ProductDetail {
        padding-top: 0;
        margin-top: 70px;
    }
    .ProductDetail .ProductDetail__info {
        margin-top: 15vw;
    }
}
@media (min-width: 1000px) {
    .ProductDetail .ProductDetail__info {
        margin-top: 150px;
    }
}
.ProductDetailFvArea {
    width: 100%;
    margin-bottom: 150px;
}

@media (min-width: 768px) {
    .ProductDetailFvArea {
        margin-bottom: 20vw;
    }
}
@media (min-width: 1000px) {
    .ProductDetailFvArea {
        margin-bottom: 200px;
    }
}
.ProductDetailFv {
    width: 90vw;
    margin: 0 auto;
}
.ProductDetailFv.-sliderOff .ProductSlider__navArea,
.ProductDetailFv.-sliderOff .ProductSlider__skuNameArea,
.ProductDetailFv.-sliderOff .ProductDetailFv__choicesArea {
    display: none;
}
.ProductDetailFv .ProductDetailFv__inner {
    display: flex;
    flex-wrap: wrap;
}
.ProductDetailFv .ProductDetailFv__titleArea {
    width: 100%;
    margin-bottom: 12px;
}
.ProductDetailFv .ProductDetailFv__title {
    display: block;
    text-align: left;
    font-size: 17px;
    letter-spacing: 0.2em;
}
.ProductDetailFv .ProductDetailFv__subTitle {
    display: block;
    text-align: left;
    font-size: 10px;
    letter-spacing: 0.2em;
    margin-top: 10px;
    color: #707070;
}
.ProductDetailFv .ProductDetailFv__sliderArea {
    width: 100%;
}
.ProductDetailFv .ProductDetailFv__slider {
    width: 100%;
}
.ProductDetailFv .ProductDetailFv__choicesArea {
    width: 100%;
    margin-top: 8vw;
}
.ProductDetailFv .ProductDetailFv__priceArea {
    width: 100%;
    margin-top: 25px;
}
.ProductDetailFv .ProductDetailFv__price {
    font-size: 12px;
}
.ProductDetailFv .ProductDetailFv__price span {
    display: inline-block;
    margin-right: 5px;
    font-size: 20px;
    letter-spacing: 0.1em;
}
.ProductDetailFv .ProductDetailFv__cvArea {
    width: 100%;
    margin-top: 8vw;
}
.ProductDetailFv .ProductDetailFv__cv {
    width: 100%;
}
.ProductDetailFv__bnrArea {
    margin-top: 60px;
    width: 100%;
    border-top: 1px solid #e4e4e4;
    padding-top: 35px;
}

.ProductDetailFv__bnrArea__inner {
    width: 90vw;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .ProductDetailFv__bnrArea__inner {
        width: 90%;
        margin: 0 auto;
        max-width: calc(900 / 1366 * 100vw);
    }
}
@media (min-width: 1400px) {
    .ProductDetailFv__bnrArea__inner {
        max-width: 900px;
    }
}
@media (min-width: 768px) {
    .ProductDetailFv__bnrArea__flex {
        display: flex;
        flex-wrap: wrap;
        margin: 0 -20px;
    }
    .ProductDetailFv__bnrArea__flex a,
    .ProductDetailFv__bnrArea__flex .ProductDetailFv__setArea {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
        padding: 0 20px;
    }
}

.ProductDetailFv__bnrArea a {
    display: block;
    margin-bottom: 20px;
    width: 100%;
}
@media (min-width: 768px) {
    .ProductDetailFv__bnrArea a {
        transition: opacity 0.3s;
    }
    .ProductDetailFv__bnrArea a:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.ProductDetailFv__bnrAreaCaption {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    font-size: 12px;
    margin-top: 5px;
}
@media (min-width: 768px) {
    .ProductDetailFv__bnrAreaCaption {
        font-size: 14px;
        margin-top: 10px;
    }
}
.ProductDetailFv__bnrAreaCaption .icon-arrow {
    width: 5px;
    margin-left: 5px;
}

@media (min-width: 768px) {
    .ProductDetailFv {
        position: relative;
        margin: 0 auto;
        min-height: 65vw;
        max-width: calc(900 / 1366 * 100vw);
    }
    .ProductDetailFv.-sliderOff {
        min-height: 46vw;
    }
    .ProductDetailFv .ProductDetailFv__inner {
        width: 47%;
        margin: 0 0 0 auto;
        padding-left: 5vw;
        box-sizing: border-box;
    }
    .ProductDetailFv .ProductDetailFv__titleArea {
        order: 1;
        margin-bottom: 15px;
    }
    .ProductDetailFv .ProductDetailFv__title {
        text-align: left;
        font-size: 20px;
    }
    .ProductDetailFv .ProductDetailFv__subTitle {
        text-align: left;
        font-size: 10px;
        margin-top: 7px;
    }
    .ProductDetailFv .ProductDetailFv__sliderArea {
        order: 3;
        width: 53%;
        margin: 0 auto;
        position: absolute;
        left: 0;
        top: 0;
    }
    .ProductDetailFv .ProductDetailFv__slider {
        width: 100%;
        max-width: 460px;
        margin: 0 auto;
    }
    .ProductDetailFv .ProductDetailFv__choicesArea {
        order: 4;
        margin-top: 0;
    }
    .ProductDetailFv .ProductDetailFv__priceArea {
        order: 2;
        margin-top: 0;
        margin-bottom: 0;
        padding-bottom: 0;
        position: relative;
    }
    .ProductDetailFv .ProductDetailFv__price {
        text-align: left;
        font-size: 1.2rem;
    }
    .ProductDetailFv .ProductDetailFv__price span {
        font-size: 1.6rem;
    }
    .ProductDetailFv .ProductDetailFv__cvArea {
        order: 5;
        margin-top: 40px;
    }
    .ProductDetailFv .ProductDetailFv__bnrArea {
        order: 6;
        margin-top: 80px;
    }
    .ProductDetailFv .ProductDetailFv__bnrAreaCaption {
        margin-top: 8px;
        font-size: 1rem;
    }
}
@media (min-width: 1000px) {
    .ProductDetailFv {
        min-height: 585px;
    }
    .ProductDetailFv.-sliderOff {
        min-height: 460px;
    }
}
@media (min-width: 1400px) {
    .ProductDetailFv {
        max-width: 900px;
    }
}
.CvBtns {
    position: relative;
}
.CvBtns .CvBtns__cvBtnList {
    background: #fff;
    padding: 0 2px 2px;
}
.CvBtns .CvBtns__cvBtns {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 100;
    width: 100%;
}
.CvBtns .CvBtns__cvBtnItem {
    margin-top: 2px;
}
.CvBtns .CvBtns__cvBtn {
    background: #f5f5f5;
}
.CvBtns .CvBtns__caption {
    display: block;
    font-size: 3vw;
    margin-top: 2vw;
    text-align: center;
}
.CvBtns__cvBtns .CvBtns__caption {
    display: block;
    font-size: 2.6vw;
    margin-top: 2vw;
}

@media (min-width: 768px) {
    .CvBtns .CvBtns__openBtn.-lightGray:hover {
        opacity: 1;
        cursor: auto !important;
    }
    .CvBtns .CvBtns__caption {
        font-size: 1.2rem;
        margin-top: 10px;
    }
    .CvBtns__cvBtns .CvBtns__caption {
        font-size: 1rem;
        margin-top: 10px;
    }
}
.ProductSlider .ProductSlider__slider {
    width: 100%;
    position: relative;
    background: #efefef;
}
.ProductSlider .ProductSlider__slider:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.ProductSlider .ProductSlider__slideList {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}
.ProductSlider .ProductSlider__slideList > li {
    width: 100%;
}
.ProductSlider .ProductSlider__slideList > li img {
    display: block;
    width: 100%;
}
.ProductSlider .ProductSlider__navArea {
    width: 100%;
    margin-top: 7vw;
}
.ProductSlider .ProductSlider__navBtn {
    display: none;
}
.ProductSlider .ProductSlider__nav {
    width: 100%;
}
.ProductSlider .ProductSlider__navList {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    align-content: center;
}
.ProductSlider .ProductSlider__navList li {
    margin: 0 2vw;
    width: 6px;
    height: 6px;
}
.ProductSlider .ProductSlider__navList li div {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.45);
    overflow: hidden;
}
.ProductSlider .ProductSlider__navList li div.-current {
    transform: scale(1.3);
}
.ProductSlider .ProductSlider__navList li img {
    display: none;
}
.ProductSlider .ProductSlider__skuNameArea {
    width: 100%;
    margin-top: 4vw;
}
.ProductSlider .ProductSlider__skuName {
    display: block;
    width: 100%;
    text-align: center;
    font-size: 2vw;
    letter-spacing: 0.1em;
}

@media (min-width: 768px) {
    .ProductSlider {
        display: flex;
        flex-wrap: wrap;
    }
    .ProductSlider .ProductSlider__slider {
        order: 1;
    }
    .ProductSlider .ProductSlider__skuNameArea {
        order: 2;
        margin-top: 20px;
        padding-left: 33px;
    }
    .ProductSlider .ProductSlider__skuName {
        font-size: 1.2rem;
        text-align: left;
    }
    .ProductSlider .ProductSlider__navArea {
        position: relative;
        order: 3;
        margin-top: 30px;
    }
    .ProductSlider .ProductSlider__navBtn {
        display: block;
        width: 30px;
        height: 100%;
        position: absolute;
    }
    .ProductSlider .ProductSlider__navBtn .ProductSlider__navIcon {
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        width: 15px;
    }
    .ProductSlider .ProductSlider__navBtn.-prev {
        top: 0;
        left: 0;
    }
    .ProductSlider .ProductSlider__navBtn.-prev .ProductSlider__navIcon {
        left: 4px;
    }
    .ProductSlider .ProductSlider__navBtn.-next {
        top: 0;
        right: 0;
    }
    .ProductSlider .ProductSlider__navBtn.-next .ProductSlider__navIcon {
        right: 4px;
    }
    .ProductSlider .ProductSlider__navBtn.swiper-button-disabled {
        opacity: 0.2;
    }
    .ProductSlider .ProductSlider__navBtn.swiper-button-disabled:hover {
        cursor: auto !important;
    }
    .ProductSlider .ProductSlider__navBtn:focus {
        outline: none;
    }
    .ProductSlider .ProductSlider__navBtn:hover {
        cursor: pointer;
    }
    .ProductSlider .ProductSlider__nav {
        width: calc(100% - 60px);
        margin: 0 auto;
    }
    .ProductSlider .ProductSlider__navList {
        width: 100%;
        justify-content: start;
    }
    .ProductSlider .ProductSlider__navList li {
        width: 14.2%;
        padding: 0 3px;
        margin: 0;
        height: auto;
    }
    .ProductSlider .ProductSlider__navList li div {
        position: relative;
        height: auto;
        border: 1px solid #e5e5e5;
        border-radius: 0;
    }
    .ProductSlider .ProductSlider__navList li div:before {
        content: "";
        display: block;
        padding-top: 100%;
    }
    .ProductSlider .ProductSlider__navList li div.-current {
        transform: scale(1);
        border: 2px solid #000;
    }
    .ProductSlider .ProductSlider__navList li img {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 100%;
    }
}
.ColorChoices .ColorChoices__choiceList {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}
@media (max-width: 767px) {
    .ColorChoices .ColorChoices__choiceList.-lessThanTwo {
        justify-content: center;
    }
    .ColorChoices
        .ColorChoices__choiceList.-lessThanTwo
        .ColorChoices__choiceItem {
        margin: 0 3.5% 3vw 3.5%;
    }
    .ColorChoices .ColorChoices__choiceList.-lessThanTwo .ColorChoice__name {
        text-align: center;
    }
}
.ColorChoices .ColorChoices__choiceItem {
    width: 31%;
    margin-right: 3.5%;
    margin-bottom: 3vw;
}
.ColorChoices .ColorChoices__choiceItem:nth-of-type(3n) {
    margin-right: 0;
}

@media (min-width: 768px) {
    .ColorChoices .ColorChoices__choiceItem {
        width: 100%;
        margin-bottom: 30px;
    }
    .ColorChoices .ColorChoices__choiceItem:last-child {
        margin-bottom: 0;
    }
}
.ColorChoice .ColorChoice__name {
    display: block;
    width: 100%;
    font-size: 1.5rem;
    margin-bottom: 1.5vw;
}
.ColorChoice .ColorChoice__name span {
    font-size: 110%;
    padding: 0 5px;
}
.ColorChoice .ColorChoice__btnList {
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
}
.ColorChoice .ColorChoice__btnItem {
    width: 30%;
    margin-right: 5%;
    margin-top: 1vw;
}
.ColorChoice .ColorChoice__btnItem:nth-of-type(3n) {
    margin-right: 0;
}
.ColorChoice .ColorChoice__btn {
    width: 100%;
}
@media (max-width: 767px) {
    .ColorChoice:nth-child(3n) .ColorChoice__name {
        text-align: right;
    }
    .ColorChoice:nth-child(3n) .ColorChoice__btnItem {
        margin-right: 0;
        margin-left: 5%;
    }
    .ColorChoice:nth-child(3n) .ColorChoice__btnItem:nth-of-type(3n + 1) {
        margin-left: 0;
    }
    .ColorChoice:nth-child(3n) .ColorChoice__btnList {
        justify-content: flex-end;
    }
}

@media (min-width: 768px) {
    .ColorChoice {
        display: flex;
        justify-content: flex-start;
    }
    .ColorChoice .ColorChoice__name {
        display: flex;
        align-items: center;
        font-size: 1.2rem;
        width: 120px;
        margin-bottom: 0;
    }
    .ColorChoice .ColorChoice__btns {
        width: calc(100% - 120px);
    }
    .ColorChoice .ColorChoice__btnList {
        align-content: center;
    }
    .ColorChoice .ColorChoice__btnItem {
        width: 24px;
        margin-top: 0;
    }
    .ColorChoice .ColorChoice__btnItem:nth-of-type(3n) {
        margin-right: 5%;
    }
    .ColorChoice .ColorChoice__btnItem:last-child {
        margin-right: 0;
    }
}
.AboutArea .AboutArea__box {
    position: relative;
}
.AboutArea .AboutArea__box:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.AboutArea .AboutArea__content {
    width: 80vw;
    margin: 20vw auto;
}
.AboutArea .AboutArea__mainTitle {
    text-align: left;
    font-size: 4vw;
    letter-spacing: 0.15em;
}
.AboutArea .AboutArea__mainTitle sup {
    font-size: 50%;
    vertical-align: super;
}
.AboutArea .AboutArea__text {
    font-size: 3.4vw;
    line-height: 2em;
    letter-spacing: 0.1em;
    margin-top: 8vw;
}
.AboutArea .AboutArea__text sup {
    vertical-align: super;
    font-size: 50%;
}
@media (min-width: 768px) {
    .AboutArea .AboutArea__text {
        font-size: 1.4rem;
    }
}
.AboutArea .AboutArea__caption {
    font-size: 2.6vw;
    line-height: 2em;
    letter-spacing: 0.1em;
    color: #666;
    margin-top: 5vw;
}
@media (min-width: 768px) {
    .AboutArea .AboutArea__caption {
        font-size: 1.2rem;
    }
}

@media (min-width: 768px) {
    .AboutArea {
        margin-bottom: 20vw;
    }
    .AboutArea .AboutArea__inner {
        position: relative;
    }
    .AboutArea .AboutArea__content {
        position: absolute;
        margin: 0;
        top: 44vw;
        left: 47vw;
        width: 53vw;
        max-width: 524px;
        padding-right: 40px;
    }
}
@media (min-width: 768px) and (min-width: 1200px) {
    .AboutArea .AboutArea__content {
        top: 535px;
        left: calc(50vw - 30px);
    }
}
@media (min-width: 768px) {
    .AboutArea .AboutArea__mainTitle {
        font-size: 2.3rem;
    }
}
@media (min-width: 768px) {
    .AboutArea .AboutArea__text {
        margin-top: 20px;
    }
}
@media (min-width: 768px) {
    .AboutArea .AboutArea__caption {
        margin-top: 20px;
    }
}
@media (min-width: 768px) {
    .AboutArea .AboutArea__box:before {
        padding-top: 72%;
    }
}
@media (min-width: 1000px) {
    .AboutArea {
        margin-bottom: 200px;
    }
    .AboutArea .AboutArea__box {
        height: 720px;
    }
    .AboutArea .AboutArea__box:before {
        content: none;
    }
}
.aboutImageBox01 {
    position: absolute;
    top: 0;
    right: 0;
    width: 80vw;
    max-height: 420px;
    overflow: hidden;
}
.aboutImageBox01:before {
    content: "";
    display: block;
    padding-top: 80%;
}
.aboutImageBox01 .aboutImageBox01__img {
    position: absolute;
    left: 50%;
    top: 50%;
    display: block;
    height: 120%;
    transform: translate(-50%, -50%);
}

.aboutImageBox02 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 40vw;
    overflow: hidden;
}
.aboutImageBox02:before {
    content: "";
    display: block;
    padding-top: 135%;
}
.aboutImageBox02 .aboutImageBox02__img {
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
}

@media (min-width: 768px) {
    .aboutImageBox01 {
        width: 75vw;
    }
    .aboutImageBox01:before {
        padding-top: 47%;
    }
    .aboutImageBox01 .aboutImageBox01__img {
        height: auto;
        width: 100%;
    }

    .aboutImageBox02 {
        width: 28%;
        max-width: 300px;
        left: 5%;
    }
}
@media (min-width: 1000px) {
    .aboutImageBox02 {
        left: auto;
        right: calc(50vw + 170px);
    }
}
@media (min-width: 1600px) {
    .aboutImageBox02 {
        left: 22%;
        right: auto;
    }
}
.MovieArea {
    background: #fafafa;
}
.MovieArea .MovieArea__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .MovieArea .MovieArea__title {
        font-size: 3rem;
    }
}
.MovieArea .MovieArea__movies {
    width: 80vw;
    margin: 0 auto;
}

@media (min-width: 768px) {
    .MovieArea .MovieArea__movies {
        width: 100%;
        max-width: 900px;
        margin: 0 auto;
    }
}
.MovieContentBox {
    margin-bottom: 15vw;
}
.MovieContentBox:last-child {
    margin-bottom: 0;
}
.MovieContentBox .MovieContentBox__movieWrapper {
    width: 100%;
    margin-bottom: 6vw;
}
.MovieContentBox .MovieContentBox__title {
    position: relative;
    font-size: 3.6vw;
    line-height: 1.8em;
    letter-spacing: 0.1em;
    padding-bottom: 4vw;
    margin-bottom: 3vw;
    width: 100%;
}
.MovieContentBox .MovieContentBox__title:after {
    content: "";
    position: absolute;
    display: block;
    width: 10vw;
    height: 1px;
    background: #000;
    bottom: 0;
    left: 0;
}
.MovieContentBox .MovieContentBox__subTitle {
    font-size: 3.4vw;
    line-height: 2em;
    letter-spacing: 0.1em;
    width: 100%;
}
.MovieContentBox .MovieContentBox__subTitle sup {
    vertical-align: super;
    font-size: 50%;
}
@media (min-width: 768px) {
    .MovieContentBox .MovieContentBox__subTitle {
        font-size: 1.4rem;
    }
}
.MovieContentBox .MovieContentBox__text {
    font-size: 3.4vw;
    line-height: 2em;
    letter-spacing: 0.1em;
    width: 100%;
}
.MovieContentBox .MovieContentBox__subtext{
    font-size: 3.0vw;
}
.MovieContentBox .MovieContentBox__text sup {
    vertical-align: super;
    font-size: 50%;
}
@media (min-width: 768px) {
    .MovieContentBox .MovieContentBox__text {
        font-size: 1.4rem;
    }
    .MovieContentBox .MovieContentBox__subText {
        font-size: 1.0rem;
    }
}
.MovieContentBox .MovieContentBox__caption {
    font-size: 2.6vw;
    line-height: 1.8em;
    letter-spacing: 0.1em;
    width: 100%;
    color: #666;
}
@media (min-width: 768px) {
    .MovieContentBox .MovieContentBox__caption {
        font-size: 1rem;
    }
}

@media (min-width: 768px) {
    .MovieContentBox {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 120px;
    }
    .MovieContentBox .MovieContentBox__movieWrapper {
        width: 45%;
        margin-bottom: 0;
    }
    .MovieContentBox .MovieContentBox__info {
        width: 50%;
        display: flex;
        flex-wrap: wrap;
        align-content: center;
    }
    .MovieContentBox .MovieContentBox__title {
        font-size: 1.4rem;
        padding-bottom: 30px;
        margin-bottom: 30px;
        letter-spacing: 0.05em;
    }
    .MovieContentBox .MovieContentBox__title br {
        display: none;
    }
    .MovieContentBox .MovieContentBox__title:after {
        width: 25px;
    }
    .MovieContentBox .MovieContentBox__text {
        font-size: 1.2rem;
    }
    .MovieContentBox .MovieContentBox__text br {
        display: none;
    }
    .MovieContentBox .MovieContentBox__subText {
        font-size: 1.0rem;
    }
}
.MovieBox .MovieBox__link {
    display: block;
    width: 100%;
    position: relative;
}
.MovieBox .MovieBox__thum {
    display: block;
    width: 100%;
}
.MovieBox .MovieBox__icon {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 15%;
}

.FunctionArea {
    padding-bottom: 0;
}
.FunctionArea .FunctionArea__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .FunctionArea .FunctionArea__title {
        font-size: 3rem;
    }
}
.FunctionArea .FunctionArea__function {
    width: 80vw;
    margin: 0 auto;
}
.FunctionArea .FunctionArea__btn.-open {
    margin-top: -15vw;
}
.FunctionArea .FunctionArea__btn.-close {
    display: none;
}
.FunctionArea.-open .FunctionArea__btn.-close {
    display: block;
}
.FunctionArea.-open .FunctionArea__btn.-open {
    display: none;
}
.FunctionArea.-accordionOff .FunctionArea__btnArea {
    display: none;
}

@media (min-width: 768px) {
    .FunctionArea .FunctionArea__function {
        width: 100%;
        max-width: calc(900 / 1366 * 100vw);
    }
    .FunctionArea .FunctionArea__btn.-open {
        margin-top: -30px;
    }
}
@media (min-width: 1400px) {
    .FunctionArea {
        padding: 140px 0 0;
    }
    .FunctionArea .FunctionArea__function {
        width: 100%;
        max-width: 900px;
    }
}
.Function .Function__item {
    margin-bottom: 15vw;
}
.Function .Function__functions {
    position: relative;
    height: 500px;
    overflow: hidden;
}

@media (min-width: 768px) {
    .Function .Function__list {
        display: flex;
        flex-wrap: wrap;
        justify-content: start;
    }
    .Function .Function__item {
        width: 47%;
        margin-right: 6%;
        margin-bottom: 80px;
    }
    .Function .Function__item:nth-of-type(even) {
        margin-right: 0;
    }
}
@media (min-width: 1000px) {
    .Function .Function__item {
        width: 30%;
        margin-right: 5%;
        margin-bottom: 80px;
    }
    .Function .Function__item:nth-of-type(even) {
        margin-right: 5%;
    }
    .Function .Function__item:nth-of-type(3n) {
        margin-right: 0;
    }
}
.FunctionBox .FunctionBox__imgWrapper {
    margin-bottom: 6vw;
    width: 100%;
    position: relative;
}
.FunctionBox .FunctionBox__imgWrapper:before {
    content: "";
    display: block;
    padding-top: 49.3%;
}
.FunctionBox .FunctionBox__img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
}
.FunctionBox .FunctionBox__title {
    font-size: 3.6vw;
    line-height: 1.8em;
    letter-spacing: 0.1em;
    margin-bottom: 3vw;
}
.FunctionBox .FunctionBox__text {
    font-size: 3.4vw;
    line-height: 2em;
    letter-spacing: 0.1em;
}
.FunctionBox .FunctionBox__text sup {
    vertical-align: super;
    font-size: 50%;
}
@media (min-width: 768px) {
    .FunctionBox .FunctionBox__text {
        font-size: 1.4rem;
    }
}
.FunctionBox .FunctionBox__caption {
    font-size: 2.6vw;
    line-height: 2em;
    letter-spacing: 0.1em;
    color: #666;
    line-height: 1.8em;
}
@media (min-width: 768px) {
    .FunctionBox .FunctionBox__caption {
        font-size: 1rem;
    }
}

@media (min-width: 768px) {
    .FunctionBox .FunctionBox__imgWrapper {
        margin-bottom: 20px;
    }
    .FunctionBox .FunctionBox__title {
        font-size: 1.8rem;
        margin-bottom: 10px;
        font-size: 1.4rem;
    }
    .FunctionBox .FunctionBox__text {
        font-size: 1.2rem;
        line-height: 1.8em;
        margin-bottom: 10px;
    }
}
.SpecArea .SpecArea__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .SpecArea .SpecArea__title {
        font-size: 3rem;
    }
}
.SpecArea .SpecArea__tableWrapper {
    position: relative;
    height: 500px;
    overflow: hidden;
}
.SpecArea .SpecArea__specTable {
    width: 90vw;
    margin: 0 auto;
}
.SpecArea .SpecArea__btn.-open {
    margin-top: -15vw;
}
.SpecArea .SpecArea__btn.-close {
    display: none;
}
.SpecArea.-open .SpecArea__btn.-close {
    display: block;
}
.SpecArea.-open .SpecArea__btn.-open {
    display: none;
}
.SpecArea .SpecArea__pdfBtn {
    width: 100%;
    margin: 2vw auto 0;
}
.SpecArea.-accordionOff .SpecArea__btnArea {
    display: none;
}

@media (min-width: 768px) {
    .SpecArea .SpecArea__specTable {
        max-width: 700px;
    }
    .SpecArea .SpecArea__btn {
        width: 200px;
        margin: 0 auto;
    }
    .SpecArea .SpecArea__btn.-open {
        margin-top: -30px;
    }
    .SpecArea .SpecArea__pdfBtn {
        width: 300px;
        margin: 20px auto 0 0;
    }
}
.ToSupport {
    position: relative;
    overflow: hidden;
}
.ToSupport:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.ToSupport .ToSupport__filter {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.15);
    z-index: 20;
}
.ToSupport .ToSupport__inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 30;
}
.ToSupport .ToSupport__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    color: #fff;
    margin-bottom: 10vw;
}
@media (min-width: 768px) {
    .ToSupport .ToSupport__title {
        font-size: 3rem;
    }
}
.ToSupport .ToSupport__link {
    margin-top: 10vw;
    width: 30vw;
    margin: 10vw auto 0;
}
.ToSupport .ToSupport__bgWrapper {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 105%;
    height: 105%;
    overflow: hidden;
}
.ToSupport .ToSupport__bg {
    width: 100%;
    height: 100%;
    background-position: center;
    background-size: cover;
    filter: blur(5px);
}
.ToSupport.-hair .ToSupport__bg {
    background-image: url(/img/common/supportBg_hair_sp.jpg);
}
.ToSupport.-face .ToSupport__bg {
    background-image: url(/img/common/supportBg_face_sp.jpg);
}

@media (min-width: 768px) {
    .ToSupport {
        height: 53vw;
        max-height: 530px;
    }
    .ToSupport .ToSupport__inner {
        width: 100%;
    }
    .ToSupport .ToSupport__title {
        margin-bottom: 8vw;
    }
    .ToSupport .ToSupport__link {
        margin-top: 8vw;
        width: 200px;
    }
    .ToSupport .ToSupport__text br {
        display: none;
    }
    .ToSupport .ToSupport__bg {
        background-position: center;
        background-size: cover;
    }
    .ToSupport .ToSupport__bg.-pc {
        display: block;
    }
    .ToSupport .ToSupport__bg.-sp {
        display: none;
    }
    .ToSupport.-hair .ToSupport__bg {
        background-image: url(/img/common/supportBg_hair_pc.jpg);
    }
    .ToSupport.-face .ToSupport__bg {
        background-image: url(/img/common/supportBg_face_pc.jpg);
    }
}
@media (min-width: 1000px) {
    .ToSupport .ToSupport__title {
        margin-bottom: 80px;
    }
    .ToSupport .ToSupport__link {
        margin-top: 80px;
    }
}
.StyleImageArea {
    padding-top: 24vw;
}
@media (min-width: 768px) {
    .StyleImageArea {
        padding: 10.546875vw 0 10.9375vw;
    }
}
.StyleImageArea__titleArea {
    margin-bottom: 20vw;
}
@media (min-width: 768px) {
    .StyleImageArea__titleArea {
        margin-bottom: 10.15625vw;
    }
}
.StyleImageArea__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
}
@media (min-width: 768px) {
    .StyleImageArea__title {
        font-size: 3rem;
    }
}
.StyleImageArea__main {
    padding: 0 10.6666666667vw 18.6666666667vw;
    position: relative;
    overflow: hidden;
}
@media (min-width: 768px) {
    .StyleImageArea__main {
        padding: 0 6.25vw 5.46875vw;
        width: 67.96875vw;
        margin: 0 auto;
    }
}
.StyleImageArea__main:before {
    content: "";
    display: inline-block;
    background: #f5f5f5;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 157.3333333333vw;
}
@media (min-width: 768px) {
    .StyleImageArea__main:before {
        height: 21.875vw;
    }
}
.StyleImageArea__list {
    position: relative;
}
@media (min-width: 768px) {
    .StyleImageArea__list {
        padding-left: 27.734375vw;
    }
}
.StyleImageArea__item.parts-itemBox .parts-itemBox__text {
    margin-top: 5.3333333333vw;
    font-size: 3.4666666667vw;
    text-align: left;
}
@media (min-width: 768px) {
    .StyleImageArea__item.parts-itemBox .parts-itemBox__text {
        font-size: 0.9375vw;
        margin-top: 1.171875vw;
    }
}
@media (min-width: 1280px) {
    .StyleImageArea__item.parts-itemBox .parts-itemBox__text {
        font-size: 14px;
    }
}
@media (min-width: 768px) {
    .StyleImageArea__item:first-child {
        width: 21.09375vw;
        position: absolute;
        left: 0;
        top: 0;
    }
}
.StyleImageArea__item:not(:first-child) .parts-itemBox__link {
    display: flex;
    -ms-flex-wrap: wrap;
    align-items: center;
}
.StyleImageArea__item:not(:first-child) .parts-itemBox__imgWrapper {
    min-width: 34.6666666667vw;
    max-width: 34.6666666667vw;
    margin-right: 4vw;
}
@media (min-width: 768px) {
    .StyleImageArea__item:not(:first-child) .parts-itemBox__imgWrapper {
        min-width: 11.328125vw;
        max-width: 11.328125vw;
        margin-right: 1.953125vw;
    }
}
.StyleImageArea__item:not(:first-child) .parts-itemBox__text {
    margin-top: 0;
}
.StyleImageArea__item:not(:last-child) {
    margin-bottom: 8vw;
}
@media (min-width: 768px) {
    .StyleImageArea__item:not(:last-child) {
        margin-bottom: 3.125vw;
    }
}

.RecommendArea {
    padding-top: 20vw;
}
.RecommendArea .RecommendArea__title {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .RecommendArea .RecommendArea__title {
        font-size: 3rem;
    }
}
.RecommendArea .RecommendArea__recommend {
    width: 80vw;
    margin: 0 auto;
}
.RecommendArea .RecommendArea__bnrArea {
    width: 80vw;
    margin: -5vw auto 0;
}
.RecommendArea .RecommendArea__bnr {
    display: block;
    width: 100%;
    margin-bottom: 1vw;
}
.RecommendArea .RecommendArea__bnr:last-child {
    margin-bottom: 12vw;
}
.RecommendArea .RecommendArea__bnr img {
    display: block;
    width: 100%;
}

@media (min-width: 768px) {
    .RecommendArea {
        padding: 10vw 5vw;
    }
    .RecommendArea .RecommendArea__recommend {
        width: 100%;
        max-width: 900px;
        margin: 0 auto;
    }
    .RecommendArea .RecommendArea__bnrArea {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: flex-start;
        align-items: flex-start;
        max-width: 816px;
        margin: -40px auto 0;
    }
    .RecommendArea .RecommendArea__bnr {
        width: calc(50% - 8px);
        margin-bottom: 16px;
    }
}
@media (min-width: 768px) and (min-width: 768px) {
    .RecommendArea .RecommendArea__bnr {
        transition: opacity 0.3s;
    }
    .RecommendArea .RecommendArea__bnr:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
@media (min-width: 768px) {
    .RecommendArea .RecommendArea__bnr:nth-of-type(even) {
        margin-left: 16px;
    }
}
@media (min-width: 768px) {
    .RecommendArea .RecommendArea__bnr:last-child {
        margin-bottom: 60px;
    }
}
@media (min-width: 1400px) {
    .RecommendArea {
        padding: 140px 0 0;
    }
}
.Reccomend .Recommend__list {
    display: flex;
    flex-wrap: wrap;
}
.Reccomend .Reccomend__item {
    width: 45%;
    margin-right: 10%;
    margin-bottom: 10%;
}
.Reccomend .Reccomend__item:nth-of-type(even) {
    margin-right: 0;
}

@media (min-width: 768px) {
    .Reccomend .Reccomend__item {
        width: 18%;
        margin-right: 9.3%;
        margin-bottom: 0;
    }
    .Reccomend .Reccomend__item:nth-of-type(even) {
        margin-right: 9.3%;
    }
    .Reccomend .Reccomend__item:last-child {
        margin-right: 0;
    }
    .Reccomend .Recommend__list {
        justify-content: center;
    }
    .Reccomend.-threeOrMore .Reccomend__item:nth-of-type(4n) {
        margin-right: 0;
    }
}
.productFooterArea .productFooterArea__linkBtn.parts-btn-01 {
    width: 40vw;
}

@media (min-width: 768px) {
    .productFooterArea .productFooterArea__btnArea {
        margin-top: 30px;
    }
    .productFooterArea .productFooterArea__linkBtn.parts-btn-01 {
        width: 200px;
    }
}

/*PCの場合*/
.View_PcOnly {
    display: block !important;
}

.View_SpOnly {
    display: none !important;
}

@media screen and (max-width: 768px) {
    /*タブレット、スマホの場合*/
    .View_PcOnly {
        display: none !important;
    }

    .View_SpOnly {
        display: block !important;
    }
}

/*PCの場合*/
.View_PcOnly {
    display: block !important;
}

.View_SpOnly {
    display: none !important;
}

@media screen and (max-width: 768px) {
    /*タブレット、スマホの場合*/
    .View_PcOnly {
        display: none !important;
    }

    .View_SpOnly {
        display: block !important;
    }
}
/* new cv btn */
.Product_cvBtns {
    border: 1px solid #707070;
    border-radius: 100px;
    position: relative;
}
.Product_cvBtns:not(:last-of-type) {
    margin-bottom: 7px;
}
.Product_cvBtns a {
    display: block;
    height: auto;
    padding: 11px 0;
    line-height: 1;
}
.Product_cvBtns .parts-btn-cv__cartIco {
    display: block;
    width: 15px;
    height: 15px;
    position: absolute;
    top: 50%;
    left: 25px;
    transform: translateY(-50%) translateX(0%);
    -webkit-transform: translateY(-50%) translateX(0%);
}
.Product_cvBtns .parts-btn-cv__cartIco img {
    vertical-align: super;
}
.Product_cvBtns .parts-btn-cv__text {
    font-size: 13px;
    padding-left: 50px;
    line-height: 2;
}
.Product_cvBtns .icon-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
    width: 6px;
}
.Product_cvBtns .icon-arrow:after {
    border-bottom: 1px solid #707070;
    border-right: 1px solid #707070;
}

/* GOOD DESIGN AWARD Area */
.Gd-TextBox {
    display: block;
    margin: 0 auto;
    padding: 120px 0 60px 0;
    width: 620px;
}
.Gd-TextBox img {
    display: block;
    margin: 0 auto;
    padding: 0 0 30px 0;
    width: 70%;
}
@media screen and (max-width: 768px) {
    .Gd-TextBox {
        width: 100%;
        padding: 10% 10% 30% 10%;
    }
    .Gd-TextBox img {
        width: 100%;
        padding-bottom: 1rem;
    }
}
.Gd-TextBox a {
    display: flex;
    align-items: center;
    justify-content: center;
}
.Gd-TextBox a span {
    display: block;
}

/*------------------------------------------------------------
TOPICS INDEX
------------------------------------------------------------*/
.topics-index img {
    width: 100%;
}
.topics-index__header {
    padding: 5.3333333333vw 10.6666666667vw;
    position: relative;
    margin-bottom: 10.6666666667vw;
}
.topics-index__header__bg {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    z-index: -1;
    width: 100%;
    height: 53.3333333333vw;
    background: #f5f5f5;
}
.topics-index__header__ttl {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    text-align: center;
    font-size: 4rem;
    margin-bottom: 13.3333333333vw;
}
@media (min-width: 768px) {
    .topics-index__header__ttl {
        font-size: 3rem;
    }
}
.topics-index__img {
    position: relative;
    margin-bottom: 1.3333333333vw;
    font-size: 2rem;
    overflow: hidden;
}
.topics-index__img img {
    transition: transform 2s;
}
@media (min-width: 768px) {
    .topics-index__img:hover img {
        transform: scale(1.1);
    }
}
.topics-index__date {
    display: block;
    margin-bottom: 1.3333333333vw;
    font-size: 2rem;
    color: #999;
}
.topics-index__wrap {
    display: block;
}
@media (min-width: 768px) {
    .topics-index__wrap {
        transition: opacity 0.3s;
    }
    .topics-index__wrap:hover {
        cursor: pointer;
        opacity: 0.8;
    }
}
.topics-index__list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 89.3333333333vw;
    margin: 0 auto;
}
.topics-index__list__single {
    width: 42.6666666667vw;
    margin-bottom: 10.6666666667vw;
}
.topics-index__paging {
    text-align: center;
}
.topics-index__pagenation {
    width: 88%;
    margin: 8vw auto 0;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .topics-index__header {
        width: 100%;
        padding: 0 0 80px;
        position: relative;
        margin-bottom: 90px;
    }
    .topics-index__header__bg {
        height: 295px;
    }
    .topics-index__header__ttl {
        margin: 0;
        padding: 0 0 150px;
    }
    .topics-index__header .topics-index__header__wrap {
        max-width: 1040px;
        width: 90%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
    }
    .topics-index__header .topics-index__header__wrap .topics-index__img {
        width: 50%;
        margin-bottom: 0;
    }
    .topics-index__header .topics-index__header__wrap .topics-index__txt {
        width: 48%;
        font-size: 1.4rem;
    }
    .topics-index__img {
        margin-bottom: 15px;
    }
    .topics-index__date {
        font-size: 1.4rem;
        display: block;
        margin-bottom: 10px;
    }
    .topics-index__list {
        font-size: 1.4rem;
        max-width: 1040px;
        width: 90%;
        margin: 0 auto;
        justify-content: flex-start;
    }
    .topics-index__list__single {
        width: 30%;
        margin-bottom: 5%;
        margin-right: 5%;
    }
    .topics-index__list__single:nth-of-type(3n) {
        margin-right: 0;
    }
    .topics-index__pagenation {
        width: 411px;
        margin: 80px auto 0;
    }
}
/*------------------------------------------------------------
TOPICS DETAIL
------------------------------------------------------------*/
.topics-detail img {
    width: 100%;
}
.topics-detail__h1 {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    margin-bottom: 5.3333333333vw;
}
@media (min-width: 768px) {
    .topics-detail__h1 {
        font-size: 3rem;
    }
}
.topics-detail__header {
    background: #f5f5f5;
    padding: 12vw 10.6666666667vw 41.3333333333vw;
}
.topics-detail__date {
    display: block;
    margin-bottom: 2.6666666667vw;
}
.topics-detail__ttl {
    font-size: 4rem;
    margin-bottom: 2.6666666667vw;
}
.topics-detail__category {
    background: #fff;
    font-weight: 400;
    padding: 1%;
}
.topics-detail__article {
    margin-top: -36vw;
    line-height: 2;
    font-size: 2.6rem;
}
.topics-detail__article figure {
    padding: 0 10.6666666667vw;
    margin-bottom: 2.6666666667vw;
}
.topics-detail__article h2,
.topics-detail__article h3,
.topics-detail__article h4,
.topics-detail__article h5,
.topics-detail__article h6 {
    font-size: 3rem;
    font-weight: 300;
    padding: 0 10.6666666667vw;
    margin-bottom: 3%;
}
.topics-detail__article p {
    padding: 0 10.6666666667vw;
    margin-bottom: 5%;
}
.topics-detail__article .youtube {
    padding: 0 10.6666666667vw;
    height: auto;
    margin-bottom: 50px;
}
.topics-detail__article .youtube__inner {
    padding: 0 0 56.25%;
    position: relative;
    width: 100%;
    height: 0;
    overflow: hidden;
}
.topics-detail__article .youtube__inner iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.topics-detail__article__grey {
    background: #f5f5f5;
    padding: 5%;
}
.topics-detail__article .movie {
    position: relative;
    width: 79.2vw;
    margin: 0 auto 5%;
}
.topics-detail__article .movie:before {
    content: "";
    display: block;
    padding-top: 56.26%;
}
.topics-detail__article .movie iframe {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
}
.topics-detail__article .moreBtn {
    width: 40vw;
    margin: 16vw auto 0;
}
.topics-detail__article .moreBtn span {
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif !important;
}
.topics-detail__btn {
    width: 26.6666666667vw;
    margin: 13.3333333333vw auto 0;
}
.topics-detail__nav {
    width: 78.6666666667vw;
    margin: 20vw auto 0;
}
.topics-detail__pdfLink {
    position: relative;
    padding-right: 5rem;
    display: inline-block;
}
.topics-detail__pdfLink:before {
    content: "";
    display: inline-block;
    width: 5.1rem;
    height: 5.6rem;
    background: url(../img/topics/pdfmark.svg) no-repeat;
    background-size: cover;
    position: absolute;
    right: 0;
    top: -0.4rem;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .topics-detail {
        padding-top: 0;
    }
    .topics-detail__h1 {
        margin-bottom: 50px;
    }
    .topics-detail__header {
        padding: 50px 0 260px;
        box-sizing: border-box;
    }
    .topics-detail__header__inner {
        width: 650px;
        margin: 0 auto;
    }
    .topics-detail__date {
        margin: 0 auto 10px;
        font-size: 1.2rem;
    }
    .topics-detail__ttl {
        margin: 0 auto 10px;
        font-size: 2.4rem;
    }
    .topics-detail__category {
        font-size: 1.2rem;
    }
    .topics-detail__article {
        margin: -220px auto 0;
        line-height: 2;
        font-size: 1.4rem;
        width: 650px;
    }
    .topics-detail__article img {
        max-width: 100%;
        width: auto;
    }
    .topics-detail__article h2,
    .topics-detail__article h3,
    .topics-detail__article h4,
    .topics-detail__article h5,
    .topics-detail__article h6 {
        font-size: 2rem;
        font-weight: 300;
        padding: 0;
        margin-bottom: 30px;
    }
    .topics-detail__article figure {
        padding: 0;
        margin-bottom: 100px;
    }
    .topics-detail__article p {
        padding: 0;
        margin-bottom: 100px;
    }
    .topics-detail__article .youtube {
        padding: 0;
    }
    .topics-detail__article p img {
        max-width: 60%;
        margin: 0 auto;
        display: block;
    }
    .topics-detail__article__grey {
        background: #f5f5f5;
        padding: 5%;
    }
    .topics-detail__article .movie {
        width: 100%;
        margin-bottom: 100px;
    }
    .topics-detail__article .moreBtn {
        width: 150px;
        height: 50px;
        margin: 20px auto 0 0;
    }
    .topics-detail__btn {
        max-width: 150px;
        width: 30%;
        margin: 160px auto 0;
    }
    .topics-detail__btn a {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        padding: 15px 0;
        align-items: center;
    }
    .topics-detail__nav {
        width: 430px;
        margin: 80px auto 0;
    }
    .topics-detail__pdfLink {
        padding-right: 3rem;
    }
    .topics-detail__pdfLink:before {
        width: 2.3rem;
        height: 2.6rem;
        top: -0.3rem;
    }
}
/*追加分*/
h3.topics-h3 {
    margin-top: 3em;
    font-size: 3rem !important;
    position: relative;
    display: inline-block;
}

h3.topics-h3:after {
    content: " ";
    position: absolute;
    top: 50%;
    display: inline-block;
    width: 45px;
    height: 1px;
    background-color: #000;
}

h3.topics-h3:after {
    right: -2em;
}

h4.topics-h4 {
    margin-top: 3em;
}

ul.topics-ul {
    margin: 2em 0;
    padding: 0;
}

@media screen and (max-width: 480px) {
    ul.topics-ul {
        padding: 0 5%;
    }
}
ul.topics-ul li {
    position: relative;
    padding-left: 1em;
}

ul.topics-ul li::after {
    display: block;
    content: "";
    position: absolute;
    top: 1em;
    left: 0;
    width: 8px;
    height: 1px;
    background-color: #666;
}

ul.topics-ul ol {
    position: relative;
    padding-left: 1em;
    padding-right: 5%;
}

ul.topics-ul ol::after {
    display: block;
    content: "";
    position: absolute;
    top: 0.8em;
    left: 0;
    width: 8px;
    height: 3px;
    border-left: 2px solid #222;
    border-bottom: 2px solid #222;
    transform: rotate(-45deg);
}

p.topics-link {
    display: block;
    width: 43.33%;
}

em.topics-em {
    font-style: normal;
    font-size: 11px;
}

.topics-youtube {
    position: relative;
    width: 90%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 50px;
}

.topics-youtube iframe {
    width: 100% !important;
    height: 100% !important;
    position: absolute;
    top: 0;
    left: 0;
}

.topics-col {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: stretch;
    align-content: stretch;
    width: auto;
    margin-bottom: 2em;
}

.topics-col-1 {
    width: 100%;
}

.topics-col-2 {
    width: -webkit-calc(100% / 2.1);
    width: 47.619047619%;
}

.topics-col-3 {
    width: 33.3333333333%;
}

.col-4 {
    width: 25%;
}

@media screen and (max-width: 480px) {
    .topics-col-1,
    .topics-col-2,
    .topics-col-3,
    .topics-col-4 {
        width: -webkit-calc(100% - 10%);
        width: 90%;
    }
}
/*------------------------------------------------------------
TOPICS INDEX
------------------------------------------------------------*/
.column-index img {
    width: 100%;
}
.column-index__header {
    margin-bottom: 26.6666666667vw;
}
.column-index__header .ChannelArea {
    position: relative;
}
.column-index__header .ChannelArea .ChannelArea__title {
    right: 9.3333333333vw;
}
.column-index__header__bg {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    z-index: -1;
    width: 50vw;
    height: 125.3333333333vw;
    background: #f5f5f5;
}
.column-index__header__ttl {
    text-align: center;
    font-size: 4rem;
    margin-bottom: 13.3333333333vw;
}
.column-index__img {
    position: relative;
    width: 75.4666666667vw;
    margin-bottom: 15.3333333333vw;
    font-size: 2rem;
}
.column-index__txt {
    width: 78.6666666667vw;
    margin: 0 auto;
}
.column-index__txt span {
    font-size: 1.8rem;
    color: #999;
    display: block;
    margin-bottom: 5.3333333333vw;
}
.column-index__txt h2 {
    font-size: 3.2rem;
    font-weight: 500;
    margin-bottom: 5.3333333333vw;
}
.column-index__txt h2:after {
    content: "";
    width: 30px;
    background: #000;
    height: 1px;
    display: block;
    margin-top: 5.3333333333vw;
}
.column-index__txt p {
    font-size: 2.6rem;
    line-height: 2.2;
    margin-bottom: 4vw;
}
.column-index__date {
    display: block;
    margin-bottom: 1.3333333333vw;
    font-size: 2rem;
}
.column-index__wrap {
    display: block;
}
.column-index__list {
    margin: 0 auto;
}
.column-index__list__single {
    width: 100%;
    margin-bottom: 26.6666666667vw;
}
.column-index__list__single:nth-of-type(2n) .column-index__list__image {
    position: relative;
}
.column-index__list__single:nth-of-type(2n) .column-index__list__image img {
    margin-left: auto;
}
.column-index__list__single:nth-of-type(2n) .column-index__list__image span {
    width: 71.3333333333vw;
    display: block;
    margin-left: auto;
    padding: 0;
}
.column-index__list__single:nth-of-type(2n) .column-index__list__image__bg {
    bottom: 0;
    left: auto;
    right: 0;
}
.column-index__list__image {
    position: relative;
    padding-bottom: 5.3333333333vw;
    margin-bottom: 5.3333333333vw;
}
.column-index__list__image img {
    width: 71.3333333333vw;
    display: block;
    margin-bottom: 2.6666666667vw;
}
.column-index__list__image span {
    padding: 0 5.3333333333vw;
    font-size: 1.8rem;
}
.column-index__list__image__bg {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    z-index: -1;
    width: 78.6666666667vw;
    height: 28vw;
    background: #f5f5f5;
}
.column-index h2:before {
    content: "";
    width: 30px;
    background: #000;
    height: 1px;
    display: block;
    margin-bottom: 5.3333333333vw;
}
.column-index h2:after {
    content: none;
}
.column-index__paging {
    text-align: center;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .column-index {
        padding-top: 100px;
    }
    .column-index__header {
        display: flex;
        width: 100%;
        padding: 0 0 80px;
        margin: 0 auto 150px;
    }
    .column-index__header__inner {
        position: relative;
        margin: 0 auto;
    }
    .column-index__header .ChannelArea {
        position: static;
        margin-bottom: 0;
    }
    .column-index__header .ChannelArea .ChannelArea__title {
        top: 130px;
        right: -40px;
    }
    .column-index__header__bg {
        height: 700px;
        width: calc(50% - 200px);
        position: absolute;
        top: 0;
        right: 0;
    }
    .column-index__header__ttl {
        margin: 0;
        padding: 150px 0;
        font-size: 2.5rem;
    }
    .column-index__header .column-index__header__wrap {
        max-width: 900px;
        width: 90%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: flex-end;
        flex-flow: row-reverse;
    }
    .column-index__header .column-index__header__wrap .column-index__img {
        width: 50%;
        margin-bottom: 0;
    }
    .column-index__header .column-index__header__wrap .column-index__txt {
        width: 40%;
        font-size: 1.4rem;
    }
    .column-index__header .column-index__header__wrap .column-index__txt p {
        margin-bottom: 30px;
    }
    .column-index__header .column-index__header__wrap .column-index__date {
        font-size: 1rem;
    }
    .column-index__img {
        margin-bottom: 15px;
        width: 50%;
    }
    .column-index__txt {
        width: 50%;
    }
    .column-index__txt span {
        font-size: 1.2rem;
        margin-bottom: 30px;
    }
    .column-index__txt h2 {
        font-size: 2.4rem;
        margin-bottom: 30px;
    }
    .column-index__txt h2:before {
        margin-bottom: 30px;
    }
    .column-index__txt p {
        font-size: 1.4rem;
    }
    .column-index__date {
        font-size: 1.4rem;
        display: block;
        margin-bottom: 10px;
    }
    .column-index__list {
        font-size: 1.4rem;
        max-width: 1040px;
        width: 90%;
        margin: 0 auto;
    }
    .column-index__list__single {
        width: 100%;
        margin-bottom: 90px;
    }
    .column-index__list__single .column-index__txt {
        width: 350px;
        margin: 0 50px;
    }
    .column-index__list__single .column-index__txt h2 {
        font-size: 2rem;
    }
    .column-index__list__single:nth-of-type(2n) .column-index__wrap {
        flex-flow: row-reverse;
    }
    .column-index__list__single:nth-of-type(2n) .column-index__list__image {
        position: relative;
    }
    .column-index__list__single:nth-of-type(2n) .column-index__list__image img {
        margin-left: auto;
    }
    .column-index__list__single:nth-of-type(2n)
        .column-index__list__image
        span {
        width: 250px;
        display: block;
        margin: 10px auto 0;
    }
    .column-index__list__single:nth-of-type(2n) .column-index__list__image__bg {
        bottom: 50px;
    }
    .column-index__wrap {
        display: flex;
    }
    .column-index__list__image {
        width: 340px;
    }
    .column-index__list__image img {
        width: 250px;
        margin: 0 auto;
    }
    .column-index__list__image span {
        width: 500px;
        display: block;
        margin-left: auto;
        padding: 10px 0 0 50px;
        font-size: 1rem;
    }
    .column-index__list__image__bg {
        width: 350px;
        height: 100px;
        bottom: 50px;
        left: auto;
        right: 0;
    }
}
.column-list .column-list__header {
    width: 80%;
    margin: 0 auto;
    padding-bottom: 15vw;
    border-bottom: 1px solid #e4e4e4;
}
.column-list .column-list__categoryNav {
    width: 80%;
    margin: 0 auto;
}
.column-list
    .column-list__categoryNav
    .CategoryNav-02__parentBtn
    .parts-btn-01__text {
    width: 34vw;
}
.column-list .column-list__titleArea {
    margin-bottom: 15vw;
}
.column-list .column-list__main {
    padding-top: 15vw;
}
.column-list .column-list__mainTitle {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .column-list .column-list__mainTitle {
        font-size: 3rem;
    }
}
.column-list .column-list__subTitle {
    display: block;
    text-align: center;
    letter-spacing: 0.2em;
    margin-top: 1vw;
}
.column-list .column-list__mainView {
    margin-bottom: 15vw;
}
.column-list .column-list__articleItem {
    margin-bottom: 15vw;
}
.column-list .column-list__articleItem:nth-of-type(odd) .ArticleBox__imgArea {
    margin: 0 0 0 auto;
}
.column-list .column-list__pagenation {
    width: 90%;
    margin: 8vw auto 0;
}
.column-list .colum-list__bottom {
    width: 90%;
    margin: 8vw auto 0;
    padding-top: 15vw;
    border-top: 1px solid #e4e4e4;
}
.column-list .colum-list__sectionTitle {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    margin-bottom: 5vw;
}
@media (min-width: 768px) {
    .column-list .colum-list__sectionTitle {
        font-size: 3rem;
    }
}

@media (min-width: 768px) {
    .column-list {
        padding-top: 0px;
    }
    .column-list .column-list__header {
        width: 100%;
        max-width: 1000px;
        padding-bottom: 40px;
    }
    .column-list .column-list__categoryNav {
        width: 100%;
        margin-bottom: 60px;
    }
    .column-list .column-list__categoryNav .CategoryNav-02__childItem {
        width: auto;
    }
    .column-list .column-list__categoryNav .CategoryNav-02__childItem:before {
        content: none;
    }
    .column-list .column-list__categoryNav .CategoryNav-02__childBtn {
        height: auto;
        padding: 5px 20px;
    }
    .column-list .column-list__categoryNav .CategoryNav-02__children {
        top: 100%;
        padding-top: 35px;
    }
    .column-list .column-list__subTitle {
        font-size: 1.2rem;
        margin-top: 10px;
    }
    .column-list .column-list__mainView {
        margin-bottom: 200px;
    }
    .column-list .column-list__main {
        padding-top: 140px;
    }
    .column-list .column-list__articleArea {
        width: 100%;
        max-width: 1000px;
        padding: 0 75px;
        margin: 0 auto;
        box-sizing: border-box;
    }
    .column-list .column-list__titleArea {
        margin-bottom: 80px;
    }
    .column-list .column-list__articleList {
        display: flex;
        flex-wrap: wrap;
    }
    .column-list .column-list__articleItem {
        width: 25%;
        margin: 0 12.5% 60px 0;
    }
    .column-list .column-list__articleItem:nth-of-type(3n) {
        margin-right: 0;
    }
    .column-list .column-list__pagenation {
        width: 411px;
        margin: 50px auto 0;
    }
    .column-list .colum-list__bottom {
        width: 100%;
        max-width: 1000px;
        margin: 86px auto 0;
        padding-top: 88px;
    }
    .column-list .colum-list__sectionTitle {
        margin-bottom: 20px;
        font-size: 2.6rem;
    }
}
/*------------------------------------------------------------
[NEW] COLUMN DETAIL
------------------------------------------------------------*/
.product-links:not(:last-of-type) {
    margin-bottom: 100px;
}

.product-transition__flex p {
    margin-bottom: 0 !important;
    line-height: 1.5 !important;
}
@media (min-width: 768px) {
    .product-transition__flex {
        display: flex;
        align-items: center;
        align-content: center;
    }
}
.product-transition__flex-img {
    margin-bottom: calc(20 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-transition__flex-img {
        margin-bottom: 0;
        max-width: 300px;
        min-width: 300px;
        margin-right: 45px;
    }
}
@media (min-width: 768px) {
    .product-transition__flex-info {
        width: 100%;
    }
}

.product-transition__flex-infoName {
    font-weight: bold;
    letter-spacing: 1px;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: calc(18 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-transition__flex-infoName {
        font-size: 18px;
    }
}
.product-transition__flex-infoSize {
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: calc(14 / 390 * 100vw);
    margin: calc(5 / 390 * 100vw) 0 0 !important;
}
@media (min-width: 768px) {
    .product-transition__flex-infoSize {
        font-size: 14px;
        margin: 5px 0 0 !important;
    }
}
.product-transition__flex-infoBtn {
    margin-top: calc(15 / 390 * 100vw);
    position: relative;
    background: #000000;
    text-align: center;
    color: #fff;
    display: block;
    border-radius: 100px;
    padding: 17.5px;
}
@media (min-width: 768px) {
    .product-transition__flex-infoBtn {
        margin-top: 15px;
        transition: 0.3s;
    }
    .product-transition__flex-infoBtn:hover {
        opacity: 0.7;
    }
}
.product-transition__flex-infoBtn__txt {
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: calc(17 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-transition__flex-infoBtn__txt {
        font-size: 17px;
    }
}
.product-transition__flex-infoBtn__arrow {
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    width: 7px;
}
.product-transition__flex-infoBtn__arrow:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.product-transition__flex-infoBtn__arrow:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
}

.product-buy__flex p {
    margin-bottom: 0 !important;
    line-height: 1.5 !important;
}
@media (min-width: 768px) {
    .product-buy__flex {
        display: flex;
        align-items: center;
        align-content: center;
    }
}
.product-buy__flex-img {
    margin-bottom: calc(20 / 390 * 100vw);
    padding: 0 calc(28 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-buy__flex-img {
        margin-bottom: 0;
        padding: 0;
        max-width: 200px;
        min-width: 200px;
        margin-right: 75px;
    }
}
@media (min-width: 768px) {
    .product-buy__flex-info {
        width: 100%;
    }
}

.product-buy__flex-infoName {
    font-weight: bold;
    letter-spacing: 1px;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: calc(18 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-buy__flex-infoName {
        font-size: 18px;
    }
}
.product-buy__flex-infoSize {
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: calc(14 / 390 * 100vw);
    margin: calc(5 / 390 * 100vw) 0 0 !important;
}
@media (min-width: 768px) {
    .product-buy__flex-infoSize {
        font-size: 14px;
        margin: 5px 0 0 !important;
    }
}
.product-buy__flex-infoPrice {
    margin: calc(10 / 390 * 100vw) 0 0 !important;
    font-size: calc(12 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-buy__flex-infoPrice {
        margin: 10px 0 0 !important;
        font-size: 12px;
    }
}
.product-buy__flex-infoPrice span {
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    font-size: calc(20 / 390 * 100vw);
}
@media (min-width: 768px) {
    .product-buy__flex-infoPrice span {
        font-size: 20px;
    }
}
.product-buy__flex-infoBtn {
    margin-top: calc(15 / 390 * 100vw);
    position: relative;
    background: #000000;
    text-align: center;
    color: #fff;
    display: block;
    border-radius: 100px;
    padding: 17.5px;
}
@media (min-width: 768px) {
    .product-buy__flex-infoBtn {
        margin-top: 15px;
        transition: 0.3s;
    }
    .product-buy__flex-infoBtn:hover {
        opacity: 0.7;
    }
}
.product-buy__flex-infoBtn__txt {
    display: inline-block;
    position: relative;
    padding-left: calc(27 / 390 * 100vw);
    font-size: calc(14 / 390 * 100vw);
    line-height: 2;
}
@media (min-width: 768px) {
    .product-buy__flex-infoBtn__txt {
        font-size: 17px;
        padding-left: 27px;
    }
}
.product-buy__flex-infoBtn__txt .parts-btn-cv__cartIco {
    width: calc(18 / 390 * 100vw);
    height: calc(18 / 390 * 100vw);
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
@media (min-width: 768px) {
    .product-buy__flex-infoBtn__txt .parts-btn-cv__cartIco {
        width: 18px;
        height: 18px;
    }
}
.product-buy__flex-infoBtn__txt .parts-btn-cv__cartIco img {
    vertical-align: super;
}
.product-buy__flex-infoBtn__arrow {
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    width: 7px;
}
.product-buy__flex-infoBtn__arrow:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.product-buy__flex-infoBtn__arrow:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
}

.product-buy__flex-info__caption {
    display: block;
    font-size: 11px;
    margin-top: 2vw;
}
@media (min-width: 768px) {
    .product-buy__flex-info__caption {
        font-size: 11px;
        margin-top: 10px;
    }
}

.product-buy--modal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: 0.6s;
}
.product-buy--modal:before {
    content: "";
    display: inline-block;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.25);
    -ms-filter: blur(6px);
    filter: blur(6px);
}
.product-buy--modal.modalOn {
    opacity: 1;
    pointer-events: auto;
    z-index: 9999;
}
.product-buy--modal__outer {
    position: relative;
    width: 100%;
    height: 100vh;
}
.product-buy--modal__closeArea {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.product-buy--modal__content {
    background: #fff;
    position: absolute;
    z-index: 2;
    max-width: 390px;
    width: 100%;
    bottom: -100%;
    right: 0;
    left: 0;
    margin: auto;
    border-radius: 10px 10px 0 0;
    transition: 0.4s;
}
@media screen and (min-width: 768px) {
    .product-buy--modal__content {
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit-transform: translateY(-50%) translateX(-50%);
        bottom: inherit;
        right: inherit;
        border-radius: 10px;
    }
}
.product-buy--modal.modalOn .product-buy--modal__content {
    bottom: 0;
}
@media screen and (min-width: 768px) {
    .product-buy--modal.modalOn .product-buy--modal__content {
        bottom: inherit;
    }
}
.product-buy--modal__inner {
    position: relative;
    padding: 60px 20px 100px;
}
.product-buy--modal__ttlArea {
    margin-bottom: 20px;
}
.product-buy--modal__ttl {
    display: block;
    font-size: 17px;
    letter-spacing: 0.2em;
}
.product-buy--modal__subTtl {
    display: block;
    font-size: 10px;
    letter-spacing: 0.2em;
    margin-top: 5px;
    color: #707070;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.product-buy--modal__price {
    font-size: 12px;
    margin-bottom: 25px !important;
}
.product-buy--modal__price span {
    display: inline-block;
    margin-right: 5px;
    font-size: 20px;
    letter-spacing: 0.1em;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.product-buy--modal__closeBtn {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 17px;
    height: 17px;
}
.product-buy--modal__closeBtn span {
    position: relative;
    display: block;
    width: 17px;
    height: 17px;
}
.product-buy--modal__closeBtn span:before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(45deg);
}
.product-buy--modal__closeBtn span:after {
    content: "";
    display: inline-block;
    width: 22px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(-45deg);
}

.product-buy--modal .CvBtns__cvBtnList {
    margin-bottom: 0 !important;
}
.product-buy--modal .Product_cvBtns {
    padding: 0 !important;
}
.product-buy--modal__ttlArea > p {
    margin-bottom: 0 !important;
}
/* ------------------------------------------------- */

.colmun_product {
    max-width: 100%;
    padding: 10px;
    margin: 40px;
    margin: 10px 0 30px;
    display: block;
    background-color: #f5f5f5 !important;
}
@media (min-width: 768px) {
    .colmun_product {
        /*pc*/
        margin: 50px 0;
        padding: 20px;
    }
}
.colmun_product-box {
    display: flex;
    align-items: center;
    align-content: center;
}
.colmun_product-box_img img {
    height: 55px;
    width: auto !important;
    padding-right: 10px;
    flex-grow: 1;
}
@media (min-width: 768px) {
    .colmun_product-box_img img {
        /*pc*/
        height: 120px;
        padding-right: 0;
    }
}
.colmun_product-box_link {
    flex-grow: 2;
    text-align: left;
    display: flex;
    text-align: left;
    align-content: center;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}
@media (min-width: 768px) {
    .colmun_product-box_link {
        /*pc*/
        text-align: center;
    }
}

.colmun_point {
    max-width: 100%;
    padding: 0;
}
.colmun_point dl {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-content: center;
    margin-bottom: 40px;
    height: 100px;
    border: 1px solid #ddd;
}
@media (min-width: 768px) {
    .colmun_point dl {
        /*pc*/
        margin-bottom: 50px;
        height: 160px;
    }
}
.colmun_point dl dt {
    width: 126px;
    height: 100px;
    overflow: hidden;
}
@media (min-width: 768px) {
    .colmun_point dl dt {
        /*pc*/
        width: 200px;
        height: 160px;
    }
}
.colmun_point dl dt img {
    display: block;
    width: 100%;
    height: 100px;
    object-fit: cover;
}
@media (min-width: 768px) {
    .colmun_point dl dt img {
        /*pc*/
        height: 160px;
    }
}
.colmun_point dl dd {
    flex-grow: 2;
    line-height: 1.3;
}
.colmun_point dl:last-child {
    margin-bottom: 80px !important;
}
@media (min-width: 768px) {
    .colmun_point dl:last-child {
        /*pc*/
        margin-bottom: 100px !important;
    }
}
@media (max-width: 767px) {
    .colmun_point .parts-btn-01 .parts-btn-01__text {
        width: 60%;
    }
}
.colmun_point h5 {
    font-size: 1.8rem;
    margin: 0px auto 10px;
    font-weight: 600;
}
@media (max-width: 767px) {
    .colmun_point h5 {
        font-size: 3rem;
        margin: 0 auto 1.4vw;
    }
}

.d-flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 -2% 60px 0;
}
@media (max-width: 767px) {
    .d-flex {
        margin: 0;
    }
}
.d-flex-col1 {
    width: 4.3%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col1 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col1.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col1.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col1.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs1 {
        width: 4.3%;
        margin: 0 2%;
    }
    .d-flex-col-xs1.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs1.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col2 {
    width: 12.6%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col2 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col2.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col2.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col2.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs2 {
        width: 12.6%;
        margin: 0 2%;
    }
    .d-flex-col-xs2.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs2.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col3 {
    width: 20.9%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col3 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col3.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col3.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col3.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs3 {
        width: 20.9%;
        margin: 0 2%;
    }
    .d-flex-col-xs3.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs3.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col4 {
    width: 29.2%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col4 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col4.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col4.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col4.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs4 {
        width: 29.2%;
        margin: 0 2%;
    }
    .d-flex-col-xs4.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs4.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col5 {
    width: 37.5%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col5 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col5.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col5.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col5.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs5 {
        width: 37.5%;
        margin: 0 2%;
    }
    .d-flex-col-xs5.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs5.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col6 {
    width: 45.8%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col6 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col6.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col6.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col6.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs6 {
        width: 45.8%;
        margin: 0 2%;
    }
    .d-flex-col-xs6.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs6.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col7 {
    width: 54.1%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col7 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col7.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col7.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col7.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs7 {
        width: 54.1%;
        margin: 0 2%;
    }
    .d-flex-col-xs7.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs7.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col8 {
    width: 62.4%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col8 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col8.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col8.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col8.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs8 {
        width: 62.4%;
        margin: 0 2%;
    }
    .d-flex-col-xs8.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs8.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col9 {
    width: 70.7%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col9 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col9.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col9.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col9.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs9 {
        width: 70.7%;
        margin: 0 2%;
    }
    .d-flex-col-xs9.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs9.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col10 {
    width: 79%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col10 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col10.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col10.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col10.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs10 {
        width: 79%;
        margin: 0 2%;
    }
    .d-flex-col-xs10.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs10.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col11 {
    width: 87.3%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col11 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col11.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col11.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col11.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs11 {
        width: 87.3%;
        margin: 0 2%;
    }
    .d-flex-col-xs11.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs11.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex-col12 {
    width: 95.6%;
    margin: 0 2%;
}
@media (max-width: 767px) {
    .d-flex-col12 {
        width: 100%;
        margin: 0;
        margin-bottom: 4%;
    }
}
.d-flex-col12.gutter1 {
    margin-right: 8.3%;
}
@media (min-width: 767px) {
    .d-flex-col12.gutter1 {
        margin-right: 0%;
    }
}
.d-flex-col12.gutter1:last-child {
    margin-right: 0;
}
@media (max-width: 767px) {
    .d-flex-col-xs12 {
        width: 95.6%;
        margin: 0 2%;
    }
    .d-flex-col-xs12.gutter1 {
        margin-right: 8.3%;
    }
    .d-flex-col-xs12.gutter1:last-child {
        margin-right: 0;
    }
}
@media (max-width: 767px) {
    .d-flex-order1 {
        order: 1;
    }
    .d-flex-order2 {
        order: 2;
    }
}
.d-flex.a-center {
    align-items: center;
}
.d-flex.a-start {
    align-items: flex-start;
}
.d-flex.a-end {
    align-items: flex-end;
}
.d-flex.j-content-st {
    justify-content: flex-start;
}
.d-flex.j-center {
    justify-content: center;
}
.d-flex.j-center > * {
    margin: 0 2px;
}

.set-list {
    background: #f5f5f5;
    padding: 40px 15px 40px;
    margin-bottom: 80px;
}
@media (min-width: 768px) {
    .set-list {
        /*pc*/
        padding: 40px 50px 40px;
        margin-bottom: 100px;
    }
}
.set-list ul {
    margin-bottom: 0 !important;
}
.set-list .flex-img {
    padding-bottom: 20px;
}
@media (min-width: 768px) {
    .set-list .flex-img {
        /*pc*/
        padding-bottom: 30px;
    }
}
.set-list p:last-child {
    margin-bottom: 20px !important;
}
@media (min-width: 768px) {
    .set-list p:last-child {
        /*pc*/
        margin-bottom: 30px !important;
    }
}

/*-----------table of contents--------*/
div#toc_container {
    position: relative;
    margin: -40px auto 80px auto;
    padding: 25px 20px 0 20px;
    border: solid 1px #ccc;
    width: auto;
    height: auto;
}
@media (min-width: 768px) {
    div#toc_container {
        /*pc*/
        margin: -100px auto 150px auto;
        padding: 35px 40px 5px 40px;
    }
}
div#toc_container p.toc_title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 16px;
    background: #fff;
    color: #666;
    font-weight: bold;
    text-transform: uppercase;
}
div#toc_container ul.toc_list {
    background-color: #fff !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}
div#toc_container ul.toc_list li {
    font-weight: 600;
    padding-bottom: 30px;
}
div#toc_container ul.toc_list ul {
    background-color: #fff !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
}
div#toc_container ul.toc_list ul li {
    background-color: #fff !important;
    padding: 0 !important;
    margin-bottom: 0 !important;
    text-indent: 1em;
    font-weight: 100 !important;
}
div#toc_container ul.toc_list ul li:before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-right: 4px;
    margin-left: 4px;
    border: transparent solid 3px;
    border-left-color: #666;
    vertical-align: middle;
}
@media (min-width: 768px) {
    div#toc_container ul.toc_list ul li:before {
        /*pc*/
        border: transparent solid 5px;
    }
}

.parts-btn-04 {
    font-size: 3vw;
    font-weight: 400;
}
.parts-btn-04 .parts-btn-04__text {
    display: inline-block;
    font-size: inherit;
    font-weight: inherit;
    line-height: 1.3;
    margin: 0 0.5em;
}
.parts-btn-04 .parts-btn-04__icon {
    display: inline-block;
    width: 0.4em;
    height: 0.4em;
}
.parts-btn-04 .parts-btn-04__imgIcon {
    position: relative;
    width: 3vw;
    margin: 0 5px;
}
.parts-btn-04 .parts-btn-04__imgIcon:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.parts-btn-04 .parts-btn-04__imgIcon img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
}
.parts-btn-04 .parts-btn-04__line {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    height: 1px;
    width: 100%;
    overflow: hidden;
}
.parts-btn-04 .parts-btn-04__line span {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #000;
    text-align: center;
}
.parts-btn-04.-alignLeft {
    justify-content: flex-start;
}
.parts-btn-04.-nega .parts-btn-04__text {
    color: #fff;
}
.parts-btn-04.-nega .parts-btn-04__line span {
    background: #fff;
}

@media (min-width: 768px) {
    .parts-btn-04 {
        height: 64px;
        font-size: 1.4rem;
        transition: opacity 0.3s;
    }
    .parts-btn-04 .parts-btn-04__text {
        font-size: 1.4rem;
    }
    .parts-btn-04 .parts-btn-04__icon {
        width: 5px;
        height: 5px;
        transition: transform 0.3s;
    }
    .parts-btn-04 .parts-btn-04__imgIcon {
        width: 20px;
    }
    .parts-btn-04:hover {
        opacity: 0.8;
        cursor: pointer !important;
    }
    .parts-btn-04:hover .parts-btn-04__line span {
        animation: btnAnimation 2s cubic-bezier(0.57, 0.01, 1, 1) infinite;
    }
    .parts-btn-04:hover .icon-arrow--right {
        transform: translateX(5px);
    }
    .parts-btn-04:hover .icon-arrow--left {
        transform: translateX(-5px);
    }
    .parts-btn-04:hover .icon-arrow--up {
        transform: translateY(-5px);
    }
    .parts-btn-04:hover .icon-arrow--down {
        transform: translateY(5px);
    }
}
@keyframes btnAnimation {
    0% {
        opacity: 1;
        left: 0%;
    }
    34% {
        opacity: 1;
        left: 100%;
    }
    35% {
        left: 100%;
        opacity: 0;
    }
    36% {
        opacity: 0;
        left: -100%;
    }
    37% {
        opacity: 1;
        left: -100%;
    }
    70% {
        left: 0%;
        opacity: 1;
    }
    100% {
        left: 0%;
        opacity: 1;
    }
}
/*----------------------------------
 スタイル調整用
---------------------------------*/
.t-indent-puls1 {
    text-indent: 1rem;
}
.t-indent-puls2 {
    text-indent: 2rem;
}
.t-indent-puls3 {
    text-indent: 3rem;
}
.t-indent-puls4 {
    text-indent: 4rem;
}
.t-indent-puls5 {
    text-indent: 5rem;
}
.t-indent-minus1 {
    text-indent: -1rem;
}
.t-indent-minus2 {
    text-indent: -2rem;
}
.t-indent-minus3 {
    text-indent: -3rem;
}
.t-indent-minus4 {
    text-indent: -4rem;
}
.t-indent-minus5 {
    text-indent: -5rem;
}

.caption {
    font-size: 11px;
}

@media (min-width: 768px) {
    /*pc*/
    br.pc-nobr {
        display: none;
    }
}
/*----------------------------------
 コラム内バナー
---------------------------------*/
.column-banner {
    width: 100%;
    text-align: center;
}
@media (min-width: 768px) {
    .column-banner img {
        max-width: 300px;
    }
}

/*------------------------------------------------------------
COLUMN DETAIL
------------------------------------------------------------*/
.column-detail img {
    width: 100%;
}
.column-detail__h1 {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
}
@media (min-width: 768px) {
    .column-detail__h1 {
        font-size: 3rem;
    }
}
.column-detail__header {
    padding: 0 calc(20 / 390 * 100vw);
    margin: 0 auto 40px;
    display: grid;
}
.column-detail__ttl {
    font-size: 18px;
    line-height: 2;
    margin-bottom: 15px;
    font-weight: 300;
}
.column-detail__category {
    padding-bottom: 20px;
    display: block;
    font-size: 10px;
    color: #707070;
}
.column-detail__category:after {
    content: "";
    height: 2px;
    background: #e4e4e4;
    width: 4vw;
    display: block;
    margin-top: 20px;
}
.column-detail__number {
    font-size: 10px;
}
.column-detail__main-img {
    position: relative;
}
.column-detail__main-img .pc {
    display: none;
}
.column-detail__main-img__img {
    display: block;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}
.column-detail__nav {
    width: 78.6666666667vw;
    margin: -55vw auto 20vw;
}
.column-detail__tagArea {
    width: 90%;
    margin: 10vw auto 0;
    padding-top: 15vw;
    border-top: 1px solid #e4e4e4;
}
.column-detail__sectionTitle {
    font-size: 3.5rem;
    letter-spacing: 2px;
    text-align: center;
    font-weight: 400;
    margin-bottom: 5vw;
}
@media (min-width: 768px) {
    .column-detail__sectionTitle {
        font-size: 3rem;
    }
}

.column-detail__update {
    padding: 0 calc(20 / 390 * 100vw);
    margin-bottom: 50px;
}
.column-detail__update__inner {
    position: relative;
    padding-left: calc(17 / 390 * 100vw);
}
.column-detail__update__icon {
    position: absolute;
    width: calc(12 / 390 * 100vw);
    height: calc(12 / 390 * 100vw);
    left: 0;
    top: calc(3 / 390 * 100vw);
}
.column-detail__update__icon img {
    width: 100%;
    height: auto;
    display: block;
}
.column-detail__update__icon time {
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    font-size: 10px;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .column-detail__header {
        width: 90%;
        max-width: 900px;
        margin: 0 auto 44px;
        display: flex;
        justify-content: space-between;
        align-items: stretch;
        padding: inherit;
    }
    .column-detail__header__inner {
        width: 35%;
        max-width: 300px;
        box-sizing: border-box;
        order: 1;
        border-top: 1px solid #707070;
        border-bottom: 1px solid #707070;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        margin: 0;
    }
    .column-detail__ttl {
        width: 100%;
        font-size: 2.4rem;
        letter-spacing: 5px;
        line-height: 2;
        margin-bottom: 40px;
    }
    .column-detail__category {
        width: 100%;
        padding-bottom: 40px;
        display: block;
        font-size: 1rem;
    }
    .column-detail__category:after {
        content: "";
        height: 2px;
        background: #e4e4e4;
        width: 30px;
        display: block;
        margin-top: 40px;
    }
    .column-detail__number {
        width: 100%;
        font-size: 1rem;
    }
    .column-detail__main-img {
        order: 2;
        width: 60%;
        max-width: 550px;
        position: relative;
        margin-bottom: 0;
    }
    .column-detail__main-img .pc {
        display: none;
    }
    .column-detail__main-img__img {
        display: block;
        width: 100%;
        max-width: 550px;
        margin: 0 auto;
        position: relative;
        z-index: 1;
    }
    .column-detail__nav {
        width: 430px;
        margin: -200px auto 100px;
    }
    .column-detail__tagArea {
        width: 100%;
        max-width: 1000px;
        margin: 140px auto 0;
        padding-top: 88px;
    }
    .column-detail__sectionTitle {
        margin-bottom: 20px;
    }
    .column-detail__tags {
        width: 90%;
        max-width: 900px;
        margin-bottom: 150px;
    }
    .column-detail__update {
        padding: 0 20px;
        margin-bottom: 50px;
        width: 90%;
        max-width: 900px;
        margin: 0 auto 100px;
    }
    .column-detail__update__inner {
        position: relative;
        padding-left: 17px;
        font-size: 11px;
    }
    .column-detail__update__icon {
        position: absolute;
        width: 12px;
        height: 12px;
        left: 0;
        top: 3px;
    }
    .column-detail__update__icon time {
        font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
        font-weight: 400;
        font-size: 10px;
    }
}

@media screen and (max-width: 767px) {
    .column-detail__header {
        grid-template-rows: auto auto;
        margin: 0 auto 10px;
    }

    .column-detail__main-img {
        grid-row: 2;
        height: calc(250 / 390 * 100vw);
        overflow: hidden;
        position: relative;
    }
    .column-detail__main-img__img {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit-transform: translateY(-50%) translateX(-50%);
        width: 100%;
    }

    .column-detail__header__inner {
        grid-row: 1;
        margin-bottom: 25px;
    }
}
/*============記事本文============*/
.column-detail {
    /*-------PC-------*/
}
.column-detail__article {
    margin: 0 auto;
    line-height: 2;
    font-size: 13px;
    font-weight: 300;
    padding: 0 calc(20 / 390 * 100vw) 80px;
    position: relative;
}
.column-detail__article figure {
    padding: 0 5%;
    margin-bottom: 2.6666666667vw;
}
.column-detail__article p {
    padding: 0;
    margin-bottom: 6.6666666667vw;
}
.column-detail__article__grey {
    background: #f5f5f5;
    padding: 5%;
}
.column-detail__article__section {
    margin: 0 auto 80px;
}
.column-detail__article__section h2 {
    font-size: 4.2rem;
    line-height: 1.6;
    margin: 0 auto 6.6666666667vw;
    font-weight: 300;
}
.column-detail__article__section h3 {
    font-size: 4rem;
    line-height: 1.6;
    margin: 0 auto 4vw;
    font-weight: 300;
}
.column-detail__article__section h4 {
    font-size: 3rem;
    line-height: 1.6;
    margin: 20px auto 2.6666666667vw;
    font-weight: 300;
}
.column-detail__article__section h5 {
    font-size: 3rem;
    margin: 0 auto 1.3333333333vw;
    font-weight: 300;
}
.column-detail__article__section ul {
    margin-bottom: 10px;
}
.column-detail__article__section ul li {
    padding: 0 0 2.6666666667vw;
}
.column-detail__article__section-end_block {
    margin-top: 25px;
    padding-top: 25px;
}
.column-detail__article:after {
    content: "";
    width: 6.6666666667vw;
    background: #999;
    height: 2px;
    display: block;
    margin: 0 auto;
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
}
.column-detail .youtube {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-bottom: 50px;
}
.column-detail .youtube iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.column-detail .flex-wrap {
    margin-bottom: 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.column-detail .flex-wrap .flex-img {
    width: 45%;
}
.column-detail .flex-wrap .flex-txt {
    width: 50%;
}
.column-detail .flex-wrap .flex-txt .column-detail__article__btn {
    width: 60%;
}
@media (min-width: 768px) {
    .column-detail .flex-wrap .flex-txt .column-detail__article__btn {
        width: 110px;
    }
}
.column-detail__shareBtn {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 13.3333333333vw 0;
    width: 89.3333333333vw;
    margin: 0 auto 53.3333333333vw;
}
.column-detail__shareBtn__ttl {
    padding-right: 4vw;
}
.column-detail__shareBtn__list {
    display: flex;
    justify-content: center;
    align-items: center;
}
.column-detail__shareBtn__list__li {
    padding: 0 2vw;
    width: 5.3333333333vw;
}
.column-detail .other-column {
    width: 90%;
    margin: 0 auto;
    padding-top: 15vw;
    border-top: 1px solid #e4e4e4;
}
.column-detail .other-column__ttl {
    text-align: center;
    font-size: 4rem;
    letter-spacing: 4px;
    margin-bottom: 5.3333333333vw;
}
.column-detail .other-column__ul {
    width: 78.6666666667vw;
    margin: 0 auto;
}
.column-detail .other-column__list {
    margin-bottom: 8vw;
}
.column-detail .other-column__list__ttl {
    font-size: 2.8rem;
    margin-bottom: 2.6666666667vw;
    font-weight: 300;
}
.column-detail .other-column__list__category {
    padding: 1.3333333333vw;
}
.column-detail .other-column__link {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.column-detail .other-column__img {
    width: 28vw;
}
.column-detail .other-column__txt {
    width: 45.3333333333vw;
}

/*-------PC-------*/
@media (min-width: 768px) {
    .column-detail {
        padding: 0;
        margin: 0;
    }
    .column-detail__article {
        width: 650px;
        margin: 0 auto;
        line-height: 2;
        font-size: 1.5rem;
        padding: inherit;
    }
    .column-detail__article figure {
        padding: 0 5%;
        margin-bottom: 2.6666666667vw;
    }
    .column-detail__article p {
        padding: 0;
        margin-bottom: 50px;
    }
    .column-detail__article .mb80 {
        margin-bottom: 80px;
    }
    .column-detail__article__grey {
        background: #f5f5f5;
        padding: 5%;
    }
    .column-detail__article__section {
        margin: 0 auto 200px;
    }
    .column-detail__article__section h2 {
        font-size: 2.8rem;
        margin: 0 auto 40px;
    }
    .column-detail__article__section h3 {
        font-size: 2.4rem;
        margin: 0 auto 30px;
    }
    .column-detail__article__section h3:after {
        content: "";
        width: 50px;
        background: #999;
        height: 2px;
        display: block;
        margin-top: 20px;
    }
    .column-detail__article__section h4 {
        font-size: 2rem;
        margin: 70px auto 20px;
    }
    .column-detail__article__section h5 {
        font-size: 1.8rem;
        margin: 0px auto 10px;
    }
    .column-detail__article__section ul {
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
    .column-detail__article__section ul li {
        padding: 0px 0 20px;
    }
    .column-detail__article__section-end_block {
        margin-top: 50px;
        padding-top: 50px;
    }
    .column-detail__article:after {
        content: "";
        width: 6.6666666667vw;
        background: #999;
        height: 2px;
        display: block;
        margin: 0 auto;
        position: relative;
    }
    .column-detail__shareBtn {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 100px 0;
        width: 290px;
        margin: 0 auto 200px;
    }
    .column-detail__shareBtn__ttl {
        padding-right: 0px;
        width: 100px;
        font-size: 1.4rem;
    }
    .column-detail__shareBtn__list {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .column-detail__shareBtn__list__li {
        padding: 0 15px;
        width: 30px;
    }
    .column-detail .other-column {
        width: 100%;
        max-width: 1000px;
        margin: 0 auto 60px;
        padding-top: 130px;
    }
    .column-detail .other-column__ttl {
        font-size: 3.2rem;
        margin-bottom: 110px;
    }
    .column-detail .other-column__ul {
        display: flex;
        justify-content: center;
        width: 900px;
        margin: 0 auto;
    }
    .column-detail .other-column__list {
        width: 190px;
        margin: 0 25px 0;
    }
    .column-detail .other-column__list:nth-last-of-type(1) {
        margin-right: 0;
    }
    .column-detail .other-column__list__ttl {
        width: 100%;
        font-size: 1.4rem;
        margin-bottom: 0px;
    }
    .column-detail .other-column__list__category {
        padding: 0;
        font-size: 1rem;
    }
    .column-detail .other-column__link {
        flex-wrap: wrap;
    }
    .column-detail .other-column__img {
        width: 100%;
        margin-bottom: 20px;
    }
    .column-detail .other-column__txt {
        width: 100%;
    }
}
/*-------PC-------*/
@media (min-width: 768px) {
    .column-detail__btn {
        max-width: 1000px;
        width: 90%;
        margin: 160px auto 0;
    }
    .column-detail__btn a {
        width: 100%;
        height: 100%;
        display: flex;
        justify-content: center;
        align-items: center;
    }
}
.column-detail .flex-wrap {
    margin-bottom: 50px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.column-detail .flex-wrap .flex-img {
    width: 45%;
}
.column-detail .flex-wrap .flex-txt {
    width: 50%;
}
.column-detail .flex-wrap .flex-txt .column-detail__article__btn {
    width: 60%;
}
.column-detail .flex-wrap .parts-btn-01 .parts-btn-01__text {
    display: inline-block;
    font-size: inherit;
    font-weight: inherit;
    margin: 0 !important;
}

@media (min-width: 768px) {
    .column-detail .flex-wrap .flex-txt .column-detail__article__btn {
        width: 110px;
    }
}
a.column_btn {
    font-size: 1.5rem;
    display: block;
    padding-top: 1.5em;
    padding-bottom: 2em;
    position: relative;
    display: inline-block;
    text-decoration: none;
}
a.column_btn::after {
    position: absolute;
    top: 50%;
    right: -0.5em;
    content: "";
    margin-top: -5px;
    width: 5px;
    height: 5px;
    border-right: 1px solid #000;
    border-top: 1px solid #000;
    display: inline-block;
    transform: rotate(45deg);
    transition: 0.5s all;
}
a.column_btn:hover::after {
    right: -0.8em;
}

@media screen and (min-width: 1021px) {
    a.column_btn span > br {
        display: none;
    }
}
/* コラム用flex-wrap */
.column-detail .flex-wrap-column {
    margin-bottom: 50px;
    display: flex;
    flex-direction: row;
}
.column-detail .flex-wrap-column .flex-img {
    padding-right: 10px;
}
.column-detail .flex-wrap-column .flex-txt {
    width: 50vw;
}

@media screen and (max-width: 768px) {
    .column-detail .flex-wrap-column {
        flex-direction: column;
    }
    .column-detail .flex-wrap-column .flex-txt {
        width: 100%;
    }
    .column-detail .flex-wrap-column .flex-img {
        padding-bottom: 10px;
    }
}
/* コラム用flex-wrap*/

/* コラム用テーブル */
@media screen and (max-width: 651px) {
    .column-tableBox {
        overflow-x: scroll;
    }
}

/* テーブルスクロールあり */
.column-tableBox {
    margin-bottom: 30px;
}
.column-table {
    min-width: 650px;
    width: 100%;
    table-layout: fixed;
    border-collapse: collapse;
    border: 1px solid #999;
}
.column-table .txtCenter {
    text-align: center;
}
.column-table th {
    padding: 10px;
    text-align: center;
    font-weight: bold;
    color: #333;
    font-size: 15px;
}
.column-table td {
    background: #fff;
    padding: 15px 5px;
    font-size: 15px;
    text-align: center;
}
.column-table tr:first-child th {
    background: #999999;
    color: #fff;
}
.column-table tr:first-child th:not(:last-child) {
    border-right: 1px solid #fff;
}
.column-table tr:not(:first-child) th,
.column-table tr:not(:first-child) td:not(:last-child) {
    border-right: 1px solid #999;
}
.column-table tr:nth-child(even) th,
.column-table tr:nth-child(even) td {
    background: #f4f4f4;
}

/* テーブルスクロールなし */
.column-table02 {
    table-layout: auto;
    min-width: inherit;
}
@media screen and (max-width: 768px) {
    .column-table th,
    .column-table td {
        font-size: 13px;
        min-width: 85px;
    }
}

/* コラム用リンクテキスト */
.column-detail__article__section .column-detail__txtLink {
    position: relative;
    display: inline-block;
    color: #8e8e8e;
    text-decoration: underline;
    font-size: 10px;
    line-height: 2.2;
    margin-top: 20px;
}
/* .column-detail__article__section .column-detail__txtLink:before {
  content: "";
    display: block;
    width: 4%;
    height: 30%;
    position: absolute;
    top: 50%;
    right: 0;
    border-bottom: 1px solid #296D98;
    border-right: 1px solid #296D98;
    transform: translate(-50%, -50%) rotate(-45deg);
    background-size: cover;
} */

/* コラム用強調テキスト */
.column-detail__article__section strong {
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 400;
}

/* コラム用番号なしリスト */
.column-detail__article__section .column-list li {
    position: relative;
    padding: 0 0 5px 18px;
    font-size: 13px;
}
.column-detail__article__section .column-list li:before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 6px;
    height: 6px;
    background: #999999;
    top: 10px;
    left: 0;
    border-radius: 50px;
}
@media screen and (min-width: 768px) {
    .column-detail__article__section .column-list li {
        font-size: 15px;
        padding: 0 0 5px 23px;
    }
    .column-detail__article__section .column-list li:before {
        top: 13px;
        left: 0;
    }
}

/* コラム用番号ありリスト */
.column-detail__article__section .column-listNum {
    counter-reset: item;
    counter-reset: item 0; /*「2」からカウントし始める*/
}
.column-detail__article__section .column-listNum li {
    position: relative;
    padding: 0 0 5px 18px;
    font-size: 13px;
}
.column-detail__article__section .column-listNum li:before {
    content: counter(item) ".";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
    counter-increment: item;
    counter-increment: item 1;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 600;
    font-size: 14px;
}
@media screen and (min-width: 768px) {
    .column-detail__article__section .column-listNum li {
        font-size: 15px;
        padding: 0 0 5px 23px;
    }
    .column-detail__article__section .column-listNum li:before {
        font-size: 15px;
        top: 2px;
        left: 0;
    }
}

/* 引用コンテンツ */
.column-quote {
    position: relative;
    border: 1px solid #999999;
    padding: 30px 20px;
}
.column-quote:before {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(../img/column/img_quote01.png) no-repeat;
    position: absolute;
    top: -13px;
    left: -1px;
    background-size: cover;
}
.column-quote:after {
    content: "";
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url(../img/column/img_quote02.png) no-repeat;
    position: absolute;
    bottom: -13px;
    right: -1px;
    background-size: cover;
}
.column-detail__article .column-quote p:not(:last-child) {
    margin-bottom: 30px;
}
.column-detail__article .column-quote p:last-child {
    margin-bottom: 0;
}
@media screen and (min-width: 768px) {
    .column-quote {
        padding: 40px 35px;
    }
}

/* コラム監修者コンテンツ */
.column-writerBox {
    border: 1px solid #999999;
    padding: 40px 20px;
}
.column-writerBox > p {
    display: none;
}
.column-writerTitle {
    font-size: 15px;
    text-align: center;
    margin-bottom: 15px;
}
.column-writerFlex > p {
    display: none;
}
.column-writerImg {
    margin-bottom: 10px;
}
.column-writerImg p {
    display: none;
}
.column-writerImg__frame {
    border-radius: 50px;
    max-width: 100px;
    margin: 0 auto;
}
.column-writerName {
    font-size: 12px;
    text-align: center;
    margin-bottom: 10px;
    line-height: 1.5;
}
.column-writerName span {
    font-size: 15px;
}
.column-writerSns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 15px;
}
.column-writerSns > p {
    display: none;
}
.column-writerSns__box {
    padding: 0 7.5px;
}
.column-writerSns__box a {
    display: flex;
}
.column-writerSns__box img {
    width: 25px;
}
.column-writerSns__box--twitter img {
    width: 27px;
}
.column-writerInfo > p {
    margin-bottom: 0 !important;
}
.column-writerTxt {
    font-size: 12px;
    line-height: 2;
    margin-bottom: 0 !important;
}
.column-writerLink {
    font-size: 10px;
    position: relative;
    display: inline-block;
    padding-right: 17px;
    color: #8e8e8e;
    border-bottom: 1px solid #8e8e8e;
}
.column-writerLink:before {
    content: "＞";
    display: inline-block;
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    font-size: 10px;
}

@media screen and (min-width: 768px) {
    .column-writerBox {
        padding: 25px 35px;
    }
    .column-writerTitle {
        text-align: left;
        margin-bottom: 30px;
    }
    .column-writerFlex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .column-writerImg__frame {
        min-width: 150px;
        max-width: 150px;
    }
    .column-writerInfo {
        padding-left: 25px;
    }
    .column-writerName {
        text-align: left;
    }
    .column-writerSns {
        justify-content: flex-start;
        margin: 0 -7.5px 15px;
    }
}

/* コラム用開発者アイコン */
.column-detail__introduction {
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding: calc(30 / 375 * 100vw) calc(20 / 375 * 100vw)
        calc(50 / 375 * 100vw);
}
.column-detail__introduction__flex-img {
    text-align: center;
    margin-bottom: calc(20 / 375 * 100vw);
}
.column-detail__introduction__flex-img img {
    width: calc(127 / 375 * 100vw);
}
.column-detail__introduction__nameBox {
    margin-bottom: calc(30 / 375 * 100vw);
}
.column-detail__article p.column-detail__introduction__name {
    font-size: calc(20 / 375 * 100vw);
    text-align: center;
    font-weight: bold;
    margin-bottom: 0;
    line-height: 1;
    margin-bottom: calc(10 / 375 * 100vw);
}
.column-detail__introduction__division {
    text-align: center;
    line-height: 1.5;
    font-size: calc(10 / 375 * 100vw);
}
.column-detail__introduction__division--en {
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.column-detail__article p.column-detail__introduction__sentence {
    margin-bottom: 0;
}

.column-detail__commentImg {
    float: left;
    margin: 0 20px 5px 0;
    width: calc(53 / 375 * 100vw);
    line-height: 1;
}

.column-detail__introduction--stylist {
    margin-top: calc(50 / 375 * 100vw);
}
.column-detail__introduction--stylist .column-detail__introduction__flex-img {
    margin-bottom: calc(35 / 375 * 100vw);
}
.column-detail__article
    .column-detail__introduction--stylist
    p.column-detail__introduction__name
    span {
    font-size: calc(12 / 375 * 100vw);
}
.column-detail__article__video {
    width: 100%;
    margin-bottom: 20px;
}
.column-detail__comment_sp {
    margin-bottom: 6vw;
}
@media screen and (min-width: 768px) {
    .column-detail__introduction {
        padding: calc(30 / 1280 * 100vw) calc(40 / 1280 * 100vw)
            calc(45 / 1280 * 100vw);
    }
    .column-detail__introduction__flex {
        display: -ms-flexbox;
        display: flex;
        margin: 0 calc(-22.5 / 1280 * 100vw);
        align-items: start;
    }
    .column-detail__introduction__flex-img,
    .column-detail__introduction__flex-info {
        padding: 0 calc(22.5 / 1280 * 100vw);
        margin-bottom: 0;
    }
    .column-detail__introduction__flex-img img {
        width: calc(127 / 1280 * 100vw);
        max-width: 127px;
    }
    .column-detail__introduction__nameBox {
        display: -ms-flexbox;
        display: flex;
        align-items: center;
        margin-bottom: calc(15 / 1280 * 100vw);
    }
    .column-detail__article p.column-detail__introduction__name {
        font-size: 20px;
        margin-bottom: 0;
        margin-right: 15px;
        word-break: keep-all;
    }
    .column-detail__article p.column-detail__introduction__sentence {
        font-size: 12px;
    }
    .column-detail__introduction__division {
        text-align: left;
        font-size: 10px;
    }
    .column-detail__comment {
        display: -ms-flexbox;
        display: flex;
        margin: 0 auto 50px;
    }
    .column-detail__commentImg {
        float: inherit;
        margin: 0 calc(20 / 1280 * 100vw) 0 0;
        width: calc(60 / 1280 * 100vw);
        min-width: calc(60 / 1280 * 100vw);
    }
    .column-detail__commentImg img {
        width: 100%;
    }
    .column-detail__article__video {
        width: 100%;
        margin-bottom: 20px;
    }
    .column-detail__introduction--stylist {
        margin-top: 0;
        padding: calc(40 / 1280 * 100vw) calc(60 / 1280 * 100vw)
            calc(40 / 1280 * 100vw);
    }
    .column-detail__introduction--stylist
        .column-detail__introduction__flex-img {
        margin-bottom: 0;
    }
    .column-detail__introduction--stylist
        .column-detail__introduction__flex-img
        img {
        width: calc(85 / 1280 * 100vw);
        max-width: 85px;
    }
    .column-detail__article
        .column-detail__introduction--stylist
        p.column-detail__introduction__name
        span {
        font-size: calc(12 / 1280 * 100vw);
    }
    .column-detail__introduction--stylist
        .column-detail__introduction__division--en {
        font-size: 12px;
    }
}

.column-floating {
    position: fixed;
    bottom: 0;
    z-index: 9999;
    width: 100%;
    left: 0;
    transition: 0.3s;
}
.column-floating.floatingClose {
    bottom: -72px;
}
@media screen and (min-width: 768px) {
    .column-floating {
        left: 0;
        width: 370px;
        bottom: 0;
    }
    .column-floating.floatingClose {
        left: -351px;
        bottom: 0;
    }
}
.column-floating img {
    max-width: 100%;
}
.column-floating p {
    display: none;
}
.column-floating__inner {
    position: relative;
}
.column-floating__close {
    background: #707070;
    position: absolute;
    top: -19px;
    right: 0;
    left: 0;
    margin: auto;
    width: 48px;
    height: 20px;
    border-radius: 5px 5px 0 0;
}
@media screen and (min-width: 768px) {
    .column-floating__close {
        top: 0;
        bottom: 0;
        right: 0;
        left: inherit;
        width: 24px;
        height: 50px;
        border-radius: 0 5px 5px 0;
    }
}
.column-floating__close span {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    cursor: pointer;
}
.column-floating__close span img {
    width: 12px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
}
.column-floating.floatingClose .column-floating__close span img {
    transform: translateY(-50%) translateX(-50%) rotate(180deg);
    -webkit-transform: translateY(-50%) translateX(-50%) rotate(180deg);
}
@media screen and (min-width: 768px) {
    .column-floating__close span img {
        transform: translateY(-50%) translateX(-50%) rotate(90deg);
        -webkit-transform: translateY(-50%) translateX(-50%) rotate(90deg);
    }
    .column-floating.floatingClose .column-floating__close span img {
        transform: translateY(-50%) translateX(-50%) rotate(270deg);
        -webkit-transform: translateY(-50%) translateX(-50%) rotate(270deg);
    }
}
.column-floating__main {
    position: relative;
    background-color: #fff;
    border-top: 1px solid #707070;
}
@media screen and (min-width: 768px) {
    .column-floating__main {
        width: 350px;
        border: 1px solid #707070;
        border-radius: 0 5px 0 0;
        border-left: none;
        border-bottom: none;
    }
}
.column-floating__main a {
    display: block;
    padding: 10px;
}
@media screen and (min-width: 768px) {
    .column-floating__main a {
        padding: 20px;
    }
}
.column-floating__mainFlex {
    display: flex;
    align-items: center;
}
@media screen and (min-width: 768px) {
    .column-floating__mainFlex {
        align-items: flex-start;
    }
}
.column-floating__mainFlex-img {
    min-width: 50px;
    max-width: 50px;
    margin-right: 15px;
}
@media screen and (min-width: 768px) {
    .column-floating__mainFlex-img {
        min-width: 100px;
        max-width: 100px;
        margin-right: 15px;
    }
}
.column-floating__mainFlex-infoTtl,
.column-floating__mainFlex-infoTxt {
    display: block !important;
}
.column-floating__mainFlex-infoTtl {
    font-size: 14px;
    margin-bottom: -1px !important;
    font-weight: bold;
    letter-spacing: 1px;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
}
@media screen and (min-width: 768px) {
    .column-floating__mainFlex-infoTtl {
        font-size: 16px;
        margin-bottom: 5px !important;
    }
}
.column-floating__mainFlex-infoTxt {
    font-size: 12px;
    margin-bottom: 0 !important;
    letter-spacing: 1px;
}
@media screen and (min-width: 768px) {
    .column-floating__mainFlex-infoTxt {
        font-size: 12px;
    }
}
.column-floating__mainArrow {
    position: absolute;
    right: -1px;
    bottom: 0px;
    width: 21px;
}
@media screen and (min-width: 768px) {
    .column-floating__mainArrow {
        right: 10px;
        bottom: 10px;
        width: 64px;
    }
}

/* 詳細ページセット買い導線 */
.ProductDetailFv__setArea {
    order: 7;
    width: 100%;
    pointer-events: auto;
    cursor: pointer;
    transition: 0.3s;
    margin-bottom: 20px;
}
.setArea__btn img {
    width: 100%;
}
.setArea__btn p {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    align-content: center;
    font-size: 12px;
    margin-top: 5px;
}
@media screen and (min-width: 768px) {
    .setArea__btn p {
        font-size: 14px;
        margin-top: 10px;
    }
}
.setArea__btn p .icon-arrow {
    width: 5px;
    margin-left: 5px;
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__setArea:hover {
        opacity: 0.8;
    }
}

/* ヘッダー */
.app-menu-sp .parts-btn-cv .parts-btn-cv__cartIcon {
    width: 15vw;
    left: 0;
}
.app-menu-sp .icon-cart__cartImg {
    width: 33.33% !important;
}
.common-nav-pc__menu .parts-btn-cv .parts-btn-cv__cartIcon {
    width: 60px !important;
    left: 0 !important;
}
.common-nav-pc__menu .icon-cart__cartImg {
    width: 33.33% !important;
}

/* 詳細ページセット買いモーダル */
.setArea__modal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: 0.6s;
}
.modalOn {
    overflow: hidden;
}
.modalOn .setArea__modal {
    opacity: 1;
    pointer-events: auto;
    z-index: 9999;
}
.setArea__modal:before {
    content: "";
    display: inline-block;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: rgba(240, 240, 240, 0.5);
    -ms-filter: blur(6px);
    filter: blur(6px);
}
.setArea__modal__outer {
    position: relative;
    width: 100%;
    height: 100vh;
}
.setArea__modal__closeArea {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.setArea__modal__content {
    background: #fff;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 90%;
    height: 80%;
    max-width: 500px;
    z-index: 2;
}
.setArea__modal__content__inner {
    position: relative;
    padding: 0 15px;
    overflow-y: scroll;
    height: 100%;
}
.setArea__modal__content__inner::-webkit-scrollbar {
    width: 6px;
}
.setArea__modal__content__inner::-webkit-scrollbar-track {
    background-color: #fff;
}
.setArea__modal__content__inner::-webkit-scrollbar-thumb {
    background-color: #e4e4e4;
}
.setArea__modal__close {
    position: fixed;
    right: 20px;
    top: 20px;
    width: 22px;
    height: 22px;
}
.setArea__modal__close span {
    position: relative;
    display: block;
    width: 22px;
    height: 22px;
}
.setArea__modal__close span:before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    background: #333333;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(45deg);
}
.setArea__modal__close span:after {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    background: #333333;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(-45deg);
}

.setArea__modal__flex__img img {
    width: 100%;
}
.setArea__modal__ttl {
    text-align: center;
    font-size: 19px;
    letter-spacing: 5px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    margin: 0 0 40px;
    padding-top: 70px;
}
.setArea__modal__ttl span {
    display: block;
    font-size: 10px;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
    letter-spacing: 1px;
    margin-top: 5px;
}
.setArea__modal__list {
    padding-bottom: 40px;
}
.setArea__modal__flex {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: -30px -7.5px 0;
}
.setArea__modal__flex__box {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
    padding: 0 7.5px;
    margin-top: 30px;
    box-sizing: border-box;
}
.setArea__modal__flex__img {
    margin-bottom: 10px;
}
.setArea__modal__flex__name {
    font-size: 12px;
    line-height: 1.8;
    letter-spacing: 1;
}

@media screen and (min-width: 768px) {
    .setArea__modal__content {
        max-width: 1150px;
    }
    .setArea__modal__content__inner {
        padding: 0 75px;
    }
    .setArea__modal__close {
        right: 40px;
        top: 40px;
        width: 30px;
        height: 30px;
    }
    .setArea__modal__close span {
        width: 30px;
        height: 30px;
    }
    .setArea__modal__ttl {
        padding-top: 100px;
        font-size: 30px;
        margin: 0 0 75px;
        letter-spacing: 10px;
    }
    .setArea__modal__ttl span {
        font-size: 14px;
        margin-top: 10px;
        letter-spacing: 3px;
    }
    .setArea__modal__flex {
        margin: -70px -25px 0;
        justify-content: center;
    }
    .setArea__modal__flex__box {
        padding: 0 25px;
        margin-top: 70px;
        -ms-flex-preferred-size: 33.333333%;
        flex-basis: 33.333333%;
        max-width: 33.333333%;
    }
    .setArea__modal__flex__box a {
        opacity: 1;
        transition: 0.3s;
    }
    .setArea__modal__flex__box a:hover {
        opacity: 0.7;
    }
}

/* 詳細ページスタイリストコメント */
.ProductDetail__stylist {
    background: #fafafa;
    padding: calc(80 / 375 * 100vw) 0;
}
.ProductDetail__stylistInner {
    width: 80vw;
    margin: 0 auto;
}
.ProductDetail__stylistTtl {
    text-align: center;
    margin-bottom: calc(50 / 375 * 100vw);
}
.ProductDetail__stylistTtl .app-scrollObserver__title {
    margin-bottom: calc(5 / 375 * 100vw);
}
.ProductDetail__stylistTtl span {
    font-size: calc(18 / 375 * 100vw);
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    letter-spacing: 7px;
}
.ProductDetail__stylistFlex:not(:last-of-type) {
    margin-bottom: calc(50 / 375 * 100vw);
}
.ProductDetail__stylistTtl > span {
    font-size: calc(12 / 375 * 100vw);
    letter-spacing: 1px;
}
.ProductDetail__stylistImages {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    margin: 0 calc(-12.5 / 375 * 100vw);
}
.stylistFlex__img,
.stylistFlex__info {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
    max-width: 50%;
    padding: 0 calc(12.5 / 375 * 100vw);
    margin-bottom: calc(30 / 375 * 100vw);
}
.stylistFlex__info.pc_none {
    display: block;
}
.stylistFlex__info.sp_none {
    display: none;
}
.stylistFlex__img img {
    max-width: 100%;
}
.ProductDetail__stylistLogo {
    max-width: calc(50 / 375 * 100vw);
    margin-bottom: calc(20 / 375 * 100vw);
}
.ProductDetail__stylistLogo img {
    max-width: 100%;
}
.ProductDetail__stylistName {
    position: relative;
    padding-top: calc(20 / 375 * 100vw);
}
.ProductDetail__stylistName:before {
    content: "";
    display: inline-block;
    width: calc(30 / 375 * 100vw);
    height: calc(1 / 375 * 100vw);
    position: absolute;
    top: 0;
    left: 0;
    background: #707070;
}
.ProductDetail__stylistName--mini {
    font-size: calc(10 / 375 * 100vw);
    margin-bottom: calc(5 / 375 * 100vw);
}
.ProductDetail__stylistName--en {
    display: block;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.ProductDetail__stylistName--main {
    font-size: calc(16 / 375 * 100vw);
}
.ProductDetail__stylistName--main span {
    font-size: calc(12 / 375 * 100vw);
}
.ProductDetail__stylistTxt {
    font-size: calc(12 / 375 * 100vw);
    line-height: calc(24 / 375 * 100vw);
}

@media screen and (min-width: 768px) {
    .ProductDetail__stylist {
        padding: 140px 0 200px;
    }
    .ProductDetail__stylistInner {
        width: 100%;
        max-width: calc(900 / 1366 * 100vw);
    }
    .ProductDetail__stylistTtl {
        margin-bottom: 90px;
    }
    .ProductDetail__stylistTtl .app-scrollObserver__title {
        margin-bottom: 10px;
        font-size: 30px;
    }
    .ProductDetail__stylistTtl span {
        font-size: 30px;
        letter-spacing: 13px;
        word-break: break-all;
    }
    .ProductDetail__stylistTtl > span {
        font-size: 14px;
        letter-spacing: 2px;
    }
    .ProductDetail__stylistImages {
        display: block;
        margin: 0;
    }
    .stylistFlex__img,
    .stylistFlex__info {
        -ms-flex-preferred-size: 100%;
        flex-basis: 100%;
        max-width: 100%;
        padding: 0;
        margin-bottom: 0;
    }
    .stylistFlex__info.pc_none {
        display: none;
    }
    .stylistFlex__info.sp_none {
        display: block;
    }
    .ProductDetail__stylistFlex {
        display: -ms-flexbox;
        display: flex;
        align-items: center;
        margin: 0 -25px;
    }
    .ProductDetail__stylistFlex:not(:last-of-type) {
        margin-bottom: 80px;
    }
    .ProductDetail__stylistFlex--box {
        padding: 0 25px;
    }
    .stylistFlex__img {
        min-width: 335px;
        max-width: 335px;
    }
    .ProductDetail__stylistLogo {
        max-width: 65px;
        margin-bottom: 25px;
    }
    .ProductDetail__stylistName {
        padding-top: 25px;
        margin-bottom: 25px;
    }
    .ProductDetail__stylistName:before {
        width: 30px;
        height: 1px;
    }
    .ProductDetail__stylistName--mini {
        font-size: 12px;
        margin-bottom: 0;
        display: inline-block;
    }
    .ProductDetail__stylistName--en {
        display: inline-block;
    }
    .ProductDetail__stylistName--main {
        font-size: 18px;
        display: inline-block;
    }
    .ProductDetail__stylistName--main span {
        font-size: 14px;
    }
    .ProductDetail__stylistTxt {
        font-size: 14px;
        line-height: 24px;
    }
}

@media screen and (min-width: 1400px) {
    .ProductDetail__stylistInner {
        max-width: 900px;
    }
}

/* 詳細ページ事務所 */
.column-salonBox {
    border-top: 1px solid #707070;
    border-bottom: 1px solid #707070;
    padding: calc(60 / 375 * 100vw) 0 calc(50 / 375 * 100vw);
    margin-bottom: calc(140 / 375 * 100vw);
}
.column-salonImg {
    text-align: center;
    margin-bottom: calc(80 / 375 * 100vw);
}
.column-salonImg img {
    width: calc(155 / 375 * 100vw);
}
.column-salonInfo--name {
    text-align: center;
    font-size: calc(16 / 375 * 100vw);
    margin-bottom: calc(20 / 375 * 100vw);
}
.column-salonInfo--txt {
    text-align: center;
    font-size: calc(10 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
    .column-salonBox {
        border-top: 1px solid #707070;
        border-bottom: 1px solid #707070;
        padding: calc(40 / 1280 * 100vw) calc(15 / 1280 * 100vw)
            calc(40 / 1280 * 100vw);
        margin-bottom: calc(200 / 1280 * 100vw);
    }
    .column-salonFlex {
        display: -ms-flexbox;
        display: flex;
        align-items: center;
    }
    .column-salonImg {
        min-width: calc(195 / 1280 * 100vw);
        max-width: calc(195 / 1280 * 100vw);
        margin-bottom: 0;
        margin-right: calc(60 / 1280 * 100vw);
    }
    .column-salonImg img {
        width: calc(155 / 1280 * 100vw);
    }
    .column-salonInfo--name {
        font-size: calc(16 / 1280 * 100vw);
        margin-bottom: calc(20 / 1280 * 100vw);
        text-align: left;
    }
    .column-salonInfo--txt {
        font-size: calc(10 / 1280 * 100vw);
        text-align: left;
    }
}

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

ボタンの見た目変更202306

------------------------ */
/* トップ */
.ChannelArea .ChannelArea__footer .parts-btn-01,
.Product .Product__footer .parts-btn-01,
.TopicsArea .TopicsArea__footer .parts-btn-01,
.Top__concept .parts-btn-01 {
    width: 79vw;
    margin: 0 11vw 0 auto;
    letter-spacing: 3px;
}
.Top__concept .parts-btn-01 {
    margin: 10vw auto 0;
}

@media screen and (min-width: 768px) {
    .ChannelArea .ChannelArea__footer .parts-btn-01,
    .Product .Product__footer .parts-btn-01,
    .TopicsArea .TopicsArea__footer .parts-btn-01,
    .Top__concept .parts-btn-01 {
        max-width: 310px;
        margin: 0 auto;
        height: 50px;
    }
    .Top__concept .parts-btn-01 {
        margin: 40px 0 0 0 !important;
    }
}

/* 商品カテゴリ,コラム一覧 */
.CategoryNav-02 .CategoryNav-02__parentItem--allBtn {
    border: none;
}
.CategoryNav-02__parentItem > .parts-btn-01 {
    border: none;
    border-bottom: 1px solid #707070;
    border-radius: inherit;
}
.CategoryNav-02 .CategoryNav-02__childBtn.parts-btn-01 {
    border: none;
    border-radius: inherit;
}
@media screen and (min-width: 768px) {
    .CategoryNav-02 .CategoryNav-02__parentItem--allBtn .parts-btn-01 {
        border: none;
    }
}

/*トピックス,コラム一覧のページャー部分 */
.ListPagenation .ListPagenation__sideBtn.-next.parts-btn-01,
.ListPagenation .ListPagenation__sideBtn.-prev.parts-btn-01 {
    position: relative;
    width: 100%;
    height: 12vw;
    display: flex;
    align-content: center;
    align-items: center;
    justify-content: center;
    font-size: 3vw;
    font-weight: 400;
    border: inherit;
}
.ListPagenation .ListPagenation__sideBtn.-next.parts-btn-01 .parts-btn-01__icon,
.ListPagenation
    .ListPagenation__sideBtn.-prev.parts-btn-01
    .parts-btn-01__icon {
    position: relative;
    right: 0;
}

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

トップページ2余白変更

------------------------ */
@media screen and (min-width: 768px) {
    .Top__topics.TopicsArea {
        margin-bottom: 110px;
    }
    .Top__channel.ChannelArea {
        margin-bottom: 150px;
    }
}

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

プロダクト詳細ページ202306追加

------------------------ */
/* ヘアケアFV */
.ProductDetail__fv--haircareMain {
    margin-bottom: calc(25 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    /* .ProductDetailFv__titleArea {
    width: 47% !important;
    margin: 0 0 0 auto;
  } */
    .ProductDetail__fv--haircareMain {
        margin-bottom: 0;
    }
    .ProductDetail__fv--haircareContent {
        position: relative;
    }
    .ProductDetail__fv--haircareLeft {
        position: absolute;
        max-width: calc(400 / 1366 * 100vw);
    }
    .ProductDetail__fv--haircareRight {
        margin: 0 0 0 auto;
        max-width: calc(400 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetail__fv--haircareLeft {
        position: absolute;
        max-width: 400px;
    }
    .ProductDetail__fv--haircareRight {
        margin: 0 0 0 auto;
        max-width: 400px;
    }
}
.ProductDetail__fv--haircarePanelttl {
    font-size: 14px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    letter-spacing: 4px;
    margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircarePanelttl {
        letter-spacing: 5px;
    }
}
.ProductDetail__fv--haircareMain__listOuter {
    height: 0;
    overflow: hidden;
}
.ProductDetail__fv--haircareMain__listOuter.active {
    height: auto;
}
.ProductDetail__fv--haircareMain__listImg {
    background: #fff;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareMain__listImg {
        width: calc(400 / 1366 * 100vw);
        max-width: 400px;
    }
}
.ProductDetail__fv--haircareMain__listImg img {
    margin-bottom: 20px;
}
.ProductDetail__fv--haircareMain__listImg__ttl {
    text-align: center;
    font-size: 12px;
}
.ProductDetail__fv img {
    width: 100%;
}
.ProductDetail__fv--haircareMain {
    padding: 0 calc(20 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareMain {
        padding: 0;
    }
}
.ProductDetail__fv--threedButton {
    border: 1px solid #333333;
    border-radius: 100px;
    padding: 10px 20px 10px 40px;
    position: relative;
    display: inline-block;
    margin: 15px 0 20px;
    letter-spacing: 0px;
    font-size: 12px;
    order: 1;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--threedButton {
        cursor: pointer;
        opacity: 1;
        transition: 0.3s;
        margin: 20px 0 0;
    }
    .ProductDetail__fv--threedButton:hover {
        opacity: 0.8;
    }
}
.ProductDetail__fv--threedButton:before {
    content: "";
    display: inline-block;
    width: 16px;
    height: 8px;
    background: url(../img/svg/ico_threed.svg) no-repeat;
    background-size: cover;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 18px;
    margin: auto;
}

.ProductDetail__fv--haircarePlate {
    margin: 0 -20px;
    border-top: 1px solid #e4e4e4;
    padding: 20px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircarePlate {
        margin: 0;
        padding: 20px 0;
    }
}
.ProductDetail__fv--haircarePlate__list {
    display: flex;
}
.ProductDetail__fv--haircarePlate__listBtn {
    margin: 0 10px 0 0 !important;
    width: 90px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircarePlate__listBtn {
        width: 80px;
    }
}
.ProductDetail__fv--haircarePlate__listBtn__inner {
    width: 90px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircarePlate__listBtn__inner {
        width: 80px;
    }
}
.ProductDetail__fv--haircarePlate__listBtn__img {
    border: 1px solid #c7c7c7;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 5px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircarePlate__listBtn__img {
        margin-bottom: 5px;
    }
}
.ProductDetail__fv--haircarePlate__listBtn__ttl {
    font-size: 12px;
}
.ProductDetail__fv--haircarePlate__listBtn.active
    .ProductDetail__fv--haircarePlate__listBtn__img {
    border: 2px solid #111111;
}
.ProductDetail__fv--haircarePlate__listBtn.active
    .ProductDetail__fv--haircarePlate__listBtn__ttl {
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
}

/* ------------------------------------------------- */
.ProductDetail__fv--haircareColor {
    margin: 0 -20px;
    border-top: 1px solid #e4e4e4;
    border-bottom: 1px solid #e4e4e4;
    padding: 20px 20px 0;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor {
        margin: 0 0 25px;
        padding: 20px 0 0;
    }
}
.ProductDetail__fv--haircareColor__listOuter {
    /* height: 140px; */
    display: none;
    pointer-events: none;
    margin-right: -20px;
    margin-left: -20px;
    padding-bottom: 15px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__listOuter {
        margin-right: 0px;
        margin-left: 0px;
    }
}
.ProductDetail__fv--haircareColor__listOuter.active {
    display: block;
    pointer-events: auto;
}
.ProductDetail__fv--haircareColor__list {
    display: flex;
    padding-bottom: 15px;
    padding-left: 20px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__list {
        padding-bottom: 25px;
        padding-left: 0px;
    }
}
.ProductDetail__fv--haircareColor__listBtn {
    margin: 0 10px 0 0 !important;
    width: 90px;
    cursor: pointer;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__listBtn {
        width: 80px;
    }
}
.ProductDetail__fv--haircareColor__listBtn__inner {
    width: 90px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__listBtn__inner {
        width: 80px;
    }
}
.ProductDetail__fv--haircareColor__listBtn__img {
    border: 1px solid #c7c7c7;
    border-radius: 5px;
    overflow: hidden;
    margin-bottom: 5px;
}
.ProductDetail__fv--haircareColor__listBtn__ttl {
    font-size: 12px;
    position: relative;
    padding-left: 18px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__listBtn__ttl {
        padding-left: 13px;
        font-size: 11px;
    }
}
.ProductDetail__fv--haircareColor__listBtn__ttl span {
    position: absolute;
    width: 12px;
    height: 12px;
    left: 0;
    top: 4px;
    border-radius: 50px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__listBtn__ttl span {
        width: 10px;
        height: 10px;
    }
}
.ProductDetail__fv--haircareColor__listBtn.active
    .ProductDetail__fv--haircareColor__listBtn__img {
    border: 2px solid #111111;
}
.ProductDetail__fv--haircareColor__listBtn.active
    .ProductDetail__fv--haircareColor__listBtn__ttl {
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
}
.ProductDetail__fv--haircareColor__listBtn
    .ProductDetail__fv--haircareColor__listBtn__hiddenTxt {
    height: 0;
    overflow: hidden;
}
.ProductDetail__scrollCover {
    position: relative;
    z-index: 50;
    display: block;
    width: 100%;
    height: 9px;
    margin-top: -8px;
    background: #fff;
}

.ProductDetail__fv--haircareColor__list .swiper-pagination-progressbar {
    top: inherit;
    bottom: 0;
    width: calc(100% - 20px);
}
/* プログレスバーの高さ変更 */
.ProductDetail__fv--haircareColor__listOuter
    .swiper-horizontal
    > .swiper-pagination-progressbar,
.ProductDetail__fv--haircareColor__listOuter
    .swiper-pagination-progressbar.swiper-pagination-horizontal {
    height: 2px;
}
/* プログレスバーの背景色変更 */
.ProductDetail__fv--haircareColor__listOuter .swiper-pagination-progressbar {
    background-color: rgba(0, 0, 0, 0);
}
/* プログレスバーの色変更 */
.ProductDetail__fv--haircareColor__listOuter
    .swiper-pagination-progressbar
    .swiper-pagination-progressbar-fill {
    background-color: #e4e4e4;
}

.ProductDetail__fv--haircareColor__listOuter .swiper-button-next,
.ProductDetail__fv--haircareColor__listOuter .swiper-button-prev {
    background: rgba(255, 255, 255, 0.9);
    height: 96px;
    width: 25px;
    top: 0;
    margin-top: 0;
}
@media screen and (min-width: 768px) {
    .ProductDetail__fv--haircareColor__listOuter .swiper-button-next,
    .ProductDetail__fv--haircareColor__listOuter .swiper-button-prev {
        height: 103px;
    }
}
.ProductDetail__fv--haircareColor__listOuter .swiper-button-next {
    right: 0;
}
.ProductDetail__fv--haircareColor__listOuter .swiper-button-prev {
    left: 0;
}
.ProductDetail__fv--haircareColor__listOuter .swiper-button-next:after,
.ProductDetail__fv--haircareColor__listOuter .swiper-button-prev:after {
    content: "";
    display: inline-block;
    background: url(../img/product/ico_productSlider-arrow.svg) no-repeat;
    width: 8px;
    height: 16px;
    background-size: contain;
}
.ProductDetail__fv--haircareColor__listOuter .swiper-button-prev:after {
    transform: rotate(180deg);
}
.ProductDetail__fv--haircareColor__listOuter
    .swiper-button-next.swiper-button-disabled,
.ProductDetail__fv--haircareColor__listOuter
    .swiper-button-prev.swiper-button-disabled {
    display: none;
}
@media screen and (max-width: 768px) {
    .swiper-button-next,
    .swiper-button-prev {
        display: none;
    }
}

.swiper-horizontal > .swiper-scrollbar,
.swiper-scrollbar.swiper-scrollbar-horizontal {
    background: none;
    height: 2px;
}
.swiper-scrollbar-drag {
    background-color: #e4e4e4;
}

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

/* ヘアケア新購入ボタン */
.ProductDetailFv__purchase {
    order: 0;
    width: 100%;
    margin-top: 20px;
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__purchase {
        order: 5;
        margin-top: 25px;
        min-width: 320px;
    }
}
.ProductDetailFv__purchaseBtn--child:not(:last-child) {
    margin-bottom: 10px;
}
.ProductDetailFv__purchaseBtn--modal,.ProductDetailFv__purchaseBtn--official {
    background: #000;
    color: #fff;
    text-align: center;
    border-radius: 100px;
    position: relative;
    padding: 15px 0;
    cursor: pointer;
    transition: 0.3s;
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__purchaseBtn--modal:hover ,.ProductDetailFv__purchaseBtn--official:hover{
        opacity: 0.8;
    }
}
.ProductDetailFv__purchaseBtn--txt {
    display: inline-block;
    position: relative;
    padding-left: 27px;
    font-size: 14px;
    line-height: 2;
}
.ProductDetailFv__purchaseBtn--modal .ProductDetailFv__purchaseBtn--txt,
.ProductDetailFv__purchaseBtn--official  .ProductDetailFv__purchaseBtn--txt {
    font-size: 17px;
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__purchaseBtn--modal .ProductDetailFv__purchaseBtn--txt,
    .ProductDetailFv__purchaseBtn--official  .ProductDetailFv__purchaseBtn--txt {
        font-size: 15px;
    }
}
.ProductDetailFv__purchaseBtn--ico img {
    vertical-align: super;
}
.ProductDetailFv__purchaseBtn--ico.cart {
    width: 18px;
    height: 18px;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.ProductDetailFv__purchaseBtn--ico.present {
    width: 16px;
    height: 17px;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.ProductDetailFv__purchaseBtn--gift {
    background: #707070;
    color: #fff;
    text-align: center;
    display: block;
    height: auto;
    border-radius: 100px;
    position: relative;
    padding: 12px 0;
    line-height: 1;
}
.ProductDetailFv__purchaseBtn--arrow {
    position: absolute;
    top: 50%;
    right: 25px;
    transform: translateY(-50%);
    width: 7px;
}
.ProductDetailFv__purchaseBtn--arrow:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.ProductDetailFv__purchaseBtn--arrow:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
}
/* ------------------------------------------------- */
.purchaseModal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: 0.6s;
}
.purchaseModal:before {
    content: "";
    display: inline-block;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.25);
    -ms-filter: blur(6px);
    filter: blur(6px);
}
.purchaseModal.modalOn {
    opacity: 1;
    pointer-events: auto;
    z-index: 9999;
}
.purchaseModal__outer {
    position: relative;
    width: 100%;
    height: 100vh;
}
.purchaseModal__closeArea {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.purchaseModal__content {
    background: #fff;
    position: absolute;
    z-index: 2;
    max-width: 390px;
    width: 100%;
    bottom: -100%;
    right: 0;
    left: 0;
    margin: auto;
    border-radius: 10px 10px 0 0;
    transition: 0.4s;
}
@media screen and (min-width: 768px) {
    .purchaseModal__content {
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit-transform: translateY(-50%) translateX(-50%);
        bottom: inherit;
        right: inherit;
        border-radius: 10px;
    }
}
.purchaseModal.modalOn .purchaseModal__content {
    bottom: 0;
}
@media screen and (min-width: 768px) {
    .purchaseModal.modalOn .purchaseModal__content {
        bottom: inherit;
    }
}
.purchaseModal__inner {
    position: relative;
    padding: 60px 20px 100px;
}
.purchaseModal__ttlArea {
    margin-bottom: 20px;
}
.purchaseModal__ttl {
    display: block;
    font-size: 17px;
    letter-spacing: 0.2em;
}
.purchaseModal__subTtl {
    display: block;
    font-size: 10px;
    letter-spacing: 0.2em;
    margin-top: 5px;
    color: #707070;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.purchaseModal__price {
    font-size: 12px;
    margin-bottom: 25px;
}
.purchaseModal__price span {
    display: inline-block;
    margin-right: 5px;
    font-size: 20px;
    letter-spacing: 0.1em;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}
.purchaseModal__closeBtn {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 17px;
    height: 17px;
}
.purchaseModal__closeBtn span {
    position: relative;
    display: block;
    width: 17px;
    height: 17px;
}
.purchaseModal__closeBtn span:before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(45deg);
}
.purchaseModal__closeBtn span:after {
    content: "";
    display: inline-block;
    width: 22px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(-45deg);
}
/* ------------------------------------------------- */

/* 3dコンテンツモーダル */
.threedModal {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 99999;
    opacity: 0;
    pointer-events: none;
    z-index: 1;
    transition: 0.6s;
}
@media screen and (min-width: 768px) {
    .threedModal {
        transition: 0.3s;
    }
}
.threedModal:before {
    content: "";
    display: inline-block;
    position: fixed;
    width: 100%;
    height: 100%;
    left: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.25);
    -ms-filter: blur(6px);
    filter: blur(6px);
}
.threedModal.modalOn {
    opacity: 1;
    pointer-events: auto;
    z-index: 9999;
}
.threedModal__outer {
    position: relative;
    width: 100%;
    height: 100vh;
}
.threedModal__closeArea {
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}
.threedModal__content {
    background: #fff;
    position: absolute;
    z-index: 2;
    max-width: 390px;
    width: 100%;
    bottom: -100%;
    right: 0;
    left: 0;
    margin: auto;
    border-radius: 10px 10px 0 0;
    transition: 0.4s;
}
@media screen and (min-width: 768px) {
    .threedModal__content {
        top: 50%;
        left: 50%;
        transform: translateY(-50%) translateX(-50%);
        -webkit-transform: translateY(-50%) translateX(-50%);
        bottom: inherit;
        right: inherit;
        border-radius: 10px;
    }
}
.threedModal.modalOn .threedModal__content {
    bottom: 0;
}
@media screen and (min-width: 768px) {
    .threedModal.modalOn .threedModal__content {
        bottom: inherit;
    }
}
.threedModal__inner {
    position: relative;
    padding: 60px 20px 100px;
}
@media screen and (min-width: 768px) {
    .threedModal__inner {
        padding: 60px 20px 60px;
    }
}
.threedModal__ttlArea {
    margin-bottom: 20px;
}
.threedModal__ttl {
    display: block;
    font-size: 17px;
    letter-spacing: 0.2em;
}
.threedModal__subTtl {
    display: block;
    font-size: 10px;
    letter-spacing: 0.2em;
    margin-top: 5px;
    color: #707070;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
}

.threedModal__closeBtn {
    position: absolute;
    right: 20px;
    top: 20px;
    width: 17px;
    height: 17px;
}
.threedModal__closeBtn span {
    position: relative;
    display: block;
    width: 17px;
    height: 17px;
}
.threedModal__closeBtn span:before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(45deg);
}
.threedModal__closeBtn span:after {
    content: "";
    display: inline-block;
    width: 22px;
    height: 1px;
    background: #707070;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    transform: rotate(-45deg);
}
.threedModal__model {
    overflow: hidden;
    border-radius: 10px;
    height: 0;
    transition: 0.3s;
}
.threedModal.modalOn .threedModal__model {
    height: 100%;
}

.threedModal__model figni-viewer {
    max-height: 320px !important;
    --figni-viewer-progress: #ffffff;
}
.threedModal__model .figni-viewer-help-button span {
    color: #000 !important;
}
.threedModal__model .figni-viewer-hotspot {
    background-color: #ffffff !important;
}
.threedModal__model .figni-viewer-ar-button {
    background-color: #111111 !important;
}
.threedModal__model .figni-viewer-hotspot::before {
    box-shadow: 0 0 0 0.4em #ffffff !important;
    -webkit-box-shadow: 0 0 0 0.4em #ffffff !important;
    -webkit-box-shadow: rgb(255, 255, 255) 0px 0px 0px 6.197585px !important;
}
.threedModal__model .figni-viewer-help-panel h3 {
    color: #000 !important;
}
.threedModal__model .figni-viewer-help-button path {
    fill: #000 !important;
}
.threedModal__model .figni-viewer-help-page-btn-title-holder circle {
    fill: #000 !important;
}
.threedModal__model .figni-viewer-help-page-btn-title-holder path {
    fill: #000 !important;
}
.threedModal__model .figni-viewer-help-page-unknown-btn rect {
    fill: #000 !important;
}
.threedModal__model .figni-viewer-help-page-unknown-btn path {
    fill: #000 !important;
}
.threedModal__model .figni-viewer-help-page-unknown-btn h4 {
    color: #000 !important;
}
.threedModal__model .figni-viewer-tips-panel-text {
    color: #000 !important;
}
.threedModal__model .figni-viewer-loading-text {
    color: #000 !important;
}
.threedModal__model .figni-viewer-loading-animation-ring .ring path {
    stroke: #000 !important;
}
.threedModal__model .figni-viewer-loading-animation-ring .ring path {
    stroke: #000 !important;
}
.threedModal__model .figni-viewer-loading-progress-bar::before {
    background: linear-gradient(
        90deg,
        #fff 0%,
        #fff var(#ffffff, 0%),
        #fff var(#ffffff, 0%),
        #fff 100%
    ) !important;
}
.figni-viewer-hotspot-highlight::before {
    transition: 1s cubic-bezier(0, 1, 0.3, 1) ease !important;
    animation: highlight-original 1.5s ease-out 0.1s infinite running !important;
    will-change: filter;
}

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

/* ヘアケア新購入ボタン（フロート） */
.purchaseFloating {
    position: fixed;
    bottom: calc(20 / 390 * 100vw);
    right: calc(20 / 390 * 100vw);
    background: #000;
    width: calc(80 / 390 * 100vw);
    height: calc(80 / 390 * 100vw);
    border-radius: 100px;
    color: #fff;
    cursor: pointer;
    pointer-events: none;
    opacity: 0;
    transition: 0.6s;
    z-index: 999;
}
.purchaseFloating.floatOn {
    pointer-events: auto;
    opacity: 1;
}
@media screen and (min-width: 768px) {
    .purchaseFloating {
        width: 150px;
        height: 50px;
        right: 30px;
        bottom: 30px;
        opacity: 0;
        transition: 0.3s;
    }
    .purchaseFloating:hover {
        opacity: 0.8;
    }
}
.purchaseFloating__inner {
    width: 100%;
    height: 100%;
    position: relative;
}
/* link版（product_official_url 有り）の見た目調整 */
.purchaseFloating.is-link .purchaseFloating__inner {
    display: block;
    text-decoration: none;
    color: inherit;
}
@media (hover: hover) {
    .purchaseFloating.is-link .purchaseFloating__inner:hover {
        text-decoration: none;
    }
}
.purchaseFloating__ico {
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    top: calc(20 / 390 * 100vw);
    width: calc(28 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .purchaseFloating__ico {
        right: inherit;
        left: 30px;
        top: 0;
        bottom: 0;
        width: 18px;
    }
}
.purchaseFloating__txt {
    position: absolute;
    right: 0;
    left: 0;
    bottom: calc(13 / 390 * 100vw);
    margin: auto;
    text-align: center;
    font-size: calc(10 / 390 * 100vw);
    letter-spacing: 0px;
}
@media screen and (min-width: 768px) {
    .purchaseFloating__txt {
        right: inherit;
        left: 58px;
        top: 0;
        bottom: 0;
        font-size: 15px;
        height: 26px;
    }
}
/* ------------------------------------------------- */

/* MOREボタン見た目調整 */
.product-detail .app-contentAccordion__btn {
    border: inherit;
    border-radius: inherit;
}
/* ------------------------------------------------- */

/* 商品ページに戻るボタン */
.productFooterArea .productFooterArea__linkBtn.parts-btn-01 {
    width: 89vw;
    height: calc(50 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .productFooterArea .productFooterArea__linkBtn.parts-btn-01 {
        max-width: 350px;
        margin: auto;
        height: 50px;
    }
}
.product-detail .productFooterArea__btnArea .parts-btn-01__icon {
    right: inherit;
    left: 20px;
}
/* ------------------------------------------------- */

/* ヘアケア商品の簡易カテゴリ */
.product-detail .ProductDetail__feature {
    background: #e4e4e4;
    border-radius: 3px;
    font-size: calc(10 / 390 * 100vw);
    padding: calc(3 / 390 * 100vw) calc(10 / 390 * 100vw);
    margin-bottom: calc(25 / 390 * 100vw);
    margin-top: 0;
}
@media screen and (min-width: 768px) {
    .product-detail .ProductDetail__feature {
        background: #e4e4e4;
        border-radius: 3px;
        font-size: 12px;
        padding: 3px 10px;
        margin-bottom: 25px;
        order: 2;
    }
}
/* ------------------------------------------------- */

/* スキンケア商品の派生商品 */
.ProductDetailFv__derivationItem {
    order: 6;
    margin-top: 30px;
    width: 100%;
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__derivationItem {
        margin-top: 40px;
    }
}
.ProductDetailFv__derivationItem a {
    display: block;
    border: 1px solid #c7c7c7;
    border-radius: 8px;
    padding: calc(10 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__derivationItem a {
        padding: calc(10 / 1366 * 100vw);
        opacity: 1;
        transition: 0.3s;
    }
    .ProductDetailFv__derivationItem a:hover {
        opacity: 0.8;
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetailFv__derivationItem a {
        padding: 10px;
    }
}
.ProductDetailFv__derivationItem--flex {
    display: flex;
    align-items: center;
}
.ProductDetailFv__derivationItem--img {
    min-width: calc(100 / 390 * 100vw);
    max-width: calc(100 / 390 * 100vw);
    margin-right: calc(10 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__derivationItem--img {
        min-width: calc(100 / 1366 * 100vw);
        max-width: calc(100 / 1366 * 100vw);
        margin-right: calc(10 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetailFv__derivationItem--img {
        min-width: 100px;
        max-width: 100px;
        margin-right: 10px;
    }
}
.ProductDetailFv__derivationItem--word {
    color: #9a9a9a;
    font-size: calc(11 / 390 * 100vw);
    line-height: 1;
    margin-bottom: calc(5 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__derivationItem--word {
        font-size: calc(11 / 1366 * 100vw);
        margin-bottom: calc(5 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetailFv__derivationItem--word {
        font-size: 11px;
        margin-bottom: 5px;
    }
}
.ProductDetailFv__derivationItem--name {
    font-size: calc(14 / 390 * 100vw);
    margin-bottom: calc(10 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__derivationItem--name {
        font-size: calc(14 / 1366 * 100vw);
        margin-bottom: calc(10 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetailFv__derivationItem--name {
        font-size: 14px;
        margin-bottom: 10px;
    }
}
.ProductDetailFv__derivationItem--btn {
    background: #c7c7c7;
    border-radius: 2px;
    text-align: center;
    font-size: calc(11 / 390 * 100vw);
    color: #fff;
    position: relative;
    padding: 2px 0;
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__derivationItem--btn {
        font-size: calc(11 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetailFv__derivationItem--btn {
        font-size: 11px;
    }
}
.ProductDetailFv__derivationItem--arrow {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
    width: 5px;
}
.ProductDetailFv__derivationItem--arrow:before {
    content: "";
    display: block;
    padding-top: 100%;
}
.ProductDetailFv__derivationItem--arrow:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    border-bottom: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: translate(-50%, -50%) rotate(-45deg);
}

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

/* SUPPORT */

/* ------------------------------------------------- */
.ToSupport .ToSupport__title {
    margin-bottom: calc(35 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .ToSupport .ToSupport__title {
        margin-bottom: 40px;
    }
}
.product-detail .ToSupport .ToSupport__flexBtn:not(:last-of-type) {
    margin: 20px auto calc(15 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .product-detail .ToSupport .ToSupport__flexBtn:not(:last-of-type) {
        margin: 20px auto 0;
    }
}
.product-detail .ToSupport .ToSupport__link {
    width: 89vw;
    margin: auto;
    border-color: #ffffff;
}
@media screen and (min-width: 768px) {
    .product-detail .ToSupport .ToSupport__link {
        width: 100%;
    }
}
.product-detail .ToSupport .ToSupport__link .fukidasiIcon {
    width: calc(16 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .product-detail .ToSupport .ToSupport__link .fukidasiIcon {
        width: 16px;
    }
}
@media screen and (min-width: 768px) {
    .ToSupport__flex {
        display: flex;
        margin: -20px auto 0;
        width: 740px;
        justify-content: center;
        flex-wrap: wrap;
    }
    .ToSupport__flexBtn {
        -ms-flex-preferred-size: 50%;
        flex-basis: 50%;
        max-width: 50%;
        padding: 0 10px;
        margin-top: 20px;
    }
}
.product-detail .ToSupport .ToSupport__link .pdfIcon {
    width: calc(14 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .product-detail .ToSupport .ToSupport__link .pdfIcon {
        width: 14px;
    }
}
.product-detail .ToSupport .ToSupport__link .parts-btn-01__text {
    font-size: calc(14 / 390 * 100vw);
}
@media screen and (min-width: 768px) {
    .product-detail .ToSupport .ToSupport__link .parts-btn-01__text {
        font-size: 14px;
    }
}

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

/* TOPICS */

/* ------------------------------------------------- */
#topicsDetail .topics-detail__article p .parts-btn-01,
.column-detail .parts-btn-01 {
    border: none;
}
#topicsDetail .topics-detail__article .caption {
    padding: 0 10.6666666667vw;
}
#topicsDetail .parts-btn-01 .parts-btn-01__icon,
.column-detail .parts-btn-01 .parts-btn-01__icon {
    position: relative;
    right: inherit;
}
.DetailPageNav .DetailPageNav__btnItem.-list .DetailPageNav__btn,
.DetailPageNav .DetailPageNav__btnItem.-prev .DetailPageNav__btn,
.DetailPageNav .DetailPageNav__btnItem.-next .DetailPageNav__btn {
    border: none;
}

.DetailPageNav .DetailPageNav__btnItem.-prev .parts-btn-01 .parts-btn-01__icon,
.DetailPageNav .DetailPageNav__btnItem.-next .parts-btn-01 .parts-btn-01__icon {
    position: relative;
    right: inherit;
}

@media screen and (min-width: 768px) {
    #topicsDetail .topics-detail__article .caption {
        padding: 0;
    }
}

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

/* PRODUCT一覧 */

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

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

/* TOPICS詳細に商品情報を記載する */

/* ------------------------------------------------- */
.topics-detail .youtubeOuter {
    padding: 0 10.6666666667vw;
}
@media screen and (min-width: 768px) {
    .topics-detail .youtubeOuter {
        padding: 0;
    }
}
.topics-detail .youtube {
    position: relative;
    height: 0;
    padding-bottom: 56.25%;
    overflow: hidden;
    margin-bottom: 10px;
}
.topics-detail .youtube iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
.topicsProduct {
    padding: 0 10.6666666667vw;
}
@media screen and (min-width: 768px) {
    .topicsProduct {
        padding: 0;
    }
}
.topicsProduct .colmun_product {
    background-color: inherit !important;
}
.topicsProduct .colmun_product-box_img img {
    height: 115px;
    padding-right: 20px;
}
@media screen and (min-width: 768px) {
    #topicsDetail .topicsProduct .colmun_product-box_img img {
        height: inherit;
        width: 323px !important;
        padding-right: 20px;
    }
}
.topicsProduct .colmun_product-box_link {
    justify-content: unset;
    margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
    .topicsProduct .colmun_product-box_link {
        margin-bottom: 50px;
    }
}
.topicsProduct .parts-btn-04 .parts-btn-04__text {
    margin-left: 0;
}

.column-detail__txtLink {
    margin-bottom: 20px;
}
.column-detail__txtLink .parts-btn-04__text {
    font-size: 14px;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 400;
    border-bottom: 1px solid;
}
.column-detail__txtLink .icon-arrow--right:after {
    transform: translate(-50%, -90%) rotate(-45deg);
}

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

/* SUPPORTにFlexコンテンツを追加 */

/* ------------------------------------------------- */
.faq__list img {
    max-width: 100%;
}
.faq__list__answerFlex {
    display: flex;
    margin: 0 -5px;
}
.faq__list__answerFlex:not(:last-of-type) {
    margin: 0 -5px 60px;
}
.faq__list__answerFlex__txt,
.faq__list__answerFlex__img {
    padding: 0 5px;
}
@media screen and (min-width: 768px) {
    .faq__list__answer .faq__list__answerFlex p {
        width: 100%;
    }
    .faq__list__answerFlex {
        display: flex;
        margin: 0 -10px;
    }
    .faq__list__answerFlex:not(:last-of-type) {
        margin: 0 -10px 50px;
    }
}

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

/* 商品詳細に使用上の注意を追加 */

/* ------------------------------------------------- */
.ProductDetail__noAction {
    margin-bottom: 110px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__noAction {
        margin-bottom: 140px;
    }
}
.ProductDetail__noAction__inner {
    padding: 0 30px;
    margin: auto;
}
@media screen and (min-width: 768px) {
    .ProductDetail__noAction__inner {
        padding: 0;
        max-width: calc(900 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetail__noAction__inner {
        max-width: 900px;
    }
}
.ProductDetail__noAction__ttl {
    background: #000;
    color: #fff;
    text-align: center;
    padding: 4px 0 5px;
}
.ProductDetail__noAction__ttl p {
    position: relative;
    font-size: 14px;
    display: inline-block;
    padding-left: 24px;
}
.ProductDetail__noAction__ttl p > span {
    content: "";
    display: inline-block;
    width: 16px;
    height: 16px;
    background: url(https://salonia.live/wp-content/uploads/2024/07/ico_attention.png)
        no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
}
.ProductDetail__noAction__flex {
    border: 1px solid #707070;
    border-top: none;
}
@media screen and (min-width: 768px) {
    .ProductDetail__noAction__flex {
        display: flex;
        flex-wrap: wrap;
    }
}
.ProductDetail__noAction__flexBox {
    padding: 20px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__noAction__flexBox {
        width: 50%;
    }
}
.ProductDetail__noAction__flexBox:not(:last-of-type) {
    border-bottom: 1px solid #707070;
}
@media screen and (min-width: 768px) {
    .ProductDetail__noAction__flexBox:not(:last-of-type) {
        border-bottom: none;
        border-right: 1px solid #707070;
    }
}
.ProductDetail__noAction__flexBox__ttl {
    font-size: 16px;
    text-align: center;
    margin-bottom: 20px;
}
.ProductDetail__noAction__flexBox__flex {
    display: flex;
}
.ProductDetail__noAction__flexBox__flexBox--img {
    min-width: 120px;
    max-width: 120px;
    margin-left: 15px;
}
@media screen and (min-width: 768px) {
    .ProductDetail__noAction__flexBox__flexBox--img {
        min-width: calc(120 / 1366 * 100vw);
        max-width: calc(120 / 1366 * 100vw);
    }
}
@media screen and (min-width: 1400px) {
    .ProductDetail__noAction__flexBox__flexBox--img {
        min-width: 120px;
        max-width: 120px;
    }
}
.ProductDetail__noAction__flexBox__flexBox--img img {
    width: 100%;
}
.ProductDetail__noAction__flexBox__flexBox--txt {
    font-size: 12px;
}
.ProductDetail__noAction__caption {
    color: #5b5b5b;
    font-size: 10px;
    margin-top: 10px;
}

.SupportArea__main {
    margin-bottom: 45px;
}
@media screen and (min-width: 768px) {
    .SupportArea__main {
        margin-bottom: 60px;
    }
}

/* リチウムイオン電池注意文 */
.lithiumAttention {
    width: 80vw;
    margin: 0 auto;
    max-width: 900px;
}
.lithiumAttention.versionTwo {
    width: inherit;
    padding: 0 20px;
}
.lithiumAttention__inner {
    padding: 30px 0;
    border-top: 1px solid #d6d6d6;
    border-bottom: 1px solid #d6d6d6;
}
.lithiumAttention.versionTwo .lithiumAttention__inner {
    background: #f5f5f5;
    border-top: none;
    border-bottom: none;
    padding: 30px;
}
.lithiumAttention__content__ttl {
    display: flex;
    align-items: center;
    margin-bottom: 15px;
}
.lithiumAttention__content__ttl__icon {
    width: 17%;
    text-align: left;
    max-width: 60px;
}
.lithiumAttention__content__ttl__icon img {
    width: 40px;
    display: inline-block;
    height: 34px;
}
.lithiumAttention__content__ttl__txt {
    width: 80%;
    font-size: 14px;
    font-weight: bold;
}
.lithiumAttention__content__txt {
    font-size: 12px;
}
.lithiumAttention__content__ttl {
    margin-bottom: 15px;
}
.lithiumAttention__content {
    margin-bottom: 10px;
}
.lithiumAttention__link span {
    position: relative;
    display: inline-block;
    font-size: 12px;
    font-weight: bold;
}
.lithiumAttention__link span:before {
    content: "";
    display: inline-block;
    background: url(../img/support/ico_window.svg) no-repeat;
    width: 13px;
    height: 13px;
    position: absolute;
    right: -18px;
    top: 4px;
    background-size: contain;
}

@media screen and (min-width: 768px) {
    .lithiumAttention.versionTwo {
        margin: 0 auto 80px;
        padding: 0;
        width: 90%;
        max-width: 850px;
    }
    .lithiumAttention__inner {
        position: relative;
        padding-left: 116px;
    }
    .lithiumAttention.versionTwo .lithiumAttention__inner {
        padding-left: 116px;
    }
    .lithiumAttention__icon {
        position: absolute;
        top: 50%;
        left: 37px;
        transform: translateY(-50%) translateX(0%);
        -webkit-transform: translateY(-50%) translateX(0%);
    }
    .lithiumAttention__icon img {
        display: block;
        width: 45px;
        height: auto;
    }
    .lithiumAttention__content {
        margin-bottom: 0px;
    }
    .lithiumAttention__content__ttl {
        margin-bottom: 15px;
    }
    .lithiumAttention__content__ttl__txt {
        font-size: 15px;
    }
    .lithiumAttention__link {
        position: absolute;
        bottom: 28px;
        right: 57px;
    }
}
.product-links.product-buy + .product-buy--modal + .column-detail__txtLink {
    margin-top: 0px;
    margin-bottom: 50px;
}

.product-links.product-buy:has(
        + .product-buy--modal + .column-detail__txtLink
    ) {
    margin-bottom: 10px;
}
/* 条件2: .column-detail__txtLink の後に .product-links.product-buy が続く場合、
 かつそのcolumn-detail__txtLinkの前にproduct-buy--modalと.product-links.product-buyがある場合 */
.product-links.product-buy
    + .product-buy--modal
    + .column-detail__txtLink:has(+ .product-links.product-buy) {
    margin-bottom: 50px;
}

/* コラムの目次がある場合に表示させるページ内リンク */
.column-detail__tocLink {
    position: fixed;
    right: calc(20 / 390 * 100vw);
    bottom: 85px;
    background: #000000;
    border-radius: 100px;
    z-index: 999;
    transition: 0.3s;
}
@media screen and (min-width: 768px) {
    .column-detail__tocLink {
        bottom: -30px;
    }
}
.column-detail__tocLink__inner > a {
    position: relative;
    display: block;
    color: #fff;
    padding: 6px 30px 6px 15px;
    font-size: 12px;
}
.column-detail__tocLink__inner > a > span {
    position: absolute;
    top: 50%;
    right: 11px;
    transform: translateY(-50%) translateX(-0%);
    -webkit-transform: translateY(-50%) translateX(0%);
    display: inline-flex;
    transition: 0.3s;
}
.column-detail__tocLink__inner > a > span.tocBottom {
    transform: translateY(-50%) translateX(0%) rotateZ(180deg);
    -webkit-transform: translateY(-50%) translateX(0%) rotateZ(180deg);
}

/* トピックス内に特設サイトへのバナーを設置する場合の調整CSS */
@media screen and (min-width: 768px) {
    .ProductDetailFv__bnrArea__inner {
        width: 100%;
        margin: 0 auto;
        max-width: calc(900 / 1366 * 100vw);
    }
}

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

こラム内の診断コンテンツ

------------------------------ */
.hairType_diagnosis {
    background: #f5f5f5;
}
.hairType_diagnosis__content {
    position: relative;
    padding: 30px 25px 60px;
    text-align: center;
}
.hairType_diagnosis__questionTitle {
    text-align: center;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-size: 11px;
    font-weight: 400;
    line-height: 1.4;
    margin-bottom: 10px;
}
.hairType_diagnosis__questionTitle__num {
    font-size: 26px;
}
.column-detail__article .hairType_diagnosis__questionTxt {
    font-size: 20px;
    text-align: center;
    font-weight: bold;
    margin-bottom: 15px;
    letter-spacing: 0px;
}
@media screen and (min-width: 768px) {
    .column-detail__article .hairType_diagnosis__questionTxt {
        margin-bottom: 20px;
    }
}
.hairType_diagnosis__questionList__li {
    position: relative;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__questionList__li {
        width: 350px;
        margin: auto;
    }
}
.hairType_diagnosis__questionList__li:last-of-type {
    padding: 0;
}
.hairType_diagnosis__questionList__li:not(:last-of-type) {
    margin-bottom: 10px;
    padding: 0;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__questionList__li:not(:last-of-type) {
        margin: 0 auto 15px;
    }
}
.hairType_diagnosis__questionList__li:not(:last-of-type):before {
    content: "A.";
    display: inline-block;
    position: absolute;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    color: #fff;
    left: 16px;
    top: 53%;
    bottom: 0;
    margin: auto;
    font-size: 19px;
    line-height: 1;
    transform: translateY(-50%) translateX(0%);
    -webkit-transform: translateY(-50%) translateX(0%);
    z-index: 2;
}
.hairType_diagnosis__questionList__li:last-of-type:before {
    content: "B.";
    display: inline-block;
    position: absolute;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    color: #fff;
    left: 16px;
    top: 53%;
    bottom: 0;
    margin: auto;
    font-size: 19px;
    line-height: 1;
    transform: translateY(-50%) translateX(0%);
    -webkit-transform: translateY(-50%) translateX(0%);
    z-index: 2;
}
.hairType_diagnosis__questionList__li__btn {
    display: block;
    width: 100%;
    background: #333333;
    color: #fff;
    font-size: 13px;
    border-radius: 100px;
    padding: 12px;
    transition: 0.3s;
}
.hairType_diagnosis__questionList__li__btn:hover {
    background: #333333;
    border-radius: 100px;
    opacity: 0.7;
}
.hairType_diagnosis__questionNum {
    position: absolute;
    bottom: 10px;
    right: 10px;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__questionNum {
        bottom: 17px;
        right: 17px;
    }
}
.column-detail__article .hairType_diagnosis__questionNum p {
    margin-bottom: 0;
}
.hairType_diagnosis__questionNum__inner {
    position: relative;
    width: 44px;
    height: 25px;
}
.hairType_diagnosis__questionNum__inner:before {
    content: "";
    display: inline-block;
    width: 28px;
    height: 1px;
    transform: rotate(-45deg);
    background: #919191;
    right: 6px;
    top: 17px;
    position: absolute;
}
.hairType_diagnosis__questionNum__now {
    font-size: 18px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    position: absolute;
    left: 0;
    top: 0;
    color: #333333;
    line-height: 1;
}
.hairType_diagnosis__questionNum__all {
    font-size: 10px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 400;
    position: absolute;
    right: 0;
    bottom: 0;
    color: #919191;
    line-height: 1;
}
.hairType_diagnosis__returnBtn {
    background: #fff;
    border: #333 1px solid;
    border-radius: 100px;
    width: 140px;
    margin: 30px auto 0;
    font-size: 11px;
    font-family: "Renner*", a-otf-gothic-bbb-pr6n, sans-serif;
    font-weight: 600;
    text-align: center;
    line-height: 1;
    padding: 11px;
    position: relative;
    display: block;
    letter-spacing: 0px;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__returnBtn {
        font-size: 12px;
    }
}
.hairType_diagnosis__returnBtn:before {
    content: "";
    display: inline-block;
    background: url(../img/svg/returnArrow.svg) no-repeat;
    width: 18px;
    height: 6px;
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%) translateX(0%);
    -webkit-transform: translateY(-50%) translateX(0%);
    background-size: cover;
    transition: 0.3s;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__returnBtn:before {
        left: 20px;
    }
    .hairType_diagnosis__returnBtn:hover:before {
        left: 15px;
    }
}
.hairType_diagnosis__resultBack {
    width: 165px;
    font-family: a-otf-gothic-bbb-pr6n, sans-serif;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__resultBack {
        margin: 35px auto 0;
        width: 215px;
    }
}
.hairType_diagnosis__resultTitle,
.column-detail__article .hairType_diagnosis__resultTxt {
    text-align: center;
    font-size: 13px;
    letter-spacing: 0px;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__resultTitle {
        font-size: 19px;
    }
    .hairType_diagnosis__resultTxt {
        margin-bottom: 35px !important;
    }
}
.hairType_diagnosis__resultLink {
    background: #fff;
    font-size: 14px;
    font-weight: bold;
    position: relative;
    letter-spacing: 0px;
    padding: 10px 10px 10px 50px;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__resultLink {
        padding: 20px 0;
        width: 465px;
        margin: auto;
        transform: scale(1);
        transition: 0.3s;
        outline: 2px solid rgba(51, 51, 51, 0);
    }
    .hairType_diagnosis__resultLink:hover {
        outline: 2px solid rgba(51, 51, 51, 1);
    }
}
.hairType_diagnosis__resultLink:before {
    content: "";
    display: inline-block;
    background: url(../img/svg/doubleArrow.svg) no-repeat;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%) translateX(0%);
    -webkit-transform: translateY(-50%) translateX(0%);
    background-size: cover;
}
@media screen and (min-width: 768px) {
    .hairType_diagnosis__resultLink:before {
        left: 38px;
    }
}
.hairType_diagnosis__resultType {
    background: #333;
    color: #fff;
    text-align: center;
    display: inline-block;
    padding: 11px 35px;
    font-size: 18px;
    line-height: 1;
    margin: 5px auto 20px;
}
/* ------------------------------

250828追加

------------------------------ */
.ProductDetailFv__atteTxt{
    text-align: center;
    font-size: 14px;
    margin-bottom:12px;
}
.ProductDetailFv__bottomTxt{
    text-align: left;
    font-size: 10px;
    margin-bottom:12px;
    color: #605F60;
    width: 100vw;
    max-width: calc(900 / 1366 * 100vw);
    margin-left: calc(-50vw + 50%);
    margin-top: 80px;
    padding-left: 20px;
}
@media screen and (max-width: 767px) {
    .ProductDetailFv__bottomTxt{
    max-width: 100%;
    margin-right: -40px;
    }
}
@media screen and (min-width: 768px) {
    .ProductDetailFv__title-sub{
    font-size: 14px;
    }
}
/* モーダルを一時的に無効化 */
.ProductDetailFv__purchaseBtn--comingsoon {
    pointer-events: none;
    opacity: 0.6;
    cursor: not-allowed;
    background-color: #666;
}
.AboutArea__aboutbox{
    display: flex;
    align-items: center;
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 120px;
    margin-bottom: -200px;
    padding-top: 50px;
    padding-bottom: 50px;
    border-bottom: 1px solid #858791;
    border-top: 1px solid #858791;
}
@media screen and (max-width: 767px) {
    .AboutArea__aboutbox{
        padding-top: 30px;
        padding-bottom: 40px;
    }
}
.AboutArea__aboutImgBox{
    width: 400px;
    flex-shrink: 0;
    margin-left: 46px;
}
.AboutArea__aboutTxtBox{
    flex: 1;
}
.AboutArea__aboutTxtBox h3{
    font-size: 22px;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    font-weight: 400;
    margin-bottom: 30px;
}
.AboutArea__aboutTxtBox p{
    font-size: 14px;
}
@media screen and (max-width: 767px) {
    .AboutArea__aboutTxtBox h3{
        font-size: 4vw;
        margin-bottom: 13px;
    }
    .AboutArea__aboutTxtBox p{
        font-size: 3.4vw;
        line-height: 2em;
        letter-spacing: 0.1em;
    }
}
.AboutArea__aboutImgBox img{
    width: 100%;
}
@media screen and (max-width: 767px) {
    .AboutArea__aboutbox{
        flex-wrap: wrap;
        width:80vw ;
        padding-left:auto;
        padding-right:auto;
        margin-bottom: 0;
        margin-top: 0;
    }
    .AboutArea__aboutImgBox{
        margin-left: 0;
        width: 100%;
    }
    .AboutArea__aboutTxtBox{
        width: 100%;
        margin-bottom: 20px;
    }
}

/* coming soon - temporarily disable link */
.coming-soon {
    pointer-events: none;
    opacity: 0.5;
}

.coming-soon a {
    pointer-events: none;
    cursor: default;
}

/* ロゴとキャッチコピーのふわっとアニメーション */
.FvTitle .FvTitle__logo.is-show,
.FvTitle .FvTitle__catch.is-show {
    opacity: 1;
    filter: blur(0);
}

/* ページロード後に自動的にアニメーション発火 */
@keyframes fadeInBlur {
    from {
        opacity: 0;
        filter: blur(10px);
    }
    to {
        opacity: 1;
        filter: blur(0);
    }
}

.FvTitle .FvTitle__logo,
.FvTitle .FvTitle__catch {
    animation: fadeInBlur 0.5s ease forwards;
    animation-delay: 0.1s;
}

/* JSのタイポアニメーションを無効化（キャッチコピーのみ） */
.app-lading__catch {
    /* JSが文字分割する前に、要素全体を制御 */
    display: block !important;
    font-size: 0 !important; /* 元のテキストを非表示 */
}

.app-lading__catch * {
    /* JSが作る分割された文字要素を無効化 */
    display: none !important;
}

/* キャッチコピー本体のテキストを直接表示 */
.FvTitle__catch::before {
    content: "BEAUTY is SIMPLE";
    display: block;
    font-size: 3vw; /* 元のフォントサイズを復元 */
    letter-spacing: 0.2em;
    opacity: 0;
    filter: blur(10px);
    animation: fadeInBlur 0.5s ease forwards;
    animation-delay: 0.1s;
}

@media (min-width: 768px) {
    .FvTitle__catch::before {
        font-size: 1.4rem;
    }
}

/* 返金保証エリア - PdRefundGuarantee */
.PdRefundGuarantee {
    background: #fff;
    border: 1px solid #ddd;
    width: 90vw;
    margin: 50px auto;
    max-width: 1040px;
}

.PdRefundGuarantee__inner {
    display: flex;
    margin: 0 auto;
    align-items: center;
}

.PdRefundGuarantee__left {
    flex: 0 0 auto;
    /* width: 280px; */
    text-align: center;
    padding-left: 40px;
    padding-right: 40px;
}

.PdRefundGuarantee__head {
    font-size: 20px;
    line-height: 1.5;
    color: #333;
    margin-bottom: 20px;
    text-align: center;
}

.PdRefundGuarantee__btn {
    display: inline-block;
    padding: 12px 24px;
    background: #fff;
    border: 1px solid #ddd;
    border-radius: 30px;
    font-size: 15px;
    color: #333;
    text-decoration: none;
    transition: background 0.2s, border-color 0.2s;
}

.PdRefundGuarantee__btn:hover {
    background: #f8f8f8;
    border-color: #bbb;
}

.PdRefundGuarantee__right {
    flex: 1;
    padding: 40px;
    border-left: 1px solid #ddd;
}

.PdRefundGuarantee__txt {
    font-size: 14px;
    line-height: 1.8;
    color: #333;
    margin-bottom: 16px;
}

.PdRefundGuarantee__note {
    font-size: 11px;
    line-height: 1.7;
    color: #333;
    margin-bottom: 12px;
}

.PdRefundGuarantee__note:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .PdRefundGuarantee__inner {
        flex-direction: column;
        /* padding: 20px 15px; */
    }

    .PdRefundGuarantee__left {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        /* padding-bottom: 16px; */
        /* margin-bottom: 16px; */
        border-right: none;
        border-bottom: 1px solid #ddd;
        text-align: left;
        flex-direction: row;
        /* gap: 12px; */
    }

    .PdRefundGuarantee__head {
        font-size: 16px;
        margin-bottom: 0;
        flex: 1;
        border-right: 1px solid #ddd;
        padding: 20px;
    }

    .PdRefundGuarantee__btn {
        flex-shrink: 0;
        padding: 10px 16px;
        font-size: 15px;
        margin: 0 20px;
    }

    .PdRefundGuarantee__right {
        padding: 20px;
    }

    .PdRefundGuarantee__txt{
        font-size: 14px;
    }
    .PdRefundGuarantee__note {
        font-size: 10px;
    }
}