@media screen and (min-width:961px) { .spOnly { display:none !important; } }
@media screen and (max-width:960px) { .pcOnly { display:none !important; } }

/************************************************************************
  
************************************************************************/
html { color:#fff; }
img { vertical-align:bottom; border:0; }
body { /*font-family:'Hiragino Kaku Gothic Pro','ヒラギノ角ゴ Pro W3','メイリオ',Meiryo,'ＭＳ Ｐゴシック',"游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝",sans-serif;*/ font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif; color:#fff; min-height:100vh; font-size:16px; }

* { box-sizing:border-box; }
.pointer-events { pointer-events:none; }


/* SP */
@media screen and (max-width:960px){
body{ background:#000; font-size:3.5vw; }
}


/************************************************************************
  body
************************************************************************/
body { background:#ffffff; color:#333333; line-height:1; font-size:0; }

/************************************************************************
  
************************************************************************/
.dp-none { display:none; }
p.img { font-size:0 }
h2 { font-size:0; }

a:hover { cursor:pointer !important; }
.mb60 { margin-bottom:60px !important; }


a.pe-none { pointer-events:none; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

.mb60 { margin-bottom:calc(60px * 0.7) !important; }
}
/**
/************************************************************************
  header
************************************************************************/
header { margin-bottom:100px; height:617px; background:url('../img/main_bg.png') no-repeat top center transparent; position:relative; }

header h1 { margin:auto; height:670px; background:url('../img/main_image.png') no-repeat center top transparent; font-size:0; position:absolute; top:0; right:0; left:0; z-index:1; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

header { margin-bottom:0; height:calc(1149/750*100vw); background:url('../img/main_bg_sp.png') no-repeat; background-size:auto 100%; }
header h1 { display:none; }
}
/************************************************************************
  #bg
************************************************************************/
#bg { padding-bottom:170px; background:url('../img/bg.png') no-repeat fixed bottom center; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#bg { padding-bottom:calc(165/750*100vw); background-size:100% auto; overflow:hidden; }

}
/************************************************************************
  main
************************************************************************/
/*
main { margin:auto; width:1036px; background:url('../img/frame.png') repeat-y top center; display:block; position:relative; top:-20px; }

main::before { content:''; margin:auto; width:1036px; height:110px; background:url('../img/frame_top.png') no-repeat; display:block; position:absolute; top:-110px; right:0; left:0; z-index:0; }
main::after { content:''; margin:auto; width:1036px; height:110px; background:url('../img/frame_bottom.png') no-repeat; display:block; position:absolute; bottom:-110px; right:0; left:0; z-index:0; }
*/
/* ============ smart phone ============ */
@media screen and (max-width:750px){
/*
main { margin:calc(115/750*100vw) auto auto; width:100%; background-image:url('../img/frame_sp.png'); background-size:100% auto; top:auto; }

main::before { width:100%; height:calc(115/750*100vw); background-image:url('../img/frame_top_sp.png'); background-size:100% 100%; top:calc(-115/750*100vw); }
main::after { width:100%; height:calc(115/750*100vw); background-image:url('../img/frame_bottom_sp.png'); background-size:100% auto; bottom:calc(-115/750*100vw); }
*/
}
/************************************************************************
  .contents
************************************************************************/
.contents { margin:auto; width:760px; height:100%; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

.contents { width:calc(609/750*100vw); }

}
/************************************************************************
  .column
************************************************************************/
.column { margin:0 auto 85px; }

.column h2 { margin:auto auto 45px; padding:16px 0 0; width:760px; height:93px; background:url('../img/h2.png') no-repeat; display:flex; justify-content:center; align-items:center; box-sizing:border-box; }

.column h3 { margin:auto auto 25px; text-align:center; font-size:18px; font-weight:bold; }

.column p { text-align:center; line-height:1.7894; font-size:18px; }
.column p small { font-size:16px; }
.column a { color:#d6294e; }
.column strong { font-weight:bold; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

.column { margin:0 auto calc(100/750*100vw); }

.column h2 { margin:auto auto calc(55/750*100vw); padding:calc(27/750*100vw) 0 0; width:calc(609/750*100vw); height:calc(116/750*100vw); background-image:url('../img/h2_sp.png'); background-size:100% auto; }
.column h3 { margin:auto auto calc(35/750*100vw); line-height:1.5; font-size:calc((18px *0.7)/750*100vw); }

.column p { margin-right:auto; margin-left:auto; line-height:calc(44/28); font-size:calc(28/750*100vw); }
.column p small { font-size:calc(24/750*100vw); }


}
/************************************************************************
  #outline
************************************************************************/
#outline {  }

#outline h2 { position:relative; }
#outline h2::before { content:''; width:117px; height:122px; background:url('../img/sd_001.png') no-repeat; display:block; position:absolute; top:38px; left:-65px; }
#outline h2 img { width:calc(530px / 2); }
#outline h3 img { width:calc(1264px / 2); }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#outline { position:relative; top:calc(-29/750*100vw); }

/* h2 */
#outline h2::before { width:calc(93/750*100vw); height:calc(98/750*100vw); background-size:100% auto; top:calc(-29/750*100vw); left:0; }
#outline h2 img { width:calc(347/750*100vw); }

/* h3 */
#outline h3 { width:calc(416/750*100vw); height:calc(100/750*100vw); background:url('../img/h3_outline_sp.png') no-repeat; background-size:100% auto; }
#outline h3 img { display:none; }

#outline p { text-align:left; }

}
/************************************************************************
  #period
************************************************************************/
#period h2 img { width:calc(360px / 2); }

#period h2 { position:relative; }
#period h2::before { content:''; width:185px; height:309px; background:url('../img/sd_002.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-53px; right:-105px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#period h2 img { width:calc(237/750*100vw); }

#period h2::before { width:calc(181/750*100vw); height:calc(207/750*100vw); background-image:url('../img/sd_002_sp.png'); background-size:100% auto; top:calc(-60/750*100vw); right:calc(-33/750*100vw); }

}
/************************************************************************
  #result
************************************************************************/
#result h2 img { width:calc(358px / 2); }

#result h2 { position:relative; }
#result h2::before { content:''; width:357px; height:314px; background:url('../img/sd_003.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-200px; left:-178px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

/* h2 */
#result h2 img { width:calc(234/750*100vw); }

#result h2::before { background-image:url('../img/sd_003_sp.png'); background-size:100% auto; width:calc(168/750*100vw); height:calc(240/750*100vw); top:calc(-22/750*100vw); left:calc(-20/750*100vw); }

}
/************************************************************************
  #awards
************************************************************************/
#awards h2 img { width:calc(533px / 2); }

#awards h2 { position:relative; }
#awards h2::before { content:''; width:221px; height:251px; background:url('../img/sd_005.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-117px; right:-80px; }

/* #awards ul li dl */
#awards ul li dl { line-height:calc(34/19); font-size:18px; font-weight:normal; }
#awards ul li dl dt {  }
#awards ul li dl dt::after { content:'\0ff1a'; }
#awards ul li dl dd { margin:calc(-1em *(34/19)) 0 1em 3em; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#awards h2 img { width:calc(344/750*100vw); }
#awards h2::before { width:calc(177/750*100vw); height:calc(201/750*100vw); top:calc(-60/750*100vw); right:calc(-53/750*100vw); }

/* dl */
#awards ul li dl { line-height:calc(44/28); font-size:calc(28/750*100vw); }


}
/************************************************************************
  ul.mark
************************************************************************/
ul.mark { margin:auto; width:500px; }
ul.mark li { padding-left:1.2em; line-height:calc(34/21); font-size:18px; }
ul.mark li::before { content:'\025cf'; margin:0 0 0 -1.2em; font-size:20px; } 

ul.mark li h3 { margin:0; text-align:left; line-height:calc(34/21); font-size:20px; font-weight:700; display:inline; }
ul.mark li p { text-align:left; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

ul.mark { /*width:calc((500*0.7)/750*100vw);*/ width:100%; }
ul.mark li { line-height:calc(44/28); font-size:calc(28/750*100vw); }
ul.mark li::before { line-height:calc(44/28); font-size:calc(28/750*100vw); } 
ul.mark li h3 { line-height:calc(44/28); font-size:calc(28/750*100vw); }

}
/************************************************************************
  ul.note
************************************************************************/
ul.note { margin:auto; width:500px; }
ul.note li { padding-left:1.2em; line-height:calc(34/17); font-size:16px; font-weight:normal; }
ul.note li::before { content:'\203B'; margin:0 0 0 -1.2em; font-size:16px; } 

/* ============ smart phone ============ */
@media screen and (max-width:750px){

ul.note { width:100%; }
ul.note li { line-height:calc(44/24); font-size:calc(24/750*100vw); }
ul.note li::before { line-height:calc(44/24); font-size:calc(24/750*100vw); } 

}
/************************************************************************
  p.note
************************************************************************/
p.note { margin:auto; width:500px; text-align:left; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

p.note { width:100%; }

}
/************************************************************************
  ol.maru
************************************************************************/
ol.maru { margin:auto; width:500px; list-style:none; counter-reset:my-counter; }
ol.maru li { margin-bottom:0.8em; padding:0 0 0 1.2em; line-height:1; font-size:20px; position:relative; font-weight:bold; }
ol.maru li::before { content:counter(my-counter); counter-increment:my-counter; margin:auto; width:20px; height:20px; color:#333333; border:1px solid #333333; border-radius:50%; -sizing:border-; display:flex; justify-content:center; align-items:center; line-height:1; font-size:80%; position:absolute; top:0; left:0; } 

/* ============ smart phone ============ */
@media screen and (max-width:750px){

ol.maru { width:100%; }
ol.maru li { font-size:calc(28/750*100vw); }
ol.maru li::before { width:calc(28/750*100vw); height:calc(28/750*100vw); font-size:calc(20/750*100vw); } 

}
/************************************************************************
  #application
************************************************************************/
#application h2 img { width:calc(358px / 2); }

#application h2 { position:relative; }
#application h2::before { content:''; width:calc(657px * 0.42); height:calc(723px * 0.42); background:url('../img/sd_004.gif') no-repeat; background-size:100% auto; display:block; position:absolute; top:-92px; left:-140px; }

/* a.btn-001 */
a#btn-001 { width:calc(936px / 2); height:calc(226px /2); background:url('../img/btn_001_on.png') no-repeat; background-size:100% auto; pointer-events:none;  }

/* a.btn-002 */
a#btn-002 { width:calc(936px / 2); height:calc(186px /2); background:url('../img/btn_002_on.png') no-repeat; background-size:100% auto;  }

/* a.btn */
a.btn { margin:25px auto 50px; display:block; }
a.btn img { width:100%; height:auto; }
a.btn:hover img { display:none; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

/* h2 */
#application h2 img { width:calc(235/750*100vw); }
#application h2::before { width:calc(216/750*100vw); height:calc(238/750*100vw);  top:calc(-89/750*100vw); left:calc(-85/750*100vw); }

/* a.btn-001 */
a#btn-001 { margin-right:auto; margin-left:auto; width:calc(562/750*100vw); height:calc(136/750*100vw); }
a#btn-001:hover {  }

/* a.btn-002 */
a#btn-002 { margin-right:auto; margin-left:auto; width:calc(562/750*100vw); height:calc(113/750*100vw); }
a#btn-002:hover {  }

/* a.btn */
a.btn { margin:calc(45/750*100vw) auto calc(60/750*100vw); display:block; }

}
/************************************************************************
  #download
************************************************************************/
#download h2 img { width:calc(1108px / 2); }

#download h2 { position:relative; }
#download h2::before { content:''; width:93px; height:106px; background:url('../img/sd_007.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-55px; left:-19px; }
#download h2::after { content:''; width:calc(563px * 0.42); height:calc(623px * 0.42); background:url('../img/sd_006.gif') no-repeat; background-size:100% auto; display:block; position:absolute; top:-94px; right:-150px; }

#download ul.note { width:auto; }
#download ul.note li { text-align:center; }

#download p.img { margin:50px auto 30px; width:350px; background-color:#ffffff; border:1px solid #ecece6; }
#download p.img img { width:100%; }

/* .dl-link */
#download p.dl-link { margin-bottom:45px; }
#download p.dl-link a { color:#000000; font-weight:bold; }
#download p.dl-link a:hover { text-decoration:underline; }

#download p.dl-link a img { vertical-align:middle; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

/* h2 */
#download h2 img { width:calc(606/750*100vw); }
#download h2::before { width:calc(74/750*100vw); height:calc(85/750*100vw); top:calc(-60/750*100vw); left:0; }
#download h2::after { display:none; }

#download p.img { margin:calc((50*0.7)/750*100vw) auto calc((30*0.7)/750*100vw); width:calc(487/750*100vw); }
#download p.img img {  }

/* ul.note */
#download ul.note { width:100%; }

/* .dl-link */
#download p.dl-link { margin-bottom:calc((45*0.7)/750*100vw); }

}
/************************************************************************
  #notice
************************************************************************/
#notice.column { margin-bottom:0; } 
#notice.contents { position:relative; }

#notice h2 img { width:calc(358px / 2); }

#notice h2 { position:relative; }
#notice h2::before { content:''; width:calc(574px * 0.4); height:calc(808px * 0.4); background:url('../img/sd_008.gif') no-repeat; background-size:100% auto; display:block; position:absolute; top:-155px; left:-144px; }

#notice .contents::after { content:''; width:204px; height:205px; background:url('../img/sd_009.png') no-repeat; background-size:100% auto; display:block; position:absolute; bottom:-46px; right:80px; z-index:1; }

#notice ul.mark { margin-bottom:25px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#notice { padding-bottom:calc(90/750*100vw); }

/* h2 */
#notice h2 img { width:calc(234/750*100vw); }
#notice h2::before { width:calc(183/750*100vw); height:calc(257/750*100vw); top:calc(-105/750*100vw); left:calc(-68/750*100vw); }
#notice h2::after { content:''; width:calc(191/750*100vw); height:calc(211/750*100vw); background:url('../img/sd_006.gif') no-repeat; background-size:100% auto; position:absolute; top:calc(-58/750*100vw); right:calc(-73/750*100vw); display:block; }

#notice .contents::after { width:calc(204/750*100vw); height:calc(205/750*100vw); bottom:calc(-29/750*100vw); right:calc((80*0.7)/750*100vw); }

#notice ul.mark { margin-bottom:calc(45/750*100vw); }
#notice p.note { text-align:center; }
}
/************************************************************************
  #banner
************************************************************************/
#banner { padding:0 0 75px; text-align:center; }
#banner.column { margin-bottom:0; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#banner { padding:0 0 calc(75/750*100vw); }
#banner img { width:calc(598/750*100vw); }

}
/************************************************************************
  footer
************************************************************************/
footer { padding:90px 0 140px; height:auto; background-color:#080404; color:#ffffff; text-align:center; font-size:14px; -sizing:border-; }

footer nav ul { margin-bottom:50px; display:flex; justify-content:center; }
footer nav ul li { line-height:1; }
footer nav ul li::after { content:'|'; margin:0 0.5em; }
footer nav ul li:last-child::after { display:none; }

footer a {  }
footer a:hover { color:#ffffff; text-decoration:underline; }

footer p img { margin-bottom:20px; }
p.copyright { line-height:calc(18/12); }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

footer { padding:calc(35/750*100vw) 0 calc(25/750*100vw); height:auto; font-size:calc(24/750*100vw); }

footer nav ul { flex-direction:column; }
footer nav ul li { margin-bottom:1em; }
footer nav ul li::after { display:none; }
}
/************************************************************************
  #canvas
************************************************************************/
#canvas { background-color:transparent; position:fixed; z-index:1; }

/************************************************************************
  .frame
************************************************************************/
.frame { margin:auto; width:1036px; background:url('../img/frame.png') repeat-y top center; display:block; position:relative; }

.frame::before { content:''; margin:auto; width:1036px; height:110px; background:url('../img/frame_top.png') no-repeat; display:block; position:absolute; top:-110px; right:0; left:0; z-index:0; }
.frame::after { content:''; margin:auto; width:1036px; height:110px; background:url('../img/frame_bottom.png') no-repeat; display:block; position:absolute; bottom:-110px; right:0; left:0; z-index:0; }

.frame:nth-child(1) { margin-bottom:200px; top:-20px; }


/* ============ smart phone ============ */
@media screen and (max-width:750px){

.frame { margin:calc(115/750*100vw) auto auto; width:100%; background-image:url('../img/frame_sp.png'); background-size:100% auto; top:auto; }

.frame::before { width:100%; height:calc(115/750*100vw); background-image:url('../img/frame_top_sp.png'); background-size:100% 100%; top:calc(-115/750*100vw); }
.frame::after { width:100%; height:calc(115/750*100vw); background-image:url('../img/frame_bottom_sp.png'); background-size:100% auto; bottom:calc(-115/750*100vw); }

.frame:nth-child(1) { margin-bottom:calc(250/750*100vw); top:auto; }

}
/************************************************************************
  #switch
************************************************************************/
#switch { margin-bottom:60px; display:flex; justify-content:center; }
#switch li { margin:0 20px 0 0; width:calc(404px /2); height:calc(128px /2); background-repeat:no-repeat; background-size:100% auto; }
#switch li:last-child { margin-right:0; }
#switch li img { width:100%; }
#switch li a { width:100%; height:100%; display:block; }
#switch li a:hover img { display:none; }

#switch li.active img { display:none; }

#btn-stage-1 { background-image:url('../img/btn_stage_1_on.png'); }
#btn-stage-2 { background-image:url('../img/btn_stage_2_on.png'); }
#btn-stage-3 { background-image:url('../img/btn_stage_3_on.png'); }

/* ============ smart phone ============ */
@media screen and (max-width:750px){
#switch { margin-bottom:calc(60/750*100vw); }
#switch li { margin-right:calc(15/750*100vw); width:calc(184/750*100vw); height:calc(79/750*100vw); }
#switch li:last-child { margin-right:0; }

#btn-stage-1 { background-image:url('../img/btn_stage_1_on_sp.png'); }
#btn-stage-2 { background-image:url('../img/btn_stage_2_on_sp.png'); }
#btn-stage-3 { background-image:url('../img/btn_stage_3_on_sp.png'); }

}
/************************************************************************
  #contest-result
************************************************************************/
#contest-result {  }
#contest-result h2 { position:relative; }
#contest-result h2 img { width:calc(563px /2); }
#contest-result h2::before { content:''; width:117px; height:122px; background:url('../img/sd_001.png') no-repeat; display:block; position:absolute; top:38px; left:-65px; }

#contest-result .contents { width:900px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#contest-result h2 { margin-bottom:calc(35/750*100vw); }
#contest-result h2 img { width:calc(327/750*100vw); }
#contest-result h2::before { display:none; }

#contest-result .contents { width:calc(609/750*100vw); }
}
/************************************************************************
  #stage-1
************************************************************************/
#stage-1 {  }

#h3-stage-1-001 { width:calc(1518px /2);  }
#h3-stage-1-001 img { width:100%; height:auto; }

.prize h4 { margin:0 auto 50px !important; position:relative; }

/* #first-prize ==================================== */
#first-prize {  }
#first-prize h4 { width:calc(696px /2); }
/* #special-prize ==================================== */
#special-prize {  }
#special-prize h4 { width:calc(706px /2); }
#special-prize h4::after { content:''; width:185px; height:309px; background:url('../img/sd_011.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-140px; right:-283px; }
/* #producer-award ==================================== */
#producer-award {  }
#producer-award h4 { width:calc(823px /2); }
#producer-award h4::before { content:''; width:222px; height:250px; background:url('../img/sd_010.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-170px; left:-262px; }


.prize { margin:0 auto 90px; background:url('../img/stage_1/bg_prize.png') no-repeat top center; }
.prize .name { color:#614f1f; text-shadow:0 0 10px #ffffff; font-weight:bold; font-size:22px;  }

/* .comment */
.comment { margin:auto; padding:30px 25px 40px; width:650px; background-color:rgba(241,236,214,0.54); border:1px solid rgb(140,125,67,0.315); box-sizing:border-box; }
.comment h5 { color:#ad9f40; text-align:center; font-family:'Times New Roman', sans-serif; font-weight:bold; font-size:18px; }
.comment p { text-align:left !important; font-family:'Arial', sans-serif !important; }
.comment p:last-child { margin-bottom:0; }
.comment p small { font-size:14px; }

hr.line { margin:0 auto 80px; width:760px; height:2px; background:url('../img/line.png') no-repeat transparent; border:0; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){
#h3-stage-1-001 { width:100%; }

.prize { margin-bottom:calc(80/750*100vw); background-size:100% auto; }
.prize h4 { margin:0 auto calc(40/750*100vw) !important; }
.prize .name { font-size:calc(28/750*100vw);  }

/* .comment */
.comment { width:calc(580/750*100vw); padding:calc(35/750*100vw) calc(30/750*100vw) calc(30/750*100vw); }
.comment h5 { margin-bottom:calc(25/750*100vw) !important; font-size:calc(26/750*100vw); }
.comment p { font-size:calc(28/750*100vw); }

hr.line { margin:0 auto calc(75/750*100vw); width:100%; background-size:100% auto; }

/* #first-prize ==================================== */
#first-prize h4 { width:calc(383/750*100vw); }

/* #special-prize ==================================== */
#special-prize h4 { width:calc(404/750*100vw); }
#special-prize h4::after { display:none; }

/* #producer-award ==================================== */
#producer-award h4 { width:calc(464/750*100vw); }
#producer-award h4::before { display:none; }

}
/************************************************************************
  #stage-2
************************************************************************/
#stage-2 .prize { background-image:none; }
#stage-2 p.name { margin-top:20px; }

#h3-stage-2-001 { width:calc(1513px /2); }

/* #s2-first-prize ==================================== */
#s2-first-prize h4 { width:calc(696px /2); }
#s2-first-prize h4::after { content:''; width:185px; height:309px; background:url('../img/sd_011.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-140px; right:-283px; }
/* #meowtastic-award ==================================== */
#meowtastic-award {  }
#meowtastic-award h4 { width:calc(964px /2); }

#meowtastic-award .work img { width:calc(172px /2); }#s3-producer-award
/* #favorite-feline-award ==================================== */
#favorite-feline-award {  }
#favorite-feline-award h4 { width:calc(866px /2); }
#favorite-feline-award h4::before { content:''; width:222px; height:250px; background:url('../img/sd_010.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-170px; left:-252px; }

#favorite-feline-award .work img { width:calc(1052px /2); }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#h3-stage-2-001 { width:calc(606/750*100vw); }

/* #first-prize ==================================== */
#s2-first-prize h4 { width:calc(383/750*100vw); }
#s2-first-prize h4::before { display:none; }
/* #meowtastic-award ==================================== */
#meowtastic-award h4 { width:calc(524/750*100vw); }
#meowtastic-award .work img { width:calc(86/750*100vw); }
/* #favorite-feline-award ==================================== */
#favorite-feline-award h4 { width:calc(524/750*100vw); }
#favorite-feline-award h4::before { display:none; }
#favorite-feline-award .work img { width:calc(526/750*100vw); }

}
/************************************************************************
  #stage-3
************************************************************************/
#stage-3 .prize { background-image:none; }

#h3-stage-3-001 { width:calc(1518px /2); }

/* #s3-first-prize ==================================== */
#s3-first-prize h4 { width:calc(696px /2); }
#s3-first-prize h4::after { content:''; width:185px; height:309px; background:url('../img/sd_011.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-140px; right:-283px; }
/* #most-creative-award ==================================== */
#most-creative-award  {  }
#most-creative-award  h4 { width:calc(1066px /2); }
/* #favorite-feline-award ==================================== */
#s3-producer-award {  }
#s3-producer-award h4 { width:calc(823px /2); }
#s3-producer-award h4::before { content:''; width:222px; height:250px; background:url('../img/sd_010.png') no-repeat; background-size:100% auto; display:block; position:absolute; top:-170px; left:-262px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#h3-stage-3-001 { width:calc(606/750*100vw); }

/* #first-prize ==================================== */
#s3-first-prize h4 { width:calc(383/750*100vw); }
#s3-first-prize h4::after { display:none; }

/* #most-creative-award ==================================== */
#most-creative-award  h4 { width:calc(564/750*100vw); }

/* #producer-award ==================================== */
#s3-producer-award h4 { width:calc(464/750*100vw); }
#s3-producer-award h4::before { display:none; }
}
/************************************************************************
  .box
************************************************************************/
.box { display:none; }
.box.active { display:block; }

.box h3 { margin-bottom:80px; }
.box h3 img { width:100%; }
.box h4 { margin:0 auto 40px; }
.box h4 img { width:100%; }

.box p { text-align:center; font-family:serif; }
.box p strong { color:#614f1f; line-height:calc(52/40); font-weight:bold; font-size:40px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){
.box h3 { margin:0 auto calc(60/750*100vw) !important; }
.box p strong { font-size:calc(40/750*100vw); }
}
/************************************************************************
  #other-regions
************************************************************************/
#other-regions {  }
#other-regions h3 { width:calc(977px /2); position:relative; }

#other-regions h3::after { content:''; width:calc(563px * 0.42); height:calc(623px * 0.42); background:url('../img/sd_006.gif') no-repeat; background-size:100% auto; display:block; position:absolute; top:-215px; right:-275px; }
#other-regions h3 img { width:100%; }

/* ul */
#other-regions ul { display:flex; justify-content:center; }
#other-regions ul li { margin:0 20px 0 0; width:calc(666px /2); }
#other-regions ul li:last-child { margin-right:0; }
#other-regions ul li a img { width:100%; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){

#other-regions h3 { margin-bottom:calc(65/750*100vw); width:calc(596/750*100vw); }

/* ul */
#other-regions ul { flex-direction:column; }
#other-regions ul li { margin:0 0 calc(10/750*100vw); width:100%; }
#other-regions ul li:last-child { margin-bottom:0; }

}
/************************************************************************
  .work
************************************************************************/
p.work { margin-bottom:20px !important; font-size:0; }
p.work:last-child { margin-bottom:0 !important; }
p.work a { position:relative; display:inline-block; }
p.work a::after { content:''; width:52px; height:52px; background:url('../img/icon_zoom.svg') no-repeat; position:absolute; right:0; bottom:0; }
p.work a img { width:100%; max-width:650px; }

/* ============ smart phone ============ */
@media screen and (max-width:750px){
p.work a::after { width:calc(52/750*100vw); height:calc(52/750*100vw); background-size:100% auto; }
}
/************************************************************************
  #popup
************************************************************************/
#popup { width:100%; height:100%; max-height:100%; background-color:transparent; overflow:hidden; }
#popup video { margin:auto; width:auto; max-width:100%; height:auto; max-height:100%; display:block; }
/* ============ smart phone ============ */
@media screen and (max-width:750px){
#popup {  }
#popup video { position:absolute; top:0; bottom:0; right:0; left:0; }
}