@charset "utf-8";



/* header/footer
------------------------------------------------*/
.cpn_footer p {
	text-align:right;
	font-size:12px;
}

@media screen and (max-width: 768px) {
	.cpn_footer p span {
		font-family:'ＭＳ Ｐゴシック', Arial, sans-serif;
	}
}





/* contents
------------------------------------------------*/
#cpn-main {
	text-align: center;
	color: #000;
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS P Gothic", "Osaka", Verdana,Arial, Helvetica, sans-serif;
}

#cpn-main a {
	-webkit-transition:all 0.3s ease-in-out;
	   -moz-transition:all 0.3s ease-in-out;
	     -o-transition:all 0.3s ease-in-out;
	        transition:all 0.3s ease-in-out;
}

#cpn-main a:hover {
	opacity:0.75;
}

#cpn-main h1 {
	margin:0;
	padding:20px 0 0;
}

#cpn-main h1 + p {
	font-size: 24px;
	font-weight: bold;
	color: #ff254d;
}
#cpn-main h1 + p span {
	font-size: 20px;
	font-weight: bold;
	color: #000;
}

#cpn-main > div {
	margin-top:30px;
	margin-bottom:30px;
}
#cpn-main > div:first-child {
	margin-top:0;
}

#cpn-main .w600 {
	width:600px;
	margin-right:auto;
	margin-left:auto;
}

#cpn-main .contents.full {
	padding:0 !important
}

#cpn-main strong {
	font-size: 18px;
	font-weight: bold;
}
#cpn-main strong span {
	font-weight:bold;
}
#cpn-main .col1 { color:#cf0f31; }
#cpn-main br.sp {
	display:none;
}

#cpn-main .-pc-content{
	display: block !important;
}
#cpn-main p .-pc-content, 
#cpn-main h2 .-pc-content {
	display: inline !important;
}
#cpn-main .-sp-content{
	display: none !important;
}


@media screen and (max-width: 768px) {
	#cpn-main {
		font-size: 14px;
	}

	#cpn-main > div {
		margin-top: 5%;
		margin-bottom: 5%;
	}

	#cpn-main br.sp {
		display: inline;
	}

	#cpn-main strong {
		font-size: 16px;
	}

	#cpn-main h1 + p {
		font-size: 16px;
	}
	#cpn-main h1 + p span {
		font-size: 14px;
	}

	#cpn-main .-pc-content,
	#cpn-main p .-pc-content, 
	#cpn-main h2 .-pc-content {
		display: none !important;
	}
	#cpn-main .-sp-content{
		display: block !important;
	}

	#cpn-main .btn {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
}



/* outline
------------------------------------------------*/
#cpn-main #outline {
	margin-top:50px;
	text-align:left;
	word-break:break-all;
}
#cpn-main #outline h2 {
	margin: 0;
	padding: 0;
	font-size: 20px;
	color: #e60012;
}
#cpn-main #outline h3 {
	margin:20px 0 0;
	padding:0;
	font-size: 16px;
}
#cpn-main #outline h3 span {
	color: #dcb83e;
	font-size: 20px;
}

#cpn-main #outline h4 {
	margin:10px 0 0;
	padding:0;
}
#cpn-main #outline p {
	padding-top:0;
}

#cpn-main #outline ul li {
	padding-left:1.0em;
	text-indent:-1.0em;
}

#cpn-main #outline dl:after {
	content:""; 
	display:block; 
	clear:both;
}
#cpn-main #outline dl dt {
	float: left;
	width: 15em;
	padding-right: 1.0em;
}
#cpn-main #outline dl dd {
	float: left;
}


@media screen and (max-width: 768px) {
	#cpn-main #outline dl dt {
		float: left;
		width: 16em;
		padding-right: 1.0em;
	}
}



/* contact
------------------------------------------------*/
#cpn-main .contact {
	text-align: left;
}
#cpn-main .contact p {
	padding: 0;
}
#cpn-main .contact p span{
	font-weight: bold;
}
#cpn-main .contact p a{
	color: #000000;
	text-decoration: underline;
}



/* box
------------------------------------------------*/
#cpn-main * {
	-webkit-box-sizing : border-box;
	-moz-box-sizing    : border-box;
	-o-box-sizing      : border-box;
	-ms-box-sizing     : border-box;
	box-sizing         : border-box;
}



/* list
------------------------------------------------*/
ul.ctr {
	text-align:center;
	letter-spacing: -.40em;
}
ul.ctr li {
	margin:0;
	display:-moz-inline-box;
	display:inline-block;
	/display:inline;
	/zoom: 1;
	letter-spacing: normal;
	vertical-align:top;
}
ul.ctr.ctr_mrgB li {
	margin:5px;
}



/* margin
------------------------------------------------*/
.mrg0 { margin:0 !important; }

.mrgT0 { margin-top:0 !important; padding-top:0 !important;}
.mrgT5 { margin-top:5px !important; }
.mrgT10 { margin-top:10px !important; }
.mrgT15 { margin-top:15px !important; }
.mrgT20 { margin-top:20px !important; }
.mrgT25 { margin-top:25px !important; }
.mrgT30 { margin-top:30px !important; }
.mrgT35 { margin-top:35px !important; }
.mrgT40 { margin-top:40px !important; }
.mrgT45 { margin-top:45px !important; }
.mrgT50 { margin-top:50px !important; }
.mrgT75 { margin-top:75px !important; }

.mrgB0 { margin-bottom:0 !important; }
.mrgB5 { margin-bottom:5px !important; }
.mrgB10 { margin-bottom:10px !important; }
.mrgB15 { margin-bottom:15px !important; }
.mrgB20 { margin-bottom:20px !important; }
.mrgB25 { margin-bottom:25px !important; }
.mrgB30 { margin-bottom:25px !important; }
.mrgB35 { margin-bottom:35px !important; }
.mrgB40 { margin-bottom:40px !important; }
.mrgB45 { margin-bottom:45px !important; }
.mrgB50 { margin-bottom:50px !important; }
.mrgB75 { margin-bottom:75px !important; }

.mrgV5 { margin:5px 0 !important; }
.mrgV10 { margin:10px 0 !important; }
.mrgV15 { margin:15px 0 !important; }
.mrgV20 { margin:20px 0 !important; }
.mrgV25 { margin:25px 0 !important; }
.mrgV30 { margin:30px 0 !important; }
.mrgV35 { margin:35px 0 !important; }
.mrgV40 { margin:40px 0 !important; }
.mrgV45 { margin:45px 0 !important; }
.mrgV50 { margin:50px 0 !important; }

.mrgL5 { margin-left:5px !important; }
.mrgL10 { margin-left:10px !important; }
.mrgL15 { margin-left:15px !important; }
.mrgL20 { margin-left:20px !important; }
.mrgL25 { margin-left:25px !important; }
.mrgL30 { margin-left:30px !important; }
.mrgL35 { margin-left:35px !important; }
.mrgL40 { margin-left:40px !important; }
.mrgL45 { margin-left:45px !important; }
.mrgL50 { margin-left:50px !important; }

.mrgR5 { margin-right:5px !important; }
.mrgR10 { margin-right:10px !important; }
.mrgR15 { margin-right:15px !important; }
.mrgR20 { margin-right:20px !important; }
.mrgR25 { margin-right:25px !important; }
.mrgR30 { margin-right:30px !important; }
.mrgR35 { margin-right:35px !important; }
.mrgR40 { margin-right:40px !important; }
.mrgR45 { margin-right:45px !important; }
.mrgR50 { margin-right:50px !important; }



/* padding
------------------------------------------------*/
.padT0 { padding-top:0 !important; }
.padB10 { padding-bottom:10px !important; }

.padH10 { padding:0 10px !important; }
.padH15 { padding:0 15px !important; }
.padH17 { padding:0 17px !important; }
.padH20 { padding:0 20px !important; }

.padV20 { padding:20px 0 !important; }

.padL25 { padding-left:25px !important; }



/* font
------------------------------------------------*/
.bld { font-weight:bold; }
.fs12 { font-size:12px !important; }
.fs14 { font-size:14px !important; }
.fs16 { font-size:16px !important; }
.fs18 { font-size:18px !important; }
.fs20 { font-size:20px !important; }
.fs22 { font-size:22px !important; }
.fs24 { font-size:24px !important; }

.fcred { color:#f00; }
.fcblue { color:#0060ff; }



/* text direction
------------------------------------------------*/
.ctr { text-align:center; }
.rgt { text-align:right; }
.lft { text-align:left; }



/* text indent
------------------------------------------------*/
.ti01 { padding-left:1.0em; text-indent:-1.0em; }
.ti02 { padding-left:1.4em; text-indent:-1.4em; }
.ti03 { padding-left:2.0em; text-indent:-2.0em; }
.ti04 { padding-left:1.6em; text-indent:-1.6em; }



/* float clear
------------------------------------------------*/
.clearfix {
	zoom:1;
}
.clearfix:after {
	content:""; 
	display:block; 
	clear:both;
}
*:after {
	display:block;
	clear:both;
}