@charset "UTF-8";
.cp-color {
	background-color: #15aac8;
	border-bottom: 3px solid #fff600;
	color: #fff;
}
h2.cp-color{
	position: relative;
}
#campaign .cp-category .cp-color {
	padding: 10px 0 12px;
}
.pc {
	display: block;
}
.sp {
	display: none;
}

@media screen and (max-width: 800px) {
.pc {
	display: none;
}
.sp {
	display: block;
}
.list.txtC{
	text-align: left !important;
}
}

/*テキストリンクアイコン調整*/
.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
----------------------------------------- */

.cp-category{
	margin-bottom: 60px;
}
/*さらに*/
.andbox {
	padding: 1.2em 2em;
	margin: 2em 0;
	color: #565656;
	background: #ffeaea;
	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;
	background: #b00008;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
}


.aboutBox{
	background: #FFFBE0;
	padding: 3% 5%;
	margin-bottom: 40px;
}
.aboutBox h3{
	text-align: center;
	font-size: 1rem;
}
/*A賞　B賞　見出し*/
#campaign .prize_name h4 {
	margin: 3% 0;
	position: relative;
	padding-left: 3.5em;
}
#campaign .prize_name h4:before {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 2.2em;
	height: 2.2em;
	/*background: #f79e1b;*/
	content: "";
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
background: #f1641d;
background: -moz-linear-gradient(135deg, #f1641d 50%, #f9905c 50%);
background: -webkit-linear-gradient(135deg, #f1641d 50%, #f9905c 50%);
background: linear-gradient(135deg, #f1641d 50%, #f9905c 50%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#f1641d",endColorstr="#f9905c",GradientType=1);
}
#campaign .prize_name p, #campaign .prize_name_2 p {
	float: left;
	font-size: 150%;
	line-height: 130%;
}
#campaign .prize_name p, #campaign .prize_name_2 p {
	float: left;
	font-size: 180%;
	line-height: 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 auto 3% 3%;
	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%;*/
	margin: 3% 0;
	display: flex;          /* 1 */
    justify-content: center;/* 2 */
    align-items: center;    /* 3 */
	border: 1px solid #abb0b0;
	padding: 1.5em 1.0em 1.5em;
}
#campaign .present_box_b .img {
	width: 43%;
	margin-right: 3%;
}
#campaign .present_box_b .img img {
	width: auto;
}
#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 5%;*/
	font-size: 120%;
	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;
}



/*バナーエリア*/

#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;
}



#campaign .point_box p.note{
	text-align: right;
}

.cp-category{
	margin-bottom: 60px;
}
.cp-category table.privilegeTable,
.cp-category table.privilegeTable th,
.cp-category table.privilegeTable td{
	border: 1px solid #ccc;
	padding: .5em;
	text-align: center;
	vertical-align: middle;
}
.cp-category table.privilegeTable th{
	text-align: center;
}
.cp-category table.privilegeTable th:nth-child(-n + 3){
	background: #e2f6ff;
}
.cp-category table.privilegeTable td{
	width: 42%;
}
.cp-category table.privilegeTable tr:first-child th:first-child{
	border-top-color: #fff;
	border-left-color: #fff;
	background: none;
}

@media screen and (max-width: 640px){
/*画像スクロール*/
	.scrolBox {
		overflow: auto;
	}
	.scrolBox > * {
		width: 580px;
		padding-bottom: 10px;
	}
}
/* ***************************************************************

	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; }
	#campaign .point_box .vn li {
		width: 30%;
	}
	#campaign .point_box .vn img {
		width: 100%;
	}
	#campaign .point_box .viewsimage {
		width: 100%;
	}
	#campaign .point_box .viewsimage img {
		width: 100%;
	}
}


/* -----------------------------------------
	SP
----------------------------------------- */



@media screen and (max-width: 640px){

	#campaign .cp-category .txt-area {
		margin: 3% 3% 0px;
	}
	h2.cp-color:before{
		left: 0;
		width: 90px;
		height: 45px;
	}
	#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;
		text-align: center;
	}
	
	#campaign .present_box_b .img img {
		max-width: 100%;
	}
	
	#campaign .present_box .content_box, #campaign .present_box_b .content_box {
	width: 100%;
	}
	#campaign .prize_name{
		margin-top: 30px;
	}
	#campaign .prize_name h4 {
		margin: 3% 0 4%;
	}
	#campaign .wchance {
		padding: 4%;
	}
	#campaign .wchance .prize_name{
		margin-top: 0;
	}
	#campaign .prize_name p, #campaign .prize_name_2 p {
		float: left;
		font-size: 130%;
		line-height: 130%;
		/*width: 80%;*/
	}
	#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;
	}
}

.prize_name h4{
	display:flex;
	align-items: center;
}
.prize_name div{
	width: auto;
	padding: 3.5%;
	margin-right: 2%;
	font-size: 120%;
	background: linear-gradient(-45deg, rgba(39,57,79,1) 13%, rgba(244,114,88,1) 13%, rgba(244,114,88,1) 87%, rgba(39,57,79,1) 87%);
	background-color: #000;
	background-repeat: no-repeat, no-repeat;
	background-position: left, left;
	color: #FFF;
}
@media screen and (min-width: 641px) and (max-width: 770px) {
	#campaign .present_box_b .img img {
		width: 95%;
	}
}

.entry_notes{
	background: #fef2f4;
	padding: 3% 4%;
}
.loginFirstSection {
	margin: 0 0 30px;
	padding: 20px 40px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.loginFirstSection p.loginBtn a {
	min-width: 380px;
	display: inline-block;
	background: #008cd0;
	padding: 10px 20px 8px;
	text-align: center;
	color: #fff;
	text-decoration: none;
	font-size: 128.6%;
	font-weight: bold;
	line-height: 1.4;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	border-bottom: 4px solid #0077B1;
}
.loginFirstSection p.loginBtn {
	margin-right: 3%;
}
.loginFirstSection p.loginBtn a:hover {
	background: #0077b1;
	border-bottom-color: #00387B;
}
#campaign .txt_blue { color:#007dbf; }
#campaign .txt_pink { color:#e4007f; }
#campaign .bold { font-weight:bold; }
#campaign .point_box {
    background: #FDFFED;
    margin-bottom: 2em;
	padding: 3%;
}
#campaign .point_box h3 {
    padding: 5px 10px;
    background: #00638f;
    text-align: center;
    color:#ffffff;
	border-radius: 3px;
	margin-bottom: 25px !important;
}
#campaign .point_box .vn {
	display: flex;
	justify-content: center;
	margin: 2% auto;
}
#campaign .point_box .vn li {
	margin: 0 10px;
}
#campaign .point_box .vn img {
	border: 1px solid #D3E9F1;
}
#campaign .point_box .viewsimage {
	width: 680px;
	margin: 20px auto;
}
#campaign .more {
	padding: 20px 0;
    background: #FDFFED;
	border: 5px solid #008cd0;
}
#campaign .more .txt-area {
	margin-top: 0;
}
@media screen and (max-width: 640px){
	.loginFirstSection p.loginBtn a, #campaign .appbtn a {
    	min-width: 100%;
	}
	.loginFirstSection {

		display: block;
		padding: 3%;
	}
	.loginFirstSection p.loginBtn, #campaign .appbtn {
    margin: 3% auto 2% 0;
	}
	#campaign .point_box {
    	margin-bottom: 2em;
		padding: 5%;
	}
	#campaign .point_box .vn {
		display: block;
		text-align: center;
		margin: 3% auto;
	}
	#campaign .point_box .vn li {
		margin: 0;
	}
	#campaign .point_box .vn img {
		/*width: 220px;***/
		width: auto;
	}
	#campaign .point_box .viewsimage {
		width: 100%;
		margin: 5% auto 2%;
	}
	#campaign .point_box p.note{
		text-align: left;
	}
}

/* ************************************************************************

	バナーエリア

************************************************************************ */
.link_box {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  margin: 0px 20px;
  border-top: 3px solid #008048;
  border-bottom: 3px solid #008048;
  padding: 35px 0 30px;
}
.link_box p.bnr img {
  border: 1px solid #cfcfcf;
  max-width: 250px;
}
.link_box .link-txt {
  padding: 0 0 0 30px;
}
@media only screen and (max-width: 640px) {
  .link_box {
    flex-wrap: wrap;
    margin: 30px 3% 0;
  }
  .link_box p.bnr {
    margin-left: auto;
    margin-right: auto;
  }
  .link_box .link-txt {
    padding: 15px 0 0;
  }
}

.noticeTx {
    padding: 20px 10px 20px;
	border-top: 1px solid #ccc;
    position: relative;
	margin: 30px auto !important;
}