@charset "UTF-8";
/* Eric Meyer's Reset CSS v2.0 - http://cssreset.com */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { border: 0; vertical-align: baseline; margin: 0; padding: 0; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: none; }

table { border-collapse: collapse; border-spacing: 0; }

ruby rt { margin-bottom: -0.3rem; }

@media screen and (max-width: 767px) {
	header{ position: relative; }
}

/* 新旧テンプレ用調整
/*---------------------*/

.template__old ol,
.template__old ul {
	padding: 0;
}
.template__old h2,
.template__old h3 {
	line-height: revert;
}

/* アイコン・ボタンなどのスプライト
/*---------------------*/
.fix-sprite, .pagetop:before, .gnav--sub-menu li:before, .gnav--sub-menu li li:before, .pankuzu-list > li:before, .common-sitemap--inner dd:before, .common-sitemap--inner dd li:before, .btn--apply-dl, .btn--music-dl, .btn--tool-student-dl, .btn--tool-teacher-dl, .btn--ceremony, .btn--award, .btn--2ndContest, .btn--1stContest, .btn--ceremony-gold, .btn--ceremony-silver, .btn--ceremony-copper, .content-nav > li:before, [class^=sect-ttl--]:before, .req-flow-list > li:before, .sect-ttl-ribbon, .sect-inner-ttl-ribbon, .faq-list dt:before, .faq-list dt:after, .faq-list dd:before { background-image: url('../img/fix.png'); background-repeat: no-repeat; }

/* 飾り線などのスプライト
/*---------------------*/
.repeatX-sprite, [class^=page-ttl--]:after, .sect-inner-ttl--green:after, .sect-inner-ttl--orange:after, .sect-inner-ttl--red:after, .sect-inner-ttl--blue:after, .sect-inner-ttl--pink:after, .point-video-area:before, .contest-video-area-special:before, .contest-team-name--gold:after, .contest-team-name--silver:after, .contest-team-name--copper:after, .contest-team-name--ex:after, .award-name-list--en td:after, .award-name-list--fight td:after, .award-name-list--praise td:after, .award-name-list--school td:after, .award-name-list--team td:after, .award-name-list--special td:after, .ttl-judges-message:after { background-image: url('../img/repeatX.png'); background-repeat: no-repeat; }

/* common
/*---------------------*/
/* img, video { vertical-align: bottom; } */

/* body a:link, .content-nav > li a:link { color: #333 !important;} */
/* body a:visited, .content-nav > li a:visited { color: #333; } */
body a:hover, .content-nav > li a:hover { color: #666666; text-decoration: none !important; }
body a:active, .content-nav > li a:active { color: #666666; }

.contents-wrapper a:link, .top--main a:link { color: #F70; }
.contents-wrapper a:visited, .top--main a:visited { color: #F70; }
.contents-wrapper a:hover, .top--main a:hover { color: #ffad66; text-decoration: none; }
.contents-wrapper a:active, .top--main a:active { color: #ffad66; }

.top--main .news-txt a:link { color: #28b3f3; }
.top--main .news-txt a:visited { color: #28b3f3; }
.top--main .news-txt a:hover { color: #28b3f3; text-decoration: none; }
.top--main .news-txt a:active { color: #28b3f3; }

body .template__old { /*min-width: 1080px;*/ font-family: 'メイリオ',Osaka,'ヒラギノ角ゴ Pro W3',Arial,Helvetica,sans-serif; color: #333; line-height: 1.7; -webkit-text-size-adjust: 100%; }
body.small { font-size: 14px; }
body.middle { font-size: 16px; }
body.large { font-size: 18px; }

[class^=notes] { font-size: 0.75em; margin-top: 5px; }

main{ background: #FEEBCB; max-width: 1200px;}

.fs--third-ttl { font-size: 1.25em; }

.sp { display: none; }
.pc { display: block; }
@media (max-width: 768px){.pc{display: none !important;}}

.pie-js { position: relative\9; }

.bold { font-weight: bold; }
.underline { text-decoration: underline; }

.red { color: #E71227; }

.tal { text-align: left; }
.tar { text-align: right; }
.tac { text-align: center; }

.mt0 { margin-top: 0px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt40 { margin-top: 40px; }

.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb25 { margin-bottom: 25px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb50 { margin-bottom: 50px; }
.mb80 { margin-bottom: 80px; }

.pt10 { padding-top: 10px; }
.pt15 { padding-top: 15px; }
.pt20 { padding-top: 20px; }
.pt25 { padding-top: 25px; }
.pt30 { padding-top: 30px; }
.pt40 { padding-top: 40px; }

.pb10 { padding-bottom: 10px; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px; }
.pb25 { padding-bottom: 25px; }
.pb30 { padding-bottom: 30px; }

/* 既存のスタイル解除 */
.customer1 tbody th{
	width: auto;
	min-width: 0;
}

.pagetop { display: inline-block; padding-left: 23px; position: relative; }
.pagetop:before { content: ""; display: inline-block; background-position: 0 -35px; height: 11px; width: 16px; background: url('../img/fix.png') 0 -50px no-repeat; position: absolute; left: 0; top: 3px; }

@media screen and (max-width: 767px) {
	body .template__old {
		min-width: 320px;
	}
	img {
		border: none;
		max-width: 100%;
	}
}

/* 左右余白調整 */
.customer1 .container{
	padding-right: 0 !important;
	padding-left: 0 !important;
	width: 100%;
	max-width: none !important;
}

/* ヘッダー横幅 */
/* ↓ 2019/02/21 add */
@media (max-width: 767px) {
  header .container {
    padding-right: 8px;
    padding-left: 8px;
  }
}

@media (min-width: 576px) {
  header .container {
    max-width: 540px;
  }
}

@media (min-width: 768px) {
  header .container {
    max-width: 720px;
  }
}

@media (min-width: 992px) {
  header .container {
    max-width: 960px;
  }
}

@media (min-width: 1230px) {
  header .container {
    /*max-width: 1140px;*/
    max-width: 1230px;
  }
}

/* jp-header
/*---------------------*/
.jphdr { background: #000099; height: 44px; text-align: center; }
.jphdr .jphdr--inner { width: 980px; margin: 0 auto; padding: 0; display: block; *zoom: 1; }
.jphdr .jphdr--inner:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.jphdr .jphdr-logo--kampo { display: block; float: left; }
.jphdr .jphdr-logo--yusei { display: block; float: right; }

@media screen and (max-width: 767px) {
	.jphdr {
		position: relative;
		z-index: 20;
	}
	.jphdr .jphdr--inner {
		width: 100%;
	}
	.jphdr .jphdr-logo--kampo {
		margin-right: 220px;
	}
	.jphdr .jphdr-logo--yusei {
		display: none;
	}
}

/* common--header
/*---------------------*/
.common-header { background: #41baff; position: relative; z-index: 100; }

.common-header--inner { width: 980px; margin: 0 auto; padding: 12px 0 30px; display: block; *zoom: 1; position: relative; }
.common-header--inner:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }

.common-header--logo { margin-bottom: 15px; }

@media screen and (max-width: 767px) {
	.common-header--inner { 
		width: 100%;
		padding: 2px 0 5px; 
	}
	.common-header--logo {
		margin-top: 22px;
		text-align: center;
		padding: 0 10px;
	}
}
@media screen and (max-width: 374px) {
	.common-header--logo {
		margin-top: 30px;
	}
}

/* gloval nav
/*---------------------*/
.gnav { -webkit-border-radius: 30px; -moz-border-radius: 30px; -ms-border-radius: 30px; border-radius: 30px; display: block; *zoom: 1; -webkit-box-shadow: 0 2px 5px #0075AB; -moz-box-shadow: 0 2px 5px #0075AB; -ms-box-shadow: 0 2px 5px #0075AB; box-shadow: 0 2px 5px #0075AB; background: url('../img/gnav__bg.png') repeat-x 0 0 #FFD304; }
.gnav:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.gnav > li { width: 16.666%; float: left; position: relative; font-size: 0; background: url('../img/gnav__bg.png') repeat-x 0 0 #FFD304; }
.gnav > li:first-child { -webkit-border-radius: 30px 0 0 30px; -moz-border-radius: 30px 0 0 30px; -ms-border-radius: 30px 0 0 30px; border-radius: 30px 0 0 30px; }
.gnav > li:last-child { -webkit-border-radius: 0 30px 30px 0; -moz-border-radius: 0 30px 30px 0; -ms-border-radius: 0 30px 30px 0; border-radius: 0 30px 30px 0; }
.gnav > li:last-child .gnav--sub-menu { left: auto; right: 0; }
.gnav > li:last-child .gnav--sub-menu:before { left: auto; right: 40px; }
.gnav > li:hover, .gnav > li.current { background-position: left bottom; }
.gnav > li.disable:hover { background-position: 0 0; }

[class^=gnav-btn] { text-align: center; line-height: 60px; display: block; }
[class^=gnav-btn] img { vertical-align: middle; }

.gnav--sub-menu { position: relative; display: none; /*min-width: 143px; max-width: 143px;*/ width: 225px;/*4列*/ /*width: 175px;*//*5列*/ /*width: 143px;*/ /*6列*/ padding: 10px; background: #FFF; position: absolute; top: 70px; left: 0px; z-index: 10; font-size: 14px; line-height: 1.5; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; -webkit-box-shadow: 0 2px 5px #777; -moz-box-shadow: 0 2px 5px #777; -ms-box-shadow: 0 2px 5px #777; box-shadow: 0 2px 5px #777; }
.gnav--sub-menu.is-typeB { width: 190px; }
.gnav--sub-menu:before { content: ""; width: 0; height: 0; display: block; border: solid transparent; border-width: 5px; position: absolute; border-bottom-color: #FFF; left: 40px; top: -10px; }
.gnav--sub-menu li { text-indent: -14px; padding-left: 14px; line-height: 1.5; margin-top: 5px; }
.gnav--sub-menu li:first-child { margin-top: 0; }
.gnav--sub-menu li:before { content: ""; display: inline-block; background-position: 0 -56px; height: 10px; width: 7px; background: url('../img/fix.png') 0 -81px no-repeat; padding-right: 7px; }
.gnav--sub-menu li ul { text-indent: 0px; }
.gnav--sub-menu li li { margin-top: 3px; text-indent: -11px; padding-left: 11px; }
.gnav--sub-menu li li:first-child { margin-top: 5px; }
.gnav--sub-menu li li:before { content: ""; display: inline-block; background-position: 0 -2128px; height: 4px; width: 4px; background: url('../img/fix.png') 0 -2303px no-repeat; padding-right: 7px; }
.gnav--sub-menu a { text-decoration: none; }

@media screen and (max-width: 767px) {
	.gnav {
		display: none;
	}
}

/* page-controller
/*---------------------*/
.page-controller { padding: 2px 0; position: absolute; top: 0; right: 0; background: #CBECFD; -webkit-border-radius: 0 0 5px 5px; -moz-border-radius: 0 0 5px 5px; -ms-border-radius: 0 0 5px 5px; border-radius: 0 0 5px 5px; display: block; *zoom: 1; }
.page-controller:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.page-controller > * { display: block; *zoom: 1; }
.page-controller > *:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }

.audio-player { float: left; padding: 5px 10px; }

.audio-btn { float: left; width: 26px; height: 26px; cursor: pointer; }
.audio-btn.jp-play { background: url('../img/fix.png') 0 -127px; }
.audio-btn.jp-pause { background: url('../img/fix.png') 0 -96px; display: none; }

.track-name { font-size: 13px; padding-left: 35px; line-height: 28px; }

.fs-controller { float: left; }

.fs-controller--btn { text-align: center; padding: 5px 10px; border-left: 1px solid #797D7E; border-right: 1px solid #797D7E; display: block; *zoom: 1; }
.fs-controller--btn:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.fs-controller--btn dt { font-size: 10px; float: left; line-height: 28px; }
.fs-controller--btn dd { float: left; }
.fs-controller--btn dd a { width: 28px; height: 28px; margin: 0 0 0 5px; line-height: 28px; display: block; color: #434343; background: #A1B8C6; text-decoration: none; font-size: 14px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.fs-controller--btn dd a.active { background: #4D4D4D; color: #FFF; }

.sns_box, .sp_sns { margin-top: 9px; float: right; line-height: 1; }
.sns_box li, .sp_sns li { 
	float: left; 
	margin: 0 10px; 
}

.sp_sns { -webkit-border-radius: 0 0 5px 5px; -moz-border-radius: 0 0 5px 5px; -ms-border-radius: 0 0 5px 5px; border-radius: 0 0 5px 5px; position: absolute; top: 0; right: 0; margin-top: 0; background: #CBECFD; padding: 10px; }

@media screen and (max-width: 767px) {
	.sp_sns {
		border-radius: 5px;
		top: -36px;
		right: 52px;
		padding: 5px;
	}
	.sns > * {
		height: 20px;
		box-sizing: border-box;
	}
	.sns_box li, .sp_sns li { 
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.sp_sns li + li { 
		/* margin-left: 5px; */
	}
}
@media screen and (max-width: 374px) {
	.sp_sns {
		border-radius: 0 0 5px 5px;
		top: 0;
		right: 0;
	}
}

/* pankuzu
/*---------------------*/
.pankuzu-list { max-width: 930px; margin: 0 auto; padding: 0; display: block; *zoom: 1; margin: -25px auto 10px; font-size: 0.75em; }
.pankuzu-list:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.pankuzu-list > li { float: left; padding-left: 25px; position: relative; }
.pankuzu-list > li:before { content: ""; display: inline-block; background-position: 0 -25px; height: 10px; width: 7px; background: url('../img/fix.png') 0 -35px no-repeat; position: absolute; left: 9px; top: 3px; }
.pankuzu-list > li:first-child { padding-left: 0; }
.pankuzu-list > li:first-child:before { display: none; }
.pankuzu-list > li > a{text-decoration: underline !important;}

@media screen and (max-width: 767px) {
	.pankuzu-list {
		max-width: 920px;
		width: 100%;
	}
}

/* common-sitemap
/*---------------------*/
.pagetop--footer { text-align: right; font-size: 12px; width: 980px; margin: 0 auto; padding: 0 0 20px; }

.common-sitemap { background: #7A3804; border-top: 4px solid #B75607; }
.common-sitemap a { text-decoration: none; }
.common-sitemap a:link { color: #FFF; }
.common-sitemap a:visited { color: #FFF; }
.common-sitemap a:hover { color: #cccccc; }
.common-sitemap a:active { color: #cccccc; }

.common-sitemap-ttl { overflow: hidden; text-indent: 100%; white-space: nowrap; }

.common-sitemap--inner {
	width: 980px;
	margin: 0 auto;
	padding: 21px 0 60px;
	text-align: center;
}
.common-sitemap--inner:after {
	content: "";
	display: block;
	clear: both;
}
.common-sitemap--inner dl {
	/*max-width: 146px;
	min-width: 146px;
	margin: 0 0 0 15px;
	width: 230px; 4列
	width: 180px; 5列
	width: 146px; 6列
	margin: 0 0 0 20px;
	display: inline-block;
	vertical-align: top;*/
	display: block;
	width: 180px;
	margin-left: 20px;
	float: left;
	text-align: left;
	line-height: 1.1;
}
.common-sitemap--inner dl:first-child { margin-left: 0; }
/*.common-sitemap--inner dl:last-child { margin-right: 0; }*/
.common-sitemap--inner dl.col1{ width: 168px; }
.common-sitemap--inner dl.col2{ width: 168px; margin-left: 20px; }
.common-sitemap--inner dl.col3{ width: 168px; margin-left: 20px; }
.common-sitemap--inner dl.col4{ width: 168px; margin-left: 20px; }
.common-sitemap--inner dl.col5{ width: 168px; margin-left: 20px; }
.common-sitemap--inner dt { color: #FFF; border-bottom: 1px dotted #FFF; margin-bottom: 8px; padding-bottom: 3px; font-size: 16px; }
.common-sitemap--inner dt.s_row {
	margin-top: 15px;
}
.common-sitemap--inner dd { margin-top: 10px; font-size: 12px; text-indent: -12px; padding-left: 12px; line-height: 1.5; margin-top: 5px; }
.common-sitemap--inner dd:first-child { margin-top: 0; }
.common-sitemap--inner dd:before { content: ""; display: inline-block; background-position: 0 -46px; height: 10px; width: 7px; background: url('../img/fix.png') 0 -66px no-repeat; padding-right: 5px; }
.common-sitemap--inner dd ul { text-indent: 0px; }
.common-sitemap--inner dd li { margin-top: 3px; text-indent: -12px; padding-left: 12px; }
.common-sitemap--inner dd li:first-child { margin-top: 5px; }
.common-sitemap--inner dd li:before { content: ""; display: inline-block; background-position: 0 -2124px; height: 4px; width: 4px; background: url('../img/fix.png') 0 -2294px no-repeat; padding-right: 5px; }

@media screen and (max-width: 767px) {
	.pagetop--footer {
		width: 100%;
	}
	.common-sitemap--inner {
		width: 100%;
		padding: 0;
	}
	.common-sitemap--inner dl {
		padding: 0 10px 10px;
		width: 100%;
		margin: 0;
	}
	.common-sitemap--inner dl:last-child {
		border-bottom: 1px solid #fff;
	}
	.common-sitemap--inner dl:first-child dt {
		border-top: none;
	}
	.common-sitemap--inner dt {
		position: relative;
		padding: 10px 0 10px 10px;
		line-height: 1.75;
		font-weight: bold;
		border-top: 1px solid #fff;
	}
	.common-sitemap--inner dt::after {
		content: " ";
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		display: block;
		height: 30px;
		background-color: #fff;
		width: 3px;
		margin: auto 0;
	}
	.common-sitemap--inner dt.s_row {
		margin-top: 10px;
	}
	.common-sitemap--inner dd {
		font-size: 16px;
		line-height: 1.75;
	}
	.common-sitemap--inner dd li {
		margin-top: 3px;
		text-indent: -12px;
		padding-left: 12px;
	}
	.common-sitemap--inner dd li:before {
		height: 8px;
		width: 8px;
	}
	.common-sitemap--inner dd:before {
		width: 10px;
	}
}

.common-footer { background: #4D280A; }
.common-footer a { text-decoration: none; }
.common-footer a:link { color: #FFF; }
.common-footer a:visited { color: #FFF; }
.common-footer a:hover { color: #cccccc; }
.common-footer a:active { color: #cccccc; }

.common-footer--inner { width: 980px; margin: 0 auto; padding: 20px 0 50px; display: block; *zoom: 1; }
.common-footer--inner:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }

.common-footer--signature { float: left; display: block; *zoom: 1; }
.common-footer--signature:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }

.common-footer--logo { float: left; }
.common-footer--logo img { vertical-align: top; }

.common-footer--copy { float: left; color: #FFF; font-size: 10px; padding: 0 0 0 20px; }

.common-footer--terms { float: right; font-size: 12px; line-height: 1; display: block; *zoom: 1; }
.common-footer--terms:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.common-footer--terms > li { margin-left: 10px; padding-left: 10px; float: left; border-left: 1px solid #FFF; }
.common-footer--terms > li:first-child { border-left: none; margin-left: 0; padding-left: 0; }

@media screen and (max-width: 767px) {
	.common-footer--inner {
		width: 100%;
		padding: 20px 10px;
		text-align: center;
	}
	.common-footer--terms {
		float: none;
		display: inline-block;
	}
	.common-footer--signature {
		margin-top: 30px;
		float: none;
	}
	.common-footer--logo {
		float: none;
	}
	.common-footer--copy {
		float: none;
	}
}

/* classBtn
/*---------------------*/
.classBtn-wrapper{
	margin-top: 30px;
}
.classBtn-wrapperInner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: -1%;
}
.classBtn-wrapperInner li{
	padding: 1% !important;
}


@media screen and (max-width: 767px) {
	.classBtn-wrapper{
		max-width: 400px;
		margin: 30px auto 40px;
	}
}
@media screen and (max-width: 400px) {
	.classBtn-wrapper{
		max-width: 200px;
		/* margin: 0 auto; */
	}
	.classBtn-wrapperInner{
		justify-content: center;
	}
}


/* module--btn
/*---------------------*/
.template__old .btn-wrapper { margin-top: 30px; text-align: center; font-size: 0; clear: both; }
.contents-wrapper .btn-wrapper:first-child { margin-top: 0; }
[class^=page-ttl--] + .btn-wrapper { margin: 0 0 30px; }
.btn-wrapper > li { width: 370px; display: inline-block; margin-left: 20px; font-size: 20px; vertical-align: top; }
.btn-wrapper > li:first-child { margin-left: 0; }
.btn-wrapper.pgTypeB > li { margin-left: 0; margin-top: 4px; }
.btn-wrapper.pgTypeB > li:first-child { margin-top: 0; }

@media screen and (max-width: 767px) {
	.btn-wrapper > li {
		width: 100%;
		max-width: 370px;
		margin: 0 auto;
	}
	.btn-wrapper > li:first-child {
		margin-left: auto;
	}
	.btn-wrapper > li + li {
		margin-top: 10px;
	}
}

[class^=btn--] { display: block; overflow: hidden; text-indent: 100%; white-space: nowrap; }

.btn--apply-dl { 
	background-position: 0 0; 
	background-image: url('../img/btn_apply.png') ; 
	background-size: 100%;
}
.btn--apply-dl::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 25.4%;
}
.btn--apply-dl:hover {
	background: url(../img/btn_apply.png) 0 104% no-repeat;
	background-size: 100%;
}

.btn--form-dl { 
	background-position: 0 0; 
	background-image: url('../img/btn_form.png') ; 
	background-size: 100%;
}
.btn--form-dl::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 25.3%;
}
span.btn--form-dl,
.btn--form-dl:hover {
	background: url(../img/btn_form.png) 0 105% no-repeat;
	background-size: 100%;
}

.btn--music-dl { 
	background-position: 0 0; 
	background-image: url('../img/btn_music.png') ; 
	background-size: 100%;
}
.btn--music-dl::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 25.4%;
}
.btn--music-dl:hover {
	background: url(../img/btn_music.png) 0 104% no-repeat;
	background-size: 100%;
}

.btn--tool-student-dl { 
	background-position: 0 0; 
	background-image: url('../img/btn_tool_student.png') ; 
	background-size: 100%;
}
.btn--tool-student-dl::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 21%;
}
.btn--tool-student-dl:hover {
	background: url(../img/btn_tool_student.png) 0 105% no-repeat;
	background-size: 100%;
}

.btn--tool-teacher-dl { 
	background-position: 0 0; 
	background-image: url('../img/btn_tool_teacher.png') ; 
	background-size: 100%;
}
.btn--tool-teacher-dl::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 21%;
}
.btn--tool-teacher-dl:hover {
	background: url(../img/btn_tool_teacher.png) 0 105% no-repeat;
	background-size: 100%;
}

.btn--ceremony { 
	background-position: 0 0; 
	background-image: url('../img/btn_ceremony.png') ; 
	background-size: 100%;
}
.btn--ceremony::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 16.75%;
}
.btn--ceremony:hover {
	background: url(../img/btn_ceremony.png) 0 108% no-repeat;
	background-size: 100%;
}

.btn--award { 
	background-position: 0 0; 
	background-image: url('../img/btn_award.png') ; 
	background-size: 100%;
}
.btn--award::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 16.75%;
}
.btn--award:hover {
	background: url(../img/btn_award.png) 0 108% no-repeat;
	background-size: 100%;
}

.btn--2ndContest { background-position: 0 -446px; height: 82px; width: 370px; background: url('../img/fix.png') 0 -506px no-repeat; }
.btn--2ndContest:hover { background: url('../img/fix.png') 0 -593px no-repeat; }
.btn--2ndContest.disabled { background: url('../img/fix.png') 0 -419px no-repeat; }

.btn--1stContest { background-position: 0 -200px; height: 82px; width: 370px; background: url('../img/fix.png') 0 -245px no-repeat; }
.btn--1stContest:hover { background: url('../img/fix.png') 0 -332px no-repeat; }
.btn--1stContest.disabled { background: url('../img/fix.png') 0 -158px no-repeat; }


.btn--ceremony-gold { 
	background-position: 0 0; 
	background-image: url('../img/btn_ceremony_gold.png') ; 
	background-size: 100%;
}
.btn--ceremony-gold::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 21%;
}
.btn--ceremony-gold:hover {
	background: url(../img/btn_ceremony_gold.png) 0 108% no-repeat;
	background-size: 100%;
}

.btn--ceremony-silver { 
	background-position: 0 0; 
	background-image: url('../img/btn_ceremony_silver.png') ; 
	background-size: 100%;
}
.btn--ceremony-silver::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 21%;
}
.btn--ceremony-silver:hover {
	background: url(../img/btn_ceremony_silver.png) 0 108% no-repeat;
	background-size: 100%;
}

.btn--ceremony-copper { 
	background-position: 0 0; 
	background-image: url('../img/btn_ceremony_copper.png') ; 
	background-size: 100%;
}
.btn--ceremony-copper::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 21%;
}
.btn--ceremony-copper:hover {
	background: url(../img/btn_ceremony_copper.png) 0 108% no-repeat;
	background-size: 100%;
}

.btn--results-2018-class { height: 82px; width: 370px; background: url('../img/fix.png') 0 -2600px no-repeat; }
.btn--results-2018-class:hover { background: url('../img/fix.png') 0 -2700px no-repeat; }

.btn--results-2017-class { height: 82px; width: 370px; background: url('../img/fix.png') 0 -2600px no-repeat; }
.btn--results-2017-class:hover { background: url('../img/fix.png') 0 -2700px no-repeat; }

.btn--results-2016-class { height: 82px; width: 370px; background: url('../img/fix.png') -390px -2600px no-repeat; }
.btn--results-2016-class:hover { background: url('../img/fix.png') -390px -2700px no-repeat; }

/* 画像つき2カラム
/*---------------------*/
[class^=floating--img-] { display: block; *zoom: 1; }
[class^=floating--img-]:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
[class^=floating--img-] .floating--img { max-width: 360px; }
[class^=floating--img-] .floating--txt { width: 375px; }

.floating--img-left .floating--img { float: left; }
.floating--img-left .floating--txt { float: right; }

.floating--img-right .floating--img { float: right; }
.floating--img-right .floating--txt { float: left; }

@media screen and (max-width: 767px) {
	[class^=floating--img-] .floating--txt {
		width: 100%;
	}
	.floating--img-left .floating--img {
		float: none;
	}
	[class^=floating--img-] .floating--img {
		margin: 0 auto;
	}
}

/* module--common-list
/*---------------------*/
[class^=common-list--] { margin-top: 1.25em; line-height: 1.5; }
[class^=common-list--]:first-child { margin-top: 0; }
[class^=common-list--] > li { text-indent: -1.5em; padding-left: 1.5em; margin-top: 0.8em; letter-spacing: 0.02em; }
[class^=common-list--] > li:first-child { margin-top: 0; }
[class^=common-list--] > li:before { padding-right: 0.5em; }

.common-list--green > li:before { content: "●"; color: #4FA421; }

.common-list--orange > li:before { content: "●"; color: #FFA000; }

.common-list--red > li:before { content: "●"; color: #f4594b; }

.common-list--blue > li:before { content: "●"; color: #28B3F3; }

[class^=common-list--] .notes-list { text-indent: 0; }

.example-list { margin-top: 0.5em; }
.example-list:after,
.example-list-note li:after {
	content: "";
	display: block;
	clear: both;
}
.example-list dt,
.example-list-note .head { float: left; text-indent: 0; }
.example-list dd,
.example-list-note .body { overflow: hidden; }
.example-list-note li { text-indent: 0; }

/* module--data-list
/*---------------------*/
[class^=data-list--] { margin-top: 1.25em; line-height: 1.5; }
[class^=data-list--]:first-child { margin-top: 0; }
[class^=data-list--] > dt { font-weight: bold; }
[class^=data-list--] > dd { text-indent: -1.5em; padding-left: 1.5em; margin-top: 0.8em; letter-spacing: 0.02em; }
[class^=data-list--] > dd:first-of-type { margin-top: 0.4em; }
[class^=data-list--] > dd:before { padding-right: 0.5em; }

.data-list--green > dd:before { content: "●"; color: #4FA421; }

.data-list--orange > dd:before { content: "●"; color: #FFA000; }

.data-list--blue > dd:before { content: "●"; color: #28B3F3; }

.data-list--red > dd:before { content: "●"; color: #e60012; }

.data-list--red > dt {  color: #e60012; }


/* .arrow-list > li {
position: relative;
padding-left: 25px;
}
.arrow-list > li:before {
	content: "";
	display: inline-block;
	background-position: 0 -25px;
	height: 10px;
	width: 7px;
	background: url(../img/fix.png) 0 -35px no-repeat;
	position: absolute;
	left: 10px;
	top: 5px;
} */


/* module--contents-wrapper
/*---------------------*/
.contents-body { padding: 0 0 60px 0; background: url('../img/contents_body_border.png') repeat-x left bottom 0px;}

.contents-wrapper { max-width: 930px; margin: 60px auto; padding: 40px 80px 60px; background: #FFF; }

.contents-container { width: 920px; margin: 0 auto; }

.contents-section { padding-bottom: 50px; }
.contents-section:last-of-type { padding-bottom: 0; }

.contents-section-inner { padding-bottom: 40px; }
.contents-section-inner:last-child { padding-bottom: 0; }
.box02--ceremony-red .contents-section-inner02 { border: 2px solid #ffb531; padding: 28px 17px 17px; }

[class^=box--] { width: auto; margin: 0 auto; padding: 40px; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }

@media screen and (max-width: 767px) {
	.contents-body {
		padding: 0 10px 30px;
	}
	.contents-wrapper {
		width: 100%;
		box-sizing: border-box;
		padding: 40px 10px 30px;
		margin-top: 3vw;
	}
	.contents-container {
		width: 100%;
	}
	[class^=box--] {
		padding: 20px !important;
	}
	.contents-section-inner{
		padding-bottom: 20px !important;
	}
}

/* module--content-nav
/*---------------------*/
.content-nav { margin-bottom: 25px; }
.content-nav > li { display: inline-block; margin: 0 20px 0 -5px; padding-left: 18px; position: relative; font-size: 0.875em; }
.content-nav > li:last-child { margin-right: 0; }
.content-nav > li:before { content: ""; display: inline-block; background-position: 0 -18px; height: 7px; width: 10px; background: url('../img/fix.png') 0 -23px no-repeat; position: absolute; left: 0; top: 7px; }

/* module--page-ttl
/*---------------------*/
[class^=page-ttl--] { background: url('../img/page_ttl_bg.png'); position: relative; text-align: center; vertical-align: middle; line-height: 155px; margin: -40px -80px 30px; }
[class^=page-ttl--] h1 { display: inline-block; }
[class^=page-ttl--] img { vertical-align: middle; }
[class^=page-ttl--]:after { content: ""; display: block; width: 100%; height: 15px; position: absolute; left: 0; bottom: -1px; background-position: 0 -135px; background: url('../img/repeatX.png') 0 -225px repeat-x; }

.page-ttl--green { background-color: #4FA421; }

.page-ttl--orange { background-color: #FFA000; }

.page-ttl--red { background-color: #f4594b; }

.page-ttl--blue { background-color: #28B3F3; }

.page-ttl--blueGreen { background-color: #00A396; }
.page-ttl--information { margin-bottom: 55px; }

.page-ttl--pink { background-color: #f771b2; }

.les-gold{
	margin-bottom: 80px;
}

.les-silver{
	margin-bottom: 80px;
}

@media screen and (max-width: 767px) {
	[class^=page-ttl--] {
		margin: -40px -10px 30px;
		padding: 10px 10px 20px;
		line-height: 125px;
	}
	.page-ttl--blueGreen { line-height: 15vw;}
	.page-ttl--red { line-height: 15vw; }
	_:-ms-lang(x)::-ms-backdrop, [class^=page-ttl--] img { 
		width: 100%;
	}
	.les-gold{
		margin-top: 50px !important;
	}
	.les-silver{
		margin-top: 50px !important;
		margin-bottom: -50px !important;
	}
	
	.les-copper{
		margin-top: 50px !important;
	}
}

/* module--section-ttl
/*---------------------*/
.template__old [class^=sect-ttl--] { margin-bottom: 30px; line-height: 85px; text-align: center; position: relative; -webkit-border-radius: 25px; -moz-border-radius: 25px; -ms-border-radius: 25px; border-radius: 25px; }
[class^=sect-ttl--]:before { content: ""; display: block; position: absolute; left: 6px; right: 26px; top: 6px; bottom: 6px; background-position: 0 -2224px; background: url('../img/fix.png') 0 -2419px; }
[class^=sect-ttl--]:after { content: ""; 
	display: block; 
	position: absolute; 
	right: 6px; 
	top: 6px; 
	bottom: 6px; 
	width: 20px;
	background-position: 31px -2224px; 
	background: url('../img/fix.png') 31px -2419px; }
[class^=sect-ttl--] img { vertical-align: middle; }

.sect-ttl--green { background: #4FA421; }

.sect-ttl--orange { background: #FFA000; }

.sect-ttl--red { background: #f4594b; }

.sect-ttl--blue { background: #28B3F3; }

.sect-ttl--pink { background: #f771b2; }

@media screen and (max-width: 767px) {
	.template__old [class^=sect-ttl--] {
		padding: 0 16px;
	}
}

/* module--section-inner-ttl
/*---------------------*/
[class^=sect-inner-ttl--] { margin-bottom: 20px; padding-bottom: 8px; font-size: 1.62em; font-weight: bold; position: relative; }
[class^=sect-inner-ttl--]:after { content: ""; height: 6px; display: block; position: absolute; left: 0; right: 0; bottom: 0; }

.sect-inner-ttl--green { color: #4FA421; }
.sect-inner-ttl--green:after { background-position: 0 -30px; background: url('../img/repeatX.png') 0 -55px repeat-x; }

.sect-inner-ttl--orange { color: #FFA000; }
.sect-inner-ttl--orange:after { background-position: 0 -42px; background: url('../img/repeatX.png') 0 -77px repeat-x; }

.sect-inner-ttl--red { color: #f4594b; }
.sect-inner-ttl--red:after { background-position: 0 -60px; background: url('../img/repeatX.png') 0 -110px repeat-x; }

.sect-inner-ttl--blue { color: #28B3F3; }
.sect-inner-ttl--blue:after { background-position: 0 0; background: url('../img/repeatX.png') 0 0 repeat-x; }

.sect-inner-ttl--pink { color: #f771b2; }
.sect-inner-ttl--pink:after { background-position: 0 -48px; background: url('../img/repeatX.png') 0 -88px repeat-x; }

[class^=box--] [class^=sect-inner-ttl--]:after { margin-right: -1px; }
[class^=box--] [class^=contest-team-name--]:after { margin-right: -1px; }

.noAfter .contest-team-name--gold:after{display: none;}
.noAfter .contest-team-name--silver:after{display: none;}
.noAfter .contest-team-name--copper:after{display: none;}
.noAfter [class^=contest-team-name--]{ padding-bottom: 0}

/* トップページ
/*---------------------*/
.top--main {
	background: #afcf11;
	position: relative;
}
.top--main:before {
	content: "";
	display: block;
	width: 100%;
	height: 475px;
	/* height: 334px; */
	background: url(../img/top_main_visual__bg10.png) no-repeat top center;
	position: absolute;
	z-index: 10;
	top: 0;
}
.top--main:after {
	content: "";
	display: block;
	width: 100%;
	height: 475px;
	/* height: 334px; */
	background: url(../img/top_main_visual__bg_10.png) repeat-x top center;
	position: absolute;
	z-index: 5;
	top: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.top--main--inner { width: 980px; margin: 0 auto; padding: 0 0 65px; position: relative; z-index: 10; }
.top--main--inner.is-top { padding-bottom: 0; }
.top--main-visual {/* background: url('../img/top_main_visual__bg_illust.png') no-repeat center top; */height: 475px;position: relative;}
.top--main-visual > [class^=top--main-visual] { position: absolute; }

.top--main-visual--logo { left: 269px; top: 25px; }

.top--main-visual--badge { right: 50px; top: 94px; }

.top--main-visual--limit { left: 0; bottom: 0; }

.top--main-navi { width: 100%; margin-bottom: 0px; }
.top--main-navi.is-bottom { width: 645px; margin-left: auto; margin-right: auto; }
.top--main-navi > li { float: left; width: 310px; margin-left: 25px; margin-bottom: 30px;}
.top--main-navi > li:nth-child(3n + 1) { margin-left: 0; }

@media screen and (max-width: 767px) {


	.top--main:before {
		/* height: calc(674 / 750 * 100%); */
		height: calc(1080 / 750 * 100%);
		background: url(../img/top_main_visual__bg10_sp.png) no-repeat top center;
		background-size: contain;
	}
	.top--main:after {
		/* height: calc(674 / 750 * 100%); */
		height: calc(1080 / 750 * 100%);
		background: none;
	}

	.top--main--inner {
		width: 100%;
		padding: 0 10px 50px;
	}
	.top--main-visual {
		/* padding-bottom: calc(700 / 750 * 100%); */
		padding-bottom: calc(1080 / 750 * 100%);
}


	.top--main-navi {
		max-width: 645px;
		margin: 0 auto;
	}
	.top--main-navi.is-bottom {
		width: 100%;
	}
	.top--main-navi > li {
		margin-bottom: 30px;
	}
	.top--main-navi > li:nth-child(3n) {
		/* margin-left: 0; */
	}
	.top--main-navi > li:nth-child(3n + 1) { margin-left: 25px; }
	.top--main-navi > li:nth-child(2n - 1) { margin-left: 0; }
}
@media screen and (max-width: 670px) {
	.top--main-navi {
		max-width: 310px;
	}
	.top--main-navi > li {
		margin-left: 0;
		max-width: 310px;
		width: 100%;
	}
	.top--main-navi > li:nth-child(3n + 1) { margin-left: 0px; }
}


.top--main-navi > li > p { margin-top: 10px; }
.top--main-navi:after {
	clear: both;
	content: ".";
	display: block;
	font-size: 0;
	height: 0;
	visibility: hidden;
}
.top--main-navi-copy {
	color: #fff;
	font-size: 24px;
}
.btn--top-pdfdownload,
.btn--top-soundsource,
.btn--top-information,
.btn--top-support,
.btn--top-correct,
.btn--top-specialvideo {
	display: block;
	background-image: url(../img/top_btn_menu.png);
	background-repeat: repeat-x;
	width: 310px;
	height: 89px;
}
.btn--top-pdfdownload { background-position: 0px 0px; }
.btn--top-pdfdownload:hover { background-position: 0px -89px; }
.btn--top-soundsource { background-position: 0px -178px; }
.btn--top-soundsource:hover { background-position: 0px -267px; }
.btn--top-information { background-position: 0px -356px; }
.btn--top-information:hover { background-position: 0 -445px; }
.btn--top-support { background-position: 0 -534px; }
.btn--top-support:hover { background-position: 0 -623px; }
.btn--top-correct { background-position: 0 -712px; }
.btn--top-correct:hover {background-position: 0 -801px; }
.btn--top-specialvideo { background-position: 0 -890px; }
.btn--top-specialvideo:hover { background-position: 0 -979px; }
.btn--top-pdfdownload2 {
	display: block;
	background-image: url(../img/top_ttl_txt_summary.png);
	background-repeat: repeat-x;
	width: 310px;
	height: 89px;
}
.btn--top-pdfdownload2 { background-position: 0px 0px; }
.btn--top-pdfdownload2:hover { background-position: 0px -89px; }
.btn--top-information2 {
	display: block;
	background-image: url(../img/top_ttl_txt_competition_letter3.png);
	background-repeat: repeat-x;
	width: 310px;
	height: 89px;
}
.btn--top-information2 { background-position: 0px 0px; }
.btn--top-information2:hover { background-position: 0px -89px; }
.btn--top-btn{
	display: block;
	background-position: 0px 0px;
	background-repeat: repeat-x;
	width: 310px;
	height: 89px;
}
.btn--top-btn:hover { background-position: 0px -89px; }
.btn--top-btn.is--btnBg01{	background-image: url(../img/top_ttl_txt_summary7.png); }
.btn--top-btn.is--btnBg02{	background-image: url(../img/top_ttl_txt_btnBg02.png); }
.btn--top-btn.is--btnBg03{	background-image: url(../img/top_ttl_txt_btnBg03.png); }
.btn--top-btn.is--btnBg04{	background-image: url(../img/top_ttl_txt_btnBg04.png); }
.btn--top-btn.is--btnBg05{	background-image: url(../img/top_ttl_txt_btnBg05.png); }

.top--main-lead { margin: 35px 0 45px; padding: 43px 40px 40px; background: #FFF; font-size: 1.125em; position: relative; }
.top--main-lead:before { content: ""; display: block; width: 100%; height: 80px; position: absolute; left: 0; top: -55px; background: url('../img/top_lead_bg_top.png') no-repeat; }
.top--main-lead:after { content: ""; display: block; width: 989px; height: 57px; position: absolute; left: 0px; bottom: -12px; background: url('../img/top_lead_bg_btm.png') no-repeat; }

.news-area > dt { font-size: 1.5em; padding: 8px 40px 6px; background: #FFAF23; color: #FFF; font-weight: bold; -webkit-border-radius: 5px 5px 0 0; -moz-border-radius: 5px 5px 0 0; -ms-border-radius: 5px 5px 0 0; border-radius: 5px 5px 0 0; }
.news-area > dd {border: 3px solid #FFAF23;border-top: none;padding: 15px 37px;background: #FFF;-webkit-border-radius: 0 0 5px 5px;-moz-border-radius: 0 0 5px 5px;-ms-border-radius: 0 0 5px 5px;border-radius: 0 0 5px 5px;}
.news-area .news-list {
	overflow-y: scroll;
	height: 120px;
}
.news-area .news-list > li { display: table; width: 100%; margin-top: 10px; }
.news-area .news-list > li:first-child {/* margin-top: 0; */}
.news-area .news-list > li > [class^=news-] { display: table-cell; vertical-align: top; }
.news-area .news-list .news-date { width: 95px; padding-right: 15px; }

@media screen and (max-width: 767px) {

	.news-area > dt {
		padding: 8px 15px 6px;
	}
	.news-area > dd {
		padding: 15px;
		background: #FFF;
	}
	.news-area .news-list {
		height: 200px;
	}
	.news-area .news-list > li {
		display: block;
		margin-top: 5px;
	}
	.news-area .news-list > li > [class^=news-] {
		display: block;
	}
	.news-area .news-list > li:first-child {
		margin-top: 0;
	}
}

.join-step { margin: 0 0 10px -10px; }
.join-text { margin-bottom: 30px; }

.parent-message { background: url('../img/bg_dot.png') #16CBAF; -webkit-border-radius: 20px; -moz-border-radius: 20px; -ms-border-radius: 20px; border-radius: 20px; border-bottom: 5px solid #0BA58D; }
.parent-message dt { padding: 30px 0; text-align: center; }
.parent-message dd { padding: 35px 40px 40px; background: url('../img/top_parentBox_bg_top.png') no-repeat center top; position: relative; }
.parent-message .parent-message-txt-outer { padding-bottom: 85px; background: url('../img/top_parentBox_bg_btm.png') no-repeat center bottom; }
.parent-message .parent-message-txt-inner { padding: 20px 50px 25px; background: url('../img/top_parentBox_bg_repeat.png') repeat-y; }
.box-area{
	border: 4px solid #e60012;
	padding: 20px 35px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	-ms-border-radius: 10px;
	border-radius: 10px;
	background-color: #fffff1;
}
.box-area-title{
	margin-bottom: 20px;
	text-align: center;
	font-size: 1.8em;
	font-weight: bold;
	border-bottom: 3px solid #e60012;
	color: #e60012;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro";
}

@media screen and (max-width: 767px) {
	.parent-message dt {
		padding: 20px 0;
	}
	.parent-message dd {
		margin: 0 15px;
		padding: calc(65 / 612 * 100%) 0 40px;
		background: url(../img/top_parentBox_bg_top_sp.png) no-repeat center top;
		background-size: contain;
		padding: 10.62% 0 40px\9;
	}
	.parent-message .parent-message-txt-outer {
		padding-bottom: calc(174 / 612 * 100%);
		background: url(../img/top_parentBox_bg_btm_sp.png) no-repeat center bottom;
		background-size: contain;
		padding-bottom: 28.43%;
	}
	.parent-message .parent-message-txt-inner {
		padding: 15px 15px 20px;
		background: url(../img/top_parentBox_bg_repeat.png) repeat-y;
		background-size: contain;
	}
	.box-area {
		padding: 20px 20px;
	}
	.box-area-title {
		font-size: 1.5em;
	}
}

/* 応募について
/*---------------------*/
.table--green { width: 100%; border-collapse: separate; border-spacing: 0; overflow: hidden; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.table--green tr:first-child th { border-top: 0; }
.table--green tr:first-child td { border-top: 0; }
.table--green th { width: 175px; padding: 12px 10px; background: #4FA421; color: #FFF; border-top: 2px solid #FFF; vertical-align: middle; text-align: center; }
.table--green td { border-top: 2px solid #FFF; background: #e2f7d7; padding: 12px 30px; position: relative; position: relative; }
.table--green td:before { content: ""; width: 0; height: 0; display: block; border: solid transparent; border-width: 5px; position: absolute; border-left-color: #4FA421; left: 0; top: 0; right: 0; bottom: 0; margin: auto 0; }
.table--green tr:nth-child(2n) td { background: #ecfae4; }

@media screen and (max-width: 767px) {
	.table--green th {
		width: 65px;
	}
	.table--green.s_flow th,
	.table--green.s_requirement th {
		width: 85px;
	}
	.table--green td {
		padding: 12px 15px;
	}
}

.table--red { width: 100%; border-collapse: separate; border-spacing: 0; overflow: hidden; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.table--red th { padding: 12px 10px; background: #f4594b; color: #FFF; vertical-align: middle; text-align: center; position: relative; position: relative; border-left: 2px solid #FFF; }
.table--red th:before { content: ""; width: 0; height: 0; display: block; border: solid transparent; border-width: 5px; position: absolute; border-left-color: #f4594b; left: 0; top: 0; right: 0; bottom: 0; margin: auto 0; }
.table--red th:first-child { border-left: none; }
.table--red td { border-top: 2px solid #FFF; background: #fddedb; padding: 12px 20px; border-left: 2px solid #FFF; }
.table--red td:first-child { border-left: none; }
.table--red tr:nth-child(2n) td { background: #feebea; }
.table--red.tbl-v01 {}
.table--red.tbl-v01 td:first-child { text-align: center; }

.table--red--th-event-date01 { width: 7em; }
.table--red--th-event-date02 { width: 10.5em; }
.table--red--th-location { width: 4.5em }

.table--red a{ text-decoration: underline !important;}

@media screen and (max-width: 767px) {
	.table--redWrapper{
		overflow-x: auto;
	}
	.table--red  {
		min-width: 600px;
	}
	.table--red td {
		padding: 12px 10px;
	}
	.table--red--th-event-date01 {
		width: 80px;
	}
	.table--red--th-event-date02 {
		width: 150px;
	}
}

/* 応募の流れ
/*---------------------*/
.req-flow-list > li { margin-top: 36px; background: #D7FFA7; position: relative; border: 3px solid #4FA421; }
.req-flow-list > li:before { 
	content: ""; 
	display: block; 
	position: absolute; 
	top: -39px; 
	left: 0; 
	right: 0; 
	margin: 0 auto; 
	/* border-width: 8px 40px;  */
	/* border-style: solid;  */
	/* border-color: #4FA421;  */
	/* background-position: 0 -2204px;  */
	/* height: 20px; 
	width: 44px;  */
	height: 36px; 
	width: 124px; 
	background: url('../img/flow_arrow_01.gif') no-repeat ; 
	/* background: url('../img/fix.png') 0 -2394px no-repeat #4FA421;  */
}
.req-flow-list > li:first-child { margin-top: 0; }
.req-flow-list > li:first-child:before { display: none; }

.flow-inner--centering-ttl { font-size: 1.25em; font-weight: bold; text-align: center; margin-bottom: 15px; line-height: 1.3; }
.flow-inner--centering-ttl .notes { display: block; }

.flow-paper-box { padding: 40px 57px; background: url('../img/flow_paper_box_bg.png') no-repeat right bottom #FFF; }

.flow-apply-address { background: #FFF; -webkit-border-radius: 20px; -moz-border-radius: 20px; -ms-border-radius: 20px; border-radius: 20px; }
.flow-apply-address dt { padding: 15px 0; border-bottom: 2px solid #4FA421; text-align: center; font-size: 1.125em; }
.flow-apply-address dd { padding: 15px 70px 0; }
.flow-apply-address dd:first-of-type { padding-top: 30px; }
.flow-apply-address dd:last-of-type { padding-bottom: 40px; }

@media screen and (max-width: 767px) {
	.flow-paper-box {
		padding: 20px 20px 40px;
	}
	.flow-apply-address dd:first-of-type {
		padding-top: 20px;
	}
	.flow-apply-address dd:last-of-type {
		padding-bottom: 20px;
	}
	.flow-apply-address dd {
		padding: 15px 20px 0;
	}
}

/* 正しいラジオ体操映像
/*---------------------*/
.point-video-areaWrapper{
	position: relative;
}
.point-video-areaWrapper:after { 
	content: ""; 
	display: block; 
	width: 104%; 
	height: 151px; 
	position: absolute; 
	left: -2%;
	/* right: 0; */
	bottom: -46px; 
	margin: 0 auto;
	background: url('../img/point_movie_bg_01.png') no-repeat;
	background-size: contain;
}
.point-video-area { margin: 15px 0 46px; padding: 40px 90px; background: url('../img/point_movie_bg_repeat.png') #FFE066; position: relative; }
.point-video-area:before { content: ""; display: block; width: 100%; height: 15px; position: absolute; left: 0; top: -15px; background-position: 0 -120px; background: url('../img/repeatX.png') 0 -205px repeat-x; }

 .point-video-area:after {
	content: "";
	display: block;
	width: 100%;
	height: 15px;
	position: absolute;
	left: 0;
	bottom: -15px;
	background-position: 0 -120px;
	background: url(../img/repeatX.png) 0 -165px repeat-x;
}
.point-video-area video { width: 580px; height: 326px; position: relative; z-index: 10; 
	width: 100%;
	height: 100%;
}
@media screen and (max-width: 767px) {
	.point-video-areaWrapper:after { 
		content: ""; 
		display: block; 
		width: 104%; 
		height: 151px; 
		position: absolute; 
		left: -2%;
		/* right: 0; */
		bottom: initial; 
		top: calc(100% - 40px);
		margin: 0 auto;
		background: url('../img/point_movie_bg_01.png') no-repeat;
		background-size: contain;
	}
	.point-video-area {
		margin: 15px 0 10%;
		padding: 40px 30px;
	}
}

/* 特別授業動画
/*---------------------*/
.special-video-area--mov video{
	width: 100%;
	height: 100%;
}


/* ラジオ体操サポートツール
/*---------------------*/
.tool-download-area { display: block; *zoom: 1; }
.tool-download-area:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }

.tool-download-area--img { float: left; margin-left: 30px; }

.tool-download-area--txt { width: 370px; height: 307px; margin: 0 30px 93px 0; padding: 40px 30px; float: right; position: relative; background: #FFE066; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.tool-download-area--txt:after { content: ""; display: block; width: 370px; height: 122px; position: absolute; left: 0; bottom: -93px; background: url('../img/tool_baloon_bg.png') no-repeat; }

@media screen and (max-width: 767px){
	.tool-download-area--img {
		float: none;
		text-align: center;
		margin: 0 auto 30px;
	}
	.tool-download-area--txt {
		width: 100%;
		height: auto;
		max-width: 370px;
		float: none;
		margin: 0 auto 93px;
		padding: 30px 20px 40px;
	}
	.tool-download-area--txt:after {
		width: 100%;
		max-width: 370px;
		height: 122px;
		position: absolute;
		left: 0;
		bottom: -93px;
		background: url(../img/tool_baloon_bg.png) no-repeat;
		background-size: contain;
	}
}

.tool-download-btn { 
	position: absolute; 
	left: 0;
	right: 0; 
	margin: 0 auto;
	bottom: 40px; 
	width: 100%;
	max-width: 310px;
}
@media screen and (max-width: 767px){
	.tool-download-btn { 
		position: static;
		margin-top: 20px;
	}
}

/* 過去の結果
/*---------------------*/
.sect-ttl-ribbon {
	position: relative;
	padding-bottom: 10px;
	line-height: 85px !important;
	text-align: center;
	width: calc(100% - 100px);
	margin: 40px auto 30px;
	background: url(../img/results_ttl_ribbon_02.gif) repeat-x;
}
.sect-ttl-ribbon:before {
	content: "";
	display: block;
	position: absolute;
	left: -50px;
	top: 0;
	bottom: 0;
	width: 50px;
	background: url('../img/results_ttl_ribbon_01.gif') no-repeat;
	z-index: 0;
}
.sect-ttl-ribbon:after {
	content: "";
	display: block;
	position: absolute;
	right: -50px;
	top: 0;
	bottom: 0;
	width: 50px;
	background: url('../img/results_ttl_ribbon_03.gif') no-repeat;
	z-index: 0;
}

.sect-ttl-ribbon:first-child { margin-top: 0; }
.sect-ttl-ribbon img { vertical-align: middle; }
.sect-ttl-ribbon.mgb_l { margin-bottom: 80px; }
.sect-ttl-ribbon.mgb_s { margin-bottom: 0px; }


@media screen and (max-width: 767px) {
	.sect-ttl-ribbon {
		height: 95px;
	}
}

.sect-inner-ttl-ribbon { 
	position: relative;
	height: 69px; 
	margin-bottom: 20px; 
	padding-bottom: 10px; 
	line-height: 59px; 
	text-align: center; 
	width: calc(100% - 100px);
	margin: 0 auto 20px !important;
	background: url('../img/award_ttl1_02.gif') repeat-x;
}

.sect-inner-ttl-ribbon:before {
	content: "";
	display: block;
	position: absolute;
	left: -50px;
	top: 0;
	bottom: 0;
	width: 50px;
	background: url('../img/award_ttl1_01.gif') no-repeat;
	z-index: 0;
}
.sect-inner-ttl-ribbon:after {
	content: "";
	display: block;
	position: absolute;
	right: -50px;
	top: 0;
	bottom: 0;
	width: 50px;
	background: url('../img/award_ttl1_03.gif') no-repeat;
	z-index: 0;
}

/* .contents-section-inner02 .sect-inner-ttl-ribbon { background: url('../img/fix.png') 0 -2497px no-repeat; } */
.sect-inner-ttl-ribbon img { vertical-align: middle; }

.contents-section-inner02 .sect-inner-ttl-ribbon { 
	position: relative;
	height: 69px; 
	margin-bottom: 20px; 
	padding-bottom: 10px; 
	line-height: 59px; 
	text-align: center; 
	width: calc(100% - 100px);
	margin: 0 auto 20px;
	background: url('../img/award_ttl2_02.gif') repeat-x;
}

.contents-section-inner02 .sect-inner-ttl-ribbon:before {
	content: "";
	display: block;
	position: absolute;
	left: -50px;
	top: 0;
	bottom: 0;
	width: 50px;
	background: url('../img/award_ttl2_01.gif') no-repeat;
	z-index: 0;
}
.contents-section-inner02 .sect-inner-ttl-ribbon:after {
	content: "";
	display: block;
	position: absolute;
	right: -50px;
	top: 0;
	bottom: 0;
	width: 50px;
	background: url('../img/award_ttl2_03.gif') no-repeat;
	z-index: 0;
}

@media screen and (max-width: 767px) {
	.sect-inner-ttl-ribbon {
		height: 69px;
	}
}

.contest-lead { margin-bottom: 70px; padding: 40px; background: #FBF8E2; position: relative; }
.contest-lead:before { content: ""; display: block; border: 2px solid #E3DDB3; position: absolute; top: 10px; right: 10px; bottom: 10px; left: 10px; }
.contest-lead.past { margin-bottom: 40px; font-family: 新丸ゴ R;}
@media screen and (max-width: 767px) {
	.contest-lead {
		padding: 30px;
	}
}
[class^=contest-video-area] { width: 100%; display: table; }

[class^=contest-video-area--] { display: table-cell; vertical-align: top; }

.contest-video-area--txt dt { font-size: 1.25em; font-weight: bold; margin-bottom: 5px; }
.contest-video-area--txt dd { font-size: 0.94em; line-height: 1.5; }

.contest-video-area--mov { width: 330px; padding-right: 25px; }
.contest-video-area--mov video { width: 330px; height: 185px; }

@media screen and (max-width: 767px) {
	[class^=contest-video-area] { display: block; }
	.contest-video-area--mov {
		width: 100%;
		max-width: 330px;
		padding-right: 0;
		margin: 0 auto;
	}
	.contest-video-area--txt{
		margin-top: 20px;
	}
	.contest-video-area--mov video { width: 100%; height: 100%; }
}

.contest-video-area-special { padding-top: 46px; position: relative; }
.contest-video-area-special:before { content: ""; display: block; width: 100%; height: 6px; position: absolute; top: 20px; left: 0; margin-right: -1px; background-position: 0 -84px; background: url('../img/repeatX.png') 0 -154px repeat-x; }
.contest-video-area-special:first-of-type { padding-top: 0; }
.contest-video-area-special:first-of-type:before { display: none; }
.contest-video-area-special [class^=contest-video-area--] { vertical-align: middle; }
.contest-video-area-special .contest-video-area--txt { font-size: 0.94em; font-weight: bold; }
.special-video-area:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.special-video-area--box {
	width: 360px;
	float: left;
	margin-left: 40px;
	margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
	.special-video-area--box {
		width: 100%;
		max-width: 360px;
		float: none;
		margin-left: 0;
	}
	.special-video-area--box video {
		width: 100%;
		height: 100%;
	}
}

.special-video-area--box:nth-of-type(2n+1){
	clear: both;
	margin-left: 0;
}
.special-video-area--box h3 {
	font-size: 20px;
	font-weight: bold;
	color: #ffa000;
	margin-bottom: 10px;
}

[class^=box--ceremony-], [class^=box--award-] { -webkit-border-radius: 20px; -moz-border-radius: 20px; -ms-border-radius: 20px; border-radius: 20px; }

/*ラジオコンクール便り*/
.box--information-00 { background-color: #faf8e3; padding: 10px; border-radius: 0; }
.box--information-00--inner { border: 2px solid #e4ddb3; border-radius: 0; padding: 25px 28px; }
.box--information-01 { background-color: #bce5ff; border-radius: 20px; }
.box--information-02 { background-color: #e2f7d7; border-radius: 20px; }
.box--information-03 { background-color: #ffdbe8; border-radius: 20px; }
.box--information-04 { background-color: #fde3bb; border-radius: 20px; }

.box--information-03.pgTypeA { background-color: #dedede; }

.contest-team-name--information-01 { text-align: center; color: #39addf; }
.contest-team-name--information-01:after {background: url('../img/information_dotline.png') 0 0 repeat-x; }
.contest-team-name--information-02 { text-align: center; color: #59a32c; }
.contest-team-name--information-02:after {background: url('../img/information_dotline.png') 0 -10px repeat-x; }
.contest-team-name--information-03 { text-align: center; color: #ff628d; }
.contest-team-name--information-03:after {background: url('../img/information_dotline.png') 0 -20px repeat-x; }
.contest-team-name--information-04 { text-align: center; color: #ff9b18; }
.contest-team-name--information-04:after {background: url('../img/information_dotline.png') 0 -40px repeat-x; }
.contest-team-name--information-01.pgTypeA,
.contest-team-name--information-02.pgTypeA,
.contest-team-name--information-03.pgTypeA,
.contest-team-name--information-04.pgTypeA { font-size: 1.625em; }

.box--information-03.pgTypeA .contest-team-name--information-03 { text-align: center; color: #9f9f9f; }
.box--information-03.pgTypeA .contest-team-name--information-03:after {background: url('../img/information_dotline.png') 0 -30px repeat-x; }

.btn--information-01 { height: 82px; width: 370px; background: url('../img/information_btn.png') 0 0 no-repeat; }
.btn--information-01:hover { background: url('../img/information_btn.png') 0 -82px no-repeat; }
.btn--information-02 { height: 82px; width: 370px; background: url('../img/information_btn.png') 0 -164px no-repeat; }
.btn--information-02:hover { background: url('../img/information_btn.png') 0 -246px no-repeat; }
.btn--information-03 { height: 82px; width: 370px; background: url('../img/information_btn.png') 0 -328px no-repeat; }
.btn--information-03:hover { background: url('../img/information_btn.png') 0 -410px no-repeat; }
.btn--information-04 { height: 82px; width: 370px; background: url('../img/information_btn.png') 0 -820px no-repeat; }
.btn--information-04:hover { background: url('../img/information_btn.png') 0 -902px no-repeat; }

.box--information-03.pgTypeA .btn--information-03 { height: 82px; width: 370px; background: url('../img/information_btn.png') 0 -656px no-repeat; }
.box--information-03.pgTypeA .btn--information-03:hover { background: url('../img/information_btn.png') 0 -738px no-repeat; }
.btn--information-txt { overflow: auto; text-indent: 0; }
.contents-wrapper a.btn--information-txt { color: #ff628d; font-size: 1.5em; }
.contents-wrapper a.btn--information-txt.c1 { color: #39addf; }
.contents-wrapper a.btn--information-txt.c2 { color: #9f9f9f; }
.contents-wrapper a.btn--information-txt.c3 { color: #ff9b18; }

/*過去の結果*/
.box--results-2014 { background-color: #ffdbe8; }
.box--results-2015 { background-color: #bce5ff; }
.box--results-2016 { background-color: #fde3bb; }
.box--results-2017 { background-color: #e2f7d7; }
.box--results-2018 { background-color: #ecdefa; }
.box--results-2019 { background-color: #d9ebff; }
.contest-team-name--2014 { text-align: center; color: #ff6690; }
.contest-team-name--2014:after {background: url('../img/results_dotline.png') 0 0 repeat-x; }
.contest-team-name--2015 { text-align: center; color: #37aae0; }
.contest-team-name--2015:after {background: url('../img/results_dotline.png') 0 -7px repeat-x; }
.contest-team-name--2016 { text-align: center; color: #ff9b18; }
.contest-team-name--2016:after {background: url('../img/results_dotline.png') 0 -14px repeat-x; }
.contest-team-name--2017 { text-align: center; color: #5da62f; }
.contest-team-name--2017:after {background: url('../img/results_dotline.png') 0 -21px repeat-x; }
.contest-team-name--2018 { text-align: center; color: #9b74c0; }
.contest-team-name--2018:after {background: url('../img/results_dotline.png') 0 -28px repeat-x; }
.contest-team-name--2019 { text-align: center; color: #4e92e5; }
.contest-team-name--2019:after {background: url('../img/results_dotline.png') 0 -35px repeat-x; }

.btn--results-2014::after,
.btn--results-2015::after,
.btn--results-2016::after,
.btn--results-2017::after,
.btn--results-2018::after,
.btn--results-2019::after {
  content: '';
  display: block;
	margin-top: -24px;
	padding-top: 22.1%;
}

.btn--results-2014 { 
	background-position: 0 0; 
	background-image: url('../img/results_btn_2014.png') ; 
	background-size: 100%;
}
.btn--results-2014:hover {
	background: url(../img/results_btn_2014.png) 0 106% no-repeat;
	background-size: 100%;
}
.btn--results-2015 { 
	background-position: 0 0; 
	background-image: url('../img/results_btn_2015.png') ; 
	background-size: 100%;
}
.btn--results-2015:hover {
	background: url(../img/results_btn_2015.png) 0 106% no-repeat;
	background-size: 100%;
}
.btn--results-2016 { 
	background-position: 0 0; 
	background-image: url('../img/results_btn_2016.png') ; 
	background-size: 100%;
}
.btn--results-2016:hover {
	background: url(../img/results_btn_2016.png) 0 106% no-repeat;
	background-size: 100%;
}
.btn--results-2017 { 
	background-position: 0 0; 
	background-image: url('../img/results_btn_2017.png') ; 
	background-size: 100%;
}
.btn--results-2017:hover {
	background: url(../img/results_btn_2017.png) 0 106% no-repeat;
	background-size: 100%;
}
.btn--results-2018 { 
	background-position: 0 0; 
	background-image: url('../img/results_btn_2018.png') ; 
	background-size: 100%;
}
.btn--results-2018:hover {
	background: url(../img/results_btn_2018.png) 0 106% no-repeat;
	background-size: 100%;
}
.btn--results-2019 { 
	background-position: 0 0; 
	background-image: url('../img/results_btn_2019.png') ; 
	background-size: 100%;
}
.btn--results-2019:hover {
	background: url(../img/results_btn_2019.png) 0 106% no-repeat;
	background-size: 100%;
}

/*表彰式*/
.ceremony-badge { width: 130px; height: 130px; margin: -90px auto 20px !important; }

@media screen and (max-width: 767px) {
	.ceremony-badge {
		margin: -80px auto 20px !important;
	}
}

[class^=box--ceremony-] { margin-top: 50px; background: url('../img/ceremony_box_bg.png'); }

.box--ceremony-gold { background-color: #FFE776; margin-top: 70px;}

.box--ceremony-silver { background-color: #D4DDDD; }

.box--ceremony-copper { background-color: #FFC188; }

.box--ceremony-purple { background-color: #D6D1F9; margin-top: 65px; }

.box--ceremony-red { background-color: #fddedb; }
.box02--ceremony-red { background: #fff0b4 url('../img/ceremony_box_bg02.png') 0 0 repeat; margin-left: -23px; margin-right: -23px; padding: 4px; }

.anchor-box__prize{ padding-top: 25px; }

#gold{
	margin-top: -25px;
	padding-top: 25px;
}

@media screen and (max-width: 767px) {

	[class^=box--ceremony-] { margin-top: 0;}

	.box02--ceremony-red {
		margin-left: -13px;
		margin-right: -13px;
	}

	.box--ceremony-gold { margin-top: 70px !important;}

	.box--ceremony-red{
		padding-bottom: 0 !important;
	}

	#gold{
		margin-top: -50px;
		padding-top: 25px;
	}

	.anchor-container{
		margin-top: 0;
		margin-bottom: -80px;
	}

	.anchor-box{
		margin-top: -50px;
		margin-bottom: 25px;
		padding-top: 50px;
	}
	.anchor-box__prize{
		margin-top: -50px;
		padding-top: 50px;
		margin-bottom: 50px;
	}

	#fight{
		margin-top: -50px;
		padding-top: 50px;
	}

	#praise{
		margin-top: -50px;
		padding-top: 50px;
	}
}

[class^=contest-team-name--] { margin-bottom: 30px; padding-bottom: 26px; font-size: 1.25em; font-weight: bold; position: relative; }
[class^=contest-team-name--]:after { content: ""; height: 6px; display: block; position: absolute; left: 0; right: 0; bottom: 0; }

.contest-team-name--gold { color: #9B7C00; }
.contest-team-name--gold:after {background: url('../img/repeatX.png') 0 -44px repeat-x; }
.contest-team-name--gold.border-none {margin-bottom: 0; }
.contest-team-name--gold.border-none:after {background: none; }

.contest-team-name--silver { color: #70797B; }
.contest-team-name--silver:after { background: url('../img/repeatX.png') 0 -132px repeat-x; }
.contest-team-name--silver.border-none {margin-bottom: 0; }
.contest-team-name--silver.border-none:after {background: none; }

.contest-team-name--copper { color: #98500B; }
.contest-team-name--copper:after { background: url('../img/repeatX.png') 0 -11px repeat-x; }
.contest-team-name--copper.border-none {margin-bottom: 0; }
.contest-team-name--copper.border-none:after {background: none; }

.contest-team-name--purple { color: #9C6EBC; }
.contest-team-name--purple:after { background: url('../img/repeatX2.png') 0 0 repeat-x; }
.contest-team-name--purple.border-none {margin-bottom: 0; }
.contest-team-name--purple.border-none:after {background: none; }

.contest-team-name--red { color: #f4594b; }
.contest-team-name--red:after { background: url('../img/repeatX.png') 0 -265px repeat-x; }

.template__old [class^=box--ceremony-] { margin-bottom: 80px; }
[class^=box--ceremony-]:last-child { margin-bottom: 0; }
[class^=box--ceremony-] [class^=contest-team-name--] { text-align: center; }
.contents-section > [class^=box--ceremony-] { margin-bottom: 0; }

[class^=box--ceremony-].past { width: 100%; margin: 0 0 20px; padding: 40px; display: table; position: static; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
[class^=box--ceremony-].past:last-child { margin-bottom: 0; }
[class^=box--ceremony-].past .ceremony-badge { display: table-cell; vertical-align: middle; margin: auto; }
[class^=box--ceremony-].past [class^=contest-team-name--] { margin: 0; padding: 0; display: table-cell; padding-left: 50px; text-align: left; vertical-align: middle; }
[class^=box--ceremony-].past [class^=contest-team-name--]:after { display: none; }
[class^=box--ceremony-].past .btn-wrapper { margin-top: 20px; text-align: left; }

@media screen and (max-width: 767px) {
	[class^=box--ceremony-].past { 
		display: block;
	}
	[class^=box--ceremony-].past .ceremony-badge {
		display: block;
	}
	[class^=box--ceremony-].past [class^=contest-team-name--] {
		display: block;
		padding-left: 0;
		margin-top: 20px;
	}
	.contest-team-name--gold, .contest-team-name--silver, .contest-team-name--copper, .fs--third-ttl{
		font-size: 16px;
	}
	[class^=contest-team-name--]{
		margin-bottom: 15px;
	}
	.btn-wrapper > li{
		font-size: 19px;
	}
	main{
		width: 100%;
	}
}

.ceremony-img-area { display: block; *zoom: 1; }
.ceremony-img-area:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
.ceremony-img-area [class^=img-] { margin-top: 20px; }
.ceremony-img-area .img-large { width: 680px; }

.ceremony-img-area.ceremony-img-areaFloat { 
	float: left; 
	width: 350px; 
	margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
	.ceremony-img-area.ceremony-img-areaFloat { 
		max-width: 350px;
		width: 50%;
		margin-right: 20px;
	}
	.ceremony-img-area .img-large { width: 100%; }
}
@media screen and (max-width: 600px) {
	.ceremony-img-area.ceremony-img-areaFloat { 
		max-width: 100%;
		width: 100%;
	}
	.ceremony-img-area.ceremony-img-areaFloat .floating--img- { 
		max-width: 350px;
		margin: 0 auto;
	}

	.ceremony-img-area .img-large { width: 100%; }
}

.ceremony-img-area [class^=img-small] { width: 330px; max-width: 49%; }
.ceremony-img-area .img-small-left { float: left; }
.ceremony-img-area .img-small-right { float: right; }
.ceremony-img-area .img-small-right.int { margin: 0 0 30px 20px; }

@media screen and (max-width: 768px){
	.ceremony-img-area .img-small-left{
		float: none;
		width: 100%;
	}
	.ceremony-img-area .img-small-left > img{
		width: 100%;
	}
	.ceremony-img-area .img-small-right{
		float: none;
		width: 100%;
	}
	.ceremony-img-area .img-small-right > img{
		width: 100%;
	}
	.ceremony-img-area [class^=img-small]{
		max-width: none;
	}
}

[class^=ceremony-int-ttl] { margin-bottom: 20px; padding: 10px 0; font-size: 1.125em; text-align: center; font-weight: bold; }

.ceremony-int-ttl--gold { border: 2px dotted #9B7C00; border-width: 2px 0; }

.ceremony-int-ttl--silver { border: 2px dotted #70797B; border-width: 2px 0; }

.ceremony-int-ttl--copper { border: 2px dotted #98500B; border-width: 2px 0; }

.ceremony-int-ttl--purple { border: 2px dotted #9C6EBC; border-width: 2px 0; }

.ceremony-int-talk { margin-bottom: 30px !important; }
.ceremony-int-talk dt { font-weight: bold; margin-top: 15px; }
.ceremony-int-talk dt:first-child { margin-top: 0; }
.ceremony-int-talk dd { margin-top: 15px; }

/*その他の賞*/
.award-badge { width: 138px; height: 120px; margin: -90px auto 40px !important; }
.box--award-ex-detail .award-badge { margin: 0; position: absolute; top: -10px; left: 40px; }
.award-badge--olympic { 
	width: 449px; 
	max-width: 100%; 
	height: 120px; 
	margin: -80px auto 40px !important;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.award-badge--olympic { margin-bottom: 8vw; height: none;}
	.award-badge { margin: -80px auto 8vw !important; }
	.box--award-ex-detail .award-badge { 
		top: -30px; 
		left: 0; 
		right: 0;
		margin: 0 auto; 
	}
}

[class^=box--award-] { margin-top: 50px; }

[class^=box--award-ex] { background: #B1F5FF; }

.box--award-ex-detail { margin-top: 10px; padding-top: 25px; position: relative; }

.box--award-fight { background: #FFE5C3; }

.box--award-praise { background: #BCFFD0; }

.box--award-school { background: #BCE5FF; }

.box--award-team { background: #A8F8EA; }

.box--award-special { background: #FFF0B4; }

.box--award-mext { background: #D6D1F9; }

.box--award-olympic { background: #fdd1e5; }

.box--award-rookie { background: #ffec91; }


.contest-team-name--ex { padding: 0 0 16px 165px; }
.contest-team-name--ex:after { left: 165px; background-position: 0 -12px; background: url('../img/repeatX.png') 0 -22px repeat-x; }

@media screen and (max-width: 767px) {
	.contest-team-name--ex { padding: 90px 0 16px 0; }
	.contest-team-name--ex:after { 
		left: 0; 
	}
	.box--award-special{
		margin-top: 60px;
	}
}

[class^=award-name-list--] td { width: 340px; padding-bottom: 37px; position: relative; font-size: 0.94em; font-weight: bold; line-height: 1.5; }
[class^=award-name-list--] td:after { content: ""; width: 321px; height: 6px; display: block; position: absolute; bottom: 20px; }
[class^=award-name-list--] td:first-child { padding-right: 17px; }
[class^=award-name-list--] td:first-child:after { left: 0; }
[class^=award-name-list--] td:last-child { padding-left: 17px; }
[class^=award-name-list--] td:last-child:after { right: 0; }
[class^=award-name-list--] tr:last-child td { padding-bottom: 0; }
[class^=award-name-list--] .bdr-none:after { display: none; }

/*@media screen and (min-width: 768px) and (max-width: 992px){
	.box--award-ex [class^=award-name-list--] td:after {
		content: "";
		width: 225px;
	}
}*/

@media screen and (max-width: 767px) {
	[class^=award-name-list--] td {
		width: 100%;
		display: block;
	}
	[class^=award-name-list--] td:after {
		content: "";
		width: 100%;
	}
	[class^=award-name-list--] td:first-child {
		padding-right: 0;
		font-size: 16px;
	}
	[class^=award-name-list--] td:last-child {
		padding-left: 0;
		font-size: 16px;
	}
	table[class^=award-name-list--]{
		width: 100%;
	}
	[class^=award-name-list--] .bdr-none.sp-bdr-block:after { display: block; }
	[class^=award-name-list--] .bdr-none.sp-bdr-block.sp-pb { padding-bottom: 37px; }
}

.award-name-list--en td:after { background-position: 0 -12px; background: url('../img/repeatX.png') 0 -22px repeat-x; }

.award-name-list--fight td:after { background-position: 0 -18px; background: url('../img/repeatX.png') 0 -33px repeat-x; }

.award-name-list--praise td:after { background-position: 0 -54px; background: url('../img/repeatX.png') 0 -99px repeat-x; }

.award-name-list--school td:after { background-position: 0 -66px; background: url('../img/repeatX.png') 0 -121px repeat-x; }

.award-name-list--team td:after { background-position: 0 -84px; background: url('../img/repeatX.png') 0 -154px repeat-x; }

.award-name-list--special td:after { background-position: 0 -78px; background: url('../img/repeatX.png') 0 -143px repeat-x; }

.award-name-list--rookie td:after {
	background-position: 0 0;
	background: url(../img/results_dotline1.png) 0 0 repeat-x;
}

.award-special--lead { display: table; margin: 0 0 35px; }

.award-special--lead-ttl { color: #A4830C; width: 200px; font-size: 1.25em; font-weight: bold; display: table-cell; vertical-align: middle; }

.award-special--lead-txt { padding-left: 25px; display: table-cell; vertical-align: middle; }

@media screen and (max-width: 767px) {
	.award-special--lead {
		display: block;
	}
	.award-special--lead-ttl {
		width: 100%;
		display: block;
	}
	.award-special--lead-txt {
		padding-left: 0;
		display: block;
	}
}

/* judges
/*---------------------*/
.box--judges--profile { background: #ffdbe8; margin-bottom: 50px; padding: 40px 45px; }
.box--judges--profile img { width: 220px; float: left; }

.profile-text-area { float: right; width: 420px; display: block; }

.profile-name { font-weight: bold; font-size: 1.25em; margin-bottom: 5px; }

.profile-text { font-size: 0.9em; line-height: 1.8; }
.profile-text th { width: 85px; text-align: left; }
/* .profile-text th { width: 70px; text-align: left; } */

.ttl-judges-message { font-weight: bold; clear: both; padding: 20px 0 0; margin-bottom: 20px; }
.ttl-judges-message:after { content: ""; display: block; width: 100%; height: 6px; margin-top: 10px; background-position: 0 -48px; background: url('../img/repeatX.png') 0 -88px repeat-x; }

.judges-img-area { 
	max-width: 680px; 
	width: 100%;
	margin: 0 auto; display: block; *zoom: 1; }
.judges-img-area:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }

.judges-img-box { 
	max-width: 330px; 
	width: 100%;
	margin: 20px 20px 0 0; float: left; }
.judges-img-box:nth-child(2n) { margin-right: 0; }
.judges-img-box:nth-child(-n+2) { margin-top: 0; }

@media screen and (max-width: 767px) {
	.box--judges--profile img { 
		max-width: 220px;
		width: 100%; 
		margin: 0 auto;
		float: none; 
		display: block;
	}
.profile-text-area { 
	float: none; 
	width: 100%; 
	display: block; 
	margin-top: 20px;
	}
	.judges-img-box { 
		width: calc(50% - 10px);
	}
}

/* Q&A
/*---------------------*/
.box--faq-highlight { background: #FFF7C4; }

.faq-list dt { margin-bottom: 3px; padding: 17px 72px 13px 75px; background: #B9ECFF; font-size: 18px; font-weight: bold; position: relative; cursor: pointer; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.faq-list dt:focus { outline: 0; }
.faq-list dt:before { content: ""; display: block; position: absolute; left: 15px; top: 10px; background-position: 0 -2164px; height: 40px; width: 40px; background: url('../img/fix.png') 0 -2349px no-repeat; }
.faq-list dt:after { content: ""; display: block; position: absolute; right: 30px; top: 0; bottom: 0; margin: auto 0; background-position: 0 0; height: 18px; width: 22px; background: url('../img/fix.png') 0 0 no-repeat; }
.faq-list dd { margin-bottom: 20px; padding: 15px 30px 12px 75px; background: #e2f7ff; position: relative; -webkit-border-radius: 5px; -moz-border-radius: 5px; -ms-border-radius: 5px; border-radius: 5px; }
.faq-list dd:last-child { margin-bottom: 0; }
.faq-list dd:before { content: ""; display: block; position: absolute; left: 15px; top: 10px; background-position: 0 -2132px; height: 32px; width: 32px; background: url('../img/fix.png') 0 -2312px no-repeat; }
.faq-list dd .notes { line-height: 1.5; }

@media screen and (max-width: 767px) {

	.faq-list dt {
		padding: 17px 50px 13px 70px;
	}
	.faq-list dt:after { 
		right: 15px; 
	}
	.faq-list dd {
		padding: 15px 20px 12px 70px;
	}
}

/* 出張授業
/*---------------------*/
#class [class^="contest-team-name--"] {
	font-size: 1.65em;
	line-height: 1.3;
}
#class [class^="table--"] a {
	color: #333333;
}

/* メインビジュアルスライダー
--------------------------*/
.top--main-visual--slide,
.top--main-visual--slide-wrap {
	display: block;
	/* width: 980px; */
	width: 831px;
	position: relative;
	z-index: 0;
}
.top--main-visual--slide {
	height: 235px;
	/* height: 570px; */
	/* margin-top: 40px; */
	text-align: center;
	right: 0;
	left: 0;
	margin: 240px auto 0;
}
.top--main-visual--slide-wrap {
	height: 119px;
	/* height: 492px; */
	margin-bottom: 20px;
	-webkit-box-shadow: 0 2px 5px rgba(0,0,0,0.3);
	-moz-box-shadow: 0 2px 5px rgba(0,0,0,0.3);
	-ms-box-shadow: 0 2px 5px rgba(0,0,0,0.3);
	box-shadow: 0 2px 5px rgba(0,0,0,0.3);
	border-radius: 8px;
	overflow: hidden;
}
.top--main-visual--slide-prev,
.top--main-visual--slide-next {
	display: block;
	width: 48px;
	height: 48px;
	position: absolute;
	z-index: 10;
	top: 222px;
}
.top--main-visual--slide-prev { left: -22px; }
.top--main-visual--slide-next { right: -22px; }

.top--main-visual--slide-visual {
	display: block;
	/* width: 980px; */
	width: 831px;
	padding-top: 633px;
	/* padding-top: 492px; */
}
.top--main-visual--slide-visual li {
	display: block;
	/* width: 980px; */
	width: 831px;
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
}
.top--main-visual--slide-visual li:first-child { z-index: 20; }


@media screen and (max-width: 767px) {
	.top--main-visual--slide,
	.top--main-visual--slide-wrap {
		width: 100%;
	}
	.top--main-visual--slide {
		height: calc(414 / 750 * 100%);
		margin: calc(460 / 750 * 100%) auto 0;
	}
	.top--main-visual--slide-wrap {
		height: calc(550 / 750 * 100%);
		-webkit-box-shadow: none;
		-moz-box-shadow: none;
		-ms-box-shadow: none;
		box-shadow: none;
	}
	.top--main-visual--slide-visual {
		width: 100%;
		/* padding-top: 633px; */
	}
	.top--main-visual--slide-visual li {
		width: 100%;
	}
}

.top--main-visual--slide-visual li .btn--slide-detail {
	display: block;
	width: 296px;
	height: 66px;
	position: absolute;
	z-index: 10;
	right: 92px;
	bottom: 62px;
	background: url(../img/btn_detail.png) no-repeat top left;
}
.top--main-visual--slide-visual li .btn--slide-detail:hover,
.top--main-visual--slide-visual li .btn--slide-detail02:hover,
.top--main-visual--slide-visual li .btn--slide-detail03:hover {
	background-position: bottom left;
}
.top--main-visual--slide-visual li .btn--slide-detail a,
.top--main-visual--slide-visual li .btn--slide-detail02 a,
.top--main-visual--slide-visual li .btn--slide-detail03 a {
	display: block;
	width: 100%;
	height: 100%;
}
.top--main-visual--slide-visual li .btn--slide-detail02 {
	display: block;
	width: 270px;
	height: 66px;
	position: absolute;
	z-index: 10;
	left: 200px;
	bottom: 100px;
	background: url(../img/btn_detail02.png) no-repeat top left;
}
.top--main-visual--slide-visual li .btn--slide-detail03 {
	display: block;
	width: 270px;
	height: 66px;
	position: absolute;
	z-index: 10;
	right: 204px;
	bottom: 100px;
	background: url(../img/btn_detail03.png) no-repeat top left;
}

.top--main-visual--slide-thumb { display: inline; }
.top--main-visual--slide-thumb li {
	display: inline-block;
	width: 17px;
	height: 17px;
	background-color: #fff;
	border: 2px solid #fff;
	border-radius: 50%;
	margin-left: 18px;
	cursor: pointer;
}
.top--main-visual--slide-thumb li:first-child { margin-left: 0; }
.top--main-visual--slide-thumb li.is-current { background-color: #ffaf23; }
.top--main-message {
	display: block;
	width: 100%;
	height: 162px;
	background-color: #ff8400;
	text-align: center;
	margin-bottom: 40px;
	padding-top: 18px;
	position: relative;
	z-index: 10;
}
.top--main-message.is--limit {
	height: 178px;
	background-image: none;
	margin-bottom: 23px;
}
.top--main-message.is--limit02 {
	height: auto;
	padding: 42px 0 43px;
	background-image: none;
	margin-bottom: 23px;
}

/* ラジオ体操について
---------------------------*/
.about-box:after {
	content: "";
	display: block;
	clear: both;
}
.about-box .about-img {
	display: block;
	width: 262px;
	float: right;
}
.about-box .about-txt {
	display: block;
	width: 498px;
	float: left;
}

/*余白調整*/
.minus-Padding{
	padding-right: -15px;
	padding-left: -15px;

}

/*一覧へ戻るボタンホバー時*/
.typesquare_option:hover{
	opacity: 0.75;
	transition: all 0.2s;
}

/*写真回り込み改善*/
@media screen and (max-width: 576px) {
  .small_image {
    width: 100% !important;
    padding-right: 1em;
    padding-left: 1em;
    margin-bottom: 1em;
  }

  .small_text-top {
    margin-bottom: 0;
  }
}

/*リボン上下左右中央揃え*/
.sect-inner-ttl-ribbon {
  display: flex;
  align-items: center;
  justify-content: center;
}
