html {
  font-size: 62.5%; }

body {
  line-height: 1;
  -webkit-text-size-adjust: 100%;
  -webkit-print-color-adjust: exact; }

html, body {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box; }

#contents_block div, #contents_block span, #contents_block applet, #contents_block object, #contents_block iframe, #contents_block h1, #contents_block h2, #contents_block h3, #contents_block h4, #contents_block h5, #contents_block h6, #contents_block p, #contents_block blockquote, #contents_block pre, #contents_block a, #contents_block abbr, #contents_block acronym, #contents_block address, #contents_block big, #contents_block cite, #contents_block code, #contents_block del, #contents_block dfn, #contents_block em, #contents_block font, #contents_block img, #contents_block ins, #contents_block kbd, #contents_block q, #contents_block s, #contents_block samp, #contents_block small, #contents_block strike, #contents_block strong, #contents_block sub, #contents_block sup, #contents_block tt, #contents_block var, #contents_block b, #contents_block u, #contents_block i, #contents_block center, #contents_block dl, #contents_block dt, #contents_block dd, #contents_block ol, #contents_block ul, #contents_block li, #contents_block fieldset, #contents_block form, #contents_block label, #contents_block legend, #contents_block table, #contents_block caption, #contents_block tbody, #contents_block tfoot, #contents_block thead, #contents_block tr, #contents_block th, #contents_block td, #contents_block section, #contents_block article, #contents_block aside, #contents_block hgroup, #contents_block header, #contents_block footer, #contents_block nav, #contents_block dialog, #contents_block figure, #contents_block menu, #contents_block video, #contents_block audio, #contents_block mark, #contents_block time, #contents_block canvas, #contents_block details, #contents_block select {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  box-sizing: border-box;
  background: transparent;
  font-family: 'Noto Serif JP', serif; }
#contents_block section, #contents_block article, #contents_block aside, #contents_block hgroup, #contents_block header, #contents_block footer, #contents_block main, #contents_block nav, #contents_block dialog, #contents_block figure, #contents_block figcaption {
  display: block; }
#contents_block ol, #contents_block ul {
  list-style: none; }
#contents_block blockquote, #contents_block q {
  quotes: none; }
#contents_block blockquote:before, #contents_block blockquote:after, #contents_block q:before, #contents_block q:after {
  content: '';
  content: none; }
#contents_block :focus {
  outline: 0; }
#contents_block ins {
  text-decoration: none; }
#contents_block del {
  text-decoration: line-through; }
#contents_block table {
  border-collapse: collapse;
  border-spacing: 0; }
#contents_block main p, #contents_block main li, #contents_block main dt, #contents_block main dd, #contents_block main th, #contents_block main td {
  line-height: 1.6; }
#contents_block img {
  -webkit-backface-visibility: hidden;
  vertical-align: bottom; }
#contents_block a:link {
  color: #000;
  text-decoration: none; }
#contents_block a:visited {
  color: #000;
  text-decoration: none; }
#contents_block a:hover {
  color: #000;
  text-decoration: none; }
#contents_block a:active {
  color: #000;
  text-decoration: none; }
#contents_block .clr {
  *zoom: 1; }
#contents_block .clr:after {
  content: '';
  display: block;
  clear: both;
  height: 0; }
#contents_block .disnon {
  display: none; }
#contents_block.cn div, #contents_block.cn span, #contents_block.cn applet, #contents_block.cn object, #contents_block.cn iframe, #contents_block.cn h1, #contents_block.cn h2, #contents_block.cn h3, #contents_block.cn h4, #contents_block.cn h5, #contents_block.cn h6, #contents_block.cn p, #contents_block.cn blockquote, #contents_block.cn pre, #contents_block.cn a, #contents_block.cn abbr, #contents_block.cn acronym, #contents_block.cn address, #contents_block.cn big, #contents_block.cn cite, #contents_block.cn code, #contents_block.cn del, #contents_block.cn dfn, #contents_block.cn em, #contents_block.cn font, #contents_block.cn img, #contents_block.cn ins, #contents_block.cn kbd, #contents_block.cn q, #contents_block.cn s, #contents_block.cn samp, #contents_block.cn small, #contents_block.cn strike, #contents_block.cn strong, #contents_block.cn sub, #contents_block.cn sup, #contents_block.cn tt, #contents_block.cn var, #contents_block.cn b, #contents_block.cn u, #contents_block.cn i, #contents_block.cn center, #contents_block.cn dl, #contents_block.cn dt, #contents_block.cn dd, #contents_block.cn ol, #contents_block.cn ul, #contents_block.cn li, #contents_block.cn fieldset, #contents_block.cn form, #contents_block.cn label, #contents_block.cn legend, #contents_block.cn table, #contents_block.cn caption, #contents_block.cn tbody, #contents_block.cn tfoot, #contents_block.cn thead, #contents_block.cn tr, #contents_block.cn th, #contents_block.cn td, #contents_block.cn section, #contents_block.cn article, #contents_block.cn aside, #contents_block.cn hgroup, #contents_block.cn header, #contents_block.cn footer, #contents_block.cn nav, #contents_block.cn dialog, #contents_block.cn figure, #contents_block.cn menu, #contents_block.cn video, #contents_block.cn audio, #contents_block.cn mark, #contents_block.cn time, #contents_block.cn canvas, #contents_block.cn details, #contents_block.cn select {
  font-family: 'Noto Serif SC', serif; }
#contents_block.kr div, #contents_block.kr span, #contents_block.kr applet, #contents_block.kr object, #contents_block.kr iframe, #contents_block.kr h1, #contents_block.kr h2, #contents_block.kr h3, #contents_block.kr h4, #contents_block.kr h5, #contents_block.kr h6, #contents_block.kr p, #contents_block.kr blockquote, #contents_block.kr pre, #contents_block.kr a, #contents_block.kr abbr, #contents_block.kr acronym, #contents_block.kr address, #contents_block.kr big, #contents_block.kr cite, #contents_block.kr code, #contents_block.kr del, #contents_block.kr dfn, #contents_block.kr em, #contents_block.kr font, #contents_block.kr img, #contents_block.kr ins, #contents_block.kr kbd, #contents_block.kr q, #contents_block.kr s, #contents_block.kr samp, #contents_block.kr small, #contents_block.kr strike, #contents_block.kr strong, #contents_block.kr sub, #contents_block.kr sup, #contents_block.kr tt, #contents_block.kr var, #contents_block.kr b, #contents_block.kr u, #contents_block.kr i, #contents_block.kr center, #contents_block.kr dl, #contents_block.kr dt, #contents_block.kr dd, #contents_block.kr ol, #contents_block.kr ul, #contents_block.kr li, #contents_block.kr fieldset, #contents_block.kr form, #contents_block.kr label, #contents_block.kr legend, #contents_block.kr table, #contents_block.kr caption, #contents_block.kr tbody, #contents_block.kr tfoot, #contents_block.kr thead, #contents_block.kr tr, #contents_block.kr th, #contents_block.kr td, #contents_block.kr section, #contents_block.kr article, #contents_block.kr aside, #contents_block.kr hgroup, #contents_block.kr header, #contents_block.kr footer, #contents_block.kr nav, #contents_block.kr dialog, #contents_block.kr figure, #contents_block.kr menu, #contents_block.kr video, #contents_block.kr audio, #contents_block.kr mark, #contents_block.kr time, #contents_block.kr canvas, #contents_block.kr details, #contents_block.kr select {
  font-family: 'Noto Serif KR', serif; }

#contents_block {
  width: 100%;
  height: auto;
  min-width: 980px;
  line-height: 2;
  color: #333;
  overflow: hidden;
  margin: 0; }
  @media screen and (max-width: 640px) {
    #contents_block {
      min-width: auto; } }
  @media screen and (max-width: 640px) {
    #contents_block .pc {
      display: none !important; } }
  @media print, screen and (min-width: 641px) {
    #contents_block .sp {
      display: none !important; } }
  #contents_block .inner {
    width: 980px;
    margin: 0 auto;
    position: relative; }
    @media screen and (max-width: 640px) {
      #contents_block .inner {
        width: auto;
        padding-left: 5%;
        padding-right: 5%; } }
  #contents_block .obj > div {
    position: absolute; }
    #contents_block .obj > div img {
      width: 100%;
      height: auto; }
  @media screen and (max-width: 640px) {
    #contents_block img {
      width: 100%;
      height: auto; } }
  #contents_block #mv {
    position: relative; }
    #contents_block #mv::before {
      content: "";
      width: 100%;
      height: 0;
      position: absolute;
      top: 0;
      left: 0;
      background-image: url(../images/bg_mv.gif);
      background-repeat: repeat;
      background-position: 0 0;
      opacity: 0;
      transform-origin: top;
      box-shadow: 0 -200px 50px -50px #fff inset; }
      @media screen and (max-width: 640px) {
        #contents_block #mv::before {
          height: 100%;
          background-size: auto 100%; } }
    #contents_block #mv::after {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 2;
      background-image: url(../images/bg_mv_top.png);
      background-repeat: repeat-x;
      background-position: center 0;
      opacity: 0; }
      @media screen and (max-width: 640px) {
        #contents_block #mv::after {
          background-size: auto 25%; } }
    #contents_block #mv .inner {
      height: 760px;
      padding-top: 80px; }
      @media screen and (max-width: 640px) {
        #contents_block #mv .inner {
          height: 99vw;
          padding-top: 15vw; } }
      #contents_block #mv .inner::after {
        content: "";
        width: 3194px;
        height: 760px;
        position: absolute;
        background: url(../images/clip_mv.png) no-repeat 0 bottom;
        bottom: -1px;
        left: 50%;
        margin-left: -1597px;
        opacity: 0; }
        @media screen and (max-width: 640px) {
          #contents_block #mv .inner::after {
            width: 100%;
            height: auto;
            padding-top: 10.6%;
            background: url(../images/clip_mv_sp.png) center/100% no-repeat;
            margin-left: 0;
            left: 0; } }
    #contents_block #mv .text {
      position: absolute;
      top: 105px;
      left: 40px;
      opacity: 0;
      transform: translateX(-30px); }
      @media screen and (max-width: 640px) {
        #contents_block #mv .text {
          width: 10.13%;
          top: 15%;
          left: 5%;
          z-index: 3;
          transform: translateX(-30px); } }
    #contents_block #mv .pkg {
      width: 597px;
      margin: 0 auto;
      position: relative;
      z-index: 6;
      font-size: 0; }
      @media screen and (max-width: 640px) {
        #contents_block #mv .pkg {
          width: 72%; } }
    #contents_block #mv .pkg01,
    #contents_block #mv .pkg02 {
      display: inline-block;
      width: 50%;
      opacity: 0; }
      #contents_block #mv .pkg01 img,
      #contents_block #mv .pkg02 img {
        width: 100%;
        position: relative;
        z-index: 2; }
    #contents_block #mv .pkg01 {
      transform: translateX(800px); }
      @media screen and (max-width: 640px) {
        #contents_block #mv .pkg01 {
          transform: translateX(300px); } }
    #contents_block #mv .pkg02 {
      transform: translateX(-800px); }
      @media screen and (max-width: 640px) {
        #contents_block #mv .pkg02 {
          transform: translateX(-300px); } }
    #contents_block #mv .txt {
      text-align: center;
      margin-top: 30px;
      opacity: 0;
      font-size: 2rem;
      color: #333;
      font-weight: 700; }
      @media screen and (max-width: 640px) {
        #contents_block #mv .txt {
          margin-top: 5.3vw;
          font-size: 4vw;
          line-height: 1.3; } }
    #contents_block #mv #sortLanguage {
      width: 164px;
      height: 31px;
      font-size: 1.4rem;
      font-weight: bold;
      position: absolute;
      z-index: 4;
      right: 0;
      top: 22px;
      border: none;
      -webkit-appearance: none;
      background: url(../images/arrow_select.svg) 93%/15px 8px no-repeat #fff;
      padding: 5px 5px 5px 12px;
      border-radius: 0;
      opacity: 0;
      pointer-events: none;
      z-index: 11;
      font-family: 'Noto Sans JP', sans-serif; }
      @media screen and (max-width: 640px) {
        #contents_block #mv #sortLanguage {
          width: 130px;
          height: 20px;
          right: 5%;
          top: 4%;
          padding: 0 5px;
          font-size: 1.1rem;
          background-size: 10px 5px; } }
      #contents_block #mv #sortLanguage::-ms-expand {
        display: none; }
    #contents_block #mv .obj div {
      position: absolute;
      opacity: 0;
      transform: scale(0.5); }
    #contents_block #mv .obj .sakura01 {
      top: -5px;
      left: 660px; }
      @media screen and (max-width: 640px) {
        #contents_block #mv .obj .sakura01 {
          width: 26vw;
          top: -1vw;
          left: 73vw; } }
    #contents_block #mv .obj .sakura02 {
      top: 387px;
      left: 60px; }
      @media screen and (max-width: 640px) {
        #contents_block #mv .obj .sakura02 {
          width: 19.5vw;
          top: 51.2vw;
          left: 4vw; } }
    #contents_block #mv .splash {
      width: 100%;
      position: absolute;
      top: 0;
      left: 0;
      z-index: 1;
      background: #fff;
      opacity: 0; }
      @media print, screen and (min-width: 641px) {
        #contents_block #mv .splash .inner {
          height: 100% !important; } }
      #contents_block #mv .splash .inner > div {
        position: absolute; }
        #contents_block #mv .splash .inner > div img {
          height: auto;
          width: 100%; }
      #contents_block #mv .splash .fuji {
        bottom: 0;
        left: -656px;
        z-index: 2;
        height: 84%; }
        #contents_block #mv .splash .fuji img {
          height: 100%;
          width: auto; }
        @media screen and (max-width: 640px) {
          #contents_block #mv .splash .fuji {
            width: 100%;
            left: 0; }
            #contents_block #mv .splash .fuji img {
              width: 100%;
              height: auto; } }
      #contents_block #mv .splash .cloud01 {
        top: 72px;
        left: -274px;
        z-index: 3; }
        @media screen and (max-width: 640px) {
          #contents_block #mv .splash .cloud01 {
            width: 19.2%;
            top: 29%;
            left: -5%; } }
      #contents_block #mv .splash .cloud02 {
        width: 114px;
        top: 220px;
        left: 220px;
        z-index: 1; }
        @media screen and (max-width: 640px) {
          #contents_block #mv .splash .cloud02 {
            width: 20.1%;
            top: 33%;
            left: 39%; } }
      #contents_block #mv .splash .cloud03 {
        width: 114px;
        top: 180px;
        right: 20px; }
        @media screen and (max-width: 640px) {
          #contents_block #mv .splash .cloud03 {
            width: 18.8%;
            top: 16%;
            right: 24%; } }
      #contents_block #mv .splash .cloud04 {
        top: 46px;
        right: -310px; }
        @media screen and (max-width: 640px) {
          #contents_block #mv .splash .cloud04 {
            width: 30.5%;
            top: 41%;
            right: 3%;
            transform: scale(-1, 1); } }
    #contents_block #mv.bgFade .splash {
      opacity: 1;
      transition: opacity .5s ease; }
      #contents_block #mv.bgFade .splash .cloud01,
      #contents_block #mv.bgFade .splash .cloud03 {
        animation: moveCloudRt 3.5s linear; }
        @media screen and (max-width: 640px) {
          #contents_block #mv.bgFade .splash .cloud01,
          #contents_block #mv.bgFade .splash .cloud03 {
            animation-duration: 7s; } }
      #contents_block #mv.bgFade .splash .cloud02,
      #contents_block #mv.bgFade .splash .cloud04 {
        animation: moveCloudLt 3.5s linear; }
        @media screen and (max-width: 640px) {
          #contents_block #mv.bgFade .splash .cloud02,
          #contents_block #mv.bgFade .splash .cloud04 {
            animation-duration: 7s; } }
    #contents_block #mv.animateStart .pkg01,
    #contents_block #mv.animateStart .pkg02 {
      transition: all 1s cubic-bezier(0.4, 0.455, 0.245, 0.855);
      opacity: 1; }
    #contents_block #mv.animateStart .pkg01 {
      transform: translateX(298px); }
      @media screen and (max-width: 640px) {
        #contents_block #mv.animateStart .pkg01 {
          transform: translateX(32vw); } }
    #contents_block #mv.animateStart .pkg02 {
      transform: translateX(-298px); }
      @media screen and (max-width: 640px) {
        #contents_block #mv.animateStart .pkg02 {
          transform: translateX(-32vw); } }
    #contents_block #mv.animateEnd::before {
      transition: height 1.2s ease-in-out .5s, opacity 1s ease-in-out .7s, box-shadow .5s ease-in-out 1s;
      height: 100%;
      opacity: 1;
      box-shadow: 0px 0px 0px 0px #ffffff inset; }
    #contents_block #mv.animateEnd::after {
      opacity: 1;
      transition: opacity .7s ease 2s; }
    #contents_block #mv.animateEnd .inner::after {
      opacity: 1;
      transition: opacity .5s ease-in-out .5s; }
    #contents_block #mv.animateEnd .pkg {
      transition-delay: 2s;
      transition-duration: 1s;
      box-shadow: 20px 20px 20px 0 rgba(0, 0, 0, 0.3); }
      @media screen and (max-width: 640px) {
        #contents_block #mv.animateEnd .pkg {
          box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3); } }
    #contents_block #mv.animateEnd .pkg01,
    #contents_block #mv.animateEnd .pkg02 {
      transition: all 1.1s ease .3s;
      transform: translateX(0); }
      #contents_block #mv.animateEnd .pkg01::after,
      #contents_block #mv.animateEnd .pkg02::after {
        opacity: 1;
        transition: opacity .3s 1.3s;
        box-shadow: 0px 0px 0px 0px #ffffff inset; }
    #contents_block #mv.animateEnd .pkg02 {
      margin-left: -1px; }
    #contents_block #mv.animateEnd .text {
      transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855) 2s;
      transform: translateX(0);
      opacity: 1; }
    #contents_block #mv.animateEnd .txt {
      opacity: 1;
      transition: opacity .7s ease 2s; }
    #contents_block #mv.animateEnd #sortLanguage {
      opacity: 1;
      pointer-events: all;
      transition: opacity .7s ease 2s; }
    #contents_block #mv.animateEnd .obj div {
      opacity: 1;
      transform: scale(1);
      transition: all .7s ease 2s; }
    #contents_block #mv.animateEnd .splash {
      transition: opacity .5s ease-in-out;
      opacity: 0; }
@keyframes moveCloudRt {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(50px); } }
@keyframes moveCloudLt {
  0% {
    transform: translateX(0); }
  100% {
    transform: translateX(-50px); } }
  #contents_block #lead .inner {
    z-index: 2;
    padding-top: 80px;
    padding-bottom: 330px;
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 640px) {
      #contents_block #lead .inner {
        padding-top: 8vw;
        padding-bottom: 69.3vw; } }
  #contents_block #lead h1 {
    width: 306px;
    margin: 0 auto;
    opacity: 0;
    transform: translateY(30px);
    position: relative;
    z-index: 2; }
    @media screen and (max-width: 640px) {
      #contents_block #lead h1 {
        width: 50.3%;
        transform: translateY(0); } }
    #contents_block #lead h1 img {
      width: 100%; }
  #contents_block #lead h2 {
    text-align: center;
    margin: 70px auto 0;
    opacity: 0;
    transform: translateY(30px);
    position: relative;
    z-index: 2;
    font-style: normal;
    font-weight: 400;
    font-size: 2.6rem; }
    @media screen and (max-width: 640px) {
      #contents_block #lead h2 {
        margin: 8vw auto 0; } }
  #contents_block #lead .text {
    margin: 27px auto 0;
    text-align: center;
    line-height: 2.3;
    opacity: 0;
    transform: translateY(30px);
    position: relative;
    z-index: 2;
    font-style: normal;
    font-weight: 400;
    font-size: 1.7rem; }
    @media screen and (max-width: 640px) {
      #contents_block #lead .text {
        margin: 6.6vw auto 0;
        line-height: 1.8; } }
    #contents_block #lead .text p {
      font-size: 1.7rem;
      color: #000;
      font-weight: 400; }
      @media screen and (max-width: 640px) {
        #contents_block #lead .text p {
          font-size: 4.2vw;
          line-height: 1.8;
          margin: 0 -5%; } }
  #contents_block #lead .obj > div {
    opacity: 0; }
  #contents_block #lead .fuji {
    width: 1900px;
    height: 835px;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -480px;
    z-index: 1;
    opacity: 0; }
    @media screen and (max-width: 640px) {
      #contents_block #lead .fuji {
        width: 200%;
        height: auto;
        padding-top: 84.164%;
        background-size: 100%;
        background-position: left bottom;
        bottom: -1%;
        left: -22%;
        margin-left: 0; } }
  #contents_block #lead .cloud01 {
    width: 243px;
    top: 121px;
    left: -128px;
    z-index: 2; }
    @media screen and (max-width: 640px) {
      #contents_block #lead .cloud01 {
        width: 21%;
        top: 70%;
        left: -2%; } }
  #contents_block #lead .cloud02 {
    width: 214px;
    top: 300px;
    right: -7px;
    z-index: 2; }
    @media screen and (max-width: 640px) {
      #contents_block #lead .cloud02 {
        width: 23%;
        top: 1%;
        right: 2%; } }
  #contents_block #lead .cloud03 {
    width: 114px;
    top: 177px;
    left: 1041px;
    z-index: 0; }
    #contents_block #lead .cloud03 img {
      transform: rotatey(180deg); }
    @media screen and (max-width: 640px) {
      #contents_block #lead .cloud03 {
        width: 14%;
        top: 56%;
        left: 83%; } }
  #contents_block #lead.animate::after {
    opacity: 1;
    transition: opacity 1.5s linear; }
  #contents_block #lead.animate h1 {
    transform: translateY(0);
    opacity: 1;
    transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855); }
  #contents_block #lead.animate h2 {
    transform: translateY(0);
    opacity: 1;
    transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855) 1s; }
  #contents_block #lead.animate .text {
    transform: translateY(0);
    opacity: 1;
    transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855) 1.6s; }
  #contents_block #lead.animate .obj > div {
    opacity: 1;
    transition: opacity 1.5s linear; }
  #contents_block #lead.spAnimate h1 {
    transform: translateY(0);
    opacity: 1;
    transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855); }
  #contents_block #lead.spAnimate .obj > div {
    opacity: 1;
    transition: opacity 1.5s linear; }
  #contents_block #lead.spAnimate.animate h2 {
    transition-delay: .3s; }
  #contents_block #lead.spAnimate.animate .text {
    transition-delay: .9s; }
@keyframes moveCloud {
  0% {
    transform: translateX(-25px); }
  100% {
    transform: translateX(25px); } }
  #contents_block #product {
    position: relative;
    background: url(../images/bg_square_black.gif);
    z-index: 3; }
    #contents_block #product:before {
      content: "";
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      bottom: 0;
      left: 0;
      background: linear-gradient(0deg, white 0%, rgba(255, 255, 255, 0) 100%);
      opacity: 0.6; }
    @media screen and (max-width: 640px) {
      #contents_block #product {
        background-size: 40px; } }
    #contents_block #product .inner {
      padding: 115px 0 72px;
      position: relative;
      z-index: 2; }
      @media screen and (max-width: 640px) {
        #contents_block #product .inner {
          padding: 13.3vw 5% 12vw; } }
    #contents_block #product .contents {
      display: flex;
      flex-flow: column-reverse;
      float: right;
      position: relative;
      z-index: 2; }
      @media screen and (max-width: 640px) {
        #contents_block #product .contents {
          display: block; } }
      #contents_block #product .contents .pkg {
        width: 299px;
        position: relative; }
        @media screen and (max-width: 640px) {
          #contents_block #product .contents .pkg {
            width: auto; } }
        #contents_block #product .contents .pkg figure {
          opacity: 0;
          box-shadow: 20px 20px 20px 0 rgba(0, 0, 0, 0.3);
          transform: translateX(30px); }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .pkg figure {
              width: 62.8%;
              margin: 0 auto;
              box-shadow: 10px 10px 10px 0 rgba(0, 0, 0, 0.3); } }
          #contents_block #product .contents .pkg figure img {
            width: 100%; }
        #contents_block #product .contents .pkg .ttl {
          position: absolute;
          width: 186px;
          top: 228px;
          text-align: left;
          opacity: 0;
          right: 325px;
          transform: translateX(-30px); }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .pkg .ttl {
              width: auto;
              position: static;
              margin: 8vw auto 0;
              right: inherit;
              transform: translateY(30px); } }
          #contents_block #product .contents .pkg .ttl h2 {
            font-style: normal;
            font-weight: 700;
            font-size: 2.8rem;
            line-height: 1.3;
            color: #ff3059; }
            @media screen and (max-width: 640px) {
              #contents_block #product .contents .pkg .ttl h2 {
                text-align: center;
                width: 56.7%;
                margin: 0 auto; } }
            #contents_block #product .contents .pkg .ttl h2 span {
              display: block;
              line-height: 1;
              margin-bottom: 20px; }
              @media screen and (max-width: 640px) {
                #contents_block #product .contents .pkg .ttl h2 span {
                  margin-bottom: 3.5vw; } }
              #contents_block #product .contents .pkg .ttl h2 span img {
                width: 100%; }
          #contents_block #product .contents .pkg .ttl .date {
            font-size: 1.6rem;
            margin-top: 10px;
            font-weight: 700;
            letter-spacing: 0.1em; }
            @media screen and (max-width: 640px) {
              #contents_block #product .contents .pkg .ttl .date {
                font-size: 4vw;
                text-align: center;
                margin-top: 1.3vw; } }
        #contents_block #product .contents .pkg .pattern {
          position: absolute;
          width: 223px;
          top: 380px;
          left: -247px;
          font-size: 1.7rem;
          border: 1px solid #6b7b81;
          padding: 10px;
          transform: translateX(-30px);
          opacity: 0; }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .pkg .pattern {
              display: table;
              width: auto;
              min-width: 56vw;
              padding: 2.6vw 3vw;
              position: relative;
              margin: 5.3vw auto 0;
              top: inherit;
              left: 4.8vw;
              transform: translateY(30px); } }
          #contents_block #product .contents .pkg .pattern img {
            position: absolute;
            top: -28px;
            left: -60px;
            width: 103px; }
          #contents_block #product .contents .pkg .pattern p {
            font-weight: 700;
            line-height: 1.5;
            font-size: 1.6rem;
            letter-spacing: -0.05em;
            padding-left: 30px;
            text-align: left; }
            @media screen and (max-width: 640px) {
              #contents_block #product .contents .pkg .pattern p {
                font-size: 4.3vw;
                padding-left: 8vw; } }
        #contents_block #product .contents .pkg.animate figure {
          transform: translateX(0);
          opacity: 1;
          transition: all 0.8s 0.2s cubic-bezier(0.4, 0.455, 0.245, 0.855); }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .pkg.animate figure {
              transform: translateY(0); } }
        #contents_block #product .contents .pkg.animate .ttl {
          opacity: 1;
          transition: all 0.8s cubic-bezier(0.4, 0.455, 0.245, 0.855);
          transform: translateX(0); }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .pkg.animate .ttl {
              transition-delay: .6s;
              transform: translateY(0); } }
        #contents_block #product .contents .pkg.animate .pattern {
          opacity: 1;
          transition: all 0.8s 0.2s cubic-bezier(0.4, 0.455, 0.245, 0.855);
          transform: translateX(0); }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .pkg.animate .pattern {
              transition-delay: .8s;
              transform: translateY(0); } }
      #contents_block #product .contents .text {
        width: 299px;
        display: table;
        position: relative;
        text-align: left;
        padding: 0 0 0 10px;
        opacity: 1;
        transition: all 0.8s 0.2s cubic-bezier(0.4, 0.455, 0.245, 0.855);
        transform: translateX(30px);
        opacity: 0; }
        @media screen and (max-width: 640px) {
          #contents_block #product .contents .text {
            width: auto;
            margin-top: 18.6vw;
            padding: 0 10.6vw 0 5.3vw;
            transform: translateY(30px); } }
        #contents_block #product .contents .text .subTxt {
          line-height: 1;
          margin: 0 0 27px; }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .text .subTxt {
              margin: 0 0 5.3vw; } }
        #contents_block #product .contents .text h3 {
          display: table;
          color: #ff3059;
          font-size: 3.4rem;
          font-weight: 700;
          margin-bottom: 30px;
          line-height: 1.6;
          letter-spacing: 0.07em; }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .text h3 {
              font-size: 8.5vw;
              margin: 0 0 5.3vw; } }
          #contents_block #product .contents .text h3 + p {
            font-weight: 700;
            font-size: 1.7rem;
            color: #fff; }
            @media screen and (max-width: 640px) {
              #contents_block #product .contents .text h3 + p {
                font-size: 4vw; } }
        #contents_block #product .contents .text.animate {
          opacity: 1;
          transition: all 0.8s cubic-bezier(0.4, 0.455, 0.245, 0.855);
          transform: translateX(0); }
          @media screen and (max-width: 640px) {
            #contents_block #product .contents .text.animate {
              transform: translateY(0); } }
    #contents_block #product .image {
      position: absolute;
      opacity: 0;
      top: -169px;
      left: -335px;
      transform: translateX(-100px); }
      @media screen and (max-width: 640px) {
        #contents_block #product .image {
          position: relative;
          margin-top: 8vw;
          top: 0 !important;
          width: 133.9%;
          left: -30%;
          transform: translateX(-50px); } }
      #contents_block #product .image p {
        position: absolute;
        opacity: 0; }
      #contents_block #product .image.animate {
        transition: all 0.8s cubic-bezier(0.4, 0.455, 0.245, 0.855);
        opacity: 1;
        transform: translateX(0); }
        @media screen and (max-width: 640px) {
          #contents_block #product .image.animate {
            transition-delay: 0.4s; } }
    #contents_block #product .sakura01 {
      width: 287px;
      top: 0;
      right: -270px;
      opacity: 0;
      transform: scale(0.5);
      transform-origin: center top; }
      @media screen and (max-width: 640px) {
        #contents_block #product .sakura01 {
          width: 45vw;
          top: 0;
          right: -11vw; } }
      #contents_block #product .sakura01.animate {
        opacity: 1;
        transform: scale(1);
        transition: all .7s ease; }
  #contents_block #feature {
    background: url(../images/bg_feature.png) center bottom;
    overflow: hidden; }
    @media screen and (max-width: 640px) {
      #contents_block #feature {
        padding: 24vw 0 0; } }
    #contents_block #feature .media {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      flex-direction: row-reverse; }
      @media screen and (max-width: 640px) {
        #contents_block #feature .media {
          display: block; } }
      #contents_block #feature .media .mediaImg {
        height: 610px;
        padding: 77px 0 0;
        position: relative;
        opacity: 0;
        transform: translateY(30px); }
        @media screen and (max-width: 640px) {
          #contents_block #feature .media .mediaImg {
            height: 122vw;
            padding: 9vw 0 0; } }
        #contents_block #feature .media .mediaImg .img {
          width: 325px;
          margin: 0 0 0 116px; }
          @media screen and (max-width: 640px) {
            #contents_block #feature .media .mediaImg .img {
              width: 58.6vw;
              margin: 0 0 0 17.3vw; } }
        #contents_block #feature .media .mediaImg p {
          position: absolute; }
          #contents_block #feature .media .mediaImg p::before {
            content: "";
            display: block;
            position: absolute;
            background-repeat: no-repeat;
            background-position: left top; }
          #contents_block #feature .media .mediaImg p img {
            position: relative;
            z-index: 2;
            opacity: 0; }
          #contents_block #feature .media .mediaImg p.feature01 {
            top: 63px;
            left: 270px; }
            @media screen and (max-width: 640px) {
              #contents_block #feature .media .mediaImg p.feature01 {
                width: 23vw;
                top: 7vw;
                left: 46vw; } }
            #contents_block #feature .media .mediaImg p.feature01::before {
              width: 0;
              height: 54px;
              top: 84px;
              left: -74px;
              background-image: url("../images/img_feature01_line.png");
              background-size: 131px; }
              @media screen and (max-width: 640px) {
                #contents_block #feature .media .mediaImg p.feature01::before {
                  height: 16vw;
                  top: 15vw;
                  left: -13vw;
                  background-image: url("../images/img_feature01_line_sp.png");
                  background-size: 25vw; } }
          #contents_block #feature .media .mediaImg p.feature02 {
            top: 239px;
            left: 37px; }
            @media screen and (max-width: 640px) {
              #contents_block #feature .media .mediaImg p.feature02 {
                width: 26vw;
                top: 39.5vw;
                left: 2vw; } }
            #contents_block #feature .media .mediaImg p.feature02::before {
              width: 0;
              height: 32px;
              top: 59px;
              right: -36px;
              background-image: url("../images/img_feature02_line.png");
              background-position: right top;
              background-size: 92px;
              transform-origin: right center; }
              @media screen and (max-width: 640px) {
                #contents_block #feature .media .mediaImg p.feature02::before {
                  height: 8vw;
                  top: 11vw;
                  right: -6.5vw;
                  background-image: url("../images/img_feature02_line_sp.png");
                  background-size: 18vw; } }
          #contents_block #feature .media .mediaImg p.feature03 {
            top: 322px;
            left: 391px; }
            @media screen and (max-width: 640px) {
              #contents_block #feature .media .mediaImg p.feature03 {
                width: 24.5vw;
                top: 54.5vw;
                left: 68vw; } }
            #contents_block #feature .media .mediaImg p.feature03::before {
              width: 0;
              height: 38px;
              top: 83px;
              left: -126px;
              background-image: url("../images/img_feature03_line.png");
              background-size: 133px; }
              @media screen and (max-width: 640px) {
                #contents_block #feature .media .mediaImg p.feature03::before {
                  height: 11vw;
                  top: 16vw;
                  left: -23.5vw;
                  background-image: url("../images/img_feature03_line_sp.png");
                  background-size: 25vw; } }
        #contents_block #feature .media .mediaImg.animate {
          transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855);
          transition-delay: 0.2s;
          opacity: 1;
          transform: translateY(0); }
          #contents_block #feature .media .mediaImg.animate p:before {
            transition: all .3s; }
          #contents_block #feature .media .mediaImg.animate p img {
            transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855);
            opacity: 1; }
          #contents_block #feature .media .mediaImg.animate p.feature01::before {
            width: 131px;
            transition-delay: 0.7s; }
            @media screen and (max-width: 640px) {
              #contents_block #feature .media .mediaImg.animate p.feature01::before {
                width: 25vw; } }
          #contents_block #feature .media .mediaImg.animate p.feature01 img {
            transition-delay: 1s; }
          #contents_block #feature .media .mediaImg.animate p.feature02::before {
            width: 92px;
            transition-delay: 0.9s; }
            @media screen and (max-width: 640px) {
              #contents_block #feature .media .mediaImg.animate p.feature02::before {
                width: 18vw; } }
          #contents_block #feature .media .mediaImg.animate p.feature02 img {
            transition-delay: 1.2s; }
          #contents_block #feature .media .mediaImg.animate p.feature03::before {
            width: 133px;
            transition-delay: 1.1s; }
            @media screen and (max-width: 640px) {
              #contents_block #feature .media .mediaImg.animate p.feature03::before {
                width: 25vw; } }
          #contents_block #feature .media .mediaImg.animate p.feature03 img {
            transition-delay: 1.4s; }
      #contents_block #feature .media .mediaBody {
        opacity: 0;
        transform: translateY(30px);
        text-align: left; }
        @media print, screen and (min-width: 641px) {
          #contents_block #feature .media .mediaBody {
            width: 440px; } }
        #contents_block #feature .media .mediaBody .lead {
          font-weight: 700;
          font-size: 2.2rem; }
          @media screen and (max-width: 640px) {
            #contents_block #feature .media .mediaBody .lead {
              font-size: 5.3vw;
              line-height: 2.1;
              margin-right: -5%; } }
        #contents_block #feature .media .mediaBody .note {
          font-weight: 700;
          font-size: 1.5rem;
          margin-top: 10px; }
          @media screen and (max-width: 640px) {
            #contents_block #feature .media .mediaBody .note {
              font-size: 4vw;
              margin-top: 2.6vw; } }
        #contents_block #feature .media .mediaBody.animate {
          transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855);
          opacity: 1;
          transform: translateY(0); }
    #contents_block #feature .obj div {
      position: absolute; }
    #contents_block #feature .obj .flower01 {
      width: 60px;
      top: 122px;
      left: 858px; }
      @media screen and (max-width: 640px) {
        #contents_block #feature .obj .flower01 {
          width: 16vw;
          top: -17vw;
          left: 76vw; } }
    #contents_block #feature .obj .flower02 {
      width: 51px;
      top: 160px;
      left: 5px; }
      @media screen and (max-width: 640px) {
        #contents_block #feature .obj .flower02 {
          width: 10vw;
          top: 89vw;
          left: 6vw; } }
    #contents_block #feature .obj .flower03 {
      width: 29px;
      top: 232px;
      left: 430px; }
      @media screen and (max-width: 640px) {
        #contents_block #feature .obj .flower03 {
          width: 5vw;
          top: 104vw;
          left: 80vw; } }
    #contents_block #feature .obj .flower04 {
      width: 37px;
      top: 457px;
      left: -22px; }
      @media screen and (max-width: 640px) {
        #contents_block #feature .obj .flower04 {
          width: 9vw;
          top: 164vw;
          left: 23vw; } }
  #contents_block #matcha {
    padding-top: 60px;
    opacity: 0;
    transform: translateY(30px); }
    @media screen and (max-width: 640px) {
      #contents_block #matcha {
        padding-top: 10.3vw; } }
    @media print, screen and (min-width: 641px) {
      #contents_block #matcha:before {
        content: "";
        width: 100%;
        height: 1038px;
        background: url(../images/bg_sakura.jpg) no-repeat top center;
        position: absolute;
        top: 165px;
        left: 0; } }
    @media screen and (max-width: 640px) {
      #contents_block #matcha .inner {
        padding: 0; } }
    #contents_block #matcha img {
      width: 100%; }
    #contents_block #matcha .media {
      max-width: 980px;
      margin: 0 auto;
      display: flex;
      flex-wrap: wrap;
      overflow: hidden; }
      @media screen and (max-width: 640px) {
        #contents_block #matcha .media {
          display: flex;
          flex-direction: column-reverse; } }
      #contents_block #matcha .media .mediaImg {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        width: 304px;
        position: relative;
        background-image: url("../images/bg_matcha01.png");
        background-repeat: repeat;
        background-position: left top;
        background-size: 220px; }
        @media screen and (max-width: 640px) {
          #contents_block #matcha .media .mediaImg {
            display: block;
            width: auto;
            background-size: 200px; } }
        #contents_block #matcha .media .mediaImg::before {
          content: "";
          display: block;
          width: 145px;
          height: 228px;
          position: absolute;
          top: -7px;
          left: -9px;
          background-image: url("../images/bg_matcha02.png");
          background-repeat: repeat;
          background-position: left top;
          background-size: 145px; }
        #contents_block #matcha .media .mediaImg figure {
          width: 233px;
          margin: 30px auto 0;
          position: relative;
          z-index: 2; }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaImg figure {
              width: 60vw;
              margin: 0 auto;
              padding: 12vw 0 9vw; } }
          #contents_block #matcha .media .mediaImg figure img {
            width: 100%; }
      #contents_block #matcha .media .mediaBody {
        position: relative;
        width: 676px;
        height: 530px;
        padding: 45px 0 0 40px;
        color: #480000;
        position: relative;
        background-image: url("../images/bg_matcha03.png");
        background-repeat: repeat;
        background-position: left top;
        background-size: 100px; }
        @media screen and (max-width: 640px) {
          #contents_block #matcha .media .mediaBody {
            width: auto;
            height: 230vw;
            padding: 4vw 5% 0;
            overflow: hidden; } }
        #contents_block #matcha .media .mediaBody::before, #contents_block #matcha .media .mediaBody::after {
          content: "";
          display: block;
          position: absolute;
          background-repeat: no-repeat;
          background-position: left top; }
        #contents_block #matcha .media .mediaBody::before {
          width: 319px;
          height: 279px;
          bottom: 382px;
          left: 233px;
          background-image: url("../images/bg_matcha04.png");
          background-size: 319px; }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaBody::before {
              width: 56vw;
              height: 74vw;
              bottom: 41vw;
              left: -26.5vw;
              background-size: 100%; } }
        #contents_block #matcha .media .mediaBody::after {
          width: 193px;
          height: 151px;
          bottom: 50px;
          right: -64px;
          background-image: url("../images/bg_matcha05.png");
          background-size: 193px; }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaBody::after {
              width: 38vw;
              height: 34vw;
              bottom: -1vw;
              right: -8.5vw;
              background-size: 100%; } }
        #contents_block #matcha .media .mediaBody .logo {
          width: 196px;
          margin: 0 0 22px 32px;
          position: relative;
          z-index: 2; }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaBody .logo {
              width: 52.1vw;
              margin: 0 auto 6vw; } }
        #contents_block #matcha .media .mediaBody .box {
          position: relative;
          z-index: 2;
          padding-left: 50px;
          text-align: left; }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaBody .box {
              padding-left: 12vw; } }
          #contents_block #matcha .media .mediaBody .box .sub {
            position: absolute;
            top: 0;
            left: 0;
            padding-right: 8px;
            border-right: 1px solid #d9a661;
            height: 100%; }
            @media screen and (max-width: 640px) {
              #contents_block #matcha .media .mediaBody .box .sub {
                padding: 0 2.5vw; } }
            #contents_block #matcha .media .mediaBody .box .sub img {
              width: 12px; }
              @media screen and (max-width: 640px) {
                #contents_block #matcha .media .mediaBody .box .sub img {
                  width: 3.2vw; } }
          #contents_block #matcha .media .mediaBody .box h2 {
            width: 160px;
            display: inline-block;
            margin-bottom: 6px; }
            @media screen and (max-width: 640px) {
              #contents_block #matcha .media .mediaBody .box h2 {
                width: 42.6vw;
                margin-left: 12vw; } }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaBody .box .ttl {
              width: 80%;
              margin: 0 auto;
              padding-left: 0; } }
          #contents_block #matcha .media .mediaBody .box .ttl .info {
            display: flex;
            align-items: flex-end; }
            #contents_block #matcha .media .mediaBody .box .ttl .info .limited {
              width: 67px;
              margin-right: 16px; }
              @media screen and (max-width: 640px) {
                #contents_block #matcha .media .mediaBody .box .ttl .info .limited {
                  width: 17.8vw; } }
            #contents_block #matcha .media .mediaBody .box .ttl .info .detail .capacity {
              width: 70px;
              display: inline-block; }
              @media screen and (max-width: 640px) {
                #contents_block #matcha .media .mediaBody .box .ttl .info .detail .capacity {
                  width: 20vw;
                  display: block;
                  margin: 3.3vw auto 0 0; } }
            #contents_block #matcha .media .mediaBody .box .ttl .info .detail .date {
              font-size: 1.6rem;
              font-weight: 700;
              letter-spacing: .1em; }
              @media screen and (max-width: 640px) {
                #contents_block #matcha .media .mediaBody .box .ttl .info .detail .date {
                  font-size: 4.2vw;
                  margin: 1.3vw auto 0 0; } }
          #contents_block #matcha .media .mediaBody .box .lead {
            margin-top: 24px;
            font-weight: 700;
            font-size: 1.6rem;
            line-height: 1.9;
            position: relative;
            z-index: 2; }
            @media screen and (max-width: 640px) {
              #contents_block #matcha .media .mediaBody .box .lead {
                font-size: 3.8vw;
                margin: 4vw -5% 0 0; } }
          #contents_block #matcha .media .mediaBody .box .note {
            font-weight: 700;
            font-size: 1.4rem;
            margin-top: 2px; }
            @media screen and (max-width: 640px) {
              #contents_block #matcha .media .mediaBody .box .note {
                margin-top: 0.5vw;
                font-size: 3.7vw; } }
        #contents_block #matcha .media .mediaBody .img {
          position: absolute;
          right: 18px;
          top: 46px;
          width: 295px;
          z-index: 2; }
          @media screen and (max-width: 640px) {
            #contents_block #matcha .media .mediaBody .img {
              right: 16vw;
              top: inherit;
              bottom: -20vw;
              width: 70.6vw; } }
    #contents_block #matcha.animate {
      transition: all 0.7s cubic-bezier(0.4, 0.455, 0.245, 0.855);
      opacity: 1;
      transform: translateY(0); }
  #contents_block #about {
    padding: 70px 0 90px;
    position: relative;
    z-index: 11; }
    @media screen and (max-width: 640px) {
      #contents_block #about {
        padding: 50px 0 55px; } }
    #contents_block #about h2 {
      text-align: center;
      line-height: 1; }
    #contents_block #about .text {
      margin: 30px auto 0;
      font-size: 1.5rem;
      text-align: center; }
      @media screen and (max-width: 640px) {
        #contents_block #about .text {
          font-size: 1.4rem;
          margin: 20px auto 0; } }
      @media screen and (max-width: 361px) {
        #contents_block #about .text {
          font-size: 1.2rem; } }
      #contents_block #about .text p {
        font-family: 'Noto Sans JP', sans-serif; }
      #contents_block #about .text p + p {
        margin-top: 30px; }
        @media screen and (max-width: 640px) {
          #contents_block #about .text p + p {
            margin-top: 20px; } }
    #contents_block #about figure {
      text-align: center;
      margin: 50px auto 0; }
      @media screen and (max-width: 640px) {
        #contents_block #about figure {
          margin: 25px auto 0; } }
    #contents_block #about .btn {
      width: 380px;
      margin: 60px auto 0; }
      @media screen and (max-width: 640px) {
        #contents_block #about .btn {
          width: 70%;
          margin: 35px auto 0;
          max-width: 235px; } }
      #contents_block #about .btn a {
        display: block;
        font-family: futura-pt, sans-serif;
        font-style: normal;
        font-weight: 300;
        height: 80px;
        background: url(../images/arrow_lt.svg) 96% center/8px 15px no-repeat #ab1500;
        font-size: 2.2rem;
        color: #fff;
        text-align: center;
        padding: 28px 0;
        font-weight: 400;
        letter-spacing: 0.05em;
        border: 2px solid #ab1500;
        line-height: 1;
        transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
        -webkit-transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1); }
        @media print, screen and (min-width: 641px) {
          #contents_block #about .btn a:hover {
            background-image: url(../images/arrow_lt_on.svg);
            background-color: #fff;
            color: #ab1500; } }
        @media screen and (max-width: 640px) {
          #contents_block #about .btn a {
            height: 60px;
            padding: 19px 0;
            font-size: 1.7rem;
            background-size: 6px 12px;
            background-position: 94% center; } }
  #contents_block .share {
    text-align: center;
    position: relative;
    z-index: 11; }
    @media print, screen and (min-width: 641px) {
      #contents_block .share {
        padding-bottom: 20px; } }
    #contents_block .share img {
      width: 100%; }
    #contents_block .share dt {
      display: inline-block;
      width: 95px;
      vertical-align: middle;
      margin-right: 20px;
      line-height: 1; }
      @media screen and (max-width: 640px) {
        #contents_block .share dt {
          width: 70px;
          margin-right: 13px; } }
    #contents_block .share dd {
      display: inline-block;
      width: 60px;
      vertical-align: middle;
      line-height: 1; }
      @media screen and (max-width: 640px) {
        #contents_block .share dd {
          width: 40px; } }
      #contents_block .share dd + dd {
        margin-left: 15px; }
        @media screen and (max-width: 640px) {
          #contents_block .share dd + dd {
            margin-left: 12px; } }
      @media print, screen and (min-width: 641px) {
        #contents_block .share dd a {
          transition: opacity .3s ease; }
          #contents_block .share dd a:hover {
            opacity: .7; } }
  #contents_block .sakuraAnime {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    opacity: 0;
    transition: 1s ease; }
    @media print, screen and (min-width: 641px) {
      #contents_block .sakuraAnime {
        min-width: 1800px;
        width: 100vw; } }
    @media screen and (max-width: 640px) {
      #contents_block .sakuraAnime {
        left: 50%;
        transform: translateX(-50%); } }
    #contents_block .sakuraAnime img {
      width: 100%; }
      @media screen and (max-width: 640px) {
        #contents_block .sakuraAnime img {
          width: auto;
          height: 100vh; } }
    #contents_block .sakuraAnime.show {
      opacity: 1; }
  #contents_block.en #mv .inner, #contents_block.cn #mv .inner, #contents_block.kr #mv .inner {
    height: 810px;
    padding-top: 40px; }
    @media screen and (max-width: 640px) {
      #contents_block.en #mv .inner, #contents_block.cn #mv .inner, #contents_block.kr #mv .inner {
        height: 110vw;
        padding-top: 12vw; } }
  #contents_block.en #mv .text, #contents_block.cn #mv .text, #contents_block.kr #mv .text {
    transform: translateX(0);
    transform: translateY(30px);
    position: static;
    top: inherit;
    left: inherit;
    width: 280px;
    margin: 0 auto 30px; }
    @media screen and (max-width: 640px) {
      #contents_block.en #mv .text, #contents_block.cn #mv .text, #contents_block.kr #mv .text {
        width: 140px;
        margin: 0 auto 15px; } }
    #contents_block.en #mv .text img, #contents_block.cn #mv .text img, #contents_block.kr #mv .text img {
      width: 100%;
      height: auto; }
  #contents_block.en #mv #sortLanguage, #contents_block.cn #mv #sortLanguage, #contents_block.kr #mv #sortLanguage {
    top: 2%; }
  #contents_block.en #mv.animateEnd .text, #contents_block.cn #mv.animateEnd .text, #contents_block.kr #mv.animateEnd .text {
    transform: translateY(0); }
  @media screen and (max-width: 640px) {
    #contents_block.en #lead .text p, #contents_block.cn #lead .text p, #contents_block.kr #lead .text p {
      margin: 0 -2%; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #feature .media .mediaBody, #contents_block.cn #feature .media .mediaBody, #contents_block.kr #feature .media .mediaBody {
      width: 440px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaBody .lead, #contents_block.cn #feature .media .mediaBody .lead, #contents_block.kr #feature .media .mediaBody .lead {
      margin-right: 0; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaImg p.feature01, #contents_block.cn #feature .media .mediaImg p.feature01, #contents_block.kr #feature .media .mediaImg p.feature01 {
      width: 43.4vw;
      top: 16vw;
      left: 50vw; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #feature .media .mediaImg p.feature01 img, #contents_block.cn #feature .media .mediaImg p.feature01 img, #contents_block.kr #feature .media .mediaImg p.feature01 img {
      top: 25px;
      left: -20px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaImg p.feature01:before, #contents_block.cn #feature .media .mediaImg p.feature01:before, #contents_block.kr #feature .media .mediaImg p.feature01:before {
      top: 5vw;
      left: -18vw; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #feature .media .mediaImg p.feature02, #contents_block.cn #feature .media .mediaImg p.feature02, #contents_block.kr #feature .media .mediaImg p.feature02 {
      top: 353px;
      left: 15px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaImg p.feature02, #contents_block.cn #feature .media .mediaImg p.feature02, #contents_block.kr #feature .media .mediaImg p.feature02 {
      width: 38.8vw;
      top: 56.5vw;
      left: -2vw; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #feature .media .mediaImg p.feature02:before, #contents_block.cn #feature .media .mediaImg p.feature02:before, #contents_block.kr #feature .media .mediaImg p.feature02:before {
      top: -30px;
      right: 3px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaImg p.feature02:before, #contents_block.cn #feature .media .mediaImg p.feature02:before, #contents_block.kr #feature .media .mediaImg p.feature02:before {
      top: -6vw;
      right: 2.5vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaImg p.feature03, #contents_block.cn #feature .media .mediaImg p.feature03, #contents_block.kr #feature .media .mediaImg p.feature03 {
      width: 38.1vw;
      top: 54.5vw;
      left: 68vw; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #feature .media .mediaImg p.feature03 img, #contents_block.cn #feature .media .mediaImg p.feature03 img, #contents_block.kr #feature .media .mediaImg p.feature03 img {
      top: 15px;
      left: -90px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #feature .media .mediaImg p.feature03 img, #contents_block.cn #feature .media .mediaImg p.feature03 img, #contents_block.kr #feature .media .mediaImg p.feature03 img {
      top: 7vw;
      right: 13.5vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #matcha .media .mediaBody .logo, #contents_block.cn #matcha .media .mediaBody .logo, #contents_block.kr #matcha .media .mediaBody .logo {
      margin: 8px 0 16px 20vw; } }
  #contents_block.en #matcha .media .mediaBody .box h2, #contents_block.cn #matcha .media .mediaBody .box h2, #contents_block.kr #matcha .media .mediaBody .box h2 {
    width: auto;
    display: inline-block;
    margin-bottom: 2px;
    font-size: 2.8rem;
    line-height: 1.3;
    font-weight: 700; }
    @media screen and (max-width: 640px) {
      #contents_block.en #matcha .media .mediaBody .box h2, #contents_block.cn #matcha .media .mediaBody .box h2, #contents_block.kr #matcha .media .mediaBody .box h2 {
        margin: 0 0 8px 10vw;
        font-size: 7.2vw; } }
  #contents_block.en #matcha .media .mediaBody .box .ttl, #contents_block.cn #matcha .media .mediaBody .box .ttl, #contents_block.kr #matcha .media .mediaBody .box .ttl {
    width: 88%;
    margin: 0 12vw 0 0;
    padding-left: 0; }
    @media screen and (max-width: 640px) {
      #contents_block.en #matcha .media .mediaBody .box .ttl, #contents_block.cn #matcha .media .mediaBody .box .ttl, #contents_block.kr #matcha .media .mediaBody .box .ttl {
        position: relative;
        margin: 0 12vw 0 -2vw;
        text-align: center; } }
    #contents_block.en #matcha .media .mediaBody .box .ttl .info, #contents_block.cn #matcha .media .mediaBody .box .ttl .info, #contents_block.kr #matcha .media .mediaBody .box .ttl .info {
      align-items: flex-start;
      position: relative; }
      @media screen and (max-width: 640px) {
        #contents_block.en #matcha .media .mediaBody .box .ttl .info, #contents_block.cn #matcha .media .mediaBody .box .ttl .info, #contents_block.kr #matcha .media .mediaBody .box .ttl .info {
          flex-direction: column; } }
      #contents_block.en #matcha .media .mediaBody .box .ttl .info .limited, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .limited, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .limited {
        font-size: 1.4rem;
        font-weight: 700;
        position: static;
        top: inherit;
        left: inherit;
        border: 1px solid #480000;
        line-height: 1;
        padding: 5px 10px;
        margin: 0 8px 5px 0;
        width: auto;
        display: table; }
        @media screen and (max-width: 640px) {
          #contents_block.en #matcha .media .mediaBody .box .ttl .info .limited, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .limited, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .limited {
            position: absolute;
            top: 0;
            left: 13vw;
            font-size: 3.7vw;
            padding: 1.5vw 3vw;
            margin-bottom: 2vw; } }
      #contents_block.en #matcha .media .mediaBody .box .ttl .info .capacity, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .capacity, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .capacity {
        font-size: 1.4rem;
        font-weight: 700;
        background: url("../images/bg_gold.png") repeat-y center top/100%;
        text-align: center;
        height: 26px;
        line-height: 26px;
        position: relative; }
        @media screen and (max-width: 640px) {
          #contents_block.en #matcha .media .mediaBody .box .ttl .info .capacity, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .capacity, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .capacity {
            position: absolute;
            top: 0;
            left: 36vw;
            display: block;
            width: 20vw;
            height: 6.9vw;
            margin-top: 0;
            line-height: 6.9vw;
            font-size: 3.7vw; } }
        @media screen and (max-width: 361px) {
          #contents_block.en #matcha .media .mediaBody .box .ttl .info .capacity, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .capacity, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .capacity {
            left: 36vw; } }
      #contents_block.en #matcha .media .mediaBody .box .ttl .info .date, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .date, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .date {
        position: absolute;
        top: 27px;
        left: 0; }
        @media screen and (max-width: 640px) {
          #contents_block.en #matcha .media .mediaBody .box .ttl .info .date, #contents_block.cn #matcha .media .mediaBody .box .ttl .info .date, #contents_block.kr #matcha .media .mediaBody .box .ttl .info .date {
            position: static;
            margin: 8vw 0 0 14vw; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #matcha .media .mediaBody .box .lead, #contents_block.cn #matcha .media .mediaBody .box .lead, #contents_block.kr #matcha .media .mediaBody .box .lead {
      line-height: 1.6;
      margin-top: 43px;
      width: 280px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #matcha .media .mediaBody .box .lead, #contents_block.cn #matcha .media .mediaBody .box .lead, #contents_block.kr #matcha .media .mediaBody .box .lead {
      margin-top: 4vw;
      margin-right: 0; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #matcha .media .mediaBody .box .note, #contents_block.cn #matcha .media .mediaBody .box .note, #contents_block.kr #matcha .media .mediaBody .box .note {
      line-height: 1.6;
      margin-top: 10px;
      width: 280px; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #matcha .media .mediaBody .box .note, #contents_block.cn #matcha .media .mediaBody .box .note, #contents_block.kr #matcha .media .mediaBody .box .note {
      margin-top: 2vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.cn #matcha .media .mediaBody .box .ttl .limited, #contents_block.kr #matcha .media .mediaBody .box .ttl .limited {
      left: 12vw; } }
  @media screen and (max-width: 361px) {
    #contents_block.cn #matcha .media .mediaBody .box .ttl .limited, #contents_block.kr #matcha .media .mediaBody .box .ttl .limited {
      bottom: 5vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.cn #matcha .media .mediaBody .box h2, #contents_block.kr #matcha .media .mediaBody .box h2 {
      margin-left: 19vw; } }
  #contents_block.en #lead h2 {
    line-height: 1.4; }
  #contents_block.en #product .contents .text h3 {
    font-size: 2.8rem;
    line-height: 1.3; }
  @media print, screen and (min-width: 641px) {
    #contents_block.en #product .contents .pkg .ttl {
      width: 230px;
      margin-right: -20px; } }
  #contents_block.en #product .contents .pkg .ttl h2 {
    font-size: 2.6rem;
    line-height: 1.3; }
    @media print, screen and (min-width: 641px) {
      #contents_block.en #product .contents .pkg .ttl h2 span {
        width: 196px;
        margin-bottom: 14px; } }
  #contents_block.en #product .contents .pkg .ttl .date {
    letter-spacing: normal; }
  @media screen and (max-width: 640px) {
    #contents_block.en #product .contents .pkg .pattern {
      margin: 8.3vw auto 0; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #product .contents .text {
      margin-top: 24.6vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #matcha .media .mediaBody {
      height: 240vw; } }
  @media screen and (max-width: 361px) {
    #contents_block.en #matcha .media .mediaBody .box .ttl .info .limited {
      left: 12vw;
      bottom: 10.5vw; } }
  @media screen and (max-width: 361px) {
    #contents_block.en #matcha .media .mediaBody .box .ttl .info .capacity {
      left: 38vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #matcha .media .mediaBody .box h2 {
      margin-left: 9vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.en #matcha .media .mediaBody .box .ttl .info .date {
      margin-left: 4vw; } }
  #contents_block.cn #lead h2 {
    font-size: 2.4rem; }
  #contents_block.cn #product .contents .pkg .ttl h2 {
    line-height: 1.3; }
  @media screen and (max-width: 640px) {
    #contents_block.cn #product .contents .text h3 {
      font-size: 2.8rem; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.cn #product .contents .pkg .ttl h2 span {
      margin-bottom: 14px; } }
  @media screen and (max-width: 640px) {
    #contents_block.cn #product .contents .pkg .pattern {
      margin: 8.3vw auto 0; } }
  @media screen and (max-width: 640px) {
    #contents_block.cn #product .contents .text {
      margin-top: 24.6vw; } }
  #contents_block.cn #product .contents .text h3 {
    margin-right: -6vw; }
  #contents_block.cn #about .text p {
    font-family: 'Noto Sans SC',sans-serif; }
  @media screen and (max-width: 640px) {
    #contents_block.cn #matcha .media .mediaBody {
      height: 220vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.cn #matcha .media .mediaBody .box .ttl .info .date {
      margin-left: 15.5vw; } }
  #contents_block.kr #product .contents .pkg .ttl h2 {
    line-height: 1.3; }
  @media screen and (max-width: 640px) {
    #contents_block.kr #product .contents .text h3 {
      font-size: 2.8rem; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.kr #product .contents .pkg .ttl h2 span {
      margin-bottom: 14px; } }
  @media print, screen and (min-width: 641px) {
    #contents_block.kr #product .contents .pkg .pattern {
      width: 250px;
      left: -277px; } }
  #contents_block.kr #about .text p {
    font-family: 'Noto Sans KR',sans-serif; }
  @media screen and (max-width: 640px) {
    #contents_block.kr #matcha .media .mediaBody {
      height: 220vw; } }
  @media screen and (max-width: 640px) {
    #contents_block.kr #matcha .media .mediaBody .box .ttl .info .date {
      margin-left: 21vw; } }
  @media screen and (max-width: 361px) {
    #contents_block.kr #matcha .media .mediaBody .box .ttl .info .date {
      margin-left: 19vw; } }

.pppmenu_pc,
.pppmenu_sp,
#brandsite_nav,
#brandsite_nav-sp,
#footer_glonavi,
#smp_footer_glonavi {
  position: relative;
  z-index: 9999; }

.pppmenu_pc,
.pppmenu_sp {
  background: #fff; }
