@charset "utf-8";
/* CSS Document */

/*---------------------------------------------- Chromium系ブラウザでの \cancelto 表示不具合への対応 */

span.without_cancelto {
	display: none;
}

@media screen and (-webkit-min-device-pixel-ratio: 0) {		/* Chrome, Opera, Safari */
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-resolution: .001dpcm) {	/* Chrome, Opera */
	span.cancelto {
		display: none;
	}
	span.without_cancelto {
		display: inline;
	}
}

@-moz-document url-prefix() {	/* Firefox */
	span.cancelto {
		display: inline;
	}
	span.without_cancelto {
		display: none;
	}
}

@supports (-ms-ime-align: auto) {	/* Edge */
	span.cancelto {
		display: none;
	}
	span.without_cancelto {
		display: inline;
	}
}


/*---------------------------------------------------------------------------------- 記号類 */

/* mathjax 内で使用 */

.heikou,
.nheikou,
.souji {
	display: inline-block;
	width: 16px;
	height: 15px;
	padding: 0;
	margin: 0 2px;
	vertical-align: middle;
}
.souji {
	content: url("../_image/souji.svg");
}
.heikou {
	content: url("../_image/heikou.svg");
}
.nheikou {
	content: url("../_image/nheikou.svg");
}

.aka_maru,
.daidai_maru,
.midori_maru,
.sora_maru,
.ao_maru,
.murasaki_maru,
.hai_maru,
.kuro_maru {
	display: inline-block;
	width: 11px;
	height: 11px;
	padding: 0;
	margin: 0 2px;
}
.aka_maru {
	content: url("../_image/aka_maru.svg");
}
.daidai_maru {
	content: url("../_image/daidai_maru.svg");
}
.midori_maru {
	content: url("../_image/midori_maru.svg");
}
.sora_maru {
	content: url("../_image/sora_maru.svg");
}
.ao_maru {
	content: url("../_image/ao_maru.svg");
}
.murasaki_maru {
	content: url("../_image/murasaki_maru.svg");
}
.hai_maru {
	content: url("../_image/hai_maru.svg");
}
.kuro_maru {
	content: url("../_image/kuro_maru.svg");
}

.aka_wa,
.daidai_wa,
.midori_wa,
.sora_wa,
.ao_wa,
.murasaki_wa,
.hai_wa,
.kuro_wa {
	display: inline-block;
	width: 11px;
	height: 11px;
	padding: 0;
	margin:  0 2px;
}
.aka_wa {
	content: url("../_image/aka_wa.svg");
}
.daidai_wa {
	content: url("../_image/daidai_wa.svg");
}
.midori_wa {
	content: url("../_image/midori_wa.svg");
}
.sora_wa {
	content: url("../_image/sora_wa.svg");
}
.ao_wa {
	content: url("../_image/ao_wa.svg");
}
.murasaki_wa {
	content: url("../_image/murasaki_wa.svg");
}
.hai_wa {
	content: url("../_image/hai_wa.svg");
}
.kuro_wa {
	content: url("../_image/kuro_wa.svg");
}



/*---------------------------------------------------------------------------------- 文字列 */

/* MathJax全体 */
/* インライン数式 */
mjx-container {
}
/* 別行立て数式 */
mjx-container[display="true"] {
	margin: 2px 0 !important;
}

/* MathJax内の日本語の設定 */
mjx-container mjx-utext {
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
	margin: -4px 0 4px 0;
	font-size: 15px;
}


/* 数式インデント */

article span.indent {
	color: transparent;
}


/* 式○ */

.tex_formula,
article span.formula {
	margin-left: 4pt;
	color: coral;
	white-space: nowrap;
}
.tex_formula:before,
article span.formula:before {
	content: "・・・";
}
.tex_formula mjx-utext {
	font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", sans-serif !important;
}

article span.fnonly {	/* 式番号だけの行のとき、右中ほど寄せにする */
	padding-left: 200px;
}
article span.ulset span.fnonly {	/* 式番号だけの行のとき、右中ほど寄せにする */
	padding-left: 179px;
}
article .alwayscolumn span.fnonly {	/* 式番号だけの行のとき、右中ほど寄せにする */
	padding-left: 60px;
}


/* 文字列のインデント（字下げ) */
article .jisage40 {
	padding-left: 40px;
}
/* 文字列のインデント（字下げ) */
article .jisage1_5 {
	padding-left: 1.5em;
}
/* 文字列のインデント（ぶら下げ) */
article .burasage40 {
	display: inline-block;
	padding-left: 40px;
	text-indent: -40px;
}
/* 文字列のインデント（ぶら下げ) */
article .burasage1_5 {
	display: inline-block;
	padding-left: 1.5em;
	text-indent: -1.5em;
}


/* 強調 */

article strong {
	color: coral;
}


/* 上付き文字 */
sup{
	vertical-align: super;
	font-size: small;
}


/* □囲み文字列 */
article span.waku {
	display: inline-block;
	margin: auto 2px;
	padding: 3px 10px 1px 10px;
	border: 1px solid black;
	line-height: 1;
}
article span.waku2 {	/* 薄い枠 */
	display: inline-block;
	margin: auto 2px;
	padding: 2px 10px;
	color: dimgray;
	border: 1px solid dimgray;
	line-height: 1;
}
article span.wakuS {	/* 正方形の枠 */
	display: inline-block;
	margin: auto 2px;
	padding: 3px 2px 1px 2px;
	border: 1px solid black;
	line-height: 1;
}
article span.wakuR {	/* 隅丸枠 */
	display: inline-block;
	margin: auto 2px;
	padding: 3px 10px 1px 10px;
	border: 1px solid black;
	border-radius: 4px;
	line-height: 1;
}
article span.wakuC {	/* 丸枠 */
	display: inline-block;
	margin: auto 2px;
	padding: 1px;
	border: 1px solid black;
	border-radius: 10px;
	line-height: 1;
}
article span.waku_lh15 {
	display: inline-block;
	margin: auto 2px;
	padding: 3px 10px 1px 10px;
	border: 1px solid black;
	line-height: 1.5;
}

/* 解答 */

article p.ans, article div.ans {
	display: table;
	clear: both;

	break-inside: avoid;
/*	break-before: avoid-column;*/

	border: 1px solid coral;
	line-height: 1.4;
}
article p.ans_noclear, article div.ans_noclear {
	display: table;

	break-inside: avoid;
/*	break-before: avoid-column;*/

	border: 1px solid coral;
	line-height: 1.4;
}
article p.ans span.ans_label, article div.ans span.ans_label,
article p.ans_noclear span.ans_label, article div.ans_noclear span.ans_label {
	display: table-cell;
	width: 50px;
	color: tomato;
	background: #ffe6dc;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid coral;
}
article p.ans span.ans_ans, article div.ans div.ans_ans
article p.ans_noclear span.ans_ans, article div.ans_noclear div.ans_ans {
	display: table-cell;
	padding: 2px 10px;
}

/* 解法リスト */

article span.kaihoulist {
	display: block;
	margin: auto 2px;
	padding: 2px 10px;
	border: 1px dotted black;
	border-radius: 4px;
}
article span.kaihoulist span:nth-child(2n) {
	display: block;
	margin: 0;
	padding: 0 0 0 1.5em;
}

/* おすすめ */

article span.recommended {
	display: inline-block;
	margin-left: 4px;
	padding: 0 4px;
	color: white;
	line-height: 1.4;
	background-color: coral;
	border-radius: 4px;
}

/*---------------------------------------------------------------------------------- 式のレイアウト */

article span.frac {								/* 分数 */
	display: inline-table;
	vertical-align: middle;
}
article span.frac > span {
	display: table-row;
}
article span.frac > span > span {
	display: table-cell;
	line-height: 1;
	text-align: center;
}
article span.frac > span:first-child > span {	/* 分子 */
	padding: 4px 8px 2px 8px;
}
article span.frac > span:last-child > span {	/* 分母 */
	padding: 4px 8px 4px 8px;
	border-top: 1px solid black;
}

/* 連立方程式不等式 */
article span.rrt {
	display: inline-block;
	vertical-align: middle;
	margin: 4px 0;
	padding-left: 10px;
	background: url("../_image/bracket1.svg") left center no-repeat,
				url("../_image/bracket2.svg") left top no-repeat,
				url("../_image/bracket3.svg") left bottom no-repeat,
				url("../_image/bracket4.svg") left top repeat-y;
	background-size: 9px, 9px, 9px, 9px;
}
article details details span.rrt {
	background: url("../_image/bracket1a.svg") left center no-repeat,
				url("../_image/bracket2a.svg") left top no-repeat,
				url("../_image/bracket3a.svg") left bottom no-repeat,
				url("../_image/bracket4a.svg") left top repeat-y;
	background-size: 9px, 9px, 9px, 9px;
}

/* 連立方程式不等式 */
article span.renritsu {
	display: block;
	margin: 4px 0;
	background: url("../_image/bracket1.svg") left center no-repeat,
				url("../_image/bracket2.svg") left top no-repeat,
				url("../_image/bracket3.svg") left bottom no-repeat,
				url("../_image/bracket4.svg") left top repeat-y;
	background-size: 9px, 9px, 9px, 9px;
}
article details details span.renritsu {
	background: url("../_image/bracket1a.svg") left center no-repeat,
				url("../_image/bracket2a.svg") left top no-repeat,
				url("../_image/bracket3a.svg") left bottom no-repeat,
				url("../_image/bracket4a.svg") left top repeat-y;
	background-size: 9px, 9px, 9px, 9px;
}
article span.renritsu > span {
	display: block;
	margin-left: 10px;
}

/*---------------------------------------------------------------------------------- 表 */

/* 増減表 */
article table.zougen {
	margin: 0 auto 10px auto;
}
article table.zougen th {
	padding: 0 8px;
	font-weight: normal;
	vertical-align: middle;
}
article table.zougen th.gyoudume {
	line-height: 1;
}
article table.zougen td {
	padding: 0 8px;
	font-weight: normal;
	vertical-align: middle;
	line-height: 1;
}

/* 組み立て除法 */
article table.kumitate {
	margin: 0 0 10px 0;
}
article table.kumitate td {
	padding: 0 8px 0 0;
	width: 30px;
	text-align: right;
	border: none;
}
article table.kumitate tr:nth-of-type(1) td:nth-last-of-type(1) {
	border-left: 1px solid dimgray;
	border-bottom: 1px solid dimgray;
}
article table.kumitate tr:nth-last-of-type(1) {
	border-top: 1px solid dimgray;
}

/* たすきがけ */
article table.tasukigake {
	margin: 0 0 10px 0;
	break-inside: avoid;
}
article table.tasukigake td {
	padding: 0 2px;
	text-align: right;
	border: none;
}
article table.tasukigake tr:nth-of-type(1) td:nth-of-type(2) {
	width: 24px;
	background-image: url(../_image/tasukigake.svg);
	background-size: 20px auto;
	background-position: center;
	background-repeat: no-repeat;
}
/*
article table.tasukigake tr:nth-of-type(2) td:nth-of-type(2) {
	width: 24px;
	background-image: url(../_image/tasukigake_b.svg);
	background-size: 20px auto;
	background-position: center top;
	background-repeat: no-repeat;
}
*/
article table.tasukigake tr:nth-last-of-type(1) {
	border-top: 1px solid dimgray;
}

/* 筆算 */
article table.hissan {
	margin: 0 0 10px 0;
}
article table.hissan td {
	padding: 0 2px;
	border: none;
	text-align: right;
	vertical-align: middle;
	white-space: nowrap;
}
article table.hissan tr:nth-last-child(1) {
	border-top: 1px solid dimgray;
}

/* 筆算 */
article table.hissan_c {
	margin: 0 0 10px 0;
}
article table.hissan_c td {
	padding: 0 2px;
	border: none;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}
article table.hissan_c tr:nth-last-child(1) {
	border-top: 1px solid dimgray;
}

/* 割り算の筆算 */
table.warizan {
	margin: 0 auto 0 0;
}
table.warizan td {
	line-height: 1.2;
	border: none;
	background-color: transparent;
}
table.warizan td.kasen {
	border-bottom: 1px solid gray;
}

/* 確率分布表 */
article table.kakuritsubunpihyou {
	margin: 0 auto 10px auto;
}
article table.kakuritsubunpihyou th {
	padding: 0 4px;
	text-align: center;
	vertical-align: middle;
	font-weight: normal;
}
article table.kakuritsubunpihyou td {
	padding: 0 4px;
	text-align: center;
	vertical-align: middle;
}

/* 集合 */
article table.shuugou20 {
	margin: 0 auto 10px auto;
}
article table.shuugou20 th,
article table.shuugou20 td {
	width: 20px;
	text-align: center;
	vertical-align: middle;
}
article table.shuugou20 th:first-child {
	width: auto;
	padding: 0 4px;
}

/* 連立方程式不等式（旧版） */
article table.renritsu {
	margin: 0 0 10px 0;
}
article table.renritsu td {
	padding: 0 2px;
	text-align: left;
	vertical-align: middle;
	border: none;
}
article table.renritsu tr:nth-of-type(1) td:nth-of-type(1) {
	width: 9px;
	padding: 0;
	background: url("../_image/bracket1.svg") center no-repeat,
				url("../_image/bracket2.svg") top no-repeat,
				url("../_image/bracket3.svg") bottom no-repeat,
				url("../_image/bracket4.svg") repeat-y;
}
@media all and (-ms-high-contrast: none){	/* IE対応 */
article table.renritsu tr:nth-of-type(1) td:nth-of-type(1) {
	width: 9px;
	padding: 0;
	background: url("../_image/bracket0.svg") center;	/* サイズ設定が未完 */
}
}

/*---------------------------------------------------------------------------------- ページタイトル下の問題へのリンク */

aside#infonav {
	margin: 10px 0;
}

section#mondai {
	display: table;
}
section#mondai > a {
	display: table-cell;
	padding: 2px 10px;
	text-align: center;
	vertical-align: middle;
	line-height: 1.3;
}
section#mondai > p {
	display: table-cell;
	padding: 0 6px;
	line-height: 1.3;
	text-align: right;
}

section#mathjax {
	text-align: center;
	line-height: 1.3;
}

/*---------------------------------------------------------------------------------- ページタイトル下の注意書き */

section#sec_caution {
	padding: 8px 16px 0 16px;
	text-align: center;
	background-color: mistyrose;
	border: 1px solid red;
}
section#sec_caution img {
	vertical-align: -3px;
}


/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■ スマートフォン：～666px   ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/


/*---------------------------------------------------------------------------------- main */

section#mondai {
	margin: 10px auto;
}

section#mathjax {
	margin: 10px 0;
	padding: 4px 8px;
	border: 2px solid coral;
	border-radius: 4px;
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■ タブレット：667px～884px ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media (min-width: 667px) {

/*---------------------------------------------------------------------------------- main */

aside#infonav {
	display: flex;

	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;

	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

section#mondai {
	margin: 0;
}
section#mondai > a {
	width: 70px;
}
section#mondai > p {
	width: 220px;
}

section#mathjax {
	width: 190px;
	margin: 0;
	padding: 0;
	border: none;
}

}
