@charset "utf-8";
html{
	-webkit-text-size-adjust: 100%;
}
body {
	font-family: "Noto Sans JP", sans-serif;
	font-size:30px;
	text-align:center;
	color:#000;
	background-color:#F8F8F8;
	line-height:1.67;
	font-feature-settings: "palt";
}

@media screen and (max-width:800px){
	body {
		font-size:3.8vw;
	}
}

.gothic{
	font-family: "Noto Sans JP", sans-serif;
}

a {
	color:#222;
	transition : opacity 0.4s;
	-webkit-transition : opacity 0.4s;
	opacity:1;
	outline:none;
}
a:hover {
	opacity: 1;
}

img{
	max-width:100%;
	vertical-align:bottom;
}

.only_smart,
.only_smart_i,
.only_smart_f{
	display:none !important;
}

@media screen and (max-width:750px){
	.only_pc{
		display:none !important;
	}

	.only_smart{
		display:block !important;
	}
	.only_smart_i{
		display:inline-block !important;
	}
	.only_smart_f{
		display: -webkit-flex !important;
		display: flex !important;
	}
}

#wrapper{
	max-width:800px;
	margin:auto;
	background-color:#fff;
}


/* 色関係 */
.orange{
	color:#ff8501;
}
.bg_orange{
	color:#fff;
	background-color:#ff8501;
}

.green{
	color:#4ea100;
}
.bg_green{
	color:#fff;
	background-color:#65bb12;
}
.bg_lgreen{
	background-color:#e7f6d8;
}
.red{
	color:#ff0000;
}


/* 書式 */
.left{
	text-align:left;
}
.right{
	text-align:right;
}
.bold{
	font-weight:bold;
}
.black{
	font-weight:900;
}


/* .inner */
.inner{
	max-width:704px;
	width:88%;
	margin:auto;
}



/* header */
header{
	padding-top:15px;
}
header h1{
	margin-top:10px;
}
header .link{
	padding:20px 0;
	background-color:#8ed24c;
}
header .link ul{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
header .link ul li{
	width:30%;
}
header .link a{
	margin-top:20px;
	display:inline-block;
}

@media screen and (max-width:800px){
	header{
		padding-top:3%;
	}
	header h1{
		margin-top:1.5%;
	}
	header .link{
		padding:3% 0;
	}
	header .link a{
		margin-top:5%;
	}
}


/* article */
article{
}
@media screen and (max-width:750px){
}


/* .animation */
.animation {
  visibility: visible !important;
  animation-fill-mode: both !important;
  -webkit-animation-fill-mode: both !important;
  -webkit-animation-iteration-count: infinite !important;
  animation-iteration-count: infinite !important;
  -webkit-animation: bounceBtn 1.8s;
  animation: bounceBtn 1.8s;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
}

@-webkit-keyframes bounceBtn {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  25% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  40% {
    -webkit-transform: scale(0.94);
    transform: scale(0.94);
  }
  50% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  60% {
    -webkit-transform: scale(0.97);
    transform: scale(0.97);
  }
  70% {
    -webkit-transform: scale(1.01);
    transform: scale(1.01);
    opacity: 1;
  }
  80% {
    -webkit-transform: scale(0.98);
    transform: scale(0.98);
  }
  90% {
    -webkit-transform: scale(1.005);
    transform: scale(1.005);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes bounceBtn {
  0% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  25% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  40% {
    -webkit-transform: scale(0.94);
    transform: scale(0.94);
  }
  50% {
    -webkit-transform: scale(1.015);
    transform: scale(1.015);
  }
  60% {
    -webkit-transform: scale(0.97);
    transform: scale(0.97);
  }
  70% {
    -webkit-transform: scale(1.01);
    transform: scale(1.01);
    opacity: 1;
  }
  80% {
    -webkit-transform: scale(0.98);
    transform: scale(0.98);
  }
  90% {
    -webkit-transform: scale(1.005);
    transform: scale(1.005);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}



/* .cont */
.cont{
	padding:70px 0;
}
.cont h2{
	line-height:1.25;
	font-size:60px;
}

@media screen and (max-width:800px){
	.cont{
		padding:9% 0;
	}
	.cont h2{
		font-size:7.5vw;
	}
}


/* .cta */
.cta{
	background-color:#54ad00;
}
.cta h2{
	font-size:38px;
	color:#fff;
}
.cta h2 .large{
	font-size:47px;
}
.cta h2 img{
	margin-top:2%;
}
.cta ul{
	margin-top:-4.5%;
}
.cta ul li{
	background-color:#fff;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	position:relative;
}
.cta ul li:nth-child(n+2){
	margin-top:30px;
}
.cta ul li .point{
	width:2.2em;
	display:block;
	line-height:1;
	font-size:40px;
	font-weight:bold;
	color:#fff;
	position:absolute;
	top:0;
	left:0;
	z-index:2;
	transform:translate(-20%,-40%);
}
.cta ul li .point:before{
	content:'POINT';
	display:block;
	font-size:18px;
}
.cta ul li .point:after{
	content:'';
	display:block;
	width:100%;
	padding-top:100%;
	background-color:#ff8501;
	border-radius:50%;
	position:absolute;
	left:50%;
	top:50%;
	z-index:-1;
	transform:translate(-50%,-50%);
}
.cta ul li img{
	width:20%;
}
.cta ul li section{
	width:80%;
	padding:0 3%;
	color:#000;
	text-align:left;
}
.cta ul li section h3{
	font-size:32px;
}
.cta ul li section p{
	font-size:26px;
}
.cta > a{
	margin-top:30px;
	display:inline-block;
}

@media screen and (max-width:800px){
	.cta h2{
		font-size:4.8vw;
	}
	.cta h2 .large{
		font-size:5.8vw;
	}
	.cta ul li:nth-child(n+2){
		margin-top:5%;
	}
	.cta ul li .point{
		font-size:5vw;
	}
	.cta ul li .point:before{
		font-size:2.2vw;
	}
	.cta ul li section h3{
		font-size:4vw;
	}
	.cta ul li section p{
		font-size:3.2vw;
	}
	.cta > a{
		margin-top:5%;
	}
}


/* #cont1 */
#cont1 {
	padding-top:120px;
	background:#e7f6d8 url(../img/cont1_bg.png)no-repeat center top -1px;
	background-size:100% auto;
}
#cont1 h2 .small{
	display:block;
	font-size:48px;
}
#cont1 h2 + p{
	margin:1em 0;
}
#cont1 h2 + p .orange{
	font-size:36px;
	line-height:1;
}
#cont1 > section{
	margin-top:-22px;
	padding-bottom:5%;
	border:5px solid #65bb12;
	border-top:none;
	background-color:#fff;
	position:relative;
}
#cont1 > section h3{
	font-size:42px;
}
#cont1 > section section{
	padding:3% 5%;
}
#cont1 > section section h4{
	font-size:55px;
}
#cont1 > section section p{
	margin:0.3em 0;
	text-align:left;
}
#cont1 > section > p{
	padding:1em;
	font-size:28px;
	font-weight:bold;
	background-color:#f1f1f1;
	border-radius:100px;
}

@media screen and (max-width:800px){
	#cont1 {
		padding-top:12%;
	}
	#cont1 h2 .small{
		font-size:6vw;
	}
	#cont1 h2 + p .orange{
		font-size:4.5vw;
	}
	#cont1 > section{
		margin-top:-3%;
		border:0.6vw solid #65bb12;
	}
	#cont1 > section h3{
		font-size:5vw;
	}
	#cont1 > section section h4{
		font-size:6.8vw;
	}
	#cont1 > section > p{
		font-size:3.4vw;
	}
}


/* #cont2 */
#cont2{
}
#cont2 h2 .orange{
	display:block;
	font-size:40px;
}
#cont2 h2 .green{
	display:block;
}
#cont2 > .flex{
	margin-top:1em;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
#cont2 > .flex img{
	width:47%;
}
#cont2 > .flex p{
	width:47%;
	text-align:left;
}
#cont2 dl div{
	border:5px solid #65bb12;
	border-top:none;
}
#cont2 dl div:nth-child(n+2){
	margin-top:20px;
}
#cont2 dl div dt{
	padding:2% 0;
	line-height:1.5;
	font-weight:bold;
}
#cont2 dl div dt.tit{
	font-size:41px;
	background:#65bb12 url(../img/cont2_tit.png)no-repeat center center;
}
#cont2 dl div dt .large{
	line-height:1;
	font-size:36px;
}
#cont2 dl div dd{
	padding:5%;
}
#cont2 dl div dd figure figcaption{
	margin-top:2em;
	font-size:18px;
}
#cont2 dl div dd.flex{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}
#cont2 dl div dd.flex img{
	width:25%;
}
#cont2 dl div dd.flex p{
	width:70%;
	font-size:25px;
	font-weight:bold;
	text-align:left;
}
#cont2 dl div dd.flex p .large{
	line-height:1;
	font-size:35px;
}
#cont2 dl div dd.flex p .middle{
	line-height:1;
	font-size:30px;
}
#cont2 .caution{
	margin-top:1.2em;
	font-size:12px;
	color:#666666;
	text-align:left;
}
#cont2 .caution li{
	padding-left:1.8em;
	text-indent:-1.8em;
}

#cont2 #cont2_1{
	margin-top:70px;
	border:5px solid #65bb12;
}
#cont2 #cont2_1 h3{
	display:inline-block;
	padding:0 0.3em;
	font-size:43px;
	background-color:#fff;
	transform:translateY(-60%);
}
#cont2 #cont2_1 h3 .small{
	font-size:34px;
}
#cont2 #cont2_1 > div{
	padding:5%;
}
#cont2 #cont2_1 > div p{
	font-size:28px;
	text-align:left;
}
#cont2 #cont2_1 > div p .orange{
	color:#f36100;
}
#cont2 #cont2_1 > div ul li{
	padding-left:1em;
	text-indent:-1em;
	font-weight:bold;
	text-align:left;
}
#cont2 > figure{
	margin-top:50px;
	position:relative;
}
#cont2 > figure figcaption{
	width:85%;
	padding:3% 10% 3% 6%;
	text-align:left;
	background-color:#fff47e;
	border-radius:1em;
}
#cont2 > figure img{
	position:absolute;
	right:1.5%;
	bottom:0;
}

@media screen and (max-width:800px){
	#cont2 h2 .orange{
		font-size:5vw;
	}
	#cont2 dl div{
		border:0.6vw solid #65bb12;
	}
	#cont2 dl div:nth-child(n+2){
		margin-top:5%;
	}
	#cont2 dl div dt.tit{
		font-size:5.1vw;
		background-size:8em auto;
	}
	#cont2 dl div dt .large{
		font-size:4.5vw;
	}
	#cont2 dl div dd figure figcaption{
		font-size:2.2vw;
		white-space:nowrap;
	}
	#cont2 dl div dd.flex p{
		font-size:3.1vw;
	}
	#cont2 dl div dd.flex p .large{
		font-size:4.3vw;
	}
	#cont2 dl div dd.flex p .middle{
		font-size:3.8vw;
	}
	#cont2 .caution{
		font-size:1.5vw;
	}

	#cont2 #cont2_1{
		margin-top:7%;
		border:0.6vw solid #65bb12;
	}
	#cont2 #cont2_1 h3{
		font-size:5.3vw;
	}
	#cont2 #cont2_1 h3 .small{
		font-size:4.2vw;
	}
	#cont2 #cont2_1 > div p{
		font-size:3.5vw;
	}
	#cont2 > figure{
		margin-top:5%;
	}
	#cont2 > figure img{
		width:20%;
	}
}


/* #cont3 */
#cont3{
}
#cont3 h2 .small{
	display:block;
	font-size:48px;
}
#cont3 h2 + p{
	margin-top:1em;
	text-align:left;
}
#cont3 > section{
	margin-top:5%;
	padding-bottom:5%;
	border:5px solid #65bb12;
	border-top:none;
	background-color:#fff;
	position:relative;
}
#cont3 > section h3{
	font-size:42px;
}
#cont3 > section p{
	padding:3% 5% 0;
	text-align:left;
}
#cont3 > section p span{
	display:block;
	font-size:18px;
}
#cont3 > section figure{
	margin-top:3%;
}

@media screen and (max-width:800px){
	#cont3 h2 .small{
		font-size:6vw;
	}
	#cont3 > section{
		border:0.6vw solid #65bb12;
	}
	#cont3 > section h3{
		font-size:5.2vw;
	}
	#cont3 > section p span{
		font-size:2.2vw;
	}
}


/* #cont4 */
#cont4{
}
#cont4 h2 .small{
	display:block;
	font-size:40px;
}
#cont4 ul {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
#cont4 ul li {
	width:52%;
	height:10.5em;
	padding-bottom:1em;
	font-weight:bold;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}
#cont4 ul li.center_bg {
	width:60%;
	height:10em;
	padding-bottom:0;
	background:url(../img/cont4_center.png)no-repeat center top;
	background-size:100% auto;
}
#cont4 ul li.left_bg {
	margin:-12% -2% -12% 0;
	padding-right:7%;
	background:url(../img/cont4_left.png)no-repeat center top;
	background-size:100% auto;
}
#cont4 ul li.right_bg {
	margin:-12% 0 -12% -2%;
	margin-left:-2%;
	padding-left:7%;
	background:url(../img/cont4_right.png)no-repeat center top;
	background-size:100% auto;
}
#cont4 ul li p {
	line-height:1.3;
}
#cont4 figure {
	margin-top:-10%;
	position:relative;
}
#cont4 figure figcaption {
	margin-top:3%;
	line-height:1.4;
	font-size:52px;
	font-weight:bold;
}
#cont4 > p {
	margin-top:30px;
	padding:4% 25% 4% 5%;
	background-color:#fff47e;
	border-radius:1em;
	text-align:left;
	position:relative;
}
#cont4 > p img {
	position:absolute;
	right:-3%;
	bottom:0;
}

@media screen and (max-width:800px){
	#cont4 h2 .small{
		font-size:5vw;
	}
	#cont4 figure figcaption {
		font-size:6.5vw;
	}
	#cont4 > p {
		margin-top:5%;
	}
	#cont4 > p img {
		width:29%;
	}
}


/* #cont5 */
#cont5{
}
#cont5 h2 .small{
	display:block;
	font-size:48px;
}
#cont5 .inner li{
	margin-top:30px;
	padding:5%;
	border:5px solid #65bb12;
	background-color:#fff;
}
#cont5 .inner li h3{
	margin-top:0.8em;
	line-height:1.4;
	font-size:35px;
	text-align:left;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}
#cont5 .inner li h3 .reason{
	width:2.2em;
	margin-right:0.5em;
	display:block;
	line-height:1;
	font-size:40px;
	font-weight:bold;
	text-align:center;
	color:#fff;
	position:relative;
	z-index:2;
}
#cont5 .inner li h3 .reason:before{
	content:'理由';
	display:block;
	font-size:18px;
}
#cont5 .inner li h3 .reason:after{
	content:'';
	display:block;
	width:100%;
	padding-top:100%;
	background-color:#ff8501;
	border-radius:50%;
	position:absolute;
	left:50%;
	top:50%;
	z-index:-1;
	transform:translate(-50%,-50%);
}
#cont5 .inner li h3 span:last-child{
	flex:1;
}
#cont5 .inner li p{
	margin-top:0.5em;
	text-align:left;
}

@media screen and (max-width:800px){
	#cont5 h2 .small{
		font-size:6vw;
	}
	#cont5 .inner li{
		margin-top:5%;
		border:0.6vw solid #65bb12;
	}
	#cont5 .inner li h3{
		font-size:4.37vw;
	}
	#cont5 .inner li h3 .reason{
		font-size:5vw;
	}
	#cont5 .inner li h3 .reason:before{
		font-size:2.2vw;
	}
}


/* #cont6 */
#cont6{
}
#cont6 h2 .small{
	display:block;
	font-size:48px;
}
#cont6 h2 + p{
	margin-top:1em;
	margin-bottom:1em;
	text-align:left;
}
#cont6 dl{
	border:5px solid #65bb12;
	border-top:none;
	background-color:#fff;
}
#cont6 dl dt{
	font-size:43px;
}
#cont6 dl dd{
	padding:5%;
}
#cont6 dl dd:nth-of-type(n+2){
	border-top:2px solid #65bb12;
}
#cont6 dl dd h3{
	line-height:1.4;
	font-size:55px;
}
#cont6 dl dd h3 .small{
	display:block;
	font-size:30px;
	color:#66ad2a;
}
#cont6 dl dd p{
	margin-top:0.5em;
	text-align:left;
}
#cont6 dl dd p .caution{
	display:block;
	font-size:24px;
}

@media screen and (max-width:800px){
	#cont6 h2 .small{
		font-size:6vw;
	}
	#cont6 dl{
		border:0.6vw solid #65bb12;
	}
	#cont6 dl dt{
		font-size:5.4vw;
	}
	#cont6 dl dd h3{
		font-size:6.8vw;
	}
	#cont6 dl dd h3 .small{
		font-size:3.75vw;
	}
	#cont6 dl dd p .caution{
		font-size:3vw;
	}
}


/* #cont7 */
#cont7{
}
#cont7 h2 .green{
	display:block;
}
#cont7 figure{
	margin-top:5%;
}


/* #cont8 */
#cont8{
}
#cont8 h2 .small{
	display:block;
	font-size:48px;
}
#cont8 h2 + p{
	margin-top:1em;
	text-align:left;
}
#cont8 section{
	margin-top:5%;
	padding:5%;
	border:5px solid #65bb12;
	background-color:#fff;
}
#cont8 section figure figcaption{
	margin-top:0.5em;
}
#cont8 section h3{
	text-align:left;
}
#cont8 section p{
	margin-top:0.5em;
	text-align:left;
}

@media screen and (max-width:800px){
	#cont8 h2 .small{
		font-size:6vw;
	}
	#cont8 section{
		border:0.6vw solid #65bb12;
	}
}


/* #cont9 */
#cont9{
}
#cont9 .inner div{
	margin-top:50px;
	text-align:left;
	border:5px solid #65bb12;
	position:relative;
}
#cont9 .inner div:after{
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width: 1.5em 1.3em 0 1.3em;
	border-color: #65bb12 transparent transparent transparent;
	position:absolute;
	top:100%;
	left:50%;
	transform:translateX(-50%);
}
#cont9 .inner div:last-child:after{
	content:none;
}
#cont9 .inner div dt{
	padding:5%;
	font-size:35px;
	font-weight:bold;
	display: -webkit-flex;
	display: flex;
	background-color:#dbedca;
}
#cont9 .inner div dt .num{
	display:block;
	width:1.6em;
	height:1.6em;
	line-height:1.5;
	margin-right:0.8em;
	font-size:40px;
	text-align:center;
}
#cont9 .inner div dd{
	padding:5%;
}

@media screen and (max-width:800px){
	#cont9 .inner div{
		margin-top:6%;
		border:0.6vw solid #65bb12;
	}
	#cont9 .inner div:after{
		border-width: 1.2em 1em 0 1em;
	}
	#cont9 .inner div dt{
		font-size:4.4vw;
	}
	#cont9 .inner div dt .num{
		font-size:5vw;
	}
}


/* #cont10 */
#cont10{
}
#cont10 h2 .small{
	display:block;
	font-size:48px;
}
#cont10 .inner div{
	margin-top:40px;
	text-align:left;
	border:5px solid #65bb12;
	border-top:none;
	background-color:#fff;
}
#cont10 .inner div dt{
	line-height:1.4;
	padding:0.5em 2.8em 0.5em 0.5em;
	font-size:35px;
	font-weight:bold;
	text-align:left;
	display: -webkit-flex;
	display: flex;
	cursor:pointer;
	position:relative;
}
#cont10 .inner div dt:before{
	content:'Q';
	display:block;
	width:1.4em;
	height:1.4em;
	line-height:1.2em;
	margin-right:0.5em;
	font-size:45px;
	text-align:center;
	color:#65bb12;
	background-color:#fff47e;
	border-radius:50%;
	transform:translateY(0.45em);
}
#cont10 .inner div dt:after{
	content:'＋';
	font-size:45px;
	font-weight:normal;
	position:absolute;
	right:0.7em;
	top:0.8em;
}
#cont10 .inner div dt.close:after{
	content:'－';
}
#cont10 .inner div dt p{
	flex:1;
}
#cont10 .inner div dd{
	padding:1em;
	display:none;
}

@media screen and (max-width:800px){
	#cont10 h2 .small{
		font-size:6vw;
	}
	#cont10 .inner div{
		margin-top:4%;
		border:0.6vw solid #65bb12;
	}
	#cont10 .inner div dt{
		font-size:4.3vw;
	}
	#cont10 .inner div dt:before{
		font-size:5.6vw;
	}
	#cont10 .inner div dt:after{
		font-size:5.6vw;
	}
}


/* #cont11 */
#cont11{
}
#cont11 .inner{
	margin-top:5%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}
#cont11 .inner div{
	width:100%;
	padding:1em 0;
	text-align:left;
	border-top:1px solid #dddddd;
	display: -webkit-flex;
	display: flex;
}
#cont11 .inner div dt{
	width:6em;
	padding:0 1em;
	font-weight:900;
}
#cont11 .inner div dd{
	padding:0 0.5em;
	flex:1;
}


/* #contact */
#contact{
	padding-top:90px;
	padding-bottom:90px;
	position:relative;
}
#contact:before{
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width: 2em 3.5em 0 3.5em;
	border-color: #54ad00 transparent transparent transparent;
	position:absolute;
	top:0;
	left:50%;
	transform:translateX(-50%);
}
#contact dl{
	margin-top:9%;
	margin-bottom:9%;
	line-height:1.2;
	font-size:34px;
	text-align:left;
}
#contact dl dt{
	margin:1em 0 0.5em;
	font-weight:bold;
}
#contact dl dt.hissu:after{
	content:'必須';
	display:inline-block;
	line-height:1.67;
	margin-left:1em;
	padding:0 0.5em;
	font-size:24px;
	color:#fff;
	background-color:#f36100;
}
#contact dl dt span{
	font-size:21px;
}

@media screen and (max-width:800px){
	#contact{
		padding-top:12%;
		padding-bottom:12%;
	}
	#contact dl{
		font-size:4.4vw;
	}
	#contact dl dt.hissu:after{
		font-size:3vw;
	}
	#contact dl dt span{
		font-size:3vw;
	}
}


/* テキストボックス */
input[type="text"],
input[type="email"],
input[type="tel"]{
	width:100%;
	height:3.6em;
	padding:0 1em;
	font-size:32px;
	background-color:#fff;
	border:1px solid #000;
	border-radius:0;
	outline:none;
}
@media screen and (max-width:800px){
	input[type="text"],
	input[type="email"],
	input[type="tel"]{
		font-size:4vw;
	}
}
@media screen and (max-width:480px){
	input[type="text"],
	input[type="email"],
	input[type="tel"]{
		font-size:16px;
	}
}


/* テキストエリア */
textarea{
	width:100%;
	min-height: 396px;
	font-size:32px;
	padding:1em;
	background-color:#fff;
	border:1px solid #000;
	border-radius:0px;
	vertical-align:bottom;
}

@media screen and (max-width:800px){
	textarea{
		min-height: 300px;
		font-size:4vw;
	}
}

@media screen and (max-width:480px){
	textarea{
		min-height: 200px;
		font-size:16px;
	}
}



/* チェックボックス */
input[type="checkbox"] {
	position: relative;
	-webkit-appearance: none;
	appearance: none;
	width: 0.9em;
	height: 0.9em;
	background-color: #fff;
	border: 1px solid #000;
	border-radius:0;
	vertical-align: middle;
	cursor: pointer;
}
input[type="checkbox"]:checked:after {
	display: block;
	position: absolute;
	top: -0.1em;
	left: 0.2em;
	content: "";
	width: 0.4em;
	height: 0.7em;
	border-right: 4px solid #f00;
	border-bottom: 4px solid #f00;
	-webkit-transform: rotate(52deg) skew(8deg);
	transform: rotate(52deg) skew(8deg);
	background-color:transparent;
	border-radius:0;
}
input[type="checkbox"] + span {
	display:inline-block;
	vertical-align:middle;
	margin-left:0.5em;
	line-height:1.5;
	font-size:32px;
	font-weight:bold;
}

@media screen and (max-width:800px){
	input[type="checkbox"] + span {
		font-size:4vw;
	}
	input[type="checkbox"]:checked:after {
		border-right: 0.6vw solid #f00;
		border-bottom: 0.6vw solid #f00;
	}
}


/* ラジオボタン */
input[type="radio"] {
	opacity:0;
}
input[type="radio"] + span{
	margin-left:-15px;
	padding-left:30px;
	display:inline-block;
	vertical-align:middle;
	font-size:28px;
	position: relative;
}
input[type="radio"] + span:before{
	content: "";
	display:inline-block;
	width:22px;
	height: 22px;
	margin-right:10px;
	background-color: #FFFFFF;
	border: 1px solid #d2d2d2;
	border-radius:  50%;
	-webkit-box-shadow: inset 3px 3px 8px rgba(0,0,0,0.1);
	box-shadow: inset 3px 3px 8px rgba(0,0,0,0.1);
	cursor: pointer;
	outline : none;
	position:absolute;
	top:50%;
	left:0;
	transform:translateY(-50%);
}
input[type="radio"]:checked + span:after {
	content: "";
	display: block;
	width: 12px;
	height: 12px;
	background: #666;
	position: absolute;
	top: 50%;
	left: 5px;
	transform:translateY(-50%);
	border-radius: 50%;
}
input[type="radio"] + span span{
	font-size:21px;
}

@media screen and (max-width:800px){
	input[type="radio"] + span{
		margin-left:-0.5em;
		padding-left:1.2em;
		font-size:4.2vw;
	}
	input[type="radio"] + span:before{
		content: "";
		width:1em;
		height: 1em;
		margin-right:1em;
	}
	input[type="radio"]:checked + span:after {
		width: 0.6em;
		height: 0.56em;
		top: 50%;
		left: 0.22em;
	}
	input[type="radio"] + span span{
		font-size:3.6vw;
	}
}


/* 送信ボタン */
button[type="submit"] {
	cursor:pointer;
}



/* プレイスホルダー */
input::placeholder,
textarea::placeholder{
	color:#666666;
}
input:-ms-input-placeholder,
textarea::placeholder{
	color:#666666;
}
input::-ms-input-placeholder,
textarea::placeholder{
	color:#666666;
}


/* #thanks */
#thanks{
	min-height:80vh;
	padding-top:90px;
	padding-bottom:90px;
}
#thanks h2 + p{
	margin:9% 0;
}



/* footer */
footer{
	padding-top:7%;
}
footer dl dd{
	margin-top:0.5em;
	font-size:24px;
	font-weight:500;
}
footer dl dd a{
	color:#fff;
}
footer p{
	margin-top:3%;
	line-height:5;
	font-size:20px;
	font-weight:500;
	border-top:1px solid #97cf29;
}

@media screen and (max-width:800px){
	footer dl dd{
		font-size:3vw;
	}
	footer p{
		font-size:2.5vw;
	}
}


/* #bottom_nav */
#bottom_nav{
	max-width:800px;
	position:fixed;
	bottom:-300px;
	z-index:100;
	-webkit-transition: bottom 0.8s;
	transition: bottom 0.8s;
}


/* #topbtn */
#topbtn{
	width:50px;
	line-height:50px;
	font-size:21px;
	font-family: 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
	border-radius:50%;
	color:#fff;
	background-color:#65bb12;
	box-shadow:0 0 3px rgba(0,0,0,0.3);
	position:fixed;
	z-index:102;
	right:20px;
	bottom:-150px;
	-webkit-transition: bottom 0.8s;
	transition: bottom 0.8s;
}
@media screen and (max-width:768px){
	#topbtn{
		width:40px;
		line-height:40px;
		font-size:18px;
		right:15px;
	}
}


/* fadein */
.fadein {
	opacity : 0;
	-webkit-transform : translate(0, 70px);
	transform : translate(0, 70px);
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
}
.fadein_0 {
	opacity : 0;
	-webkit-transform : translate(0, 0);
	transform : translate(0, 0);
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
}

.delay1 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.2s;
	transition-delay : 0.2s;
}
.delay2 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.4s;
	transition-delay : 0.4s;
}
.delay3 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.6s;
	transition-delay : 0.6s;
}
.delay4 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 0.8s;
	transition-delay : 0.8s;
}
.delay5 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 1.0s;
	transition-delay : 1.0s;
}
.delay6 {
	-webkit-transition-property: transform,opacity;
	transition-property : transform,opacity;
	-webkit-transition-duration: 1s;
	transition-duration : 1s;
	-webkit-transition-delay: 1.2s;
	transition-delay : 1.2s;
}

.fadein.scrollin,
.fadein_0.scrollin{
	opacity : 1;
	-webkit-transform : translate(0, 0);
	transform : translate(0, 0);
}