@charset "utf-8";

input {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
}
button{
	background-color: transparent;
	outline: none;
    padding: 0;
	-webkit-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-transition: .3s;
	-ms-transition: .3s;
	transition: .3s;
}

.form_base label {
	display:inline-block;
	cursor: pointer
}

.form_base table th,
.form_base table td {
	padding: 20px 0;
}
.form_base table th .required {
	background:#ea7035;
	padding:3px 7px;
	margin:0 10px;
	color:#fff;
	border-radius:5px;
}
.form_base input[type="text"],
.form_base input[type="password"],
.form_base textarea {
	-webkit-appearance: none;
	appearance: none;
	font-size: 16px;
	line-height: 1.4;
	/*width: 60%;*/
	margin: 4px 0;
	padding: 10px 10px;
	border: 2px solid #ccc;
	box-sizing: border-box;
	border-radius: 12px;
	transition: .3s;
}
.form_base input[type="text"]:hover,
.form_base input[type="password"]:hover,
.form_base textarea:hover{
	border: 2px solid #666;
}
.form_base input[type="text"]:focus,
.form_base input[type="password"]:focus,
.form_base textarea:focus{
	background-color: #f4f8e0;
	border: 2px solid #333;
}
.form_base input.text_name,
.form_base input.text_zip {
	width: 120px;
}
.form_base textarea {
	height: 8em;
	width: 100%;
}

/* 添付ファイル */
.form_base .in_file_wrap {
	position: relative;
}
.form_base .in_file {
	vertical-align: middle;
	display: inline-block;
	padding: 0 0 5px;
}
.form_base .in_file input {
	display: none;
}
.form_base .in_file input + span {
	vertical-align: middle;
	display: inline-block;
}
.form_base .in_file input + span span {
	vertical-align: middle;
	display: inline-block;
	transition: .3s;
}
.form_base .in_file input + span::before {
	content:"ファイルを選択";
	vertical-align: middle;
	display: inline-block;
	background: #EEE;
	border:1px solid #AAA;
	margin: 0 10px 0 0;
	padding: 4px 9px 2px 9px;
	border-radius: 3px;
	font-size:1em;
	line-height: 1;
	transition: .3s;
}
.form_base .in_file:hover input + span span {
	text-decoration: underline;
}
.form_base .in_file:hover input + span::before {
	color:#000;
	background: #DDD;
	border-color:#000;
}
.form_base .in_file_clear {
	position: absolute;
	top: 0;
	right: 0;
	appearance: none;
	vertical-align: middle;
	display: inline-block;
	background: #EEE;
	border: 1px solid #AAA;
	padding: 3px 9px;
	border-radius: 3px;
	font-size: 1em;
	line-height: 1;
	cursor: pointer;
	transition: 0.3s;
}
.form_base .in_file_clear:hover {
	color:#000;
	background: #DDD;
	border-color:#000;
}
.form_base .in_file.ip_off input + span span{color:#666;}
.form_base .in_file.ip_off input + span span::after {
	content:"選択されていません";
}
.form_base .in_file.ip_off ~ .in_file_clear {
	display: none;
}

.form_base input[type="submit"],
.form_base input[type="button"] {
	-webkit-appearance: none;
	appearance: none;
	border: none;
	border-radius: 0;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-transition: .3s;
	-ms-transition: .3s;
	transition: .3s;
}
.form_base input[type="submit"] {
	font-size: 15px;
	line-height: 60px;
	font-weight: bold;
	color:#fff;
	background-color: #ea7035;
	width: 240px;
	border-radius: 18px;
}
.form_base {max-width:1100px;margin:0 auto;padding:50px;box-sizing:border-box;}

tbody{display: block;}
tr{width: 100%;display: flex;align-items: center;flex-wrap:wrap;}
tbody tr td .radio{margin:0;font-weight:400;display:inline-block;}
tbody tr td .radio input{box-sizing:border-box;position:absolute;}
tbody tr td .radio span{cursor:pointer;box-sizing:border-box;display:flex;align-items:center;position:relative;flex-wrap:wrap;font-weight:700;margin-right:10px;}
tbody tr td .radio span::before,tbody tr td .radio span::after{content:"";display:block;border-radius:50%;}
tbody tr td .radio span::before{border:2px solid #ccc;background:#fff;width:24px;height:24px;margin-right: 10px;transition:.3s;}
tbody tr td .radio input:checked+span::before{border:2px solid #00a73c;transition:.3s;}
tbody tr td .radio input:checked+span::after{background:#00a73c;width:14px;height:14px;position:absolute;left:7px;transition:.3s;}

form select{margin: 10px 0;padding: 14px 0 14px 10px;font-size: 16px;border:2px solid #ccc;color:#000;background:#fff;border-radius:12px;height:50px;width: 250px;box-sizing:border-box;transition:.3s;}
form tbody tr td .select_box{position:relative;width:250px;}
form tbody tr td .select_box::after{content: "";position: absolute;right: 15px;top: 50%;width: 8px;height: 8px;border-bottom: 3px solid #00a73c;border-right: 3px solid #00a73c;transform: rotate(45deg) translateY(-48%);box-sizing: border-box;transition: .5s;pointer-events: none;}
.form_base .reset input,#return_btn,#return_top_btn{line-height: 1;padding: 12px 10px 13px;margin: 0 0 8px 0;background-color:#f2f2f2;border: solid 2px #000;text-transform: uppercase;color: #000;vertical-align: top;border-radius: 10px;cursor:pointer;transition:.3s;font-weight: 900;}
#return_top_btn{display: inline-block;font-size: 14px;margin-top: 30px;}

.form_base .text_box{font-size:16px;line-height:1.6;margin-bottom:20px;padding:0 20px;}
.form_base .txt{margin-bottom:10px;}
.form_base .txt a{color:#ea7035;transition:.3s;}
.form_base .text_box .agree .ck span:not(.err){font-size:20px;}
.form_base .text_box .agree .ck span.err{font-size:16px;padding-left: 0;}
.form_base .text_box .agree .ck{position:relative;margin-bottom:10px;}
.form_base .text_box .agree .ck input{position:relative;}
.form_base .text_box .agree .ck span:not(.err){cursor:pointer;padding-left:40px;position: relative;}
.form_base .text_box .agree .ck span:not(.err)::before,.ck span::after{content:"";display:block;position: absolute;}
.form_base .text_box .agree .ck span:not(.err)::before{background-color:#fff;border-radius:5px;border:2px solid #ccc;width:20px;height:20px;transform:translateY(-50%);top:50%;left:5px;transition:.3s;}
.form_base .text_box .agree .ck span:not(.err)::after{border-bottom: 3px solid #ea7035;border-left: 3px solid #ea7035;opacity: 0;height: 8px;width: 13px;transform: rotate(-45deg);top: 6px;left: 8px;transition: .3s;}
.form_base .text_box .agree .ck input:checked+span::after{opacity:1;transition:.5s;}

@media screen and (min-width: 768px) {
	.form_base input[type="submit"]:hover {
		background-color: #ea7035;
	}
	.form_base .reset input:hover,#return_btn:hover,#return_top_btn:hover {
		background-color: #bbb;
	}
form select:hover{border:2px solid #000;background:#f4f8e0;}
tbody tr td .radio span:hover::before{border:2px solid #000;}
.form_base .txt a:hover{color:#c8dc64;}
.form_base .text_box .agree .ck:hover span::before{border:2px solid #000;}
}

@media screen and (max-width: 1199px) {
.form_base {padding: 30px;}
}
@media screen and (max-width: 767px) {
.form_base label {width:100%;}

tr{margin-bottom:10px;}
form select{margin:0 auto;padding: 10px 0 10px 10px;height:45px;width:100%;}
form tbody tr td .select_box{width:100%;}

.form_base {padding: 20px 0;}
.form_base table th,
.form_base table td {padding:0 0 5px;}
.kome{font-size:14px;}
}




/*=改行・制限=*/
.form_base .nowrap{	
	white-space: nowrap;
}
/*=入力モード切替 ※IEのみ有効=*/
.form_base .ime_ac {ime-mode: active;}
.form_base .ime_dis {ime-mode: disabled;}

.form_base input[type="text"],
.form_base textarea {box-sizing:border-box;}

form #put_addr_button1a {
    padding: 8px 12px;
    font-size: 16px;
    color: #fff;
    background: #00a73c;
    margin-left: 2px;
    cursor: pointer;
    transition: .3s;
	border-radius: 12px;
	font-weight: 900;
	border: 2px solid #000;
}
form #put_addr_button1a:hover {
    background: #ea7035;
}

/* % */
.form_base .w8em {width:8em;}
.form_base .w20per {width:20%;}
.form_base .w25per {width:25%;}
.form_base .w30per {width:30%;}
.form_base .w40per {width:40%;}
.form_base .w50per {width:50%;}
.form_base .w60per {width:60%;}
.form_base .w70per {width:70%;}
.form_base .w80per {width:80%;}
.form_base .w90per {width:90%;}
.form_base .w100per {width:100%;}

/* エラー表示 */
.form_base .err{
	font-size:12px;
	display:block;
	color:#FF0000;
}






/*-------------------------
__entry_style
-------------------------*/

#main h2 {
	font-size: 27px;
    text-align: left;
    color: #fff;
    padding: 30px 60px;
    margin: 0 -10px;
}
#login {
	background-color:#003092;/*------------------- color -------------------*/
	margin-bottom: 30px;
	padding: 15px 0 20px;
}
#login dt {
	color: #fff;
	font-size: 18px;
	font-weight: 900;
	padding-bottom: 15px;
}
#login dd {
	color: #fff;
	font-size: 14px;
}
#login dd button {
	display: inline-block;
	*display: inline; /* IE7 and below */
	*zoom: 1; /* IE7 and below */
	vertical-align:top;
	text-align:center;
	font-size:16px;
	line-height:20px;
	font-weight:900;
	color:#003092;/*------------------- color -------------------*/
	text-decoration:none;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	border:none;
	width:100px;
	cursor:pointer;
	background-color:#ff0;
}
#main #login dd input {
	margin-right: 10px;
}
#main .id_personal,
#main .id_add_file{
	margin-bottom:50px
}
#subject,
#main .id_personal,
#main .id_add_file{
	padding: 0 10px 10px;
    border-radius: 30px;
    background: #00a73c;
}
#subject,
#main .id_personal{
    background: #00a73c;
}
#main .id_add_file{
    background: #c8dc64;
}
.id_personal .surely {
	color: #fff;
	font-size: 14px;
	font-weight: normal;
}
.id_personal .surely .required {
	background:#ea7035;
	padding:5px 10px;
	margin:0 10px;
	color:#fff;
	border-radius:5px;
}

#subject table,
#main .id_personal table,
#main .id_add_file table{
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 16px;
    line-height: 1.6;
    text-align: left;
    width: 100%;
    padding: 50px;
    display: block;
    background: #fff;
    border-radius: 22px;
}

#subject th,
#main .id_personal th,
#main .id_add_file th{
	font-weight: 900;
	width: 200px;
}
#subject td,
#main .id_personal td,
#main .id_add_file td{
	width: calc(100% - 200px);
}
.attention {
	color: #ff0000;
}
.transmit {
	font-size: 1.4em;
	line-height: 1.2;
	padding-bottom: 10px;
}
.recap {
	text-align:center;
	margin:2em 0;
}
.recap > div {
	margin:0 auto;
}
.recap_er_ip {
	display:none;
}
#to_conf_btn,
#submit_btn,
.submit{
	display:block;
	text-align:center;
	font-size:20px;
	line-height:60px;
	font-weight:900;
	color:#fff;
	text-decoration:none;
	border-radius: 18px;
	width:240px;
	margin:0 auto 10px;
	cursor:pointer;
	background-color:#00a73c;/*------------------- color -------------------*/
	border: 2px solid #000;
	transition:.3s;
}
.submit input{
	font-size:20px;
	line-height:60px;
	font-weight:900;
	color:#fff;
}
#to_conf_btn:hover,
#submit_btn:hover,
.submit:hover {
	background-color:#ea7035;
}

#confirm {
	padding-bottom: 30px;
}
#confirm table {
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1.4em;
	line-height: 1.6;
	text-align: left;
	width: 100%;
}
#confirm tr{
	border-bottom:1px solid #ccc;
}
#confirm th,
#confirm td {
	padding: 30px 0;
}
#confirm th {
	font-weight: 900;
	width: 200px;
}
#confirm td {
	font-weight: 500;
	width: calc(100% - 200px);
}
#thanks p {
	font-size: 1.4em;
	line-height: 1.6;
	padding-bottom: 15px;
	text-align: left;
}
#thanks .proviso {
	color: #666;
}
#thanks dl {
	border-top: 1px dotted #999;
	padding-top: 15px;
	text-align: left;
}
#thanks dt {
	font-size: 16px;
	font-weight: 900;
	line-height: 20px;
}
#thanks .tel {
	color: #ff0000;
	font-size: 16px;
	font-weight: 900;
}
#thanks dd {
	font-size: 14px;
	line-height: 24px;
}
#thanks dd a {
	color: #000;
}
#thanks dd a:hover {
	text-decoration: none;
}

@media screen and (max-width: 767px) {
#main h2 {
	font-size: 20px;
    padding: 20px 10px;
    margin: 0 auto;
}
#main .id_personal{margin-bottom:0}
#main .id_add_file{margin-bottom:30px}
#subject,
#main .id_personal,
#main .id_add_file{
    border-radius: 0;
}
#subject table,
#main .id_personal table,
#main .id_add_file table{
    padding: 20px 20px 10px;
    border-radius: 10px;
}

#subject th,
#main .id_personal th,
#main .id_add_file th{
	width: 100%;
}
#subject td,
#main .id_personal td,
#main .id_add_file td{
	width: 100%;
}
.id_personal .surely {display:block;margin-top:10px;line-height:1.8;}
.id_personal .surely .required {padding:3px 7px;margin:0 5px;}
#confirm th,
#confirm td{
	padding:0 0 10px;
}
#confirm th {
	width: 100%;
}
#confirm td {
	width: 100%;
}
.conf .form_base,
.rgst .form_base{
	padding:20px;
}
}


@media screen and (max-width: 374px) {
form #put_addr_button1a {
    padding: 8px;
    font-size: 14px;
}
}