@charset "UTF-8";
.cp-color {
	background-color: #a20007;
	/*border-bottom: 3px solid #a20007;*/
	color: #fff;
/*
	background-color: #F5F2E8;
	border-bottom: 3px solid #223A70;
	color: #223A70;
*/
}
#campaign .list li {
	margin-bottom: 0.5em;
}
.underLine{text-decoration: underline;}
.pc {
	display: block;
}
.sp {
	display: none;
}
.sp5 {
	display: none;
}

@media screen and (max-width: 800px) {
.pc {
	display: none;
}
.sp {
	display: block;
}
}

/*テキストリンクアイコン調整*/
.linkDisc a, .link a, .linkSite a, .linkPDF a, .linkPage a, .linkPage2 a, .linkTop a, .linkWord, .linkWord2 {
    display: inline-block;
    padding-left: 17px;
    position: relative;
    margin-left: 10px;
}

.linkWord::before, .linkWord2::before {
    background-position: -67px 0;
    height: 6px;
    left: -3px;
    top: .55em;
    width: 4px;
}
/*テキストリンクアイコン調整*/

/* -----------------------------------------
	PC
----------------------------------------- */

#campaign #fesan .txt-area {
	margin: 3% 3% 0px;
}
#campaign #fesan .award_box {
	display: flex;          /* 1 */
    justify-content: center;/* 2 */
    align-items: center;    /* 3 */
}
#campaign #fesan .award_box img {
	width: 100%;
}
#campaign #fesan .award_box li:nth-child(1) {
	margin-right: 3%;
}


/*さらに*/
.andbox {
    padding: 1.2em 2em;
    margin: 2em 0;
    color: #565656;
    background: #ffeaea;
    /*box-shadow: 0px 0px 0px 10px #ffeaea;
    border: dashed 2px #ffc3c3;*/
    border-radius: 10px;
}
.andbox h4 {
	font-size: 130%;
	margin-bottom: 3%;
	text-indent: 0;
}
.andbox p:nth-child(1), .andbox p:nth-child(2), .andbox p:nth-child(3), .andbox p:nth-child(4) {
	margin: 0 0 1em; 
}
.andbox .numList p:nth-child(1){
	margin-left: 1em;
}
ol.numList {
	padding:0 0 0 2.5rem;
	counter-reset:li-d;
	margin-left:0.4rem !important;
}	
ol.numList li{
	list-style-type:none !important;
	list-style-image:none !important;
	margin: 5px 0px 15px 0px;
	position:relative;
	display: block;
	padding:0 0 0 0.5rem;
}
/*li.liCount::before{
	counter-increment: li-d;
	content: counter(li-d);
	font-size:1rem;
	position: absolute;	
	left: -2.3rem;
	top: -0.0rem;
	color:#fff;
	height: 1.6rem;	
	width: 1.6rem;	
	line-height: 1.6;
	text-align: center;
	font-weight: bold;
	z-index:1;
}*/
li.liCount::after{
	content:"";
	position: absolute;	
	/*left: -2.3rem;
	top: -1px;
	width: 1.7rem;
	height: 1.7rem;*/
	left: -1.5rem;
	top: .2rem;
	width: 1rem;
	height: 1rem;
	background: #b00008;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


/*A賞　B賞　見出し*/
#campaign .prize_name h4 {
	margin: 3%;
}
#campaign .prize_name h4 span {
	/*border: 1px solid #abb0b0;*/
	padding: 2%;
	padding: 3%;
	float: left;
	margin-right: 2%;
	font-size: 120%;
	background: #b00008;
	color: #fff;
}
#campaign .prize_name p, #campaign .prize_name_2 p {
	float: left;
	font-size: 150%;
	line-height: 130%;
}
#campaign .prize_name p span, #campaign .prize_name_2 p span {
	font-size: 130%;
}
#campaign .prize_name_2 p span.txt11 {
	font-size: 80% !important;
	line-height: 2;
}


/*注釈*/
ul.comment_box {
	font-size: 90%;
	width: 100%;
}

ul.comment_box li {
	width: 40%;
	margin-left: 60%;
    text-align: right;
}


/*注釈2*/
ul.comment_box2 {
	font-size: 90%;
	width: 100%;
}

ul.comment_box2 li {
	/*width: 40%;*/
	margin-left: 3%;
    word-break : break-all;
}

/*}*/


#campaign .present_box {
	margin: 0 0 5% 0;
	display: flex;          /* 1 */
    justify-content: center;/* 2 */
	border: 1px solid #abb0b0;
	padding: 1.0em 1.0em 1.0em;
}
#campaign .present_box .img  {
	width: 40%;
	margin-right: 3%;
}
#campaign .present_box .img img {
	width: 100%;
}
#campaign .present_box .content_box {
	width: 60%;
}
#campaign  .present_box .content_box ul {
	width: 75%;
	margin: 1em 3em;
}
#campaign  .present_box .border_dot {
    border-top: 1px dotted #000;
    height: 20px;
}
.last_bm {
	margin-bottom: 7em !important;
}
#campaign .present_box_b {
	margin: 3% auto 0 3%;
	display: flex;          /* 1 */
    justify-content: center;/* 2 */
    align-items: center;    /* 3 */
	border: 1px solid #abb0b0;
	padding: 1.0em 1.0em 1.0em;
}
#campaign .present_box_b .img {
	width: 43%;
	margin-right: 3%;
}
#campaign .present_box_b .img img {
	max-width: 100%;
}
#campaign .present_box_b .content_box {
	width: 50%;
}
#campaign .present_box .rhombus,  #campaign .present_box_b .rhombus{
    width: 50px;
    height: 50px;
    transform: rotate(-45deg);
    float: left;
    border: 1px solid #abb0b0;
	margin: 2% 0 2% 2%;
}

#campaign .present_box .rhombus p,  #campaign .present_box_b .rhombus p{
 transform:rotate(45deg) translate(10px,10px); 
 font-size: 130%;
 margin: -10% 35%;
}

#campaign .present_box p.present_name, #campaign .present_box_b p.present_name  {
	float: left;
	text-align: left;
	/*margin: 0 0 0 6%;*/
	margin-left: 20px;
	font-size: 150%;
	font-weight: 600;
	width: 70%;
	padding: 5px 0 0;
}
#campaign .present_box p.present_name span, #campaign .present_box_b p.present_name span {
	font-size: 85%;
}

#campaign .present_box .present_number, #campaign .present_box_b .present_number {
	text-align: left;
	margin: 3% 0 1% 0;
	font-size: 120%;
}

#campaign .first_box img {
	width: 100%;
}
#campaign .first_box:nth-child(3), #campaign .first_box:nth-child(4){
	margin-top: 2%;
}


/*ダブルチャンス賞*/
#campaign .wchance {
	padding: 3%;
	background: #F8F0F0;
}
#campaign .wchance .prize_name h4 {
	margin: 0;
}
#campaign .wchance .present_box_b {
	margin: 3% 0 0 0; 
	background: #ffffff;
}


/* キャンペーン対象店舗 */
#targetStore {
	padding: 0 2%;
}

#targetStore table {
	background: #ffffff;
	border: solid 1px #ccc;
	padding: 10px;
}

#targetStore th {
	background: #ffeaea;
	border: solid 1px #ccc;
	padding: 10px;
}

#targetStore td {
	border: solid 1px #ccc !important;
	padding: 10px;
}

#targetStore .jrerl th {
	vertical-align: middle;
	width: 40%;/*width: 20%;*/
}

#targetStore tr.jrerl td {
	vertical-align: middle;
}

@media screen and (max-width: 640px) {

	#targetStore > table {
		width: 100%;
		border: none;
		table-layout: fixed;
	}
	#targetStore th,
	#targetStore td {
		border-width: 1px;
		vertical-align: middle;
		word-break: break-all;
		word-wrap: break-word;
	}
	#targetStore th {
		width: 13em;/*width: 11em;*/
	}
	#targetStore .jrerl th {
		width: 1em;
	}
	#targetStore > table > thead th,
	#targetStore > table > thead td { border-width: 1px 1px 0 1px; }
}

/*お申込みからポイント付与までの流れここまで*/




/*バナーエリア*/

#campaign .bnr_area {
	display: flex;
	margin-bottom: 5em;
}

#campaign .bnr_area li {
	height: 50%;
}
#campaign .bnr_area li img{
	width: 60%;
	border: #ccc 1px solid;
}
#campaign .bnr_area li img:hover {
filter:alpha(opacity=80);
opacity:0.8;
}



/* ***************************************************************

	03. スマホランドスケープ対応

*************************************************************** */

@media screen and (max-width: 949px) and (min-width: 641px){
	#main .content { width: 100%; }

	#campaign .detail-text {
		width: 65%;
		margin-left: 3%;
	}
	#campaign .details_entry_right { margin-top: 10px; }
	#campaign .clum2 li {
		width: 465px;
		float: none;
		margin: 0 auto;
	}
	#campaign .txt-area.sp-left .cp-period { text-align: left !important; }


}


/* -----------------------------------------
	SP
----------------------------------------- */



@media screen and (max-width: 640px){
	#campaign .cp-category .txt-area {
		margin: 3% 3% 0px;
	}
	
	#campaign .present_box, #campaign .present_box_b{
		display: block;
	}

	#campaign .present_box .img, #campaign .present_box_b .img {
	width: 100%;
	margin: 0 0 10px 0;
	}
	
	#campaign .present_box_b .img img {
		width: 100%;
	}
	
	#campaign .present_box .content_box, #campaign .present_box_b .content_box {
	width: 100%;
	}
	
	#campaign .present_box p.present_name, #campaign .present_box_b p.present_name {
		width: 70%;
	}
	#campaign .prize_name{
		margin-top: 30px;
	}
	#campaign .wchance {
		padding: 4%;
	}
	#campaign .wchance .prize_name{
		margin-top: 0;
	}
	#campaign .prize_name p, #campaign .prize_name_2 p {
    float: left;
    font-size: 120%;
    line-height: 130%;
    /*width: 70%;*/
	}
	#campaign .wchance .prize_name p {
	width: 100%;
	}
	#campaign .present_box .content_box ul {
    width: 100%;
    margin: 1em 0;

	}
	
	/*賞品一覧の注釈*/
	
	ul.comment_box {
		margin-top: 2em;
	}
	
	ul.comment_box li {
    width: 100% !important;
	margin-left: 0;
	}	
	
	/*バナーエリア*/

	#campaign .bnr_area {
		display: block;
	}
	#campaign .bnr_area li {
		width: 100%;
	}
	#campaign .bnr_area li {
		margin-bottom: 1em;
	}
	#campaign .bnr_area li img{
		width: 80%;
	}
	#campaign .present_box p.present_name, #campaign .present_box_b p.present_name  {
		padding: 0;
	}
}

/* -----------------------------------------
	SP w320-600対応
----------------------------------------- */
@media screen and (max-width:600px){
}



.link_box{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin: 0px 20px 35px 20px;
	border-top: 3px solid #a20007;
	border-bottom: 3px solid #a20007;
	padding: 35px 0 30px;
}
.link_box p.bnr img{
	width: 250px;
	/*border: 1px solid #cfcfcf;*/
}
.link_box .link-txt{
	padding: 0 0 0 30px;
}
.link_box .link-txt p{
	margin-bottom: 15px;
}
@media screen and (max-width:600px){
.link_box{
	flex-wrap: wrap;
	margin: 30px 0 20px;
}
.link_box p.bnr{
	margin-left: auto;
	margin-right: auto;
}
.link_box .link-txt{
	padding: 5px 0 0;
}

}



/* -----------------------------------------
	対象施設
----------------------------------------- */

/*#campaign .cp-category .txt-area {margin-top: 0px;}*/
.facility_block{
	margin-left: 20px;
	margin-right: 20px;
}
.facility_block h3{
	padding: 8px;
	background: #d4ddf1;
	text-align: center;
	font-size: 115%;
	margin-bottom: 0 !important;
}
.facility_list {
	display: flex;
	flex-wrap: wrap;
	border: 1px solid #ddd;
	background-color: #fff;
	margin-bottom: 15px;
}
.facility_list > * {
	width: calc(100% / 3);
	max-width: 33.33%;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.facility_list > *:nth-of-type(3n) {
	border-right: 0;
}
.facility_list > *:nth-child(3n+1):nth-last-child(-n+3),
.facility_list > *:nth-child(3n+1):nth-last-child(-n+3) ~ li {
	border-bottom: 0;
}
.facility_list li{
	display: flex;
	align-items: center;
	padding: 12px 18px;
}

/*2col*/
.facility_list.col2 > * {
	width: calc(100% / 2);
	max-width: 50%;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.facility_list.col2 > *:nth-of-type(2n) {
	border-right: 0;
}
.facility_list.col2 > *:nth-child(2n+1):nth-last-child(-n+2),
.facility_list.col2 > *:nth-child(2n+1):nth-last-child(-n+2) ~ li {
	border-bottom: 0;
}
.facility_list.col2 li{
	display: flex;
	align-items: center;
	padding: 12px 18px;
}

@media screen and (max-width: 750px){
	.facility_list > * {
		/*width: calc(100% / 2);*/
		max-width: none;
	}
	.facility_list > * {
		border-right: 0;
	}
	.facility_list > *:nth-child(3n+1):nth-last-child(-n+3),
	.facility_list > *:nth-child(3n+1):nth-last-child(-n+3) ~ li {
		border-bottom: 1px solid #ddd;
	}
	.facility_list a {
		padding: 6% 5%;
	}
	.facility_list > *:nth-of-type(6n) {
		border-right: 0;
	}
	.facility_list li{
		padding: 4% 3%;
		width: 100%;
		text-align: left;
	}
	.facility_list.sp01col > * {
		width: 100%;
		max-width: 100%;
	}
	.facility_list.sp01col > *:nth-of-type(odd) {
		border-right: 0;
	}
	.facility_list.sp01col > *:nth-child(2n+1):nth-last-child(-n+2),
	.facility_list.sp01col > *:nth-child(2n+1):nth-last-child(-n+2) ~ li {
		border-bottom: 1px solid #ddd;
	}
	.facility_list > li:last-child{
		border-bottom: 0!important;
	}
}



/* -----------------------------------------
	アコーディオン
----------------------------------------- */

.accordion-container {
  position: relative;
  width: 100%;
  margin: auto;
  outline: 0;
  /*cursor: pointer*/
}
.accordion-container .accordion-title {
  display: block;
  position: relative;
  margin: 0 20px;
  padding: 15px;
	text-align: center;
  font-size: 1.25em;
  font-weight: normal;
  color: #000;
  background: #fff;
	border: #000 1px solid;
  cursor: pointer;
}

.accordion-container .accordion-title:hover,
.accordion-container .accordion-title:active,
.accordion-container .content-entry.open .accordion-title {
  background-color: #fff;
  color: black;
}

.accordion-container .accordion-title:hover i:before,
.accordion-container .accordion-title:hover i:active,
.accordion-container .content-entry.open i {
  color: black;
}

.accordion-title{
  position: relative;
}

.accordion-title:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  /*縦線*/
  width: 15px;
  height: 2px;
  background: #000;
  transition: all .2s ease-in-out;
}
.accordion-title:before{
  content: "";
  position: absolute;
  top: 50%;
  right: 20px;
  width: 15px;
  height: 2px;
  /*横線に*/
  transform: rotate(90deg);
  background: #000;
  transition: all .3s ease-in-out;
}

.accordion-title.open:after {
	transform: rotate(180deg);
}
.accordion-title.open:before {
	opacity: 0;
}

.accordion-content {
  display: none;
}

@media screen and (max-width: 640px) {
	.accordion-container .accordion-title {
  		font-size: 1em;
	}
}

