@charset "UTF-8";
html {
  overflow-y: scroll;
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%; }

/* HTML5 display definitions
   ========================================================================== */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block; }

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, main, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0; }

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline; }

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

object,
embed {
  border: 0;
  vertical-align: bottom;
  outline: none; }

[hidden],
template {
  display: none; }

/* Links
   ========================================================================== */
a {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
  outline: 0; }

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

a img {
  border: none;
  text-decoration: none;
  outline: 0; }

/* Text-level semantics
   ========================================================================== */
h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal; }

ul li {
  list-style: none; }

blockquote,
q {
  quotes: none; }

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none; }

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

b,
strong {
  font-weight: bold; }

dfn {
  font-style: italic; }

small {
  font-size: 80%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* Tables
   ========================================================================== */
table {
  border-collapse: collapse;
  border-spacing: 0; }

td,
th {
  padding: 0; }

caption,
th {
  text-align: left; }

/* Embedded content
   ========================================================================== */
img {
  border: none;
  vertical-align: bottom; }

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

/* Grouping content
   ========================================================================== */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

pre {
  overflow: auto; }

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

/* Forms
   ========================================================================== */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

input, select {
  vertical-align: middle; }

button {
  overflow: visible; }

button,
select {
  text-transform: none; }

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

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

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

label {
  cursor: pointer; }

input {
  line-height: normal; }

input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

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

input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

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

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

legend {
  border: 0;
  padding: 0; }

textarea {
  overflow: auto; }

optgroup {
  font-weight: bold; }

/* Yu Gothic for Windows */
@font-face {
  font-family: MyYuGothic;
  font-weight: normal;
  src: local(YuGothic-Medium), local("Yu Gothic Medium");
  /* for Chrome */ }

@font-face {
  font-family: MyYuGothic;
  font-weight: bold;
  src: local(YuGothic-Bold), local("Yu Gothic");
  /* for Chrome */ }

@font-face {
  font-family: 'TPO Light';
  font-weight: normal;
  font-style: normal;
  src: url("../font/tpo-light.woff2") format("woff2"), url("../font/tpo-light.woff") format("woff"), url("../font/tpo-light.svg#tpolight") format("svg"); }

@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: normal;
  src: url("../font/NotoSansJP-DemiLight.woff2") format("woff2"), url("../font/NotoSansJP-DemiLight.woff") format("woff"), url("../font/NotoSansJP-DemiLight.otf") format("opentype"); }

*,
*:before,
*:after {
  box-sizing: border-box; }

* {
  -webkit-font-smoothing: antialiased;
  -moz-font-smoothing: antialiased;
  font-smoothing: antialiased; }

/* [ Font Setting ]
===================================================================== */
html {
  font-size: 62.5%; }

body {
  text-rendering: optimizeLegibility; }

input, textarea {
  font-family: "Noto Sans Japanese", "YuGothic", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif; }

/* for IE */
* html body, * html input, * html textarea {
  font-family: "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

/* [ link ]
===================================================================== */
a {
  -webkit-tap-highlight-color: rgba(189, 185, 185, 0.2);
  -webkit-transition: opacity .1s ease-in-out 0s;
  transition: opacity .1s ease-in-out 0s;
  color: #670;
  text-decoration: underline; }
  a:visited {
    color: #670; }
  a:hover {
    text-decoration: none; }
  a:active {
    color: #670; }

/* [ selection ]
===================================================================== */
::-moz-selection {
  background: rgba(112, 112, 112, 0.12); }
::selection {
  background: rgba(112, 112, 112, 0.12); }

/* [ Base ]
===================================================================== */
html, body {
  min-width: 375px;
  height: 100%; }

body {
  width: 100%;
  min-height: 568px;
  font-family: "Noto Sans Japanese", "YuGothic", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  color: #111;
  line-height: 1.9;
  letter-spacing: 0.06em;
  font-size: 14px;
  font-size: 1.4rem;
  -webkit-transition: background-color 1.6s ease 0s;
  transition: background-color 1.6s ease 0s;
  -webkit-tap-highlight-color: transparent;
  tap-highlight-color: transparent; }
  @media screen and (max-width: 500px) {
    body {
      letter-spacing: 0.04em; } }

.disabled-scroll {
  width: 100%;
  height: 100%;
  overflow: hidden; }

.is-disabledLink a {
  pointer-events: none; }

.g-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  background-color: white;
  z-index: 800;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  overflow: hidden;
  -webkit-transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
  transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }
  @media screen and (max-width: 960px) {
    .is-nav-open .g-overlay {
      -webkit-transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
      transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0.1s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
      height: 100%;
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

.g-loading {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 10000; }

.g-loading_bar-container {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1; }

.g-loading_bar {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #fff;
  width: 0;
  height: 1px;
  -webkit-transition: width 0.4s ease-out 0s;
  transition: width 0.4s ease-out 0s;
  z-index: 10; }

/* インラインスクロールを滑らかに */
.overflow-scrolling {
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch; }

button {
  -webkit-transition: opacity .1s ease-in-out 0s;
  transition: opacity .1s ease-in-out 0s; }
  .ua-desktop button:hover {
    opacity: 0.8;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; }

.message-404 {
  margin-top: 49vh;
  text-align: center;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  line-height: 2;
  font-size: 11px;
  font-size: 1.1rem; }

/* [ wrapper ]
===================================================================== */
.l-wrapper {
  position: relative;
  width: 100%;
  min-height: 100%; }

/*============================
.g-header
============================*/
.g-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  overflow: hidden;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }
  .g-header:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, background-color 1.6s ease 0s;
    transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, background-color 1.6s ease 0s; }
  .header-hide .g-header {
    -webkit-transform: translateY(-180px);
        -ms-transform: translateY(-180px);
            transform: translateY(-180px); }
  .header-fixed .g-header .g-header_body {
    height: 80px; }
  .header-fixed .g-header .g-logo {
    -webkit-transform: translateY(26px);
        -ms-transform: translateY(26px);
            transform: translateY(26px); }
  .header-fixed.is-nav-open .g-header {
    -webkit-transform: translateY(-180px);
        -ms-transform: translateY(-180px);
            transform: translateY(-180px); }
  .p-home .g-header {
    -webkit-transform: translateY(-180px) !important;
        -ms-transform: translateY(-180px) !important;
            transform: translateY(-180px) !important; }

.g-header_body {
  max-width: 980px;
  margin: 0 auto;
  height: 180px;
  text-align: center;
  -webkit-transition: height 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: height 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }

.g-logo {
  position: relative;
  -webkit-transform: translateY(75px);
      -ms-transform: translateY(75px);
          transform: translateY(75px);
  text-align: center;
  line-height: 1;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  z-index: 10; }
  .g-logo a {
    text-decoration: none; }

@media screen and (max-width: 960px) {
  .g-logo img {
    max-width: 350px;
    height: auto; } }

@media screen and (max-width: 500px) {
  .g-header .g-header_body {
    height: 64px; }
  .header-hide .g-header {
    -webkit-transform: translateY(-80px);
        -ms-transform: translateY(-80px);
            transform: translateY(-80px); }
  .header-fixed .g-header .g-header_body {
    height: 40px; }
  .header-fixed .g-header .g-logo {
    -webkit-transform: translateY(14px);
        -ms-transform: translateY(14px);
            transform: translateY(14px); }
  .header-fixed.is-nav-open .g-header {
    -webkit-transform: translateY(-80px);
        -ms-transform: translateY(-80px);
            transform: translateY(-80px); }
  .g-header_body {
    height: 80px; }
  .g-logo {
    -webkit-transform: translateY(34px);
        -ms-transform: translateY(34px);
            transform: translateY(34px); }
    .g-logo img {
      max-width: 250px; } }

/*============================
.g-nav
============================*/
.g-nav {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  background-color: #cccccc;
  -webkit-transition: height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s, opacity 0.5s ease 0s;
  transition: height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.7s, opacity 0.5s ease 0s;
  overflow: hidden;
  z-index: 3000;
  line-height: 1; }
  .g-nav a {
    color: #fff; }
  .is-nav-open .g-nav {
    height: 100%;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transition: height 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.6s ease 0.1s;
    transition: height 0.01s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.6s ease 0.1s;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch; }

.g-nav_body {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 380px;
  margin-top: 30px;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: margin-top 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.5s ease 0s;
  transition: margin-top 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.5s ease 0s;
  text-align: center;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .is-nav-open .g-nav_body {
    margin-top: 0;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transition: margin-top 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity 0.5s ease 0.4s;
    transition: margin-top 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity 0.5s ease 0.4s; }

.g-nav_options {
  width: 100%;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif; }
  .g-nav_options._primary {
    position: relative;
    margin-bottom: 60px;
    padding-bottom: 60px;
    font-size: 36px;
    font-size: 3.6rem; }
    .g-nav_options._primary:after {
      content: '';
      position: absolute;
      bottom: 0;
      left: 50%;
      width: 100%;
      height: 2px;
      background-color: #fff;
      -webkit-transition: opacity 0.8s ease 0.1s;
      transition: opacity 0.8s ease 0.1s;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      opacity: 0;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
      .is-nav-open .g-nav_options._primary:after {
        opacity: 1;
        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
    .g-nav_options._primary .g-nav_item {
      margin-bottom: 44px; }
      .g-nav_options._primary .g-nav_item:last-child {
        margin-bottom: 0; }
  .g-nav_options._secondary {
    font-size: 26px;
    font-size: 2.6rem; }
    .g-nav_options._secondary .g-nav_item {
      margin-bottom: 30px; }
      .g-nav_options._secondary .g-nav_item:last-child {
        margin-bottom: 0; }

.g-nav_link {
  margin-left: -0.2em;
  text-decoration: none;
  letter-spacing: 0.2em; }

@media screen and (max-width: 500px) {
  .g-nav_body {
    width: 190px; }
  .g-nav_options._primary {
    margin-bottom: 30px;
    padding-bottom: 30px;
    font-size: 25px;
    font-size: 2.5rem; }
    .g-nav_options._primary:after {
      height: 1px; }
    .g-nav_options._primary .g-nav_item {
      margin-bottom: 24px; }
      .g-nav_options._primary .g-nav_item:last-child {
        margin-bottom: 0; }
  .g-nav_options._secondary {
    font-size: 18px;
    font-size: 1.8rem; }
    .g-nav_options._secondary .g-nav_item {
      margin-bottom: 25px; }
      .g-nav_options._secondary .g-nav_item:last-child {
        margin-bottom: 0; } }

/*============================
.g-sns
============================*/
.g-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: 2.8em; }
  @media screen and (max-width: 500px) {
    .g-sns {
      margin-top: 2em; } }

.g-sns_item {
  line-height: 1.1; }

a.g-sns_link {
  position: relative;
  display: inline-block;
  font-size: 3rem;
  text-decoration: none;
  color: #fff;
  text-indent: -999em; }
  a.g-sns_link:before {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    text-indent: 0; }
  @media screen and (max-width: 500px) {
    a.g-sns_link {
      font-size: 2.2rem; } }

/*============================
.g-nav-toggle
============================*/
.g-nav-toggle-containar {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  width: 980px;
  margin: 0 auto;
  z-index: 3000;
  -webkit-transition: -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.6s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  -webkit-transform: translateY(71px);
      -ms-transform: translateY(71px);
          transform: translateY(71px); }
  .header-fixed .g-nav-toggle-containar {
    -webkit-transform: translateY(22px);
        -ms-transform: translateY(22px);
            transform: translateY(22px); }
  .header-hide .g-nav-toggle-containar {
    -webkit-transform: translateY(-150px);
        -ms-transform: translateY(-150px);
            transform: translateY(-150px); }
  .header-hide.is-nav-open .g-nav-toggle-containar,
  .header-fixed.is-nav-open .g-nav-toggle-containar {
    -webkit-transform: translateY(71px);
        -ms-transform: translateY(71px);
            transform: translateY(71px); }

.g-nav-toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  cursor: pointer; }
  .g-nav-toggle.step1 .g-nav-toggle_line._first {
    -webkit-transform: translate(0, 6px);
        -ms-transform: translate(0, 6px);
            transform: translate(0, 6px); }
  .g-nav-toggle.step1 .g-nav-toggle_line._second {
    -webkit-transform: translate(0, -6px);
        -ms-transform: translate(0, -6px);
            transform: translate(0, -6px); }
  .g-nav-toggle.step2 .g-nav-toggle_line._first {
    -webkit-transform: translate(0, 6px) rotate(45deg);
        -ms-transform: translate(0, 6px) rotate(45deg);
            transform: translate(0, 6px) rotate(45deg);
    background-color: #fff; }
  .g-nav-toggle.step2 .g-nav-toggle_line._second {
    -webkit-transform: translate(0, -6px) rotate(-45deg);
        -ms-transform: translate(0, -6px) rotate(-45deg);
            transform: translate(0, -6px) rotate(-45deg);
    background-color: #fff; }
  @media screen and (max-width: 1040px) {
    .g-nav-toggle {
      right: 5.3%; } }

.g-nav-toggle_line {
  position: absolute;
  right: 0;
  display: block;
  width: 30px;
  height: 3px;
  background: #111;
  -webkit-transition: opacity 0.3s ease 0s, background-color 0.3s ease 0s, -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: opacity 0.3s ease 0s, background-color 0.3s ease 0s, -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.3s ease 0s, background-color 0.3s ease 0s;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.3s ease 0s, background-color 0.3s ease 0s, -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }
  .g-nav-toggle_line._first {
    top: 8px; }
  .g-nav-toggle_line._second {
    top: 20px; }

@media screen and (max-width: 980px) {
  .g-nav-toggle-containar {
    width: 100%; } }

@media screen and (max-width: 500px) {
  .g-nav-toggle-containar {
    -webkit-transform: translateY(32px);
        -ms-transform: translateY(32px);
            transform: translateY(32px); }
    .header-fixed .g-nav-toggle-containar {
      -webkit-transform: translateY(10px);
          -ms-transform: translateY(10px);
              transform: translateY(10px); }
    .header-hide .g-nav-toggle-containar {
      -webkit-transform: translateY(-80px);
          -ms-transform: translateY(-80px);
              transform: translateY(-80px); }
    .header-hide.is-nav-open .g-nav-toggle-containar,
    .header-fixed.is-nav-open .g-nav-toggle-containar {
      -webkit-transform: translateY(32px);
          -ms-transform: translateY(32px);
              transform: translateY(32px); }
  .g-nav-toggle {
    width: 18px;
    height: 18px; }
    .g-nav-toggle.step1 .g-nav-toggle_line._first {
      -webkit-transform: translate(0, 4px) rotate(45deg);
          -ms-transform: translate(0, 4px) rotate(45deg);
              transform: translate(0, 4px) rotate(45deg); }
    .g-nav-toggle.step1 .g-nav-toggle_line._second {
      -webkit-transform: translate(0, -4px) rotate(-45deg);
          -ms-transform: translate(0, -4px) rotate(-45deg);
              transform: translate(0, -4px) rotate(-45deg); }
    .g-nav-toggle.step2 .g-nav-toggle_line._first {
      -webkit-transform: translate(0, 4px) rotate(45deg);
          -ms-transform: translate(0, 4px) rotate(45deg);
              transform: translate(0, 4px) rotate(45deg);
      background-color: #fff; }
    .g-nav-toggle.step2 .g-nav-toggle_line._second {
      -webkit-transform: translate(0, -4px) rotate(-45deg);
          -ms-transform: translate(0, -4px) rotate(-45deg);
              transform: translate(0, -4px) rotate(-45deg);
      background-color: #fff; }
  .g-nav-toggle_line {
    width: 18px;
    height: 2px; }
    .g-nav-toggle_line._first {
      top: 4px; }
    .g-nav-toggle_line._second {
      top: 12px; } }

.g-footer {
  position: relative;
  width: 100%;
  margin: 0 auto;
  padding-bottom: 50px;
  -webkit-transition: background-color 1.8s ease 0s;
  transition: background-color 1.8s ease 0s; }
  .p-home .g-footer {
    z-index: 10; }
  .g-footer a {
    color: #111; }
  .g-footer:before {
    content: '';
    display: block;
    max-width: 980px;
    margin: 0 auto;
    border-top: 2px solid #111; }
  @media screen and (max-width: 500px) {
    .g-footer {
      padding-bottom: 30px; }
      .g-footer:before {
        border-width: 1px; } }

/*============================
.g-footer-nav
============================*/
.g-footer-nav {
  padding-top: 30px;
  text-align: center;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem; }

.g-footer-nav_item {
  display: inline-block;
  padding: 0 5px; }

.g-footer-nav_link {
  text-decoration: none; }

.g-copyright {
  margin-top: 20px;
  text-align: center;
  line-height: 1;
  font-size: 12px;
  font-size: 1.2rem; }

@media screen and (max-width: 500px) {
  .g-footer-nav {
    padding-top: 20px;
    font-size: 9px;
    font-size: 0.9rem; }
  .g-copyright {
    margin-top: 16px;
    font-size: 9px;
    font-size: 0.9rem; } }

.g-footer-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin-top: 1.6em; }
  @media screen and (max-width: 500px) {
    .g-footer-sns {
      margin-top: 1.4em; } }

.g-footer-sns_item {
  line-height: 1.1; }

a.g-footer-sns_link {
  position: relative;
  display: inline-block;
  font-size: 2.1rem;
  text-decoration: none;
  color: #111111;
  text-indent: -999em;
  -webkit-transition: opacity 0.5s ease 0s;
  transition: opacity 0.5s ease 0s; }
  .ua-desktop a.g-footer-sns_link:hover {
    opacity: 0.6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; }
  a.g-footer-sns_link:before {
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    text-indent: 0; }

.l-main {
  width: 100%;
  padding: 180px 0 100px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  .l-main.p-home {
    padding-top: 0; }
  @media screen and (max-width: 960px) {
    .l-main {
      padding: 180px 0 80px; }
      .p-home .l-main {
        padding-top: 0; } }
  @media screen and (max-width: 500px) {
    .l-main {
      padding: 105px 0 50px; }
      .p-home .l-main {
        padding-top: 0; } }

.l-content {
  position: relative;
  max-width: 980px;
  margin: 0 auto; }
  .l-content._wide {
    max-width: 100%;
    padding: 0 0; }
  @media screen and (max-width: 960px) {
    .l-content {
      width: 100%;
      padding-right: 5%;
      padding-left: 5%; }
      .l-content._wide {
        padding-right: 0;
        padding-left: 0; } }

@media print {
  * html body {
    zoom: .7; }
  body {
    background-color: #fff;
    font-size: 12px; } }

/*============================
Text
============================*/
.c-description {
  margin-top: 2em;
  text-align: center;
  font-size: 16px;
  font-size: 1.6rem; }
  @media screen and (max-width: 500px) {
    .c-description {
      font-size: 9px;
      font-size: 0.9rem; } }

/*============================
Separator
============================*/
.c-separator {
  margin: 2em 0; }

/*============================
Link
============================*/
.c-blank-link:after {
  content: '';
  position: relative;
  top: -1px;
  display: inline-block;
  width: 9px;
  height: 8px;
  margin-left: 3px;
  margin-right: 5px;
  background: url(../img/common/ico_blank.svg) 50% 50%/cover no-repeat; }

.c-blank-link._white:after {
  background: url(../img/common/ico_blank-white.svg) 50% 50%/cover no-repeat; }

.c-arrow-link:before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 9px;
  margin-right: 7px;
  background: url(../img/common/ico_arrow-r.svg) 50% 50%/cover no-repeat; }

/*============================
Button
============================*/
a.c-btn,
.c-btn {
  position: relative;
  display: block;
  max-width: 280px;
  padding: 7px 0 8px;
  text-decoration: none;
  line-height: 1;
  text-align: center;
  z-index: 1;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  line-height: 1; }
  a.c-btn._arrow,
  .c-btn._arrow {
    padding: 8px 10px 9px 0; }
    a.c-btn._arrow:after,
    .c-btn._arrow:after {
      position: absolute;
      top: 50%;
      right: 11px;
      content: '';
      width: 30px;
      height: 10px;
      background: url(../img/common/btn_arrow-r.svg) 50% 50%/cover no-repeat;
      -webkit-transform: translate(0, -50%);
          -ms-transform: translate(0, -50%);
              transform: translate(0, -50%);
      -webkit-transition: right 0.3s ease 0s;
      transition: right 0.3s ease 0s; }
  a.c-btn.tch-active,
  .ua-desktop a.c-btn:hover,
  .c-btn.tch-active,
  .ua-desktop
  .c-btn:hover {
    color: #000; }
  @media screen and (max-width: 500px) {
    a.c-btn,
    .c-btn {
      margin: auto;
      font-size: 11px;
      font-size: 1.1rem; } }

a.c-btn2,
.c-btn2 {
  position: relative;
  display: block;
  max-width: 280px;
  padding: 5px 0 6px;
  text-decoration: none;
  text-align: center;
  z-index: 1;
  -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  color: #fff;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif; }
  a.c-btn2.tch-active,
  .ua-desktop a.c-btn2:hover,
  .c-btn2.tch-active,
  .ua-desktop
  .c-btn2:hover {
    background-color: #797979; }
  @media screen and (max-width: 500px) {
    a.c-btn2,
    .c-btn2 {
      margin: auto;
      font-size: 11px;
      font-size: 1.1rem; } }

/*============================
Title
============================*/
.m-heading1 {
  display: block;
  width: 100%;
  font-size: 60px;
  font-size: 6rem;
  line-height: 1.7;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  text-align: center; }
  @media screen and (max-width: 960px) {
    .m-heading1 {
      font-size: 40px;
      font-size: 4rem; } }
  @media screen and (max-width: 500px) {
    .m-heading1 {
      font-size: 30px;
      font-size: 3rem; } }

.m-heading2 {
  font-size: 24px;
  font-size: 2.4rem;
  line-height: 1.7;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  letter-spacing: 0.18em;
  text-align: center; }
  .m-heading2._en {
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.5; }
  .m-heading2._ja {
    margin-top: 0.4rem;
    font-size: 20px;
    font-size: 2rem; }
  @media screen and (max-width: 960px) {
    .m-heading2._en {
      font-size: 20px;
      font-size: 2rem; }
    .m-heading2._ja {
      font-size: 18px;
      font-size: 1.8rem; } }
  @media screen and (max-width: 500px) {
    .m-heading2._en {
      font-size: 16px;
      font-size: 1.6rem; }
    .m-heading2._ja {
      font-size: 13px;
      font-size: 1.3rem; } }

/*============================
List
============================*/
.m-codicils {
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center; }
  @media screen and (max-width: 500px) {
    .m-codicils {
      font-size: 9px;
      font-size: 0.9rem;
      text-align: left; } }

.m-codicils_item {
  margin-bottom: 0.4em;
  line-height: 1.5;
  padding-left: 1em;
  text-indent: -1em; }
  .m-codicils_item:last-child {
    margin-bottom: 0; }

/*============================
Table
============================*/
.m-table {
  width: 100%;
  text-align: left;
  line-height: 1.6;
  border-collapse: separate;
  border-spacing: 0;
  font-size: 12px;
  font-size: 1.2rem; }
  .m-table th,
  .m-table td {
    padding: 6px 4px 5px 4px;
    vertical-align: top;
    border-bottom: 1px solid #ccc; }
  .m-table th {
    color: #999; }
  .m-table tr:hover td {
    background-color: rgba(224, 224, 218, 0.3); }
  .m-table .number {
    padding-right: 2.5em;
    padding-left: 0.6em; }
  .m-table .name,
  .m-table .component {
    padding-right: 1em; }
  @media screen and (max-width: 500px) {
    .m-table {
      font-size: 8px;
      font-size: 0.8rem; }
      .m-table .number {
        padding-right: 0.6em;
        padding-left: 0.4em; }
      .m-table .name,
      .m-table .component {
        padding-right: 0.6em; } }

/*============================
Navigation
============================*/
.m-pagination {
  position: relative;
  width: 100%;
  line-height: 1;
  text-transform: uppercase;
  font-size: 20px;
  font-size: 2rem;
  text-align: center; }
  .m-pagination a {
    display: inline-block;
    text-decoration: none;
    color: #111; }
  .m-pagination ._off {
    color: #bbb; }
  .p-press .m-pagination {
    visibility: hidden;
    margin-top: 3em; }

.m-pagination_current,
.m-pagination_inactive {
  margin: 0 5px;
  padding: 0 2px 2px 2px; }

.m-pagination_current {
  border-bottom: 1px solid #111; }

.m-pagination_prev {
  margin-right: 1em; }
  .m-pagination_prev .fa {
    margin-right: 0.35em; }

.m-pagination_next {
  margin-left: 1em; }
  .m-pagination_next .fa {
    margin-left: 0.35em; }

@media screen and (max-width: 500px) {
  .m-pagination {
    font-size: 15px;
    font-size: 1.5rem; } }

/*============================
modal
============================*/
.m-modal {
  height: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  overflow-y: hidden;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  z-index: -100;
  -webkit-transition: z-index 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity 0.3s ease 0s;
  transition: z-index 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity 0.3s ease 0s;
  background-color: rgba(224, 224, 218, 0.9);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px); }
  .m-modal.is-show {
    z-index: 5000;
    height: 100%;
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transition: z-index 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.4s ease 0.1s;
    transition: z-index 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, height 0s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.4s ease 0.1s; }
    .m-modal.is-show .m-modal-content {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
      -webkit-transform: translateY(0);
          -ms-transform: translateY(0);
              transform: translateY(0);
      -webkit-transition: opacity 0.5s ease 0.4s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: opacity 0.5s ease 0.4s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s;
      transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity 0.5s ease 0.4s;
      transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s, opacity 0.5s ease 0.4s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0.4s; }

.m-modal-scrollarea {
  width: 100%;
  height: 100%;
  padding: 180px 0;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  overflow-scrolling: touch; }
  .p-product .m-modal-scrollarea {
    padding: 180px 0;
    background-color: rgba(224, 224, 218, 0.94); }
  .p-press .m-modal-scrollarea {
    padding-bottom: 80px;
    background-color: rgba(234, 232, 212, 0.94); }
  @media screen and (max-width: 960px) {
    .m-modal-scrollarea {
      padding: 80px 5.3%; }
      .p-product .m-modal-scrollarea {
        padding: 80px 5.3%; }
      .p-press .m-modal-scrollarea {
        padding-bottom: 40px; } }

.m-modal-content {
  position: relative;
  max-width: 980px;
  margin: 0 auto;
  padding: 40px 8.16327% 70px;
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transform: translateY(30px);
      -ms-transform: translateY(30px);
          transform: translateY(30px);
  -webkit-transition: opacity 0.5s ease 0s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: opacity 0.5s ease 0s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.5s ease 0s;
  transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.5s ease 0s, -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }
  .m-modal-content._white {
    background-color: #fff; }
  @media screen and (max-width: 960px) {
    .m-modal-content {
      padding: 25px 4% 30px; }
      .p-press .m-modal-content {
        padding: 25px 0 30px; } }

.m-modal-close {
  position: absolute;
  top: -110px;
  right: 0;
  width: 30px;
  height: 30px;
  cursor: pointer; }
  .m-modal-close .line {
    position: absolute;
    right: 0;
    display: block;
    width: 30px;
    height: 3px;
    background: #111;
    -webkit-transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
    transition: opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, opacity 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, background-color 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s, -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }
    .m-modal-close .line._first {
      top: 8px;
      -webkit-transform: translate(0, 6px) rotate(45deg);
          -ms-transform: translate(0, 6px) rotate(45deg);
              transform: translate(0, 6px) rotate(45deg); }
    .m-modal-close .line._second {
      top: 20px;
      -webkit-transform: translate(0, -6px) rotate(-45deg);
          -ms-transform: translate(0, -6px) rotate(-45deg);
              transform: translate(0, -6px) rotate(-45deg); }
  @media screen and (max-width: 1040px) {
    .m-modal-close {
      right: 5.3%; } }
  @media screen and (max-width: 960px) {
    .m-modal-close {
      top: -50px;
      right: 0;
      width: 18px;
      height: 18px; }
      .m-modal-close .line {
        width: 18px;
        height: 2px; }
        .m-modal-close .line._first {
          top: 4px;
          -webkit-transform: translate(0, 4px) rotate(45deg);
              -ms-transform: translate(0, 4px) rotate(45deg);
                  transform: translate(0, 4px) rotate(45deg); }
        .m-modal-close .line._second {
          top: 12px;
          -webkit-transform: translate(0, -4px) rotate(-45deg);
              -ms-transform: translate(0, -4px) rotate(-45deg);
                  transform: translate(0, -4px) rotate(-45deg); } }

/*============================
WordPress WYSIWYG Style
============================*/
.m-wysiwyg .alignright {
  float: right;
  margin: 0 0 1em 1em; }

.m-wysiwyg .alignleft {
  float: left;
  margin: 0 1em 1em 0; }

.m-wysiwyg a {
  text-decoration: underline; }
  .m-wysiwyg a:hover {
    text-decoration: none; }

.m-wysiwyg h1,
.m-wysiwyg h2,
.m-wysiwyg h3,
.m-wysiwyg h4,
.m-wysiwyg h5,
.m-wysiwyg h6 {
  clear: both;
  font-weight: bold;
  margin-bottom: 16px;
  line-height: 1.4; }

.m-wysiwyg h1 {
  font-size: 20px;
  font-size: 2rem; }

.m-wysiwyg h2 {
  font-size: 18px;
  font-size: 1.8rem; }

.m-wysiwyg h3 {
  font-size: 16px;
  font-size: 1.6rem; }

.m-wysiwyg h4 {
  font-size: 15px;
  font-size: 1.5rem; }

.m-wysiwyg h5 {
  font-size: 14px;
  font-size: 1.4rem; }

.m-wysiwyg h6 {
  font-size: 13px;
  font-size: 1.3rem; }

.m-wysiwyg ul,
.m-wysiwyg ol {
  line-height: 1.5; }

.m-wysiwyg ul {
  margin-left: 1.5em; }

.m-wysiwyg ol {
  margin-left: 1.5em; }

.m-wysiwyg ul li {
  list-style: disc inside;
  margin-bottom: 0.4em; }

.m-wysiwyg ol li {
  list-style: decimal inside;
  margin-bottom: 0.4em; }

.m-wysiwyg blockquote {
  padding: 1.0em 1.2em;
  border: 1px solid #333;
  line-height: 1.6; }
  .m-wysiwyg blockquote p,
  .m-wysiwyg blockquote ul,
  .m-wysiwyg blockquote ol,
  .m-wysiwyg blockquote h1,
  .m-wysiwyg blockquote h2,
  .m-wysiwyg blockquote h3,
  .m-wysiwyg blockquote h4,
  .m-wysiwyg blockquote h5,
  .m-wysiwyg blockquote h6,
  .m-wysiwyg blockquote img {
    margin: 0 0 0 0;
    padding: 0 0 0 0; }
  .m-wysiwyg blockquote *:last-child {
    margin-bottom: 0; }

.m-wysiwyg blockquote:nth-last-child(1) {
  margin-bottom: 0; }

.m-wysiwyg img {
  display: block;
  margin: 0.5em 0;
  max-width: 100%;
  height: auto; }

.m-wysiwyg p {
  clear: both;
  margin-bottom: 2em;
  line-height: 2; }

.m-wysiwyg ul,
.m-wysiwyg ol,
.m-wysiwyg dl,
.m-wysiwyg blockquote {
  clear: both;
  margin-bottom: 1.4em; }

.m-wysiwyg hr {
  margin: 2em 0;
  boder: none;
  border-top: 1px solid #bcbcb8; }

.m-wysiwyg table {
  width: 100%; }
  .m-wysiwyg table th, .m-wysiwyg table td {
    vertical-align: top;
    padding: 1.4em 0;
    border-top: 1px solid #111;
    border-bottom: 1px solid #111; }
  .m-wysiwyg table th {
    width: 9em; }
  .m-wysiwyg table td *:last-child {
    margin-bottom: 0; }

.m-wysiwyg .wp-caption {
  max-width: 100%;
  height: auto; }

.m-wysiwyg .wp-caption-text {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.5; }

.m-wysiwyg iframe {
  width: 100%; }

@media screen and (max-width: 500px) {
  .m-wysiwyg {
    font-size: 10px;
    font-size: 1rem; }
    .m-wysiwyg h1,
    .m-wysiwyg h2 {
      text-align: center; }
    .m-wysiwyg h1 {
      font-size: 18px;
      font-size: 1.8rem; }
    .m-wysiwyg h2 {
      font-size: 17px;
      font-size: 1.7rem; }
    .m-wysiwyg h3 {
      font-size: 16px;
      font-size: 1.6rem; }
    .m-wysiwyg h4 {
      font-size: 15px;
      font-size: 1.5rem; }
    .m-wysiwyg h5 {
      font-size: 14px;
      font-size: 1.4rem; }
    .m-wysiwyg h6 {
      font-size: 13px;
      font-size: 1.3rem; }
    .m-wysiwyg table th, .m-wysiwyg table td {
      padding: 1.6em 0; }
    .m-wysiwyg .wp-caption-text {
      font-size: 11px;
      font-size: 1.1rem; } }

/* clearfix */
.u-cf:after {
  content: "";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

.u-cf {
  display: inline-block; }

* html .u-cf {
  height: 1%; }

.u-cf {
  display: block; }

/* end clearfix */
.u-d-none {
  display: none; }

.u-d-block {
  display: block; }

.u-d-inline {
  display: inline; }

.u-clear {
  clear: both; }

.u-fl {
  display: inline;
  float: left; }

.u-fr {
  display: inline;
  float: right; }

.u-al {
  text-align: left; }

.u-ar {
  text-align: right; }

.u-ac {
  text-align: center; }

@media screen and (min-width: 500px) {
  .u-dt-ac {
    text-align: center; } }

@media screen and (max-width: 500px) {
  .u-mb-ac {
    text-align: center; } }

.u-m-a {
  margin: auto; }

.u-vt {
  vertical-align: top !important; }

.u-vm {
  vertical-align: middle !important; }

.u-vb {
  vertical-align: bottom !important; }

.u-superscript {
  vertical-align: super;
  font-size: 60%; }

.u-pos-t {
  position: absolute;
  top: 0; }

.u-pos-b {
  position: absolute;
  bottom: 0; }

.u-pos-l {
  position: absolute;
  left: 0; }

.u-pos-r {
  position: absolute;
  right: 0; }

.u-indent1 {
  padding-left: 1em !important;
  text-indent: -1em !important; }

.u-indent2 {
  padding-left: 2em !important;
  text-indent: -2em !important; }

.u-indent3 {
  padding-left: 3em !important;
  text-indent: -3em !important; }

.u-fz-s {
  font-size: 85%; }

.u-fw-nml {
  font-weight: normal !important; }

.u-fw-bld {
  font-weight: bold !important; }

.u-break-word {
  word-wrap: break-word;
  overflow-wrap: break-word; }

.u-disable-event {
  pointer-events: none; }

.u-bdr-t-none {
  border-top: none !important; }

.u-bdr-l-none {
  border-left: none !important; }

.u-bdr-r-none {
  border-right: none !important; }

.u-bdr-b-none {
  border-bottom: none !important; }

@media screen and (max-width: 500px) {
  .u-dt-br {
    display: none; } }

.u-mb-br {
  display: none; }
  @media screen and (max-width: 500px) {
    .u-mb-br {
      display: inline; } }

.u-alpha-over {
  -webkit-transition: opacity .4s ease-out;
  transition: opacity .4s ease-out; }
  .u-alpha-over:hover {
    opacity: .85;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; }

.ua-android p, .ua-android li, .ua-android dt, .ua-android dd, .ua-android h1, .ua-android h2, .ua-android h3, .ua-android h4, .ua-android span {
  max-height: 100%; }

.u-textfix {
  background: url("data:image/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw=="); }

.u-fz10 {
  font-size: 10px;
  font-size: 1rem; }

.u-fz11 {
  font-size: 11px;
  font-size: 1.1rem; }

.u-fz12 {
  font-size: 12px;
  font-size: 1.2rem; }

.u-fz13 {
  font-size: 13px;
  font-size: 1.3rem; }

.u-fz14 {
  font-size: 14px;
  font-size: 1.4rem; }

.u-fz15 {
  font-size: 15px;
  font-size: 1.5rem; }

.u-fz16 {
  font-size: 16px;
  font-size: 1.6rem; }

.u-fz17 {
  font-size: 17px;
  font-size: 1.7rem; }

.u-fz18 {
  font-size: 18px;
  font-size: 1.8rem; }

.u-fz19 {
  font-size: 19px;
  font-size: 1.9rem; }

.u-fz20 {
  font-size: 20px;
  font-size: 2rem; }

.u-fz21 {
  font-size: 21px;
  font-size: 2.1rem; }

.u-fz22 {
  font-size: 22px;
  font-size: 2.2rem; }

.u-fz23 {
  font-size: 23px;
  font-size: 2.3rem; }

.u-fz24 {
  font-size: 24px;
  font-size: 2.4rem; }

.u-fz25 {
  font-size: 25px;
  font-size: 2.5rem; }

.u-fz26 {
  font-size: 26px;
  font-size: 2.6rem; }

.u-fz27 {
  font-size: 27px;
  font-size: 2.7rem; }

.u-fz28 {
  font-size: 28px;
  font-size: 2.8rem; }

.u-fz29 {
  font-size: 29px;
  font-size: 2.9rem; }

.u-fz30 {
  font-size: 30px;
  font-size: 3rem; }

.u-mgn-t0 {
  margin-top: 0px !important; }

.u-mgn-r0 {
  margin-right: 0px !important; }

.u-mgn-b0 {
  margin-bottom: 0px !important; }

.u-mgn-l0 {
  margin-left: 0px !important; }

.u-pdg-t0 {
  padding-top: 0px !important; }

.u-pdg-r0 {
  padding-right: 0px !important; }

.u-pdg-b0 {
  padding-bottom: 0px !important; }

.u-pdg-l0 {
  padding-left: 0px !important; }

.u-mgn-t4 {
  margin-top: 4px !important; }

.u-mgn-r4 {
  margin-right: 4px !important; }

.u-mgn-b4 {
  margin-bottom: 4px !important; }

.u-mgn-l4 {
  margin-left: 4px !important; }

.u-pdg-t4 {
  padding-top: 4px !important; }

.u-pdg-r4 {
  padding-right: 4px !important; }

.u-pdg-b4 {
  padding-bottom: 4px !important; }

.u-pdg-l4 {
  padding-left: 4px !important; }

.u-mgn-t8 {
  margin-top: 8px !important; }

.u-mgn-r8 {
  margin-right: 8px !important; }

.u-mgn-b8 {
  margin-bottom: 8px !important; }

.u-mgn-l8 {
  margin-left: 8px !important; }

.u-pdg-t8 {
  padding-top: 8px !important; }

.u-pdg-r8 {
  padding-right: 8px !important; }

.u-pdg-b8 {
  padding-bottom: 8px !important; }

.u-pdg-l8 {
  padding-left: 8px !important; }

.u-mgn-t12 {
  margin-top: 12px !important; }

.u-mgn-r12 {
  margin-right: 12px !important; }

.u-mgn-b12 {
  margin-bottom: 12px !important; }

.u-mgn-l12 {
  margin-left: 12px !important; }

.u-pdg-t12 {
  padding-top: 12px !important; }

.u-pdg-r12 {
  padding-right: 12px !important; }

.u-pdg-b12 {
  padding-bottom: 12px !important; }

.u-pdg-l12 {
  padding-left: 12px !important; }

.u-mgn-t16 {
  margin-top: 16px !important; }

.u-mgn-r16 {
  margin-right: 16px !important; }

.u-mgn-b16 {
  margin-bottom: 16px !important; }

.u-mgn-l16 {
  margin-left: 16px !important; }

.u-pdg-t16 {
  padding-top: 16px !important; }

.u-pdg-r16 {
  padding-right: 16px !important; }

.u-pdg-b16 {
  padding-bottom: 16px !important; }

.u-pdg-l16 {
  padding-left: 16px !important; }

.u-mgn-t20 {
  margin-top: 20px !important; }

.u-mgn-r20 {
  margin-right: 20px !important; }

.u-mgn-b20 {
  margin-bottom: 20px !important; }

.u-mgn-l20 {
  margin-left: 20px !important; }

.u-pdg-t20 {
  padding-top: 20px !important; }

.u-pdg-r20 {
  padding-right: 20px !important; }

.u-pdg-b20 {
  padding-bottom: 20px !important; }

.u-pdg-l20 {
  padding-left: 20px !important; }

.u-mgn-t24 {
  margin-top: 24px !important; }

.u-mgn-r24 {
  margin-right: 24px !important; }

.u-mgn-b24 {
  margin-bottom: 24px !important; }

.u-mgn-l24 {
  margin-left: 24px !important; }

.u-pdg-t24 {
  padding-top: 24px !important; }

.u-pdg-r24 {
  padding-right: 24px !important; }

.u-pdg-b24 {
  padding-bottom: 24px !important; }

.u-pdg-l24 {
  padding-left: 24px !important; }

.u-mgn-t28 {
  margin-top: 28px !important; }

.u-mgn-r28 {
  margin-right: 28px !important; }

.u-mgn-b28 {
  margin-bottom: 28px !important; }

.u-mgn-l28 {
  margin-left: 28px !important; }

.u-pdg-t28 {
  padding-top: 28px !important; }

.u-pdg-r28 {
  padding-right: 28px !important; }

.u-pdg-b28 {
  padding-bottom: 28px !important; }

.u-pdg-l28 {
  padding-left: 28px !important; }

.u-mgn-t32 {
  margin-top: 32px !important; }

.u-mgn-r32 {
  margin-right: 32px !important; }

.u-mgn-b32 {
  margin-bottom: 32px !important; }

.u-mgn-l32 {
  margin-left: 32px !important; }

.u-pdg-t32 {
  padding-top: 32px !important; }

.u-pdg-r32 {
  padding-right: 32px !important; }

.u-pdg-b32 {
  padding-bottom: 32px !important; }

.u-pdg-l32 {
  padding-left: 32px !important; }

.u-mgn-t36 {
  margin-top: 36px !important; }

.u-mgn-r36 {
  margin-right: 36px !important; }

.u-mgn-b36 {
  margin-bottom: 36px !important; }

.u-mgn-l36 {
  margin-left: 36px !important; }

.u-pdg-t36 {
  padding-top: 36px !important; }

.u-pdg-r36 {
  padding-right: 36px !important; }

.u-pdg-b36 {
  padding-bottom: 36px !important; }

.u-pdg-l36 {
  padding-left: 36px !important; }

.u-mgn-t40 {
  margin-top: 40px !important; }

.u-mgn-r40 {
  margin-right: 40px !important; }

.u-mgn-b40 {
  margin-bottom: 40px !important; }

.u-mgn-l40 {
  margin-left: 40px !important; }

.u-pdg-t40 {
  padding-top: 40px !important; }

.u-pdg-r40 {
  padding-right: 40px !important; }

.u-pdg-b40 {
  padding-bottom: 40px !important; }

.u-pdg-l40 {
  padding-left: 40px !important; }

.u-mgn-t44 {
  margin-top: 44px !important; }

.u-mgn-r44 {
  margin-right: 44px !important; }

.u-mgn-b44 {
  margin-bottom: 44px !important; }

.u-mgn-l44 {
  margin-left: 44px !important; }

.u-pdg-t44 {
  padding-top: 44px !important; }

.u-pdg-r44 {
  padding-right: 44px !important; }

.u-pdg-b44 {
  padding-bottom: 44px !important; }

.u-pdg-l44 {
  padding-left: 44px !important; }

.u-mgn-t48 {
  margin-top: 48px !important; }

.u-mgn-r48 {
  margin-right: 48px !important; }

.u-mgn-b48 {
  margin-bottom: 48px !important; }

.u-mgn-l48 {
  margin-left: 48px !important; }

.u-pdg-t48 {
  padding-top: 48px !important; }

.u-pdg-r48 {
  padding-right: 48px !important; }

.u-pdg-b48 {
  padding-bottom: 48px !important; }

.u-pdg-l48 {
  padding-left: 48px !important; }

.u-mgn-t52 {
  margin-top: 52px !important; }

.u-mgn-r52 {
  margin-right: 52px !important; }

.u-mgn-b52 {
  margin-bottom: 52px !important; }

.u-mgn-l52 {
  margin-left: 52px !important; }

.u-pdg-t52 {
  padding-top: 52px !important; }

.u-pdg-r52 {
  padding-right: 52px !important; }

.u-pdg-b52 {
  padding-bottom: 52px !important; }

.u-pdg-l52 {
  padding-left: 52px !important; }

.u-mgn-t56 {
  margin-top: 56px !important; }

.u-mgn-r56 {
  margin-right: 56px !important; }

.u-mgn-b56 {
  margin-bottom: 56px !important; }

.u-mgn-l56 {
  margin-left: 56px !important; }

.u-pdg-t56 {
  padding-top: 56px !important; }

.u-pdg-r56 {
  padding-right: 56px !important; }

.u-pdg-b56 {
  padding-bottom: 56px !important; }

.u-pdg-l56 {
  padding-left: 56px !important; }

.u-mgn-t60 {
  margin-top: 60px !important; }

.u-mgn-r60 {
  margin-right: 60px !important; }

.u-mgn-b60 {
  margin-bottom: 60px !important; }

.u-mgn-l60 {
  margin-left: 60px !important; }

.u-pdg-t60 {
  padding-top: 60px !important; }

.u-pdg-r60 {
  padding-right: 60px !important; }

.u-pdg-b60 {
  padding-bottom: 60px !important; }

.u-pdg-l60 {
  padding-left: 60px !important; }

.u-mgn-t64 {
  margin-top: 64px !important; }

.u-mgn-r64 {
  margin-right: 64px !important; }

.u-mgn-b64 {
  margin-bottom: 64px !important; }

.u-mgn-l64 {
  margin-left: 64px !important; }

.u-pdg-t64 {
  padding-top: 64px !important; }

.u-pdg-r64 {
  padding-right: 64px !important; }

.u-pdg-b64 {
  padding-bottom: 64px !important; }

.u-pdg-l64 {
  padding-left: 64px !important; }

.u-mgn-t68 {
  margin-top: 68px !important; }

.u-mgn-r68 {
  margin-right: 68px !important; }

.u-mgn-b68 {
  margin-bottom: 68px !important; }

.u-mgn-l68 {
  margin-left: 68px !important; }

.u-pdg-t68 {
  padding-top: 68px !important; }

.u-pdg-r68 {
  padding-right: 68px !important; }

.u-pdg-b68 {
  padding-bottom: 68px !important; }

.u-pdg-l68 {
  padding-left: 68px !important; }

.u-mgn-t72 {
  margin-top: 72px !important; }

.u-mgn-r72 {
  margin-right: 72px !important; }

.u-mgn-b72 {
  margin-bottom: 72px !important; }

.u-mgn-l72 {
  margin-left: 72px !important; }

.u-pdg-t72 {
  padding-top: 72px !important; }

.u-pdg-r72 {
  padding-right: 72px !important; }

.u-pdg-b72 {
  padding-bottom: 72px !important; }

.u-pdg-l72 {
  padding-left: 72px !important; }

.u-mgn-t76 {
  margin-top: 76px !important; }

.u-mgn-r76 {
  margin-right: 76px !important; }

.u-mgn-b76 {
  margin-bottom: 76px !important; }

.u-mgn-l76 {
  margin-left: 76px !important; }

.u-pdg-t76 {
  padding-top: 76px !important; }

.u-pdg-r76 {
  padding-right: 76px !important; }

.u-pdg-b76 {
  padding-bottom: 76px !important; }

.u-pdg-l76 {
  padding-left: 76px !important; }

.u-mgn-t80 {
  margin-top: 80px !important; }

.u-mgn-r80 {
  margin-right: 80px !important; }

.u-mgn-b80 {
  margin-bottom: 80px !important; }

.u-mgn-l80 {
  margin-left: 80px !important; }

.u-pdg-t80 {
  padding-top: 80px !important; }

.u-pdg-r80 {
  padding-right: 80px !important; }

.u-pdg-b80 {
  padding-bottom: 80px !important; }

.u-pdg-l80 {
  padding-left: 80px !important; }

.u-mgn-t84 {
  margin-top: 84px !important; }

.u-mgn-r84 {
  margin-right: 84px !important; }

.u-mgn-b84 {
  margin-bottom: 84px !important; }

.u-mgn-l84 {
  margin-left: 84px !important; }

.u-pdg-t84 {
  padding-top: 84px !important; }

.u-pdg-r84 {
  padding-right: 84px !important; }

.u-pdg-b84 {
  padding-bottom: 84px !important; }

.u-pdg-l84 {
  padding-left: 84px !important; }

.u-mgn-t88 {
  margin-top: 88px !important; }

.u-mgn-r88 {
  margin-right: 88px !important; }

.u-mgn-b88 {
  margin-bottom: 88px !important; }

.u-mgn-l88 {
  margin-left: 88px !important; }

.u-pdg-t88 {
  padding-top: 88px !important; }

.u-pdg-r88 {
  padding-right: 88px !important; }

.u-pdg-b88 {
  padding-bottom: 88px !important; }

.u-pdg-l88 {
  padding-left: 88px !important; }

.u-mgn-t92 {
  margin-top: 92px !important; }

.u-mgn-r92 {
  margin-right: 92px !important; }

.u-mgn-b92 {
  margin-bottom: 92px !important; }

.u-mgn-l92 {
  margin-left: 92px !important; }

.u-pdg-t92 {
  padding-top: 92px !important; }

.u-pdg-r92 {
  padding-right: 92px !important; }

.u-pdg-b92 {
  padding-bottom: 92px !important; }

.u-pdg-l92 {
  padding-left: 92px !important; }

.u-mgn-t96 {
  margin-top: 96px !important; }

.u-mgn-r96 {
  margin-right: 96px !important; }

.u-mgn-b96 {
  margin-bottom: 96px !important; }

.u-mgn-l96 {
  margin-left: 96px !important; }

.u-pdg-t96 {
  padding-top: 96px !important; }

.u-pdg-r96 {
  padding-right: 96px !important; }

.u-pdg-b96 {
  padding-bottom: 96px !important; }

.u-pdg-l96 {
  padding-left: 96px !important; }

.u-mgn-t100 {
  margin-top: 100px !important; }

.u-mgn-r100 {
  margin-right: 100px !important; }

.u-mgn-b100 {
  margin-bottom: 100px !important; }

.u-mgn-l100 {
  margin-left: 100px !important; }

.u-pdg-t100 {
  padding-top: 100px !important; }

.u-pdg-r100 {
  padding-right: 100px !important; }

.u-pdg-b100 {
  padding-bottom: 100px !important; }

.u-pdg-l100 {
  padding-left: 100px !important; }

@-webkit-keyframes loading {
  0% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); }
  3% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); }
  47% {
    -webkit-transform: translateX(3px);
            transform: translateX(3px); }
  53% {
    -webkit-transform: translateX(3px);
            transform: translateX(3px); }
  97% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); }
  100% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); } }

@keyframes loading {
  0% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); }
  3% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); }
  47% {
    -webkit-transform: translateX(3px);
            transform: translateX(3px); }
  53% {
    -webkit-transform: translateX(3px);
            transform: translateX(3px); }
  97% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); }
  100% {
    -webkit-transform: translateX(-3px);
            transform: translateX(-3px); } }

@-webkit-keyframes down {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  70% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  75% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px); }
  80% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  85% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px); }
  90% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes down {
  0% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  70% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  75% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px); }
  80% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  85% {
    -webkit-transform: translateY(2px);
            transform: translateY(2px); }
  90% {
    -webkit-transform: translateY(0);
            transform: translateY(0); }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

.p-home,
.p-home .g-header:after,
.p-home .g-footer {
  background-color: #f2f2f2; }

.p-home .l-main {
  padding: calc(100vh - 70px) 0 0; }

@media screen and (max-width: 960px) {
  .p-home .l-main {
    padding-top: calc(100vh - 80px); } }

@media screen and (max-width: 500px) {
  .p-home .l-main {
    padding-top: calc(100vh - 144px); } }

.home-content {
  position: relative;
  width: 100%;
  padding-bottom: 85px;
  background-color: #f2f2f2;
  z-index: 10; }
  @media screen and (max-width: 960px) {
    .home-content {
      padding-bottom: 40px; } }

/*============================
.home-mainVisual
============================*/
.home-mainVisual {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100vh - 70px);
  background-color: #e0e1e1;
  overflow: hidden; }
  @media screen and (max-width: 960px) {
    .home-mainVisual {
      height: calc(100vh - 80px); } }
  @media screen and (max-width: 500px) {
    .home-mainVisual {
      height: calc(100vh - 144px); } }

.home-mainVisual_title {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  text-align: center;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  font-size: 54px;
  font-size: 5.4rem;
  z-index: 2;
  letter-spacing: 0.2em; }
  .home-mainVisual_title span {
    display: inline-block;
    color: #111;
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
    .no-js .home-mainVisual_title span {
      opacity: 1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .home-mainVisual_title.onscreen span {
    color: #111; }
  @media screen and (max-width: 960px) {
    .home-mainVisual_title {
      font-size: 34px;
      font-size: 3.4rem; } }
  @media screen and (max-width: 500px) {
    .home-mainVisual_title {
      font-size: 25px;
      font-size: 2.5rem;
      letter-spacing: 0.16em; } }

.home-mainVisual_grid {
  position: absolute;
  overflow: hidden; }
  .home-mainVisual_grid._1 {
    top: 0;
    left: 0;
    width: 50%;
    height: 100%; }
  .home-mainVisual_grid._2 {
    top: 0;
    right: 0;
    width: 50%;
    height: 50%; }
  .home-mainVisual_grid._3 {
    bottom: 0;
    right: 0;
    width: 25%;
    height: 50%; }
  .home-mainVisual_grid._4 {
    bottom: 0;
    right: 25%;
    width: 25%;
    height: 50%; }
  @media screen and (max-width: 500px) {
    .home-mainVisual_grid._1 {
      left: auto;
      height: 100%; }
    .home-mainVisual_grid._2 {
      top: 0;
      bottom: auto;
      right: 0;
      width: 50%;
      height: 50%; }
    .home-mainVisual_grid._3 {
      width: 50%;
      height: 50%; }
    .home-mainVisual_grid._4 {
      top: 0;
      right: 0;
      bottom: auto;
      display: none; } }

.home-mainVisual_image {
  width: 100%;
  height: 100%;
  -webkit-transform: scale(1.2);
      -ms-transform: scale(1.2);
          transform: scale(1.2);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  background: 50% 50% /cover no-repeat; }
  .no-js .home-mainVisual_image {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  .home-mainVisual_image img {
    display: none; }
  .home-mainVisual_image._1 {
    background-image: url(../img/home/img_01_v2.jpg); }
  .home-mainVisual_image._2 {
    background-image: url(../img/home/img_02_v2.jpg); }
  .home-mainVisual_image._3 {
    background-image: url(../img/home/img_03_v3.jpg); }
  .home-mainVisual_image._4 {
    background-image: url(../img/home/img_04_v2.jpg); }
  .home-mainVisual_image._1 {
    -webkit-transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s; }
  .home-mainVisual_image._2 {
    -webkit-transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s; }
  .home-mainVisual_image._3 {
    -webkit-transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s; }
  .home-mainVisual_image._4 {
    -webkit-transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s;
    transition: transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s, opacity 0.4s ease 0.2s, -webkit-transform 3s cubic-bezier(0, 0.48, 0.01, 1) 0.2s; }
  .home-mainVisual_image.onscreen {
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }
  @media screen and (max-width: 500px) {
    .home-mainVisual_image._1 {
      background-image: url(../img/home/mb_img_01_v2.jpg); }
    .home-mainVisual_image._2 {
      background-image: url(../img/home/mb_img_02_v3.jpg); }
    .home-mainVisual_image._3 {
      background-image: url(../img/home/mb_img_03_v3.jpg); }
    .home-mainVisual_image._4 {
      background-image: none; } }

/*============================
.Home-news
============================*/
.Home-news {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 20px;
  padding-bottom: 4.2em;
  line-height: 1.6;
  padding-left: 6%;
  padding-right: 6%; }
  .Home-news:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 50px;
    height: 2px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
    background-color: #111; }
  @media screen and (max-width: 500px) {
    .Home-news {
      padding-top: 13px;
      padding-bottom: 3em; }
      .Home-news:after {
        width: 30px; } }

.Home-news_heading {
  display: inline-block;
  margin-bottom: 0.2em;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.16em;
  text-align: center; }
  @media screen and (min-width: 960px) {
    .Home-news_heading {
      margin-right: 1.8em; } }
  @media screen and (max-width: 960px) {
    .Home-news_heading {
      width: 100%; } }
  @media screen and (max-width: 500px) {
    .Home-news_heading {
      font-size: 12px;
      font-size: 1.2rem; } }

a.Home-news_link {
  display: inline-block;
  text-decoration: none;
  color: #111;
  -webkit-transition: all 0.4s ease 0s;
  transition: all 0.4s ease 0s;
  letter-spacing: 0; }
  .ua-desktop a.Home-news_link:hover {
    opacity: 0.6;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; }
    .ua-desktop a.Home-news_link:hover .Home-news-item_date,
    .ua-desktop a.Home-news_link:hover .Home-news-item_text {
      border-color: #9a9a9a; }
  @media screen and (max-width: 500px) {
    a.Home-news_link {
      width: 100%; } }

.Home-news-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  @media screen and (max-width: 500px) {
    .Home-news-item {
      width: 100%;
      line-height: 2.2; } }

.Home-news-item_date {
  display: block;
  margin-right: 1.8em;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  font-size: 17px;
  font-size: 1.7rem;
  letter-spacing: 0.16em; }
  .Home-news-item_date span {
    padding-bottom: 2px;
    border-bottom: 1px solid #111;
    -webkit-transition: border 0.4s ease 0s;
    transition: border 0.4s ease 0s; }
  @media screen and (max-width: 960px) {
    .Home-news-item_date {
      width: 130px;
      margin-right: 0; } }
  @media screen and (max-width: 500px) {
    .Home-news-item_date {
      width: 90px;
      font-size: 11px;
      font-size: 1.1rem; } }

.Home-news-item_text {
  display: block;
  font-size: 16px;
  font-size: 1.6rem; }
  .Home-news-item_text span {
    padding-bottom: 2px;
    border-bottom: 1px solid #111;
    -webkit-transition: border 0.4s ease 0s;
    transition: border 0.4s ease 0s; }
  @media screen and (max-width: 960px) {
    .Home-news-item_text {
      width: calc(100% - 130px); } }
  @media screen and (max-width: 500px) {
    .Home-news-item_text {
      width: calc(100% - 90px);
      font-size: 11px;
      font-size: 1.1rem; } }

/*============================
.home-description
============================*/
.home-description {
  padding-top: 50px;
  text-align: center;
  font-size: 18px;
  font-size: 1.8rem; }
  @media screen and (max-width: 960px) {
    .home-description {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (max-width: 500px) {
    .home-description {
      padding-top: 35px;
      font-size: 12px;
      font-size: 1.2rem; } }

/*============================
.home-nav
============================*/
.home-nav {
  padding-top: 70px;
  text-align: center;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  line-height: 1; }
  .home-nav a {
    color: #111; }

.home-nav_item {
  display: inline-block;
  margin-left: -0.16em;
  padding: 0 19px;
  font-size: 26px;
  font-size: 2.6rem;
  letter-spacing: 0.16em; }

.home-nav_link {
  display: block;
  text-decoration: none;
  -webkit-transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }
  .ua-desktop .home-nav_link:hover {
    opacity: 0.4;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=40)"; }

@media screen and (max-width: 960px) {
  .home-nav {
    padding-top: 50px; }
  .home-nav_item {
    font-size: 18px;
    font-size: 1.8rem;
    margin-bottom: 20px;
    padding: 0 15px; } }

.p-about,
.p-about .g-header:after,
.p-about .g-footer {
  background-color: #cfd3c5; }

.p-about .l-content {
  text-align: center; }

/*============================
.about-hero
============================*/
.about-hero {
  width: 100%;
  height: 580px;
  margin-top: 110px;
  background: url(../img/about/img_hero.jpg) 50% 50%/cover no-repeat; }
  @media screen and (max-width: 960px) {
    .about-hero {
      height: 0;
      margin-top: 55px;
      padding-bottom: 100%;
      background: url(../img/about/mb_img_hero.jpg) 50% 50%/cover no-repeat; } }
  .about-hero img {
    display: none; }

.about-heading {
  margin-top: 70px;
  margin-left: -0.13em;
  font-size: 36px;
  font-size: 3.6rem;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  line-height: 1.4;
  letter-spacing: 0.13em; }
  @media screen and (max-width: 960px) {
    .about-heading {
      font-size: 28px;
      font-size: 2.8rem; } }
  @media screen and (max-width: 500px) {
    .about-heading {
      margin-top: 35px;
      font-size: 19px;
      font-size: 1.9rem; } }

.about-txt1 {
  margin-top: 40px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2; }
  @media screen and (max-width: 960px) {
    .about-txt1 {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (max-width: 500px) {
    .about-txt1 {
      margin-top: 30px;
      font-size: 12px;
      font-size: 1.2rem; } }

.about-txt2 {
  margin-top: 42px; }
  @media screen and (max-width: 960px) {
    .about-txt2 {
      font-size: 12px;
      font-size: 1.2rem; } }
  @media screen and (max-width: 500px) {
    .about-txt2 {
      margin-top: 30px;
      font-size: 10px;
      font-size: 1rem; } }

.about-ico-down {
  margin: 1em 0;
  color: #bbb; }
  @media screen and (max-width: 500px) {
    .about-ico-down {
      font-size: 10px;
      font-size: 1rem; } }

/*============================
.about-product-detail
============================*/
.about-product-detail {
  position: relative;
  margin-top: 65px; }
  .about-product-detail._detail1 {
    padding-top: 65px; }
    .about-product-detail._detail1:before {
      content: '';
      position: absolute;
      top: 0;
      left: 50%;
      width: 60px;
      height: 2px;
      background-color: #eee;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%); }
  @media screen and (max-width: 500px) {
    .about-product-detail {
      margin-top: 40px; }
      .about-product-detail._detail1 {
        padding-top: 40px; }
        .about-product-detail._detail1:before {
          height: 1px; } }

.about-product-detail_heading {
  font-size: 22px;
  font-size: 2.2rem; }
  @media screen and (max-width: 960px) {
    .about-product-detail_heading {
      font-size: 18px;
      font-size: 1.8rem; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_heading {
      font-size: 14px;
      font-size: 1.4rem; } }

.about-product-detail_product {
  margin-top: 26px; }
  .about-product-detail_product:nth-of-type(1) {
    margin-top: 20px; }
  .about-product-detail_product dt {
    font-weight: bold; }
  @media screen and (max-width: 960px) {
    .about-product-detail_product {
      font-size: 12px;
      font-size: 1.2rem;
      padding-left: 5.3%;
      padding-right: 5.3%; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_product {
      margin-top: 15px;
      font-size: 10px;
      font-size: 1rem; }
      .about-product-detail_product:nth-of-type(1) {
        margin-top: 15px; } }

.about-product-detail_lead {
  margin-top: 26px; }
  @media screen and (max-width: 960px) {
    .about-product-detail_lead {
      font-size: 12px;
      font-size: 1.2rem;
      padding-left: 5.3%;
      padding-right: 5.3%; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_lead {
      margin-top: 15px;
      font-size: 10px;
      font-size: 1rem; } }

.about-product-detail_more {
  margin: 26px 0 40px; }
  .about-product-detail_more a {
    position: relative;
    padding-bottom: 0.3rem;
    text-decoration: none; }
    .about-product-detail_more a:after {
      content: '';
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #670;
      -webkit-transition: opacity 0.3s ease-in-out 0s;
      transition: opacity 0.3s ease-in-out 0s; }
    .ua-desktop .about-product-detail_more a:hover:after {
      opacity: 0.1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; }
  @media screen and (max-width: 960px) {
    .about-product-detail_more {
      font-size: 12px;
      font-size: 1.2rem; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_more {
      margin-top: 20px;
      font-size: 10px;
      font-size: 1rem; } }

/*============================
.about-product-detail_content
============================*/
.about-product-detail_content {
  display: none;
  background-color: #ebede6;
  text-align: center; }

.about-product-detail_content-inner {
  margin: 0 auto;
  padding: 80px 0; }
  .about-product-detail_content-inner._detail1 {
    max-width: 980px; }
  .about-product-detail_content-inner._detail2 {
    max-width: 640px; }
    @media screen and (max-width: 960px) {
      .about-product-detail_content-inner._detail2 {
        padding-left: 5.3%;
        padding-right: 5.3%; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_content-inner {
      padding: 40px 0; } }

.about-product-detail_title1 {
  margin: 0 0 90px -0.18em;
  line-height: 1.6;
  font-size: 40px;
  font-size: 4rem;
  letter-spacing: 0.18em;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif; }
  @media screen and (max-width: 960px) {
    .about-product-detail_title1 {
      font-size: 26px;
      font-size: 2.6rem;
      margin-bottom: 70px; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_title1 {
      margin: 0 0 45px -0.18em;
      font-size: 20px;
      font-size: 2rem; } }

.about-product-detail_title2 {
  margin: 0 0 20px -0.08em;
  line-height: 1.4;
  font-size: 22px;
  font-size: 2.2rem;
  letter-spacing: 0.08em;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif; }
  @media screen and (max-width: 960px) {
    .about-product-detail_title2 {
      font-size: 18px;
      font-size: 1.8rem; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_title2 {
      margin-bottom: 15px;
      font-size: 12px;
      font-size: 1.2rem; } }

.about-product-detail_title3 {
  margin: 0 0 0 -0.08em;
  line-height: 1.8;
  font-size: 20px;
  font-size: 2rem;
  letter-spacing: 0.08em; }
  @media screen and (max-width: 960px) {
    .about-product-detail_title3 {
      font-size: 17px;
      font-size: 1.7rem; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_title3 {
      font-size: 12px;
      font-size: 1.2rem; } }

.about-product-detail_more .fa {
  padding-left: 0.3em; }
  .about-product-detail_more .fa:before {
    display: block;
    -webkit-transition: -webkit-transform 0.3s ease-in-out 0s;
    transition: -webkit-transform 0.3s ease-in-out 0s;
    transition: transform 0.3s ease-in-out 0s;
    transition: transform 0.3s ease-in-out 0s, -webkit-transform 0.3s ease-in-out 0s;
    -webkit-transform-origin: 50% 50%;
        -ms-transform-origin: 50% 50%;
            transform-origin: 50% 50%; }

.is-slide-open .about-product-detail_more .fa:before {
  -webkit-transform: rotate(-180deg);
      -ms-transform: rotate(-180deg);
          transform: rotate(-180deg); }

.about-product-detail_text1 {
  font-size: 16px;
  font-size: 1.6rem; }
  @media screen and (max-width: 960px) {
    .about-product-detail_text1 {
      font-size: 12px;
      font-size: 1.2rem;
      padding-left: 5.3%;
      padding-right: 5.3%; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_text1 {
      font-size: 10px;
      font-size: 1rem; } }

.about-product-detail_text2 {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400; }
  @media screen and (max-width: 960px) {
    .about-product-detail_text2 {
      font-size: 12px;
      font-size: 1.2rem;
      padding-left: 5.3%;
      padding-right: 5.3%; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_text2 {
      font-size: 10px;
      font-size: 1rem; } }

.about-product-detail_text3 {
  font-size: 12px;
  font-size: 1.2rem; }
  @media screen and (max-width: 960px) {
    .about-product-detail_text3 {
      padding-left: 5.3%;
      padding-right: 5.3%; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_text3 {
      font-size: 10px;
      font-size: 1rem; } }

.about-product-detail_codicil {
  margin-top: 5px;
  font-size: 12px;
  font-size: 1.2rem; }
  @media screen and (max-width: 500px) {
    .about-product-detail_codicil {
      font-size: 9px;
      font-size: 0.9rem; } }

.about-product-detail_illust {
  margin: 20px auto 0; }
  .about-product-detail_illust img {
    max-width: 100%;
    height: auto; }
  @media screen and (max-width: 500px) {
    .about-product-detail_illust {
      width: 250px; } }

.about-product-detail_list {
  margin-top: 50px;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem; }
  .about-product-detail_list li {
    margin-left: 1.6em;
    padding-left: 1.8em;
    margin-bottom: 10px;
    list-style: decimal-leading-zero outside; }
  @media screen and (max-width: 960px) {
    .about-product-detail_list {
      font-size: 12px;
      font-size: 1.2rem; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_list {
      margin-top: 30px;
      margin-left: 1em;
      font-size: 10px;
      font-size: 1rem; }
      .about-product-detail_list li {
        margin-left: 1.2em;
        padding-left: 1.4em;
        margin-bottom: 5px; } }

.about-product-detail_codicils {
  margin-top: 40px;
  text-align: left;
  font-size: 12px;
  font-size: 1.2rem; }
  .about-product-detail_codicils li {
    margin-bottom: 0.8em;
    line-height: 1.5;
    padding-left: 2em;
    text-indent: -2em; }
    .about-product-detail_codicils li:last-child {
      margin-bottom: 0; }
  @media screen and (max-width: 960px) {
    .about-product-detail_codicils {
      font-size: 10px;
      font-size: 1rem; } }
  @media screen and (max-width: 500px) {
    .about-product-detail_codicils {
      margin-top: 30px;
      font-size: 9px;
      font-size: 0.9rem; } }

.about-product-detail_separator {
  margin: 50px auto;
  text-align: center;
  border: none;
  border-bottom: 2px solid #fff; }
  @media screen and (max-width: 500px) {
    .about-product-detail_separator {
      margin: 25px auto;
      border-width: 1px; } }

.p-product,
.p-product .g-header:after,
.p-product .g-footer {
  background-color: #e0e0da; }

/*============================
.product-menu
============================*/
.product-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 90px; }
  @media screen and (max-width: 500px) {
    .product-menu {
      margin-top: 40px; } }

@media screen and (min-width: 960px) {
  .product-menu_item {
    min-width: 305px; }
    .product-menu_item:not(:last-child) {
      margin-right: 2em; } }

@media screen and (min-width: 500px) and (max-width: 960px) {
  .product-menu_item:not(:last-child) {
    margin-right: 1.5em; } }

@media screen and (max-width: 500px) {
  .product-menu_item {
    width: 47%; }
    .product-menu_item:not(:last-child) {
      margin-right: 1em; } }

.product-menu_btn {
  display: block;
  width: 100%;
  padding: 0.6em 1.6em;
  border: none;
  outline: none;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background: none;
  border-radius: 20px;
  font-size: 18px;
  font-size: 1.8rem;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  letter-spacing: 0.1em;
  line-height: 1.1;
  text-align: center;
  font-weight: 300;
  -webkit-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s; }
  .product-menu_btn._refresh {
    background-color: #fff;
    color: #000; }
  .product-menu_btn._relax {
    background-color: #cccccc;
    color: #fff; }
  .ua-desktop .product-menu_btn:hover {
    opacity: 0.85;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; }
  .product-menu_btn.is-selected._refresh, .product-menu_btn.is-selected._relax {
    background-color: #000;
    color: #fff; }
  @media screen and (max-width: 960px) {
    .product-menu_btn {
      font-size: 14px;
      font-size: 1.4rem; } }
  @media screen and (max-width: 500px) {
    .product-menu_btn {
      padding: 0.8em 0 0.9em;
      font-size: 11px;
      font-size: 1.1rem;
      letter-spacing: 0.08em;
      font-weight: 500; } }

/*============================
.product-series
============================*/
.product-series {
  margin-top: 100px;
  padding-bottom: 40px; }
  @media screen and (max-width: 500px) {
    .product-series {
      margin-top: 45px; } }

.product-series_title {
  font-size: 26px;
  font-size: 2.6rem;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  line-height: 1.5;
  letter-spacing: 0.2em;
  text-align: center; }
  @media screen and (max-width: 500px) {
    .product-series_title {
      font-size: 18px;
      font-size: 1.8rem; } }

/*============================
.product-item
============================*/
.product-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  max-width: 800px;
  margin: 110px auto 0; }
  .product-item:first-of-type {
    margin-top: 70px; }
  .product-item._row-reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse; }
  .product-item .fa {
    padding-left: 0.3em; }
  @media screen and (max-width: 500px) {
    .product-item {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column wrap;
              flex-flow: column wrap;
      margin-top: 60px; }
      .product-item:first-of-type {
        margin-top: 50px; } }

.product-item_image {
  width: 47%; }
  .product-item_image img {
    max-width: 100%;
    height: auto; }
  @media screen and (max-width: 500px) {
    .product-item_image {
      width: 100%;
      text-align: center; }
      .product-item_image img {
        width: 100%; } }

.product-item_detail {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  width: 43%; }
  @media screen and (max-width: 500px) {
    .product-item_detail {
      width: 100%;
      margin-top: 35px; } }

.product-item_codicils {
  margin-top: 0.7em;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1.4; }
  .product-item_codicils li:not(:last-child) {
    margin-bottom: 0.3em; }

.product-item_detail_top {
  width: 100%; }

.product-item_detail_bottom {
  width: 100%;
  margin-top: auto; }

.product-item_description dt {
  margin-top: -0.4em;
  font-size: 19px;
  font-size: 1.9rem;
  line-height: 1.6; }

.product-item_description dd {
  margin-top: 18px;
  line-height: 1.8; }

@media screen and (max-width: 960px) {
  .product-item_description dt {
    font-size: 17px;
    font-size: 1.7rem; } }

@media screen and (max-width: 500px) {
  .product-item_description dt {
    font-size: 14px;
    font-size: 1.4rem; }
  .product-item_description dd {
    margin-top: 6px;
    font-size: 10px;
    font-size: 1rem; } }

.product-item_name {
  line-height: 1.6; }
  @media screen and (max-width: 500px) {
    .product-item_name {
      margin-top: 40px;
      font-size: 11px;
      font-size: 1.1rem; } }

.product-item_variations {
  margin: 24px 0 30px; }
  .product-item_variations li {
    margin-bottom: 14px;
    line-height: 1.7; }
    .product-item_variations li:last-child {
      margin-bottom: 0; }
  .product-item_variations .link {
    font-size: 12px;
    font-size: 1.2rem;
    position: relative;
    padding-bottom: 0.3rem;
    text-decoration: none; }
    .product-item_variations .link:after {
      content: '';
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #670;
      -webkit-transition: opacity 0.3s ease-in-out 0s;
      transition: opacity 0.3s ease-in-out 0s; }
    .ua-desktop .product-item_variations .link:hover:after {
      opacity: 0.1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; }
  @media screen and (max-width: 500px) {
    .product-item_variations {
      margin: 20px 0 20px;
      font-size: 11px;
      font-size: 1.1rem; }
      .product-item_variations .link {
        font-size: 10px;
        font-size: 1rem; } }

.product-item_ingredients {
  margin-top: 0.8em;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1; }
  .product-item_ingredients a {
    text-decoration: none;
    color: #777; }
  @media screen and (max-width: 500px) {
    .product-item_ingredients {
      font-size: 10px;
      font-size: 1rem; } }

.product-howtouse-hairmask {
  margin-top: 60px; }
  @media screen and (max-width: 500px) {
    .product-howtouse-hairmask {
      padding: 0 5%;
      margin-top: 50px; } }

.product-howtouse-step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 560px;
  margin: 0 auto; }
  .product-howtouse-step:not(:last-of-type) {
    margin-bottom: 45px; }
  @media screen and (max-width: 500px) {
    .product-howtouse-step:not(:last-of-type) {
      margin-bottom: 30px; } }

.product-howtouse-step_text-block {
  width: 56%; }
  .product-howtouse-step_text-block dt {
    font-size: 20px;
    font-size: 2rem;
    font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif; }
  .product-howtouse-step_text-block dd {
    font-size: 12px;
    font-size: 1.2rem; }
  .product-howtouse-step_text-block .point {
    margin-top: 1em;
    font-size: 11px;
    font-size: 1.1rem; }
  @media screen and (max-width: 500px) {
    .product-howtouse-step_text-block {
      width: 50%; }
      .product-howtouse-step_text-block dt {
        font-size: 15px;
        font-size: 1.5rem; }
      .product-howtouse-step_text-block dd {
        font-size: 9px;
        font-size: 0.9rem; }
      .product-howtouse-step_text-block .point {
        font-size: 8px;
        font-size: 0.8rem; } }

.product-howtouse-step_image-block {
  width: 40%;
  padding-left: 1em;
  text-align: center; }
  .product-howtouse-step_image-block img {
    max-width: 100%;
    height: auto; }
  @media screen and (max-width: 500px) {
    .product-howtouse-step_image-block {
      width: 50%;
      padding-left: 0; }
      ._1 .product-howtouse-step_image-block img {
        width: 52%; } }

.p-press,
.p-press .g-header:after,
.p-press .g-footer {
  background-color: #eae8d4; }

/*============================
 media
============================*/
.press-media-container {
  width: 102.04082%;
  margin: 16.32653% 0 0 -2.04082%; }

.press-media {
  position: relative;
  float: left;
  display: block;
  width: 23%;
  padding-bottom: 23%;
  margin: 0 0 2% 2%;
  text-align: center;
  -webkit-transform: translateY(20px);
      -ms-transform: translateY(20px);
          transform: translateY(20px);
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  -webkit-transition: width 0.4s ease 0s, padding 0.4s ease 0s, opacity 0.8s ease 0s, -webkit-transform 1s ease 0s;
  transition: width 0.4s ease 0s, padding 0.4s ease 0s, opacity 0.8s ease 0s, -webkit-transform 1s ease 0s;
  transition: width 0.4s ease 0s, padding 0.4s ease 0s, opacity 0.8s ease 0s, transform 1s ease 0s;
  transition: width 0.4s ease 0s, padding 0.4s ease 0s, opacity 0.8s ease 0s, transform 1s ease 0s, -webkit-transform 1s ease 0s; }
  .press-media.onscreen {
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; }

@media screen and (max-width: 1000px) {
  .press-media-container {
    width: 102.04082%;
    margin-left: -2%; }
  .press-media {
    width: 23%;
    padding-bottom: 23%;
    margin: 0 0 2% 2%; } }

@media screen and (max-width: 750px) {
  .press-media-container {
    width: 102.73973%;
    margin-left: -2.66667%; }
  .press-media {
    width: 30.66667%;
    padding-bottom: 30.66667%;
    margin: 0 0 2.66667% 2.66667%; } }

@media screen and (max-width: 500px) {
  .press-media-container {
    width: 104.16667%;
    margin-left: -4%; }
  .press-media {
    width: 46%;
    padding-bottom: 46%;
    margin: 0 0 4% 4%; } }

.press-media_link {
  position: absolute;
  top: 0;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  padding: 5%;
  background-color: #fff;
  -webkit-transition: background 0.6s ease 0s;
  transition: background 0.6s ease 0s; }
  .ua-desktop .press-media_link:hover {
    background-color: #f1f0e4; }

.press-media_title,
.press-media_text {
  display: none; }

.press-media_image {
  padding: 20%;
  text-align: center;
  -webkit-transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s;
  transition: opacity 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s; }
  .press-media_image img {
    max-width: 100%;
    height: auto; }

.press-comingsoon {
  margin-top: 16vh;
  font-size: 40px;
  font-size: 4rem;
  line-height: 1;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  letter-spacing: 0.16em;
  text-align: center; }
  @media screen and (max-width: 500px) {
    .press-comingsoon {
      font-size: 25px;
      font-size: 2.5rem; } }

/*============================
 modal
============================*/
.press-detail-image {
  text-align: center; }
  .press-detail-image img {
    max-width: 100%;
    height: auto; }

.press-detail-title {
  margin-top: 60px;
  line-height: 1.5;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center; }
  @media screen and (max-width: 500px) {
    .press-detail-title {
      margin-top: 30px;
      font-size: 10px;
      font-size: 1rem; } }

.press-detail-text {
  margin-top: 30px; }
  @media screen and (max-width: 500px) {
    .press-detail-text {
      margin-top: 15px;
      font-size: 12px;
      font-size: 1.2rem; } }

.p-shop,
.p-shop .g-header:after,
.p-shop .g-footer {
  background-color: #eee; }

.shop-lead {
  margin-top: 70px;
  text-align: center;
  font-size: 22px;
  font-size: 2.2rem; }
  @media screen and (max-width: 500px) {
    .shop-lead {
      font-size: 13px;
      font-size: 1.3rem; } }

/*============================
shop list
============================*/
.shop-shoplist-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  margin-top: 34px;
  padding-top: 40px;
  border-top: 2px solid #111; }
  @media screen and (max-width: 500px) {
    .shop-shoplist-container {
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-flow: column wrap;
              flex-flow: column wrap;
      margin-top: 16px;
      padding-top: 30px;
      border-width: 1px; } }

.shop-real-store {
  width: 81.63%;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .shop-real-store .shop-shoplist_item {
    width: 24.68354%; }
  @media screen and (max-width: 960px) {
    .shop-real-store {
      width: 100%; }
      .shop-real-store .shop-shoplist_item {
        width: 33%; } }
  @media screen and (max-width: 500px) {
    .shop-real-store {
      width: 100%;
      text-align: center; }
      .shop-real-store .shop-shoplist_item {
        width: 100%; } }

.shop-online-store {
  width: 18.36735%; }
  .shop-online-store .shop-shoplist_item {
    width: 100%; }
  .shop-online-store .shop-shoplist_item_link a {
    color: #d48907; }
    .shop-online-store .shop-shoplist_item_link a:after {
      background-color: #d48907; }
  @media screen and (max-width: 960px) {
    .shop-online-store {
      width: 100%;
      margin-top: 50px; } }
  @media screen and (max-width: 500px) {
    .shop-online-store {
      margin-top: 50px;
      text-align: center; } }

.shop-heading {
  height: 86px;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.3; }
  @media screen and (max-width: 960px) {
    .shop-heading {
      height: 60px;
      text-align: center; }
      .shop-heading br {
        display: none; } }
  @media screen and (max-width: 500px) {
    .shop-heading {
      height: auto;
      margin-bottom: 35px;
      font-size: 14px;
      font-size: 1.4rem; } }

.shop-shoplist {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap; }
  .shop-shoplist a {
    text-decoration: underline; }
    .ua-desktop .shop-shoplist a:hover {
      text-decoration: none; }

.shop-shoplist_item {
  padding-bottom: 2.8em; }
  @media screen and (max-width: 500px) {
    .shop-shoplist_item {
      padding-bottom: 1.8em; } }

.shop-shoplist_item_name {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4; }
  .shop-shoplist_item_name span {
    font-size: 12px;
    font-size: 1.2rem; }
  @media screen and (max-width: 500px) {
    .shop-shoplist_item_name {
      font-size: 13px;
      font-size: 1.3rem; }
      .shop-shoplist_item_name span {
        font-size: 9px;
        font-size: 0.9rem; } }

.shop-shoplist_item_link {
  margin-top: 8px;
  line-height: 1.4;
  font-size: 12px;
  font-size: 1.2rem; }
  .shop-shoplist_item_link .fa {
    padding-left: 0.3em; }
  .shop-shoplist_item_link a {
    position: relative;
    padding-bottom: 0.3rem;
    text-decoration: none; }
    .shop-shoplist_item_link a:after {
      content: '';
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #670;
      -webkit-transition: opacity 0.3s ease-in-out 0s;
      transition: opacity 0.3s ease-in-out 0s; }
    .ua-desktop .shop-shoplist_item_link a:hover:after {
      opacity: 0.1;
      -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; }
  @media screen and (max-width: 500px) {
    .shop-shoplist_item_link {
      font-size: 10px;
      font-size: 1rem; } }

.shop-shoplist_item_link2 {
  margin: 35px 0 0 1em; }
  @media screen and (max-width: 500px) {
    .shop-shoplist_item_link2 {
      margin: 35px 0 0 0; } }

/*============================
shop contact
============================*/
.shop-contact {
  margin-top: 90px;
  text-align: center; }

.shop-contact_text {
  margin-bottom: 2em;
  font-size: 16px;
  font-size: 1.6rem; }
  @media screen and (max-width: 500px) {
    .shop-contact_text {
      margin-bottom: 1.5em;
      font-size: 12px;
      font-size: 1.2rem; } }

.p-news,
.p-news .g-header:after,
.p-news .g-footer {
  background-color: #d6d6d0; }

/*============================
.news-article
============================*/
.news-article {
  width: 100%;
  margin-bottom: 90px;
  padding-bottom: 75px;
  text-align: center; }
  .p-news-top .news-article {
    border-bottom: 2px solid #fff; }
  .news-article:nth-of-type(1) {
    margin-top: 120px; }

.news-article_title {
  font-size: 20px;
  font-size: 2rem; }
  .news-article_title a {
    text-decoration: none;
    color: #111; }
    .ua-desktop .news-article_title a:hover {
      text-decoration: underline; }

.news-article_date {
  margin-top: 16px;
  line-height: 1;
  font-size: 18px;
  font-size: 1.8rem; }

.news-article_body {
  max-width: 640px;
  margin: 35px auto 0;
  overflow: hidden; }

@media screen and (max-width: 500px) {
  .news-article {
    margin-bottom: 50px;
    padding-bottom: 25px; }
    .p-news-top .news-article {
      border-bottom: 1px solid #fff; }
    .news-article:nth-of-type(1) {
      margin-top: 70px; }
  .news-article_title {
    font-size: 14px;
    font-size: 1.4rem; }
  .news-article_date {
    margin-top: 6px;
    font-size: 13px;
    font-size: 1.3rem; }
  .news-article_body {
    margin-top: 18px; } }

.p-contact,
.p-contact .g-header:after,
.p-contact .g-footer {
  background-color: #e0e0da; }

.contact-email {
  margin: 160px 0;
  font-size: 24px;
  font-size: 2.4rem;
  font-family: "TPO Light", "Noto Sans Japanese", "Yu Gothic", "Meiryo", Hiragino Sans, Hiragino Kaku Gothic ProN, sans-serif;
  font-weight: 300;
  text-align: center;
  text-transform: uppercase;
  line-height: 1.1;
  letter-spacing: 0.13em; }
  @media screen and (max-width: 960px) {
    .contact-email {
      margin: 120px 0;
      font-size: 13px;
      font-size: 1.3rem; } }

a.contact-email_link {
  position: relative;
  display: inline-block;
  padding-bottom: 0.2em;
  text-decoration: none; }
  a.contact-email_link:after {
    content: '';
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #670;
    -webkit-transition: opacity 0.3s ease-in-out 0s;
    transition: opacity 0.3s ease-in-out 0s; }
  .ua-desktop a.contact-email_link:hover:after {
    opacity: 0.1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=10)"; }

/* FONT PATH
 * -------------------------- */
@font-face {
  font-family: 'FontAwesome';
  src: url("../font/font-awesome/fontawesome-webfont.eot?v=4.6.3");
  src: url("../font/font-awesome/fontawesome-webfont.eot?#iefix&v=4.6.3") format("embedded-opentype"), url("../font/font-awesome/fontawesome-webfont.woff2?v=4.6.3") format("woff2"), url("../font/font-awesome/fontawesome-webfont.woff?v=4.6.3") format("woff"), url("../font/font-awesome/fontawesome-webfont.ttf?v=4.6.3") format("truetype"), url("../font/font-awesome/fontawesome-webfont.svg?v=4.6.3#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }

.fa {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

/* makes the font 33% larger relative to the icon container */
.fa-lg {
  font-size: 1.33333em;
  line-height: 0.75em;
  vertical-align: -15%; }

.fa-2x {
  font-size: 2em; }

.fa-3x {
  font-size: 3em; }

.fa-4x {
  font-size: 4em; }

.fa-5x {
  font-size: 5em; }

.fa-fw {
  width: 1.28571em;
  text-align: center; }

.fa-ul {
  padding-left: 0;
  margin-left: 2.14286em;
  list-style-type: none; }
  .fa-ul > li {
    position: relative; }

.fa-li {
  position: absolute;
  left: -2.14286em;
  width: 2.14286em;
  top: 0.14286em;
  text-align: center; }
  .fa-li.fa-lg {
    left: -1.85714em; }

.fa-border {
  padding: .2em .25em .15em;
  border: solid 0.08em #eee;
  border-radius: .1em; }

.fa-pull-left {
  float: left; }

.fa-pull-right {
  float: right; }

.fa.fa-pull-left {
  margin-right: .3em; }

.fa.fa-pull-right {
  margin-left: .3em; }

/* Deprecated as of 4.4.0 */
.pull-right {
  float: right; }

.pull-left {
  float: left; }

.fa.pull-left {
  margin-right: .3em; }

.fa.pull-right {
  margin-left: .3em; }

.fa-spin {
  -webkit-animation: fa-spin 2s infinite linear;
  animation: fa-spin 2s infinite linear; }

.fa-pulse {
  -webkit-animation: fa-spin 1s infinite steps(8);
  animation: fa-spin 1s infinite steps(8); }

@-webkit-keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

@keyframes fa-spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg); } }

.fa-rotate-90 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg); }

.fa-rotate-180 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg); }

.fa-rotate-270 {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";
  -webkit-transform: rotate(270deg);
  -ms-transform: rotate(270deg);
  transform: rotate(270deg); }

.fa-flip-horizontal {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";
  -webkit-transform: scale(-1, 1);
  -ms-transform: scale(-1, 1);
  transform: scale(-1, 1); }

.fa-flip-vertical {
  -ms-filter: "progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)";
  -webkit-transform: scale(1, -1);
  -ms-transform: scale(1, -1);
  transform: scale(1, -1); }

:root .fa-rotate-90,
:root .fa-rotate-180,
:root .fa-rotate-270,
:root .fa-flip-horizontal,
:root .fa-flip-vertical {
  filter: none; }

.fa-stack {
  position: relative;
  display: inline-block;
  width: 2em;
  height: 2em;
  line-height: 2em;
  vertical-align: middle; }

.fa-stack-1x, .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center; }

.fa-stack-1x {
  line-height: inherit; }

.fa-stack-2x {
  font-size: 2em; }

.fa-inverse {
  color: #fff; }

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */
.fa-glass:before {
  content: ""; }

.fa-music:before {
  content: ""; }

.fa-search:before {
  content: ""; }

.fa-envelope-o:before {
  content: ""; }

.fa-heart:before {
  content: ""; }

.fa-star:before {
  content: ""; }

.fa-star-o:before {
  content: ""; }

.fa-user:before {
  content: ""; }

.fa-film:before {
  content: ""; }

.fa-th-large:before {
  content: ""; }

.fa-th:before {
  content: ""; }

.fa-th-list:before {
  content: ""; }

.fa-check:before {
  content: ""; }

.fa-remove:before,
.fa-close:before,
.fa-times:before {
  content: ""; }

.fa-search-plus:before {
  content: ""; }

.fa-search-minus:before {
  content: ""; }

.fa-power-off:before {
  content: ""; }

.fa-signal:before {
  content: ""; }

.fa-gear:before,
.fa-cog:before {
  content: ""; }

.fa-trash-o:before {
  content: ""; }

.fa-home:before {
  content: ""; }

.fa-file-o:before {
  content: ""; }

.fa-clock-o:before {
  content: ""; }

.fa-road:before {
  content: ""; }

.fa-download:before {
  content: ""; }

.fa-arrow-circle-o-down:before {
  content: ""; }

.fa-arrow-circle-o-up:before {
  content: ""; }

.fa-inbox:before {
  content: ""; }

.fa-play-circle-o:before {
  content: ""; }

.fa-rotate-right:before,
.fa-repeat:before {
  content: ""; }

.fa-refresh:before {
  content: ""; }

.fa-list-alt:before {
  content: ""; }

.fa-lock:before {
  content: ""; }

.fa-flag:before {
  content: ""; }

.fa-headphones:before {
  content: ""; }

.fa-volume-off:before {
  content: ""; }

.fa-volume-down:before {
  content: ""; }

.fa-volume-up:before {
  content: ""; }

.fa-qrcode:before {
  content: ""; }

.fa-barcode:before {
  content: ""; }

.fa-tag:before {
  content: ""; }

.fa-tags:before {
  content: ""; }

.fa-book:before {
  content: ""; }

.fa-bookmark:before {
  content: ""; }

.fa-print:before {
  content: ""; }

.fa-camera:before {
  content: ""; }

.fa-font:before {
  content: ""; }

.fa-bold:before {
  content: ""; }

.fa-italic:before {
  content: ""; }

.fa-text-height:before {
  content: ""; }

.fa-text-width:before {
  content: ""; }

.fa-align-left:before {
  content: ""; }

.fa-align-center:before {
  content: ""; }

.fa-align-right:before {
  content: ""; }

.fa-align-justify:before {
  content: ""; }

.fa-list:before {
  content: ""; }

.fa-dedent:before,
.fa-outdent:before {
  content: ""; }

.fa-indent:before {
  content: ""; }

.fa-video-camera:before {
  content: ""; }

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
  content: ""; }

.fa-pencil:before {
  content: ""; }

.fa-map-marker:before {
  content: ""; }

.fa-adjust:before {
  content: ""; }

.fa-tint:before {
  content: ""; }

.fa-edit:before,
.fa-pencil-square-o:before {
  content: ""; }

.fa-share-square-o:before {
  content: ""; }

.fa-check-square-o:before {
  content: ""; }

.fa-arrows:before {
  content: ""; }

.fa-step-backward:before {
  content: ""; }

.fa-fast-backward:before {
  content: ""; }

.fa-backward:before {
  content: ""; }

.fa-play:before {
  content: ""; }

.fa-pause:before {
  content: ""; }

.fa-stop:before {
  content: ""; }

.fa-forward:before {
  content: ""; }

.fa-fast-forward:before {
  content: ""; }

.fa-step-forward:before {
  content: ""; }

.fa-eject:before {
  content: ""; }

.fa-chevron-left:before {
  content: ""; }

.fa-chevron-right:before {
  content: ""; }

.fa-plus-circle:before {
  content: ""; }

.fa-minus-circle:before {
  content: ""; }

.fa-times-circle:before {
  content: ""; }

.fa-check-circle:before {
  content: ""; }

.fa-question-circle:before {
  content: ""; }

.fa-info-circle:before {
  content: ""; }

.fa-crosshairs:before {
  content: ""; }

.fa-times-circle-o:before {
  content: ""; }

.fa-check-circle-o:before {
  content: ""; }

.fa-ban:before {
  content: ""; }

.fa-arrow-left:before {
  content: ""; }

.fa-arrow-right:before {
  content: ""; }

.fa-arrow-up:before {
  content: ""; }

.fa-arrow-down:before {
  content: ""; }

.fa-mail-forward:before,
.fa-share:before {
  content: ""; }

.fa-expand:before {
  content: ""; }

.fa-compress:before {
  content: ""; }

.fa-plus:before {
  content: ""; }

.fa-minus:before {
  content: ""; }

.fa-asterisk:before {
  content: ""; }

.fa-exclamation-circle:before {
  content: ""; }

.fa-gift:before {
  content: ""; }

.fa-leaf:before {
  content: ""; }

.fa-fire:before {
  content: ""; }

.fa-eye:before {
  content: ""; }

.fa-eye-slash:before {
  content: ""; }

.fa-warning:before,
.fa-exclamation-triangle:before {
  content: ""; }

.fa-plane:before {
  content: ""; }

.fa-calendar:before {
  content: ""; }

.fa-random:before {
  content: ""; }

.fa-comment:before {
  content: ""; }

.fa-magnet:before {
  content: ""; }

.fa-chevron-up:before {
  content: ""; }

.fa-chevron-down:before {
  content: ""; }

.fa-retweet:before {
  content: ""; }

.fa-shopping-cart:before {
  content: ""; }

.fa-folder:before {
  content: ""; }

.fa-folder-open:before {
  content: ""; }

.fa-arrows-v:before {
  content: ""; }

.fa-arrows-h:before {
  content: ""; }

.fa-bar-chart-o:before,
.fa-bar-chart:before {
  content: ""; }

.fa-twitter-square:before {
  content: ""; }

.fa-facebook-square:before {
  content: ""; }

.fa-camera-retro:before {
  content: ""; }

.fa-key:before {
  content: ""; }

.fa-gears:before,
.fa-cogs:before {
  content: ""; }

.fa-comments:before {
  content: ""; }

.fa-thumbs-o-up:before {
  content: ""; }

.fa-thumbs-o-down:before {
  content: ""; }

.fa-star-half:before {
  content: ""; }

.fa-heart-o:before {
  content: ""; }

.fa-sign-out:before {
  content: ""; }

.fa-linkedin-square:before {
  content: ""; }

.fa-thumb-tack:before {
  content: ""; }

.fa-external-link:before {
  content: ""; }

.fa-sign-in:before {
  content: ""; }

.fa-trophy:before {
  content: ""; }

.fa-github-square:before {
  content: ""; }

.fa-upload:before {
  content: ""; }

.fa-lemon-o:before {
  content: ""; }

.fa-phone:before {
  content: ""; }

.fa-square-o:before {
  content: ""; }

.fa-bookmark-o:before {
  content: ""; }

.fa-phone-square:before {
  content: ""; }

.fa-twitter:before {
  content: ""; }

.fa-facebook-f:before,
.fa-facebook:before {
  content: ""; }

.fa-github:before {
  content: ""; }

.fa-unlock:before {
  content: ""; }

.fa-credit-card:before {
  content: ""; }

.fa-feed:before,
.fa-rss:before {
  content: ""; }

.fa-hdd-o:before {
  content: ""; }

.fa-bullhorn:before {
  content: ""; }

.fa-bell:before {
  content: ""; }

.fa-certificate:before {
  content: ""; }

.fa-hand-o-right:before {
  content: ""; }

.fa-hand-o-left:before {
  content: ""; }

.fa-hand-o-up:before {
  content: ""; }

.fa-hand-o-down:before {
  content: ""; }

.fa-arrow-circle-left:before {
  content: ""; }

.fa-arrow-circle-right:before {
  content: ""; }

.fa-arrow-circle-up:before {
  content: ""; }

.fa-arrow-circle-down:before {
  content: ""; }

.fa-globe:before {
  content: ""; }

.fa-wrench:before {
  content: ""; }

.fa-tasks:before {
  content: ""; }

.fa-filter:before {
  content: ""; }

.fa-briefcase:before {
  content: ""; }

.fa-arrows-alt:before {
  content: ""; }

.fa-group:before,
.fa-users:before {
  content: ""; }

.fa-chain:before,
.fa-link:before {
  content: ""; }

.fa-cloud:before {
  content: ""; }

.fa-flask:before {
  content: ""; }

.fa-cut:before,
.fa-scissors:before {
  content: ""; }

.fa-copy:before,
.fa-files-o:before {
  content: ""; }

.fa-paperclip:before {
  content: ""; }

.fa-save:before,
.fa-floppy-o:before {
  content: ""; }

.fa-square:before {
  content: ""; }

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
  content: ""; }

.fa-list-ul:before {
  content: ""; }

.fa-list-ol:before {
  content: ""; }

.fa-strikethrough:before {
  content: ""; }

.fa-underline:before {
  content: ""; }

.fa-table:before {
  content: ""; }

.fa-magic:before {
  content: ""; }

.fa-truck:before {
  content: ""; }

.fa-pinterest:before {
  content: ""; }

.fa-pinterest-square:before {
  content: ""; }

.fa-google-plus-square:before {
  content: ""; }

.fa-google-plus:before {
  content: ""; }

.fa-money:before {
  content: ""; }

.fa-caret-down:before {
  content: ""; }

.fa-caret-up:before {
  content: ""; }

.fa-caret-left:before {
  content: ""; }

.fa-caret-right:before {
  content: ""; }

.fa-columns:before {
  content: ""; }

.fa-unsorted:before,
.fa-sort:before {
  content: ""; }

.fa-sort-down:before,
.fa-sort-desc:before {
  content: ""; }

.fa-sort-up:before,
.fa-sort-asc:before {
  content: ""; }

.fa-envelope:before {
  content: ""; }

.fa-linkedin:before {
  content: ""; }

.fa-rotate-left:before,
.fa-undo:before {
  content: ""; }

.fa-legal:before,
.fa-gavel:before {
  content: ""; }

.fa-dashboard:before,
.fa-tachometer:before {
  content: ""; }

.fa-comment-o:before {
  content: ""; }

.fa-comments-o:before {
  content: ""; }

.fa-flash:before,
.fa-bolt:before {
  content: ""; }

.fa-sitemap:before {
  content: ""; }

.fa-umbrella:before {
  content: ""; }

.fa-paste:before,
.fa-clipboard:before {
  content: ""; }

.fa-lightbulb-o:before {
  content: ""; }

.fa-exchange:before {
  content: ""; }

.fa-cloud-download:before {
  content: ""; }

.fa-cloud-upload:before {
  content: ""; }

.fa-user-md:before {
  content: ""; }

.fa-stethoscope:before {
  content: ""; }

.fa-suitcase:before {
  content: ""; }

.fa-bell-o:before {
  content: ""; }

.fa-coffee:before {
  content: ""; }

.fa-cutlery:before {
  content: ""; }

.fa-file-text-o:before {
  content: ""; }

.fa-building-o:before {
  content: ""; }

.fa-hospital-o:before {
  content: ""; }

.fa-ambulance:before {
  content: ""; }

.fa-medkit:before {
  content: ""; }

.fa-fighter-jet:before {
  content: ""; }

.fa-beer:before {
  content: ""; }

.fa-h-square:before {
  content: ""; }

.fa-plus-square:before {
  content: ""; }

.fa-angle-double-left:before {
  content: ""; }

.fa-angle-double-right:before {
  content: ""; }

.fa-angle-double-up:before {
  content: ""; }

.fa-angle-double-down:before {
  content: ""; }

.fa-angle-left:before {
  content: ""; }

.fa-angle-right:before {
  content: ""; }

.fa-angle-up:before {
  content: ""; }

.fa-angle-down:before {
  content: ""; }

.fa-desktop:before {
  content: ""; }

.fa-laptop:before {
  content: ""; }

.fa-tablet:before {
  content: ""; }

.fa-mobile-phone:before,
.fa-mobile:before {
  content: ""; }

.fa-circle-o:before {
  content: ""; }

.fa-quote-left:before {
  content: ""; }

.fa-quote-right:before {
  content: ""; }

.fa-spinner:before {
  content: ""; }

.fa-circle:before {
  content: ""; }

.fa-mail-reply:before,
.fa-reply:before {
  content: ""; }

.fa-github-alt:before {
  content: ""; }

.fa-folder-o:before {
  content: ""; }

.fa-folder-open-o:before {
  content: ""; }

.fa-smile-o:before {
  content: ""; }

.fa-frown-o:before {
  content: ""; }

.fa-meh-o:before {
  content: ""; }

.fa-gamepad:before {
  content: ""; }

.fa-keyboard-o:before {
  content: ""; }

.fa-flag-o:before {
  content: ""; }

.fa-flag-checkered:before {
  content: ""; }

.fa-terminal:before {
  content: ""; }

.fa-code:before {
  content: ""; }

.fa-mail-reply-all:before,
.fa-reply-all:before {
  content: ""; }

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
  content: ""; }

.fa-location-arrow:before {
  content: ""; }

.fa-crop:before {
  content: ""; }

.fa-code-fork:before {
  content: ""; }

.fa-unlink:before,
.fa-chain-broken:before {
  content: ""; }

.fa-question:before {
  content: ""; }

.fa-info:before {
  content: ""; }

.fa-exclamation:before {
  content: ""; }

.fa-superscript:before {
  content: ""; }

.fa-subscript:before {
  content: ""; }

.fa-eraser:before {
  content: ""; }

.fa-puzzle-piece:before {
  content: ""; }

.fa-microphone:before {
  content: ""; }

.fa-microphone-slash:before {
  content: ""; }

.fa-shield:before {
  content: ""; }

.fa-calendar-o:before {
  content: ""; }

.fa-fire-extinguisher:before {
  content: ""; }

.fa-rocket:before {
  content: ""; }

.fa-maxcdn:before {
  content: ""; }

.fa-chevron-circle-left:before {
  content: ""; }

.fa-chevron-circle-right:before {
  content: ""; }

.fa-chevron-circle-up:before {
  content: ""; }

.fa-chevron-circle-down:before {
  content: ""; }

.fa-html5:before {
  content: ""; }

.fa-css3:before {
  content: ""; }

.fa-anchor:before {
  content: ""; }

.fa-unlock-alt:before {
  content: ""; }

.fa-bullseye:before {
  content: ""; }

.fa-ellipsis-h:before {
  content: ""; }

.fa-ellipsis-v:before {
  content: ""; }

.fa-rss-square:before {
  content: ""; }

.fa-play-circle:before {
  content: ""; }

.fa-ticket:before {
  content: ""; }

.fa-minus-square:before {
  content: ""; }

.fa-minus-square-o:before {
  content: ""; }

.fa-level-up:before {
  content: ""; }

.fa-level-down:before {
  content: ""; }

.fa-check-square:before {
  content: ""; }

.fa-pencil-square:before {
  content: ""; }

.fa-external-link-square:before {
  content: ""; }

.fa-share-square:before {
  content: ""; }

.fa-compass:before {
  content: ""; }

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
  content: ""; }

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
  content: ""; }

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
  content: ""; }

.fa-euro:before,
.fa-eur:before {
  content: ""; }

.fa-gbp:before {
  content: ""; }

.fa-dollar:before,
.fa-usd:before {
  content: ""; }

.fa-rupee:before,
.fa-inr:before {
  content: ""; }

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
  content: ""; }

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
  content: ""; }

.fa-won:before,
.fa-krw:before {
  content: ""; }

.fa-bitcoin:before,
.fa-btc:before {
  content: ""; }

.fa-file:before {
  content: ""; }

.fa-file-text:before {
  content: ""; }

.fa-sort-alpha-asc:before {
  content: ""; }

.fa-sort-alpha-desc:before {
  content: ""; }

.fa-sort-amount-asc:before {
  content: ""; }

.fa-sort-amount-desc:before {
  content: ""; }

.fa-sort-numeric-asc:before {
  content: ""; }

.fa-sort-numeric-desc:before {
  content: ""; }

.fa-thumbs-up:before {
  content: ""; }

.fa-thumbs-down:before {
  content: ""; }

.fa-youtube-square:before {
  content: ""; }

.fa-youtube:before {
  content: ""; }

.fa-xing:before {
  content: ""; }

.fa-xing-square:before {
  content: ""; }

.fa-youtube-play:before {
  content: ""; }

.fa-dropbox:before {
  content: ""; }

.fa-stack-overflow:before {
  content: ""; }

.fa-instagram:before {
  content: ""; }

.fa-flickr:before {
  content: ""; }

.fa-adn:before {
  content: ""; }

.fa-bitbucket:before {
  content: ""; }

.fa-bitbucket-square:before {
  content: ""; }

.fa-tumblr:before {
  content: ""; }

.fa-tumblr-square:before {
  content: ""; }

.fa-long-arrow-down:before {
  content: ""; }

.fa-long-arrow-up:before {
  content: ""; }

.fa-long-arrow-left:before {
  content: ""; }

.fa-long-arrow-right:before {
  content: ""; }

.fa-apple:before {
  content: ""; }

.fa-windows:before {
  content: ""; }

.fa-android:before {
  content: ""; }

.fa-linux:before {
  content: ""; }

.fa-dribbble:before {
  content: ""; }

.fa-skype:before {
  content: ""; }

.fa-foursquare:before {
  content: ""; }

.fa-trello:before {
  content: ""; }

.fa-female:before {
  content: ""; }

.fa-male:before {
  content: ""; }

.fa-gittip:before,
.fa-gratipay:before {
  content: ""; }

.fa-sun-o:before {
  content: ""; }

.fa-moon-o:before {
  content: ""; }

.fa-archive:before {
  content: ""; }

.fa-bug:before {
  content: ""; }

.fa-vk:before {
  content: ""; }

.fa-weibo:before {
  content: ""; }

.fa-renren:before {
  content: ""; }

.fa-pagelines:before {
  content: ""; }

.fa-stack-exchange:before {
  content: ""; }

.fa-arrow-circle-o-right:before {
  content: ""; }

.fa-arrow-circle-o-left:before {
  content: ""; }

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
  content: ""; }

.fa-dot-circle-o:before {
  content: ""; }

.fa-wheelchair:before {
  content: ""; }

.fa-vimeo-square:before {
  content: ""; }

.fa-turkish-lira:before,
.fa-try:before {
  content: ""; }

.fa-plus-square-o:before {
  content: ""; }

.fa-space-shuttle:before {
  content: ""; }

.fa-slack:before {
  content: ""; }

.fa-envelope-square:before {
  content: ""; }

.fa-wordpress:before {
  content: ""; }

.fa-openid:before {
  content: ""; }

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
  content: ""; }

.fa-mortar-board:before,
.fa-graduation-cap:before {
  content: ""; }

.fa-yahoo:before {
  content: ""; }

.fa-google:before {
  content: ""; }

.fa-reddit:before {
  content: ""; }

.fa-reddit-square:before {
  content: ""; }

.fa-stumbleupon-circle:before {
  content: ""; }

.fa-stumbleupon:before {
  content: ""; }

.fa-delicious:before {
  content: ""; }

.fa-digg:before {
  content: ""; }

.fa-pied-piper-pp:before {
  content: ""; }

.fa-pied-piper-alt:before {
  content: ""; }

.fa-drupal:before {
  content: ""; }

.fa-joomla:before {
  content: ""; }

.fa-language:before {
  content: ""; }

.fa-fax:before {
  content: ""; }

.fa-building:before {
  content: ""; }

.fa-child:before {
  content: ""; }

.fa-paw:before {
  content: ""; }

.fa-spoon:before {
  content: ""; }

.fa-cube:before {
  content: ""; }

.fa-cubes:before {
  content: ""; }

.fa-behance:before {
  content: ""; }

.fa-behance-square:before {
  content: ""; }

.fa-steam:before {
  content: ""; }

.fa-steam-square:before {
  content: ""; }

.fa-recycle:before {
  content: ""; }

.fa-automobile:before,
.fa-car:before {
  content: ""; }

.fa-cab:before,
.fa-taxi:before {
  content: ""; }

.fa-tree:before {
  content: ""; }

.fa-spotify:before {
  content: ""; }

.fa-deviantart:before {
  content: ""; }

.fa-soundcloud:before {
  content: ""; }

.fa-database:before {
  content: ""; }

.fa-file-pdf-o:before {
  content: ""; }

.fa-file-word-o:before {
  content: ""; }

.fa-file-excel-o:before {
  content: ""; }

.fa-file-powerpoint-o:before {
  content: ""; }

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
  content: ""; }

.fa-file-zip-o:before,
.fa-file-archive-o:before {
  content: ""; }

.fa-file-sound-o:before,
.fa-file-audio-o:before {
  content: ""; }

.fa-file-movie-o:before,
.fa-file-video-o:before {
  content: ""; }

.fa-file-code-o:before {
  content: ""; }

.fa-vine:before {
  content: ""; }

.fa-codepen:before {
  content: ""; }

.fa-jsfiddle:before {
  content: ""; }

.fa-life-bouy:before,
.fa-life-buoy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
  content: ""; }

.fa-circle-o-notch:before {
  content: ""; }

.fa-ra:before,
.fa-resistance:before,
.fa-rebel:before {
  content: ""; }

.fa-ge:before,
.fa-empire:before {
  content: ""; }

.fa-git-square:before {
  content: ""; }

.fa-git:before {
  content: ""; }

.fa-y-combinator-square:before,
.fa-yc-square:before,
.fa-hacker-news:before {
  content: ""; }

.fa-tencent-weibo:before {
  content: ""; }

.fa-qq:before {
  content: ""; }

.fa-wechat:before,
.fa-weixin:before {
  content: ""; }

.fa-send:before,
.fa-paper-plane:before {
  content: ""; }

.fa-send-o:before,
.fa-paper-plane-o:before {
  content: ""; }

.fa-history:before {
  content: ""; }

.fa-circle-thin:before {
  content: ""; }

.fa-header:before {
  content: ""; }

.fa-paragraph:before {
  content: ""; }

.fa-sliders:before {
  content: ""; }

.fa-share-alt:before {
  content: ""; }

.fa-share-alt-square:before {
  content: ""; }

.fa-bomb:before {
  content: ""; }

.fa-soccer-ball-o:before,
.fa-futbol-o:before {
  content: ""; }

.fa-tty:before {
  content: ""; }

.fa-binoculars:before {
  content: ""; }

.fa-plug:before {
  content: ""; }

.fa-slideshare:before {
  content: ""; }

.fa-twitch:before {
  content: ""; }

.fa-yelp:before {
  content: ""; }

.fa-newspaper-o:before {
  content: ""; }

.fa-wifi:before {
  content: ""; }

.fa-calculator:before {
  content: ""; }

.fa-paypal:before {
  content: ""; }

.fa-google-wallet:before {
  content: ""; }

.fa-cc-visa:before {
  content: ""; }

.fa-cc-mastercard:before {
  content: ""; }

.fa-cc-discover:before {
  content: ""; }

.fa-cc-amex:before {
  content: ""; }

.fa-cc-paypal:before {
  content: ""; }

.fa-cc-stripe:before {
  content: ""; }

.fa-bell-slash:before {
  content: ""; }

.fa-bell-slash-o:before {
  content: ""; }

.fa-trash:before {
  content: ""; }

.fa-copyright:before {
  content: ""; }

.fa-at:before {
  content: ""; }

.fa-eyedropper:before {
  content: ""; }

.fa-paint-brush:before {
  content: ""; }

.fa-birthday-cake:before {
  content: ""; }

.fa-area-chart:before {
  content: ""; }

.fa-pie-chart:before {
  content: ""; }

.fa-line-chart:before {
  content: ""; }

.fa-lastfm:before {
  content: ""; }

.fa-lastfm-square:before {
  content: ""; }

.fa-toggle-off:before {
  content: ""; }

.fa-toggle-on:before {
  content: ""; }

.fa-bicycle:before {
  content: ""; }

.fa-bus:before {
  content: ""; }

.fa-ioxhost:before {
  content: ""; }

.fa-angellist:before {
  content: ""; }

.fa-cc:before {
  content: ""; }

.fa-shekel:before,
.fa-sheqel:before,
.fa-ils:before {
  content: ""; }

.fa-meanpath:before {
  content: ""; }

.fa-buysellads:before {
  content: ""; }

.fa-connectdevelop:before {
  content: ""; }

.fa-dashcube:before {
  content: ""; }

.fa-forumbee:before {
  content: ""; }

.fa-leanpub:before {
  content: ""; }

.fa-sellsy:before {
  content: ""; }

.fa-shirtsinbulk:before {
  content: ""; }

.fa-simplybuilt:before {
  content: ""; }

.fa-skyatlas:before {
  content: ""; }

.fa-cart-plus:before {
  content: ""; }

.fa-cart-arrow-down:before {
  content: ""; }

.fa-diamond:before {
  content: ""; }

.fa-ship:before {
  content: ""; }

.fa-user-secret:before {
  content: ""; }

.fa-motorcycle:before {
  content: ""; }

.fa-street-view:before {
  content: ""; }

.fa-heartbeat:before {
  content: ""; }

.fa-venus:before {
  content: ""; }

.fa-mars:before {
  content: ""; }

.fa-mercury:before {
  content: ""; }

.fa-intersex:before,
.fa-transgender:before {
  content: ""; }

.fa-transgender-alt:before {
  content: ""; }

.fa-venus-double:before {
  content: ""; }

.fa-mars-double:before {
  content: ""; }

.fa-venus-mars:before {
  content: ""; }

.fa-mars-stroke:before {
  content: ""; }

.fa-mars-stroke-v:before {
  content: ""; }

.fa-mars-stroke-h:before {
  content: ""; }

.fa-neuter:before {
  content: ""; }

.fa-genderless:before {
  content: ""; }

.fa-facebook-official:before {
  content: ""; }

.fa-pinterest-p:before {
  content: ""; }

.fa-whatsapp:before {
  content: ""; }

.fa-server:before {
  content: ""; }

.fa-user-plus:before {
  content: ""; }

.fa-user-times:before {
  content: ""; }

.fa-hotel:before,
.fa-bed:before {
  content: ""; }

.fa-viacoin:before {
  content: ""; }

.fa-train:before {
  content: ""; }

.fa-subway:before {
  content: ""; }

.fa-medium:before {
  content: ""; }

.fa-yc:before,
.fa-y-combinator:before {
  content: ""; }

.fa-optin-monster:before {
  content: ""; }

.fa-opencart:before {
  content: ""; }

.fa-expeditedssl:before {
  content: ""; }

.fa-battery-4:before,
.fa-battery-full:before {
  content: ""; }

.fa-battery-3:before,
.fa-battery-three-quarters:before {
  content: ""; }

.fa-battery-2:before,
.fa-battery-half:before {
  content: ""; }

.fa-battery-1:before,
.fa-battery-quarter:before {
  content: ""; }

.fa-battery-0:before,
.fa-battery-empty:before {
  content: ""; }

.fa-mouse-pointer:before {
  content: ""; }

.fa-i-cursor:before {
  content: ""; }

.fa-object-group:before {
  content: ""; }

.fa-object-ungroup:before {
  content: ""; }

.fa-sticky-note:before {
  content: ""; }

.fa-sticky-note-o:before {
  content: ""; }

.fa-cc-jcb:before {
  content: ""; }

.fa-cc-diners-club:before {
  content: ""; }

.fa-clone:before {
  content: ""; }

.fa-balance-scale:before {
  content: ""; }

.fa-hourglass-o:before {
  content: ""; }

.fa-hourglass-1:before,
.fa-hourglass-start:before {
  content: ""; }

.fa-hourglass-2:before,
.fa-hourglass-half:before {
  content: ""; }

.fa-hourglass-3:before,
.fa-hourglass-end:before {
  content: ""; }

.fa-hourglass:before {
  content: ""; }

.fa-hand-grab-o:before,
.fa-hand-rock-o:before {
  content: ""; }

.fa-hand-stop-o:before,
.fa-hand-paper-o:before {
  content: ""; }

.fa-hand-scissors-o:before {
  content: ""; }

.fa-hand-lizard-o:before {
  content: ""; }

.fa-hand-spock-o:before {
  content: ""; }

.fa-hand-pointer-o:before {
  content: ""; }

.fa-hand-peace-o:before {
  content: ""; }

.fa-trademark:before {
  content: ""; }

.fa-registered:before {
  content: ""; }

.fa-creative-commons:before {
  content: ""; }

.fa-gg:before {
  content: ""; }

.fa-gg-circle:before {
  content: ""; }

.fa-tripadvisor:before {
  content: ""; }

.fa-odnoklassniki:before {
  content: ""; }

.fa-odnoklassniki-square:before {
  content: ""; }

.fa-get-pocket:before {
  content: ""; }

.fa-wikipedia-w:before {
  content: ""; }

.fa-safari:before {
  content: ""; }

.fa-chrome:before {
  content: ""; }

.fa-firefox:before {
  content: ""; }

.fa-opera:before {
  content: ""; }

.fa-internet-explorer:before {
  content: ""; }

.fa-tv:before,
.fa-television:before {
  content: ""; }

.fa-contao:before {
  content: ""; }

.fa-500px:before {
  content: ""; }

.fa-amazon:before {
  content: ""; }

.fa-calendar-plus-o:before {
  content: ""; }

.fa-calendar-minus-o:before {
  content: ""; }

.fa-calendar-times-o:before {
  content: ""; }

.fa-calendar-check-o:before {
  content: ""; }

.fa-industry:before {
  content: ""; }

.fa-map-pin:before {
  content: ""; }

.fa-map-signs:before {
  content: ""; }

.fa-map-o:before {
  content: ""; }

.fa-map:before {
  content: ""; }

.fa-commenting:before {
  content: ""; }

.fa-commenting-o:before {
  content: ""; }

.fa-houzz:before {
  content: ""; }

.fa-vimeo:before {
  content: ""; }

.fa-black-tie:before {
  content: ""; }

.fa-fonticons:before {
  content: ""; }

.fa-reddit-alien:before {
  content: ""; }

.fa-edge:before {
  content: ""; }

.fa-credit-card-alt:before {
  content: ""; }

.fa-codiepie:before {
  content: ""; }

.fa-modx:before {
  content: ""; }

.fa-fort-awesome:before {
  content: ""; }

.fa-usb:before {
  content: ""; }

.fa-product-hunt:before {
  content: ""; }

.fa-mixcloud:before {
  content: ""; }

.fa-scribd:before {
  content: ""; }

.fa-pause-circle:before {
  content: ""; }

.fa-pause-circle-o:before {
  content: ""; }

.fa-stop-circle:before {
  content: ""; }

.fa-stop-circle-o:before {
  content: ""; }

.fa-shopping-bag:before {
  content: ""; }

.fa-shopping-basket:before {
  content: ""; }

.fa-hashtag:before {
  content: ""; }

.fa-bluetooth:before {
  content: ""; }

.fa-bluetooth-b:before {
  content: ""; }

.fa-percent:before {
  content: ""; }

.fa-gitlab:before {
  content: ""; }

.fa-wpbeginner:before {
  content: ""; }

.fa-wpforms:before {
  content: ""; }

.fa-envira:before {
  content: ""; }

.fa-universal-access:before {
  content: ""; }

.fa-wheelchair-alt:before {
  content: ""; }

.fa-question-circle-o:before {
  content: ""; }

.fa-blind:before {
  content: ""; }

.fa-audio-description:before {
  content: ""; }

.fa-volume-control-phone:before {
  content: ""; }

.fa-braille:before {
  content: ""; }

.fa-assistive-listening-systems:before {
  content: ""; }

.fa-asl-interpreting:before,
.fa-american-sign-language-interpreting:before {
  content: ""; }

.fa-deafness:before,
.fa-hard-of-hearing:before,
.fa-deaf:before {
  content: ""; }

.fa-glide:before {
  content: ""; }

.fa-glide-g:before {
  content: ""; }

.fa-signing:before,
.fa-sign-language:before {
  content: ""; }

.fa-low-vision:before {
  content: ""; }

.fa-viadeo:before {
  content: ""; }

.fa-viadeo-square:before {
  content: ""; }

.fa-snapchat:before {
  content: ""; }

.fa-snapchat-ghost:before {
  content: ""; }

.fa-snapchat-square:before {
  content: ""; }

.fa-pied-piper:before {
  content: ""; }

.fa-first-order:before {
  content: ""; }

.fa-yoast:before {
  content: ""; }

.fa-themeisle:before {
  content: ""; }

.fa-google-plus-circle:before,
.fa-google-plus-official:before {
  content: ""; }

.fa-fa:before,
.fa-font-awesome:before {
  content: ""; }

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

.sr-only-focusable:active, .sr-only-focusable:focus {
  position: static;
  width: auto;
  height: auto;
  margin: 0;
  overflow: visible;
  clip: auto; }

@font-face {
  font-family: 'icomoon';
  src: url("../font/icomoon.eot?fmla6x");
  src: url("../font/icomoon.eot?fmla6x#iefix") format("embedded-opentype"), url("../font/icomoon.ttf?fmla6x") format("truetype"), url("../font/icomoon.woff?fmla6x") format("woff"), url("../font/icomoon.svg?fmla6x#icomoon") format("svg");
  font-weight: normal;
  font-style: normal; }

.icon, a.g-sns_link, a.g-footer-sns_link,
[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.icon-instagram:before, a.g-sns_link:before, a.g-footer-sns_link:before {
  content: "\ea92"; }
