@charset "utf-8";

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	font-family:"Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3",Meiryo,"メイリオ","MS PGothic","MS UI Gothic",Helvetica,areal,sans-serif;
	vertical-align:middle;
	background:transparent;
	list-style-type:none;
	font-size: medium;
	font-weight:normal;
	font-style:normal;
	line-height: 1.6;
	text-align:left;
	color: #333;
	margin:0;
	padding:0;
	border:0;
	outline:none;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-webkit-text-size-adjust: 100%
	max-height: 100%;
	-webkit-appearance: none;
}

select,
input{
	-webkit-appearance: none;

}

body{
	background:#f7f7f7;
}

img{
	display:block;
	width:90%;
	margin:auto;
}

a{
	text-decoration:none;
}


#wrapper{
	max-width:480px;
	margin:auto;
	background:#F1FBE6;
	overflow:hidden;
}

header{
	background:#9bb828;
	padding-top:70px;
}

.qa .inner,
header .inner{
	width:100%;
	background:#F1FBE6;
	position:relative;
	z-index:2;
}

.qa .inner::before,
header .inner::before{
	content:"";
	width:1500px;
	height:1500px;
	border-radius:50%;
	position:absolute;
	top:-45px;
	left:calc(50% - 750px);
	background:#F1FBE6;
	z-index:-1;
}

header h1{
	width:80%;
	margin:0 auto 20px;;
}

header h2{
	width:95%;
	margin:auto;
	text-align:center;
	font-size:80%;
	padding:2px 0;
}

header h2 span{
	background:#fbd44a;
	padding:2px 5px;
	border-radius:5px;
	margin-right:5px;
	font-size:100%;
	line-height:1;
}

.firstview img{
	margin:20px auto;
}

.firstview p{
	width:95%;
	margin:auto;
	font-size:180%;
	font-weight:bold;
	text-align:center;
}

.firstview p span{
	font-size:70%;
	font-weight:bold;
	position:relative;
	width:80%;
	margin:auto;
	text-align:center;
	display:block;
}

.firstview p span::after,
.firstview p span::before{
	content:"";
	position:absolute;
	top:0;
	width:0;
	height:100%;
	border-left:solid 3px #333;
}

.firstview p span::before{
	left:0;
	transform:rotate(30deg);
}

.firstview p span::after{
	right:0;
	transform:rotate(-30deg);
}

.toFm{
	margin:20px auto;
}

.toFm a{
	display:block;
	text-align:center;
	background:#f18331;
	border:solid 3px #f6b17d;
	width:80%;
	margin:auto;
	font-size:200%;
	color:#fff;
	border-radius:10px;
	padding:10px 35px 10px 0 ;
	position:relative;
	letter-spacing:2px;
	font-weight:bold;
}

.toFm a::before,
.toFm a::after{
	content:"";
	position:absolute;
}

.toFm a::after{
	width:34px;
	height:34px;
	border:solid 2px #fff;
	border-radius:50%;
	right:15px;
	top:calc(50% - 17px);
}

.toFm a::before{
	width:0;
	height:0;
	border-left:22px solid #fff;
	border-bottom:14px solid transparent;
	border-top:14px solid transparent;
	right:20px;
	top:calc(50% - 12px);
}


.toFm a span{
	border:solid 2px #fff;
	border-radius:30px;
	color:#fff;
	font-size:60%;
	margin-right:10px;
	padding:2px 10px;
	font-weight:bold;
	line-height:1;
}

.amzn{
	background:#fbd44a;
	position:relative;
	padding:20px 5%;
}

.amzn p span{
	font-weight:bold;
	font-size:80%;
}

.amzn img{
	width:42%;
	float:right;
}

.amzn p{
	margin-top:20px;
	font-size:110%;
	font-weight:bold;
}

.amzn p.bottom_p{
	clear:both;
	border-top:dotted 3px #333;
	text-align:center;
	font-size:100%;
	padding-top:20px;
}

.amzn p.bottom_p span{
	font-size:80%;
	font-weight:normal;
}

.point{
	overflow:hidden;
	position:relative;
	z-index:+9;
	margin:30px auto;
}

.point ol{
	overflow:hidden;
	width:90%;
	margin:10px auto;
}

.point ol li{
	padding-left:30%;
	margin-bottom:10px;
	position:relative;
}

.point ol li>img{
	width:25%;
	position:absolute;
	left:2%;
	top:calc(50% - 50px);
}

.point ol li dl dt{
	font-size:140%;
	vertical-align:baseline;
}

.point ol li dl dt span{
	font-size:200%;
	font-style:italic;
	font-weight:bold;
	vertical-align:baseline;
	margin-right:5px;
}

.point ol li:nth-child(1) dl dt span{
	color:#298D3A;
}

.point ol li:nth-child(2) dl dt span{
	color:#f29191;
}

.point ol li:nth-child(3) dl dt span{
	color:#f29046;
}

.point ol li dl dd{
	font-size:90%;
}

.qa{
	width:100%;
	overflow:hidden;
	position:relative;
}

.qa h2{
	background:#9bb828;
	text-align:center;
	font-size:240%;
	font-weight:bold;
	padding:20px 0 70px;
}

.qa ul{
	width:90%;
	margin:0 auto;
}

.qa ul li{
	border-bottom:dotted 3px #333;
	margin-bottom:20px;
}

.qa ul li dd,
.qa ul li dt{
	padding-left:23%;
	font-weight:bold;
	margin-bottom:30px;
}

.qa ul li dt{
	background:url(../img/q.png) no-repeat 4% top;
	background-size:20%;
	padding:0 0 20px 26%;
	font-size:140%;
}

.qa ul li dd{
	background:url(../img/a.png) no-repeat 4% top;
	background-size:20%;
	padding:0 0 10px 26%;
	font-size:130%;
}

.qa ul li img{
	margin:20px auto;
}

.qa ul li p{
	width:95%;
	margin:10px auto 20px;
	font-size:100%;
}

.qa ul li p strong{
	font-weight:bold;
	font-size:100%;
	color:#ff6d61;
}

.qa ul li table{
	width:90%;
	margin:20px auto;
	border-collapse: separate;
	border-spacing: 0;
	box-sizing:border-box;
	overflow: hidden;
}

.qa ul li table td,
.qa ul li table th{
	padding:10px;
	text-align:center;
	border-top:solid 1px #333;
	border-left:solid 1px #333;
	width:50%;
}

.qa ul li table td{
	border-top:dotted 2px #777;
}

.qa ul li table td:last-child,
.qa ul li table th:last-child{
	border-right:solid 1px #333;
}

.qa ul li table th.ttle{
	background:#fbd44a;
	font-size:140%;
	font-weight:bold;
	border-right:solid 1px #333;
	width:100%;
}

.qa ul li table tr:last-child td{
	border-bottom:solid 1px #333;
}

.qa ul li table tr:first-child th.ttle{
	border-radius:10px 10px 0 0;
}

.qa ul li table tr:last-child td:first-child{
	border-radius:0 0 0 10px;
}

.qa ul li table tr:last-child td:last-child{
	border-radius:0 0 10px 0;
}

.attention{
	width:90%;
	margin:20px auto;
}

.attention h3{
	font-weight:bold;
	font-size:120%;
	margin-top:30px;
}

.attention h3::before{
	content:"●";
	color:#298D3A;
	margin-right:5px;
}

.attention ul,
.attention p{
	margin:10px auto;
	font-size:90%;
}

.attention p strong{
	color:#ff6d61;
}

.attention li{
	margin-bottom:7px;
	font-size:90%;
}

footer{
	border-top:solid 1px #aaa;
}

footer address{
	text-align:center;
	font-size:90%
}


form{
	border-bottom:dotted 3px #333;
	position:relative;
	z-index:+2;
}

form h2{
	text-align:center;
	color:#ff6d61;
	font-size:150%;
	font-weight:bold;
}

form dl{
	width:95%;
	margin:20px auto;
}

form dl dt{
	font-size:110%;
	clear:both;
	color:#00704a;
}

form dl dt::before{
	content:"■";
	color:#00704a;
}

form dl dd{
	margin-bottom:15px;
}

form textarea,
form select,
form input[type="text"],
form input[type="email"],
form input[type="tel"],
form input[type="data"]{
	border:solid 1px #9BB828;
	padding:10px;
	width:100%;
	display:inline;
	box-sizing:border-box;
	border-radius:5px;
	background:#fff;
}

form input[type="text"].half{
	width:49%;
}

form input[type="text"].half:first-child{
	margin-right:2%;
}

form .checkbox label{
	display:block;
	width:50%;
	float:left;
	margin-bottom:10px;
}

form .checkbox{
	background:#fff;
	border-radius:5px;
	padding:20px 5px;
	overflow:hidden;
}

form .checkbox.radio{
	background:none;
	padding:0 0;
}

form .checkbox.radio label{
	display:block;
	width:48%;
	float:left;
	position:relative;
	padding-top:10px;
	margin-bottom:10px;
	margin-left:1%;
	margin-right:1%;
	text-align:center;
	font-size:70%;
	border:solid 1px #ccc;
	border-radius:3px;
}

form .checkbox.radio label .checkbox-parts{
	display:block;
	width:100%;
	padding-left: 0;
	padding-top: 25px;
	margin-right: 0;
	font-size:90%;
	text-align:center;
}

form .checkbox.radio label .checkbox-parts::before{
	content: "";
	position: absolute;
	top: 0;
	left: calc(50% - 10px);
	width: 20px;
	height: 20px;
	border: 1px solid #9BB828;
	border-radius: 4px;
}

form .checkbox.radio label .checkbox-input:checked + .checkbox-parts::after{
	content: "";
	display: block;
	position: absolute;
	top: -10px;
	left: 50%;
	width: 10px;
	height: 22px;
	transform: rotate(40deg);
	border-bottom: 3px solid #d01137;
	border-right: 3px solid #d01137;
}

form .checkbox.radio label:nth-child(2n+1){
	clear:both;
}

form .checkbox.radio img{
	display:block;
	width:90%;
	margin:5px auto;
}



.checkbox-input{
	display: none;
}
.checkbox-parts{
	padding-left: 30px;
	position:relative;
	margin-right: 20px;
	font-size:100%;
}
.checkbox-parts::before{
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 20px;
	height: 20px;
	border: 1px solid #9BB828;
	border-radius: 4px;
}
.checkbox-input:checked + .checkbox-parts{
	color: #d01137;
}
.checkbox-input:checked + .checkbox-parts::after{
	content: "";
	display: block;
	position: absolute;
	top: -10px;
	left: 10px;
	width: 10px;
	height: 22px;
	transform: rotate(40deg);
	border-bottom: 3px solid #d01137;
	border-right: 3px solid #d01137;
}

.btn_area{
	margin:10px auto 50px;
}

form .btn_area input[type="submit"]{
	display:block;
	text-align:center;
	background:#f18331;
	border:solid 3px #f6b17d;
	width:60%;
	margin:auto;
	font-size:200%;
	color:#fff;
	border-radius:10px;
	padding:10px;
	position:relative;
	letter-spacing:9px;
	font-weight:bold;
}

.btn_area p{
	text-align:center;
	font-size:80%;
}

.err_mes{
	width:90%;
	margin:10px auto;
}

.err_mes li{
	color:#f77;
	margin-bottom:5px;
	border-bottom:solid 1px #faa;
}

.enfFm h3{
	text-align:center;
	font-weight:bold;
	font-size:160%;
}

.enfFm p{
	width:90%;
	font-size:100%;
	margin:40px auto;
}

.company img{
	width:20%;
	margin:0;
	display:inline-block;
}

.company table{
	margin:10px auto;
}

.company table th,
.company table td{
	display:block;
	width:100%;
	padding:10px;
}

.company table th{
	font-size:120%;
	font-weight:bold;
	color:#298D3A;
	border-bottom:dotted 2px #298D3A;
}

.company table td{
	margin-bottom:25px;
	font-size:90%;
}

.company table td li{
	display:inline-block;
	margin-right:10px;
}

.present_list{
	margin:20px auto 10px;
}

.present_list_fm{
	width:100%;
	margin:20px auto 10px;
}

.present_campaign h3{
	text-align:center;
	font-size:120%;
	font-weight:bold;
	margin-top:20px;
	color:#00704a;
}

.present_campaign p{
	text-align:center;
}

