@charset "utf-8";


body {
	font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "A-OTF 新ゴ Pro",A-OTF Shin Go Pro,Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size:125%;/* 20px */
	line-height:1.7;
	background:#EEE;
	color: #333;
	font-feature-settings: "palt";
	text-align: justify;
	word-break: break-all;
}
h1 {
	}


h2 {
	margin: 2.5em auto 1.5em;
	}
img {
	display:block;
	margin:0 auto;
	max-width: 100%;
}

.large {
	font-size:120%;
	}

.xlarge {
	font-size:144%;
	}

.xxlarge {
	font-size:172.8%;
	}
.small {
	font-size:82.5%;
	}
.xsmall {
	font-size:62.5%;
	}
.xxsmall {
	font-size:56.25%;
	}	
.u {
	text-decoration:underline;
}
.red {
	color:red;
	color: #C00;
	color: #e91672;
}
.highlight {
	background-color:#fff266;
}
.redhigh {
	color:red;
	color: #e62e8a;
	background-color:#fff266;
	}
.pic_right{
	float: right;
	margin: 10px -15px 10px 10px;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.2);
}
.pconly{display: block;}
.tbonly,.sponly{display: none;}
strong {
	font-weight:bold;
	}
#wrapper {
	margin:0 auto;
	background: url("../images/bg_wrapper.png") center center repeat-y;
	background: linear-gradient(to right, #fff 0, #fff 750px, transparent 750px) center center / 750px 100% repeat-y;
}
main {
}
.container{
}
footer {
	margin:0 auto;
	padding:20px 0;
	width: 750px;
	max-width: 100vw;
	background: #8f8771;
	color: #fff;
	text-align:center;
	font-size: smaller;
}
footer a {
	color:#fff;
	text-decoration:underline;
}

address {
	font-style:normal;
}


section {
	margin: 0 auto;
	width: 750px;
	max-width: 100vw;
}


.con_text {
	margin: 0 auto;
	width: 750px;
	max-width: 100vw;
	font-size: 1em;
}

.con_text h3 {
	margin: 1.5em auto 1em;
	padding: 0.75em 1em 0.5em;
	width: 670px;
	max-width: 92vw;
	background: #222;
	color: #f5f5f5;
	font-size: 1.2em;
	line-height: 1.4;
}

.con_text p {
	margin: 2.5em auto 0;
	width: 670px;
	max-width: 92vw;
}

.con_text h3 + p {
	margin-top: 1.5em;
}

/*
 *		what
 */	

.what {
	padding-bottom: 2.5em;
} 
 
/*
 *		merit
 */	

 .con_merit {
	margin: 0 auto;
	padding: 1.5em;
	width: 100%;
	background: #CCC;
}

.con_merit ol {
	padding: 1.5em 2em 0.625em;
	box-shadow: 0 0 5px rgba(0,0,0,0.3);
	background: #fff;
	list-style: none;
	/* font-weight: bold; */
}

.con_merit ol li {
	margin-top: 0.5em;
	padding: 0.25em 0 0.5em;
	padding-left: 2em;
	border-bottom: 1px dotted #CCC;
	background: url(../images/num01.png) left 0.3em / 1.2em 1.2em no-repeat;
	line-height: 1.4;
	font-size: 1.2em;
}

.con_merit ol li:nth-of-type(2) {
	background-image: url(../images/num02.png);
}

.con_merit ol li:nth-of-type(3) {
	background-image: url(../images/num03.png);
}

.con_merit ol li:nth-of-type(4) {
	background-image: url(../images/num04.png);
}

.con_merit ol li:nth-of-type(5) {
	background-image: url(../images/num05.png);
}

.con_merit ol li:nth-of-type(6) {
	background-image: url(../images/num06.png);
}

.con_merit ol li:first-of-type {
	margin-top: 0;
}

.con_merit ol li:last-of-type {
	border: none;
}



/*
 *		strength
 */	


.comparison {
	margin: 2.5em auto;
	width: 100%;
	border-collapse: separate;
	border-spacing: 0;
	background: #fff;
	text-align: center;
	vertical-align: middle;
	font-size: 0.875em;
}

.comparison thead {
	background: #333;
}

.comparison th {
	padding: 1em 1em 0.75em;
	font-size: 1.2em;
	font-weight: bold;
	border-right: 1px solid rgba(255, 255, 255, 0.1);
}

.comparison th:first-of-type {
	background: #e8dbb7;
	color: #C00;
	font-size: 2em;
}

.comparison th:last-of-type {
	background: #CCC;
	color: #111;
}


.comparison tbody tr:nth-of-type(odd) {
	background: #fff;
}

.comparison tbody tr:nth-of-type(even) {
	background: #f8f9fa;
}

.comparison td {
	padding: 1em 1em 0.75em;
	border-right: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}

.comparison td:first-of-type {
	background: #faf6eb;
	font-weight: bold;
}


/*
 *		navigator
 */	

.navigator + section {
	margin-bottom: 2.5em;
}

.img_navi {
	width: 87.5vw;
	max-width: 480px;
}

.con_navi h3 {
	margin-left: 40px;
	width: fit-content;
}


/*
 *		schedule
 */	

.schedule {
	padding: 4em 0;
}

.schedule img {
	max-width: 92vw;
}

/*
 *		特典
 */	

.bonus h2 {
	margin: 0 auto;
}


/*
 *		form
 */


.form {
	position: relative;
	margin: 0 auto;
	padding: 2em 0 1em;
	background: #8f8771;
}

.form:first-of-type {
	margin-bottom: 4em;
}

.hd_form01 {
	margin: 0 auto 2em;
	max-width: 96vw;
}

.submit {
	margin: 0 auto;
	padding:1.5em 0 1em;
	width:720px;
	max-width: 98vw;
	border-radius: 0.4em;
	/* box-shadow: 0 0 5px rgba(0,0,0,1); */
	background: #fff;
	}
.submit .btn {
	display:block;
	margin:1em auto 0;
	max-width: 94vw;
}
.deco {/* フォームの入力欄装飾用 */
	display:block;
	margin: 0 auto;
	padding:10px 6px 4px;
	width: 640px;
	max-width: 94vw;
	height:84px;
	border: 4px solid #1897c6;
	background:#fff;
	color:#1698c7;
	font-size: 1.5em;
	font-weight: bold;
	text-align:center;
}

.deco::placeholder {
	color: #AAA;
}

.btn {

	/* filter: drop-shadow(0 0 2px rgba(0,0,0,0.5)); */

	animation-name:btn-animation;
	animation-iteration-count: infinite;
	animation-duration:1.6s;
}

.btn:hover {
	animation-duration:0.8s;	
}

.btn + p {
	margin: 1em auto 0;
	text-align: center;
}

@keyframes btn-animation-f {
	0% { transform:scale(1,1)}
	20% {transform:scale(1.02,1.02)}
	40% { transform:scale(1,1)}
	60% {transform:scale(1.02,1.02)}
	80% { transform:scale(1,1)}
	85% { transform:skewX(10deg)}
	90% {transform:skewX(-10deg)}
	95% { transform:skewX(10deg)}
	100% {transform:skewX(-10deg)}
}


.optin {
	margin: 4em auto 0;
	padding: 1em;
	width: 640px;
	max-width: 94vw;
	height: 8em;
	background: #f5f5f5;
	color: #333;
	font-size: 75%;
	overflow: scroll;
}


/***	常時表示ボタン設定	***/

.flbtn {
	position: fixed;
	bottom: 0.5em;
	right: 0.5em;
	z-index: 9999;
	opacity: 0;
}

.flbtn a {
	display: block;
	width: 336px;
	height: 81px;
	background: url(../images/button.png) no-repeat;
	background-size: 100%;
	text-indent: -9999px;

	animation-name: btn-animation;
	animation-iteration-count: infinite;
	animation-duration: 2s;
	animation-delay: 0.6s;

	filter: drop-shadow(0 0 2px rgba(0, 0, 0, 0.5));
}



@keyframes btn-animation {
	0% {
		transform: translateY(0.5em);
	}

	50% {
		transform: translateY(-0.5em);
	}

	100% {
		transform: translateY(0.5em);
	}
}




/*
 *		特商法
 */	

/* Tokutei Table
------------------------------------------------------*/
.tb01{
	width:720px;
	margin:30px auto 30px;
	background:#ccc;
}
.tb01 .title{
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #FFFFFF;
	background-color:#EBEBEB;
	padding:6px;
	width:25%;
}
.tb01 td{
	font-size: 12px;
	vertical-align: top;
	background-color:#FFFFFF;
	padding:6px;
}

.law #wrapper {
	margin: 0 auto 2em;
	padding: 3em;
	width: 800px;
	background: #fff;
	max-width: 100%;
	font-size: 75%;
}

.law #wrapper h2 {
	font-size: 2em;
}

.law #wrapper h3 {
	margin-top: 2em;
	font-size: 1.25em;
}

.law #wrapper h4 {
	margin-top: 2em;
}

	
@media screen and (max-width: 1023px) {
	
	.flbtn {
		left: 25vw;
		bottom: 0.5em;
	}

	.flbtn a {
		width: 50vw;
		height: calc( ( 192 / 840) * 50vw );
	}

	footer {
		padding-bottom: calc( ( 192 / 840) * 50vw + 1.5em );
	}
}

@media screen and (max-width: 749px) {

	.pconly,.tbonly{display: none;}
	.sponly{display: block;}

	.con_text h3 {
		margin: 4vw auto;
	}

	.con_text p {
		margin: 4vw auto 0;
	}

	.con_merit {
		padding: 4vw;
	}

	.con_merit ol {
		padding: 4vw 4vw 2vw;
	}

	.comparison {
		margin: 6vw auto;
	}

	.comparison th,
	.comparison td {
		padding: 0.8em 0.6em;
	}

	.comparison th:first-of-type,
	.comparison td:first-of-type {
		width: 60%;
	}


	.schedule {
		padding: 6vw 0 8vw;
	}



	/*
	*		form
	*/

	.hd_form01 {
		margin: 0 auto 4vw;
	}

	.form {
		padding: 1em 0;
	}

	.form:first-of-type {
		margin-bottom: 2em;
	}

	.submit {
		padding-top: 2vw;
		padding-bottom: 2vw;
	}

	.submit .btn {
		margin-top: 3vw;
	}

	.deco {
		display:block;
		margin: 2vw auto 0;
		height: calc( 84 / 640 * 94vw * 1.2 );
		font-size: 1.2em;
	}



	.optin {
		margin-top: 2em;
	}


  
}

@media screen and (max-width: 599px) {

	.pconly,.tbonly{display: none;}
	.sponly{display: block;}

	body {
		font-size: 4vw;
	}

	h2 {
		margin: 8vw auto 4vw;
	}

	
	.flbtn {
		left: 2vw;
		bottom: 0.5em;
	}

	.flbtn a {
		width: 96vw;
		height: calc( ( 192 / 840) * 96vw );
	}

	
	footer {
		padding-bottom: calc( ( 192 / 840) * 96vw + 1.5em );
	}

}



