/*---------------------------*/
/*  入力画面関連             */
/*---------------------------*/
#formWrap {
	width: 700px;
	margin:0 auto;
	line-height: 110%;
	font-size:   90%;
}
table.formTable {
	width:100%;
	/*
	margin:0 auto; /* 中央寄 */
	*/
	border-collapse: collapse;
	border-spacing:  0;
	border-top:    none;
	border-right:  none;
	border-bottom: 1px solid #ccc;
	border-left:   1px solid #ccc;
}
 table.formTable th
,table.formTable td {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top:    1px solid #ccc;
	border-right:  1px solid #ccc;
	border-bottom: none;
	border-left:   none;
	padding:10px;
	height:24px;
	line-height:1.8;
}
table.formTable th {
	background:#e4f3ed;
	background:#EEFFFF;
	text-align:left;
	font-weight:normal;
}


/* 科目情報 */
td > .class_table{
	width:95%;
	border-collapse: separate;
	border-spacing:  0;
	border-top:    none;
	border-right:  none;
	border-bottom: 1px solid #ccc;
	border-left:   1px solid #ccc;
}
td > .class_table td{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top:    1px solid #ccc;
	border-right:  1px solid #ccc;
	border-bottom: none;
	border-left:   none;
	font-size:  12px;
	line-height:1.6;
	padding:4px 6px 4px 6px;
}
td > .class_table tr:nth-child(-n+1) td{
	background-color:#eaffff;
}
td > .class_table th{
	font-weight:normal;
	padding: 1.2px;
	text-align:center;
	/*
	background-color:#eaffff;
	background-color:#ffefef;
	*/
	background-color:#ECFFE1;
	line-height:1.2;
	font-size:  12px;
}
td > .class_table td:nth-child(1){
	white-space: nowrap;
	font-size:  11px;
	/*
	background-color:#eaffff;
	*/
}

td > .class_table th{
	/*width:initial*/;
}

.error {
	margin:0;
	color:red;
	font-weight:bold;
	margin-bottom:1px;
}
.memo {
	color:red;
	font-size:8pt;
}
.memo_top {
	color:red;
	font-size:8pt;
}
.guide {
	border:1px dotted #000000; 
	padding:10px;
	margin:5px 0;
	/*font-size:8pt;*/
}
.guide2{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width:  100%;
	margin:10px 10px 10px 0px;
	font-size:10pt;
	color:#666666;
	line-height:1.6;
	border:1px solid #ccc;
	padding:12px;
}

.privacy_iframe {
	border:1px solid #cccccc;
	padding:0px;
	margin:0px;
	width:100%;
	display:block;
}

.indent1{
	margin-left:  1em;
	margin-right: 1em;
	text-indent: -1em;
}

/*---------------------------*/
/*  ボタン関連               */
/*---------------------------*/
.button2,
.button span,
.button_color1 {
	-webkit-appearance: none;
	-moz-border-radius: 3px;
	border-radius:      3px;
	display: inline-block;
	text-decoration: none;
	text-align: center;
}
.button,
.button_color1 {
	margin: 8px;
	padding: 5px 4px;
	font-weight: bold;
	color: #ffffff;
	border: 1px solid #9c9c9c;
	width: 100px;
	height :30px;
}
.button_color1 {
	background: #4472c6;
}
.button_color1:hover {
	background: #80acf7;
}
.button_color1:active {
	background: #4472c6;
}

.button2 {
	margin-left: 6px;
	border: 1px solid #9c9c9c;
	height :25px;
	font-size:11px;
	background: #4472c6;
	color: #ffffff;
}
.button2:hover {
	background: #80acf7;
}
.button2:active {
	background: #4472c6;
}

/*---------------------------*/
/*  入力関連                 */
/*---------------------------*/

/* iOS15から明示的にcolorを当てないと、optionの文字色に-apple-system-blueなるため */
.select {
	/*
	line-height: 30px;
	height:      20px;
	font-size:   12pt;
	width:      140px;
	*/
}

select,
.selClass{
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	height: 23px;
	margin-bottom: 2px;
	font-size: 14px;
	border-radius: 2px;
	border:1px solid #bbb;
	background-color: #ffffff;
	color: #000;
}
.selClass{
	width:90px;
	font-size:14px;
}
option {
	font-size: 14px;
}
input[type=text] {
	font-size: 14px;
	padding:4px;
	line-height:1.2;	/* 2025.05.28 入力で高さが変わる対応 */
	border-radius: 3px;
	border:1px solid #999;
}
input::placeholder {
	color: #aaa;
	font-size: 0.8em;
}
input[type="radio"],input[type="checkbox"]{
	margin-right: 8px; /*追加*/
}
label{
	vertical-align:middle;
	font-size: 14px;
}

/*---------------------------*/
/*  確認画面関連             */
/*---------------------------*/
.kakunin_table{
	width:100%;
	margin:0 auto;
	border-collapse: collapse;
	border-spacing:  0;
	border-top:    none;
	border-right:  none;
	border-bottom: 1px solid #ccc;
	border-left:   1px solid #ccc;
}
 .kakunin_table th
,.kakunin_table td{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-top:    1px solid #ccc;
	border-right:  1px solid #ccc;
	border-bottom: none;
	border-left:   none;
	padding:10px;
}
.kakunin_table th{
	width:25%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}
p.err_message{
	margin:5px 0;
	color:red;
}

/*---------------------------*/
/* スマフォ                  */
/*---------------------------*/
@media only screen and (max-width:480px){
	body {
	    margin: 0;
	}
	#outer {
		max-width: 480px; /* 最大横幅 */
		width: 100%; 
		/*
		width: 480px;
		*/
	}
	#contents {
		width: 95%;
		padding:4px;
	}
	#formWrap {
		width: 95%; 
		padding:2px;
	}

	table.formTable{
		width: 100%;
		margin:10px 1px;
	}

	table.formTable th	{
		width: 100%;
		height:100%;
		display: block;
		font-weight:bold;
	}
	table.formTable td	{
		width: 100%;
		height:100%;
		display: block;
	}
	table.formTable th br {
		/* 改行させない */
		display: none;
	}
	/*
	table.formTable tr:first-child th	{
		border-top:1px solid red;
	}
	*/
	table.formTable td .memo::before {
		/* 改行させる */
		content: "\A" ;
		white-space: pre ;
	}

	td > .class_table {
		width:100%;
	}
	 td > .class_table th 
	,td > .class_table td{
		width:initial;
		display: table-cell;
		font-size: 12px;
		line-height:1.2;
	}
	td > .class_table th{
		padding: 2px;
		font-weight:normal;
		font-size: 12px;
		line-height:1.4;
	}
	.rwdBr::after {
		/* 改行させる */
		content: "\A" ;
		white-space: pre ;
	}
	/* スマホのみ内容を消して改行 */
	.rwdBr2::before {
		/* 改行させる */
		content: "\A" ;
		white-space: pre ;
	}
	.rwdBr2{
		display:table-cell;
		visibility:collapse;
		line-height:0px;
	}

	/*---------------------------*/
	/*  ボタン関連               */
	/*---------------------------*/
	.button_color1{
		font-size: 12px; 
	}
	.button2 {
		font-size: 12px; 
	}


	/*---------------------------*/
	/*  入力関連                 */
	/*---------------------------*/
	#addr1,#addr2 {
		width:95%;
	}
	input[type=text],select{
		font-size: 16px; 
	}
	input[type=data]{
		border:1px solid #bbb;
	}
	input[type=text]:not(.zip){
		font-size: 16px; 
		width:76%;
		margin-bottom: 2px;
	}
	select,
		height:30px;
		font-size: 14px;
	}
	.selClass{
		height: 23px;
		font-size: 14px;
	}
	textarea { 
		font-size: 16px;
		width:94%;
	}

	/*---------------------------*/
	/*  確認画面関連             */
	/*---------------------------*/
	.kakunin_table{
		width:98%;
	}
	 .kakunin_table th
	,.kakunin_table td{
		padding:6px;
		font-size:12px;
	}
	.kakunin_table th{
		width:28%;
	}
}
