
h1,h2,h3,h4,h5,p,ul,li,dl,dt,dd,th,td{
	padding: 0; margin: 0;box-sizing: border-box;
    font-family: "kosugi maru","メイリオ","ＭＳ Ｐゴシック",sans-serif;}
a{text-decoration: none;}
ul{list-style: none;}
img{vertical-align: bottom}

h2:before{border-bottom: none;}
h1{ border-bottom: none;}
/* ::after{display: none;} */
/*----------------TOP----------------------*/



.top-img{
    height: 600px;
    background-image: url(/event_design/virtual/illust_contest/test/images/top-back.svg);
    /* background-image: url(../test/images/top-back.svg); */
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    position: relative;
    text-align: center;
}

.top-img img{
   width: 300px;
   position: absolute;
   top: 260px;
   left: 50%;
   transform: translateX(-50%);
}

.top-img span{
 font-size: 33px;
}

.top-img p{
    font-size: 26px;
    color: #585858;
    padding-top: 55px;

}

.top-img h1{
    width: 600px;
 font-size: 45px;
 line-height: 1.3;
 color: #585858;
margin: 10px auto 0px;
display: block;
}

/*--------------メインコンテンツ部分------------------*/

.main-contents{
   padding: 20px;
   display: block;
   margin: 0 auto;
}

.container{
    background-image: url(/event_design/virtual/illust_contest/test/images/bgi2.jfif);
    /* background-image: url(../test/images/bgi2.jfif); */
    background-attachment: fixed;
    padding-bottom: 60px;
}

h2::after{
    display: none;
}

.container h2{
    font-size: 29px;
    color: #636363;
    display: block;
    width: 360px;
    text-align: center;
    background-color: #ffffff;
    padding: 20px 0;
    margin: 40px auto;
    box-shadow: 1px 2px 6px rgba(51,51,51,.25);
}

.main-wrapper{
    max-width: 1000px;
    margin: 0 auto;
    background-color: #ffffff;
    box-shadow: 1px 2px 6px rgba(51,51,51,.25);
    margin-top: 0;
   border-bottom: 80px solid #476192;
}



.detail img{
    width: 230px;
}

.flex-box p{
    line-height: 1.7;
    padding: 5px;
    color: #4b4b4b;
    font-weight: 300;
    border-radius: 5px;
}

.flex-box span{
    font-size: 17px;
}

.flex-box{
    margin: 30px auto;
    width: 100%;
    padding: 10px;
}



.detail{
    margin-bottom: 50px;
}

.detail dt{
    font-size: 22px;
    font-weight: 500;
    color: #6d6d6d;
    padding: 14px 15px 10px;
    margin-bottom: 10px;
    margin-top: 50px;
    border-left: 10px solid #476192;
}

.detail dd{
    font-size: 16px;
    color: #333;
    line-height: 1.6;
    padding: 3px;
    margin-left: 15px;
}


.alert dt,.schedule dt{
    font-size: 24px;
    font-weight: 700;
    color: #6b6b6b;
    text-align: center;
    display: block;
    padding: 20px;
    border-bottom: dashed 2px #a5a5a5;
}
.alert dt{margin: 60px auto 30px;}
.schedule dt{margin: 120px auto 30px;}
.alert dd{
    padding-left: 20px;
	line-height: 1.6em;
	background: url(/event_design/virtual/illust_contest/test/images/00164_02.png) left -3px top -1px no-repeat;
	background-size: 23px auto;
}

.sinsa dt{
    font-size: 24px;
    font-weight: 700;
    color: #6b6b6b;
    text-align: center;
    display: block;
    padding: 20px;
    border-bottom: dashed 2px #a5a5a5;
    margin: 130px auto 30px;
}

.sinsa dd{
    font-size: 16px;
    padding-left: 20px;
	line-height: 1.6em;
	background: url(/event_design/virtual/illust_contest/test/images/00164_01.png) left -3px top -1px no-repeat;
	background-size: 23px auto;
}

.sinsa .flex{
    display: flex;
    justify-content: space-between;
}

.sinsa .box1{width: 70%;}
.sinsa .sinsa_img{width: 27%;}
.sinsa .sinsa_img img{width: 100%;}

.schedule dd{ 
    display: block;
    line-height: 1.6;
    font-size: 17px;
}

.schedule a{
    display: block;
    max-width: 400px;
    width: 90%;
    margin: 30px auto 0px;
    padding: 5px;
    line-height: 1.6;
    text-align: center;
    font-size: 19px;
    background-color: #f6c365;;
    border: 4px solid #f8b052;
    border-radius: 15px;
    color: #fff;
    font-weight: 600;
    box-shadow: 1px 2px 6px rgba(51,51,51,.25);
}




.schedule a:hover{
    position: relative;
    top: 3px;
    box-shadow: none;
    opacity: 0.8;
}

.box2{
    margin-top: 120px;
    text-align: center;
}

.box2 img{
    width: 200px;
    display: block;
    margin: 0px auto 60px;
}

.box2 h3{
    font-size: 27px;
    font-weight: 700;
    color: #464646;
    padding: 14px 15px 20px;
    text-align: center;
}

.box2 p{
    text-align: center;
    font-size: 20px;
    font-weight: 700;
    display: inline-block;
    border: 2px solid #808080;
    color: #505050;
    padding: 40px;
    margin: 0 auto 100px;
}

.box3 h4{
    font-size: 20px;
    text-align: center;
    font-weight: 300;
    padding: 10px;
    margin-bottom: 20px;
}

.box3 img{
    width: 380px;
    display: block;
    margin: 0px auto 150px;
}

.box3 p{
    text-align: center;
    font-weight: 400;
    font-size: 33px;
    padding-top: 17px;
}

.box3 span{
    font-size: 19px;
}

.box3 a{
    background-color: #44bccc;
    color: #fff;
    display: block;
    width: 240px;
    height: 200px;
    border-radius: 38% 62% 44% 56% / 46% 52% 48% 54% ;
    padding-top: 50px;
    font-size: 23px;
    font-weight: 600;
    transition:all 0.2s ease-out;
}

.color1{
    width: 30px; height: 30px; background-color: #f581c1; border-radius: 67% 47% 50% 50% / 52% 50% 49% 47%;
}

.color2{
    width: 43px; height: 43px; background-color: #f79b45; border-radius: 53% 47% 50% 50% / 52% 50% 42% 47%;
}


.color3{
    width: 43px; height: 43px; background-color: #ff7373; border-radius: 67% 47% 50% 50% / 52% 50% 49% 47% ;
}


.color4{
    width: 30px; height: 30px; background-color: #c683e0; border-radius: 67% 47% 58% 50% / 50% 50% 45% 47% ;
}


.box3 a:hover{
    border-radius: 54% 46% 48% 52% / 48% 48% 52% 52% ;;
    background-color: #c2d844;
}

.border{
 color: #6d6d6d;
}



.flex-box2{
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}

.flex-box2 div{
    margin-top: 60px;
    margin-right: 25px;
   margin-left: 25px;
}

.none{
    display: none;
}


.text p{
font-size: 21px;
position: relative;
top: -55px;
color: #5f5f5f;
}

.box4{
    display: flex;
    justify-content: space-between;
	margin:0 auto;
	width:100%;
    max-width: 800px;
}

/**.box4-1 a{
    background-color: rgb(255, 158, 206);
    border: 4px solid #e977c3;
    border-radius: 10px;
    display: block;
    line-height: 2;
    color: #ffffff;
    margin: 10px;
    text-align: center;
    box-shadow: 1px 2px 6px rgba(51,51,51,.25);
}**/
.box4 p {width: 50%;margin: 20px 5px 30px;}
.box4 p a{
    width: 100%;
    background-color: rgb(255, 158, 206);
    border: 4px solid #e977c3;
    border-radius: 8px;
    display: block;
    line-height: 1.7;
    color: #ffffff;
    text-align: center;
    box-shadow: 1px 2px 6px rgba(51,51,51,.25);
	font-weight: 500;
    font-size: 18px;
}
/**.box4-1 p{
    font-weight: 500;
    font-size: 20px;
}**/

/**.box4-1 a:hover{
    opacity: 0.8;
}**/
.box4 p a:hover{
    opacity: 0.8;
}
/* 
.kirakira{
    background-image: url(/event_design/virtual/illust_contest/test/images/kirakira.png);
 background-repeat: no-repeat;
 background-size: contain;
    height: 260px;
   position: relative;
} */
.kirakira{
	width:80%;
	height:auto;
	margin:10px auto;
}
.kirakira img{
width:50%;
margin: 0 auto;
object-fit:contain;
display: block;
text-align:center;
}

.small{font-size: 13px;}
@media screen and (max-width: 500px){

/*----------------TOP----------------------*/
.main-contents{padding: 10px;}
.none{
    display: block;
}

.top-img{
    height: 400px;
}

.top-img img{
    width: 190px;
   position: absolute;
   top: 180px;
   left: 50%;
   transform: translateX(-50%);
}

.top-img p{
    font-size: 18px;
    padding-top: 55px;
}

.top-img h1{
    width: 90%;
    text-align: center;
 font-size: 26px;
 line-height: 1.3;
margin-top: 0;
}

/*--------------メインコンテンツ部分------------------*/

.main-contents{
    width: 100%;
    display: block;
    margin: 0 auto;
 }

.container{
    background-attachment: fixed;
    padding-bottom: 60px;
}

.container h2{
    font-size: 20px;
    display: block;
    width: 65%;
    text-align: center;
    padding: 15px 0;
}

.main-wrapper{
    width: 91%;
    margin: 0 auto;
   background-color: #ffffff;
    margin-top: 0;
}

.detail dt{
    font-size: 17px;
    padding: 5px;
    margin-top: 20px;
    border-left: 5px solid #aab5da;
}

.detail{
    margin-bottom: 80px;
    padding-top: 10px;
}

.detail dl dd{
    font-size: 13px;
    margin-left: 10px;
}


.flex-box p{
    line-height: 1.5;
    font-size: 13px;
    text-align: left;
}

.flex-box{
    margin: 30px auto;
    width: 98%;
   padding:3px;
}

.sinsa{
    margin-bottom: 30px;
}

.sinsa dt{
    font-size: 20px;
    margin: 0 auto 30px;
    padding: 10px;
}

.sinsa dd{
    font-size: 13px;
    margin-left: 10px;
}

.sinsa .flex{
    display: block;
    justify-content: start;
}

.sinsa .box1{width: 100%;}
.sinsa .sinsa_img{width: 80%;margin: 30px auto 0px;}


.alert dt{margin: 30px auto 30px;font-size: 20px;padding: 10px;}
.schedule dt{margin: 50px auto 30px;font-size: 20px;padding: 10px;}

.alert dd{
    font-size: 13px;;
}

.schedule{
    margin-top: 70px;
}

.schedule dd{ 
    display: block;
    margin: 0px auto;
    line-height: 1.6;
    font-size: 13px;
}

.schedule a{
    display: block;
    margin: 30px auto 0px;
    padding: 5px;
    line-height: 1.6;
    text-align: center;
    font-size: 14px;
    border-radius: 10px;
    font-weight: 600;
}

.schedule a:hover{
    opacity: 0.5;
}
.box2{
    margin-top: 80px;
    text-align: center;
}

.box2 img{
    width: 150px;
    display: block;
    margin: 0px auto 50px;
}


.box2 h3{
    font-size: 20px;
    font-weight: 700;
    padding: 14px 15px 20px;
    margin: 20px auto 0px;
    text-align: center;
}

.box2 p{
    text-align: center;
    line-height: 1.5;
   font-size: 15px;
   font-weight: 700;
  display: inline-block;
  padding: 40px;
  margin: 0px 0px 50px 0px;
}

.box3 h4{
    font-size: 18px;
    text-align: center;
    font-weight: 300;
    padding: 10px;
    margin-bottom: 20px;
}

.box3 img{
    width: 380px;
    display: block;
    margin: 0px auto 150px;
}

.box3 p{
    text-align: center;
    font-weight: 400;
    font-size: 23px;
    padding-top: 5px;
    line-height: 1;
}

.box3 span{
    font-size: 19px;
}

.box3 a{
    display: block;
    width: 160px;
    height: 130px;
    border-radius: 38% 62% 44% 56% / 46% 52% 48% 54% ;
    padding-top: 40px;
    font-size: 23px;
    font-weight: 600;
    transition:all 0.2s ease-out;
    
}

.color1{
    width: 20px; height: 20px; background-color: #f581c1; border-radius: 67% 47% 50% 50% / 52% 50% 49% 47%;
}

.color2{
    width: 30px; height: 30px; background-color: #f79b45; border-radius: 53% 47% 50% 50% / 52% 50% 42% 47%;
}


.color3{
    width: 30px; height: 30px; background-color: #ff7373; border-radius: 67% 47% 50% 50% / 52% 50% 49% 47% ;
}


.color4{
    width: 20px; height: 20px; background-color: #c683e0; border-radius: 67% 47% 58% 50% / 50% 50% 45% 47% ;
}

.box3 a:hover{
    width: 150px;
    height: 130px;
    border-radius: 54% 46% 48% 52% / 48% 48% 52% 52% ;
    background-color: #c2d844;
}

.text p{
    font-size: 17px;
    position: relative;
    top: -50px;
    }

.border{
 color: #6d6d6d;
}


.flex-box2{
 
    display: flex;
    justify-content: center;
    margin-bottom: 50px;
}

.flex-box2 div{
    margin-top: 50px;
    margin-right: 10px;
   margin-left: 10px;
   
}


    .text2 p{
    
        font-size: 16px;
        font-weight: 400;
        padding-left: 10px;
        margin-bottom: 10px;
    }
    
    
 /**   .box4-1{
        width: 70%;
    }**/
    .box4 p {width: 48%;margin: 20px 5px 30px;}
    .box4 p a{
        line-height: 1;
        padding: 10px 0 10px;
        font-size: 13px;
        border: 2px solid #e977c3;
    }
 /**   .box4-1 a{
        line-height: 2;
        color: #ffffff;
     }

    .box4-1 p{
        font-weight: 500;
        font-size: 17px;
    }**/
.kirakira{width:100%;}
.kirakira img{
	width:100%;
	}

.box3 .small{font-size: 13px;}
}

@media screen and (max-width: 350px){
    .top-img p{
        font-size: 16px;
        padding-top: 55px;
    }
    
    .top-img h1{
     font-size: 22px;
     line-height: 1.3;
    margin-top: 0;
    }

}