@charset "UTF-8";
.pos-fixed {
  position: fixed; }

/*==============================================================================


 mobile device styles


==============================================================================*/
/*------------------------------------------------------------------------------

  Header

------------------------------------------------------------------------------*/
.header {
  padding-top: 40px; }
  .header .pos-fixed {
    border-bottom: 1px solid #FFFFFF;
    top: 0;
    width: 100%;
    z-index: 1; }
  .header-navi {
    overflow: hidden;
    *zoom: 1;
    position: absolute;
    top: 0px;
    width: 100%; }
    .header-navi .header-navi__cart {
      float: right; }
      .header-navi .header-navi__cart a {
        display: block;
        height: 40px;
        width: 50px;
        text-align: center;
        color: #e54949; }
        .header-navi .header-navi__cart a i {
          font-size: 240%;
          line-height: 40px; }

.to-lineup {
  width: 90%;
  margin: -1em auto 5px;
  text-align: right; }
  .to-lineup a {
    display: inline-block; }
    .to-lineup a i {
      font-size: 210%;
      vertical-align: middle; }
    .to-lineup a span {
      font-size: 140%;
      vertical-align: middle; }

/*------------------------------------------------------------------------------

  Navi [responsive-nav.js 1.0.39 by @viljamis]

------------------------------------------------------------------------------*/
.nav-collapse {
  clear: both;
  background-color: #FFFFFF; }
  .nav-collapse ul {
    margin: 0;
    padding: 0;
    width: 100%;
    display: block;
    list-style: none; }
  .nav-collapse li {
    display: block;
    width: 100%; }
  .nav-collapse a {
    border-bottom: 1px solid #e6e6e6;
    display: block;
    padding: 0 8px; }
    .nav-collapse a i {
      vertical-align: middle;
      font-size: 240%; }
    .nav-collapse a span {
      vertical-align: middle;
      font-size: 160%;
      font-weight: bold; }
    .nav-collapse a:after {
      content: "";
      display: inline-block;
      height: 44px;
      margin-left: -1px;
      width: 1px;
      vertical-align: middle; }
  .js .nav-collapse {
    clip: rect(0 0 0 0);
    max-height: 0;
    position: absolute;
    display: block;
    overflow: hidden;
    zoom: 1; }
  .nav-collapse.opened {
    max-height: 9999px; }
  .nav-collapse__cupshop {
    display: none !important; }

.nav-toggle {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
  display: block;
  float: left;
  height: 40px;
  width: 50px;
  color: #000000;
  text-align: center; }
  .nav-toggle:link, .nav-toggle:visited, .nav-toggle:hover, .nav-toggle:active {
    color: #000000; }
  .nav-toggle:before {
    content: "\e910";
    font-family: "Hobonichi-Icons";
    font-size: 24px;
    line-height: 40px; }
  .nav-toggle.active:before {
    content: "\e915"; }

/*------------------------------------------------------------------------------

  sale

------------------------------------------------------------------------------*/
.sale {
  margin: 0 auto 20px;
  padding: 20px 0 0 0;
  width: 100%; }
  .sale p {
    font-size: 160%;
    letter-spacing: 0;
    line-height: 1.75; }
  .sale ul.list {
    list-style-type: disc;
    margin: 1.6em auto;
    padding-left: 20px; }
    .sale ul.list li {
      list-style-type: disc;
      font-size: 160%;
      letter-spacing: 0;
      line-height: 1.75; }
  .sale__photo {
    border-radius: 16px;
    border: 4px solid #FFFFFF;
    background-color: #FFFFFF;
    overflow: hidden;
    line-height: 1; }
    .sale__photo img {
      width: 100%;
      vertical-align: top; }
    .sale__photo p {
      margin: 5px 0 0 5px;
      font-size: 140%;
      line-height: 1.5; }
  .sale__info {
    border: 4px solid #e54949;
    border-radius: 16px;
    padding: 20px; }
    .sale__info p {
      margin: 0;
      font-size: 180%;
      font-weight: bold; }
  .sale-header__slide {
    border-bottom: 4px solid #FFFFFF;
    margin: 0;
    line-height: 1;
    position: relative; }
    .sale-header__slide img {
      border-radius: 16px 16px 0 0;
      overflow: hidden;
      width: 100%; }
      .sale-header__slide img.lazy {
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -16px;
        margin-left: -16px;
        width: auto; }
  .sale-header__lead {
    margin: 20px auto;
    width: 90%; }
    .sale-header__lead p {
      color: #000000;
      font-size: 160%;
      font-weight: bold;
      line-height: 1.75; }
  .sale-header__navi {
    margin: 20px auto;
    width: 90%; }
    .sale-header__navi li {
      border-bottom: 1px solid #cccccc;
      color: #000000;
      font-size: 140%;
      font-weight: bold;
      line-height: 1.4; }
      .sale-header__navi li a {
        display: block;
        padding: 8px 0 8px 1em;
        text-indent: -1em; }
      .sale-header__navi li:first-child {
        border-top: 1px solid #cccccc; }
  .sale-products h2 {
    border-bottom: 4px solid #e54949;
    margin: 0px auto 10px;
    padding: 20px 0 10px;
    font-size: 240%;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    width: 93.33334%; }
  .sale-products ul {
    display: flex;
    flex-wrap: wrap;
    letter-spacing: 0;
    width: 96.66667%;
    margin: 0 auto; }
  .sale-products:after {
    content: "";
    display: block;
    width: 93.33334%;
    border-top: 4px solid #e54949;
    margin: 10px auto; }
  .sale-item {
    width: 50%;
    padding: 1.72414%;
    vertical-align: top;
    font-family: "Hiragino Maru Gothic W4 JIS2004", sans-serif;
    text-align: left;
    letter-spacing: 0.075em; }
    .sale-item a {
      display: flex;
      height: 100%;
      flex-direction: column;
      border-radius: 16px;
      box-shadow: 0 3px 0 #e9d4ab;
      transition: all 0.3s; }
      .sale-item a:active {
        box-shadow: 0 0 0 #e9d4ab;
        transition-duration: 0.1s;
        transform: translateY(2px);
        opacity: 1; }
    .sale-item__photo {
      position: relative;
      padding-top: 66.75%; }
      .sale-item__photo img {
        position: absolute;
        top: 0;
        left: 0;
        border-radius: 16px 16px 0 0;
        overflow: hidden;
        width: 100%; }
    .sale-item__text {
      background-color: #FFFFFF;
      border-radius: 0 0 16px 16px;
      padding: 18px 8px 26px 8px;
      position: relative;
      min-height: 125px;
      height: 100%; }
      .sold .sale-item__text {
        background-color: #e6e6e6; }
        .sold .sale-item__text h3 {
          color: gray; }
        .sold .sale-item__text .price {
          color: gray; }
          .sold .sale-item__text .price em {
            font-style: normal; }
      .sold a:hover .sale-item__text {
        background-color: #e6e6e6 !important; }
      .sale-item__text h3 {
        margin: 0 0 5px 0;
        color: #000000;
        font-size: 140%;
        line-height: 1.4; }
        .sale-item__text h3 small {
          font-weight: normal;
          letter-spacing: 0; }
          .sale-item__text h3 small span {
            display: block;
            text-indent: -0.5em;
            margin-right: -0.5em; }
      .sale-item__text p {
        margin: 0;
        font-size: 140%;
        line-height: 1.75; }
        .sale-item__text p .price {
          color: #e54949;
          font-weight: bold; }
        .sale-item__text p.more {
          position: absolute;
          right: 5px;
          bottom: 5px;
          line-height: 1;
          text-align: right; }
          .sale-item__text p.more i {
            font-size: 107.142857143%;
            vertical-align: middle; }
          .sale-item__text p.more span {
            font-size: 71.4285714286%;
            font-weight: bold;
            vertical-align: middle; }
        .sale-item__text p.cap {
          line-height: 1.5;
          margin: 5px auto;
          font-size: 12px;
          letter-spacing: 0.05em; }
      .sale-item__text div {
        background-color: #e54949;
        border-radius: 6px;
        display: block;
        color: #FFFFFF;
        font-size: 12px;
        font-weight: bold;
        text-align: center; }

.type-teabag .sale-item__text, .type-boil .sale-item__text, .type-teabag-boil .sale-item__text {
  position: relative; }
  .type-teabag .sale-item__text:after, .type-boil .sale-item__text:after, .type-teabag-boil .sale-item__text:after {
    border-radius: 0 0 4px 0;
    display: block;
    padding: 2px 4px;
    position: absolute;
    left: 0px;
    top: 0px;
    color: #FFFFFF;
    font-size: 100%;
    font-weight: bold;
    letter-spacing: 0;
    line-height: 1; }

.type-teabag .sale-item__text:after {
  content: "ティーバッグ";
  background-color: #498ee8; }

.type-boil .sale-item__text:after {
  content: "煮出し用";
  background-color: #e54949; }

.type-teabag-boil .sale-item__text:after {
  content: "ティーバッグ＋煮出し用";
  background-color: #b29f79; }

.cup_shop_banner {
  display: none !important;
  margin: 20px auto 0;
  width: 90%;
  max-width: 510px; }
  .cup_shop_banner a {
    display: block;
    padding: 5.8823529412% 8.8235294118% 2.9411764706%;
    border-radius: 8px;
    border: 2px solid #d5af38;
    background-color: #FFFFFF;
    text-align: center; }
    .cup_shop_banner a img {
      width: 100%; }
  .cup_shop_banner div {
    margin-top: 10px;
    line-height: 1; }
  .cup_shop_banner i {
    font-size: 240%; }

/*------------------------------------------------------------------------------

  Slide

------------------------------------------------------------------------------*/
.bx-wrapper {
  margin-bottom: 30px; }

.bx-wrapper .bx-viewport {
  border: 0;
  left: 0;
  box-shadow: 0 0 0 transparent; }

/*------------------------------------------------------------------------------

  article

------------------------------------------------------------------------------*/
.article .credit {
  padding-bottom: 10px;
  text-align: center; }
  .article .credit dl {
    overflow: hidden;
    *zoom: 1;
    display: inline-block;
    margin: 0; }
  .article .credit dt, .article .credit dd {
    font-size: 120%;
    text-align: left; }
  .article .credit dt {
    float: left;
    font-weight: bold; }
  .article .credit dd span {
    white-space: nowrap; }

/*==============================================================================


 small device styles


==============================================================================*/
@media only screen and (max-width: 600px) {
  .hidden-sp {
    display: none; }
  .visible-block {
    display: block !important; }
  .visible-inline-block {
    display: inline-block !important; }
  .visible-inline {
    display: inline !important; } }

/*==============================================================================


 large device styles [width >= 601]


==============================================================================*/
@media only screen and (min-width: 601px) {
  .visible-sp {
    display: none; }
  .visible-block,
  .visible-inline-block,
  .visible-inline {
    display: none !important; }
  /*------------------------------------------------------------------------------

	  [PC] contents

	------------------------------------------------------------------------------*/
  .contents {
    max-width: 960px; }
  /*------------------------------------------------------------------------------

	  [PC] sale

	------------------------------------------------------------------------------*/
  .sale p {
    letter-spacing: 0.075em; }
  .sale__photo p {
    font-size: 140%; }
  .sale__info p {
    font-size: 200%; }
  .sale-header .sale-header__lead {
    margin: 40px auto; }
  .sale-products h2 {
    width: 91.66667%; }
  .sale-products:after {
    content: "";
    display: block;
    width: 91.66667%;
    border-top: 4px solid #e54949;
    margin: 20px auto; }
  .sale-item {
    width: 33.33333%;
    padding: 1.388889%; }
    .sale-item a {
      border-radius: 16px;
      box-shadow: 0 4px 0 #e9d4ab; }
      .sale-item a:hover {
        box-shadow: 0 2px 0 #e9d4ab;
        transform: translateY(2px);
        opacity: 1; }
        .sale-item a:hover .sale-item__text {
          background-color: #f2f2f2; }
          .sale-item a:hover .sale-item__text p.more {
            color: #a4c7f4; }
      .sale-item a:active {
        box-shadow: 0 0 0 #e9d4ab;
        transition-duration: 0.1s;
        transform: translateY(4px);
        opacity: 1; }
    .sale-item__photo {
      line-height: 1; }
    .sale-item__text {
      background-color: #FFFFFF;
      border-radius: 0 0 16px 16px;
      padding: 18px 8px 26px 8px;
      position: relative;
      min-height: 118px;
      transition: all 0.3s; }
      .sale-item__text h3 {
        font-size: 160%;
        margin-bottom: 5px; }
        .sale-item__text h3 small span {
          display: block;
          color: gray; }
      .sale-item__text p.more {
        transition: all 0.3s; }
        .sale-item__text p.more i {
          font-size: 128.571428571%;
          vertical-align: middle; }
        .sale-item__text p.more span {
          font-size: 85.7142857143%;
          vertical-align: middle; }
  /*------------------------------------------------------------------------------

	  [PC] Footer

	------------------------------------------------------------------------------*/ }

/*==============================================================================


 large device styles 2 [width >= 769]


==============================================================================*/
@media screen and (min-width: 769px) {
  .header-navi {
    overflow: visible; }
    .header-navi .header-navi__cart {
      display: none !important; }
  /*------------------------------------------------------------------------------

	  [PC2] Navi [responsive-nav.js 1.0.39 by @viljamis]

	------------------------------------------------------------------------------*/
  .nav-collapse {
    background-color: transparent;
    height: 40px;
    max-width: 960px;
    margin: 0 auto; }
    .nav-collapse li {
      display: inline-block;
      width: auto;
      position: absolute; }
    .nav-collapse a {
      border-bottom: 0 none transparent;
      display: block;
      padding: 0 8px; }
      .nav-collapse a span {
        letter-spacing: 0; }
    .js .nav-collapse {
      position: relative;
      overflow: visible; }
      .js .nav-collapse.closed {
        max-height: none; }
    .nav-collapse__lineup {
      background-color: #498ee8;
      border-radius: 0 0 8px 8px;
      left: 1.0416666667%; }
      .nav-collapse__lineup a i, .nav-collapse__lineup a span {
        color: #FFFFFF; }
      .nav-collapse__lineup a i {
        font-size: 240%; }
      .nav-collapse__lineup a span {
        font-size: 140%; }
      .nav-collapse__lineup a:after {
        height: 50px; }
    .nav-collapse__cupshop {
      left: 15.1041666667%; }
      .nav-collapse__cupshop a i {
        font-size: 240%; }
      .nav-collapse__cupshop a span {
        font-size: 140%; }
    .nav-collapse__store {
      right: 26.0416666667%; }
      .nav-collapse__store a {
        color: #000000; }
        .nav-collapse__store a:link, .nav-collapse__store a:visited, .nav-collapse__store a:hover, .nav-collapse__store a:active {
          color: #000000; }
        .nav-collapse__store a span {
          font-size: 120%; }
    .nav-collapse__help {
      right: 10.4166666667%; }
      .nav-collapse__help a {
        color: #000000; }
        .nav-collapse__help a:link, .nav-collapse__help a:visited, .nav-collapse__help a:hover, .nav-collapse__help a:active {
          color: #000000; }
        .nav-collapse__help a span {
          font-size: 120%; }
    .nav-collapse__cart {
      right: 0px; }
      .nav-collapse__cart a {
        color: #e54949; }
        .nav-collapse__cart a:link, .nav-collapse__cart a:visited, .nav-collapse__cart a:hover, .nav-collapse__cart a:active {
          color: #e54949; }
        .nav-collapse__cart a i {
          font-size: 240%; }
        .nav-collapse__cart a span {
          font-size: 140%; }
  .nav-toggle {
    display: none; }
  /*------------------------------------------------------------------------------

	  [PC2] sale

	------------------------------------------------------------------------------*/
  .sale-item {
    width: 25%;
    padding: 1.388889%; }
  .sale-header {
    font-family: 'zero-width';
    letter-spacing: 0; }
    .sale-header .sale-header__lead {
      display: inline-block;
      width: 56%;
      margin: 40px auto;
      padding-left: 4.16667%;
      font-family: "Hiragino Maru Gothic W4 JIS2004", sans-serif;
      letter-spacing: 0.075em; }
      .sale-header .sale-header__lead p:first-child {
        margin-top: 0; }
    .sale-header .sale-header__navi {
      display: inline-block;
      margin: 40px auto;
      padding-right: 4.16667%;
      width: 44%;
      vertical-align: top;
      font-family: "Hiragino Maru Gothic W4 JIS2004", sans-serif;
      letter-spacing: 0.075em; } }
