@charset "utf-8";



/* contents
------------------------------------------------*/
#cpn-main {
	text-align: center;
	color: #000;

}

#cpn-main a {
	color: #4383ff;
	-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 > 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;
}

#cpn-main .apple-caution {
	text-align: left;
}


@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;
	}
}



/* keyvisual
------------------------------------------------*/
#cpn-main #keyvisual {
	margin: 0 30px;
	padding: 0 0 15px;
	border: 1px solid #666;
}

#cpn-main #keyvisual h1 {
	margin: 0;
	padding: 0 0 0;
}

#cpn-main #keyvisual hr {
	height: 4px;
	margin: 15px 30px 0;
	background: #d71718;
	border: none;
}


@media screen and (max-width: 768px) {
	#cpn-main #keyvisual {
		margin: 0 5%;
		padding: 0 0 3%;
	}

	#cpn-main #keyvisual hr {
		height: 4px;
		margin: 3% 1.5% 0;
	}
}



/* outline
------------------------------------------------*/
#cpn-main #outline {
	margin-top: 90px;
	text-align: left;
	word-break: break-all;
}
#cpn-main #outline h2 {
	margin: 0;
	padding: 0;
	text-align: left;
	font-size: 24px;
	color: #000;
}
#cpn-main #outline h3 {
	margin: 30px 0 10px;
	padding: 0;
	font-size: 18px;
	color: #000;
}
#cpn-main #outline h3 span {
	color: #f5cc88;
}

#cpn-main #outline h4 {
	margin:10px 0 0;
	padding:0;
}
#cpn-main #outline p {
	padding-top:0;
}

#cpn-main #outline ul {
	/* margin-top: 10px; */
}
#cpn-main #outline ul li {
	padding-left: 1.0em;
	text-indent: -1.0em;
}
#cpn-main #outline ul.ti02 li {
	padding-left: 1.8em;
	text-indent: -1.8em;
}

#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 {
		margin-top: 10%;
	}

	#cpn-main #outline h2 {
		font-size: 4.5vw;
	}
	#cpn-main #outline h3 {
		font-size: 4.0vw;
	}
}



/* contact
------------------------------------------------*/
#cpn-main .contact {
	text-align: left;
}

#cpn-main .contact h4 {
	font-size: 16px;
}
#cpn-main .contact p {
	padding: 0;
}
#cpn-main .contact p span{
	font-weight: bold;
}
#cpn-main .contact p a{
	color: #000000;
	text-decoration: underline;
}


@media screen and (max-width: 768px) {
	#cpn-main .contact h3 {
		font-size: 4.0vw;
	}
	#cpn-main .contact h4 {
		font-size: 3.8vw;
	}
}



/* footer
------------------------------------------------*/
#cpn-main #cpn-footer {
  margin-top: 50px;
}
#cpn-main #cpn-footer p {
  margin-bottom: 30px;
  text-align: center;
}

.dpoint-box .campaign-dpoint__title {
  text-align: center;
}
.campaign-dpoint__btn {
  margin: 10px 0 30px;
  text-align: center;
}

#cpn-main #cpn-footer ul {
  display: table;
  width: 100%;
  margin: 0;
  padding: 0;
  border-top: 1px solid #ebebeb;
}
#cpn-main #cpn-footer ul li {
  width: 50%;
  list-style-type: none;
  display: table-cell;
  border-left: 1px solid #ebebeb;
}
#cpn-main #cpn-footer ul li:first-child {
  border-left: none;
}
#cpn-main #cpn-footer ul li a {
  padding: 15px 0 15px 30px;
  color: #000;
  text-decoration: none;
  background-size: 15px auto;
  display: block;
  position: relative;
}
#cpn-main #cpn-footer ul li a:after {
  content: url(//d1mts1n1u0bek1.cloudfront.net/std/campaigns/tgm_dcard/images_tgm_dcard/icon_arrow.png);
  position: absolute;
  right: 13px;
  margin-top: -10px;
  top: 50%;
}
@media only screen and (max-width: 768px) {
  #cpn-main #cpn-footer ul li {
  	width: 100%;
  }
}



/* 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; }



/* float clear
------------------------------------------------*/
.clearfix {
	zoom:1;
}
.clearfix:after {
	content:"";
	display:block;
	clear:both;
}
*:after {
	display:block;
	clear:both;
}
