@charset "UTF-8";

/*-------------------------------------------
 基本設定
-------------------------------------------*/
/*スマホの時だけ改行させるクラス*/
.cp-main .br-sp {
    display: block;
}

h2 {
	margin-bottom: -4px;
}

@media (min-width: 769px) {
    .cp-main .br-sp {
        display: none;
    }
}

/*-------------------------------------------
 リード
-------------------------------------------*/

.cp-main .detail_lead {
	text-align: center;
}

/*-------------------------------------------
 キャンペーン参加方法
-------------------------------------------*/
.cp-main .detail_sakuhin {
	text-align: center;
}

.cp-main .detail_entry__inner {
	text-align: center;
}

.cp-main .title_green{
	text-align: center;
	font-size: 20px;
	font-weight: bolder;
	color:#009141;
	margin-bottom:10px;
}

.cp-main .detail_entry__title {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	margin: 15px 0;
	padding: 0 16px;
	color: #333;
}
.cp-main .attention-text {
	color: #d32f2f; /* 警告色の赤 */
	font-size: 13px;
	line-height: 1.6;
}
.cp-main .detail-btn {
	text-align: center;
	margin: 0 auto;
}

.cp-main .detail-btn__inner {
	margin-bottom: 16px;
}

.cp-main .detail_entry__last {
	width: 100%;
  	max-width: 992px;
    margin: 0 auto;
	padding: 0 16px;
}

/* スラッシュ無しタイトル */
.cp-main .detail_entry__title--cp{
	margin-bottom: min(3% , 10px);
    font-weight: 700;
    font-size: max(16px, min(4.26vw, 24px));
    text-align: center;
    line-height: 1.2;
}

.cp-main .detail-entry__att__inner {
	font-weight: bold;
	margin: min(8%, 20px) auto min(8%, 40px);
	text-align: center;
}

@media (min-width: 769px) {
	.cp-main .title_green{
		font-size: 26px;
	}
	.cp-main .detail_entry__title {
		font-size: 24px;
	}
	.cp-main .detail_sakuhin__list {
		grid-template-columns: repeat(4 ,1fr);
	}
	.cp-main .detail_sakuhin__list a:hover {
		color: #FFF;
		opacity: 0.7;
		transition: opacity 0.3s;
	}
}

/*-------------------------------------------
 「次、どこ行く？」が見つかる。神奈川県の魅力、再発見
-------------------------------------------*/
.cp-main .detail_sakuhin__inner {
	margin-bottom: 1em;
}

@media (min-width: 769px) {
	.cp-main .o-shelf.-narrow {
		margin-bottom: 20px;
	}
}

/*-------------------------------------------
 キャッシュレス決済キャンペーン
-------------------------------------------*/
.cp-main .freespace-inner {
	padding: 0 16px;
}

.cp-main .cp-detail-block__inner {
	max-width: 960px;
	padding-bottom: 16px;
	border-radius: 16px;
	border: 3px solid #CC0033;
	margin: 0 auto min(8%, 40px);
	background: #fffbe9;
}
.cp-main .detail-bnr {
    text-align: center;
    max-width: 100%;
	margin: 0 auto;
	padding: 0 3%;
}
.cp-main .detail_lead--cp {
    width: 100%;
    padding: 1em 0 0;
    font-weight: 600;
}
.cp-main .detail-bnr__inner {
	padding: 3% 0 0;
}
@media (min-width: 769px) {
	.cp-main .cp-detail-block a:hover {
		color: #FFF;
		opacity: 0.7;
		transition: opacity 0.3s;
	}
	.cp-main .detail-bnr__inner  {
		padding: 16px 0 0;
	}
	.cp-main .detail-bnr {
		padding: 0 16px;
	}
}
/* 見出し */
.cp-main .ribbon--dred{
	width: 100%;
	color: #CC0033;
	background: repeating-linear-gradient(135deg, #ffe556, #ffe556 5px, #ffef9a 5px, #ffef9a 10px);
	text-align: center;
	font-weight: bold;
	border-radius: 12px 12px 0 0;
	border-bottom: 3px solid #CC0033;
}

.cp-main .cp-main .attention-text {
	color: #d32f2f;  
	font-size: 0.85em; 
	line-height: 1.6;
	margin: 8px 0;
}
.cp-main .detail_ribbon__text--cp {
	max-width: 540px!important;
	padding: min(3%, 10px);
}

/*ボタン*/
.cp-main .detail_rounded-btn-middle--cp {
    width: 100%;
    background: #CC0033;
    display: inline-block;
    color: #fff;
    font-size: max(16px, min(3vw, 18px));
    font-weight: bold;
    line-height: 1.3;
    border-radius: 100px;
    padding: 1em 1.7em;
    text-align: center;
    position: relative;
    transition: opacity 0.3s;
    text-decoration: none !important;
}
.cp-main .detail_rounded-btn-middle--cp::before {
  content: "";
  width: 10px;
  height: 10px;
  border-style: solid;
  border-width: 2px 2px 0 0;
  border-color: #fff;
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}

/*-------------------------------------------
 【予告】次回開催エリアのお知らせ
-------------------------------------------*/

.cp-main .next-preview-block__inner {
  max-width: 992px;
  margin: 0 auto min(8%, 40px);
  padding: 0 16px;
}

/*タイトル*/
.cp-main .detail_ribbon--red {
  position: relative;
  top: 0;
  left: 50%;
  width: calc(100% - 32px);
  color: #FFF;
  background: #CC0033;
  padding: min(1.5%, 10px);
  transform: translate(-50%, 0%);
  text-align: center;
}

.cp-main .detail_ribbon--red::before,
.cp-main .detail_ribbon--red::after {
	display: block;
	background: #CC0033;
	clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%, 90% 50%);
	content: "";
	height: 100%;
	position: absolute;
	top: 0;
	width: 16px;
	}

.cp-main .detail_ribbon--red::before{
	left: -15px;
}

.cp-main .detail_ribbon--red::after {
	right: -15px;
	clip-path: polygon(100% 0, 10% 50%, 100% 100%, 0 100%, 0 0);
}

.cp-main .detail_ribbon--red__text{
  margin-bottom: 0;
}

.cp-main .detail_ribbon--red__text {
  font-size: max(14px, min(3.73vw, 24px));
  line-height: 1.4;
}

/*バナー部分*/
.cp-main .next-preview-block__bnr {
    max-width: 640px;
    margin: 0 auto 8px;
}
.cp-main .next-preview-block__bnr:last-child {
    margin: 0 auto;
}

@media (min-width: 769px) {
	.cp-main .next-preview-block a:hover {
		color: #FFF;
		opacity: 0.7;
		transition: opacity 0.3s;
	}
}

/*-------------------------------------------
 概要
-------------------------------------------*/
/* 背景 */
.cp-main .outline-block{
	background: #FFF;
}

.cp-main .outline-block__inner{
	padding-top: 1em;
}

/*フォントサイズ・行間設定*/
.outline-block p,
.outline-block dd,
.outline-block li,
.outline-block li{
	line-height: 1.5;
	font-size: 14px;
}

/* 余白調整定１ */
.outline-block ul{
	margin-top: .3em;
}

/* 余白調整定2 */
.outline-block li,
.outline-block li{
	margin-bottom: .3em;
}

.outline-block li:last-child,
.outline-block li:last-child{
	margin-bottom: 0;
}

.cp-main .outline-block__title{
	text-align: center;
	font-size: clamp(18px , 4vw ,26px);
	background: var(--col-c-blue--dark);
	padding: .5em;
	color: var(--col-c-yellow);
	margin-bottom: .3em;
}


.cp-main .outline-block__list{
	border-radius: 0 0 15px 15px;
}

.cp-main .outline-block__item-title{
    border: 2px solid var(--col-c-blue--dark);
	background: var(--col-c-yellow--light);
	text-align: center;
    border-radius: 5px;
    color: var(--col-c-blue--dark);
    font-size: clamp(16px , 2.6vw, 18px);
    padding: .5em .5em .3em .5em;
	font-weight: bold;;
    margin-bottom: .5em;
	line-height: 1.2;
}

.cp-main .outline-block__item-title + .outline-block__item-disc {
    margin-bottom: 2em;

}

.cp-main .outline-block__item-title  + .outline-block__item-disc:last-child {
  margin-bottom: 0;
}


@media (min-width: 769px) {
	.cp-main .outline-block__item-title {
		padding: .3em;
	}
}


