@charset "utf-8";
@import "html5reset-1.6.1.css";
@import url('https://fonts.googleapis.com/css?family=Roboto:700i&display=swap');
body {
	font-family: "Hiragino Kaku Gothic ProN", YuGothic,"Yu Gothic", Meiryo, sans-serif;
	color:#333;
	font-size: 16px;
	height: 100%;
	letter-spacing:0.1em;
	word-wrap: break-word;
	background-color: rgba(250,100,150,0.05);
}
html{
	height: 100%;
}
a{
	color:#333;
}
#wrapper{
	position: relative;
  min-height: 100%;
}
@media (min-width: 1024px) {
a:hover{
	transition: 0.5s;
	-webkit-transition: 0.5s;
	-moz-transition: 0.5s;
	-o-transition: 0.5s;
}
}
@media (min-width: 768px) {
body {
	min-width: 980px;
}
br.sp{
display: none;
}
}
@media (max-width: 767px) {
body {
	font-size: 14px;
}
br.pc{
display: none;
}
}
/*---------------------- Loading ------------------------*/
.loading {
width: 100%;
height: 100%;
background: rgba(255,255,255,1.0);
position: fixed;
top: 0;
left: 0;
z-index: 999999;
}
.loading img.loadingLogo {
position: absolute;
top: 50%;
left: 50%;
margin-top: -90px;
margin-left: -110px;
}
.loading img.loadingIcon {
position: absolute;
top: 50%;
left: 50%;
margin-top: -60px;
margin-left: -60px;
}
/*---------------------- Header ------------------------*/
@media (min-width: 768px) {
#header{
	background-color: #fa6496;
}
#header .inner{
	max-width: 980px;
	margin: 0px auto;
	padding:10px 20px;
	color: #FFFFFF;
}
#header .logo{
	margin:5px 0 0;
	float: right;
}
#header .logo img{
	height:36px;
	width:auto;
}
#header h2{
	float: left;
	line-height: 150%;
}
}
@media (max-width: 767px) {
#header{
	background-color: #fa6496;
}
#header .inner{
	padding:15px 20px;
	color: #FFFFFF;
	text-align: center;
}
#header .logo{
	margin:10px 0 0;
}
#header .logo img{
	width:100%;
}
#header h2{
	line-height: 150%;
}
}
/*---------------------- Contents ------------------------*/
@media (min-width: 768px) {
#contents{
	padding: 0 0 260px;
}
}
@media (max-width: 767px) {
#contents{
	padding: 0 0 200px;
}
}
/*---------------------- sec1 ------------------------*/
#sec1 img{
	max-width:100%;
	display: block;
	margin: auto;
}
#sec1 h2{
	font-size:2em;
	font-weight:700;
	margin:0 0 35px;
}
#sec1 p{
	font-size:1.4em;
	line-height: 160%;
	margin: 0 0 20px;
}
@media (min-width: 768px) {
#sec1{
	background-color: #110420;
}
#sec1 .text{
	background-color: #FFFFFF;
	padding:40px 0 20px;
	text-align: center;
}
}
@media (max-width: 767px) {
#sec1{
	padding:0 0 5px;
	background-color: #FFFFFF;
}
#sec1 h2{
	font-size:1.2em;
	margin:15px;
	text-align: left;
	line-height:150%;
}
#sec1 p{
	font-size:1em;
	margin: 0 15px 10px;
	text-align: left;
}
}
/*---------------------- sec2 ------------------------*/
#sec2{
	margin:auto;
	text-align: center;
	padding:40px 20px 30px;
	border-top:10px solid #fa6496;
}
#sec2 h2{
	margin:0 0 30px;
}
#sec2 img{
	max-width:100%;
	margin:0 0 10px;
}
#sec2 img.img1{
	margin:0;
}
#sec2 .lineBtn{
	margin:10px 0 30px;
}
@media (max-width: 767px) {
#sec2{
	padding:20px 15px 0px;
	border-top:5px solid #fa6496;
}
#sec2 h2{
	margin:0 0 5px;
}
#sec2 h2 img{
	width:80%;
	height:auto;
}
#sec2 .lineBtn{
	margin: 5px 0 20px;
}
#sec2 .lineBtn img{
	height:60px;
	width:auto;
}
}
/*---------------------- sec3 ------------------------*/
#sec3{
	text-align: center;
	padding:0 0 40px;
}
#sec3 h2{
	background-color: #fa6496;
	color:#FFFFFF;
	font-weight:700;
	font-size:2.6em;
	padding:20px 0;
	margin:0 0 25px;
}
#sec3 img{
	max-width: 100%;
}
@media (min-width: 768px) {
#sec3 .illust{
	padding:0 20px;
}
}
@media (max-width: 767px) {
#sec3{
	padding:0 0 15px;
}
#sec3 h2{
	font-size:1.4em;
	padding:10px 0;
	margin:0 0 10px;
}
#sec3 .illust{
	padding:0 15px;
}
}
/*---------------------- sec4 ------------------------*/
#sec4{
	padding:0 0 40px;
}
#sec4 h2{
	background-color: #fa6496;
	color:#FFFFFF;
	font-size:2.6em;
	margin:0 0 40px;
}
#sec4 h2 .inner{
	font-weight:700;
	max-width: 980px;
	margin:auto;
	display: block;
}
@media (min-width: 768px) {
#sec4 h2{
	padding:20px 20px;
}
#sec4 h2 .inner{
	padding-left:320px;
	box-sizing: border-box;
}
#sec4 h2 .small{
	font-size:0.5em;
	margin-left:15px;
}
#sec4 dl{
	max-width: 980px;
	margin:auto;
	text-align: center;
	padding:0 20px;
}
#sec4 dt{
	font-size: 2em;
	font-weight: 700;
	margin:0 0 20px;
	text-align: left;
	margin-left:320px;
}
#sec4 dt .number{
	background-color: #fa6496;
	color:#FFFFFF;
	padding:8px 0;
	border-radius: 50%;
	width:48px;
	display: inline-block;
	text-align: center;
	margin-right:15px;
	font-family: 'Roboto', sans-serif;
	font-weight:700;
	font-style: italic;
	vertical-align: 1px;
}
#sec4 dd{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	text-align: left;
}
#sec4 dd .img{
	width:280px;
	padding-right:40px;
	margin-top:-75px;
}
#sec4 dd .img img{
	width:100%;
}
#sec4 dd .text{
	width:600px;
}
#sec4 dd .text p{
	line-height:180%;
	font-size: 1.1em;
}
#sec4 dd .text p img.lineQRcode{
	float: right;
}
#sec4 dd .text p.lineImg img{
	width:100%;
}
#sec4 dd .text p.lineImg{
	margin-top:15px;
}
#sec4 .flowArrow{
	border-top: 30px solid #ffb400;
  border-right: 30px solid transparent;
  border-left: 30px solid transparent;
	display: inline-block;
	margin:30px 0;
}
}
@media (max-width: 767px) {
#sec4{
	padding:0 0 20px;
}
#sec4 h2{
	font-size:1.4em;
	padding:10px 0;
	margin:0 0 10px;
	text-align: center;
}
#sec4 h2 .small{
	display: block;
	font-size:0.5em;
	margin-top:5px;
}
#sec4 dl{
	padding:0 20px;
	text-align: center;
}
#sec4 dt{
	font-size: 1.2em;
	font-weight: 700;
	margin:0 0 15px;
}
#sec4 dt .number{
	background-color: #fa6496;
	color:#FFFFFF;
	font-size:1.2em;
	padding:5px 0;
	border-radius: 50%;
	width:30px;
	display: inline-block;
	text-align: center;
	margin-right:10px;
	font-family: 'Roboto', sans-serif;
	font-weight:700;
	font-style: italic;
}
#sec4 dd{
	text-align: left;
}
#sec4 dd .img{
	text-align: center;
	margin:0 0 10px;
}
#sec4 dd .img img{
	width:80%;
}
#sec4 dd .text p{
	line-height:180%;
}
#sec4 dd .text p img.lineQRcode{
	display: none;
}
#sec4 dd .text p.lineImg img{
	width:100%;
}
#sec4 dd .text p.lineImg{
	margin-top:15px;
}
#sec4 .flowArrow{
	border-top: 20px solid #ffb400;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
	display: inline-block;
	margin:20px 0 15px;
}
}
/*---------------------- sec5 ------------------------*/
#sec5{
	text-align: center;
	padding:0 0 40px;
}
#sec5 h2{
	background-color: #fa6496;
	color:#FFFFFF;
	font-weight:700;
	font-size:2.6em;
	padding:20px 0;
	margin:0 0 40px;
}
#sec5 p{
	max-width: 980px;
	margin:0 auto 20px;
	line-height: 160%;
	font-size: 1.2em;
	padding:0 20px;
}
#sec5 img{
	max-width: 100%;
}
#sec5 .lineBtn{
	margin:60px 0 30px;
}
@media (max-width: 767px) {
#sec5{
	text-align: center;
	padding:0 0 15px;
}
#sec5 h2{
	font-size:1.4em;
	padding:10px 0;
	margin:0 0 20px;
}
#sec5 p{
	text-align: left;
	margin:0 auto 15px;
	font-size:1em;
}
#sec5 .img{
padding:0 20px;
}
#sec5 .lineBtn{
	margin: 30px 0 15px;
}
#sec5 .lineBtn img{
	height:60px;
	width:auto;
}
}
/*---------------------- contact ------------------------*/
#contact h1{
	color:#fa6496;
	font-weight:700;
	font-size:2.4em;
	margin:40px 0 30px;
	text-align: center;
}
#contact #completion h1{
	margin:100px 0 30px;
}
#contact h2{
	background-color: #fa6496;
	color:#FFFFFF;
	font-weight:700;
	font-size:2.6em;
	padding:20px 0;
	text-align: center;
}
@media (max-width: 767px) {
#contact h1{
	font-size:1.4em;
	margin:20px 0 20px;
}
#contact #completion h1{
	margin:40px 0 20px;
}
#contact h2{
	font-size:1.4em;
	padding:10px 0;
	margin:0;
}
}
/*---------------------- Footer ------------------------*/
#footer{
	background-color: #666666;
	position:absolute;
	bottom:0;
	width:100%;
	box-sizing: border-box;
	text-align: center;
	padding:30px 0;
	color: #FFFFFF;
}
#footer p{
	margin:0 0 15px;
	line-height: 150%;
}
#footer .policy{
	color:#FFFFFF;
	margin:30px 0;
}
#footer a{
	color: #FFFFFF;
}
#footer .copy{
	font-size:0.7em;
	color:#FFFFFF;
	margin:0;
}
@media (max-width: 767px) {
#footer{
	padding:20px 15px;
}
#footer p{
	margin:0 0 10px;
}
#footer .policy{
	color:#FFFFFF;
	margin:20px 0;
}
}
/*---------------------- Clearfix ------------------------*/
.clearfix:after {
 content: ".";
 display: block;
 height: 0;
 clear: both;
 visibility: hidden;
}
.clearfix {
 display: inline-block;
}
* html .clearfix {
 height: 1%;
}
.clearfix {
 display: block;
}