@charset "UTF-8";
/*
特設サイト追記部分
*/
/* ====================================================
  全体
==================================================== */
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
/*------------------------------------------------------------------------------------------clearfix、マージン関連*/
.clearfix {
  *zoom: 1;
}
.clearfix:after {
  content: ' ';
  display: table;
  clear: both;
}
/* ====================================================
PCとタブレット・スマホの切り替え
==================================================== */
/*-------------------------------------------PCとタブレット・スマホの切り替え*/
.sp {
  display: block;
}
.pc {
  display: none;
}
  .tab {
    display: none;
  }
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ブレークポイント・PC*/
@media screen and (min-width: 1200px) {
  .sp {
    display: none;
  }
  .pc {
    display: block;
  }
  .tab {
    display: none;
  }
}
@media screen and (min-width:767px) and ( max-width:1200px) {
  .sp {
    display: none;
  }
  .pc {
    display: none;
  }
  .tab {
    display: block;
  }
}

img {
  vertical-align: bottom;
}
/* ====================================================
a
==================================================== */
a {
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1;
  color: #000;
  text-decoration: none;
  transition: all 0s;
}
a:active, a:hover, a:focus {
  outline: 0;
}
.overwhite {
  background-color: transparent;
  display: block;
  opacity: 1;
}
a:hover, .overwhite:hover {
  text-decoration: none;
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  opacity: 0.5;
}
@media screen and (min-width: 1200px) {
  a, .overwhite {
    transition: all .3s;
  }
}
/*------------------------------------------------------------------------------------------改行位置*/
@media screen and (min-width: 1200px) {
  br.sp {
    display: none;
  }
  br.pc {
    display: inline;
  }
}
/* ====================================================
　l-content
==================================================== */
#l-content {
  max-width: 100%;
  margin: 0;
  /*margin-top: 115px;*/
}
.c-content {
  width: 100%;
}
.l_content_wrap {
  width: 100%;
  padding: 0 3%;
  overflow: hidden;
}
/* ====================================================
　c-mainImg
==================================================== */
#c-mainImg {
  width: 100%;
  height: auto;
  margin: 0;
  padding: 0;
  text-align: center;
}
#c-mainImg .inner {
  width: 100%;
  height: auto;
  margin: 0 auto;
}
#c-mainImg img {
  width: 100%;
  min-width: 100%;
  height: auto;
  margin: 0 auto;
}
/* ====================================================
　btnList
==================================================== */
#btnList {
  width: 100%;
  padding: 0 3%;
  margin: 0 0 7% 0;
  border-bottom: 1px solid #ccc;
}
#btnList ul li {
  text-align: left;
  font-size: 90%;
  font-weight: bold;
  border: 1px solid #ccc;
  margin: 3% 0 7% 0;
}
#btnList ul li a {
  display: block;
  width: 100%;
  height: auto;
  padding: 3%;
  transition: all 0s;
  text-decoration: none;
}
#btnList ul li.list_card {
  border: 1px solid #ccc;
  overflow: hidden;
  background: #fff;
  text-align: center;
}
#btnList ul li.list_card a {
  display: block;
  height: 100%;
}
#btnList ul li.list_card a:hover {
  background: #fff;
  filter: alpha(opacity=50);
  -moz-opacity: 0.5;
  opacity: 0.5;
}
/*------------------------------------------------------------------------------------------矢印*/
.c-btn-arrow_r {
  display: block;
  width: 100%;
  margin: 0;
  text-decoration: none;
  line-height: 1.3;
  position: relative;
  transition: all .0s;
}
.c-btn-arrow_r:after {
  content: '';
  display: block;
  position: absolute;
  right: 3%;
  top: 50%;
  margin-top: -4px;
  padding-right: 5px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #767676;
  border-right: 2px solid #767676;
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.c-btn-arrow_r:hover:after {
  border-top: 2px solid #ccc;
  border-right: 2px solid #ccc;
}
/* ====================================================
　アンカーナビゲーション
==================================================== */
#anchorNav {
  width: 100%;
  margin: 0 0 10% 0;
  background: #fdf2e5;
}
#anchorNav li {
  width: 33.33%;
  float: left;
  text-align: center;
  color: #fff;
  background: #efe0d6;
}
#anchorNav li:nth-child(2n) {
  background: #ddbfad;
}
#anchorNav li img {
  max-width: 30%;
  height: auto;
  vertical-align: middle;
}
#anchorNav li a {
  display: block;
  width: 100%;
  height: auto;
  padding: 10% 0;
  transition: all .0s;
}
#anchorNav li a:hover {
  background: rgba(255, 255, 255, 0.25);
}
#anchorNav li.List_empty {
  height: auto;
  padding: 3.3% 0;
}
/* ====================================================
　各ブロック
==================================================== */
.s-contentbox01 {
  width: 100%;
  margin: 0 0 10% 0;
}
.c-content h2 {
  width: 100%;
  margin: 0 auto 3% auto;
  text-align: left;
  overflow: hidden;
  position: relative;
}
.c-content h2 img {
  width: 100%;
  height: auto;
}
/* ====================================================
　ショップリスト
==================================================== */
.shop_list {
  padding: 0 0 3% 0;
  margin: 0 0 3% 0;
}
.shop_list .list-thumb {
  display: flex;
  width: 100%;
  /*table-layout: fixed;*/
}
.shop_list .list-thumb > dt {
  width: 33%;
  padding: 0 3% 0 0;
  vertical-align: top;
}
.shop_list .list-thumb > dt img {
  border: 1px solid #ccc;
  background: #fff;
}
.shop_list .list-thumb > dt a {
  position: relative;
  display: block;
}
.shop_list .list-thumb > dd {
  width: 67%;
  position: relative;
}
.shop_list .shop_name {
  padding: 0 0 1% 0;
  margin: 0 0 2% 0;
  line-height: 1.25em;
  font-weight: bold;
}
.shop_list .shop_name a {
  text-decoration: none;
}
.shop_list .lead {
  width: 100%;
  font-size: 100%;
  font-weight: bold;
  line-height: 1.3;
  overflow: hidden;
  color: #333;
  background: #efe0d6;
  padding: 2%;
  position: absolute;
  bottom: 0;
}
.shop_list .lead02 {
  width: 100%;
  font-size: 100%;
  font-weight: bold;
  line-height: 1.3;
  overflow: hidden;
  color: #333;
  background: #e0f3ff;
  padding: 2%;
  position: absolute;
  bottom: 0;
}
.shop_list .lead span.caution_l, .shop_list .lead02 span.caution_l, .shop_list .lead span.caution_r, .shop_list .lead02 span.caution_r {
  color: #333;
  font-size: 80%;
  display: block;
}
.shop_list .lead span.caution_l02 {
  color: #333;
  font-size: 80%;
  display: inline;
}
.shop_list .lead span.lead_in {
  border: 1px solid #333;
  padding: 5px;
  margin-top: 5px;
  display: block;
  color: #333;
}
.border {
  border-bottom: 1px dotted #b3b3b3;
}
.notes01 {
  width: 100%;
  /*220614　90％→100％*/
  font-size: 110%;
  /*margin-top: -3%;*/
  clear: both;
  padding: 0 0 8% 0;
  clear: both;
/*  border-bottom: 1px dotted #767676;*/
}
.notes01 span {
  color: #e60012;
  font-weight: bold;

}

.comment01 {
  width: 100%;
  font-size: 120%;
  font-weight: bold;
  text-align: left;
  margin: 8% 0;
  padding: 0 3%;
}
  .comment01 span {
    font-size: 115%;
    background: linear-gradient(transparent 70% , #ee869a 70%);
  }

/*リンクボックス*/
.linkbox {
  position: relative;
}
.linkbox a {
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  text-indent: -9999px;
  opacity: 1;
}
.linkbox a:hover {
  filter: alpha(opacity=50); /* IE 6,7*/
  -ms-filter: "alpha(opacity=50)"; /* IE 8,9 */
  -moz-opacity: 0.5; /* FF , Netscape */
  -khtml-opacity: 0.5; /* Safari 1.x */
  opacity: 0.5;
  zoom: 1; /*IE*/
  background: #fff;
}
@media screen and (min-width: 1200px) {
  .linkbox a, .linkbox a:hover {
    transition: all .3s;
  }
}
/* ====================================================
  cp
==================================================== */
#cp {
  width: 100%;
  background: #efe0d6;
  padding: 6%;
  margin-bottom: 16%;
}

.cp_txt {
  font-size: 120%;
  font-weight: bold;
  text-align: center;
  margin-bottom: 4%;
}
.cp_btn {
  width: 100%;
  margin-top: 8%;
}
.cp_btn li {
  margin-top: 4%;
  padding: 4%;
  background: #af2d0a;
  text-align: center;
  border-radius: 8px;
  position: relative;
  line-height: 1.4;
}
.cp_btn li:nth-child(2){
  background: #674931;
}
.cp_btn li a{
  color: #FFF;
  font-weight: bold;
  font-size: 100%;
  display: flex;
  margin-right: 6%;
  justify-content: center;

}
.cp_btn li a::after {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  right: 18px;
  background: url(../img/btn_link.png) no-repeat;
  background-size: 1rem;
  width: 1rem;
  height: 1rem;
  transform: translateY(-50%);  
}

/*----------------------------------------------------
  バナー
----------------------------------------------------*/
.btnBox {
  width: 100%;
  margin: 10% auto 4% 0;
  text-align: center;
  color: #fff;
  font-size: 120%;
}
.btnBox li {
  margin: 0 0 6% 0;
}
.btnBox li:last-child {
  margin: 0;
}
.btnBox img {
  height: auto;
  margin: 0 auto;
}
/* ====================================================
　以下ブレークポイント設定
==================================================== */
/*----------------------------------------------------ブレークポイント・PCサイズ以上*/
@media screen and (min-width: 1200px) {
  /** l_content_wrap
------------------------------------------------- */
  .l_content_wrap {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
    padding: 0;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  /** c-mainImg
------------------------------------------------- */
  #c-mainImg {
    margin: 0 0 50px 0;
  }
  #c-mainImg .inner {
    width: 100%;
    max-width: 1080px;
    height: auto;
    margin: 0 auto;
  }
  /** cp
------------------------------------------------- */
  #cp {
    margin-bottom: 60px;
  }
  .cp_btn {
    margin-top: 0;
  }
  .cp_btn ul {
    display: flex;    
    justify-content: space-between;
  }
  .cp_btn ul li {
    width: 48%;
    padding: 22px 14px;
    display: flex;
    justify-content: center;
    align-items: center;    
  }
  .cp_btn ul li a {
    margin-right: 0;
  }
  .cp_btn li a::after {
    right: 12px;
    background-size: 1.4rem;
    width: 1.4rem;
    height: 1.4rem;
  }
  
  /** btnList
------------------------------------------------- */
  #btnList {
    margin: 0 0 50px 0;
  }
  #btnList ul {
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
  }
  #btnList ul li {
    width: 100%;
    margin: 20px auto 50px auto;
    font-size: 100%;
  }
  #btnList ul li.list_card img {
    width: 50%;
    margin: 0 auto;
  }
  #btnList ul li a {
    width: 100%;
    padding: 15px;
    transition: all 0.3s;
  }
  /** アンカーナビゲーション
------------------------------------------------- */
  #anchorNav {
    width: 100%;
    max-width: 1080px;
    /*220614　marginbottom　70px→30px*/
    margin: 0 auto 30px auto;
  }
  #anchorNav li {
    height: 60px;
  }
  #anchorNav li img {
    max-width: 14%;
    height: auto;
    vertical-align: middle;
  }
  #anchorNav li a {
    height: auto;
    padding: 13px 0;
    transition: all 0.3s;
  }
  #anchorNav li a:hover {
    transition: all .3s;
  }
  #anchorNav li.List_empty {
    padding: 14px 0;
  }
  /** 各ブロック
------------------------------------------------- */
  .s-contentbox01 {
    width: 100%;
    /*220614　marginbottom　80px→0px*/
    margin: 0 0 80px 0;
  }
  .c-content h2 {
    margin: 0 auto 25px auto;
  }
  .c-content h2 img {
    width: 100%;
  }
  /** ショップリスト
------------------------------------------------- */
  .shop_list {
    width: 515px;
    padding: 0 0 0 0;
    margin: 0 50px 40px 0;
    float: left;
  }
  .s-contentbox01 .shop_list:nth-child(odd) { /*nth-child()を指定した要素の親要素を基準に何番目かを判断*/
    padding: 0;
    margin: 0 0 40px 0;
  }
  /*
  .s-contentbox01 .shop_list:last-child {
    margin: 0;
    padding: 0;
  }
    */
  .shop_list .lead span.caution_l, .shop_list .lead02 span.caution_l {
    font-size: 90%;
    display: inline;
    padding: 0 1em 0 0;
  }
  .shop_list .lead span.caution_l02 {
    font-size: 90%;
    display: inline;
    padding: 0 0 0 1em;
  }
  .shop_list .lead span.caution_r, .shop_list .lead02 span.caution_r {
    font-size: 90%;
    display: inline;
    padding: 0 0 0 1em;
  }
  .border {
    border-bottom: none;
  }
/*  .notes01 {
    margin-top: -30px;
  }*/
  /*-------btnBox */
  .btnBox {
    width: 100%;
    margin: 50px auto 0 auto;
    text-align: center;
  }
  .btnBox ul {
    margin: 0 auto;
  }
  .btnBox li {
    margin: 0 auto 60px;
  }
  .btnBox img {
    height: auto;
    margin: 0 auto;
  }
  .notes01 {
    padding: 0 0 4% 0;
  }
  .comment01 {
    padding: 0 0 2% 0;
    text-align: center;
    margin: 20px 0;
  }
  .comment01 span {
    font-size: 28px;
    background: linear-gradient(transparent 84% , #ee869a 84%);
  }
  .btnBox ul li {
    max-width: 960px;
  }
  .valentine {
    margin: 0 auto !important;
  }

}
/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝ブレークポイント・タブレットサイズ以上PCサイズ以下*/
@media screen and (min-width: 768px) and (max-width: 1199px) {
  /** c-mainImg
------------------------------------------------- */
  #c-mainImg {
    margin: 0 0 50px 0;
  }
  /** btnList
------------------------------------------------- */
  #btnList {
    padding: 0;
  }
  #btnList ul {
    width: 80%;
    margin: 0 auto;
  }
  #btnList ul li a {
    display: block;
    width: 100%;
    height: auto;
    padding: 2%;
    transition: all 0s;
    text-decoration: none;
  }
  /** アンカーナビゲーション
------------------------------------------------- */
  #anchorNav {
    width: 100%;
    margin: 0 0 5% 0;
  }
  #anchorNav li a {
    height: auto;
    padding: 6% 0;
  }
  #anchorNav li img {
    max-width: 18%;
    height: auto;
    vertical-align: middle;
  }
  #anchorNav li.List_empty {
    height: auto;
    padding: 1.999% 0;
  }
  /** 各ブロック
------------------------------------------------- */
  .s-contentbox01 {
    margin: 0 0 8% 0;
  }
  .c-content h2 {
    margin: 0 auto 5% auto;
  }
  .c-content h2 img {
    width: 100%;
  }
  /** l_content_wrap
------------------------------------------------- */
  .l_content_wrap {
    width: 100%;
    margin: 0 auto;
  }
  /** ショップリスト
------------------------------------------------- */
  .shop_list {
    width: 48.5%;
    padding: 0 0 2% 0;
    margin: 0 3% 2% 0;
    float: left;
  }
  .shop_list .lead, .shop_list .lead02 {
    position:;
    bottom:;
  }
  .s-contentbox01 .shop_list:nth-child(odd) { /*nth-child()を指定した要素の親要素を基準に何番目かを判断*/
    padding: 0 0 0 0;
    margin: 0 0 2% 0;
  }
  .s-contentbox01 .shop_list:last-child {
    margin: 0;
    padding: 0;
  }
  .border {
    border-bottom: none;
  }
  /** cp
------------------------------------------------- */
  #cp {
    margin-bottom: 80px;
  }

  .cp_btn {
    margin-top: 0;
  }
  .cp_btn ul {
    display: flex;    
    justify-content: space-between;
  }
  .cp_btn ul li {
    width: 48%;
    padding: 2%;
    display: flex;
    justify-content: center;
    align-items: center;    
  }
  .cp_btn ul li a{
    margin-right: 8%;
  }
  .cp_btn li a::after {
    right: 10px;
    background-size: 1.2rem;
    width: 1.2rem;
    height: 1.2rem;
  }
  
  /** btnBox
------------------------------------------------- */
  .btnBox {
    width: 100%;
    margin: 5% auto 4% auto;
    text-align: center;
  }
  .btnBox ul {
    margin: 0 auto;
  }
  .btnBox li {
    margin: 0 0% 2% 0;
  }
  .btnBox li:nth-child(2n) {
    margin: 0 0 2% 0;
  }
  .btnBox ul li:nth-child(2n+1):last-child {
    margin: 0 auto;
  }
  .btnBox img {
    max-width: 100%;
    height: auto;
    margin: 0 auto;
  }
  .notes01 {
    padding: 0 0 2% 0;
  }
  .comment01{
    padding: 0 3% 2%;
    margin: 2% 0;
  }
}