/* カリキュラム 教科別ラベル表示 */

ul#challenge_list{
	flex-flow		: wrap;
}
ul#challenge_list > li.list-group-item.sansuu{
	width			: 100%;
}
ul#challenge_list > li.list-group-item.math{
	width			: 100%;
}
ul#challenge_list > li.list-group-item.kokugo,
ul#challenge_list > li.list-group-item.rika,
ul#challenge_list > li.list-group-item.shakai,
ul#challenge_list > li.list-group-item.eigo{
	width			: 100%;
}
.curriculum_subject_label .subject_name{
	font-size	: .8em;
	padding		: 0.5em;
	color		: gray;
	display		: none;
}
.curriculum_subject_label.multiple_subject .subject_name{
	display		: block;
}

table.curriculum_label{
	width			: 100%;
	color			: #212529;
}
table.curriculum_label td{
	padding			: 12px;
}

/* 問題 */
table.curriculum_label .info{
	width			: 70px;
	background		: #da0198;
	text-align		: center;
	color			: white;
	padding			: 4px;
	border			: 1px solid #da0198;
}
table.curriculum_label .info > .class{
	font-size		: 120%;
}
table.curriculum_label .info > .class_text{
	font-size		: 70%;
}
table.curriculum_label .info > .program_number{
	font-size		: 150%;
}
table.curriculum_label .detail{
	padding			: 2px 12px;
	border			: 1px solid #da0198;
	border-right	: none;
}
table.curriculum_label .detail > .grade{
	background		: #787878;
	margin-right	: 8px;
	padding			: 2px 8px;
	color			: white;
	font-size		: 80%;
}
table.curriculum_label .detail > .grade_text,
table.curriculum_label .example_detail > .grade_text,
table.curriculum_label .test_detail > .grade_text{
	font-size		: 90%;
}
table.curriculum_label .detail > .title,
table.curriculum_label .example_detail > .title,
table.curriculum_label .test_detail > .title{
	font-size		: 135%;
}
/* 例題 */
table.curriculum_label .example_info{
	width			: 70px;
	text-align		: center;
	color			: white;
	padding			: 0;
	vertical-align	: top;
}
table.curriculum_label .example_info > .grade{
    display			: block;
    background		: #787878;
}
table.curriculum_label .example_info > .class{
	display			: block;
	font-size		: 150%;
	background		: #da0198;
}
table.curriculum_label .example_info > .class_text{
	display			: block;
	font-size		: 70%;
	background		: -webkit-linear-gradient(75deg,  transparent 50%, #da0198 50%),
	        		-webkit-linear-gradient(105deg, transparent 50%, #da0198 50%),
        			-webkit-linear-gradient(0deg, #da0198 50%, #da0198 50%),
	       			-webkit-linear-gradient(0deg, #da0198 50%, #da0198 50%);
	background-position	: bottom left, bottom right, top right, top left;
    background-size		: 51% 51%;
    background-repeat	: no-repeat;
}
table.curriculum_label .example_detail{
	border			: 1px solid #da0198;
	border-right	: none;
}
table.curriculum_label .annotation{
	width			: 120px;
	border			: 1px solid #da0198;
	border-left		: none;
	text-align		: right;
	white-space		: nowrap;
}
table.curriculum_label .annotation > span,
table.curriculum_label .annotation > div.content_icon{
	display			: inline-block;
    white-space		: nowrap;
    vertical-align	: middle;
}
table.curriculum_label .annotation > .text{
	background		: #fadcf1;
    padding			: 4px 16px;
	display			: none;
}
table.curriculum_label .annotation > .example_text{
	background		: #da0198;
	color			: white;
	padding			: 4px 16px;
	display			: none;
}
table.curriculum_label .annotation > .test_text{
	background		: #787878;
	color			: white;
	padding			: 4px 16px;
	transform-origin: right;
    transform		: scale(0.85,1);
	display			: none;
}

/* テスト */
table.curriculum_label .test_info{
	width			: 70px;
	text-align		: center;
	color			: white;
	padding			: 4px;
	background		: #da0198;
	border			: 1px solid #da0198;
}
table.curriculum_label .test_info > .grade{
	font-size		: 80%;
}
table.curriculum_label .test_info > .class{
	font-size		: 150%;
}
table.curriculum_label .test_info > .class_text{
	font-size		: 70%;
}
table.curriculum_label .test_name{
	width			: 100px;
	text-align		: center;
	padding			: 4px;
	background		: #fadcf1;
	font-size		: 90%;
	white-space		: nowrap;
	border			: 1px solid #da0198;
	border-right	: none;
}
table.curriculum_label .test_name .atomic_square{
	font-size		: 160%;
    border			: 2px solid #da0198;
    padding			: 3px;
    background		: white;
    margin-right	: 3px;
    line-height		: 1;
    display			: inline-block;
}
table.curriculum_label .test_name .atomic_square > span{
	border			: 1px solid #da0198;
	padding			: 2px;
	line-height		: 1;
	display			: inline-block;
}
table.curriculum_label .test_detail{
	border			: 1px solid #da0198;
	border-left		: none;
	border-right	: none;
}
/* 帯ホバー */
table.curriculum_label:hover td.example_detail,
table.curriculum_label:hover td.detail,
table.curriculum_label:hover td.test_detail,
table.curriculum_label:hover td.annotation{
	background		: #fafafa;
}

/* 履修済み課題の帯 */
li.curriculum_item.complete table.curriculum_label td.example_detail,
li.curriculum_item.complete table.curriculum_label td.detail,
li.curriculum_item.complete table.curriculum_label td.test_detail,
li.curriculum_item.complete table.curriculum_label td.annotation{
	background		: var(--bg-cream);
}
table.curriculum_label span.complete_message{
	color			: red;
    margin-left		: 10px;
	display			: block;
}
table.curriculum_label span.complete_message.score_max:before{
	content:"";
	display: inline-block;
	width: 1.2em;
	height: 1.2em;
	vertical-align: sub;
	background-size: 100% 100%;
	background-image: url("../img/hanamaru.png");
}
table.curriculum_label span.mainichi_complete{
	display: inline-block;
}
ul.top_curriculum_list  table.curriculum_label{
	/*font-size		: 80%;*/
}
li.curriculum_item.empty_uid{
	background		: lightpink;
}
li.curriculum_item.latest_curriculum{
	background		: var(--bg-cream);
	animation		: latest_curriculum_bg 2s linear infinite;
}
li.curriculum_item div.latest_information{
	padding			: .5em;
	font-size		: .9em;
	text-align		: center;
	color			: red;
}
@keyframes latest_curriculum_bg {
  0%{
    background		: var(--bg-cream);
  }

  50%{
  	background		: #fffb96;
  }
  
  100%{
    background		: var(--bg-cream);
  }
}

@media screen and (max-width: 992px){
	table.curriculum_label .info,
	table.curriculum_label .example_info,
	table.curriculum_label .test_info{
		width			: 50px;
	}
	table.curriculum_label .test_name{
		width			: 80px;
	}
	table.curriculum_label .annotation{
		width			: 90px;
	}
}
@media screen and (max-width: 768px){
	table.curriculum_label .info,
	table.curriculum_label .example_info,
	table.curriculum_label .test_info{
		width			: 45px;
	}
	table.curriculum_label .test_name{
		width			: 70px;
	}
	table.curriculum_label .annotation{
		width			: 80px;
	}
}
@media screen and (max-width: 576px){
	table.curriculum_label .info,
	table.curriculum_label .example_info,
	table.curriculum_label .test_info{
		width			: 40px;
	}
	table.curriculum_label .test_name{
		width			: 60px;
	}
	table.curriculum_label .annotation{
		width			: 70px;
	}
}

/* カリキュラム帯/ベーシック算数 */
table.curriculum_label_basic_sansuu{
	width			: 100%;
	height			: 4em;
}
table.curriculum_label_basic_sansuu td{
	position		: relative;
}
table.curriculum_label_basic_sansuu td.info{
	width			: 4em;
    min-width		: 4em;
    color			: white;
    text-align		: center;
}
table.curriculum_label_basic_sansuu td.number{
	width			: 5em;
    min-width		: 5em;
    color			: white;
    text-align		: center;
}
table.curriculum_label_basic_sansuu td.number > div.program_number{
	width			: 3.6em;
	height			: 3.6em;
	background		: #009ed5;
    border-radius	: 100%;
    margin-left		: 0.2em;
}
table.curriculum_label_basic_sansuu td.number > div.program_number > span{
	font-size		: 2.5em;
}
table.curriculum_label_basic_sansuu td.number > div.bar{
	position		: absolute;
    right			: -0.1em;
    height			: 0.15em;
    background		: #009ed5;
    width			: 1.7em;
    top				: 50%;
}

table.curriculum_label_basic_sansuu td > div.label_bg{
	position		: absolute;
	background		: #ddeef8;
	height			: 3.5em;
	top				: 0.25em;
	width			: 50%;
	margin-left		: 50%;
}
table.curriculum_label_basic_sansuu td.name{
	min-width		: 50%;
}
table.curriculum_label_basic_sansuu td.detail{
	width			: 33%;
	min-width		: 10%;
}
table.curriculum_label_basic_sansuu td.name > div.label_bg,
table.curriculum_label_basic_sansuu td.detail > div.label_bg{
	width			: 100%;
	margin-left		: 0;
}
table.curriculum_label_basic_sansuu td.detail > div.label_bg{
	border-radius: 0 1.5em 0 0;
}

table.curriculum_label_basic_sansuu div.circle_bg{
	position		: absolute;
	z-index			: 1;
	width			: 100%;
    height			: 100%;
    top				: 0;
    left			: 0;
    background		: #02aedc;
    border-radius	: 100%;
    text-align		: center;
    line-height		: 4em;
}
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_b{
	background		: #a0d4ed;
}
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t{
	z-index			: 2;
	width			: 91%;
    height			: 91%;
    left			: 8%;
    top				: 2%;
}
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b{
	z-index			: 3;
    display			: block;
    width			: 0.1em;
    height			: 0.1em;
    position		: absolute;
    top				: 48%;
    left			: 48%;
    background		: white;
    border-radius	: 100%;
}
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(1){	transform: translate(0em	, -1.60em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(2){	transform: translate(0.75em	, -1.35em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(3){	transform: translate(1.35em	, -0.75em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(4){	transform: translate(1.60em	, 0em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(5){	transform: translate(1.35em	, 0.75em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(6){	transform: translate(0.75em	, 1.35em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(7){	transform: translate(0em	, 1.60em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(8){	transform: translate(-0.75em, 1.35em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(9){	transform: translate(-1.35em, 0.75em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(10){transform: translate(-1.60em, 0em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(11){transform: translate(-1.35em, -0.75em); }
table.curriculum_label_basic_sansuu div.circle_bg.circle_bg_t > b:nth-child(12){transform: translate(-0.75em, -1.35em); }
table.curriculum_label_basic_sansuu .circle_mark{
	z-index			: 5;
    display			: block;
    background		: white;
    border-radius	: 100%;
    border			: 0.15em solid #02aedc;
    width			: 2em;
    height			: 2em;
    position		: absolute;
    top				: -0.6em;
    left			: -0.6em;
    background-image	: url(temp/crop_c.png);
    background-size		: 80%;
    background-repeat	: no-repeat;
    background-position	: center;
}
table.curriculum_label_basic_sansuu .circle_mark.mark_f{	background-image	: url(temp/bsansuu_f2.png);	}
table.curriculum_label_basic_sansuu .circle_mark.mark_e{	background-image	: url(temp/bsansuu_e2.png);	}
table.curriculum_label_basic_sansuu .circle_mark.mark_d{	background-image	: url(temp/bsansuu_d2.png);	}
table.curriculum_label_basic_sansuu .circle_mark.mark_c{	background-image	: url(temp/bsansuu_c2.png);	}
table.curriculum_label_basic_sansuu .circle_mark.mark_b{	background-image	: url(temp/bsansuu_b2.png);	}
table.curriculum_label_basic_sansuu .circle_mark.mark_a{	background-image	: url(temp/bsansuu_a2.png);	background-position-y: 10%;}
table.curriculum_label_basic_sansuu .arrow_mark{
	z-index			: 5;
    display			: block;
    color			: #a0d4ed;
    position		: absolute;
    top				: -0.8em;
    left			: 1.5em;
}
table.curriculum_label_basic_sansuu div.name_display{
	position		: absolute;
	z-index			: 10;
	top				: 50%;
    transform		: translateY(-50%);
    left			: 0;
    width			: 100%;
}
table.curriculum_label_basic_sansuu td.name > div.name_display{
	font-size		: 1.2em;
	margin-left		: 8px;
    padding			: 4px 1em;
	color			: #009ed5;
	border-bottom	: 1px solid #009ed5;
}
table.curriculum_label_basic_sansuu td.info > div.name_display > span.number{
	font-size		: 150%;
    margin			: 0 0 0.2em 0.2em;
    display			: inline-block;
}
table.curriculum_label_basic_sansuu td.info > div.name_display > span.suffix{
	font-size		: 80%;
}
table.curriculum_label_basic_sansuu td.info > div.name_display.hiragana{
	top				: 60%;
	white-space		: nowrap;
}
table.curriculum_label_basic_sansuu td.info > div.name_display.hiragana > span.number{
	display			: block;
	line-height		: 0;
}
table.curriculum_label_basic_sansuu td.info > div.name_display.hiragana > span.suffix{
	display			: block;
	line-height		: 2em;
	font-size		: .7em;
}
table.curriculum_label_basic_sansuu div.annotation{
	text-align		: right;
    padding			: 12px;
    white-space		: nowrap;
}
table.curriculum_label_basic_sansuu div.annotation span.text{
	color			: #212529;
	background		: #fadcf1;
    padding			: 0.2em 0.5em;
    border			: 1px solid #fabdf1;
	display			: none;
}
table.curriculum_label_basic_sansuu div.annotation div.content_icon{
	display			: inline-block;
    white-space		: nowrap;
    vertical-align	: middle;
}

table.curriculum_label_basic_sansuu.example.grade_a[data-transition="tutorial"] div.annotation span.text,
table.curriculum_label_basic_sansuu.example.grade_b[data-transition="tutorial"] div.annotation span.text{
	transform		: scaleX(0.8);
	display			: inline-block;
	margin-right	: -2em;
	transform-origin: left;
	display			: none;
}
/* ベーシック算数 問題 */
table.curriculum_label_basic_sansuu.question div.circle_bg.circle_bg_t{
	background		: white;
}
table.curriculum_label_basic_sansuu.question div.circle_bg.circle_bg_t > b{
	background		: #b9dff1;
}
table.curriculum_label_basic_sansuu.question td.info > div.name_display{
	color			: #009ed5;
}
table.curriculum_label_basic_sansuu.question td.name > div.name_display{
	border			: none;
}
table.curriculum_label_basic_sansuu.question div.label_bg{
	border			: 0.15em solid #009ed5;
    background		: white;
}
table.curriculum_label_basic_sansuu.question td.name > div.label_bg{
	border-right	: none;
	border-radius	: 2em 0 0 2em;
}
table.curriculum_label_basic_sansuu.question td.detail > div.label_bg{
	border-left		: none;
	border-radius	: 0 2em 2em 0;
}
/* ベーシック算数 テスト */
table.curriculum_label_basic_sansuu.jumping{
	background		: #b9dff1;
	border-radius	: 0.8em;
}
table.curriculum_label_basic_sansuu.classup{
	background		: #02aedc;
	border-radius	: 0.8em;
}
table.curriculum_label_basic_sansuu.classup_hiragana{
	background		: #4fb8ec;
	color			: white;
	border-radius	: 0.8em;
}
table.curriculum_label_basic_sansuu td.testtype{
	width			: 25%;
	text-align		: center;
}

table.curriculum_label_basic_sansuu.jumping td.testtype{
	color			: #009ed5;
	background-image	: url(temp/bsansuu_whitearrow.png);
    background-size		: 100% 90%;
    background-repeat	: no-repeat;
}
table.curriculum_label_basic_sansuu.jumping td.testtype div.name_display > span:first-child{
	padding-right	: 3em;
}
table.curriculum_label_basic_sansuu.jumping td.testtype div.name_display > span{
	display			: block;
	margin-top		: 0.2em;
	white-space			: nowrap;
}
table.curriculum_label_basic_sansuu.classup td.testtype{
	color			: white;
	white-space		: nowrap;
}
table.curriculum_label_basic_sansuu.classup td.testtype > div.name_display > span.circle{
	background-image	: url(temp/bsansuu_whitecircle.png);
	width				: 2em;
	height				: 2em;
	font-size			: 1.2em;
	display				: inline-block;
	background-size		: contain;
	color				: #009ed5;
	vertical-align		: middle;
	line-height			: 2em;
	margin-right		: 0.2em;
}
table.curriculum_label_basic_sansuu.classup td.testtype > div.name_display > span.circle{
}
table.curriculum_label_basic_sansuu.classup td.testtype > div.name_display > span.circle:first-child{
	margin-top: -0.15em;
}
table.curriculum_label_basic_sansuu.jumping td.name,
table.curriculum_label_basic_sansuu.classup td.name{
	width			: 50%;
}
table.curriculum_label_basic_sansuu.jumping td.name > div.label_bg,
table.curriculum_label_basic_sansuu.classup td.name > div.label_bg,
table.curriculum_label_basic_sansuu.classup_hiragana td.name > div.label_bg{
	background		: white;
	border			: 0.15em solid #02aedc;
	border-radius	: 2em;
	height			: 3em;
    top				: 0.5em;
}
table.curriculum_label_basic_sansuu.jumping td.name > div.name_display,
table.curriculum_label_basic_sansuu.classup td.name > div.name_display,
table.curriculum_label_basic_sansuu.classup_hiragana td.name > div.name_display{
	border			: none;
}
table.curriculum_label_basic_sansuu .classup_hiragana_table > div.l{
	border-right		: 1px solid white;
}
table.curriculum_label_basic_sansuu .classup_hiragana_table > div.l > div.u{
	font-size		: 1.35em;
	padding			: 0 0 0 1em;
}
table.curriculum_label_basic_sansuu .classup_hiragana_table > div.l > div.b{
	font-size		: .8em;
	margin			: 0 0 0 2em;
	border-bottom	: 1px solid white;
	position		: relative;
	white-space		: nowrap;
}
table.curriculum_label_basic_sansuu .classup_hiragana_table > div.r{
	margin-left		: -1px;
}
table.curriculum_label_basic_sansuu .classup_hiragana_table > div.r > div.u{
	-webkit-transform: scale3d(1.0, 0.8, 1);
	-webkit-transform-origin: 0px 0px;
	margin-bottom	: -.4em;
	font-size		: 1.1em;
	background		: #4fb8ec;
	border-bottom	: 1px solid white;
	white-space		: nowrap;
}
table.curriculum_label_basic_sansuu .classup_hiragana_table > div.r > div.b{
	white-space		: nowrap;
	padding-top		: .2em;
	padding-left	: .3em;
	position		: absolute;
}
table.curriculum_label_basic_sansuu.classup_hiragana td.testtype > div.name_display span.double_circle{
	background-image	: url(temp/bsansuu_doublecircle.png);
	width				: 1.5em;
	height				: 1.5em;
	font-size			: 1.3em;
	display				: inline-block;
	background-size		: contain;
	color				: #49ade9;
	vertical-align		: middle;
	line-height			: 1.5em;
}

/* 履修済み課題の帯(ベーシック算数) */
li.curriculum_item.complete table.curriculum_label_basic_sansuu td > div.label_bg,
li.curriculum_item.complete table.curriculum_label_basic_sansuu td.test_detail,
li.curriculum_item.complete table.curriculum_label_basic_sansuu td.annotation{
	background		: var(--bg-cream);
}
table.curriculum_label_basic_sansuu span.complete_message,
.accordion_header .complete_message{
	color			: red;
    margin-left		: 10px;
    font-size		: 0.9em;
}
.accordion_header .complete_message{
	display			: none;
}
.accordion_header.complete .complete_message{
	display			: block;
}

/* 補足 page数 */
div.curriculum_page{
	position		: relative;
}
div.curriculum_page > span{
	line-height		: 1em;
    display			: block;
    font-size		: 0.8em;
    margin-top		: 0.2em;
}

/* アルゴ */
div#main_content[data-content_localize="algo"] ul#challenge_list{
	width			: 70%;
	margin			: 0 auto;
}
ul#challenge_list > li.list-group-item.algo{
	width			: 20%;
	padding			: .75em 0 0 .75em;
	border			: none;
}
ul#challenge_list > li.list-group-item.algo:nth-child(5n){
}
@media screen and (max-width: 576px){
	ul#challenge_list > li.list-group-item.algo{
		width			: 50%;
		padding			: .5em;
		font-size		: 2em;
	}
}
ul#challenge_list > li.curriculum_subject_label.algo{
	width			: 100%;
	display			: none !important;	/*課題の帯は非表示*/
}
table.curriculum_label_algo{
	width			: 100%;
}
div.algo_box{
	width			: 100%;
	height			: 0;
	padding-bottom	: 100%;
	
	position		: relative;
	
	
	transition					: transform 1.2s;
	transform-style				: preserve-3d;
	

}
div.algo_box .inner,
div.algo_box .inner_flip{
	position		: absolute;
    top				: 0;
    bottom			: 0;
    left			: 0;
    right			: 0;
	-webkit-backface-visibility	: hidden; /* Safari */
	backface-visibility			: hidden;
	border-radius	: 0.2em;
	border			: 1px solid darkgray;
	transition					: transform 1.2s;
	transform-style				: preserve-3d;
}
div.algo_box .inner_flip{
	transform		: rotateY(180deg);
	
}
div.algo_box .title{
	width			: 100%;
	text-align		: center;
	padding			: .5em;
	font-size		: 0.9em;
}
div.algo_box .number{
	text-align		: center;
	font-size		: 2.5em;
	line-height		: 0;
	position		: absolute;
	width			: 100%;
	top				: 50%;
    
}
div.algo_box .number.string_unit{
	font-size		: 1.25em;
	top				: 35%;
	line-height		: 1;
}
div.algo_box.flip{
	transform: rotateY(180deg);
}
div.algo_box .inner_flip .title{
	white-space		: nowrap;
}
div.algo_box .inner_flip .record{
	text-align		: center;
	font-size		: 0.6em;
	white-space		: nowrap;
}
div.algo_box .inner_flip .record > span{
	font-size		: 1.5em;
}

/* クリア回数によって七色に彩る */
:root {
	--clearcount_1	: rgb(250,156,154);/*#f59795*/
	--clearcount_2	: rgb(254,172,98);/*#f9a75d*/
	--clearcount_3	: rgb(255,227,83);/*#ffde4e*/
	--clearcount_4	: rgb(217,229,95);/*#d4e05a*/
	--clearcount_5	: rgb(250,156,154);/*#9cd19c*/
	--clearcount_6	: rgb(161,214,161);/*#82c1ea*/
	--clearcount_7	: rgb(204,156,201);/*#c797c4*/
	--clearcount_max: rgb(204,156,201);/*#c797c4*/
}
/*
--clearcount_1	: rgb(245,151,149);
--clearcount_2	: rgb(249,167,93);
--clearcount_3	: rgb(255,222,78);
--clearcount_4	: rgb(212,224,90);
--clearcount_5	: rgb(245,151,149);
--clearcount_6	: rgb(156,209,156);
--clearcount_7	: rgb(199,151,196);
--clearcount_max: rgb(199,151,196);
*/
li.curriculum_item.algo[data-clearcount="1"] div.algo_box > div{	color	: white;	background	: var(--clearcount_1);	border	: 1px solid var(--clearcount_1);	}
li.curriculum_item.algo[data-clearcount="2"] div.algo_box > div{	color	: white;	background	: var(--clearcount_2);	border	: 1px solid var(--clearcount_2);	}
li.curriculum_item.algo[data-clearcount="3"] div.algo_box > div{	color	: white;	background	: var(--clearcount_3);	border	: 1px solid var(--clearcount_3);	}
li.curriculum_item.algo[data-clearcount="4"] div.algo_box > div{	color	: white;	background	: var(--clearcount_4);	border	: 1px solid var(--clearcount_4);	}
li.curriculum_item.algo[data-clearcount="5"] div.algo_box > div{	color	: white;	background	: var(--clearcount_5);	border	: 1px solid var(--clearcount_5);	}
li.curriculum_item.algo[data-clearcount="6"] div.algo_box > div{	color	: white;	background	: var(--clearcount_6);	border	: 1px solid var(--clearcount_6);	}
li.curriculum_item.algo[data-clearcount="7"] div.algo_box > div{	color	: white;	background	: var(--clearcount_7);	border	: 1px solid var(--clearcount_7);	}
li.curriculum_item.algo[data-clearcount="max"] div.algo_box > div{	color	: white;	background	: var(--clearcount_max);	border	: 1px solid var(--clearcount_max);	}

#challenge_ready_title .algo_box,
#next_curriculum_list .algo_box{
	padding-bottom	: 20%;
}
li.algo_record_label{
	border			: none;
	width			: 100%;
	padding			: 1em 0 1em .75em;
	text-align		: center;
}
div.algo_record_button{
	border			: 1px solid darkgray;
	color			: var(--title-font-color);
	padding			: 0.8em !important;
	width			: 58%;
	cursor			: pointer;
}

/* まいにちトレーニング */
table.maitore_curriculum_label td{
	padding			: 0;
}
table.maitore_curriculum_label td.mainichi_diamond_wrap{
	width	: 16%;
	height	: 4.5em;
}
table.maitore_curriculum_label td.mainichi_training_display{
	width	: 55%;
}
table.maitore_curriculum_label td.add_annotation{
	width	: 8em;
}
table.maitore_curriculum_label div.mainichi_diamond{
	position		: relative;
	z-index			: 11;
	width			: 100%;
	height			: 4em;
}
table.maitore_curriculum_label div.mainichi_diamond_back_a,
table.maitore_curriculum_label div.mainichi_diamond_back_b{
	position: absolute;
    z-index: 12;
    width: 3.6em;
    height: 3.6em;
    left: 0em;
    top: 0em;
    transform: rotateZ(45deg);
    background: white;
    border: 3px double black;
}
table.maitore_curriculum_label div.mainichi_diamond_back_b{
	z-index: 13;
	border: 2px solid black;
    width: 3.36em;
    height: 3.36em;
    left: .12em;
    top: .12em;
}
table.maitore_curriculum_label div.mainichi_diamond_stage{
	position: absolute;
	z-index: 14;
    white-space: nowrap;
    top: -.8em;
    left: -1em;
    font-size: .75em;
    font-weight: bold;
    text-align: center;
    width: 8em;
    background: rgb(255,255,255);
	background: linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,0.75) 15%, rgba(255,255,255,0.75) 85%, rgba(255,255,255,0) 100%);
}
table.maitore_curriculum_label div.mainichi_diamond_line{
	position: absolute;
	z-index: 15;
    top: .2em;
    left: -.6em;
    width: 3em;
    text-align: center;
    white-space: nowrap;
    font-size: 2em;
    font-family: ui-monospace;
}
table.maitore_curriculum_label div.mainichi_bar{
	position		: relative;
	z-index			: 1;
	height			: 4em;
}
table.maitore_curriculum_label div.mainichi_back_bar{
	position: absolute;
    z-index: 2;
    top: .5em;
    width: 100%;
    height: 1em;
    line-height: 1;
    white-space: nowrap;
    background: #ddd;
}
table.maitore_curriculum_label td.mainichi_diamond_wrap div.mainichi_back_bar{
	left: 20%;
    width: 80%;
}
table.maitore_curriculum_label div.mainichi_back_text{
	position: absolute;
    z-index: 3;
}
table.maitore_curriculum_label div.mainichi_normal_text{
	position: relative;
	z-index: 4;
	top		: 2em;
}
/* まいトレの帯の色変え */
table.maitore_curriculum_label.red div.mainichi_back_bar{
	background		: #f39d9d;
}
table.maitore_curriculum_label.pink div.mainichi_back_bar{
	background		: #f5abe4;
}
table.maitore_curriculum_label.purple div.mainichi_back_bar{
	background		: #e7d7ed;
}
table.maitore_curriculum_label.navy div.mainichi_back_bar{
	background		: #a98aff;
}
table.maitore_curriculum_label.blue div.mainichi_back_bar{
	background		: #ccdbf7;
}
table.maitore_curriculum_label.green div.mainichi_back_bar{
	background		: #dfeaa4;
}
table.maitore_curriculum_label.brown div.mainichi_back_bar{
	background		: #fafcd1;
}
table.maitore_curriculum_label.yellow div.mainichi_back_bar{
	background		: #fafcd1;
}
table.maitore_curriculum_label.orange div.mainichi_back_bar{
	background		: #ffebce;
}

/* 標準の帯 */
table.normal_curriculum_label td{
	padding			: .5em;
	font-weight		: bold;
}
table.normal_curriculum_label td.normal_school{
	background		: #113d87;
	color			: white;
	text-align		: center;
	width			: 6em;
	white-space		: nowrap;
}
table.normal_curriculum_label td.normal_detail{
	background		: #d4e3ee;
	color			: #113d87;
	font-size		: 1.2em;
	padding-left	: 1em;
}
table.normal_curriculum_label td.normal_detail > div{
	width			: 100%;
	height			: 100%;
}
table.normal_curriculum_label td.normal_detail > div .grade{
	text-align		: center;
	width			: 2.5em;
	height			: 2.5em;
	vertical-align	: middle;
	margin-right	: .5em;
	border			: .15em solid;
	padding			: .35em;
}

table.normal_curriculum_label td.normal_detail div.number > span{
	display			: inline-block;
	margin-right	: .5em;
	border			: .15em solid;
	width			: 1.5em;
	height			: 1.5em;
	text-align		: center;
	border-radius: 100%;
	font-size: 1em;
	line-height: 1.25em;
}
table.normal_curriculum_label td.normal_detail div.unit_name{
	font-size		: .7em;
}
table.normal_curriculum_label td.normal_annotation{
	background		: #d4e3ee;
	color			: #113d87;
	font-size		: 1.2em;
	text-align		: right;
}
table.normal_curriculum_label td.normal_annotation > .type{
	background		: #9cc046;
	color			: white;
	padding			: .3em .75em;
	border-radius	: .75em;
	white-space		: nowrap;
}
table.normal_curriculum_label td.normal_annotation[data-curriculum_type="練習"] > .type,
table.normal_curriculum_label td.normal_annotation[data-curriculum_type="確認問題"] > .type{
	background		: #b8a550;
}
table.normal_curriculum_label td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #29457d;
}
table.normal_curriculum_label td.normal_annotation[data-curriculum_type="テスト"] > .type{
	background		: #dd5689;
}
table.normal_curriculum_label td.normal_grade{
	background		: #9acded;
	color			: #113d87;
	text-align		: center;
}
table.normal_curriculum_label td.add_annotation{
	background		: #d4e3ee;
	color			: #113d87;
	text-align		: right;
	padding-right	: 1em;
}
table.normal_curriculum_label td.add_annotation[data-annotation="0"]{
	width			: 1em;
	max-width		: 1em;
}
table.normal_curriculum_label td.add_annotation[data-annotation="1"]{
	width			: 4em;
}
table.normal_curriculum_label td.add_annotation[data-annotation="2"]{
	width			: 8em;
}

/* 標準の帯の色変え red */
table.normal_curriculum_label.red td.normal_school{
	background		: #bb4a34;
}
table.normal_curriculum_label.red td.normal_grade{
	color			: #bb4a34;
	background		: #f39d9d;
}
table.normal_curriculum_label.red td.normal_detail,
table.normal_curriculum_label.red td.normal_annotation,
table.normal_curriculum_label.red td.add_annotation{
	color			: #bb4a34;
	background		: #f8dad6;
}
table.normal_curriculum_label.red td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #bb4a34;
}

/* 標準の帯の色変え pink */
table.normal_curriculum_label.pink td.normal_school{
	background		: #dc229e;
}
table.normal_curriculum_label.pink td.normal_grade{
	color			: #dc229e;
	background		: #f5abe4;
}
table.normal_curriculum_label.pink td.normal_detail,
table.normal_curriculum_label.pink td.normal_annotation,
table.normal_curriculum_label.pink td.add_annotation{
	color			: #dc229e;
	background		: #f5dcec;
}
table.normal_curriculum_label.pink td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #dc229e;
}

/* 標準の帯の色変え purple */
table.normal_curriculum_label.purple td.normal_school{
	background		: #771b82;
}
table.normal_curriculum_label.purple td.normal_grade{
	color			: #771b82;
	background		: #d1a4ea;
}
table.normal_curriculum_label.purple td.normal_detail,
table.normal_curriculum_label.purple td.normal_annotation,
table.normal_curriculum_label.purple td.add_annotation{
	color			: #771b82;
	background		: #e7d7ed;
}
table.normal_curriculum_label.purple td.normal_annotation[data-curriculum_type="問題"]{
	width			: 4em;
}
table.normal_curriculum_label.purple td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #771b82;
}

/* 標準の帯の色変え navy */
table.normal_curriculum_label.navy td.normal_school{
	background		: #422f7f;
}
table.normal_curriculum_label.navy td.normal_grade{
	color			: #422f7f;
	background		: #a98aff;
}
table.normal_curriculum_label.navy td.normal_detail,
table.normal_curriculum_label.navy td.normal_annotation,
table.normal_curriculum_label.navy td.add_annotation{
	color			: #422f7f;
	background		: #e4e4f8;
}
table.normal_curriculum_label.navy td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #422f7f;
}

/* 標準の帯の色変え blue */
table.normal_curriculum_label.blue td.normal_school{
	background		: #001e9d;
}
table.normal_curriculum_label.blue td.normal_grade{
	color			: #001e9d;
	background		: #8fc0ff;
}
table.normal_curriculum_label.blue td.normal_detail,
table.normal_curriculum_label.blue td.normal_annotation,
table.normal_curriculum_label.blue td.add_annotation{
	color			: #001e9d;
	background		: #ccdbf7;
}
table.normal_curriculum_label.blue td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #001e9d;
}

/* 標準の帯の色変え green */
table.normal_curriculum_label.green td.normal_school{
	background		: #59821b;
}
table.normal_curriculum_label.green td.normal_grade{
	color			: #59821b;
	background		: #dfeaa4;
}
table.normal_curriculum_label.green td.normal_detail,
table.normal_curriculum_label.green td.normal_annotation,
table.normal_curriculum_label.green td.add_annotation{
	color			: #59821b;
	background		: #e8edd7;
}
table.normal_curriculum_label.green td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #59821b;
}

/* 標準の帯の色変え brown */
table.normal_curriculum_label.brown td.normal_school{
	background		: #736820;
}
table.normal_curriculum_label.brown td.normal_grade{
	color			: #736820;
	background		: #d7c29f;
}
table.normal_curriculum_label.brown td.normal_detail,
table.normal_curriculum_label.brown td.normal_annotation,
table.normal_curriculum_label.brown td.add_annotation{
	color			: #736820;
	background		: #fdddbc;
}
table.normal_curriculum_label.brown td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #736820;
}

/* 標準の帯の色変え yellow	 */
table.normal_curriculum_label.yellow td.normal_school{
	background		: #9f9c1b;
}
table.normal_curriculum_label.yellow td.normal_grade{
	color			: #9f9c1b;
	background		: #ecf867;
}
table.normal_curriculum_label.yellow td.normal_detail,
table.normal_curriculum_label.yellow td.normal_annotation,
table.normal_curriculum_label.yellow td.add_annotation{
	color			: #9f9c1b;
	background		: #fafcd1;
}
table.normal_curriculum_label.yellow td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #9f9c1b;
}

/* 標準の帯の色変え orange	 */
table.normal_curriculum_label.orange td.normal_school{
	background		: #c7751b;
}
table.normal_curriculum_label.orange td.normal_grade{
	color			: #c7751b;
	background		: #ffc460;
}
table.normal_curriculum_label.orange td.normal_detail,
table.normal_curriculum_label.orange td.normal_annotation,
table.normal_curriculum_label.orange td.add_annotation{
	color			: #c7751b;
	background		: #ffebce;
}
table.normal_curriculum_label.orange td.normal_annotation[data-curriculum_type="問題"] > .type{
	background		: #c7751b;
}