@charset "utf-8";
/* CSS Document */

* {margin:0; padding:0; line-height:1.5em; font-family:"メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "MS PGothic", sans-serif;}
*, *:before, *:after {box-sizing: border-box;}

html {font-size: 62.5%;}
body {

    -webkit-text-size-adjust: 100%;
    min-width: 960px;
    min-width: 1000px;
    max-width: 2000px;
	width: 100%;
    margin: 0 auto;
    animation: fadeBlockUp 1s both;
        z-index: -2;

    /* 文字詰め */
    -moz-font-feature-settings: "palt";
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";

    /* リガチャ解除 */
    font-variant-ligatures: no-common-ligatures;
}
@keyframes fadeBlockUp {
  0% {opacity: 0;}
  100% {opacity: 1;}
}



/*ホバー*/

.backpc {
 position: fixed;
 bottom: 190px;
 right: 00px;
z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
     

}



/*ホバー*/





.toppc {
 position: fixed;
 bottom: 5%;
 top: 10px;

z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;

}




.footlsp {
 position: fixed;
 bottom: 0px;
  left:0px;

z-index: 50;
    background: #00167e;
      box-sizing: border-box;
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
width:500px;
height:140px;
}

.footrsp {
 position: fixed;
 bottom: 0px;
background: #af0308;
z-index: 50;
left:500px;
 padding:2pt;
    box-sizing: border-box;
 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
width:500px;
height:140px;
}






.backpc {
 position: fixed;
 bottom: 5%;
 bottom: 190px;

 right: 00px;
z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;

}



.backpc1 {
 position: fixed;
 bottom: 120px;
 right: 00px;
z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
     

}

.backpc2 {
 position: fixed;
 bottom: 50px;
 right: 00px;
z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
     

}



.backsp {
 position: fixed;
 bottom: 0px;
 right: 00px;
 width: 0px;
z-index: 50;
  
 border:0px solid #888888;
 padding:0pt;
 background-color: #ffffff;
 filter:alpha(opacity=85);
 -moz-opacity:0.85;
 -khtml-opacity: 0.85;
 opacity:0.85;

}




/*************ホバーおわり*/
/*************ホバーおわり*/



/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
/*
.mid { display: none !important; }
*/
.sp { display: none !important; }

/* 1240-1040px で文字の一部がかけるので、暫定対応 */
/*　* /
@media only screen and (max-width: 1240px) {
    .pc { display: none !important; }
    .mid { display: block !important; }
    .sp { display: none !important; }
}
/**　PC/SP ここまで　*/

/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
/*　*/
@media only screen and (max-width: 1000px) {
    .pc { display: none !important; }
/*
    .mid { display: none !important; }
*/
    .sp { display: block !important; }
}
/**　PC/SP ここまで　*/


br {line-height:0;}

img {
    border:none;
    line-height:0;
    vertical-align:middle;
    max-width:100%;
    height:auto;
}
a {cursor: pointer;}
a:hover{text-decoration:none;}

p, div, li, th, td {font-size:1.6rem;}
ul,li{list-style: none;}

.dblock, .sp_none {display:block;}
.dnone, .pc_none {display:none;}
.tac {text-align:center;}
.tal {text-align:left;}
.tar {text-align:right;}
iframe{border:0;}

.cf:after, .wrap:after, .box:after, .s_box:after, ul:after, dl:after {height:0;visibility:hidden;content:" ";display:block;clear:both;}


/*---------- upper -----------*/

.wrap{padding:60px 0; position: relative;}
.wrap0{padding:0 0; position: relative;}
.box{width:100%; max-width:1000px; margin-right:auto; margin-left:auto; position:relative;}
.s_box{width:100%; max-width:880px; margin-right:auto; margin-left:auto; position:relative;}

#sub {background: #FFF;}
#sub::before {display: none;}
#sub p {margin-bottom: 30px;}
/*---------- margin,padding -----------*/

.mtm5{margin-top: -5px;}
.mtm110{margin-top: -110px;}
.mb0{margin-bottom:0;}
.mb15{margin-bottom:15px;}
.mb30{margin-bottom:30px;}
.mb45{margin-bottom:45px;}
.mb60{margin-bottom:60px;}

.pb15{padding-bottom:15px;}
.pb30{padding-bottom:30px;}
.pb45{padding-bottom:45px;}
.pb60{padding-bottom:60px;}

.pt15{padding-top:15px;}
.pt30{padding-top:30px;}
.pt45{padding-top:45px;}
.pt60{padding-top:60px;}
.pt130{padding-top:130px;}
.ptb60{padding:60px 0;}

/*----- text -----*/

.small {font-size:1.2rem;}
.bold {font-weight:bold;}
.strike {text-decoration: line-through;}
.red {color:#F00;}
.underline {text-decoration: underline;}
.line01, .line02 {position:relative;}
.line01::after {
    content:"";
    display:block;
    width:100%;
    height:12px;
    background:#FFFF32;
    position:absolute;
    left:0;
    bottom:5px;
    z-index:-1;
}


/*---------- table -----------*/

table {
    width:100%;
    border:0px solid #DDD;
    text-align:left;
	font-size:14px;
	border-collapse:collapse;
}

th {
    padding:10px;
    vertical-align:top;
    border:0px solid #DDD;
    background-color:#F5F5F5;
    width:30%;
}

td {
    padding:10px;
    border:0px solid #DDD;
	background:#FFF;
    width:70%;
}




/*---------- form -----------* /

input, textarea {
    font-family:inherit;
    font-size:100%;
    -webkit-user-select:auto;
    vertical-align: middle;
}

input[type="submit"] {-webkit-appearance:none;}

input[type="text"], input[type="tel"], input[type="email"], textarea {
    width:100%;
    background:#FFF;
    border:1px solid #DDD;
    border-radius:5px;
    padding:10px;
    font-size:1.6rem;
}

/********************************************/







#form01 h3 {
    font-size:2.4rem;
    text-align: left;
}
dl {
    margin-bottom:40px;
}
dl dt {
    float:left;
    width:310px;
}
dl dt b {
    height: 63px;
    margin-right: 15px;
    display: table-cell;
    width: 295px;
    vertical-align: middle;
    line-height: 1.2em;
    background: url(/web/20190411020500im_/https://theroyal-project.net/img/common/required.jpg) no-repeat right center;
    font-size: 2rem;
}
dl dt b span{
    display: block;
    font-size:1.6rem;
}
dl dd {
    float:left;
    width:510px;
}
/*  20210313
input, textarea {
    font-family:inherit;
    font-size:100%;
    -webkit-user-select:auto;
    vertical-align: middle;
}
input[type="text"], input[type="tel"], input[type="email"], textarea {
    width:100%;
    background:#FFF;
    border:2px solid #ca0000;
    border-radius:10px;
    font-size:2.6rem;
    padding:10px;
}
input[type="text"], input[type="email"], input[type="tel"] {
    margin-bottom:15px;
}
textarea {
    border:2px solid #ca0000;
    height:180px;
    margin-bottom:30px;
}
input[type="image"]{
    border:0;
    cursor:pointer;
}
input[type="text"].tel_input {width:30%;}
input[type="text"].name_input {width:49%;}
input[type="text"].bd_input {width:25%;}

.error_msg{font-weight:bold; color:#C00;}

/* footer */
footer {
    padding: 30px 10px;
    text-align: center;
    background:#222;
}
footer p, footer a {color: #FFF;}




/*--- FUNNEL ---*/

body {
/**/
background: url(../img/haikei1.png) repeat center top fixed;
/**/
}

.flame_wrap {position: relative;z-index: 1;}
.flame_wrap::before {
    content:"";
    display:block;
    position:absolute;
    background:#FFF;
    width:980px;
    width:1000px;
    margin: 0 auto;
    height:100%;
    top:0;
    left: 0;
    right: 0;
/*
    box-shadow:0 0 5px rgba(0,0,0,0.5);
*/
z-index: -1;
}

.flame_wrap {position: relative;}
.flame_wrap_blk::before {
    content:"";
    display:block;
    position:absolute;
    background:#000;
    width:980px;
    width:1000px;
    margin: 0 auto;
    height:100%;
    top:0;
    left: 0;
    right: 0;
/*
    box-shadow:0 0 5px rgba(0,0,0,0.5);
*/
z-index: -1;
}

.flame_wrap {position: relative;}
.flame_wrap_non::before {
    content:"";
    display:block;
    position:absolute;
/*
    background:#000;
*/
    width:980px;
    width:1000px;
    margin: 0 auto;
    height:100%;
    top:0;
    left: 0;
    right: 0;
/*
    box-shadow:0 0 5px rgba(0,0,0,0.5);
*/
z-index: -1;
}




/* img */
.ttl_img {
    display:block;
    margin: 0 auto 30px;
    text-align: center;
}
.ttl_img0 {
    display:block;
    margin-left:auto;
    margin-right:auto;
    text-align: center;
}
.box_img {
    display:block;
    margin-left:auto;
    margin-right:auto;
    text-align: center;
}
.btn_img {
    display:block;
    margin-left:auto;
    margin-right:auto;
    text-align: center;
    transition: 0.5s;
z-index: 0;
}
.btn_img:hover {opacity:0.7;}

/* text */
.box p {
/*
    width: 920px;
/***/
    width: 840px;
    margin:0 auto 45px auto;
    font-size:2.8rem;
    text-align: left;
}
/**** Modern Browsers * /
@font-face {
    font-family: 'ryumin';
    src: url('../fonts/ryumin.woff') format('woff'); 
}


.box p b {
    font-family: 'ryumin';
    font-size:140%;
    font-weight: normal;
    line-height: 1.3em;
    letter-spacing: -1px;
}
.box p b b {
    font-size:100%;
}
.box p strong {
    font-family: 'ryumin';
    font-size:140%;
    font-weight: normal;
    line-height: 1.3em;
    color:#E60000;
    letter-spacing: -1px;
}


/******/
@font-face {
    font-family: 'mplus';
    src: url('../fonts/mplus-1-regular-sub.woff') format('woff'); 
}

.box p b {
    font-family: 'mplus';
/*    font-size:140%; */
/*    font-weight: normal;*/
    font-weight: bold;

    line-height: 1.3em;
    letter-spacing: -1px;
}
.box p b b {
    font-size:100%;
}
.box p strong {
    font-family: 'mplus';
/*    font-size:140%; */
/*    font-weight: normal;*/
    font-weight: bold;
    line-height: 1.3em;
    color:#E60000;
    letter-spacing: -1px;
}
/***************************************/
/* movie */
.caution {
    display: block;
    margin:0 auto 30px;
    animation:blink 0.7s ease-out infinite alternate;
}
/* 点滅 */
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
input[type="image"]{
    border:0;
    cursor:pointer;
}

/* 左右 */
.arw_l {
    position: absolute;
    left: 30px;
    bottom: 10px;
    animation: arw_l 0.7s ease-in infinite alternate;
}
.arw_r {
    position: absolute;
    right: 30px;
    bottom: 10px;
    animation: arw_r 0.7s ease-in infinite alternate;
}
@keyframes arw_l{
    0% {left:30px;}
    100% {left:45px;}
}
@keyframes arw_r{
    0% {right:30px;}
    100% {right:45px;}
}

/* movie */
.movie {
    background: url(../img/movie_bg.png) no-repeat center top;
    padding: 17px 40px;
    width: 1000px;
    margin:0 auto 45px;
    position: relative;
}
.sonor{
    width: 940px;
    height: 528px;
    position: absolute;
    top: 30px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 10;
}
.circle1, .circle2{
    position: absolute;
    top: calc(50% - 37px);
    left: 0;
    right: 0;
    margin: 0 auto;
    box-shadow: 0 0 45px 1px #BDAD00 inset;
    border-radius: 100%;
    width:50px;
    height:50px;
    animation: circle 1.9s ease-out infinite;
}
.circle2{
    animation-delay: .4s;
}
@keyframes circle{
    0% {
        transform: scale(1,1);
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
    80% {
        transform: scale(4.5,4.5);
        opacity: 0;
    }
    100% {
        transform: scale(4.5,4.5);
        opacity: 0;
    }
}
.icon {
    position: absolute;
    top: calc(50% - 42px);
    left: 0;
    right: 0;
    margin: 0 auto;
}


/* LINE登録ボタンのソナー */
.btn_line{
    position: relative;
}
.btn_line a{
    position: relative;
    z-index: 20;
}
.sonor2{
    width: 820px;
    height: 179px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 10;
}
.circle3, .circle4{
    bottom: 0;
    position: absolute;
    top: 50px;
    left: 0;
    right: 0;
    margin: 0 auto;
    box-shadow: 0 0 45px 1px #17b610 inset;
    border-radius: 3px;
    width: 200px;
    height: 60px;
    animation: circle2 1.9s ease-out infinite;
}
.circle4{
    animation-delay: .4s;
}
@keyframes circle2{
    0% {
        transform: scale(1,1);
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
    80% {
        transform: scale(4.5,4.5);
        opacity: 0.2;
    }
    100% {
        transform: scale(4.5,4.5);
        opacity: 0;
    }
}
/* 仮申し込みボタンのソナー */
.btn_apply{
    position: relative;
}
.btn_apply a{
    position: relative;
    z-index: 20;
}
.btn_apply input[type="image"]{
    position: relative;
    z-index: 20;
}
.sonor3{
    width: 820px;
    height: 179px;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 10;
}
.circle5, .circle6{
    bottom: 0;
    position: absolute;
    top: 75px;
    left: 0;
    right: 0;
    margin: 0 auto;
    box-shadow: 0 0 45px 1px #17b610 inset;
    border-radius: 3px;
    width: 210px;
    height: 70px;
    animation: circle3 1.9s ease-out infinite;
}
.circle6{
    animation-delay: .4s;
}
@keyframes circle3{
    0% {
        transform: scale(1,1);
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
    80% {
        transform: scale(4.5,4.5);
        opacity: 0.2;
    }
    100% {
        transform: scale(4.5,4.5);
        opacity: 0;
    }
}
@media screen and (max-width: 1000px) {

/*
.backpc {
 position: fixed;
 bottom: 0px;
 right: 00px;
 width: 00px;


  
 border:0px solid #888888;
 padding:0pt;

 filter:alpha(opacity=85);
 -moz-opacity:0.85;
 -khtml-opacity: 0.85;
 opacity:0.85;
     

}

    html {font-size: 100%;}
.backsp {
 position: fixed;
 bottom: 00px;
 right: 00px;
 width: 100%;
  
 border:0px solid #888888;
 padding:0pt;
 background-color: #ffffff;
 filter:alpha(opacity=85);
 -moz-opacity:0.85;
 -khtml-opacity: 0.85;
 opacity:0.85;


}

/*ホバー*/

.backpc {
 position: fixed;
 bottom: 190px;
 right: 00px;
z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
     

}
.backpc2 {
 position: fixed;
 bottom: 50px;
 right: 00px;
z-index: 50;
  
 padding:2pt;

 filter:alpha(opacity=10);
 -moz-opacity: 1.0;
 -khtml-opacity: 1.0;
 opacity: 1.0;
     

}



.backsp {
 position: fixed;
 bottom: 00px;
 right: 00px;
 width: 100%;
  
 border:0px solid #888888;
 padding:0pt;
 background-color: #ffffff;
 filter:alpha(opacity=85);
 -moz-opacity:0.85;
 -khtml-opacity: 0.85;
 opacity:0.85;


}



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

    html {font-size: 100%;}
    body {background:#FFF url() repeat center top;}
    body::before {
        content:"";
        display:block;
        width:100%;
        height:100%;
        position: fixed;
        z-index: -2;
    }
    img {
        touch-callout:none;
        user-select:none;
        -webkit-touch-callout:none;
        -webkit-user-select:none;
        -moz-touch-callout:none;
        -moz-user-select:none;
    }

    /*---------- common -----------*/

    .pc_none {display:block;}
    .sp_none {display:none;}

    .wrap{padding-left:5%; padding-right:5%;}

    /*---------- table -----------* /

	table {border:none;}

	td {border-top:none;}
	th, td {
		width:100%;
		display:block;
        padding: 30px;
	}
    dl dt, dl dd {
        float: none;
        width: 100%;
    }
    dl dt b span {display: inline;}
    dl dt b {background: url(../img/required.png) no-repeat right center;}
    .box p b, .box p strong {
        font-size:105%;
    }
}
/*************************************/

