@charset "utf-8";
* {
  box-sizing: border-box;
}
img {
  max-width: 100%;
  height: auto;
  -ms-interpolation-mode: bicubic;
  vertical-align: bottom;
}
html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}
body {
  line-height: 1.5;
  font-size: 1.2rem;
  color: #333333;
}
body, main, section, h1, h2, h3, p, ul, li, dl, dd, figure {
  margin: 0;
  padding: 0;
}
.headTitleBox {
  margin-bottom: 0;
}
.contentsWrap {
  width: 100%;
}
.oneContents .contentsWrap #main {
  width: 100%;
}
#main {
  padding: 0;
  --c1: #1a1a1a;
  --c2: #cba41d;
}
main h1 .pageTop {
  text-align: center;
  background: #EAC786;
}
/*==========*/
#footerLink {
  margin-top: 0;
}
/*=====main=====*/
.before,
.after {
  display: none;
}
.show-before .before,
.show-after .after {
  display: block;
}
.pcOnly {
  display: none;
}
main .advance {
  text-align: center;
  font-size: 3.0rem;
  font-weight: bold;
  color: #fff;
  background: #e60012;
}
main .period {
  color: #1a1a1a;
  text-align: center;
  font-weight: bold;
  font-size: 1.5rem;
  padding: 2% 0 1%;
  background: linear-gradient(90deg,rgba(135, 92, 67, 1) 0%, rgba(218, 188, 110, 1) 20%, rgba(243, 224, 180, 1) 50%, rgba(218, 188, 110, 1) 80%, rgba(135, 92, 67, 1) 100%);
  font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" ,"HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif,"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", "sans-serif";
}
main .period p:first-child,
.title .broadcast div:first-child {
  margin-bottom: 4%;
  padding-bottom: 4%;
  position: relative;
}
main .period p:first-child::before,
.title .broadcast div:first-child::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  border-bottom: 1px solid var(--c1);
  left: calc(50% - 45%);
  width: 90%;
}
main .period span {
  font-size: 2.2rem;
}
.main-inner {
  font-size: 1.5rem;
  font-family: "游明朝体" , "YuMincho" ,"ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" ,"游明朝" , "Yu Mincho" ,  "HGS明朝E" , "ＭＳ Ｐ明朝" , "MS PMincho" , serif,"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", "sans-serif";
  color: #fff;
}
.main-inner .container {
  padding: 10% 5% 15%;
  background:url("../images/index_bg02.webp") no-repeat bottom / contain, url("../images/index_bg01.webp") top / 100%;
}
.title {
  text-align: center;
}
.title .credits {
  margin-top: 5%;
}
.title .broadcast {
  margin-top: 10%;
  padding: 5% 0;
  border: 2px solid;
  border-image: linear-gradient(to right, #875c43, #dabc6e, #f3e0b4, #dabc6e, #875c43) 1;
  background: var(--c1);
}
.title .broadcast div:first-child::before {
  border-bottom: 1px solid #fff;
}
.title .broadcast div p > span {
  font-size: 1.8rem;
  font-weight: bold;
}
.title .broadcast div p .large {
  font-size: 2.2rem;
}
.contents {
  margin: 24% 0 10%;
  padding: 18% 2% 5%;
  background: url("../images/index_bg03.webp") top / cover;
  text-align: center;
  color: var(--c1);
  position: relative;
}
.contents h2 {
  padding: 0 7%;
  content: "";
  display: block;
  position: absolute;
  top: -3%;
  left: 0;
}
.contents .summary {
  font-size: 1.8rem;
  font-weight: bold;
}
.contents .summary span {
  color: var(--c2);
  font-size: 2.4rem;
}
.contents .summary .number {
  color: var(--c1);
}
.contents .prize {
  margin-top: 8%;
}
.contents .prize h3 {
  color: var(--c2);
  font-weight: bold;
  font-size: 2.4rem;
  position: relative;
}
.contents .prize h3::before,
.contents .prize h3::after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 40%;
  height: 1px;
  background: var(--c2);
}
.contents .prize h3::before {
  left: 0;
}
.contents .prize h3::after {
  right: 0;
}
.contents .prize .itemWrap {
  margin: 5% 0 1%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
.contents .prize .item {
  padding: 4% 2%;
  width: 48%;
  background: rgba(255,255,255,.9);
  display: flex;
  flex-direction: column;
  border: 1px solid var(--c2);
}
.contents .prize .item:nth-child(n+3) {
  margin-top: 3%;
}
.contents .prize .item > p {
  margin-top: auto;
  font-weight: bold;
}
.contents .prize .item:nth-child(2) > p span {
  font-size: 1.2rem;
}
.contents .note {
  text-align: left;
  font-size: 1.2rem;
  color: var(--c1);
}
.appDl {
  text-align: center;
  font-weight: bold;
}
.appDl .btn {
  margin-top: 3%;
  padding: 1%;
  background: var(--c2) url("../images/index_ic01.webp") no-repeat right 4% center / 2%;
  outline: 1px solid var(--c1);
  outline-offset: -2px;
}
.appDl .btn a {
  padding: 5% 0;
  display: block;
  color: var(--c1);
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
}
.detail {
  padding: 10% 5%;
  background: #fff;
  color: #333;
  font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Meiryo", "sans-serif";
  font-size: 1.4rem;
}
.detail section:nth-child(n+2) {
  margin-top: 10%;
}
.detail section {
  text-align: center;
}
.detail section h2 {
  margin-bottom: 3%;
  display: inline-block;
  border-bottom: 2px solid var(--c2);
  font-size: 2.0rem;
  font-weight: bold;
}
.detail section >*:not(h2) {
  text-align: left;
}
.attCol {
  overflow: scroll;
	overflow-x: hidden;
  height: 400px;
  margin: 0 1%;
  padding: 2% 2% 3%;
  border: solid 1px #d7d7d7;
}
/*=====スクロールバー表示させる=====*/
.main-inner .contents04 .attCol::-webkit-scrollbar {
  width: 5px;
}
.main-inner .contents04 .attCol::-webkit-scrollbar-thumb {
  background: #D3D3D3;
  border-radius: 5px;
}
.main-inner .contents04 .attCol::-webkit-scrollbar-track-piece:start {
  background: #EFEFEF;
}
.main-inner .contents04 .attCol::-webkit-scrollbar-track-piece:end {
  background: #EFEFEF;
}
/*-----*/
.attCol dl dt {
  font-weight: bold;
  font-size: 1.5rem;
  margin: 5% 0 1%;
}
.attCol .indent {
  padding-left: 1em;
  text-indent: -1em;
}
/*=====cpArea=====*/
#campaignArea {
  margin: 2% 0;
  padding: 0 3%;
}
#campaignArea .title02 {
  margin-top: 0;
  padding-top: 3%;
}
/*=====mediaQuery=====*/
@media screen and (min-width:751px), print {
  .pcOnly {
    display: inline-block;
  }
  .spOnly {
    display: none;
  }
  
  main {
    background-image: linear-gradient(-45deg, #f0f0f0 25%, #f6f6f6 25%, #f6f6f6 50%, #f0f0f0 50%, #f0f0f0 75%, #f6f6f6 75%, #f6f6f6);
    background-size: 15px 15px;
  }
  main .advance {
    margin: 0 auto;
    width: 1000px;
    font-size: 4.0rem;
  }
  main h1 {
    text-align: center;
  }
  main .period {
    width: 1000px;
    margin: 0 auto;
    padding: 12px 0 10px;
    font-size: 2.4rem;
  }
  main .period span {
    font-size: 3.6rem;
  }
  main .period p:first-child,
  .title .broadcast div:first-child {
    margin-bottom: 10px;
    padding-bottom: 10px;
  }
  main .period p:first-child::before {
    left: calc(50% - 360px);
    width: 720px;
  }
  .main-inner {
    margin: 0 auto;
    width: 1000px;
  }
  .main-inner .container {
    padding: 90px 60px 70px;
    background:url("../images/index_bg02_pc.webp") no-repeat bottom / contain, url("../images/index_bg01.webp") top / 100%;
  }
  .title {
    padding: 0 80px;
  }
  .title .credits {
    margin-top: 30px;
    font-size: 2.0rem;
  }
  .title .broadcast {
    margin: 50px auto 0;
    padding: 20px 0;
    border: 2px solid;
    border-image: linear-gradient(to right, #bbad7c, #f2eec1, #bbad7c) 1;
    width: 620px;
    font-size: 2.0rem;
  }
  .title .broadcast div:first-child::before {
    left: calc(50% - 250px);
    width: 500px;
  }
  .title .broadcast div p > span {
    font-size: 3.0rem;
    font-weight: bold;
  }
  .title .broadcast div p .large {
    font-size: 3.6rem;
  }
  .contents {
    margin: 120px 0 50px;
    padding: 100px 40px 40px;
  }
  .contents h2 {
    padding: 0;
    top: -30px;
    left: calc(50% - 400px);
    width: 800px;
  }
  .contents .summary {
    font-size: 3.0rem;
  }
  .contents .summary span {
    font-size: 4.0rem;
  }
  .contents .prize {
    margin-top: 40px;
  }
  .contents .prize h3 {
    font-size: 3.6rem;
  }
  .contents .prize h3::before,
  .contents .prize h3::after {
    width: 340px;
    height: 2px;
  }
  .contents .prize .itemWrap {
    margin: 30px 0 20px;
    justify-content: space-between;
  }
  .contents .prize .item {
    padding: 20px 0;
    width: 390px;
    border: 2px solid var(--c2);
  }
  .contents .prize .item:nth-child(n+3) {
    margin-top: 20px;
  }
  .contents .prize .item:not(:nth-child(2)) figure {
    margin-bottom: 20px;
    padding: 0;
  }
  .contents .prize .item > p {
    font-size: 2.2rem;
  }
  .contents .prize .item:nth-child(2) > p span {
    font-size: 1.8rem;
  }
  .contents .prize .item:nth-child(2) > p {
    font-size: 2.0rem;
  }
  .contents .note {
    font-size: 1.5rem;
  }
  .appDl {
    font-size: 2.2rem;
  }
  .appDl .qr {
    margin: 15px auto 0;
    padding: 20px 0;
    display: flex;
    justify-content: space-around;
    align-items: center;
    background: var(--c2);
    width: 380px;
    outline: 2px solid var(--c1);
    outline-offset: -4px;
  }
  .appDl .qr p:first-child {
    font-size: 2.4rem;
    color: var(--c1);
  }
  .detail {
    padding: 50px 70px;
    text-align: center;
    background-color: #fff;
    font-size: 1.6rem;
  }
  .detail section h2 {
    margin-bottom:25px;
    font-size: 2.8rem;
  }
  .detail section>*:not(h2){
    text-align: left;
  }
  .detail section + section{
    margin-top: 50px;
  }
  .detail section ul{
    margin-top: 25px;
  }
  .attCol {
    margin: 0;
    padding: 10px 10px 15px;
  }
  .attCol dl dt {
    margin: 30px 0 5px;
    font-size: 1.8rem;
  }
  .attCol dd {
    font-size: 1.6rem;
  }
  .cam-wrap {
    background-color: #FFFFFF;
  }
  /*=====cpArea=====*/
  #campaignArea {
    width: 1000px;
    margin: 0px auto;
    padding: 25px 0 0;
  }
  #campaignArea h2 {
    text-align: left;
  }
}