@charset "UTF-8";

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
	display: block;
}

audio[controls], canvas, video {
	display: inline-block;
	*display: inline;
	zoom: 1;
}

html {
	overflow-y: scroll;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

body, div, dl, dt, dd, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td, ul {
	margin: 0;
	padding: 0;
}
html, body{
	font-family: "Noto Sans JP", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
}

body, button, input, select, textarea {
	font-size: 100%;
}

abbr[title] {
	border-bottom: 1px dotted;
}

b, strong {
	font-weight: bold;
}

blockquote {
	margin: 1em 40px;
}

dfn {
	font-style: italic;
}

mark {
	background: #ff0;
	color: #000;
}

pre, code, kbd, samp {
	font-family: monospace, monospace;
	_font-family: "courier new", monospace;
	font-size: 1em;
}

pre {
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

q {
	quotes: none;
}
q:before, q:after {
	content: "";
	content: none;
}

small {
	font-size: 75%;
}

sub {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

ul, ol {
	margin: 0;
	padding: 0;
}

dd {
	margin: 0px;
}

nav ul, nav ol {
	list-style: none;
}

img {
	border: 0;
	-ms-interpolation-mode: bicubic;
}

svg:not(:root) {
	overflow: hidden;
}

figure, form {
	margin: 0;
}

fieldset {
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

legend {
	border: 0;
	*margin-left: -7px;
}

button, input, select, textarea {
	font-size: 100%;
	margin: 0;
	vertical-align: baseline;
	*vertical-align: middle;
}

button, input {
	line-height: normal;
	*overflow: visible;
}

button {
	cursor: pointer;
	-webkit-appearance: button;
}

input[type=button], input[type=reset], input[type=submit] {
	cursor: pointer;
	-webkit-appearance: button;
}
input[type=checkbox], input[type=radio] {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input[type=search] {
	-webkit-appearance: textfield;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
}

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	font-size: 100%;
}

img, abbr, acronym, fieldset {
	border: 0;
}

li {
	list-style: none;
}

/*画像を縦に並べた時に余白が出ないように*/
img {
	vertical-align: top;
	font-size: 0;
	line-height: 0;
}

/*box-sizingを全ブラウザに対応*/
* {
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}
*:before, *:after {
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	box-sizing: border-box;
}

.ie6_error, .no_script {
	background: #F66;
	padding: 100px;
	text-align: center;
	font-size: 150%;
	color: #333;
}

.flt {
	float: left;
}

.flr {
	float: right;
}

.txt_l, td.txt_l, .txt_l td {
	text-align: left;
}

.txt_r, td.txt_r, .txt_r td {
	text-align: right;
}

.txt_c, td.txt_c, .txt_c td {
	text-align: center;
}

.valign_t, td.valign_t, .valign_t td {
	vertical-align: top;
}

.valign_m, td.valign_m, .valign_m td {
	vertical-align: middle;
}

.valign_b, td.valign_b, .valign_b td {
	vertical-align: bottom;
}

.clear {
	clear: both;
}

.clearfix {
	zoom: 1;
}
.clearfix:before {
	content: "";
	display: block;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.img_bd {
	border: solid 1px #E8E8E8;
}

.c_red {
	color: #FF3425;
}



.slick-list {
	position: relative;
	overflow: hidden;
	display: block;
	margin: 0;
	padding: 0;
}
.slick-list:focus {
	outline: none;
}
.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track {
	position: relative;
	left: 0;
	top: 0;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.slick-track:before, .slick-track:after {
	content: "";
	display: table;
}
.slick-track:after {
	clear: both;
}
.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	float: left;
	height: 100%;
	min-height: 1px;
	display: none;
}
[dir=rtl] .slick-slide {
	float: right;
}
.slick-slide img {
	display: block;
}
.slick-slide.slick-loading img {
	display: none;
}
.slick-slide.dragging img {
	pointer-events: none;
}
.slick-initialized .slick-slide {
	display: block;
}
.slick-loading .slick-slide {
	visibility: hidden;
}
.slick-vertical .slick-slide {
	display: block;
	height: auto;
	border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
	display: none;
}

/* Arrows */
.slick-prev,
.slick-next {
	position: absolute;
	display: block;
	height: 45px;
	width: 45px;
	line-height: 0px;
	font-size: 0px;
	cursor: pointer;
	background: transparent;
	color: transparent;
	top: 40%;
	padding: 0;
	border: none;
	outline: none;
	z-index: 1;
}
@media screen and (max-width: 767px) {
	.slick-prev,
	.slick-next {
		top: 35%;
		height: 30px;
		width: 30px;
	}
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
	outline: none;
	background: transparent;
	color: transparent;
}
.slick-prev:hover:before, .slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
	opacity: 1;
}
.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
	opacity: 0.25;
}
.slick-prev:before,
.slick-next:before {
	content: "";
	position: absolute;
	height: 45px;
	width: 45px;
	opacity: 1;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
}
@media screen and (max-width: 767px) {
	.slick-prev:before,
	.slick-next:before {
		height: 30px;
		width: 30px;
	}
}

.slick-prev {
	left: 3%;
}
@media screen and (max-width: 767px) {
	.slick-prev {
		left: 5%;
	}
}
[dir=rtl] .slick-prev {
	left: auto;
	right: -3%;
}
@media screen and (max-width: 767px) {
	[dir=rtl] .slick-prev {
		right: -5%;
	}
}
.slick-prev:before {
	content: "";
	background: url(../images/slick_left.svg) center center/contain no-repeat;
}
[dir=rtl] .slick-prev:before {
	content: "";
}

.slick-next {
	right: 3%;
}
@media screen and (max-width: 767px) {
	.slick-next {
		right: 5%;
	}
}
[dir=rtl] .slick-next {
	left: -3%;
	right: auto;
}
@media screen and (max-width: 767px) {
	[dir=rtl] .slick-next {
		left: -5%;
	}
}
.slick-next:before {
	content: "";
	background: url(../images/slick_right.svg) center center/contain no-repeat;
}
[dir=rtl] .slick-next:before {
	content: "";
}

/* Dots */
.slick-dotted.slick-slider {
	/*  margin-bottom: 30px; */
}

.slick-dots {
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	padding: 0;
	list-style: none;
	text-align: center;
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.slick-dots li {
	position: relative;
	height: 1px;
	width: 45px;
	padding: 0;
	margin: 0 !important;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.slick-dots li {
		width: 30px;
	}
}
.slick-dots li button {
	border: 0;
	background: transparent;
	height: 1px;
	width: 45px;
	outline: none;
	line-height: 0px;
	font-size: 0px;
	position: absolute;
	top: 0;
	left: 0;
	color: transparent;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	.slick-dots li button {
		width: 30px;
	}
}
.slick-dots li button:hover, .slick-dots li button:focus {
	outline: none;
}
.slick-dots li button:hover:before, .slick-dots li button:focus:before {
	opacity: 1;
}
.slick-dots li button:before {
	content: "";
	position: absolute;
	margin: 0 auto;
	height: 1px;
	width: 45px;
	background: #e6e6e6;
	text-align: center;
}
@media screen and (max-width: 767px) {
	.slick-dots li button:before {
		width: 30px;
	}
}
.slick-dots li.slick-active button:before {
	height: 1px;
	width: 45px;
	background: #0f1c3b;
}
@media screen and (max-width: 767px) {
	.slick-dots li.slick-active button:before {
		width: 30px;
	}
}

/*
0:セット
------------------------------------------------------------
*/
html {
	width: 100%;
}

body {

	color: #1c0000;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.8;
	text-align: left;
	letter-spacing: 1px;
}
@media screen and (max-width: 767px) {
	body {
		font-size: 15px;
	}
}

.win body {

}

a {
	text-decoration: none;
	color: #1c0000;
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
a:link, a:active, a:visited {
	text-decoration: none;
}

.opacity {
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
}
.opacity:hover {
	opacity: 0.5;
}

img {
	max-width: 100%;
	height: auto;
}
img[src$=".svg"] {
	max-width: 100%;
	width: 100%;
	height: auto;
}

.pc {
	display: inherit;
}
@media screen and (max-width: 767px) {
	.pc {
		display: none;
	}
}

.sp {
	display: none;
}
@media screen and (max-width: 767px) {
	.sp {
		display: inherit;
	}
}

/*
//ベース
------------------------------------------------------------
*/
#container_wrap {
	overflow: hidden;
	min-width: 1000px;
}
@media screen and (max-width: 767px) {
	#container_wrap {
		min-width: 1px;
	}
}

.inner {
	max-width: 750px;
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
}
.inner::after {
	content: "";
	display: block;
	clear: both;
}

#main {
	float: right;
	width: 75%;
}
@media screen and (max-width: 767px) {
	#main {
		float: none;
		width: 100%;
		margin-bottom: 5%;
	}
}

#sub {
	float: left;
	width: 19%;
}
@media screen and (max-width: 767px) {
	#sub {
		float: none;
		width: 100%;
	}
}

#top_main {
	width: 100%;
	padding: 0;
	margin: 0 0 50px;
}

#top_left {
	width: 50%;
	float: left;
}

#top_right {
	width: 50%;
	float: right;
}

.section_wrap {
	font-size: 1.87rem;
	line-height: 1.53;
	padding: 0;
	overflow: hidden;
}
@media screen and (max-width: 767px) {
	.section_wrap {
		font-size: 1rem;
	}
}

.section {
	overflow: hidden;
	overflow: hidden;
}





/*
10：装飾
------------------------------------------------------------
*/
.bg_gray {
	background: #ccc;
}
.bg_white {
	background: #fff;
}
.bg_black {
	background: #000;
}
.bg_yellow_01 {
	background: #fffce9;
}
.bg_yellow_02 {
	background: #fff07d;
}
.bg_yellow_dot {
	background-size: 40px 40px;
	margin: 0 auto;
	background-color: #fffce2;
	background-image: -o-radial-gradient(#fff07d 15%, rgba(255, 255, 255, 0) 20%), -o-radial-gradient(#fff07d 15%, rgba(255, 255, 255, 0) 20%);
	background-image: radial-gradient(#fff07d 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#fff07d 15%, rgba(255, 255, 255, 0) 20%);
	background-position: 0 0, 20px 20px;
}
.bg_gray_dot {
	background-size: 45px 45px;
	margin: 0 auto;
	background-image: -o-radial-gradient(#f5f5f5 25%, #fff 10%);
	background-image: radial-gradient(#f5f5f5 25%, #fff 10%);
}
.bg_pink_dot {
	background-size: 40px 40px;
	margin: 0 auto;
	background-color: #e95464;
	background-image: -o-radial-gradient(#ec6d7b 15%, rgba(255, 255, 255, 0) 20%), -o-radial-gradient(#ec6d7b 15%, rgba(255, 255, 255, 0) 20%);
	background-image: radial-gradient(#ec6d7b 15%, rgba(255, 255, 255, 0) 20%), radial-gradient(#ec6d7b 15%, rgba(255, 255, 255, 0) 20%);
	background-position: 0 0, 20px 20px;
}
.bg_stripe {
	background: -o-repeating-linear-gradient(135deg, #f5f5f5 0, #f5f5f5 30px, #fff 30px, #fff 60px);
	background: repeating-linear-gradient(-45deg, #f5f5f5 0, #f5f5f5 30px, #fff 30px, #fff 60px);
}
.bg_stripe_y {
	background: -o-repeating-linear-gradient(150deg, #ffee6f 0, #ffee6f 20px, #ffe64f 20px, #ffe64f 40px);
	background: repeating-linear-gradient(-60deg, #ffee6f 0, #ffee6f 20px, #ffe64f 20px, #ffe64f 40px);
}
.bg_stripe_yo {
	background: -o-repeating-linear-gradient(150deg, #F2DA24 0, #F2DA24 20px, #F3E727 20px, #F3E727 40px);
	background: repeating-linear-gradient(-60deg, #F2DA24 0, #F2DA24 20px, #F3E727 20px, #F3E727 40px);
}

.txt_clr_gray {
	color: #ccc;
}
.txt_clr_white {
	color: #fff;
}
.txt_clr_black {
	color: #000;
}
.txt_clr_yellow {
	color: #ffee00;
}

.center {
	text-align: center;
}

.marker {
	background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, rgba(255, 255, 255, 0)), color-stop(65%, #ffee00));
	background: -o-linear-gradient(rgba(255, 255, 255, 0) 65%, #ffee00 65%);
	background: linear-gradient(rgba(255, 255, 255, 0) 65%, #ffee00 65%);
}

.underline_o_wave {
	padding-bottom: 0.3rem;
	background: url(../images/underline_o_wave.svg) bottom repeat-x;
	background-size: contain;
}

.underline_y_wave {
	position: relative;
	padding-bottom: 0.5rem;
}
@media screen and (max-width: 767px) {
	.underline_y_wave {
		padding-bottom: 0.1rem;
	}
}
.underline_y_wave::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 11px;
	background: url(../images/underline_y_wave.svg) bottom repeat-x;
	background-size: cover;
}
@media screen and (max-width: 767px) {
	.underline_y_wave::before {
		height: 5px;
	}
}

.line_dot_p {
	position: relative;
}
.line_dot_p::before {
	position: absolute;
	top: 0;
	left: 0;
	content: "";
	display: inline-block;
	width: 100%;
	height: 4px;
	background: url(../images/line_dot_p.svg) repeat-x left top/contain;
}

.tel {
	position: relative;
	font-family: "Asap", sans-serif;
	color: #f08300;
	font-weight: 600;
	font-size: 4.18rem;
	z-index: 1;
	display: inline-block;
	padding-left: 60px;
	line-height: 1.5;
}
@media screen and (max-width: 767px) {
	.tel {
		padding-left: 42px;
		font-size: 2rem;
	}
}


.text_big {
	font-size: 1.87rem;
}
@media screen and (max-width: 767px) {
	.text_big {
		font-size: 1rem;
	}
}







.main_img {
	max-width: 750px;
	margin: 0 auto;
}


:root{
	--brown: #4a2b1f;
	--red: #ff4b4b;

	--content-max: 750px;

	/* 余白などをフレキシブルに */
	--side-pad: clamp(12px, 4vw, 18px);
	--panel-radius: clamp(14px, 2vw, 18px);
	--row-radius: clamp(12px, 2vw, 16px);
}

/* ===== 背景画像エリア（全幅フレキシブル） ===== */
.hero{
	width: 100%;
	position: relative;
	display: grid;
	place-items: center;


	justify-items: center;
	align-items: start;
	padding-top:13%;

	padding-bottom: 5%;

	background: url("/wp-content/uploads/2025/12/1360d33d1fef02f07a2477dddf47baaa.jpg");
	background-size:100%;
	background-position:top;
	background-repeat: no-repeat;
	overflow: hidden;
}

.inq {
	background-color: #FE3F45;
	padding:1rem 0 2rem;
	position: relative;
	max-width: 750px;
	margin: 0 auto;
}
.btn1 {
	margin-bottom: 1rem;
}

.section_01 {
	overflow: hidden;
	padding: 2% 0 0 0;
}
.inner {
	max-width: 750px;
	width: 100%;
	margin: 0 auto;
	padding: 0 15px;
}
.ttl_pink {
	font-size: 240%;
	font-weight: 700;
	text-align: center;
	color: #FE3F45;
	line-height: 1.32;
}
@media screen and (max-width: 750px) {
	.inq {
		padding:.5rem 0 1rem;

	}
	.ttl_pink {
		font-size: 200%;
	}

	.bkc {
		color: #000;
		font-size: 90%;
	}
	.marker {
		background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, rgba(255, 255, 255, 0)), color-stop(65%, #ffee00));
		background: -o-linear-gradient(rgba(255, 255, 255, 0) 65%, #ffee00 65%);
		background: linear-gradient(rgba(255, 255, 255, 0) 65%, #ffee00 65%);
	}
}

/* ===== 中身：最大幅750px（PCもスマホも） ===== */
.hero__inner{
	width: 100%;
	max-width: var(--content-max);
	position: relative;
	z-index: 1;

}

/* 半透明の帯（中身幅いっぱい） */
.hero__panel{
	width: 100%;
	padding: 1rem;
	background: rgba(255,255,255,.90);
}

/* ===== 見出し ===== */
.hero__title{
	margin: 1rem 0 2rem 0;
	font-size: 100%;
	font-weight: 900;
	line-height: 1.15;
	letter-spacing: .02em;
	text-align:center;

	white-space: nowrap;   /* 1行固定 */
	word-break: normal;
}

.t-black{ color:#111; }
.t-red{ color: var(--red);font-size:150%; }

/* 赤文字の波線 */
.t-wavy{
	text-decoration-line: underline;
	text-decoration-style: wavy;
	text-decoration-color: var(--red);
	text-decoration-thickness: clamp(2px, .35vw, 3px);
	text-underline-offset: .22em;
}

/* ===== リスト ===== */
.hero__list{
	list-style: none;
	margin: 0;
	padding: 0;
	display: grid;
	width:90%;
	margin:auto;
}

/* 各行の白背景＋角丸（フレキシブル） */
.hero__list li{
	position: relative;
	background: #fff;
	border-radius: var(--row-radius);
	padding: 1rem 0 1rem 3.5rem;
	margin-bottom: .5rem;
	font-size: 1.2rem;
	font-weight: 900;
	color: var(--brown);
	box-shadow: 0 6px 16px rgba(0,0,0,.08);
}

/* 左のチェックアイコン（画像） */
.hero__list li::before{
	content:"";
	position:absolute;
	left: clamp(10px, 2.2vw, 14px);
	top: 50%;
	width: clamp(28px, 7vw, 36px);
	height: clamp(28px, 7vw, 36px);
	transform: translateY(-50%);
	background: url("/wp-content/uploads/2025/12/11d4515522f42cd710a2842b8aa29073.png")
		center / contain no-repeat;
}

.hero__list li::after{ content:none; }


@media screen and (max-width: 750px) {
	.hero{
		padding-top:18%;
		background-size:cover;

	}
	.hero__list li {

		padding: 1% 0 1% 2.5rem;

	}
	.hero__title {
		margin: 1% 0 4% 0;

	}
}











.worry-area{
	width: 100%;
	margin: 0 auto;
	padding: 0;
	/* 背景色 */
	--bg: #FFF6D6;

	/* ドット色（薄めの黄土） */
	--dot: rgba(242, 214, 120, 0.50);

	/* ピッチ（ドット間隔） */
	--p: 60px;

	/* ドット半径（見た目の大きさ） */
	--r: 4.5px;

	/* 開始位置（全体のズレ） */
	--ox: 8px;
	--oy: 10px;

	background-color: var(--bg);

	/* 千鳥：2レイヤーで半ピッチずらす */
	background-image:
		radial-gradient(circle, var(--dot) var(--r), rgba(255,255,255,0) calc(var(--r) + 0.6px)),
		radial-gradient(circle, var(--dot) var(--r), rgba(255,255,255,0) calc(var(--r) + 0.6px));

	background-size: var(--p) var(--p);

	/* 2枚目を「半ピッチ」ずらす＝千鳥になる */
	background-position:
		var(--ox) var(--oy),
		calc(var(--ox) + (var(--p) / 2)) calc(var(--oy) + (var(--p) / 2));
}
.flame_serif_lightblue {
	background: #6dc8eb;
	padding: 1.8rem 0;
	font-weight: 700;
	font-size: 150%;
	line-height: 1.35;
	color: #fff;
	text-align: center;
	position: relative;
}

.worry-inner{
	max-width: 750px;
	margin: 0 auto;

	/* 画像を下付きにするための箱 */
	display: flex;
	align-items: flex-end;   /* ←下揃え */
	justify-content: center;

	/* 高さは画像に合わせて必要なら確保 */
	min-height: 240px;
}

.worry-img{
	width: 100%;
	height: auto;
	display: block;
}


/* SPだけ小さくする */
@media screen and (max-width: 749px){
	.worry-inner{ min-height: 210px; }

	.worry-area{
		--p: 28px;   /* ←間隔を詰める */
		--r: 2.6px;  /* ←粒も小さくする */
		--ox: 6px;   /* ←開始位置も少し調整（任意） */
		--oy: 8px;
	}
}








.blue-message{
	background: #bfe6f7;          /* 画像の青に近い */
	padding: 2% 0;               /* 縦は％：スマホで潰れにくい */
	text-align: center;
}

.blue-message__inner{
	max-width: 46.875rem;         /* 750px */
	margin: 0 auto;
}

/* 文章共通 */
.blue-message p{

	color: #40210D;
	font-weight: 700;
	line-height: 1.8;

}

/* 上段 */
.blue-message__lead{
	font-size: 100%;
	margin-bottom: 2%;
}

/* 中段（赤強調） */
.blue-message__mid{
	margin-bottom: 2%;
}

.blue-message .red{
	color: #ff3b3b;
	font-weight: 900;
}

.blue-message .underline{
	text-decoration: underline;
	text-decoration-thickness: 0.14rem;
	text-underline-offset: 0.2em;
}

/* 強調（黄色マーカー） */
.blue-message__emphasis{

	font-weight: 900;
	line-height: 1.35;
	margin-bottom: 5%;
}

/* ここが本命：背景塗りをやめて、下に帯を敷く */
.blue-message .marker{
	font-size: 150%;
	position: relative;
	display: inline-block;
	padding: 0 .12em;          /* 左右だけ少し */
	z-index: 0;
}

.blue-message .marker::after{
	content:"";
	position:absolute;
	left: -0.05em;
	right: -0.05em;
	bottom: 0.12em;            /* ここで“下線の位置”を調整 */
	height: 0.2em;             /* ここで“マーカーの太さ”を調整 */
	background: #ffe900;
	z-index: -1;
}

/* 最後の「自社ローン」 */
.blue-message__cta{
	font-weight: 900;
}

.blue-message .cta-red{
	size:150%;
	color: #E8002A;
	font-weight: 900;
}

/* スマホ微調整 */
@media (max-width: 750px){

	.blue-message{

		padding: 5% 0;               /* 縦は％：スマホで潰れにくい */

	}
}













.yellow-area{
	background: #fff7b8;      /* 画像の黄色に近い */
	padding: 5% 0%;
	text-align: center;

	/* このブロック内の基準サイズ */
	font-size: 100%;
}

.yellow-area__inner{
	max-width: 750px;
	margin: 0 auto;
}

/* ===== 赤い吹き出し ===== */
.balloon{
	display: inline-block;
	position: relative;
	background: #ff3b3b;
	border-radius: 1.5rem;
	padding: 4% 6%;
	margin: 0 auto 4%;
}

/* しっぽ（左下） */
.balloon::after{
	content:"";
	position:absolute;
	left: 10%;
	bottom: -11%;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 0px 0 17px;
	border-color: #ff3b3b transparent transparent transparent;
}

.balloon__text{
	margin: 0;
	color: #fff;
	font-weight: 900;
	line-height: 1.75;
	font-size: 144%;          /* 大きめ */
	letter-spacing: 0.02em;
}

/* 「でも！」の白いラベル */
.balloon__badge{
	display: inline-block;
	background: #fff;
	color: #ff3b3b;

	padding: 0rem 0.5rem;  /* ←rem */
	margin-right: 0.375rem;   /* ←rem */

	font-weight: 900;
}

/* ===== 下の説明文 ===== */
.yellow-area__text{
	color: #111;
}

.yellow-area__lead{
	margin: 0%;
	font-weight: 900;
	font-size: 140%;
}

.yellow-area__desc{
	margin: 0;
	font-weight: 900;
	font-size: 140%;
	line-height: 1.6;
}



/* ===== 750pxで固定 ===== */
@media (max-width: 750px){
	.yellow-area{
		padding: 10% 6%;
	}

	.balloon{
		padding: 6% 7%;
		margin-bottom: 9%;
	}

	.balloon__text{
		font-size: 110%;
	}

	.yellow-area__lead{
		font-size: 110%;
	}

	.yellow-area__desc{
		font-size: 110%;
	}
}














/* セクション全体 */
.loan-points{
	background: #fff;
	font-size: 100%;
}

/* ===== タイトル帯：背景フル幅 ===== */
.loan-points__head{
	width: 100%;
	background:
		repeating-linear-gradient(
			135deg,
			#ff6a7a 0,
			#ff6a7a 14px,
			#ff4e63 14px,
			#ff4e63 28px
		);
}

.loan-points__head-inner{
	max-width: 750px;
	margin: 0 auto;
	padding: 2% 0;
	color: #fff;
	text-align: center;
	font-weight: 900;
	font-size: 134%;
	letter-spacing: 0.02em;
	line-height: 1.2;
}

/* ===== 中身（カード部分）：max 750 ===== */
.loan-points__inner{
	max-width: 750px;
	margin: 0 auto;
	padding: 3% 2% 5%;
}

/* 2列グリッド */
.loan-points__grid{
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap:2%;
}

/* ===== カード：崩れない作り（疑似要素で高さ100%を作らない） ===== */
.point-card{
	border-radius: 18px;
	padding: 6px; /* 枠の太さ（px固定で安定） */
	background:
		repeating-linear-gradient(
			135deg,
			#ff6a7a 0,
			#ff6a7a 10px,
			#ff4e63 10px,
			#ff4e63 20px
		);
}

/* 内側白 */
.point-card{
	background-clip: padding-box;
}
.point-card::before{ content:none; } /* 以前の崩れ要因を無効化 */

.point-card > *{
	margin: 0;
	text-align: center;
	color: #ff4e63;
	font-weight: 900;
}

/* 白い中身ボックスをpaddingで作る */
.point-card{
	position: relative;
}
.point-card{
	/* 外枠の中に白を入れる */
}
.point-card{
	/* 2重背景で白を作る */
	background:
		linear-gradient(#fff, #fff) padding-box,
		repeating-linear-gradient(
			135deg,
			#ff6a7a 0,
			#ff6a7a 10px,
			#ff4e63 10px,
			#ff4e63 20px
		) border-box;
	border: 10px solid transparent;
}

.point-card{
	width: 100%;
	display: grid;
	align-content: center;   /* 縦中央 */
	justify-items: stretch;  /* 横幅いっぱい */
	gap: 0px;               /* ←%をやめる（重要） */

	padding: 10% 6%;         /* 内側余白は%でOK */
}
.point-card > *{
	width: 100%;
	text-align: center;
}


/* テキスト */
.point-card__small{
	font-size: 80%;
}

.point-card__big{
	font-size: 160%;
	line-height: 1.15;
}

.point-card__note{
	font-size: 57%;
}

/* ===== 750px固定 ===== */
@media (max-width: 750px){
	.loan-points__head-inner{
		font-size: 120%;
		padding: 5% 0%;
	}

	.loan-points__inner{
		padding: 7% 4% 10%;
	}

	.loan-points__grid{
		gap: 2%;
	}


	.point-card__big{

	}
}








.cta-images{
	background: #fff7b8;   /* 背景が黄色なら */
	padding: 2% 4%;
	text-align: center;
	font-size: 100%;
}

.cta-images__inner{
	max-width: 750px;
	margin: 0 auto;
}

.cta-images__item{
	display: block;
	margin: 0 auto 3%;
	text-decoration: none;
}

.cta-images__item:last-child{
	margin-bottom: 0;
}

.cta-images__item img{
	display: block;
	width: 100%;
	max-width: 690px;      /* ←ボタン画像を少し小さめ中央にしたい場合。不要なら消す */
	margin: 0 auto;
	height: auto;
}

/* 750px固定 */
@media (max-width: 750px){
	.cta-images{
		padding: 6% 4%;
	}
	.cta-images__item{
		margin-bottom: 4%;
	}
	.cta-images__item img{
		max-width: 100%;     /* スマホは幅いっぱい */
	}
}





.loan-case{
	max-width: 750px;
	font-size: 100%;
	background: #fff;
	padding: 1% 0 0;
	border: 8px solid #0045AD;
	box-sizing: border-box;
	margin: 1rem auto;
}

/* ===== 比較テーブル（横スクロール） ===== */
.loan-case__tablewrap{
	max-width: 750px;
	margin: 0 auto;
	padding: 4% 4% 2%;
}

.loan-case__hint{
	margin-bottom: 2%;
	text-align: center;
}

.loan-case__hint img{
	display: block;
	width: 100%;
	max-width: 750px; /* セクションと同じ */
	height: auto;
	margin: 0 auto;
}
/* 横スクロール（テーブル全体がスワイプで動く） */
.loan-case__scroll{
	overflow-x: auto;
	overflow-y: visible;
	background-color: #E9E9E9;
	padding: 2%;
	-webkit-overflow-scrolling: touch;
}


/* テーブル基本 */
.loan-compare{
	border-collapse: separate;
	border-spacing: 0;
	width: 980px;
	min-width: 980px;
	table-layout: fixed;
	font-size: 100%;

	/* 飛び出し分の余白（見切れ防止） */
	margin-top: 18px;
}

.loan-compare th,
.loan-compare td{
	border: 3px solid #E9E9E9;
	padding: 22px 10px;
	text-align: center;
	vertical-align: middle;
	font-weight: 900;
	background: #fff;
	color: #000;
}

/* ヘッダー灰 */
.loan-compare thead th{
	background: #dadada;
}

/* 左の項目列（固定はしない） */
.td-rowhead,
.th-item{
	background: #dadada !important;

}

/* ダイエー列（薄黄＋赤文字） */
.td-dai{
	background: #fff7b8 !important;
	color: #ff3b3b !important;
}

/* ===== ここが飛び出し（下端は揃えたまま、上だけ追加） ===== */
.th-dai{
	position: relative;
	background: #dadada;      /* ベースは他と同じ灰のまま */
	overflow: visible;
}

/* 赤い“上だけ追加パーツ” */
.th-dai::before{
	content:"";
	position: absolute;
	left: -3px;               /* 罫線ぶん */
	right: -3px;
	top: -18px;               /* 飛び出し量 */
	bottom: -3px;             /* 下端は他ヘッダーと揃える（罫線ぶん） */

	background: #ff3b3b;
	border: 3px solid #E9E9E9;
	border-bottom: 0;         /* 下は元のヘッダー罫線に任せる */
	z-index: 1;
}

/* 文字は赤パーツの上に */
.th-dai__txt{
	position: relative;
	z-index: 2;
	display: inline-block;
	color: #fff;
}
.th-item-blank{
	background: #E9E9E9 !important; /* 灰だけ */
	border: 0 !important;           /* ←線を消す */
	padding: 0 !important;          /* 余白も無し（元デザイン寄せ） */
}
table.loan-compare .small{
	font-size:60%;
}
table.loan-compare .verysmall{
	font-size:50%;
}






/* 750px固定 */
@media (max-width: 750px){
	.loan-compare{
		width: 920px;
		min-width: 920px;
		margin-top: 16px;
	}
	.loan-compare th,
	.loan-compare td{
		padding: 18px 8px;
		font-size: 95%;
	}
	.th-dai::before{
		top: -16px;
	}
}





/* ===== 見出し ===== */
.loan-case__title{
	max-width: 750px;
	margin: 0 auto;
	padding: 4% 4% 2%;
	text-align: center;
}

.loan-case__badge{
	display: inline-block;
	background: #0045AD;
	color: #fff;
	font-weight: 900;
	padding: 0.8% 6%;
	border-radius: 1.5rem;
	font-size: 160%;
	margin: 0 0 5%;
}

.loan-case__headline2{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;         /* スマホで折り返しOK */
	margin: 0 auto 4%;
	font-weight: 900;
	font-size: 200%;
	line-height: 1.1;
}

.loan-case__redline{
	color: #FE3F45;
	display: inline-flex;
	align-items: center;
	position: relative;
	white-space: nowrap;     /* 「￥ ご利用事例」を分断しない */
}

/* 下線：redline（アイコン＋赤文字）幅の“ちょうど下”だけ */
.loan-case__redline::after{
	content:"";
	position: absolute;
	left: 0;
	width: 100%;             /* ←ここ重要：right:0 を使わない */
	height: 4px;
	background: #FE3F45;
	bottom: -14px;           /* 距離（好みで調整） */
}

.loan-case__yenicon{
	width: 52px;
	height: auto;
	display: block;
}

.loan-case__blue{
	color: #0b4db8;
	display: inline-block;
	white-space: nowrap;
}
/* ===== 750px固定 ===== */
@media (max-width: 750px){
	.loan-case__badge {
		border-radius: 1rem;
	}
	.loan-case__headline2 {
		font-size: 150%;
	}
	.loan-case__yenicon {
		width: 30px;
		height: auto;
		display: block;
	}
	.loan-case__redline::after {
		bottom: -9px;
	}
}

/* ===== 車種ボタン（4つ） ===== */
.loan-case__nav{
	max-width: 750px;
	margin: 0 auto;
	padding: 3% 4% 5%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}

.car-btn{
	display: block;
	text-align: center;
	text-decoration: none;
	font-weight: 900;
	padding: 10% 6%;
	border-radius: 12px;
	background: #bfbfbf;
	color: #fff;
	font-size: 115%;
	line-height: 1.25;
}
.car-btn.is-active{
	background: #0045AD;
}

/* ===== 事例（車カード） ===== */
/* 1件ごとの区切り */
.car-case{
	padding: 0 0 8%;
	text-align: center;
	font-size: 100%;
}

/* 画像 */
.car-case__img{ margin: 0 auto 4%; }
.car-case__img img{
	display: block;
	width: 100%;
	max-width: 520px;
	height: auto;
	margin: 0 auto;
}

/* 車種名 */
.car-case__name{
	margin: 0;
	font-size: 220%;
	font-weight: 900;
	color: #0b4db8;
	letter-spacing: 0.02em;
}

/* 車種名の下（小さいグレード） */
.car-case__grade{
	margin: 0% 0 3%;
	font-size: 95%;
	font-weight: 900;
	color: #0b4db8;
}

/* ラベル＋価格（横並び） */
.car-case__payrow{
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 12px;
	margin: 2% 0 3%;
}

/* 青ラベル */
.car-case__paylabel{
	background: #0b4db8;
	color: #fff;
	font-weight: 900;
	font-size: 105%;
	padding: 10px 16px;
	border-radius: 10px;
	line-height: 1;
}

/* 金額 */
.car-case__amount{
	display: inline-flex;
	align-items: baseline;
	color: #ff3b3b;
	font-weight: 900;
	line-height: 1;
}

.car-case__num{
	font-size: 320%;
	letter-spacing: 0.01em;
}

/* 「円」だけ小さく */
.car-case__yen{
	font-size: 190%;
	margin-left: 2px;
}

/* 青い線 */
.car-case__line{
	width: 78%;
	max-width: 560px;
	height: 3px;
	background: #0b4db8;
	margin: 0 auto 1%;
}

/* サブ */
.car-case__sub{
	margin: 0;
	font-size: 95%;
	font-weight: 900;
	color: #0b4db8;
}

/* スライダー枠 */
.loan-case__slider{
	max-width: 750px;
	margin: 0 auto;
	overflow: hidden;
}

/* 横並びトラック */
.loan-case__track{
	display: flex;
	width: 100%;
	transition: transform 0.35s ease;
	will-change: transform;
}

/* 1スライド = 100% */
.loan-case__track .car-case{
	flex: 0 0 100%;
}


/* ===== スライダー枠 ===== */
.loan-case__slider{
	max-width: 750px;
	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

/* ===== 横スライド ===== */
.loan-case__track{
	display: flex;
	width: 100%;
	transition: transform 0.35s ease;
}

.loan-case__track .car-case{
	flex: 0 0 100%;
}

/* ===== 矢印ボタン ===== */
.loan-case__arrow{
	position: absolute;
	top: 18%; /* 車画像の中央あたり */
	transform: translateY(-50%);
	width: 48px;
	height: 48px;
	padding: 0;
	border: none;
	background: transparent;
	cursor: pointer;
	z-index: 20;
	opacity: 0.55;
}

.loan-case__arrow img{
	width: 100%;
	height: auto;
	display: block;
}

/* 右 */
.loan-case__arrow--next{
	right: 2%;
}

/* 左（画像を左右反転） */
.loan-case__arrow--prev{
	left: 2%;
}
.loan-case__arrow--prev img{
	transform: scaleX(-1);
}

/* 端では非表示 */
.loan-case__arrow.is-disabled{
	opacity: 0;
	pointer-events: none;
}
.car-btn{
	-webkit-appearance: none;
	appearance: none;
	border: 0;
	cursor: pointer;
}



/* 750px固定 */
@media (max-width: 750px){
	.car-case__name{ font-size: 200%; }
	.car-case__grade{ font-size: 90%; }

	.car-case__payrow{
		gap: 10px;
	}

	.car-case__paylabel{
		font-size: 100%;
		padding: 9px 14px;
	}

	.car-case__num{ font-size: 290%; }
	.car-case__yen{ font-size: 175%; }

	.car-case__line{
		width: 86%;
	}

	.car-case__sub{ font-size: 90%; }

	.car-case__img img{
		max-width: 100%;
	}
	.car-case__name{
		font-size: 200%;
	}
	.car-case__price-yen{
		font-size: 290%;
	}
	.car-case__sub{
		font-size: 90%;
	}
	.loan-compare{
		width: 860px;
		min-width: 860px;
	}
	.loan-case__headline{ font-size: 160%; }
	.loan-case{
		border-width: 4px;
	}
	.loan-case__arrow{
		width: 16px;
		height: 16px;
		top: 26%;
	}
	.car-btn{
		font-size: 100%;

	}
}


















.point-area{
	margin: 0 auto;
	background-size: 45px 45px;
	background-image: -o-radial-gradient(#f5f5f5 25%, #fff 10%);
	background-image: radial-gradient(#f5f5f5 25%, #fff 10%);
}

.point-area_inner{
	max-width:750px;
	margin: 0 auto;
	padding: 40px 16px;
}

/* ===== 見出し（PCを基本にする） ===== */
.point-head{
	display: flex;
	gap: 16px;
	align-items: flex-start;
	position: relative;
}

.point-head::before{
	content: "";
	position: absolute;
	top: 15px;
	left: 246px;
	width: 100px;
	height: 100px;
	background-image: url("/wp-content/uploads/2025/12/aece39040bb69935e671a433ee691ac3-1.png");
	background-repeat: no-repeat;
	background-size: contain;
	z-index: 1;
}

.point-head__img img{
	width: 280px; /* PC基本 */
	height: auto;
	display: block;
}

.point-head__txt{
	position: relative;
	margin-top: 8%;
}

.point-head__line img{
	width: 40px;
	display: block;
	margin-bottom: 8px;
}

.point-head__title{
	font-size: 140%;
	line-height: 1.2;
	color: #e85c64;
	text-align: center;
}

.point-head__title .tline{
	display: block;        /* ← これでmarginが効く */
}

.point-head__title .t2{
	margin-top: 2px;
	margin-bottom: 0;      /* ← 自社ローンの下を詰める */
}

.point-head__title .t34{
	margin-top: -11px;      /* ← ここで間隔を縮める（微調整） */
}

.point-head__title .t-no{
	font-size: 85%;
}

.point-head__title .t3{
	font-size: 150%;
}

.point-head__title strong{
	font-weight: 700;
	font-size: 116%;
}

/* ===== POINT BOX ===== */
.point-box{
	border: 5px solid #e85c64;
	border-radius: 16px;
	padding: 5% 5% 5%;
	background-color: #fff;
	margin-bottom: 8%;
}

.point-box__head{
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 6%;
	padding: 0 3% 0;
}

.point-box__icon img{
	width: 128px; /* PC基本 */
	height: auto;
	display: block;
}

.point-box__title{
	font-size: 150%;
	color: #e85c64;
	font-weight:bold;
	line-height: 1.4;
}

.point-box__body{
	border-top: 2px dashed #e85c64;
	margin-top:5%;
	padding-top: 5%;
}

.point-box__body p{
	font-size: 90%;
	font-weight:bold;
	line-height: 1.75;
	color: #e85c64;
	text-align: center;
}
t1,.point-box_t3,.point-box_t4{
	font-weight:bold;

}
.point-head__title_t3{
	font-size:140%;
}
/* ===== SP（750未満だけ上書き） ===== */
@media screen and (max-width: 749px){
	.point-box{
		padding: 5% 2% 5%;
	}
	.point-box__body p {
		font-size: 100%;

	}
	.point-head__img img{
		width: 120px;
	}

	.point-head__txt{
		margin-top: 2%;
	}

	.point-head::before{
		top: -16%;
		left: 32%;
		width: 17%;
		height: 100px;

	}

	.point-head__title{
		font-size: 117%;
	}
	.point-box__icon img{
		width: 60px;
	}
	.point-box__title {
		font-size: 130%;
	}
	.point-box__head {
		gap: 10px;

	}
}






.eval-area{
	max-width: 750px;
	margin: 0 auto;
	padding: 0;   /* 左右4% / 下6% */
	position: relative;
}

.eval-inner{
	background: #fff;
	padding-bottom: 5%;
}

/* 赤帯 */
.eval-ribbon{
	position: relative;
	background: #FE3F46;
	padding: 3% 4%;     /* ％化 */
	text-align: center;
}

.eval-ribbon__txt{
	font-size: 120%;
	font-weight: 700;
	color: #FFF102;
	line-height: 1.3;
}

.eval-ribbon::after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -20px;
	margin-left: -20px;
	width: 0;
	height: 0;
	border-left: 20px solid transparent;
	border-right: 20px solid transparent;
	border-top: 20px solid #FE3F46;
}

/* 右上の男性 */
.eval-man{
	position: absolute;
	right: -2%;
	top: -1%;
	z-index: 2;
}

.eval-man img{
	width: 215px;
	height: auto;
	display: block;
}

/* 説明文 */
.eval-lead{
	font-size: 105%;
	font-weight: 700;
	color: #111;
	line-height: 1.4;
	padding: 8% 6% 2%;
	padding-right: 28%;
	margin: 0;
}

/* バナー */
.eval-banner{
	padding: 0 4%;
	margin: 8% 0 5%;
}

.eval-banner img{
	width: 100%;
	height: auto;
	display: block;
	border-radius: 10px;
}

/* 中央コピー */
.eval-copy{
	text-align: center;
	font-size: 105%;
	font-weight: 700;
	color: #111;
	margin: 3% 0 2%;    /* ％化 */
	line-height: 1.2;
}

.eval-copy__rank{
	font-size: 200%;
	font-weight: 800;
	margin: 0 0.5%;
}

.eval-copy__slash{
	display: inline-block;
	font-weight: 700;
	margin: 0 1%;
}

/* メダル（1枚画像） */
.eval-medals{
	padding: 0 4%;      /* ％化 */
	margin: 0;
}

.eval-medals img{
	width: 100%;
	height: auto;
	display: block;
}

/* 注釈 */
.eval-note{
	font-size: 50%;
	color: #333;
	text-align: center;
	line-height: 1.1;
	margin: 2% 0 0;     /* ％化 */
	padding: 0 3%;      /* ％化 */
}

/* 750未満だけ上書き（1本） */
@media screen and (max-width: 749px){
	.eval-man{ right: -4%; top: -2%; }
	.eval-man img{ width: 117px; }

	.eval-lead{
		font-size: 95%;
		padding-right: 24%; /* 画像が小さくなる分だけ逃げも縮める */
	}

	.eval-ribbon__txt{ font-size: 105%; }
	.eval-copy{ font-size: 95%; }
	.eval-copy__rank{ font-size: 160%; }
	.eval-note{ font-size: 50%; }
	.eval-banner {
		padding: 0 4%;
		margin: 12% 0 5%;
	}
}









.voice-area{
	width:100%;
	margin: 0 auto;
	padding: 0;
	background: #fff;
}

.voice-inner{
	padding: 0;
	max-width:750px;
	margin:auto;
}

/* ===== 緑帯（ドット＋▼） ===== */
.voice-ribbon{
	position: relative;
	padding: 6% 4%;
	text-align: center;
	background-color: #7CBF3C;
	background-image: radial-gradient(rgba(255, 255, 255, 0.25) 15%, rgba(255, 255, 255, 0) 22%);
	background-size: 46px 48px;
}

.voice-ribbon__txt{
	font-size: 125%;
	font-weight: 800;
	color: #fff;
	line-height: 1.35;
	margin: 0;
}

.voice-ribbon__hl{
	color: #FFFF00;
}

.voice-ribbon::after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -41px;
	margin-left: -18px;
	width: 0;
	height: 0;
	border-left: 18px solid transparent;
	border-right: 18px solid transparent;
	border-top: 42px solid #7CBF3C;
}

/* ===== 見出し＋女性 ===== */
.voice-head{
	position: relative;
	padding: 8% 4% 11%;   /* ←下を増やして“地面”を作る（%） */
	min-height: 0;        /* ←不要なら消してOK */
	margin-bottom: 0;     /* ←ここ重要：空白で逃がさない */
}

.voice-head__img{
	position: absolute;
	right: 6%;
	bottom: 0;            /* ←-10pxやめる（固定） */
	width: 28%;
	max-width: 190px;
}
.voice-head__title{
	font-size: 170%;
	font-weight: 800;
	color: #7CBF3C;
	line-height: 1.25;
	margin: 0;
}


.voice-head__img img{
	width: 100%;
	height: auto;
	display: block;
}

/* ===== Voiceカード ===== */
.voice-card{
	position: relative;
	width: 90%;
	margin: 0% 4% 12%;
	border: 4px solid #79b62a;
	border-radius: 10px;
	background: #fff;
}

.voice-badge{
	position: absolute;
	left: 2%;
	top: -55px; 
	width: 22%;
	max-width: 110px;
	z-index: 5;
}

.voice-badge img{
	width: 100%;
	height: auto;
	display: block;
}

.voice-card__in{
	padding: 3% 4% 5%;
}

/* 名前部分 */
.voice-card__name{
	text-align: center;
	padding-top: 2%;
	padding-bottom: 4%;
	border-bottom: 2px dashed #79b62a;
}

.voice-name{
	font-size: 120%;
	font-weight: 800;
	color: #79b62a;
	margin: 0 0 2%;
}

.voice-prof{
	font-size: 120%;
	font-weight: 800;
	color: #79b62a;
	margin: 0;
}

/* 本文 */
.voice-card__body{
	padding-top: 5%;
}

.voice-card__body p{
	font-size: 60%;
	font-weight: 700;
	color: #111;
	line-height: 1.7;
	margin: 0;
	text-align: center;
}

/* ===== SP（750未満だけ上書き） ===== */
@media screen and (max-width: 749px){
	.voice-ribbon{ padding: 7% 4%; background-size: 34px 34px; }

	.voice-ribbon__txt{ font-size: 115%; }

	.voice-ribbon::after{
		bottom: -16px;
		margin-left: -16px;
		border-left-width: 16px;
		border-right-width: 16px;
		border-top-width: 16px;
	}


	.voice-head__title{ font-size: 155%; }


	.voice-badge{
		width: 74px;
		height: 74px;
		left: 2%;
		top: -8%;
	}
	.voice-card__in{
		padding: 3% 5% 5%;
	}
	.voice-card__body p{
		font-size: 100%;
		line-height: 1.75;
	}

	.voice-head{
		padding: 10% 4% 16%;
		margin-bottom: 0;
	}
	.voice-head__img {
		bottom: -20px;
		width: 33%;
	}
}




.flow-area{
	/* ドット背景（CSS生成） */
	background-color: #fff;

	/* 千鳥の水玉（2レイヤー） */
	background-image:
		radial-gradient(circle, rgba(80,170,255,0.18) 28%, rgba(255,255,255,0) 30%),
		radial-gradient(circle, rgba(80,170,255,0.18) 28%, rgba(255,255,255,0) 30%);

	background-size: 10px 10px;      /* 間隔（＝1コマ） */
	background-position: 0 0, 5px 5px; /* ←半コマずらす（20pxの半分） */
}


.flow-inner{
	max-width: 750px;
	margin: 0 auto;
	padding: 2% 0 2%;
}

/* 見出し画像 */
.flow-ttl1,
.flow-ttl2{
	text-align: center;
}

.flow-ttl1{ margin: 0 0 7%; }
.flow-ttl2{ margin: 0 0 9%; }

.flow-ttl1 img{
	width: 84%;
	max-width: 620px;
	height: auto;
	display: inline-block;
}

.flow-ttl2 img{
	width: 92%;
	max-width: 620px;
	height: auto;
	display: inline-block;
}

/* STEP */
.flow-step{
	margin: 0 auto 7%;
	width: 90%;
}

.flow-step__bar{
	background: #0a4aa9;
	color: #fff;
	text-align: center;
	font-size: 140%;
	font-weight: 800;
	letter-spacing: 0.08em;
	padding: 2.5% 0;
}

.flow-step__num{
	font-size: 160%;     /* ←数字だけ大きく */
	font-weight: 900;
	display: inline-block;
	margin-left: 1%;
	line-height: 1;
}


.flow-step__img{
	padding: 3% 0 0 ;
}

.flow-step__img img{
	width: 100%;
	height: auto;
	display: block;
}

.flow-step__txt{
	background: #fff;
	padding: 5% 0% 6%;
	text-align: center;
	font-size: 90%;
}

.flow-step__txt p{
	margin: 0;
	font-size: 115%;
	font-weight: 700;
	color: #0a4aa9;
	line-height: 1.6;
}

/* 750未満（1本だけ） */
@media screen and (max-width: 749px){
	.flow-inner{ padding: 8% 4% 10%; }

	.flow-ttl1 img{ width: 78%; }
	.flow-ttl2 img{ width: 96%; }

	.flow-step__bar{
		font-size: 125%;
		padding: 4.5% 0;
	}

	.flow-step__txt p{
		font-size: 105%;
	}
}






.faq-area{
	width:100%;
	margin: 0 auto;
	background: #cfe9fb;   /* 水色背景 */
	padding: 0 0 6%;
}

.faq-inner{
	padding: 7% 0 0% 0;
}

.faq-ttl{
	background: #0a4aa9;
	color: #fff;
	text-align: center;
	font-size: 170%;
	font-weight: 800;
	padding: 2% 4%;
	margin: 0 0 5%;
}

.faq-list{
	width: 90%;
	margin: 0 auto;
	max-width: 750px;
}

.faq-item{
	border: 4px solid #2f7fc4;
	border-radius: 6px;
	overflow: hidden;
	background: #fff;
	margin: 0 auto 5%;
}

/* Q行 */
.faq-q{
	width: 100%;
	display: grid;
	grid-template-columns: auto 1fr auto;
	align-items: center;
	gap: 3%;
	padding: 4% 4%;
	border: 0;
	background: #fff;
	cursor: pointer;
	text-align: left;
}

.faq-q__icon img{
	width: 44px;
	height: auto;
	display: block;
}

.faq-q__txt{
	color: #1a66b6;
	font-size: 122%;
	font-weight: 800;
	line-height: 1.4;
}

/* 矢印：閉じてる時は下向き */
.faq-q__arrow{
	width: 0;
	height: 0;
	border-left: 14px solid transparent;
	border-right: 14px solid transparent;
	border-top: 20px solid #1a66b6;
	transition: transform 0.2s ease;
}


/* Aブロック：初期は非表示 */
.faq-a{
	display: none;          /* ←これで初期は閉じる */
	grid-template-columns: auto 1fr;
	gap: 4%;
	padding: 5% 4% 6%;
	background: #2f7fc4;
}

/* 開いた時だけ表示 */
.faq-item.is-open .faq-a{
	display: grid;          /* ←開いたら出す */
}


.faq-a__icon img{
	width: 44px;
	height: auto;
	display: block;
}

.faq-a__txt{
	color: #fff;
	font-size: 95%;
	font-weight: 700;
	line-height: 1.7;
	margin-top: -2%;
}

/* 開いた状態：矢印を上向きに（180度回転） */
.faq-item.is-open .faq-q__arrow{
	transform: rotate(180deg);
}

/* 750未満（1本だけ） */
@media screen and (max-width: 749px){
	.faq-ttl{ font-size: 150%; }
	.faq-q__arrow{
		border-left: 7px solid transparent;
		border-right: 7px solid transparent;
		border-top: 10px solid #1a66b6;
	}

	.faq-q__icon img,
	.faq-a__icon img{ width: 40px; }

	.faq-q__txt{ font-size: 90%; }
	.faq-a__txt{ font-size: 90%; }
}










.logo-area{
	width: 100%;
	margin: 0 auto;
	padding: 3% 0;
	background: #000;
}

.logo-inner{
	padding: 0 4%;     /* 左右余白も%（他セクションと統一） */
	margin:auto;
	max-width: 750px;
}

.logo-inner img{
	height: auto;
	display: block;

}












.shop-area{
	width:100%;
	margin: 0 auto;

	/* オレンジ千鳥ドット（前回水色の色替え） */
	background-color: #fff6d6;
	background-image:
		radial-gradient(circle, rgba(255,170,60,0.35) 18%, rgba(255,255,255,0) 30%),
		radial-gradient(circle, rgba(255,170,60,0.35) 18%, rgba(255,255,255,0) 30%);
	background-size: 10px 10px;
	background-position: 0 0, 5px 5px;

	padding: 3% 0 0%;
}

.shop-inner{
	padding: 0 0;
	max-width:750px;
	margin:auto;
}

/* ブロック間 */
.shop-block{
	padding: 0 0 10%;
}

/* 赤い帯タイトル */
.shop-title{
	width: 70%;
	margin:0 auto 5%;
	padding: 2% 0;
	background: #FE3F45;
	color: #fff;
	text-align: center;
	font-size: 170%;
	font-weight: 800;
	border-radius: 44px;
}

/* 店舗画像：フル幅（= 750内で100%） */
.shop-photo{
	width: 100%;
	margin: 0 0 6%;
}

.shop-photo img{
	width: 100%;
	height: auto;
	display: block;
}

/* マップ枠 */
.shop-map{
	width: 90%;
	margin: 0 auto;
	background: #fff;
	overflow: hidden;
}

/* iframeは縦横比を固定して安定させる */
.shop-map iframe{
	width: 100%;
	height: 520px;
	border: 0;
	display: block;
}
.shop-txt{
width: 90%;
  margin: 6% auto 0;
  background: #fff;
  overflow: hidden;
  padding: 4%;
}

/* 750未満（1本だけ） */
@media screen and (max-width: 749px){
	.shop-area{ padding: 8% 0 10%; }

	.shop-title{
		width: 80%;
		font-size: 150%;
		padding: 3.5% 0;
		margin-bottom: 5%;
		border-radius: 25px;
	}

	.shop-map{ width: 92%; }
	.shop-map iframe{ height: 280px; }
}














/* ===== 仮審査フォーム ===== */
.precheck{
	width: 100%;
	margin: 0 auto;
	background: #FFFAC2;
}

.precheck__inner{
	padding: 0 4% 8%;
	max-width: 750px;
	margin: auto;
}

/* タイトル帯 */
.precheck__ttl{
	margin: 0 0 3%;
	padding: 2% 4%;
	background: #F79125;
	color: #fff;
	text-align: center;
	font-size: 170%;
	font-weight: 900;
}

/* 1行 */
.frow{
	margin: 0 0 6%;
}

.flabel{
	display: flex;
	align-items: center;
	gap: 3%;
	margin: 0 0 2%;
	color: #F79125;
	font-weight: 900;
	font-size: 100%;
}

/* 必須/任意バッジ */
.req,
.opt{
	display: inline-block;
	padding: 0.2em 0.6em;
	border-radius: 6px;
	color: #fff;
	font-size: 80%;
	font-weight: 900;
	line-height: 1;
}
.req{ background: #ff3b3b; }
.opt{ background: #0a4aa9; }

/* 入力 */
.fctrl input{
	width: 100%;
	border: 2px solid #FBCD97;
	background: #fff;
	padding: 4% 4%;
	border-radius: 0;
	font-size: 110%;
	font-weight: 700;
	color: #111;
	box-sizing: border-box;
}

.fctrl input::placeholder{
	color: #b7b7b7;
}

/* 年収/年齢の「単位」横並び */
.fctrl--inline{
	display: flex;
	align-items: center;
	gap: 4%;
}

.fctrl--inline input{
	width: 42%;
}

.unit{
	font-size: 120%;
	font-weight: 900;
	color: #0a4aa9;
}

/* ヘルプリンク */
.fhelp{
	margin: 2% 0 0;
	font-size: 68%;
	font-weight: 900;
}
.fhelp__link{
	color: #0a4aa9;
	text-decoration: none;
}

/* 注釈 */
.fnote{
	margin: 2% 0 0;
	font-size: 60%;
	font-weight: 700;
	color: #111;
	line-height: 1.5;
}

/* 同意ブロック */
.agree{
	margin: 4% 0 6%;
}

.agree__chk{
	display:flex;
	align-items: center;
	gap: 3%;
	font-size: 80%;
	margin: 5% auto 0;
	width: 90%;
	font-weight: 900;
	color: #F79125;
	font-weight:bold;
}

.agree__chk input{
	width: 18px;
	height: 18px;
}

.agree__chk .mwform-checkbox-field > label{
  display: flex;
  align-items: center;
  gap: 0.6em;
		font-weight:bold;
}
.agree__chk input[type="checkbox"]{
  margin: 0;
  flex: 0 0 auto;
}
.agree__chk .mwform-checkbox-field-text{
  line-height: 1.4;
  display: block;
}




.agree__pdf{
	margin: 4% 0 0;
	text-align: center;
	font-size: 90%;
	font-weight: 900;
}
.agree__pdf a{
	color: #ff3b3b;                 /* 文字色（既に赤なら不要） */
	text-decoration: none;          /* 標準下線は消す */
	position: relative;
	font-weight: 900;
}


/* 赤い下線 */
.agree__pdf a::after{
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;                 /* 文字から少し離す */
	width: 100%;
	height: 2px;                    /* 下線の太さ */
	background: #ff3b3b;
}


.agree__note{
	margin: 3% 0 0;
	font-size: 55%;
	font-weight: 700;
	color: #111;
	line-height: 1.5;
}

/* 送信 */
.submit{
	margin: 6% 0 0;
}

.submit__btn{
	position: relative;          /* ←基準 */
	width: 100%;
	border: 0;
	background: #F79125;
	color: #FFF000;
	font-size: 170%;
	font-weight: 900;
	padding: 3% 4%;
	cursor: pointer;

	text-align: center;          /* ←文字は中央 */
}
.submit--mw{
	position: relative;
}

.submit--mw::after{
	content:"";
	position:absolute;
	left:88%;
	top:50%;
	transform: translate(-50%,-50%) rotate(45deg);
	width:24px;
	height:24px;
	border-top:4px solid #ffe500;
	border-right:4px solid #ffe500;
	pointer-events:none; /* クリック邪魔しない */
}


/* 注意書き */
.legal{
	margin: 6% 0 0;
	font-size: 53%;
	font-weight: 700;
	color: #111;
	line-height: 1.55;
}

/* 750未満だけ */
@media (max-width: 749px){
	.precheck__ttl{ font-size: 150%; }
	.flabel{ font-size: 105%; }
	.submit__btn{ font-size: 150%; }
	.agree__chk{
		width: 90%;

	}
	.fnote{
		font-size: 65%;

	}
	.submit--mw::after {
		width: 17px;
		height: 17px;

	}
}






































/* 背景はフル幅 */
.form-page{
	background: #FFFAC2;
}
.form-hero {
	border-bottom: 15px solid #F79125;
	max-width: 750px;
	margin: auto;
}
/* ★ここが“インナー 750px” */
.form-inner{
	max-width: 750px;
	margin: 0 auto;
	padding: 0 12px 40px;
}

/* ヒーロー：フル幅（fullbleed） */
.form-hero.fullbleed{
	width: 100%;
}
.form-hero.fullbleed img{
	width: 100%;
	height: auto;
	display: block;
}

/* ヒーロー：インナー幅にしたい場合は class を fullbleed→contained に */
.form-hero.contained{
	max-width: 750px;
	margin: 0 auto;
}
.form-hero.contained img{
	width: 100%;
	height: auto;
	display: block;
}

/* タイトル帯 */
.form-title{
	margin:5% 0;
	background: #F79125;
	border-radius: 14px;
	padding: 2% 4%;
	color: #fff;
	text-align: center;
}
.form-title__main {
	font-size: 242%;
	font-weight: 800;
}
.form-title__sub{

	font-size: 66%;

}
/* ===== カード ===== */
.mwf-card{
	background: #fff;
	border-radius: 14px;
	padding: 16px;
	margin: 0 0 16px;
	border: 1px solid #eef3fb;
}
.mwf-field{ margin: 0 0 14px; }
.mwf-field:last-child{ margin-bottom: 0; }

/* ===== ラベル ===== */
.mwf-label{
	font-weight: 800;
	font-size: 105%;
	color: #EF8500;
	display: inline-flex;
	gap: 8px;
	align-items: center;
	margin-bottom: 10px;
	margin-left:1%;
}

/* ※はユーザー側で手動変更する前提（背景なし赤文字） */
.mwf-req{
	background: none;
	width: auto;
	height: auto;
	border-radius: 0;
	color: #e53935;
	font-size: 100%;
	font-weight: 800;
	line-height: 1;
}

/* ===== 補足・エラー ===== */
.mwf-hint{
	margin-top: 8px;
	color: #6b7a99;
	font-size: 90%;
}

.mwf-error .error,
.mwf-error span.error{
	display: block;
	margin-top: 8px;
	color: #e53935;
	font-size: 90%;
	font-weight: 700;
}

/* ===== 入力（青枠） ===== */
/* MW WPFORMが吐く input/select/textarea を “枠の中”にある想定で当てる */
.mwf-control input[type="text"],
.mwf-control input[type="email"],
.mwf-control input[type="tel"],
.mwf-control input[type="url"],
.mwf-control input[type="password"],
.mwf-control input[type="number"],
.mwf-control input[type="date"],
.mwf-control textarea,
.mwf-control select{
	width: 100%;
	border: 2px solid #F9CE9A;
	border-radius: 10px;
	padding: 12px 12px;
	font-size: 100%;
	background: #fff;
	outline: none;
}

.mwf-control textarea{
	min-height: 110px;
	resize: vertical;
}

.mwf-control input::placeholder,
.mwf-control textarea::placeholder{
	color: #a7b2c8;
}

/* フォーカス */
.mwf-control input:focus,
.mwf-control textarea:focus,
.mwf-control select:focus{
	border-color: #0a3ea8;
	box-shadow: 0 0 0 3px rgba(10,62,168,.15);
}

/* ===== selectの見た目（最低限） ===== */
.mwf-control select{
	appearance: auto;
}

/* ===== zip/tel が分割出力される場合の保険 ===== */
.mwf-control .mwform-zip-field,
.mwf-control .mwform-tel-field{
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
}
.mwf-control .mwform-zip-field input,
.mwf-control .mwform-tel-field input{
	width: auto;
	flex: 1 1 160px;
}

/* ===== ラジオ/チェック：ずれ矯正（最重要） ===== */
.mwf-control--choices{
	text-align: left;
	margin-left:2%;
}

/* MWのラジオ1項目（クラス名揺れ対策） */
.mwf-control--choices .mwform-radio-field,
.mwf-control--choices .mwform_radio_field{
	display: block;
	margin: 0px 0 0;
}

/* labelがある場合：左に丸、右にテキストを一直線 */
.mwf-control--choices .mwform-radio-field label,
.mwf-control--choices .mwform_radio_field label{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	margin: 0;
}

/* labelが無い場合：span等で出るケースの保険 */
.mwf-control--choices .mwform-radio-field span,
.mwf-control--choices .mwform_radio_field span{
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
}

.mwf-control--choices input[type="radio"],
.mwf-control--choices input[type="checkbox"]{
	margin: 0;
	flex: 0 0 auto;
	transform: translateY(1px);
}

/* チェックボックスが縦に多い時 */
.mwf-control--choices .mwform-checkbox-field,
.mwf-control--choices .mwform_checkbox_field{
	display: block;
	margin: 0px 0 0;
}
.mwf-control--choices .mwform-checkbox-field label,
.mwf-control--choices .mwform_checkbox_field label{
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 10px;
	margin: 0;
}

/* ===== 送信ボタン ===== */
.mwf-actions{
	margin-top: 6px;
}

.mwf-actions input[type="submit"],
.mwf-actions button[type="submit"]{
	width: 100%;
	border: 0;
	border-radius: 10px;
	padding: 14px 14px;
	font-size: 110%;
	font-weight: 900;
	background: #0a3ea8;
	color: #fff;
	cursor: pointer;
}

.mwf-actions input[type="submit"]:active,
.mwf-actions button[type="submit"]:active{
	transform: translateY(1px);
}
/* ラジオ（性別など）を縦並びにする */
.mwf-control--choices .mwform-radio-field,
.mwf-control--choices .mwform_radio_field{
	display: block;
	margin: 0px 0 0;
}

/* 1行＝1項目 */
.mwf-control--choices .mwform-radio-field label,
.mwf-control--choices .mwform_radio_field label,
.mwf-control--choices .mwform-radio-field span,
.mwf-control--choices .mwform_radio_field span{
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0px 0 0;
}

/* 最初の項目だけ余白を詰める */
.mwf-control--choices .mwform-radio-field label:first-child,
.mwf-control--choices .mwform_radio_field label:first-child,
.mwf-control--choices .mwform-radio-field span:first-child,
.mwf-control--choices .mwform_radio_field span:first-child{
	margin-top: 0;
}
/* 審査申込み店舗（.mwf-control--choices）を縦並びに固定 */
.mwf-control--choices{
	display: block;
	text-align: left;
}

.mwf-control--choices label{
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 10px 0 0;
}

.mwf-control--choices label:first-child{
	margin-top: 0;
}

.mwf-control--choices input[type="radio"]{
	margin: 0;
	flex: 0 0 auto;
	transform: translateY(1px);
}
/* ドロップダウン（select）を元デザイン寄せ */
.mwf-control select{
	width: 100%;
	border: 2px solid #FBD9B2;
	border-radius: 10px;
	padding: 12px 44px 12px 12px; /* 右の▼用に余白 */
	font-size: 100%;
	background: #fff;
	outline: none;

	/* ブラウザ差の吸収（ネイティブ矢印を活かしつつ） */
	-webkit-appearance: menulist;
	appearance: auto;
}

/* フォーカス */
.mwf-control select:focus{
	border-color: #0a3ea8;
	box-shadow: 0 0 0 3px rgba(10,62,168,.15);
}

/* 文字色（「選択」など） */
.mwf-control select{
	color: #1f2a44;
}
.mwf-control select:invalid{
	color: #a7b2c8; /* 未選択時を薄くしたい場合 */
}
/* =========================
チェックボックス（縦並び・青枠）
========================= */
.mwf-control--choices{
	text-align: left;
}

/* 1行＝1項目 */
.mwf-control--choices label{
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 10px 0 0;
	color: #1f2a44;
	font-size: 100%;
}

/* 最初だけ上余白なし（カード内で綺麗に） */
.mwf-control--choices label:first-child{
	margin-top: 0;
}

/* チェックボックス本体（青枠・角丸） */
.mwf-control--choices input[type="checkbox"]{
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	flex: 0 0 auto;

	border: 2px solid #b9ccef;
	border-radius: 3px;
	background: #fff;

	/* ブラウザ標準を活かしつつ枠を寄せる */
	accent-color: #0a3ea8;
}

/* 押しやすく（ラベルクリック範囲） */
.mwf-control--choices label{
	cursor: pointer;
}
.mwf-control--choices input[type="checkbox"]{
	cursor: pointer;
}
/* チェックリスト全体 */
.is-checklist .mwf-note{

}

.is-checklist .mwf-checklist{
	margin-top: 8px;
	margin-left:2%;
}

/* 1行1項目 */
.is-checklist .mwf-check{
	display: flex;
	align-items: flex-start;
	gap: 10px;
	margin: 10px 0 0;
	cursor: pointer;
	color: #1f2a44;
	font-size: 100%;
}

.is-checklist .mwf-check:first-child{
	margin-top: 0;
}

/* チェックボックス（青枠・小さめ四角） */
.is-checklist .mwf-check input[type="checkbox"]{
	width: 18px;
	height: 18px;
	margin: 2px 0 0;
	flex: 0 0 auto;

	border: 2px solid #b9ccef;
	border-radius: 3px;
	background: #fff;

	accent-color: #0a3ea8;
}

/* テキスト */
.is-checklist .mwf-check__txt{
	display: block;
	line-height: 1.55;
}

/* ラジオの丸とテキストを水平に揃える（上下ズレ修正） */
.mwf-control--choices .mwform-radio-field.horizontal-item > label{
	display: inline-flex !important;
	align-items: center !important;
	gap: 10px;
}

/* 余計な微調整が入っている場合は無効化 */
.mwf-control--choices .mwform-radio-field.horizontal-item input[type="radio"]{
	margin: 0 !important;
	transform: none !important;   /* ←これが効く */
	vertical-align: middle;        /* 念のため */
}

/* テキスト側の高さを安定 */
.mwf-control--choices .mwform-radio-field-text{
	line-height: 1.2;
	display: inline-block;
}
/* A: 丸を少しだけ下げる */
.mwf-control--choices .mwform-radio-field.horizontal-item input[type="radio"]{ margin-top: 1px !important; }

/* =================================================
MW WPFORM チェックボックス（horizontal-item）を縦並びに固定
対象： .mwf-card.is-checklist の中だけ
================================================= */

/* 1項目=1行 */
.mwf-card.is-checklist .mwform-checkbox-field.horizontal-item{
	display: block !important;
	margin: 10px 0 0 !important;
}

/* 先頭だけ余白なし */
.mwf-card.is-checklist .mwform-checkbox-field.horizontal-item:first-child{
	margin-top: 0 !important;
}

/* ラベル内を整列（左：□ / 右：文字） */
.mwf-card.is-checklist .mwform-checkbox-field.horizontal-item > label{
	display: flex !important;
	align-items: flex-start;
	gap: 10px;
	margin: 0 !important;
}

/* □（青枠・サイズ） */
.mwf-card.is-checklist .mwform-checkbox-field.horizontal-item input[type="checkbox"]{
	width: 18px;
	height: 18px;
	margin: 2px 0 0 !important;
	flex: 0 0 auto;

	border: 2px solid #b9ccef;
	border-radius: 3px;
	background: #fff;
	accent-color: #0a3ea8;
}

/* テキスト側 */
.mwf-card.is-checklist .mwform-checkbox-field-text{
	display: inline-block;
	line-height: 1.55;
	color: #1f2a44;
	font-size: 90%;
}


.housing-matrix .mwf-note{

}

.hm{
	border-radius: 10px;
	overflow: hidden;
}

.hm__head{
	display: grid;
	grid-template-columns: 140px repeat(5, 1fr);
	background: #ffffff;
	color: #6b7a99;
	font-weight: 700;
	font-size: 90%;
}

.hm__row{
	display: grid;
	grid-template-columns: 140px repeat(5, 1fr);
	align-items: center;
	margin: 0 0 1%;
}

.hm__row--a{ background: #e9ebef; }
.hm__row--b{ background: #f3f4f7; }
.hm__row--c{ background: #e9ebef; }

.hm__cell{
	padding: 12px 10px;
	text-align: center;
}

.hm__cell--rowhead{
	text-align: left;
	font-weight: 700;
	color: #6b7a99;
}

/* 丸をグレー寄せ（画像通り） */
.hm input[type="radio"]{
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: #666;
}

/* ===== 住居の形態：見た目を画像寄せに微調整 ===== */

/* ヘッダーの文字位置 */
.hm__head .hm__cell{
	padding-top: 14px;
	padding-bottom: 10px;
	font-size: 92%;
	color: #6b7a99;
}

/* 左の行見出しは青寄り＆太め */
.hm__cell--rowhead{
	color: #616161;
	font-weight: 800;
}

/* 行の交互背景を少し強め（画像寄せ） */
.hm__row--a{ background: #E6E7EC; }
.hm__row--b{ background: #E6E7EC; }
.hm__row--c{ background: #E6E7EC; }

/* セルの高さ感（見やすく） */
.hm__cell{
	padding-top: 14px;
	padding-bottom: 14px;
}

/* ラジオのセンタリング（ズレ防止） */
.hm__cell{
	display: flex;
	align-items: center;
	justify-content: center;
}
.hm__cell--rowhead{
	justify-content: flex-start; /* 左見出しだけ左寄せ */
}

/* ラジオの見た目（グレーで統一） */
.hm input[type="radio"]{
	width: 18px;
	height: 18px;
	margin: 0;
	transform: none;
	vertical-align: middle;
	accent-color: #666;
}
/* =========================
送信ボタン
========================= */

.form__submit{
	margin: 7% auto 10%;
	text-align: center;
	font-size: 150%;
}

.form__submit input[type="submit"],
.form__submit button[type="submit"]{
	display: inline-block;
	min-width: 120px;
	padding: 12px 28px;

	background: #F08300;
	color: #fff;
	font-size: 110%;
	font-weight: 800;
	letter-spacing: .05em;

	border: none;
	border-radius: 4px;
	cursor: pointer;

	appearance: none;
	-webkit-appearance: none;
}

/* hover（PCのみ） */
@media (hover: hover){
	.form__submit input[type="submit"]:hover{
		background: #08348f;
	}
}

/* active（押した感） */
.form__submit input[type="submit"]:active{
	transform: translateY(1px);
}

/* 無効時（確認画面など） */
.form__submit input[type="submit"]:disabled{
	background: #9bb0d9;
	cursor: not-allowed;
}
.fsm{
	font-size: 90%;
	margin: 2% 0 0 1%;
}

@media (max-width: 750px){
	.mwf-label{
		margin-left:3%;
	}
	.fsm{
		margin: 2% 0 0 3%;
	}
	.hm__head,.hm__row{
		grid-template-columns: 20% repeat(5, 1fr);
		margin-bottom: 4%;
		padding: 0 0 2%;
		line-height:100%;
	}
	.hm__cell{
		padding: 10px 0 0 5px;
		font-size: 59%;
	}
	.mwf-card.is-checklist .mwform-checkbox-field-text {
		display: inline-block;
		line-height: 1.55;
		color: #1f2a44;
		font-size: 70%;
	}
	.form-inner{ padding: 0 12px 34px; }
	.form-title{ margin: 14px 0 14px; padding: 14px 14px 12px; }
	.form-title__main{ font-size: 132%; }
}


.comp {
	font-size: 164%;
	text-align: center;
	margin: 5% 0;
}
.backtop {
	text-align: center;
	text-decoration: underline;
}
span.error {
    font-size: 93%;
    color: #B70000;
    display: block;
    font-weight: bold;
}
#form .mw_wp_form .error {
    font-size: 93%;
    color: #B70000;
    display: block;
    font-weight: bold;
}
