@charset "UTF-8";
/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

h1, h2, h3, h4, h5, h6 { font-weight: normal; font-size: 100%; }

ul, ol { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }

del { text-decoration: line-through; }

table { border-collapse: collapse; border-spacing: 0; }

hr { display: block; height: 1px; border: 0; margin: 1em 0; padding: 0; }

input, select { vertical-align: middle; }

.fade { transform: translate(0, 30px); opacity: 0; }
.fade.fadeIn { transform: translate(0, 0); opacity: 1; transition: all 1.2s; }

main { display: block; }

section { margin: 0 auto !important; }

#headerwrapper { max-width: 990px; width: auto !important; }

#topcontrolwrapper { display: none; }

#footer { border: none; height: auto; }

#copy { width: auto !important; max-width: 990px; }

#copyright { font-size: 11px !important; }
@media screen and (min-width: 768px) and (max-width: 990px) { #copyright { font-size: 13px !important; } }

/* --------- common end ---------*/
.virtual-body { font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif; line-height: 1.5; -webkit-text-size-adjust: 100%; background: #b10021; }
.virtual-body * { box-sizing: border-box; }
.virtual-body a { text-decoration: none; }
.virtual-body img { max-width: 100%; height: auto; vertical-align: bottom; }

@keyframes kv { from { opacity: 0; }
  to { opacity: 1; } }
.kv_image, .kv_title, .kv_text { opacity: 0; }

.kv.is-active .kv_image { animation: kv 2s 0s forwards; }
.kv.is-active .kv_title { animation: kv 2s .4s forwards; }
.kv.is-active .kv_text { animation: kv 2s .8s forwards; }

.kv { max-width: 990px; margin: 0 auto; display: flex; justify-content: space-between; overflow: hidden; }

.kv_image { width: 455px; }

.kv_text-wrap { position: relative; }
.kv_text-wrap:before { content: ""; display: block; position: absolute; top: 0; left: -50px; margin: auto; width: 601px; height: 548px; background: url(../img/bg_kv-star.png) center 0/auto no-repeat; }

.kv_title { text-align: center; margin-top: 30px; }

.kv_text { margin-top: 30px; }

.main-cont { display: block; border-radius: 6px; max-width: 990px; width: 100%; margin: 42px auto 110px; padding: 70px 70px 60px; background: #fff; }
@media screen and (min-width: 768px) and (max-width: 990px) { .main-cont { max-width: 940px; } }
@media screen and (max-width: 767px) { .main-cont { max-width: 940px; } }

.prize_text { text-align: center; font-size: 18px; line-height: 1.5; position: relative; }
.prize_text:before, .prize_text:after { content: ""; display: block; position: absolute; z-index: -1; margin: auto; background: center 0 / auto no-repeat; }
.prize_text:before { top: 0px; left: 30px; width: 74px; height: 87px; background-image: url(../img/pic_panda1-1.png); }
@media screen and (min-width: 768px) and (max-width: 990px) { .prize_text:before { left: 0; } }
@media screen and (max-width: 767px) { .prize_text:before { top: 90px; left: -62px; } }
.prize_text:after { top: -30px; right: 0; width: 118px; height: 132px; background-image: url(../img/pic_panda1-2.png); }
@media screen and (min-width: 768px) and (max-width: 990px) { .prize_text:after { right: -30px; } }
@media screen and (max-width: 767px) { .prize_text:after { top: 70px; right: -62px; } }

.prize_title { margin: 80px 0 0; }

.end-cont { display: none; position: relative; z-index: 1; text-align: center; width: 100%; margin: 0 auto 5px; padding: 20px 0; border-radius: 6px; }
.end-cont.top { margin-top: 30px; max-width: 990px; background: #000000; }
.end-cont.bottom { max-width: 780px; margin-top: 16px; background: rgba(67, 67, 67, 0.9); }
.end-cont.is-active { display: block; }

.end-cont_title { font-size: 24px; font-weight: bold; color: #efca93; }

.end-cont_text { margin-top: 8px; font-size: 16px; font-weight: bold; color: #fff; }

.main-wrap { margin-top: 50px; padding-bottom: 120px; background: #c70005 url(../img/bg_tree.png) center 0/auto repeat; }
@media screen and (min-width: 768px) and (max-width: 990px) { .main-wrap { padding-right: 20px; padding-left: 20px; } }

.main-wrap_inner { overflow: hidden; max-width: 992px; width: 100%; margin: 0 auto; border-radius: 6px; background: url(../img/bg_main.png) center 0/auto repeat-y; position: relative; }
.main-wrap_inner:before, .main-wrap_inner:after { content: ""; display: block; position: absolute; right: 0; left: 0; margin: auto; width: 992px; height: 9px; background: url(../img/bg_main-top.png) center 0/auto no-repeat; }
.main-wrap_inner:before { top: -5px; }
.main-wrap_inner:after { transform: rotate(180deg); bottom: -5px; }

.join { margin: 80px auto 0 !important; position: relative; }

.join_sub-title { text-align: center; margin: 50px auto 0; background: #000; }

.join_text { text-align: center; margin-top: 30px; font-size: 18px; line-height: 1.5; }
.join_text span { display: inline-block; position: relative; }
.join_text span:before { content: ""; display: block; position: absolute; top: 30px; right: -90px; margin: auto; width: 82px; height: 107px; background: url(../img/pic_panda2.png) 0 0/auto no-repeat; }

.join_notice { text-align: center; margin-top: 20px; font-size: 15px; }

.c-title { text-align: center; max-width: 854px; width: 100%; margin: 40px auto 0; padding: 14px 0; background: url(../img/bg_step.png) center 0/auto no-repeat; }

.c-block { max-width: 780px; width: 100%; margin: 0 auto; border-radius: 6px; background-color: #ffefd8; background-position: center 0; }

.follow { text-align: center; }

.follow_group { text-align: center; margin: 20px auto 0; padding: 30px 0 40px; background-image: url(../img/bg_star-s.png); }

.follow_sub-title { text-align: center; font-size: 16px; font-weight: bold; color: #540a0a; }

.follow_button { display: inline-block; position: relative; }
.follow_button a { display: flex; justify-content: center; align-items: center; margin: 20px auto 0; padding: 20px 30px 20px 40px; border-radius: 6px; border-bottom: 3px solid #800003; font-size: 20px; color: #fff; background: #b10021; transition: .6s; }
.follow_button a span:nth-of-type(1) { padding-right: 20px; }
.follow_button a span:nth-of-type(2) { padding-left: 20px; }
.follow_button a:hover { text-decoration: none; background: #e64a4e; }
.follow_button:before { content: ""; display: block; position: absolute; top: -40px; left: -124px; margin: auto; width: 121px; height: 103px; background: url(../img/tx_follow.png) center 0/auto no-repeat; }

.follow_text { margin-top: 20px; font-size: 15px; color: #540a0a; }

.insta_text { text-align: center; margin-top: 30px; font-size: 18px; line-height: 1.5; color: #540a0a; }

.insta_group { text-align: center; margin-top: 30px; padding: 30px 0 40px; background: #ffefd8 url(../img/bg_star-l.png) center 50px/auto repeat-y; }

.insta_sub-title { display: flex; justify-content: center; align-items: center; font-size: 16px; font-weight: bold; color: #540a0a; }
.insta_sub-title span { margin-right: 8px; }

.insta_embed { position: relative; }
.insta_embed:before { content: ""; display: block; position: absolute; top: 410px; left: 50px; margin: auto; width: 150px; height: 86px; background: url(../img/tx_comment.png) center 0/auto no-repeat; }
.insta_embed iframe { max-width: 360px !important; margin: 20px auto !important; }

.insta_sub-text { text-align: center; margin-top: 20px; font-size: 15px; color: #202020; }

.terms { position: relative; padding: 60px 0 50px; background: #6a0014 url(../img/bg_tree.png) center 20px/auto repeat; }

.terms_title { text-align: center; max-width: 990px; width: 100%; margin: 0 auto; padding: 40px 0; font-size: 26px; color: #fff; }

.terms_group { box-sizing: border-box; max-width: 990px; width: 100%; margin: 0 auto; }
@media screen and (min-width: 768px) and (max-width: 990px) { .terms_group { padding: 0 20px; } }

.terms-box { margin-top: 10px; border-radius: 8px; background: #fff; }
.terms-box:nth-of-type(1) { margin-top: 0; }

.terms-box_title { display: block; padding: 24px 0 24px 36px; font-size: 18px; font-weight: bold; position: relative; transition: all .4s; border-radius: 8px; color: #000; }
.terms-box_title:before, .terms-box_title:after { content: ""; display: block; position: absolute; top: 0; bottom: 0; right: 26px; margin: auto; width: 19px; height: 5px; border-radius: 2.5px; background: #dcdcdc; }
.terms-box_title:before { opacity: 1; transition: all .4s; }
.terms-box_title:after { transform: rotate(90deg); transition: all .4s; }
.terms-box_title:hover { text-decoration: none; }
.terms-box_title:hover:before, .terms-box_title:hover:after { background: #770003; opacity: 1; }
.terms-box_title.is-active:before { opacity: 0; }
.terms-box_title.is-active:after { transform: rotate(0); }

.is-active + .terms-box_list { display: block !important; }

.terms-box_list { display: none; border-top: 2px solid #e5e5e5; margin: 0 26px; padding: 20px 66px; }

.terms-box_item { margin-top: 10px; font-size: 16px; line-height: 1.5; }
.terms-box_item a { color: #0089dd; }
.terms-box_item.mt { margin-top: 5px; }

.list-mark { padding-top: 4px; padding-bottom: 10px; }
.list-mark.num { counter-reset: numList; }

.list-mark_item { position: relative; margin-top: 6px; font-size: 16px; }
.list-mark_item:before { display: block; position: absolute; top: 0; left: 0; bottom: 0; margin: auto; }
.list-mark_item.asterisk { padding-left: 16px; }
.list-mark_item.asterisk:before { content: "※"; font-size: 13px; line-height: 2.0; }
.list-mark_item.dot { padding-left: 19px; }
.list-mark_item.dot:before { content: "・"; font-size: 17px; line-height: 1.6; }
.list-mark_item.num { padding-left: 26px; }
.list-mark_item.num:before { counter-increment: numList; content: "(" counter(numList) ")"; font-size: 17px; line-height: 1.6; }

.share { padding: 40px 0; background: #eec88d; }

.share_title { text-align: center; }

.share_button-wrap { display: flex; justify-content: center; margin: 20px auto 0; position: relative; z-index: 1; }
.share_button-wrap:before { content: ""; display: block; position: absolute; top: -12px; right: 0; bottom: 0; left: 0; z-index: -1; margin: auto; width: 651px; height: 146px; background: url(../img/bg_share.png) center 0/auto no-repeat; }

.share_button { display: inline-block; }
.share_button img { width: 95px; }
.share_button a:hover { opacity: .8; transition: all .4s; }
.share_button.mr { margin: 0 20px; }

.pagetop { padding: 20px 0; background: #fff; text-align: center; }
.pagetop a { display: inline-block; width: 84px; height: 84px; border-radius: 100%; background: #f3f5f9 url(../img/top.png) center center/auto no-repeat; transition: all .6s; }
@media screen and (min-width: 768px) { .pagetop a:hover { background: #770003 url(../img/top-h.png) center center/auto no-repeat; } }

