@charset "UTF-8";

.ucbzx-button-wrapper {
	display: none !important;
}

html {
	font-size: 100%;
	/* スムーズスクロール */
	scroll-behavior: smooth;
}

body {
	background: #f5f5f5;
	color: #66562e;
	margin: 0;
	padding: 0;
	font-family: Arial, Helvetica, "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "sans-serif";
	font-size: 16px;
}

ul, p, h1 {
	margin: 0;
	padding: 0;
}

.container {
	max-width: 750px;
	background-color: #fff;
	border-left: 1px solid #e3e3e3;
	border-right: 1px solid #e3e3e3;
	margin: 0 auto;
}

img {
	margin: 0px;
	padding: 0px;
	max-width: 100%;
	vertical-align: top;
}

a {
	color: #fff;
	text-decoration: none;
}

a:hover img {
	opacity: 0.9;
	top: 3px;
}

.pc {
	display: block !important;
}

.sp {
	display: none !important;
}


/* CTA */
.cta_p {
	font-size: 1.5rem;
	text-align: center;
	font-weight: bold;
}
.shousai {
	background-image: url(../images/03_ctabg.jpg);
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: cover;
	padding: 40px 30px 60px 30px;
	position: relative;
}

.arrow {
	position: absolute;
	bottom: -40px;
	left: 50%;
	transform: translateX(-50%);
}

.shousai_container {
	background: #fff;
	border-radius: 20px;
	border: #c19b6e solid 2px;
	padding: 18px 20px;
	line-height: 1.3;
}

.shousai_table th {
	text-align: center;
	width: 16%;
}

.shousai_table th p {
	font-size: 125%;
	background-color: #f3768b;
	border-radius: 5px;
	color: #fff;
	padding: 5px 10px;
	font-weight: bold;
	margin: 12px 0;
}

.shousai_table td {
	text-align: justify;
	padding-left: 10px;
	font-size: 150%;
}

.red {
	color: #eb4d68;
}

.bold {
	font-weight: bold;
}

.btn {
	text-align: center;
	padding-top: 40px;
	padding-bottom: 40px;
}

.btn a:hover img {
	position: relative;
	top: 3px;
	opacity: 0.9;
}

.fs83 {
	font-size: 83%;
}

#form {
	margin-top: 60px;
}

.nn {
	padding: 8px;
	font-size: 14px;
	padding: 16px 10px;
	width: 400px;
	margin-left: 10px;
	background-color: #ffdbdb !important;
	border: none !important;
}

#nyuuryoku {
	width: 690px;
	border-collapse: separate;
	border-spacing: 8px;
	margin: 0 auto;
}

#nyuuryoku th {
	background-color: #e6d7c5;
	font-size: 120%;
	font-weight: bold;
	text-align: center;
	border: 1px solid #c0c0c0;
}

#nyuuryoku td {
	width: 50%;
	padding: 1em;
	border: 1px solid #bbb;
}

.bord {
	border: 0px none !important;
	;
}

.formtxt {
	margin: 60px 0 20px;
	text-align: center;
	line-height: 1.8;
	font-size: 140%;
}

.smbtn {
	border: 0px;
	text-align: center;
	width: 100%;
	height: 150px;
	background: url(../images/cta_btn.png) no-repeat;
	background-position: center top;
	margin: 20px 0;
}

/*footer*/
footer {
	text-align: center;
	padding-top: 60px;
	width: 100%;
	font-size: 0.875rem;
	background-color: #c1986c;
	color: #fff;
}

.footer_li {
	margin-bottom: 20px;
	display: flex;
	list-style: none;
	justify-content: center;
}

.footer_li li {
	padding-left: 20px;
	padding-right: 20px;
}

.footer_li li a:hover {
	color: #F4ECD5;
}

.left_border {
	border-left: 1px solid #fff;
}

.copyright {
	padding-top: 15px;
	padding-bottom: 15px;
	font-size: 0.8em;
}

/* map */
.map {
	margin-bottom: 40px;
	background-color: #fdfcfc;
	padding: 0 30px;
}

.map p {
	margin-top: 20px;
}

.floatbtn {
	display: none;
}

.mt2 {
	margin-top: 40px;
}

@media only screen and (max-width:750px) {
	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

	.container {
		width: 100%;
		border: none;
	}

	img {
		max-width: 100% !important;
	}

	.pb2 {
		padding-bottom: 1rem;
	}

	.mt2 {
		margin-top: 1rem;
	}

	/* footer */
	footer {
		padding-top: 2rem;
		padding-bottom: 5rem;
	}

	.logo {
		height: 40px;
	}

	.footer_li {
		display: block;
		margin-bottom: 0;
	}

	.footer_li li {
		padding-top: 10px;
		padding-bottom: 10px;
		border-top: 1px solid #fff;
	}

	.left_border {
		border-left: none;
	}

	.copyright {
		font-size: 0.75rem;
	}


	.btn {
		padding: 1rem;
	}
.cta_p {
	font-size: 1rem;
}
}

/* フォーム全体のスタイル */
.content_form {
	margin-top: 60px;
	width: 690px;
	margin: 0 auto;
}

/* 入力フィールドのスタイル */
.input_unit .my_right input {
	padding: 16px 10px;
	font-size: 14px;
	width: 400px;
	background-color: #ffdbdb !important;
	border: none !important;
}

/* ラベルのスタイル */
.input_unit .my_left .form_input_label {
	background-color: #e6d7c5;
	font-size: 120%;
	font-weight: bold;
	text-align: center;
	border: 1px solid #c0c0c0;
	display: block;
	padding: 10px;
}

/* 各フォーム行のスタイル */
.input_unit {
	display: flex;
	align-items: center;
	border-bottom: 1px solid #bbb;
	padding: 10px 0;
}

/* 確認ボタンのスタイル */
.submit input[type="submit"] {
	border: 0px;
	text-align: center;
	width: 100%;
	height: 150px;
	background: url(../images/cta_btn.png) no-repeat;
	background-position: center top;
	margin: 20px 0;
}

/* スマホ対応スタイル */
@media only screen and (max-width: 750px) {
	.content_form {
		padding: 0 1rem;
		width: 100%;
	}

	.input_unit {
		flex-direction: column;
		align-items: flex-start;
	}

	.input_unit .my_right input {
		width: 90%;
		font-size: 18px;
		margin: 0 auto;
		padding: 10px;
	}

	.input_unit .my_left .form_input_label {
		font-size: 0.9375rem;
		width: 100%;
	}

	.submit input[type="submit"] {
		background-size: contain;
		margin: 20px 0;
		height: 50px;
	}

	.map iframe {
		width: 100%;
	}

	.map p {
		font-size: 80%;
		margin-top: 1em;
	}

	.map {
		padding: 0 1rem;
		margin-bottom: 2rem;
	}

	.btn_inner {
		position: fixed;
		z-index: 80;
		right: 0%;
		bottom: 0px;
		text-align: center;
		display: flex;
	}

	.btn_inner img {
		width: 90%;
	}
}

/* スマホのみ表示 */
@media screen and (min-width: 768px) {
	.floatbtn {
		display: none !important;
		/* PCでは完全非表示 */
	}
}

/* 20250707リダイレクトページ追加 */
.redirect {
	font-family: YuMincho, 'Yu Mincho', serif;
	text-align: center;
	background-color: #fff;
}

.redirect h1 {
	background-color: #F1748A;
	color: #fff;
	padding: 30px;
	margin-bottom: 20%;
}

.redirect p {
	font-size: 1.5rem;
	padding: 0 1rem;
}

.fs150 {
	font-size: 150%;
}

.vh100 {

	height: 100vh;
}

@media screen and (max-width: 768px) {
	.redirect p {
	font-size:2.2vh;
	padding: 0 0.5rem;
}
}