/*--------------------------------------------------
  reset*
-------------------------------------------------*/
html, body, div, span, h1, h4, h4, h5, h6, p,dd,dt,dl,
a, ul, li,figure, figcaption, footer, header, hgroup
{
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
}
ol, ul {
  list-style: none;
}
a {color: fff;}
/*--------------------------------------------------
  共通設定*
-------------------------------------------------*/
body .resort {
  color: #333;
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',Osaka,sans-serif;
  font-size: 18px;
}
.font_col_w { color: #fff;}
.font_col_b { color: #05B5BC;}
.font_dai { font-size: 34px;}
.font_dai2 { font-size: 22px;}
.font_dai3 { font-size: 28px;}
.font_dai3-2 { font-size: 28px;}
.font_dai4 { font-size: 44px;}
.small {
  font-size: 70%;
  line-height: 1.4;
}
.block {
  display: block;
}
.flex,
.flex_both {
  display:-webkit-box;
  display:-ms-flexbox;
  display: flex;
}
.wrap {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.justify-content-end {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.justify-content-center {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.align-items-end {
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end !important;
}
.mt_0 {
  margin-top: 0 !important;
}
.mt_10 {
  margin-top: 10px !important;
}
.mt_20 {
  margin-top: 20px;
}
.mb_0 {
  margin-bottom: 0 !important;
}
.mb_10 {
  margin-bottom: 10px !important;
}
.mb_20 {
  margin-bottom: 20px;
}
.mb_40 {
  margin-bottom: 40px;
}
.mr_10 {
  margin-right: 10px;
}
.mx-10 {
  margin: 0 10px;
}
.pt_0 {
  padding-top: 0 !important;
}
.w80 {
  width: 80% !important;
}
.text-right {
  text-align: right;
}
.text-left {
  text-align: left;
}
.text-center {
  text-align: center !important;
}
.bold {
  font-weight: bold;
}
.w-auto {
  width: auto !important;
}
@media screen and (max-width: 992px){
  .font_dai { font-size: 24px;}
  .font_dai2 { font-size: 16px;}
  .font_dai3 { font-size: 18px;}
  .font_dai3-2 { font-size: 24px;}
  img { max-width: 100%; height: auto;}
  .flex { display: block;}
  .text-center-sp {
    text-align: center !important;
  }
  .text-left-sp {
    text-align: left !important;
  }
  .justify-content-center-sp {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center !important;
  }
}
/*--------------------------------------------------
  PCとSPで出し分け
 -------------------------------------------------*/
.bai_pc { display: block !important;}
.bai_sp { display: none !important;}
@media only screen and (max-width: 992px) {
  .bai_pc { display: none !important;}
  .bai_sp { display: block !important;}
}
/*改行*/
.br-pc { display:none;}
.br-sp { display:inline;}
@media only screen and (max-width: 992px) {
  .br-pc { display:inline;}
  .br-sp { display:none;}
}
/*--------------------------------------------------
  ヘッダ・フッタ*
-------------------------------------------------*/
#sp_footer { display: inline;}
#footer_tk { display: none;}
#footer_pc_common {
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',Osaka,sans-serif !important;
}
.footer_ltxt_n {
  font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',Osaka,sans-serif !important;
}
@media only screen and (min-width: 910px), print {
  #sp_footer {display: none;}
  #footer_tk {display: inline;}
  #footer_pc_common {color: #333 !important;}
  #footer_pc_common a:visited{color: #333 !important;}
  #footer_pc_common a:link{color: #333 !important;}
  #footer_pc_common .ft_pc_common_cp{padding: 10px 0 !important;}
  #footer_pc_common ul{
    border-top: #333 1px solid;
    border-bottom: #333 1px solid;
  }
}
/*---------------------------------------
  メインビジュアル
--------------------------------------*/
.cbc2020_main {
  background-color: #3D3029;
}
.cbc2020_main .main_txt {
  margin: 0 auto;
  padding: 5px 0;
  box-sizing: border-box;
}
.cbc2020_main .main_txt img {
  width: 100%;
}
#main-header {
  width: 100%;
  height: auto;
  background-image: url("trip21_7_img/main_br_pc.jpg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover;
}
#main-header h4 {
  position: relative;
  margin: 0 auto;
  padding: 30px 3% 60px 3%;
  text-align: center;
}
#main-header img {
  margin: 0 auto;
}
#main-header .img_ttl img {
  width: 100%;
  max-width: 1149px;
  height: auto;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
}
#main-header .img_logo img {
  position: absolute;
  top: 0;
  left: 40px;
  width: 100%;
  max-width: 135px;
  height: auto;
}
#main-header .img_logo2 img {
  position: absolute;
  right: 20px;
  bottom: 20px;
  width: 100%;
  max-width: 113px;
  height: auto;
}
.top_bg {
  position: relative;
  padding: 30px 0;
  background: url("trip21_7_img/cbc2021_bg.png");
  background-position: top center;
}
.campain_bg {
  position: relative;
  padding-top: 20px;
  background-image:
    url("trip21_7_img/line.png"),
    url("trip21_7_img/cbc2021_bg.png");
  background-size:
    contain,
    auto;
  background-position: top center;
}
@media screen and (max-width: 992px) {
  .cbc2020_main .main_txt{
    padding: 5px;
  }
  #main-header {
    background-image: url("trip21_7_img/main_br_sp.jpg");
  }
  #main-header .img_logo{
    width: 20%;
  }
  #main-header .img_logo img {
    left: 0;
    max-width: 23%;
  }
  #main-header h4 {
    padding: 10px 0;
  }
  .top_bg{
    padding: 20px 5% 0;
  }
  .campain_bg {
    padding: 20px 0;
    background-image:
      url("trip21_7_img/line_sp.png"),
      url("trip21_7_img/cbc2021_bg.png");
  }
}
/*---------------------------------------
  チャンス１～３
--------------------------------------*/
#c01,#c02,#c03 {
  margin-top: -15px;
  padding-top: 15px;
}
.link_bg {
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}
.link_bg .link_bg_col {
  margin: 0 1%;
}
.link_bg .link_bg_col a {
  display: block;
  position: relative;
  z-index: 9999;
}
.link_bg .link_bg_col img {
  width: 100%;
  transition: 0.3s;
  filter: drop-shadow(0 2px 8px rgba(0, 0, 0, 0.2));
}
/*ill*/
.top_bg .illust_01,
.top_bg .illust_02 {
  position: absolute;
  width: 16%;
}
.top_bg .illust_01 {
  top: -32%;
  left: 1%;
}
.top_bg .illust_02 {
  right: 1%;
  bottom: -16%;
}
@media screen and (max-width: 992px) {
  .link_bg .link_bg_col {
    margin: 0;
    margin-bottom: 20px;
    padding: 0 1%;
    width: 50%;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 576px) {
  .link_bg .link_bg_col {
    padding: 0;
    width: auto;
  }
}
/*---チャンス詳細--*/
.r_bg_pc {
  padding: 20px 0;
  width: 100%;
  background: url(trip21_7_img/flower.png);
  background-position: top center;
  background-color: #05B5BC;
  text-align: center;
}
.col_naka {
  display: inline-block;
  position: relative;
  margin: 60px auto 40px;
  padding: 100px 40px 40px;
  width: 90%;
  max-width: 1040px;
  background-color: #fff;
  box-sizing: border-box;
  text-align: center;
  font-size: 19px;
  color: #333;
}
.col_naka .chance_moji {
  position: absolute;
  top: -60px;
  right: 0;
  left: 0;
  margin: auto;
}
.col_naka .chance {
  position: relative;
  margin-bottom: 40px;
  border-bottom: 1px solid #333;
  text-align: left;
}
.col_naka .chance b{
  display: block;
  margin: 0 20px 5px;
  font-size: 25px;
  text-align: left;
  line-height: 1.4;
}
.col_naka .chance_naka.flex{
  align-items: flex-start;
}
.col_naka .chance_naka img{
  margin: auto;
}
.col_naka .chance_naka .chance_p{
  margin: 0 2.5%;
  width: 50%;
  font-size: 22px;
  line-height: 1.7;
  text-align: left;
}
.chance_p .c_txt_big {
  font-size: 34px;
}
.text-link a {
  color: #333;
  text-align: left;
  text-decoration: underline;
}
.text-link a:hover {
  text-decoration: none;
}
.sns a {
  display: block;
  margin-top: 20px;
  font-size: 16px;
  color: #333;
  text-align: left;
  text-decoration: underline;
}
.sns a:hover {
  text-decoration: none;
}
.col_naka .chance_naka .chance_img {
  width: 40%;
}
.col_naka .chance_naka.chance_naka_2 .chance_img,
.col_naka .chance_naka.chance_naka_3 .chance_img {
  margin: 0 5%;
}
.col_naka .chance_naka .chance_img img {
  margin-bottom: 10px;
  width: 100%;
}
.col_naka .chance_naka .chance_img p {
  font-size: 16px;
}
.col_naka .chance_naka .chance_img p strong {
  background: linear-gradient(transparent 70%, #FFFF00 0%);
  font-size: 22px;
}
.oyatu img{
  width: 100%;
  max-width: 910px;
  height: auto;
}
@media screen and (max-width: 992px) {
  .r_bg_pc {
    background-size: 50%;
  }
  .col_naka{
    margin: 40px auto 20px;
    padding: 70px 5% 20px;
  }
  .col_naka .chance{
    margin-bottom: 20px;
  }
  .col_naka .chance b {
    margin: 0 0 5px 0;
    font-size: 16px;
  }
  .col_naka .chance_moji {
    top: -40px;
  }
  .col_naka .chance_moji img {
    max-width: 88px;
  }
  .col_naka .chance_naka {
    width: 100%;
    line-height: 1.2;
  }
  .col_naka .chance_naka .chance_p {
    margin: 0 0 20px;
    padding: 0;
    width: 100%;
  }
  .chance_p .c_txt_big {
    font-size: 24px;
  }
  .col_naka .chance_naka.chance_naka_3 .chance_img {
    margin: 0;
  }
  .col_naka .chance_naka.chance_naka_3 .chance_img img {
    width: 80%;
  }
  .col_naka .chance_naka.chance_naka_3 .chance_img:first-child {
    margin-bottom: 20px;
  }
  .col_naka .chance_naka .chance_img {
    width: 100%;
  }
  .col_naka .chance_naka .chance_p {
    font-size: 16px;
  }
  .col_naka .chance_naka .chance_p p {
    font-size: 15px;
  }
}
/*---クイズ--*/
.quiz_all {
  position: relative;
  padding: 30px 10px;
  margin: 20px 0;
  background-color: #ffffe0;
  border: solid 4px #05B5BC;
}
.quiz_all:after {
  content: '';
  position: absolute;
  top: 6px;
  left: 6px;
  width: calc(100% - 15px);
  height: calc(100% - 15px);
  border: solid 1px #05B5BC;
}
.quiz_all > img {
  margin-bottom: 20px;
}
.quiz_all p {
  text-align: left;
  font-size: 18px;
  line-height: 1.7;
}
/*--- クイズに応募するボタン---*/
.w_bg_pc .db_btn_mawari a {
  display: block;
  margin: 0 auto 20px;
  padding: 14px 0;
  width: 314px;
  background-color: #00873C;
  border-radius: 64px;
  font-size: 20px;
  font-weight: normal;
  color: #fff;
  text-align: center;
  transition: 0.3s;
}
.w_bg_pc .db_btn_mawari a:hover {
  opacity: 0.8;
}
@media screen and (max-width: 992px) {
  .quiz_all {
    padding: 8%;
  }
  .quiz_all p {
    font-size: 15px;
  }
  .w_bg_pc .db_btn_mawari a {
    max-width: 100%;
    margin: 20px auto;
  }
}
@media screen and (max-width: 576px) {
  .quiz_all > img {
    width: 50%;
  }
}
/*---------------------------------------
  キャンペーン商品
--------------------------------------*/
.pc_center {
  margin: 0 auto;
  padding: 20px 0;
  width: 90%;
  max-width: 1040px;
}
.pc_center img {
  width: 100%;
}
.campain_syouhin .gentei span {
  position: absolute;
  display: inline-block;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width :80px;
  text-align:center;
}
.campain_syouhin_all {
  display: inline-block;
  margin: 0 auto;
  margin-bottom: 60px;
  width: 90%;
  max-width: 1040px;
  background-color: #fff;
  box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
  font-size: 17px;
  color: #333;
  text-align:center;
}
.campain_syouhin_all img {
  width: 100%;
}
.campain_syouhin_all p {
  font-size: 17px;
  line-height: 1.7;
}
.campain_syouhin {
  width: 100%;
}
.campain_syouhin .flex,
.campain_syouhin .flex_both {
  align-items: center;
}
.campain_syouhin .campain_img {
  width: 35%;
}
.campain_syouhin .campain_p {
  padding: 0 5%;
  width: 65%;
  box-sizing: border-box;
  text-align: left;
}
.campain_syouhin .campain_p_sp {
  display: block;
  padding: 20px 5%;
  width: 100%;
  box-sizing: border-box;
  text-align: left;
}
.drip_name{
  margin-right: 10px;
  line-height: 1.4;
}
/*---期間限定赤丸--*/
.campain_syouhin {
  position: relative;
}
.campain_syouhin .gentei {
  position: absolute;
  top:1%;
  right: 5%;
  display: inline-block;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: #c0272d;
  color: #fff;
  text-align:center;
  line-height: 21px;
  font-weight: bold;
}
@media screen and (max-width: 992px) {
  .campain_syouhin_all {
    margin-bottom: 20px;
  }
  .campain_syouhin .campain_img {
    margin: 10px 0 20px 0;
    width: 100%;
  }
  .campain_syouhin .campain_p {
    width: 100%;
    padding: 20px 5% 0;
  }
  .campain_syouhin_all p{
    font-size: 15px;
  }
  .campain_syouhin .gentei {
    position: absolute;
    top: 5px;
    right: 5px;
    display: inline-block;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    font-size: 14px;
    line-height: 15px;
  }
  .campain_syouhin .gentei span {
    width: 50px;
  }
}
/*---------------------------------------
  キャンペーン概要
--------------------------------------*/
.att_txt_pc {
  margin: 60px auto 20px;
  width: 90%;
  max-width: 1040px;
}
.att_txt_pc p {
  font-size: 15px;
  color: #333;
  text-align: left;
  line-height: 1.5;
}
.att_txt_dai,
.att_txt_chu,
.att_txt_br{
  display: block;
  font-weight: bold;
  color: #05B5BC;
}
.att_txt_dai{
  margin-bottom: 10px;
  font-size: 27px;
}
.att_txt_chu{
  margin-bottom: 5px;
  font-size: 20px;
}
.att_txt_br{
  margin-bottom: 5px;
  font-size: 18px;
}
/*終了Ver.*/
.opacity{
  opacity: 0.3;
}
@media screen and (max-width: 992px) {
  .att_txt_pc {
    margin: 20px 5%;
  }
  .att_txt_dai {
    font-size: 17px;
  }
  .att_txt_chu {
    font-size: 16px;
  }
  .att_txt_br {
    font-size: 15px;
  }
}
/*---------------------------------------
  ドリップバッグ
--------------------------------------*/
.kakakucontents,
.campain_syouhin .inner {
  width: 100%;
  padding: 40px 5%;
  box-sizing: border-box;
}
.kakakucontents.beansontents {
  padding-top: 20px;
}
.kakakucontents.flex {
  align-items: flex-start;
}
.kakakuset .inner {
  margin: 0 -20px 20px 0;
  padding: 20px;
  width: auto;
  background-color: #ffffe0;
}
.kakakuset .kikan,
.kakakuset .good,
.kakakuset .off {
  margin-right: 10px;
}
.kakakuset .quantity {
  margin-left: 0;
  text-align: left;
}
.kakakuset_p .flex {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.kakakuset_p {
  text-align: left;
  white-space: nowrap;
}
.cart_img {
  position: relative;
}
.cart_l {
  margin-right: 5%;
  width: 25%;
}
.cart_r {
  width: 70%;
}
.cart_r .flex {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
.cart_r li,
.cart_2_r li,
.cart_3_l li,
.cart_3_r li {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px dotted #aaa;
  text-align: left;
}
.cart_r li:last-child,
.cart_2_r li:last-child,
.cart_3_l li:last-child,
.cart_3_r li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border: none;
}
/*価格*/
.price_area {
  width: 100%;
  text-align: right;
}
.price_area .price_set {
  position: relative;
}
.price_area .price_set.flex,
.price_area .price_set.flex_both {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}
/*価格細々*/
.alp {
  font-family: "Arial",sans-serif;
}
.price_red {
  color: #ff0000;
}
.kikan {
  padding-top: 12px;
  width: 70px;
  height: 70px;
  background-color: #ff0000;
  border-radius: 50%;
  box-sizing: border-box;
  color: #fff;
  text-align: center !important;
  font-size: 20px !important;
  font-weight: bold;
  line-height: 1.2 !important;
  white-space: nowrap;
  flex-shrink: 0
}
.good {
  width: 70px !important;
  height: 70px !important;
}
.cost {
  font-size: 22px !important;
  text-align: right;
}
.quantity{
  margin: 0 10px;
  font-size: 30px !important;
}
.quantity-name {
  line-height: 1.4 !important;
}
.price{
  font-size: 62px;
  font-weight: bold;
}
.price_ttl {
  font-size: 26px;
  font-weight: bold;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  letter-spacing: .1em;
  vertical-align: sub;
}
.unit{
  padding-top: 20px;
  font-size: 37px;
  font-weight: bold;
}
/*btn*/
.btn_area {
  clear: both;
  margin-left: auto;
  width: 240px;
}
.crt_btn_primary {
  display: block;
  padding: 14px 0;
  background-color: #00873C;
  border-radius: 3px;
  font-size: 20px;
  color: #fff;
  text-align: center;
  cursor: pointer;
  transition: 0.3s;
}
@media screen and (max-width: 992px) {
  .kakakucontents {
    padding: 0;
  }
  .kakakucontents.beansontents {
    padding: 10px 5% 20px 5%;
  }
  .kakakucontents.beansontents .price_area {
    margin-bottom: 0;
  }
  .kakakuset .inner.flex {
    display: block;
    margin: 20px 5% 0;
  }
  .kakakuset .kakakuset_l  {
    margin-bottom: 20px;
  }
  .kakakuset_img img {
    width: 80%;
  }
  .campain_syouhin .inner {
    margin: 0;
    padding: 20px 5%;
  }
  .price_area {
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
    justify-content: flex-end;
    margin-bottom: 10px;
  }
  .btn_area {
    max-width: 100%;
    margin: auto;
  }
  .cart_bg {
    padding: 0 3%;
  }
  .cart_ttl_min {
    font-size: 16px;
    margin-right: 5px;
  }
  .cart_l,.cart_r {
    width: 100%;
  }
  .kikan,.off {
    padding: 10px;
    width: 56px;
    height: auto;
    font-size: 15px !important;
  }
  .good {
    width: 56px !important;
    height: auto !important;
  }
  .cost {
    font-size: 22px !important;
    text-align: center;
  }
  .quantity{
    margin: 0 5px;
    font-size: 22px !important;
  }
  .price {
    font-size: 50px;
  }
  .price_ttl {
    font-size: 18px;
  }
  .unit {
    padding-top: 10px;
    font-size: 30px;
  }
  .cart_r li,
  .cart_2_r li,
  .cart_3_l li,
  .cart_3_r li {
    display: block;
  }
  .cart_r li:last-child {
    border: none;
  }
  .cart_img img {
    width: 50%;
  }
  .saint_p {
    margin-top: 5%;
    display: block;
  }
  .saint_m {
    margin-bottom: 5%;
  }
  .price_area .price_set.flex,
  .price_area .price_set.flex_both {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}
/*---------------------------------------
  豆
--------------------------------------*/
/*上段*/
.cart_2_l {
  margin-right: 5%;
  width: 40%;
}
.cart_2_r {
  width: 55%;
}
.cart_2_r ul,
.cart_3_l ul,
.cart_3_r ul {
  margin-top: 20px;
}
.icon-set-sp {
  display: none;
}
.icon-luxurybrand,
.icon-luxurybrand-top {
  position: absolute;
  left: 0;
  width: 70px !important;
  height: 70px !important;
}
.icon-luxurybrand {
  bottom: 0;
}
.icon-luxurybrand-top {
  top: 16px;
}
/*下段*/
.cart_container {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px dotted #c9c9c9;
}
.cart_3_l,
.cart_3_r {
  width: 50%;
  box-sizing: border-box;
}
.cart_3_l {
  padding-right: 40px;
  border-right: 1px dotted #c9c9c9;
}
.cart_3_r {
  padding-left: 40px;
}
.campain_syouhin_all .cart_container .cart_img {
  padding: 20px 0;
}
.campain_syouhin_all .cart_container img {
  width: auto;
}
@media screen and (max-width: 992px) {
  .cart_2_l,.cart_2_r,.cart_3_l,.cart_3_r {
    width: 100%;
  }
  .cart_2_l {
    margin-right: 0;
  }
  .cart_2_l .cart_img {
    margin-bottom: 20px;
  }
  .beans_txt {
    margin-top: 10px;
  }
  .guatemala_set {
    width: 80% !important;
  }
  .icon-set {
    display: none;
  }
  .icon-set-sp {
    display:-webkit-box;
    display:-ms-flexbox;
    display: flex;
  }
  .cart_container {
    display: block;
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px dotted #c9c9c9;
  }
  .kakakucontents.beansontents .flex .price_area {
    justify-content: center;
  }
  .cart_container .flex .price_area .quantity {
    margin: 0;
  }
  .cart_3_l {
    margin-bottom: 20px;
    padding-right: 0;
    padding-bottom: 20px;
    border-right: none;
    border-bottom: 1px dotted #c9c9c9;
  }
  .cart_3_r {
    padding-left: 0;
  }
  .campain_syouhin_all .cart_container img {
    width: 50%;
  }
}
/*---------------------------------------
  セット
--------------------------------------*/
.campain_syouhin .set_box.border {
  margin-bottom: 40px;
  padding: 0 2.5%;
  padding-bottom: 40px;
  border-bottom: 1px solid #333;
}
.set_box.flex {
  align-items: flex-start;
}
.set > div:last-child{
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
  border-bottom: none !important;
}
.set_l {
  margin-right: 5%;
  width: 45%;
}
.set_r {
  width: 50%;
}
.set_r .set_p {
  position: relative;
  text-align: left;
}
a.name {
  display: block;
  font-weight: bold;
  text-align: left;
  line-height: 1.4;
}
a.name:hover {
  text-decoration: underline;
}
.set_r .set_p .set_content {
  padding: 0.5em 1em;
  width: max-content;
  border: 1px dotted #333;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 15px;
}
.set_r .set_p .set_content ul {
  margin-left: 1.5em;
  list-style: disc;
}
.set_r .set_p .set_content ul li:first-child {
  margin-left: -1.5em;
  list-style: none;
}
.set_r .set_p .set_content ul li {
  margin-bottom: 5px;
}
.set_r .set_p .set_content ul li:last-child {
  margin-bottom: 0;
}
.set_r .set_p .btn_area {
  margin: auto;
}
/*ill*/
.set_p .set_illust_01,
.set_p .set_illust_02 {
  position: absolute;
  width: auto;
}
.set_p .set_illust_01 {
  top: 150px;
  right: -10%;
}
.set_p .set_illust_02 {
  top: 155px;
  right: -5%;
}
@media screen and (max-width: 992px) {
  .campain_syouhin .set_box.border {
    margin-bottom: 20px;
    padding: 0 0 20px 0;
  }
  .set_r .set_p .set_content {
    width: auto;
    font-size: 14px;
  }
  .campain_syouhin .set_box{
    display: block;
  }
  .set_l,.set_r {
    display: inline-block;
    margin: 0;
    width: 100%;
  }
  .set_l {
    margin-bottom: 20px;
  }
}
/*---------------------------------------
  キャンペーン概要
 --------------------------------------*/
.campain_disp {
  padding: 5px 0;
  background-color: #630;
}
.campain_disp .inner {
  margin: 0 auto;
  width: 90%;
  max-width: 1040px;
}
.campain_disp img {
  width: 100%;
}
/*ページトップ 上書き*/
#page-top_naka {
  max-width: 1165px;
  padding: 0 10px !important;
  box-sizing: border-box;
}
#page-top {
  margin: 0 0 20px;
}
/*---------------------------------------
  カリブ海
 --------------------------------------*/
.internal-capacity {
  position: relative;
  border: 1px solid #ffd700;
  padding: 15px 0 10px 20px;
}
.internal-capacity:after {
  content: '';
  position: absolute;
  top: 3px;
  left: 3px;
  border: 1px solid #ffd700;
  width: 100%;
  height: 100%;
}
/*次回予告*/
.notice_bg {
  padding: 40px 0;
  background-color: #05b5bc;
}
.notice_area {
  display: inline-block;
  margin: 0 auto;
  width: 90%;
  max-width: 1040px;
}
.notice {
  margin-top: 20px;
}
.notice b {
  display: block;
  font-size: 25px;
  color: #fff;
  line-height: 1.4;
}
.equivalent-price {
  font-size: 14px;
  color: #333;
  line-height: 1.4;
  text-decoration: underline;
}
.equivalent-price:hover {
  text-decoration: none;
}
span.equivalent-price {
  text-decoration: none;
}
.product-name {
  margin: 0 0 10px;
}
@media screen and (max-width: 992px) {
  .notice_bg {
    padding: 20px 0;
  }
  .notice {
    text-align: left;
  }
  .notice b {
    font-size: 18px;
  }
  .product-name {
    margin: 20px 0 10px;
  }
  .cart_area {
    padding: 5px 0 0;
  }
}
/*---------------------------------------
  アフリカ
 --------------------------------------*/
.africa-border-top {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 3px solid #05B5BC;
}
.balloon {
  position: relative;
  display: inline-block;
  margin-bottom: 20px;
  padding: 5px 30px;
  background-color: #FA1830;
  border-radius: 30px;
  color: #fff;
}
.balloon:after {
  content: '';
  position: absolute;
  bottom: -10px;
  left: 50%;
  display: block;
  margin-left: -10px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 8px 0 8px;
  border-color: #FA1830 transparent transparent transparent;
}
.balloon p {
  font-family: 'Roboto Slab', serif;
  font-size: 30px !important;
}
/* コーヒーチャート表 ＿＿＿＿＿＿＿＿＿＿＿*/
.p-item-taste dl {
  margin: 0;
  padding: 0;
}
.p-item-taste dl::after {
  content: "";
  display: block;
  clear: both;
}
.p-item-taste dt {
  float: left;
  margin-right: 1rem;
}
.p-item-taste dd {
  margin-left: 1rem;
}
.p-item-taste ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.p-item-taste li {
  float: left;
  display: block;
  width: 10%;
  height: 1rem;
  margin: 0 0.2rem;
  border-radius: 3px;
}
@media screen and (max-width: 768px) {
  .p-item-taste li {
    width: 14%;
  }
  .balloon p {
    font-size: 24px !important;
  }
}
.p-item-taste--full {
  background: #c38453;
}
.p-item-taste--half {
  background: linear-gradient(90deg, #c38453 0%, #c38453 50%, #f0e0d8 50%, #f0e0d8 100%);
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-item-taste--empty {
  background: #f0e0d8;
}
