@charset "UTF-8";

html{
    font-size:62.5%; /*10px*/
}
body{
    color: #333;
    font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',Meiryo,メイリオ,sans-serif;
    font-size: 1.5rem;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    line-height: 1.6;
    letter-spacing: 0.05em;
}
img{
    max-width:100%;
    height: auto;
}
.txt_center{
    text-align: center;
}
.title01{
    font-size:3rem;
    margin-bottom:20px;
    color: #fff;
}
.title01_blue{
    font-size:3rem;
    margin-bottom:20px;
    color: #001440;
}
.text_w{
    color:#fff;
}

/*--------------------------
header
--------------------------*/
.header{
    padding: 40px 0 30px;
    background: url(../image/top_bk.jpg) no-repeat center center;
    background-size: cover;
}
.header .inner{
    margin: 0 30px;
}
.inner_cp{
    margin:20px 10px;
}
.app_list{
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    margin:20px 0;
}
.app_item{
    width:122px;
    padding:0 12px;
}
.app_item.android {
    width:140px;
}
.cp_eyecatch{
    width:40%;
    margin: 0 auto;
}

/*--------------------------
main
--------------------------*/
.cp_con{
    padding: 50px 20px;
    background: url(../image/bg.png) no-repeat center center;
    background-size: cover;
}
/*-------------
join　参加方法
-------------*/
.join{
    margin:20px 35px 35px;
}
.join_step{
    margin-bottom:30px;
}
.btn01 a{
    display: block;
    position:relative;
    background-color: #fff;
    border-radius:50px;
    padding:15px 10px;
    font-weight: bold;
    text-decoration: none;
    color:#001440;
    
}
.btn01 a:hover{
    background-color: #3586e5;
    text-decoration: none;
    color: #fff;
}
.icon{
    position:relative;
    top: 3px;
    left: 3px;
    width: 15px;
}
/*-------------
presents 賞品一覧
-------------*/
.presents{
    margin:20px 0 20px;
    padding-top: 20px;
}
/*-------------
fs_illumination FANTASTIC CARNIVAL
-------------*/
.fs_illumination{
    padding:50px 20px;
    background-color: rgba(0,20,64,0.9);
}
.fs_illumination h3{
    font-size:2.3rem;
    margin-bottom:10px;
    color: #fff;
    border-bottom: solid 1px #fff;
}
.fs_illumination p{
    font-size:1.5rem;
    color: #fff;
}
.fs_illumination_text{
    margin-bottom:20px;
}
.btn02 a{
    display: block;
    position:relative;
    background-color: #fff;
    border-radius:50px;
    padding:10px 10px;
    font-weight: bold;
    text-decoration: none;
    color:#001440;
}
.btn02 a:hover{
    background-color: #3586e5;
    text-decoration:none;
    color:#fff;
}
.icon{
    position:relative;
    top: 3px;
    left: 3px;
    width: 15px;
}
/*-------------
about_app まいたまアプリについて
-------------*/
.about_app{
    padding:35px 10px 20px;
    background-color: #fff;
}
/*-------------
join_det　詳しい参加方法
-------------*/
.join_det{
    margin:20px 0 20px;
    padding-top: 30px;
}
.join_det_con {
    margin: 0 20px;
}
.join_det_step{
    margin:20px 0 35px;
}
.join_det_num{
    display: inline;
    background-color: #00a0e9;
    padding:5px 20px;
    color:#fff;
}
.join_det_txt{
    color:#fff;
    margin:10px 0;
}
.join_det_img{
    margin:20px 0 10px;
}
.join_det_st01{
    background-color: #fff;
    margin:20px auto 10px;
    width:254px;
    padding:40px 0;
}
/*-------------
detail　詳細
-------------*/
.detail{
    margin:50px 20px;
}
.detail .title02{
    font-size: 2.3rem;
    font-weight: bold;
    margin-bottom:10px;
    color: #003168;
    border-bottom: solid 3px #003168;
}
.detail_contents{
    margin-bottom: 25px;
}
.detail_list{
    text-align: left;
}
ul.detail_list{
    list-style: disc;
    margin-left: 20px;
}
.detail_list li{
    margin-bottom: 10px;
}
/*-------------
contact　お問い合わせ
-------------*/
.contact{
    margin:20px 20px;
    padding:20px;
    background-color: #eee;
}
.contact h3{
    font-size: 2rem;
    font-weight: bold;
    margin-bottom: 10px;
}

/*--------------------------
footer
--------------------------*/
.footer{
    background-color: #001440;
}
.footer .inner{
    padding:20px 0;
    color:#fff;
}
img.footer_img{
    width:150px;
}
/*------------------------------------------------------
 Tablet ~
------------------------------------------------------*/
@media screen and (min-width:768px) {

/*--------------------------
header
--------------------------*/
    .header{
        padding: 100px 0 100px;
    }
    .inner_cp{
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction:reverse;
        flex-direction:reverse;
        -webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: center;
		align-items: center;
		padding: 0 auto;
    }
    .cp_info{
        padding-right:20px;
        width:60%
    }
    .app_item{
		width: 140px;
	}
	.app_item.android{
		width: 164px;
	}
	
	.cp-eyecatch{
		width: 40%;
		margin: 0;
	}
    .join_det_con{
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction:reverse;
        flex-direction:reverse;
        justify-content:center;
        flex-wrap: wrap;   
    }    
    .join_det_step{
        width:254px;
        padding: 0 20px;
    }
}
 
 
/*------------------------------------------------------
 PC
------------------------------------------------------*/
@media screen and (min-width:920px) {

    .inner_cp{
        padding:0 150px;
    }
    .app_item{
		width: 180px;
	}
	.app_item.android{
		width: 218px;
	}
    .join{
        width:920px;
        margin:0 auto;
    }
    .join_detail{
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction:reverse;
        flex-direction:reverse;
        justify-content:center;
        flex-wrap: wrap;   
    } 
    .join_step {
        width:30%;
        padding:0 10px;
    }
    .btn01 a{
        width:500px;
        margin:0 auto;
    }
    .fs_illumination .inner{
        width: 920px;
        margin:0 auto;
    }
    .fs_illumination_contents{
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction:reverse;
        flex-direction:reverse;
        justify-content:center;
        flex-wrap: wrap;  
        margin:20px auto 10px;
    }
    .fs_img{
        width:450px;
    }
    .fs_txt{
        width:430px;
        padding:0 20px;
        text-align: left;
    }
    .btn02 a{
        width:500px;
        margin:0 auto;
    }
    .about_app{
        width:920px;
        margin: 0 auto;
    }
    .join_det{
        width:920px;
        margin: 0 auto;
    }
    .join_det_step{
        padding: 0 15px;
    }
    .detail{
        width:920px;
        margin: 50px auto;
    }
    .detail .title02{
        text-align: left;
    }
    .detail p{
        text-align: left;
    }
    .contact{
        width:920px;
        margin: 20px auto 50px;
    }
    .footer .app_list{
        margin:0;
    }
    .footer .app_item{
		width: 180px;
	}
	.footer .app_item.android{
		width: 218px;
	}
}