/* ==================== style.css ==================== */

.homework .check-answer {
  position: relative;
}
.homework .check-answer > button {
  display: flex;
  position: absolute;
  align-items: center;
  justify-content: center;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border: none;
  margin: 0;
  padding: 0;
  background: none;
  cursor: pointer;
  font-size: inherit;
}
.homework .check-answer > button:disabled {
  visibility: hidden;
  opacity: 0;
  cursor: default;
}
@media (max-width: 640px) {
  .homework .check-answer > button {
    font-size: 125%;
  }
}
.homework .check-answer:is(.answer) > button {
  width: 100%;
  height: 3em;
  background: url(../images/common/board_seal_text.svg) no-repeat center center/5.75em auto, url(../images/common/board_seal_left_top.png) no-repeat left top/1em 1em, url(../images/common/board_seal_center_top.png) no-repeat center top/calc(100% - 2em) 1em, url(../images/common/board_seal_right_top.png) no-repeat right top/1em 1em, url(../images/common/board_seal_left_bottom.png) no-repeat left bottom/1em 1em, url(../images/common/board_seal_center_bottom.png) no-repeat center bottom/calc(100% - 2em) 1em, url(../images/common/board_seal_right_bottom.png) no-repeat right bottom/1em 1em, url(../images/common/board_seal_left_center.png) no-repeat left center/1em calc(100% - 2em), url(../images/common/board_seal_right_center.png) no-repeat right center/1em calc(100% - 2em), url(../images/common/board_seal_center_center.png) no-repeat center center/calc(100% - 2em) calc(100% - 2em);
}

.homework .check-answer:is(.exp) > button {
  width: 100%;
  height: 4em;
  border-radius: 0.5em;
  background: #f5f5f5 url(../images/experiment/check_show_answer.svg) no-repeat center center/auto 1.8em;
}

.homework .check-answer:is(.click) > button {
  width: 14em;
  height: 2.2em;
  background: url(../images/common/checkansser_btn_click.svg) no-repeat center center/contain;
}

.homework .check-answer:is(.click2) > button {
  width: 4.4em;
  height: 1.1em;
  background: url(../images/common/checkansser_btn_click2.svg) no-repeat center center/contain;
}

.homework .check-answer .check-answer-content {
  transition: opacity 1.6s;
}
.homework .check-answer:is(:not(.open)) .check-answer-content {
  visibility: hidden;
  height: 4em;
  opacity: 0;
}

.homework .check-answer:is(.click2:not(.open)) .check-answer-content {
  height: 2em;
}

.homework .check-answer:is(.click2) .check-answer-content {
  min-height: 2em;
}

.homework .hw-contents-list ul {
  display: grid;
  align-items: center;
  justify-items: center;
  margin: 0;
  padding: 0;
  list-style-type: none;
}
@media (max-width: 640px) {
  .homework .hw-contents-list ul {
    padding: 0 1em;
    grid-gap: 0.75em;
  }
}
@media (min-width: 641px) {
  .homework .hw-contents-list ul::after {
    content: none;
  }
}
.homework .hw-contents-list ul li {
  transition: 150ms;
  /* toppage */
  /* footer */
}
.homework:is(.toppage) .hw-contents-list ul li:hover {
  transform: scale(1.05);
}

.homework .hw-contents-list:is(.footer) ul li:is(.on) {
  transform: scale(1.05);
}
.homework .hw-contents-list:is(.footer) ul li:not(.on) {
  opacity: 0.7;
  transform: scale(0.95);
}
.homework .hw-contents-list:is(.footer) ul li:not(.on):hover {
  opacity: 1;
  transform: none;
}

@media (min-width: 641px) {
  .homework:is(.observation, .craft) .hw-contents-list ul {
    display: flex;
    align-items: center;
  }
}
@media (min-width: 641px) {
  .homework:is(.observation, .craft) .hw-contents-list ul li {
    width: 10em;
    margin: 0 0.5em;
  }
}

.homework .experiment-ranking {
  display: grid;
  justify-items: center;
}
@media (max-width: 640px) {
  .homework .experiment-ranking {
    grid-row-gap: 1em;
  }
}
.homework .experiment-ranking.at-contents {
  padding-top: 1em;
}
.homework .experiment-ranking h3 {
  all: unset;
}
@media (min-width: 641px) {
  .homework .experiment-ranking h3 {
    position: relative;
    z-index: 4;
    margin-bottom: -1.5em;
  }
}
.homework .experiment-ranking h3 img {
  width: 18em;
}
.homework .experiment-ranking ol {
  all: unset;
  display: grid;
}
@media (max-width: 640px) {
  .homework .experiment-ranking ol {
    grid-row-gap: 1em;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol {
    align-items: end;
    justify-items: center;
  }
}
.homework .experiment-ranking ol li {
  all: unset;
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li {
    position: relative;
    transform-origin: center bottom;
    transition: 100ms;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:nth-of-type(1) {
    z-index: 1;
    grid-column: span 2;
    margin-bottom: -2em;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:nth-of-type(1) img {
    width: 33.15em;
  }
}
@media (max-width: 640px) {
  .homework .experiment-ranking ol li:nth-of-type(2) {
    justify-self: end;
    width: 85%;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:nth-of-type(2) {
    margin-right: -1.1em;
    z-index: 3;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:nth-of-type(2) img {
    width: 22.55em;
  }
}
@media (max-width: 640px) {
  .homework .experiment-ranking ol li:nth-of-type(3) {
    justify-self: start;
    width: 80%;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:nth-of-type(3) {
    z-index: 2;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:nth-of-type(3) img {
    width: 22.45em;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking ol li:hover {
    transform: scale(1.05);
  }
}
.homework .experiment-ranking small {
  all: unset;
  color: var(--color-exp-blue);
}
@media (max-width: 640px) {
  .homework .experiment-ranking small {
    font-size: 0.7em;
  }
}
@media (min-width: 641px) {
  .homework .experiment-ranking small {
    margin: 0.5em 2em 0;
    font-size: 0.6em;
    justify-self: end;
  }
}



/* ==================== homework/@.css ==================== */

.homework {
	background-size: 34px;
	color: black;
	line-height: 1.5;
}

.homework.experiment {
	background-image: url(../images/common/bg_pattern_experiment.png);
}
.homework.observation {
	background-image: url(../images/common/bg_pattern_observation.png);
}
.homework.craft {
	background-image: url(../images/common/bg_pattern_craft.png);
}
.homework.study {
	background-image: url(../images/common/bg_pattern_study.png);
}



/* ==================== homework/@responsive.css ==================== */

@media (max-width: 374px) {
	.homework,
	.homework img {
		font-size: 4vw;
	}
}

@media (min-width: 375px) {
	.homework,
	.homework img {
		font-size: 15px;
	}
}

@media (min-width: 641px) {
	.homework,
	.homework img {
		font-size: 2vw;
	}
}


@media (min-width: 1001px) {
	.homework,
	.homework img {
		font-size: 20px;
	}
}



/* ==================== homework/@vars.css ==================== */

.homework {
	--color-orange: #ff7b00;
	--color-red: #d8271c;

	--color-exp-blue: #005fb8;
	--color-exp-border-lightblue: #a6e1ff;

	--color-border-obs-lightgreen: #d5ee80;
	--color-obs-brown: #803300;
}



/* ==================== homework/chara-comment.css ==================== */

.homework .chara-comment {
	display: flex;
	align-items: center;
	justify-content: start;
	justify-content: center;
}

.homework .chara-comment img {
	position: relative;
	margin: 0 -0.5em;
}

.homework .chara-comment img[src$="chara_comment_chara_1.svg"] {width: 4.5em}
.homework .chara-comment img[src$="chara_comment_chara_2.svg"] {width: 4.55em}
.homework .chara-comment img[src$="chara_comment_chara_3.svg"] {width: 4.1em}
.homework .chara-comment img[src$="chara_comment_chara_4.svg"] {width: 4.1em}
.homework .chara-comment img[src$="chara_comment_chara_5.svg"] {width: 3.95em}
.homework .chara-comment img[src$="chara_comment_chara_6.svg"] {width: 4.3em}
.homework .chara-comment img[src$="chara_comment_chara_7.svg"] {width: 4.1em}


.homework .chara-comment p {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	box-sizing: border-box;
	min-height: 2.4em;
	border-radius: 1.2em;
	margin: 0;
	padding: 0.6em 1em;
	line-height: 1.3;
}

.experiment.homework .chara-comment p {
	background: #a6e1ff;
	color: #005fb8;
}
.craft.homework .chara-comment p {
	background: #ffe5e5;
	color: #d40000;
}
.study.homework .chara-comment p {
	background: #ffe489;
	color: #d40000;
}

.homework .chara-comment.in-board p {
	background: none;
	color: white;
}

.homework .chara-comment.right img {
	order: 2;
	transform: scaleX(-1);
}


@media (max-width: 640px) {
	.homework .chara-comment p {
		font-size: 90%;
	}

	.homework .chara-comment.in-board p {
		text-align: left;
	}

	.study.nutrients.homework .chara-comment p br {
		display: none;
	}
}


@media (min-width: 641px) {
	.homework .chara-comment p {
		font-size: 75%;
	}
}



/* ==================== homework/hw-border.css ==================== */

.homework .hw-border {
	background: repeat-x left top / 0.6em 0.1em;
}

.homework hr.hw-border {
	width: 100%;
	height: 0.1em;
	border: none;
}

.experiment.homework .hw-border {
	background-image: linear-gradient(to right, var(--color-exp-border-lightblue) 50%, transparent 50%);
}
.observation.homework .hw-border {
	background-image: linear-gradient(to right, var(--color-border-obs-lightgreen) 50%, transparent 50%);
}
.craft.homework .hw-border {
	background-image: linear-gradient(to right, #ffcccc 50%, transparent 50%);
}



/* ==================== homework/hw-content.css ==================== */

.homework .hw-content {
	display: flex;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	margin: 0 auto;
}


@media (min-width: 641px) {
	.homework .hw-content {
		width: 43em;
	}
}



/* ==================== homework/hw-footer/@.css ==================== */

.homework .hw-footer {
	padding: 1em 1em 2em;
}



/* ==================== homework/hw-footer/<nav>.css ==================== */

.homework .hw-footer nav h2 {
	margin: 0;
}
.homework .hw-footer nav h2 img {
	font-size: 50%;
}

.homework .hw-footer nav {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.homework .hw-footer nav > *:not(:first-child) {
	margin-top: 1em;
}



/* ==================== homework/hw-footer/tohome.css ==================== */

.homework .hw-footer .tohome img {
	width: 6.5em;
	transform-origin: 50% 100%;
	transition: 150ms;
}
.homework .hw-footer .tohome img:hover {
	transform: scale(1.1);
}



/* ==================== homework/hw-header/&.css ==================== */

.homework .hw-header {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: center;
}
.homework .hw-header img {
	font-size: 85%;
}
.toppage.homework .hw-header img {
	font-size: inherit;
}

.homework .hw-header h1 {
	margin: 0;
	font-size: inherit;
}


@media (max-width: 640px) {
	.homework .hw-header {
		padding-top: 2em;
	}

	.study.greatman.homework .hw-header h1 img { width: 20.5em; }
	.study.nutrients.homework .hw-header h1 img { width: 18em; }

	.homework .hw-header .tohome {
		position: absolute;
		left: 1em;
		top: 1em;
	}

}


@media (min-width: 641px) {

	.homework .hw-header {
		flex-direction: row;
		padding: 1.5em 0;
	}
	.homework .hw-header .tohome {
		position: absolute;
		left: 1em;
		top:  50%;
		transform: translateY(-50%);
	}

	.study.greatman.homework .hw-header h1 img { width: 41.7em; }
	.study.nutrients.homework .hw-header h1 img { width: 39.8em; }

	/* toppage */
	.toppage.homework .hw-header {
		flex-direction: column;
	}
	.toppage.homework .hw-header .tohome {
		position: static;
		transform: none;
	}
	.toppage.homework .hw-header h1 {
		margin-top: 0.5em;
	}

}



/* ==================== homework/hw-main/&.css ==================== */

.homework .hw-main {
	background: no-repeat center center;
	background-size: 100% calc(100% - 7em);
}

.experiment.homework .hw-main {
	background-image: linear-gradient(0deg, #e0f6ff, #e0f6ff);
}
.experiment.toppage.homework .hw-main {
	background-image: linear-gradient(0deg, white, white);
}

.observation.homework .hw-main {
	background-image: linear-gradient(0deg, #e6f5b2, #e6f5b2);
}
.craft.homework .hw-main {
	background-image: linear-gradient(0deg, #fff2f2, #fff2f2);
}
.study.homework .hw-main {
	background-image: linear-gradient(0deg, #fff1c4, #fff1c4);
}

.homework .hw-main::before,
.homework .hw-main::after {
	content: '';
	display: block;

	/* for meiji css */
	visibility: visible;

	width: 100%;
	height: 4em;
	background: repeat-x;
	background-size: auto 100%;
}

.homework .hw-main::before {
	background-position: center bottom;
}
.homework .hw-main::after {
	background-position: center top;
}

.experiment.homework .hw-main::before {
	background-image: url(../images/common/bg_header_experiment.png);
}
.experiment.homework .hw-main::after {
	background-image: url(../images/common/bg_footer_experiment.png);
}

.experiment.toppage.homework .hw-main::before {
	background-image: url(../images/common/bg_header_experiment_toppage.png);
}
.experiment.toppage.homework .hw-main::after {
	background-image: url(../images/common/bg_footer_experiment_toppage.png);
}


.craft.homework .hw-main::before {
	background-image: url(../images/common/bg_header_craft.png);
}
.craft.homework .hw-main::after {
	background-image: url(../images/common/bg_footer_craft.png);
}


.study.homework .hw-main::before {
	background-image: url(../images/common/bg_header_study.png);
}
.study.homework .hw-main::after {
	background-image: url(../images/common/bg_footer_study.png);
}
.study.nutrients.homework .hw-main::after {
	background-image: url(../images/common/bg_footer_study_w.png);
}



@media (max-width: 640px) {

	.homework .hw-main {
		margin-top: -5.5em;
	}
	.study.greatman.homework .hw-main {
		margin-top: -6.5em;
	}
	.study.nutrients.homework .hw-main {
		margin-top: -9em;
	}
	.homework .hw-main > :first-child {
		margin-top: 1.5em;
	}

	.toppage.homework .hw-main {
		margin-top: -6em;
	}
	.toppage.homework .hw-main > :first-child {
		margin-top: 2em;
	}

	.observation.homework .hw-main {
		margin-top: -4em;
	}
	.observation.homework .hw-main > :first-child {
		margin-top: 0.5em;
	}
	.observation.homework .hw-main::before {
		background-image: url(../images/common/bg_header_observation_sp.png);
	}
	.observation.homework .hw-main::after {
		background-image: url(../images/common/bg_footer_observation_sp.png);
	}

}

@media (min-width: 641px) {

	.homework .hw-main {
		margin-top: -1.5em;
	}

	.experiment.toppage.homework .hw-main {
		margin-top: 0;
	}

	.observation.homework .hw-main::before {
		background-image: url(../images/common/bg_header_observation.png);
	}
	.observation.homework .hw-main::after {
		background-image: url(../images/common/bg_footer_observation.png);
	}

}



/* ==================== homework/hw-main/<section>.css ==================== */

.homework .hw-main section {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 4em 1em 1em;
	background: repeat-x top center / auto 4em;
}

.observation.homework .hw-main section {
	padding-top: 5em;
}

.homework .hw-main section:nth-of-type(odd) {
}

.homework .hw-main section.light + hr {
	border: none;
	margin: 0;
	width: 100%;
	height: 4em;
	transform: rotate(180deg);
}

/* experiment */
.experiment.homework .hw-main section.light {
	background-color: white;
	background-image: url(../images/common/bg_experiment_main_1.png);
}
.experiment.homework .hw-main section.light + hr {
	background: url(../images/common/bg_experiment_main_1.png) repeat-x center top / auto 100%;
}
.experiment.homework .hw-main section.dark {
	background-image: url(../images/common/bg_experiment_main_2.png);
}

/* craft */
.craft.homework .hw-main section.light {
	background-color: white;
	background-image: url(../images/common/bg_craft_main_1.png);
}
.craft.homework .hw-main section.light + hr {
	background: url(../images/common/bg_craft_main_1.png) repeat-x center top / auto 100%;
}
.craft.homework .hw-main section.dark {
	background-image: url(../images/common/bg_craft_main_2.png);
}

/* study */
.study.homework .hw-main section.light {
	background-color: white;
	background-image: url(../images/common/bg_study_main_1.png);
}
.study.homework .hw-main section.light + hr {
	background: url(../images/common/bg_study_main_1.png) repeat-x center top / auto 100%;
}
.study.homework .hw-main section.dark {
	background-image: url(../images/common/bg_study_main_2.png);
}


.homework .hw-main section h3 {
	margin: 0 0 2em;
}


@media (max-width: 640px) {
	/* observation */
	.observation.homework .hw-main section:nth-of-type(odd) {
		background-color: white;
		background-image: url(../images/common/bg_observation_main_1_sp.png);
	}
	.observation.homework .hw-main section:nth-of-type(even) {
		background-image: url(../images/common/bg_observation_main_2_sp.png);
	}
}


@media (min-width: 641px) {
	/* observation */
	.observation.homework .hw-main section:nth-of-type(odd) {
		background-color: white;
		background-image: url(../images/common/bg_observation_main_1.png);
	}
	.observation.homework .hw-main section:nth-of-type(even) {
		background-image: url(../images/common/bg_observation_main_2.png);
	}
}



/* ==================== homework/hw-main/caution.css ==================== */

.homework .hw-main .caution {
	margin-top: 1em;
	color: var(--color-red);
	font-weight: bold;
}

.homework .hw-main #try .prepare .materials .caution {
	margin-top: 0;
}

.homework .hw-main .caution + .caution {
	margin-top: 0.25em;
}

.homework .hw-main .caution p {
	position: relative;
	margin: 0;
	padding-left: 1.25em;
}
.homework .hw-main .caution p::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	width: 1em;
	height: 1em;
	transform: translate(0, 0.2em) scale(1.1);
	background: url(../images/common/caution_icon.svg) no-repeat center center / contain;
}


@media (min-width: 641px) {
	.homework .hw-main .caution p {
		font-size: 80%;
	}
}



/* ==================== homework/hw-main/flow-notes.css ==================== */

.homework .hw-main .flow-notes {
	display: flex;
	justify-content: center;
}

.homework .hw-main .flow-notes ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.homework .hw-main .flow-notes li {
	display: flex;
}

.experiment.homework .hw-main .flow-notes {
	color: var(--color-exp-blue);
}


@media (min-width: 641px) {
	.homework .hw-main .flow-notes li {
		font-size: 80%;
	}
}



/* ==================== homework/hw-main/flow/&.css ==================== */

.craft.homework .hw-main .flow {
	position: relative;
}


.craft.homework .hw-main .flow::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 6em;
	height: 100%;
	background: linear-gradient(#ffcccc, #ffcccc) no-repeat center top / 0.5em 100%;
}

.craft.homework .hw-main .flow.lanthanm-agro::before {
	background-image: linear-gradient(#c4d9b4, #c4d9b4);
}



/* ==================== homework/hw-main/flow/&.flow2.css ==================== */

.homework .hw-main .flow.flow2 > h4 {
	justify-content: center;
	border: 1px solid;
	/* margin-top: 0.5em; */
	background: white;
	text-align: center;
}

.homework .hw-main .flow.flow2 > h4 {
	border-color: #ff0000;
	color: #d40000;
}

.homework .hw-main .flow.flow2 > h4 + p {
	margin: 1em auto;
}

.homework .hw-main .flow.flow2 > img:first-child {
	position: relative;
	width: 100%;
	height: 1.2em;
	padding: 0.25em 0;
	background: white;
	object-fit: contain;
}


@media (max-width: 640px) {

	.homework .hw-main .flow.flow2 > h4 + p {
		margin-left: 5em;
	}
}


@media (min-width: 641px) {

	.homework .hw-main .flow.flow2 > h4 + p {
		font-size: 90%;
	}

}



/* ==================== homework/hw-main/flow/> h4.css ==================== */

.homework .hw-main .flow > h4 {
	display: flex;
	position: relative;
	align-items: center;
	justify-content: space-between;
	box-sizing: border-box;
	width: 100%;
	min-height: 2.75em;
	border-radius: 0.5em;
	margin: 0;
	padding: 0.5em 1em;
	background: #ff4c4c;
	color: white;
	font-size: 100%;
	line-height: 1.3;
	cursor: pointer;
}

.homework .hw-main .flow.lanthanm-agro > h4 {
	background: #6f9965;
}

.homework .hw-main .flow > h4:nth-of-type(n+2) {
	margin-top: 1em;
}

.homework .hw-main .flow > h4::after {
	content: '';
	display: block;
	transition: 400ms 400ms;
	width: 1em;
	height: 1em;
	background: url(../images/craft/steps_close.svg) no-repeat center center / contain;
}

.homework .hw-main .flow > h4.close::after {
	transform: rotate(45deg);
}



/* ==================== homework/hw-main/flow/speed.css ==================== */

.homework .hw-main .flow .speed {
	display: flex;
	align-items: center;
	margin-top: 1em;
}
.experiment.homework .hw-main .flow .speed {
	color: var(--color-exp-blue);
}
.experiment.homework .hw-main .flow .speed img {
	margin-right: 1em;
}

.homework .hw-main .flow .speed::before {
	content: '';
	display: block;
	width: 2.5em;
	height: 2.5em;
	margin-right: 0.5em;
	background: url(../images/common/step_speed_icon.svg) no-repeat center center / contain;
}
.experiment.homework .hw-main .flow .speed p {
	color: var(--color-exp-blue);
}


@media (min-width: 641px) {
	.homework .hw-main .flow .speed p {
		font-size: 80%;
	}
}



/* ==================== homework/hw-main/flow/steps.css ==================== */

.homework .hw-main .flow .steps {
	margin-top: 1em;
}



/* ==================== homework/hw-main/flow/step/&.css ==================== */

.homework .hw-main .flow .step {
	width: 100%;
	position: relative;
}


@media (max-width: 640px) {
	.homework .hw-main .flow .step {
		display: grid;
		padding: 1.5em 0;
		grid-template-columns: 7em auto;
	}

	.homework .hw-main .flow .step:first-child {
		padding-top: 0;
	}

}


@media (min-width: 641px) {
	.homework .hw-main .flow .step {
		display: flex;
		align-items: center;
		padding: 1em 0;
	}

	.homework .hw-main .flow .step:first-child {
		padding-top: 0;
	}

	.homework .hw-main .flow .step::after {
		content: none;
	}

}



/* ==================== homework/hw-main/flow/step/&.finish.css ==================== */

.experiment.homework .hw-main .flow .step.finish .body > p,
.craft.homework .hw-main .flow .step.finish .body > p {
	font-weight: bold;
	line-height: 1.4;
}

.experiment.homework .hw-main .flow .step.finish .body > p span {
	display: inline-block;
}

.experiment.homework .hw-main .flow .step.finish .body > p {
	color: var(--color-exp-blue);
}

.experiment.homework .hw-main .flow .step.finish .comment {
	margin-top: 1em;
}

.homework .hw-main .flow .step.finish .pic img {
	width: 20em;
}


@media (max-width: 640px) {

	.experiment.homework .hw-main .flow .step.finish h5 {
		grid-row: 1;
	}
	.experiment.homework .hw-main .flow .step.finish .body,
	.craft.homework .hw-main .flow .step.finish .body  {
		padding: 0;
	}
	.experiment.homework .hw-main .flow .step.finish .pic,
	.craft.homework .hw-main .flow .step.finish .pic {
		grid-column: 1/3;
	}
	.experiment.homework .hw-main .flow .step.finish .body > p,
	.craft.homework .hw-main .flow .step.finish .body > p {
		font-size: 110%;
	}

	.experiment.homework .hw-main .flow .step.finish .comment {
		margin-right: auto;
	}

}


@media (min-width: 641px) {

	.experiment.homework .hw-main .flow .step.finish,
	.craft.homework .hw-main .flow .step.finish {
		padding: 2em 0;
	}

	.experiment.homework .hw-main .flow .step.finish .body > p,
	.craft.homework .hw-main .flow .step.finish .body > p {
		font-size: 90%;
	}
	.experiment.homework .hw-main .flow .step.finish .pic,
	.craft.homework .hw-main .flow .step.finish .pic {
		padding: 0;
	}

	/* .experiment.homework .hw-main .flow .step.finish .comment {
		position: absolute;
	} */
}



/* ==================== homework/hw-main/flow/step/&@background.css ==================== */

.homework .hw-main .flow .step {
	background: repeat-x left bottom / 0.6em 0.1em;
}

.experiment.homework .hw-main .flow .step {
	background-image: linear-gradient(to right, var(--color-exp-border-lightblue) 50%, transparent 50%);
}
.observation.homework .hw-main .flow .step {
	background-image: linear-gradient(to right, var(--color-border-obs-lightgreen) 50%, transparent 50%);
}
.craft.homework .hw-main .flow .step {
	background-image: linear-gradient(to right, #ffcccc 50%, transparent 50%);
}
.craft.homework .hw-main .flow.lanthanm-agro .step {
	background-image: linear-gradient(to right, #c4d9b4 50%, transparent 50%);
}

.observation.beansprouts.homework .hw-main .flow .step:nth-of-type(1),
.homework .hw-main .flow .step:last-child {
	background-image: none;
}

.craft.homework .hw-main .flow > div:last-child .step:last-child {
	background: white;
}



/* ==================== homework/hw-main/flow/step/&@before.css ==================== */

.homework .hw-main .flow .step::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 6em;
	background: no-repeat center top / 0.5em 100%;
}

.homework .hw-main .flow .step:nth-of-type(1)::before {
	background-position: center bottom;
}

.experiment.homework .hw-main .flow .step::before {
	background-image: linear-gradient(var(--color-exp-border-lightblue), var(--color-exp-border-lightblue));
}
.observation.homework .hw-main .flow .step::before {
	background-image: linear-gradient(var(--color-border-obs-lightgreen), var(--color-border-obs-lightgreen));
}
.craft.homework .hw-main .flow .step::before {
	background-image: linear-gradient(#ffcccc, #ffcccc);
}
.craft.homework .hw-main .flow.lanthanm-agro .step::before {
	background-image: linear-gradient(#c4d9b4, #c4d9b4);
}





@media (max-width: 640px) {

	.homework .hw-main .flow .step:first-child::before {
		background-size: 0.5em calc(100% - 2em);
	}

	.homework .hw-main .flow .step:last-child::before {
		background-size: 0.5em 2em;
	}

}


@media (min-width: 641px) {

	.homework .hw-main .flow .step:first-child::before,
	.homework .hw-main .flow .step:last-child::before {
		background-size: 0.5em 50%;
	}

}



/* ==================== homework/hw-main/flow/step/<h5>.css ==================== */

.homework .hw-main .flow .step h5 {
	position: relative;
	margin: 0;
	font-size: inherit;
	text-align: center;
}


@media (max-width: 640px) {
		.homework .hw-main .flow .step h5 {
			grid-column: 1;
			grid-row: 1/3;
			padding-right: 1em;
		}
}


@media (min-width: 641px) {
	.homework .hw-main .flow .step h5 {
		flex-shrink: 0;
		width: 6em;
		/* min-width: 6em; */
	}

}



/* ==================== homework/hw-main/flow/step/pic.css ==================== */

.homework .hw-main .flow .step .pic figure {
	margin: 0;
	text-align: center;
}
.homework .hw-main .flow .step .pic figure:nth-of-type(n+2) {
	margin-top: 1em;
}

.homework .hw-main .flow .step .pic figure img {
	width: 11em;
}


@media (max-width: 640px) {
	.homework .hw-main .flow .step .pic {
		margin-top: 1em;
	}
}


@media (min-width: 641px) {
	.homework .hw-main .flow .step .pic {
		flex-shrink: 0;
		padding-right: 1em;
	}
}



/* ==================== homework/hw-main/flow/step/body/@.css ==================== */

.homework .hw-main .flow .step .body > p {
	margin: 0;
}

.homework .hw-main .flow .step .body h6 {
	width: 100%;
	margin: 0;
	color: var(--color-orange);
}


.homework .hw-main .flow .step .body .caution {
	margin-right: 1em;
}



@media (max-width: 640px) {

	.homework .hw-main .flow .step .body {
		display: flex;
		flex-direction: column;
		justify-content: center;
		padding-top: 1em;
	}

	.homework .hw-main .flow .step .body h6 {
		font-size: inherit;
	}

}


@media (min-width: 641px) {

	.homework .hw-main .flow .step .body {
		flex-grow: 2;

		display: grid;
		justify-items: start;
	}

	.homework .hw-main .flow .step .body {
		padding: 0 1em;
	}

	.homework .hw-main .flow .step .body > p,
	.homework .hw-main .flow .step .body > ul {
		font-size: 80%;
	}

	.homework .hw-main .flow .step .body h6 {
		font-size: 90%;
	}

}



/* ==================== homework/hw-main/flow/step/body/point.css ==================== */

.homework .hw-main .flow .step .body .point {
	display: inline-flex;
	align-items: center;
	margin-top: 1em;
}

.homework .hw-main .flow .step .body .point > img {
	flex-shrink: 0;
	/* max-width: none; */
	margin-right: 1em;
	width: 3.7em;
}

.homework .hw-main .flow .step .body .point p,
.homework .hw-main .flow .step .body .point ul {
	line-height: 1.4;
}

.homework .hw-main .flow .step .body .point p img {
	display: block;
	margin-top: 0.5em;
}

.homework .hw-main .flow .step .body .point p img[src*="image_rawcaramel_4"],
.homework .hw-main .flow .step .body .point p img[src*="image_pudding_1"] {
	width: 9.5em;
}

.homework .hw-main .flow .step .body .point ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.homework .hw-main .flow .step .body .point li {
	position: relative;
	padding-left: 1em;
}
.homework .hw-main .flow .step .body .point li:nth-of-type(n+2) {
	margin-top: 0.25em;
}
.homework .hw-main .flow .step .body .point li::before {
	content: '●';
	position: absolute;
	left: 0;
	transform: scale(0.4);
}

.experiment.homework .hw-main .flow .step .body .point {
	color: var(--color-exp-blue);
}
.observation.homework .hw-main .flow .step .body .point {
	color: var(--color-obs-brown);
}
.craft.homework .hw-main .flow .step .body .point {
	color: #d40000;
}


@media (max-width: 640px) {
	.homework .hw-main .flow .step .body .point p,
	.homework .hw-main .flow .step .body .point ul {
		font-size: 90%;
	}
}


@media (min-width: 641px) {
	.homework .hw-main .flow .step .body .point p,
	.homework .hw-main .flow .step .body .point ul {
		font-size: 70%;
	}
}



/* ==================== homework/hw-main/hw-board/&::after@chara.css ==================== */

.homework .hw-main .hw-board::after {
	content: '';
	display: block;
	position: absolute;
	bottom: 0;
	visibility: visible;
	background: url(../images/common/board_chara.png) no-repeat;
	background-size: contain;
}


@media (max-width: 640px) {

	.homework .hw-main .hw-board::after {
		left: -1.25em;
		width: 4em;
		height: 6em;
		background-position: left bottom;
	}

}


@media (min-width: 641px) {

	.homework .hw-main .hw-board::after {
		left: -4em;
		width: 7.5em;
		height: 10em;
		background-position: right bottom;
	}

}



/* ==================== homework/hw-main/hw-board/&.auto-width.css ==================== */

@media (min-width: 641px) {

	.homework .hw-main .hw-board.auto-width {
		width: auto;
		padding-left: 4em;
		padding-right: 4em;
	}

}



/* ==================== homework/hw-main/hw-board/&.css ==================== */

.homework .hw-main .hw-board {
	display: flex;
	position: relative;
	flex-direction: column;
	align-items: center;
	box-sizing: border-box;
	padding: 2.5em 2.5em 4em;
	color: white;
	font-weight: bold;
	line-height: 1.4;
}

.homework .hw-main .hw-board::before {
	content: '';
	display: block;
	position: absolute;
	visibility: visible;
	left: 0;
	top: 0;
	width: 100%;
	height: calc(100% - 1.5em);

	background:
		url(../images/common/board_left_top.png) no-repeat left top / 5em 2.5em,
		url(../images/common/board_right_top.png) no-repeat right top / 5em 2.5em,
		url(../images/common/board_left_bottom.png) no-repeat left bottom / 5em 2.5em,
		url(../images/common/board_right_bottom.png) no-repeat right bottom / 5em 2.5em,

		url(../images/common/board_center_top.png) no-repeat center top / calc(100% - 9em) 2.5em,
		url(../images/common/board_center_bottom.png) no-repeat center bottom / calc(100% - 9em) 2.5em,

		url(../images/common/board_left_center.png) no-repeat left center / 5em calc(100% - 4em),
		url(../images/common/board_right_center.png) no-repeat right center / 5em calc(100% - 4em),

		url(../images/common/board_center_center.png) no-repeat center center / calc(100% - 9em) calc(100% - 4em);
}

.homework .hw-main .hw-board > * {
	position: relative;
}



.homework .hw-main .hw-board > *:first-child {
	margin: 0;
}
.homework .hw-main .hw-board > *:nth-child(n+2) {
	margin: 1em auto 0;
}
.homework .hw-main .hw-board > *:last-child {
	margin-bottom: 0;
}


.homework .hw-main .hw-board > h3,
.homework .hw-main .hw-board > h4,
.homework .hw-main .hw-board > p {
	text-align: center;
}

.homework .hw-main .hw-board > h3 span,
.homework .hw-main .hw-board > h4 span,
.homework .hw-main .hw-board > p span {
	display: inline-block;
}

.homework .hw-main .hw-board > h3,
.homework .hw-main .hw-board > h4 {
	font-size: inherit;
}
.homework .hw-main .hw-board > p {
	font-size: 95%;
}

.homework .hw-main .hw-board .underline {
	padding-bottom: 0.5em;
	background: url(../images/common/board_underline.png) repeat-x left bottom / auto 0.3em;
}

.homework .hw-main .hw-board .yellow {
	color: #fff700;
}


@media (max-width: 640px) {
	.homework .hw-main .hw-board {
		width: calc(100vw - 3em);
	}
}


@media (min-width: 641px) {
	.homework .hw-main .hw-board {
		width: 39em;
	}
}



/* ==================== homework/hw-main/hw-board/&.fit-width.css ==================== */

@media (min-width: 641px) {

	.homework .hw-main .hw-board.fit-width {
		width: 100%;
	}

}



/* ==================== homework/hw-main/hw-board/&.nochara.css ==================== */

.homework .hw-main .hw-board.nochara {
	padding-bottom: 2.5em;
}
.homework .hw-main .hw-board.nochara::before {
	height: 100%;
}
.homework .hw-main .hw-board.nochara::after {
	content: none;
}



/* ==================== homework/hw-main/hw-board/&.small.css ==================== */

@media (min-width: 641px) {

	.homework .hw-main .hw-board.small {
		width: 30em;
	}

}



/* ==================== homework/hw-main/hw-board/&.top.css ==================== */

.homework .hw-main .hw-board.top {
	display: grid;
	grid-gap: 1em;
	justify-items: center;
}
.homework .hw-main .hw-board.top p {
	margin: 0;
	font-weight: normal;
	text-align: justify;
}


.study.homework .hw-main .hw-board.top .level {
	margin: 0;
}
.study.homework .hw-main .hw-board.top .level img {
	max-width: none;
}
.study.nutrients.homework .hw-main .hw-board.top .level img { width: 11.1em; }
.study.greatman.homework .hw-main .hw-board.top .level img { width: 12.2em; }


@media (max-width: 640px) {
	.homework .hw-main .hw-board.top p {
		text-align: justify;
	}

	.homework .hw-main .hw-board.top p span {
		display: inline;
	}
}


@media (min-width: 641px) {

	.study.homework .hw-main .hw-board.top {
		width: 36em;
	}

	.study.homework .hw-main .hw-board.top p {
		padding: 0 2em;
		font-size: 80%;
		line-height: 1.5;
	}

	.study.greatman.homework .hw-main .hw-board.top img {
		width: 27em;
	}

	.study.nutrients.homework .hw-main .hw-board.top img {
		width: 21em;
	}

}



/* ==================== homework/hw-main/hw-board/answer.css ==================== */

.homework .hw-main .hw-board .answer {
	overflow: hidden;
	position: relative;
	box-sizing: border-box;
	padding: 0.5em;
	height: 2.4em;
	min-height: 2.4em;
}

.homework .hw-main .hw-board .answer.open {
	height: auto;
}

.homework .hw-main .hw-board .answer button.seal {
	display: flex;
	position: absolute;
	z-index: 1;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	align-items: center;
	justify-content: center;
	height: 2.5em;
	border: none;
	margin: 0;
	padding: 0;
	background:
		url(../images/common/board_seal_left_top.png) no-repeat left top / 1em 1em,
		url(../images/common/board_seal_center_top.png) no-repeat center top / calc(100% - 2em) 1em,
		url(../images/common/board_seal_right_top.png) no-repeat right top / 1em 1em,

		url(../images/common/board_seal_left_bottom.png) no-repeat left bottom / 1em 1em,
		url(../images/common/board_seal_center_bottom.png) no-repeat center bottom / calc(100% - 2em) 1em,
		url(../images/common/board_seal_right_bottom.png) no-repeat right bottom / 1em 1em,

		url(../images/common/board_seal_left_center.png) no-repeat left center / 1em calc(100% - 1.5em),
		url(../images/common/board_seal_right_center.png) no-repeat right center / 1em calc(100% - 1.5em),
		url(../images/common/board_seal_center_center.png) no-repeat center center / calc(100% - 2em) calc(100% - 1.5em);
	cursor: pointer;
	font-size: inherit;
}
.homework .hw-main .hw-board .answer button.seal.hide {
	opacity: 0;
}

.homework .hw-main .hw-board .answer button.seal img {
	width: 5.7em;
}


.homework .hw-main .hw-board .answer p {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0;
	font-size: 95%;
}

.homework .hw-main .hw-board .answer:not(.open) p {
	opacity: 0;
}
.homework .hw-main .hw-board .answer.open p {
	opacity: 1;
	transition: 600ms;
}


@media (max-width: 640px) {
	.homework .hw-main .hw-board .answer button.seal {
		width: 100%;
	}
	.homework .hw-main .hw-board .answer p {
		text-align: center;
	}
}


@media (min-width: 641px) {
	.homework .hw-main .hw-board .answer {
		min-width: 24em;
	}
	.homework .hw-main .hw-board .answer button.seal {
		width: 24em;
	}
}



/* ==================== homework/hw-main/hw-board/point.css ==================== */

.homework .hw-main .hw-board .point {
	padding: 0 1em;;
	list-style-type: none;
}
.homework .hw-main .hw-board .point li {
	display: flex;
	text-align: left;
}
.homework .hw-main .hw-board .point li::before {
	content: '';
	display: block;
	min-width: 1.25em;
	height: 1.25em;
	margin-right: 0.5em;
	background: url(../images/common/board_point.svg) no-repeat left center / contain;
}
.homework .hw-main .hw-board .point li:nth-of-type(n+2) {
	margin-top: 0.5em;
}



/* ==================== homework/hw-main/hw-title/&.css ==================== */

.homework .hw-main .hw-title {
	padding: 1px 0 2em;
}


.homework .hw-main .hw-title h2 {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1.5em;
	font-size: inherit;
}

.experiment.homework .hw-main .hw-title h2 {
	transform: translateX(1%);
}

.experiment.homework .hw-main .hw-title h2 img[src*="pic"] {
	width: 20em;
	border: 2px solid var(--color-exp-border-lightblue);
	padding: 0.5em;
	transform: rotate(-2deg);
	background: white;
}

.experiment.homework .hw-main .hw-title h2 img[src*="title"] {
	width: 16.3em;
}

.homework .hw-main .hw-title p.thanks {
	margin: 0 0 1.5em;
}

.experiment.homework .hw-main .hw-title .thanks {
	color: #005fb8;
}


@media (max-width: 640px) {

	.study.greatman.homework .hw-main .hw-title {
		padding-top: 2em;
	}
	.study.nutrients.homework .hw-main .hw-title {
		padding-top: 4.5em;
	}

	.homework .hw-main .hw-title h2 img {
		font-size: 65%;
	}

	.homework .hw-main .hw-title h2 img[src*="pic"] {
		position: relative;
	}

	.homework .hw-main .hw-title h2 img[src*="title"] {
		margin-left: -1.25em;
	}

	.homework .hw-main .hw-title p.thanks {
		font-size: 80%;
	}

}


@media (min-width: 641px) {

	.study.homework .hw-main .hw-title {
		padding-top: 1em;
	}

	.experiment.homework .hw-main .hw-title h2 img[src*="title"] {
		margin-left: 1em;
	}

	.observation.homework .hw-main .hw-title h2 img[src*="title"] {
		margin-left: 0.5em;
	}

	.craft.homework .hw-main .hw-title h2 img {
		margin: 0 0.25em;
	}

	.homework .hw-main .hw-title p.thanks {
		font-size: 70%;
	}

}



/* ==================== homework/hw-main/hw-title/page-menu.css ==================== */

.homework .hw-main .hw-title .page-menu ul {
	margin: 0;
	padding: 0;
	list-style-type: none;
}

.homework .hw-main .hw-title .page-menu li img {
	transition: 200ms;
}

.homework .hw-main .hw-title .page-menu li:hover img {
	transform: scale(1.1);
}


@media (max-width: 640px) {

	.homework .hw-main .hw-title .page-menu {
		margin-top: 1em;
	}

	.homework .hw-main .hw-title .page-menu li {
		text-align: center;
	}

	.homework .hw-main .hw-title .page-menu li:nth-of-type(n+2) {
		margin-top: 1em;
	}

	.experiment.homework .hw-main .hw-title .page-menu li img,
	.observation.homework .hw-main .hw-title .page-menu li img {
		font-size: 70%;
	}
	.craft.homework .hw-main .hw-title .page-menu li img {
		font-size: 125%;
	}

	.study.greatman.homework .hw-main .hw-title .page-menu li img { height: 4.8em; }

	.study.nutrients.homework .hw-main .hw-title .page-menu li:nth-of-type(4) {
		margin-top: 2.5em;
	}

	.study.nutrients.homework .hw-main .hw-title .page-menu li img { height: 4.8em; }
	.study.nutrients.homework .hw-main .hw-title .page-menu li:nth-of-type(4) img { height: 2.3em; }

}


@media (min-width: 641px) {

	.homework .hw-main .hw-title .page-menu {
		margin-top: 1.5em;
	}

	.homework .hw-main .hw-title .page-menu ul {
		display: flex;
		align-items: flex-end;
		height: 2em;
	}
	.homework .hw-main .hw-title .page-menu li {
		margin: 0 0.25em;
	}
	.homework .hw-main .hw-title .page-menu li:nth-of-type(odd) {
		transform: translateY(-0.5em);
	}
	.homework .hw-main .hw-title .page-menu li:nth-of-type(even) {
		transform: translateY(0.5em);
	}
	.homework .hw-main .hw-title .page-menu li img {
		font-size: 60%;
	}

	.experiment.gummy.homework .hw-main .hw-title .page-menu li {
		margin: 0 -0.75em;
	}
	.experiment.gummy.homework .hw-main .hw-title .page-menu li:nth-of-type(even) {
		transform: translateY(1.5em);
	}

	.craft.homework .hw-main .hw-title .page-menu li img,
	.study.homework .hw-main .hw-title .page-menu li img {
		font-size: 100%;
	}
	.craft.homework .hw-main .hw-title .page-menu li,
	.study.homework .hw-main .hw-title .page-menu li {
		margin: 0 1em;
	}

	.craft.homework .hw-main .hw-title .page-menu li:nth-of-type(2) {
		transform: translateY(1.5em);
	}


	.study.homework .hw-main .hw-title .page-menu {
		margin-top: 3.5em;
	}

	.study.nutrients.homework .hw-main .hw-title .page-menu ul {
		height: 3em;
	}

	.study.greatman.homework .hw-main .hw-title .page-menu li:nth-of-type(1) img { height: 5.1em; }
	.study.greatman.homework .hw-main .hw-title .page-menu li:nth-of-type(2) img { height: 4.8em; }
	.study.greatman.homework .hw-main .hw-title .page-menu li:nth-of-type(3) img { height: 4.8em; }

	.study.nutrients.homework .hw-main .hw-title .page-menu li {
		margin: 0 0.25em;
	}

	.study.nutrients.homework .hw-main .hw-title .page-menu li:nth-of-type(1) img { height: 5.1em; }
	.study.nutrients.homework .hw-main .hw-title .page-menu li:nth-of-type(2) img { height: 5.9em; }
	.study.nutrients.homework .hw-main .hw-title .page-menu li:nth-of-type(3) img { height: 4.8em; }
	.study.nutrients.homework .hw-main .hw-title .page-menu li:nth-of-type(4) img { height: 1.8em; }

}



/* ==================== homework/hw-main/summary/&.css ==================== */

.homework .hw-main .summary {
	position: relative;
}

.study.homework .hw-main .summary {
	margin-top: 1em;
}

.homework .hw-main .summary::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: calc(100% - 2em);
	background: white;
}

.homework .hw-main .summary > * {
	position: relative;
}

.experiment.homework .hw-main .summary {
	margin-top: 1.5em;
}

.homework .hw-main .summary h4 {
	margin: 0;
}


.homework .hw-main .summary::after {
	content: '';
	position: absolute;
	width: 6.8em;
	height: 8em;
	/* transform-origin: right top; */
	background: no-repeat right top / contain;
}

.experiment.homework .hw-main .summary::after {
	background-image: url(../images/common/summary_chara_experiment.png);
}
.observation.homework .hw-main .summary::after {
	background-image: url(../images/common/summary_chara_observation.png);
}
.craft.homework .hw-main .summary::after {
	background-image: url(../images/common/summary_chara_craft.png);
}
.study.homework .hw-main .summary::after {
	background-image: url(../images/common/summary_chara_study.png);
}


@media (max-width: 640px) {
	.homework .hw-main .summary {
		padding: 0 1em 1em;
	}
	.homework .hw-main .summary::before {
		border-radius: 1em;
	}
	.homework .hw-main .summary h4 {
		align-self: flex-start;
	}

	.homework .hw-main .summary h4 img {
		width: 15.5em;
	}

	.homework .hw-main .summary::after {
		right: 0.5em;
		top: -1em;
		font-size: 90%;
	}

}


@media (min-width: 641px) {
	.homework .hw-main .summary {
		padding: 0 2em 1.5em;
	}
	.homework .hw-main .summary::before {
		border-radius: 2em;
	}
	.homework .hw-main .summary::after {
		visibility: visible;
		right: 1em;
		top: 0;
	}

	.homework .hw-main .summary h4 {
		text-align: center;
	}
}



/* ==================== homework/hw-main/summary/illust.css ==================== */

.homework .hw-main .summary .illust {
	position: relative;
	margin-top: 1em;
	padding: 1em;
	box-sizing: border-box;
	width: 100%;
	background: #ddf788;
}

.homework .hw-main .summary .illust h5 {
	margin: 0;
	text-align: center;
}

.homework .hw-main .summary .illust ul {
	display: flex;
	flex-wrap: wrap;
	margin: 1em 0 0;
	padding: 0;
	list-style-type: none;
}

.homework .hw-main .summary .illust li a {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.homework .hw-main .summary .illust li img:nth-of-type(1) {
	padding: 0.5em;
	background: white;
	border: 2px solid #9ddb3a;

	box-sizing: border-box;

}

.homework .hw-main .summary .illust li img:nth-of-type(2) {
	margin-top: 1em;
}

.homework .hw-main .summary .illust li img[src*="illust_33"] {
	padding: 1em;
}


@media (max-width: 640px) {

	.homework .hw-main .summary .illust {
		border-radius: 0.5em;
	}
	.homework .hw-main .summary .illust ul {
		justify-content: flex-start;
	}
	.homework .hw-main .summary .illust li {
		width: 48%;
		margin: 2% 1%;
	}
	.homework .hw-main .summary .illust li img:nth-of-type(1) {
		width: 8em;
		height: 8em;
	}

	.homework .hw-main .summary .illust::after {
		right: 0.5em;
		top: -1em;
		transform: scale(0.45);
	}

}


@media (min-width: 641px) {
	.homework .hw-main .summary .illust {
		border-radius: 1em;
	}
	.homework .hw-main .summary .illust ul {
		justify-content: center;
	}
	.homework .hw-main .summary .illust li {
		margin: 0.5em;
	}
	.homework .hw-main .summary .illust li img:nth-of-type(1) {
		width: 7em;
		height: 7em;
	}
}



/* ==================== homework/hw-main/summary/sheet.css ==================== */

.homework .hw-main .summary .sheet {
	display: grid;
	grid-template-columns: max-content auto;
	align-items: center;
	grid-gap: 1em 0.5em;
	margin-top: 1em;
}

.homework .hw-main .summary .sheet .ill {
	grid-row: 1/3;
}

.homework .hw-main .summary .sheet h5 {
	align-self: end;
	margin: 0;
}
.homework .hw-main .summary .sheet h5 img[src*="sheet_title"] {
	width: 16em;
}

.homework .hw-main .summary .sheet .dl {
	align-self: start;
	display: flex;
	justify-content: center;
}
.homework .hw-main .summary .sheet .dl a {
	margin: 0 0.5em;
}

.study.nutrients.homework .hw-main .summary .sheet .dl {
	align-self: center;
	grid-row: 1/3;
}
.study.nutrients.homework .hw-main .summary .sheet .dl a {
	transition: 150ms;
}
.study.nutrients.homework .hw-main .summary .sheet .dl a:hover {
	transform: scale(1.05);
}


@media (max-width: 640px) {


}


@media (min-width: 641px) {

	.homework .hw-main .summary .sheet::after {
		content: none;
	}

}



/* ==================== homework/to-parent/@.css ==================== */

.homework .to-parent {
	position: relative;
	box-sizing: border-box;
	max-width: 42em;
	margin: 1em;
	padding: 0 1.5em 1.5em;
}

.homework .to-parent::before {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: calc(100% - 0.75em);
	border-radius: 1.5em;
	background: #fffbbd;
}

.homework .to-parent.level::before {
	background: #d8faa5;
}

.craft.homework .to-parent {
	max-width: 39em;
}
.craft.homework .to-parent::before {
	background: white;
}

.homework .to-parent > * {
	position: relative;
}



/* ==================== homework/to-parent/<h3>.css ==================== */

.homework .to-parent h3 {
	margin: 0;
	text-align: center;
}

.homework .to-parent h3 img {
	height: 1.8em;
}


@media (max-width: 640px) {

	.homework .to-parent h3 img {
		height: 2em;
	}

}



/* ==================== homework/to-parent/<p>.css ==================== */

.homework .to-parent p {
	margin: 1em auto 0;
}

.craft.homework .to-parent p {
	font-weight: bold;
}


@media (max-width: 640px) {

	.homework .to-parent p {
		font-size: 90%;
	}

}


@media (min-width: 641px) {
	.homework .to-parent p {
		font-size: 80%;
	}

}