@charset "utf-8";
/* ==============================
         全体
============================== */

body {
  top: 0;
}

.visible_pc {
  display: none !important;
}

.visible_sp {
  display: unset !important;
}

/* ==============================
    ヘッダー
============================== */

header {
  height: 50px;
}

.header_inner {
  height: 50px;
}

/* ナビゲーション */

header .header-nav {
  transition: 0.75s ease-in-out;
  opacity: 0;
  transform: translateX(100%);
  position: fixed;
  top: 0;
  bottom: 0;
  z-index: 200;
  display: flex;
  flex-flow: column;
  align-items: center;
  font-size: 20px;
  text-align: center;
  color: #fff;
  justify-content: center;
  width: 100%;
  padding: 0 0 5vh;
  background: #C58E75;
}

.menuIn header .header-nav {
  opacity: 1;
  transform: translateX(0%);
}

header .header-nav li {
  padding-bottom: 1.25em;
}

header .header-nav a {
  margin-right: 0;
}

header .insta_icon a {
  display: none;
}

header .site-logo {
  top: 10px;
  width: 39px;
}

/*メニューバー*/

.menu_toggle {
  display: flex;
}

/* ==============================
    メインビジュアル
============================== */

.mVisual {
  padding-bottom: 150px;
}

.mVisual_inner {
  padding-left: unset;
}

.mVisual_text {
  position: absolute;
  left: 0;
  top: unset;
  bottom: 0;
  width: 100%;
  padding: 0 14%;
  margin-left: auto;
  margin-right: 0;
  margin-bottom: calc(100% * -95 / 375);
}

/* スライダーの数字 */

.mVisual ul.slick-dots {
  top: 11px;
  bottom: unset;
  right: 23px;
  font-size: 9px;
}

.mVisual ul.slick-dots .c5-dots__num {
  width: 15px;
  height: 15px;
}

.mVisual ul.slick-dots li:not(:last-child) .c5-dots__num {
  margin-right: 1.11em;
}

.mVisual .progressCircle .circle {
  stroke-width: 2px;
}

/* ==============================
    コピー
============================== */

.section_lead {
  font-size: 12px;
  height: 100vh;
}

/* ==============================
    コンテンツ共通
============================== */

#contents h2 {
  font-size: 60px;
  line-height: 1;
  margin-bottom: 50px;
}

#contents section .section_inner {
  padding: 80px 24px 0;
}

/* ==============================
    コンセプト
============================== */

section.sec_concept {
  margin-bottom: 65px;
  background-image: url('../images/concept_bg_sp.png');
}

#contents section.sec_concept .section_inner {
  padding-top: 50px;
}

.concept_wrapper {
  flex-flow: column-reverse;
  width: 100%;
  margin: unset;
  padding: 0;
}

.concept_wrapper>div:first-child {
  margin-right: unset;
}

.concept_wrapper .concept__text {
  position: relative;
  font-size: 9px;
  width: 100%;
  padding-top: 40px;
}

section.sec_concept h3 {
  font-size: 1.66em;
  margin-bottom: 1.56em;
}

section.sec_concept p {
  padding-left: 2.22em;
}

.concept_wrapper .concept__text a {
  transform: translateX(50%);
  right: 50%;
  width: 74px;
  margin-top: 36px;
}

.concept_wrapper .concept__image {
  width: 228px;
  min-width: 228px;
  max-width: 228px;
}

/*=== 1番目 ===*/

.concept_wrapper.__01 {
  margin-bottom: 73px;
  padding-left: 17px;
}

.concept_wrapper.__01 .concept__text {
  padding-top: 40px;
}

/*=== 2番目 ===*/

.concept_wrapper.__02 {
  flex-flow: column;
}

#contents .concept_wrapper.__02 .concept__image {
  margin-left: 80px;
}

.concept__sub-image {
  position: absolute;
  top: 69%;
  left: 0;
  transform: translateX(-104px);
}

#contents .concept_wrapper.__02 .concept__text {
  transform: unset;
  width: auto;
  margin-left: -24px;
  margin-right: -24px;
  padding-left: 159px;
}

/*=== 3番目 ===*/

#contents .concept_wrapper.__03 {
  width: auto;
  margin-top: 90px;
  margin-left: -24px;
  margin-right: -24px;
  padding: 0 0;
  border-top: none;
}

#contents .concept_wrapper.__03 .concept__text {
  display: flex;
  justify-content: center;
  padding-top: 3.0em;
}

#contents .concept_wrapper.__03 .concept__image {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
  margin-top: 0;
}

/* ==============================
    フレーバー
============================== */

.flavor_wrapper {
  font-size: 14px;
  margin-left: -24px !important;
  margin-right: -24px !important;
}

.flavor_wrapper h3 {
  font-size: 1.5em;
  padding: 1.5em 0 0.75em 1.0em;
  background: linear-gradient( 90deg, #e5cdc2 75%, transparent 0), url(../images/flavor_head__bg.png) repeat-x, linear-gradient( 90deg, #e5cdc2, #e5cdc2);
}

.flavor_wrapper .flavor_item {
  padding: 0 24px;
}

.flavor_wrapper ul {
  padding: 0;
}

.flavor_wrapper ul li {
  width: calc(98% / 2);
  margin-right: 0 !important;
  margin-left: 0 !important;
}

.flavor_wrapper .flavor_text {
  white-space: inherit;
}

.flavor_wrapper .flavor_text__head {
  line-height: 1.6;
}

/*===== Tea =====*/

.flavor_tea ul li:first-child {
  width: 100%;
}

.flavor_tea ul li:first-child figure.flavor_image {
  width: 60%;
  padding-bottom: calc(60% * 224 / 331);
}

/* ==============================
    ショップ
============================== */

#contents section.sec_shop h2 {
  margin-bottom: 74px;
}

#contents section.sec_shop {
  background-position: top 106px center;
}

#contents section.sec_shop .shop-list {
  margin-left: -24px;
  margin-right: -24px;
}

section.sec_shop .shop-list li {
  padding: 20px 36px 24px;
}

section.sec_shop .shop-list .shop-list_item__inner {
  flex-wrap: wrap;
  flex-flow: column-reverse;
  justify-content: space-between;
}

section.sec_shop .shop-list .shop-list__text {
  padding-left: unset;
}

section.sec_shop h3 {
  font-size: 14px;
  margin-bottom: 1.0em;
  padding: 0.25em 0 0.75em 0.25em;
  border-bottom: solid 1px #231815;
}

section.sec_shop p {
  font-size: 11px;
  margin-bottom: 1.0em;
}

section.sec_shop .shop-list .shop-list__image {
  padding-right: 0;
  margin-bottom: 25px;
}

/*===== 姉妹店だけ =====*/

section.sec_shop .shop-list li:last-child .shop-list__text p {
  padding-right: 0;
}

section.sec_shop .shop-list .saka_logo {
  width: 60px;
}

/* ==============================
    企業情報
============================== */

#contents section.sec_profile h2 {
  font-size: 30px;
}

section.sec_profile ul.profile__wrapper {
  width: auto;
  margin: 0 18px;
}

section.sec_profile ul.profile__wrapper li {
  display: block;
}

section.sec_profile ul.profile__wrapper li>* {
  font-size: 12px;
}

section.sec_profile ul.profile__wrapper .profile__head {
  padding-bottom: 0.25em;
}

section.sec_profile ul.profile__wrapper .profile__cont {
  padding-top: 0.25em;
}

/* ==============================
    フッター
============================== */

footer {
  padding: 50px 0;
}

footer a.footer-logo {
  display: block;
  width: 80px;
  margin: 0 auto;
}

/* ==============================
    スライダーの数字
============================== */

ul.slick-dots {
  font-size: 9px;
}

ul.slick-dots .c5-dots__num {
  width: 15px;
  height: 15px;
}

ul.slick-dots li:not(:last-child) .c5-dots__num {
  margin-right: 1.11em;
}

ul.slick-dots .progressCircle .circle {
  stroke-width: 2px;
}