@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
body {
  overflow-x: hidden !important; }

#wrapper {
  min-width: inherit !important; }

#header {
  position: relative;
  z-index: 1000; }

.toolBox01 {
  background-color: #e0c15a;
  position: relative;
  z-index: 10; }

.breadcrumb {
  position: relative;
  z-index: 2;
  background: #fff; }

#container.brand-content > .brand-section.-wide {
  background: #fff;
  position: relative;
  z-index: 2; }

.brand-btn-cart {
  background: #007a66; }

#pageContainer.ftl {
  font-family: 'Noto Sans JP', sans-serif;
  color: #666;
  font-size: 3.2vw;
  position: relative;
  box-sizing: border-box; }
  @media print, screen and (min-width: 768px) {
    #pageContainer.ftl {
      font-size: 12px;
      background-image: linear-gradient(135deg, #f6edde 0%, #eddec6 50%, #f6edde 100%);
      background-attachment: fixed; } }
  #pageContainer.ftl *,
  #pageContainer.ftl *::before,
  #pageContainer.ftl *::after {
    box-sizing: border-box; }
  #pageContainer.ftl img {
    vertical-align: bottom; }
  @media print, screen and (min-width: 768px) {
    #pageContainer.ftl a {
      transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }
      #pageContainer.ftl a:hover {
        opacity: 0.7; } }
  #pageContainer.ftl sup {
    font-size: 60%; }
  #pageContainer.ftl .ftl-wrap {
    position: relative;
    z-index: 2; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-wrap {
        background-image: url("/-/Media/com/flash-tint-lip/top/20230714/bg_04.png");
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: 2000px;
        background-attachment: fixed; }
        #pageContainer.ftl .ftl-wrap::before, #pageContainer.ftl .ftl-wrap::after {
          content: "";
          display: block;
          width: 56px;
          height: 100%;
          background: url("/-/Media/com/flash-tint-lip/top/20230714/bg_txt_02.png") repeat-y center;
          position: fixed;
          top: 0;
          animation: infinitescroll02 20s linear infinite; }
        #pageContainer.ftl .ftl-wrap::before {
          left: 40px; }
        #pageContainer.ftl .ftl-wrap::after {
          right: 40px;
          transform: rotate(180deg); } }
    @media print, screen and (min-width: 2000px) {
      #pageContainer.ftl .ftl-wrap {
        background-size: 100%; } }
  #pageContainer.ftl .ftl-main {
    max-width: 750px;
    margin: 0 auto;
    position: relative;
    z-index: 2;
    overflow: hidden;
    background: #fff; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-main {
        max-width: 375px; } }
  #pageContainer.ftl .ftl-obj {
    position: fixed;
    top: 50%;
    left: 50%;
    z-index: 3;
    pointer-events: none;
    animation: 4s fuwafuwa infinite; }
    @media screen and (max-width: 1200px) {
      #pageContainer.ftl .ftl-obj {
        display: none; } }
    #pageContainer.ftl .ftl-obj--01 {
      margin: -200px 0 0 -480px; }
    #pageContainer.ftl .ftl-obj--02 {
      margin: -200px 0 0 400px;
      animation-delay: 0.4s; }
    #pageContainer.ftl .ftl-obj--03 {
      margin: 100px 0 0 -380px;
      animation-delay: 0.8s; }
    #pageContainer.ftl .ftl-obj--04 {
      margin: 70px 0 0 290px;
      animation-delay: 1.2s; }
  #pageContainer.ftl .ftl-ttl {
    max-width: 85.0666666667vw;
    margin: 0 auto 5.3333333333vw; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-ttl {
        max-width: 319px;
        margin: 0 auto 20px; } }
  #pageContainer.ftl .ftl-btn {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 16vw;
    border-radius: 8vw;
    background: #fff;
    border: 0.2666666667vw solid #c11920;
    color: #c11920;
    font-weight: 500;
    font-size: 3.4666666667vw;
    line-height: 1.5;
    position: relative;
    text-align: center; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-btn {
        height: 60px;
        border-radius: 30px;
        border: 1px solid #c11920;
        font-size: 13px; } }
    #pageContainer.ftl .ftl-btn::after {
      content: "";
      display: block;
      width: 3.0666666667vw;
      height: 3.2vw;
      background: url("/-/Media/com/flash-tint-lip/top/20230714/ico_arrow_01.png") no-repeat center/cover;
      position: absolute;
      right: 5.3333333333vw;
      top: 50%;
      transform: translateY(-50%); }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-btn::after {
          width: 11.5px;
          height: 12px;
          right: 20px; } }
    #pageContainer.ftl .ftl-btn img {
      width: auto;
      height: 3.4666666667vw; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-btn img {
          height: 13px; } }
    #pageContainer.ftl .ftl-btn--blank::after {
      width: 4.5333333333vw;
      height: 3.3333333333vw;
      background: url("/-/Media/com/flash-tint-lip/top/20230714/ico_blank_01.png") no-repeat center/cover;
      right: 6vw; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-btn--blank::after {
          width: 17px;
          height: 12.5px;
          right: 22.5px; } }
  #pageContainer.ftl .ftl-video img {
    box-shadow: 0px 2.6666666667vw 2.6666666667vw 0px rgba(51, 51, 51, 0.2); }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-video img {
        box-shadow: 0px 10px 10px 0px rgba(51, 51, 51, 0.2); } }
  #pageContainer.ftl .ftl-video b {
    display: block;
    font-size: 2.9333333333vw;
    margin-top: 1em;
    text-align: center;
    font-weight: 400; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-video b {
        font-size: 11px; } }
  #pageContainer.ftl .ftl-nav {
    background: url("/-/Media/com/flash-tint-lip/top/20230714/nav_bg.png") no-repeat center/cover; }
    #pageContainer.ftl .ftl-nav ul {
      display: flex;
      flex-wrap: wrap; }
    #pageContainer.ftl .ftl-nav li {
      width: 50%; }
  #pageContainer.ftl .ftl-concept {
    padding: 17.3333333333vw 7.4666666667vw; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-concept {
        padding: 65px 28px; } }
    #pageContainer.ftl .ftl-concept__inner {
      position: relative; }
      #pageContainer.ftl .ftl-concept__inner::before {
        content: "";
        display: block;
        width: 100vw;
        height: 10.6666666667vw;
        background: url("/-/Media/com/flash-tint-lip/top/20230714/bg_txt_01.png") repeat-x center/cover;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        animation: infinitescroll01 10s linear infinite; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-concept__inner::before {
            width: 375px;
            height: 40px;
            animation: infinitescroll01 40s linear infinite; } }
  #pageContainer.ftl .ftl-movie {
    padding: 13.3333333333vw 7.4666666667vw 18.6666666667vw;
    margin-top: -6.6666666667vw;
    position: relative; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-movie {
        padding: 50px 28px 70px;
        margin-top: -25px; } }
    #pageContainer.ftl .ftl-movie::before {
      content: "";
      display: block;
      width: 100%;
      height: 113.8666666667vw;
      background: url("/-/Media/com/flash-tint-lip/top/20230714/bg_01.png") no-repeat center top/100%;
      position: absolute;
      top: -20vw;
      left: 0;
      pointer-events: none; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-movie::before {
          height: 427px;
          top: -75px; } }
    #pageContainer.ftl .ftl-movie > * {
      position: relative;
      z-index: 2; }
  #pageContainer.ftl .ftl-lineup {
    max-height: 171.4666666667vw;
    padding: 17.3333333333vw 4vw 10.6666666667vw;
    background: url("/-/Media/com/flash-tint-lip/top/20230714/bg_02.png") no-repeat center top/100%; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-lineup {
        max-height: 643px;
        padding: 65px 15px 40px; } }
    #pageContainer.ftl .ftl-lineup__cont-head ul {
      display: flex;
      justify-content: space-between; }
    #pageContainer.ftl .ftl-lineup__cont-head li {
      width: 22vw;
      display: block;
      overflow: hidden;
      background: #f9dede;
      border-radius: 2.6666666667vw 2.6666666667vw 0 0;
      line-height: 1;
      cursor: pointer; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-lineup__cont-head li {
          width: 82.5px;
          border-radius: 10px 10px 0 0; }
          #pageContainer.ftl .ftl-lineup__cont-head li img {
            transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }
          #pageContainer.ftl .ftl-lineup__cont-head li:hover img {
            opacity: 0.7; } }
      #pageContainer.ftl .ftl-lineup__cont-head li.is-active {
        background: #fff; }
    #pageContainer.ftl .ftl-lineup__cont-body {
      display: none;
      margin-top: -2px;
      padding: 6.6666666667vw 5.3333333333vw 8vw;
      background: #fff;
      position: relative;
      z-index: 2; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-lineup__cont-body {
          padding: 25px 20px 30px; } }
      #pageContainer.ftl .ftl-lineup__cont-body.is-active {
        display: block; }
    #pageContainer.ftl .ftl-lineup__cont-ttl {
      margin-bottom: 1em; }
      #pageContainer.ftl .ftl-lineup__cont-ttl b {
        display: block;
        margin-top: 1em; }
    #pageContainer.ftl .ftl-lineup__cont-img {
      margin: 0 -5.3333333333vw; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-lineup__cont-img {
          margin: 0 -20px; } }
  #pageContainer.ftl .ftl-feature {
    padding: 11.3333333333vw 7.4666666667vw 12vw;
    position: relative; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-feature {
        padding: 42.5px 28px 45px; } }
    #pageContainer.ftl .ftl-feature::before {
      content: "";
      display: block;
      width: 100%;
      height: 107.7333333333vw;
      background: url("/-/Media/com/flash-tint-lip/top/20230714/bg_05.png") no-repeat center top/100%;
      position: absolute;
      top: -32.4vw;
      left: 0;
      z-index: 2;
      pointer-events: none; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-feature::before {
          height: 404px;
          top: -121.5px; } }
    #pageContainer.ftl .ftl-feature__ttl {
      position: relative;
      z-index: 3; }
    #pageContainer.ftl .ftl-feature__lead {
      margin-top: 10.6666666667vw;
      position: relative;
      z-index: 3; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-feature__lead {
          margin-top: 40px; } }
    #pageContainer.ftl .ftl-feature__point {
      margin: 8.6666666667vw -7.4666666667vw 0;
      padding: 10vw 7.4666666667vw 0;
      background: url("/-/Media/com/flash-tint-lip/top/20230714/feature_point_bg_01.png") no-repeat center top/100%;
      position: relative;
      z-index: 1; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-feature__point {
          margin: 32.5px -28px 0;
          padding: 37.5px 28px 0; } }
      #pageContainer.ftl .ftl-feature__point-sect {
        padding: 0 1.8666666667vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-sect {
            padding: 0 7px; } }
        #pageContainer.ftl .ftl-feature__point-sect:nth-child(n + 2) {
          margin-top: 8vw;
          padding-top: 8vw;
          border-top: 1px solid #ccc; }
          @media print, screen and (min-width: 768px) {
            #pageContainer.ftl .ftl-feature__point-sect:nth-child(n + 2) {
              margin-top: 30px;
              padding-top: 30px; } }
      #pageContainer.ftl .ftl-feature__point-ttl {
        margin-bottom: 6.6666666667vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-ttl {
            margin-bottom: 25px; } }
      #pageContainer.ftl .ftl-feature__point-txt dt {
        font-size: 4.2666666667vw;
        font-weight: 500;
        margin-bottom: 0.5em; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-txt dt {
            font-size: 16px; } }
        #pageContainer.ftl .ftl-feature__point-txt dt span {
          display: block;
          margin-top: 0.4em;
          font-size: 62.5%;
          font-weight: 400; }
      #pageContainer.ftl .ftl-feature__point-txt dd {
        line-height: 1.8; }
      #pageContainer.ftl .ftl-feature__point-img-01 {
        margin-top: 4.6666666667vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-img-01 {
            margin-top: 17.5px; } }
      #pageContainer.ftl .ftl-feature__point-img-02 {
        margin-top: 2.6666666667vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-img-02 {
            margin-top: 10px; } }
      #pageContainer.ftl .ftl-feature__point-list-num {
        margin-top: 5.3333333333vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-list-num {
            margin-top: 20px; } }
        #pageContainer.ftl .ftl-feature__point-list-num li {
          padding-left: 4.8vw;
          line-height: 1.8;
          position: relative; }
          @media print, screen and (min-width: 768px) {
            #pageContainer.ftl .ftl-feature__point-list-num li {
              padding-left: 18px; } }
          #pageContainer.ftl .ftl-feature__point-list-num li + li {
            margin-top: 1em; }
          #pageContainer.ftl .ftl-feature__point-list-num li img {
            width: 2.9333333333vw;
            position: absolute;
            top: 0.4em;
            left: 0; }
            @media print, screen and (min-width: 768px) {
              #pageContainer.ftl .ftl-feature__point-list-num li img {
                width: 11px; } }
      #pageContainer.ftl .ftl-feature__point-ingredient {
        margin-top: 4vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-ingredient {
            margin-top: 15px; } }
        #pageContainer.ftl .ftl-feature__point-ingredient ul {
          display: flex;
          flex-wrap: wrap;
          margin: -1.3333333333vw 0 0 -1.3333333333vw; }
          @media print, screen and (min-width: 768px) {
            #pageContainer.ftl .ftl-feature__point-ingredient ul {
              margin: -5px 0 0 -5px; } }
        #pageContainer.ftl .ftl-feature__point-ingredient li {
          display: inline-block;
          margin: 1.3333333333vw 0 0 1.3333333333vw;
          padding: 1.3333333333vw 2vw;
          border: 1px solid #ccc;
          color: #afafaf;
          font-weight: 500;
          line-height: 1;
          font-size: 2.4vw; }
          @media print, screen and (min-width: 768px) {
            #pageContainer.ftl .ftl-feature__point-ingredient li {
              margin: 5px 0 0 5px;
              padding: 5px 7.5px;
              font-size: 9px; } }
      #pageContainer.ftl .ftl-feature__point-merit {
        margin-top: 4vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-feature__point-merit {
            margin-top: 15px; } }
        #pageContainer.ftl .ftl-feature__point-merit ul {
          display: flex;
          justify-content: space-between; }
        #pageContainer.ftl .ftl-feature__point-merit li {
          display: flex;
          width: 40vw; }
          @media print, screen and (min-width: 768px) {
            #pageContainer.ftl .ftl-feature__point-merit li {
              width: 150px; } }
          #pageContainer.ftl .ftl-feature__point-merit li img {
            width: 16vw; }
            @media print, screen and (min-width: 768px) {
              #pageContainer.ftl .ftl-feature__point-merit li img {
                width: 60px; } }
          #pageContainer.ftl .ftl-feature__point-merit li b {
            display: flex;
            justify-content: center;
            align-items: center;
            width: 100%;
            height: 100%;
            border: 1px solid #f6a68e;
            color: #f6a68e;
            font-size: 2.9333333333vw;
            font-weight: 500; }
            @media print, screen and (min-width: 768px) {
              #pageContainer.ftl .ftl-feature__point-merit li b {
                font-size: 11px; } }
  #pageContainer.ftl .ftl-relation {
    padding: 17.3333333333vw 7.4666666667vw 18.6666666667vw;
    background: url("/-/Media/com/flash-tint-lip/top/20230714/bg_03.png") no-repeat center top/100%; }
    @media print, screen and (min-width: 768px) {
      #pageContainer.ftl .ftl-relation {
        padding: 65px 28px 70px; } }
    #pageContainer.ftl .ftl-relation__sect {
      margin-bottom: 10.6666666667vw; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-relation__sect {
          margin-bottom: 40px; } }
      #pageContainer.ftl .ftl-relation__sect-ttl {
        text-align: center;
        font-size: 3.7333333333vw;
        margin-bottom: 1.5em; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-relation__sect-ttl {
            font-size: 14px; } }
        #pageContainer.ftl .ftl-relation__sect-ttl b {
          display: table;
          color: #007367;
          font-weight: 400;
          margin: 0 auto;
          padding: 0 0.4em 0.2em;
          border-bottom: 1px dotted #007367; }
          #pageContainer.ftl .ftl-relation__sect-ttl b + b {
            margin-top: 0.5em; }
        #pageContainer.ftl .ftl-relation__sect-ttl strong {
          font-weight: 700; }
        #pageContainer.ftl .ftl-relation__sect-ttl span {
          display: block;
          margin-top: 0.5em;
          margin-bottom: -0.5em;
          font-size: 2.6666666667vw;
          color: #666; }
          @media print, screen and (min-width: 768px) {
            #pageContainer.ftl .ftl-relation__sect-ttl span {
              font-size: 10px; } }
      #pageContainer.ftl .ftl-relation__sect-bnr {
        display: block;
        margin: 0 -3.4666666667vw; }
        @media print, screen and (min-width: 768px) {
          #pageContainer.ftl .ftl-relation__sect-bnr {
            margin: 0 -13px; } }
    #pageContainer.ftl .ftl-relation__lead {
      margin-top: 16vw;
      margin-bottom: 13.3333333333vw; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-relation__lead {
          margin-top: 60px;
          margin-bottom: 50px; } }
    #pageContainer.ftl .ftl-relation__movie {
      margin-top: 13.3333333333vw;
      padding-top: 13.3333333333vw;
      border-top: 1px solid #ccc; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-relation__movie {
          margin-top: 50px;
          padding-top: 50px; } }
    #pageContainer.ftl .ftl-relation__btn {
      margin-top: 8vw;
      border-color: #007367;
      color: #007367; }
      @media print, screen and (min-width: 768px) {
        #pageContainer.ftl .ftl-relation__btn {
          margin-top: 30px; } }

body.state-modal .modal {
  left: 0;
  padding: 0 0 0; }

body.state-modal .modal::after {
  opacity: 0.5; }

body.state-modal .modal-bg {
  left: 0; }

.modal {
  position: relative;
  position: absolute;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  z-index: 10000;
  left: -200%; }

.modal::after {
  position: absolute;
  display: block;
  content: '';
  width: 100%;
  height: 100%;
  background: #000;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.3s ease; }

.modal-bg {
  position: fixed;
  display: block;
  content: '';
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: #000;
  opacity: 0;
  z-index: 2;
  left: -100%;
  transition: opacity 0.3s ease; }

.modal-box {
  width: 864px;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 5; }

.modal-box-movie {
  position: relative;
  padding-bottom: 56.25%;
  background: #000; }

.modal-box-movie iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0; }

.modal-close {
  display: block;
  width: 44px;
  height: 44px;
  position: absolute;
  top: -60px;
  right: 0px;
  z-index: 5; }

.modal-close a {
  display: block;
  width: 100%;
  height: 100%;
  background: url("/-/Media/com/flash-tint-lip/top/20230714/ico_modal_close_01.png") no-repeat center/100%;
  transition: opacity 0.3s 0s ease; }

@media print, screen and (min-width: 768px) {
  .modal-close a:hover {
    opacity: 0.7;
    transition: opacity 0.2s 0s ease; } }
@media screen and (max-width: 767px) {
  .modal-box {
    width: 90%; }

  .modal-close {
    width: 40px;
    height: 40px;
    top: -54px; } }
@-webkit-keyframes infinitescroll01 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: -117.3333333333vw 0;
    @media print, screen and (min-width: 768px) {
      background-position: -440px 0; } } }
@-webkit-keyframes infinitescroll02 {
  0% {
    background-position: 0 0; }
  100% {
    background-position: 0 -620px; } }
@keyframes fuwafuwa {
  0%, 100% {
    transform: translateY(0); }
  50% {
    transform: translateY(-20px); } }
