@import url(https://fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,600italic);

/*----------------------------------------
 Overwrite Foundation
----------------------------------------*/

* {
  outline: none;
}

html {
  opacity: 0;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  margin: 0;
  padding: 0;
}

a,
a:active,
a:focus {
  transition: background-color 0.25s ease-out, color 0.25s ease-out, border-color 0.25s ease-out, opacity 0.25s ease-out;
  color: #000;
}

a:hover {
  opacity: 0.7;
  color: #000;
}

.button,
.button:active,
.button:focus {
  background: #fff;
  color: #000;
}

.button:hover {
  opacity: 0.7;
  background: #e3eae3;
  color: #000;
}

.button.hollow,
.button.hollow:active,
.button.hollow:focus {
  border: 1px solid #dbdbdb;
  color: #000;
}

.button.hollow:hover {
  border: 1px solid #dbdbdb;
  background: #e3eae3;
  color: #000;
}

.top-bar,
.top-bar ul {
  background-color: inherit;
}

.tabs,
.tabs-content {
  border: none;
  background: transparent;
}

.no-ul {
  text-decoration: none !important;
}

/*----------------------------------------
 Overwrite Vendor
----------------------------------------*/

/* slick slider */

.slick a {
  display: block;
}
#area-event .area-main .slick-slide a {
  /* for inner link */
  display: block;
  pointer-events: none;
}
#area-event .area-main .slick-current a {
  /* for inner link */
  pointer-events: auto;
}

.slick img {
  margin: 0 auto;
}

.slick-prev:before {
  width: 2rem;
  height: 2rem;
  font-family: "Ionicons";
  font-size: 2rem;
  content: "\f3d2";
  color: #1f1515;
}

.slick-next:before {
  width: 2rem;
  height: 2rem;
  font-family: "Ionicons";
  font-size: 2rem;
  content: "\f3d3";
  color: #1f1515;
}

/*----------------------------------------
 Original Customize
----------------------------------------*/
body {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

p {
  margin: 0;
  padding: 0;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none inside;
}

em {
  font-style: normal;
}

/* base class */

.f11 {
  font-size: 0.6875rem;
}
.f12 {
  font-size: 0.75rem;
}
.f13 {
  font-size: 0.8125rem;
}
.f14 {
  font-size: 0.875rem;
}
.f15 {
  font-size: 0.9375rem;
}
.f16 {
  font-size: 1rem;
}
.f17 {
  font-size: 1.0625rem;
}
.f18 {
  font-size: 1.125rem;
}
.f19 {
  font-size: 1.1875rem;
}
.f20 {
  font-size: 1.25rem;
}
.f21 {
  font-size: 1.3125rem;
}
.f22 {
  font-size: 1.375rem;
}
.f23 {
  font-size: 1.4375rem;
}
.f24 {
  font-size: 1.5rem;
}
.f26 {
  font-size: 1.625rem;
}
.f28 {
  font-size: 1.75rem;
}
.f30 {
  font-size: 1.875rem;
}

.mincyo {
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "游明朝", "Yu Mincho", "游明朝体",
    "YuMincho", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

.gothic {
  font-family: "Open Sans", "Helvetica Neue", Helvetica, Arial, Verdana, Roboto, "ヒラギノ角ゴ Pro",
    "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}

/* include online store */

.attention {
  color: #c33;
}

a.attention,
a.attention:link,
a.attention:active,
a.attention:hover {
  color: #c33;
}

.catchphrase {
  color: #d03355;
}

a.catchphrase,
a.catchphrase:link,
a.catchphrase:active,
a.catchphrase:hover {
  color: #d03355;
}

.exclusion {
  color: #666;
}

a.exclusion,
a.exclusion:link,
a.exclusion:active,
a.exclusion:hover {
  color: #d03355;
}

.reset_org,
.reset-org {
  position: relative;
}

.clr_fix,
.clr-fix {
  overflow: hidden;
}

.clr_float,
.clr-float {
  clear: both;
}

.adj-l {
  display: block;
  float: left;
}

.adj_l,
.float_left {
  display: block;
  float: left;
}

.adj-r {
  display: block;
  float: right;
}

.adj_r,
.float_right {
  display: block;
  float: right;
}

.align_l,
.align-l {
  text-align: left;
}

.align_c,
.align-c {
  text-align: center;
}

.align_r,
.align-r {
  text-align: right;
}

.br_before::before,
.br-before::before {
  content: "\A";
  white-space: pre;
}

.hide_text,
.hide-text {
  margin: 0 !important;
  padding: 0 !important;
  height: 10px !important;
  overflow: hidden !important;
  text-indent: 100% !important;
  white-space: nowrap !important;
}

.no_indent,
.no-indent {
  text-indent: 0 !important;
}

.underline {
  text-decoration: underline !important;
}

.no_underline,
.no-underline {
  text-decoration: none !important;
}

.bold {
  font-weight: bold;
}

.italic {
  font-style: italic;
}

.no_padding,
.no-padding {
  padding: 0 !important;
}

.ic_before,
.ic-before {
  margin-right: 0.5rem !important;
}

.ic_after,
.ic-after {
  margin-left: 0.5rem !important;
}

.btn_addcart {
  padding: 0 10px;
  height: 40px;
  line-height: 40px;
}

.btn_addcart:hover {
  background: #66b333;
  color: #fff;
}

.btn_base {
  height: 40px;
  padding: 0 1em;
  line-height: 40px;
}

.btn_green,
.btn_brand {
  display: block;
  box-sizing: border-box;
  border-radius: 3px;
  background: #66b333;
  text-align: center;
  color: #fff !important;
  cursor: pointer;
}

.btn_green:hover,
.btn_brand:hover {
  background: #66b333;
}

.btn_white,
.btn_common {
  display: block;
  box-sizing: border-box;
  border: 1px solid #ddd;
  border-radius: 3px;
  background: #fff;
  text-align: center;
  cursor: pointer;
}

.box_blank {
  margin: 20px 0;
  padding: 10px;
  background: #fff;
  border-radius: 5px;
}

.box_message {
  margin: 20px 0;
  padding: 10px;
  background: #f6f6f4;
  border-radius: 5px;
}

.box_attention {
  margin: 20px 0;
  padding: 10px;
  background: #f7eded;
  border-radius: 5px;
}

.box_safe {
  margin: 20px 0;
  padding: 10px;
  background: #eaf6ea;
  border-radius: 5px;
}

.box_hint {
  margin: 20px 0;
  padding: 10px;
  background: #faf3e6;
  border-radius: 5px;
}

.box_frame {
  margin: 20px 0;
  padding: 10px;
  border-radius: 5px;
  border: 1px solid #ddd;
}

.box_attention.box_frame {
  border: 1px solid #e9cfcf;
}

.box_safe.box_frame {
  border: 1px solid #cadcca;
}

.box_hint.box_frame {
  border: 1px solid #e9dbbe;
}

.dial_number {
  font-family: "Ubuntu";
  color: #400;
}

#nav_breadbrumb {
  margin: 1rem 0;
}

.list_breadbrumb {
	margin: .5rem 0;
  font-size: 0.8125rem;
  color: #666;
}

.breadbrumb_each {
  display: inline;
  margin: 0 0.25rem;
}

.breadbrumb_each:last-child a {
  color: #666;
}

.nav_pagelink_top {
  overflow: hidden;
  margin: 2rem 0;
}

.nav_pagelink_bottom {
  overflow: hidden;
  margin: 4rem 0;
}

.link_page,
.link_pageback,
.link_pagenext {
  background: #f6f6f4;
}

.link_page a,
.link_pageback a,
.link_pagenext a {
  display: inline-block;
  padding: 0.8rem;
}

/* include online store end */

/*----------------------------------------
 Page Layout
----------------------------------------*/

/* header */

#header {
  text-align: center;
  color: #fff;
  cursor: pointer;
  margin-top: 51px;
}

#header .logo img {
  display: block;
  margin: 10% auto 0;
  width: 20%;
}

#header .caption img {
  display: block;
  margin: 2rem auto;
  width: 30%;
}

#header .arrow {
  position: absolute;
  bottom: 5%;
  left: 0;
  width: 100%;
}

#nav-store {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), transparent);
}

#nav-store ul {
  padding: 0.75rem 0;
  overflow: hidden;
}

#nav-store ul li {
  float: left;
  padding: 0 1rem;
  border-right: 1px solid #fff;
  line-height: 1;
}

#nav-store ul li a {
  color: #fff;
}

#nav-store ul li a .store-ic {
  margin: 0 0.5rem 0 0;
  width: 24px;
  height: 24px;
  opacity: 0.8;
}

#spmode .title-bar {
  padding: 0.8rem 0.5rem;
  z-index: 5000;
}

/* for campainfix */
#spmode .logo {
  /*display: none;*/
}
#spmode .caption {
  display: none;
}

#spmode .vegas-slide-inner {
  background-position: center 0 !important;
}

/* for campainfix end */

#spmode .logo img {
  position: absolute;
  top: 35%;
  left: 50%;
  margin: 0 0 0 -25%;
  width: 50%;
}

#spmode.sp-orhr .logo img {
  margin: 0 0 0 -10%;
  top: 30%;
  width: 20%;
}

#spmode .caption img {
  position: absolute;
  bottom: 15%;
  left: 50%;
  margin: 0 0 0 -30%;
  width: 60%;
}

#spmode.sp-orhr .caption img {
  margin: 0 0 0 -20%;
  bottom: 20%;
  width: 40%;
}

/* main */

#main {
  position: relative;
  padding: 0;
  background: #fff;
}

/* top navigation */

#area-topnav {
  width: 100%;
  position: inherit;
  top: 0;
  left: 0;
  border-bottom: 1px solid #dbdbdb;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  z-index: 5000;
}

#nav-corporate {
  background: #1f1515;
}

#nav-corporate a {
  color: #fff;
}

#nav-purpose {
  background: white;
  font-weight: bold;
}

#nav-purpose li {
  text-align: center;
}

#nav-purpose i {
  position: relative;
  top: -0.3rem;
  margin-right: 1rem;
  font-size: 1.875em;
}

#nav-purpose .icon-top i {
  margin-right: auto;
  line-height: 1;
  font-size: 3rem;
}

#nav-purpose img.purpose-ic {
  position: relative;
  top: -0.3rem;
  margin-right: 1rem;
  width: 30px;
  height: 30px;
}

#nav-purpose .icon-top img.purpose-ic {
  margin-right: auto;
  width: 40px;
  height: 40px;
}

#nav-purpose a {
  padding: 1.5rem 0;
}

#nav-purpose .icon-top a {
  line-height: 1.8;
}

/* sp */

#nav-purpose-sp {
	margin-top: 50px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

#nav-purpose-sp ul {
  border-left: 1px solid #dbdbdb;
}

#nav-purpose-sp li {
  border-right: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
}

#nav-purpose-sp li a {
  line-height: 1.25;
}

#nav-purpose-sp li a img {
  width: 24px;
  height: 24px;
  margin-bottom: 0.5em;
}

/* store list */

#list-store {
  display: none;
  position: absolute;
  top: -265px;
  left: 0;
  width: 100%;
}

#list-store.dropdown {
  top: 75%;
  z-index: 100;
}

#list-store .border-arrow-bottom {
  /* for drop up */
  display: block;
  top: -1px;
  margin: 0 auto;
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-top: 8px solid #e2e2e2;
}

#list-store.dropdown .border-arrow-bottom {
  display: none;
}

#list-store .border-arrow-top {
  /* for drop down */
  display: none;
  top: 1px;
  margin: 0 auto;
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-bottom: 8px solid #e2e2e2;
}

#list-store.dropdown .border-arrow-top {
  display: block;
}

#list-store ul {
  width: 100%;
  border: 1px solid #e2e2e2;
  border-radius: 5px;
  background: #fff;
}

#list-store ul li {
  list-style: none inside;
  border-bottom: 1px solid #e2e2e2;
  text-align: left;
}

#list-store ul li:last-child {
  border-bottom: none;
}

#list-store ul li a {
  display: block;
  padding: 1rem;
  line-height: 1.8;
  background: #f4f4f1;
}

#list-store ul li a img {
  position: relative;
  top: 0.3rem;
  padding: 0.2rem;
  width: 3em;
  height: 3em;
  border-radius: 3px;
}

#list-store ul li a small {
  display: block;
  font-weight: normal;
}

#list-store ul li a img.ic-lp {
  background: #66aa00;
}

#list-store ul li a img.ic-gr {
  background: #c42219;
}

#list-store ul li a img.ic-bm {
  background: #440000;
}

/* section area */

.section .area-title {
  padding: 4rem 0 3rem;
  text-align: center;
  font-weight: bold;
  font-size: 1.375rem;
}

#spmode .section .area-title {
  padding: 3rem 0 2rem;
  font-size: 1.25rem;
}

.section .area-caption {
  position: relative;
  line-height: 1.8;
  text-align: center;
  color: #666;
}

.section .area-main {
  margin: 3rem auto;
}

#spmode .section .area-main {
  margin: 2rem auto;
}

.section-sub {
  padding: 1.5rem 0;
  background: #f4f4f1;
}

#spmode .section-sub {
  padding: 0.5rem 0 0;
  border-bottom: 1px solid #f4f4f1;
}

.section-sub .border-arrow-top {
  display: block;
  position: absolute;
  top: -48px;
  left: 50%;
  margin: 0 0 0 -32px;
  width: 0;
  height: 0;
  border: 32px solid transparent;
  border-bottom: 16px solid #f4f4f1;
}

.section-sub .border-arrow-bottom {
  display: block;
  position: absolute;
  bottom: -48px;
  left: 50%;
  margin: 0 0 0 -32px;
  width: 0;
  height: 0;
  border: 32px solid transparent;
  border-top: 16px solid #f4f4f1;
}

/* area-monthry */

#area-monthry {
}

#area-monthry img {
  /*border: 1px solid #fff;*/
}

#spmode #area-monthry img {
  border-top: none;
  border-bottom: none;
}

#area-monthry .slick-slide {
  padding: 0 0.3rem;
}

#spmode #area-monthry .slick-slide {
  padding: 0;
}

#spmode #area-monthry .slick-slide img {
  width: 100%;
}

#spmode .slick-dotted.slick-slider {
  margin-bottom: 2rem;
}

#spmode .slick-dots li button:before {
  font-size: 0.8rem;
}

/* area-info */

#area-info {
}

#info-tabs {
  margin: 0 auto;
}

#spmode .tabs-panel {
  padding: 1rem 0;
}

#spmode #info-tabs {
  background: #f4f4f1;
}

#info-tabs .tabs-title {
  position: relative;
  top: 0;
  left: 0;
  padding: 0;
  border-right: 1px solid #dbdbdb;
  text-align: center;
}

#spmode #info-tabs .tabs-title {
  border-right: 1px solid #fff;
}

#info-tabs .tabs-title br {
  display: none;
}

#spmode #info-tabs .tabs-title br {
  display: block;
}

#spmode #info-tabs .tabs-title a span {
  line-height: 2.5rem;
}

#info-tabs .tabs-title:last-child {
  border: none;
}

#info-tabs .tabs-title.is-active {
  border-right: 1px solid #fff;
  background: #e3eae3;
}

#info-tabs .tabs-title > a {
  padding: 0.75rem 0;
  font-size: 1rem;
  background: none;
}

#spmode #info-tabs .tabs-title > a {
  line-height: 1.25;
}

#info-tabs .tabs-title > a:focus,
#info-tabs .tabs-title > a[aria-selected="true"] {
  background: none;
}

#info-tabs .border-arrow-bottom {
  display: block;
  position: absolute;
  bottom: -16px;
  left: 50%;
  margin-left: -16px;
  width: 0;
  height: 0;
  border-left: 16px solid transparent;
  border-right: 16px solid transparent;
  border-bottom: 8px solid transparent;
  border-top: 8px solid #e3eae3;
}

.info-list {
  padding: 2rem 0 0;
}

.info-list-each {
  border-top: 1px solid #dbdbdb;
  white-space: nowrap;
}

#spmode .info-list-each {
  padding: 0.8rem;
  white-space: normal;
}

.info-list-each:last-child {
  border-bottom: 1px solid #dbdbdb;
}

.info-list-each .column {
  padding: 0;
}

.info-list-each p.info-title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

#spmode .info-list-each p.info-title {
  overflow: visible;
  white-space: normal;
}

.info-list-each .time {
  display: inline-block;
  padding: 0.7em 0;
  min-width: 5em;
  line-height: 1;
  text-align: center;
  font-weight: bold;
}

#spmode .info-list-each .time {
  text-align: left;
  font-weight: bold;
}

.info-list-each a {
  display: block;
  padding: 1.5em 0;
}

#spmode .info-list-each a {
  padding: 0.5em 0 0;
}

.info-list-each .label {
  margin: 1.5em 2em;
  padding: 0.8em 1em;
  min-width: 6em;
  background: #eee;
  text-align: center;
  font-size: 0.8125rem;
  color: #000;
}

.info-list-each .label.es {
  background: #f0ddd6;
}

#tbmode .info-list-each .label {
  visibility: hidden;
}

#spmode .info-list-each .label {
  margin: 0 1em;
}

.info-list-each .info-summary {
  position: relative;
}

.info-list-each .info-summary a {
  position: relative;
}

.info-list-each .press-cover {
  width: 50px;
  margin: -1.5rem 0.5rem -1.5rem 0;
}

#spmode .info-list-each .press-cover {
  margin: 0;
  padding: 0 5px 0 0;
  width: 55px;
  float: left;
}

.info-list-each .press-memo {
  display: none;
  position: absolute;
  top: 3.5rem;
  left: 0;
  padding: 1em;
  width: 100%;
  background: #f4f4f1;
  border-right: 1px solid #dbdbdb;
  border-bottom: 1px solid #dbdbdb;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  line-height: 1.8;
  white-space: normal;
  z-index: 100;
}

#spmode .press-memo {
  position: relative;
  top: 0;
  left: 0;
  margin: 0.5rem 0 0;
  border: none;
  box-shadow: none;
}

.info-list-each .press-memo a {
  display: inline;
  padding: 0;
  text-decoration: underline;
}

.info-list-more {
  margin: 1rem auto 0;
}

.link-info {
  display: block;
  padding: 1rem;
}

.link-info:hover {
  background: #e3eae3;
}

#info-ad-content {
  background: #f4f4f1;
  padding: 0.7rem 1rem;
}

#spmode #info-ad-content img {
  display: block;
  margin: 0.3rem 0;
  width: 100%;
}

/* area-magazine */

#area-magazine {
}

#area-magazine .area-bg {
  position: absolute;
  bottom: 0;
  left: 1.5rem;
  height: 130px;
}

#spmode #area-magazine .area-bg {
  display: none;
}

#spmode #area-magazine .area-caption br {
  display: none;
}

#spmode .magazine-hl-index {
  margin: 0 -0.625rem;
  padding: 0.8rem 1rem;
  background: #f4f4f1;
}

#magazine-index {
  list-style: disc outside;
  margin: 1rem 0 0 1.5rem;
}

#spmode #magazine-index {
  list-style: none outside;
  margin: 0.5rem 0 0;
}

#magazine-index li {
  margin: 0.5rem 0;
}
#magazine-index li.magazine-index-sub {
  list-style: none outside;
  position: relative;
}

#magazine-index li.magazine-index-sub:before {
  content: "";
  width: 6px;
  height: 6px;
  display: inline-block;
  border-radius: 100%;
  background: #aaa;
  position: absolute;
  left: -20px;
  top: 10px;
}

#spmode #magazine-index li {
  margin: 0;
  padding: 0.5rem 0;
  border-bottom: 1px dotted #dbdbdb;
  font-size: 0.875rem;
}

#link-magazine-cover {
  display: block;
  margin: 0 auto;
  width: 70%;
  box-shadow: 1px 1px 2px #aaa;
}

#link-magazine-cover:hover {
}

#spmode #link-magazine-cover {
  margin: 2rem auto;
}

.magazine-link-main .btn-store,
.magazine-link-main .btn-icgice {
  padding: 2rem 0;
}
#spmode .magazine-link-main .btn-store {
  background: #e3eae3;
}

.magazine-link-main .btn-store em {
  display: block;
  margin: 1rem 0 0;
}

.magazine-link-main .btn-store i {
  position: relative;
  top: 0.2rem;
  font-size: 1.875rem;
}

.magazine-link-main .btn-store .ic-cart {
  position: relative;
  top: -0.3rem;
  margin-right: 1rem;
  width: 30px;
  height: 30px;
}

.magazine-link-sub {
  margin: 1rem 0 0;
}

.magazine-link-sub a {
  display: block;
  padding: 0.5em 1em;
}

.magazine-link-sub a:hover {
  background: #e3eae3;
}

#magazine-bnr img {
  border-radius: 3px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

#magazine-bnr em {
  display: block;
  margin: 1rem 0 0;
  text-align: center;
  font-size: 15px;
}

#spmode #magazine-bnr em {
  margin: 0.5rem 0 0;
  font-size: 0.8125rem;
}

#magazine-bnr .slick-slide {
  padding: 0 0.3rem;
}

/* area-event */

#area-event {
  outline: none;
}

#area-event .snapshot img {
  display: block;
  margin: 0 auto;
  border: 1px solid #dbdbdb;
  box-shadow: 4px 4px 0 rgba(246, 246, 244, 1);
}

#area-event .area-main .event-date {
  margin: 0 0 1rem 0;
  font-size: 1.125rem;
  color: #999;
}

#spmode #area-event .area-main .event-date {
  margin: 2rem 0 1rem 0;
  font-size: 0.875rem;
  font-weight: bold;
}

#area-event .event-hl {
  font-size: 1.5rem;
}

#spmode #area-event .event-hl {
  font-size: 1.25rem;
}

#area-event .event-hl-sub {
  display: block;
  margin: 0.5rem 0;
  font-size: 1.125rem;
}

#area-event em.event-hl-sub {
  font-weight: bold;
}

#spmode #area-event .event-hl-sub {
  margin: 0.25rem 0;
  font-size: 1rem;
}

#area-event .overview {
  margin: 2rem 0;
  line-height: 1.8;
}

#spmode #area-event .overview {
  margin: 1rem 0;
  font-size: 0.875rem;
}

#area-event .overview {
  margin: 2rem 0;
  line-height: 1.8;
}

#area-event .event-detail {
  margin-left: 0.5rem;
}

#spmode #area-event .event-detail {
  display: block;
  float: none !important;
}

#area-event .link-event {
  display: block;
  padding: 1rem;
}

#area-event .link-event:hover {
  background: #e3eae3;
}

#area-event .area-nav .event-date,
#area-event .area-nav .event-place {
  color: #333;
  font-size: 0.875rem;
}

#spmode #area-event .area-nav .event-date {
  font-size: 0.75rem;
}

#spmode #area-event .area-nav .event-place {
  font-size: 0.75rem;
}

#area-event .area-nav .event-place {
  margin: 0 0 0.5rem 0;
}

#area-event .area-nav .event-name {
  line-height: 1.5;
}

#spmode #area-event .area-nav .event-name {
  font-size: 0.875rem;
  font-weight: bold;
}

#area-event .area-nav .slick-slide {
  padding: 0 0.3rem;
}

#area-event .area-nav .slick-slide a {
  display: block;
  opacity: 0.8;
  padding: 0.5rem;
  border: 1px solid #f4f4f1;
  border-radius: 5px;
  background: #fbfbfa;
}

#area-event .area-nav .slick-slide a:hover {
  opacity: 1;
  background: #fff;
}

#area-event .area-nav .slick-current a {
  opacity: 1;
  background: #fff;
  font-weight: bold;
}

#spmode #area-event .area-nav .slick-current a {
  font-weight: normal;
}

#area-event .area-nav .nav-thum {
  width: 30%;
}

#area-event .area-nav .nav-thum img {
  border-radius: 50%;
}

#area-event .area-nav .nav-title {
  width: 70%;
  padding: 0 0 0 0.5rem;
}

.area-note {
  border-top: 1px dotted #ddd;
  padding: 0.5rem 0.5rem 1rem;
  background: #f4f4f1;
  text-align: center;
}

/* area-wish */

#area-wish {
}

#area-wish ul {
  display: table;
  width: 100%;
}

#area-wish li {
  display: table-cell;
  padding: 0 0.5rem;
  text-align: center;
}

#spmode #area-wish li {
  display: block;
}

#area-wish .button {
  padding: 2rem;
  line-height: 1.8;
}

#area-wish .button br {
  display: none;
}

#spmode #area-wish .button {
  padding: 1rem;
  width: 100%;
}

#spmode #area-wish .button:hover {
  background: #fff;
}

#spmode #area-wish .focus .button {
  background: #e3eae3;
}

#spmode #area-wish .button br {
  display: block;
}

/* area-member */

#area-member {
  padding: 0 0 1rem;
  background: #f4f4f1 url("https://www.lupicia.com/img/corp/bg_member.png") 0 0;
}

#spmode #area-member {
  margin: 2rem 0 0;
}

#area-member .area-title {
  border-top: 1px solid #ececec;
}

#area-member ul {
  display: table;
  width: 100%;
}

#area-member li {
  display: table-cell;
  padding: 0 0.5rem;
  text-align: center;
}

#spmode #area-member li {
  display: block;
}

#area-member .button {
  padding: 2rem;
  line-height: 1.8;
}

#area-member .button:hover {
  background: #fff;
  border: 1px solid #e3eae3;
}

#area-member .button br {
  display: none;
}

#spmode #area-member .button {
  padding: 1rem;
  width: 100%;
}

#spmode #area-member .button:hover {
  background: #fff;
}

#spmode #area-member .focus .button {
  background: #e3eae3;
}

#spmode #area-member .button br {
  display: block;
}

/* area-sns */

#area-sns {
  padding: 0 0 1rem;
}

#area-sns .area-title {
  border-top: 1px solid #ececec;
}

#area-sns .sns {
  margin: 2rem auto 3rem;
  text-align: center;
}

#area-sns .sns a {
  display: inline-block;
  margin: 0 1rem;
}

#area-sns .sns img {
  width: 3.5rem;
  height: 3.5rem;
}

#area-sns .button {
  margin: 0;
  padding: 2.5rem 0;
  width: 100%;
  text-align: center;
  font-size: 1.125rem;
}

#spmode #area-sns .button {
  margin: 0 0 0.5rem;
  padding: 2rem 0;
  font-size: 1rem;
}

#area-sns .button#btn-feedback {
  background: #489f18;
  color: #fff;
}

#area-sns .button#btn-feedback:hover {
  background: #6cb246;
}

/* area-brand */

#area-brand {
  border-top: 1px solid #f4f4f1;
  border-bottom: 1px solid #f4f4f1;
  background: #f4f4f1;
}

#area-brand ul {
  margin: 1rem auto;
}

#spmode #area-brand ul {
  margin: 0 auto;
}

#area-brand ul li {
  padding: 0 0.5rem;
}

#spmode #area-brand ul li {
  border-bottom: 1px solid #f4f4f1;
}

#area-brand ul li a {
  display: block;
  padding: 0.5rem;
  background: #fff;
}

#area-brand ul li .brand-logo {
  width: 40%;
}

#spmode #area-brand ul li .brand-logo {
  width: 30%;
}

#area-brand ul li .brand-logo img {
  width: 100%; /* for ie9 */
}

#area-brand ul li .brand-title {
  width: 60%;
  padding: 2rem 0 0 0.5rem;
}

#spmode #area-brand ul li .brand-title {
  width: 70%;
  padding: 1rem 0 0 0.5rem;
}

#spmode #area-brand ul li .brand-title.tirle-dline {
  padding: 0.3rem 0 0 0.5rem;
}

#area-brand ul li .brand-title .name {
  margin: 0 0 0.5rem;
}

/* footer */

#footer {
  border-top: 1px solid #dbdbdb;
  border-bottom: 1px solid #f4f4f1;
  background: #f4f4f1;
}

#footer .sitemap,
#footer .storemap {
  margin: 4rem auto;
}

#spmode #footer .sitemap,
#footer .storemap {
  margin: 3rem auto;
}

#footer .sitemap .sitemap-each {
  margin: 1rem auto 0;
}

#footer h4 {
  margin: 0 0 1rem 0;
  padding: 0 0 1rem 0;
  border-bottom: 1px solid #dbdbdb;
  font-weight: bold;
}

#footer h5 {
  margin: 1rem 0 0 0;
  padding: 0 0 0.5rem 0;
  font-weight: bold;
}

#footer .sitemap li {
  margin: 0.5rem 0;
}

#footer .storemap ul {
  margin: 0 0 2rem 0;
}

#footer .storemap li {
  display: inline-block;
  margin: 0 1rem 0 0;
}

#spmode #footer .storemap li {
  display: block;
  margin: 0.5rem 0;
}

#link-pagetop {
  display: none;
  position: fixed;
  bottom: 0;
  right: 0;
  padding: 1rem;
  font-size: 1.5rem;
}

#spmode #link-pagetop {
  padding: 0;
}

#link-pagetop a {
  display: block;
  width: 3rem;
  height: 3rem;
  border-radius: 5px;
  background: #1f1515;
  line-height: 3rem;
  text-align: center;
  color: #fff;
}

#spmode #link-pagetop a {
  display: none;
  border-radius: 50%;
}

#copyright {
  padding: 0.5rem 0;
  background: #1f1515;
  text-align: center;
  color: #fff;
}

/* offcanvas */

.js-offcanvas-sidebar {
  width: 80%;
}
.js-offcanvas-body.js-offcanvas-body-right {
  margin-left: -80%;
}

.js-offcanvas-sidebar.js-offcanvas-sidebar-right {
  margin-right: -80%;
}

.js-offcanvas-body.js-offcanvas-body-right .js-header-fixed {
  margin-left: -80%;
}

.bar-offcanvas-inner {
  position: relative;
  z-index: 10003;
}

#btn-offcanvas {
  cursor: pointer;
}

#nav-offcanvas {
  display: none;
}

#spmode #nav-offcanvas {
  display: block;
  padding: 0;
  background: #fff;
}

#menu-sp {
  color: #000;
}

#menu-sp li {
  border-bottom: 1px dotted #dbdbdb;
  background: #fff;
  font-size: 0.9375rem;
}

#menu-sp li.menu-sp-contact {
  padding: 0.8rem 1rem;
}

#menu-sp li a {
  display: block;
  padding: 0.8rem 1rem;
}

#menu-sp li.menu-sp-title {
  border-bottom: none;
  background: #f4f4f1;
  font-weight: bold;
  font-size: 0.875rem;
}

#menu-sp li.menu-sp-title:first-child {
}

.menu-sp-contact address {
  font-size: 1rem;
  font-style: normal;
  font-weight: bold;
}

#menu-sp li a img {
  margin: 0 0.5rem 0 0;
  padding: 0.2rem;
  width: 3em;
  height: 3em;
  border-radius: 3px;
}

#menu-sp li a img.ic-lp {
  background: #66aa00;
}

#menu-sp li a img.ic-gr {
  background: #c42219;
}

#menu-sp li a img.ic-bm {
  background: #440000;
}

#menu-sp li.menu-sp-sns a {
  display: inline-block;
}

#menu-sp li.menu-sp-sns a img {
  width: 2em;
  height: 2em;
}

.btn-close-offcanvas {
  display: none;
  position: absolute;
  top: 5rem;
  right: -0.5rem;
  width: 3rem;
  height: 3rem;
  border-radius: 5px 0 0 5px;
  background: #090909;
  line-height: 3rem;
  text-align: center;
  color: #fff;
  cursor: pointer;
}

.js-offcanvas-body-right .btn-close-offcanvas {
  display: block;
}

/* campaign */

.caption-ny2017 {
  float: right;
  margin: 2rem 7rem 0 0;
  width: 25%;
}

#spmode .caption-ny2017 {
  margin: 5rem 1.5rem 0 0;
  width: 12.5%;
}


.bnr_visitor {
  width: 100%;
  height: 46px;
  display: flex;
  justify-content: center;
  background-image: url(/search-stores/img/visitors/pc_visitor.png);
  background-repeat: no-repeat;
  background-position: center;
}

.bnr_visitor a {
  display: flex;
  width: 100%;
  height: 46px;
  align-items: center;
  justify-content: center;
}

.bnr_visitor a span {
  text-decoration: underline;
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
  position: relative;
  display: inline-block;
  font-weight: 500;
  padding-right: 22px;
  font-size: .95em;
}

.bnr_visitor a span::after {
  position: absolute;
  content: "";
  width: 12px;
  height: 12px;
  display: block;
  background-image: url(/search-stores/img/visitors/arrow.svg);
  background-size: cover;
  background-repeat: no-repeat;
  top:0;
  bottom: 0;
  right: 0;
  margin: auto;
}


@media screen and (max-width: 640px) {
  .bnr_visitor {
    margin-top: 50px;
  }
}