@charset "utf-8";


/*------------------------- キャンペーン -----------------------------*/

.campaign {
	border-top: 23px solid #cd0006;
	border-bottom: 23px solid #cd0006;
	background: url(../img/icon_ribon.png) no-repeat left 5px;
	padding: 30px 30px 20px 150px;
}
/*.campaign h2 {
	font-size: 18px;
	color: #2f99a2;
	font-weight: normal;
	margin-bottom: 2em;
	line-height: 1.3;
	
}*/
.campaign h2 {
	font-size: 25px;
	font-size: 2.5rem;
	color: #CD0006;
    font-weight: bold;
	/*display: block;*/
}
.campaign h2 strong {
    font-size: 120%;
    color: #CD0006;
}
.campaign h2 small {
    font-weight: normal;
	margin: 0;
}
.campaign h3 {
    margin-bottom: 1em;
}
.campaign h4 {
	font-weight: bold;
    font-size: 1.5rem;
    margin-bottom: 3px;
    margin-top: 20px;
    color: #CD0006;
}
.campaign h4::before {
    font-family: "Font Awesome 5 Free";
    content: "\f05a";
    font-weight: 900;
    font-size: 130%;
    margin-right: 5px;
    position: relative;
    bottom: -2px;
}

.list_campaign {
	margin-left: 1em;
}
.list_campaign li {
	padding-left: 1em;
    margin-bottom: .8em;
    position: relative;
    font-size: 16px;
    line-height: 1.3;
    font-weight: bold;
}
.list_campaign li::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 6px;
	background: #CD0006;
	width: 8px;
	height: 8px;
}
.list_campaign.feature {
	border: 2px solid #c7e4e6;
	border-radius: 15px;
	padding:  2em 1em 1em 1.5em;
	margin: 2em 0;
}
.list_campaign.feature li {
	font-size: 17px;
}
.list_campaign.feature small {
	display: block;
	padding-left: 1em;
	text-indent: -1em;
}

.campaign em {
	font-weight: bold;
	color: #2f99a2;
	font-style: normal;
}
.campaign strong {
	font-weight: bold;
	color: #CD0006;
	font-style: normal;
}
.campaign small {
	font-size: .7em;
	margin: 0 .5em;
}
.campaign .catch {
	font-weight: bold;
	font-size: 1.8rem;
	line-height: 1.7;
    color: #2f99a2;
}
.campaign p.catch strong {
	color: #10646f;
	font-size: 1.2em;
}
.sub_catch {
	font-weight: bold;
    border-bottom: 1px dotted gray;
    color: #CD0006;
    text-align: center;
}

.note {
	font-size: 90%;
	padding-left: 1.9em;
	text-indent: -.9em;
	margin-top: 1.5em;
}
/*1時的*/
.note {
    /*border-top: 1px dashed #ccc;
    padding-top: 2em;*/
}
.note ol {
    list-style: decimal;  
    margin-left: 1.5em;

}
.note li {
    text-indent: 0;
}


@media screen and (max-width: 768px) {
	
	.campaign {
		padding: 30px 30px 20px 110px;
	}
	
} /* end media query */


@media screen and (max-width: 600px) {
	
	.campaign {
		border-top: none;
		border-bottom: none;
		background: none;
		border: 3px solid #cd0006;
		border-radius: 8px;
		padding: 30px 20px;
	}
	.campaign h3 {
		font-size: 4vw;
		border-bottom: 1px dotted #cd0006;
	}
    .campaign h2 {
        font-size: 18px;
        font-size: 1.8rem;
    }
    /*.campaign h2 strong {
        font-size: 24px;
        font-size: 2.4rem;
    }*/
	
	.campaign p:last-child {
		margin-bottom: 0;
	}
    
	
} /* end media query */




/*------------------------- 一時的なルール -----------------------------*/

/* 2コラムで表示する場合、col2というラッパーで包む*/
.campaign .col2 {
	margin-top: 40px;
}
.campaign .col2 .text_box {
	width: 54%;
}
.campaign .col2 .image_box {
	width: 44%;
}

/*　フロートで画像を表示する場合、幅は画像によってご随意に*/
.image_box.floatright,
.image_box.floatleft {
        width: 50%;
        
        margin-bottom: 1em;
    }

.image_box.floatright {
    margin-left: 3%;
}
.image_box.floatleft {
    margin-right: 3%;
}
.image_box img {
    box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
    display: block;
}
.image_caption {
    text-align: center;
    margin-bottom: 0;
    font-size: .9em;
    font-weight: bold;
    margin-top: .3em;
}
.text_box {
    margin-bottom: 3em;
}

@media screen and (max-width: 600px) {
	.campaign .col2 {
		display: block;
	}
	.campaign .col2 .text_box {
        width: 100%;
    }
    .campaign .col2 .image_box {
        width: 100%;
        margin: 40px auto 0;
    }
    
    .image_box.floatright {
        float: none;
        width: 100%;
        max-width: 400px;
        margin: 0 auto 2em;
    }
    
    
	
} /* end media query */