	button
	{
		padding : 20px;
		width : 100%;
		display : block;
		box-sizing : border-box;
	}

	.input_text,input[type=text],input[type=file],input[type=password],textarea
	{
		font-size : xx-large;
		width : 100%;
		line-height : 140%;
		background-color : rgba(255, 255, 255, 0.4);
	}

	body
	{
		font-size : xx-large;
		background-attachment: fixed;
	}
    details summary { cursor: pointer; }
    
	.message-info {
		background-color: #e0f7fa;
		color: #00796b;
		padding: 10px;
		border-left: 5px solid #00796b;
	}

	.message-error {
		background-color: #ffebee;
		color: #c62828;
		padding: 10px;
		border-left: 5px solid #c62828;
	}

	.message-warning {
		background-color: #fff8e1;
		color: #f9a825;
		padding: 10px;
		border-left: 5px solid #f9a825;
	}

h1 { font-size: 1.5em; }   /* 本来の h2 相当 */
h2 { font-size: 1.17em; }  /* 本来の h3 相当 */
h3 { font-size: 1em; }     /* 本来の h4 相当 */
h4 { font-size: 0.83em; }
h5 { font-size: 0.67em; }
h6 { font-size: 0.5em; }

#summaryInput
{
	border: 2px solid #333 !important;
	padding: 10px !important;
	background-color: #f5f5f5 !important;
	cursor: default !important;
	display: block;
	min-height: 100px;
	white-space: pre-wrap;
	word-wrap: break-word;
}

#loadingOverlay {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}

#loadingOverlay[hidden] {
  display: none;
}

.loadingBox {
  background: white;
  padding: 1.2em 2em;
  border-radius: 12px;
  font-size: 1.1em;
  box-shadow: 0 10px 30px rgba(0,0,0,0.3);
}


input[type="checkbox"]
{
	transform: scale(3.0); /* 拡大率はお好みで調整してね */
	margin-right: 8px;     /* テキストとの間隔も見やすく */
	cursor: pointer;       /* カーソルをポインターにすると親切！ */
}
