@charset "UTF-8";

/* =================================================================================================
	共通
================================================================================================= */
.column .text {
	line-height: 180%;
	margin-bottom: 2rem;
}

.column .text:last-child {
	margin-bottom: 0rem;
}



/* =================================================================================================
	個別ページ
================================================================================================= */

/* ----------------------------------------------
	現実
	----------------------------------------------*/
.realities .column .text strong {
	color: #cc0000;
	font-weight: 600;
	text-decoration: underline;
}
.realities h4 {
	font-size: 1.125rem;
}


.realities .flex .photo {
	float: left;
	width: 35%;
	margin: 0 1rem 1rem 0;
}

.realities .flex .photo img {
	width: 100%;
}

.supplement {
	background: url("/realities/img/supplement_bg2.jpg") 0 bottom no-repeat;
	background-size: 100% auto;
	margin-bottom: 2rem;
}

.supplement .supplement_inner {
	background: url("/realities/img/supplement_bg1.jpg") 0 0 no-repeat;
	background-size: 100% auto;
	padding: 2rem 1rem 1rem;
}




/* ----------------------------------------------
	Q&A
	----------------------------------------------*/
.faq dl dt {
	border-bottom: 1px dotted #ccc;
	padding-bottom: 0.5rem;
	margin-bottom: 0.5rem;
	font-weight: 600;
	padding-left: 4rem;
	position: relative;
}

.faq dl dt span {
	color: #fff;
	background: linear-gradient(to bottom, #08cd95 0%, #0aaea5 100%);
	width: 3rem;
	text-align: center;
	padding: 0.2rem 0;
	line-height: 120%;
	display: inline-block;
	position: absolute;
	top: 0rem;
	left: 0rem;
}

.faq dl dd {
	line-height: 180%;
	margin-bottom: 2rem;
}



/* ----------------------------------------------
	料金
	----------------------------------------------*/
table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin-bottom: 0.5rem;
}

table th,
table td {
	font-weight: normal;
	text-align: left;
	border: 1px solid #ccc;
	background-color: #fff;
	padding: 0.5rem;
}







/* ----------------------------------------------
	お客様の声
	----------------------------------------------*/
.voice {
	background: url("/img/bg_pattern_brown.jpg");
	padding: 2rem 1.5rem 1.5rem;
	box-shadow: 2px 2px 4px 0 #666;
	line-height: 180%;
	position: relative;
}
.voice .icon {
	width: 62px;
	position: absolute;
	top: 0rem;
	left: 0rem;
	z-index: 2;
}

@media screen and (max-width: 592px) {
	.voice .icon {
		width: 40px;
	}
}

.voice .icon img {
	width: 100%;
}


/* ----------------------------------------------
	声（手紙）
	----------------------------------------------*/
.letter {
	background-color: #fff;
	padding: 1.5rem;
	box-shadow: 0px 0px 3px 0px #666;
	line-height: 180%;
	margin-bottom: 2rem;
}






/* ----------------------------------------------
	相談室 個別ページ
	----------------------------------------------*/
.outline {
	display: flex;
	justify-content: space-between;
	margin-bottom: 2rem;
}

.outline .text {
	width: 70%;
}

.outline .photo {
	width: 28%;
	position: relative;
}
@media screen and (max-width: 592px) {
	.outline .photo {
		width: 40%;
	}
}

.outline .photo a {
	position: relative;
}

.outline .photo a:hover {
	opacity: 0.8;
}

.outline .photo img {
	width: 100%;
}

.zoom {
	display: block;
	position: absolute;
	right: 2px;
	bottom: 2px;
	width: 20px;
}

.zoom img {
	width: 100%;
	border: none !important;
}

.photo_group {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-bottom: 1.5rem;
}

.photo_group.center {
	justify-content: center;
}

@media screen and (max-width: 592px) {
	.photo_group.center {
		justify-content: space-between;
	}
}

.photo_group li {
	width: 24%;
	margin-bottom: 1rem;
	position: relative;
}

@media screen and (max-width: 592px) {
	.photo_group li {
		width: 48%;
	}
}

.photo_group li img {
	width: 100%;
	box-sizing: border-box;
	border: 2px solid #ccc;
}

.photo_group li a:hover {
	opacity: 0.8;
}

.photo_group.center li {
	margin: 0 0.5rem;
}

@media screen and (max-width: 592px) {
	.photo_group.center li {
		margin: 0 0 1rem 0 !important;
	}
}

/*202511追加*/
.photo p,
.photo_group p {
	font-size: 1rem;
}
@media screen and (max-width: 592px) {
	.photo p,
	.photo_group p {
		font-size: 0.9rem;
	}
}

.place {
	margin-bottom: 2rem;
	line-height: 180%;
}

.map {
	width: 90%;
	margin: 0 auto;
}

@media screen and (max-width: 592px) {
	.map {
		width: 95%;
	}
}

.map_link {
	text-align: center;
}
