/* -------------------------------------
GANREF
Copyright (c) 2018 Impress Corporation. All rights reserved.
------------------------------------- */

/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain)
*/
 
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
intro, aside, canvas, details, embed, 
figure, figcaption, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
vertical-align: baseline;
font-size: 15px;
}
/* HTML5 display-role reset for older browsers */
intro, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {display: block;}
body {
line-height: 1.4;
}
ol, ul {list-style: none;}
blockquote, q {quotes: none;}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
.breadcrumbsV2 *{
font-size: 14px;
}
#wrapper img {
width: auto;
}
img {
vertical-align:bottom;
}
table {
border-collapse: collapse;
border-spacing: 0;
}
b, strong {
font-weight:bold;
}
p,.contents p {
line-height: 1.5;
margin-bottom: 1rem;
font-size: 15px;
}
figure {
margin: 0;
text-align: center;
}
h3 {
font-size: 1rem;
}

/***********************************************************************/

:root {
  --theme-color: #4eafac;
}
.pc {
display: none !important;
}
.sns {
display: flex;
justify-content: center;
margin-bottom: 20px;
}
.sns li {
margin: 0 5px;
}


/***********************************************************************/

.sp-page * {
font-family: "-apple-system", "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}
.sp-page {
margin: 10px;
position: relative;
font-feature-settings: "palt";
}

/* === .zoom === */
.zoom{
display:inline-block;
position:relative;
vertical-align:top;
}
.zoom:after{
content:"";
width:22px;
height:22px;
background:url(img/zoom.png) no-repeat 0 0;
position:absolute; bottom:5px; right:5px;
}
.zoom:hover:after{ background-position:-22px 0; }
span.zoom:after{ display:none; }

/**/

.ext-link::before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0);
content: "";
margin-right: 0.2rem;
}
.notice {
padding: 10px;
border: 2px dotted #ccc;
border-radius: 6px;
}
p.notes,
ul.notes li{
font-size:0.9rem;
text-indent:-1rem;
padding-left:1rem;
line-height: 1.2rem;
margin-bottom: 0.4rem;
}
p.notes::before,
ul.notes li::before {
content: '※';
margin-right: 0.1rem;
}
h1 {
background-size: cover;
padding: 0;
margin-bottom: 1rem;
}
.contents>h2 {
align-items:center;
display: flex;
column-gap: 10px;
margin: 40px 0 20px;
font-size: 1.4rem;
font-weight: bold;
}
.contents>h2:after {
background-color: #999;
content: "";
display: block;
flex: 1;
height: 1px
}
h3{
font-size: 1rem;
font-weight: bold;
margin-bottom: 1rem;
}
.contents hr {
border-width: 1px 0 0 0;
border-style: solid;
border-color: #ccc;
margin: 2rem 0;
}


/* // lead // */
#lead>h3 {
border-radius: 6px;
display: block;
text-align: center;
padding: 10px;
font-size: 1rem;
margin-bottom: 20px;
background-color: var(--theme-color);
color: #fff;
}
#lead>p {
margin-bottom: 1rem;
}
#lead .aboutDCP {
border-radius: 8px;
background-color: #eee;
padding: 10px;
margin-bottom: 1rem;
}
#lead .aboutDCP img {
width: 50px;
float: left; 
margin: 0 10px 5px 0; 
}
#lead .aboutDCP>b {
font-size: 1.1rem;
color: #22579b;
}

#lead .regist {
background-color: #fff;
padding: 10px;
border-radius: 10px;
margin-bottom: 0;
}

#lead .regist li{
list-style-type:disc;
margin:0.3em 0 0.5em 1.5em;
line-height: 1.5;
}


/* // judge // */
#judge {
padding: 40px 0;
}
#judge h2 {
text-align: center;
font-size: 1.6rem;
margin-bottom: 20px;
}
#judge ul {
margin: auto;
}
#judge ul li {
padding: 10px;
border-radius: 10px;
margin-bottom: 20px;
}
#judge ul li:nth-child(1) {
background-color: #c8f1f4;
}
#judge ul li:nth-child(2) {
background-color: #c8e4f4;
}
#judge ul li:nth-child(3) {
background-color: #c8d8f4;
}
#judge ul li:nth-child(4) {
background-color: #e2e2ff;
}
#judge dl {
margin-bottom: 10px;
}
#judge dl dt {
text-align: center;
}
#judge dl dt img {
width: 250px;
margin-bottom: 10px;
}
#judge dl dd h3 {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 10px;
}
#judge dl dd b {
font-size: 1.3rem;
line-height: 1.3rem;
}
#judge dl dd span {
display: inline-block;
margin-left: 10px;
border: 1px solid #000;
background-color: #fff;
border-radius: 8px;
padding: 5px 10px;
font-size: 0.8rem;
font-weight: bold;
line-height: 0.8rem;
vertical-align: middle;
}
#judge dl dd p {
/* line-height: 1.4; */
}
#judge .message {
background-color: #fff;
border-radius: 10px;
padding: 10px;
margin: 0;
}


/* // prize // */
#prize {
}
#prize h2 {
text-align: center;
font-size: 1.6rem;
margin-bottom: 20px;
}
#prize ul {
}
#prize ul li {
text-align: center;
flex-shrink: 0;
margin-bottom: 40px;
}
#prize ul h3 {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 10px;
}
#prize ul h3 b {
font-size: 1.6rem;
background:linear-gradient(#eccf27,#a67f00);
-webkit-background-clip:text;
-webkit-text-fill-color: transparent;
}
#prize .prize2nd h3 b {
background:linear-gradient(#bec8d4,#95a1a4);
-webkit-background-clip:text;
-webkit-text-fill-color: transparent;
}
#prize .prize3rd h3 b {
background:linear-gradient(#f7beab,#995842);
-webkit-background-clip:text;
-webkit-text-fill-color: transparent;
}
#prize .prizeDCP h3 b {
background:linear-gradient(#6dd8f3,#1f7c93);
-webkit-background-clip:text;
-webkit-text-fill-color: transparent;
}
#prize ul li h3 span {
display: inline-block;
margin-left: 10px;
border: 1px solid #a67f00;
background-image: linear-gradient(125deg, rgba(255, 222, 137, 1), rgba(222, 183, 81, 1));
border-radius: 8px;
padding: 5px 10px;
font-size: 0.8rem;
font-weight: bold;
line-height: 0.8rem;
vertical-align: middle;
}
#prize .prize2nd h3 span {
border: 1px solid #95a1a4;
background-image: linear-gradient(125deg, rgb(206, 220, 249), rgb(162, 181, 197));
}
#prize .prize3rd h3 span {
border: 1px solid #995842;
background-image: linear-gradient(125deg, rgb(250, 191, 151), rgb(230, 156, 107));
}
#prize .prizeDCP h3 span {
border: 1px solid #1f7c93;
background-image: linear-gradient(125deg, rgb(184, 230, 255), rgb(84, 178, 255));
}
#prize ul li h3:before{
content:"";
display:inline-block;
width:28px;
height:60px;
vertical-align:middle;
background:url(img/prize1st_l.svg) no-repeat 0 0;
margin-top:8px;
}
#prize ul li h3:after{
content:"";
display:inline-block;
width:28px;
height:60px;
vertical-align:middle;
background:url(img/prize1st_r.svg) no-repeat 0 0;
margin-top:8px;
}
#prize .prize2nd h3:before{
background:url(img/prize2nd_l.svg) no-repeat 0 0;
}
#prize .prize2nd h3:after{
background:url(img/prize2nd_r.svg) no-repeat 0 0;
}
#prize .prize3rd h3:before{
background:url(img/prize3rd_l.svg) no-repeat 0 0;
}
#prize .prize3rd h3:after{
background:url(img/prize3rd_r.svg) no-repeat 0 0;
}
#prize .prizeDCP h3:before{
background:url(img/prizeDCP_l.svg) no-repeat 0 0;
}
#prize .prizeDCP h3:after{
background:url(img/prizeDCP_r.svg) no-repeat 0 0;
}
#prize .prizeDetail {
font-size: 1.2rem;
font-weight: bold;
}
#prize .prizeItem {
margin: auto;
text-align: center;
font-size: 0.9rem;
}
#prize .prizeItem img {
width: auto;
max-height: 250px;
}


/* // requirements // */
#requirements dt{
font-weight:bold;
margin:1.5rem 0 0.2rem;
}
#requirements dd{
padding-left:12px;
}
#requirements li{
list-style-type:disc;
margin:0.3em 0 0.7em 1.5em;
line-height: 1.4rem;
}
#requirements dl dd ul li p {
text-align: center;
font-weight: bold;
margin: 10px 0 5px;
font-size: 0.9rem;
}


/* // rule // */
#rule {
margin-bottom: 2rem;
}
#rule h3 {
margin: 1.5rem 0 0.2rem;
}
#rule li{
list-style-type:disc;
margin:0.4rem 0 0.8rem 1.5rem;
line-height: 1.4rem;
}
#rule p {
margin: 0.4rem 0 0.8rem 1.5rem;
line-height: 1.4rem;
}


/**/
.entry-btn{
text-align:center;
margin-bottom:1rem;
display: block;
padding: 1rem;
background-color: #FDE823;
border-radius: 10px;
color: #000;
font-size:1.2rem;
margin: 1rem;
text-decoration: none !important;
line-height: 1.5;
}
.entry-btn:visited {
color: #000;
}
.entry-btn:hover {
background-color: #ffef5b;
color: #000;
}
.upload-end {
display: block;
font-weight:bold;
text-decoration:none;
padding: 0.5rem 1rem;
border:1px solid #ccc;
border-radius:10px;
background:#eee;
text-align:center;
margin: 1rem;
}


/* === timer === */
.timerHidden{ display: none;}
.timerVisible{
display: block;
clear:both;
}

.upload-end {
display: block;
font-weight:bold;
text-decoration:none;
padding: 0.5rem 1rem;
border:1px solid #ccc;
border-radius:6px;
background:#eee;
text-align:center;
}

.sp-notice {
text-align:center;
border: 2px dotted #f00;
padding: 20px;
margin-top: 10px;
}