@charset "utf-8";
body { }
h1,
h2,
h3,
h4 { margin: 0px; padding: 0px; }
h1:after,
h2:after,
h3:after,
h4:after { display: block; visibility: hidden; clear: both; height: 0; content: "."; line-height: 0; }
p:after { display: block; visibility: hidden; clear: both; height: 0; content: "."; line-height: 0; }
img { float: left; }
article { }
section { }
p{ max-height:999999px; }

.mt45{ margin-bottom:45px !important; }
.mb45{ margin-bottom:45px !important; }
.mb35{ margin-bottom:35px !important; }
.mb25{ margin-bottom:25px !important; }
.mt10{ margin-top:10px !important; }
.mb10{ margin-bottom:10px !important; }
.mt5{ margin-top:5px !important; }
.mb0{ margin-bottom:0px !important; }

img.w100{ width:100%; height:auto; min-height:none; max-height:none; }

#contents { padding-top: 48px; text-align: left; }
#contents h1 { padding-left: 0px; margin-bottom:0px; background-color:#5d98cf; text-align:center; }
#contents h2{ padding-left: 10px; margin-bottom:15px; }
#contents h2.mb5{ margin-bottom: 5px; }
#contents h1 img{ height:50px; display:block; margin:0px auto; float:none; }
#contents h2 img{ height:28px; display:block; }

#contents .inner{ display:block; padding:20px 10px; }

#contents .inner.pt0{ padding-top: 0px; }
#contents .inner p{ padding-bottom:1.0em; line-height:1.6; }
#contents .inner p a{ color: #222; text-decoration: underline; }
#contents .inner p:last-child{ padding-bottom:0em; }
#contents .inner .box{ margin:5px 0px; padding:10px; background-color:#ebf7f9; display:block; font-size:12px; line-height:1.6; margin-bottom:25px; }
#contents .inner .box p{  }

#contents .inner p small{ display:block; line-height:1.4em; font-size:9px; }

#contents .inner dl.step{ padding-left:83px; margin-bottom:1em; display:block; min-height:140px; }
#contents .inner dl.step#st1{ background-image:url(../img/howto/step1.png); background-repeat:no-repeat; background-size:83px 100px; }
#contents .inner dl.step#st2{ background-image:url(../img/howto/step2.png); background-repeat:no-repeat; background-size:83px 100px; }
#contents .inner dl.step#st3{ background-image:url(../img/howto/step3.png); background-repeat:no-repeat; background-size:83px 100px; }
#contents .inner dl.step#st4{ background-image:url(../img/howto/step4.png); background-repeat:no-repeat; background-size:83px 100px; }
#contents .inner dl.step#st5{ background-image:url(../img/howto/step5.png); background-repeat:no-repeat; margin-bottom:25px; background-size:83px 67px; }

#contents .inner dl.step dt{ font-size:14px; line-height:1.4em; color:#0cade7; font-weight:bold; margin-bottom:15px; }
#contents .inner dl.step dt.cy{ color:#fcc800; }
#contents .inner dl.step dd{ font-size:14px; line-height:1.4em; color:#000000; min-height:3.5em; text-align:justify; }

#contents .inner .box dl{}
#contents .inner .box dl dt{ padding-bottom:10px; }
#contents .inner .box dl dt img{ height:12px; }
#contents .inner .box dl dt:after { display: block; visibility: hidden; clear: both; height: 0; content: "."; line-height: 0; }
#contents .inner .box dl dd{ line-height:1.4em; padding-bottom:1em; border-bottom:solid 1px #7fc1e4; margin-bottom:14px; }
#contents .inner .box dl:last-child { padding-bottom:0px; margin-bottom:0px; }
#contents .inner .box dl:last-child dd{ line-height:1.4em; padding-bottom:0em; border-bottom:none; }

#contents .inner .bxslider_area{ min-height:150px; border: solid 1px #ececec; background-image: url(../img/bx_loader.gif); background-repeat: no-repeat; background-position: center center; background-size:20px; overflow:hidden; }
#contents .inner .bxslider_area .bxslider{ display:none; }


#contents.gallery .tabs-area{ border-bottom: solid 2px #cc5335; margin-bottom: 20px; }
#contents.gallery .tabs-area.photo{ border-bottom: solid 2px #cc5335; }
#contents.gallery .tabs-area.illust{ border-bottom: solid 2px #36a064; }
#contents.gallery ul.tabs{ padding: 0px; clear:both; margin-bottom:0px; padding-left: 4px; padding-right: 4px; }
#contents.gallery ul.tabs li{ display:inline-block; width: calc(50% - 8px); }

#contents.gallery ul.tabs li a{ text-decoration: none; display: block; font-size: 16px; text-align: center;  padding: 15px 0 12px 0; width: 100%; border-radius: 20px 20px 0px 0px; background-color: #fff; color:  #cc5335; border: solid 2px #cc5335; border-bottom: none; }
#contents.gallery ul.tabs li a:hover{ background-color: #f8efec; border: solid 2px #c14222; border-bottom: none; }

#contents.gallery ul.tabs li.select a{ text-decoration: none; display: block; font-size: 16px; text-align: center;  padding: 15px 0 12px 0; width: 100%; border-radius: 20px 20px 0px 0px; background-color: #cc5335; color: #fff; border: solid 2px #cc5335; border-bottom: none; }
#contents.gallery ul.tabs li.select a:hover{ background-color: #c14222; border: solid 2px #c14222; border-bottom: none; }

#contents.gallery ul.tabs li:last-child{ margin-left: 8px; }
#contents.gallery ul.tabs li:last-child a{ border: solid 2px #36a064; border-bottom: none; display: block; font-size: 16px; text-align: center;  padding: 15px 0 12px 0; width: 100%; border-radius: 20px 20px 0px 0px; background-color: #fff; box-sizing: border-box; color:#36a064; }
#contents.gallery ul.tabs li:last-child a:hover{ background-color: #e7f8ef; border: solid 2px #278d53; border-bottom: none; }

#contents.gallery ul.tabs li.select:last-child{ margin-left: 8px; }
#contents.gallery ul.tabs li.select:last-child a{ border: solid 2px #36a064; background-color: #36a064; border-bottom: none; color:#fff; }
#contents.gallery ul.tabs li.select:last-child a:hover{ background-color: #278d53; border: solid 2px #278d53; border-bottom: none; }



/* Gallery ページ */
#contents.gallery{ }
#contents.gallery h1 { padding-left: 0px; margin-bottom:0px; }

/*
#contents.gallery ul.tabs{ border-bottom:solid 1px #5d98cf; height:39px; clear:both; margin-bottom:20px; padding-left:10px; }
#contents.gallery ul.tabs li{ display:inline-block; height:39px; margin-right:4px; float:left; width:100px; }
#contents.gallery ul.tabs li a{ float:left; height:39px; position:relative; width:100px; overflow:hidden; }

#contents.gallery ul.tabs li a img{ position:absolute; bottom:-1px; left:0px; height:39px; width:100px; }
#contents.gallery ul.tabs li a.select{ height:39px; overflow:visible; }
#contents.gallery ul.tabs li a.select img{ position:absolute; bottom:-1px; left:0px; height:40px; width:100px; }

#contents.gallery ul.tabs:after{ content:""; display:block; clear:both; overflow:hidden; visibility:hidden; height:0px; }*/


#contents.gallery .inner ul.riNav{ padding:0px; margin-bottom:15px; padding-top:5px; }
#contents.gallery .inner ul.riNav li{ }
#contents.gallery .inner ul.riNav li a{ padding: 10px 0px; background-color: #363b90; font-size: 16px; color: #fff; width: 180px; display: block; text-align: center; border-radius: 100px; margin-left: auto; margin-right: auto; }
#contents.gallery .inner{ overflow:hidden; }
#contents.gallery .inner .cs{ height:300px; background-image: url(../img/gallery/cs.png); background-position: center center; background-size:40%; background-repeat: no-repeat; }

#contents.gallery .inner ul.thum{ width:110%; margin-bottom:10px; display: flex; flex-wrap: wrap; align-items: stretch; }
#contents.gallery .inner ul.thum li{ margin-right:10px; margin-bottom:10px; width:44.5%; }
#contents.gallery .inner ul.thum:after { display: block; visibility: hidden; clear: both; height: 0; content: "."; line-height: 0; }
#contents.gallery .inner ul.thum li a{ display:block; width:100%; height:100%; position:relative; color:#FFFFFF; background-color: #f6f6f6; text-align: center; }
#contents.gallery .inner ul.thum li a img{ float: none; width:auto; height:auto; max-height: 100%; max-width: 100%; display: inline-block; margin-left: auto; margin-right: auto; vertical-align: top; }
#contents.gallery .inner ul.thum li a span{ position:absolute; bottom:0px; left:0px; display:block; padding:5px; background: -moz-linear-gradient(top, rgba(0,0,0,0) 0%, rgba(0,0,0,0.7) 100%); /* FF3.6-15 */
background: -webkit-linear-gradient(top, rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%); /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.7) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 ); color:#FFFFFF; line-height:1.4em; font-size:9px; }


/* Appページ */
#app{  }
#app #contents h1{ border:none; padding-top:19px; padding-bottom:25px; margin-bottom:0px; }

#oubo #applink{ padding-bottom:25px; padding-top:10px; }
#oubo #applink li{ margin-right:1px; float:left;  width:49.5%; }
#oubo #applink li img{ width:100%; }
#oubo #applink li:last-child{ margin-right:0px; }

/* 応募ページ */
#oubo{}
#oubo #contents .hd{ }
#oubo #contents h1{ border:none; padding-top:0px; padding-bottom:10px; margin-bottom:0px; display:block; width:100%; margin:0px auto; padding:0px; }
#oubo #contents h1 img{ width:100%; height:auto; }

#oubo #contents .inner .box{ padding:20px 10px 20px 10px; border-radius:4px; margin-bottom: 10px; border-radius: 5px; }
#oubo #contents .inner .box h3{ margin-bottom:10px; height:20px; width: 260px; margin-left:auto; margin-right:auto; text-align:left; padding-top: 10px; margin-bottom: 15px; }
#oubo #contents .inner .box h3 img{ height:20px; width:auto; float:none; }

#oubo #contents .inner .box h3{ position:relative; }

#oubo #contents .inner .box h3#ico_ttl1{ width: 260px; margin-left:auto; margin-right:auto; }
#oubo #contents .inner .box h3#ico_ttl2{ width: 260px; margin-left:auto; margin-right:auto; }
#oubo #contents .inner .box h3#ico_ttl3{ width: 260px; margin-left:auto; margin-right:auto; }


#ico_ttl1:before{ content:" "; display:block; width:60px; height:50px; position:absolute; right:10px; top:-0px; background-image:url(../img/oubo/ico_photo.png); background-repeat:no-repeat; background-size:100%; }
#ico_ttl2:before{ content:" "; display:block; width:40px; height:50px; position:absolute; right:20px; top:-3px; background-image:url(../img/oubo/ico_illust.png); background-repeat:no-repeat; background-size:100%; }
#ico_ttl3:before{ content:" "; display:block; width:40px; height:50px; position:absolute; right:20px; top:-3px; background-image:url(../img/oubo/ico_senryu.png); background-repeat:no-repeat; background-size:100%; }

#oubo #contents .inner .box p{ display:block; width:260px; margin:0px auto; line-height:1.5em; font-size:14px; }
#oubo #contents .inner .box p a{ display:inline; width:260px; margin:0px auto; color:#005396; }
#oubo #contents .inner .box p a:after { display:inline; visibility: hidden; clear: both; height: 0; content: "."; line-height: 0; }

#oubo #contents .inner .box a.btn{ display:block; width:260px; margin:0px auto; }
#oubo #contents .inner .box a.btn img{ width:100%; }
#oubo #contents .inner .box a.btn:after { display:block; visibility: hidden; clear: both; height: 0; content: "."; line-height: 0; }

#oubo #contents .inner .app{ background-color: #FFF; background-image: url(../img/oubo/appbase.png); background-repeat: repeat-y; background-size:100%; margin-bottom:15px; border-radius: 5px; overflow: hidden; }
#oubo #contents .inner .app h4{ display:block; width:100%; background-color:#FFF; }
#oubo #contents .inner .app h4 img{ width:100%; }
#oubo #contents .inner .app p{ font-size:14px; text-align:center; margin:15px auto; line-height:1.5em; padding-bottom:0px; }
#oubo #contents .inner .app ul{ text-align:center; width:auto; margin-left:70px; margin-right:70px; }
#oubo #contents .inner .app ul li a{ display:inline-block; }
#oubo #contents .inner .app ul li#googleapp{ display:block; height:auto; margin-bottom:5px; }
#oubo #contents .inner .app ul li#googleapp img{ display:block; height:auto; max-width: 194px; margin-left: auto; margin-right: auto; }

#oubo #contents .inner .app ul li#ithunes{ display:block; height:auto; margin-bottom:20px; margin-top:5px; text-align:center; }
#oubo #contents .inner .app ul li#ithunes img{ display:inline-block; height:auto; width: 194px; margin-left: auto; margin-right: auto; float: none; }
#oubo #contents .inner .app ul li:after{ content:""; display:block; clear:both; overflow:hidden; visibility:hidden; height:0px; }

#oubo #contents .inner .app p small{ font-size:10px; }
#oubo #contents .inner .app:after{ content:""; display:block; width:100%; height:20px; background-image:url(../img/oubo/appft.png); background-size:100%; }
#oubo #contents .hd{ padding: 10px; }

#oubo #contents h2{ padding: 0px; margin-bottom: 0px; }
#oubo #contents h2 img{ width: 100%; height: auto; }

#oubo #contents h2.old{ padding: 0px; margin-bottom: 0px; height: 40px; width: auto; margin-left: 10px; margin-right: 10px; margin-bottom: 5px; }
#oubo #contents h2.old img{ width:auto; height: 40px; }

#oubo #contents .inner{ padding-top: 0px; }
#oubo #contents .inner p.sakunin{ width:100%; margin:0px auto; background-color:#fff; }
#oubo #contents .inner p.sakunin span{ margin:20px 20px; margin-bottom: 0px; display:inline-block; }

#oubo #contents h3.appttl{ border-bottom:none; margin-bottom:10px; margin-top:15px; width:300px; margin-left:auto; margin-right:auto; }
#oubo #contents p.appimg{ width:300px; margin-left:auto; margin-right:auto; font-size:14px; line-height:1.4em; }
/* コンテストページ */
#contest {}
#contest #contents .hd{ padding-top: 30px;  }
#contest #contents h2 { margin-bottom:5px; }
#contest #contents h2 img{ height: 18px; }
#contest #contents .inner{ padding-top: 10px; padding-bottom: 0px; }
#contest #contents .inner ol{ }
#contest #contents .inner ol li{ display:list-item; margin-left:25px;  list-style:decimal; line-height:1.6em; padding-bottom:1em; }
/*ライトボックス */
#pop{ background-color:#008cdc; overflow:hidden !important; padding:0px; margin:0px; }
#pop .photobox{ text-align:left; color:#FFFFFF; padding-top:25px; width:275px; margin-left:auto; margin-right:auto; }
#pop .photobox img{ margin-bottom:13px; width:275px; height:auto; }
#pop .photobox h1{ clear:both; margin-bottom:0px; line-height:1.4em; }
#pop .photobox p{ padding-bottom:0px; margin-bottom:0px; }

.fancybox-close{ display:block; width:20px; height:20px; background-image:url(../img/gallery/close.png); background-size:20px; background-repeat:no-repeat; top:10px; right:10px; }

.bx-wrapper img { float:none; }
.bx-wrapper .bx-pager {
    color: #666;
    font-family: Arial;
    font-size: 0.85em;
    font-weight: bold;
    padding-top: 10px;
    text-align: center;
}
.bx-wrapper .bx-pager, .bx-wrapper .bx-controls-auto {
    bottom: -40px;
    position: absolute;
    width: 100%;
}
iframe.fancybox-iframe,
.fancybox-inner,
.fancybox-outer{ overflow:hidden !important; }

/* 優秀賞ページ */

#pickup{}
#pickup #contents .hd{ padding: 10px; }
#pickup #contents h2{ border:none; padding-top:0px; padding-bottom:10px; margin-bottom:0px; display:block; width:100%; margin:0px auto; padding:0px; }
#pickup #contents h2 img{ width:100%; height:auto; }
#pickup #contents p.thanks{ width: 80%; margin-left: auto; margin-right:auto; padding-top: 10px; padding-bottom: 10px; }
#pickup #contents p.sakunin{ margin-bottom: 15px; padding-bottom: 0px; width: 85%; margin-left: auto; margin-right: auto; }
#pickup #contents p.sakunin:last-of-type{ margin-bottom: 35px; }
#pickup #contents .inner{ padding-top: 10px; }
#pickup #contents .inner .box{ background-color: transparent; padding: 0px; margin:0px auto; }
#pickup #contents .inner .box a.btn{ display:block; width:260px; margin:0px auto; }
#pickup #contents .inner .box a.btn img{ width:100%; float: none; }
