@import url('https://fonts.googleapis.com/css2?family=Bebas+Neue:wght@300;400;500;600;700;900&display=swap');

@font-face {
    font-family: 'Yu Mincho';
    src: url('/item/s/v2/fonts/yu-mincho-regular.eot');
    /* IE9 Compat Modes */
    src: url('/item/s/v2/fonts/yu-mincho-regular.eot?#iefix') format('embedded-opentype'),
        /* IE6-IE8 */
        url('/item/s/v2/fonts/yu-mincho-regular.woff') format('woff'),
        /* Modern Browsers */
        url('/item/s/v2/fonts/yu-mincho-regular.ttf') format('truetype');
    /* Safari, Android, iOS */
}

:root {
    --font-family__bebas: "Bebas Neue", sans-serif;
    --font-family__yu_mincho: "Yu Mincho", "Hiragino Mincho ProN", 'Noto Sans JP', sans-serif;
    --color__gray-444: #444;
}

.-_sp {
    display: block;
}

.trait-top-image-title-container {
    position: absolute;
    top: 31px;
    left: 30px;
    height: 100%;
}

.trait-top-image-container {
    position: relative;
}

.trait-top-image-title {
    color: var(--color__white);
    text-shadow: 2px 2px 16px rgba(0, 0, 0, 0.90);
    font-family: var(--font-family__bebas);
    font-size: 40px;
    font-weight: var(--font-weight-regular);
    line-height: 110%;
    /* 44px */
    letter-spacing: 9.2px;
}

.trait-top-image-sub-title {
    position: absolute;
    right: 40px;
    bottom: 68px;
    display: flex;
    align-items: center;
    gap: 10px;
    text-align: right;
    flex-direction: row-reverse;
}

.trait-top-image-sub-title span {
    width: 16px;
    color: var(--color__white);
    text-shadow: 1px 1px 10px rgba(0, 0, 0, 0.60);
    font-family: var(--font-family__yu_mincho);
    font-size: 16px;
    font-weight: var(--font-weight-regular);
    line-height: 1.6;
    letter-spacing: 2.24px;
}

.trait-introduction-title {
    color: var(--color__gray-333);
    text-align: center;
    font-family: var(--font-family__yu_mincho);
    font-size: 18px;
    font-weight: var(--font-weight-regular);
    line-height: 180%;
    /* 32.4px */
    margin-bottom: 20px;
}

.trait-introduction-container {
    padding: 60px 0;
    align-items: center;
    margin: 0 30px;
}

.trait-description {
    color: var(--color__gray-555);
    font-family: var(--font-family__noto-sans);
    font-size: var(--font-size__small);
    font-weight: var(--font-weight-light);
    line-height: 180%;
    /* 23.4px */
    letter-spacing: 3px;
}

.trait-video-container {
    width: 100%;
    height: 100%;
    aspect-ratio: 393/220;
}

iframe.trait-video-iframe {
    width: 100%;
    height: 100%;
    aspect-ratio: 393 / 220;
}

.trait-sub-section-group {
    margin: 60px 0;
}

.trait-title {
    color: #E4E4E4;
    font-family: var(--font-family__bebas);
    font-size: 25px;
    font-weight: var(--font-weight-regular);
    line-height: 1.6;
    letter-spacing: 7px;
    text-align: center;
    margin-bottom: 15px;
}

.trait-sub-title {
    color: var(--color__gray-333);
    text-align: center;
    font-family: var(--font-family__yu_mincho);
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 1.6;
    letter-spacing: 3px;
    margin-bottom: 40px;
}

.trait-sub-title span {
    display: block;
}

.trait-sub-section-group.trait-design-section {
    margin: 60px 45.5px;
}

.trait-design-section .trait-description {
    margin-top: 40px;
}

.trait-dark-background-container {
    background: #F4F2F0;
    padding: 60px 0;
}

.trait-title-alt {
    color: #949494;
    font-family: var(--font-family__bebas);
    font-size: 25px;
    font-weight: var(--font-weight-regular);
    line-height: 1.6;
    letter-spacing: 7px;
    text-align: center;
}

.trait-media-image-container {
    display: flex;
    margin: 40px 0;
    gap: 5px;
}

img.trait-media-image {
    width: calc((100vw - 10px) /3);
    height: calc((100vw - 10px) /3);
}

.trait-sub-title-alt {
    color: var(--color__gray-333);
    text-align: center;
    font-family: var(--font-family__noto-sans);
    font-size: var(--font-base__size);
    font-weight: var(--font-weight-regular);
    line-height: 1.6;
    letter-spacing: 3px;
}

.trait-media-container .trait-description {
    margin: 30px 45.5px;
}

.trait-list-of-achievements {
    display: flex;
    padding: 20px;
    flex-direction: column;
    align-items: flex-start;
    margin: 30px 45.5px;
    border: 1px solid #8F8D88;
    color: var(--color__gray-555);
    font-family: var(--font-family__noto-sans);
    font-size: 11px;
    font-weight: var(--font-weight-light);
    line-height: 24px;
    text-align: center;
}

a.trait-option-item-link,
a.trait-option-item-link:link,
a.trait-option-item-link:visited {
    display: flex;
    height: 47px;
    padding: 10px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    background: #B0976E;
    margin: 30px auto 0;
    width: 220px;
    color: var(--color__white);
    text-align: center;
    font-family: var(--font-family__noto-sans);
    font-size: var(--font-size__small);
    font-weight: var(--font-weight-medium);
    line-height: 125%;
    /* 16.25px */
    letter-spacing: 0.65px;
}

a.trait-option-item-link:after {
    content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTkiIGhlaWdodD0iMTkiIHZpZXdCb3g9IjAgMCAxOSAxOSIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgaWQ9ImNoZXZyb24tcmlnaHQiPgo8cGF0aCBpZD0iVmVjdG9yIDY2IiBkPSJNNy4yNSAxMy4yNUwxMS4xODc1IDkuNUw3LjI1IDUuNzUiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9nPgo8L3N2Zz4K);
    width: 18px;
    height: 18px;
}

.trait-quality-section .trait-sub-section-image-container {
    margin: 40px 45.5px;
}

.trait-sub-section-group.trait-quality-section .trait-description {
    margin: 0 20px;
}

.trait-advantage-container.trait-dark-background-container .trait-advantage-image-container {
    margin: 40px 36.5px;
}

.trait-advantage-container.trait-dark-background-container .trait-description {
    margin: 30px 20px 60px;
}

.trait-sub-title-alt span {
    display: block;
}

.trait-advantage-container.trait-dark-background-container .trait-description:last-child {
    margin-bottom: 0;
}

.trait-sub-section-group.trait-assemble-section .trait-description,
.trait-sub-section-group.trait-inspection-section .trait-description {
    margin: 40px 20px;
}

.trait-2-image-layout {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    align-self: stretch;
    gap: 3px;
}

.trait-1-image-layout {
    margin-bottom: 3px;
}

.trait-advantage-image-container {
    margin: 40px 45.5px;
}

.trait-showroom-container.trait-dark-background-container .trait-description {
    40px: ;
    40px: 4;
    margin: 40px;
}

.trait-showroom-list {
    margin: 0 36.5px;
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
}

a.trait-showroom-item {
    display: inline-block;
    width: calc((100vw - 93px) / 2);
}

.trait-showroom-item-name {
    margin-top: 10px;
    text-align: center;
    color: var(--color__gray-555);
    font-family: var(--font-family__noto-sans);
    font-size: var(--font-size__extra-small);
    font-weight: var(--font-weight-regular);
    line-height: 1.6;
    letter-spacing: 3px;
}

.trait-description-alt {
    color: var(--color__gray-555);
    text-align: center;
    font-family: var(--font-family__noto-sans);
    font-size: 12px;
    font-weight: var(--font-weight-regular);
    line-height: 24px;
    /* 200% */
    letter-spacing: 3px;
}

.trait-showroom-container.trait-dark-background-container .trait-description-alt {
    margin: 40px 20px 16px;
}

.trait-search-link-button-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    align-self: stretch;
}

a.trait-search-link-button {
    padding: 16px 10px;
    width: 220px;
}

.trait-arrow-container {
    width: 100%;
}

span.trait-arrow-down:after {
    content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjUiIGhlaWdodD0iMjQiIHZpZXdCb3g9IjAgMCAyNSAyNCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZD0iTTcuNSA5TDEyLjUgMTQuMjVMMTcuNSA5IiBzdHJva2U9IiM1NTU1NTUiIHN0cm9rZS13aWR0aD0iMS41IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9zdmc+Cg==);
    width: 24px;
    height: 24px;
    display: block;
}

span.trait-arrow-down {
    width: 24px;
    height: 24px;
    display: block;
    margin: 16px auto;
}

a.trait-video-img-wrap:before {
    content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNTYiIHZpZXdCb3g9IjAgMCA1NiA1NiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPG1hc2sgaWQ9Im1hc2swXzI3NjAzXzEzNjU4OSIgc3R5bGU9Im1hc2stdHlwZTpsdW1pbmFuY2UiIG1hc2tVbml0cz0idXNlclNwYWNlT25Vc2UiIHg9IjMiIHk9IjMiIHdpZHRoPSI1MCIgaGVpZ2h0PSI1MCI+CjxwYXRoIGQ9Ik0yNy45OTkzIDUxLjMzODVDNDAuODg2MyA1MS4zMzg1IDUxLjMzMjcgNDAuODkyMiA1MS4zMzI3IDI4LjAwNTJDNTEuMzMyNyAxNS4xMTgyIDQwLjg4NjMgNC42NzE4OCAyNy45OTkzIDQuNjcxODhDMTUuMTEyMyA0LjY3MTg4IDQuNjY2MDIgMTUuMTE4MiA0LjY2NjAyIDI4LjAwNTJDNC42NjYwMiA0MC44OTIyIDE1LjExMjMgNTEuMzM4NSAyNy45OTkzIDUxLjMzODVaIiBmaWxsPSJ3aGl0ZSIgc3Ryb2tlPSJ3aGl0ZSIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjxwYXRoIGQ9Ik0yMy4zMzIgMjguMDA0NVYxOS45MjE5TDMwLjMzMiAyMy45NjMyTDM3LjMzMiAyOC4wMDQ1TDMwLjMzMiAzMi4wNDU5TDIzLjMzMiAzNi4wODcyVjI4LjAwNDVaIiBmaWxsPSJibGFjayIgc3Ryb2tlPSJibGFjayIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+CjwvbWFzaz4KPGcgbWFzaz0idXJsKCNtYXNrMF8yNzYwM18xMzY1ODkpIj4KPHBhdGggZD0iTTAgMEg1NlY1NkgwVjBaIiBmaWxsPSIjRkFGQUZBIi8+CjwvZz4KPC9zdmc+Cg==);
    width: 56px;
    height: 56px;
    aspect-ratio: 1/1;
    display: block;
    position: absolute;
    left: calc((100vw - 56px) / 2);
    top: calc((100% - 56px) / 2);
    z-index: 1;
}

.trait-video-wrap {
    width: 100%;
    height: 100%;
    aspect-ratio: 393 / 220;
    position: relative;
}

span.trait-video-img-overlay {
    display: block;
    position: absolute;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.15) 100%);
    width: 100%;
    height: 100%;
    aspect-ratio: 393 / 220;
}

.trait-introduction-group-container {
    background: #F4F2F0;
}

.trait-showroom-container.trait-dark-background-container {
    background: #DFDAD2;
}

@media only screen and (min-width: 640px) {
    .-_sp {
        display: none;
    }
}

@media only screen and (min-width: 678px) {
    a.trait-video-img-wrap {
        cursor: pointer;
    }

    .trait-main-container {
        max-width: var(--pc-content-width);
        margin: 0 auto;
    }

    .trait-top-image-title-container {
        top: unset;
        bottom: 83px;
        width: 100%;
        left: auto;
        height: auto;
    }

    .trait-top-image-sub-title {
        display: block;
        position: static;
        text-align: center;
    }

    .trait-top-image-title {
        text-align: center;
        margin-bottom: 20px;
        font-size: 80px;
        letter-spacing: 18.4px;
    }

    .trait-top-image-sub-title span {
        font-size: 26px;
        letter-spacing: 4.16px;
    }

    .trait-introduction-container {
        padding: 100px 0;
        max-width: 970px;
        margin: 0 auto;
    }

    .trait-introduction-title {
        margin-bottom: 30px;
        font-size: 24px;
        letter-spacing: 3px;
    }

    .trait-description {
        font-size: var(--font-base__size);
        line-height: 220%;
        text-align: center;
    }

    .trait-sub-section-group.trait-design-section {
        margin: 100px 118px;
    }

    .trait-title {
        font-size: 32px;
        letter-spacing: 16px;
    }

    .trait-sub-title {
        color: #333;
        font-size: 24px;
        margin-bottom: 60px;
    }

    .trait-sub-title span {
        display: inline;
    }

    .trait-design-section .trait-description {
        margin-top: 60px;
    }

    .trait-dark-background-container {
        padding: 100px 0;
    }

    .trait-media-image-container {
        margin: 60px 0;
    }

    .trait-title-alt {
        font-size: 32px;
        letter-spacing: 14px;
    }

    img.trait-media-image {
        width: calc((100% - 10px) /3);
        height: auto;
    }

    .trait-sub-title-alt {
        font-size: 24px;
    }

    .trait-media-container .trait-description {
        max-width: 963px;
        margin: 30px auto;
    }

    .trait-list-of-achievements {
        max-width: 795px;
        padding: 30px;
        margin: 30px auto;
        font-size: var(--font-base__size);
        line-height: 220%;
        /* 30.8px */
        letter-spacing: 3px;
    }

    a.trait-option-item-link,
    a.trait-option-item-link:link,
    a.trait-option-item-link:visited {
        width: 350px;
        height: 56px;
        font-size: var(--font-size__large);
        letter-spacing: 0.75px;
        line-height: 1.6;
    }

    a.trait-option-item-link:after {
        width: 24px;
        height: 24px;
    }

    .trait-sub-section-group.trait-quality-section {
        margin: 100px 118px;
    }

    .trait-quality-section .trait-sub-section-image-container {
        margin: 60px 0;
    }

    .trait-advantage-container.trait-dark-background-container {
        padding: 100px 150px;
    }

    .trait-advantage-container.trait-dark-background-container .trait-advantage-image-container {
        margin: 60px 0;
    }

    .trait-advantage-container.trait-dark-background-container .trait-description {
        max-width: 880px;
        margin: 30px auto 100px;
        font-size: 17px;
        letter-spacing: 3px;
    }

    .trait-sub-title-alt span {
        display: inline;
    }

    .trait-sub-section-group {
        margin: 100px 0;
    }

    .trait-sub-section-image-container-group {
        display: flex;
        gap: 20px;
    }

    .trait-2-image-layout {
        flex-direction: column;
        gap: 20px;
    }

    .trait-1-image-layout {
        margin-bottom: 0;
    }

    .trait-sub-section-group.trait-assemble-section .trait-description,
    .trait-sub-section-group.trait-inspection-section .trait-description {
        max-width: 1164px;
        margin: 60px auto 100px;
    }

    .trait-showroom-container.trait-dark-background-container .trait-description {
        margin: 60px auto;
        max-width: 800px;
    }

    a.trait-showroom-item {
        width: calc((100% - 40px) / 3);
    }

    .trait-showroom-list {
        row-gap: 40px;
    }

    .trait-showroom-item-name {
        font-size: var(--font-size__large);
        margin-top: 14px;
    }

    a.trait-showroom-item:hover {
        text-decoration: none;
    }

    .trait-showroom-container.trait-dark-background-container .trait-description-alt {
        margin: 60px auto 16px;
        max-width: 800px;
        font-weight: var(--font-weight-light);
    }

    span.trait-arrow-down {
        margin-bottom: 60px;
    }

    a.trait-video-img-wrap:before {
        width: 100px;
        height: 100px;
        left: calc((100% - 100px) / 2);
        top: calc((100% - 100px) / 2);
        content: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgdmlld0JveD0iMCAwIDEwMCAxMDAiIGZpbGw9Im5vbmUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CjxtYXNrIGlkPSJtYXNrMF8yNzU4NV8xNDYyNjQiIHN0eWxlPSJtYXNrLXR5cGU6bHVtaW5hbmNlIiBtYXNrVW5pdHM9InVzZXJTcGFjZU9uVXNlIiB4PSI3IiB5PSI3IiB3aWR0aD0iODYiIGhlaWdodD0iODYiPgo8cGF0aCBkPSJNNDkuOTk5NyA5MS42NjkzQzczLjAxMjIgOTEuNjY5MyA5MS42NjY0IDczLjAxNTEgOTEuNjY2NCA1MC4wMDI2QzkxLjY2NjQgMjYuOTkwMSA3My4wMTIyIDguMzM1OTQgNDkuOTk5NyA4LjMzNTk0QzI2Ljk4NzIgOC4zMzU5NCA4LjMzMzAxIDI2Ljk5MDEgOC4zMzMwMSA1MC4wMDI2QzguMzMzMDEgNzMuMDE1MSAyNi45ODcyIDkxLjY2OTMgNDkuOTk5NyA5MS42NjkzWiIgZmlsbD0id2hpdGUiIHN0cm9rZT0id2hpdGUiIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlLWxpbmVqb2luPSJyb3VuZCIvPgo8cGF0aCBkPSJNNDEuNjY2IDUwLjAwMzZWMzUuNTcwM0w1NC4xNjYgNDIuNzg3TDY2LjY2NiA1MC4wMDM2TDU0LjE2NiA1Ny4yMjAzTDQxLjY2NiA2NC40MzdWNTAuMDAzNloiIGZpbGw9ImJsYWNrIiBzdHJva2U9ImJsYWNrIiBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPC9tYXNrPgo8ZyBtYXNrPSJ1cmwoI21hc2swXzI3NTg1XzE0NjI2NCkiPgo8cGF0aCBkPSJNMCAwSDEwMFYxMDBIMFYwWiIgZmlsbD0iI0ZBRkFGQSIvPgo8L2c+Cjwvc3ZnPgo=);
    }

    .trait-showroom-container.trait-dark-background-container {
        padding: 100px 150px;
    }

    a.trait-search-link-button {
        width: 276px;
    }

    a.trait-option-item-link:hover {
        text-decoration: none;
    }
}