




/* フォーム用ヘッダー対応 *******************/
/*ヘッダーメニュー非表示*/
header > div > ul {
	display: none;
}









/* 導入部分 *******************/
section.form_intro {
	padding-top: 40px;
}
section.form_intro > div h2 {
	width: 980px;
	margin: 0 auto 50px;
	font-size: 20px;
	font-weight: 600;
	color: #34949A;
	text-align: center;
	line-height: 1.4;
	padding: 10px 0;
	border-top: 2px solid #34949A;
	border-bottom: 2px solid #34949A;
	position: relative;
}
section.form_intro > div h2::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -10px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #fff transparent transparent transparent;
	border-width: 10px 6px 0 6px;
	filter: drop-shadow(0px 2px 0px #34949A);/*線付き*/
}
section.form_intro > div p {
	width: 980px;
	margin: 0 auto 50px;
	font-size: 15px;
	font-weight: 400;
	color: #333333;
	line-height: 1.6;
	margin-top: 50px;
	margin-bottom: 40px;
}

/*必須マーク*/
.require {
	padding: 2px 5px;
	background: #DC000C;
	color: #fff;
	border-radius: 4px;
	margin-right: 5px;
	font-size: 12px;
	font-weight: 300;
}









/* フォーム部分 *******************/
section.form {
	/* padding-top: 10px; */
	/* margin-top: -10px; */
	padding-bottom: 26px;
}
section.form table {
	width: 980px;
	margin: 0 auto 0;
	border: 1px solid #CCCCCC;
	border-collapse: unset;
	border-spacing: 0;
	border-radius: 5px;
	overflow: hidden;
}
section.form table th {
	width: 282px;
	font-size: 18px;
	font-weight: 600;
	color: #222222;
	line-height: 1.4;
	padding: 25px 20px;
	background-color: #E9EBF3;
	position: relative;
}
section.form table th span.require {
	position: absolute;
	top: 28px;
	right: 20px;
}
section.form table td {
	width: calc(100% - 282px);
	background-color: #FFF;
	padding: 15px 30px 5px 30px;
}
section.form table tr:not(:last-of-type) th {
	border-bottom: 1px dotted #BEBEBE;
}
section.form table tr:not(:last-of-type) td {
	border-bottom: 1px dotted #BEBEBE;
}
section.form input[type="text"],
section.form select {
	width: 100%;
	font-size: 16px;
	font-weight: 400;
	color: #222222;
	border: 1px solid #707070;
	border-radius: 4px;
	padding: 10px 10px;
}
section.form textarea {
	width: 100%;
	height: 200px;
	font-size: 16px;
	font-weight: 400;
	color: #222222;
	line-height: 1.6;
	border: 1px solid #707070;
	border-radius: 4px;
	padding: 10px 10px;
}
/*カレンダー調整用*/
.ui-widget {
	font-size: 1.4em;
}
.ui-widget a:hover {
	color: #fff;
	background-color: #0068B7;
}
.ui-datepicker td a {
	padding-top: 4px;
	padding-bottom: 4px;
}
/*コメント*/
div.owlet-input-sample {
	font-size: 14px;
	font-weight: 300;
	color: #707070;
	line-height: 1.8;
	margin-top: 10px;
}
div.owlet-input-sample span {
	display: block;
	color: #1A4FB3;
}
/*カレンダー注釈*/
section.form table tr td p {
	font-size: 14px;
	font-weight: 400;
	color: #707070;
	line-height: 1.4;
	margin-bottom: 14px;
	padding-left: 29px;
	text-indent: -29px;
}
section.form table tr td p::before {
	background-image: url(../images/form/calendar.png);
	content: '';
	display: inline-block;
	width: 22px;
	height: 22px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: bottom;
	margin-right: 8px;
}

/*個人情報取扱いについて*/
.owlet-rules {
	max-width: 980px;
	margin: 0 auto 0;
}
.owlet-rules-title {
	font-size: 16px;
	font-weight: 500;
    margin-top: 40px;
	margin-bottom: 20px;
}
.owlet-rules-body {
	height:200px;
	font-size: 16px;
	font-weight: 300;
	color: #333;
	line-height: 1.6;
	padding:15px;
	background-color: #FFF;
	border:1px solid #dcdcdc;
	box-sizing:border-box;
	overflow-y:scroll;
}
.owlet-rules-agree {
	text-align: center;
	margin-bottom: 20px;
}
/*確認ボタン*/
.form_button {
	width: 440px;
	margin: 60px auto 0;
	text-align: center;
	position: relative;
}
.form_button input {
	width: 100%;
	background-color: #FF211F;
	border-radius: 8px;
	font-size: 24px;
	font-weight: 500;
	color: #fff;
	padding: 28px 0;
	cursor: pointer;
	filter: drop-shadow(0px 6px 0px rgba(0,0,0,0.2));
	background-image: url(../images/form/chevron_white.png);
	background-repeat: no-repeat;
	background-position: right 20px center;
	background-size: 12px auto;
}
/*hover*/
.form_button input:hover {
	opacity: 0.8;
	filter: drop-shadow(0px 0px 0px #fff);
	transform: translate3d(0, 6px, 0);
}
/*エラーテキスト*/
.alert {
	font-size: 14px;
	font-weight: 500;
	color: #E60011;
	padding-bottom: 5px;    
}
.alert::before {
	content: '\f06a';
	font-size: 18px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
	vertical-align: middle;
	margin-right: 5px;
}


/* 個人情報取扱いについて確認用チェック */
div.owlet-rules-agree {
	margin-top: 20px;
	font-size: 16px;
	font-weight: 500;
	line-height: 22px;
}
/*必須*/
div.owlet-rules-agree span.require {
	margin-left: 5px;
	margin-right: 0;
}
/* チェックボックスデザイン */
div.owlet-rules-agree input[type="checkbox"] {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
div.owlet-rules-agree input[type="checkbox"] {
	cursor: pointer;
	padding-left: 30px;/*label手前にチェックボックス用の余白を開ける*/
	vertical-align: middle;
	position: relative;
}
div.owlet-rules-agree input[type="checkbox"]::before,
div.owlet-rules-agree input[type="checkbox"]::after {
	content: "";
	display: block; 
	position: absolute;
}
div.owlet-rules-agree input[type="checkbox"]::before {
	background-color: #fff;
	border-radius: 0%;
	border: 1px solid #666464;
	width: 20px;/*チェックボックスの横幅*/
	height: 20px;/*チェックボックスの縦幅*/
	transform: translateY(-50%);
	top: 50%;
	left: 5px;
}
div.owlet-rules-agree input[type="checkbox"]::after {
	border-bottom: 4px solid #000;/*チェックの太さ*/
	border-left: 4px solid #000;/*チェックの太さ*/
	opacity: 0;/*チェック前は非表示*/
	height: 12px;/*チェックの高さ*/
	width: 17px;/*チェックの横幅*/
	transform: rotate(-45deg);
	top: -8px;/*チェック時の位置調整*/
	left: 7px;/*チェック時の位置調整*/
}
div.owlet-rules-agree input[type="checkbox"]:checked::after {
	opacity: 1;/*チェック後表示*/
}








/* フォーム部分(確認) *******************/
section.form table.confirm td {
	vertical-align: middle;
	font-size: 18px;
	font-weight: 300;
	color: #222222;
	line-height: 1.4;
	padding: 10px 20px 10px 20px;
}
/*前に戻って修正*/
div.form_button a {
	width: 360px;
	display: block;
	margin: 0 auto 40px;
	font-size: 18px;
	font-weight: 500;
	color: #222222;
	text-align: center;
	padding: 18px 0;
	background-color: #fff;
	border: 1px solid #222;
	border-radius: 8px;
	filter: drop-shadow(0px 6px 0px rgba(0,0,0,0.2));
	position: relative;
}
div.form_button a::before {
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f053';
	font-size: 18px;
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
}
/*hover*/
div.form_button a:hover {
	opacity: 0.8;
	filter: drop-shadow(0px 0px 0px #fff);
	transform: translate3d(0, 6px, 0);
}












/* フォーム部分(完了) *******************/
section.form_intro.complete > div {
	text-align: center;
}
section.form_intro.complete > div img {
	width: 167px;
	height: auto;
	margin: 0 auto 40px;
}
section.form_intro.complete > div p {
	font-size: 18px;
	text-align: center;
	margin-top: 0;
	margin-bottom: 20px;
}
section.form_intro.complete > div p.left_txt {
	width: 90%;
	max-width: 600px;
	margin: 0 auto 20px;
	text-align: left;
}
section.form_intro.complete > div p.left_txt b {
	display: block;
	font-weight: 600;
	text-align: center;
}

/*トップへ戻る*/
section.form_intro.complete a.back2top {
	width: 400px;
	display: block;
	margin: 120px auto 0;
	font-size: 24px;
	font-weight: 500;
	color: #FF211F;
	text-align: center;
	background-color: #fff;
	padding: 23px 0;
	border: 1px solid #FF211F;
	border-radius: 8px;
	filter: drop-shadow(0px 4px 0px rgba(0,0,0,0.2));
	position: relative;
}
section.form_intro.complete a.back2top::before {
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	content: '\f053';
	font-size: 20px;
	font-weight: 900;
	font-family: "Font Awesome 6 Free";
}
/*hover*/
section.form_intro.complete a.back2top:hover {
	opacity: 0.8;
	filter: drop-shadow(0px 0px 0px #fff);
	transform: translate3d(0, 4px, 0);
}









/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
@media screen and (max-width: 1079px) {
*{}
/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/









/* 導入部分 *******************/
section.form_intro {
	padding-top: 20px;
}
section.form_intro > div h2 {
	width: 90%;
	max-width: 600px;
	font-size: 16px;
	margin: 0 auto 30px;
	padding: 15px 0;
}
section.form_intro > div p {
	width: 90%;
	max-width: 540px;
	font-size: 14px;
	margin-top: 0;
	margin-bottom: 20px;
}










/* フォーム部分 *******************/
section.form > div {
    width: 100%;
    max-width: 600px;
    padding-top: 0;
    padding-bottom: 66px;
}
section.form table {
	width: 90%;
	max-width: 600px;
}
section.form table th {
	width: 100%;
	display: block;
	font-size: min(4.5vw,16px);
	padding: 10px 10px;
}
section.form table th span.require {
	top: 10px;
	right: 10px;
}
section.form table td {
	padding: 15px 10px 5px 10px;
	width: 100%;
	display: block;
}
section.form table tr:not(:last-of-type) th {
	border-bottom: none;
}
section.form table tr:not(:last-of-type) td {
	border-bottom: none;
}
/*個人情報取扱いについて*/
.owlet-rules {
	width: 90%;
	max-width: 600px;
	margin: 0 auto 0;
}
.owlet-rules-title {
	margin-top: 20px;
	line-height: 1.4;
	font-size: 15px;
}
.owlet-rules-body {
	font-size: 15px;
}
/*確認ボタン*/
.form_button {
	margin: 40px auto 0;
	max-width: 400px;
	width: 90%;
}
.form_button input {
	font-size: 20px;
	padding: 26px 0;
}
.form_button:before {
	font-size: 16px;
}

/* 個人情報取扱いについて確認用チェック */
div.owlet-rules-agree {
	font-size: 15px;
	text-align: left;
	line-height: 1.4;
	padding-left: 2em;
	text-indent: -2em;
}
div.owlet-rules-agree span.require {
	white-space: nowrap
}
div.owlet-rules-agree input[type="checkbox"]::before {
	width: 18px;
	height: 18px;
}
/*確認画面に進む*/
.form_button input {
	background-size: 10px auto;
}








/* フォーム部分(確認) *******************/
section.form table.confirm td {
	font-size: 16px;
	min-height: 42px;
}
/*前に戻って修正*/
div.form_button a {
	width: 80%;
	max-width: 360px;
	font-size: 16px;
	padding: 13px 0;
	margin-bottom: 30px;
}
div.form_button a::before {
	font-size: 15px;
}









/* フォーム部分(完了) *******************/
section.form_intro.complete > div img {
	margin-bottom: 30px;
}
section.form_intro.complete > div p {
	max-width: max-content;
	font-size: 16px;
	text-align: left;
}

/*トップへ戻る*/
section.form_intro.complete a.back2top {
	width: 90%;
	max-width: 320px;
	margin: 56px auto 0;
	font-size: 20px;
	padding: 19px 0;
}
section.form_intro.complete a.back2top::before {
	font-size: 18px;
}










/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
}
/*■■■■■■■■■■■■■■ sp ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
