/*================================================
  初期設定
================================================*/
html {
    max-width: 100%;
    margin: 0 auto;
    background: #1a0f37;
}
/* リセット */
* { margin:0; padding:0; }
/* clearfix（回り込み解除） */
*:after { display:block; clear:both; }
/* はみ出し対策 */
body {
  width: 480px;
  max-width: 100%;
  margin: 0 auto;
  padding:0;
  font-family:sans-serif;
  -webkit-text-size-adjust: none;
  font-size: 15px;
  color: #ffffff;
  background-size: 480px;
  position: relative;

}
/* HTML5に対応していないOS対策 */
article, aside, figure, footer, header,hgroup, nav, section { display:block; }

/* 画像下の変な余白削除 */
img { vertical-align: top; max-width:100%;
height: auto;}

/* ボタンの形統一 */
input[type="submit"] {
  margin-top:-10px;
  font-size:15px;
  padding:7px;
  text-align:center;
  border:1px solid #AAA;
  -webkit-border-radius:3px;
  -moz-border-radius:3px;
  -o-border-radius:3px;
  -ms-border-radius:3px;
  border-radius:3px;
  background:-webkit-gradient(
    linear,
    0% 100%,
    0% 21%,
    from(#E6E6E6),
    to(#FFF),
    color-stop(.5,#E6E6E6)
  );
  background:-moz-linear-gradient(
    0% 75% 90deg,
    #E6E6E6,
    #FFF,
    #FFF 100%
  );
  box-shadow:0 2px 2px rgba(100, 100, 100, 0.15);
  -moz-box-shadow:0 2px 2px rgba(100, 100, 100, 0.15);
  -webkit-box-shadow:0 2px 2px rgba(100, 100, 100, 0.15);
  text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.9);
}
/* 統一 
form select {
  font-size:16px;
  height:30px;
}*/
input[type="text"] {
  font-size:16px;
  height:30px;
  width:300px;
  margin-bottom:20px;
  ime-mode:active;
}




/*================================================
  基本的なアンカー設定
================================================*/
/* リンク設定 */
.str_color{
color: #ffe850;
}

/* Link Color */

a:link{
color:#fffeb8;
}

a:visited{
color:#fffeb8;
}

a:active{
color:#fffeb8;
}

/* Android Tap Non-Display */
a,input {
-webkit-tap-highlight-color: rgba(219, 93, 74, 0.4);
}

/*---------------------------------------
  メインビジュアル
---------------------------------------*/

.header {
    background: #5f389e;
    text-align: center;
    color: #fff;
    font-size: 11px;
    padding: 8px;
    font-weight: bold;
    letter-spacing: .2em;
}


.main_title {
    position: relative;
}

#slideshow {
    position: relative;

}
#slideshow img {
   position: absolute;
   top: 0;
   left: 0;
   right: 0;
   margin: auto;
   z-index: 8;
   opacity: 0.0; 
}
#slideshow img.active {
  z-index: 10;
  opacity: 1.0;
}
#slideshow img.last-active {
   z-index: 9;
}

.animation{
  animation-timing-function: ease-in-out;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  position: absolute;
}

.keyframe9{
    left: 6%;
    top: 3%;
    width: 9%;
    animation-name: anim_v9;
    animation-duration: 0.9s;
}



@keyframes anim_v9 {
  0% {
    transform: translate(0, 0px);
  }
  100% {
    transform: translate(0, 10px);
  }
}


.question {
    position: absolute;
    z-index: 100;
    width: 30%;
    left: 0;
    right: 0;
    margin: 0 auto;
}


.sec-review {
    color: #fff;
    display: flex;
    flex-direction: column;
    align-items: center;
    background: url(../img/review_bg.jpg) no-repeat;
    background-size: 480px;
}

.review_in {
    width: 92%;
    padding: 1em 0;
    display: flex;
    justify-content: space-between;
}

.review_in p.thum {
    width: 20%;
}
.review_in .cmnt {
    width: 75%;
}

.review_in .cmnt p.deta {
    font-weight: bold;
    color: #fffeb8;
    font-size: 1.05em;
    padding-bottom: 0.88em;
}

.review_in .cmnt p.deta span {
    color: #f2b012;
    padding-left: 1em;
    padding-right: 0.5em;
}
.review_in .cmnt p.txt {
    text-align: justify;
    line-height: 1.6;
}

.sec-review > div + div {
    border-top: 1px solid #ffffff;
}



/*---------------------------------------
  コンテンツ
---------------------------------------*/


.box1 {
    position: relative;
}


.box1_txt1 {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: 12%;
}

.box1_txt2 {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.box2 {
    position: relative;
    padding-top: 68.5%;
}
.box2_text{
    text-align: center;
    font-weight: bold;
    padding-bottom: 5%;
}


.q_day {
    margin: 0 auto;
    width: 60%;
}
.box2 #prof {
    position: absolute;
    top: 48%;
    z-index: 999;
    letter-spacing: 0.1em;
    color: #fff;
}

.box2 #prof select {
    background: #fff;
    border: none;
    font-size: 1.14em;
    padding: 1em;
    margin-right: 5px;
    border-radius: 5px;
}
.box2 p.Btn {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: 81%;
}
.box2 p.Btn input{
    margin: 0 auto;
    width: 80%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}



@keyframes 'pulse2' {
  0%{
        opacity:0.2;
         }
    100%{
        opacity:1;
         }
}
@-webkit-keyframes 'pulse2' {
  0%{
        opacity:0.2;
         }
    100%{
        opacity:1;
         }
}
.flash{
-webkit-animation-name: pulse2;
-webkit-animation-duration: 0.7s;
-webkit-animation-iteration-count:infinite;
-webkit-animation-timing-function:ease-in-out;
-webkit-animation-direction: alternate;
-webkit-animation-delay: 0s;
}
.result {
    position: relative;
}


.kurukuru {
  width: 40%;
  height: 50px;
  opacity: 0;
  padding-bottom: 40px;
  padding-top: 23%;
  left: 0;
  right: 0;
  margin: 0 auto;
  position: absolute;
}
.kurukuru.is-animated {
  animation: kurukuru 1.4s ease-out;
  opacity: 1;
  z-index: 99;
}
@keyframes kurukuru {
  0%{
    transform: rotateY(0) translateY(40px);
    opacity: 0;
  }
  100%{
    transform: rotateY(360deg) translateY(0);
    opacity: 1;
  }
}
 
.result_txt {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    padding-top: 67%;
    z-index: 99;
}
/*================================================
  フォーム
================================================*/

.form {
 position: relative;
 margin-top: 90.5%;
}
.form_title {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 80%;
    top: 4%;
    z-index: 9;
}

#wrap {
    background: url(../img/form_bg.jpg);
    background-size: 100%;
    background-repeat: no-repeat;
}

#next_box {
  background: url(../img/form_bg.jpg);
  background-size: 100%;
  background-repeat: no-repeat;
  position: relative;
}

.next_img{
    text-align: center;
}

.next_img img {
    width: 37%;
    padding-top: 42%;
    padding-bottom: 12.5%;
}


#form {
    width: 100%;
    height: auto;
    margin: 0px;
    background-size: 100% auto;
    -webkit-background-size: 100% auto;
    -moz-background-size: 100% auto;
    -o-background-size: 100% auto;
    -ms-background-size: 100% auto;
    text-align: center;
}

#contents {


}


}
#contents2{

}

#contents2 #prof{
padding: 0 1% 0;
margin: 0 5% 0;
}
#contents table {
    width: 98%;
    text-align: center;
    padding: 0 auto;
    border-collapse: collapse;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

#form td.back_color {
  /* background-color: rgba( 232, 233, 210, 0.1 );
  color: #fcf5c9;*/
}

#contents table td {
    padding-bottom: 10px;
}

#contents table td {
    padding-bottom: 10px;
}

p.Btn input {
    width: 100%;
    display: block;
    position: relative;
}

p.Btn input img {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
}
p.form_txt {
    padding-bottom: 10px;
    line-height: 1.4;
    text-align: left;
    font-size: 11px;
}


.form_txt1 {
display: block;
margin: 5% 0%;
font-size: 15px;
} 

#form_txt3 {
    padding-bottom: 3%;
    margin: 3% auto 0;
    line-height: 1.4;

} 

.p_mark {
    width: 20%;
    display: block;
    background-color: white;
    margin-left: 80%;
}

.form_nav {

    font-size: 11px;
    letter-spacing: 7px;
    color: #a69373;

}

.form_nav .nav_on{
color: #bc564f;
}



#contents table td {
    padding-bottom: 3px;
}

.ui-bar-a {
    padding: 3px 5px;
    font-size: 13px;
    text-align: left;
}

#contents table td {
    font-size: 13px;
}

.w_txt {
    font-size: 11px;
    }

/**/
p.kakunin-txt {
  margin-bottom: 5vw;
}
p.kakunin-txt a{
  font-weight: bold;
  color: #4e68ea;
}
.kakunin_deta {
    border-radius: 10px;
}
.kakunin_deta ul{
  padding: 5%;
  margin: 0 auto;
  text-align: left;
}
.kakunin_deta ul li{
  font-size: 1.16em;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  border-bottom: 1px solid #fff;
  padding-bottom: .3em;
}
.kakunin_deta ul li + li{
  padding-top: .3em;
}
.kakunin_deta ul li p.f-ttl{
  width: 30%;
  font-weight: bold;
}
.kakunin_deta ul li p.f-deta{
  width: 45%;
}
.kakunin_deta ul li > p + p::before{
  content: ":";
  padding-right: 1em;
  font-weight: bold;
}
.send-btn{
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: center;
  margin-top: 5vw;
}
.send-btn input[type="submit"]{
  width: 80%; 
  height: 16vw; 
  background: url("../imgs/btn_send.png") no-repeat bottom/100%;
  border: none;}


.p_mark {
    background-color: white;
    width: 90%;
    margin: 0 auto;
    color: #000;
    text-shadow: none;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
    align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
}


.p_mark p {
  font-size: 13px;
  text-align: left;
  background: #f4f4f4;
  line-height: 1.5em;
  padding: 10px;
}


.p_mark #p1 {
display: block;
width: 70%;
padding: 0 5px;
}


.p_mark #p2{
display: block;

}


.form_txt2 {
    padding: 5% 5% 0;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 5%;
    font-size: 14px;
}

.second_title {
    border-left: 3px solid #fff;
    font-size: 20px;
    font-weight: bold;
    padding-left: 15px;
    margin-bottom: 5%; 
}
/*---------------------------------------
     サポートメニュー
---------------------------------------*/
#support{

}
#support a:link{
    color: #fff!important;

}

#support ul{
 margin:0 auto;
 list-style: none;
}

#support ul li{
}

#support ul li a{
position:relative;
display:block;
height:44px;
padding:0 15%;
font-size:14px;
font-weight:bold;
text-decoration:none;
text-indent:10px;
line-height:44px;
border-radius:5px;
-webkit-border-radius:5px;
background: rgba(61,43,103,0.9);
margin-bottom: 3px;
}

#support ul li a:after{
position: absolute;
    right: 2%;
    top: 25%;
    margin: -5px 0 0 0;
    display: block;
    content: "";
    width: 35px;
    height: 35px;
    background: url(../img/allow.png) no-repeat;
        background-size: auto auto;
    -webkit-background-size: 20px;
    background-size: 35px;

}
#support ul li a:visited {
  color: #fff;
}

/* beginner */
#support ul li.beginner a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/star.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* Agree */
#support ul li.Agree a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/3line.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* payment */
#support ul li.payment a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/yen.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* privacy */
#support ul li.privacy a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/key.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* specific */
#support ul li.specific a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/exc.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* company */
#support ul li.company a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/company.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* drawal */
#support ul li.drawal a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/punish.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* info */
#support ul li.info a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/m.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/* shokai */
#support ul li.shokai a:before{
position:absolute;
left:2%;
top:30%;
margin:-9px 0 0 0;
display:block;
content:"";
width:40px;
height:40px;
background:url(../img/shokai.png) no-repeat;
-webkit-background-size:40px;
background-size:40px;
}

/*---------------------------------------
     tokusyo_payment
---------------------------------------*/

#tokusyo_pay{
padding:0 auto;
}

#tokusyo_pay ul{
width:100%;
text-align:center;
margin:10px auto;
list-style-type:none;
}

#tokusyo_pay ul:after{
display:block;
content:"";
clear:both;
}


#tokusyo_pay ul li{
float:left;
width:25%;
margin:0 0 10px 0;
}

#tokusyo_pay ul li:nth-child(4n){
margin:0 0 10px 0;
}


/*---------------------------------------
     footer
---------------------------------------*/
/*top page footer*/

.footer-area {
    padding: 5vw 2.5vw 5vw;
}

.foot-box {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    -ms-align-items: center;
    align-items: center;
    color: #ffffff;
    text-align: center;
}
.foot-box .btn {
    display: block;
    border: 2px solid #ffffff;
    padding: .88em;
    letter-spacing: 0.1em;
}

.foot-box p.copy {
    font-size: 11px;
    line-height: 1.4;
}
.foot-box a{
    color: #ffffff;
    text-decoration: none;

}

.footer2 {
  position: fixed;
  bottom: 0;
  width: ;
  max-width: 480px;
  width: 100%;
}
/*---------------------------------------
     other
---------------------------------------*/



#prof2 {
  background: rgba(61,43,103,0.9);
  border-radius: 10px;
  padding: 5% ;
}

#write {
    padding: 5% 5% 0;
}

#write h1 {
    font-size: 14px;
    font-weight: bold;
    margin: 0 0 5px 0;
    padding: 0 0 0 2px;
    letter-spacing: 0.1em;
    padding: 10px 0 2px 0;
}

#write p.w_txt{
line-height:1.4;
letter-spacing:0.1em;
font-size: 12px;
line-height: 1.5em;
}

#write h2{
font-size:14px;
font-weight:bold;
letter-spacing:0.1em;
line-height:1.4;
margin:0 0 5px 0;
padding: 10px 0 2px 0;
}

/* profile3 */
#caption {
    background: #382b60;
    color: #fff;
    text-align: center;
    margin: 5px 0;
}


/* page top */
.pagetop{
margin:0 10px 10px 10px;
text-align:right;
}

.pagetop a{
padding:0 0 0 14px;
font-size:12px;
background:url(../index_img/all_arw.png) no-repeat left center;
-webkit-background-size:13px;
background-size:13px;
}

#main{
top:33%;
left:2%;
right:2%;
bottom:0
}

#main table td{
width:50%;
padding:0 5px;
text-align:center;
}

#main table td:first-child{
text-align:right;
}

#main table td:last-child{
text-align:left;
}

#main table td img{
width:100%;
}

#form p.c_center{
padding-bottom:10px;ion:relative;
}

#main table{
position:absolute;
width:96%;
}

/*=================================================
UNDER 320 DEVICE
=================================================*/
@media only screen and (max-width: 320px) {


.tarotSeat {
    top: 1px;
    left: 0%;
    right: 0%;
}

#nav {
    height: auto;
    width: 100%;
    padding: 0;
    margin: 0px;
    bottom: 0;
  position: initial;
}

}