@charset "Shift_JIS";

.view_timer{display:none;}

html, body {
  color: #333;
  font-size: 14px;
}

* {
  font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro W6","ヒラギノ角ゴ W6", "Hiragino Kaku Gothic Pro W6","游ゴシック", "Yu Gothic", sans-serif;
  -webkit-tap-highlight-color: transparent;
  outline: none;
  margin: 0;
  box-sizing: border-box;
}

.fade {
  opacity: 1;
  transition: opacity 0.2s linear;
  backface-visibility: hidden
}

.fade:hover {
  opacity: .6
}

/* ---------------------------------------------------------------------------------------------
   DISPLAY NONE
--------------------------------------------------------------------------------------------- */
.pc_only{
  display: block !important;
}
.sp_only {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .pc_only{
    display: none !important;
  }
  .sp_only {
    display: block !important;
  }
}

/* ---------------------------------------------------------------------------------------------
   IMG
--------------------------------------------------------------------------------------------- */
img.resize {
  width: 100%;
  height: auto
}

img {
  max-width: 100%;
  height: auto;
  width : auto;
}

/* ---------------------------------------------------------------------------------------------
   TITLE
--------------------------------------------------------------------------------------------- */
h1{
  font-size: 1.2em;
  margin: 0;
}

@media screen and (max-width: 767px) {
  h1{
    font-size: 0.8em;
  }
}

h2 {
	font-size: 18px;
	margin-bottom: 1.5rem;
}

h2.ttl_black{
  font-size: 1.85em;
  font-weight: bold;
  letter-spacing: 0.1px;
  display: block;
  text-align: center;
  margin-bottom: 20px;
  padding: 1.6%;
  color: #ffffff;
  background: #333333;
}

h2.ttl_red{
  font-size: 1.8em;
  font-weight: bold;
  letter-spacing: 0.1px;
  display: block;
  text-align: center;
  margin-bottom: 20px;
  padding: 1.6%;
  color: #ffffff;
  background: #cc0000;
}

h2.ttl_red span{
  font-size: 0.8em;
  font-weight: normal;
}

h2.ttl_img{
  display: block;
  margin-bottom: 20px;
}

h3.ttl_black{
  font-size: 1.5em;
  font-weight: bold;
  letter-spacing: 0.1px;
  width: 95%;
  display: block;
  text-align: center;
  padding-bottom: 5px;
  border-bottom: solid 2px #000000;
  margin: 0 auto 20px;
}

h3.ttl_red{
  font-size: 1.5em;
  font-weight: bold;
  letter-spacing: 0.1px;
  width: 95%;
  display: block;
  text-align: center;
  padding-bottom: 5px;
  border-bottom: solid 2px #cc0000;
  margin: 0 auto 20px;
}

@media screen and (max-width: 767px) {
  h2.ttl_black{
    font-size: 1.2em;
    padding: 2%;
  }

  h2.ttl_red{
    font-size: 1.2em;
    padding: 2%;
  }

  h3.ttl_black{
    font-size: 1.0em;
    padding: 3%;
  }

  h3.ttl_red{
    font-size: 1.0em;
    padding: 3%;
  }
}

.bold{
  font-weight: bold !important;
}

.indent {
  padding-left: 1em;
  text-indent: -1em
}

a {
  color: #0066aa;
  text-decoration: none;
  transition: 0.2s;
}

a:hover {
  text-decoration: none;
  opacity: 0.6;
}

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

   HEADER

--------------------------------------------------------------------------------------------- */
#header {
  max-width: 1100px;
  margin: 0 auto;
}

.container {
  max-width: 1100px;
  margin: 0 auto;
  padding: 1rem;
  color: #ffffff;
  font-size: 1.5rem;
  font-weight: bold;
}

.container a {
  color: #ffffff;
}

#h_top {
  text-align: center;
}

@media screen and (max-width: 767px) {
  #header {
    /*height: 60px;*/
  }
  .container {
    max-width: 100%;
  }
}

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

   CONTENTS

--------------------------------------------------------------------------------------------- */
.contents {
  max-width: 1100px;
  /*width: min(100% - 30px, 950px);*/
  margin: 0 auto;
  padding-top: 0;
  padding-bottom: 100px;
  /*display: flex;*/
}

@media screen and (max-width: 767px) {
  .contents{
    width: 100%;
    margin: 0 auto;
    padding-top: 0;
    /*display: flex;*/
    /*flex-flow: column;*/
  }
}

.event {
  max-width: 640px;
  margin: 0 auto;
}

p.date {
  width: 90%;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 2% auto;
  text-align: center;
}

p.schedule {
  width: 90%;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.6;
  margin: 2% auto;
  text-align: center;
}

@media screen and (max-width: 767px) {
  p.date{
    width: 90%;
    font-size: 1.0rem;
    line-height: 1.4;
  }

  p.schedule {
    font-size: 0.75rem;
  }
}

.yoshimoto {
  max-width: 640px;
  margin: 0 auto;
}

.campaign {
  max-width: 640px;
  margin: 0 auto;
}

.bn a {
  display: block;
}

.contents .inner {
  width: 100%;
  /*padding-top: 1px*/
}

@media screen and (max-width: 767px) {
  .contents .inner {
    width: 90.66666667%;
    margin:0 auto;
  }
}

.bg_org {
  background: #ff9639;
  padding: 0 1.5%;
}

/* COUPON
--------------------------------------------------------------------------------------------- */
.coupon {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.coupon li {
  width: 49%;
}

/* SPECIAL
--------------------------------------------------------------------------------------------- */
.special {
  display: flex;
  flex-flow: column;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}

.special li {
  width: 100%;
  margin-bottom: 2%;
}

/* スペシャルコーナー
--------------------------------------------------------------------------------------------- */
.anchor {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;;
}

.anchor li {
  display: flex;
  align-items: center;
  color: #0066aa;
  font-weight: bold;
  width: 48%;
  margin-bottom: 2%;
  padding: 0;
  border-radius: 4px;
  border: solid 2px #0066aa;
  text-align: center;
}

.anchor li a {
  display: block;
  width: 100%;
  margin: 0 auto;
  padding: 2%;
  font-size: 1.5rem;
}

@media screen and (max-width: 767px) {
  .anchor {
    flex-flow: column;
  }

  .anchor li {
    width: 90%;
    margin: 0 auto 4%;
    padding: 4%;
  }

  .anchor li a {
    font-size: 1.2rem;
  }
}

/* 店舗様のご紹介
--------------------------------------------------------------------------------------------- */
.shop_1 {
  max-width: 1000px;
  display: flex;
  list-style: none;
  margin: 0 auto 10px;
  padding: 0;
}

.shop_1 li {
  display: flex;
  align-items: center;
}

.shop_1 li.logo {
  width: 120px;
  margin-right: 20px;
}

.shop_1 li.shop_name {
  font-size: 1.5rem;
  font-weight: bold;
}

.shop_2 {
  max-width: 1000px;
  display: flex;
  list-style: none;
  margin: 0 auto 10px;
  padding: 0;
}

.shop_2 li {
  /*display: flex;*/
  /*align-items: center;*/
}

.shop_2 li.photo {
  width: 40%;
  margin-right: 20px;
  margin-bottom: 20px;
}

.shop_2 li.txt {
  width: 60%;
  font-size: 1.43rem;
  line-height: 1.8;
  margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .shop_1 {
    flex-flow: column;
  }

  .shop_1 li a {
    font-size: 1.2rem;
    text-align: center;
  }
  .shop_2 {
    flex-flow: column;
  }

  .shop_2 li a {
    font-size: 1.2rem;
  }

  .shop_1 li.logo {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }

  .shop_1 li.shop_name {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
    display: flex;
    justify-content: center;
  }

  .shop_2 li.photo {
    width: 100%;
    margin-right: 0;
    margin-bottom: 10px;
  }

  .shop_2 li.txt {
    width: 100%;
    margin-bottom: 30px;
    font-size: 1rem;
  }

  
}

/* 目玉商品
--------------------------------------------------------------------------------------------- */
.medama {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.medama li {
  width: 49%;
  margin-bottom: 2%;
}

/* 目玉商品1
--------------------------------------------------------------------------------------------- */
.medama1 {
  display: flex;
  flex-flow: column;
  list-style: none;
  margin: 0 auto;
  padding: 0;
}

.medama1 li {
  width: 100%;
  margin-bottom: 2%;
  background: #ffffff;
}

.medama2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.medama2 li {
  width: 49%;
  margin-bottom: 2%;
  background: #ffffff;
}

/* ポイントアップセレクト商品
--------------------------------------------------------------------------------------------- */
.point_up {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.point_up li {
  width: 49%;
  margin-bottom: 2%;
}

/* ポイントアップセレクト商品
--------------------------------------------------------------------------------------------- */
.other_1 {
  display: flex;
  justify-content: center;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.other_1 li {
  width: 30%;
  margin-bottom: 2%;
}

.other_2 {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.other_2 li {
  width: 30%;
  margin-bottom: 2%;
}

/* category
--------------------------------------------------------------------------------------------- */
.cate {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  list-style: none;
  margin: 0 0 10px;
  padding: 0;
}

.cate li {
  width: 49%;
  margin-bottom: 2%;
}

/* anchor
--------------------------------------------------------------------------------------------- */
.anchor_link {
  list-style: none;
  margin: 0 auto 1%;
  padding: 0;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  justify-content: space-between;
}

.anchor_link li {
  width: 100%;
  display: flex;
  align-items: center;
  margin: 1% 0 1%;
  background: #93d1fa;
  border-radius: 4px;
}

.anchor_link li a {
  width: 100%;
  font-size: 0.9rem;
  font-weight: bold;
  color: #404040;
  line-height: 1.2;
  text-decoration: none;
  letter-spacing: -0.1rem;
  display: block;
  padding: 10px 10px 24px 10px;
  position: relative;
}

.anchor_link li a:after {
  font-size: 18px;
  color: #404040;
  content: '\f107';
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  line-height: 48px;
  text-align: center;
  margin: 0 auto;
  text-decoration: none;
  position: absolute;
  top: 14px;
  right: 48%;
}

.anchor_link2 {
  list-style: none;
  margin: 0 auto 2%;
  padding: 0;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  justify-content: space-between;
}

.anchor_link2 li {
  width: 49%;
  display: flex;
  align-items: center;
  margin: 1% 0 1%;
  background: #93d1fa;
  border-radius: 4px;
}

.anchor_link2 li a {
  width: 100%;
  font-size: 0.9rem;
  font-weight: bold;
  color: #404040;
  line-height: 1.2;
  text-decoration: none;
  letter-spacing: -0.1rem;
  display: block;
  padding: 10px 10px 24px 10px;
  position: relative;
}

.anchor_link2 li a:after {
  font-size: 18px;
  color: #404040;
  content: '\f107';
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  line-height: 48px;
  text-align: center;
  margin: 0 auto;
  text-decoration: none;
  position: absolute;
  top: 14px;
  right: 49%;
}

#anchor_01,#anchor_02,#anchor_03,#anchor_04,#anchor_05,#anchor_06{
  padding-top:62px;
  margin-top:-62px;
}

@media screen and (max-width: 767px) {
  #anchor_01,#anchor_02,#anchor_03,#anchor_04,#anchor_05,#anchor_06 {
    padding-top:80px;
    margin-top:-80px;
  }
}

/* txt_link
--------------------------------------------------------------------------------------------- */
.txt_link {
  list-style: none;
  margin: 0 auto 1%;
  padding: 0;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  justify-content: space-between;
}

.txt_link li {
  width: 48%;
  display: flex;
  align-items: center;
  margin: 1% 1% 1%;
  background: #cfecfe;
  border-radius: 4px;
}

.txt_link li a {
  width: 100%;
  font-size: 0.9rem;
  font-weight: bold;
  color: #404040;
  line-height: 1.2;
  text-decoration: none;
  letter-spacing: -0.1rem;
  display: block;
  padding: 10px;
  position: relative;
}

.txt_link li a:after {
  font-size: 0.9rem;
  color: #404040;
  content: "\f105";
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  text-decoration: none;
  position: absolute;
  top: 28%;
  right: 5%;
}

@media screen and (max-width: 767px) {
  .txt_link li a:after {
    top: 30%;
    right: 8%;
  }
}

/* ---------------------------------------------------------------------------------------------
   ALERT
--------------------------------------------------------------------------------------------- */
.alert {
  display: block;
  width: 100%;
  /*padding: 1em;
  background-color: #ffffff;
  border:solid 1px #333333;
  box-sizing:border-box;*/
}

@media screen and (max-width: 767px) {
  .alert {
    width: 95%;
    margin: 0 auto;
  }
}

.alert ul{
  list-style-type:none;
  margin:0;
  padding-left:0;
}

.alert ul li{
  font-size: 0.9em;
  margin-bottom:8px;
  padding-left:1em;
  text-indent:-1em;
}

@media screen and (max-width: 767px) {
  .alert ul li {
    font-size: 0.8em;
  }
}

.alert ul li a{
  line-height:1.4em;
  text-decoration:none;
  color: #e51f1e;
}

.alert ul li a:hover{
  text-decoration:underline;
}

.alert ul li a:before{
  font-family: "Font Awesome 5 Free";
  content: "\f06a"; /* exclamation-circleのUnicode */
  font-weight: 900;
  text-decoration:none;
  margin-right: 4px;
}

/* ---------------------------------------------------------------------------------------------
   NOTES
--------------------------------------------------------------------------------------------- */
.notes{
  width: 95%;
  margin: 0 auto;
  padding: 0;
  list-style: none;
}

.notes li{
  font-size: 1em;
  line-height: 1.5;
  margin-bottom: 1%;
}

@media screen and (max-width: 767px) {
  .notes{
    width: 100%;
  }

  .notes li{
    font-size: 0.9em;
  }
}

.indent_notes{
  padding:0 0 0 1em;
  text-indent:-1em;
}

/* ---------------------------------------------------------------------------------------------
   MARGIN BOTTOM
--------------------------------------------------------------------------------------------- */
.mb10{
  margin-bottom:10px !important;
}

.mb15{
  margin-bottom:15px !important;
}

.mb20{
  margin-bottom:20px !important;
}

.mb30{
  margin-bottom:30px !important;
}

.mb40{
  margin-bottom:40px !important;
}

.mb50{
  margin-bottom:50px !important;
}

.mb60{
  margin-bottom:60px !important;
}

/* ---------------------------------------------------------------------------------------------
   MARGIN TOP
--------------------------------------------------------------------------------------------- */
.mt10{
	margin-top: 10px !important;
}

.mt15{
	margin-top: 15px !important;
}

.mt20{
	margin-top: 20px !important;
}

.mt30{
	margin-top: 30px !important;
}

/* ---------------------------------------------------------------------------------------------
   PADDING TOP
--------------------------------------------------------------------------------------------- */
.pt10{
	padding-top: 10px !important;
}

.pt20{
	padding-top: 20px !important;
}

.pt30{
	padding-top: 30px !important;
}

/* ---------------------------------------------------------------------------------------------
   PADDING BOTTOM
--------------------------------------------------------------------------------------------- */
.pb10{
	padding-bottom: 10px !important;
}

.pb20{
	padding-bottom: 20px !important;
}

.pb30{
	padding-bottom: 30px !important;
}

.pb60{
	padding-bottom: 60px !important;
}

/* ---------------------------------------------------------------------------------------------
   LINK BOTTOM
--------------------------------------------------------------------------------------------- */
.link_btn a {
  width: 48%;
  font-size: 1.2rem;
  font-weight: bold;
  text-align: center;
  color: #404040;
  line-height: 1.2;
  text-decoration: none;
  letter-spacing: -0.05rem;
  display: block;
  margin: 1% auto 1%;
  padding: 15px;
  background: #cfecfe;
  border-radius: 4px;
  position: relative;
}

.link_btn a:after {
  border-radius: 50%;
  width: 22px;
  height: 22px;
  display: block;
  text-align: center;
  line-height: 22px;
  content: "\f105";/* angle-rightのUnicode */
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  background: #404040;
  color: #cfecfe;;
  position: absolute;
  bottom: 13px;
  right: 15px;
}

.btn_other a {
  display: block;
}

@media screen and (max-width: 767px) {
  .link_btn a {
    width: 78%;
    font-size: 0.9rem;
  }

  .link_btn a:after {
    font-size: 12px;
    width: 18px;
    height: 18px;
    line-height: 18px;
    bottom: 14px;
    right: 10px
  }
}

/* ---------------------------------------------------------------------------------------------
   PAGE TOP
--------------------------------------------------------------------------------------------- */
#page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 77%;
  z-index:999999;
}

#page-top a {
  background: #fff;
  text-decoration: none;
  color: #666;
  width: 58px;
  vertical-align: middle;
  padding:17px 0;
  text-align: center;
  display: block;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  box-shadow: 0 0 8px #CCC;
  -moz-box-shadow: 0 0 8px #CCC;
  -webkit-box-shadow: 0 0 8px #CCC;
  -o-box-shadow: 0 0 8px #CCC;
  -ms-box-shadow: 0 0 8px #CCC;
  font-size:15px;
  text-decoration:underline;
}

#page-top a:hover {
  text-decoration: none;
  background: #fff;
  color: #333;
}