@charaset"UTF-8";
:root{
	--color_main:#84d634;
	--color_over:#f2cc35;
	}

/* 360 *//* ------- */@media print, screen and (max-width:360px){}
/* 400 *//* ------- */@media print, screen and (min-width:400px){}
/* 768 *//* ------- */@media print, screen and (min-width:768px){}
/* 980 *//* ------- */@media print, screen and (min-width:980px){}

/* -------------------------------------------------------------- */
/* #mainvisual */
/* -------------------------------------------------------------- */
#mainvisual *{margin:0;padding:0;}
#mainvisual{
	background:url('./image/mainvisual_back.png') repeat-x 50% 50% #f0f0f0;
	background-size:auto cover;
	}
#mainvisual h1{margin:0 auto;}

/* 768 *//* ------- */@media print, screen and (min-width:768px){#mainvisual h1 img{width:100%;}}
/* 980 *//* ------- */@media print, screen and (min-width:980px){#mainvisual h1 img{width:auto;}}

/* -------------------------------------------------------------- */
/* #contents */
/* -------------------------------------------------------------- */
#contents{padding-top:30px;background:none;}

/* -------------------------------------------------------------- */
/* #lead */
/* -------------------------------------------------------------- */
#lead *{margin:0;padding:0;}
#lead{
	margin:0 auto 40px;
	}
#lead .inner{
	margin:0 auto;
	width:var(--size_sp);
	}

#lead P{
	margin:0 0 20px;
	font-weight:500;
	}
#lead p.news{
	margin:0 auto;
	padding:0 0 0 20px;
	position:relative;
	line-height:1.4;
	text-align:left;
	}
#lead p.news span{color:var(--color_main);}
#lead p.news span:after{
	content:'';
	position:absolute;
	left:0;
	top:3px;
	height:0;
	width:0;
	border-top:10px solid var(--color_main);
	border-left:6px solid var(--color_main);
	border-right:6px solid var(--color_main);
	border-bottom:6px solid transparent;
	}

/* 360 *//* ------- */@media print, screen and (max-width:360px){#lead .inner{width:var(--size_sp_s);}}
/* 400 *//* ------- */@media print, screen and (min-width:400px){#lead .inner{width:var(--size_sp_l);}}
/* 768 *//* ------- */@media print, screen and (min-width:768px){
#lead .inner{width:var(--size_tab);}
#lead p.news br{display:none;}
}/* ------- */

/* 980 *//* ------- */@media print, screen and (min-width:980px){
#lead .inner{width:calc(var(--size_pc) - 140px);}
}/* ------- */

/* -------------------------------------------------------------- */
/* #about */
/* -------------------------------------------------------------- */
#about *{margin:0;padding:0;}
#about{
	margin:0 auto 80px;
	background:#f0f0f0;
	}
#about .inner{
	margin:0 auto;
	padding:20px 0;
	width:var(--size_sp);
	}

#about h2{
	margin:0 0 10px;
	color:var(--color_main);
	font-size:30px;
	text-align:center;
	}
#about h2 span{}

#about h3{
	margin:0 0 20px;
	line-height:1.3;
	color:var(--color_main);
	text-align:center;
	font-size:14px;
	}
#about h3 span{
	display:block;
	font-size:20px;
	}

#about div{}
#about dl{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	font-weight:500;
	}
#about dt{
	margin:0 0 12px;
	border-radius:12px;
	width:80px;
	height:24px;
	color:#fff;
	background:var(--color_main);
	text-align:center;
	}
#about dd{
	margin:0 0 12px;
	width:240px;
	}

#about dd p{
	padding:6px 0 0;
	position:relative;
	}
#about dd a{
	padding:0 14px 0 0;
	position:relative;
	line-height:1;
	color:var(--color_base);
	transition:all .3s;
	font-weight:500;
	}
#about dd a::before,
#about dd a::after{
	margin:auto;
	content:"";
	position:absolute;
	top:10px;
	right:0;
	width:8px;
	height:2px;
	border-radius:100px;
	background:var(--color_base);
	transform-origin:calc(100% - 1px) 50%;
	transition:all .3s;
	}
#about dd a::before{transform:rotate(45deg);}
#about dd a::after{transform:rotate(-45deg);}

@media (hover:hover){
#about dd a:hover{color:var(--color_over);}
#about dd a:hover::before,
#about dd a:hover::after{
	right:-6px;
	background:var(--color_over);
	}
}

/* 360 *//* ------- */@media print, screen and (max-width:360px){
#about .inner{width:var(--size_sp_s);}
#about dt{
	width:20%;
	height:20px;
	}
#about dd{width:78%;}
}/* ------- */

/* 768 *//* ------- */@media print, screen and (min-width:768px){
#about{margin:0 auto 120px;}
#about .inner{width:var(--size_tab);}
#about h2{font-size:30px;}
#about h3{font-size:14px;}
#about h3 span{font-size:24px;}

#about dt{width:100px;}
#about dd{width:calc(var(--size_tab) - 120px);}

#about .inner div{}
#about .inner:after{right:60px;}
#about dd a::before,
#about dd a::after{top:11px;}
}/* ------- */

/* 980 *//* ------- */@media print, screen and (min-width:980px){
#about .inner{width:calc(var(--size_pc) - 140px);}
#about dt{
	border-radius:14px;
	height:28px;
	}
#about dd{width:calc(var(--size_pc) - 270px);}
}/* ------- */

/* -------------------------------------------------------------- */
/* #result */
/* -------------------------------------------------------------- */
#result *{margin:0;padding:0;}
#result{
	margin:0 auto 60px;
	}

#result h2{
	margin:0 auto 60px;
	position:relative;
	text-align:center;
	font-size:30px;
	font-weight:350;
	}

#result h2 span{
	border-radius:50%;
	position:absolute;
	top:-15px;
	right:calc(50% - 140px);
	display:flex;
	justify-content:center;
	align-items:center;
	width:54px;
	height:54px;
	line-height:1.1;
	color:#fff;
	background:var(--color_main);
	font-size:17px;
	font-weight:500;
	}

#result .award{
	margin:0 auto 65px;
	border:1px solid #c3a75b;
	width:var(--size_sp);
	background:#fff;
	box-sizing:border-box;
	}
#result .award .headline{
	position:relative;
	padding:0 10px;
	}
#result .award .headline::before{
	position:absolute;
	content:' ';
	left:0;
	right:0;
	top:-40px;
	display:block;
	background:url('./image/award.png') no-repeat 50% 0;
	background-size:25%;
	width:100%;
	height:80px;
	}

#result .award .headline h3{
	margin:0;
	padding:50px 0 20px;
	line-height:1.3;
	text-align:center;
	}
#result .award .headline h3 a{
	position:relative;
	color:var(--color_base);
	display:inline-block;
	}
#result .award .headline h3 a::after{
	content:'';
	position:absolute;
	top:auto;
	bottom:-3px;
	left:0;
	width:100%;
	height:1px;
	background:#6eb92b;
	transform:scaleX(0);
	transition: all .3s;
	}
@media (hover:hover){#result .award .headline h3 a:hover::after{transform:scaleX(1);}}

#result .award .headline h4{
	margin:0 0 3px;
	padding:5px 0;
	border-top:1px solid #eee;
	border-bottom:1px solid #eee;
	line-height:1.4;
	text-align:center;
	position:relative;
	}
#result .award .headline h4::after{
	border-radius:50%;
	position:absolute;
	top:-18px;
	left:0;
	content:'優勝';
	width:44px;
	height:44px;
	line-height:44px;
	color:#fff;
	background:linear-gradient(15deg, #f8cf61, #c3a75b); 
	font-size:15px;
	font-weight:400;
	transform:rotate(-10deg);
	z-index:5;
	}

#result .award .headline h4 em{
	font-style:normal;
	position:relative;
	}

#result .award .headline h4 span{
	font-weight:normal;
	font-size:13px;
	}

#result .award .headline p{
	font-size:14px;
	text-align:right;
	}

#result .movie{
	margin:0 auto;
	padding:0;
	position:relative;
	text-align:center;
	height:190px;
	}

#result .movie p,#result .movie iframe{
	margin:0 auto;
	width:calc(var(--size_sp) - 2px);
	height:190px;
	cursor:pointer;
	}

#result .movie p::before{
	margin:auto;
	content:" ";
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	right:0;
	left:0;
	width:70px;
	height:70px;
	background:url('/image/ic_movie.png') no-repeat 50% 50%;
	cursor:pointer;
	}
#result .nomovie p::before{display:none;}

#result .detail p{
	margin:0 auto;
	width:var(--size_sp);
	text-align:center;
	}

#result .award .winner{
	margin:0 20px;
	background:url('./image/award_medal.png') no-repeat 0 0;
	}
#result .award .winner dl{
	margin:0 0 10px;
	padding:0 0 10px;
	border-bottom:1px dotted #c3a75b;
	}
#result .award .winner dt{
	padding:22px 0 5px 32px;
	font-weight:bold;
	font-weight:18px;
	color:#c3a75b;
	}

#result .award .winner .comment{
	margin:0;
	border:none;
	}
#result .award .winner .comment dt{
	padding:0 0 5px;
	color:var(--color_main);
	}

/* 360 *//* ------- */@media print, screen and (max-width:360px){
#result .award{width:var(--size_sp_s);}
#result .movie p,#result .movie iframe{
	width:100%;
	height:100%;
	}
#result .movie{height:100%;}
}/* ------- */

/* 400 *//* ------- */@media print, screen and (min-width:400px){
#result .award{width:var(--size_sp_l);}
#result .movie{height:213px;}
#result .movie p,#result .movie iframe{
	width:calc(var(--size_sp_l) - 2px);
	height:213px;
	}
}/* ------- */

/* 768 *//* ------- */@media print, screen and (min-width:768px){
#result .award{
	margin:0 auto 120px;
	width:var(--size_tab);
	}
#result .award .headline::before{
	background-size:16%;
	top:-60px;
	height:100px;
	}
#result .movie{
	padding:10px 0 0;
	background-size:100%;
	height:315px;
	}
#result .movie p,#result .movie iframe{
	width:560px;
	height:315px;
	}

#result .award .winner{
	margin:0 auto;
	width:560px;
	}
#result .award .winner{padding-bottom:10px;}
}/* ------- */

/* 980 *//* ------- */@media print, screen and (min-width:980px){
#result{
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
	width:var(--size_pc);
	}
#result h2{width:100%;}
#result .award{
	margin:0 0 120px;
	width:calc( var(--size_pc) / 2 - 20px);
	}
#result .award:nth-of-type(odd){margin-right:40px;}

#result .award .headline::before{
	background-size:25%;
	height:200px;
	}
#result .movie{height:263px;}
#result .movie p,#result .movie iframe{
	width:calc( var(--size_pc) / 2 - 22px);
	height:263px;
	}
#result .award .winner{
	margin:0 20px;
	padding-bottom:0;
	width:auto;
	}
}/* ------- */

/* -------------------------------------------------------------- */
/* #general */
/* -------------------------------------------------------------- */
#general *{margin:0;padding:0;}
#general{
	margin:0 auto 20px;
	padding:50px 0;
	background:url('./image/general_back.jpg') no-repeat 50% 100% #eee;
	background-size:120%;
	}
#general .inner{
	margin:0 auto;
	width:var(--size_sp);
	}
#general p{
	color:var(--color_main);
	font-size:15px;
	font-weight:800;
	}

/* 360 *//* ------- */@media print, screen and (max-width:360px){
#general .inner{width:var(--size_sp_s);}
}/* ------- */

/* 400 *//* ------- */@media print, screen and (min-width:400px){
#general .inner{width:var(--size_sp_l);}
}/* ------- */

/* 768 *//* ------- */@media print, screen and (min-width:768px){
#general{
	padding:60px 0;
	background-size:100%;
	}
#general .inner{width:var(--size_tab);}
#general p{
	font-size:16px;
	}
}/* ------- */

/* 980 *//* ------- */@media print, screen and (min-width:980px){
#general{
	padding:90px 0;
	background-size:auto;
	}
#general .inner{width:var(--size_pc);}
#general p{
	font-size:20px;
	text-align:center;
	}
}/* ------- */
/* -------------------------------------------------------------- */