@charset "utf-8";
:root {
    --border:solid 1px #ddd;
}
#mail-box { position:relative; margin:30px 2%;}
.intro { 
    margin:2lh auto;
    width:fit-content;
    text-align:start;

    & .red { color:#FF3B3E;}
}
table.mailform { width:100%; border-top:var(--border); border-collapse:collapse;}
table.mailform tr :is(th, td) {
	position:relative;
	padding:15px;
	text-align: left;
	font-size:100%;
	border-bottom:var(--border);
}
table.mailform tr th { width:25%;}
table.mailform tr td { width:75%;}
table.mailform tr th span {
	float:right;
	padding:5px 7px;
	color:#FFF;
	font-size:80%;
	line-height:100%;
	background:#FF3B3E;
	border-radius:3px;
}
table.mailform tr td p+p { margin-top:5px;}

/* INPUT TEXTAREA */
#mail-box label { margin-right:15px;}
#mail-box :is(input, textarea) {
	padding:10px;
	border:1px solid #EEE;
	background:#FFF;
	box-sizing:border-box;
	border-radius:5px;
}
#mail-box textarea { width:100%; height:120px; resize:vertical;}

/* SELECT */
#mail-box select { padding:10px; border:1px solid #EEE; background:#FAFAFA;}

/* FILE */
#mail-box input[type="file"] { display:block; padding:5px; background:#F6F6F6;}

/* ATTENTION COMMENT */
#mail-box .attention { margin-top:5px; color:#FF3B3E; font-size:90%;}
#mail-box .come { padding:30px 0; text-align:center;}

/* BUTTON */
.b_inqu { margin-top:30px; text-align:center !important;}
.b_inqu button{
	font-family: "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	margin:0 10px;
	padding:10px;
	width:200px;
	font-weight:bold;
	font-size:140%;
	border:none;
	color:#FFF;
	border-radius:5px;
}
.b_inqu button[type="submit"] { background:#FF3B3E;}
.b_inqu button:is([type="reset"], [type="button"]) { background:#555;}
.b_back { margin:0 auto; width:200px;}
.b_back a {
	display:block;
	padding:10px;
	color:#FFF;
	text-align:center;
	text-decoration:none;
	font-weight:bold;
	background:#555;
	border-radius:5px;
}

/* HOVER */
#mail-box :is(input, textarea):focus { background:#FFEFEF; transition:.3s;}
.b_inqu button:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}


/* CONFIRMATION and ERROR ---------------------------------------*/

#formWrap table.mailform { margin-block:3em;}
/* CONFIRMATION */
#formWrap h3 { margin:2em auto 1em; font-size:2em; line-height:1;}
#formWrap h4 {
	margin:0 0 20px;
	padding: 1%;
	color: #FF4646;
	font-size:100%;
	border: 1px solid #FF7575;
	background:#FFEAEA;
}

/* ERROR */
#error { text-align:center;}
#error h4 {
	margin:0 0 20px;
	padding:1%;
	color: #FF4646;
	text-align:left;
	font-size:100%;
	border: 1px solid #FF7575;
	background:#FFEAEA;
}
#error p { margin-top:5px; text-align:left;}
#error .error_messe { padding:10px; background:#FFEFEF;}

/* THANKS ---------------------------------------*/
.thanks {
    margin-block:5em;
    line-height:1.8;

    & strong { font-size:2em;}
    & p { font-size:1rem;}
}