html,body {
  width:100%;
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-size:14px;
  line-height:1.6em;
  text-align:center;
  background:#c79f45;
  font-family: 'Avenir','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック',YuGothic,'Yu Gothic','メイリオ', Meiryo,'ＭＳ Ｐゴシック','MS PGothic';

}


div,ul,li,ol,dl,dt,dd,p,a,b,i,input,select,button,textarea,table,tr,td,th,tbody,h1,h2,h3,h4,h5,h6,span,strong,label,img,address,section,article,figure,menu,aside,address {
  padding:0;
  margin:0;
  box-sizing:border-box;
  outline:none;
}

ul,ol,li {list-style:none;}


address {
  text-decoration:none;
  font-style:normal;
}


img {
    vertical-align:bottom;
    max-width: 100%;
}


.indent {text-align:left;text-indent:-9999999px;position:absolute;}

.contentsArea {
    background-color: #ffffff;
}

header {
    display: block;
    margin-bottom: 15px;
    padding: 8px 12px;
    background-color: #d70c19;
    text-align: left;
}

#teaser header {
    padding: 0;
}

#teaser header h1 {
    padding: 8px 12px;
    background-color: rgba(255, 255, 255,0.85);
}

.teaser {
    min-height: 375px;
    background-image: url(../images/teaser/bg_teaser.png), url(../images/bg_main.jpg);
    background-repeat: no-repeat, no-repeat;
    background-color: #d70c19;
}

.teaser section {
    min-height: 100vh;
    padding-top: 14px;
    padding-bottom: 32px;
    background-color: rgba(255, 255, 255,0.85);
}

#teaser .footerArea {
    opacity: 0.6;
}

#fv-area {
  position: relative;
    padding-bottom: 10px;
  background: #f08200 url(../images/bg_main_new.jpg) no-repeat;
}

#fv-area h1 {
    margin-bottom: 20px;
}

#fv-area .band-deadline {
  position: absolute;
  left: 0;
}

#prize {
    margin-bottom: 30px;
}

#step-area h2 {
    margin-bottom: 20px;
}

#step-area ul li:not(:last-child) {
    padding-bottom: 44px;
    margin-bottom: 14px;
    background: url(../images/step_arrow.png) no-repeat bottom;
}

#step-area p {
    padding: 20px;
    font-size: 0.8rem;
}

.text-align-left {
    text-align: left;
}


/* modal */

#contents {
  z-index: 0;
  font-size: 16px;
}
.page-txt {
  margin: 30px 0 0;
  height: 2000px;
}
/* モーダル コンテンツエリア */
#modal-main {
  position:relative;
  display: none;
  width: 600px;
  height: 320px;
  margin: 0;
  padding:20px 30px 0;
  background-color: #ffffff;
  color: #666666;
  position:fixed;
  z-index: 2;
  text-align:left;
  border-radius:20px;
}
/* モーダル 背景エリア */
#modal-bg {
  display:none;
  width:100%;
  height:100%;
  background-color: rgba(0,0,0,0.8);
  position:fixed;
  top:0;
  left:0;
  z-index: 1;
}
#modal-main strong.modalTit {
  display:block;
  font-size:1.4em;
  line-height:1.6em;
  color:#cc0000;
  margin:0 auto 15px;
  padding-bottom:10px;
  border-bottom:solid 3px #c00;
}

#modal-main strong {font-weight:bold;}
#modal-main strong.large {font-size:1.2em;}
#modal-main a img {width:100%;}
#modal-main p {
  width:100%;
  display:block;
  margin:0 auto 40px;
}

#modal-main #closeBTN {
  display:block;
  position:absolute;
  top:-20px;
  right:-20px;
  width:40px;
  height:40px;
  border-radius:20px;
  border:solid 4px #fff;
  background:#777;
  color:#fff;
  font-size:20px;
  font-weight:bold;
  cursor:pointer;
  text-align:center;
  line-height:20px;
  padding:6px;
}

#modal-main .modalBtnArea {
    width:100%;
    text-align:center;
}

#modal-main .modalBtnArea a {
  margin:0 10px;
  padding:20px 20px;
  font-size:1.4em;
  font-weight:bold;
  line-height:1em;
  color:#fff;
  border:solid 3px #fff;
  box-shadow:3px 3px 10px #aaa;
  cursor:pointer;
  border-radius:20px;
  text-decoration:none;
}

#modal-main a.submitBTN {background:#008d43;width:40%;}
#modal-main a#close {background:#aaa;width:20%;}




.footerArea {
  width:100%;
  padding:10px 0 10px;
  margin:0 auto;
  border-top:solid 10px #D70C18;
  background:#fff;
}


.footerArea p {
  padding:0 0 10px;
}

@media screen and (max-width: 375px) {
    #step-area ul li:not(:last-child) {
        padding-bottom: 22px;
        margin-bottom: 6px;
        background-size: 26px;
    }
}


@media screen and (max-width: 749px) {
    .teaser {
        background-size: contain, contain;
    }
    #fv-area {
        background-size: contain;
    }
  #fv-area .band-deadline {
    top: 88vw;
  }
    #step-area {
        padding-right: 20px;
        padding-left: 20px;
    }
    address {
        font-size: 0.86rem;
    }
    /* モーダル コンテンツエリア */
    #modal-main {
        width:80%;
        height:auto;
        margin: 0 auto;
        padding:20px 20px 0;
        border-radius:10px;
        font-size:80%;
    }
    #modal-main strong.modalTit {
        font-size:1.4em;
        line-height:1.6em;
        margin:0 auto 15px;
        padding-bottom:10px;
        border-bottom:solid 3px #c00;
    }

    #modal-main strong.large {font-size:1.2em;}
    #modal-main p {
        margin:0 auto 20px;
    }

    #modal-main #closeBTN {
        display:block;
        position:absolute;
        top:-20px;
        right:-20px;
        width:40px;
        height:40px;
        border-radius:20px;
        border:solid 4px #fff;
        background:#777;
        color:#fff;
        font-size:20px;
        font-weight:bold;
        cursor:pointer;
        text-align:center;
        line-height:20px;
        padding:6px;
    }
    #modal-main .modalBtnArea {
        width:100%;
        text-align:left;
    }
    #modal-main .modalBtnArea a {
        display:block;
        margin:0 auto 20px;
        padding:15px 0px;
        font-size:1.2em;
        font-weight:bold;
        line-height:1em;
        color:#fff;
        border:solid 3px #fff;
        box-shadow:3px 3px 10px #aaa;
        cursor:pointer;
        border-radius:20px;
        text-decoration:none;
        text-align:center;
    }
    #modal-main a.submitBTN {background:#008d43;width:100%;}
    #modal-main a#close {background:#aaa;width:100%;}
}


@media screen and (min-width: 750px) {
  #fv-area .band-deadline {
    top: 660px;
  }
    .contentsArea {
        width:750px;
        margin: auto;
    }
    .teaser section {
        padding-top: 28px;
        padding-bottom: 64px;
    }
    #step-area p {
        padding: 30px 40px;
        font-size: 1.3rem;
    }
    #modal-main .modalBtnArea {
        display: flex;
        justify-content: center;
    }
    #modal-main .modalBtnArea .submitBTN {
        order: 1;
    }
}
