@charset 'UTF-8';

@import url(//fast.fonts.net/t/1.css?apiType=css&projectid=84cb815e-f265-4414-8797-9b7f9c669107);

@import url(//fonts.googleapis.com/css?family=Noto+Sans+JP:100,300,400,500,700,900&display=swap);

@font-face
{
    font-family: 'Trade Gothic W05 400';
    font-weight: 400;
    font-style: normal;

    src: url('../Fonts/27d6b186-d38f-4cb8-9f07-cc5885f0afda.eot?#iefix');
    src: url('../Fonts/27d6b186-d38f-4cb8-9f07-cc5885f0afda.eot?#iefix') format('eot'), url('../Fonts/28a6da92-8a64-42a5-9565-914caf257538.woff2') format('woff2'), url('../Fonts/6e6d9ee8-cbc5-4670-b243-c90a93b3a8d2.woff') format('woff'), url('../Fonts/f083dab1-d10a-41fa-b79f-0065d2839e1f.ttf') format('truetype');
}

@font-face
{
    font-family: 'Trade Gothic W05 700';
    font-weight: 700;
    font-style: normal;

    src: url('../Fonts/ae44d74e-f1fe-4341-939f-f3451a80e201.eot?#iefix');
    src: url('../Fonts/ae44d74e-f1fe-4341-939f-f3451a80e201.eot?#iefix') format('eot'), url('../Fonts/67fc974b-bcc7-48aa-bff0-15c824085f7d.woff2') format('woff2'), url('../Fonts/30bc8000-1637-4079-9dd6-d93c7c1d8245.woff') format('woff'), url('../Fonts/2624fd1f-eca0-453e-989c-35a6f6383122.ttf') format('truetype');
}

/*----------------------------------------
	clearfix
----------------------------------------*/

/*----------------------------------------
	IE6 Upgrade Warning
----------------------------------------*/

#ieError
{
    position: absolute;
    z-index: 1000;
    top: 0;
    left: 0;

    width: 100%;
    padding: 20px;

    text-align: center;

    opacity: .8;
    color: #fff;
    background: #000;

        filter: alpha(opacity=80);
    -ms-filter: 'alpha( opacity=80 )';
}

#ieError strong
{
    color: #fff;
}

#ieError a
{
    text-decoration: underline;

    color: #d90000;
}

/*! normalize.css v3.0.0 | MIT License | git.io/normalize */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html
{
    font-family: sans-serif;
    /* 1 */

        -ms-text-size-adjust: 100%;
    /* 2 */
    -webkit-text-size-adjust: 100%;
    /* 2 */
}

/**
 * Remove default margin.
 */

body
{
    margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary
{
    display: block;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video
{
    display: inline-block;
    /* 1 */

    vertical-align: baseline;
    /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls])
{
    display: none;

    height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */

[hidden],
template
{
    display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a
{
    background: transparent;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover
{
    outline: 0;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title]
{
    border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,
strong
{
    font-weight: bold;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn
{
    font-style: italic;
}

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

h1
{
    font-size: 2em;

    margin: .67em 0;
}

/**
 * Address styling not present in IE 8/9.
 */

mark
{
    color: #000;
    background: #ff0;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small
{
    font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup
{
    font-size: 75%;
    line-height: 0;

    position: relative;

    vertical-align: baseline;
}

sup
{
    top: -.5em;
}

sub
{
    bottom: -.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img
{
    border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root)
{
    overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure
{
    margin: 1em 40px;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr
{
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
    height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre
{
    overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp
{
    font-family: monospace, monospace;
    font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,
input,
optgroup,
select,
textarea
{
    /* 1 */
    font: inherit;
    /* 2 */

    margin: 0;

    color: inherit;
    /* 3 */
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10.
 */

button
{
    overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8+, and Opera
 * Correct `select` style inheritance in Firefox.
 */

button,
select
{
    text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type='button'],
input[type='reset'],
input[type='submit']
{
    /* 2 */
    cursor: pointer;

    -webkit-appearance: button;
    /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled]
{
    cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner
{
    padding: 0;

    border: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input
{
    line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type='checkbox'],
input[type='radio']
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    /* 1 */
    padding: 0;
    /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type='number']::-webkit-inner-spin-button,
input[type='number']::-webkit-outer-spin-button
{
    height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type='search']
{
    /* 1 */
    -webkit-box-sizing: content-box;
    /* 2 */
            box-sizing: content-box;

    -webkit-appearance: textfield;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type='search']::-webkit-search-cancel-button,
input[type='search']::-webkit-search-decoration
{
    -webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset
{
    margin: 0 2px;
    padding: .35em .625em .75em;

    border: 1px solid #c0c0c0;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend
{
    /* 1 */
    padding: 0;

    border: 0;
    /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9.
 */

textarea
{
    overflow: auto;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup
{
    font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table
{
    border-spacing: 0;
    border-collapse: collapse;
}

td,
th
{
    padding: 0;
}

/*----------------------------------------
	reset
----------------------------------------*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
dialog,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
time,
mark,
audio,
video
{
    font: inherit;
    font-family: 'Trade Gothic W05 700', 'Noto Sans JP', sans-serif;
    font-size: 100%;
    font-weight: 500;
    line-height: 1;

    margin: 0;
    padding: 0;

    vertical-align: baseline;

    color: #000;
    border: 0;
    outline: 0;
}

header,
footer,
article,
section,
aside,
hgroup,
nav,
menu,
figure,
figcaption,
time
{
    display: block;
}

li
{
    list-style: none;
}

ol,
ul
{
    list-style: none;
}

img
{
    font-size: 0;
    line-height: 0;

    vertical-align: top;

    border: 0;
}

table
{
    border-spacing: 0;
    border-collapse: collapse;
}

h1,
h2,
p,
pre
{
    word-wrap: break-word;
}

caption,
th,
td
{
    font-weight: 400;

    text-align: left;
    vertical-align: middle;
}

caption
{
    font: inherit;
    font-size: 100%;

    margin: 0;
    padding: 0;

    border: 0;
}

tbody,
tfoot,
thead,
tr
{
    vertical-align: baseline;
}

tbody,
tfoot,
thead,
tr,
th,
td
{
    font: inherit;
    font-size: 100%;

    margin: 0;
    padding: 0;

    border: 0;
}

hr
{
    display: block;

    height: 1px;
    margin: 1em 0;
    padding: 0;

    border: 0;
    border-top: 1px solid #ccc;
}

input,
select
{
    vertical-align: middle;
}

input,
button,
textarea,
select
{
    margin: 0;
    padding: 0;

    border: none;
    border-radius: 0;
    outline: none;
    background: none;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

button
{
    padding: 0;

    cursor: pointer;

    border: none;
    outline: none;
    background-color: transparent;

    -webkit-appearance: none;
       -moz-appearance: none;
            appearance: none;
}

select::-ms-expand
{
    display: none;
}

.clearfix
{
    min-height: 1px;

    _height: 1%;
}

.clearfix:after
{
    display: block;
    visibility: hidden;
    clear: both;

    height: 0;

    content: '';
}

html,
body
{
    height: 100%;
    height: 100%;
    margin: 0;
    padding: 0;

    -webkit-text-size-adjust: none;
}

*
{
    -webkit-box-sizing: border-box;
            box-sizing: border-box;

         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
}

html
{
    -webkit-text-size-adjust: 100%;
        -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
       -moz-font-smoothing: antialiased;
        -ms-font-smoothing: antialiased;
         -o-font-smoothing: antialiased;
}

body
{
    font-family: 'Trade Gothic W05 700', 'Noto Sans JP', sans-serif;
    font-size: 12px;
    line-height: 1;

    text-align: center;
    letter-spacing: .01em;

    color: #000;

    -moz-osx-font-smoothing: grayscale;
}

a
{
    cursor: pointer;
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    text-decoration: none;

    color: #000;
}

a img
{
    -webkit-transition: all .4s ease;
            transition: all .4s ease;

    border: none;
}

img
{
    max-width: 100%;

    vertical-align: bottom;
}

.sp-visible
{
    display: none !important;
}

.pankuzu
{
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding-top: 30px;

    text-align: left;
}

.pankuzu ul
{
    /*1217追加 start*/
    font-size: 10px;
    font-size: .625rem;

    letter-spacing: .03em;

    color: #646464;
    /*1217追加 end*/
}

.pankuzu ul li
{
    font-size: 10px;
    font-size: .625rem;

    display: inline-block;

    margin-right: 25px;

    letter-spacing: .03em;

    color: #646464;
}

.pankuzu ul li a
{
    font-size: 10px;
    font-size: .625rem;

    position: relative;

    letter-spacing: .03em;

    color: #646464;
}

.pankuzu ul li a:after
{
    position: absolute;
    top: 2px;
    right: -15px;

    width: 5px;
    height: 10px;

    content: '';

    background-image: url('../images/pankuzu_arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.show
{
    opacity: 1 !important;
}

.side
{
    position: fixed;
    z-index: 900;
    top: 0;
    right: -200px;

    height: 100%;
    margin: auto;
}

.side ul
{
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;

    height: 95px;
    margin: auto;
}

.side ul li
{
    width: 28px;
}

.side ul li:nth-child(2)
{
    margin: 13px 0;
}

.side ul li a
{
    display: block;
}

.side ul li a img
{
    width: 100%;
    height: auto;
}

.side .page-top
{
    position: absolute;
    right: 0;
    bottom: 50px;

    display: block;

    width: 45px;
}

.side .page-top img
{
    width: 100%;
    height: auto;
}

.side.active
{
    right: 20px !important;

    -webkit-transition: all .7s cubic-bezier(.77, 0, .175, 1);
            transition: all .7s cubic-bezier(.77, 0, .175, 1);
}

.view-btn
{
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: bold;
    line-height: 90px;

    position: relative;

    display: block;

    width: 480px;
    height: 90px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    text-align: center;
    letter-spacing: .04em;

    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

.view-btn:before,
.view-btn:after
{
    position: absolute;
    top: 37px;
    right: 28px;

    width: 38px;
    height: 13px;

    content: '';
    -webkit-animation: arrow-blink 1.2s linear infinite alternate;
            animation: arrow-blink 1.2s linear infinite alternate;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.view-btn:before
{
    z-index: 1;

    background-image: url('../images/view_arrow.svg');
}

.view-btn:after
{
    background-image: url('../images/view_arrow_black.svg');
}

.page-title
{
    font-size: 40px;
    font-size: 2.5rem;
    font-weight: bold;

    margin-top: 50px;

    letter-spacing: .06em;
}

.page-title span
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    display: block;

    margin-top: 15px;

    letter-spacing: .2em;

    color: #a6192e;
}

.back-link
{
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: bold;
    line-height: 85px;

    position: relative;

    display: block;

    width: 400px;
    height: 85px;
    margin: 0 auto;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    letter-spacing: .04em;

    color: #646464;
    border: 1px #828282 solid;
}

.back-link:before,
.back-link:after
{
    position: absolute;
    z-index: 0;
    top: 35px;
    left: 28px;

    width: 33px;
    height: 13px;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.back-link:before
{
    background-image: url('../images/back_arrow_white.svg');
}

.back-link:after
{
    z-index: 1;

    background-image: url('../images/back_arrow.svg');
}

/*--------------- 
  animation
---------------*/

@-webkit-keyframes fadeIn
{
    from
    {
        opacity: 0;
    }

    to
    {
        opacity: 1;
    }
}

@keyframes fadeIn
{
    from
    {
        opacity: 0;
    }

    to
    {
        opacity: 1;
    }
}

@-webkit-keyframes fadeSlide
{
    from
    {
        right: -200px;
    }

    to
    {
        right: 20px;
    }
}

@keyframes fadeSlide
{
    from
    {
        right: -200px;
    }

    to
    {
        right: 20px;
    }
}

@-webkit-keyframes fadeUp
{
    from
    {
        -webkit-transform: translate3d(0, 10%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: none;

        opacity: 1;
    }
}

@keyframes fadeUp
{
    from
    {
        -webkit-transform: translate3d(0, 10%, 0);
                transform: translate3d(0, 10%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: none;
                transform: none;

        opacity: 1;
    }
}

@-webkit-keyframes fadeUp2
{
    from
    {
        -webkit-transform: translate3d(0, 20%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: none;

        opacity: 1;
    }
}

@keyframes fadeUp2
{
    from
    {
        -webkit-transform: translate3d(0, 20%, 0);
                transform: translate3d(0, 20%, 0);

        opacity: 0;
    }

    to
    {
        -webkit-transform: none;
                transform: none;

        opacity: 1;
    }
}

@keyframes arrowbefore
{
    100%
    {
        right: -10px;

        opacity: 0;
    }
}

@-webkit-keyframes arrowbefore
{
    100%
    {
        right: -10px;

        opacity: 0;
    }
}

@keyframes arrowafter
{
    0%
    {
        right: 58px;

        opacity: 0;
    }
}

@-webkit-keyframes arrowafter
{
    0%
    {
        right: 58px;

        opacity: 0;
    }
}

@-webkit-keyframes arrow-blink
{
    0%
    {
        -webkit-transform: scale(.95);

        opacity: 0;
    }

    100%
    {
        -webkit-transform: scale(1);

        opacity: 1;
    }
}

@keyframes arrow-blink
{
    0%
    {
        -webkit-transform: scale(.95);
                transform: scale(.95);

        opacity: 0;
    }

    100%
    {
        -webkit-transform: scale(1);
                transform: scale(1);

        opacity: 1;
    }
}

.fadeIn
{
    -webkit-animation: fadeIn 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: fadeIn 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
}

.fadeUp
{
    -webkit-animation: fadeUp 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
            animation: fadeUp 1.2s cubic-bezier(.4, 0, .2, 1) forwards;
}

/*----------------------------------------
	footer
----------------------------------------*/

footer
{
    background-color: #000;
}

footer .page-top
{
    width: 100%;
    height: 70px;

    background-color: #a6192e;
}

footer .page-top a
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    display: block;

    height: 100%;
    padding-top: 12px;

    text-align: center;
    letter-spacing: .04em;

    color: #fff;
}

footer .page-top a span
{
    display: block;

    width: 11px;
    margin: 0 auto 10px;
}

footer .page-top a span img
{
    width: 100%;
    height: auto;
}

footer .container
{
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    padding: 75px 0 55px;

    text-align: left;
}

footer .container .menu
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;
}

footer .container .menu .brand ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;
            flex-direction: column;

    max-width: 660px;
    height: 220px;

    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
    -webkit-flex-direction: column;
}

footer .container .menu .brand ul li
{
    margin-bottom: 25px;
}

footer .container .menu .brand ul li:last-child
{
    margin-left: 70px;
}

footer .container .menu .brand ul li a
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;

    -webkit-transition: all .2s ease;
            transition: all .2s ease;
    letter-spacing: .1em;

    color: #fff;
}

footer .container .menu .brand ul li a:hover
{
    color: #a6192e;
}

footer .container .menu .brand ul li p
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;

    margin-bottom: 25px;

    letter-spacing: .1em;

    color: #fff;
}

footer .container .menu .brand ul li div dl
{
    display: inline-block;

    margin-right: 30px;

    vertical-align: top;
}

footer .container .menu .brand ul li div dl:last-of-type
{
    margin-right: 0;
}

footer .container .menu .brand ul li div dl dt
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    margin-bottom: 15px;

    letter-spacing: .08em;

    color: #fff;
}

footer .container .menu .brand ul li div dl dd a
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 500;

    display: block;

    margin-bottom: 10px;

    letter-spacing: .08em;

    color: #fff;
}

footer .container .menu .brand ul li div dl dd a:hover
{
    text-decoration: underline;

    color: #fff;
}

footer .container .menu .online-shop
{
    width: 220px;
    margin-right: 0;
    margin-left: auto;
}

footer .container .menu .online-shop p
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;

    margin-bottom: 25px;

    letter-spacing: .1em;

    color: #fff;
}

footer .container .menu .online-shop ul li
{
    width: 220px;

    text-align: center;

    background-color: #fff;
}

footer .container .menu .online-shop ul li:nth-child(-n+2)
{
    margin-bottom: 20px;
}

footer .container .menu .online-shop ul li img
{
    width: 170px;
    height: auto;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

footer .container .menu .online-shop ul li a
{
    display: block;
}

footer .container .menu .online-shop ul li:hover img
{
    opacity: .6;
}

footer .container .bottom
{
    margin-top: 55px;
}

footer .container .bottom > ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

footer .container .bottom > ul > li:nth-child(2)
{
    margin-right: 30px;
    margin-left: auto;
}

footer .container .bottom > ul > li .text-link li
{
    display: inline-block;

    margin-right: 25px;
}

footer .container .bottom > ul > li .text-link li a
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 500;

    letter-spacing: .16em;

    color: #fff;
}

footer .container .bottom > ul > li .text-link li a:hover
{
    text-decoration: underline;
}

footer .container .bottom > ul > li p small
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: bold;

    letter-spacing: .05em;

    color: #fff;
}

footer .container .bottom > ul > li .sns li
{
    display: inline-block;

    width: 23px;
}

footer .container .bottom > ul > li .sns li:nth-child(2)
{
    margin-right: 20px;
    margin-left: 20px;
}

footer .container .bottom > ul > li .sns li img
{
    width: 100%;
    height: auto;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

footer .container .bottom > ul > li .sns li:hover img
{
    opacity: .6;
}

/*----------------------------------------
	header
----------------------------------------*/

header
{
    width: 100%;

    -webkit-transition: all .8s ease;
            transition: all .8s ease;
}

header .header-upper
{
    position: relative;

    height: 84px;

    background-color: #fff;
}

header .header-upper h1
{
    width: 234px;
    margin: 0 auto;
    padding-top: 25px;
}

header .header-upper h1 a
{
    display: block;
}

header .header-upper h1 a img
{
    width: 100%;
    height: auto;
}

header .header-upper div
{
    position: absolute;
    top: 15px;
    right: 15px;

    width: 180px;
    height: 50px;

    background-color: #dcdcdc;
}

header .header-upper div a
{
    display: block;

    background-image: url('../images/cart_black.svg');
    background-repeat: no-repeat;
    background-position: 16px center;
    background-size: 25px 22px;
}

header .header-upper div a p
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 50px;

    padding-left: 26px;

    letter-spacing: .1em;
}

header nav
{
    width: 100%;

    -webkit-transition: all .8s ease;
            transition: all .8s ease;

    background-color: #9c0f24;
}

header nav > ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 835px;
    margin: 0 auto;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

header nav > ul > li > a
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 62px;

    position: relative;

    display: block;

    letter-spacing: .1em;

    color: #fff;
}

header nav > ul > li > a:after
{
    position: absolute;
    bottom: 0;
    left: 50%;

    content: '';
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
}

header nav > ul > li:hover a
{
    text-decoration: none;
    /*1224追加*/

    color: #fff;
    /*1224追加*/
}

header nav > ul > li:hover a:after
{
    width: 60px;
    height: 4px;

    background-color: #fff;
}

header nav > ul > li.dropdown-menu .dropdown-contents
{
    position: absolute;
    z-index: 9800;
    left: 50%;

    display: none;

    height: 236px;
    padding-top: 10px;

    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
}

header nav > ul > li.dropdown-menu .dropdown-contents ul
{
    position: relative;
    z-index: 9800;

    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    padding: 40px 70px;

    background-color: #fff;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li
{
    width: 135px;
    margin-right: 10px;
    margin-left: 10px;
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li a
{
    display: block;

    text-decoration: none;
    /*1224追加*/
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li a figure
{
    width: 108px;
    margin: 0 auto 10px;
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li a figure img
{
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li a h2
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;

    letter-spacing: .05em;
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li a h2 span
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 700;

    display: block;

    margin-top: 5px;

    letter-spacing: .2em;

    color: #a6192e;
}

header nav > ul > li.dropdown-menu .dropdown-contents ul li a:hover img
{
    opacity: .6;
}

header .sp-menu-btn
{
    position: absolute;
    z-index: 1001;
    top: 20px;
    left: 24px;

    width: 21px;
    height: 15px;
}

header .sp-menu-btn span
{
    display: block;

    width: 21px;
    height: 1px;

    background-color: #000;
}

header .sp-menu-btn span:nth-of-type(2)
{
    margin: 6px 0;
}

header .sp-menu-btn.active span
{
    width: 28px;

    background-color: #fff;
}

header .sp-menu-btn.active span:first-of-type
{
    -webkit-transform: translateY(6px) rotate(45deg);
        -ms-transform: translateY(6px) rotate(45deg);
            transform: translateY(6px) rotate(45deg);
}

header .sp-menu-btn.active span:nth-of-type(2)
{
    display: none;
}

header .sp-menu-btn.active span:nth-of-type(3)
{
    -webkit-transform: translateY(5px) rotate(-45deg);
        -ms-transform: translateY(5px) rotate(-45deg);
            transform: translateY(5px) rotate(-45deg);
}

header .sp-menu-contents
{
    position: fixed;
    z-index: 1000;
    top: 0;
    left: -100%;

    overflow-y: auto;

    width: 100%;
    height: 100%;
    padding: 60px 0 30px;

    -webkit-transition: all .4s cubic-bezier(.77, 0, .175, 1);
            transition: all .4s cubic-bezier(.77, 0, .175, 1);

    background-color: #000;

    -webkit-overflow-scrolling: touch;
}

header .sp-menu-contents.active
{
    left: 0;
}

header .sp-menu-contents .close
{
    position: absolute;
    top: 15px;
    left: 15px;

    display: block;

    width: 20px;
    height: 20px;

    background-image: url('../images/close_black.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

header .sp-menu-contents .container
{
    width: calc(100% - 50px);
    margin: 0 auto;
}

header .sp-menu-contents .container dl
{
    margin-bottom: 5px;
}

header .sp-menu-contents .container dl dt
{
    position: relative;

    width: 100%;
    height: 115px;
    margin-bottom: 10px;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

header .sp-menu-contents .container dl dt p
{
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 29px;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 100px;
    height: 33px;
    margin: auto;

    letter-spacing: .05em;

    color: #fff;
    border: 2px #fff solid;
    background-color: rgba(0, 0, 0, .1);
}

header .sp-menu-contents .container dl dt:before,
header .sp-menu-contents .container dl dt:after
{
    position: absolute;
    top: 0;
    right: 15px;
    bottom: 0;

    width: 25px;
    height: 25px;
    margin: auto;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

header .sp-menu-contents .container dl dt:before
{
    z-index: 2;

    background-image: url('../images/product_list_close.svg');
}

header .sp-menu-contents .container dl dt:after
{
    z-index: 1;

    background-image: url('../images/product_list_open.svg');
}

header .sp-menu-contents .container dl dt.active:after
{
    z-index: 3;
}

header .sp-menu-contents .container dl dd
{
    display: none;

    margin-bottom: 15px;

    text-align: left;
}

header .sp-menu-contents .container dl dd a
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 40px;

    position: relative;

    display: block;

    letter-spacing: .08em;

    color: #fff;
}

header .sp-menu-contents .container dl dd a:after
{
    position: absolute;
    top: 13px;
    right: 10px;

    width: 5px;
    height: 10px;

    content: '';

    background-image: url('../images/menu_arrow_sp.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

header .sp-menu-contents .container dl:first-of-type dt
{
    background-image: url('../images/menu_eyes_sp.jpg');
}

header .sp-menu-contents .container dl:nth-of-type(2) dt
{
    background-image: url('../images/menu_lips_sp.jpg');
}

header .sp-menu-contents .container dl:nth-of-type(3) dt
{
    background-image: url('../images/menu_face_sp.jpg');
}

header .sp-menu-contents .container dl:nth-of-type(4) dt
{
    background-image: url('../images/menu_nails_sp.jpg');
}

header .sp-menu-contents .container .menu
{
    position: relative;

    margin-bottom: 40px;

    text-align: left;
}

header .sp-menu-contents .container .menu li
{
    position: relative;

    border-bottom: 1px #fff solid;
}

header .sp-menu-contents .container .menu li a
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 60px;

    display: block;

    letter-spacing: .1em;

    color: #fff;
}

header .sp-menu-contents .container .menu li:after
{
    position: absolute;
    top: 24px;
    right: 10px;

    width: 5px;
    height: 10px;

    content: '';

    background-image: url('../images/menu_arrow_sp.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

header .sp-menu-contents .container .banner
{
    width: 100%;
    /*0207追加 start*/
    /*0207追加 end*/
}

header .sp-menu-contents .container .banner img
{
    width: 100%;
    height: auto;
}

header .sp-menu-contents .container .banner:nth-of-type(n+2)
{
    margin-top: 20px;
}

header .sp-menu-contents .container .online-shop
{
    width: 100%;
    margin: 40px auto 0;
}

header .sp-menu-contents .container .online-shop p
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;

    margin-bottom: 18px;

    text-align: left;
    letter-spacing: .1em;

    color: #fff;
}

header .sp-menu-contents .container .online-shop ul
{
    display: block;
}

header .sp-menu-contents .container .online-shop ul li
{
    width: 100%;

    text-align: center;

    background-color: #fff;
}

header .sp-menu-contents .container .online-shop ul li:nth-child(-n+2)
{
    margin-bottom: 20px;
}

header .sp-menu-contents .container .online-shop ul li img
{
    width: 47.230%;
    height: auto;
}

header .sp-menu-contents .container .online-shop ul li a
{
    display: block;
}

header .sp-menu-contents .container .sns
{
    margin: 30px 0;

    text-align: center;
}

header .sp-menu-contents .container .sns li
{
    display: inline-block;

    width: 23px;
}

header .sp-menu-contents .container .sns li:nth-child(2)
{
    margin-right: 20px;
    margin-left: 20px;
}

header .sp-menu-contents .container .sns li img
{
    width: 100%;
    height: auto;
}

header .sp-menu-contents .container .text-link
{
    margin-bottom: 10px;
}

header .sp-menu-contents .container .text-link li
{
    display: inline-block;

    margin-right: 13px;
}

header .sp-menu-contents .container .text-link li:last-child
{
    margin-right: 0;
}

header .sp-menu-contents .container .text-link li a
{
    font-size: 10px;
    font-size: .625rem;

    letter-spacing: .16em;

    color: #fff;
}

header .sp-menu-contents .container > p small
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: bold;

    letter-spacing: .05em;

    color: #fff;
}

.header-fix
{
    height: 146px;

    -webkit-transition: all .8s ease;
            transition: all .8s ease;

    background-color: #a6192e;
}

.header-fix > .container
{
    position: fixed;
    z-index: 999;
    top: -146px;

    width: 100%;
    height: 62px;
}

.header-fix .header-upper
{
    height: 0;
}

.header-fix .header-upper h1
{
    position: absolute;
    z-index: 1000;
    top: 21px;
    left: 3%;

    width: 143px;
    height: 23px;
    padding-top: 0;
}

.header-fix .header-upper h1 a
{
    width: 143px;
    height: 23px;

    background-image: url('../images/logo_white.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

.header-fix .header-upper h1 a img
{
    display: none;
}

.header-fix .header-upper div
{
    position: absolute;
    z-index: 1000;
    top: 0;
    right: 3%;

    width: 166px;
    height: 62px;

    background-color: transparent;
}

.header-fix .header-upper div:before
{
    position: absolute;
    top: 20px;

    display: block;

    width: 1px;
    height: 22px;

    content: '';

    background-color: #fff;
}

.header-fix .header-upper div a
{
    background-image: url('../images/cart_white.svg');
    background-position: 28px;
}

.header-fix .header-upper div a p
{
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 62px;

    margin-right: 0;
    padding-left: 56px;

    color: #fff;
}

.header-fix nav
{
    width: 100%;

    background-color: #9c0f24;
}

.header-fix nav > ul
{
    width: 660px;
}

.header-fix nav > ul li a
{
    font-size: 17px;
    font-size: 1.0625rem;
}

.remodal-overlay
{
    background-color: rgba(0, 0, 0, .4);
}

.remodal-wrapper
{
    padding: 0;
}

.online-modal
{
    width: 100%;
    max-width: 770px;
    padding: 78px 122px;
}

.online-modal .remodal-close
{
    top: 30px;
    right: 30px;
    left: auto;

    width: 36px;
    height: 36px;
}

.online-modal .remodal-close:before
{
    content: unset;
}

.online-modal section
{
    width: 100%;
    max-width: 360px;
    margin: 0 auto;
}

.online-modal section h2
{
    font-size: 34px;
    font-size: 2.125rem;

    letter-spacing: .05em;
}

.online-modal section p
{
    font-size: 14px;
    font-size: .875rem;
    line-height: 1.4;

    margin: 15px 0 35px;

    letter-spacing: .1em;
}

.online-modal section ul li
{
    overflow: hidden;

    width: 100%;

    border: 1px #8c8c8c solid;
}

.online-modal section ul li:nth-child(n+2)
{
    margin-top: 30px;
}

.online-modal section ul li a
{
    display: block;
}

.online-modal section ul li a img
{
    width: 246px;
    height: auto;
}

.online-modal section ul li a:hover img
{
    opacity: .6;
}

@-webkit-keyframes nav
{
    0%
    {
        top: -200px;
    }

    100%
    {
        top: 0;
    }
}

@keyframes nav
{
    0%
    {
        top: -200px;
    }

    100%
    {
        top: 0;
    }
}

/*----------------------------------------
	rimmel concept
----------------------------------------*/

#rimmel-concept
{
    margin-bottom: 100px;

    background-image: url('../images/concept/bg_concept.jpg');
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100% auto;
}

#rimmel-concept .pankuzu ul li
{
    color: #fff;
}

#rimmel-concept .pankuzu ul li a
{
    color: #fff;
}

#rimmel-concept .pankuzu ul li a:after
{
    background-image: url('../images/pankuzu_arrow_white.svg');
}

#rimmel-concept .message
{
    width: 100%;
    max-width: 960px;
    margin: 100px auto 0;
    padding-top: 50px;

    background-color: #fff;
}

#rimmel-concept .message .page-title
{
    margin-bottom: 70px;
}

#rimmel-concept .message p
{
    width: 485px;
    margin: 0 auto;
}

#rimmel-concept .message p img
{
    width: 100%;
    height: auto;
}

#rimmel-concept .message figure
{
    width: 696px;
    margin: 70px auto 75px;
}

#rimmel-concept .message figure img
{
    width: 100%;
    height: auto;
}

#rimmel-concept .history-link
{
    width: 760px;
    height: 180px;
    margin: 100px auto 140px;
}

#rimmel-concept .history-link a
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 100%;
    height: 100%;
}

#rimmel-concept .history-link a:before
{
    position: absolute;
    z-index: 2;
    top: 80px;
    right: 50px;

    width: 45px;
    height: 15px;

    content: '';

    background-image: url('../images/view_arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-concept .history-link a figure
{
    width: 100%;
    height: 100%;

    -webkit-transition: all .8s ease;
            transition: all .8s ease;
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2);

    background-image: url('../images/concept/history_link_pc.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-concept .history-link a p
{
    font-size: 16px;
    font-size: 1rem;

    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    height: 67px;
    margin: auto;

    letter-spacing: .2em;

    color: #fff;
}

#rimmel-concept .history-link a p span
{
    font-size: 36px;
    font-size: 2.25rem;
    font-weight: bold;

    display: block;

    margin-bottom: 15px;

    letter-spacing: .04em;

    color: #fff;
}

#rimmel-concept .history-link a p img
{
    width: 170px;
    height: auto;
}

#rimmel-concept .history-link:hover figure
{
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
}

#rimmel-concept .profile
{
    width: 665px;
    margin: 0 auto;
}

#rimmel-concept .profile article
{
    position: relative;

    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-concept .profile article h3
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;

    margin-left: 24px;

    letter-spacing: .04em;
}

#rimmel-concept .profile article figure
{
    width: 106px;
}

#rimmel-concept .profile article figure img
{
    width: 100%;
    height: auto;
}

#rimmel-concept .profile article p
{
    font-size: 11px;
    font-size: .6875rem;
    line-height: 2;

    position: absolute;
    top: 43px;
    left: 130px;

    width: 536px;

    text-align: justify;
    letter-spacing: .1em;
}

/*----------------------------------------
	rimmel contact
----------------------------------------*/

#rimmel-contact
{
    margin-bottom: 140px;
}

#rimmel-contact .page-title span
{
    color: #000;
}

#rimmel-contact .contact-contents
{
    max-width: 800px;
    margin: 45px auto 0;

    text-align: left;
}

#rimmel-contact .contact-contents div
{
    width: 550px;
    height: 225px;
    margin: 0 auto 65px;
    padding: 47px 0 55px;

    text-align: center;

    background-color: #ebebeb;
}

#rimmel-contact .contact-contents div h3
{
    font-size: 18px;
    font-size: 1.125rem;

    letter-spacing: .05em;
}

#rimmel-contact .contact-contents div address
{
    margin: 25px 0;
}

#rimmel-contact .contact-contents div address span
{
    display: inline-block;

    width: 33px;
    margin-right: 13px;

    vertical-align: middle;
}

#rimmel-contact .contact-contents div address span img
{
    width: 100%;
    height: auto;
}

#rimmel-contact .contact-contents div address p
{
    font-size: 36px;
    font-size: 2.25rem;

    display: inline-block;

    vertical-align: middle;
    letter-spacing: .05em;
}

#rimmel-contact .contact-contents div > p
{
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 400;

    letter-spacing: .05em;
}

#rimmel-contact .contact-contents > p
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 400;
    line-height: 2.1;

    text-align: left;
    letter-spacing: .05em;
}

/*----------------------------------------
	rimmel corporate
----------------------------------------*/

#rimmel-corporate
{
    margin-bottom: 140px;
}

#rimmel-corporate .page-title span
{
    color: #000;
}

#rimmel-corporate .corporate-contents
{
    max-width: 800px;
    margin: 60px auto 0;

    text-align: left;
}

#rimmel-corporate .corporate-contents dl
{
    padding: 40px 0;

    border-bottom: 1px #c8c8c8 solid;
}

#rimmel-corporate .corporate-contents dl dt
{
    font-size: 14px;
    font-size: .875rem;
    line-height: 2;

    display: inline-block;

    width: 190px;
    padding-left: 30px;

    vertical-align: top;
    letter-spacing: .15em;

    color: #a6192e;
}

#rimmel-corporate .corporate-contents dl dd
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 400;
    line-height: 2;

    display: inline-block;

    vertical-align: top;
    letter-spacing: .05em;
}

/*----------------------------------------
	rimmel history
----------------------------------------*/

#rimmel-history
{
    margin-bottom: 100px;
}

#rimmel-history nav
{
    margin: 50px auto 65px;
}

#rimmel-history nav ul li
{
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: bold;

    position: relative;

    display: inline-block;

    margin-right: 35px;
    margin-left: 35px;

    letter-spacing: .05em;
}

#rimmel-history nav ul li:after
{
    position: absolute;
    top: 3px;
    right: -35px;

    width: 7px;
    height: 22px;

    content: '';

    background-image: url('../images/history/separator.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-history nav ul li:last-child:after
{
    content: normal;
}

#rimmel-history nav ul li a
{
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-history nav ul li:hover a
{
    color: #a6192e;
}

#rimmel-history .lead
{
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;

    letter-spacing: .15em;
}

#rimmel-history .history-contents
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1140px;
    margin: 100px auto 0;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-history .history-contents .history-block
{
    position: relative;

    width: 50%;

    text-align: left;
}

#rimmel-history .history-contents .history-block:after
{
    position: absolute;
    z-index: 10;
    top: 30px;

    display: block;

    height: 1px;

    content: '';

    background-color: #000;
}

#rimmel-history .history-contents .history-block h3
{
    font-size: 56px;
    font-size: 3.5rem;
    font-weight: bold;

    position: relative;

    margin-bottom: 30px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    text-align: left;
    letter-spacing: .04em;
}

#rimmel-history .history-contents .history-block h3:before
{
    position: absolute;
    z-index: 2;
    top: 25px;

    width: 12px;
    height: 12px;

    content: '';

    border-radius: 50%;
    background-color: #000;
}

#rimmel-history .history-contents .history-block h3:after
{
    position: absolute;
    z-index: 1;
    top: 6px;

    width: 52px;
    height: 52px;

    content: '';

    background-color: #fff;
}

#rimmel-history .history-contents .history-block p
{
    font-size: 15px;
    font-size: .9375rem;
    line-height: 2;

    letter-spacing: .1em;
}

#rimmel-history .history-contents .history-block figure
{
    margin-right: auto;
    margin-left: auto;

    -webkit-transition: all 1.0s ease;
            transition: all 1.0s ease;
    text-align: center;

    opacity: 0;
}

#rimmel-history .history-contents .history-block figure.active
{
    opacity: 1 !important;
}

#rimmel-history .history-contents .history-block a
{
    position: relative;

    display: inline-block;
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 106px;
    margin-top: 64px;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-history .history-contents .history-block a p
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;

    letter-spacing: .1em;
}

#rimmel-history .history-contents .history-block a span
{
    position: relative;
    top: 9px;
    right: 0;

    display: block;

    width: 13px;
    height: 13px;
}

#rimmel-history .history-contents .history-block a span:before
{
    position: absolute;
    top: 6px;
    left: 0;

    width: 13px;
    height: 1px;

    content: '';

    background-color: #000;
}

#rimmel-history .history-contents .history-block a span:after
{
    position: absolute;
    top: 0;
    left: 6px;

    width: 1px;
    height: 13px;

    content: '';

    background-color: #000;
}

#rimmel-history .history-contents .history-block a:after
{
    position: absolute;
    bottom: -6px;
    left: 0;

    width: 100%;
    height: 2px;

    content: '';

    background-color: #a6192e;
}

#rimmel-history .history-contents .history-block a.active span
{
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

#rimmel-history .history-contents .history-block .more-info
{
    display: none;
}

#rimmel-history .history-contents .history-block.active:after
{
    -webkit-animation: history-line 1s cubic-bezier(.77, 0, .175, 1) forwards;
            animation: history-line 1s cubic-bezier(.77, 0, .175, 1) forwards;
}

#rimmel-history .history-contents .history-block.active h3
{
    color: #a6192e !important;
}

#rimmel-history .history-contents .left
{
    position: relative;

    padding: 0 8.771% 0 3.508%;
}

#rimmel-history .history-contents .left:before
{
    position: absolute;
    top: 32px;
    right: 0;

    width: 1px;
    height: 100%;

    content: '';

    background-color: #000;
}

#rimmel-history .history-contents .left:after
{
    right: 0;
}

#rimmel-history .history-contents .left h3
{
    text-align: right;
}

#rimmel-history .history-contents .left h3:before
{
    right: -24.8%;
}

#rimmel-history .history-contents .left h3:after
{
    right: -24.8%;
}

#rimmel-history .history-contents .right
{
    padding: 0 3.508% 0 8.771%;
}

#rimmel-history .history-contents .right:after
{
    left: 0;
}

#rimmel-history .history-contents .right h3:before
{
    left: -24.8%;
}

#rimmel-history .history-contents .right h3:after
{
    left: -24.8%;
}

#rimmel-history .history-contents #age1834
{
    padding-bottom: 180px;
}

#rimmel-history .history-contents #age1834 > figure
{
    margin-top: 15px;
}

#rimmel-history .history-contents #age1834 .more-info p
{
    margin-top: 50px;
}

#rimmel-history .history-contents #age1834 .more-info figure
{
    margin-top: 30px;
}

#rimmel-history .history-contents #age1850
{
    margin-top: 170px;
}

#rimmel-history .history-contents #age1850 > figure
{
    margin-top: 30px;
}

#rimmel-history .history-contents #age1860
{
    margin-top: -180px;
}

#rimmel-history .history-contents #age1860 > figure
{
    max-width: 313px;
    margin-top: 40px;
}

#rimmel-history .history-contents #age1880
{
    margin-top: 124px;
}

#rimmel-history .history-contents #age1880 > figure
{
    margin-top: 60px;
}

#rimmel-history .history-contents #age1900
{
    margin-top: -200px;
}

#rimmel-history .history-contents #age1900 > figure
{
    max-width: 350px;
    margin-bottom: 40px;
}

#rimmel-history .history-contents #age1900 .more-info figure
{
    margin-top: 40px;
    margin-bottom: 30px;
}

#rimmel-history .history-contents #age2006
{
    margin-top: 285px;
}

#rimmel-history .concept-link
{
    width: 760px;
    height: 180px;
    margin: 100px auto 140px;
}

#rimmel-history .concept-link a
{
    position: relative;

    display: block;
    overflow: hidden;

    width: 100%;
    height: 100%;
}

#rimmel-history .concept-link a:before
{
    position: absolute;
    z-index: 2;
    top: 80px;
    right: 50px;

    width: 45px;
    height: 15px;

    content: '';

    background-image: url('../images/view_arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-history .concept-link a figure
{
    width: 100%;
    height: 100%;

    -webkit-transition: all .8s ease;
            transition: all .8s ease;
    -webkit-transform: scale(1.2);
        -ms-transform: scale(1.2);
            transform: scale(1.2);

    background-image: url('../images/concept/history_link_pc.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-history .concept-link a p
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;

    position: absolute;
    z-index: 2;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    height: 67px;
    margin: auto;

    letter-spacing: .2em;

    color: #fff;
}

#rimmel-history .concept-link a p span
{
    font-size: 36px;
    font-size: 2.25rem;
    font-weight: bold;

    display: block;

    margin-bottom: 15px;

    letter-spacing: .04em;

    color: #fff;
}

#rimmel-history .concept-link a p img
{
    width: 200px;
    height: auto;
}

#rimmel-history .concept-link:hover figure
{
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
}

@-webkit-keyframes history-line
{
    0%
    {
        width: 0;
    }

    50%
    {
        width: 15%;
    }

    100%
    {
        width: 15%;
    }
}

@keyframes history-line
{
    0%
    {
        width: 0;
    }

    50%
    {
        width: 15%;
    }

    100%
    {
        width: 15%;
    }
}

/*----------------------------------------
	rimmel index
----------------------------------------*/

#rimmel-index
{
    /*--------------- 
	  common
	---------------*/
    /*--------------- 
	  main-visual
	---------------*/
    /*--------------- 
	  whats-new
	---------------*/
}

#rimmel-index .whats-new,
#rimmel-index .sns
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;
}

#rimmel-index .whats-new .container,
#rimmel-index .sns .container
{
    margin-left: -480px;
}

#rimmel-index .whats-new h2,
#rimmel-index .new-products h2,
#rimmel-index .brand-concept h2,
#rimmel-index .sns h2
{
    width: 390px;
    margin-left: 3%;

    -webkit-transform: rotate3d(-1, -1, 0, 180deg);
        -ms-transform: rotate3d(-1, -1, 0, 180deg);
            transform: rotate3d(-1, -1, 0, 180deg);
    -webkit-transform-origin: left top;
        -ms-transform-origin: left top;
            transform-origin: left top;
    text-align: left;
}

#rimmel-index .whats-new h2 p,
#rimmel-index .new-products h2 p,
#rimmel-index .brand-concept h2 p,
#rimmel-index .sns h2 p
{
    position: relative;

    display: inline-block;
    overflow: hidden;

    padding-bottom: 18px;
}

#rimmel-index .whats-new h2 p:after,
#rimmel-index .new-products h2 p:after,
#rimmel-index .brand-concept h2 p:after,
#rimmel-index .sns h2 p:after
{
    position: absolute;
    bottom: 0;
    left: 0;

    display: block;

    width: 0;
    height: 3px;

    content: '';

    background-color: #000;
}

#rimmel-index .whats-new h2 p.active:after,
#rimmel-index .new-products h2 p.active:after,
#rimmel-index .brand-concept h2 p.active:after,
#rimmel-index .sns h2 p.active:after
{
    -webkit-animation: line 1.2s cubic-bezier(.77, 0, .175, 1) forwards;
            animation: line 1.2s cubic-bezier(.77, 0, .175, 1) forwards;
}

#rimmel-index .whats-new h2 span,
#rimmel-index .new-products h2 span,
#rimmel-index .brand-concept h2 span,
#rimmel-index .sns h2 span
{
    font-size: 52px;
    font-size: 3.25rem;
    font-weight: bold;

    position: relative;

    display: inline-block;

    -webkit-transform: translateY(-100%) rotateY(180deg);
            transform: translateY(-100%) rotateY(180deg);
    letter-spacing: .06em;
}

#rimmel-index .new-products h2 p:after,
#rimmel-index .brand-concept h2 p:after
{
    background-color: #fff;
}

#rimmel-index .new-products h2 p span,
#rimmel-index .brand-concept h2 p span
{
    color: #fff;
}

#rimmel-index .main-visual
{
    width: 100%;
}

#rimmel-index .main-visual .main-visual-slider li img
{
    width: 100%;
}

#rimmel-index .main-visual .main-visual-slider .slick-dots
{
    position: absolute;
    z-index: 99;
    right: 30px;
    bottom: 28px;

    width: 30px;
}

#rimmel-index .main-visual .main-visual-slider .slick-dots li
{
    position: relative;

    display: block;

    width: 30px;
    height: 30px;
    margin: 10px 0;
}

#rimmel-index .main-visual .main-visual-slider .slick-dots li svg
{
    fill: transparent;
}

#rimmel-index .main-visual .main-visual-slider .slick-dots li span
{
    font-size: 14px;
    font-size: .875rem;

    position: absolute;
    top: 8px;
    left: 12px;

    color: #fff;
}

#rimmel-index .main-visual .main-visual-slider .slick-dots li.slick-active svg
{
    -webkit-transform: rotate(-90deg);
        -ms-transform: rotate(-90deg);
            transform: rotate(-90deg);
}

#rimmel-index .main-visual .main-visual-slider .slick-dots li.slick-active svg circle
{
    -webkit-animation: circle 4.0s;
            animation: circle 4.0s;

    stroke: #fff;
    stroke-width: 1;
}

@-webkit-keyframes circle
{
    0%
    {
        stroke-dasharray: 0 87;
    }

    99.9%,
    to
    {
        stroke-dasharray: 87 87;
    }
}

@keyframes circle
{
    0%
    {
        stroke-dasharray: 0 87;
    }

    99.9%,
    to
    {
        stroke-dasharray: 87 87;
    }
}

#rimmel-index .main-visual .bx-wrapper
{
    position: relative;
}

#rimmel-index .main-visual .bx-wrapper .bx-controls .bx-pager
{
    position: absolute;
    z-index: 99;
    right: 30px;
    bottom: 28px;

    width: 30px;
}

#rimmel-index .main-visual .bx-wrapper .bx-controls .bx-pager .bx-pager-item
{
    margin-top: 12px;
}

#rimmel-index .main-visual .bx-wrapper .bx-controls .bx-pager .bx-pager-item a
{
    font-size: 14px;
    font-size: .875rem;
    line-height: 30px;

    display: block;

    width: 100%;
    height: 30px;

    color: #fff;
}

#rimmel-index .main-visual .bx-wrapper .bx-controls .bx-pager .bx-pager-item a.active
{
    border: 1px #fff solid;
    border-radius: 50%;
}

#rimmel-index .whats-new
{
    position: relative;

    overflow: hidden;

    max-width: 1440px;
    margin: 0 auto;
    margin-top: 70px;
    padding-top: 50px;
    padding-bottom: 100px;
}

#rimmel-index .whats-new .container
{
    position: relative;
    z-index: 2;

    width: 75%;
    max-width: 1004px;

    -webkit-transform: translateX(30%);
        -ms-transform: translateX(30%);
            transform: translateX(30%);
}

#rimmel-index .whats-new .container .latest
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;
}

#rimmel-index .whats-new .container .latest figure
{
    position: relative;
    z-index: 1;

    overflow: hidden;

    width: 63.681%;
    max-width: 640px;
    margin-right: 75px;

    cursor: pointer;
    /*1225追加 start*/
    /*1225追加 end*/
}

#rimmel-index .whats-new .container .latest figure:before
{
    display: block;

    padding-top: 70.2%;

    content: '';
}

#rimmel-index .whats-new .container .latest figure img
{
    /*1225追加 start*/
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: inline-block;
    overflow: hidden;

    width: 100%;

    -webkit-transition-duration: .5s;
            transition-duration: .5s;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    /*1225追加 end*/
}

#rimmel-index .whats-new .container .latest figure:hover img
{
    -webkit-transition: all 1.0s ease;
            transition: all 1.0s ease;
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
}

#rimmel-index .whats-new .container .latest .text-area
{
    position: relative;

    width: 44.861%;
    max-width: 282px;
    margin-top: 185px;

    text-align: left;
}

#rimmel-index .whats-new .container .latest .text-area:before
{
    position: absolute;
    top: 0;
    left: -30px;

    width: 8px;
    height: 90px;

    content: '';

    background-color: #fff;
}

#rimmel-index .whats-new .container .latest .text-area:after
{
    position: absolute;
    z-index: -1;
    top: -75px;
    left: -213px;

    width: calc(100% + 363px);
    height: calc(100% + 143px);

    content: '';

    background-color: #a6192e;
}

#rimmel-index .whats-new .container .latest .text-area .category
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;
    line-height: 24px;

    display: inline-block;

    min-width: 78px;
    height: 24px;

    text-align: center;
    letter-spacing: .1em;
}

#rimmel-index .whats-new .container .latest .text-area .new-item
{
    color: #fff;
    border: 1px #fff solid;
    background-color: #a6192e;
}

#rimmel-index .whats-new .container .latest .text-area .campaign
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-index .whats-new .container .latest .text-area .event
{
    color: #a6192e;
    border: 1px #a6192e solid;
    background-color: #fff;
}

#rimmel-index .whats-new .container .latest .text-area .others
{
    color: #646464;
    border: 1px #646464 solid;
    background-color: #fff;
}

#rimmel-index .whats-new .container .latest .text-area time
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    position: absolute;
    top: 5px;
    right: 0;

    text-align: left;
    letter-spacing: .05em;

    color: #fff;
}

#rimmel-index .whats-new .container .latest .text-area h3
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 500;
    line-height: 1.5;

    margin: 20px 0;

    letter-spacing: .08em;

    color: #fff;
}

#rimmel-index .whats-new .container .latest .text-area .text
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.8;

    letter-spacing: .06em;

    color: #fff;
}

#rimmel-index .whats-new .container .latest .text-area .view-btn
{
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 55px;

    width: 282px;
    height: 55px;
    margin-top: 30px;
}

#rimmel-index .whats-new .container .latest .text-area .view-btn:before,
#rimmel-index .whats-new .container .latest .text-area .view-btn:after
{
    top: 23px;
    right: 21px;

    width: 20px;
    height: 9px;
}

#rimmel-index .whats-new .container .latest > a
{
    display: none;
}

#rimmel-index .whats-new .container .other
{
    width: 100%;
    max-width: 1004px;
    margin: 187px auto 80px;
}

#rimmel-index .whats-new .container .other > div
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1004px;
    margin-right: 0;
    margin-left: auto;
}

#rimmel-index .whats-new .container .other article
{
    position: relative;

    overflow: hidden;

    width: 31%;
    max-width: 305px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-index .whats-new .container .other article:nth-of-type(2)
{
    margin-right: 4.4%;
    margin-left: 4.4%;
}

#rimmel-index .whats-new .container .other article a
{
    display: block;
}

#rimmel-index .whats-new .container .other article a figure
{
    position: relative;

    overflow: hidden;

    width: 100%;
    max-width: 305px;

    cursor: pointer;
    /*1225追加*/
    /*1225追加 start*/
    /*1225追加 end*/
}

#rimmel-index .whats-new .container .other article a figure:before
{
    display: block;

    padding-top: 73.5%;

    content: '';
}

#rimmel-index .whats-new .container .other article a figure img
{
    /*1225追加 start*/
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: inline-block;
    overflow: hidden;

    width: 100%;

    -webkit-transition: all .5s ease;
            transition: all .5s ease;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    /*1225追加 end*/
}

#rimmel-index .whats-new .container .other article a figure:hover img
{
    -webkit-transition: all 1.0s ease;
            transition: all 1.0s ease;
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
}

#rimmel-index .whats-new .container .other article a .text-area
{
    position: relative;

    margin-top: 35px;
    padding-left: 28px;

    text-align: left;
}

#rimmel-index .whats-new .container .other article a .text-area:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 8px;
    height: 66px;

    content: '';

    background-color: #a6192e;
}

#rimmel-index .whats-new .container .other article a .text-area .category
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: bold;
    line-height: 18px;

    display: inline-block;

    min-width: 68px;
    height: 18px;

    text-align: center;
    letter-spacing: .1em;
}

#rimmel-index .whats-new .container .other article a .text-area .new-item
{
    color: #fff;
    border: 1px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-index .whats-new .container .other article a .text-area .campaign
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-index .whats-new .container .other article a .text-area .event
{
    color: #a6192e;
    border: 1px #a6192e solid;
}

#rimmel-index .whats-new .container .other article a .text-area .others
{
    color: #646464;
    border: 1px #646464 solid;
}

#rimmel-index .whats-new .container .other article a .text-area time
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    position: absolute;
    top: 4px;
    right: 0;

    text-align: left;
    letter-spacing: .05em;
}

#rimmel-index .whats-new .container .other article a .text-area h3
{
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 500;
    line-height: 1.6;

    margin: 15px 0 10px;

    letter-spacing: .08em;
}

#rimmel-index .whats-new .container .other article a .text-area .text
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.8;

    letter-spacing: .06em;

    color: #8c8c8c;
}

#rimmel-index .whats-new .container .other article a .text-area .more
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.6;

    position: relative;

    display: inline-block;

    letter-spacing: .14em;
}

#rimmel-index .whats-new .container .other article a .text-area .more span
{
    position: relative;

    display: inline-block;

    width: 9px;
    height: 9px;
    margin-left: 10px;
}

#rimmel-index .whats-new .container .other article a .text-area .more span:before
{
    position: absolute;
    top: 4px;
    left: 0;

    width: 9px;
    height: 1px;

    content: '';

    background-color: #000;
}

#rimmel-index .whats-new .container .other article a .text-area .more span:after
{
    position: absolute;
    top: 0;
    left: 4px;

    width: 1px;
    height: 9px;

    content: '';

    background-color: #000;
}

#rimmel-index .whats-new .container .other article a .text-area .more:after
{
    position: absolute;
    bottom: -6px;
    left: 0;

    width: 100%;
    height: 2px;

    content: '';

    background-color: #a6192e;
}

#rimmel-index .whats-new .container > .view-btn
{
    margin: 0 auto;
}

#rimmel-index .new-products
{
    position: relative;

    padding: 52px 0 90px;

    background-image: url('../images/index/bg_new_products.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

#rimmel-index .new-products .new-products-inner
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    max-width: 1440px;
    margin: 0 auto;
}

#rimmel-index .new-products .container
{
    width: 75%;
    max-width: 1027px;
    margin-left: -510px;

    -webkit-transform: translateX(30%);
        -ms-transform: translateX(30%);
            transform: translateX(30%);
}

#rimmel-index .new-products .container .new-products-slider
{
    max-width: 1027px;
    margin-right: 0;
    margin-left: auto;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide
{
    width: 100%;
    margin-left: 22px;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li
{
    position: relative;

    min-height: 515px;
    margin-top: 38px;
    padding: 36px 36px 25px;

    text-align: left;

    background-color: #fff;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .icon
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 74px;

    position: absolute;
    top: -37px;
    left: 36px;

    display: block;

    width: 74px;
    height: 74px;

    text-align: center;
    letter-spacing: .05em;

    color: #fff;
    border-radius: 50%;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .new
{
    background-color: #a6192e;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .limited
{
    background-color: #000;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li figure img
{
    width: 100%;
    height: auto;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .text
{
    min-height: 120px;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .text h3
{
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.1;

    width: 100%;
    margin: 20px 0 10px;

    letter-spacing: .04em;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .text h4
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: 700;
    line-height: 1.3;

    width: 100%;
    margin: 10px 0 20px;

    letter-spacing: .14em;

    color: #a6192e;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn
{
    font-size: 16px;
    font-size: 1rem;
    line-height: 56px;

    display: block;

    width: 100%;
    max-width: 248px;
    height: 56px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;

    text-align: center;
    letter-spacing: .04em;

    color: #fff;
    border-color: #a6192e;
    background-color: #a6192e;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn:before,
#rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn:after
{
    top: 23px;
    right: 19px;

    width: 24px;
    height: 9px;
}

#rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn:after
{
    background-image: url('../images/view_arrow_red.svg');
}

#rimmel-index .new-products .container .new-products-slider .slick-dots li
{
    width: 8px;
    height: 8px;
    margin: 0 14px;
}

#rimmel-index .new-products .container .new-products-slider .slick-dots li button
{
    width: 8px;
    height: 8px;
    padding: 0;

    border: 1px #fff solid;
    border-radius: 50%;
}

#rimmel-index .new-products .container .new-products-slider .slick-dots li button:before
{
    content: unset;
}

#rimmel-index .new-products .container .new-products-slider .slick-dots li.slick-active button
{
    background-color: #fff;
}

#rimmel-index .product-list
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    height: 760px;

    border-top: 3px #000 solid;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-index .product-list .title
{
    position: relative;

    overflow: hidden;

    width: 50%;
}

#rimmel-index .product-list .title figure
{
    width: 100%;
    height: 100%;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

#rimmel-index .product-list .title h3
{
    font-size: 46px;
    font-size: 2.875rem;
    font-weight: bold;
    line-height: 85px;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 280px;
    height: 97px;
    margin: auto;

    letter-spacing: .05em;

    color: #fff;
    border: 6px #fff solid;
    background-color: rgba(0, 0, 0, .1);
}

#rimmel-index .product-list .product
{
    width: 50%;
}

#rimmel-index .product-list .product ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    max-width: 400px;
    margin: 70px auto 0;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-index .product-list .product ul li
{
    max-width: 200px;
}

#rimmel-index .product-list .product ul li:nth-child(n+3)
{
    margin-top: 27px;
}

#rimmel-index .product-list .product ul li a
{
    display: block;
}

#rimmel-index .product-list .product ul li a figure
{
    max-width: 170px;
}

#rimmel-index .product-list .product ul li a figure img
{
    width: 100%;
    height: auto;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-index .product-list .product ul li a h4
{
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: bold;
    line-height: 1.1;

    margin-top: 15px;
    margin-bottom: 10px;

    letter-spacing: .04em;
}

#rimmel-index .product-list .product ul li a p
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 700;
    line-height: 1.2;

    letter-spacing: .2em;

    color: #a6192e;
}

#rimmel-index .product-list .product ul li a:hover img
{
    opacity: .6;
}

#rimmel-index .product-list .product .slick-arrow
{
    z-index: 10;
    top: 60%;

    width: 20px;
    height: 20px;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: auto 14px;
}

#rimmel-index .product-list .product .slick-arrow:before
{
    content: unset;
}

#rimmel-index .product-list .product .slick-prev
{
    left: 10%;

    background-image: url('../images/index/product_arrow_prev.svg');
}

#rimmel-index .product-list .product .slick-next
{
    right: 10%;

    background-image: url('../images/index/product_arrow_next.svg');
}

#rimmel-index .product-list .product .view-btn
{
    line-height: 80px;

    max-width: 400px;
    height: 80px;
    margin: 47px auto 0;
}

#rimmel-index .product-list .product .view-btn:before,
#rimmel-index .product-list .product .view-btn:after
{
    top: 33px;
    right: 29px;

    width: 32px;
    height: 12px;
}

#rimmel-index .eyes .title figure
{
    background-image: url('../images/index/bg_eyes.jpg');
}

#rimmel-index .lips .title figure
{
    background-image: url('../images/index/bg_lips.jpg');
}

#rimmel-index .face .title figure
{
    background-image: url('../images/index/bg_face.jpg');
}

#rimmel-index .nails
{
    border-bottom: 3px #000 solid;
}

#rimmel-index .nails .title figure
{
    background-image: url('../images/index/bg_nails.jpg');
}

#rimmel-index .nails .product ul
{
    margin-top: 220px;
}

#rimmel-index .nails .product .view-btn
{
    margin-top: 156px;
}

#rimmel-index .parallax
{
    width: 100%;
    height: 550px;

    background-image: url('../images/index/bg_parallax.jpg');
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-position: center center;
    background-size: cover;
}

#rimmel-index .brand-concept
{
    position: relative;

    padding-top: 110px;
}

#rimmel-index .brand-concept:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 72%;
    height: 600px;

    content: '';

    background-image: url('../images/index/bg_concept.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

#rimmel-index .brand-concept .brand-concept-inner
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}

#rimmel-index .brand-concept .container
{
    position: relative;

    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    margin-left: -440px;
}

#rimmel-index .brand-concept .container .message
{
    width: 388px;
    margin: 0 auto 0 17%;

    opacity: 0;
}

#rimmel-index .brand-concept .container .message p
{
    max-width: 329px;
    margin: 0 auto 60px;
}

#rimmel-index .brand-concept .container .message p img
{
    width: 100%;
    height: auto;
}

#rimmel-index .brand-concept .container .message .view-btn
{
    line-height: 80px;

    width: 388px;
    height: 80px;
}

#rimmel-index .brand-concept .container .message .view-btn:before,
#rimmel-index .brand-concept .container .message .view-btn:after
{
    top: 33px;
    right: 28px;

    width: 33px;
    height: 11px;
}

#rimmel-index .brand-concept .container figure
{
    width: 42.847%;
    max-width: 617px;
    margin-top: 14%;
    margin-right: 0;
    margin-left: auto;

    opacity: 0;
}

#rimmel-index .sns
{
    position: relative;

    overflow: hidden;

    width: 100%;
    max-width: 1440px;
    margin: 70px auto 140px;
    padding-top: 50px;
}

#rimmel-index .sns .container
{
    width: 80%;
    max-width: 1005px;

    -webkit-transform: translateX(30%);
        -ms-transform: translateX(30%);
            transform: translateX(30%);
}

#rimmel-index .sns .container .instagram
{
    width: 100%;
    max-width: 1005px;
    margin-right: 0;
    margin-left: auto;
}

#rimmel-index .sns .container .instagram .img ul
{
    position: relative;

    height: 604px;
}

#rimmel-index .sns .container .instagram .img ul:after
{
    position: absolute;
    z-index: 1;
    bottom: 0;
    left: 0;

    width: 688px;
    height: 388px;

    content: '';

    background-color: #ebebeb;
}

#rimmel-index .sns .container .instagram .img ul li
{
    position: absolute;
    z-index: 2;

    opacity: 0;
}

#rimmel-index .sns .container .instagram .img ul li:first-child
{
    top: 40px;
    left: 60px;

    width: 374px;
}

#rimmel-index .sns .container .instagram .img ul li:nth-child(2)
{
    bottom: 65px;
    left: 374px;

    width: 268px;
}

#rimmel-index .sns .container .instagram .img ul li:nth-child(3),
#rimmel-index .sns .container .instagram .img ul li:nth-child(5)
{
    width: 210px;
}

#rimmel-index .sns .container .instagram .img ul li:nth-child(3)
{
    top: 100px;
    left: 500px;
}

#rimmel-index .sns .container .instagram .img ul li:nth-child(4)
{
    top: 0;
    right: 0;

    width: 260px;
}

#rimmel-index .sns .container .instagram .img ul li:nth-child(5)
{
    right: 60px;
    bottom: 65px;
}

#rimmel-index .sns .container .instagram .img ul li img
{
    width: 100%;
    height: auto;
}

#rimmel-index .sns .container .instagram .img .slick-slide
{
    margin-right: 5px;
    margin-left: 5px;
}

#rimmel-index .sns .container .instagram .text
{
    position: relative;
    z-index: 2;

    margin-top: -145px;
    margin-left: 60px;
}

#rimmel-index .sns .container .instagram .text p
{
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: bold;

    text-align: left;
    letter-spacing: .04em;
}

#rimmel-index .sns .container .instagram .text a
{
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 500;
    line-height: 62px;

    position: relative;

    display: block;

    width: 275px;
    height: 62px;
    margin-top: 15px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    letter-spacing: .04em;

    color: #fff;
    border: 1px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-index .sns .container .instagram .text a:after
{
    position: absolute;
    top: 0;
    right: 20px;
    bottom: 0;

    width: 15px;
    height: 15px;
    margin: auto;

    content: '';

    background-image: url('../images/external.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-index .sns .container .sns-icon
{
    font-size: 0;

    margin-top: 90px;
}

#rimmel-index .sns .container .sns-icon li
{
    display: inline-block;

    width: 32px;
    margin: 0 30px;
}

#rimmel-index .sns .container .sns-icon li img
{
    width: 100%;
    height: auto;
}

#rimmel-index .banner
{
    margin-bottom: 140px;
    /*0207追加start*/
    /*0207追加end*/
}

#rimmel-index .banner div:nth-of-type(n+2)
{
    margin-top: 40px;
}

#rimmel-index .banner a
{
    display: block;
    /*1225修正*/

    width: 100%;
    max-width: 730px;
    margin: 0 auto;
}

#rimmel-index .banner a img
{
    width: 100%;
    height: auto;
}

#rimmel-index .banner a:hover img
{
    opacity: .6;
}

@-webkit-keyframes line
{
    0%
    {
        width: 0;
    }

    100%
    {
        width: 100%;
    }
}

@keyframes line
{
    0%
    {
        width: 0;
    }

    100%
    {
        width: 100%;
    }
}

/*----------------------------------------
	rimmel newslist
----------------------------------------*/

#rimmel-newslist
{
    margin-bottom: 100px;
}

#rimmel-newslist nav
{
    position: relative;

    width: 200px;
    margin: 45px auto 60px;

    text-align: left;
}

#rimmel-newslist nav > a
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;

    position: relative;

    display: block;

    width: 100%;
    padding-bottom: 10px;
    padding-left: 18px;

    letter-spacing: .06em;

    border-bottom: 1px #000 solid;
}

#rimmel-newslist nav > a:after
{
    position: absolute;
    top: 5px;
    right: 10px;

    width: 8px;
    height: 6px;

    content: '';

    background-image: url('../images/news/nav_arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 8px 6px;
}

#rimmel-newslist nav ul
{
    position: absolute;
    z-index: 10;
    top: 25px;
    left: 0;

    display: none;

    width: 100%;
    padding: 18px 20px;

    background-color: #fff;
}

#rimmel-newslist nav ul li
{
    height: 30px;
    margin: 2px 0;
}

#rimmel-newslist nav ul li a
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 30px;

    display: block;

    height: 30px;

    letter-spacing: .06em;

    color: #646464;
}

#rimmel-newslist .list-contents
{
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

#rimmel-newslist .list-contents .container
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;

    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-newslist .list-contents .container article
{
    position: relative;

    width: 29.5%;
    max-width: 324px;
    margin-bottom: 80px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-newslist .list-contents .container article:nth-of-type(3n-1)
{
    margin-right: 5.7%;
    margin-left: 5.7%;
}

#rimmel-newslist .list-contents .container article a
{
    display: block;
}

#rimmel-newslist .list-contents .container article a figure
{
    position: relative;

    overflow: hidden;

    width: 100%;
    max-width: 324px;

    cursor: pointer;

    opacity: 0;
    /*1225追加*/
    /*1225追加 start*/
    /*1225追加 end*/
}

#rimmel-newslist .list-contents .container article a figure:before
{
    display: block;

    padding-top: 73.5%;

    content: '';
}

#rimmel-newslist .list-contents .container article a figure img
{
    /*1225追加 start*/
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    display: inline-block;
    overflow: hidden;

    width: 100%;

    -webkit-transition-duration: .5s;
            transition-duration: .5s;

    -webkit-backface-visibility: hidden;
            backface-visibility: hidden;
    /*1225追加 end*/
}

#rimmel-newslist .list-contents .container article a figure:hover img
{
    -webkit-transition: all 1.0s ease;
            transition: all 1.0s ease;
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
}

#rimmel-newslist .list-contents .container article a .text-area
{
    position: relative;

    margin-top: 35px;
    padding-left: 28px;

    text-align: left;

    opacity: 0;
}

#rimmel-newslist .list-contents .container article a .text-area:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 8px;
    height: 66px;

    content: '';

    background-color: #a6192e;
}

#rimmel-newslist .list-contents .container article a .text-area .category
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: bold;
    line-height: 18px;

    display: inline-block;

    min-width: 68px;
    height: 18px;

    text-align: center;
    letter-spacing: .1em;
}

#rimmel-newslist .list-contents .container article a .text-area .new-item
{
    color: #fff;
    border: 1px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-newslist .list-contents .container article a .text-area .campaign
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-newslist .list-contents .container article a .text-area .event
{
    color: #a6192e;
    border: 1px #a6192e solid;
}

#rimmel-newslist .list-contents .container article a .text-area .others
{
    color: #646464;
    border: 1px #646464 solid;
}

#rimmel-newslist .list-contents .container article a .text-area time
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    position: absolute;
    top: 4px;
    right: 0;

    text-align: left;
    letter-spacing: .05em;
}

#rimmel-newslist .list-contents .container article a .text-area h3
{
    font-size: 15px;
    font-size: .9375rem;
    font-weight: 500;
    line-height: 1.6;

    margin: 15px 0 10px;

    letter-spacing: .08em;
}

#rimmel-newslist .list-contents .container article a .text-area .text
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.8;

    letter-spacing: .06em;

    color: #8c8c8c;
}

#rimmel-newslist .list-contents .pager a
{
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: bold;
    line-height: 40px;

    display: inline-block;

    width: 40px;
    height: 40px;
    margin-right: 10px;
    margin-left: 10px;

    vertical-align: middle;

    color: #8c8c8c;
}

#rimmel-newslist .list-contents .pager a img
{
    width: 6px;
    height: auto;

    vertical-align: middle;
}

#rimmel-newslist .list-contents .pager a.active
{
    color: #000;
}

#rimmel-newslist .list-contents .pager .prev
{
    margin-right: 40px;
    margin-left: 0;
}

#rimmel-newslist .list-contents .pager .next
{
    margin-right: 0;
    margin-left: 40px;
}

/*----------------------------------------
	rimmel newsdetail
----------------------------------------*/

#rimmel-newsdetail
{
    margin-bottom: 100px;
}

#rimmel-newsdetail .detail-contents
{
    width: 100%;
    max-width: 800px;
    margin: 50px auto 170px;
}

#rimmel-newsdetail .detail-contents .main-photo
{
    width: 100%;
}

#rimmel-newsdetail .detail-contents .main-photo img
{
    max-width: 100%;
    height: auto;
}

#rimmel-newsdetail .detail-contents .article-area
{
    width: 100%;
    margin: 0 auto;
}

#rimmel-newsdetail .detail-contents .article-area .title-area
{
    position: relative;

    margin-top: 50px;

    text-align: left;
}

#rimmel-newsdetail .detail-contents .article-area .title-area .category
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 28px;

    display: inline-block;

    min-width: 94px;
    height: 28px;
    margin-right: 10px;

    text-align: center;
    letter-spacing: .1em;
}

#rimmel-newsdetail .detail-contents .article-area .title-area .new-item
{
    color: #fff;
    border: 1px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-newsdetail .detail-contents .article-area .title-area .campaign
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-newsdetail .detail-contents .article-area .title-area .event
{
    color: #a6192e;
    border: 1px #a6192e solid;
}

#rimmel-newsdetail .detail-contents .article-area .title-area .others
{
    color: #646464;
    border: 1px #646464 solid;
}

#rimmel-newsdetail .detail-contents .article-area .title-area time
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;

    position: absolute;
    top: 4px;
    right: 0;

    text-align: left;
    letter-spacing: .05em;
}

#rimmel-newsdetail .detail-contents .article-area .title-area h3
{
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: 500;
    line-height: 1.5;

    margin: 40px 0 20px;

    letter-spacing: .08em;

    color: #a6192e;
}

#rimmel-newsdetail .detail-contents .article-area .text-area
{
    margin: 25px 0;
    /*1219追加 start*/
    /*1219追加 end*/
}

#rimmel-newsdetail .detail-contents .article-area .text-area p
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 500;
    line-height: 2.2;

    text-align: left;
    letter-spacing: .06em;
}

#rimmel-newsdetail .detail-contents .article-area .text-area .video
{
    position: relative;

    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
}

#rimmel-newsdetail .detail-contents .article-area .text-area .video iframe
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;
}

#rimmel-newsdetail .detail-contents .article-area .item-area
{
    margin-top: 75px;
    margin-bottom: 120px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li
{
    position: relative;

    width: 50%;
    max-width: 350px;

    text-align: center;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li:nth-child(n+3)
{
    margin-top: 60px;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .icon
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 74px;

    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 74px;
    height: 74px;

    text-align: center;
    letter-spacing: .05em;

    color: #fff;
    border-radius: 50%;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .new
{
    background-color: #a6192e;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .limited
{
    background-color: #000;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li figure img
{
    width: 100%;
    height: auto;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .text
{
    max-width: 300px;
    min-height: 100px;
    margin: 0 auto;
    margin-top: 10px;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .text h3
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.6;

    letter-spacing: .06em;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .text .price
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.6;

    margin-top: 5px;

    letter-spacing: .06em;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .text .color
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 500;
    line-height: 22px;

    display: inline-block;

    height: 24px;
    margin-top: 10px;
    padding: 0 8px;

    letter-spacing: .06em;

    color: #8c8c8c;
    border: 1px #8c8c8c solid;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .text .new
{
    color: #fff;
    border: 1px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .text .limited
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn
{
    font-size: 18px;
    font-size: 1.125rem;
    line-height: 70px;

    display: block;

    width: 100%;
    max-width: 300px;
    height: 70px;
    margin: 30px auto 0;

    text-align: center;
    letter-spacing: .04em;

    color: #fff;
    border-color: #a6192e;
    background-color: #a6192e;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn:before,
#rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn:after
{
    top: 29px;
    right: 19px;

    width: 24px;
    height: 9px;
}

#rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn:after
{
    background-image: url('../images/view_arrow_red.svg');
}

#rimmel-newsdetail .detail-contents .article-area .item-area .align-items-center li
{
    margin-right: auto;
    margin-left: auto;
}

#rimmel-newsdetail .detail-contents .article-area .img-area
{
    margin: 50px auto;
}

#rimmel-newsdetail .detail-contents .article-area .img-area figure img
{
    max-width: 100%;
    height: auto;
}

#rimmel-newsdetail .detail-contents .article-area .img-area.one-column
{
    max-width: 630px;
}

#rimmel-newsdetail .detail-contents .article-area .img-area.two-column
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-newsdetail .detail-contents .article-area .img-area.two-column figure
{
    max-width: 380px;
}

#rimmel-newsdetail .related-news
{
    width: 100%;
    width: 100%;
    max-width: 1100px;
    margin: 0 auto 73px;
    padding-top: 90px;

    border-top: 1px #b4b4b4 solid;
}

#rimmel-newsdetail .related-news h3
{
    font-size: 32px;
    font-size: 2rem;
    font-weight: bold;

    margin-bottom: 60px;

    letter-spacing: .06em;
}

#rimmel-newsdetail .related-news .container
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-newsdetail .related-news .container article
{
    position: relative;

    width: 22.4%;
    max-width: 246px;
    margin-bottom: 80px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-newsdetail .related-news .container article:nth-of-type(2)
{
    margin-right: 3.4%;
    margin-left: 3.4%;
}

#rimmel-newsdetail .related-news .container article:nth-of-type(4)
{
    margin-left: 3.4%;
}

#rimmel-newsdetail .related-news .container article a
{
    display: block;
}

#rimmel-newsdetail .related-news .container article a figure
{
    width: 100%;
    max-width: 305px;
}

#rimmel-newsdetail .related-news .container article a .text-area
{
    position: relative;

    margin-top: 35px;

    text-align: left;
}

#rimmel-newsdetail .related-news .container article a .text-area .category
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: bold;
    line-height: 18px;

    display: inline-block;

    min-width: 68px;
    height: 18px;

    text-align: center;
    letter-spacing: .1em;
}

#rimmel-newsdetail .related-news .container article a .text-area .new-item
{
    color: #fff;
    border: 1px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-newsdetail .related-news .container article a .text-area .campaign
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-newsdetail .related-news .container article a .text-area .event
{
    color: #a6192e;
    border: 1px #a6192e solid;
}

#rimmel-newsdetail .related-news .container article a .text-area .others
{
    color: #646464;
    border: 1px #646464 solid;
}

#rimmel-newsdetail .related-news .container article a .text-area time
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: bold;

    position: absolute;
    top: 4px;
    right: 0;

    text-align: left;
    letter-spacing: .05em;
}

#rimmel-newsdetail .related-news .container article a .text-area h3
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.6;

    margin: 15px 0 10px;

    letter-spacing: .08em;
}

#rimmel-newsdetail .related-news .container article a .text-area .text
{
    font-size: 11px;
    font-size: .6875rem;
    font-weight: 500;
    line-height: 1.8;

    letter-spacing: .06em;

    color: #8c8c8c;
}

#rimmel-newsdetail .related-news .container > p
{
    margin: 0 auto 60px;
}

/*----------------------------------------
	rimmel personal-check
----------------------------------------*/

#rimmel-personal-check
{
    margin-bottom: 140px;
}

#rimmel-personal-check .start
{
    margin-top: 40px;
}

#rimmel-personal-check .start figure
{
    max-width: 1000px;
    margin: 0 auto;
    padding-bottom: 60px;
    /*1219追加 start*/

    border: 5px #a6192e solid;
    /*1219追加 end*/
}

#rimmel-personal-check .start figure img
{
    width: 100%;
    height: auto;
}

#rimmel-personal-check .start .view-btn
{
    font-size: 27px;
    font-size: 1.6875rem;
    line-height: 68px;

    position: relative;

    width: 370px;
    height: 78px;
    margin: -41px auto 0;

    letter-spacing: .15em;

    border: 5px #a6192e solid;
    background-color: #a6192e;
}

#rimmel-personal-check .start .view-btn:before,
#rimmel-personal-check .start .view-btn:after
{
    top: 28px;
    right: 28px;

    width: 30px;
    height: 11px;
}

#rimmel-personal-check .start .view-btn:after
{
    background-image: url('../images/view_arrow_red.svg');
}

#rimmel-personal-check .check-contents
{
    display: none;

    max-width: 1000px;
    height: 580px;
    margin: 40px auto 0;
    padding: 45px 30px 50px;

    background-color: #a6192e;
}

#rimmel-personal-check .check-contents .container
{
    position: relative;

    padding-bottom: 30px;
}

#rimmel-personal-check .check-contents .container h3
{
    font-size: 14px;
    font-size: .875rem;

    position: relative;

    display: inline-block;

    letter-spacing: .08em;

    color: #fff;
}

#rimmel-personal-check .check-contents .container h3:before,
#rimmel-personal-check .check-contents .container h3:after
{
    position: absolute;
    top: 3px;

    width: 1px;
    height: 11px;

    content: '';

    background-color: #fff;
}

#rimmel-personal-check .check-contents .container h3:before
{
    left: -18px;
}

#rimmel-personal-check .check-contents .container h3:after
{
    right: -18px;
}

#rimmel-personal-check .check-contents .container .check-block
{
    display: none;

    margin-top: 40px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-personal-check .check-contents .container .check-block h2
{
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.6;

    margin-bottom: 50px;

    letter-spacing: .15em;

    color: #fff;
}

#rimmel-personal-check .check-contents .container .check-block ul
{
    margin: 0 auto;
}

#rimmel-personal-check .check-contents .container .check-block ul li
{
    display: inline-block;

    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    max-width: 200px;
    height: 260px;
    margin-right: 7px;
    margin-left: 7px;
    padding: 35px 31px 0;

    cursor: pointer;
    -webkit-transition: all .2s ease;
            transition: all .2s ease;
    vertical-align: top;

    opacity: 0;
    border: 7px transparent solid;
    background-color: #fff;
}

#rimmel-personal-check .check-contents .container .check-block ul li figure figcaption
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.5;

    margin-top: 23px;

    letter-spacing: .15em;

    color: #a6192e;
}

#rimmel-personal-check .check-contents .container .check-block ul li:hover
{
    border-color: #ca7582;
}

#rimmel-personal-check .check-contents .container .check-block > p
{
    font-size: 11px;
    font-size: .6875rem;

    min-height: 11px;
    margin-top: 30px;

    color: #fff;
}

#rimmel-personal-check .check-contents .container .check-block .prev-link,
#rimmel-personal-check .check-contents .container .check-block .top-link
{
    position: absolute;
    bottom: 15px;
    /*1217修正*/

    display: block !important;

    text-align: left;
}

#rimmel-personal-check .check-contents .container .check-block .prev-link a,
#rimmel-personal-check .check-contents .container .check-block .top-link a
{
    font-size: 13px;
    font-size: .8125rem;

    position: relative;

    display: inline-block;

    padding-left: 33px;

    letter-spacing: .15em;

    color: #fff;
}

#rimmel-personal-check .check-contents .container .check-block .prev-link a:after,
#rimmel-personal-check .check-contents .container .check-block .top-link a:after
{
    position: absolute;
    top: -3px;
    left: 0;

    width: 20px;
    height: 20px;

    content: '';

    background-image: url('../images/personal_check/prev_arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-personal-check .check-contents .container #step-1
{
    display: block;
}

#rimmel-personal-check .check-contents .container .timeline
{
    margin-top: 28px;
    /*1217修正*/
}

#rimmel-personal-check .check-contents .container .timeline li
{
    position: relative;

    display: inline-block;

    width: 48px;

    vertical-align: top;
}

#rimmel-personal-check .check-contents .container .timeline li span
{
    display: block;

    width: 8px;
    height: 8px;
    margin: 0 auto;

    -webkit-transition: all .2s ease;
            transition: all .2s ease;

    border: 1px #fff solid;
    border-radius: 50%;
}

#rimmel-personal-check .check-contents .container .timeline li p
{
    font-size: 12px;
    font-size: .75rem;

    visibility: hidden;

    margin-top: 10px;

    letter-spacing: .05em;

    color: #fff;
}

#rimmel-personal-check .check-contents .container .timeline li:after
{
    position: absolute;
    top: 3px;
    left: calc(50% + 4px);

    width: calc(100% - 5px);
    height: 1px;

    content: '';

    background-color: #fff;
}

#rimmel-personal-check .check-contents .container .timeline li:last-child:after
{
    content: none;
}

#rimmel-personal-check .check-contents .container .timeline li.active span
{
    background-color: #fff;
}

#rimmel-personal-check .check-contents .container .timeline li.active p
{
    visibility: visible;
}

/*----------------------------------------
	rimmel personal-check-result
----------------------------------------*/

#rimmel-personal-check-result
{
    margin-bottom: 160px;
}

#rimmel-personal-check-result .result-contents
{
    max-width: 1000px;
    margin: 90px auto 0;

    border: 3px #a6192e solid;
}

#rimmel-personal-check-result .result-contents h2
{
    width: 350px;
    height: 46px;
    margin: -23px auto 0;
    padding-top: 11px;

    border: 3px #a6192e solid;
    border-radius: 23px;
    background-color: #fff;
}

#rimmel-personal-check-result .result-contents h2 img
{
    width: 83px;
    height: auto;
}

#rimmel-personal-check-result .result-contents .container
{
    padding: 70px 0 100px;
}

#rimmel-personal-check-result .result-contents .container .type
{
    max-width: 850px;
    margin: 0 auto;
    padding-bottom: 60px;

    text-align: left;

    border-bottom: 2px #a6192e solid;
}

#rimmel-personal-check-result .result-contents .container .type figure
{
    position: relative;

    display: inline-block;

    width: 260px;
    margin-right: 80px;
    margin-left: 124px;

    vertical-align: middle;

    border-radius: 50%;
    background-size: cover;
}

#rimmel-personal-check-result .result-contents .container .type figure:before
{
    display: block;

    padding-top: 100%;

    content: '';
}

#rimmel-personal-check-result .result-contents .container .type div
{
    display: inline-block;

    vertical-align: middle;
}

#rimmel-personal-check-result .result-contents .container .type div h3
{
    font-size: 44px;
    font-size: 2.75rem;

    letter-spacing: .03em;

    color: #a6192e;
}

#rimmel-personal-check-result .result-contents .container .type div p
{
    font-size: 14px;
    font-size: .875rem;
    line-height: 1.7;

    margin: 25px 0 15px;

    letter-spacing: .12em;
}

#rimmel-personal-check-result .result-contents .container .type div h4
{
    font-size: 22px;
    font-size: 1.375rem;

    letter-spacing: .12em;

    color: #a6192e;
}

#rimmel-personal-check-result .result-contents .container .recommend-item
{
    margin-top: 55px;
}

#rimmel-personal-check-result .result-contents .container .recommend-item h3
{
    position: relative;

    width: 242px;
    margin: 0 auto 90px;
}

#rimmel-personal-check-result .result-contents .container .recommend-item h3 img
{
    width: 100%;
    height: auto;
}

#rimmel-personal-check-result .result-contents .container .recommend-item h3:after
{
    position: absolute;
    top: 40px;
    right: 0;
    left: 0;

    width: 14px;
    height: 26px;
    margin: auto;

    content: '';
    -webkit-animation: arrowDown 2s ease-out infinite;
            animation: arrowDown 2s ease-out infinite;

    background-image: url('../images/personal_check/recommend_arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-personal-check-result .result-contents .container .recommend-item > p
{
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;

    letter-spacing: .12em;
}

#rimmel-personal-check-result .result-contents .container .recommend-item > p strong
{
    color: #a6192e;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul
{
    font-size: 0;
    /*0207 削除
					@include experimental-value(display, flex);
					@include experimental(justify-content, space-between);
					@include experimental(flex-wrap, wrap);
					*/

    max-width: 620px;
    margin: 55px auto 0;
    /*0207 追加*/
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li
{
    position: relative;

    display: inline-block;

    width: 260px;

    text-align: center;
    /*0207 追加*/
    /*0207 追加start*/
    /*0207 追加end*/
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li:nth-child(2n)
{
    margin-left: 99px;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li:nth-child(n+3)
{
    margin-top: 60px;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li figure img
{
    width: 100%;
    height: auto;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li div
{
    min-height: 100px;
    margin-top: 5px;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li div h4
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.6;

    margin-bottom: 15px;

    letter-spacing: .06em;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li div p
{
    font-size: 10px;
    font-size: .625rem;
    line-height: 1.7;

    letter-spacing: .06em;

    color: #646464;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn
{
    font-size: 16px;
    font-size: 1rem;
    line-height: 60px;

    display: block;

    width: 100%;
    height: 60px;
    margin: 35px auto 0;

    text-align: center;
    letter-spacing: .04em;

    color: #fff;
    border-color: #a6192e;
    background-color: #a6192e;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn:before,
#rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn:after
{
    top: 25px;
    right: 19px;

    width: 24px;
    height: 9px;
}

#rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn:after
{
    background-image: url('../images/view_arrow_red.svg');
}

#rimmel-personal-check-result .back-link
{
    margin-top: 115px;
}

@-webkit-keyframes arrowDown
{
    0%
    {
        -webkit-transform: translate(0px, 0px);

        opacity: 1;
    }

    10%
    {
        -webkit-transform: translate(0px, 0px);

        opacity: 1;
    }

    70%
    {
        -webkit-transform: translate(0px, 20px);

        opacity: 1;
    }

    100%
    {
        -webkit-transform: translate(0px, 0px);

        opacity: 1;
    }
}

@keyframes arrowDown
{
    0%
    {
        -webkit-transform: translate(0px, 0px);
                transform: translate(0px, 0px);

        opacity: 1;
    }

    10%
    {
        -webkit-transform: translate(0px, 0px);
                transform: translate(0px, 0px);

        opacity: 1;
    }

    70%
    {
        -webkit-transform: translate(0px, 20px);
                transform: translate(0px, 20px);

        opacity: 1;
    }

    100%
    {
        -webkit-transform: translate(0px, 0px);
                transform: translate(0px, 0px);

        opacity: 1;
    }
}

/*----------------------------------------
	rimmel privacy-policy
----------------------------------------*/

#rimmel-privacy-policy
{
    margin-bottom: 140px;
}

#rimmel-privacy-policy .page-title span
{
    color: #000;
}

#rimmel-privacy-policy .privacy-contents
{
    max-width: 800px;
    margin: 50px auto 0;

    text-align: left;
}

#rimmel-privacy-policy .privacy-contents .lead
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 400;
    line-height: 2.1;

    letter-spacing: .05em;
}

#rimmel-privacy-policy .privacy-contents .lead span
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 400;
    line-height: 2.1;

    display: block;

    letter-spacing: .05em;
}

#rimmel-privacy-policy .privacy-contents .lead a
{
    text-decoration: underline;
}

#rimmel-privacy-policy .privacy-contents .lead a:hover
{
    opacity: .6;
}

#rimmel-privacy-policy .privacy-contents nav
{
    margin: 95px 0;
}

#rimmel-privacy-policy .privacy-contents nav ul
{
    text-align: center;
}

#rimmel-privacy-policy .privacy-contents nav ul li
{
    position: relative;

    display: inline-block;

    height: 50px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-privacy-policy .privacy-contents nav ul li a
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.5;

    display: block;

    margin-top: 7px;

    letter-spacing: .15em;
}

#rimmel-privacy-policy .privacy-contents nav ul li:after
{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;

    width: 12px;
    height: 6px;
    margin: auto;

    content: '';

    background-image: url('../images/privacy/arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-privacy-policy .privacy-contents nav ul li:nth-child(2)
{
    margin: 0 50px;
    padding: 0 50px;

    border-right: 1px #8c8c8c solid;
    border-left: 1px #8c8c8c solid;
}

#rimmel-privacy-policy .privacy-contents nav ul li:hover
{
    opacity: .6;
}

#rimmel-privacy-policy .privacy-contents .txt-block
{
    margin-bottom: 70px;
}

#rimmel-privacy-policy .privacy-contents .txt-block h3
{
    font-size: 15px;
    font-size: .9375rem;

    margin-bottom: 25px;

    letter-spacing: .15em;

    color: #a6192e;
}

#rimmel-privacy-policy .privacy-contents .txt-block h4
{
    font-size: 13px;
    font-size: .8125rem;
    font-weight: 700;

    margin-top: 35px;
    margin-bottom: 15px;

    letter-spacing: .15em;
}

#rimmel-privacy-policy .privacy-contents .txt-block p
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 400;
    line-height: 2.1;

    letter-spacing: .05em;
}

#rimmel-privacy-policy .privacy-contents .txt-block p span
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 400;
    line-height: 2.6;

    display: block;

    letter-spacing: .05em;
}

#rimmel-privacy-policy .privacy-contents .txt-block p a
{
    text-decoration: underline;
}

#rimmel-privacy-policy .privacy-contents .txt-block p a:hover
{
    opacity: .6;
}

/*----------------------------------------
	rimmel product-list
----------------------------------------*/

#rimmel-product-list .key-visual
{
    position: relative;

    overflow: hidden;

    width: 100%;
    height: 480px;
}

#rimmel-product-list .key-visual figure
{
    width: 100%;
    height: 100%;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
}

#rimmel-product-list .key-visual h3
{
    font-size: 43px;
    font-size: 2.6875rem;
    font-weight: bold;
    line-height: 76px;

    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;

    width: 226px;
    height: 86px;
    margin: auto;

    letter-spacing: .05em;

    color: #fff;
    border: 5px #fff solid;
    background-color: rgba(0, 0, 0, .1);
}

#rimmel-product-list.product-list-eyes .key-visual figure
{
    background-image: url('../images/product/kv_eyes.jpg');
}

#rimmel-product-list.product-list-lips .key-visual figure
{
    background-image: url('../images/product/kv_lips.jpg');
}

#rimmel-product-list.product-list-face .key-visual figure
{
    background-image: url('../images/product/kv_face.jpg');
}

#rimmel-product-list.product-list-nails .key-visual figure
{
    background-image: url('../images/product/kv_nails.jpg');
}

#rimmel-product-list nav
{
    width: 100%;
    max-width: 980px;
    margin: 45px auto 80px;
}

#rimmel-product-list nav ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;

    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-product-list nav ul li
{
    display: inline-table;

    width: 23.469%;
    max-width: 230px;
    height: 80px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;

    border: 1px #646464 solid;
}

#rimmel-product-list nav ul li p
{
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;

    display: table-cell;

    vertical-align: middle;
    letter-spacing: .06em;
}

#rimmel-product-list nav ul li p span
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 500;

    display: block;

    margin-top: 5px;

    letter-spacing: .12em;

    color: #a6192e;
}

#rimmel-product-list nav ul li.active
{
    border-color: #a6192e;
    background-color: #a6192e;
}

#rimmel-product-list nav ul li.active p
{
    color: #fff;
}

#rimmel-product-list nav ul li.active p span
{
    color: #fff;
}

#rimmel-product-list .list-block
{
    display: none;
}

#rimmel-product-list .list-block.active
{
    display: block;
}

#rimmel-product-list .list-block .list-contents
{
    width: 100%;
    max-width: 1140px;
    margin: 0 auto 120px;
}

#rimmel-product-list .list-block .list-contents .page-title
{
    font-size: 40px;
    font-size: 2.5rem;

    margin-bottom: 60px;
}

#rimmel-product-list .list-block .list-contents .page-title span
{
    font-size: 12px;
    font-size: .75rem;
}

#rimmel-product-list .list-block .list-contents ul
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;

    -webkit-flex-wrap: wrap;
         -o-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
}

#rimmel-product-list .list-block .list-contents ul li
{
    position: relative;

    width: 21.1%;
    max-width: 240px;

    text-align: center;

    opacity: 0;
}

#rimmel-product-list .list-block .list-contents ul li a
{
    display: block;
}

#rimmel-product-list .list-block .list-contents ul li a figure img
{
    width: 100%;
    height: auto;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-product-list .list-block .list-contents ul li a .text
{
    margin-top: 10px;
}

#rimmel-product-list .list-block .list-contents ul li a .text h3
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.6;

    letter-spacing: .06em;
}

#rimmel-product-list .list-block .list-contents ul li a .text .color
{
    font-size: 10px;
    font-size: .625rem;
    font-weight: 500;
    line-height: 16px;

    display: inline-block;

    height: 18px;
    margin-top: 10px;
    padding: 0 8px;

    letter-spacing: .06em;

    color: #8c8c8c;
    border: 1px #8c8c8c solid;
}

#rimmel-product-list .list-block .list-contents ul li a:hover img
{
    opacity: .6;
}

#rimmel-product-list .banner
{
    width: 700px;
    margin: 0 auto;
    margin-bottom: 140px;
}

#rimmel-product-list .banner a
{
    display: block;
}

#rimmel-product-list .banner a img
{
    width: 100%;
    height: auto;
}

#rimmel-product-list .banner a:hover img
{
    opacity: .6;
}

/*----------------------------------------
	rimmel product-detail
----------------------------------------*/

#rimmel-product-detail h3
{
    font-size: 36px;
    font-size: 2.25rem;
    font-weight: bold;

    letter-spacing: .05em;
}

#rimmel-product-detail h3 span
{
    font-size: 12px;
    font-size: .75rem;

    display: block;

    margin-top: 15px;

    letter-spacing: .12em;

    color: #a6192e;
}

#rimmel-product-detail .product-info
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 1040px;
    margin: 40px auto 100px;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-product-detail .product-info .img-area
{
    width: 50%;
}

#rimmel-product-detail .product-info .img-area figure
{
    position: relative;
}

#rimmel-product-detail .product-info .img-area figure:nth-of-type(n+2)
{
    display: none;
}

#rimmel-product-detail .product-info .img-area figure img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .product-info .img-area figure span
{
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    line-height: 86px;

    position: absolute;
    top: 0;
    left: 0;

    display: block;

    width: 86px;
    height: 86px;

    text-align: center;
    letter-spacing: .05em;

    color: #fff;
    border-radius: 50%;
}

#rimmel-product-detail .product-info .img-area figure .new
{
    background-color: #a6192e;
}

#rimmel-product-detail .product-info .img-area figure .limited
{
    background-color: #000;
}

#rimmel-product-detail .product-info .text-area
{
    width: 41%;

    text-align: left;
}

#rimmel-product-detail .product-info .text-area .category
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;

    letter-spacing: .03em;

    color: #a6192e;
}

#rimmel-product-detail .product-info .text-area h2
{
    font-size: 23px;
    font-size: 1.4375rem;
    line-height: 1.3;

    margin: 25px 0 15px;

    letter-spacing: .04em;
}

#rimmel-product-detail .product-info .text-area h2 span
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: bold;
    line-height: 1.8;

    display: block;

    margin-top: 5px;

    letter-spacing: .05em;

    color: #646464;
}

#rimmel-product-detail .product-info .text-area .price
{
    font-size: 16px;
    font-size: 1rem;

    letter-spacing: .05em;

    color: #646464;
}

#rimmel-product-detail .product-info .text-area .price span
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.8;

    letter-spacing: .05em;

    color: #646464;
}

#rimmel-product-detail .product-info .text-area .price .caution
{
    font-size: 10px;
    font-size: .625rem;

    margin-left: 15px;
}

#rimmel-product-detail .product-info .text-area .caption
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.7;

    margin-top: 18px;

    letter-spacing: .05em;
}

#rimmel-product-detail .product-info .text-area .color
{
    margin-top: 25px;
    /*1224+ 追加start*/
    margin-bottom: -20px;
    padding-top: 25px;

    border-top: 1px #8c8c8c solid;
    /*1224+ 追加end*/
}

#rimmel-product-detail .product-info .text-area .color dl
{
    font-size: 0;
}

#rimmel-product-detail .product-info .text-area .color dl dt
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;

    display: inline-block;

    width: 55px;

    vertical-align: top;
}

#rimmel-product-detail .product-info .text-area .color dl dd
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 2;

    display: none;

    width: calc(100% - 56px);
    margin-bottom: 25px;

    vertical-align: top;
    letter-spacing: .08em;
}

#rimmel-product-detail .product-info .text-area .color dl dd span
{
    font-weight: bold;

    color: #a6192e;
}

#rimmel-product-detail .product-info .text-area .color dl dd.active
{
    display: inline-block;
}

#rimmel-product-detail .product-info .text-area .color ul
{
    font-size: 0;
}

#rimmel-product-detail .product-info .text-area .color ul li
{
    display: inline-block;

    width: 50px;
    margin-right: 10px;
    margin-bottom: 24px;

    vertical-align: top;
}

#rimmel-product-detail .product-info .text-area .color ul li span
{
    display: block;

    padding: 3px;
}

#rimmel-product-detail .product-info .text-area .color ul li span img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .product-info .text-area .color ul li p
{
    margin-top: 10px;
}

#rimmel-product-detail .product-info .text-area .color ul li.active span
{
    padding: 3px !important;

    border: 1px #000 solid;
}

#rimmel-product-detail .product-info .text-area .color.circle ul
{
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-product-detail .product-info .text-area .color.circle ul li.active span
{
    border-radius: 50%;
}

#rimmel-product-detail .product-info .text-area .color.circle ul li span img
{
    border-radius: 50%;
}

#rimmel-product-detail .product-info .text-area .color .color-genre
{
    margin-bottom: 70px;
    /*1224+ 修正*/
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-block > p
{
    font-size: 10px;
    font-size: .625rem;

    margin-bottom: 5px;

    letter-spacing: .04em;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-block ul li
{
    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more
{
    position: relative;

    display: inline-block;
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 111px;
    margin-top: 10px;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more p
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: bold;

    letter-spacing: .1em;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more span
{
    position: relative;
    top: 2px;
    right: 0;

    display: block;

    width: 11px;
    height: 11px;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more span:before
{
    position: absolute;
    top: 5px;
    left: 0;

    width: 11px;
    height: 1px;

    content: '';

    background-color: #000;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more span:after
{
    position: absolute;
    top: 0;
    left: 5px;

    width: 1px;
    height: 11px;

    content: '';

    background-color: #000;
}

#rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more:after
{
    position: absolute;
    bottom: -8px;
    left: 0;

    width: 100%;
    height: 2px;

    content: '';

    background-color: #a6192e;
}

#rimmel-product-detail .product-info .text-area .color .color-genre.open .color-genre-more span
{
    -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
            transform: rotate(-45deg);
}

#rimmel-product-detail .product-info .text-area > a
{
    display: block;

    margin-top: 56px;
    /*1224+ 修正*/
}

#rimmel-product-detail .point
{
    padding: 60px 0 100px;

    background-color: #a6192e;
}

#rimmel-product-detail .point h3
{
    color: #fff;
}

#rimmel-product-detail .point h3 span
{
    color: #fff;
}

#rimmel-product-detail .point ul
{
    width: 100%;
    max-width: 1040px;
    margin: 40px auto 0;
}

#rimmel-product-detail .point ul li
{
    margin-bottom: 4px;
}

#rimmel-product-detail .point ul li dl dt
{
    position: relative;

    padding: 20px 100px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-product-detail .point ul li dl dt:before,
#rimmel-product-detail .point ul li dl dt:after
{
    position: absolute;
    top: 0;
    right: 58px;
    bottom: 0;

    width: 28px;
    height: 28px;
    margin: auto;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .point ul li dl dt:before
{
    z-index: 2;

    background-image: url('../images/product/point_close.svg');
}

#rimmel-product-detail .point ul li dl dt:after
{
    z-index: 1;

    background-image: url('../images/product/point_open.svg');
}

#rimmel-product-detail .point ul li dl dt.active:after
{
    z-index: 3;
}

#rimmel-product-detail .point ul li dl dt.no-open:before,
#rimmel-product-detail .point ul li dl dt.no-open:after
{
    content: none;
}

#rimmel-product-detail .point ul li dl dt h4
{
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;

    margin-bottom: 12px;

    letter-spacing: .04em;

    color: #a6192e;
}

#rimmel-product-detail .point ul li dl dt p
{
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;

    letter-spacing: .12em;

    color: #a6192e;
}

#rimmel-product-detail .point ul li dl dd
{
    display: none;

    padding: 0 100px 5px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-product-detail .point ul li dl dd p
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.8;

    margin-bottom: 20px;

    letter-spacing: .1em;
}

#rimmel-product-detail .point ul li dl dd figure
{
    width: 400px;
    margin: 30px auto;
}

#rimmel-product-detail .point ul li dl dd figure img
{
    max-width: 100%;
    height: auto;
}

#rimmel-product-detail .point ul li dl dd img
{
    max-width: 400px;
    height: auto;
}

#rimmel-product-detail .point ul li:nth-child(2n)
{
    background-color: #fff;
}

#rimmel-product-detail .point ul li:nth-child(2n-1)
{
    background-color: #edd1d5;
}

#rimmel-product-detail .how-to-use
{
    padding: 75px 0;
}

#rimmel-product-detail .how-to-use article
{
    margin-top: 50px;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-product-detail .how-to-use article figure
{
    max-width: 350px;
    margin: 0 auto 40px;
}

#rimmel-product-detail .how-to-use article figure img
{
    max-width: 100%;
    height: auto;
}

#rimmel-product-detail .how-to-use article p
{
    font-size: 14px;
    line-height: 1.7;
    /*1219修正 START*/

    width: 600px;
    margin-right: auto;
    margin-left: auto;
    padding: 1em 0;

    text-align: center;
    vertical-align: top;
    letter-spacing: .05em;
    /*1219修正 END*/
}

#rimmel-product-detail .how-to-use article ul
{
    width: 600px;
    /*1219修正*/
    margin: 0 auto;
}

#rimmel-product-detail .how-to-use article ul li dl
{
    text-align: center;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-product-detail .how-to-use article ul li dl dt
{
    /*1219修正 start*/
    font-size: 15px;
    font-size: .9375rem;
    font-weight: bold;
    line-height: 1.7;
    /*1217追加*/

    width: 100%;
    margin-bottom: 5px;

    text-align: center;
    /*1219修正 end*/
    letter-spacing: .03em;

    color: #a6192e;
    /*1217追加*/
    /*1224追加 start*/
    /*1224追加 end*/
}

#rimmel-product-detail .how-to-use article ul li dl dd
{
    font-size: 14px;
    font-size: .875rem;
    line-height: 1.7;

    letter-spacing: .05em;
    /*1217追加 START*/
    /*1217追加 END*/
}

#rimmel-product-detail .how-to-use article ul li dl dd figure
{
    margin-bottom: 0;
}

#rimmel-product-detail .how-to-use article ul li:nth-child(n+2)
{
    margin-top: 20px;
}

#rimmel-product-detail .how-to-use article aside
{
    font-size: 10px;
    font-size: .625rem;
    line-height: 1.6;

    width: 600px;
    /*1219修正*/
    margin: 0 auto;
    margin-top: 20px;

    text-align: center;
    letter-spacing: .04em;
}

#rimmel-product-detail .colour-map
{
    padding: 60px 0 100px;

    background-color: #ebebeb;
}

#rimmel-product-detail .colour-map figure
{
    width: 100%;
    max-width: 1020px;
    margin: 40px auto 0;

    border: 2px #a6192e solid;
    /*1225追加*/
}

#rimmel-product-detail .colour-map figure img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .colour-map .banner
{
    width: 700px;
    margin: 78px auto 0;
}

#rimmel-product-detail .colour-map .banner a
{
    display: block;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-product-detail .colour-map .banner a img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .colour-map .banner a:hover img
{
    opacity: .6;
}

#rimmel-product-detail .make-up-style
{
    width: 100%;
    padding-top: 80px;

    border-top: 1px #ebebeb solid;
}

#rimmel-product-detail .make-up-style .container
{
    max-width: 1040px;
    margin: 40px auto 0;
}

#rimmel-product-detail .make-up-style .container ul li
{
    position: relative;

    width: 100%;
    padding-bottom: 50px;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area
{
    position: relative;

    width: 59%;
    margin-top: 60px;
    padding: 80px 0 0 118px;

    text-align: left;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area:after
{
    position: absolute;
    z-index: -1;
    top: 0;
    right: -110px;

    width: calc(100% + 110px);
    height: calc(100% + 50px);

    content: '';

    background-color: #ebebeb;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner
{
    width: 400px;

    text-align: center;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner h4
{
    font-size: 32px;
    font-size: 2rem;
    font-weight: bold;

    position: relative;

    display: inline;

    letter-spacing: .03em;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner h4 span
{
    font-size: 32px;
    font-size: 2rem;
    font-weight: bold;

    margin-right: 15px;

    letter-spacing: .03em;

    color: #a6192e;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner h4:before
{
    position: absolute;
    z-index: 1;
    top: -20px;
    left: -34px;

    width: 22px;
    height: 38px;

    content: '';

    background-image: url('../images/product/style_deco.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner > p
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.4;

    margin-top: 10px;

    letter-spacing: .08em;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    margin: 30px 0;
    padding: 30px 40px;

    text-align: left;

    background-color: #fff;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item figure
{
    width: 100px;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item figure img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div
{
    width: calc(100% - 120px);
    margin-left: 20px;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div p
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 1.5;

    margin-bottom: 13px;

    letter-spacing: .05em;

    color: #646464;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a
{
    font-size: 14px;
    font-size: .875rem;

    position: relative;

    display: table-cell;

    width: 160px;
    height: 34px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    text-align: center;
    text-align: center;
    vertical-align: middle;
    letter-spacing: .05em;

    color: #646464;
    border: 1px #646464 solid;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:before,
#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:after
{
    position: absolute;
    top: 6px;
    left: 24px;

    width: 18px;
    height: 18px;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:before
{
    background-image: url('../images/cart_white.svg');
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:after
{
    z-index: 1;

    background-image: url('../images/cart_gray.svg');
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:hover
{
    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:hover:before
{
    z-index: 2;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt
{
    font-size: 13px;
    font-size: .8125rem;

    position: relative;

    display: table;

    margin: 0 auto 25px;

    letter-spacing: .12em;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt:after
{
    position: absolute;
    bottom: -8px;
    left: 0;

    width: calc(100% + 16px);
    height: 1px;

    content: '';

    background-color: #a6192e;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dd
{
    text-align: left;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dd p
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 700;

    margin-bottom: 10px;

    letter-spacing: .05em;

    color: #646464;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dd p a
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: 500;
    line-height: 1.4;

    text-decoration: underline;
    letter-spacing: .05em;

    color: #646464;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .img-area
{
    position: relative;

    width: 40%;
}

#rimmel-product-detail .make-up-style .container ul li .style-contents .img-area img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .make-up-style .container .slick-dots
{
    position: absolute;
    z-index: 10;
    right: -40px;
    bottom: 40px;

    width: 30px;
}

#rimmel-product-detail .make-up-style .container .slick-dots li
{
    display: block;

    width: 22px;
    height: 22px;
    margin: 10px 0;
    padding-bottom: 0;

    border: #a6192e solid 1px;
    border-radius: 50%;
}

#rimmel-product-detail .make-up-style .container .slick-dots li span
{
    font-size: 12px;
    font-size: .75rem;
    line-height: 20px;

    vertical-align: middle;

    color: #a6192e;
}

#rimmel-product-detail .make-up-style .container .slick-dots li.slick-active
{
    background-color: #a6192e;
}

#rimmel-product-detail .make-up-style .container .slick-dots li.slick-active span
{
    color: #fff;
}

#rimmel-product-detail .make-up-style .container .slick-dots li:nth-child(n+2)
{
    margin-top: 8px;
}

#rimmel-product-detail .make-up-style .container .slick-arrow
{
    z-index: 10;
    top: 45%;

    width: 36px;
    height: 101px;

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .make-up-style .container .slick-arrow:before
{
    content: unset;
}

#rimmel-product-detail .make-up-style .container .slick-prev
{
    left: -65px;

    background-image: url('../images/product/style_arrow_prev.svg');
}

#rimmel-product-detail .make-up-style .container .slick-next
{
    right: -65px;

    background-image: url('../images/product/style_arrow_next.svg');
}

#rimmel-product-detail .link-lp-page
{
    width: 700px;
    margin: 120px auto 0;
}

#rimmel-product-detail .link-lp-page a
{
    display: block;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
}

#rimmel-product-detail .link-lp-page a img
{
    width: 100%;
    height: auto;
}

#rimmel-product-detail .link-lp-page a:hover img
{
    opacity: .6;
}

#rimmel-product-detail .link-area
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    width: 100%;
    max-width: 900px;
    margin: 120px auto 140px;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-product-detail .link-area a
{
    display: block;
}

#rimmel-product-detail .buy-now
{
    font-size: 22px;
    font-size: 1.375rem;
    line-height: 18px;
    line-height: 85px;

    position: relative;

    width: 426px;
    height: 85px;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    text-align: center;
    letter-spacing: .04em;

    color: #fff;
    border: 1px #000 solid;
    background-color: #000;
}

#rimmel-product-detail .buy-now:before,
#rimmel-product-detail .buy-now:after
{
    position: absolute;
    top: 34px;
    right: 40px;

    width: 17px;
    height: 17px;

    content: '';

    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .buy-now:before
{
    z-index: -1;

    background-image: url('../images/external_black.svg');
}

#rimmel-product-detail .buy-now:after
{
    background-image: url('../images/external.svg');
}

#rimmel-product-detail .buy-now span
{
    position: relative;
    z-index: 1;

    display: inline-block;

    width: 27px;
    height: 27px;
    margin-right: 35px;
    margin-left: -35px;

    -webkit-animation: arrow-blink 1.2s linear infinite alternate;
            animation: arrow-blink 1.2s linear infinite alternate;
    vertical-align: sub;

    background-image: url('../images/cart_white.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .buy-now span:before
{
    position: absolute;
    top: 0;
    left: 0;

    width: 100%;
    height: 100%;

    content: '';

    opacity: 0;
    background-image: url('../images/cart_black.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-product-detail .buy-now:hover
{
    color: #000;
    background-color: #fff;
}

#rimmel-product-detail .buy-now:hover:before
{
    z-index: 1;
}

#rimmel-product-detail .buy-now:hover span
{
    -webkit-animation: unset;
            animation: unset;
}

#rimmel-product-detail .buy-now:hover span:before
{
    opacity: 1;
}

#rimmel-product-detail .sp-buy-area
{
    position: fixed;
    z-index: 901;
    bottom: 0;
    left: 0;

    width: 100%;
    height: 75px;

    background-color: rgba(220, 220, 220, .85);
}

#rimmel-product-detail .sp-buy-area div
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    margin: 13px 15px;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-product-detail .sp-buy-area div p
{
    font-size: 23px;
    font-size: 1.4375rem;
    line-height: 23px;

    margin-top: 10px;
}

#rimmel-product-detail .sp-buy-area div p span
{
    font-size: 13px;
    font-size: .8125rem;
}

#rimmel-product-detail .sp-buy-area div a
{
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 50px;

    position: relative;

    display: block;

    width: 185px;
    height: 50px;
    padding-left: 27px;

    text-align: center;
    letter-spacing: .1em;

    color: #fff;
    background-color: #000;
}

#rimmel-product-detail .sp-buy-area div a:after
{
    position: absolute;
    top: 15px;
    left: 39px;

    width: 23px;
    height: 20px;

    content: '';
    -webkit-animation: arrow-blink 1.2s linear infinite alternate;
            animation: arrow-blink 1.2s linear infinite alternate;

    background-image: url('../images/cart_white.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

/*----------------------------------------
	rimmel shoplist
----------------------------------------*/

#rimmel-shoplist
{
    margin-bottom: 100px;
}

#rimmel-shoplist nav
{
    margin: 65px 0 80px;
}

#rimmel-shoplist nav ul li
{
    position: relative;

    display: inline-block;

    height: 19px;
    margin: 0 34px;
}

#rimmel-shoplist nav ul li:after
{
    position: absolute;
    top: 0;
    right: -34px;

    width: 1px;
    height: 19px;

    content: '';

    background-color: #000;
}

#rimmel-shoplist nav ul li:last-child:after
{
    content: normal;
}

#rimmel-shoplist nav ul li a
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 500;
    line-height: 19px;

    display: block;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    letter-spacing: .04em;
}

#rimmel-shoplist nav ul li:hover a
{
    color: #a6192e;
}

#rimmel-shoplist .list-contents
{
    margin-bottom: 73px;
}

#rimmel-shoplist .list-contents .list-block
{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

#rimmel-shoplist .list-contents .list-block:nth-child(n+2)
{
    padding-top: 73px;
}

#rimmel-shoplist .list-contents .list-block h3
{
    font-size: 16px;
    font-size: 1rem;
    line-height: 56px;

    position: relative;

    width: 100%;
    height: 56px;

    letter-spacing: .04em;

    color: #fff;
    background-color: #a6192e;
}

#rimmel-shoplist .list-contents .list-block ul
{
    margin: 13px 13px 0;

    text-align: left;
}

#rimmel-shoplist .list-contents .list-block ul li
{
    display: inline-block;

    margin: 23px 37px;
}

#rimmel-shoplist .list-contents .list-block ul li a
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 500;

    position: relative;

    display: block;

    padding-right: 36px;

    letter-spacing: .04em;
}

#rimmel-shoplist .list-contents .list-block ul li a:after
{
    position: absolute;
    top: 1px;
    right: 0;

    width: 7px;
    height: 12px;

    content: '';

    background-image: url('../images/shoplist/arrow.svg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% auto;
}

#rimmel-shoplist .list-contents .list-block ul li a:hover
{
    opacity: .6;
}

#rimmel-shoplist .online-shop
{
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 115px;

    border-top: 1px #b4b4b4 solid;
}

#rimmel-shoplist .online-shop h3
{
    font-size: 38px;
    font-size: 2.375rem;
    font-weight: bold;

    margin-bottom: 15px;

    letter-spacing: .04em;
}

#rimmel-shoplist .online-shop p
{
    font-size: 14px;
    font-size: .875rem;
    font-weight: 500;

    letter-spacing: .2em;
}

#rimmel-shoplist .online-shop ul
{
    margin-top: 45px;
}

#rimmel-shoplist .online-shop ul li
{
    display: inline-block;

    width: 25%;
    max-width: 230px;
    height: 120px;

    border: 1px #b4b4b4 solid;
}

#rimmel-shoplist .online-shop ul li:nth-child(n+2)
{
    margin-left: 2.7%;
}

#rimmel-shoplist .online-shop ul li a
{
    display: table-cell;

    height: 120px;

    vertical-align: middle;
}

#rimmel-shoplist .online-shop ul li a:hover img
{
    opacity: .6;
}

#rimmel-shoplist .detail-contents h3
{
    font-size: 16px;
    font-size: 1rem;
    font-weight: 500;
    line-height: 80px;

    width: 100%;
    height: 80px;

    letter-spacing: .04em;

    background-color: #ebebeb;
}

#rimmel-shoplist .detail-contents ul
{
    width: 100%;
    max-width: 1000px;
    margin: 30px auto 70px;
}

#rimmel-shoplist .detail-contents ul li
{
    display: -webkit-flex;
    display:    -moz-flex;
    display:      -o-flex;
    display:     -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display:         flex;

    padding: 50px 0;

    text-align: left;

    border-bottom: 1px #b4b4b4 solid;

    -webkit-justify-content: space-between;
       -moz-justify-content: space-between;
         -o-justify-content: space-between;
        -ms-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
            justify-content: space-between;
}

#rimmel-shoplist .detail-contents ul li h4
{
    font-size: 13px;
    font-size: .8125rem;
    font-weight: 500;

    width: 30%;
    max-width: 300px;

    letter-spacing: .04em;
}

#rimmel-shoplist .detail-contents ul li address
{
    width: 55.6%;
    max-width: 556px;
}

#rimmel-shoplist .detail-contents ul li address .adress,
#rimmel-shoplist .detail-contents ul li address .tel
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.9;

    letter-spacing: .06em;

    color: #828282;
}

#rimmel-shoplist .detail-contents ul li address .tel span
{
    font-size: 13px;
    font-size: .8125rem;
    line-height: 1.9;

    margin-left: 10px;

    text-decoration: underline;
    letter-spacing: .06em;

    color: #828282;
}

#rimmel-shoplist .detail-contents ul li > p
{
    width: 10.4%;
    max-width: 104px;
}

#rimmel-shoplist .detail-contents ul li > p a
{
    font-size: 12px;
    font-size: .75rem;
    font-weight: bold;
    line-height: 26px;

    display: block;

    width: 84px;
    height: 26px;
    margin-right: 0;
    margin-left: auto;

    -webkit-transition: all .4s ease;
            transition: all .4s ease;
    text-align: center;
    letter-spacing: .2em;

    color: #828282;
    border: 1px #828282 solid;
}

@media only screen and (min-width: 769px)
{
    .view-btn:hover
    {
        color: #000;
        border-color: #000;
        background-color: #fff;
    }

    .view-btn:hover:before
    {
        -webkit-animation: arrowbefore .5s ease forwards;
                animation: arrowbefore .5s ease forwards;
    }

    .view-btn:hover:after
    {
        -webkit-animation: arrowafter .5s ease forwards;
                animation: arrowafter .5s ease forwards;
    }

    .back-link:hover
    {
        color: #fff;
        background-color: #000;
    }

    .back-link:hover:before
    {
        z-index: 2;
    }

    #rimmel-index .whats-new .container .latest .text-area .view-btn:hover
    {
        border-color: #fff;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn:hover
    {
        color: #a6192e;
        background-color: #fff;
    }

    #rimmel-index .sns .container .instagram .text a:hover
    {
        color: #a6192e;
        background-color: #fff;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn:hover
    {
        color: #a6192e;
        border-color: #a6192e;
        background-color: #fff;
    }

    #rimmel-personal-check .start .view-btn:hover
    {
        color: #a6192e;
        border-color: #a6192e;
        background-color: #fff;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn:hover
    {
        color: #a6192e;
        border-color: #a6192e;
        background-color: #fff;
    }

    #rimmel-product-list nav ul li:nth-child(4n-1)
    {
        margin-right: 20px;
    }

    #rimmel-product-list nav ul li:nth-child(4n-2)
    {
        margin-right: 20px;
        margin-left: 20px;
    }

    #rimmel-product-list nav ul li:nth-child(n+5)
    {
        margin-top: 20px;
    }

    #rimmel-product-list nav ul li:hover
    {
        border-color: #a6192e;
        background-color: #a6192e;
    }

    #rimmel-product-list nav ul li:hover p
    {
        color: #fff;
    }

    #rimmel-product-list nav ul li:hover p span
    {
        color: #fff;
    }

    #rimmel-product-list .list-block .list-contents ul li:nth-child(4n-1)
    {
        margin-right: 5.2%;
    }

    #rimmel-product-list .list-block .list-contents ul li:nth-child(4n-2)
    {
        margin-right: 5.2%;
        margin-left: 5.2%;
    }

    #rimmel-product-list .list-block .list-contents ul li:nth-child(n+5)
    {
        margin-top: 80px;
    }

    #rimmel-product-list .category-link ul
    {
        display: -webkit-flex;
        display:    -moz-flex;
        display:      -o-flex;
        display:     -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display:         flex;

        -webkit-justify-content: space-between;
           -moz-justify-content: space-between;
             -o-justify-content: space-between;
            -ms-justify-content: space-between;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
    }

    #rimmel-product-list .category-link ul li
    {
        position: relative;

        overflow: hidden;

        width: 33%;
        height: 320px;
    }

    #rimmel-product-list .category-link ul li a
    {
        position: relative;

        display: block;

        width: 100%;
        height: 100%;
    }

    #rimmel-product-list .category-link ul li a figure
    {
        overflow: hidden;

        width: 100%;
        height: 100%;

        -webkit-transition: all .8s ease;
                transition: all .8s ease;

        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

    #rimmel-product-list .category-link ul li a h3
    {
        font-size: 30px;
        font-size: 1.875rem;
        font-weight: bold;
        line-height: 52px;

        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;

        width: 160px;
        height: 60px;
        margin: auto;

        letter-spacing: .05em;

        color: #fff;
        border: 4px #fff solid;
        background-color: rgba(0, 0, 0, .1);
    }

    #rimmel-product-list .category-link ul li a:hover figure
    {
        -webkit-transform: scale(1.2) !important;
            -ms-transform: scale(1.2) !important;
                transform: scale(1.2) !important;
    }

    #rimmel-product-list .category-link ul li.eyes figure
    {
        background-image: url('../images/product/category_eyes.jpg');
    }

    #rimmel-product-list .category-link ul li.lips figure
    {
        background-image: url('../images/product/category_lips.jpg');
    }

    #rimmel-product-list .category-link ul li.face figure
    {
        background-image: url('../images/product/category_face.jpg');
    }

    #rimmel-product-list .category-link ul li.nails figure
    {
        background-image: url('../images/product/category_nails.jpg');
    }

    #rimmel-product-list .category-link ul li:after
    {
        position: absolute;
        top: 0;
        right: 30px;
        bottom: 0;

        width: 11px;
        height: 18px;
        margin: auto;

        content: '';

        background-image: url('../images/product/arrow.svg');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-block ul li:nth-child(n+8)
    {
        display: none;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre.open .color-genre-block ul li:nth-child(n+8)
    {
        display: inline-block;
    }

    #rimmel-shoplist .detail-contents ul li > p a:hover
    {
        color: #fff;
        border: 1px #000 solid;
        background-color: #000;
    }
}

@media only screen and (max-width: 768px)
{
    .sp-visible
    {
        display: block !important;
    }

    .sp-invisible
    {
        display: none !important;
    }

    .pankuzu
    {
        width: calc(100% - 30px);
        padding-top: 15px;
    }

    .pankuzu ul
    {
        font-size: 9px;
        font-size: .5625rem;
        line-height: 1.6;
    }

    .pankuzu ul li
    {
        font-size: 9px;
        font-size: .5625rem;
    }

    .pankuzu ul li a
    {
        font-size: 9px;
        font-size: .5625rem;
    }

    .side
    {
        top: auto;
        bottom: 50px;

        height: 150px;
    }

    .side ul
    {
        position: static;

        height: 105px;
    }

    .side ul li
    {
        width: 27px;
        margin: 0 auto;
    }

    .side ul li:nth-child(2)
    {
        margin: 12px auto;
    }

    .side .page-top
    {
        position: static;

        width: 33px;
        margin-top: 20px;
    }

    .side.active
    {
        right: 6px !important;
    }

    .view-btn
    {
        font-size: 21px;
        font-size: 1.3125rem;
        line-height: 62px;

        width: 100%;
        max-width: 325px;
        height: 62px;
    }

    .view-btn:before,
    .view-btn:after
    {
        top: 25px;
        right: 24px;

        width: 22px;
        height: 10px;
    }

    .page-title
    {
        font-size: 41px;
        font-size: 2.5625rem;

        margin-top: 40px;
    }

    .back-link
    {
        font-size: 21px;
        font-size: 1.3125rem;
        line-height: 75px;

        width: calc(100% - 50px);
        height: 75px;
    }

    .back-link:before,
    .back-link:after
    {
        top: 30px;
        left: 23px;

        width: 22px;
        height: 10px;
    }

    footer .page-top
    {
        height: 60px;
    }

    footer .page-top a
    {
        font-size: 18px;
        font-size: 1.125rem;

        padding-top: 0;
    }

    footer .page-top a span
    {
        width: 10px;
    }

    footer .container
    {
        width: calc(100% - 50px);
        max-width: 100%;
        padding: 15px 0 20px;
    }

    footer .container .menu
    {
        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;
    }

    footer .container .menu .brand ul
    {
                flex-direction: column;

        max-width: 100%;
        height: auto;

        -webkit-flex-direction: column;
           -moz-flex-direction: column;
             -o-flex-direction: column;
            -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    footer .container .menu .brand ul li
    {
        position: relative;

        margin-bottom: 0;

        border-bottom: 1px #fff solid;
    }

    footer .container .menu .brand ul li:after
    {
        position: absolute;
        top: 23px;
        right: 10px;

        width: 5px;
        height: 10px;

        content: '';

        background-image: url('../images/menu_arrow_sp.svg');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    footer .container .menu .brand ul li:first-child
    {
        -ms-flex-order: 0;
        -webkit-order: 0;
        -webkit-box-ordinal-group: 1;
                order: 0;
    }

    footer .container .menu .brand ul li:nth-child(2)
    {
        -ms-flex-order: 1;
        -webkit-order: 1;
        -webkit-box-ordinal-group: 2;
                order: 1;
    }

    footer .container .menu .brand ul li:nth-child(3)
    {
        -ms-flex-order: 3;
        -webkit-order: 3;
        -webkit-box-ordinal-group: 4;
                order: 3;
    }

    footer .container .menu .brand ul li:nth-child(4)
    {
        -ms-flex-order: 4;
        -webkit-order: 4;
        -webkit-box-ordinal-group: 5;
                order: 4;
    }

    footer .container .menu .brand ul li:nth-child(5)
    {
        -ms-flex-order: 5;
        -webkit-order: 5;
        -webkit-box-ordinal-group: 6;
                order: 5;
    }

    footer .container .menu .brand ul li:nth-child(6)
    {
        -ms-flex-order: 2;
        -webkit-order: 2;
        -webkit-box-ordinal-group: 3;
                order: 2;
    }

    footer .container .menu .brand ul li:nth-child(6):before,
    footer .container .menu .brand ul li:nth-child(6):after
    {
        position: absolute;

        content: '';

        background-color: #fff;
    }

    footer .container .menu .brand ul li:nth-child(6):before
    {
        top: 29px;
        right: 11px;

        width: 11px;
        height: 1px;
    }

    footer .container .menu .brand ul li:nth-child(6):after
    {
        top: 24px;
        right: 16px;

        width: 1px;
        height: 11px;

        background-image: none;
    }

    footer .container .menu .brand ul li:nth-child(6).active:after
    {
        display: none;
    }

    footer .container .menu .brand ul li:last-child
    {
        margin-left: 0;
    }

    footer .container .menu .brand ul li a
    {
        font-size: 16px;
        font-size: 1rem;
        line-height: 60px;

        display: block;
    }

    footer .container .menu .brand ul li p
    {
        font-size: 16px;
        font-size: 1rem;
        line-height: 60px;

        margin-bottom: 0;
    }

    footer .container .menu .brand ul li div
    {
        display: none;
    }

    footer .container .menu .brand ul li div dl
    {
        display: block;

        width: calc(100% - 20px);
        margin-right: 0;
        margin-left: auto;

        border-bottom: 1px #fff solid;
    }

    footer .container .menu .brand ul li div dl:last-of-type
    {
        border-bottom: none;
    }

    footer .container .menu .brand ul li div dl dt
    {
        line-height: 60px;

        position: relative;

        height: 60px;
        margin-bottom: 0;
    }

    footer .container .menu .brand ul li div dl dt:before,
    footer .container .menu .brand ul li div dl dt:after
    {
        position: absolute;

        content: '';

        background-color: #fff;
    }

    footer .container .menu .brand ul li div dl dt:before
    {
        top: 29px;
        right: 11px;

        width: 11px;
        height: 1px;
    }

    footer .container .menu .brand ul li div dl dt:after
    {
        top: 24px;
        right: 16px;

        width: 1px;
        height: 11px;
    }

    footer .container .menu .brand ul li div dl dt.active:after
    {
        display: none;
    }

    footer .container .menu .brand ul li div dl dd
    {
        display: none;

        margin-bottom: 20px;

        border-top: 1px #fff solid;
    }

    footer .container .menu .brand ul li div dl dd a
    {
        position: relative;

        height: 40px;
        margin-bottom: 0;
    }

    footer .container .menu .brand ul li div dl dd a:after
    {
        position: absolute;
        top: 23px;
        right: 10px;

        width: 5px;
        height: 10px;

        content: '';

        background-image: url('../images/menu_arrow_sp.svg');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    footer .container .menu .online-shop
    {
        width: 100%;
        margin-top: 38px;
    }

    footer .container .menu .online-shop p
    {
        font-size: 16px;
        font-size: 1rem;

        margin-bottom: 20px;
    }

    footer .container .menu .online-shop ul li
    {
        width: 100%;

        text-align: center;

        background-color: #fff;
    }

    footer .container .menu .online-shop ul li img
    {
        width: 47.230%;
    }

    footer .container .bottom
    {
        margin-top: 30px;
    }

    footer .container .bottom > ul
    {
                flex-direction: column;

        -webkit-flex-direction: column;
           -moz-flex-direction: column;
             -o-flex-direction: column;
            -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    footer .container .bottom > ul > li:first-child
    {
        margin-top: 30px;
        margin-bottom: 10px;

        -ms-flex-order: 1;
        -webkit-order: 1;
        -webkit-box-ordinal-group: 2;
                order: 1;
    }

    footer .container .bottom > ul > li:nth-child(2)
    {
        -ms-flex-order: 2;
        -webkit-order: 2;
        -webkit-box-ordinal-group: 3;
                order: 2;
    }

    footer .container .bottom > ul > li:nth-child(3)
    {
        -ms-flex-order: 0;
        -webkit-order: 0;
        -webkit-box-ordinal-group: 1;
                order: 0;
    }

    footer .container .bottom > ul > li:nth-child(2)
    {
        margin-right: auto;
    }

    footer .container .bottom > ul > li .text-link
    {
        display: -webkit-flex;
        display:    -moz-flex;
        display:      -o-flex;
        display:     -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display:         flex;

        -webkit-justify-content: space-between;
           -moz-justify-content: space-between;
             -o-justify-content: space-between;
            -ms-justify-content: space-between;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
                justify-content: space-between;
        -webkit-flex-wrap: wrap;
             -o-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
    }

    footer .container .bottom > ul > li .text-link li
    {
        width: calc(50% - 10px);
        margin-right: 0;
        margin-bottom: 10px;

        text-align: left;
    }

    footer .container .bottom > ul > li .text-link li:nth-child(2n-1)
    {
        text-align: right;
    }

    footer .container .bottom > ul > li .text-link li:last-child
    {
        margin-right: 0;
    }

    footer .container .bottom > ul > li .sns
    {
        text-align: center;
    }

    header
    {
        position: fixed;
        z-index: 999;
        top: 0;
        left: 0;
    }

    header .header-upper
    {
        height: 55px;
    }

    header .header-upper h1
    {
        width: 148px;
        padding-top: 17px;
    }

    header .header-upper div
    {
        width: 24px;
        height: 21px;

        background-color: transparent;
    }

    header .header-upper div a
    {
        width: 100%;
        height: 100%;

        background-position: center center;
        background-size: 100% auto;
    }

    header .header-upper div a p
    {
        display: none;
    }

    header nav
    {
        height: 32px;
    }

    header nav > ul
    {
        width: 100%;
    }

    header nav > ul > li
    {
        display: none;
    }

    header nav > ul > li > a
    {
        font-size: 14px;
        font-size: .875rem;
        line-height: 32px;
    }

    header nav > ul > li > a:after
    {
        content: unset;
    }

    header nav > ul > li.dropdown-menu
    {
        display: block;

        width: 25%;

        border-right: 1px #fff solid;
    }

    header nav > ul > li.dropdown-menu > a
    {
        pointer-events: none;
    }

    header nav > ul > li.dropdown-menu.active
    {
        background-color: #fff;
    }

    header nav > ul > li.dropdown-menu.active > a
    {
        color: #a6192e;
    }

    header nav > ul > li.dropdown-menu:nth-child(5)
    {
        border-right: none;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents
    {
        z-index: 999;
        left: 0;

        width: 100%;
        height: auto;
        padding-top: 0;

        -webkit-transform: translateX(0);
            -ms-transform: translateX(0);
                transform: translateX(0);

        border-bottom: 2px #a6192e solid;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents .close
    {
        position: absolute;
        top: 15px;
        right: 15px;

        display: block;

        width: 20px;
        height: 20px;

        background-image: url('../images/close_black.svg');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul
    {
        position: static;

        padding: 40px 25px;

        -webkit-flex-wrap: wrap;
             -o-flex-wrap: wrap;
            -ms-flex-wrap: wrap;
                flex-wrap: wrap;
        -webkit-justify-content: normal;
           -moz-justify-content: normal;
             -o-justify-content: normal;
            -ms-justify-content: normal;
        -webkit-box-pack: normal;
        -ms-flex-pack: normal;
                justify-content: normal;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul li
    {
        width: 31%;
        margin-right: 0;
        margin-left: 0;

        vertical-align: top;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul li:nth-child(n+4)
    {
        margin-top: 25px;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul li:nth-child(3n-1)
    {
        margin-right: 3.5%;
        margin-left: 3.5%;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul li a figure
    {
        width: auto;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul li a h2
    {
        font-size: 0;
    }

    header nav > ul > li.dropdown-menu .dropdown-contents ul li a h2 span
    {
        font-size: 11px;
        font-size: .6875rem;
        line-height: 1.36;

        margin-top: 0;

        letter-spacing: .12em;
    }

    .header-fix
    {
        display: none;
    }

    .online-modal
    {
        width: 80%;
        max-width: 80%;
        padding: 44px 0;
    }

    .online-modal .remodal-close
    {
        top: 20px;
        right: 20px;

        width: 18px;
        height: 18px;
    }

    .online-modal section
    {
        max-width: 100%;
    }

    .online-modal section h2
    {
        font-size: 27px;
        font-size: 1.6875rem;
    }

    .online-modal section p
    {
        font-size: 10px;
        font-size: .625rem;

        margin-top: 13px;
        margin-bottom: 25px;
    }

    .online-modal section ul li
    {
        width: 63.333%;
        margin-right: auto;
        margin-left: auto;
    }

    .online-modal section ul li:nth-child(n+2)
    {
        margin-top: 15px;
    }

    .online-modal section ul li a img
    {
        width: 100%;
    }

    #rimmel-concept
    {
        margin-top: 87px;
        margin-bottom: 70px;

        background-size: auto 235px;
    }

    #rimmel-concept .message
    {
        width: calc(100% - 50px);
        max-width: calc(100% - 50px);
        margin-top: 60px;
    }

    #rimmel-concept .message .page-title
    {
        font-size: 38px;
        font-size: 2.375rem;

        margin-top: 0;
        margin-bottom: 35px;
    }

    #rimmel-concept .message p
    {
        width: 86.153%;
    }

    #rimmel-concept .message p img
    {
        max-width: 400px;
        margin-right: auto;
        margin-left: auto;
    }

    #rimmel-concept .message figure
    {
        width: 91.3%;
        margin-top: 50px;
    }

    #rimmel-concept .history-link
    {
        width: calc(100% - 50px);
        height: 125px;
        margin-top: 65px;
        margin-bottom: 80px;
    }

    #rimmel-concept .history-link a:before
    {
        top: 55px;
        right: 20px;

        width: 24px;
        height: 11px;
    }

    #rimmel-concept .history-link a figure
    {
        background-image: url('../images/concept/history_link_sp.jpg');
    }

    #rimmel-concept .history-link a p
    {
        font-size: 13px;
        font-size: .8125rem;

        height: 54px;
    }

    #rimmel-concept .history-link a p span
    {
        font-size: 30px;
        font-size: 1.875rem;

        margin-bottom: 10px;
    }

    #rimmel-concept .history-link a p img
    {
        width: 138px;
    }

    #rimmel-concept .profile
    {
        width: calc(100% - 50px);
    }

    #rimmel-concept .profile article
    {
                flex-direction: column;

        -webkit-flex-direction: column;
           -moz-flex-direction: column;
             -o-flex-direction: column;
            -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    #rimmel-concept .profile article h3
    {
        font-size: 15px;
        font-size: .9375rem;

        margin-bottom: 20px;
        margin-left: 0;

        -ms-flex-order: 0;
        -webkit-order: 0;
        -webkit-box-ordinal-group: 1;
                order: 0;
    }

    #rimmel-concept .profile article figure
    {
        width: 110px;
        margin: 0 auto 25px;

        -ms-flex-order: 1;
        -webkit-order: 1;
        -webkit-box-ordinal-group: 2;
                order: 1;
    }

    #rimmel-concept .profile article p
    {
        position: static;

        width: 100%;

        -ms-flex-order: 2;
        -webkit-order: 2;
        -webkit-box-ordinal-group: 3;
                order: 2;
    }

    #rimmel-contact
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-contact .contact-contents
    {
        width: 88%;
        max-width: 88%;
        margin-top: 35px;
    }

    #rimmel-contact .contact-contents div
    {
        width: 100%;
        height: auto;
        margin-bottom: 57px;
        padding: 30px 0 33px;
    }

    #rimmel-contact .contact-contents div h3
    {
        font-size: 15px;
        font-size: .9375rem;
    }

    #rimmel-contact .contact-contents div address
    {
        margin-top: 20px;
    }

    #rimmel-contact .contact-contents div address p
    {
        font-size: 32px;
        font-size: 2rem;
    }

    #rimmel-contact .contact-contents div > p
    {
        font-size: 13px;
        font-size: .8125rem;
    }

    #rimmel-corporate
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-corporate .corporate-contents
    {
        width: 88%;
        max-width: 88%;
        margin-top: 25px;
    }

    #rimmel-corporate .corporate-contents dl
    {
        padding: 25px 0;
    }

    #rimmel-corporate .corporate-contents dl dt
    {
        font-size: 12px;
        font-size: .75rem;

        width: 33%;
        padding-left: 10px;
    }

    #rimmel-corporate .corporate-contents dl dd
    {
        font-size: 12px;
        font-size: .75rem;

        width: 66%;
    }

    #rimmel-history
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-history nav
    {
        margin-top: 25px;
        margin-bottom: 35px;
    }

    #rimmel-history nav ul li
    {
        font-size: 15px;
        font-size: .9375rem;

        margin-right: 11px;
        margin-left: 11px;
    }

    #rimmel-history nav ul li:after
    {
        top: 0;
        right: -13px;

        width: 5px;
        height: 14px;
    }

    #rimmel-history .lead
    {
        font-size: 14px;
        font-size: .875rem;
    }

    #rimmel-history .history-contents
    {
        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;

        width: calc(100% - 50px);
        max-width: calc(100% - 50px);
        margin-top: 50px;
    }

    #rimmel-history .history-contents .history-block
    {
        width: 86.461%;
        margin: 0 auto;
    }

    #rimmel-history .history-contents .history-block:after
    {
        content: normal;
    }

    #rimmel-history .history-contents .history-block h3
    {
        font-size: 35px;
        font-size: 2.1875rem;

        margin-bottom: 15px;
    }

    #rimmel-history .history-contents .history-block h3:before
    {
        top: 20px;

        width: 8px;
        height: 8px;
    }

    #rimmel-history .history-contents .history-block h3:after
    {
        top: 6px;

        width: 48px;
        height: 48px;
    }

    #rimmel-history .history-contents .history-block p
    {
        font-size: 13px;
        font-size: .8125rem;
    }

    #rimmel-history .history-contents .history-block a
    {
        width: 98px;
        margin-top: 25px;
    }

    #rimmel-history .history-contents .history-block a p
    {
        font-size: 15px;
        font-size: .9375rem;
    }

    #rimmel-history .history-contents .history-block a span
    {
        top: 8px;
    }

    #rimmel-history .history-contents .history-block a:after
    {
        bottom: 0;
    }

    #rimmel-history .history-contents .left
    {
        padding: 0;
    }

    #rimmel-history .history-contents .left:before
    {
        top: 20px;
        right: auto;
        left: -7.5%;
    }

    #rimmel-history .history-contents .left h3
    {
        text-align: left;
    }

    #rimmel-history .history-contents .left h3:before
    {
        right: auto;
        left: -8.5%;
    }

    #rimmel-history .history-contents .left h3:after
    {
        right: auto;
        left: -48px;
    }

    #rimmel-history .history-contents .right
    {
        padding: 0;
    }

    #rimmel-history .history-contents .right:before
    {
        position: absolute;
        top: 20px;
        left: -7.5%;

        width: 1px;
        height: 100%;

        content: '';

        background-color: #000;
    }

    #rimmel-history .history-contents .right h3:before
    {
        right: auto;
        left: -8.5%;
    }

    #rimmel-history .history-contents .right h3:after
    {
        right: auto;
        left: -48px;
    }

    #rimmel-history .history-contents #age1834
    {
        padding-bottom: 0;
    }

    #rimmel-history .history-contents #age1834 > figure
    {
        max-width: 75.088%;
    }

    #rimmel-history .history-contents #age1850
    {
        margin-top: 0;
        padding-top: 60px;
    }

    #rimmel-history .history-contents #age1850 > figure
    {
        max-width: 94.839%;
        margin-top: 10px;
    }

    #rimmel-history .history-contents #age1860
    {
        margin-top: 0;
        padding-top: 60px;
    }

    #rimmel-history .history-contents #age1860 > figure
    {
        max-width: 67.437%;
        margin-top: 20px;
    }

    #rimmel-history .history-contents #age1880
    {
        margin-top: 0;
        padding-top: 50px;
    }

    #rimmel-history .history-contents #age1880 > figure
    {
        max-width: 100%;
        margin-top: 20px;
    }

    #rimmel-history .history-contents #age1900
    {
        margin-top: 0;
        padding-top: 50px;
    }

    #rimmel-history .history-contents #age1900 > figure
    {
        max-width: 82.384%;
        margin-bottom: 20px;
    }

    #rimmel-history .history-contents #age2006
    {
        margin-top: 0;
        padding-top: 60px;
    }

    #rimmel-history .concept-link
    {
        width: calc(100% - 50px);
        height: 125px;
        margin-top: 65px;
        margin-bottom: 80px;
    }

    #rimmel-history .concept-link a:before
    {
        top: 55px;
        right: 20px;

        width: 24px;
        height: 11px;
    }

    #rimmel-history .concept-link a figure
    {
        background-image: url('../images/concept/history_link_sp.jpg');
    }

    #rimmel-history .concept-link a p
    {
        font-size: 13px;
        font-size: .8125rem;

        height: 54px;
    }

    #rimmel-history .concept-link a p span
    {
        font-size: 30px;
        font-size: 1.875rem;

        margin-bottom: 10px;
    }

    #rimmel-history .concept-link a p img
    {
        width: 162px;
    }

    #rimmel-index
    {
        margin-top: 87px;
    }

    #rimmel-index .whats-new,
    #rimmel-index .sns
    {
        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;
    }

    #rimmel-index .whats-new .container,
    #rimmel-index .sns .container
    {
        margin-left: 0;
    }

    #rimmel-index .whats-new h2,
    #rimmel-index .new-products h2,
    #rimmel-index .brand-concept h2,
    #rimmel-index .sns h2
    {
        display: inline-block;

        width: auto;
        margin-left: 0;

        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
        -webkit-transform-origin: none;
            -ms-transform-origin: none;
                transform-origin: none;
        text-align: center;
    }

    #rimmel-index .whats-new h2 p:after,
    #rimmel-index .new-products h2 p:after,
    #rimmel-index .brand-concept h2 p:after,
    #rimmel-index .sns h2 p:after
    {
        bottom: 0;
    }

    #rimmel-index .whats-new h2 span,
    #rimmel-index .new-products h2 span,
    #rimmel-index .brand-concept h2 span,
    #rimmel-index .sns h2 span
    {
        font-size: 38px;
        font-size: 2.375rem;

        -webkit-transform: translateY(-100%) rotateY(0);
                transform: translateY(-100%) rotateY(0);
    }

    #rimmel-index .new-products h2 p:after,
    #rimmel-index .brand-concept h2 p:after
    {
        background-color: #000;
    }

    #rimmel-index .new-products h2 p span,
    #rimmel-index .brand-concept h2 p span
    {
        color: #000;
    }

    #rimmel-index .main-visual .main-visual-slider .slick-dots
    {
        top: 5px;
        right: 15px;
        bottom: auto;
    }

    #rimmel-index .main-visual .main-visual-slider .slick-dots li
    {
        margin: 7px 0;
    }

    #rimmel-index .whats-new
    {
        overflow: visible;

        max-width: 100%;
        margin-top: 70px;
        margin-bottom: 60px;
        padding-top: 0;
        padding-bottom: 0;
    }

    #rimmel-index .whats-new:before
    {
        position: absolute;
        top: 200px;
        right: 0;

        display: block;

        width: 100%;
        height: calc(100% - 140px);

        content: '';

        background-color: #a6192e;
    }

    #rimmel-index .whats-new .container
    {
        position: static;

        width: 100%;
        max-width: 100%;

        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
    }

    #rimmel-index .whats-new .container .latest
    {
        position: relative;

        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;

        width: calc(100% - 25px);
    }

    #rimmel-index .whats-new .container .latest figure
    {
        width: 100%;
        width: 94.285%;
        max-width: 100%;
        margin-top: 30px;
        margin-left: 0;
    }

    #rimmel-index .whats-new .container .latest .text-area
    {
        z-index: 2;

        width: 85.714%;
        max-width: 85.714%;
        margin-top: -40px;
        margin-right: 0;
        margin-left: auto;
        padding: 16px 28px;

        background-color: #fff;
        /*1225追加*/
    }

    #rimmel-index .whats-new .container .latest .text-area:before
    {
        left: 0;

        background-color: #a6192e;
    }

    #rimmel-index .whats-new .container .latest .text-area:after
    {
        content: normal;
    }

    #rimmel-index .whats-new .container .latest .text-area .category
    {
        font-size: 11px;
        font-size: .6875rem;
        line-height: 18px;

        min-width: 68px;
        height: 18px;

        color: #fff;
        background-color: #a6192e;
    }

    #rimmel-index .whats-new .container .latest .text-area time
    {
        font-size: 13px;
        font-size: .8125rem;

        top: 20px;
        right: 28px;

        color: #000;
    }

    #rimmel-index .whats-new .container .latest .text-area h3
    {
        font-size: 15px;
        font-size: .9375rem;

        margin: 10px 0;

        color: #000;
    }

    #rimmel-index .whats-new .container .latest .text-area .text
    {
        font-size: 9px;
        font-size: .5625rem;
        line-height: 1.4;

        color: #8c8c8c;
    }

    #rimmel-index .whats-new .container .latest .text-area .view-btn
    {
        font-size: 0;

        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;

        display: none;

        width: 50px;
        height: 100%;
        margin: auto;

        background-color: transparent;
        background-image: url('../images/index/whats_new_arrow.svg');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 11px 17px;
    }

    #rimmel-index .whats-new .container .latest > a
    {
        position: absolute;
        z-index: 3;
        top: 0;
        left: 0;

        display: block;

        width: 100%;
        height: 100%;
        /*0109 追加*/
    }

    #rimmel-index .whats-new .container .other
    {
        margin: 40px auto 50px;
    }

    #rimmel-index .whats-new .container .other > div
    {
        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;
    }

    #rimmel-index .whats-new .container .other article
    {
        width: calc(100% - 25px);
        max-width: calc(100% - 25px);
        margin-bottom: 40px;
    }

    #rimmel-index .whats-new .container .other article:nth-of-type(2)
    {
        margin-right: 0;
        margin-left: 0;
    }

    #rimmel-index .whats-new .container .other article a figure
    {
        width: 94.285%;
        max-width: 94.285%;
    }

    #rimmel-index .whats-new .container .other article a .text-area
    {
        width: 85.714%;
        margin-top: -40px;
        margin-right: 0;
        margin-left: auto;
        padding: 16px 28px;

        background-color: #fff;
    }

    #rimmel-index .whats-new .container .other article a .text-area time
    {
        font-size: 13px;
        font-size: .8125rem;

        top: 20px;
        right: 28px;
    }

    #rimmel-index .whats-new .container .other article a .text-area h3
    {
        line-height: 1.4;

        margin-top: 10px;
    }

    #rimmel-index .whats-new .container .other article a .text-area .text
    {
        font-size: 9px;
        font-size: .5625rem;
        line-height: 1.4;
    }

    #rimmel-index .whats-new .container .other article a .text-area .more
    {
        font-size: 0;

        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;

        width: 50px;
        height: 100%;
        margin: auto;

        background-image: url('../images/index/whats_new_arrow.svg');
        background-repeat: no-repeat;
        background-position: center center;
        background-size: 11px 17px;
    }

    #rimmel-index .whats-new .container .other article a .text-area .more span
    {
        display: none;
    }

    #rimmel-index .whats-new .container .other article a .text-area .more:after
    {
        content: unset;
    }

    #rimmel-index .whats-new .container > .view-btn
    {
        position: relative;
    }

    #rimmel-index .new-products
    {
        padding-bottom: 60px;

        background-image: unset;
    }

    #rimmel-index .new-products .new-products-inner
    {
        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;

        max-width: 100%;
    }

    #rimmel-index .new-products .container
    {
        width: 100%;
        max-width: 100%;
        margin-left: 0;

        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
    }

    #rimmel-index .new-products .container .new-products-slider
    {
        max-width: 100%;
        margin-top: 57px;
        margin-left: 0;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide
    {
        margin-left: 0;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li
    {
        min-height: auto;
        padding: 0;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li .icon
    {
        font-size: 12px;
        font-size: .75rem;
        line-height: 55px;

        width: 55px;
        height: 55px;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li .text
    {
        min-height: auto;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li .text h3
    {
        font-size: 27px;
        font-size: 1.6875rem;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn
    {
        font-size: 19px;
        font-size: 1.1875rem;
        line-height: 62px;

        max-width: 255px;
        height: 62px;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn:before,
    #rimmel-index .new-products .container .new-products-slider .slick-slide li .view-btn:after
    {
        top: 27px;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-slide:not(.slick-current) .text,
    #rimmel-index .new-products .container .new-products-slider .slick-slide:not(.slick-current) .view-btn
    {
        opacity: 0;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-dots
    {
        bottom: -35px;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-dots li button
    {
        border: 1px #646464 solid;
    }

    #rimmel-index .new-products .container .new-products-slider .slick-dots li.slick-active button
    {
        background-color: #646464;
    }

    #rimmel-index .product-list
    {
                flex-direction: column;

        height: auto;

        border-top: none;

        -webkit-flex-direction: column;
           -moz-flex-direction: column;
             -o-flex-direction: column;
            -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    #rimmel-index .product-list.active
    {
        height: initial;
    }

    #rimmel-index .product-list.active .title:after
    {
        z-index: 3;
    }

    #rimmel-index .product-list.active .product
    {
        display: block;
    }

    #rimmel-index .product-list .title
    {
        width: 100%;
        height: 200px;

        border-bottom: 2px #fff solid;

        -ms-flex-order: 0;
        -webkit-order: 0;
        -webkit-box-ordinal-group: 1;
                order: 0;
    }

    #rimmel-index .product-list .title:before,
    #rimmel-index .product-list .title:after
    {
        position: absolute;
        right: 0;
        bottom: 13px;
        left: 0;

        width: 30px;
        height: 30px;
        margin: auto;

        content: '';

        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    #rimmel-index .product-list .title:before
    {
        z-index: 2;

        background-image: url('../images/product_list_close.svg');
    }

    #rimmel-index .product-list .title:after
    {
        z-index: 1;

        background-image: url('../images/product_list_open.svg');
    }

    #rimmel-index .product-list .title h3
    {
        font-size: 27px;
        font-size: 1.6875rem;
        line-height: 47px;

        width: 140px;
        height: 53px;

        border: 3px #fff solid;
    }

    #rimmel-index .product-list .product
    {
        display: none;

        width: 100%;
        padding-bottom: 38px;

        -ms-flex-order: 1;
        -webkit-order: 1;
        -webkit-box-ordinal-group: 2;
                order: 1;
    }

    #rimmel-index .product-list .product .first-slide
    {
        width: 100%;
    }

    #rimmel-index .product-list .product ul
    {
        display: -webkit-block;
        display:    -moz-block;
        display:      -o-block;
        display:     -ms-block;
        display:         block;

        max-width: 100%;

        -webkit-justify-content: normal;
           -moz-justify-content: normal;
             -o-justify-content: normal;
            -ms-justify-content: normal;
        -webkit-box-pack: normal;
        -ms-flex-pack: normal;
                justify-content: normal;
        -webkit-flex-wrap: nowrap;
             -o-flex-wrap: nowrap;
            -ms-flex-wrap: nowrap;
                flex-wrap: nowrap;
    }

    #rimmel-index .product-list .product ul li
    {
        max-width: initial;
    }

    #rimmel-index .product-list .product ul li:nth-child(n+3)
    {
        margin-top: 0;
    }

    #rimmel-index .product-list .product ul li a figure
    {
        width: 100%;
        max-width: 100%;
        margin-bottom: 15px;
    }

    #rimmel-index .product-list .product .view-btn
    {
        max-width: 325px;
    }

    #rimmel-index .product-list .product .eyes-slider,
    #rimmel-index .product-list .product .lips-slider,
    #rimmel-index .product-list .product .face-slider,
    #rimmel-index .product-list .product .nails-slider
    {
        display: -webkit-flex;
        display:    -moz-flex;
        display:      -o-flex;
        display:     -ms-flex;
        display: -webkit-box;
        display: -ms-flexbox;
        display:         flex;
    }

    #rimmel-index .nails
    {
        border-bottom: none;
    }

    #rimmel-index .nails .product ul
    {
        margin-top: 20px;
    }

    #rimmel-index .nails .product ul li
    {
        display: inline-block;

        width: 40.533%;
        margin: 0 10px;
    }

    #rimmel-index .nails .product .view-btn
    {
        margin-top: 47px;
    }

    #rimmel-index .parallax
    {
        display: none;
    }

    #rimmel-index .brand-concept
    {
        margin-top: 75px;
        padding-top: 0;
    }

    #rimmel-index .brand-concept:before
    {
        top: 185px;

        display: block;

        width: 100%;
        height: 100%;
        height: calc(100% - 125px);

        background-image: url('../images/index/bg_concept_sp.jpg');
    }

    #rimmel-index .brand-concept .brand-concept-inner
    {
        display: block;

        max-width: 100%;
    }

    #rimmel-index .brand-concept .container
    {
                flex-direction: column;

        margin-top: 50px;
        margin-left: 0;

        -webkit-flex-direction: column;
           -moz-flex-direction: column;
             -o-flex-direction: column;
            -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    #rimmel-index .brand-concept .container .message
    {
        width: 100%;
        margin-top: 40px;
        margin-left: 0;

        -ms-flex-order: 1;
        -webkit-order: 1;
        -webkit-box-ordinal-group: 2;
                order: 1;
    }

    #rimmel-index .brand-concept .container .message p
    {
        max-width: 65.333%;
        margin-bottom: 40px;
    }

    #rimmel-index .brand-concept .container .message p img
    {
        max-width: 380px;
    }

    #rimmel-index .brand-concept .container .message .view-btn
    {
        line-height: 62px;

        width: 100%;
        height: 62px;
        margin: 30px auto 0;
    }

    #rimmel-index .brand-concept .container .message .view-btn:before,
    #rimmel-index .brand-concept .container .message .view-btn:after
    {
        top: 25px;
        right: 22px;

        width: 22px;
        height: 10px;
    }

    #rimmel-index .brand-concept .container figure
    {
        position: static;

        width: calc(100% - 50px);
        max-width: calc(100% - 50px);
        margin: 0 auto;

        -ms-flex-order: 0;
        -webkit-order: 0;
        -webkit-box-ordinal-group: 1;
                order: 0;
    }

    #rimmel-index .sns
    {
        overflow: visible;

        max-width: 100%;
        margin-top: 120px;
        margin-bottom: 90px;
        padding-top: 40px;
    }

    #rimmel-index .sns .container
    {
        overflow: hidden;

        width: 100%;
        max-width: 100%;
        margin-top: 50px;

        -webkit-transform: none;
            -ms-transform: none;
                transform: none;
    }

    #rimmel-index .sns .container:after
    {
        position: absolute;
        z-index: -1;
        top: 0;
        left: 25px;

        width: calc(100% - 50px);
        height: calc(100% + 30px);

        content: '';

        background-color: #ebebeb;
    }

    #rimmel-index .sns .container .instagram
    {
        overflow: hidden;

        max-width: 100%;
    }

    #rimmel-index .sns .container .instagram .img ul
    {
        position: static;

        height: auto;
    }

    #rimmel-index .sns .container .instagram .img ul:after
    {
        width: 100%;

        content: normal;
    }

    #rimmel-index .sns .container .instagram .img ul li
    {
        position: static;
    }

    #rimmel-index .sns .container .instagram .img ul li:first-child
    {
        width: auto;
    }

    #rimmel-index .sns .container .instagram .img ul li:nth-child(2)
    {
        bottom: auto;
        left: auto;

        width: auto;
    }

    #rimmel-index .sns .container .instagram .img ul li:nth-child(3),
    #rimmel-index .sns .container .instagram .img ul li:nth-child(5)
    {
        width: auto;
    }

    #rimmel-index .sns .container .instagram .img ul li:nth-child(3)
    {
        top: auto;
        left: auto;
    }

    #rimmel-index .sns .container .instagram .img ul li:nth-child(4)
    {
        top: auto;
        right: auto;

        width: auto;
    }

    #rimmel-index .sns .container .instagram .img ul li:nth-child(5)
    {
        right: auto;
        bottom: auto;
    }

    #rimmel-index .sns .container .instagram .text
    {
        position: static;

        margin-top: 40px;
        margin-left: 0;
    }

    #rimmel-index .sns .container .instagram .text p
    {
        font-size: 20px;
        font-size: 1.25rem;

        margin-bottom: 20px;

        text-align: center;
    }

    #rimmel-index .sns .container .instagram .text a
    {
        width: 80%;
        max-width: 285px;
        margin: 0 auto;
    }

    #rimmel-index .sns .container .sns-icon
    {
        margin-top: 30px;
    }

    #rimmel-index .sns .container .sns-icon li
    {
        width: 28px;
        margin: 0 23px;
    }

    #rimmel-index .banner
    {
        margin-bottom: 60px;
    }

    #rimmel-index .banner div:nth-of-type(n+2)
    {
        margin-top: 20px;
    }

    #rimmel-index .banner a
    {
        width: calc(100% - 50px);
        max-width: 100%;
    }

    #rimmel-newslist
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-newslist nav
    {
        width: 185px;
        margin: 30px auto;
    }

    #rimmel-newslist nav > a
    {
        font-size: 15px;
        font-size: .9375rem;

        padding-left: 10px;
    }

    #rimmel-newslist nav ul
    {
        padding: 18px 15px;
    }

    #rimmel-newslist nav ul li a
    {
        font-size: 15px;
        font-size: .9375rem;
    }

    #rimmel-newslist .list-contents .container
    {
        display: block;

        width: calc(100% - 50px);
        margin: 0 auto;
    }

    #rimmel-newslist .list-contents .container article
    {
        width: 100%;
        max-width: 100%;
        margin-bottom: 40px;
    }

    #rimmel-newslist .list-contents .container article:nth-of-type(3n-1)
    {
        margin-right: 0;
        margin-left: 0;
    }

    #rimmel-newslist .list-contents .container article a figure
    {
        max-width: 100%;
        max-height: auto;
    }

    #rimmel-newslist .list-contents .container article a .text-area
    {
        margin-top: 20px;
        margin-left: 0;

        background-color: #fff;
    }

    #rimmel-newslist .list-contents .container article a .text-area time
    {
        font-size: 13px;
        font-size: .8125rem;

        top: 0;
        right: 0;
    }

    #rimmel-newslist .list-contents .container article a .text-area h3
    {
        line-height: 1.4;

        margin-top: 10px;
    }

    #rimmel-newslist .list-contents .container article a .text-area .text
    {
        font-size: 9px;
        font-size: .5625rem;
        line-height: 1.4;
    }

    #rimmel-newslist .list-contents .pager a
    {
        font-size: 16px;
        font-size: 1rem;
        line-height: 30px;

        width: 30px;
        height: 30px;
        margin-right: 6px;
        margin-left: 6px;
    }

    #rimmel-newslist .list-contents .pager a img
    {
        width: 5px;
    }

    #rimmel-newslist .list-contents .pager .prev
    {
        margin-right: 15px;
    }

    #rimmel-newslist .list-contents .pager .next
    {
        margin-left: 15px;
    }

    #rimmel-newsdetail
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-newsdetail .detail-contents
    {
        max-width: 100%;
        margin-bottom: 80px;
    }

    #rimmel-newsdetail .detail-contents .article-area
    {
        width: calc(100% - 86px);
    }

    #rimmel-newsdetail .detail-contents .article-area .title-area
    {
        margin-top: 30px;
    }

    #rimmel-newsdetail .detail-contents .article-area .title-area .category
    {
        font-size: 13px;
        font-size: .8125rem;
        line-height: 21px;

        min-width: 74px;
        height: 21px;
    }

    #rimmel-newsdetail .detail-contents .article-area .title-area time
    {
        font-size: 13px;
        font-size: .8125rem;
    }

    #rimmel-newsdetail .detail-contents .article-area .title-area h3
    {
        font-size: 19px;
        font-size: 1.1875rem;
        line-height: 1.4;

        margin: 25px 0 10px;
    }

    #rimmel-newsdetail .detail-contents .article-area .text-area
    {
        margin: 15px 0;
    }

    #rimmel-newsdetail .detail-contents .article-area .text-area p
    {
        font-size: 13px;
        font-size: .8125rem;
        line-height: 2;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area
    {
        margin-top: 40px;
        margin-bottom: 70px;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul
    {
        display: block;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li
    {
        width: 100%;
        max-width: 100%;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li:nth-child(n+2)
    {
        margin-top: 60px;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li .icon
    {
        font-size: 12px;
        font-size: .75rem;
        line-height: 55px;

        width: 55px;
        height: 55px;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li figure img
    {
        max-width: 400px;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li .text
    {
        min-height: auto;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn
    {
        font-size: 19px;
        font-size: 1.1875rem;
        line-height: 65px;

        max-width: 260px;
        height: 65px;
    }

    #rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn:before,
    #rimmel-newsdetail .detail-contents .article-area .item-area ul li .view-btn:after
    {
        top: 27px;
    }

    #rimmel-newsdetail .detail-contents .article-area .img-area
    {
        margin: 35px auto;
    }

    #rimmel-newsdetail .detail-contents .article-area .img-area.two-column
    {
        display: block;
    }

    #rimmel-newsdetail .detail-contents .article-area .img-area.two-column figure
    {
        max-width: 100%;
    }

    #rimmel-newsdetail .detail-contents .article-area .img-area.two-column figure:nth-of-type(n+2)
    {
        margin-top: 20px;
    }

    #rimmel-newsdetail .related-news .container article
    {
        width: 100%;
        max-width: 100%;
    }

    #rimmel-newsdetail .related-news .container article:nth-of-type(2)
    {
        margin-right: 0;
        margin-left: 0;
    }

    #rimmel-newsdetail .related-news .container article:nth-of-type(4)
    {
        margin-left: 0;
    }

    #rimmel-newsdetail .related-news .container article a figure
    {
        max-width: 100%;
    }

    #rimmel-newsdetail .related-news .container article a .text-area
    {
        margin-top: 15px;
    }

    #rimmel-newsdetail .related-news .container article a .text-area .category
    {
        font-size: 11px;
        font-size: .6875rem;

        min-width: 60px;
    }

    #rimmel-newsdetail .related-news .container article a .text-area time
    {
        font-size: 13px;
        font-size: .8125rem;

        top: 0;
    }

    #rimmel-newsdetail .related-news .container article a .text-area h3
    {
        line-height: 1.4;

        margin-top: 10px;
    }

    #rimmel-newsdetail .related-news .container article a .text-area .text
    {
        font-size: 9px;
        font-size: .5625rem;
        line-height: 1.4;
    }

    #rimmel-newsdetail .related-news .container .slick-slide
    {
        margin-right: 12px;
        margin-left: 12px;
    }

    #rimmel-personal-check
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-personal-check .start
    {
        width: calc(100% - 36px);
        margin: 20px auto 0;
    }

    #rimmel-personal-check .start figure
    {
        max-width: 100%;
        /*1219追加 start*/

        border: 4px #a6192e solid;
        /*1219追加 end*/
    }

    #rimmel-personal-check .start .view-btn
    {
        font-size: 22px;
        font-size: 1.375rem;
        line-height: 63px;

        width: 282px;
        height: 70px;
        margin-top: -35px;
    }

    #rimmel-personal-check .start .view-btn:before,
    #rimmel-personal-check .start .view-btn:after
    {
        top: 24px;
        right: 18px;

        width: 22px;
        height: 10px;
    }

    #rimmel-personal-check .check-contents
    {
        width: calc(100% - 40px);
        max-width: calc(100% - 40px);
        height: auto;
        margin-top: 20px;
        padding: 45px 27px 80px;
    }

    #rimmel-personal-check .check-contents .container
    {
        padding-bottom: 0;
    }

    #rimmel-personal-check .check-contents .container h3
    {
        font-size: 10px;
        font-size: .625rem;
    }

    #rimmel-personal-check .check-contents .container .check-block
    {
        margin-top: 30px;
    }

    #rimmel-personal-check .check-contents .container .check-block h2
    {
        font-size: 15px;
        font-size: .9375rem;

        margin-bottom: 30px;
    }

    #rimmel-personal-check .check-contents .container .check-block ul li
    {
        display: block;

        max-width: 100%;
        height: auto;
        margin-right: 0;
        margin-left: 0;
        padding: 18px 30px;

        border: 5px transparent solid;
    }

    #rimmel-personal-check .check-contents .container .check-block ul li:nth-child(n+2)
    {
        margin-top: 10px;
    }

    #rimmel-personal-check .check-contents .container .check-block ul li figure
    {
        font-size: 0;

        width: 100%;
    }

    #rimmel-personal-check .check-contents .container .check-block ul li figure img
    {
        display: inline-block;

        width: 37.5%;
        height: auto;

        vertical-align: middle;
    }

    #rimmel-personal-check .check-contents .container .check-block ul li figure figcaption
    {
        display: inline-block;

        width: calc(62% - 20px);
        margin-top: 0;
        margin-left: 20px;

        text-align: left;
        vertical-align: middle;
    }

    #rimmel-personal-check .check-contents .container .check-block > p
    {
        line-height: 1.6;

        min-height: auto;

        text-align: left;
    }

    #rimmel-personal-check .check-contents .container .check-block .prev-link,
    #rimmel-personal-check .check-contents .container .check-block .top-link
    {
        bottom: -50px;
    }

    #rimmel-personal-check .check-contents .container .check-block .prev-link a,
    #rimmel-personal-check .check-contents .container .check-block .top-link a
    {
        font-size: 12px;
        font-size: .75rem;

        padding-left: 30px;
    }

    #rimmel-personal-check .check-contents .container .check-block .prev-link a:after,
    #rimmel-personal-check .check-contents .container .check-block .top-link a:after
    {
        width: 18px;
        height: 18px;
    }

    #rimmel-personal-check .check-contents .container .timeline
    {
        margin-top: 40px;
    }

    #rimmel-personal-check .check-contents .container .timeline li
    {
        width: 33px;
    }

    #rimmel-personal-check .check-contents .container .timeline li span
    {
        width: 6px;
        height: 6px;
    }

    #rimmel-personal-check .check-contents .container .timeline li p
    {
        font-size: 10px;
        font-size: .625rem;
    }

    #rimmel-personal-check .check-contents .container .timeline li:after
    {
        left: calc(50% + 3px);

        width: calc(100% - 3px);
    }

    #rimmel-personal-check-result
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-personal-check-result .result-contents
    {
        width: calc(100% - 40px);
        max-width: calc(100% - 40px);
        margin: 40px auto 0;

        border: 2px #a6192e solid;
    }

    #rimmel-personal-check-result .result-contents h2
    {
        width: 210px;
        height: 35px;
        margin-top: -19px;
        padding-top: 8px;

        border: 2px #a6192e solid;
    }

    #rimmel-personal-check-result .result-contents h2 img
    {
        width: 65px;
    }

    #rimmel-personal-check-result .result-contents .container
    {
        padding: 30px 3.9% 50px;
    }

    #rimmel-personal-check-result .result-contents .container .type
    {
        max-width: 100%;
        padding-bottom: 35px;

        text-align: center;

        border-bottom: 1px #a6192e solid;
    }

    #rimmel-personal-check-result .result-contents .container .type figure
    {
        display: block;

        width: 68.7%;
        margin-right: auto;
        margin-left: auto;
    }

    #rimmel-personal-check-result .result-contents .container .type div
    {
        margin-top: 30px;
    }

    #rimmel-personal-check-result .result-contents .container .type div h3
    {
        font-size: 34px;
        font-size: 2.125rem;
    }

    #rimmel-personal-check-result .result-contents .container .type div p
    {
        font-size: 13px;
        font-size: .8125rem;

        margin: 20px 0 10px;
    }

    #rimmel-personal-check-result .result-contents .container .type div h4
    {
        font-size: 18px;
        font-size: 1.125rem;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item
    {
        margin-top: 35px;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item h3
    {
        width: 215px;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item > p
    {
        font-size: 13px;
        font-size: .8125rem;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul
    {
        display: block;

        max-width: 85.8%;
        margin-top: 25px;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li
    {
        width: 100%;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li:nth-child(n+2)
    {
        margin-top: 40px;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li:nth-child(2n)
    {
        margin-left: 0;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li div
    {
        min-height: auto;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn
    {
        font-size: 15px;
        font-size: .9375rem;
        line-height: 57px;

        max-width: 240px;
        height: 57px;
        margin-top: 20px;
    }

    #rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn:before,
    #rimmel-personal-check-result .result-contents .container .recommend-item ul li .view-btn:after
    {
        top: 23px;
    }

    #rimmel-personal-check-result .back-link
    {
        margin-top: 60px;
    }

    #rimmel-privacy-policy
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-privacy-policy .privacy-contents
    {
        width: 88%;
        max-width: 88%;
    }

    #rimmel-privacy-policy .privacy-contents nav
    {
        margin: 15px 0 45px;
    }

    #rimmel-privacy-policy .privacy-contents nav ul li
    {
        display: block;

        height: 100px;
        padding: 35px 0;
    }

    #rimmel-privacy-policy .privacy-contents nav ul li a
    {
        margin-top: 0;
    }

    #rimmel-privacy-policy .privacy-contents nav ul li:after
    {
        bottom: 26px;
    }

    #rimmel-privacy-policy .privacy-contents nav ul li:nth-child(2)
    {
        margin: 0;
        padding: 35px 0;

        border-top: 1px #8c8c8c solid;
        border-right: none;
        border-bottom: 1px #8c8c8c solid;
        border-left: none;
    }

    #rimmel-privacy-policy .privacy-contents .txt-block
    {
        margin-bottom: 50px;
    }

    #rimmel-privacy-policy .privacy-contents .txt-block h3
    {
        font-size: 14px;
        font-size: .875rem;

        margin-bottom: 20px;
    }

    #rimmel-privacy-policy .privacy-contents .txt-block h4
    {
        font-size: 12px;
        font-size: .75rem;

        margin-top: 30px;
    }

    #rimmel-product-list
    {
        margin-top: 87px;
    }

    #rimmel-product-list .key-visual
    {
        height: 200px;
    }

    #rimmel-product-list .key-visual h3
    {
        font-size: 27px;
        font-size: 1.6875rem;
        line-height: 47px;

        width: 140px;
        height: 53px;

        border: 3px #fff solid;
    }

    #rimmel-product-list.product-list-eyes .key-visual figure
    {
        background-image: url('../images/product/kv_eyes_sp.jpg');
    }

    #rimmel-product-list.product-list-lips .key-visual figure
    {
        background-image: url('../images/product/kv_lips_sp.jpg');
    }

    #rimmel-product-list.product-list-face .key-visual figure
    {
        background-image: url('../images/product/kv_face_sp.jpg');
    }

    #rimmel-product-list.product-list-nails .key-visual figure
    {
        background-image: url('../images/product/kv_nails_sp.jpg');
    }

    #rimmel-product-list nav
    {
        width: calc(100% - 36px);
        max-width: calc(100% - 36px);
        margin: 30px auto;
    }

    #rimmel-product-list nav ul li p
    {
        font-size: 15px;
        font-size: .9375rem;
    }

    #rimmel-product-list nav ul li p span
    {
        font-size: 8px;
        font-size: .5rem;
    }

    #rimmel-product-list nav ul li
    {
        width: 32%;
        max-width: 32%;
        height: 57px;
    }

    #rimmel-product-list nav ul li:nth-child(3n-1)
    {
        margin-right: 1.7%;
        margin-left: 1.7%;
    }

    #rimmel-product-list nav ul li:nth-child(n+4)
    {
        margin-top: 6px;
    }

    #rimmel-product-list .list-block .list-contents
    {
        max-width: 100%;
    }

    #rimmel-product-list .list-block .list-contents .page-title
    {
        font-size: 32px;
        font-size: 2rem;

        margin-bottom: 30px;
    }

    #rimmel-product-list .list-block .list-contents .page-title span
    {
        font-size: 11px;
        font-size: .6875rem;
    }

    #rimmel-product-list .list-block .list-contents ul
    {
        width: calc(100% - 30px);
        margin: 0 auto;
    }

    #rimmel-product-list .list-block .list-contents ul li
    {
        width: 48%;
        max-width: 48%;
    }

    #rimmel-product-list .list-block .list-contents ul li:nth-child(2n-1)
    {
        margin-right: 4%;
    }

    #rimmel-product-list .list-block .list-contents ul li:nth-child(n+3)
    {
        margin-top: 35px;
    }

    #rimmel-product-list .list-block .list-contents ul li a .text h3
    {
        font-size: 11px;
        font-size: .6875rem;
    }

    #rimmel-product-list .list-block .list-contents ul li a .text .color
    {
        line-height: 13px;

        height: 15px;
    }

    #rimmel-product-list .banner
    {
        width: calc(100% - 50px);
        margin-bottom: 60px;
    }

    #rimmel-product-list .category-link .product-list
    {
        width: 100%;
        height: auto;

        border-top: none;
    }

    #rimmel-product-list .category-link .product-list.active
    {
        height: initial;
    }

    #rimmel-product-list .category-link .product-list.active .title:after
    {
        z-index: 3;
    }

    #rimmel-product-list .category-link .product-list.active .product
    {
        display: block;
    }

    #rimmel-product-list .category-link .product-list .title
    {
        position: relative;

        width: 100%;
        height: 200px;

        border-bottom: 2px #fff solid;
        background-repeat: no-repeat;
        background-position: center center;
        background-size: cover;
    }

    #rimmel-product-list .category-link .product-list .title:before,
    #rimmel-product-list .category-link .product-list .title:after
    {
        position: absolute;
        right: 0;
        bottom: 13px;
        left: 0;

        width: 30px;
        height: 30px;
        margin: auto;

        content: '';

        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    #rimmel-product-list .category-link .product-list .title:before
    {
        z-index: 2;

        background-image: url('../images/product_list_close.svg');
    }

    #rimmel-product-list .category-link .product-list .title:after
    {
        z-index: 1;

        background-image: url('../images/product_list_open.svg');
    }

    #rimmel-product-list .category-link .product-list .title h3
    {
        font-size: 27px;
        font-size: 1.6875rem;
        font-weight: bold;
        line-height: 47px;

        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;

        width: 140px;
        height: 53px;
        margin: auto;

        letter-spacing: .05em;

        color: #fff;
        border: 3px #fff solid;
        background-color: rgba(0, 0, 0, .1);
    }

    #rimmel-product-list .category-link .product-list .product
    {
        display: none;

        width: 100%;
        padding-bottom: 38px;
    }

    #rimmel-product-list .category-link .product-list .product ul
    {
        max-width: 100%;
        margin: 70px auto 0;
    }

    #rimmel-product-list .category-link .product-list .product ul .slick-slide
    {
        margin-right: 20px;
        margin-left: 20px;
    }

    #rimmel-product-list .category-link .product-list .product ul li
    {
        max-width: initial;
    }

    #rimmel-product-list .category-link .product-list .product ul li a
    {
        display: block;
    }

    #rimmel-product-list .category-link .product-list .product ul li a figure
    {
        width: 100%;
        margin-bottom: 15px;
    }

    #rimmel-product-list .category-link .product-list .product ul li a figure img
    {
        width: 100%;
        height: auto;
    }

    #rimmel-product-list .category-link .product-list .product ul li a h4
    {
        font-size: 22px;
        font-size: 1.375rem;
        font-weight: bold;
        line-height: 1.1;

        margin-top: 15px;
        margin-bottom: 10px;

        letter-spacing: .04em;
    }

    #rimmel-product-list .category-link .product-list .product ul li a p
    {
        font-size: 12px;
        font-size: .75rem;
        font-weight: 700;
        line-height: 1.2;

        letter-spacing: .2em;

        color: #a6192e;
    }

    #rimmel-product-list .category-link .product-list .product .slick-arrow
    {
        z-index: 10;
        top: 60%;

        width: 20px;
        height: 20px;

        background-repeat: no-repeat;
        background-position: center center;
        background-size: auto 14px;
    }

    #rimmel-product-list .category-link .product-list .product .slick-arrow:before
    {
        content: unset;
    }

    #rimmel-product-list .category-link .product-list .product .slick-prev
    {
        left: 10%;

        background-image: url('../images/index/product_arrow_prev.svg');
    }

    #rimmel-product-list .category-link .product-list .product .slick-next
    {
        right: 10%;

        background-image: url('../images/index/product_arrow_next.svg');
    }

    #rimmel-product-list .category-link .product-list .product .view-btn
    {
        line-height: 80px;

        max-width: 325px;
        height: 80px;
        margin: 47px auto 0;
    }

    #rimmel-product-list .category-link .product-list .product .view-btn:before
    {
        top: 33px;
        right: 29px;

        width: 32px;
        height: 12px;
    }

    #rimmel-product-list .category-link .eyes .title
    {
        background-image: url('../images/index/bg_eyes.jpg');
    }

    #rimmel-product-list .category-link .lips .title
    {
        background-image: url('../images/index/bg_lips.jpg');
    }

    #rimmel-product-list .category-link .face .title
    {
        background-image: url('../images/index/bg_face.jpg');
    }

    #rimmel-product-list .category-link .nails .title
    {
        background-image: url('../images/index/bg_nails.jpg');
    }

    #rimmel-product-list .category-link .nails .product ul
    {
        margin-top: 20px;
    }

    #rimmel-product-list .category-link .nails .product ul li
    {
        display: inline-block;

        width: 40.533%;
        margin: 0 10px;
    }

    #rimmel-product-list .category-link .nails .product .view-btn
    {
        margin-top: 47px;
    }

    #rimmel-product-detail
    {
        margin-top: 87px;
    }

    #rimmel-product-detail h3
    {
        font-size: 31px;
        font-size: 1.9375rem;
    }

    #rimmel-product-detail h3 span
    {
        margin-top: 10px;
    }

    #rimmel-product-detail .product-info
    {
        display: block;

        width: calc(100% - 65px);
        max-width: calc(100% - 65px);
        margin: 20px auto 50px;
    }

    #rimmel-product-detail .product-info .img-area
    {
        width: 100%;
    }

    #rimmel-product-detail .product-info .img-area figure img
    {
        max-width: 500px;
    }

    #rimmel-product-detail .product-info .img-area figure span
    {
        font-size: 12px;
        font-size: .75rem;
        line-height: 55px;

        width: 55px;
        height: 55px;
    }

    #rimmel-product-detail .product-info .text-area
    {
        width: 100%;
    }

    #rimmel-product-detail .product-info .text-area .category
    {
        font-size: 15px;
        font-size: .9375rem;
    }

    #rimmel-product-detail .product-info .text-area h2
    {
        font-size: 20px;
        font-size: 1.25rem;

        margin: 15px 0 15px;
    }

    #rimmel-product-detail .product-info .text-area h2 span
    {
        font-size: 11px;
        font-size: .6875rem;
    }

    #rimmel-product-detail .product-info .text-area .price span
    {
        font-size: 11px;
        font-size: .6875rem;
    }

    #rimmel-product-detail .product-info .text-area .price .caution
    {
        font-size: 8px;
        font-size: .5rem;

        margin-left: 0;
    }

    #rimmel-product-detail .product-info .text-area .caption
    {
        margin-top: 15px;
    }

    #rimmel-product-detail .product-info .text-area .color
    {
        margin-bottom: 0;
    }

    #rimmel-product-detail .product-info .text-area .color ul li
    {
        width: 54px;
        margin-right: 9px;
        margin-bottom: 19px;
    }

    #rimmel-product-detail .product-info .text-area .color ul li p
    {
        margin-top: 6px;
    }

    #rimmel-product-detail .product-info .text-area .color ul li:nth-child(5n)
    {
        margin-right: 0;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre
    {
        margin-bottom: 0;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-block ul li:nth-child(n+6)
    {
        display: none;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more
    {
        width: 121px;
        margin: 25px auto 0;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre .color-genre-more p
    {
        font-size: 16px;
        font-size: 1rem;
    }

    #rimmel-product-detail .product-info .text-area .color .color-genre.open .color-genre-block ul li:nth-child(n+6)
    {
        display: inline-block;
    }

    #rimmel-product-detail .product-info .text-area > a
    {
        display: none;
    }

    #rimmel-product-detail .point
    {
        padding: 40px 16px 50px;
    }

    #rimmel-product-detail .point ul li dl dt
    {
        padding: 30px 24px 50px;
    }

    #rimmel-product-detail .point ul li dl dt:before,
    #rimmel-product-detail .point ul li dl dt:after
    {
        top: auto;
        right: 0;
        bottom: 9px;
        left: 0;

        width: 22px;
        height: 22px;
    }

    #rimmel-product-detail .point ul li dl dt h4
    {
        font-size: 21px;
        font-size: 1.3125rem;

        margin-bottom: 10px;
    }

    #rimmel-product-detail .point ul li dl dt p
    {
        font-size: 14px;
        font-size: .875rem;
    }

    #rimmel-product-detail .point ul li dl dd
    {
        padding: 10px 24px 25px;
    }

    #rimmel-product-detail .point ul li dl dd p
    {
        font-size: 12px;
        font-size: .75rem;
    }

    #rimmel-product-detail .point ul li dl dd figure
    {
        width: 100%;
    }

    #rimmel-product-detail .point ul li dl dd img
    {
        max-width: 100%;
    }

    #rimmel-product-detail .how-to-use
    {
        width: calc(100% - 65px);
        margin: 0 auto;
        padding: 50px 0;
    }

    #rimmel-product-detail .how-to-use article figure
    {
        width: 100%;
        max-width: 100%;
    }

    #rimmel-product-detail .how-to-use article p
    {
        font-size: 13px;
        font-size: .8125rem;

        width: 100%;

        text-align: left;
        /*1224追加*/
    }

    #rimmel-product-detail .how-to-use article ul
    {
        width: 100%;
    }

    #rimmel-product-detail .how-to-use article ul li dl
    {
        text-align: left;
    }

    #rimmel-product-detail .how-to-use article ul li dl dt
    {
        text-align: left;
    }

    #rimmel-product-detail .how-to-use article ul li dl dd
    {
        font-size: 13px;
        font-size: .8125rem;
    }

    #rimmel-product-detail .how-to-use article aside
    {
        font-size: 9px;
        font-size: .5625rem;

        width: 100%;
        /*1219修正*/

        text-align: left;
    }

    #rimmel-product-detail .colour-map
    {
        padding: 45px 16px 50px;
    }

    #rimmel-product-detail .colour-map figure
    {
        max-width: 100%;
        margin-top: 25px;
    }

    #rimmel-product-detail .colour-map .banner
    {
        width: 100%;
        margin-top: 40px;
    }

    #rimmel-product-detail .make-up-style
    {
        padding-top: 50px;
    }

    #rimmel-product-detail .make-up-style .container
    {
        width: calc(100% - 50px);
        max-width: calc(100% - 50px);
    }

    #rimmel-product-detail .make-up-style .container ul li
    {
        padding-bottom: 0;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents
    {
                flex-direction: column;

        -webkit-flex-direction: column;
           -moz-flex-direction: column;
             -o-flex-direction: column;
            -ms-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area
    {
        display: block;

        width: 100%;
        margin-top: 0;
        padding: 0;

        -ms-flex-order: 1;
        -webkit-order: 1;
        -webkit-box-ordinal-group: 2;
                order: 1;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area:after
    {
        top: -45px;
        right: 0;

        width: 100%;
        height: calc(100% + 45px);
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner
    {
        width: 100%;
        margin: 35px 0 50px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner h4
    {
        font-size: 24px;
        font-size: 1.5rem;

        margin: 0 20px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner h4 span
    {
        font-size: 24px;
        font-size: 1.5rem;

        margin-right: 5px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner h4:before
    {
        top: -15px;
        left: -20px;

        width: 17px;
        height: 30px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner > p
    {
        font-size: 10px;
        font-size: .625rem;
        /*1219追加*/

        margin-right: 20px;
        margin-left: 20px;
        /*1219追加*/
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item
    {
        position: relative;

        width: 77%;
        margin: 20px auto;
        padding: 20px 20px 62px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item figure
    {
        width: 78px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div
    {
        width: calc(100% - 93px);
        margin-left: 15px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div p
    {
        font-size: 11px;
        font-size: .6875rem;

        min-height: 64px;
        margin-bottom: 30px;
        /*1219修正*/
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a
    {
        line-height: 40px;

        position: absolute;
        left: 20px;

        width: calc(100% - 40px);
        height: 42px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:before,
    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .main-item div a:after
    {
        top: 11px;
        left: 31px;

        width: 19px;
        height: 19px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item
    {
        padding-right: 20px;
        padding-left: 20px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt span
    {
        display: inline-block;

        margin-left: 12px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt span:before,
    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt span:after
    {
        position: absolute;

        content: '';

        background-color: #000;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt span:before
    {
        top: 5px;
        right: -14px;

        width: 11px;
        height: 1px;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt span:after
    {
        top: 0;
        right: -9px;

        width: 1px;
        height: 11px;

        background-image: none;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dt span.active:after
    {
        display: none;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dd
    {
        display: none;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dd p
    {
        font-size: 11px;
        font-size: .6875rem;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .text-area .inner .sub-item dd p a
    {
        font-size: 11px;
        font-size: .6875rem;
    }

    #rimmel-product-detail .make-up-style .container ul li .style-contents .img-area
    {
        width: 77%;
        margin: 0 auto;

        -ms-flex-order: 0;
        -webkit-order: 0;
        -webkit-box-ordinal-group: 1;
                order: 0;
    }

    #rimmel-product-detail .make-up-style .container .slick-dots
    {
        top: 210px;
        right: 0;
        bottom: auto;
    }

    #rimmel-product-detail .make-up-style .container .slick-dots li
    {
        width: 20px;
        height: 20px;
    }

    #rimmel-product-detail .make-up-style .container .slick-dots li span
    {
        font-size: 11px;
        font-size: .6875rem;
        line-height: 18px;
    }

    #rimmel-product-detail .make-up-style .container .slick-dots li:nth-child(n+2)
    {
        margin-top: 4px;
    }

    #rimmel-product-detail .make-up-style .container .slick-arrow
    {
        top: 122px;

        width: 19px;
        height: 56px;
    }

    #rimmel-product-detail .make-up-style .container .slick-prev
    {
        left: 0;
    }

    #rimmel-product-detail .make-up-style .container .slick-next
    {
        right: 0;
    }

    #rimmel-product-detail .link-lp-page
    {
        width: calc(100% - 32px);
        margin-top: 60px;
    }

    #rimmel-product-detail .link-area
    {
        display: block;

        max-width: 100%;
        margin: 60px auto;
    }

    #rimmel-shoplist
    {
        margin-top: 87px;
        margin-bottom: 70px;
    }

    #rimmel-shoplist nav
    {
        display: none;
    }

    #rimmel-shoplist .list-contents
    {
        width: calc(100% - 50px);
        margin: 40px auto 50px;
    }

    #rimmel-shoplist .list-contents .list-block
    {
        max-width: 100%;
        margin-bottom: 5px;
    }

    #rimmel-shoplist .list-contents .list-block:nth-child(n+2)
    {
        padding-top: 0;
    }

    #rimmel-shoplist .list-contents .list-block h3
    {
        font-size: 15px;
        font-size: .9375rem;

        padding: 0 18px;

        text-align: left;
    }

    #rimmel-shoplist .list-contents .list-block h3:before,
    #rimmel-shoplist .list-contents .list-block h3:after
    {
        position: absolute;
        top: 0;
        right: 18px;
        bottom: 0;

        width: 20px;
        height: 20px;
        margin: auto;

        content: '';

        background-repeat: no-repeat;
        background-position: center center;
        background-size: 100% auto;
    }

    #rimmel-shoplist .list-contents .list-block h3:before
    {
        z-index: 2;

        background-image: url('../images/product_list_close.svg');
    }

    #rimmel-shoplist .list-contents .list-block h3:after
    {
        z-index: 1;

        background-image: url('../images/product_list_open.svg');
    }

    #rimmel-shoplist .list-contents .list-block h3.active:after
    {
        z-index: 3;
    }

    #rimmel-shoplist .list-contents .list-block ul
    {
        display: none;

        margin: 0;

        background-color: #ebebeb;
    }

    #rimmel-shoplist .list-contents .list-block ul li
    {
        display: block;

        height: 55px;
        margin: 0;
        padding-right: 20px;
        padding-left: 35px;

        border-bottom: 1px #b4b4b4 solid;
    }

    #rimmel-shoplist .list-contents .list-block ul li:last-child
    {
        border-bottom: none;
    }

    #rimmel-shoplist .list-contents .list-block ul li a
    {
        font-size: 13px;
        font-size: .8125rem;
        line-height: 55px;
    }

    #rimmel-shoplist .list-contents .list-block ul li a:after
    {
        top: 21px;
    }

    #rimmel-shoplist .online-shop
    {
        width: calc(100% - 50px);
        padding-top: 0;

        border-top: none;
    }

    #rimmel-shoplist .online-shop h3
    {
        font-size: 31px;
        font-size: 1.9375rem;
    }

    #rimmel-shoplist .online-shop p
    {
        font-size: 13px;
        font-size: .8125rem;
        line-height: 1.5;
    }

    #rimmel-shoplist .online-shop ul
    {
        display: block;

        margin-top: 30px;
    }

    #rimmel-shoplist .online-shop ul li
    {
        width: 100%;
        max-width: 100%;
        height: auto;
        margin-bottom: 16px;
    }

    #rimmel-shoplist .online-shop ul li:nth-child(n+2)
    {
        margin-left: 0;
    }

    #rimmel-shoplist .online-shop ul li a
    {
        height: 60px;
    }

    #rimmel-shoplist .online-shop ul li a img
    {
        width: 50%;
    }

    #rimmel-shoplist .detail-contents
    {
        margin-top: 25px;
    }

    #rimmel-shoplist .detail-contents h3
    {
        line-height: 60px;

        height: 60px;
    }

    #rimmel-shoplist .detail-contents ul li
    {
        display: block;

        padding: 25px 0;
    }

    #rimmel-shoplist .detail-contents ul li h4
    {
        width: 100%;
        max-width: 100%;
    }

    #rimmel-shoplist .detail-contents ul li address
    {
        width: 100%;
        max-width: 100%;
        margin-top: 15px;
        margin-bottom: 15px;
    }

    #rimmel-shoplist .detail-contents ul li > p
    {
        width: 100%;
        max-width: 100%;
    }

    #rimmel-shoplist .detail-contents ul li > p a
    {
        line-height: 21px;

        width: 70px;
        height: 23px;
        margin-right: auto;
        margin-left: 0;
    }
}

@media only screen and (max-width: 768px) and (max-width: 768px)
{
    #rimmel-index .product-list .product ul .slick-slide
    {
        margin-right: 20px;
        margin-left: 20px;
    }

    #rimmel-shoplist .detail-contents ul
    {
        width: calc(100% - 50px);
        max-width: calc(100% - 50px);
        margin-top: 0;
    }
}

@media only screen and (max-width: 320px)
{
    #rimmel-product-detail .product-info .text-area .color ul li:nth-child(5n)
    {
        margin-right: 10px;
    }

    #rimmel-product-detail .sp-buy-area div p
    {
        font-size: 20px;
        font-size: 1.25rem;
    }

    #rimmel-product-detail .sp-buy-area div a
    {
        width: 145px;
    }

    #rimmel-product-detail .sp-buy-area div a:after
    {
        left: 17px;
    }
}

@media only screen and (min-width: 769px) and (max-width: 768px)
{
    #rimmel-product-list nav ul li:nth-child(4n-1)
    {
        margin-right: 0;
    }

    #rimmel-product-list nav ul li:nth-child(4n-2)
    {
        margin-right: 0;
        margin-left: 0;
    }
}
