@charset "utf-8";

/*===============================================
●画面の横幅が769px以上
===============================================*/
@media screen and (min-width : 769px ){
#pc------------------------------------------- {
}
#ufo {
	position: fixed;
	top: 10px;
	left: 0px;
	right: 0px;
	z-index: 99;
}
body {
    background-color: #000;
}
h1 {
    background-image: url("../images/m_ttl.png");
    height: 1453px;
    background-repeat: no-repeat;
    background-position: center center;
    text-indent: -9999px;
    margin-top: -100px;
}
#greeting {
    background-image: url("../images/bg01.png");
    height: 1453px;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
}
#greeting h2 {
    position: relative;
    top: -130px;
    margin-bottom: -125px;
}
#sean {
    background-image: url("../images/bg02.png");
    height: 990px;
    background-repeat: no-repeat;
    background-position: center center;
    margin-top: -190px;
}
#sean h2 {
    padding-top: 155px;
    margin-bottom: 5px;
}
#sean dl {
    width: 1180px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
    align-items: center;
    position: relative;
    left: 80px;
}
#sean dl dt {
    width: 216px;
    height: 42px;
    line-height: 42px;
    color: #fff;
    background-color: #FB44BB;
    font-size: 26px;
    font-weight: bold;
    border: 4px solid #000;
    border-radius: 100px;
    margin-right: 10px;
    margin-bottom: 20px;
}
#sean dl dt.even{
    margin-left: 110px;
}
#sean dl dd {
    color: #fff;
    font-size: 19px;
    width: 820px;
    text-align: left;
    line-height: 1.6em;
    margin-bottom: 20px;
}
#sean dl dd.second {
    position: relative;
    top: 15px;
}
#flow {
    background-image: url("../images/bg03.png");
    height: 1777px;
    background-repeat: no-repeat;
    background-position: center center;
    margin-top: -15px;
	padding-top: 20px;
    position: relative;
}
#flow h2 {
    position: relative;
    top: -140px;
    margin-bottom: -140px;
}
#flow .box {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    width: 870px;
    margin-left: auto;
    margin-right: auto;
    position: relative;
    margin-bottom: 30px;
}
#flow .box:nth-of-type(2) {
    margin-bottom: -10px;
}
#flow .box:nth-of-type(3) {
    margin-bottom: 10px;
}
#flow .box:nth-child(odd) {
    flex-direction: row-reverse;
}
#flow .box div {
    position: absolute;
    text-align: left;
}
#flow .box:nth-of-type(1) div {
    right: -10px;
    top: 115px;
}
#flow .box:nth-of-type(1) h3 {
    position: relative;
    left: 10px;
}
#flow .box:nth-of-type(2) div {
    left: 20px;
    top: 120px;
}
#flow .box:nth-of-type(3) div {
    right: -20px;
    top: 150px;
}
#flow .box:nth-of-type(4) div {
    left: 0px;
    top: 160px;
}
#flow .box:nth-of-type(5) div {
    right: 0px;
    top: 130px;
}
#flow .box:nth-of-type(5) h3 {
    position: relative;
    left: 40px;
}
#flow .box div h4 {
    font-size: 24px;
}
#flow .box div p {
    font-size: 19px;
    line-height: 1.5em;
    margin-top: -5px;
    letter-spacing: -0.05em;
}
#flow .box div p span {
    font-size: 18px;
    line-height: 1.5em;
}
#sample {
    background-image: url("../images/bg04.png");
    min-height: 2322px;
    background-position: center center;
    background-repeat: no-repeat;
    margin-top: -150px;
	padding-top: 80px;
}
#sample h2 {
    padding-top: 150px;
}
#no05+h2 {
	padding-top: 60px;
}
#sample h2+p {
    color: #fff;
    margin-top: 5px;
    margin-bottom: 35px;
}
#sample .box {
width: 1024px;
height: 195px;
background-color: #fff;
margin-left: auto;
margin-right: auto;
border-radius: 47px;
text-align: left;
margin-bottom: 30px;
box-shadow: 0px 0px 10px rgba(0,0,0,1),0px 0px 10px rgba(0,0,0,0.5);
}
#sample .box h3 {
    padding-top: 10px;
    padding-left: 40px;
    font-size: 26px;
	position: relative;
}
#sample .box h3 span {
	position: absolute;
	right: 40px;
	top: 15px;
	display: block;
	width: 90px;
    height: 31px;
}
#sample .box h3 span a {
    background-color: #747374;
    display: inline-block;
    color: #fff;
    text-decoration: none;
    width: 90px;
    height: 31px;
    text-align: center;
    line-height: 31px;
    font-size: 25px;
    font-weight: normal;
    margin-left: 20px;
}
#sample .box .flex2 {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    margin-left: 25px;
    margin-right: 25px;
    margin-top: 20px;
}
#sample .box .flex2 button {
    background-image: url("../images/start.png");
    width: 73px;
    height: 72px;
    text-indent: -9999px;
    border: none;
    background-color: #fff;
	background-repeat: no-repeat;
	background-position: left top;
	cursor: pointer;
}
#sample .box .flex2 button.teishi {
    background-image: url("../images/ichijiteisi.png");
}
#sample .box .flex2 div {
    width: 890px;
    position: relative;
    top: -15px;
}
#sample .box+h2 {
    padding-top: 55px;
}
#sample .inner {
    background-color: rgba(220,252,81,1.00);
    width: 960px;
    margin-left: auto;
    margin-right: auto;
    margin-top: -8px;
    padding-bottom: 25px;
    border-bottom-left-radius: 70px;
    border-bottom-right-radius: 70px;
}
#sample .flex {
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	justify-content: center;
}
#sample .flex div {
    width: 33%;
    margin-top: 40px;
}
#sample .flex div figcaption {
    font-size: 15px;
    line-height: 1.5em;
    margin-top: 5px;
}
#sample h3 {
    padding-top: 25px;
}
.remodal {
	width: 1024px!important;
	height: auto;
	background-color: #fff!important;
	margin-left: auto;
    margin-right: auto;
	border-radius: 47px;
	box-shadow: 0px 0px 10px rgba(0,0,0,1),0px 0px 10px rgba(0,0,0,0.5);
	position: relative;
	left: -10px;
	padding: 25px!important;
	text-align: left;
	color: #000!important;
}
.remodal h4 {
	font-size: 28px;
	text-align: left;
	font-weight: 500;
	margin-bottom: 15px;
}
.remodal .flex2 {
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
}
.remodal .flex2 button {
    background-image: url("../images/start.png");
    width: 73px;
    height: 72px;
    text-indent: -9999px;
    border: none;
    background-color: #fff;
	position: relative;
	z-index: 99999;
	margin-right: 10px;
	cursor: pointer;
}
.remodal .flex2 button.teishi {
    background-image: url("../images/ichijiteisi.png");
}
.remodal .flex2 div {
    width: 890px;
	padding: 0px!important;
    position: relative;
    top: -15px;
	z-index: 9;
}
.remodal h4+p {
	font-size: 18px;
	margin-top: -30px;
	margin-bottom: 10px;
	margin-left: 20px;
}
.remodal .flex2+p+p {
	font-size: 20px;
	line-height: 1.8em;
	margin-left: 20px;
}
.remodal .alpha {
	background-color: #EAEAEA!important;
	border-radius: 40px;
	padding: 25px;
	padding-top: 10px;
	margin-top: 50px;
}
.remodal .alpha h5 {
	font-size: 24px;
	text-align: center;
}
.remodal .alpha p {
	font-size: 16px;
	margin-top: 10px;
	line-height: 1.8em;
}
#youtube {
	margin-bottom: 120px;
}
#youtube h5 {
	background-color: #FD46BF;
	margin-top: 80px;
	margin-bottom: 30px;
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	height: 80px;
	line-height: 80px;
	color: #fff;
	font-weight: bold;
	font-size: 30px;
	border: 5px solid #000;
}
#contact {
    margin-top: 100px;
    width: 1024px;
    margin-left: auto;
    margin-right: auto;
}
#contact h3 {
    text-align: left;
    color: #fff;
    font-size: 20px;
    margin-top: 30px;
    margin-bottom: 5px;
}
#contact h3 img {
    position: relative;
    top: 16px;
    margin-right: 2px;
}
#contact th {
    color: #fff;
    text-align: left;
    font-size: 17px;
    padding-left: 20px;
    border-bottom: 1px solid #E3FF3C;
    width: 200px;
    position: relative;
    padding-top: 7px;
    padding-bottom: 7px;
}
#contact th span {
    color: #fff;
    font-size: 15px;
    width: 46px;
    height: 20px;
    line-height: 20px;
    background-color: #FD46BF;
    display: inline-block;
    text-align: center;
    position: absolute;
    top: 15px;
    right: 45px;
}
#contact td {
    color: #fff;
    font-size: 15px;
    font-weight: normal;
    border-bottom: 1px solid #E3FF3C;
    text-align: left;
    padding-top: 7px;
    padding-bottom: 7px;
}
#contact tr:last-child th,
#contact tr:last-child td
{
    border-bottom: none;
}
#contact td input[type="text"] {
    width: 800px;
    height: 33px;
    padding-left: 5px;
    background-color: #EDEDED;
    font-size: 17px;
    font-weight: normal;
}
#contact td.company input[type="text"] {
    width: 420px;
}
#contact td.name input[type="text"] {
    width: 200px;
}
#contact td.yubin input[type="text"] {
    width: 120px;
}
#contact td ul {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
}
#contact td ul li {
    width: 33%;
    line-height: 2.5em;
}
#contact td ul li input {
    width: 25px;
    height: 25px;
    position: relative;
    top: 7px;
}
#contact td textarea {
    width: 800px;
    height: 150px;
}
#contact table+p input {
    background-image: url("../images/submit.png");
    width: 1024px;
    height: 65px;
    background-position: center center;
    background-repeat: no-repeat;
    text-indent: -9999px;
    background-color: #FD46BF;
    border-radius: 33px;
    cursor: pointer;
}
#contact table+p input:hover {
    filter: brightness(1.1);
}
footer {
    background-image: url("../images/footer.png");
    width: 1371px;
    height: 387px;
    margin-left: auto;
    margin-right: auto;
    background-position: center center;
    background-repeat: no-repeat;
    margin-top: 20px;
    position: relative;
}
footer p.btn {
    width: 288px;
    height: 35px;
    position: absolute;
    right: 345px;
    bottom: 95px;
}
footer p.btn a {
    font-size: 18px;
    color: #fff;
    display: block;
    text-decoration: none;
    background-color: #000;
    border-radius: 100px;
    height: 35px;
    line-height: 35px;
}
footer p.btn a:hover {
    opacity: 0.8;
}
footer .btn+p {
    font-size: 18px;
    color: #fff;
    position: absolute;
    bottom: 20px;
    left: 0px;
    right: 0px;
    font-weight: normal;
}
}



/*===============================================
●画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
	
/*===============================================
●sp-tablet
===============================================*/
#sptablet------------------------------------------- {
}
body {
    background-color: #000;
}
h1 {

}
#greeting {
	background-color: #DEFC51;
	width: 88%;
	margin-left: auto;
    margin-right: auto;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
}
#greeting h2 {
	margin-top: -6vw;
	margin-bottom: 3%;
	width: 112%;
	margin-left: -6%;
}
#greeting h2 img {

}
#greeting figure {
	width: 90%;
	margin-left: auto;
    margin-right: auto;
	position: relative;
	bottom: -5vw;
}
#sean {
	margin-top: 15%;
	background-color: #0078EA;
}
#sean .bg01 {
	position: relative;
	top: -7vw;
}
#sean .bg02 {
	position: relative;
	bottom: -12vw;
}
#sean h2 {
	width: 90%;
	margin-left: auto;
    margin-right: auto;
	margin-bottom: 5%;
}
#sean dl {
	width: 90%;
	margin-left: auto;
    margin-right: auto;
}
#sean dl dt {
    color: #fff;
    background-color: #FB44BB;
    font-size: 5vw;
    font-weight: bold;
    border: 3px solid #000;
    border-radius: 100px;
    margin-bottom: 3%;
	padding-top: 1%;
	padding-bottom: 1%;
}
#sean dl dt.even{

}
#sean dl dd {
    color: #fff;
    text-align: left;
    line-height: 1.6em;
    margin-bottom: 5%;
}
#sean dl dd.second {
    position: relative;
    top: 15px;
}
#sean+figure {
	margin-top: -16vw;
}
#flow {
	background-color: #DEFC51;
	margin-top: 5%;
	width: 86%;
	margin-left: auto;
    margin-right: auto;
	position: relative;
	padding-bottom: 2%;
	border-bottom-left-radius: 20px;
	border-bottom-right-radius: 20px;
}
#flow h2 {
	top: -8vw;
	position: relative;
	width: 116%;
	margin-left: -8%;
}
#flow .box {
    position: relative;
    margin-bottom: 8%;
	text-align: left;
}
#flow .box div h4 {
    font-size: 5vw;
	text-indent: -1em;
	padding-left: 1em;
	width: 84%;
	margin-left: auto;
    margin-right: auto;
	margin-top: 2%;
}
#flow .box div p {
    line-height: 1.5em;
	width: 82%;
	position: relative;
	left: 2%;
	margin-left: auto;
    margin-right: auto;
	margin-top: 2%;
}
#flow .box div p span {
    line-height: 1.5em;
	font-size: 3vw;
}
#sample {
    background-image: url("../images/bg04.png");
    background-position: center center;
	background-size: cover;
    background-repeat: no-repeat;
	padding-top: 5%;
	padding-right: 2%;
	padding-left: 2%;
	position: relative;
	z-index: 0;
}
#sample h2 {
	position: relative;
	z-index: 0;
}
#no05+h2 {
	padding-top: 60px;
}
#sample h2+p {
    color: #fff;
    margin-top: 2%;
    margin-bottom: 5%;
	width: 90%;
	margin-left: auto;
    margin-right: auto;
}
#sample .box {
background-color: #fff;
margin-left: 3%;
margin-right: 3%;
border-radius: 5%;
padding-left: 3%;
padding-right: 1%;
text-align: left;
margin-bottom: 5%;
box-shadow: 0px 0px 10px rgba(0,0,0,1),0px 0px 10px rgba(0,0,0,0.5);
height: 47vw;
}
#sample .box h3 {
    font-size: 5vw;
	text-indent: -1em;
	padding-left: 1em;
	position: relative;
	z-index: 999;
}
#sample .box h3 span a {
    background-color: #747374;
    display: inline-block;
    color: #fff;
    text-decoration: none;
    text-align: center;
    font-weight: normal;
    margin-left: 3%;
	padding-left: 3%;
	padding-right: 3%;
	position: relative;
	top: 1vw;
	padding-left: 1.5em;
}
#sample .box .flex2 {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
	align-content: center;
	position: relative;
    margin-top: 8%;
}
#sample .box .flex2 button {
    background-image: url("../images/start.png");
    width: 11vw;
	height: 11vw;
    text-indent: -9999px;
    border: none;
    background-color: #fff;
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	cursor: pointer;
}
#sample .box .flex2 button.teishi {
    background-image: url("../images/ichijiteisi.png");
}
#sample .box .flex2 div {
	width: 92%;
	margin-right: -6vw;
	margin-top: -6%;
}
#sample .box+h2 {
    padding-top: 55px;
}
#sample #no05+h2 {
	margin-bottom: -5%;
	position: relative;
	margin-top: -10%;
	z-index: 99;
}
#sample .inner {
    background-color: rgba(220,252,81,1.00);
    margin-left: 5%;
    margin-right: 5%;
    padding-bottom: 25px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
}
#sample .flex {
    display: flex;
	display: -webkit-flex; /* Safari */
    display: -ms-flexbox;
	justify-content: space-between;
	-webkit-justify-content: space-between; /* Safari */
    -ms-flex-pack: justify;
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	width: 90%;
	margin-left: auto;
    margin-right: auto;
}
#sample .flex div {
    width: 48%;
    margin-top: 40px;
}
#sample .flex div figcaption {
    line-height: 1.5em;
    margin-top: 5px;
	text-align: left;
}
#sample h3 {
    padding-top: 5%;
	width: 90%;
	margin-left: auto;
    margin-right: auto;
}
.remodal {
	height: auto;
	background-color: #fff!important;
	margin-left: auto;
    margin-right: auto;
	width: 80%!important;
	border-radius: 30px;
	box-shadow: 0px 0px 10px rgba(0,0,0,1),0px 0px 10px rgba(0,0,0,0.5);
	position: relative;
	z-index: 999999!important;
	padding: 3%!important;
	text-align: left;
	color: #000!important;
}
.remodal h4 {
	font-size: 4.5VW;
	text-align: left;
	font-weight: 500;
	margin-bottom: 2%;
}
.remodal .flex2 {
    display: flex;
	display: -webkit-flex; /* Safari */ 　
    display: -ms-flexbox;
    flex-wrap: wrap;
	-webkit-flex-wrap: wrap; /* Safari */
	position: relative;
	padding-right: 5%;
}
.remodal .flex2 button {
    background-image: url("../images/start.png");
    width: 11vw;
	height: 11vw;
    text-indent: -9999px;
    border: none;
    background-color: #fff;
	position: relative;
	z-index: 99999;
	background-size: cover;
	cursor: pointer;
}
.remodal .flex2 button.teishi {
    background-image: url("../images/ichijiteisi.png");
}
.remodal .flex2 div {
	top: -6vw;
	position: absolute;
	width: 90%;
	right: 0px;
	top: -5vw;
}
.remodal h4+p {
	margin-bottom: 10px;
	padding-top: 5%;
}
.remodal .flex2+p+p {
	line-height: 1.4em;
}
.remodal .alpha {
	background-color: #EAEAEA!important;
	border-radius: 40px;
	padding: 20px;
	padding-top: 10px;
	margin-top: 5%;
}
.remodal .alpha h5 {
	font-size: 4.5vw;
	text-align: center;
}
.remodal .alpha p {
	margin-top: 10px;
	line-height: 1.6em;
}
#youtube {
	margin-bottom: 15vw;
}
#youtube iframe {
	width: 90%;
	height: 50vw;
}
#youtube h5 {
	background-color: #FD46BF;
	margin-top: 10vw;
	margin-bottom: 5vw;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	height: 10vw;
	line-height: 10vw;
	color: #fff;
	font-weight: bold;
	font-size: 3.5vw;
	border: 3px solid #000;
}
#contact {
    margin-top: 90px;
    margin-left: 5%;
    margin-right: 5%;
}
#contact h3 {
    text-align: left;
    color: #fff;
    font-size: 4vw;
    margin-top: 5%;
    margin-bottom: 5%;
}
#contact h3 img {
    position: relative;
    top: 1.2vw;
    margin-right: 2px;
}
#contact th {
    color: #fff;
    text-align: left;
	display: block;
	width: 100%;
    position: relative;
    padding-top: 3%;
	padding-bottom: 2%;
}
#contact th span {
    color: #fff;
    font-size: 15px;
    width: 46px;
    height: 20px;
    line-height: 20px;
    background-color: #FD46BF;
    display: inline-block;
    text-align: center;
	margin-left: 5px;
}
#contact td {
    color: #fff;
	width: 100%;
	display: block;
    font-weight: normal;
    border-bottom: 1px solid #E3FF3C;
    text-align: left;
    padding-bottom: 5%;
}
#contact tr:last-child th,
#contact tr:last-child td
{
    border-bottom: none;
}
#contact td input[type="text"] {
    height: 33px;
    padding-left: 5px;
    background-color: #EDEDED;
    font-weight: normal;
	width: 97%;
	padding-left: 3%;
}
#contact td input[type="text"]+input {
	margin-top: 3%;
}
#contact td.company input[type="text"] {

}
#contact td.name input[type="text"] {

}
#contact td.yubin input[type="text"] {

}
#contact td ul {
	margin-bottom: 5%;
}
#contact td ul li {

    line-height: 2.5em;
}
#contact td ul li input {
    width: 25px;
    height: 25px;
    position: relative;
    top: 7px;
}
#contact td textarea {
    height: 40vw;
	width: 97%;
	padding-left: 3%;
}
#contact table+p input {
    background-image: url("../images/submit.png");
    height: 65px;
    background-position: center center;
    background-repeat: no-repeat;
    text-indent: -9999px;
    background-color: #FD46BF;
    border-radius: 33px;
    cursor: pointer;
}
#contact table+p input:hover {
    filter: brightness(1.1);
}
footer {
 background-color: #0078EA;
}
footer figure {
	position: relative;
	top: -7.5vw;
}
footer p.btn {
    height: 35px;
	width: 70%;
	margin-left: auto;
    margin-right: auto;
	margin-top: 5%;
}
footer p.btn a {
    font-size: 4vw;
    color: #fff;
    display: block;
    text-decoration: none;
    background-color: #000;
    border-radius: 100px;
    height: 50px;
    line-height: 50px;
}
footer p.btn a:hover {
    opacity: 0.8;
}
footer .btn+p {
    font-size: 3vw;
	margin-top: 5%;
    color: #fff;
    font-weight: normal;
}
}



/*===============================================
●画面の横幅が400pxまで
===============================================*/
@media screen and (max-width:400px){
/*===============================================
●sp400
===============================================*/
#sp400------------------------------------------- {
}
#sample .box .flex2 div {
	margin-top: -6.5%;
}
}



/*===============================================
●画面の横幅が320pxまで
===============================================*/
@media screen and (max-width:320px){
/*===============================================
●sp320
===============================================*/
#sp320------------------------------------------- {
}
#sample .box .flex2 div {
	margin-top: -8%;
}
}



/*===============================================
●画面の横幅が481pxから768pxまで
===============================================*/
@media screen and (min-width:481px) and (max-width:768px) {
/*===============================================
●tablet
===============================================*/
#tab------------------------------------------- {
}
}