@charset "utf-8";

/*============================
#mainPanelArea
============================*/
#mainPanelArea { padding-top: 90px; overflow: hidden; }
#mainPanelArea .topImage { background: #222; padding: 10px 0; height: 330px; position: relative; }
#mainPanelArea .middleImage { margin-top: -67px; margin-bottom: -36px; position: relative; z-index: 2; text-align: center; }
#mainPanelArea .bottomImage { background: #222; z-index: 1; padding: 10px 0; height: 330px; position: relative; }
#mainPanelArea .panel { width: 1790px; position: absolute; top: 10px; left: 50%; margin-left: -895px; }
#mainPanelArea .panel .swiper-slide { display: inline-block; width: 440px!important; height: 150px; margin-left: 10px; }
#mainPanelArea .panel .swiper-slide:first-child { margin-left: 0; }
#mainPanelArea .panel.slider01 {}
#mainPanelArea .panel.slider02 { top: 170px; }
#mainPanelArea .panel.slider02 .swiper-slide:first-child { width: 215px!important; }
#mainPanelArea .panel.slider02 .swiper-slide:last-child { width: 215px!important; }
#mainPanelArea .panel.slider03 {}
#mainPanelArea .panel.slider03 .swiper-slide:first-child { width: 215px!important; }
#mainPanelArea .panel.slider03 .swiper-slide:last-child { width: 215px!important; }
#mainPanelArea .panel.slider04 { top: 170px; }

/*============================
#aboutArea
============================*/
#aboutArea { padding: 80px 0 0; background: url("../../imageFile/bg_about.png") no-repeat center; background-size: cover; position: relative; }
#aboutArea .bg { display: block; position: absolute; left: 0; top: 0; width: 100%; height: 1300px; background: url("../../imageFile/bg_circle.png") no-repeat center 340px; }
#aboutArea .period {}
#aboutArea .period .limit { text-align: center; }
#aboutArea .period .limit span { display: inline-block; background: #282828; color: #fff; padding: 8px 60px 7px; font-weight: bold; letter-spacing: 0.1em; position: relative; }
#aboutArea .period .limit span::after { content: ""; position: absolute; left: 50%; margin-left: -10px; bottom: -15px; border-top: 20px solid #282828; border-left: 5px solid transparent; border-right: 5px solid transparent; transform: rotate(25deg);  }
#aboutArea .period .date { margin-top: 40px; text-align: center; }
#aboutArea .period .date .number { display: inline-block; padding: 5px 10px; border-top: solid 4px #282828; border-bottom: solid 4px #282828; letter-spacing: 0.2em; }
#aboutArea .period .date .number span { font-size: 3em; }
#aboutArea .period .date .number em { font-size: 1.75em; }
#aboutArea .attention { line-height: 1.5; margin-top: 30px; font-size: 1.375em; text-align: center; font-weight: bold; color: #f00; }
#aboutArea .banner { position: relative; width: 1100px; margin: 45px auto 0; padding: 80px 170px; background-color: #fff; box-shadow: 3px 3px 15px 2px rgba(0, 0, 0, 0.1); border-radius: 20px; } 
#aboutArea .banner:before { content: ''; position: absolute; background-image: url("../../imageFile/frame_top.svg"); background-repeat: no-repeat; background-size: contain; top: 10px; left: 50%; transform: translateX(-50%); width: 1085px; height: 65px; } 
#aboutArea .banner:after { content: ''; position: absolute; background-image: url("../../imageFile/frame_top.svg"); background-repeat: no-repeat; background-size: contain; bottom: 10px; left: 50%; transform: translateX(-50%) rotate(180deg); width: 1085px; height: 65px; } 
#aboutArea .banner .container { position: relative; }
#aboutArea .banner .container:before { content: ''; position: absolute; border-right: 6px solid #e2b84d; height: 100%; width: 6px; top: 50%; transform: translateY(-50%); left: -153px; }
#aboutArea .banner .container:after { content: ''; position: absolute; border-right: 6px solid #e2b84d; height: 100%; width: 6px; top: 50%; transform: translateY(-50%); right: -153px; }
#aboutArea .banner .container .bannerButton { text-align: center; position: relative; transition: 0.8s; }
#aboutArea .banner .container .bannerButton:hover { opacity: 0.7; }
#aboutArea .banner .container .bannerButton:before { content: ''; position: absolute; border-top: 1px solid #fff; opacity: 0.5; top: 4px; left: 50%; transform: translateX(-50%); width: 98%; }
#aboutArea .banner .container .bannerButton:after { content: ''; position: absolute; border-top: 1px solid #fff; opacity: 0.5; bottom: 4px; left: 50%; transform: translateX(-50%); width: 98%; }
#aboutArea .banner .container .bannerButton a { display: block; padding: 30px 260px; border-radius: 10px; color: #fff; letter-spacing: 0.15em; font-size: 1.5em; font-weight: bold; background-image: linear-gradient(90deg, rgba(230, 193, 95, 1), rgba(222, 177, 71, 1) 15%, rgba(219, 172, 64, 1) 50%, rgba(220, 173, 66, 1) 78%, rgba(230, 193, 95, 1)); }
#aboutArea .banner .container .bannerButton a:after { content: ''; width: 15px; height: 15px; border: 0; border-top: solid 3px #fff; border-right: solid 3px #fff; position: absolute; top: 50%; right: 20px; margin-top: -4px; transform: rotate(45deg); }
#aboutArea .data { background: url("../../imageFile/bg_about_cloud.png") no-repeat center 90px; padding: 100px 0; }
#aboutArea .data .title { text-align: center; font-size: 3em; letter-spacing: 0.1em; }
#aboutArea .data .title img { width: 330px; height: auto; }
#aboutArea .data .lead { margin-top: 30px; text-align: center; }
#aboutArea .data .lead img { width: 300px; height: auto; }
#aboutArea .data .catch { margin-top: 60px; text-align: center; font-size: 2.75em; letter-spacing: 0.4em; }
#aboutArea .data .catch em {}
#aboutArea .data .catch em span { opacity: 0; position: relative;
	animation-name: text01-animate; animation-duration: 1s; animation-fill-mode: forwards; }
@keyframes text01-animate {
	0% { opacity: 0; top: 0; }
	100% { opacity: 1; top: -10px; }
}
#aboutArea .data .catch em span:nth-child(1) { animation-delay: 0.50s; color: #ff8e44; }
#aboutArea .data .catch em span:nth-child(2) { animation-delay: 0.56s; color: #ff6a4c; }
#aboutArea .data .catch em span:nth-child(3) { animation-delay: 0.62s; color: #ff6a4c; }
#aboutArea .data .catch em span:nth-child(4) { animation-delay: 0.68s; color: #ff305a; }
#aboutArea .data .catch em span:nth-child(5) { animation-delay: 0.74s; color: #fc1561; }
#aboutArea .data .catch em span:nth-child(6) { animation-delay: 0.86s; color: #dd1265; }
#aboutArea .data .catch em span:nth-child(7) { animation-delay: 0.92s; color: #a91267; }
#aboutArea .data .catch em span:nth-child(8) { animation-delay: 0.98s; color: #721269; }
#aboutArea .data .catch em span:nth-child(9) { animation-delay: 1.04s; color: #35126a; }
#aboutArea .data .copy { margin-top: 50px; font-size: 1.25em; line-height: 2; font-weight: bold; text-align: center; }
#aboutArea .data .copy em { color: #dc0032; }
#aboutArea .data .button { margin-top: 50px; text-align: center; }

/*============================
#featuresArea
============================*/
#featuresArea { padding: 80px 0 120px; }
#featuresArea .content { margin-top: 30px; background: #fff; border-radius: 60px; padding: 60px; }
#featuresArea .content .item {}
#featuresArea .content .item ul { height: 200px; position: relative; }
#featuresArea .content .item ul li { position: absolute; text-align: center; border-radius: 40px; padding: 30px 0; letter-spacing: 0.1em; }
#featuresArea .content .item ul li img { position: absolute; left: -10px; top: -10px; width: 60px; height: auto; }
#featuresArea .content .item ul li:nth-child(1) { width: 290px; background: #d3538e; color: #fff; font-size: 1.5em; line-height: 1.75; font-weight: bold; left: 0; top: 20px; }
#featuresArea .content .item ul li:nth-child(1)::after { content: ""; position: absolute; right: 60px; top: -30px; border-bottom: 33px solid #d3538e; border-right: 0 solid transparent; border-left: 20px solid transparent; }
#featuresArea .content .item ul li:nth-child(2) { width: 330px; background: #f35c67; color: #fff; font-size: 1.875em; padding: 40px 0; line-height: 1.5; font-weight: bold; left: 375px; top: 0; }
#featuresArea .content .item ul li:nth-child(2)::after { content: ""; position: absolute; left: 50%; margin-left: -10px; top: -30px; border-bottom: 33px solid #f35c67; border-left: 10px solid transparent; border-right: 10px solid transparent; }
#featuresArea .content .item ul li:nth-child(3) { width: 290px; background: #e76d52; color: #fff; font-size: 1.5em; line-height: 1.75; font-weight: bold; right: 0; top: 20px; }
#featuresArea .content .item ul li:nth-child(3)::after { content: ""; position: absolute; left: 60px; top: -30px; border-bottom: 33px solid #e76d52; border-left: 0 solid transparent; border-right: 20px solid transparent; }
#featuresArea .content .prize { margin-top: 60px; background: #eee; height: 320px; border-radius: 40px; padding: 60px 20px 60px 620px; position: relative; overflow: hidden; }
#featuresArea .content .prize::after { content: "賞金"; position: absolute; left: -65px; top: -6px; width: 200px; height: 80px; line-height: 92px; text-align: center; background: #df9d00; transform: rotate(-45deg); color: #fff; font-size: 1.5em; font-weight: bold; }
#featuresArea .content .prize .icon { position: absolute; right: 20px; top: 20px; }
#featuresArea .content .prize .icon img { width: 60px; height: auto; }
#featuresArea .content .prize .item img {}
#featuresArea .content .prize .item img.prize01 { position: absolute; left: 80px; top: 40px; }
#featuresArea .content .prize .item img.prize02 { position: absolute; left: 350px; top: 48px; }
#featuresArea .content .prize .copy { margin-top: 50px; font-size: 1.25em; font-weight: bold; line-height: 1.75; }
#featuresArea .content .prize .copy span {}
#featuresArea .link { position: absolute; width: 100%; left: 0; bottom: -200px; }
#featuresArea .link .button { text-align: center;}
#featuresArea .link .button a.md_btn_main { width: 400px; padding: 25px 0 23px; font-size: 1.25em; }
#featuresArea .link .archive { margin-top: 20px; text-align: center; }
#featuresArea .link .archive a {}

/*============================
#bottomContentArea
============================*/
#bottomContentArea { background: #fff; padding: 160px 0 120px; margin-bottom: -120px; }
#bottomContentArea .schedule { float: left; width: 570px; }
#bottomContentArea .schedule .content { margin-top: 30px; background: #f5f5f5; border-radius: 30px; padding: 40px; }
#bottomContentArea .schedule .content ul {}
#bottomContentArea .schedule .content ul li { margin-top: 40px; border-radius: 8px; background: #fff; display: table; width: 100%; overflow: hidden; }
#bottomContentArea .schedule .content ul li:first-child { margin-top: 0; }
#bottomContentArea .schedule .content ul li .date { display: table-cell; width: 200px; padding-left: 10px; padding-top: 4px; position: relative; text-align: center; color: #fff; letter-spacing: 0.1em; vertical-align: middle; }
#bottomContentArea .schedule .content ul li .date span { font-size: 2em; }
#bottomContentArea .schedule .content ul li .date em { font-size: 1.5em; }
#bottomContentArea .schedule .content ul li:nth-child(1) .date { background: #bbb; }
#bottomContentArea .schedule .content ul li:nth-child(1) .date::after { content: ""; position: absolute; right: -29px; top: 0; border-top: 33px solid transparent;
  border-bottom: 33px solid transparent;  border-left: 30px solid #bbb; }
#bottomContentArea .schedule .content ul li:nth-child(2) .date { background: #999; }
#bottomContentArea .schedule .content ul li:nth-child(2) .date::after { content: ""; position: absolute; right: -29px; top: 0; border-top: 33px solid transparent;
  border-bottom: 33px solid transparent;  border-left: 30px solid #999; }
#bottomContentArea .schedule .content ul li:nth-child(3) .date { background: #666; }
#bottomContentArea .schedule .content ul li:nth-child(3) .date::after { content: ""; position: absolute; right: -29px; top: 0; border-top: 33px solid transparent;
  border-bottom: 33px solid transparent;  border-left: 30px solid #666; }
#bottomContentArea .schedule .content ul li:nth-child(4) .date { background: #333; }
#bottomContentArea .schedule .content ul li:nth-child(4) .date::after { content: ""; position: absolute; right: -29px; top: 0; border-top: 33px solid transparent;
  border-bottom: 33px solid transparent;  border-left: 30px solid #333; }
#bottomContentArea .schedule .content ul li:nth-child(5) .date { background: #dc0032; }
#bottomContentArea .schedule .content ul li:nth-child(5) .date::after { content: ""; position: absolute; right: -29px; top: 0; border-top: 33px solid transparent;
  border-bottom: 33px solid transparent;  border-left: 30px solid #dc0032; }
#bottomContentArea .schedule .content ul li .text { display: table-cell; text-align: center; font-size: 1.25em; font-weight: bold; padding: 20px 0 18px 10px; }
#bottomContentArea .twitter { float: right; width: 570px; }
#bottomContentArea .twitter .content { margin-top: 30px; background: #f5f5f5; border-radius: 30px; padding: 40px; }
#bottomContentArea .twitter .content .twitter-timeline { height: 460px; overflow-y: scroll; }
#bottomContentArea .button { margin-top: 100px; }
#bottomContentArea .button ul { width: 680px; margin: 0 auto; }
#bottomContentArea .button ul li { float: left; width: 50%; text-align: center; }
#bottomContentArea .button ul li a {}
