.exam_title{
	background-color: #dddddd;
	margin: 16px 0;
}
.exam_title_text{
	font-size: 18px;
	font-weight: bold;
	padding: 14px 20px;
}

.problem-contents {
	margin: 20px;
}
.problem_title_area{
	display: table;
	width: 100%;
}
.problem_title{
	display: table-cell;
	vertical-align: top;
	font-size: 14px;
	font-weight: bold;
}
.problem_hint_btn_area {
	display: table-cell;
	white-space: nowrap;
}
.problem_hint_btn_area A {
	text-decoration: none;
	float: right;
}
.problem_hint_btn{
	background-color: #FFC530;
	padding: 0 10px;
	border-radius: 15px;
}
.problem_hint_btn_text{
	font-size: 10px;
	font-weight: bold;
	color: #000;
	text-decoration: none;
	line-height: 30px;
}
.problem_hint_btn_text::before {
	content: "";
	width: 24px;
	height: 24px;
	background: url(/static/img/hint_icon.png) no-repeat center center / auto 100%;
	display: inline-block;
	vertical-align: middle;
	margin-right: 0px;
}

.problem_contents_area{
	margin: 10px 0;
}
.problem_contents_text{
	font-size: 14px;
	font-weight: bold;
}
.problem_contents_img{
	font-size: 0;
	border-radius: 10px;
	overflow: hidden;
	margin: 10px 0;
}

.problem_select_area{
	font-size: 0;
	margin: 10px 0;
	position: relative;
	min-height: 300px;
}

.select_answer_area_marubatu{
	display: flex;
	text-align: center;
}

.select_answer_area_image{
	display: flex;
	flex-wrap: wrap;
}
.select_answer_area_image .select_answer_unit{
	width:48%;
}

.select_answer_unit INPUT {
  display: none;
}

.select_answer_unit {
	width: 100%;
	margin: 10px 0;
}
.select_answer_unit.marubatu {
	width: 45%;
	margin: 0 auto;
}
.select_answer_unit.image {
	width: 48%;
	margin: 10px 1%;
}
.select_answer_unit INPUT {
	display: none;
}
.select_answer_unit_label {
	font-size: 0;
	font-weight: bold;
	border: solid 1px #ddd;
	display: block;
	border-radius: 8px;
	padding: 10px;
	overflow: hidden;
}

.select_answer_unit.image .select_answer_unit_label {
  padding: 0;
}

.select_answer_unit_label.selected {
	background-color: #FFC530;
	border-color: #666;
}
.select_answer_unit_word {
	font-size: 14px;
	font-weight: bold;
}

.select_answer_unit.image .select_answer_unit_label .select_answer_unit_word {
  padding: 10px;
}

.select_answer_unit_word.correct::before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/static/img/correct_icon.svg) no-repeat center center / auto 100%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0px;
}
.select_answer_unit_word.incorrect::before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/static/img/incorrect_icon.svg) no-repeat center center / auto 100%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0px;
}
.problem_btn_area {
	margin: 20px 0;
}
.problem_btn_area A {
	text-decoration: none;
}
.btn_answer {
	background-color: #FF6565;
	text-align: center;
	border-radius: 10px;
	box-shadow: 0px 4px 0px 0px #B74849;
	position: relative;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 16px;
}

.btn_answer.unselect {
	background-color: #BDBDBD;
	box-shadow: 0px 4px 0px 0px #606060;
}

.btn_commentary {
	background-color: #50CBAF;
	text-align: center;
	border-radius: 10px;
	box-shadow: 0px 4px 0px 0px #419483;
	position: relative;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	padding: 16px;
}

.correct_area{
	bottom: 0;
	position: absolute;
	display: block;
	width: 100%;
	opacity: 1;
	text-align: center;
	min-height: 100%;
}
.correct_area img {
	margin: 0 auto;
	width: 50%;
	max-width: 300px;
}
.incorrect_area{
	bottom: 0;
	position: absolute;
	display: block;
	width: 100%;
	opacity: 1;
	text-align: center;
	min-height: 100%;
}
.incorrect_area img {
	margin: 0 auto;
	width: 50%;
	max-width: 300px;
}

.problem_navi_btn_area {
  display: flex;
}
.problem_navi_btn_area A {
  width: 100%;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  color: #50CBAF;
}
.btn_prev {
  border: solid 1px #50CBAF;
  text-align: center;
  margin: 0 auto;
  display: inline-block;
  padding: 8px 20px;
  border-radius: 20px;
}
.btn_prev_text::before {
  content: "";
  width: 14px;
  height: 14px;
  background: url(/static/img/prev_problem_icon.svg) no-repeat center center / auto 100%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0px;
}
.btn_next{
	border: solid 1px #50CBAF;
	text-align: center;
	margin: 0 auto;
	display: inline-block;
	padding: 8px 20px;
	border-radius: 20px;
}
.btn_next_text::after {
  content: "";
  width: 14px;
  height: 14px;
  background: url(/static/img/next_problem_icon.svg) no-repeat center center / auto 100%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0px;
}

.problem_navi_reng_area {
  margin: 20px;
}
.reng_bar {
  background-color: #DCF5EF;
  display: block;
  width: 100%;
  height: 1em;
  border-radius: 0.5em;
  overflow: hidden;
}
.reng_value {
  height: 100%;
  display: block;
  background-color: #51CBAF;
}
.reng_count {
  text-align: center;
  font-size: 12px;
  padding: 8px;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.guidance-contents{
	background-color: #ffffff;
	margin: 10px 20px;
	text-decoration: none;
}
.guidance-slide {
	/*width: 80%;*/
	padding-bottom: 10px;
	text-decoration: none;
}
.guidance-slide A{
	text-decoration: none;
}
.guidance-title {
	background-color: #51CBAF;
	color: #fff;
	font-size: 20px;
	padding: 10px;
	border-radius: 10px 10px 0 0;
}
.guidance-body {
	width: 100%;
}
.guidance-image {
	width: 100%;
	position: relative;
}
.guidance-image IMG {
	width: 100%;
	vertical-align:top;
	border-radius: 0 0 10px 10px;
}
.guidance-modal-link{
	position: absolute;
	top: 10px;
	right: 10px;
	color: #ffffff;
	font-size: 12px;
}
.guidance-modal-link A{
	color:#ffffff;;
	text-decoration: underline;
}
.guidance-bottom-area{
	position: absolute;
	bottom:20px;
	left: 0;
	right: 0;
}
.guidance-evaluation{
	padding: 8px;
	display: inline-block;
}
.guidance-evaluation span{
	color:#CCCCCC;
}
.guidance-evaluation span.active{
	color:#FFC530;
}

.guidance-btn-area{
	display: flex;
}



.guidance-btn-area .buy_btn{
	width: 100%;
	display: block;
}
.guidance-btn-area .buy_btn A{
	display: block;
	color: #fff;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border: solid 1px #ccc;
	height: 30px;
	border-radius: 15px;
	background-color: #0080CC;
	margin: 0 4px;
	line-height: 30px;
}
.guidance-btn-area .free_btn{
	width: 100%;
	display: block;
}
.guidance-btn-area .free_btn A {
	display: block;
	color: #000;
	text-align: center;
	font-size: 12px;
	text-decoration: none;
	border: solid 1px #ccc;
	height: 30px;
	border-radius: 15px;
	background-color: #FFC530;
	margin: 0 4px;
	line-height: 30px;
}


.guidance-button-prev,
.guidance-button-next {
	position: absolute;
	top: 50%;
	width: calc(var(--guidance-navigation-size) / 44 * 27);
	height: var(--guidance-navigation-size);
	margin-top: calc(-1 * var(--guidance-navigation-size) / 2);
	z-index: 10;
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	color: var(--guidance-navigation-color, var(--guidance-theme-color));
	width: 28px; /* ボタンの幅 */
	height: 28px; /* ボタンの高さ */
	background-size: 28px 28px; /* 背景画像としてのサイズ（＝表示したい画像サイズ） */
	margin-top: -14px; /* 縦中央配置用：ボタンの高さの半分のネガティブマージン（top:50%がすでに設定されている） */
}
/* 次ページボタンのスタイル */
.guidance-button-next {
	background-image: url(/static/img/arrow_right.png);
}
/* 前ページボタンのスタイル */
.guidance-button-prev {
	background-image: url(/static/img/arrow_left.png);
}

.guidance-button-prev:after,
.guidance-container-rtl .guidance-button-next:after {
	content: "";
}

.guidance-button-next:after,
.guidance-container-rtl .guidance-button-prev:after {
	content: "";
}

.guidance-pagination-bullet {
	background: #666666;
}

.guidance-info-area{
	display: block;
	margin-top: 8px;
	height: 40px;
	margin-bottom: 12px;
}
.guidance-info-text{
	font-size:10px;
	color: #000000;

	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;

	overflow: hidden;

	margin: 8px;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.contents-counter{
	margin: 10px 20px;
	font-size: 12px;
	text-align: right;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.contents-pagination{
	text-align: center;
	font-size:14px;
	color: #000000;
	margin: 20px;
}
.contents-pagination A{
	font-size:14px;
	color: #AAAAAA;
}
.contents-pagination strong{
	font-size:14px;
	color: #000000;
	font-weight: bold;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.search_title{
	margin: 10px 20px;
	padding: 0;
	font-size: 18px;
	text-align: left;
	line-height: 45px;
	font-weight: bold;
}
/*
.search_title_text::before {
	content: "";
	display: inline-block;
	width: 50px;
	background-image: url(/static/img/mascot.svg);
	background-repeat: no-repeat;
	background-position: 0 5px;
	height: 45px;
	margin-right: 8px;
}
.search_title_image{
}
.search_title_image IMG{
	width: 60px;
}
*/
.search_title_text{
	padding: 0;
	font-size: 18px;
	text-align: left;
	font-weight: bold;
	margin: 0;
}
.search_input_area{
	margin: 10px 20px;
}
.search_input_area .search_form {
	border-collapse: collapse;
	color: #50CAAF;
	font-size: 16px;
	height: auto;
	font-weight: bold;
	text-decoration: none;
}
.search_input_area .search_box {
	display: inline-block; /* なくても大丈夫だけど、念の為 */
	position: relative;    /* 基準値とする */
}
.search_input_area .search_box::before {
	content: "";
	width: 16px;
	height: 16px;
	background: url(/static/img/loupe_icon.svg) no-repeat center center / auto 100%;
	display: inline-block;
	position: absolute;
	top: 9px;
	left: 9px;
}
.search_input_area .search_box input {
	padding: 3px 0 3px 2em;
	width: 200px;
}
.search_input_area .search_btn {
	background-color: #51CBAF;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	display: inline-block;
	text-align: center;
	line-height: 34px;
	border-radius: 17px;
	text-decoration: none;
	padding: 0 24px;
	float: right;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.guidance-price {
	font-size: 12px;
	font-weight: bold;
	color: #000;
	display: inline;
	vertical-align: baseline;
}
.guidance-price SPAN {
	font-size: 20px;
	font-weight: bold;
	color: #e00;
	margin: 4px;
	display: inline-block;
}
.guidance-favorite {
	display: block;
	float: right;
}
.guidance-favorite IMG {
	width: 40px;
}
.guidance-caption {
	font-size: 12px;
	color: #000;
	line-height: 24px;
	font-weight: bold;
}
.guidance-point_area {
	background-color: #E9E9E9;
	padding: 20px;
	border-radius: 8px;
}
.guidance-point_title {
	display: block;
}
.guidance-point_title_text {
	display: inline-block;
	padding: 12px 50px;
	background-color: #51CBAF;
	color: #fff;
	border-radius: 4px;
	font-weight: bold;
	margin-top: 4px;
	margin-bottom: 20px;
}
.guidance-point_title_image {
	width: 70px;
	display: inline-block;
	float: right;
}
.guidance-point_title_image IMG {
	width: 100%;
}
.guidance-point_comment {
	font-size: 14px;
	line-height: 24px;
	font-weight: bold;
}
.guidance_sumally {
	background-color: #E9E9E9;
	margin-top: 20px;
}
.guidance_sumally_top {
  display: flex;
  text-align: center;
  padding: 10px;
}
.guidance_sumally_answer {
  width: 48%;
  background-color: #fff;
  margin: 0 auto;
  border-radius: 10px;
}
.guidance_sumally_correct {
  width: 48%;
  background-color: #fff;
  margin: 0 auto;
  border-radius: 10px;
}
.rate_title {
  margin: 8px;
  font-size: 12px;
  font-weight: bold;
}
.rate_image {
  width: 60%;
  margin: 0 auto;
}

.answer_rate_count {
  position: absolute;
  margin: auto;
  font-size: 6vw;
  font-weight: bold;
  top: 50%;
  transform: translate(-50%,-50%);
  left: 50%;
  text-align: left;
  color: #51CBAF;
}
.answer_rate_count SPAN {
  font-size: 4vw;
}
.correct_rate_count {
  position: absolute;
  margin: auto;
  font-size: 6vw;
  font-weight: bold;
  top: 50%;
  transform: translate(-50%,-50%);
  left: 50%;
  text-align: left;
  color: #51CBAF;
}
.correct_rate_count SPAN {
  font-size: 16px;
}
.rate_link {
  font-size: 10px;
  padding: 8px;
  text-align: center;
  color: #000;
}

.guidance_sumally_bottom {
  text-align: center;
  padding: 10px;
}
.guidance_sumally_test {
  background-color: #fff;
  border-radius: 10px;
}
.test_title {
  padding: 8px;
  font-size: 12px;
  font-weight: bold;
}
.test_date {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 12px;
}
.test_image {
  position: relative;
  width: 30%;
  text-align: center;
  margin: 0 auto;
/*
  background-image: url(/static/img/calendar_icon.svg);
  background-repeat: no-repeat;
  background-size: 100%;
*/
}
.test_image IMG {
  width: 100%;
}
.test_image_text {
  position: absolute;
  top: 35%;
  width: 100%;
  text-align: center;
  font-size: 3vw;
}
.test_image_date {
  position: absolute;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: 9vw;
  font-weight: bold;
  color: #f00;
}
.test_image_date SPAN {
  font-size: 3vw;
  font-weight: bold;
}
.test_link {
  font-size: 10px;
  padding: 8px;
  text-align: center;
  color: #000;
}

.drill_banner_area {
	background-color: #E9E9E9;
	padding-top: 20px;
}
.drill_banner {
  background-color: #FFC530;
  margin: 0 10px;
  text-align: center;
  border-radius: 10px;
  box-shadow: 0px 4px 0px 0px #BA9000;
  position: relative;
}
.drill_banner_title {
  font-size: 18px;
  font-weight: bold;
  margin-top: 14px;
  text-align: center;
  display: inline-block;
  margin-bottom: 14px;
}
.drill_banner_title::before {
  content: "";
  width: 24px;
  height: 24px;
  background: url(/static/img/test_icon.svg) no-repeat center center / auto 100%;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
.drill_banner_text {

  text-align: center;
  font-size: 12px;
  line-height: 20px;
  padding-bottom: 10px;
}

.exam_list_area {
  background-color: #E9E9E9;
  padding: 20px 10px;
}
.exam_list {
  background-color: #51CBAF;
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 12px;
}
.list_title {
  color: #ffffff;
  display: flex;
  font-size: 16px;
  padding: 10px 20px;
  font-weight: bold;
  position: relative;
}
.list_open_close {
  right: 20px;
  display: inline-block;
  position: absolute;
  width: 12px;
}
.list_open_close img {
  width: 100%;
}

.list_area {
  background-color: #fff;
}

.list_unit:not(:last-child) {
	border-bottom: solid 2px #ccc;
}

.list_unit_title {
  color: #000000;
  font-size: 14px;
  padding: 10px 40px 10px 20px;
  font-weight: bold;
  position: relative;
}
.list_unit_title.non {
  color: #CCCCCC;
}
.free {
  background-color: #FFC530;
  color: #fff;
  padding: 2px 4px;
  font-size: 8px;
  display: inline-block;
  margin-left: 8px;
  position: absolute;
}
.paid {
  background-color: #0080CC;
  color: #fff;
  padding: 2px 4px;
  font-size: 8px;
  display: inline-block;
  margin-left: 8px;
  position: absolute;
}
.list_unit_count {
  display: inline-block;
  float: right;
  right: 0;
  font-size: 12px;
  font-weight: bold;
}
.list_unit_arrow {
  right: 20px;
  display: inline-block;
  position: absolute;
  width: 12px;
}
.list_unit_arrow IMG {
  width: 100%;
}
.list_unit_detail {
  padding: 10px 20px;
  font-size: 12px;
}
.list_unit_detail_text{
	display: block;
}

.test_start_btn_area {
  text-align: center;
  font-size: 0;
  margin: 10px auto;
}
.test_start_btn {
  display: inline-block;
  width: 25%;
  margin: 0;
}
.test_start_btn A {
  font-size: 2.5vw;
  color: #000;
  text-decoration: none;
}
.test_start_btn_img {
  width: 70%;
  margin: 0 auto;
  position: relative;
  font-size: 0;
}
.test_start_btn_img IMG{
  width: 100%;
}

/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.commentary_answer_unit {
	width: 50%;
	margin: 10px 0;
}
.commentary_answer_unit.noimage {
	width: 100%;
}
.modal_window .commentary_answer_unit {
	width: 100%;
}
.commentary_answer_unit INPUT {
	display: none;
}
.commentary_answer_unit_label {
	font-size: 0;
	font-weight: bold;
	border: solid 1px #ddd;
	display: block;
	border-radius: 8px;
	padding: 10px;
	overflow: hidden;

	background-color: #FFC530;
	border-color: #666;
}
.commentary_answer_unit_label.selected {
	background-color: #FFC530;
	border-color: #666;
}
.commentary_answer_unit_word {
	font-size: 14px;
	font-weight: bold;
}
.commentary_answer_info {
  margin: 20px;
}

.commentary_answer_info_title{
  display: block;
  text-align: center;
  margin-top: 20px;
}
.commentary_answer_info_title SPAN{
	display: inline-block;
	margin: 0 auto;
	font-size: 14px;
	font-weight: bold;
	border-bottom: solid 3px #51CBAF;
	color: #51CBAF;
}
.commentary_answer_info TABLE{
	width:100%;
}
.commentary_answer_info TABLE TH{
	text-align: left;
	font-size: 14px;
	font-weight: bold;
	background-color: #51CBAF;
	color:#ffffff;
	border: solid 1px #ccc;
padding: 10px;
}
.commentary_answer_info TABLE TD{
	text-align: right;
	font-size: 14px;
	font-weight: bold;
	background-color: #ffffff;
	color:#000000;
	border: solid 1px #ccc;
padding: 10px;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
.modal_problem_navi_area{
	width:100%;
	text-align: right;
}
.modal_problem_navi_area A {
  width: 100%;
  text-align: center;
  text-decoration: none;
  font-size: 16px;
  color: #50CBAF;
}
/* LLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLL */
@media screen and (min-width:960px) {
	.commentary_answer_info {
		margin: 20px;
	}
}
@media screen and (max-width:959px) {
	.commentary_answer_info {
		margin: 20px 0;
	}
}
