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



div#forIE {
	display: none;
}

@media all and (-ms-high-contrast: none){

div#forIE {
	display: block;
	font-size: 20px;
	text-align: center;
	color: crimson;
	background-color: #ffbcbc;
	border: 3px solid crimson;
	border-radius: 6px;
}

}



div#graphsoft {
	display: flex;
}


div#control_panel {
/*	max-width: 160px;*/
	padding: 0;
	background-color: gainsboro;
	border: 1px solid black;

	user-select: none;	/* CSS */
	-moz-user-select: none;
	-webkit-user-select: none;
	-ms-user-select: none;
}
div#control_panel div {
	margin: 8px;
}
div#control_panel td {
	vertical-align: middle;
}
div#control_panel td img {
	vertical-align: middle;
}

/*---------------------------------------------------------------------------------- パネル１ */

div#panel_1 {
	margin: 0;
}
table#key_1 {
	margin: 0 auto;
}
table#key_1 td {
	width: 24px;
	height: 20px;
	border: 3px solid transparent;
}
table#key_1 span {
	display: block;
	padding: 1px;
	background-color: whitesmoke;
	border: 1px solid darkgray;
}

/*---------------------------------------------------------------------------------- 係数 パネル */

div#coefficient {
	width: calc(100% - 18px);
	margin: 8px auto;
	padding: 8px 0 2px 0;
	background-color: white;
	border: 1px solid black;
}

table.tableTB {
	width: 100%;
	margin: 0;
}
table.tableTB td {
	width: 100%;
	border: none;
}
table.tableTB td.coefLabel {
	text-align: right;
}
table.tableTB td.coefTB {
	height: 25px;
	border: 1px solid black;
	vertical-align: middle;
	overflow: hidden;
}

table.tableSB {
	width: 100%;
	margin: 0 0 2px 0;
}
table.tableSB td {
	padding: 0;
	border: none;
	vertical-align: middle;
}
table.tableSB td.tdPM {
	width: 16px;
}
table.tableSB td.tdSB {
	width: calc(100% - 32px);
}

table.coefficient_fra {
	margin: 0 auto;
	cursor: pointer;
}
table.coefficient_fra td {
	font-size: 11px;
	line-height: 1.1;
	margin: 0;
	border: none;
	vertical-align: middle;
}
table.coefficient_fra td.Numer {
	width: 16px;
	height: 12px;
}
table.coefficient_fra td.Denom {
	height: 12px;
	border-top: 1px solid black;
}


/*------------------------------------------ スライダー */

input[type=range] {
	-webkit-appearance: none;
	margin: 0;
	height: 16px;
	cursor: pointer;
}
input[type=range]:focus {
	outline: none;
}

/****************************** WebKit・Blink */
input[type=range]::-webkit-slider-runnable-track {	/* 溝 */
	height: 2px;
	animate: 0.2s;
	background-color: black;
	border: 1px solid black;
}
input[type=range]::-webkit-slider-thumb {	/* つまみ */
	border: 1px solid black;
	height: 8px;
	width: 8px;
	border-radius: 50%;
	background-color: black;
	-webkit-appearance: none;
	margin-top: -4px;	/* 縦位置調整 */
}

/* 何故か上の margin-top 指定が Edge に効いてしまうので、Edge向けに設定をリセット */
@supports (-ms-ime-align: auto) {
	input[type=range]::-webkit-slider-thumb {
		margin-top: 0 !important;
	}
}

/****************************** Firefox */
input[type=range]::-moz-range-track {	/* 溝 */
	height: 0px;
	animate: 0.2s;
	background-color: black;
	border: 1px solid black;
}
input[type=range]::-moz-range-thumb {	/* つまみ */
	height: 6px;
	width: 6px;
	background-color: black;
	border: 1px solid black;
	border-radius: 50%;
}

/****************************** Edge・IE */
input[type=range]::-ms-track {	/* 背景 */
	height: 2px;
	animate: 0.2s;
	background: transparent;
	border-color: transparent;
	border-width: 6px 0;
}
input[type=range]::-ms-fill-lower,	/* 溝（つまみより左側） */
input[type=range]::-ms-fill-upper {	/* 溝（つまみより右側） */
	border: 1px solid black;
}
input[type=range]::-ms-thumb {	/* つまみ */
	height: 6px;
	width: 6px;
	color: black;
	background-color: black;
	border: 1px solid black;
	border-radius: 50%;
}
input[type=range]::-ms-tooltip {	/* ポップアップを非表示 */
	display: none;
}

/*---------------------------------------------------------------------------------- パネル２ */

div#panel_2 {
	margin: 0;
}
table#key_2 {
	margin: 0 auto;
}
table#key_2 td {
	width: 24px;
	height: 20px;
	background-color: whitesmoke;
	border: 1px solid darkgray;
}


/*---------------------------------------------------------------------------------- テンキー パネル */

table.tenkey {
	background-color: white;
}
table.tenkey td {
/*	width: 24px;
	height: 20px;*/
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	border: 1px solid black;
}

img#tenkey_numer {
	display: none;
}

/*---------------------------------------------------------------------------------- グラフ領域 */

div#graph_area {
	text-align: center;
	border: 1px solid black;
	border-left: none;
}
div#graph_area svg {
	overflow: hidden;
}

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

div#graphsoft {
	width: 100%;
	margin: 8px 0;
	padding: 0;
}

div#control_panel {
	width: 71px;
}

div#panel_1,
div#panel_2 {
	display: none;
}

table.tableTB td.coefLabel {
	padding: 0 0 0 2px;
	width: 40%;
}
table.tableTB td.coefTB {
	width: 32px;
}
table.tableTB td.rmargin {
	width: 4px;
}
table.coefficient_fra td {
	padding: 0 2px;
}

td.tdPM {
	display: none;
}
input[type=range] {
	width: calc(100% - 6px);
}

table.tenkey td {
	width: 20px;
	height: 16px;
}

div#graph_area {
	display: flex;
	justify-content: center;
	align-items: center;
	width: calc(100% - 74px);
}

div#graph_area svg {
	width: 100%;
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■ スマートフォン大 454px～666px ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media (min-width: 460px) {

div#graphsoft {
	width: 418px;
	margin: 8px auto;
	padding: 8px;
	border: 2px solid black;
	border-radius: 8px;
}

div#control_panel {
	width: 117px;
}

table.tableTB td.coefLabel {
	padding: 0 4px;
	width: 40%;
}
table.tableTB td.coefTB {
	width: 40px;
}
table.tableTB td.rmargin {
	width: calc(50% - 40px);
}
table.coefficient_fra td {
	padding: 0 4px;
}

td.tdPM {
	display: table-cell;
}
input[type=range] {
	width: 100%;
}

table.tenkey td {
	width: 24px;
	height: 20px;
}

div#graph_area {
/*	display: block;*/
	width: 298px;
}
div#graph_area svg {
	width: 278px;
}

}



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

div#graphsoft {
	width: 593px;
	margin: 8px auto;
	padding: 8px;
	border: 2px solid black;
	border-radius: 8px;
}

div#control_panel {
	width: 160px;
}
div#panel_1,
div#panel_2 {
	display: block;
}

table.tableTB td.coefLabel {
	width: 45%;
}

div#graph_area {
	width: 430px;
}
div#graph_area svg {
	width: 410px;
}

}




/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■ デスクトップ小：885px～1201px   ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media (min-width: 885px) {


}




/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■ デスクトップ中：1202px～1501px   ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media (min-width: 1202px) {


}




/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/*■ デスクトップ大：1502px～ ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media (min-width: 1502px) {


}




