@charset "UTF-8";

.box1 {
	padding: 40px 0px 20px;
	margin: 0 auto 80px;
	max-width: 800px;
	background: url(../images/bg_note.png) center repeat;
}
.box1 p {
	padding: 0px 40px 20px;
	margin: 0px auto 20px;
}
.box1 p:not(:last-child){
	border-bottom: 1px dashed #bebebe;
}

/* 実績 */
table{
	width: 100%;
	max-width: 800px;
	border-spacing: 0;
	border-collapse: collapse;
	margin: 0 auto 40px;
	line-height: 1.6;
	background: #fff;
	font-size: 18px;
	text-align: center;
}
.res1{
	box-shadow: 0px 0px 3px 0px rgb(208,208,208,0.9);
}
.res1 th,
.res1 td{
	padding: 5px 10px;
}
.res1 th{
	background: #007da5;
	color: #fafcff;
	letter-spacing: 2px;
	font-weight: 600;
	font-size: 16px;
	padding: 10px;
}
.res1 tr:nth-of-type(odd){
	border-bottom: 1px solid #97cdde;
}
.res1 tr:nth-of-type(odd) td{
	padding-bottom: 10px;
}
.res1 tr:first-child,
.res1 tr:last-child{
	border-bottom: none;
}
.res1 .date{
	background: #d2f0ff;
	color: #007da5;
	font-size: .8em;
}
.res1 .hit{
	color: #ff2900;
	font-weight: 600;
	font-size: 1.4em;
}
.res1 .res_img{
	padding-top: 20px;
}
.res1 .odds{
	text-align: right;
	color: #ff2900;
	font-weight: 600;
	font-size: 1.4em;
}

.list1{
	padding: 40px 40px 20px;
	margin: 0 auto 80px;
	max-width: 800px;
	background: url(../images/bg_stone.png) center repeat;
	box-shadow: 0px 0px 3px 0px rgb(208,208,208,0.9);
}
.list1 li{
	list-style: none;
	position: relative;
	padding-left: 40px;
	padding-bottom: 10px;
}
.list1 li:before{
	content: "";
	position: absolute;
	top: .3em;
	left: 10px;
	-webkit-transform: rotate(50deg);
	-ms-transform: rotate(50deg);
	transform: rotate(50deg);
	width: 10px;
	height: 20px;
	border-right: 4px solid #ca1e1e;
	border-bottom: 4px solid #ca1e1e;
}
.list1 li:not(:last-child){
	border-bottom: 1px dashed #e28585;
	margin-bottom: 20px;
}

.box2 {
	margin: 0 auto 80px;
	max-width: 800px;
}
.box2 >div {
	background: #e2e2e2;
	padding: 10px 20px;
	border: 6px double #fff;
	-webkit-flex: 0 1 310px;
		-moz-flex: 0 1 310px;
		-ms-flex: 0 1 310px;
		-o-flex: 0 1 310px;
		flex: 0 1 310px;
}
.box2 p{
	margin: 0;
	padding: 0;
}
.box2 p:not(:last-child):after{
	content: "、";
	display: inline-block;
}

.list2{
	padding: 40px 40px 20px;
	margin: 0 auto 80px;
	max-width: 800px;
	background: url(../images/bg_stone.png) center repeat;
	box-shadow: 0px 0px 3px 0px rgb(208,208,208,0.9);
}
.list2 li{
	list-style: none;
	position: relative;
	padding-left: 40px;
	padding-bottom: 20px;
	line-height: 1.4;
}
.list2 li:before{
	content: "";
	position: absolute;
	top: .3em;
	left: 10px;
	-webkit-transform: rotate(50deg);
	-ms-transform: rotate(50deg);
	transform: rotate(50deg);
	width: 10px;
	height: 20px;
	border-right: 4px solid #007da5;
	border-bottom: 4px solid #007da5;
}
.list2 li:not(:last-child){
	border-bottom: 1px dashed #86cbce;
	margin-bottom: 20px;
}

.box3{
	padding: 30px;
	margin: 0px auto 40px;
	max-width: 800px;
	background: #ffe0e0;
/*	color: #fff;*/
	border: 6px double #ff4d4d;
	box-shadow: 0px 0px 3px 0px rgb(208,208,208,0.9);
}
.box3 p {
	margin: 0px auto;
	padding: 0;
}
.box3 p:not(:last-child){
	margin-bottom: 20px;
	padding-bottom: 10px;
	border-bottom: 1px dashed #fff;
}
.box3 .red{
	color: #ad002e;
	display: inline-block;
}
.box3 .blue{
	color: #005d9a;
	display: inline-block;
}

.benefit{
	padding: 40px 60px;
	margin: 0px auto 40px;
	/*max-width: 800px;*/
	/*background: #e6f9fa;*/
	letter-spacing: 2px;
	line-height: 1.8;
	border: 2px solid #ff4d4d;
	box-shadow: 0px 0px 3px 0px rgb(208,208,208,0.9);
}

.w95{
	width: 95%;
	margin-right: auto;
	margin-left: auto;
}
.form,
.info{
	color: #fff;
	font-size: 20px;
	text-align: center;
	background:
		/*url(../images/form_uma.png) bottom right no-repeat,*/
		url(../images/form_bg.png) center #1c191f;
	padding: 60px 0;
	margin: 0 auto;
	width: 100%;
}
.form form{
	max-width: 800px;
	margin: 0 auto;
}
.form form p {
	margin: 0px auto 20px;
	padding: 0px ;
	font-weight:bold;
	letter-spacing: 3px;
	line-height: 1.6;
}
#main .form_ttl,
#main .info_ttl{
	border-bottom: 1px dashed #dbf5f6;
	padding-bottom: 10px;
	padding-right: 0;
	padding-left: 0;
}
.form form .red{
	color: #ff816f;
}

.form form input[type="text"] {
	font-size: 20px;
	padding: 10px;
	border: none;
	border-radius: 5px;
	width: 500px;
}
label {
	cursor: pointer;
	cursor: hand;
	/*font-weight:normal;*/
	font-size: 2em;
	font-weight: 600;
}
.form .btn{
	cursor: pointer;
	cursor: hand;
}
.form .error{
	display: block;
	color: #ff816f;
	font-weight: bold;
}
.form .end{
	font-size: 2em;
	color: #ff816f;
	margin-bottom: 0;
}

.form .flex{
	background: none;
	/*width: 90%;*/
	max-width: 800px;
	margin: 0 auto 40px;
	line-height: 1.4;
}
#main .form .flex p{
	margin: 0;
	text-align: left;
	-webkit-flex: 1 0 30%;
	-moz-flex: 0 1 30%;
	-ms-flex: 0 1 30%;
	-o-flex: 0 1 30%;
	flex: 0 1 30%;
}
#main .form .flex p.fs10{
	font-weight: normal;
	letter-spacing: 1px;
	margin-top: 20px;
}
input:checked + span{
	text-shadow: 1px 0 10px rgb(255,129,111,1),
				 0 1px 10px rgb(255,129,111,1),
				 -1px 0 10px rgb(255,129,111,1),
				 0 -1px 10px rgb(255,129,111,1);
	position: relative;
}
input:checked + span:after{
	content: "";
	display: inline-block;
	position: absolute;
	width: 115%;
	height: 5px;
	left: -15%;
	bottom: -10px;
	background: rgb(255,129,111,1);
}

::placeholder {
  color: #a8a5a4;
}
/* 旧Edge対応 */
::-ms-input-placeholder {
  color: #a8a5a4;
}
/* IE対応 */
:-ms-input-placeholder {
  color: #a8a5a4;
}

#main .info_ttl{
	max-width: 800px;
    margin: 0 auto 30px;
    letter-spacing: 10px;
}
.info{
	color: #111010;
	background: #fcfcfc;
	letter-spacing: 1px;
	margin: 0 auto 60px;
}
.info th,
.info td{
	padding: 10px 20px;
	border-bottom: 1px dashed #545454;
}
.info tr:last-child th,
.info tr:last-child td{
	border-bottom: none;
}
.info th{
	/*background: #1c1a20;*/
	background: #383838;
	color: #fbe653;
	font-weight: 600;
	color: #fcfcfc;
	width: 20%;
	font-size: 18px;
	letter-spacing: 3px;
	font-weight: normal;
}
.info td{
	border-color: #bdb7b7;
	text-align: left;
}
.info .red{
	color: #ff816f;
}
.price>.flex:first-child{
	position: relative;
	margin-bottom: 30px;
}
.price>.flex:first-child:before{
	content: "";
	display: inline-block;
	width: 140px;
	height: 5px;
	background: rgba(255,77,51,0.6);
	position: absolute;
	top: 20px;
	left: 22%;
	transform: rotate(-5deg);
	-webkit-transform: rotate(-5deg);
	-ms-transform: rotate(-5deg);
}
.price>.flex:first-child:after{
	content: "\025bc  \025bc  \025bc";
	display: inline-block;
	color: #ff4d4d;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,40px);
	-webkit-transform: translate(-50%,40px);
	-ms-transform: translate(-50%,40px);
}
.price>.flex:last-child{
	margin-bottom: 0;
}
.price .tag{
	display: inline-block;
	background: #bdb7b7;
	border-radius: 2px;
	line-height: 1;
	padding: 4px 8px;
	font-size: 16px;
	position: relative;
	margin-right: 10px;
}
.price .tag:after{
	position: absolute;
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border: solid 4px transparent;
	border-left: solid 6px #bdb7b7;
	top: 50%;
	right: 0;
	transform: translate(100%,-50%);
	-webkit-transform: translate(100%,-50%);
	-ms-transform: translate(100%,-50%);
}
.price .tag_ex{
	background: #ff4d4d;
	color: #fff;
	font-size: 24px;
}
.price .tag_ex:after{
	border-left-color: #ff4d4d;
}
.form4 .price>.flex:first-child:before,
.form4 .price>.flex:first-child:after{
	display: none;
}




/*table tr:not(:last-child){
	border-bottom: 1px solid #2b9c0e;
}*/

button#cr_btn {
	margin: auto;
	position: relative;
	display: inline-block;
	padding: 10px 60px;
	text-decoration: none;
	color: #FFF;
	background: #ff4d4d;
	background: linear-gradient(0deg, rgba(169,51,51,1) 0%, rgba(255,77,77,1) 50%, rgba(255,77,77,1) 100%);
	border-radius: 10px;
	box-shadow: 0px 0px 15px -5px #777;
	border: 2px solid #a93333;
	font-weight: 600;
	font-size: 24px;
	cursor: pointer;
	letter-spacing: 2px;
}

button#cr_btn:hover {
	background: #a93333;
	box-shadow: none;
}

@media screen and (max-width: 768px){
	html {width:130%;}
}

/* ƒXƒ}ƒz“K—pCSS */
@media screen and (max-width: 640px){
	.res1{
		font-size: 24px;
		line-height: 1.2;
	}
	.res1 th,
	.res1 .date{
		font-size: 1em;
	}
	.res1 .odds{
		width: 30%;
	}

	.form form .fs20{
		font-size: 26px;
	}

	.form .btn{
		width: 90%;
		margin-top: 20px;
	}
	.form form input[type="text"]{
		padding: 30px 10px;
		width: 100%;
		font-size: 40px;
		/*height: 20px;*/
	}
	.box1,
	.box3,
	.box4,
	.box5{
		width: 95%;
	}
	.box1{
		padding:40px 0 10px;
	}
	#main .box1 p{
		padding: 0 15px;
	}
	.box2 >div {
	padding: 10px 0;
	border: 12px double #fff;
	-webkit-flex: 0 1 660px;
		-moz-flex: 0 1 660px;
		-ms-flex: 0 1 660px;
		-o-flex: 0 1 660px;
		flex: 0 1 660px;
	}
	#main .box2 >div p{
		padding: 0;
	}
	.bg_gray .cnt{
		background: url(../images/bg_gray.png) center left -100px no-repeat;
	}
	#main .box3 p{
		padding: 0;
		line-height: 1.6;
	}
	#main .box3 p:not(:last-child){
		padding-bottom: 10px;
	}
	.box4{
		font-size: 80%;
	}
	.box5{
		padding: 40px 40px 20px;
	}
	.box5:after{
		right: -30px;
	}
	#main .box5 p{
		padding: 0 0 20px;
	}
	.benefit{
		width: 95%;
		padding: 40px 20px;
	}
	.benefit>.flex:not(:last-child){
		margin-bottom: 40px;
		border-color: #64c404;
	}
	.benefit>.flex img{
		width: 500px;
		margin: 0 auto 20px;
	}
	#main .benefit p{
		padding: 0;
		margin-left: 0;
	}
	.result>div{
		-webkit-flex: 1 0 500px;
		-moz-flex: 0 1 500px;
		-ms-flex: 0 1 500px;
		-o-flex: 0 1 500px;
		flex: 0 1 500px;
	}
	.result>div:nth-child(even){
		margin-left: 0;
	}
	.form{
		font-size: 40px;
	}
	.form .fs10{
		font-size: 12px;

	}
	input:checked + span:after{
		width: 300px;
		bottom: 0;
	}
	#main .form .flex p{
		-webkit-flex: 1 0 100%;
		-moz-flex: 0 1 100%;
		-ms-flex: 0 1 100%;
		-o-flex: 0 1 100%;
		flex: 0 1 100%;
		padding: 0;
	}
	#main .form .flex p:first-child{
		margin-bottom: 5px;
	}
	#main .form .flex p:first-child span{
		border-bottom: 1px solid;
	}
	#main .form .flex p:first-child span:before,
	#main .form .flex p:first-child span:after{
		content: "▼";
		display: inline-block;
	}
	#main .form .flex div{
		width: 100%;
	}
	.info{
		font-size: 30px;
	}
	.info th{
		font-size: 24px;
	}
	.price>.flex:first-child:before{
		left: 30%;
	}
	.price .tag:not(.tag_ex)+div{
		width: 80%;
	}
	.price .tag:not(.tag_ex)+div .fs16{
		display: inline-block;
	}
	.info .fs40{
		font-size: 170%;
	}
	.form3 label{
		font-size: 1.4em;
	}

	/*.form .flex input[type="text"]{
		width: 100%;
	}*/
	.res1{
		width: 95%;
	}
	.list1{
		line-height: 1.4;
		width: 90%;
		padding: 40px 20px 20px;
	}


}


@media screen and (max-width: 414px){
	p {margin: 0px auto 200px;}
	.box1 p {
		padding: 0px 30px;
		margin: 0px auto 40px;
		line-height: 1.5em;
		font-size: 45px;
	}
}
