@charset "utf-8";
/* Copyright 2014 FSFIELD All Rights Reserved. */

/* ------------------------------------------------------------

お問い合せ・参加申込み

------------------------------------------------------------ */

.js-focus-visible :focus:not(.focus-visible){outline: 0;}
.focus-visible{outline: 2px dotted #333;}

.visually-hidden{
	position: absolute !important;
	top: 0px !important;
	left: 0px !important;
	width: 1px !important;
	height: 1px !important;
	opacity: 0 !important;
	overflow: hidden !important;
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
	display: block !important;
	visibility: visible !important;
}

/* heading
---------------------------------------------- */
h3#h3_form{
	background:url(../form/contact/img/h3_contact01.png) no-repeat 0 center;
}

/* ul
---------------------------------------------- */
ul#pagenavi{
	background:url(../form/contact/img/navi_pagenavi01.jpg) no-repeat 0 0;
	width:700px;
	height:56px;
	overflow:hidden;
	margin-bottom:50px;
}

ul#pagenavi li{float:left;}

ul#pagenavi li span{display:none;}

ul#pagenavi li a{
	display:block;
	height:56px;
}

ul#pagenavi li.n01 a{width:351px;}
ul#pagenavi li.n02 a{width:349px;}

ul#pagenavi li.n01 a:hover{background:url(../form/contact/img/navi_pagenavi01.jpg) no-repeat 0 -56px;}
ul#pagenavi li.n02 a:hover{background:url(../form/contact/img/navi_pagenavi01.jpg) no-repeat -351px -56px;}

ul#pagenavi li.n01 a.active{background:url(../form/contact/img/navi_pagenavi01.jpg) no-repeat 0 -112px;}
ul#pagenavi li.n02 a.active{background:url(../form/contact/img/navi_pagenavi01.jpg) no-repeat -351px -112px;}


/* table
---------------------------------------------- */
/*table.form*/
table.form{
	line-height:1.2;
	width:100%;
	}

table.form th{
	border-bottom:1px dotted #CFCFCB;
	font-weight:normal;
	padding:13px 0;
	text-align:left;
	vertical-align:top;
	}

table.form th span.must{
	color:#D80000;
	font-size:86%;
	}

table.form td{
	border-bottom:1px dotted #CFCFCB;
	padding:13px 0;
	text-align:left;
	vertical-align:top;
	}

table.form td textarea{
	font-size:12px;
	line-height:1.4;
	padding:3px;
	width:470px;
	height:180px;
	}


/* input
---------------------------------------------- */
input.sousin{
	background:url(../form/contact/img/btn_submit01.jpg) no-repeat scroll 0 0;
	border:none;
	cursor:pointer;
	text-indent:-999px;
	width:163px;
	height:48px;
	}
input.sousin:hover{background:url(../form/contact/img/btn_submit01_on.jpg) no-repeat scroll 0 0;}

input.modoru{
	background:url(../form/contact/img/btn_modoru01.jpg) no-repeat scroll 0 0;
	border:none;
	cursor:pointer;
	text-indent:-999px;
	width:110px;
	height:48px;
	}
input.modoru:hover{background:url(../form/contact/img/btn_modoru01_on.jpg) no-repeat scroll 0 0;}

input.okuru{
	background:url(../form/contact/img/btn_okuru01.jpg) no-repeat scroll 0 0;
	border:none;
	cursor:pointer;
	text-indent:-999px;
	width:110px;
	height:48px;
	}
input.okuru:hover{background:url(../form/contact/img/btn_okuru01_on.jpg) no-repeat scroll 0 0;}

span.ERR{color:#D80000;}


/* p
---------------------------------------------- */
p.homeback_link a{
	color:#1C91B7;
	text-decoration:underline;
	}
p.homeback_link a:hover{text-decoration:none;}

/* ボタン
---------------------------------------------- */
.btn_form{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 80px;
}

.btn_form.confirmation{margin-top: 50px;}


.btn_form.input{margin-top: 50px;}

.btn_contact.submit,
.btn_contact.send,
.btn_contact.back{
	display: inline-block;
	background: #1B91B7;
	text-align: center;
	line-height: 1;
	font-size: 1.8rem;
	font-weight: bold;
	position: relative;
	cursor: pointer;
	transition: .3s;
	border-radius: 3px;
}

.btn_contact.submit{
	pointer-events: none;
	background: #BADEE9;
}

.btn_contact.submit.active{
	opacity: 1;
	background: #1B91B7;
	pointer-events: auto;
}

.btn_contact.send{margin-left: 10px;}

.btn_contact.send,
.btn_contact.back{width: 110px;}

.btn_contact.submit:hover,
.btn_contact.send:hover,
.btn_contact.back:hover{background: #F97B00;}

.btn_contact button{
	background: none;
	margin: 0;
	padding: 15px 40px;
	outline: 0;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	width: 100%;
	height: 100%;
	cursor: pointer;
	font-size: 15px;
	font-weight: bold;
	color: #fff;
}

.btn_contact button:focus-visible{outline: thin dotted #333;}
	
.btn_form input{
	background: none;
	margin: 0;
	padding: 15px 30px;
	outline: 0;
	border: none;
	border-radius: 0;
	-webkit-appearance: none;
	width: 100%;
	height: 100%;
	cursor: pointer;
	color: #FFF;
	font-size:15px;
	font-weight: bold;
}

.btn_contact.back input{
	color: #1183C5;
	border: 1px solid #1183C6;
	background: #FFF;
}

/*--ファイル
---------------------------------------------- */
.wrap_file{
    display: flex;
	align-items: center;
}

.file_item input[type="file"]{display: none;}

.file_item .file_inner{
    display: inline-block;
    color: #fff;
    background: #1C91B7;
    width: 120px;
    font-weight: bold;
    text-align: center;
    border: none;
    border-radius: 4px;
    padding: 7px 0;
    cursor: pointer;
}

.wrap_file .file_txt{margin: 0 0 0 12px;}

/*--ラジオボタン
---------------------------------------------- */
.wrap_radio .radio_item{
	position: relative;
	display: inline;
}

.wrap_radio .radio_item input[type="radio"] + label{
    position: relative;
    display: inline-block;
    margin-right: 15px;
    padding-left: 28px;
}

.wrap_radio .radio_item input[type="radio"] + label::before{
    content: "";
    background: #FFF;
    border: 1px solid #787878;
    border-radius: 50%;
    width: 16px;
    height: 16px;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -10px;
}

.wrap_radio .radio_item input[type="radio"]:checked + label::after{
    content: "";
    background: #1C91B7;
    border-radius: 50%;
    width: 8px;
    height: 8px;
    position: absolute;
    top: 50%;
    left: 5px;
    margin-top: -5px;
}

.wrap_radio .radio_item input[type="radio"]:focus-visible + label{outline: 2px dotted #333;}

.wrap_radio.padding{padding-top: 3px;}

/*--チェックボックス
---------------------------------------------- */
.wrap_check{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 10px;
}

.wrap_check .check_item{position: relative;}

.wrap_check .check_item input[type="checkbox"] + label{
    display: inline-block;
    background: url("../img/img_checkbox01.jpg") no-repeat 0 center;
    background-size: 16px;
    padding: 0 0 0 24px;
    cursor: pointer;
	margin: 0 15px 0 0;
}

.wrap_check .check_item input[type="checkbox"]:checked + label{
    background: url("../img/img_checkbox01_on.jpg") no-repeat 0 center;
	background-size: 16px;
}

.wrap_check .check_item input[type="checkbox"]:focus-visible + label{outline: 2px dotted #333;}


/* ------------------------------------------------------------

お問い合せフォーム

------------------------------------------------------------ */
/* heading
---------------------------------------------- */
h4#h4_contact01{
	background:url(../form/contact/img/h4_contact01.gif) no-repeat 0 0;
	height:43px;
	margin-bottom:30px;
}


/* ------------------------------------------------------------

参加申し込みフォーム

------------------------------------------------------------ */
/* heading
---------------------------------------------- */
h4#h4_entry01{
	background:url(../form/entry/img/h4_entry01.gif) no-repeat 0 0;
	height:43px;
	margin-bottom:30px;
}

h4#h4_entry02{
	background:url(../form/entry/img/h4_entry02.gif) no-repeat 0 0;
	height:43px;
	margin-bottom:30px;
}
