@charset "UTF-8";

/*--------------------------------
reset
--------------------------------*/
html,body,div,p,img,iframe,a,span,blockquote,q,address,cite,
pre,code,em,small,strong,b,i,
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer,time,
h1,h2,h3,h4,h5,h6,
ul,ol,li,dl,dt,dd,
table,tbody,thead,tfoot,th,tr,td,
form,fieldset,legend,label,select,input,textarea,button{
    margin: 0;
    padding: 0;
    border: 0;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    vertical-align: baseline;
}
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer{
    display: block;
}
ul li{
    list-style-type: none;
}
h1,h2,h3,h4,h5,h6{
    font-weight: 500;
}
body{
    line-height: 1;
}
a{
    text-decoration: none;
}
img{
    vertical-align: middle;
}
table{
    border-collapse: collapse;
    border-spacing: 0;
}
select,option,input:not([type=checkbox]):not([type=radio]),textarea,button{
    font: inherit;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
}
blockquote::before,blockquote::after,q::before,q::after{
    content: '';
    content: none;
}
[type=submit],[type=button],[type=reset],[type=file],button{
    cursor: pointer;
}
:focus{
    outline: none;
}

/*--------------------------------
base
--------------------------------*/
body{
    background: #fafaff;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 16px;
    line-height: 1.4;
    color: #525260;
}
h2,h3,h4,h5,h6{
    line-height: 1.3;
}
a{
    color: #29bbff;
}
img{
    max-width: 100%;
    height: auto;
}
.wrap{
    margin: auto;
    min-width: 320px;
    max-width: 750px;
}
.about::before{
    margin: auto;
    content: "";
    position: absolute;
}

/*--------------------------------
contents
--------------------------------*/
.hero img{
    width: 100%;
}
.banner-btn {
    margin: 0 20px 30px;
    display: block;
    border: solid 8px #eb5505;
    border-radius: 8px;
    box-shadow: 0 8px #983500;
    overflow: hidden;
    animation: bannerBtn ease-in-out infinite alternate;
    animation-duration: 1.5s;
}
@keyframes bannerBtn{
    0%,
    100%{
        transform: scale(0.9);
    }
    30%{
        transform: scale(1.0);
    }
    80%{
        transform: scale(1.0);
    }
}
.service .item{
    margin: 10px;
    padding: 10px;
    background: white;
}
.service .item .h2,
.service .item .ul,
.service .item .img-box,
.service .item .text{
    margin-bottom: 10px;
}
.service .item .h2{
    padding: 0 0 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: solid 3px #eb5505;
    font-size: 22px;
}
.service .h2 .rank{
    margin-right: 10px;
    width: 56px;
}
.service .h2 .text{
    margin-bottom: 0;
    flex: 1;
}
.service .item .tag{
    padding: 3px 10px;
    display: inline-block;
    background: #555;
    border-radius: 4px;
    font-size: 10px;
    color: #fff;
}
.service .item .img-box{
    text-align: center;
}
.service .img-box img{
    width: 100%;
}
.service .item .info{
    margin: 0 -3px 10px;
    display: flex;
    justify-content: space-between;
}
.service .item .dl{
    margin: 0 3px;
    width: 100%;
    border: solid 1px #eb5505;
    text-align: center;
    font-size: 12px;
}
.service .item .dt{
    padding: 3px 0;
    background: #eb5505;
    font-weight: bold;
    color: #fff;
}
.service .item .dd{
    padding: 3px 0;
    color: #eb5505;
}
.service .item .btn-box{
    margin: 13px 0 10px;
}
.service .item .btn{
    padding: 15px 0;
    display: block;
    background: #eb5505;
    border-radius: 100px;
    border-bottom: solid 5px #983500;
    animation: dlBtn ease-in-out infinite alternate;
    animation-duration: 1.5s;
    font-weight: bold;
    font-size: 20px;
    text-align: center;
    color: #fff;
}
@keyframes dlBtn{
    0%,
    100%{
        -webkit-transform: scale(0.9);
    }
    30%{
        -webkit-transform: scale(1.0);
    }
    80%{
        -webkit-transform: scale(1.0);
    }
}
.footer{
    padding: 15px;
    background: #333;
}
.footer .text{
    text-align: center;
    color: white;
}
.popup_bg{
display:none;
background:rgba(0,0,0,0.5);
position:fixed;
top:0;
bottom:0;
left:0;
right:0;
z-index:100;
text-align:center;
padding-top:50px;
}
.popup_bg .popup_ad{
position:relative;
display:inline-block;
width:80%;
background:#fff;
margin:0 auto;
border-radius:8px;
border:solid 2px #eb5505;
padding-bottom:10px;
overflow:hidden;
}
.popup_bg .popup_ad p{
margin:5px 0;
}
.popup_bg .popup_ad .popup_ad_title{
font-weight:bold;
margin:10px 0;
}
.popup_bg .popup_ad .popup_ad_banner img {
max-width:100%;
}
.popup_bg .popup_ad .popup_ad_timer{
font-weight:bold;
font-size:14px;
}
.popup_bg .popup_ad .popup_ad_timer span{
font-size:18px;
color:red;
text-aling:center;
}
.popup_bg .popup_ad .popup_ad_timer span div{
display:inline;
}
.popup_bg .popup_ad .popup_ad_btn a{
display:inline-block;
background:#eb5505;
color:#fff;
text-decoration:none;
font-weight:bold;
width:80%;
padding:10px;
border-radius:6px;
border-bottom:solid 3px #983500;
}
.popup_bg .popup_ad .popup_ad_close{
background:#aaa;
color:#fff;
text-decoration:none;
width:70%;
padding:5px 10px;
font-size:14px;
border-radius:6px;
border-bottom:solid 3px #6c6c6c;
margin:0 auto;
}