@charset 'UTF-8';

/*! normalize.css v5.0.0 | MIT License | github.com/necolas/normalize.css */

/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Correct the line height in all browsers.
 * 3. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 */

/* Document
   ========================================================================== */

html {
  font-family: sans-serif;
  /* 1 */
  line-height: 1.15;
  /* 2 */
  -ms-text-size-adjust: 100%;
  /* 3 */
  -webkit-text-size-adjust: 100%;
  /* 3 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers (opinionated).
 */

body {
  margin: 0;
}

/**
 * Add the correct display in IE 9-.
 */

article,
aside,
footer,
header,
nav,
section {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: .67em 0;
}

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

/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */

figcaption,
figure,
main {
  /* 1 */
  display: block;
}

/**
 * Add the correct margin in IE 8.
 */

figure {
  margin: 1em 40px;
}

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  /* 1 */
  overflow: visible;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

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

/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */

a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */

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

/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  border-bottom: none;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */

b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font style in Android 4.3-.
 */

dfn {
  font-style: italic;
}

/**
 * Add the correct background and color in IE 9-.
 */

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

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -.25em;
}

sup {
  top: -.5em;
}

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

/**
 * Add the correct display in IE 9-.
 */

audio,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */

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

/**
 * Remove the border on images inside links in IE 10-.
 */

img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */

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

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

/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */

button,
html [type='button'],
[type='reset'],
[type='submit'] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type='button']::-moz-focus-inner,
[type='reset']::-moz-focus-inner,
[type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type='button']:-moz-focusring,
[type='reset']:-moz-focusring,
[type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */

fieldset {
  margin: 0 2px;
  padding: .35em .625em .75em;
  border: 1px solid #c0c0c0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  /* 2 */
  display: table;
  box-sizing: border-box;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
  color: inherit;
  /* 1 */
}

/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */

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

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

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

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type='search'] {
  /* 1 */
  outline-offset: -2px;
  -webkit-appearance: textfield;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on macOS.
 */

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  /* 1 */
  font: inherit;
  -webkit-appearance: button;
  /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */

details,
menu {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Scripting
   ========================================================================== */

/**
 * Add the correct display in IE 9-.
 */

canvas {
  display: inline-block;
}

/**
 * Add the correct display in IE.
 */

template {
  display: none;
}

/* Hidden
   ========================================================================== */

/**
 * Add the correct display in IE 10-.
 */

[hidden] {
  display: none;
}

html {
  font-family: 'Hiragino Kaku Gothic ProN', YuGothic, Meiryo, sans-serif;
  font-size: 93.8%;
  line-height: 2;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
dl,
ol {
  margin-top: 0;
}

ul,
ol {
  padding-left: 0;
}

li {
  list-style-type: none;
}

a {
  color: #c01443;
}

a:hover {
  text-decoration: none;
}

img {
  vertical-align: middle;
}

dd {
  margin-left: 0;
}

address {
  font-style: normal;
}

.menu--fixed .nav {
  position: fixed;
  z-index: 10;
  top: 0;
  width: 100%;
}

.menu--fixed main {
  padding-top: 60px;
}

.header {
  font-size: 0;
  position: relative;
  z-index: 1;
  padding: 28px 0 15px;
  background-color: #fff;
}

.header div {
  position: relative;
  width: 1000px;
  margin: 0 auto;
}

.header a {
  text-decoration: none;
}

.header div > a {
  display: inline-block;
  margin: 3px 26px 0 0;
  transition: opacity .2s ease-out;
}

.header div > a:hover {
  opacity: .8;
}

.header h1 {
  font-size: 15px;
  font-weight: normal;
  position: relative;
  top: 15px;
  display: inline-block;
}

.header p {
  line-height: 40px;
  position: absolute;
  top: 0;
  text-align: center;
}

.header p a {
  display: block;
}

.header__en {
  font-size: 13px;
  right: 200px;
}

.header__en a {
  width: 101px;
  transition: background-color .2s ease-out;
  color: #000;
}

.header__en a:before {
  display: inline-block;
  width: 6px;
  height: 10px;
  margin-right: 9px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -116px -63px;
}

.header__en a:hover {
  background-color: #9d1238;
}

.header__button {
  font-size: 14px;
  right: 0;
  background-color: #333;
}

.header__button a {
  width: 200px;
  transition: background-color .2s ease-out;
  color: #fff;
}

.header__button a:hover {
  background-color: #9d1238;
}

.nav {
  font-size: 0;
  position: relative;
  z-index: 10;
  transform: translate3d(0, 0, 0);
  text-align: center;
  background-color: #fff;
}

.nav a {
  display: block;
  text-decoration: none;
  color: #000;
}

.nav div {
  position: absolute;
  top: 43px;
  left: -4px;
  visibility: hidden;
  width: 174px;
  padding-top: 17px;
  transition: top .2s ease-out, opacity .2s ease-out, visibility .2s ease-out;
  opacity: 0;
}

.nav div.nav__box--active {
  top: 60px;
  visibility: visible;
  opacity: 1;
}

.nav div ul {
  font-size: 14px;
}

.nav div ul:first-of-type li:first-child:before {
  position: absolute;
  top: 10px;
  left: 50%;
  width: 13px;
  height: 13px;
  margin-left: -7px;
  content: '';
  transition: background-color .2s ease-out;
  transform: rotate(-45deg);
  border: 1px solid;
  border-color: #f3d1db #f3d1db transparent transparent;
  background-color: #fff;
}

.nav div ul:first-of-type li:first-child:hover:before {
  background-color: #f3d1db;
}

.nav div ul:last-of-type li:first-child {
  border-top: 0;
}

.nav div ul:last-of-type li:last-child {
  border-bottom: 1px solid #f3d1db;
}

.nav div li {
  line-height: 40px;
  border: 1px solid #f3d1db;
  border-bottom: 0;
}

.nav div a {
  transition: background-color .2s ease-out;
  background-color: #fff;
}

.nav div a:hover {
  background-color: #f3d1db;
}

.nav div li:first-child span {
  font-size: 11px;
  display: block;
  margin-top: 4px;
}

.nav div p {
  font-size: 12px;
  line-height: 27px;
  margin-bottom: 0;
  color: #fff;
  background-color: #333;
}

.nav div ul:last-of-type li:first-child {
  line-height: 1;
}

.nav div ul:last-of-type li:first-child a {
  padding: 16px 0 15px;
}

.nav__lists {
  width: 1000px;
  margin: 0 auto;
}

.nav__list {
  font-size: 16px;
  line-height: 36px;
  position: relative;
  display: inline-block;
  padding: 0 10px;
}

.nav__list:after {
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: 20px;
  margin-top: -10px;
  content: '';
  background-color: #ccc;
}

.nav__list:first-child:before {
  position: absolute;
  top: 50%;
  left: 0;
  width: 1px;
  height: 20px;
  margin-top: -10px;
  content: '';
  background-color: #ccc;
}

.nav__list > a {
  position: relative;
  padding: 12px 33px;
}

.nav__list > a:before {
  position: absolute;
  bottom: 4px;
  left: 50%;
  width: 0;
  height: 2px;
  content: '';
  transition: width .2s linear, left .2s linear;
  background-color: #9d1238;
}

.nav__list > a:hover:before {
  left: 0;
  width: 100%;
}

.nav__list--active a:before {
  left: 0;
  width: 100%;
}

main {
  padding-bottom: 78px;
}

.footer {
  font-size: 0;
}

.footer > div {
  padding: 87px 0 34px;
  text-align: center;
  background: #ddd url(../images/common/bg-footer.png) repeat-x;
}

.footer div div {
  display: inline-block;
  width: 450px;
  text-align: left;
}

.footer div p {
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 0;
}

.footer address {
  font-size: 12px;
}

.footer ul {
  font-size: 11px;
  display: inline-block;
  margin-bottom: 0;
  text-align: left;
  vertical-align: top;
}

.footer ul:first-of-type {
  width: 186px;
}

.footer ul:last-of-type {
  width: 248px;
}

.footer li {
  line-height: 21px;
}

.footer a {
  display: block;
  text-decoration: none;
  color: #000;
}

.footer a:before {
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 7px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -133px -49px;
}

.footer a:hover {
  text-decoration: underline;
}

.footer a:hover:before {
  opacity: .8;
}

.footer > p {
  font-size: 14px;
  line-height: 44px;
  width: 850px;
  margin: 0 auto;
  text-align: right;
}

.hero {
  position: relative;
  height: 320px;
  text-align: center;
  color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}

.hero div {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  transform: translate(-50%, -50%);
}

.hero h2 {
  font-family: -webkit-pictograph;
  font-size: 40px;
  line-height: 1;
  display: table;
  margin: 0 auto;
  padding: 4px 15px;
  letter-spacing: -.02em;
  background-color: rgba(0, 0, 0, .5);
}

.hero span:not(.mark) {
  font-size: 24px;
}

.hero p {
  font-size: 16px;
  font-weight: bold;
  display: table;
  margin: 10px auto 0;
  padding: 4px 10px;
  background-color: rgba(0, 0, 0, .5);
}

.directory-nav {
  font-size: 0;
  width: 1000px;
  margin: 0 auto 37px;
  padding-top: 14px;
}

.directory-nav li {
  font-size: 12px;
  line-height: 44px;
  display: inline-block;
}

.directory-nav li:not(:last-child):after {
  content: '　>　';
}

.directory-nav a {
  display: inline-block;
}

.lead {
  width: 1000px;
  margin: 0 auto 43px;
  text-align: center;
}

.heading {
  font-size: 34px;
  margin-bottom: 46px;
  text-align: center;
}

.content {
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 100px;
}

.content--small {
  width: 800px;
}

.section-heading {
  font-size: 28px;
  font-weight: bold;
  margin: 0 0 25px;
  text-align: center;
}

.sub-heading {
  font-size: 28px;
  line-height: 40px;
  position: relative;
  margin-bottom: 33px;
  padding-bottom: 14px;
  letter-spacing: -.02em;
}

.sub-heading:before,
.sub-heading:after {
  position: absolute;
  bottom: 0;
  height: 4px;
  content: '';
}

.sub-heading:before {
  width: 55px;
  background-color: #c01443;
}

.sub-heading:after {
  right: 0;
  width: 943px;
  background-color: #ddd;
}

.content--small .sub-heading:after {
  width: 743px;
}

p + .sub-heading {
  margin-top: 56px;
}

.small-heading {
  font-size: 20px;
  line-height: 1;
  position: relative;
  margin-bottom: 20px;
  padding: 0 0 14px 20px;
  letter-spacing: -.02em;
  border-bottom: 1px solid #ddd;
}

.small-heading:after {
  position: absolute;
  left: 0;
  content: '';
  border: 5px solid;
  border-color: #c01443 transparent transparent #c01443;
}

.contact-box {
  padding: 68px 0 79px;
  text-align: center;
  background-color: #f9e7ec;
}

.contact-box h6 {
  font-size: 28px;
  margin-bottom: 19px;
}

.contact-box p:first-of-type {
  font-size: 14px;
  margin-bottom: 28px;
}

.contact-box p:last-of-type {
  font-size: 16px;
  font-weight: bold;
  line-height: 60px;
  margin-bottom: 0;
}

.contact-box a {
  display: inline-block;
  width: 360px;
  transition: background-color .2s ease-out;
  text-decoration: none;
  color: #fff;
  background-color: #333;
}

.contact-box a:hover {
  background-color: #9d1238;
}

.small-contact-box {
  font-weight: bold;
  margin-bottom: 86px;
  padding: 21px 0 29px;
  text-align: center;
  letter-spacing: -.02em;
  background-color: #f9e7ec;
}

.small-contact-box p:first-of-type {
  font-size: 18px;
  margin-bottom: 6px;
}

.small-contact-box p:last-of-type {
  font-size: 16px;
  line-height: 60px;
  margin-bottom: 0;
}

.small-contact-box a {
  display: inline-block;
  width: 360px;
  transition: background-color .2s ease-out;
  text-decoration: none;
  color: #fff;
  background-color: #333;
}

.small-contact-box a:hover {
  background-color: #9d1238;
}

.column {
  margin-bottom: 70px;
}

.column:after {
  display: block;
  clear: both;
  content: '';
}

.column p {
  float: right;
  width: 720px;
}

.column div {
  position: relative;
  float: left;
}

.column img {
  max-width: 302px;
  height: auto;
}

.column a {
  transition: opacity .2s ease-out;
}

.column a:after {
  position: absolute;
  right: 10px;
  bottom: 10px;
  width: 9px;
  height: 8px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -130px -41px;
}

.column a:hover {
  opacity: .8;
}

.column.m-bottom0 {
  margin: 0;
}

.mark {
  font-size: .8em;
  position: relative;
  bottom: .3em;
}

.home__hero {
  padding: 59px 0 41px;
  background-color: #f3d1db;
}

.home__hero div:first-of-type {
  position: relative;
  z-index: 1;
  width: 1000px;
  height: 267px;
  margin: 0 auto;
  padding-top: 93px;
  background: url(../images/home/bg-hero.jpg) no-repeat right;
}

.home__hero h2 {
  margin-bottom: 11px;
}

.home__hero p:first-of-type {
  font-size: 16px;
  margin-bottom: 28px;
}

.home__hero p:last-of-type {
  font-size: 16px;
  line-height: 44px;
  width: 210px;
  text-align: center;
}

.home__hero p:last-of-type:before {
  display: block;
  width: 0;
  height: 1px;
  content: '';
  transition: width .2s ease-out;
  background-color: #c01443;
}

.home__hero p:last-of-type:hover:before {
  width: 100%;
}

.home__hero p:last-of-type:hover a:before,
.home__hero p:last-of-type:hover a:after {
  height: 100%;
}

.home__hero a {
  position: relative;
  display: block;
  text-decoration: none;
  border-bottom: 1px solid #c01443;
}

.home__hero a:before,
.home__hero a:after {
  position: absolute;
  bottom: 0;
  width: 1px;
  height: 14px;
  content: '';
  transition: height .2s ease-out;
  background-color: #c01443;
}

.home__hero a:before {
  left: 0;
}

.home__hero a:after {
  right: 0;
}

.home__search {
  position: relative;
  padding: 18px 0 62px;
  text-align: center;
  background-color: #f9e7ec;
}

.home__search:before {
  position: absolute;
  top: -124px;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  transform: skewY(-10deg);
  background: #f9e7ec;
}

.home__search > div {
  position: relative;
  width: 1000px;
  margin: 0 auto 40px;
}

.home__search > div:after {
  display: block;
  clear: both;
  content: '';
}

.home__search h4 {
  font-size: 16px;
  font-weight: bold;
  line-height: 20px;
  float: left;
  box-sizing: border-box;
  width: 130px;
  margin-bottom: 0;
  color: #fff;
  background-repeat: no-repeat;
}

.home__search h4:before {
  display: block;
  margin: 0 auto 18px;
  content: '';
}

.home__search div div {
  float: right;
  width: 840px;
}

.home__search a {
  position: relative;
  box-sizing: border-box;
  text-decoration: none;
}

.home__search > div:first-of-type h4 {
  height: 320px;
  padding-top: 106px;
  background-image: url(../images/home/bg-pickup.png);
}

.home__search > div:first-of-type h4:before {
  width: 66px;
  height: 53px;
  background-image: url(../images/common/sprite.png);
  background-position: 0 0;
}

.home__search > div:first-of-type a {
  float: left;
  width: 410px;
  height: 150px;
  padding-top: 19px;
  transition: color .2s ease-out;
  color: #000;
  border: 10px solid #f1cad5;
  background-color: #fff;
}

.home__search > div:first-of-type a:before {
  position: absolute;
  right: -10px;
  bottom: -10px;
  width: 40px;
  height: 40px;
  content: '';
  background: url(../images/home/ico-search.png) no-repeat;
}

.home__search > div:first-of-type a:first-of-type,
.home__search > div:first-of-type a:nth-of-type(2) {
  margin-bottom: 20px;
}

.home__search > div:first-of-type a:nth-of-type(odd) {
  margin-right: 20px;
}

.home__search > div:first-of-type a:hover {
  color: #c01443;
}

.home__search > div:first-of-type a * {
  position: relative;
  z-index: 1;
}

.home__search > div:first-of-type h5 {
  font-size: 22px;
  margin-bottom: -8px;
}

.home__search > div:first-of-type p:first-of-type {
  font-size: 12px;
  font-weight: bold;
  margin-bottom: 8px;
}

.home__search > div:first-of-type p:last-of-type {
  font-size: 13px;
}

.home__search > div:first-of-type span:not(.mark) {
  font-size: 14px;
}

.home__search .home__search--type h4 {
  height: 170px;
  padding-top: 32px;
  background-image: url(../images/home/bg-material.png);
}

.home__search .home__search--type h4:before {
  width: 50px;
  height: 50px;
  background-image: url(../images/common/sprite.png);
  background-position: 0 -53px;
}

.home__search .home__search--type a {
  float: left;
  width: 410px;
  height: 170px;
  padding-top: 49px;
  background-repeat: no-repeat;
}

.home__search .home__search--type a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 130px;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background: linear-gradient(to right, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.home__search .home__search--type a:first-of-type {
  margin-right: 20px;
  background-image: url(../images/home/bg-pigments.jpg);
}

.home__search .home__search--type a:last-of-type {
  background-image: url(../images/home/bg-additives.jpg);
}

.home__search .home__search--type a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.home__search .home__search--type h5 {
  font-size: 20px;
  line-height: 32px;
  position: relative;
  display: inline-block;
  padding: 0 10px;
  color: #fff;
  background-color: rgba(0, 0, 0, .5);
}

.home__search .home__search--type p {
  font-size: 12px;
  line-height: 40px;
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  color: #000;
  background-color: #fff;
}

.home__search .home__search--preparation h4 {
  height: 170px;
  padding-top: 35px;
  background-image: url(../images/home/bg-preparation.png);
}

.home__search .home__search--preparation h4:before {
  display: block;
  width: 50px;
  height: 60px;
  margin: 0 auto 18px;
  content: '';
  background: none;
}

.home__search .home__search--preparation a {
  float: right;
  width: 840px;
  height: 170px;
  padding-top: 49px;
  background: url(../images/home/bg-preparation.jpg) no-repeat;
}

.home__search .home__search--preparation a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 130px;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background: linear-gradient(to right, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.home__search .home__search--preparation a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.home__search .home__search--preparation h5 {
  font-size: 20px;
  line-height: 32px;
  position: relative;
  display: inline-block;
  padding: 0 10px;
  color: #fff;
  background-color: rgba(0, 0, 0, .5);
}

.home__search .home__search--preparation p {
  font-size: 13px;
  line-height: 40px;
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  color: #000;
  background-color: #fff;
}

.home__search .home__search--product h4 {
  height: 170px;
  padding-top: 35px;
  background-image: url(../images/home/bg-products.png);
}

.home__search .home__search--product h4:before {
  width: 50px;
  height: 50px;
  background-image: url(../images/common/sprite.png);
  background-position: -66px 0;
}

.home__search .home__search--product a {
  float: right;
  width: 840px;
  height: 170px;
  padding-top: 49px;
  background: url(../images/home/bg-products.jpg) no-repeat;
}

.home__search .home__search--product a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 130px;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background: linear-gradient(to right, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.home__search .home__search--product a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.home__search .home__search--product h5 {
  font-size: 20px;
  line-height: 32px;
  position: relative;
  display: inline-block;
  padding: 0 10px;
  color: #fff;
  background-color: rgba(0, 0, 0, .5);
}

.home__search .home__search--product p {
  font-size: 13px;
  line-height: 40px;
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  color: #000;
  background-color: #fff;
}

.home__search .home__search--use h4 {
  height: 170px;
  padding-top: 35px;
  background-image: url(../images/home/bg-use.png);
}

.home__search .home__search--use h4:before {
  width: 45px;
  height: 45px;
  background-image: url(../images/common/sprite.png);
  background-position: -50px -53px;
}

.home__search .home__search--use a {
  float: right;
  width: 840px;
  height: 170px;
  padding-top: 49px;
  background: url(../images/home/bg-use.jpg) no-repeat;
}

.home__search .home__search--use a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 130px;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background: linear-gradient(to right, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.home__search .home__search--use a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.home__search .home__search--use h5 {
  font-size: 20px;
  line-height: 32px;
  position: relative;
  display: inline-block;
  padding: 0 10px;
  color: #fff;
  background-color: rgba(0, 0, 0, .5);
}

.home__search .home__search--use p {
  font-size: 13px;
  line-height: 40px;
  position: absolute;
  bottom: 0;
  width: 100%;
  margin-bottom: 0;
  color: #000;
  background-color: #fff;
}

.home__service {
  padding: 58px 0 42px;
  text-align: center;
}

.home__service h3 {
  font-size: 28px;
  margin-bottom: 16px;
}

.home__service ul {
  font-size: 0;
  font-weight: bold;
  margin-bottom: 24px;
}

.home__service li {
  font-size: 20px;
  line-height: 34px;
  display: inline-block;
}

.home__service li:first-child a {
  background-image: url(../images/home/bg-service1.jpg);
}

.home__service li:nth-child(2) {
  margin: 0 20px;
}

.home__service li:nth-child(2) a {
  background-image: url(../images/home/bg-service2.jpg);
}

.home__service li:last-child a {
  background-image: url(../images/home/bg-service3.jpg);
}

.home__service a {
  position: relative;
  display: block;
  box-sizing: border-box;
  width: 320px;
  height: 120px;
  padding-top: 43px;
  text-decoration: none;
  color: #fff;
  background-repeat: no-repeat;
}

.home__service a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 100%;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background-image: linear-gradient(0deg, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.home__service a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.home__service span {
  position: relative;
  display: inline-block;
  padding: 0 10px;
  background-color: rgba(0, 0, 0, .5);
}

.home__service p {
  font-size: 13px;
  margin-bottom: 0;
}

.home__news {
  font-size: 14px;
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 80px;
}

.home__news h4 {
  font-size: 28px;
  margin-bottom: 13px;
  text-align: center;
}

.home__news ul {
  margin-bottom: 0;
}

.home__news li {
  line-height: 45px;
}

.home__news li:nth-child(odd) {
  background-color: #f5e9ed;
}

.home__news a {
  position: relative;
  display: block;
  padding-right: 48px;
  text-decoration: none;
}

.home__news a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 14px;
  margin-top: -7px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.home__news a:hover span {
  text-decoration: underline;
}

.home__news time {
  display: inline-block;
  width: 140px;
  margin-left: 20px;
  color: #000;
}

.home__aside {
  font-size: 0;
  padding-top: 80px;
  text-align: center;
}

.home__aside ul {
  margin-bottom: 0;
}

.home__aside li {
  font-size: 11px;
  line-height: 18px;
  display: inline-block;
  /* margin: 0 20px; */
  vertical-align: top;
}

.home__aside a {
  display: block;
  transition: opacity .2s ease-out;
}

.home__aside a:hover {
  opacity: .5;
}

.home__aside img {
  display: block;
  margin-bottom: 15px;
}

.home__bnr__list {
  display: grid;
  grid-template-columns: 280px 280px 280px;
  gap: 40px;
  justify-content: center;
}

.home__bnr__list li img {
  height: 100px;
  width: 100%;
  object-fit: contain;
  box-sizing: border-box;
}
.home__bnr__list li:nth-child(1) img {
  padding: 30px 0;
  background-color: #fff;
  border: 1.5px solid #f1f1f1;
}
.home__bnr__list li:nth-child(2) img {
  padding: 22px 0;
  background-color: #fff;
  border: 1.5px solid #f1f1f1;
}
.home__bnr__list li:nth-child(3) img {
  background-color: #42a3ce;
  padding: 3px 0;
}

.hero--about {
  background-image: url(../images/about/bg-hero.jpg);
}

.about-columns {
  padding-bottom: 60px;
}

.about-columns:after {
  display: block;
  clear: both;
  content: '';
}

.about-column {
  width: 485px;
  margin-bottom: 0;
}

.about-column:first-child {
  float: left;
}

.about-column:last-child {
  float: right;
}

.about-address dt,
.about-address dd {
  float: left;
}

.about-address dt {
  clear: both;
  width: 100px;
}

.about-anchor {
  font-size: 20px;
  font-weight: bold;
  line-height: 70px;
  padding-bottom: 54px;
}

.about-anchor:after {
  display: block;
  clear: both;
  content: '';
}

.about-anchor li {
  float: left;
  width: 320px;
  counter-increment: list;
}

.about-anchor li:not(:last-child) {
  margin-right: 20px;
}

.about-anchor a {
  position: relative;
  display: block;
  padding-left: 15px;
  transition: background-color .2s ease-out;
  text-decoration: none;
  color: #000;
  border: 5px solid #eee;
}

.about-anchor a:before {
  line-height: 30px;
  display: inline-block;
  width: 30px;
  margin-right: 15px;
  content: counter(list);
  text-align: center;
  color: #fff;
  background-color: #c01443;
}

.about-anchor a:after {
  position: absolute;
  top: 50%;
  right: 15px;
  width: 14px;
  height: 8px;
  margin-top: -4px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -116px -41px;
}

.about-anchor a:hover {
  background-color: #eee;
}

.about-heading {
  margin-top: -60px;
  padding-top: 60px;
}

.about-heading span {
  font-size: 20px;
  line-height: 30px;
  display: inline-block;
  width: 30px;
  margin-right: 15px;
  text-align: center;
  color: #fff;
  background-color: #c01443;
}

.about-item {
  padding-bottom: 40px;
}

.about-item a {
  position: relative;
  box-sizing: border-box;
  height: 180px;
  padding-top: 49px;
  background-repeat: no-repeat;
}

.about-item a:before,
.about-item a:after {
  position: absolute;
  content: '';
}

.about-item a:before {
  top: 0;
  left: 50%;
  width: 0;
  height: 130px;
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background: linear-gradient(to right, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.about-item a:after {
  right: 20px;
  bottom: 19px;
  width: 8px;
  height: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.about-item a:first-of-type {
  background-image: url(../images/about/bg1.jpg);
}

.about-item a:last-of-type {
  background-image: url(../images/about/bg2.jpg);
}

.about-item a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.about-item h5 {
  font-size: 20px;
  line-height: 32px;
  position: relative;
  left: 50%;
  display: inline-block;
  padding: 0 10px;
  transform: translateX(-50%);
  color: #fff;
  background-color: rgba(0, 0, 0, .5);
}

.about-item p {
  font-size: 13px;
  line-height: 48px;
  position: absolute;
  bottom: 0;
  box-sizing: border-box;
  width: 100%;
  margin-bottom: 0;
  padding-left: 19px;
  color: #000;
  border: 1px solid #ddd;
}

.about-material dt {
  font-weight: bold;
}

.about-material dd:not(:last-child) {
  margin-bottom: 10px;
}

.about-image {
  margin-bottom: 40px;
}

.about-abroad div {
  position: relative;
  height: 300px;
}

.about-abroad p:nth-of-type(2) {
  font-weight: bold;
  position: relative;
  padding-left: 25px;
}

.about-abroad p:nth-of-type(2):before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 16px;
  height: 15px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -116px -26px;
}

.about-abroad__button {
  font-size: 16px;
  line-height: 48px;
  position: absolute;
  bottom: 0;
}

.about-abroad a {
  position: relative;
  display: inline-block;
  width: 238px;
  transition: color .2s ease-out, background-color .2s ease-out;
  text-align: center;
  text-decoration: none;
  border: 1px solid #c01443;
}

.about-abroad a:after {
  position: absolute;
  right: 19px;
  content: '';
}

.about-abroad a:hover {
  color: #fff;
  background-color: #c01443;
}

.about-abroad div:first-of-type p:last-of-type {
  right: 0;
}

.about-abroad div:first-of-type p:last-of-type a:after {
  top: 17px;
  width: 8px;
  height: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.about-abroad div:first-of-type p:last-of-type a:hover:after {
  width: 8px;
  height: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: -116px -49px;
}

.about-abroad div:last-of-type p:last-of-type a:after {
  top: 19px;
  width: 9px;
  height: 8px;
  background-image: url(../images/common/sprite.png);
  background-position: -130px -41px;
}

.about-abroad div:last-of-type p:last-of-type a:hover:after {
  width: 9px;
  height: 8px;
  background-image: url(../images/common/sprite.png);
  background-position: -124px -49px;
}

.about-list {
  font-weight: bold;
  margin-bottom: 0;
  text-align: center;
}

.about-list li {
  font-size: 20px;
  line-height: 34px;
}

.about-list li:first-child a {
  background-image: url(../images/about/bg3.jpg);
}

.about-list li:last-child a {
  background-image: url(../images/about/bg4.jpg);
}

.about-list a {
  position: relative;
  display: block;
  box-sizing: border-box;
  height: 120px;
  padding-top: 43px;
  text-decoration: none;
  color: #fff;
  background-repeat: no-repeat;
}

.about-list a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 100%;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background-image: linear-gradient(0deg, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.about-list a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.about-list span {
  position: relative;
  display: inline-block;
  padding: 0 10px;
  background-color: rgba(0, 0, 0, .5);
}

.about-box {
  font-weight: bold;
  margin-bottom: 46px;
  padding: 21px 20px 27px;
  background-color: #f9e7ec;
}

.about-box p:first-of-type {
  font-size: 18px;
  margin-bottom: 16px;
  text-align: center;
  letter-spacing: -.02em;
}

.about-box ul {
  margin-bottom: 25px;
  padding: 10px 0 8px 30px;
  background-color: #fff;
}

.about-box ul:after {
  display: block;
  clear: both;
  content: '';
}

.about-box li {
  float: left;
  margin-bottom: 5px;
}

.about-box li:before {
  display: inline-block;
  width: 16px;
  height: 15px;
  margin-right: 14px;
  content: '';
  vertical-align: middle;
  background-image: url(../images/common/sprite.png);
  background-position: -116px -26px;
}

.about-box li:nth-child(odd) {
  width: 410px;
}

.about-box p:last-of-type {
  font-size: 16px;
  line-height: 60px;
  margin-bottom: 0;
  text-align: center;
  letter-spacing: -.02em;
}

.about-box a {
  display: inline-block;
  width: 360px;
  transition: background-color .2s ease-out;
  text-decoration: none;
  color: #fff;
  background-color: #333;
}

.about-box a:hover {
  background-color: #9d1238;
}

.about-box + h3 {
  font-size: 28px;
  margin-bottom: 16px;
  text-align: center;
}

.hero--pearl {
  background-image: url(../images/products/pearl/bg-hero.jpg);
}

.hero--lumina {
  background-image: url(../images/products/pearl/lumina/bg-hero.jpg);
}

.hero--lumina-royal {
  background-image: url(../images/products/pearl/lumina-royal/bg-hero.jpg);
}

.hero--firemist {
  background-image: url(../images/products/pearl/firemist/bg-hero.jpg);
}

.hero--paliocrom {
  background-image: url(../images/products/pearl/paliocrom/bg-hero.jpg);
}

.hero--glacier {
  background-image: url(../images/products/pearl/glacier/bg-hero.jpg);
}

.hero--metasheen {
  background-image: url(../images/products/pearl/metasheen/bg-hero.jpg);
}

.hero--unique-black {
  background-image: url(../images/products/pearl/unique-black/bg-hero.jpg);
}

.hero--magna-pearl {
  background-image: url(../images/products/pearl/magna-pearl/bg-hero.jpg);
}

.hero--mearlin {
  background-image: url(../images/products/pearl/mearlin/bg-hero.jpg);
}

.hero--black-diamond {
  background-image: url(../images/products/black-diamond/bg-hero.jpg);
}

.hero--silveeds {
  background-image: url(../images/products/silveeds/bg-hero.jpg);
}

.hero--polyad {
  background-image: url(../images/products/polyad/bg-hero.jpg);
}

.hero--pigments {
  background-image: url(../images/products/pigments/bg-hero.jpg);
}

.hero--additives {
  background-image: url(../images/products/additives/bg-hero.jpg);
}

.hero--xfast {
  background-image: url(../images/products/xfast/bg_hero.jpg);
}

.hero--dmrd {
  background-image: url(../images/products/dmrd/bg_hero.jpg);
}

.hero--tinuvin {
  background-image: url(../images/products/tinuvin/bg_hero.jpg);
}

.hero--coating {
  background-image: url(../images/products/coating/bg_hero.jpg);
}

.hero--products {
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  background-image: url(../images/products/bg_hero.png);
}

.pearl-text {
  font-size: 13px;
  position: relative;
  bottom: 30px;
  margin-bottom: 43px;
  text-align: center;
}

.pearl-item {
  font-weight: bold;
  width: 1000px;
  margin: 0 auto;
  padding-bottom: 60px;
}

.pearl-item:after {
  display: block;
  clear: both;
  content: '';
}

.pearl-item a {
  position: relative;
  margin-bottom: 40px;
  text-decoration: none;
  color: #000;
}

.pearl-item a:before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 150px;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background-image: linear-gradient(0deg, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

.pearl-item a:after {
  position: absolute;
  right: 20px;
  bottom: 35px;
  width: 8px;
  height: 14px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.pearl-item a:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

.pearl-item a:nth-of-type(odd) {
  float: left;
}

.pearl-item a:nth-of-type(even) {
  float: right;
}

.pearl-item div {
  height: 71px;
  padding: 12px 19px 0;
  border: 1px solid #ddd;
}

.pearl-item p {
  font-size: 14px;
  margin-bottom: -6px;
}

.pearl-item h3 {
  font-size: 20px;
  margin-bottom: 0;
}

.products-table {
  width: 100%;
  margin-bottom: 24px;
  border-collapse: collapse;
}

.products-table.-text-center {
  text-align: center;
}

.products-table.-text-center thead tr:last-of-type {
  text-align: center;
}

.products-table thead {
  font-size: 14px;
  background-color: #f9e7ec;
}

.products-table thead tr:last-of-type {
  text-align: left;
}

.products-table thead th,
.products-table thead td {
  white-space: nowrap;
}

.products-table th,
.products-table td {
  padding: 6px 20px;
  border: 1px solid #ddd;
}

.products-table tbody {
  font-size: 13px;
}

.products-table td:last-of-type {
  min-width: 80px;
}

.products-table ul {
  margin-bottom: 0;
}

.products-table li {
  display: inline-block;
}

.products-table + p {
  font-size: 13px;
  margin-bottom: 0;
}

.products-table + p + p {
  font-size: 13px;
  margin-bottom: 64px;
}

.use-tag {
  line-height: 16px;
  display: inline-block;
  width: 16px;
  margin: 0 3px;
  text-align: center;
  color: #fff;
}

.use-tag--plastic {
  background-color: #c01443;
}

.use-tag--ink {
  background-color: #5363c5;
}

.use-tag--coating {
  background-color: #c4a40c;
}

.use-tag--other {
  background-color: #0a9d2d;
}

.other-heading {
  font-size: 28px;
  margin-bottom: 17px;
  text-align: center;
}

.pearl-list {
  font-weight: bold;
  margin-bottom: 30px;
  padding: 13px 15px;
  letter-spacing: -.02em;
  border: 5px solid #eee;
}

.pearl-list:after {
  display: block;
  clear: both;
  content: '';
}

.pearl-list li {
  line-height: 44px;
  float: left;
}

.pearl-list li:not(:last-child) {
  margin-right: 20px;
}

.pearl-list a {
  display: block;
  transition: color .2s ease-out;
  text-decoration: none;
  color: #000;
}

.pearl-list a:after {
  display: inline-block;
  width: 8px;
  height: 14px;
  margin-left: 10px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.pearl-list a:hover,
.pearl-list a.pearl-list__button--active {
  color: #c01443;
}

.products-item {
  font-weight: bold;
}

.products-item:after {
  display: block;
  clear: both;
  content: '';
}

.products-item dt {
  font-size: 16px;
  line-height: 20px;
  float: left;
  box-sizing: border-box;
  width: 130px;
  text-align: center;
  color: #fff;
  background-repeat: no-repeat;
}

.products-item dt:before {
  display: block;
  margin: 0 auto;
  content: '';
}

.products-item dd {
  font-size: 18px;
  float: left;
  width: 370px;
  background-color: #eee;
}

.products-item li {
  margin: 0 20px;
}

.products-item li:not(:last-child) {
  border-bottom: 1px solid #ddd;
}

.products-item a {
  position: relative;
  display: block;
  margin: 0 -20px;
  padding: 0 20px;
  transition: color .2s ease-out;
  text-decoration: none;
  color: #000;
}

.products-item a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  width: 8px;
  height: 14px;
  margin-top: -7px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.products-item a:hover {
  color: #c01443;
}

.products-item a.products-list--active {
  color: #c01443;
}

.products-item a.products-list--active:after {
  display: none;
}

.products-item span:first-child:not(.mark) {
  font-size: 14px;
}

.products-item span:last-child:not(.mark) {
  font-size: 12px;
  display: block;
  margin-top: -8px;
}

.products-item dl:first-of-type dt {
  height: 340px;
  padding-top: 104px;
  background-image: url(../images/products/pearl/bg-pickup.png);
}

.products-item dl:first-of-type dt:before {
  width: 66px;
  height: 53px;
  margin-bottom: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: 0 0;
}

.products-item dl:first-of-type dd {
  height: 340px;
}

.products-item dl:first-of-type a {
  padding: 16px 20px;
}

.products-item dl:nth-of-type(2) dt {
  height: 170px;
  padding-top: 32px;
  background-image: url(../images/products/pearl/bg-material.png);
}

.products-item dl:nth-of-type(2) dt:before {
  width: 50px;
  height: 50px;
  margin-bottom: 19px;
  background-image: url(../images/common/sprite.png);
  background-position: 0 -53px;
}

.products-item dl:nth-of-type(2) dd {
  position: relative;
  height: 170px;
}

.products-item dl:nth-of-type(2) dd:after {
  position: absolute;
  bottom: -1px;
  left: 20px;
  width: 330px;
  height: 1px;
  content: '';
  background-color: #ddd;
}

.products-item dl:nth-of-type(2) li {
  line-height: 85px;
}

.products-item dl:last-of-type dt {
  height: 170px;
  padding-top: 35px;
  background-image: url(../images/products/pearl/bg-use.png);
}

.products-item dl:last-of-type dt:before {
  width: 45px;
  height: 45px;
  margin-bottom: 18px;
  background-image: url(../images/common/sprite.png);
  background-position: -50px -53px;
}

.products-item dl:last-of-type dd {
  height: 170px;
}

.products-item dl:last-of-type li {
  line-height: 170px;
}

.products-check {
  font-weight: bold;
  margin-bottom: 53px;
}

.products-check li {
  position: relative;
  padding-left: 25px;
}

.products-check li:before {
  position: absolute;
  top: 7px;
  left: 0;
  width: 16px;
  height: 15px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -116px -26px;
}

.products-image {
  margin-bottom: 54px;
}

.products-anchor {
  font-weight: bold;
  margin-bottom: 54px;
  padding: 13px 15px;
  letter-spacing: -.02em;
  border: 5px solid #eee;
}

.products-anchor:after {
  display: block;
  clear: both;
  content: '';
}

.products-anchor li {
  line-height: 44px;
  float: left;
}

.products-anchor li:not(:last-child) {
  margin-right: 20px;
}

.products-anchor a {
  display: block;
  transition: color .2s ease-out;
  text-decoration: none;
  color: #000;
}

.products-anchor a:after {
  display: inline-block;
  width: 14px;
  height: 8px;
  margin-left: 10px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -116px -41px;
}

.products-anchor a:hover {
  color: #c01443;
}

.products-heading {
  margin-top: -60px;
  padding-top: 60px;
}

.products-column {
  display: table;
  width: 100%;
  padding-bottom: 24px;
}

.products-column div {
  display: table-cell;
  vertical-align: top;
}

.products-column div:first-of-type {
  padding-right: 30px;
}

.products-column ul {
  font-size: 16px;
  margin-bottom: 30px;
  text-align: center;
  letter-spacing: -.02em;
}

.products-column ul:after {
  display: block;
  clear: both;
  content: '';
}

.products-column li {
  width: 360px;
}

.products-column li:nth-child(1) {
  font-weight: bold;
  line-height: 40px;
  float: right;
}

.products-column li:nth-child(1) a {
  transition: background-color .2s ease-out;
  color: #fff;
  background-color: #333;
}

.products-column li:nth-child(1) a:after {
  width: 8px;
  height: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: -116px -49px;
}

.products-column li:nth-child(1) a:hover {
  background-color: #9d1238;
}

.products-column li:nth-child(2) {
  line-height: 38px;
  float: left;
}

.products-column li:nth-child(2) a {
  transition: color .2s ease-out, background-color .2s ease-out;
  color: #c01443;
  border: 1px solid #c01443;
}

.products-column li:nth-child(2) a:after {
  width: 8px;
  height: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.products-column li:nth-child(2) a:hover {
  color: #fff;
  background-color: #c01443;
}

.products-column li:nth-child(2) a:hover:after {
  width: 8px;
  height: 14px;
  background-image: url(../images/common/sprite.png);
  background-position: -116px -49px;
}

.products-column ul a {
  position: relative;
  display: block;
  text-decoration: none;
}

.products-column ul a:after {
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -7px;
  content: '';
}

.products-column + div {
  margin-bottom: 0;
}

.products-link a {
  text-decoration: none;
  color: #000;
}

.products-link a:before {
  display: inline-block;
  width: 6px;
  height: 10px;
  margin-right: 9px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -128px -63px;
}

.products-link a:after {
  position: relative;
  bottom: 2px;
  display: inline-block;
  width: 9px;
  height: 8px;
  margin-left: 10px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -130px -41px;
}

.products-link a:hover {
  color: #c01443;
}

.modal {
  position: fixed;
  z-index: 100;
  top: 50%;
  left: 50%;
  visibility: hidden;
  overflow-y: auto;
  box-sizing: border-box;
  width: 1060px;
  height: 80%;
  max-height: 720px;
  padding: 63px 30px 0;
  transition: opacity .4s ease-out, visibility .4s ease-out;
  transform: translate(-50%, -50%);
  opacity: 0;
  background-color: #fff;
}

.modal thead {
  display: block;
  width: 100%;
}

.modal thead th {
  box-sizing: border-box;
}

.modal thead tr:first-of-type th:first-of-type {
  min-width: 450px;
}

.modal thead tr:last-of-type th {
  min-width: 137.5px;
}

.modal tbody {
  display: block;
  overflow-y: auto;
  height: 240px;
}

.modal tbody td {
  box-sizing: border-box;
  word-break: break-all;
}

.modal tbody td:first-of-type {
  min-width: 450px;
}

.modal tbody td:not(:first-of-type) {
  min-width: 137.5px;
}

.modal > a {
  font-size: 0;
  position: absolute;
  top: 21px;
  right: 21px;
  width: 26px;
  height: 26px;
  background-image: url(../images/common/sprite.png);
  background-position: -116px 0;
}

.products-table-list {
  font-weight: bold;
  margin-bottom: 30px;
  padding: 13px 20px;
  letter-spacing: -.02em;
  border: 5px solid #eee;
}

.products-table-list:after {
  display: block;
  clear: both;
  content: '';
}

.products-table-list li {
  line-height: 44px;
  float: left;
}

.products-table-list li:not(:last-child) {
  margin-right: 20px;
}

.products-table-list a {
  position: relative;
  display: block;
  text-decoration: none;
  color: #000;
}

.products-table-list a:before,
.products-table-list a:after {
  content: '';
  border-radius: 50%;
}

.products-table-list a:before {
  display: inline-block;
  box-sizing: border-box;
  width: 17px;
  height: 17px;
  margin-right: 10px;
  vertical-align: middle;
  border: 2px solid #ddd;
}

.products-table-list a:after {
  position: absolute;
  top: 20px;
  left: 5px;
  width: 7px;
  height: 7px;
  transition: transform .2s ease-out;
  transform: scale(0);
  background-color: #0157d8;
}

.products-table-list a:hover:after,
.products-table-list a.products-table-button--active:after {
  transform: scale(1);
}

.products-table-list span {
  display: inline-block;
  width: 12px;
  height: 12px;
  margin-left: 5px;
}

.color-tag--Red {
  background-color: red;
}

.color-tag--Violet {
  background-color: violet;
}

.color-tag--Brown {
  background-color: brown;
}

.color-tag--Orange {
  background-color: orange;
}

.color-tag--Yellow {
  background-color: yellow;
}

.color-tag--Blue {
  background-color: blue;
}

.color-tag--Green {
  background-color: green;
}

.color-tag--Black {
  background-color: black;
}

.color-tag--White {
  box-sizing: border-box;
  border: 1px solid #ddd;
  background-color: white;
}

.color-tag--Silver {
  background-color: silver;
}

.color-tag--Gold {
  background-color: gold;
}

.color-tag--Clear {
  box-sizing: border-box;
  border: 1px solid #ddd;
  background-color: #d1f7fd;
}

.products-table-text {
  position: relative;
  bottom: 10px;
}

.products-table--use thead tr:last-of-type th {
  min-width: 183.333333333333333px;
}

.products-table--use tbody td:not(:first-of-type) {
  min-width: 183.333333333333333px;
}

.products-table--use + p {
  margin-bottom: 64px;
}

.overlay {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  visibility: hidden;
  width: 100%;
  height: 100%;
  transition: opacity .4s ease-out, visibility .4s ease-out;
  opacity: 0;
  background-color: rgba(0, 0, 0, .5);
}

.modal--opened {
  visibility: visible;
  opacity: 1;
}

.modal--opened + div {
  visibility: visible;
  opacity: 1;
}

.product-section {
  margin-bottom: 56px;
}

.product-section-small {
  margin-bottom: 33px;
}

.logo-border {
  border: 1px solid #ddd;
}

.archive-list {
  width: 1000px;
  margin: 0 auto 45px;
}

.sub-heading.archive-list_heading {
  margin-bottom: 45px;
}

.card-group {
  overflow: hidden;
  margin-bottom: -40px;
}

.card-group .card:nth-of-type(odd) {
  float: left;
}

.card-group .card:nth-of-type(even) {
  float: right;
}

.card {
  position: relative;
  margin-bottom: 40px;
  text-decoration: none;
  color: #000;
}

a.card {
  display: block;
}

a.card:before {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 50%;
  width: 0;
  height: 150px;
  content: '';
  transition: width .2s ease-out, left .2s ease-out, opacity .2s ease-out;
  opacity: 0;
  background-image: linear-gradient(0deg, #afe7e6 0%, #dae6b4 26%, #bde6b4 56%, #dae6b4 79%, #e6cdb4 100%);
}

a.card:hover:before {
  left: 0;
  width: 100%;
  opacity: .7;
}

a.card.card-lg {
  max-width: 840px;
  margin: 0 auto;
}

a.card.card-lg:before {
  height: 130px;
}

.card_image {
  position: relative;
}

.card_image img {
  z-index: 0;
}

.card_title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  position: absolute;
  z-index: 1;
  top: 50%;
  left: 50%;
  display: inline-block;
  margin: 0;
  padding: 2px 9px;
  transform: translate(-50%, -50%);
  text-align: center;
  white-space: nowrap;
  color: #fff;
  background: rgba(0, 0, 0, .5);
}

.card_title-small {
  font-size: 14px;
}

.card_title-sub {
  font-size: 12px;
  line-height: 1;
  display: block;
  padding: 2px 0 6px;
}

.card_text {
  font-size: 16px;
  margin: 13px 0 0;
  text-align: center;
}

.card_text.card_text-small {
  font-size: 13px;
}

.card_link {
  font-size: 14px;
  position: relative;
  margin: 0;
  padding: 15px 20px;
  border-right: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
}

.card_link:after {
  position: absolute;
  top: 50%;
  right: 20px;
  display: block;
  width: 8px;
  width: 8px;
  height: 14px;
  height: 14px;
  content: '';
  transform: translate(0, -50%);
  background-image: url(../images/common/sprite.png);
  background-position: -132px -26px;
}

.tinuvin_dw-structure {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.tinuvin_dw-structure img {
  border: 1px solid #ddd;
}

.tinuvin_complement {
  font-size: 13px;
  margin-top: 10px;
  text-align: center;
}

.tinuvin_feature .youtube {
  margin-top: 20px;
}

/* .weatherability_img_area {
  width: 560px;
} */

.weatherability_img_area img {
  width: 560px;
  border: 1px solid #ddd;
}

.weatherability_complement {
  line-height: 1.3;
  text-align: left;
}

.products-noteList {
  font-size: 12px;
}

.hero--service {
  background-image: url(../images/service/bg-hero.jpg);
}

.service-heading {
  font-size: 28px;
  line-height: 180px;
  position: relative;
  margin: -60px 0 55px;
  padding-top: 60px;
  text-align: center;
  letter-spacing: -.02em;
  color: #fff;
}

.service-heading h3 {
  position: relative;
  width: 485px;
  background-color: #c01443;
}

.service-heading h3:after {
  position: absolute;
  right: -30px;
  width: 60px;
  height: 100%;
  content: '';
  transform: skewX(-15deg);
  background-color: #c01443;
}

.service-heading img {
  position: absolute;
  z-index: -1;
  top: 60px;
  right: 0;
}

.service-lists {
  font-size: 13px;
  margin: 33px 0 51px;
}

.service-lists:after {
  display: block;
  clear: both;
  content: '';
}

.service-lists li:first-child {
  position: relative;
  float: left;
}

.service-lists li:first-child:before,
.service-lists li:first-child:after {
  position: absolute;
  content: '';
}

.service-lists li:first-child:before {
  top: 168px;
  right: -59px;
  width: 40px;
  height: 6px;
  background-color: #c01443;
}

.service-lists li:first-child:after {
  top: 156px;
  right: -56px;
  width: 24px;
  height: 24px;
  transform: rotate(45deg);
  border-top: 6px solid #c01443;
  border-right: 6px solid #c01443;
}

.service-lists li:last-child {
  float: right;
}

.service-lists img {
  display: block;
  margin-bottom: 15px;
}

.column--service p {
  float: left;
  width: 640px;
}

.column--service div {
  float: right;
}

.service-link {
  margin-bottom: 23px;
}

.service-link a {
  text-decoration: none;
  color: #000;
}

.service-link a:before {
  display: inline-block;
  width: 6px;
  height: 10px;
  margin-right: 9px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -128px -63px;
}

.service-link a:after {
  position: relative;
  bottom: 2px;
  display: inline-block;
  width: 9px;
  height: 8px;
  margin-left: 10px;
  content: '';
  background-image: url(../images/common/sprite.png);
  background-position: -130px -41px;
}

.service-link a:hover {
  color: #c01443;
}

.service-images:after {
  display: block;
  clear: both;
  content: '';
}

.service-images li:first-child {
  float: left;
}

.service-images li:last-child {
  float: right;
}

.hero--use {
  background-image: url(../images/products/use/bg-hero.jpg);
}

.products-column--use div:first-of-type {
  width: 300px;
}

.products-column--use li {
  width: 325px;
}

.news time {
  font-size: 14px;
  display: block;
  margin: -60px 0 5px;
  padding-top: 60px;
}

.news p + time {
  margin-top: 41px;
}

.news img + time {
  margin-top: 63px;
}

.news .content > img {
  display: block;
  margin: 33px auto 0;
}

.news .newsSub-heading2 {
  font-size: 20px;
  margin-top: 33px;
  margin-bottom: 5px;
}

.news__box:after {
  display: block;
  clear: both;
  content: '';
}

.news__box div {
  float: left;
  width: 565px;
}

.news__box img {
  float: right;
  width: 200px;
}

.contact h4 {
  font-weight: normal;
  margin-bottom: 0;
}

.contact__box {
  padding-top: 39px;
  text-align: center;
}

.contact__box p:first-of-type {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 14px;
}

.contact__box p:nth-of-type(2) {
  font-weight: bold;
  margin-bottom: 23px;
}

.contact__box p:nth-of-type(2).contact__box__button--agree a:before {
  width: 16px;
  height: 15px;
  margin-right: 10px;
  border: 0;
  background-image: url(../images/common/sprite.png);
  background-position: -116px -26px;
}

.contact__box p:nth-of-type(2).contact__box__button--agree + ul:after {
  display: none;
}

.contact__box p:nth-of-type(2).contact__box__button--agree + ul a {
  background-color: #333;
}

.contact__box p:nth-of-type(2).contact__box__button--agree + ul a:hover {
  background-color: #9d1238;
}

.contact__box p a {
  display: inline-block;
  transition: color .2s ease-out;
  text-decoration: none;
  color: #000;
}

.contact__box p a:before {
  position: relative;
  top: 2px;
  display: inline-block;
  width: 8px;
  height: 8px;
  margin-right: 12px;
  content: '';
  border: 3px solid #ddd;
}

.contact__box p a:hover {
  color: #c01443;
}

.contact__box > ul {
  font-size: 0;
  font-weight: bold;
  position: relative;
  width: 590px;
  margin: 0 auto 23px;
  padding: 20px 0;
  background-color: #f9e7ec;
}

.contact__box > ul:after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
}

.contact__box > ul li {
  font-size: 16px;
  line-height: 60px;
  display: inline-block;
  margin: 0 10px;
}

.contact__box ul a {
  display: block;
  width: 265px;
  transition: background-color .2s ease-out;
  text-decoration: none;
  color: #fff;
  background-color: #aeaeae;
}

.contact__box p:nth-of-type(3) {
  margin-bottom: 23px;
}

.contact__box dl:not(:last-of-type) {
  display: inline-block;
  box-sizing: border-box;
  width: 285px;
  height: 190px;
  margin: 0 7px 23px;
  padding: 18px 23px 0;
  text-align: left;
  vertical-align: top;
  border: 2px solid #f1f1f1;
}

.contact__box dl:not(:last-of-type) dt {
  font-weight: bold;
}

.contact__box p:last-of-type {
  margin-bottom: 0;
}

.contact__box dl:last-of-type {
  display: table;
  margin: 0 auto;
  text-align: left;
}

.contact__box dl:last-of-type dt {
  float: left;
  clear: both;
  width: 8em;
}

.contact__box dl:last-of-type dd {
  float: left;
}

.policy h4 {
  margin-top: 33px;
}

@media all and (-ms-high-contrast: none) {
  .hero h2 {
    padding-top: 6px;
    padding-bottom: 2px;
  }
}
/*# sourceMappingURL=maps/style.css.map */
