/* for body */
body {
	margin: 0;
	padding: 0;
	font-size: 90%;
	background: #CCFFCC;
	color: #000;
	font-family: "Helvetica Neue", Arial, Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
}
#head {
	background: #00428e;
	color: #fff;
}
#head-in {
	padding: 8px 2em;
}
h1 {
	text-align: center;
	font-size: 135%;
}
#body {
	margin-left: 1.5em;
}

/* for table */
#form-tbl {
	margin-left: 1.5em;
}
#form {
	border-collapse: collapse;
	margin: 1em 0;
}
#form th, #form td {
	border: 1px solid #666;
	padding: 8px;
}
#form th {
	background: #e8e8e8;
}
#form td {
	background: #fff;
}
p.btn input {
	width: 110px;
	height: 32px;
}

/* for title */
h2 {
	font-size: 100%;
	text-align: left;
	border-left: solid 10px #ef002d;
	border-bottom: 1px solid gray;
	padding: 4px 6px;
	margin: 1.5em 0;
}

/* for message */
p.msg {
	color: #dd0000;
	margin: 2em;
}
span.msg {
	color: #dd0000;
}

/* for back-button */
form.back {
	margin-top: 2em;
}


/* for input text */
.cp_iptxt {
	position: relative;
	width: 80%;
	margin: 30px 3%;
}

.cp_iptxt input[type=text],input[type=tel],input[type=number],input[type=email] {
	font: 15px/24px sans-serif;
	box-sizing: border-box;
	width: 100%;
	margin: 8px 0;
	padding: 0.3em;
	transition: 0.3s;
	border: 1px solid #1b2538;
	border-radius: 4px;
	outline: none;
}

.cp_iptxt input[type=text]:focus {
	  outline: 0;
	  border: solid 2px blue;
}
.cp_iptxt input[type=tel]:focus {
	  outline: 0;
	  border: solid 2px blue;
}
.cp_iptxt input[type=number]:focus {
	  outline: 0;
	  border: solid 2px blue;
}
.cp_iptxt input[type=email]:focus {
	  outline: 0;
	  border: solid 2px blue;
}

.cp_iptxt input[type=text],input[type=tel],input[type=number],input[type=email] {
	padding-left: 40px;
}

.cp_iptxt i {
	position: absolute;
	top: 8px;
	left: 0;
	padding: 9px 8px;
	transition: 0.3s;
	color: #aaaaaa;
}
.cp_iptxt input[type=text]:focus + i {
	color: #da3c41;
}
.cp_iptxt input[type=number]:focus + i {
	color: #da3c41;
}
.cp_iptxt input[type=tel]:focus + i {
	color: #da3c41;
}
.cp_iptxt input[type=email]:focus + i {
	color: #da3c41;
}



.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
    -moz-appearance:textfield;
}


.cp_table *, .cp_table *:before, .cp_table *:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
.cp_table {
	width: 100%;
	border-collapse: collapse;
}
.cp_table th, .cp_table td {
	word-break: break-word;
	padding: 10px;
	border: 1px solid #dddddd;
}
.cp_table th {
	width: 30%;
	text-align: left;
	background: #f4f4f4;
}
.centerbox {
	text-align: center;
	margin: 0 auto;
}
.justifybox {
	margin: 0 auto;
	width: 80%;
	display: flex;
	justify-content: space-between;
}


input[type=button],input[type=reset],input[type=submit] {
  /* ブラウザ特有のスタイルを無効に */
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  /* 整える */
  margin: 1em 1em; /* 前後の隙間 */
  padding: 0.5em 0.8em; /* 塗りの余白 */
  font-size: 1em; /* フォントサイズ */
  background-color: #1aa1ff; /* 背景色 */
  color: #FFF; /* テキストカラー */
  cursor: pointer; /* カーソルを指マークに */
  border-radius: 8px; /* 角の丸み */
  border: 0; /* 枠線を消す */
  transition: 0.3s; /* ホバーの変化を滑らかに */
}

input[type=radio],input[type=checkbox] {
  /* 整える */
  width:  1.35em;
  height:  1.35em;
  margin: 1em 1em; /* 前後の隙間 */
  padding: 0.5em 0.8em; /* 塗りの余白 */
  color: #AAAAAA; /* テキストカラー */
  cursor: pointer; /* カーソルを指マークに */
  border: 5px; /* 枠線 */
  transition: 0.3s; /* ホバーの変化を滑らかに */
}

label{
  cursor: pointer; /* カーソルを指マークに */
  font-size: 1.2em;
  padding: 0.5em 0.8em; /* 塗りの余白 */
}

/* ホバー時（カーソルをのせた時）の見た目 */
input[type=button]:hover ,[type=reset]:hover ,[type=submit]:hover {
  background-color: #064fda; /* 背景色 */
}

.textarea-large {
	width: 100%; /* 幅：横いっぱいに */
	height: 90px; /* 高さ */
	border-radius: 4px;
}
textarea:focus {
  border: solid 2px blue;
  outline: 0;
}


ul {
  padding: 0.5em 1em 0.5em 2em;
  position: relative;
}

ul li {
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;/*ポチ消す*/
}

ul li:before {
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  position: absolute;
  left : 1em; /*左端からのアイコンまで*/
  color: #ffb03f; /*アイコン色*/
}

.border_dot li {
  border-top: dotted 2px #cecccd;
  list-style: none;
  line-height: 1.5;
  padding: 0.5em 0;
  list-style-type: none!important;/*ポチ消す*/
}
.border_none li {
  border: none;
}

/* スマホ用 */
@media only screen and (max-width: 480px) {
	#body { margin-left: 0; }
	
	/* 投稿フォーム */
	#form-tbl { margin: 0 auto; text-align: center; }
	#form { width: 96%; margin: 10px auto; }
    #form th, #form td {
    	text-align: left;
		width: 100%;
        display: block;
        padding: 6px 3px;
        border-top: none;
    }
    #form tr:first-child th	{ border-top: 1px solid #666; }
    p.btn input { width: 10em; }
    
	/* 小見出し */
	h2 { margin: 1em 3px; width: 90%; }
	
	/* サンクス */
	p.msg { margin: 1em auto; }

	.cp_table {
		margin: 0;
	}
	.cp_table th, .cp_table td {
		word-wrap: break-word;
		width: 100%;
		display: block;
		border-top: none;
	}
	.cp_table tr:first-child th {
		border-top: 1px solid #dddddd;
	}
}

