@charset "utf-8";




/******************************************************************************
/* 本文設定
*******************************************************************************/




.form-group{
  margin-bottom: 35px;
}




input:required{
  background: #ffcdd2;
}
input[type="email"]:invalid{
  background: #ffcdd2;
}
input:valid{
  background: transparent;
}
input:focus{
  background: #DCEDC8;
}


.label-position{
  margin-bottom: 15px;
}


.form-size50 {
  width: 50%;
}


p.error_comment {
	font-weight: 700;
	font-size: 110%;
	color :#C00000;
	margin-bottom: 30px;
	text-align: left;

}


p.confirm_comment {
	font-weight: 700;
	font-size: 110%;
	color :#C00000;
	margin-bottom: 30px;
	text-align: center;

}


p.mail_comment {
	font-weight: 700;
	font-size: 110%;
	color :#A9D18E;
	margin-bottom: 30px;
	text-align: center;

}

p.password_comment {
	font-weight: 700;
	font-size: 110%;
	color :#C00000;
	margin-bottom: 30px;
	text-align: center;

}



.input_area {
	box-sizing: border-box;
	border: solid 1px black;
	width: 100%;
	padding: 40px;
	margin-top: 30px;
	text-align: center;
}


.input_area_in {
	margin: 0 auto 0 auto;
	width: 100%;
	text-align: left;
}


.input_area_in2 {
	margin: 0 auto 0 auto;
	width: 100%;
	text-align: left;
}

.input_area_button {
	margin: 0 auto 0 auto;
	width: 100%;
	text-align: center;
}




.m-textform-text {
	height: 350px;
	width: 100%;
	padding: 10px 16px;
	border-radius: 4px;
	border: none;
	box-shadow: 0 0 0 1px #ccc inset;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin-top: 10px;
	font-size: 120%;
	box-sizing: border-box;
	line-height: 1.8;
}

.m-textform-text:focus {
    outline: 0;
    box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}





/******************************************************************************
/* テキストフォーム
*******************************************************************************/


.form-item-body {
	margin: 0 auto 30px auto;

}

.form-item-body2 {
	margin: 0 auto 30px auto;
	width: 34%;
	text-align: left;

}



/******************************************************************************
/* テキストフォーム
*******************************************************************************/


.form-item-text {
}

.m-form-text {
	height: 50px;
	width: 100%;
	padding: 0 16px;
	border-radius: 4px;
	border: none;
	box-shadow: 0 0 0 1px #ccc inset;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin-top: 10px;
	font-size: 100%;
	box-sizing: border-box;

}




.m-form-text:focus {
    outline: 0;
    box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}




.m-form-text2 {
	height: 50px;
	width: 150px;
	padding: 0 16px;
	border-radius: 4px;
	border: none;
	box-shadow: 0 0 0 1px #ccc inset;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin-top: 10px;
	font-size: 100%;
	box-sizing: border-box;

}

.m-form-text2:focus {
    outline: 0;
    box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}

.m-form-text3 {
	height: 50px;
	width: 250px;
	padding: 0 16px;
	border-radius: 4px;
	border: none;
	box-shadow: 0 0 0 1px #ccc inset;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	margin-top: 10px;
	font-size: 100%;
	box-sizing: border-box;

}

.m-form-text3:focus {
    outline: 0;
    box-shadow: 0 0 0 2px rgb(33, 150, 243) inset;
}





::placeholder {
	color: #8E9298;
	font-size: 100%;
	letter-spacing: 1.2px;
}



.form-control {


	margin-top: 10px;


}



/******************************************************************************
/* ステップ横並び
*******************************************************************************/

.step_area {
	width: 100%;
	text-align: left;
}


.item {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0px auto 0px auto;
}


.item_block {
	position: relative;
	margin: 0px auto 0px auto;
}



.process_nav {
	width: 100%;
	margin: 0px auto 100px auto;

}

.process_nav ul{
	width: 100%;
}

.process_nav li {
	display: inline-block;
}
 
.process_nav li:nth-child(1) {
	width: 190px;
}

.process_nav li:nth-child(2) {
	width: 40px;
	flex-wrap: wrap;
}

.process_nav li:nth-child(3) {
	width: 190px;
}

.process_nav li:nth-child(4) {
	width: 40px;
}

.process_nav li:nth-child(5) {
	width: 190px;

}

/******************************************************************************
/* ステップマーク
*******************************************************************************/

.balloon3-right {
	position: relative;
	display: inline-block;
	margin: 0px auto 0px auto;
	padding: 0 5px;
	width: 50px;
	height: 50px;
	background: #ff8e9d;
	border-radius: 50%;
	box-sizing: border-box;
}

.balloon3-right:before {
	content: "";
	position: absolute;
	top: 50%;
	right: -15px;
	margin-top: -8px;
	border: 8px solid transparent;
	border-left: 15px solid #ff8e9d;
	z-index: 0;
}


.balloon3-right2 {
	position: relative;
	display: inline-block;
	margin: 0px auto 0px auto;
	padding: 0 5px;
	width: 50px;
	height: 50px;
	background: #C4C4C4;
	border-radius: 50%;
	box-sizing: border-box;
}

.balloon3-right2:before {
	content: "";
	position: absolute;
	top: 50%;
	right: -15px;
	margin-top: -8px;
	border: 8px solid transparent;
	border-left: 15px solid #C4C4C4;
	z-index: 0;
}




.balloon3-right p.step1 {
	text-align: center;
	color: #FFF;
	font-size: 70%;
	font-weight: 700;
	margin-top: 12px;
	margin-bottom: -5px;
}

.balloon3-right p.step2 {
	text-align: center;
	color: #FFF;
	font-size: 80%;
	font-weight: 700;
}

.step3 {
	position: absolute;
	top: 14px;
	left: 65px;
	font-size: 90%;
	font-weight: 700;
}



.balloon3-right2 p.step1 {
	text-align: center;
	color: #FFF;
	font-size: 70%;
	font-weight: 700;
	margin-top: 12px;
	margin-bottom: -5px;
}

.balloon3-right2 p.step2 {
	text-align: center;
	color: #FFF;
	font-size: 80%;
	font-weight: 700;
}

.step3_2 {
	position: absolute;
	top: 14px;
	left: 65px;
	font-size: 90%;
	font-weight: 700;
	color: #C4C4C4;
}


/******************************************************************************
/* 矢印
*******************************************************************************/


.arrow {
	display:inline-block;
	height:5px;
	width:15px;
	background-color:#FF8E9D;
	position:relative;
	top: 27px;
}

.arrow:before {
	position:absolute;
	content:"";
	width:0;
	height:0;
	border:10px solid transparent;
	border-left:15px solid #FF8E9D;
	left:15px;
	top: -8px;
}


.arrow2 {
	display:inline-block;
	height:5px;
	width:15px;
	background-color:#C4C4C4;
	position:relative;
	top: 27px;
}

.arrow2:before {
	position:absolute;
	content:"";
	width:0;
	height:0;
	border:10px solid transparent;
	border-left:15px solid #C4C4C4;
	left:15px;
	top: -8px;
}



/******************************************************************************
/* バッジ
*******************************************************************************/

.sankou-badge, .link-badge {
	padding: 3px 10px;
	margin-right: 8px;
	margin-left: 1px;
	font-size: 80%;
	font-weight: 700;
	color: white;
	border-radius: 3px;
	box-shadow: 0 0 3px #ddd;
	white-space: nowrap;
}

.link-badge {
  background-color: #58ACFA; /*青*/
}

.sankou-badge {
  background-color: #DC3545; /*緑*/
}



/******************************************************************************
/* チェックボックス設定
*******************************************************************************/


.ECM_CheckboxInput {
  padding: 12px 8px;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.ECM_CheckboxInput-Input {
  margin: 0;
  width: 0;
  opacity: 0;
}
.ECM_CheckboxInput:hover > .ECM_CheckboxInput-DummyInput {
  background: #DDDDDD !important;
  border: solid 2px #333333;
}
.ECM_CheckboxInput-Input:focus + .ECM_CheckboxInput-DummyInput {
  background: #DDDDDD !important;
  border: solid 2px #333333;
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput {
  border: solid 2px #333333;
  background: #FFFFFF;
}
.ECM_CheckboxInput-Input:checked + .ECM_CheckboxInput-DummyInput::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==") no-repeat center;
  background-size: contain;
}
.ECM_CheckboxInput-DummyInput {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  width: 32px;
  height: 32px;
  border: solid 2px #888888;
  background: #FFFFFF;
  border-radius: 4px;
}
.ECM_CheckboxInput-LabelText {
  margin-left: 12px;
  display: block;
  font-size: 18px;
  font-weight: bold;
}

/******************************************************************************
/* プライバシーポリシー確認
*******************************************************************************/


.box_comment_form {
	margin: 0px auto 30px auto;
	width: 80%;
	text-align: left;
	box-sizing: border-box;/*←全て含めてmin-height:100vhに*/

}




.privacy_box {
	margin: 20px auto 20px auto;
	width: 80%;
	text-align: center;
}

.privacy_box_in {
	margin: 0px auto 0px auto;
	width: 260px;
	text-align: left;
}


/******************************************************************************
/* 枠付きテーブル
*******************************************************************************/



.table01 {
	border-collapse:collapse;
	width: 100%;
	text-align:left;
	line-height: 150%;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #A2CC89;
	border-left-width: 1px;
	border-left-style: solid;
	border-left-color: #A2CC89;
	font-size: 100%;
	margin-top: 0px;
	margin-bottom: 40px;
}


.table01 th{
	width: 180px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #A2CC89;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #ffffff;
	color: #ffffff;
	background-color: #A2CC89;
	font-weight: 700;
	margin: 0px;
	padding: 15px;
	vertical-align: middle;
	text-align: center;
	white-space: nowrap;

}

.table01 th:nth-child(12) {
	border-bottom-color: #A2CC89;

}

.table01 td{
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #A2CC89;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #A2CC89;
	background-color : #ffffff;
	margin: 0px;
	padding: 15px;
	vertical-align: middle;
	font-weight: 700;
}




/******************************************************************************
/* ボタン
*******************************************************************************/

.btn_submit{
	display: inline-block;
	vertical-align: middle;
	margin: 0px auto 0px auto;
	padding: 6px 25px;
	font-weight: 700;
	font-size: 110%;
	letter-spacing: 0.5pt;
	cursor: pointer;
	text-decoration: none;
	height: 65px;
	box-sizing: border-box;/*←全て含めてmin-height:100vhに*/

} 



/******************************************************************************
/* ボタン
*******************************************************************************/

.submit-btn{
	display: inline-block;
	vertical-align: middle;
	margin: 20px auto 0 auto;
	padding: 6px 25px;
	color: #7EC000;
	font-weight: 700;
	font-size: 110%;
	letter-spacing: 0.5pt;
	text-decoration: none;
	background-color: #ffffff;
	border: 1px solid #7EC000;
	cursor: pointer;
	height: 65px;
	transition-duration:0.3s;
    -webkit-transition-duration:0.3s;
    -moz-transition-duration:0.3s;
    -o-transition-duration:0.3s;
    -ms-transition-duration:0.3s;
} 
.submit-btn:hover{
    color: #ffffff;
    background-color: #F15A24;
}

/******************************************************************************
/* 戻るボタン
*******************************************************************************/

.btn_back {
	display: inline-block;
	vertical-align: middle;
	margin: 0px auto 0 auto;
	padding: 6px 25px;
	color: #C4C4C4;
	font-weight: 700;
	font-size: 110%;
	letter-spacing: 0.5pt;
	text-decoration: none;
	background-color: #ffffff;
	border: 1px solid #C4C4C4;
	cursor: pointer;
	height: 65px;
	transition-duration:0.3s;
    -webkit-transition-duration:0.3s;
    -moz-transition-duration:0.3s;
    -o-transition-duration:0.3s;
    -ms-transition-duration:0.3s;
	box-sizing: border-box;/*←全て含めてmin-height:100vhに*/

} 
.btn_back:hover{
    color: #ffffff;
    background-color: #C4C4C4;
}

/******************************************************************************
/* フッター設定
******************************************************************************/

.site_footer{
	width:100%;
	margin-top: 50px;
	background-color:#F5F5F5;
	border-top:1px solid #d6d6d6;
	text-align: center;
	position: absolute;/*←絶対位置*/
	bottom: 0; /*下に固定*/
}


.site_footer2{
	margin-top: 50px;
	width:100%;
	background-color:#F5F5F5;
	border-top:1px solid #d6d6d6;
	text-align: center;
}


.bottom_copy{
	margin:0 auto 0 auto;
	width:100%;
	background-color:#F0F0F0;
	border-bottom:1px solid #bfbfbf;
	padding-top: 20px;
	padding-bottom: 20px;
	letter-spacing: 1.5px;
	font-size: 100%;
}


.copyright{
	text-align:center;
	font-size:77%;
	font-family:Arial, sans-serif;
	background-color:#19B7A8;
	padding:12px 0;
	margin-top:0px;
	color:#fff;
}





.corporate_copy{
	margin:0 auto 0 auto;
	padding-top:15px;
	padding-bottom:15px;
	letter-spacing:1px;
}




.corporate_info{
	width: 80%;
	margin:50px auto 50px auto;
	background-color:#F5F5F5;
	text-align: left;
}





.contact_address {

	font-size: 80%;
	margin-bottom: 15px;

}
 
.contact_address2 {
	color: #194375;
	font-size: 160%;
	font-weight: 700;
}

p.logo {
	width: 30%;
	height: auto;
	margin-bottom: 15px;
}




.corporate_info_copy{
	float:left;
	margin-left:2%;
	margin-top:5px;
	width:50%;
	height: auto;
	font-size: 80%;
	line-height:1.5;
	text-align: left;
}






/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/* 601 - 768用（タブレット用）の記述 */
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/


/******************************************************************************
/* スマートフォン・タブレットサイズ
*******************************************************************************/


@media screen and (max-width:1200px) {



.pcOnly {
	display: none!important;
}
.spOnly {
	display: block!important;
}




/******************************************************************************
/* フッター設定
******************************************************************************/



.bottom_copy{
	margin:0 auto 0 auto;
	width:100%;
	background-color:#F0F0F0;
	border-bottom:1px solid #bfbfbf;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 5%;
	padding-right: 5%;
	letter-spacing: 1.3px;
	font-size: 80%;
	text-align: left;
}

ul.footer_ul li p {

	font-size: 70%;
}





}


/*------------------------------------------------------------*/
/*------------------------------------------------------------*/
/* 600px - 100px用（スマートフォン用）の記述 */
/*------------------------------------------------------------*/
/*------------------------------------------------------------*/


@media screen and (min-width: 100px) and (max-width: 600px)  {





/******************************************************************************
/* プロセスナビ設定
******************************************************************************/


.process_nav {
	width: 100%;
	margin: 0px auto 30px auto;
	font-size: 90%;
}

.process_nav ul{
	width: 100%;
}

.process_nav li {
	display: inline-block;
	margin-bottom: 50px;
}
 
.process_nav li:nth-child(1) {
	width: 190px;
}

.process_nav li:nth-child(2) {
	width: 40px;
	flex-wrap: wrap;
}

.process_nav li:nth-child(3) {
	width: 190px;
}

.process_nav li:nth-child(4) {
	width: 40px;
}

.process_nav li:nth-child(5) {
	width: 190px;

}



/******************************************************************************
/* 矢印
*******************************************************************************/


.arrow {
	display:inline-block;
	height:5px;
	width:15px;
	background-color:#FF8E9D;
	position:relative;
	top: 27px;
}

.arrow:before {
	position:absolute;
	content:"";
	width:0;
	height:0;
	border:10px solid transparent;
	border-left:15px solid #FF8E9D;
	left:15px;
	top: -8px;
}


.arrow2 {
	display:none;
	height:5px;
	width:15px;
	background-color:#C4C4C4;
	position:relative;
	top: 0px;
}

.arrow2:before {
	position:absolute;
	content:"";
	width:0;
	height:0;
	border:10px solid transparent;
	border-left:15px solid #C4C4C4;
	left:15px;
	top: -8px;
}



/******************************************************************************
/* インプット囲い
******************************************************************************/


.input_area {
	box-sizing: border-box;
	border: solid 0px black;
	width: 100%;
	padding: 0px;
	margin-top: 30px;
	text-align: center;
	font-size: 90%;
}


.input_area_in {
	margin: 0 auto 0 auto;
	width: 100%;
	text-align: left;
}


.input_area_in2 {
	margin: 0 auto 0 auto;
	width: 100%;
	text-align: left;
}

.input_area_button {
	margin: 0 auto 0 auto;
	width: 100%;
	text-align: center;
}



/******************************************************************************
/* テーブル設定
******************************************************************************/



.table01	{ margin:0px auto 30px auto; }
.table01 th,
.table01 td{
	width: 100%;
	display: block;
	border-top: 1px solid #ddd;
}
.table01 tr:first-child th { border-top: 1px solid #ddd; }
section th, section td	{ padding: 1px; padding-left:0px; border: 1px solid #ddd; }

.table01 th	{ text-align: left; padding-left:5px; background-color: #A2CC89;}






/******************************************************************************
/* フッター設定
******************************************************************************/


.site_footer2{
	margin-top: 20px;
	width:100%;
	background-color:#F5F5F5;
	border-top:1px solid #d6d6d6;
	text-align: center;
}




.bottom_copy{
	margin:0 auto 0 auto;
	width:100%;
	background-color:#F0F0F0;
	border-bottom:1px solid #bfbfbf;
	padding-top: 20px;
	padding-bottom: 20px;
	padding-left: 5%;
	padding-right: 5%;
	letter-spacing: 1.3px;
	font-size: 80%;
	text-align: left;
}



.corporate_info{
	width: 80%;
	margin:0px auto 0px auto;
	background-color:#F5F5F5;
	text-align: left;
}




p.logo {
	width: 70%;
	height: auto;
	margin-bottom: 15px;
}



ul.footer_ul {
	margin: 0px auto 0px auto;
	width:100%;
	list-style-type: none
	text-align: left;
}
 


ul.footer_ul li:first-child {
	float: left;
	width:30%;
	height: auto;
	margin-right: 2%;
	margin-bottom: 50px;

}

ul.footer_ul li:last-child {
	display: inline-block;
	width:68%;
	float: left;
	text-align: left;
	margin-bottom: 20px;
}

ul.footer_ul li p {

	font-size: 70%;
}


.copyright{
	text-align:center;
	font-size:65%;
	font-family:Arial, sans-serif;
	background-color:#138c80;
	padding:12px;
	margin-top:20px;
	color:#fff;
}





}