@charset "UTF-8";

body {
    color: #565656;
}

#wrapper {
    position: relative;
}

/* ----------------------------------------------------------------
    keyV
----------------------------------------------------------------- */

#keyV {
    background-image: url(/csr/photocontest/img/common/keyv.png), url(/csr/photocontest/img/common/keyv-bg.png);
    background-repeat: no-repeat, repeat-x;
    background-position: center, 0 0;
    height: 450px;
    position: relative;

}

#keyV .application {
    width: 247px;
    margin: 0 auto;
    padding-top: 300px;
}

/* ----------------------------------------------------------------
    information
----------------------------------------------------------------- */
#information {
    margin: 45px auto 0;
    background: #fff;
    border: dashed 1px #707070;
    padding: 15px;
    display: flex;
    align-items: center;
}

#information h2 {
    margin-left: 20px;
    margin-top: 8px;
}

#information ul {
    margin-left: 30px;
}

#information li {
    padding-top: 15px;
}

#information .md,
#information .text {
    display: inline-block;
    vertical-align: top;
}

#information .md {
    padding-right: 15px;
}

#information .info01 {
    padding-bottom: 12px;
    border-bottom: solid 1px #707070;
}

#information .info02 {
    padding-top: 12px;
    padding-bottom: 12px;
}

#information a {
    display: inline-block;
}

/* ----------------------------------------------------------------
    MainTextArea
----------------------------------------------------------------- */
#MainTextArea {
    margin-top: 75px;
    color: #303030;
    text-align: center;
}

#MainTextArea .maintext {
    margin-bottom: 20px;
}

#MainTextArea .maintext img{
    max-width: 100%;
}

#MainTextArea .total {
    margin-bottom: 20px;
    font-weight: bold;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

#MainTextArea .total .red {
    color: #fe3737;
    font-size: 150%;
}

#MainTextArea .text {
    text-align: center;
}

/* ----------------------------------------------------------------
    Contents
----------------------------------------------------------------- */
.contentsTitle{
    display: block;
    margin: 80px auto 0;
}

#elementaryschool h3 {
    background: url(/csr/photocontest/img/common/title-bg-01.png) repeat-x center;
    font-size: 150%;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
    margin-top: 30px;
}

#juniorhighschool h3 {
    background: url(/csr/photocontest/img/common/title-bg-02.png) repeat-x center;
    font-size: 150%;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
    margin-top: 80px;
}

#highschool h3 {
    background: url(/csr/photocontest/img/common/title-bg-03.png) repeat-x center;
    font-size: 150%;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
    margin-top: 80px;
}

#special h3 {
    background: url(/csr/photocontest/img/common/title-bg-04.png) repeat-x center;
    font-size: 150%;
    color: #fff;
    text-align: center;
    font-weight: bold;
    padding: 20px 0;
    margin-top: 80px;
}

#elementaryschool .box,
#juniorhighschool .box,
#highschool .box,
#special .box {
    border: solid 1px #a0a0a0;
    border-radius: 5px;
    padding: 30px;
    margin: 15px;
    background-color: #fff;
}

#elementaryschool .flex,
#juniorhighschool .flex,
#highschool .flex,
#special .flex {
    display: flex;
}

p.gp:before,
p.jgp:before,
p.fjf:before,
p.asahi:before,
p.epson:before,
p.hbs:before {
    content: url(/csr/photocontest/img/common/icon-crown-l.png);
    padding-right: 10px;
}

p.gp:after,
p.jgp:after,
p.fjf:after,
p.asahi:after,
p.epson:after,
p.hbs:after {
    content: url(/csr/photocontest/img/common/icon-crown-l.png);
    padding-left: 10px;
}

p.gp {
    text-align: center;
    font-weight: bold;
    font-size: 180%;
    color: #c8af3d;
    padding-bottom: 30px;
}

p.jgp {
    text-align: center;
    font-weight: bold;
    font-size: 180%;
    color: #9d9d9d;
    padding-bottom: 30px;
}

p.fjf,
p.asahi,
p.epson,
p.hbs {
    text-align: center;
    font-weight: bold;
    font-size: 180%;
    color: #fb6c9c;
    padding-bottom: 30px;
}

.box .left {
    margin-right: 30px;
    width: 500px;
}

.box .right {
    width: 360px;
}

#elementaryschool .box .left img,
#juniorhighschool .box .left img,
#highschool .box .left img,
#special .box .left img {
    max-width: 500px;
    max-height: 440px;
    margin: auto;
    display: block;
}

#elementaryschool .box .left a,
#juniorhighschool .box .left a,
#highschool .box .left a,
#special .box .left a {
    position: relative;
}

#elementaryschool .box .overlay,
#juniorhighschool .box .overlay,
#highschool .box .overlay,
#special .box .overlay {
    width: 100%;
    height: 100%;
    position: absolute;
    background: url(/csr/photocontest/img/common/overlay.png) no-repeat 50% 50%;
    top: 0;
    left: 0;
    opacity: 0;
    webkit-transition: opacity .3s linear;
    -moz-transition: opacity .3s linear;
    o-transition: opacity .3s linear;
    transition: opacity .3s linear;
    filter: alpha(opacity=0);
}

#elementaryschool .box .left a:hover,
#juniorhighschool .box .left a:hover,
#highschool .box .left a:hover,
#special .box .left a:hover {
    opacity: 0.8;
}

#elementaryschool .box .left .overlay:hover,
#juniorhighschool .box .left .overlay:hover,
#highschool .box .left .overlay:hover,
#special .box .left .overlay:hover {
    opacity: 1;
    filter: alpha(opacity=100);
}


#elementaryschool .box .tit,
#juniorhighschool .box .tit,
#highschool .box .tit,
#special .box .tit {
    text-align: center;
    color: #000;
    font-weight: bold;
    font-size: 125%;
    padding-bottom: 30px;
}

#elementaryschool .box .name,
#juniorhighschool .box .name,
#highschool .box .name,
#special .box .name {
    text-align: center;
    padding-bottom: 30px;
}

#elementaryschool .box .txt,
#juniorhighschool .box .txt,
#highschool .box .txt,
#special .box .txt {
    font-size: 87%;
}

#elementaryschool .list,
#juniorhighschool .list,
#highschool .list,
#special .list {
    text-align: right;
    font-size: 88%;
    padding-right: 15px;
    height: 15px;
}

#elementaryschool .list:before,
#juniorhighschool .list:before,
#highschool .list:before,
#special .list:before {
    content: url(/csr/photocontest/img/common/icon-camera.png);
    padding-right: 10px;
    vertical-align: middle;
}


#elementaryschool .list a,
#juniorhighschool .list a,
#highschool .list a,
#special .list a {
    text-decoration: underline;
    color: #303030;
    display: inline-block;
}