/*================================================
	初期設定
================================================*/
html {
    max-width: 100%;
    margin: 0 auto;
    background: #feffec;
}
/* リセット */
* { 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: #292929;
  background: url(../img/form_all.jpg) repeat-y center;
  background-size: 480px;


}
/* 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: #e81b1b;
}

/* Link Color */

a:link{
color:#3cbbbd;
}

a:visited{
color:#3cbbbd;
}

a:active{
color:#3cbbbd;
}

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

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

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


.main_title {
    position: relative;
}


.main_title .title_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;
}

.keyframe5 {
    left: 0;
    top: 22%;
    width: 7%;
    animation-name: anim_v5;
    animation-duration: 1.0s;
}
.keyframe4{
    right: 11%;
    width: 7%;
    top: 2%;
    animation-name: anim_v4;
    animation-duration: 0.8s;
}

.keyframe2{
    right: 1%;
    width: 11%;
    top: 11%;
    animation-name: anim_v2;
    animation-duration: 1.2s;
}

.keyframe8{
    left: 7px;
    top: 50%;
    width: 7%;
    animation-name: anim_v8;
    animation-duration: 0.7s;
}

.keyframe3{
    right: 2%;
    top: 52%;
    width: 8%;
    animation-name: anim_v3;
    animation-duration: 1.3s;
}

.keyframe6{
    left: 3%;
    bottom: 4%;
    width: 11%;
    animation-name: anim_v6;
    animation-duration: 1.8s;
}

.keyframe1{
    right: 15%;
    bottom: 7%;
    width: 7%;
    animation-name: anim_v1;
    animation-duration: 1.3s;
}

.keyframe7{
    right: 0;
    bottom: 3%;
    width: 11%;
    animation-name: anim_v7;
    animation-duration: 0.6s;
}


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

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

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

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

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

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

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

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

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







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

.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;
    top: 22%;
}

.box2 {
    position: relative;
}


.q_day {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    top: -10%;
    width: 60%;
}
.box2 #prof {
    position: absolute;
    top: 28%;
    left: 0;
    right: 0;
    text-align: center;
    padding: 0;
}

.box2 #prof select {
    background: #feffec;
    border: none;
    font-size: 1.14em;
    padding: 1em;
    margin-right: 5px;
    box-shadow: 0px 4px 5px 0px rgb(26 128 112 / 90%);
    border-radius: 5px;
}
.box2 p.Btn {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
    top: 62%;
}
.box2 p.Btn input{
    display: block;
    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: 30%;
  height: 50px;
  opacity: 0;
  padding-bottom: 40px;
  top: 23%;
  left: 0;
  right: 0;
  margin: 0 auto;
  position: absolute;
}
.kurukuru.is-animated {
  animation: kurukuru 1.4s ease-out;
  opacity: 1;
}
@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;
    top: 56%;
    width: 90%;
}
/*================================================
	フォーム
================================================*/

.form {
 position: relative;
}
.form_title {
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 80%;
    top: 0;
}

#wrap {

}

#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{
  width: 92%;
  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 #000;
  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: 100%;
    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: 40%;
padding: 0 5px;
}


.p_mark #p2{
display: block;

}


p.form_txt2 {
    padding-top: 20px margin:0 auto;
    line-height: 1.4;
    font-size: 10px;
    text-align: center;
}


/*---------------------------------------
     サポートメニュー
---------------------------------------*/
#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;
margin: 0px 5%;
padding:0 15%;
font-size:14px;
font-weight:bold;
color: #f6f4e6;
text-decoration:none;
text-indent:10px;
line-height:44px;
background:-webkit-gradient(linear,left top, left bottom,color-stop(1.00,#af5ad3),color-stop(0.00,#ca7eea));
background:-webkit-linear-gradient(top, #af5ad3 0%, #ca7eea 100%);
background:-moz-linear-gradient(top, #af5ad3 0%, #ca7eea 100%);
background:linear-gradient(top, #af5ad3 0%, #ca7eea 100%);
border-radius:5px;
-webkit-border-radius:5px;
}

#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;

}


/* 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: #292929;
    text-align: center;
}
.foot-box .btn {
    display: block;
    border: 2px solid #292929;
    padding: .88em;
    letter-spacing: 0.1em;
}

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

}
/*---------------------------------------
     other
---------------------------------------*/



.second #write {
    background: url(../img/second_bg.jpg);
    background-repeat: repeat;
    background-size: auto auto;
    background-size: 100%;
    background-repeat: repeat-y;
    padding-bottom: 20%;
    padding: 0 10% 1%;
}
.second #write a:link {
    color:#e396f9;
}

.second a:visited {
    color:#e396f9;
}
.second #write h1{
    margin-top: 0;
    padding-top: 10px;
}

.second #write h2{
    margin-top: 0;
    padding-top: 10px;
}

.second #write .str_color {
    color: #f6f4e6;
}

.second #write p.w_txt {
    margin-top: 0;
    padding-top: 10px;
}

#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;
    color: #af5ad3;
}

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

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

/* profile3 */
#caption {
    background: #af5ad3;
    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;
}

}