@charset "UTF-8";
/**
*
* /detail/[ID]/ページ
* ※一部ページのHTMLと順不同のため
* ブラウザから検索して特定
*
* 注意
* flex-basisはie11でバグがあるため不使用推奨
* /detail/[ID]/ページのモジュールテンプレートは「detail_」の接頭辞のhtml
* セレクタが多いため基本的にスタイルの拡張は不要
**/
/**
* .detail_title__type00
* /detail/[ID]/ページ 共通タイトル
* 共通スタイルのためflex内を想定したorder、widthは以下に記述しない
* flex内を想定したorder、width付与する場合は
* 親要素（もしくはグループ名）のクラス名を前方に付加、もしくは別クラス名をHTMLへ新たに追記し、CSS内該当パーツ記述箇所にて調整
**/

#wrapper {
	overflow: inherit;
}

/* title（ビフォーアフター、基本情報、写真など） */
.detail_title__type01 {
	font-size: 38px;
	font-weight: 700;
	margin-bottom: 30px;
	position: relative;
	padding-left: 15px;
}

.detail_title__type01::before {
	content: "";
	position: absolute;
	background-color: #006900;
	width: 5px;
	height: 35px;
	left: 0;
	top: 15px;
}

@media (max-width: 767px) {
	.detail_title__type01 {
		font-size: 1.25rem;
		line-height: 1.75rem;
		margin: 0 0 1.15rem;
	}

	.detail_title__type01::before {
		top: 0px;
	}
}

/* title（PR、スタッフなど） */
.detail_title__type02 {
	font-size: 1rem;
	font-weight: 700;
	font-feature-settings: 'palt';
	line-height: 2rem;
	color: #40ab2a;
	margin: 1.25rem 0 0;
	padding: 0 1rem;
}

@media (max-width: 767px) {
	.detail_title__type02 {
		font-size: 1rem;
		line-height: 2rem;
		margin: 0.75rem 0 0;
		padding: 0 1rem;
	}
}

/* title（ビフォーアフターなど） */
.detail_title__type03 {
	display: inline-block;
	border-bottom: 4px double #f99599;
	color: #f99599;
	font-size: 1.375rem;
	font-weight: 700;
	padding-bottom: 0.25rem;
	margin: 1rem 0 0.5rem;
}

@media (max-width: 959px) {
	.detail_title__type03 {
		font-size: 1.25rem;
		padding-bottom: 0.25rem;
		margin: 1rem 0 0.5rem;
	}
}

.detail_title__type04 {
	background-color: #40ab2a;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 700;
	padding: 0.5rem 1rem;
	margin: 0 0 0.5rem;
}

.detail_title__type05 {
	border-left: 4px solid #40ab2a;
	color: #40ab2a;
	font-size: 1.125rem;
	font-weight: 700;
	width: 100%;
	padding: 0.5rem 0.5rem;
	margin: 0.5rem auto;
}

/* title（ビフォーアフター、基本情報、写真など） */
.detail_title__type06 {
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.75rem;
	margin: 0 0 1.5rem;
}

@media (max-width: 767px) {
	.detail_title__type06 {
		font-size: 0.75rem;
		line-height: 1.25rem;
		margin: 0 0 1rem;
	}
}

.detail_title__type07 {
	border-left: 4px solid #f99599;
	color: #f99599;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5rem;
	padding: 0.5rem 1rem;
	margin: 0 0 0.5rem;
}

@media (max-width: 767px) {
	.detail_title__type07 {
		font-size: 0.75rem;
		line-height: 1rem;
		padding: 0.5rem 0.5rem 0.5rem 0.75rem;
		margin: 0 0 0.5rem;
	}
}

.detail_title__type08 {
	background-color: #f99599;
	color: #fff;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.5rem;
	padding: 0.5rem 1rem;
	margin: 0 0 0.5rem;
}

@media (max-width: 767px) {
	.detail_title__type08 {
		font-size: 0.75rem;
		line-height: 1rem;
		padding: 0.5rem;
		margin: 0 0 0.5rem;
	}
}

.detail_title__type09 {
	font-size: 24px;
	color: #fff;
	font-weight: bold;
	padding: 5px 15px;
	border-radius: 5px 5px 0 0;
	background-color: #006900;
}

@media (max-width: 767px) {
	.detail_title__type09 {
		font-size: 18px;
	}
}

.detail_title__type10 {
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 45px;
}

@media (max-width: 767px) {
	.detail_title__type10 {
		margin-bottom: 20px;
		font-size: 1.2rem;
	}
}

.detail_info_parts>.detail_title__type09 {
	width: auto;
}

.osusume__list {
	padding: 3rem;
	background: #fff
}

.osusume__item {
	margin-top: 1.5rem
}

.osusume__item:first-child {
	margin-top: 0
}

.osusume__item::before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	background: url("../images/icon-check.png") no-repeat;
	background-size: contain;
	margin-right: 8px;
}

@media (max-width: 767px) {
	.osusume__list {
		padding: 1rem;
	}

	.osusume__item {
		margin-top: .5rem;
	}
}

.joken__list {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.joken__list img {
	width: calc((100% - 130px) / 11);
	min-width: 100px;
	margin-right: 10px;
	margin-bottom: 20px;
	display: inline-block;
}

@media (max-width: 767px) {
	.joken__list .cell {
		font-size: 12px;
		padding: 8px 10px;
		margin-right: 5px;
		margin-bottom: 5px;
	}

	.joken__list img {
		width: calc((100% - 40px) / 4);
		min-width: initial;
		margin-left: 5px;
		margin-right: 5px;
		margin-bottom: 10px;
	}
}

.detail_taisei {
	padding: 2.5rem 2rem;
	background: #fff;
	font-size: 14px;
	text-align: left;
}

.detail_taisei__table {
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	margin-bottom: 1rem
}

.detail_taisei__table table {
	width: 33.333333%;
	border-collapse: collapse;
	border-spacing: 1;
	word-break: break-all;
}

.detail_taisei__table table:nth-child(2) td,
.detail_taisei__table table:nth-child(3) td {
	border-left: inherit;
}

.detail_taisei__table table th {
	text-align: center;
	width: 20%;
	min-width: 80px;
	height: 65px;
	font-weight: bold;
	font-size: 24px;
}

.detail_taisei__table table td {
	background: #f2f5f6;
	width: auto;
	padding: 0 20px;
	height: 65px;
}

.detail_taisei__mark {
	display: inline-block;
	margin-right: 1.5rem;
	font-size: 16px;
	margin-bottom: 15px;
}

.detail_taisei__mark:last-child {
	margin-right: 0
}

.detail_taisei__note {
	margin-top: 1rem;
	color: #6b6b6b;
	font-size: 12px
}

@media (max-width: 767px) {
	.detail_taisei {
		padding: 1rem;
	}

	.detail_taisei__table table {
		width: 100%
	}

	.detail_taisei__table table th,
	.detail_taisei__table table td {
		height: auto;
		padding: 10px;
	}

	.detail_taisei__table table tr:last-child th,
	.detail_taisei__table table tr:last-child td {
		border-bottom: none;
	}

	.detail_taisei__table table:last-child tr th,
	.detail_taisei__table table:last-child tr td {
		border-bottom: 1px solid #808080;
	}

	.detail_taisei__table table th {
		border-left: 1px solid #d6d6d6;
	}

	.detail_taisei__table table:nth-child(2) td,
	.detail_taisei__table table:nth-child(3) td {
		border-left: 1px solid #808080;
	}
}

.imgtxt__box {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: space-between;
}

.imgtxt__img {
	width: 48%
}

.imgtxt__img img {
	width: 100%
}

.imgtxt__txt {
	width: 48%
}

.features_box {
	background-color: #fff;
	padding: 80px;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 30px;
}

.features_box:last-child {
	margin-bottom: 0;
}

.features_box>* {
	width: 48%;
}

.features_box .txt_area .num {
	position: relative;
	color: #006900;
	font-weight: bold;
	padding-left: 70px;
	margin-bottom: 20px;
}

.features_box .txt_area .num::before {
	content: "";
	position: absolute;
	background-color: #006900;
	width: 60px;
	height: 1px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
}

@media (max-width: 767px) {
	.imgtxt__img {
		width: 100%
	}

	.imgtxt__txt {
		width: 100%;
		margin-top: 1rem
	}

	.features_box {
		padding: 20px;
	}

	.features_box>* {
		width: 100%;
	}

	.features_box .txt_area .num {
		margin-bottom: 5px;
	}

	.features_box .dtl_txt {
		margin-top: 15px;
		font-size: 14px;
	}
}

.plans__wrap {
	padding: 30px 60px;
	background: #fff;
	margin-bottom: 30px;
}

.plans__box {
	position: relative;
	margin-bottom: 1rem
}

/*plans__table*/
.plans__table01 {
	margin-bottom: 5px;
}

.plans__table01,
.plans__table02 {
	width: 100%;
}

.plans__table01>tbody>tr>td,
.plans__table02>tbody>tr>td {
	border: none;
	text-align: center;
	background-color: #fff;
	padding: 1rem;
	vertical-align: middle;
	font-size: 14px;
	font-weight: 100;
	color: #333;
}

.plans__table01 .plans__list-title {
	margin-bottom: 0;
	padding: 1rem;
	color: #333;
}

.plans__table01 .plans__list-title>span {
	font-size: 24px;
	color: #e66900;
	font-weight: bold;
	margin: 0 0.2rem 0 0.4rem;
}

.plans__table02>tbody>tr>td>span {
	text-align: center;
	color: #006900;
	font-size: 24px;
	font-weight: 700;
}

.plans__table01>tbody>tr>td:first-child {
	width: 30%;
	border-right: solid 5px #f2f5f6;
}

.plans__table01>tbody>tr>td:last-child {
	width: 70%;
	border-left: solid 5px #f2f5f6;
}

.plans__table02>tbody>tr>td:nth-child(1) {
	width: 15%;
}

.plans__table02>tbody>tr>td:nth-child(2) {
	width: 15%;
	border-right: solid 5px #f2f5f6;
}

.plans__table02>tbody>tr>td:nth-child(3) {
	width: 12%;
	border-left: solid 5px #f2f5f6;
}

.plans__table02>tbody>tr>td:nth-child(4) {
	width: 12%;
}

.plans__table02>tbody>tr>td:nth-child(5) {
	width: 12%;
}

.plans__table02>tbody>tr>td:nth-child(6) {
	width: 12%;
}

.plans__table02>tbody>tr>td:nth-child(7) {
	width: 22%;
}

.plans__box .h4_ttl {
	display: flex;
	justify-content: space-between;
}

.plans__box .h4_ttl .plans__title {
	color: #006900;
	font-size: 24px;
	font-weight: bold;
}

.plans__box .h4_ttl p span {
	color: #006900;
	font-size: 24px;
	font-weight: bold;
	display: inline-block;
	margin-left: 12px;
}

.plans__box .inner_wrap {
	display: flex;
	justify-content: space-between;
}

.plans__box .inner_wrap .price_box {
	width: calc((100% - 30px) /2);
	background-color: #CBECE8;
	padding: 20px;
	font-weight: 400;
	text-align: center;
}

.plans__box .inner_wrap .price_box .h_ttl {
	margin-bottom: 10px;
}

.plans__box .inner_wrap .price_box .h_ttl span {
	display: inline-block;
	font-size: 34px;
	color: #E66900;
	font-weight: bold;
	margin-left: 12px;
}

.plans__box .inner_wrap .price_box ul {
	display: flex;
	justify-content: space-between;
	gap: 5px;
}

.plans__box .inner_wrap .price_box ul li {
	/*width: calc((100% - 10px) /2);*/
	width: 100%;
	background-color: #fff;
	padding: 20px;
}

.plans__box .inner_wrap .price_box:last-child ul li {
	/*width: calc((100% - 30px) /4);*/
	width: 100%;
}

.plans__box .inner_wrap .price_box ul li p span {
	font-size: 24px;
	font-weight: bold;
	color: #006900;
}

@media (max-width: 768px) {
	.plans__box .h4_ttl .plans__title {
		font-size: 1.2rem;
	}

	.plans__table01 {
		margin-bottom: 0;
	}

	.plans__table01>tbody>tr>td:first-child,
	.plans__table01>tbody>tr>td:last-child {
		display: block;
		width: 100%;
		margin-bottom: 5px;
		border-left: none;
		border-right: none;
		padding: 0;
	}

	.plans__table01 .plans__list-title>span,
	.plans__table02>tbody>tr>td>span {
		font-size: 20px;
	}

	.plans__table01 .plans__list-title {
		padding: .6rem;
	}

	.plans__table02>tbody>tr {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.plans__table02>tbody>tr>td:nth-child(1),
	.plans__table02>tbody>tr>td:nth-child(2),
	.plans__table02>tbody>tr>td:nth-child(3),
	.plans__table02>tbody>tr>td:nth-child(4),
	.plans__table02>tbody>tr>td:nth-child(5),
	.plans__table02>tbody>tr>td:nth-child(6),
	.plans__table02>tbody>tr>td:nth-child(7) {
		width: 49.5%;
		margin-bottom: 5px;
		border-left: none;
		border-right: none;
	}

	.plans__box .inner_wrap {
		display: block;
	}

	.plans__box .inner_wrap .price_box {
		width: 100%;
		margin-bottom: 20px;
		padding: 10px 20px 10px;
	}

	.plans__box .inner_wrap .price_box:last-child {
		margin-bottom: 0;
	}

	.plans__box .inner_wrap .price_box ul {
		flex-wrap: wrap;
	}

	.plans__box .inner_wrap .price_box:last-child ul li {
		width: calc((100% - 10px) /2);
	}

	.plans__box .inner_wrap .price_box ul li {
		margin-bottom: 10px;
	}
}

/*/plans__table*/
/* .plans__box:first-child {
  margin-bottom: 1.5rem
} */
.plans__title {
	font-weight: 700;
	margin-bottom: 1rem;
}

.plans__title-link {
	background: #006900;
	border-radius: 30px;
	color: #fff;
	font-size: 13px;
	float: right;
	padding: .5rem 1rem;
	font-weight: 100;
	line-height: 1;
}

.plans__list {
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 14px;
}

.plans__list-inner {
	width: 70%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	text-align: center;
	color: #006900;
	font-size: 24px;
	font-weight: 700
}

@media (min-width: 768px) {
	.plans__list-inner:first-child {
		width: 29%;
		min-width: 390px;
		margin-right: 1%;
	}
}

.plans__list-title {
	width: 100%;
	background: #fff;
	padding: 1.5rem;
	margin-bottom: 1rem;
	color: #e66900;
}

.plans__list-title span {
	font-size: 14px;
	color: #000;
	margin-right: 1rem;
	font-weight: 100
}

.plans__list-item {
	/* width: 20%; */
	width: 19%;
	background: #fff;
	padding: 1.5rem;
}

.plans__list-item:last-child {
	width: 24%;
}

.plans__list-item span {
	font-size: 14px;
	color: #000;
	margin-bottom: .5rem;
	font-weight: 100
}

.plans__list-inner:first-child .plans__list-item {
	width: 49%
}

.plans__txtbox {
	width: 100%;
	background: #fff;
	margin-top: 20px;
	font-size: 16px;
	font-weight: 100;
}

@media (max-width: 767px) {
	.plans__list-item:last-child {
		width: 49%;
	}

	.plans__wrap {
		background: #f2f5f6
	}

	.plans__wrap,
	.plans__box {
		padding: 1rem 0;
		margin-bottom: 0.5rem;
	}

	.plans__list {
		flex-wrap: wrap;
	}

	.plans__list-inner {
		width: 100%;
		font-size: 20px;
	}

	.plans__list-title,
	.plans__list-item {
		padding: .5rem;
		margin-bottom: .4rem;
	}

	.plans__list-item {
		width: 49%;
	}

	.plans__box:first-child {
		margin-bottom: 0
	}

	.plans__box:last-child {
		margin-top: 1.5rem
	}

	.plans__txtbox {
		padding: 10px;
		margin-top: 0;
		font-size: 14px;
	}
}

.detail_info__table {
	background: #fff;
	padding: 30px 60px;
	margin-bottom: 80px;
	position: relative;
}

.detail_info__table:last-child {
	margin-bottom: 0;
}

.detail_info__title {
	font-weight: 700;
	margin-bottom: 1rem;
}

.detail_info__table table {
	width: 100%;
	text-align: left;
	font-weight: 100;
	border-collapse: separate;
	border-spacing: 2px;
}

.detail_info__table th,
.detail_info__table td {
	padding: 25px;
	border: none;
}

.detail_info__table th {
	background-color: #CBECE8;
	font-weight: bold;
	width: 25%;
	height: 55px;
}

.detail_info__table td {
	background-color: #F2F5F6;
}

.detail_info__table .detail_info__title {
	font-size: 24px;
	color: #006900;
	font-weight: bold;
}

@media (max-width: 767px) {
	.detail_info__table {
		padding: 20px;
		margin-bottom: 2.5rem;
	}

	.detail_info__table table th,
	.detail_info__table table td {
		display: block;
		width: 100%;
		height: auto;
		border: none;
		padding: 10px;
	}

	.detail_info__table table th {
		margin-bottom: 2px;
	}

	.detail_info__table tr {
		border: none;
	}

	.detail_info__table .detail_info__title {
		font-size: 1.2rem;
	}
}

/* google map */
.detail_info_parts .gglmap {
	position: relative;
	width: 100%;
	height: 500px;
}

.detail_info_parts .gglmap::before {
	content: '';
	display: block;
	padding: 2rem 0 0;
	position: relative;
	z-index: 1;
}

.detail_info_parts .gglmap img,
.detail_info_parts .gglmap iframe {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.gglmap_detail_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50px;
	background: #006900;
	color: #fff;
	font-size: 16px;
	font-weight: 500;
	padding: 10px;
	box-shadow: 5px 5px 5px 0px rgb(0 0 0 / 10%);
	width: 30%;
	margin: 1rem auto;
}

.map_wrap .map_frame {
	width: 100%;
	height: 600px;
}

.map_wrap .map_frame iframe {
	width: 100%;
	height: 100%;
}

.map_wrap .address_box {
	background-color: #fff;
	padding: 30px 60px 0;
}

.map_wrap .address_box .ggl_link a {
	color: #fff;
	background-color: #006900;
	padding: 15px;
	display: block;
	text-align: center;
	max-width: 430px;
	border-radius: 5px;
	margin-left: auto;
	margin-right: auto;
}

@media (max-width: 767px) {
	.detail_info_parts .gglmap {
		height: 210px;
		margin-bottom: 2.5rem;
	}

	.gglmap_detail_btn {
		width: 100%;
	}

	.map_wrap .map_frame {
		height: 50vh;
	}
}

/* picture */
.picture__box {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	margin-bottom: 80px;
}

.picture__box:last-child {
	margin-bottom: 0;
}

.picture__item {
	background: #fff;
	width: 32.6%;
	margin-bottom: 1%;
	margin-right: 1%;
	padding: 0;
}

.picture__item:nth-of-type(3n) {
	margin-right: 0;
}

.picture__img {
	position: relative;
}

.picture__img figure {
	width: 100%;
	aspect-ratio: 4 / 3;
}

.picture__img figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.picture__txt {
	padding: 30px 40px;
	font-weight: 400;
}

.picture__txt .ttl {
	font-size: 24px;
	color: #006900;
	font-weight: bold;
	margin-bottom: 10px;
}

@media (max-width: 767px) {
	.picture__item {
		width: 100%;
		margin-right: 0;
		margin-bottom: 15px;
	}

	.picture__img img {
		height: 200px;
	}

	.picture__txt .ttl {
		font-size: 1.2rem;
	}

	.picture__txt {
		padding: 20px;
	}

	.picture__box {
		margin-bottom: 2.5rem;
	}
}

/**
* .detail_box__type00
* /detail/[ID]/ページ 共通囲みスタイル
* 共通スタイルのためflex内を想定したorder、widthは以下に記述しない
* flex内を想定したorder、width付与する場合は
* 親要素（もしくはグループ名）のクラス名を前方に付加もしくは別クラス名をHTMLへ新たに追記し、CSS内該当パーツ記述箇所にて調整
**/
.detail_box__type01 {
	border-radius: 2rem;
	background: #f2f3f4;
	padding: 2rem;
	margin: 0 0 3rem;
}

.detail_box__type01_title {
	color: #888;
	font-size: 1rem;
	font-weight: 700;
	line-height: 2rem;
	margin: 0 0 0.25rem;
}

.detail_box__type01 p {
	font-size: 1rem;
	line-height: 2rem;
	margin: 0 0 1rem;
}

@media (max-width: 767px) {
	.detail_box__type01 {
		border-radius: 3px;
		padding: 0.25rem;
		margin: 0 0 3rem;
	}

	.detail_box__type01_title {
		font-size: 0.75rem;
		line-height: 1.125rem;
		padding: 0.5rem 0.25rem 0;
		margin: 0 0 0.25rem;
	}

	.detail_box__type01 p {
		font-size: 0.75rem;
		line-height: 1.125rem;
		padding: 0 0.25rem;
		margin: 0 0 1rem;
	}
}

/**
* .detail_top_box_btn
* /detail/[ID]/ページ トップボタン群
**/
#detail_top_box_btn {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	max-width: none;
	margin: 0 -0.25rem;
}

#detail_top_box_btn>* {
	width: 100%;
	margin: 0 0.25rem;
}

@media (max-width: 959px) {
	#detail_top_box_btn {
		margin: 0 -0.125rem;
	}

	#detail_top_box_btn>* {
		margin: 0 0.125rem;
	}
}

@media (max-width: 767px) {
	#detail_top_box_btn {
		display: none;
	}
}

/**
* .detail_top_box_btn
* /detail/[ID]/ページ 各ボタンのスタイルの調整（基本のスタイルはcommon.btn.cssへ）
**/
#detail_top_box_btn .btn_tel,
#detail_top_box_btn .btn_net,
#detail_top_box_btn .btn_kuchikomi,
#detail_top_box_btn .btn_like {}

#detail_top_box_btn .btn_net a,
#detail_top_box_btn .btn_tel a,
#detail_top_box_btn .btn_kuchikomi a,
#detail_top_box_btn .btn_like a {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 3em;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 4.25rem;
	text-align: center;
	height: 4rem;
	position: relative;
}

#detail_top_box_btn .btn_net a {
	border: 1px solid #006900;
	background: #006900;
	color: #fff;
}

#detail_top_box_btn .btn_tel a {
	border: 1px solid #006900;
	background: #fff;
	color: #006900;
}

#detail_top_box_btn .btn_kuchikomi a,
#detail_top_box_btn .btn_like a {
	border: none;
	padding-top: 1px;
	padding-bottom: 1px;
	background: linear-gradient(45deg, #a5d82a 0%, #006900 100%);
	color: #fff;
}

#detail_top_box_btn .btn_net a::before {
	transform: translate(0, 0) scale(1.375, 1.375);
	transform-origin: right center;
}

#detail_top_box_btn .btn_tel a::before {
	content: "\f4b9";
	display: inline-flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: "Ionicons";
	speak: none;
	font-size: 1.25rem;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	text-rendering: auto;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	border-radius: 50%;
	background: #006900;
	color: #fff;
	width: 2rem;
	height: 2rem;
	margin: 0 0.5rem 0 0;
}

#detail_top_box_btn .btn_tel>div {
	width: 100%;
}

@media (max-width: 920px) {

	#detail_top_box_btn .btn_kuchikomi,
	#detail_top_box_btn .btn_like {
		width: 4rem
	}

	#detail_top_box_btn .btn_kuchikomi a,
	#detail_top_box_btn .btn_like a {
		width: 4rem;
		height: 4rem;
		padding: 1px 0;
	}

	#detail_top_box_btn .btn_kuchikomi a::before,
	#detail_top_box_btn .btn_like a::before {
		transform-origin: center center;
		margin: 0;
	}

	#detail_top_box_btn .btn_kuchikomi a>span,
	#detail_top_box_btn .btn_like a>span {
		display: none;
	}
}

@media (max-width: 767px) {}

/**
* .detail_wrap
* /detail/[ID]/ページ ウィンドウ下部ボタン群
**/
@media (min-width: 768px) {
	.detai_bottom__box_btn {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: flex-start;
		-ms-flex-line-pack: start;
		align-content: flex-start;
		-webkit-align-items: flex-start;
		-ms-flex-align: start;
		align-items: flex-start;
		max-width: 720px;
		margin: 0 auto 2.5rem;
	}

	.detai_bottom__box_btn .btn_net,
	.detai_bottom__box_btn .btn_tel {
		width: 100%;
		margin: 0 1rem;
	}

	.detai_bottom__box_btn .btn_net a,
	.detai_bottom__box_btn .btn_tel a {
		border-radius: 3em;
		border: 1px solid #006900;
		background: #fff;
		color: #006900;
		font-size: 1.25rem;
		font-weight: bold;
		line-height: 4.25rem;
		text-align: center;
		height: 4rem;
	}

	.detai_bottom__box_btn .btn_net a {
		background: #006900;
		color: #fff;
	}
}

@media (max-width: 767px) {
	.detai_bottom__box_btn {
		position: fixed;
		right: 0;
		left: 0;
		bottom: 0;
		z-index: 999;
		background: rgba(255, 255, 255, 0.8);
		flex-wrap: wrap;
		padding: 0;
		margin: 0;
		text-align: center;
	}

	.detai_bottom__box_btn .btn_net,
	.detai_bottom__box_btn .btn_tel {
		width: 50%;
	}

	.detai_bottom__box_btn .btn_net a,
	.detai_bottom__box_btn .btn_tel a {
		padding: 0;
		margin: 0 auto;
		min-height: 50px;
		border-radius: 0;
		justify-content: center;
		box-shadow: none;
		border: 1px solid #006900;
		background: #fff;
		color: #006900;
		font-size: 0.875rem;
	}

	.detai_bottom__box_btn .btn_net a {
		background: #006900;
		color: #fff;
		border-right: none;
	}

	.detai_bottom__box_btn .btn_net a:focus,
	.detai_bottom__box_btn .btn_tel a:focus,
	.detai_bottom__box_btn .btn_net a:hover,
	.detai_bottom__box_btn .btn_tel a:hover {
		background: #006900;
		color: #fff;
	}

	.detai_bottom__box_btn .btn_net a::before,
	.detai_bottom__box_btn .btn_tel a::before {
		display: none;
	}
}

/**
* .detail_wrap
* /detail/[ID]/ページ ラッパー
**/
.detail_wrap {
	background-color: #fff;
	max-width: 1360px;
	/* default 1180px */
	margin: 0 auto 2.5rem;
	position: relative;
}

/* 両サイドに背景を入れる（HTMLをシンプルにする目的） */
.detail_wrap::before,
.detail_wrap::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 1;
	background-color: inherit;
	width: 50vw;
}

.detail_wrap::before {
	left: 0;
	transform: translate(-100%, 0);
}

.detail_wrap::after {
	right: 0;
	transform: translate(100%, 0);
}

@media (max-width: 767px) {
	.detail_wrap {
		margin: 0 auto;
		padding: 0.75rem 0;
	}
}

.detail_main_mainimage {
	width: 43%;
}

/**
* .detail_head_parts
* /detail/[ID]/ページ headerラッパー
**/
.detail_head_parts {
	width: 55%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

@media (max-width: 959px) {

	.detail_main_mainimage,
	.detail_head_parts {
		width: 100%;
		margin-top: 15px;
	}
}

/**
* .detail_head_parts .name_parts
* /detail/[ID]/ページ 店舗・医院等の名称
**/
.detail_head_parts .name_parts {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	align-items: center;
	margin: 0 0 0.5rem;
}

/* 店舗・医院等の名称 */
.detail_head_parts .type_txt {
	color: #000;
	font-size: 14px;
	display: block;
	width: 100%;
	margin-bottom: 3px;
}

.detail_head_parts .name_parts_head {
	color: #006900;
	font-size: 30px;
	font-weight: 500;
	font-feature-settings: 'palt';
	line-height: 30px;
	width: 100%;
}

.detail_head_parts .name_parts_head span {
	color: #000;
	font-size: 14px;
	display: block;
	width: 100%;
}

/* 店舗・医院等のアドレス情報 */
.detail_head_parts .name_parts dl {
	font-size: 0.75rem;
	font-feature-settings: 'palt';
	color: #706e6e;
	letter-spacing: .5px;
	margin: 2px 0 0.25rem;
}

.detail_head_parts .name_parts dl+dl {
	margin-left: 2rem;
}

.detail_head_parts .name_parts dl>dt {
	display: inline-block;
	vertical-align: middle;
}

.detail_head_parts .name_parts dl>dt::after {
	content: '：';
}

.detail_head_parts .name_parts dl>dd {
	display: inline-block;
	vertical-align: middle;
	padding-right: 0.5rem;
}

@media (max-width: 767px) {
	.detail_head_parts .name_parts {
		width: 100%;
		margin: 0 0 0.5rem;
	}

	/* 店舗・医院等の名称 */
	.detail_head_parts .name_parts_head {
		font-size: 1.375rem;
		line-height: 1.5rem;
		margin: 0 0 0.25rem;
	}

	/* 店舗・医院等のアドレス情報 */
	.detail_head_parts .name_parts dl {
		font-size: 0.625rem;
		letter-spacing: 0.2ex;
		color: #999;
		width: 100%;
		margin: 0;
	}

	.detail_head_parts .name_parts dl+dl {
		margin: 0;
	}

	.detail_head_parts .name_parts dl>dt {
		padding: 0;
	}

	.detail_head_parts .name_parts dl>dd {
		padding: 0;
	}
}

.price_detail_btn {
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 20px;
	background: #006900;
	color: #fff;
	font-size: 13px;
	font-weight: 500;
	padding: 2px 10px;
	box-shadow: 5px 5px 5px 0px rgba(0, 0, 0, 0.1);
	position: absolute;
	right: 10px;
	top: 10px;
}

.detail_main .icon_img {
	color: #006900;
}

.detail_main .icon_img img {
	vertical-align: middle;
}

.detail_contact {
	background-color: #CBECE8;
	padding: 50px 0;
	margin-right: calc(100% - 100vw);
	margin-left: calc(100% - 100vw);
}

.detail_contact .cta-area {
	max-width: 850px;
	margin: 0 auto;
}

.detail_contact .tel {
	background-color: rgb(242, 245, 246);
	text-align: center;
	/* display: flex;
  flex-direction: column;
  align-content: center;
  align-items: center;
  justify-content: center; */
	color: #000;
	font-weight: normal;
	font-size: 14px;
	padding: 10px;
}

.detail_contact .tel img {
	width: 18px;
	margin-right: 5px;
	vertical-align: text-bottom;
}

.detail_contact .tel span {
	font-size: 18px;
	font-weight: bold;
}

.detail_contact .tel em {
	font-size: 22px;
	font-weight: bold;
}

.detail_contact .tel .time {
	font-size: 14px;
}

span.tel-caution {
	display: block;
	text-align: center;
	margin: 5px auto 5px;
	color: #e66900;
	letter-spacing: 1px;
}

span.tel-caution-gray {
	display: block;
	text-align: center;
	margin: 5px auto 5px;
	color: #aaa;
	letter-spacing: 1px;
}

.detail_contact .reserve a {
	background: #006900;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 18px;
	padding: 10px;
	border-radius: 50px;
	position: relative;
	box-shadow: 10px 10px 10px 0px rgba(0, 0, 0, 0.1);
}

.detail_contact .reserve a span {
	position: absolute;
	right: 0px;
	top: -33px;
	font-size: 15px;
	background: #fff;
	color: #006900;
	border-radius: 100%;
	width: 48px;
	height: 48px;
	display: flex;
	align-items: center;
	justify-content: center;
	border: solid 3px #006900;
}

@media screen and (max-width: 767px) {
	.detail_contact {
		padding: 20px;
		flex-direction: column;
		justify-content: initial;
		height: auto;
		margin: 0 -1rem;
	}

	.detail_contact>* {
		width: 100%;
		/* min-height: 80px; */
		margin: 5px 0;
	}

	span.tel-caution {
		display: block;
		text-align: center;
		margin: 5px auto 5px;
		color: #e66900;
		font-size: 90% !important;
	}

	span.tel-caution-gray {
		display: block;
		text-align: center;
		margin: 5px auto 5px;
		color: #ccc;
		font-size: 90% !important;
	}

	.detail_contact .cta-area {
		max-width: 95%;
	}
}

.name_parts>.address_parts2 {
	margin: 30px 0;
	display: block;
}

.address_parts2 .ad_row {
	padding: 20px 0;
	display: flex;
	justify-content: space-between;
	width: 100%;
	border-top: 1px solid #D6D6D6;
	align-items: center;
}

.address_parts2 .ad_row:last-child {
	border-bottom: 1px solid #D6D6D6;
}

.address_parts2 .ad_row .ad_ttl {
	width: 120px;
	color: #006900;
	font-weight: bold;
	display: flex;
	align-items: center;
}

.address_parts2 .ad_row .ad_ttl img {
	padding-right: 8px;
}

.address_parts2 .ad_row .ad_txt {
	flex: 1;
	font-weight: bold;
	padding: 0 15px;
}

.address_parts2 .ad_row .ad_txt table.ad_txt_table {
	width: 100%;
	text-align: left;
}

.address_parts2 .ad_row .ad_txt table.ad_txt_table,
.address_parts2 .ad_row .ad_txt table.ad_txt_table th,
.address_parts2 .ad_row .ad_txt table.ad_txt_table td {
	border: none;
}

.address_parts2 .ad_row .ad_txt table.ad_txt_table th {
	width: 25%;
	padding: 0;
}

.address_parts2 .ad_row .ad_txt table.ad_txt_table td {
	width: 75%;
	color: #e66900;
	font-size: 24px;
	font-weight: bold;
}

.address_parts2 .ad_row .ad_txt table.ad_txt_table td span {
	color: #000;
	font-size: 16px;
}

.address_parts2 .ad_row .ad_btn {
	width: 120px;
	display: flex;
	align-items: center;
}

.address_parts2 .ad_row .ad_btn a {
	display: block;
	padding: 10px;
	border-radius: 50px;
	background-color: #006900;
	color: #fff;
	position: relative;
	text-align: center;
	width: 100%;
}

.address_parts2 .ad_row .ad_btn a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: translateY(-50%) rotate(135deg);
	transform: translateY(-50%) rotate(135deg);
}

.conditions_wrap {
	padding: 20px;
	background-color: #F2F5F6;
	border-radius: 10px;
	margin-bottom: 30px;
}

.conditions_wrap .ttl {
	width: 120px;
	color: #006900;
	font-weight: bold;
}

.conditions_wrap .address_text {
	flex: 1;
	display: flex;
	flex-wrap: wrap;
	gap: 3px;
}

.conditions_wrap .address_text .cell.on {
	width: 23%;
	max-width: 140px;
	border-radius: 50px;
	border: 1px solid #817A6E;
	color: #817A6E;
	text-align: center;
	padding: 3px;
	background-color: #fff;
	font-size: 14px;
	margin-right: 5px;
}

.detail_cta.cta-area {
	max-width: 870px;
	margin: 30px auto 60px;
}

/*施設詳細youtube挿入用*/
.detail_movie_wrap:has(.detail_movie) {
	display: none;
}

.detail_movie_wrap h2 {
	text-align: center;
	margin-bottom: 10px;
	font-size: 30px;
}

.detail_movie_wrap h2 span {
	display: block;
	width: fit-content;
	margin: 0 auto 10px;
	background: #E66900;
	color: #fff;
	font-size: 20px;
	letter-spacing: 1px;
	padding: 5px 16px;
	border-radius: 3px;
}

.detail_movie_wrap p.detail_movie_onsei {
	text-align: center;
	font-size: 11px;
	margin-bottom: 10px;
	color: #999;
}

.detail_movie_wrap:has(.detail_movie:not(:empty)) {
	display: block;
	width: 100%;
	background: #FDF5E7;
	padding: 60px 0;
}

.detail_movie:not(:empty) {
	width: 90%;
	max-width: 1100px;
	margin: 0 auto;
	aspect-ratio: 16 / 9;
}

.detail_movie:not(:empty) iframe {
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 767px) {
	.address_parts2 .ad_row {
		display: block;
		position: relative;
	}

	.address_parts2 .ad_row .ad_btn {
		width: 90px;
		display: block;
		margin-left: auto;
		position: absolute;
		top: 16px;
		right: 0;
	}

	.address_parts2 .ad_row .ad_btn a {
		padding: 8px;
		font-size: 12px;
	}

	.conditions_wrap .ttl {
		width: 100px;
		margin-bottom: 10px;
	}

	.conditions_wrap .address_text .cell.on {
		width: auto;
		min-width: 31%;
		font-size: 12px;
	}

	.address_parts2 .ad_row .ad_txt {
		padding: 5px 0;
	}

	.detail_cta.cta-area {
		margin: 30px auto 2.5rem;
	}

	/*施設詳細youtube挿入用*/
	.detail_movie_wrap h2 {
		font-size: 1.25rem;
		width: 95%;
		margin: 0 auto 10px;
	}

	.detail_movie_wrap h2 span {
		font-size: 16px;
	}

	.detail_movie_wrap:has(.detail_movie:not(:empty)) {
		padding: 35px 0;
	}

	.detail_movie:not(:empty) {
		width: 100%;
	}
}

/**
* .detail_head_parts .grade_parts
* /detail/[ID]/ページ 口コミ評価・件数
**/
.detail_head_parts .grade_parts {}

.detail_head_parts .grade_parts_score {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-end;
	-ms-flex-pack: end;
	justify-content: flex-end;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	color: #706e6e;
}

@media (max-width: 1200px) {
	.detail_contact .reserve a {
		font-size: 16px;
	}

	.detail_contact .tel span {
		font-size: 16px;
	}

	.detail_contact .tel em {
		font-size: 20px;
	}

	.detail_head_parts .grade_parts_score {}
}

@media (max-width: 767px) {
	.detail_head_parts .grade_parts_score {}
}

.detail_head_parts .grade_parts_score label {
	display: block;
	font-size: 0.625rem;
	font-weight: bold;
	text-align: center;
	width: 100%;
	position: relative;
	z-index: 1;
	opacity: 0.66;
}

.detail_head_parts .grade_parts_score p {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
}

.detail_head_parts .grade_parts_score b {
	display: inline-block;
	font-size: 0.625rem;
	font-weight: inherit;
	line-height: 0.875rem;
}

.detail_head_parts .grade_parts_score b>a {
	display: inline-block;
	color: #e2ac40;
	font-size: 0.875rem;
	font-weight: inherit;
	line-height: 0.875rem;
}

.detail_head_parts .grade_parts_score small {
	display: inline-block;
	font-size: 0.625rem;
	font-weight: inherit;
	line-height: 0.875rem;
}

.detail_head_parts .grade_parts_score b+small {
	margin-left: 0.25rem;
}

@media (max-width: 767px) {
	.detail_head_parts .grade_parts_score {
		width: calc(100% - 5.5rem);
	}

	.detail_head_parts .grade_parts_score label {
		text-align: left;
		width: auto;
		margin-right: 0.25rem;
	}

	.detail_head_parts .grade_parts_score p {
		-webkit-justify-content: flex-end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		width: auto;
	}

	.detail_head_parts .grade_parts_score b {
		font-size: 0.625rem;
		line-height: 1rem;
	}

	.detail_head_parts .grade_parts_score b>a {
		font-size: 1rem;
		font-weight: bold;
		line-height: 1rem;
	}

	.detail_head_parts .grade_parts_score small {
		font-size: 0.625rem;
		line-height: 1rem;
	}
}

/**
* .detail_head_parts .cta_parts
* /detail/[ID]/ページ 店舗・医院のカテゴリ
**/
.detail_head_parts .cta_parts {
	display: none;
}

@media (max-width: 767px) {
	.detail_head_parts .cta_parts {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-align-content: center;
		-ms-flex-line-pack: center;
		align-content: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		width: 100%;
		background: #f2f3f4;
		padding: 0.25rem 0.125rem;
		border-radius: 3px;
	}

	.detail_head_parts .cta_parts .btn_net,
	.detail_head_parts .cta_parts .btn_kuchikomi,
	.detail_head_parts .cta_parts .btn_like {
		width: 100%;
		padding: 0 0.125rem;
	}

	.detail_head_parts .cta_parts .btn_net a,
	.detail_head_parts .cta_parts .btn_kuchikomi a,
	.detail_head_parts .cta_parts .btn_like a {
		font-size: 0.625rem;
		border-radius: 2px;
		height: 2.5rem;
		padding: 0;
	}

	.detail_head_parts .cta_parts .btn_net a::before {
		transform: translate(0, 0) scale(1.333, 1.333);
		transform-origin: right center;
		margin-right: 0.25rem;
	}

	.detail_head_parts .cta_parts .btn_kuchikomi a::before,
	.detail_head_parts .cta_parts .btn_like a::before {
		transform: translate(0, 0) scale(1.25, 1.25);
		transform-origin: right center;
		margin-right: 0.25rem;
	}
}

/**
* .detail_head_parts .tag_left_parts
* /detail/[ID]/ページ 店舗・医院のカテゴリ
**/
.detail_head_parts .tag_left_parts {
	border-top: solid 1px #e1e1e1;
	padding: 0.75rem 0 0.25rem;
	width: 100%;
}

@media (max-width: 767px) {
	.detail_head_parts .tag_left_parts {
		border-top: none;
		padding: 0.75rem 0 0.25rem;
	}
}

.detail_head_parts .grade_parts_tags {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
}

/*
.grade_parts_tag1～23 の色の設定は content.search.result.cssへ
content.search.result.cssにて、.grade_parts_tags .grade_parts_tag1で検索
*/
/*
.detail_head_parts .grade_parts_tags .grade_parts_tag1,
.detail_head_parts .grade_parts_tags .grade_parts_tag2,
.detail_head_parts .grade_parts_tags .grade_parts_tag3,
.detail_head_parts .grade_parts_tags .grade_parts_tag4,
.detail_head_parts .grade_parts_tags .grade_parts_tag5,
.detail_head_parts .grade_parts_tags .grade_parts_tag6,
.detail_head_parts .grade_parts_tags .grade_parts_tag7,
.detail_head_parts .grade_parts_tags .grade_parts_tag8,
.detail_head_parts .grade_parts_tags .grade_parts_tag9,
.detail_head_parts .grade_parts_tags .grade_parts_tag10,
.detail_head_parts .grade_parts_tags .grade_parts_tag11,
.detail_head_parts .grade_parts_tags .grade_parts_tag12,
.detail_head_parts .grade_parts_tags .grade_parts_tag13,
.detail_head_parts .grade_parts_tags .grade_parts_tag14,
.detail_head_parts .grade_parts_tags .grade_parts_tag15,
.detail_head_parts .grade_parts_tags .grade_parts_tag16,
.detail_head_parts .grade_parts_tags .grade_parts_tag17,
.detail_head_parts .grade_parts_tags .grade_parts_tag18,
.detail_head_parts .grade_parts_tags .grade_parts_tag19,
.detail_head_parts .grade_parts_tags .grade_parts_tag20,
.detail_head_parts .grade_parts_tags .grade_parts_tag21,
.detail_head_parts .grade_parts_tags .grade_parts_tag22,
.detail_head_parts .grade_parts_tags .grade_parts_tag23 {}
*/
/**
* .detail_head_parts .tag_left_parts
* /detail/[ID]/ページ 店舗・医院のこだわりアイコン
**/
.detail_head_parts .tag_right_parts {
	margin-top: 0.5rem;
	width: 100%;
}

@media (max-width: 767px) {
	.detail_head_parts .tag_right_parts {
		width: 100%;
		margin: 0;
	}
}

/* こだわりアイコンは、詳細ページと検索結果で共有 */
.search_result_item .tag_parts>.list,
.detail_head_parts .address_parts>.list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.search_result_item .tag_parts .list>div,
.detail_head_parts .address_parts>.list>div,
.search_result_item .tag_parts .list>.cell,
.detail_head_parts .address_parts>.list>.cell {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 20px;
	background: #e9eeef;
	font-size: 12px;
	font-weight: 400;
	font-feature-settings: 'palt';
	text-align: center;
	padding: 3px 10px;
}

.search_result_item .tag_parts .list>.on,
.detail_head_parts .address_parts>.list>.on {
	background: #b2afaa;
	color: #fff;
}

@media (min-width: 768px) {

	/* 余白・カラム数（PC5列） */
	.search_result_item .tag_parts>.list,
	.detail_head_parts .address_parts>.list {
		margin: 0 -0.25rem 0.875rem;
	}

	.search_result_item .tag_parts .list>div,
	.detail_head_parts .address_parts>.list>div,
	.search_result_item .tag_parts .list>.cell,
	.detail_head_parts .address_parts>.list>.cell {
		margin: 0.5rem 0.25rem 0;
	}
}

@media (max-width: 767px) {

	/* 余白・カラム数（SP3列） */
	.search_result_item .tag_parts>.list,
	.detail_head_parts .address_parts>.list {
		margin: 0 -0.125rem 0.75rem;
	}

	.search_result_item .tag_parts .list>div,
	.detail_head_parts .address_parts>.list>div,
	.search_result_item .tag_parts .list>.cell,
	.detail_head_parts .address_parts>.list>.cell {
		font-size: 0.5rem;
		margin: 5px 2px 0;
	}
}

.detail_head_parts .link_box {}

.detail_head_parts .link_box a {
	color: #006900;
	text-decoration: underline;
}

.detail_head_parts .link_box a+a {
	margin-left: 1rem;
}

.detail_head_parts .box_btn {
	display: block;
	max-width: none;
	width: 100%;
	text-align: center;
}

.detail_head_parts .box_btn .btn {
	width: 100%;
	max-width: 670px;
}

/**
* .detail_head_parts .skill_parts
* /detail/[ID]/ページ スキル表
**/
.skill_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	margin: 1.5rem 0 0;
}

@media (max-width: 767px) {
	.skill_parts {
		margin: 1rem 0 0;
	}
}

.skill_parts>li {}

.skill_parts>li+li {
	margin-left: 0.25rem;
}

.skill_parts>li>a {
	display: block;
	border: solid 2px #e1ecc7;
	border-radius: 4px;
	color: #006900;
	font-size: 0.875rem;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	padding: 0.5rem 0.75rem;
	text-align: center;
}

/**
* .detail_main_parts
* /detail/[ID]/ページ 本文ラッパー
**/
.detail_main_parts {
	padding: 1.5rem 1.75rem 1.75rem;
	position: relative;
	z-index: 5;
	/* .detail_wrap::before、::afterよりも上にする */
}

@media (max-width: 767px) {
	.detail_main_parts {
		padding: 1rem 0 1rem;
	}
}

/**
* .detail_tab_parts
* /detail/[ID]/ページ タブ
**/
.detail_tab_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: 0 -0.25rem 3rem;
	position: relative;
}

/* ページ下部のボタン群 */
.detail_tab_parts~.detail_tab_parts {
	margin-top: 3rem;
}

.detail_tab_parts>a {
	display: block;
	width: 100%;
	margin: 0 0.25rem;
}

@media (min-width: 768px) {
	.detail_tab_parts::after {
		content: '';
		display: block;
		position: absolute;
		left: 0.25rem;
		right: 0.25rem;
		bottom: -0.3125rem;
		z-index: 1;
		border-bottom: solid 6px #006900;
	}
}

@media (max-width: 959px) {
	.detail_tab_parts {
		padding-left: 1px;
		padding-right: 1px;
	}

	.detail_tab_parts>a {
		display: block;
		width: 100%;
		margin: 0 -1px;
	}

	.detail_tab_parts::after {
		left: 0;
		right: 0;
	}
}

@media (max-width: 767px) {
	.detail_tab_parts {
		background: #f2f3f4;
		padding: 0.25rem;
		border-radius: 3px;
		margin: 0 0 1.5rem;
	}

	.detail_tab_parts>a {
		margin: 0;
		position: relative;
	}

	.detail_tab_parts>*+*::before {
		content: '';
		display: block;
		position: absolute;
		left: -1px;
		top: 50%;
		z-index: 5;
		border-left: solid 1px #e1e1e1;
		height: 1.5rem;
		transform: translate(0, -50%);
		pointer-events: none;
	}

	.detail_tab_parts>.on::before {
		display: none;
	}

	.detail_tab_parts>.on+*::before {
		display: none;
	}

	/* ページ下部のボタン群 */
	.detail_tab_parts~.detail_tab_parts {
		margin-top: 3rem;
	}
}

/* タブ１つ */
.detail_tab {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 6px 6px 0 0;
	border: 1px solid #006900;
	background: #fff;
	color: #006900;
	height: 3.5rem;
	font-size: 1rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	letter-spacing: 0.1ex;
	line-height: 1.5rem;
	position: relative;
}

/* タブ中バルーン */
.detail_tab_balloon {
	display: block;
	position: absolute;
	right: -0.25rem;
	top: 0;
	z-index: 10;
	transform: translate(0, -75%);
	font-size: 0.625rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	line-height: 1;
	border-radius: 4px;
	background: #FA5882;
	color: #fff;
	padding: 0.25rem;
}

.detail_tab_balloon::after {
	content: '';
	display: block;
	border-style: solid;
	border-width: 3px 3px;
	border-color: #FA5882 transparent transparent #FA5882;
	position: absolute;
	left: 66.66%;
	bottom: 1px;
	z-index: 10;
	transform: translate(0, 100%);
}

a:focus .detail_tab,
a:hover .detail_tab,
a.on .detail_tab {
	border: 1px solid #006900;
	background: #006900;
	color: #fff;
}

@media (max-width: 959px) {
	.detail_tab {
		height: 3.5rem;
		font-size: 0.8125rem;
		letter-spacing: 0.1ex;
		line-height: 1.5rem;
	}
}

@media (max-width: 767px) {
	.detail_tab {
		border-radius: 2px;
		border: solid 1px #fff;
		flex-wrap: wrap;
		font-size: 0.5625rem;
		line-height: 0.75rem;
		text-align: center;
		margin: 0;
		height: 3rem;
		position: relative;
		z-index: 5;
	}

	.detail_tab>* {
		display: block;
		width: 100%;
	}

	.detail_tab br {
		display: none;
	}

	.detail_tab_parts a.on .detail_tab::after {
		content: '';
		width: 0;
		height: 0;
		position: absolute;
		border: 5px solid transparent;
		border-top-color: #006900;
		top: 100%;
		left: 50%;
		z-index: 1;
		transform: translate(-50%, 0);
	}

	.detail_tab_balloon {
		right: 0.125rem;
		top: 0;
		transform: translate(0, -75%);
		font-size: 0.5rem;
		border-radius: 4px;
		width: auto;
		padding: 0.25rem;
	}

	/* ページ下部のボタン群 */
	.detail_tab_parts~.detail_tab_parts a.on .detail_tab::after {
		border: 5px solid transparent;
		border-bottom-color: #006900;
		bottom: 100%;
		top: auto;
	}
}

/* ウィンドウ下部のタブ（.detai_bottom__box_btnへの修正は、このファイルの160行目辺りへ） */
@media (min-width: 768px) {
	.detai_bottom__box_btn .detail_tab_parts {
		display: none;
	}
}

@media (max-width: 767px) {
	.detai_bottom__box_btn .detail_tab_parts {
		display: flex;
		justify-content: space-between;
		flex-wrap: nowrap;
		width: 100%;
		margin: 0;
	}

	.detai_bottom__box_btn .detail_tab_parts a {
		display: block;
		width: 100%;
	}

	.detai_bottom__box_btn .detail_tab {
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center;
		-webkit-align-content: center;
		-ms-flex-line-pack: center;
		align-content: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
		height: 2.75rem;
		font-size: 0.5rem;
	}
}

/**
* .detail_main
* /detail/[ID]/ページ メイン
**/
.detail_main {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-content: center;
	align-items: stretch;
	margin: 0rem 0 2rem;
}

.detail_info {
	padding-top: 4rem;
	padding-bottom: 4rem;
}

.detail_info_top {
	padding-top: 4rem;
}

.detail_info_btm {
	padding-bottom: 4rem;
}

.detail_info_btm .btn_arr a {
	position: relative;
	padding-right: 2rem;
}

.detail_info_btm .btn_arr a::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: translateY(-50%) rotate(45deg);
	transform: translateY(-50%) rotate(45deg);
}

@media screen and (max-width: 959px) {
	.detail_main {
		flex-direction: column;
	}
}

@media screen and (max-width: 767px) {
	.detail_info {
		padding-bottom: 2rem;
		padding-top: 2rem;
	}

	.detail_info_top {
		padding-top: 2rem;
	}

	.detail_info_btm {
		padding-bottom: 2rem;
	}
}

/**
* .detail_main
* /detail/[ID]/ページ スライダー
**/
/* スライドのラッパー（SPビュー(Tabletビュー)の順番の調整に使用） */
/* スライドの余白 */
.detail_slider {
	position: relative;
	z-index: 999;
}

.detail_slider_layouter {}

/* slick */
.detail_slider_body {}

.detail_slider_body>li {}

.detail_slider_item {
	position: relative;
	max-width: 1124px;
	margin: 0 auto;
	transition: all 0.4s ease;
}

.detail_slider.active .detail_slider_item {
	max-width: 100%;
}

@media (min-width: 1335px) {
	.detail_slider.active .detail_slider_item {
		max-width: 1334px;
	}
}

.detail_slider_item::before {
	content: '';
	display: block;
	aspect-ratio: 4 / 3;
	position: relative;
	z-index: 1;
}

.detail_slider_mask {}

.detail_slider_mask>img {
	position: absolute;
	left: 50%;
	top: 0;
	z-index: 1;
	transform: translate(-50%, 0);
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.detail_slider_nav {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-content: center;
	align-items: center;
	margin: 10px 0 0;
}

.detail_slider_nav>button {
	border: none;
	background: transparent;
	width: 10%;
	aspect-ratio: 4 / 3;
	cursor: pointer;
	margin: 0 5px;
}

.detail_slider_nav>button>img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 5px;
}

@media screen and (max-width: 959px) {
	.detail_slider_nav>button {}
}

@media (max-width: 767px) {
	.detail_slider_nav>button {
		border: none;
		background: transparent;
		aspect-ratio: 4 / 3;
		margin: 0 0.375rem;
		cursor: pointer;
	}

	.detail_slider_mask>img {
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}

/**
* .detail_main
* /detail/[ID]/ページ スライダー下PR文
**/
.detail_main_title {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 2rem;
	margin: 0 0 1rem;
}

@media (max-width: 959px) {
	.detail_main_title {
		font-size: 1.125rem;
		line-height: 1.75rem;
		order: 1;
		/* Tabletビュー（.detail_main_mainimageと関係） */
	}
}

.detail_main_prcomment {
	line-height: 1.8;
}

@media (max-width: 959px) {
	.detail_main_prcomment {
		padding: 0.5rem;
		border-radius: 4px;
		background: #f4f4f1;
		font-size: 0.875rem;
		line-height: 1.375rem;
		margin: 0.75rem 0 0;
		order: 3;
		/* Tabletビュー（.detail_main_mainimageと関係） */
	}
}

/**
* .detail_publicrelations
* /detail/[ID]/ページ PRレイアウト
**/
.detail_publicrelations {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

@media (min-width: 959px) {

	/* 3列表示 */
	.detail_publicrelations {
		margin: 0 -1.5rem;
	}

	*+.detail_publicrelations {
		margin-top: 4rem;
	}

	.detail_publicrelations>* {
		width: calc((100% - 9rem) / 3 - 1px);
		margin: 3rem 1.5rem 0;
	}

	.detail_publicrelations>*:nth-child(-n+3) {
		margin-top: 0;
	}

	/* 特殊な要素 */
	.detail_publicrelations>.detail_pr_parts__always_2col_style {
		width: calc((100% - 6rem) / 2);
	}

	.detail_publicrelations>.detail_pr_parts__movie_style {
		margin-top: 3rem;
		padding: 0 calc((100% - 800px) / 2);
		/* ( 領域幅 - 動画幅 ) / 2 */
		width: 100%;
	}
}

@media (max-width: 959px) {

	/* 2列表示 */
	.detail_publicrelations {
		margin: 0 -0.75rem;
	}

	*+.detail_publicrelations {
		margin-top: 4rem;
	}

	.detail_publicrelations>* {
		width: calc((100% - 3rem) / 2);
		margin: 3rem 0.75rem 0;
	}

	.detail_publicrelations>*:nth-child(-n+2) {
		margin-top: 0;
	}
}

@media (min-width: 768px) and (max-width: 959px) {

	/* 特殊な要素 */
	.detail_publicrelations>.detail_pr_parts__movie_style {
		margin-top: 3rem;
		padding: 0 calc((100% - 800px) / 2);
		/* ( 領域幅 - 動画幅 ) / 2 */
		width: 100%;
	}
}

@media (max-width: 767px) {

	/* 1列表示 */
	.detail_publicrelations {
		margin: 0;
	}

	*+.detail_publicrelations {
		margin-top: 3rem;
	}

	.detail_publicrelations>* {
		width: 100%;
	}

	.detail_publicrelations>*+* {
		margin-top: 2rem;
	}
}

/**
* .detail_publicrelations
* /detail/[ID]/ページ 各PR
**/
.detail_pr_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	/*
	margin-left,margin-rightは使用不可
	.detail_publicrelationsにて余白設定
	*/
}

@media (min-width: 768px) {

	/* 縦1列表示 */
	.detail_pr_parts>* {
		width: 100%;
	}
}

@media (max-width: 767px) {

	/* 縦1列表示 */
	.detail_pr_parts>* {
		width: 100%;
	}
}

/* title */
.detail_pr_title {
	order: 2;
}

@media (max-width: 767px) {
	.detail_pr_title {
		order: 2;
	}
}

/* image */
.detail_pr_parts .left_parts {
	order: 1;
}

.detail_pr_parts .left_parts figure {
	position: relative;
	border-radius: 8px;
	overflow: hidden;
}

.detail_pr_parts .left_parts figure::before {
	content: '';
	display: block;
	padding: 56.25% 0 0;
	position: relative;
	z-index: 1;
}

.detail_pr_parts .left_parts figure iframe,
.detail_pr_parts .left_parts figure img {
	position: absolute;
	left: 0;
	top: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
}

.detail_pr_parts .left_parts figure img {
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.detail_pr_parts .left_parts .caption {
	color: #888;
	font-size: 0.6875rem;
	font-weight: 500;
	font-feature-settings: 'palt';
	line-height: 1.25rem;
	margin: 0.75rem 0 0;
	padding: 0 1rem 1rem;
	position: relative;
}

.detail_pr_parts .left_parts .caption::after {
	content: '';
	display: block;
	width: 4em;
	border-bottom: solid 1px;
	position: absolute;
	left: 1rem;
	bottom: 0;
	z-index: 1;
	opacity: 0.33;
}

.detail_pr_parts .left_parts .caption:empty {
	display: none;
}

@media (max-width: 767px) {
	.detail_pr_parts .left_parts .caption {
		color: #888;
		font-size: 0.5625rem;
		line-height: 1.125rem;
		margin: 0.5rem 0 0;
		padding: 0 1rem 0.5rem;
	}

	.detail_pr_parts .left_parts .caption::after {
		width: 4em;
		left: 1rem;
	}
}

/* text */
.detail_pr_parts .right_parts {
	order: 3;
	font-size: 0.8125rem;
	font-weight: 400;
	font-feature-settings: 'palt';
	line-height: 2;
	margin: 0.25rem 0 0;
	padding: 0 1rem;
}

.detail_pr_parts dt,
.detail_pr_parts dd {
	text-align: left;
	margin: 0 0 1rem;
}

.detail_pr_parts dt a {
	font-size: 0.875rem;
	font-weight: 700;
	text-decoration: underline;
}

.detail_pr_parts dd {
	margin: 0 0 0.5rem 1.75rem;
}

.detail_pr_parts dd::before {
	content: "┗";
	padding-right: 0.3125rem;
}

/**
* .detail_menu_parts
* /detail/[ID]/job/ページ 業務対応メニュー
**/
.detail_menu_parts {}

/* 価格表 */
.service_table {
	display: block;
}

.service_table>thead {
	display: none;
}

.service_table>thead>tr {
	display: block;
}

.service_table>thead>tr>th {
	display: block;
}

.service_table>tbody {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	margin: 0 -1rem;
}

.service_table>tbody>tr {
	display: block;
	border: solid 2px #006900;
	border-radius: 8px;
	box-shadow: 0 4px 1rem rgba(0, 0, 0, 0.25);
	background: #006900;
	width: calc((100% - 6rem) / 3);
	margin: 0 1rem 2rem;
	position: relative;
	overflow: hidden;
}

@media (max-width: 959px) {
	.service_table>tbody>tr {
		width: calc((100% - 4rem) / 2);
	}
}

@media (max-width: 767px) {
	.service_table>tbody {
		margin: 0;
	}

	.service_table>tbody>tr {
		border: solid 2px #006900;
		border-radius: 2px;
		box-shadow: 0 4px 1rem rgba(0, 0, 0, 0.25);
		width: 100%;
		margin: 0;
	}

	.service_table>tbody>tr+tr {
		margin-top: 0.5rem;
	}
}

.service_table>tbody>tr>th,
.service_table>tbody>tr>td {
	display: block;
	background: #fff;
	padding: 1rem 1.75rem;
}

/* title1 */
.service_table>tbody>tr>td:nth-child(1) {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	background: #006900;
	color: #fff;
	font-size: 1.25rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	line-height: 1.75rem;
	padding-top: 1.5rem;
	min-height: 6.5rem;
}

/* title2 */
.service_table>tbody>tr>td:nth-child(2) {
	font-size: 1rem;
	font-feature-settings: 'palt';
	border-bottom: solid 1px #e1e1e1;
}

/* price */
.service_table>tbody>tr>td:nth-child(3) {
	font-size: 1.5rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	text-align: center;
	border-bottom: solid 1px #e1e1e1;
	padding-left: 0;
	padding-right: 0;
}

/* button */
.service_table>tbody>tr>td:nth-child(4) {
	padding: 0;
}

.service_table>tbody>tr>td:nth-child(4) a {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	color: #40ab2a;
	font-size: 1rem;
	font-feature-settings: 'palt';
	letter-spacing: 1ex;
	height: 3rem;
}

@media (max-width: 767px) {

	.service_table>tbody>tr>th,
	.service_table>tbody>tr>td {
		padding: 0.5rem;
	}

	/* title1 */
	.service_table>tbody>tr>td:nth-child(1) {
		font-size: 1rem;
		line-height: 1.5rem;
		padding-top: 1rem;
		padding-bottom: 1rem;
		min-height: 0;
	}

	/* title2 */
	.service_table>tbody>tr>td:nth-child(2) {
		font-size: 0.75rem;
	}

	/* price */
	.service_table>tbody>tr>td:nth-child(3) {
		font-size: 1rem;
	}

	/* button */
	.service_table>tbody>tr>td:nth-child(4) {
		font-size: 1rem;
	}

	.service_table>tbody>tr>td:nth-child(4) a {
		font-size: 1rem;
		letter-spacing: 1ex;
		height: 3rem;
	}
}

.detail_menu_list {}

.menu_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

*+.menu_parts {
	margin-top: 3rem;
}

@media (max-width: 767px) {
	*+.menu_parts {
		margin-top: 1.5rem;
	}
}

.menu_title {
	font-size: 1.75rem;
	font-weight: 700;
	font-feature-settings: 'palt';
	line-height: 2.375rem;
	color: #40ab2a;
	width: 100%;
	margin: 0 0 1rem;
	padding: 0 9rem 0 0;
	position: relative;
	order: 0;
}

@media (max-width: 767px) {
	.menu_title {
		font-size: 1rem;
		line-height: 1.75rem;
		margin: 0 0 0.5rem;
		padding: 0 2.5rem 0 0;
		order: 0;
	}
}

.menu_title .btn_like {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

.menu_title .btn_like a {
	border-radius: 8px;
	font-size: 0.75rem;
	font-weight: 700;
	padding: 0 1rem 0 1.25rem;
	height: 2.5rem;
}

.menu_title .btn_like a::before {
	transform: translate(0, 0) scale(1.75, 1.75);
	margin: 0 0.5rem 0 0;
}

@media (max-width: 767px) {
	.menu_title .btn_like a {
		border-radius: 50%;
		font-size: 0.625rem;
		width: 2rem;
		height: 2rem;
		padding: 0;
	}

	.menu_title .btn_like a>span {
		display: none;
	}

	.menu_title .btn_like a::before {
		transform: translate(0, 3.33%) scale(1.75, 1.75);
		transform-origin: center center;
		margin: 0;
	}
}

.menu_subtitle {
	font-size: 1.125rem;
	font-weight: 700;
	font-feature-settings: 'palt';
	line-height: 1.75rem;
	width: 100%;
	margin: 0.5rem 0 1rem;
	padding: 0;
	order: 1;
}

@media (max-width: 767px) {
	.menu_subtitle {
		font-size: 0.875rem;
		line-height: 1.25rem;
		margin: 0 0 1rem;
	}
}

.menu_parts .img_parts {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	background: #fff;
	width: 30rem;
	height: calc(30rem * 0.6666);
	/* 3:2 */
	order: 3;
}

@media (max-width: 959px) {
	.menu_parts .img_parts {
		width: 100%;
		height: 40vw;
	}
}

@media (max-width: 767px) {
	.menu_parts .img_parts {
		width: 100%;
		height: 40vw;
		margin-bottom: 0;
	}
}

.menu_parts .img_parts .main_img {
	border-radius: 8px;
	width: calc(66.66% - 0.25rem);
	height: 100%;
	overflow: hidden;
	position: relative;
	order: 0;
}

.menu_parts .img_parts .main_img:only-child {
	width: 100%;
}

.menu_parts .img_parts .main_img::before {
	content: '';
	display: block;
	border-radius: inherit;
	box-shadow: 0 0 3rem 0 rgba(0, 0, 0, 0.06) inset;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.menu_parts .img_parts .main_img img {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	font-family: 'object-fit: cover; object-position: center top;';
	position: relative;
	z-index: 1;
}

.menu_parts .img_parts .sub_img {
	border-radius: 8px;
	width: calc(33.33% - 0.25rem);
	height: calc(50% - 0.25rem);
	margin: 0 0 0 calc(0.25rem * 2);
	overflow: hidden;
	position: relative;
	order: 2;
}

.menu_parts .img_parts .sub_img+.sub_img {
	margin-top: calc(0.25rem * 2);
}

.menu_parts .img_parts .sub_img::before {
	content: '';
	display: block;
	border-radius: inherit;
	box-shadow: 0 0 3rem 0 rgba(0, 0, 0, 0.06) inset;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.menu_parts .img_parts .sub_img img {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	font-family: 'object-fit: cover; object-position: center top;';
	position: relative;
	z-index: 1;
}

.menu_parts .text_parts {
	width: calc(100% - 30rem);
	padding: 0 2rem 0 0;
	order: 2;
}

@media (max-width: 959px) {
	.menu_parts .text_parts {
		width: 100%;
		padding: 0;
		margin-top: 1rem;
		order: 5;
	}
}

@media (max-width: 767px) {
	.menu_parts .text_parts {
		width: 100%;
		padding: 0;
		margin-top: 1rem;
		order: 5;
	}
}

/* table basic */
.menu_detail_table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	margin: 0 auto 1rem;
}

.menu_detail_table th,
.menu_detail_table td {
	border: 1px solid #d1d1d1;
	height: 3.125rem;
	vertical-align: middle;
}

.menu_detail_table th {
	vertical-align: middle;
	background-color: #e8e8e8;
	font-size: 0.875rem;
	text-align: center;
	width: 10%;
	min-width: 25px;
	height: 1.75rem;
	padding: 0.5rem;
}

.menu_detail_table th:first-child {
	width: 50%;
}

.menu_detail_table th:only-child {
	width: auto;
}

.menu_detail_table td {
	vertical-align: middle;
	height: 3.75rem;
	padding: 1.25rem;
}

.menu_detail_table .td_commnet {
	font-size: 0.875rem;
	font-weight: 100;
	line-height: 1.625rem;
	text-align: left;
}

.menu_detail_table .td_price {
	width: 50%;
	text-align: center;
}

.menu_detail_table td.td_price {
	font-size: 1.375rem;
	font-weight: bold;
}

.menu_detail_table .td_place {
	width: 25%;
	text-align: center;
}

.menu_detail_table .td_wtime {
	width: 25%;
	text-align: center;
}

@media (max-width: 767px) {
	.menu_parts .sub_title {
		border: none;
		width: 100%;
		padding: 0;
	}

	.menu_parts .sub_title span {
		position: absolute;
		right: -1.5rem;
		top: 50%;
		font-weight: 700;
		font-size: 160%;
		line-height: 1;
		margin-top: -13.5px;
	}

	.menu_detail_table th,
	.menu_detail_table td {
		padding: 0.5rem;
	}

	.menu_detail_table th {
		font-size: 0.625rem;
		line-height: 1.25;
		height: auto;
		padding: 0.5rem;
	}

	.menu_detail_table td {
		font-size: 0.625rem;
		line-height: 1.25;
		height: auto;
	}

	.menu_detail_table td:first-child {
		font-weight: 700;
	}

	.menu_detail_table td.td_price {
		font-size: 1.125rem;
		font-weight: bold;
	}

	.menu_detail_table .td_commnet {
		font-size: 0.625rem;
		font-weight: 400;
		line-height: 1.66;
		text-align: left;
	}
}

/**
* .detail_staff_list
* /detail/[ID]/staff/ページ ラッパー
**/
.detail_staff_list {}

@media (max-width: 767px) {
	.detail_staff_list {}
}

/**
* .staff_parts
* /detail/[ID]/staff/ページ 各スタッフごとのスタイル
**/
.staff_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
}

*+.staff_parts {
	margin-top: 3rem;
}

@media (max-width: 767px) {
	*+.staff_parts {
		margin-top: 1.5rem;
	}
}

.staff_parts .img_parts {
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: flex-start;
	-ms-flex-line-pack: start;
	align-content: flex-start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	background: #fff;
	width: 30rem;
	height: calc(30rem * 0.6666);
	/* 3:2 */
}

@media (max-width: 959px) {
	.staff_parts .img_parts {
		width: 50%;
		height: 40vw;
	}
}

@media (max-width: 767px) {
	.staff_parts .img_parts {
		width: 100%;
		height: 40vw;
	}
}

.staff_parts .img_parts .main_img {
	border-radius: 8px;
	width: calc(66.66% - 0.25rem);
	height: 100%;
	overflow: hidden;
	position: relative;
	order: 0;
}

.staff_parts .img_parts .main_img:only-child {
	width: 100%;
}

.staff_parts .img_parts .main_img::before {
	content: '';
	display: block;
	border-radius: inherit;
	box-shadow: 0 0 3rem 0 rgba(0, 0, 0, 0.06) inset;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.staff_parts .img_parts .main_img img {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	font-family: 'object-fit: cover; object-position: center top;';
	position: relative;
	z-index: 1;
}

.staff_parts .img_parts .sub_img {
	border-radius: 8px;
	width: calc(33.33% - 0.25rem);
	height: calc(50% - 0.25rem);
	margin: 0 0 0 calc(0.25rem * 2);
	overflow: hidden;
	position: relative;
	order: 2;
}

.staff_parts .img_parts .sub_img+.sub_img {
	margin-top: calc(0.25rem * 2);
}

.staff_parts .img_parts .sub_img::before {
	content: '';
	display: block;
	border-radius: inherit;
	box-shadow: 0 0 3rem 0 rgba(0, 0, 0, 0.06) inset;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 5;
	width: 100%;
	height: 100%;
	pointer-events: none;
}

.staff_parts .img_parts .sub_img img {
	max-width: none;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
	font-family: 'object-fit: cover; object-position: center top;';
	position: relative;
	z-index: 1;
}

.staff_parts .text_parts {
	width: calc(100% - 30rem);
	padding: 0 0 0 2rem;
}

@media (max-width: 959px) {
	.staff_parts .text_parts {
		width: 50%;
	}
}

@media (max-width: 767px) {
	.staff_parts .text_parts {
		width: 100%;
		padding: 0 1rem;
	}
}

.detail_staff_title {
	padding: 3rem 0 0.75rem;
	margin: 0 0 2rem;
	position: relative;
}

.detail_staff_title::after {
	content: '';
	display: block;
	position: absolute;
	left: 0;
	bottom: 0;
	z-index: 1;
	width: 2rem;
	border-bottom: solid 2px #40ab2a;
}

.detail_staff_title>.staff_name {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2rem;
	padding-right: 2rem;
}

.detail_staff_title>.staff_class {
	color: #40ab2a;
	font-size: 1rem;
	font-weight: 700;
	line-height: 2rem;
}

@media (max-width: 767px) {
	.detail_staff_title {
		padding: 1rem 0 0.75rem;
		margin: 0 0 1rem;
	}

	.detail_staff_title::after {
		width: 2rem;
		border-bottom: solid 2px #40ab2a;
	}

	.detail_staff_title>.staff_name {
		font-size: 1.125rem;
		line-height: 2rem;
		padding-right: 1rem;
	}

	.detail_staff_title>.staff_class {
		font-size: 0.625rem;
		line-height: 2rem;
	}
}

.detail_staff_comment {
	border-radius: 4px;
	background: #f4f4f1;
	font-size: 0.875rem;
	line-height: 1.5625rem;
	width: 100%;
	padding: 1rem;
}

@media (max-width: 767px) {
	.detail_staff_comment {
		border-radius: 4px;
		font-size: 0.75rem;
		line-height: 1.25rem;
		padding: 0.5rem;
	}
}

/* 経歴 */
.detail_staff_history {
	font-size: 0.875rem;
	line-height: 1.375rem;
	padding: 1rem;
}

.detail_staff_history>.detail_title__type06 {
	margin-bottom: 0.5rem;
}

.detail_staff_history>p {}

@media (max-width: 767px) {
	.detail_staff_history {
		font-size: 0.75rem;
		line-height: 1.25rem;
		padding: 1rem;
	}

	.detail_staff_history>.detail_title__type06 {
		color: #888;
		margin-bottom: 0.5rem;
	}

	.detail_staff_history>p {}
}

/**
* .detail_gallery_parts
* /detail/[ID]/ページ ギャラリー
**/
.detail_gallery_parts {
	position: relative;
	z-index: 99;
}

@media (min-width: 959px) {
	*+.detail_gallery_parts {
		margin-top: 4rem;
	}
}

@media (max-width: 959px) {
	*+.detail_gallery_parts {
		margin-top: 4rem;
	}
}

@media (max-width: 767px) {
	*+.detail_gallery_parts {
		margin-top: 3rem;
	}
}

/* title */
.detail_gallery_title {
	order: 0;
}

.detail_gallery_parts>ul {}

@media (min-width: 960px) {

	/* heightはBricks.jsにて自動実装されます */
	.detail_gallery_parts li {
		width: calc((100% - 1.5rem) / 4)
	}
}

@media (max-width: 959px) {

	/* heightはBricks.jsにて自動実装されます */
	.detail_gallery_parts li {
		width: calc((100% - 1.5rem) / 4)
	}
}

@media (max-width: 767px) {

	/* heightはBricks.jsにて自動実装されます */
	.detail_gallery_parts li {
		width: calc((100% - 1rem) / 3)
	}
}

.detail_gallery_parts li {}

.detail_gallery_parts li a {
	display: block;
	position: relative;
	overflow: hidden;
	text-decoration: none;
	border-radius: 8px;
	width: 100%;
	height: 100%;
}

.detail_gallery_parts li a:focus,
.detail_gallery_parts li a:hover {
	opacity: 1;
}

.detail_gallery_parts li img {
	position: absolute;
	left: 50%;
	top: 50%;
	z-index: 1;
	transform: translate(-50%, -50%);
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	transition: all 1s ease;
}

.detail_gallery_parts li a:focus img,
.detail_gallery_parts li a:hover img {
	transform: translate(-50%, -50%) scale(1.25);
}

/**
* .detail_info_parts
* /detail/[ID]/ページ 情報欄（ビフォーアフター 対応時間）
**/
.detail_info_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
}

.detail_info_parts>* {
	width: 100%;
}

@media (min-width: 959px) {
	*+.detail_info_parts {
		margin-top: 4rem;
	}
}

@media (max-width: 959px) {
	*+.detail_info_parts {
		margin-top: 4rem;
	}
}

@media (max-width: 767px) {
	*+.detail_info_parts {
		margin-top: 2.5rem;
	}
}

/* title */
.detail_info_title {
	order: 0;
}

.detail_info_parts>h5 {
	font-size: 1.375rem;
	font-weight: 700;
	line-height: 2rem;
	color: #006900;
	margin: 0 0 1.5rem;
	padding: 0.375rem 0;
	border-bottom: solid 1px #efefef;
}

@media (max-width: 767px) {
	.detail_info_parts>h5 {
		font-size: 1.25rem;
		line-height: 1.75rem;
		margin: 0 0 1.25rem;
		padding: 0.25rem 0;
	}
}

/* order */
.detail_info_parts>.center_parts {
	order: 2;
}

.detail_info_parts>.left_parts {
	order: 1;
}

.detail_info_parts>.right_parts {
	order: 3;
}

.detail_info_parts>.bottom_parts {
	order: 4;
}

/* center_parts（ビフォーアフターのみ使用） */
.detail_info_parts>.center_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	width: 2.5rem;
}

.detail_info_parts>.center_parts .arrow {
	width: 2.5rem;
	height: 2.5rem;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

@media (max-width: 767px) {
	.detail_info_parts>.center_parts {
		width: 1.5rem;
	}

	.detail_info_parts>.center_parts .arrow {
		width: 1.5rem;
		height: 1.5rem;
	}
}

/* left_parts, right_parts (default) */
.detail_info_parts>.left_parts,
.detail_info_parts>.right_parts {
	position: relative;
	width: calc((100% - 2.5rem) / 2);
}

.detail_info_parts>.left_parts {
	padding-right: calc(2.5rem / 2);
}

.detail_info_parts>.right_parts {
	padding-left: calc(2.5rem / 2);
}

@media (max-width: 959px) {

	.detail_info_parts>.left_parts,
	.detail_info_parts>.right_parts {
		width: 100%;
	}

	.detail_info_parts>.left_parts {
		padding-right: 0;
	}

	.detail_info_parts>.right_parts {
		padding-left: 0;
		margin-top: -1px;
	}
}

/* left_parts, right_parts (Before After) */
.detail_info_parts>.center_parts~.left_parts {
	padding-right: 0;
}

.detail_info_parts>.center_parts~.right_parts {
	padding-left: 0;
}

.detail_info_parts>.center_parts~.left_parts img {
	width: 100%;
	height: auto;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.detail_info_parts>.center_parts~.right_parts img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.detail_info_parts>.center_parts~.left_parts>span,
.detail_info_parts>.center_parts~.right_parts>span {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	background-color: #006900;
	color: #fff;
	font-size: 1.25rem;
	font-weight: 500;
	text-align: center;
	width: 7.5rem;
	padding: 0.3125rem 0;
}

.detail_info_parts>.center_parts~.right_parts>span {
	background-color: #f99599;
	color: #fff;
}

@media (max-width: 959px) {

	.detail_info_parts>.center_parts~.left_parts,
	.detail_info_parts>.center_parts~.right_parts {
		width: calc((100% - 1.5rem) / 2);
		margin-top: 0;
	}

	.detail_info_parts>.center_parts~.left_parts>span,
	.detail_info_parts>.center_parts~.right_parts>span {
		position: absolute;
		top: auto;
		bottom: 0;
		left: 50%;
		z-index: 1;
		transform: translate(-50%, 50%);
		font-size: 0.625rem;
		width: 6rem;
		padding: 0.125rem 0;
	}
}

.detail_info_parts>.bottom_parts {}

.detail_info_parts>.bottom_parts p {
	margin: 0 0 0.5rem;
	line-height: 1.8;
}

@media (max-width: 959px) {
	.detail_info_parts>.bottom_parts p {
		margin: 0 0 0.5rem;
		line-height: 1.8;
	}
}

/* 基本情報 テーブルスタイル */
/*
.detail_info_parts ul {
	font-size: 0.875rem;
}

.detail_info_parts ul>li {
	border-top: 1px solid #bbb;
	padding: 1.125rem 0.5rem;
	display: flex;
	align-items: center;
}

.detail_info_parts ul>li:nth-child(even) {
	background: #f2f3f4;
}


.detail_info_parts ul>li:last-child {
	border-bottom: 1px solid #bbb;
}
*/
.detail_info_parts ul>li .info_title {
	width: 21%;
	font-size: 0.875rem;
	font-weight: 700;
	color: #706e6e;
}

.detail_info_parts ul>li .info_text {
	width: 79%;
	word-break: break-all;
	word-wrap: break-word;
}

@media (max-width: 959px) {
	.detail_info_parts ul>li .info_title {
		width: 8rem;
		font-size: 0.75rem;
	}

	.detail_info_parts ul>li .info_text {
		width: calc(100% - 8rem);
		font-size: 0.75rem;
	}
}

/* link */
.detail_info_parts .link_box {}

.detail_info_parts .link_box a {
	color: #006900;
	text-decoration: underline;
}

.detail_info_parts .link_box a+a {
	margin-left: 1rem;
}

/**
* .opening_hours
* /detail/[ID]/ページ 営業（診療）時間
**/
.opening_hours {
	width: 100%;
	margin: 0 auto;
}

.opening_hours p {
	font-size: 0.875rem;
	line-height: 1.8;
}

.opening_hours table {
	border-collapse: collapse;
	text-align: center;
	width: 100%;
	margin: 0 auto 1.25rem;
}

.opening_hours table th,
.opening_hours table td {
	border: 1px solid #bbb;
	height: 3.125rem;
	vertical-align: middle;
}

.opening_hours table th {
	font-weight: 700;
}

.opening_hours table th:nth-child(2n+3),
.opening_hours table td:nth-child(2n+3) {
	background: #f2f6f9;
}

.opening_hours table td {
	width: 11%;
	padding: 0.5rem 0;
	line-height: 1.3;
}

.opening_hours table tr th:first-child,
.opening_hours table tr td:first-child {
	width: 22%;
	margin: 0 auto;
}

.opening_hours table td span {
	padding: 0;
	background-color: unset;
	color: #595757;
	font-size: 1rem;
	position: unset;
}

.opening_hours table td img {
	width: auto;
	height: auto;
	margin: 0 auto;
}

.opening_hours_description {
	display: flex;
	justify-content: center;
}

.opening_hours_description div {
	width: 20%;
	padding: 0 1.25rem 1.25rem 1.25rem;
	display: flex;
	align-items: center;
	justify-content: center;
}

.opening_hours_description img {
	width: auto;
	height: auto;
	display: inline;
}

.opening_hours_description p {
	margin: 0 0 0 0.5rem;
}

@media (max-width: 767px) {
	.opening_hours {
		table-layout: fixed;
	}

	.opening_hours table td {
		width: auto;
		padding: 0.25rem 0;
	}

	.opening_hours table th:first-child,
	.opening_hours table td:first-child {
		font-size: 0.6875rem;
		line-height: 1rem;
		width: 5rem;
		padding: 0.25rem;
	}

	.opening_hours table td img {
		max-width: 12px;
	}

	.opening_hours_description {
		flex-wrap: wrap;
		margin-bottom: 1.25rem;
	}

	.opening_hours_description div {}

	.opening_hours_description div {
		width: 33.33%;
	}

	.opening_hours_description div img {
		max-width: 15px;
	}
}

/**
* .paging
* /detail/[ID]/ページ ページャー
**/
.paging {
	margin: 1.25rem 0;
	padding: 0;
	text-align: center;
	overflow: hidden;
}

@media (max-width: 767px) {
	.paging {
		padding: 0 0 1.75rem;
	}
}

.paging li {
	margin: 2px 2px;
	display: inline-block;
}

.paging li a {
	display: block;
	border: 1px solid #e9eeef;
	background: #e9eeef;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 2.25rem;
	min-width: 2.25rem;
	padding: 0 0.75rem;
}

.paging li a:focus,
.paging li a:hover {
	text-decoration: none;
	background: #000;
	color: #fff;
}

.paging li .current {
	display: block;
	border: 1px solid #006900;
	background: #006900;
	color: #fff;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 2.25rem;
	min-width: 2.25rem;
	padding: 0 0.75rem;
}

.paging li .ten {
	display: block;
	border: 1px solid #000;
	background: #fff;
	color: #000;
	border-radius: 3px;
	font-size: 0.875rem;
	font-weight: 700;
	line-height: 2.25rem;
	min-width: 2.25rem;
	padding: 0 0.75rem;
}

.paging li a.prev {
	padding: 0;
	width: 2.1875rem;
	line-height: 2.25rem;
	text-align: left;
	text-indent: -624.9375rem;
	background: #fff url("../images/prev.png")no-repeat center center;
	background-size: 25% 25%;
	border-radius: 6px;
}

.paging li a.next {
	padding: 0;
	width: 2.1875rem;
	line-height: 2.25rem;
	text-align: left;
	text-indent: -624.9375rem;
	background: #fff url("../images/next.png")no-repeat center center;
	background-size: 25% 25%;
	border-radius: 6px;
}

/**
* .detail_kuchikomi_parts
* /detail/[ID]/kuchikomi/ページ 口コミのラッパー
**/
.detail_kuchikomi_parts {}

/* 投稿フォーム */
.detail_kuchikomi_parts+.parts_wrap {
	margin-top: 3rem;
}

/**
* .bnr_kuchikomi
* /detail/[ID]/kuchikomi/ページ バナー
**/
.bnr_kuchikomi {
	width: 100%;
}

@media (min-width: 576px) {
	.bnr_kuchikomi li:first-child {
		max-width: 1120px;
		margin: 0 auto;
		border-radius: 8px;
		overflow: hidden;
	}

	.bnr_kuchikomi li:last-child {
		display: none;
	}
}

@media (max-width: 575px) {
	.bnr_kuchikomi {
		padding: 0 0 1rem;
	}

	.bnr_kuchikomi li:first-child {
		display: none;
	}

	.bnr_kuchikomi li:last-child {
		max-width: 300px;
		margin: 0 auto;
		border-radius: 8px;
		overflow: hidden;
	}
}

/**
* .detail_kuchikomi_list
* /detail/[ID]/kuchikomi/ページ 口コミ一覧
**/
.detail_kuchikomi_list {}

@media (max-width: 767px) {
	.detail_kuchikomi_list {}
}

/**
* .kuchikomi_point
* /detail/[ID]/kuchikomi/ページ 口コミ点数・ソート
**/
.kuchikomi_point {
	font-size: 1.625rem;
	font-weight: 700;
	line-height: 2.0625rem;
	text-align: center;
	margin: 1.75rem 0 2.5rem;
}

@media (max-width: 767px) {
	.kuchikomi_point {
		margin: 0 0 0.25rem;
	}
}

.kuchikomi_number {
	color: #f99599;
	font-weight: 700;
}

.kuchikomi_point .kuchikomi_number {
	font-size: 2.375rem;
	padding: 0 3px;
}

.kuchikomi_head_parts {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin: 0 0 1.5rem;
}

.kuchikomi_head_parts .kuchikomi_count {
	font-size: 0.6875rem;
}

.kuchikomi_head_parts .kuchikomi_count .kuchikomi_number {
	color: #f99599;
	font-size: 1.125rem;
	font-weight: 700;
	padding-right: 3px;
}

@media (max-width: 959px) {
	.kuchikomi_head_parts {
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.kuchikomi_count {
		width: auto;
		margin: 0 auto;
	}
}

@media (max-width: 767px) {
	.kuchikomi_head_parts {
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 0 0 1rem;
	}

	.kuchikomi_count {
		width: auto;
		margin: 0 auto;
	}
}

/* sort */
.kuchikomi_head_parts .search_change_view {
	width: 55%;
	max-width: none;
}

.kuchikomi_head_parts .search_change_view p,
.kuchikomi_head_parts .search_change_view .option {
	margin: 0;
}

@media (max-width: 959px) {
	.kuchikomi_head_parts .search_change_view {
		width: 90%;
		margin: 0 0 0.5rem;
	}

	.kuchikomi_head_parts .search_change_view {
		width: 100%;
		margin: 0 0 0.5rem;
	}

	.kuchikomi_head_parts .search_change_view div {
		width: 48.5%;
	}

	.kuchikomi_head_parts .search_change_view div:first-child {
		width: 100%;
	}

	.kuchikomi_head_parts .search_change_view .option {
		font-size: 0.75rem;
	}
}

/**
* .kuchikomi_parts
* /detail/[ID]/kuchikomi/ページ 各口コミ
**/
.kuchikomi_parts {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	border-radius: 6px;
	border: solid 1px #e1e1e1;
	box-shadow: 0 4px 1rem 0 rgba(0, 0, 0, 0.06);
	padding: 2.5rem;
	margin: 0 0 1.75rem;
}

.kuchikomi_parts:last-child {
	margin-bottom: 0;
}

@media (max-width: 767px) {
	.kuchikomi_parts {
		padding: 1rem;
	}
}

.kuchikomi_user {
	line-height: 1;
	width: 50%;
	padding: 0 0 0 3.5rem;
	margin: 0;
	position: relative;
	z-index: 1;
}

.kuchikomi_user::before {
	content: '';
	display: block;
	background-image: url("../images/icon_review_man.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: auto 100%;
	width: 2.5rem;
	height: 2.5rem;
	position: absolute;
	left: 0;
	top: 50%;
	z-index: 1;
	transform: translate(0, -50%);
}

.kuchikomi_user .user_name {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1rem;
	margin-right: 1rem;
}

.kuchikomi_user .user_age {
	color: rgba(0, 0, 0, 0.56);
	font-size: 0.75rem;
	font-weight: 500;
	font-feature-settings: 'palt';
	line-height: 1rem;
	margin-right: 0.5rem;
}

.kuchikomi_user .user_age::after {
	content: '歳';
}

.kuchikomi_user .user_sex {
	color: rgba(0, 0, 0, 0.56);
	font-size: 0.75rem;
	font-weight: 500;
	font-feature-settings: 'palt';
	line-height: 1rem;
	margin-right: 0.5rem;
}

.kuchikomi_user time {
	display: block;
	color: rgba(0, 0, 0, 0.56);
	font-size: 0.75rem;
	font-weight: 500;
	font-feature-settings: 'palt';
	line-height: 1;
	margin-top: 0.25rem;
}

@media (max-width: 767px) {
	.kuchikomi_user {
		width: calc(100% - 8rem);
		padding: 0 0 0 3rem;
	}

	.kuchikomi_user::before {
		width: 2.5rem;
		height: 2.5rem;
	}

	.kuchikomi_user .user_name {
		display: block;
		font-size: 0.75rem;
		margin-right: 0;
	}

	.kuchikomi_user .user_age {
		font-size: 0.5rem;
		line-height: 1;
		margin-right: 0.5rem;
	}

	.kuchikomi_user .user_age::after {
		content: '歳';
	}

	.kuchikomi_user .user_sex {
		font-size: 0.5rem;
		line-height: 1;
		margin-right: 0.5rem;
	}

	.kuchikomi_user time {
		font-size: 0.5rem;
		line-height: 1;
		margin-top: 0.25rem;
	}
}

.kuchikomi_osusume {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	width: 50%;
}

.kuchikomi_osusume>p {
	text-align: center;
	width: 8rem;
}

.kuchikomi_osusume>p>span {
	color: rgba(0, 0, 0, 0.56);
	font-size: 0.75rem;
	font-weight: 500;
	line-height: 1.5rem;
	margin-right: 0.5rem;
}

.kuchikomi_osusume>p>.kuchikomi_number {
	color: #f99599;
	font-size: 1.5rem;
	line-height: 1.5rem;
	margin-left: 0;
}

.kuchikomi_osusume>ul {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 6px;
	overflow: hidden;
	width: calc(100% - 8rem);
}

@media (max-width: 767px) {
	.kuchikomi_osusume {
		flex-wrap: wrap;
		width: 8rem;
		padding: 0;
		border: none;
	}

	.kuchikomi_osusume>p {
		width: 100%;
	}

	.kuchikomi_osusume>p>span {
		font-size: 0.5rem;
		line-height: 1;
	}

	.kuchikomi_osusume>p>.kuchikomi_number {
		font-size: 1.25rem;
		line-height: 1;
	}

	.kuchikomi_osusume>ul {
		width: 100%;
		height: 1.25rem;
		margin: 0;
	}
}

.kuchikomi_osusume>ul>li {
	width: 100%;
	height: 100%;
}

.kuchikomi_osusume>ul>li>div {
	background-color: #f1f1f1;
	height: 100%;
}

.kuchikomi_osusume>ul>li+li>div {
	border-left: 1px dotted rgba(0, 0, 0, 0.09);
}

.kuchikomi_osusume>ul>.on>div {
	background-color: rgb(250, 160, 166);
	background-image: -moz-linear-gradient(top, rgba(250, 160, 166, 1) 0%, rgba(249, 217, 219, 1) 100%);
	background-image: -webkit-linear-gradient(top, rgba(250, 160, 166, 1) 0%, rgba(249, 217, 219, 1) 100%);
	background-image: linear-gradient(to bottom, rgba(250, 160, 166, 1) 0%, rgba(249, 217, 219, 1) 100%);
}

.kuchikomi_osusume>ul>li+.on>div {
	border-left: 1px dotted rgba(255, 255, 255, 0.75);
}

.kuchikomi_comment {
	width: calc(50% + 8rem);
	margin: 1rem 0 0;
}

@media (max-width: 767px) {
	.kuchikomi_comment {
		width: 100%;
		margin: 0.5rem 0;
	}
}

/* kuchikomi_comment dl(set view more) */
.kuchikomi_comment dl {}

.kuchikomi_comment dl+dl {
	margin-top: 1.5rem;
}

.kuchikomi_comment dl>dt {
	margin: 0;
}

.kuchikomi_comment dl>dd {
	padding: 0.5rem 2rem 0 1.125rem;
}

.kuchikomi_comment dl>dd p {
	font-size: 0.75rem;
	line-height: 1.625rem;
}

/* view more style */
.kuchikomi_comment .view_more_btn {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	padding-right: 0.75rem;
}

.kuchikomi_comment .view_more_btn::after {
	content: "\f218";
	/*display: flex;*/
	display: none;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: "Ionicons";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	text-rendering: auto;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	border-radius: 50%;
	border: solid 1px;
	width: 1.125rem;
	height: 1.125rem;
	font-size: 0.75rem;
	transition: all 0.4s ease;
}

.kuchikomi_comment .view_more_btn.active::after {
	background: #ccc;
	color: #fff;
	transform: rotate(45deg);
}

.kuchikomi_comment .view_more_btn span {
	display: block;
	width: calc(100% - 1.125rem);
}

@media (max-width: 767px) {
	.kuchikomi_comment .view_more_btn::after {
		display: flex;
		width: 1rem;
		height: 1rem;
		font-size: 0.625rem;
	}

	.kuchikomi_comment .view_more_btn span {
		display: block;
		width: calc(100% - 1rem);
	}
}

.kuchikomi_reply {
	width: calc(50% - 8rem);
	margin: 1rem 0;
}

.kuchikomi_reply_title {
	font-weight: 700;
	text-align: center;
	margin: 0;
}

.kuchikomi_reply_text {
	background: #f1f1f1;
	font-size: 0.875rem;
	padding: 1rem;
	margin: 0;
}

@media (max-width: 767px) {
	.kuchikomi_reply {
		width: 100%;
		margin: 0 0 0.5rem;
	}
}

/**
* .detail_recommended_parts
* /detail/[ID]/cinfo/ページ おすすめの他店舗、他医院
**/
.detail_recommended_parts {}

.recommended_list {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	background: #f2f3f4;
	color: rgba(0, 0, 0, 0.2);
	padding: 1.75rem;
}

.recommended_list>dt {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
	-webkit-align-items: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	border-radius: 6px;
	border: solid 1px #e1e1e1;
	box-shadow: 0 4px 1rem 0 rgba(0, 0, 0, 0.06);
	background: #fff;
	color: #999;
	font-size: 1.125rem;
	font-weight: bold;
	font-feature-settings: 'palt';
	line-height: 1.125rem;
	padding: 1.75rem;
	position: relative;
	z-index: 1;
	width: 100%;
	cursor: pointer;
	transition: all 0.4s ease;
}

.recommended_list>dt+dt,
.recommended_list>dd+dt {
	margin-top: 1rem;
}

.recommended_list>dt::after {
	content: "\f125";
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: "Ionicons";
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	text-rendering: auto;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	color: #999;
	position: absolute;
	top: 0;
	right: 1.5rem;
	bottom: 0;
	left: auto;
	z-index: 1;
	transition: color 0.2s ease;
}

.recommended_list>dt a {
	color: #006900;
	margin-right: 1rem;
	transition: color 0.3s ease;
}

.recommended_list>dt a::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.recommended_list>dt a:focus,
.recommended_list>dt a:hover {
	opacity: 1;
}

.recommended_list>dt:hover {
	border-color: #006900;
	background-color: #006900;
	color: #fff;
}

.recommended_list>dt:hover::after {
	color: inherit;
}

.recommended_list>dt:hover a {
	color: #fff;
}

.recommended_list>dt:hover+dd {
	border-color: #006900;
	background-color: #006900;
	color: #fff;
}

.recommended_list>dd {
	border-radius: 0 0 6px 6px;
	border-top: solid 1px rgba(0, 0, 0, 0.1);
	border-right: solid 1px #e1e1e1;
	border-bottom: solid 1px #e1e1e1;
	border-left: solid 1px #e1e1e1;
	box-shadow: 0 4px 1rem 0 rgba(0, 0, 0, 0.06);
	background-image: url("../images/icon_review_man.png");
	background-repeat: no-repeat;
	background-position: left 1.25rem top 1rem;
	background-size: auto 1.375rem;
	background-color: #fff;
	color: #000;
	font-size: 0.875rem;
	position: relative;
	z-index: 5;
	width: 100%;
	padding: 1rem 1rem 1rem 3.5rem;
	margin: -0.75rem 0 0;
	transition: all 0.4s ease;
}

.recommended_list>dd+dd {}

.recommended_list>dt+dd {}


.recommended_list+* {
	margin-top: 3rem;
}

@media (max-width: 767px) {
	.recommended_list {}

	.recommended_list>dt {
		padding: 1rem;
	}
}

#contact_detail .detail_contact {
	height: 80px;
}

#contact_detail .detail_contact .tel em {
	line-height: 23px;
	font-size: 18px;
}

#contact_detail .detail_contact .reserve a {
	background: #e66900 !important;
	font-size: 12px;
	padding: 5px 0;
	line-height: 20px;
}

#contact_detail .detail_contact .tel span {
	font-size: 12px;
}

#contact_detail .detail_contact .tel {
	font-size: 12px;
	padding: 5px;
}

#contact_detail .detail_contact .tel img {
	width: 14px;
	margin-right: 2px;
}

#contact_detail .detail_contact>* {
	width: 49%;
	margin: 0 3px;
}

#contact_detail .detail_contact .reserve a span {
	color: #e66900;
	border: solid 3px #e66900;
	font-size: 12px;
	width: 34px;
	height: 34px;
	top: -21px;
}

#joken_detail .joken__list .cell {
	background-color: #006900;
	color: white;
}

/*tab_detail*/
ul.tab_detail {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	/* 均等配置やめる */
	gap: 8px;
	/* タブ同士のすき間 */
	padding: 0;
	margin: 0;
	list-style: none;
}

ul.tab_detail>li {
	flex: 1 1 0;
	/* 均等幅だけど、gapぶんだけ少し細くなる */
}

ul.tab_detail>li>a {
	display: block;
	background-color: #006900;
	color: #fff;
	text-align: center;
	padding: .8rem 0 .6rem;
	border-radius: 10px;
	letter-spacing: .1rem;
}


.btn_box01 {
	width: 85%;
	height: 5rem;
	margin: 3rem auto;
}

.btn_box01 .tel {
	background-color: #eee;
	border: solid 1px #ccc;
	line-height: 23px;
}

.btn_box01 .reserve a {
	background: #e66900;
	line-height: 30px;
}

.btn_box01 .reserve a span {
	color: #e66900;
	border: solid 3px #e66900;
}

@media (max-width: 1200px) {
	#contact_detail .detail_contact .tel span {
		font-size: 14px;
	}

	#contact_detail .detail_contact .tel {
		font-size: 10px;
		padding: 0.5rem 0.2rem;
	}

	.btn_box01 {
		width: 90%;
		height: 5rem;
		margin: 3rem 5% 2rem;
	}
}

@media (max-width: 767px) {
	#contact_detail .detail_contact>* {
		width: 100%;
	}

	#contact_detail .detail_contact {
		margin-bottom: 8.5rem;
	}

	#contact_detail .detail_contact .tel {
		font-size: 14px;
	}

	#contact_detail .detail_contact .tel img {
		width: 18px;
	}

	#contact_detail .detail_contact .tel span {
		font-size: 16px;
	}

	#contact_detail .detail_contact .tel em {
		font-size: 20px;
	}

	#contact_detail .detail_contact .tel .time {
		font-size: 14px;
	}

	#contact_detail .detail_contact .reserve {
		min-height: 50px;
		margin: 4px 0;
	}

	.btn_box01 {
		width: 100%;
		height: auto;
		margin: 2rem 0 0;
	}

	ul.tab_detail>li {
		width: calc((100% - 16px) / 5);
		margin-top: .5rem;
	}

	ul.tab_detail>li>a {
		font-size: .8rem;
		padding: .7rem 0 .5rem;
	}

	#contact_detail .detail_contact .reserve a span {
		font-size: 12px;
		width: 45px;
		height: 45px;
		top: 3px;
		right: 5px;
	}

	.btn_box01 .reserve a span {
		font-size: 12px;
		width: 40px;
		height: 40px;
		top: 5px;
		right: 5px;
	}
}

.detail_contact_s {
	align-items: center;
}

.detail_contact_s .tel {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	background: #e9eeef;
	font-size: 10px;
	font-weight: 400;
	font-feature-settings: 'palt';
	text-align: center;
	padding: 3px;
	width: 33%;
}

.detail_contact_s .tel img {
	width: 13px;
	margin-right: 3px;
}

.detail_contact_s .tel span {
	font-size: 11px;
}

.detail_contact_s .tel em {
	font-size: 14px;
}

.detail_contact_s .tel .time {
	font-size: 11px;
}

.detail_contact_s .reserve {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-align-content: center;
	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	border-radius: 20px;
	font-size: 11px;
	font-weight: 400;
	font-feature-settings: 'palt';
	text-align: center;
	padding: 5px 2px;
	width: 33%;
}

.detail_contact_s .reserve a {
	padding: 5px 2px;
	font-size: 12px;
	box-shadow: none;
}

.detail_contact_s .reserve a span {
	color: #e66900;
	border: solid 3px #e66900;
	font-size: 12px;
	width: 34px;
	height: 34px;
	top: -25px;
	right: 5px;
}

.sticky_box {
	/*
	position: -webkit-sticky;
	position: sticky;
	z-index: 9999;
	top: 85px;*/
	margin-top: 20px;
}

@media (max-width: 767px) {

	.text_parts .detail_contact_s>* {
		width: 100%;
	}

	.text_parts .detail_contact_s {
		margin-bottom: 8.5rem;
	}

	.text_parts .detail_contact_s .tel {
		font-size: 14px;
	}

	.text_parts .detail_contact_s .tel img {
		width: 18px;
	}

	.text_parts .detail_contact_s .tel span {
		font-size: 16px;
	}

	.text_parts .detail_contact_s .tel em {
		font-size: 20px;
	}

	.text_parts .detail_contact_s .tel .time {
		font-size: 14px;
	}

	.text_parts .detail_contact_s .reserve {
		min-height: 50px;
		margin: 4px 0;
	}

	.text_parts .detail_contact_s .reserve a,
	#contact_detail .detail_contact .reserve a {
		font-size: 16px;
	}

	.btn_box01 {
		width: 100%;
		height: auto;
		margin: 2rem 0 0;
	}

	#wrapper.visible_box {
		overflow: visible;
	}

	.sticky_box {
		/*
		margin-top: 0;
	z-index: 99;
		top: 53px;
		*/
	}

	.sticky_under {
		position: relative;
		z-index: 1;
	}

	ul.tab_detail>li {
		width: calc((100% - 16px) / 6);
		margin-top: .5rem;
	}

	ul.tab_detail>li>a {
		font-size: .8rem;
		padding: .5rem 0 .5rem;
		border-radius: 5px;
	}

	.text_parts .detail_contact_s .reserve a span {
		font-size: 12px;
		width: 40px;
		height: 40px;
		top: 0px;
		right: 3px;
	}

}

.detail_btn {
	background-color: rgb(242, 245, 246);
	text-align: center;
	color: #006900;
	border: 1px solid #006900;
	font-size: 1.2rem;
	padding: .5rem 2rem;
	display: flex;
	align-items: center;
	justify-content: center
}

.name_parts>div {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

@media (max-width: 767px) {
	.name_parts>div {
		margin-bottom: 10px;
		display: block;
	}

	.detail_info>div[id] {
		display: block;
		padding-top: 5rem;
		margin-top: -2.5rem;
	}
}

.cta_bnr_area.page_detail .alert_txt {
	color: #F15B40;
	font-size: 22px;
	padding: 10px 20px;
	display: table;
	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;
	border: 1px solid #F15B40;
	border-collapse: separate;
}

.cta_bnr_area.page_detail .inner_con::after {
	width: 32%;
	height: 116%;
}

.merit_area_wrap {
	background-color: #fff;
}

.merit_area_wrap .content_container {
	padding-left: 15px;
	padding-right: 15px;
}

@media (max-width: 1310px) {
	.cta_bnr_area.page_detail .alert_txt {
		font-size: 2.09vw;
	}
}

@media (min-width: 768px) {
	.merit_area_wrap .txt_area button {
		display: none;
	}
}

@media (max-width: 767px) {

	.cta_bnr_area.page_detail,
	.features_area_wrap,
	.merit_area_wrap {
		margin-right: inherit;
		margin-left: inherit;
	}

	.cta_bnr_area.page_detail .alert_txt {
		font-size: 16px;
		padding: 10px;
	}

	.merit_area_wrap.short_txt .content_container .txt_area {
		position: relative;
		overflow: hidden;
		transition: .4s;
		box-sizing: border-box;
		height: 216px;
		border-radius: 0 0 10px 10px;
	}

	.merit_area_wrap.short_txt .content_container .txt_area p {
		padding-bottom: 30px;
	}

	.merit_area_wrap.short_txt .content_container .txt_area:before {
		content: "";
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
		height: 82px;
		background: rgb(0, 0, 0);
		background: linear-gradient(0deg, rgba(242, 245, 246, 1) 70%, rgba(255, 255, 255, 0) 100%);
		transition: .4s;
	}

	/*クラス付与時のスタイル*/
	.merit_area_wrap.short_txt .content_container .txt_area.active:before {
		opacity: 0;
		visibility: hidden;
	}

	.merit_area_wrap.short_txt .content_container .txt_area button {
		position: absolute;
		right: 20px;
		bottom: 20px;
		width: 100px;
		text-align: center;
		padding: 5px;
		font-size: 13px;
		cursor: pointer;
		color: #fff;
		background: #006900;
		border: none;
		border-radius: 50px;
	}
}



/**
* ページ内ジャンプ位置調整
**/
#top::before,
#iryo::before,
#picture::before,
#price::before,
#institution::before,
#googlemap::before {
	content: '';
	display: block;
	padding-top: 60px;
}


/**
* 同じエリアから探す
**/
.same_area ul {
	display: flex;
	gap: 5px;
}

.same_area ul li a {
	display: block;
	background-color: #006900;
	color: #fff;
	text-align: center;
	padding: .6rem;
	border-radius: 10px;
	letter-spacing: .1rem;
}

@media (max-width: 767px) {
	.same_area ul {
		flex-wrap: wrap;
	}
}

/**
* 近くの都道府県から探す
**/
.area_search_link_wrap .con_box {
	margin-bottom: 50px;
}

.area_search_link_wrap .h2_ttl {
	position: relative;
	padding-left: 50px;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 20px;
}

.area_search_link_wrap .h2_ttl::before {
	content: "";
	position: absolute;
	background-image: url("../images/s/search_icon.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 40px;
	height: 40px;
	left: 0;
	top: 5px;
}

.area_search_link_wrap .h2_ttl span {
	color: #e66900;
}

.detail_info_top .area_search_link_wrap .link_list {
	padding: 30px 50px;
	background-color: #fff;
	border-radius: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.area_search_link_wrap .link_list a {
	color: #006900;
	font-size: 15px;
}

.detail_info_top .link_list_block {
	padding: 30px 50px;
	background-color: #fff;
	border-radius: 10px;
}

.link_list_block .municipalities_link_list {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	margin-bottom: 20px;
}

.link_list_block .municipalities_link_list a {
	display: block;
	padding: 6px 12px;
	color: #fff;
	background-color: #006900;
	border-radius: 20px;
	line-height: 1;
	font-size: 14px;
}

.link_list_block .sub_municipalities_link_list {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.link_list_block .sub_municipalities_link_list a {
	color: #006900;
	font-size: 15px;
}

@media (max-width: 767px) {
	.area_search_link_wrap .con_box {
		margin-bottom: 30px;
	}

	.area_search_link_wrap .h2_ttl {
		padding-left: 40px;
		font-size: 22px;
		margin-bottom: 15px;
	}

	.area_search_link_wrap .h2_ttl::before {
		width: 25px;
		height: 25px;
		top: 5px;
	}

	.area_search_link_wrap .link_list {
		padding: 20px;
		gap: 15px;
	}

	.link_list_block {
		padding: 20px;
	}

	.link_list_block .municipalities_link_list {
		gap: 15px;
		margin-bottom: 20px;
	}

	.link_list_block .sub_municipalities_link_list {
		gap: 15px;
	}
}

/**
* 印刷（PDF化）ボタン
**/
.pdfDownload {
	border: none;
	background-color: inherit;
	color: #006900;
	text-decoration: underline;
}

.pdfDownload img {
	padding-right: 8px;
	vertical-align: text-bottom;
}

.detail_info__table .pdfDownload {
	position: absolute;
	right: 60px;
	top: 33px;
}

@media (max-width: 767px) {
	.pdfDownload {
		font-size: 12px;
	}

	.pdfDownload img {
		width: 22px;
	}

	.detail_info__table .pdfDownload {
		position: relative;
		right: inherit;
		top: inherit;
		margin-bottom: 10px;
	}

}

.contact_btn {
	margin: 0px 0px 20px 0px;
	width: 100%;
}

.contact_btn a {
	margin: 0px;
	padding: 20px 0px;
	border-radius: 10px;
	background: linear-gradient(to bottom, #fcdec1 0%, #f99838 15%, #f99838 85%, #cf5617 100%);
	color: #fff;
	position: relative;
	text-align: center;
	max-width: 360px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	font-size: 20px;
	border: 2px solid #f09237;
	border-bottom: none;
}

.contact_btn a:before {
	content: "";
	width: 40px;
	height: 40px;
	background: url(../images/icon_mail_white.png) center center no-repeat;
	background-size: contain;
	margin: 0px 10px 0px 0px;
}

@media (max-width: 767px) {
	.contact_btn {
		margin: 20px 0px 20px 0px;
		text-align: center;
	}

	.contact_btn a {
		margin: 0px auto;
	}
}

/* 提携医療機関 */
#medical_detail .detail_info_parts {
	padding: 2.5rem 2rem;
	background: #fff;
}

.medical_table {
	width: 100%;
	text-align: left;
	border-collapse: separate;
	border-spacing: 2px;
	margin-bottom: 20px;
}

.medical_table th,
.medical_table td {
	padding: 15px 25px;
	border: none;
}

.medical_table th {
	background-color: #CBECE8;
	font-weight: bold;
	width: 25%;
}

.medical_table td {
	background-color: #F2F5F6;
}

.medical_table .medical_name {
	background-color: #006900;
	color: #fff;
	font-size: 18px;
	padding: 12px 25px;
	width: 100%;
}

.medical_source {
	margin-top: 20px;
	color: #6b6b6b;
	font-size: 13px;
	padding: 0 2rem;
}

@media (max-width: 767px) {
	#medical_detail .detail_info_parts {
		padding: 1rem;
	}

	.medical_table {
		display: block;
		border-collapse: collapse;
		border-spacing: 0;
		margin-bottom: 15px;
	}

	.medical_table tbody,
	.medical_table tr,
	.medical_table th,
	.medical_table td {
		display: block;
		width: 100%;
		box-sizing: border-box;
	}

	.medical_table .medical_name {
		font-size: 15px;
		padding: 3px 5px;
		background-color: #006900;
		color: #fff;
		margin: 0;
	}

	.medical_table tr+tr th {
		font-size: 12px;
		padding: 8px 15px 2px;
		background-color: transparent;
		color: #006900;
		font-weight: bold;
	}

	.medical_table tr+tr td {
		padding: 2px 15px 10px;
		background-color: #F2F5F6;
		margin-bottom: 2px;
	}

	.medical_source {
		padding: 0;
		font-size: 12px;
	}
}

/* ===== FAQ アコーディオン ===== */
#faq_detail {
	margin-top: 4rem;
}
#features_detail {
	margin-top: 4rem;
}

/* ===== 関連ブログ ===== */
#blog_detail {
	margin-top: 4rem;
}
#blog_detail .detail_info_parts {
	padding: 2.5rem 2rem;
	background: #fff;
}
#blog_detail .column_wrap > div {
	display: flex;
	align-items: flex-start;
	gap: 1.5rem;
}
#blog_detail .column_img {
	width: 200px;
	min-width: 200px;
	height: auto;
	position: relative;
}
#blog_detail .column_img::before {
	display: none;
}
#blog_detail .column_img img {
	position: static;
	width: 100%;
	height: auto;
	border-radius: 4px;
	object-fit: cover;
}
#blog_detail .column_text {
	flex: 1;
	padding: 0;
}
#blog_detail .column_text .column_main {
	display: block;
}
#faq_detail .detail_info_parts {
	padding: 2.5rem 2rem 2.5rem;
	background: #fff;
}
.faq_list {
	margin: 0;
}
.faq_q {
	padding: 15px 40px 15px 15px;
	border-bottom: 1px solid #ddd;
	cursor: pointer;
	position: relative;
	font-weight: bold;
	font-size: 15px;
	line-height: 1.5;
}
.faq_q:first-child {
	border-top: 1px solid #ddd;
}
.faq_q::after {
	content: "∨";
	position: absolute;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 14px;
	color: #999;
	transition: transform 0.2s;
}
.faq_q.is-open::after {
	transform: translateY(-50%) rotate(180deg);
}
.faq_q_icon {
	display: inline-block;
	width: 26px;
	height: 26px;
	line-height: 26px;
	text-align: center;
	border-radius: 50%;
	background: #5cb85c;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	margin-right: 10px;
	vertical-align: middle;
}
.faq_a {
	padding: 15px 15px 15px 51px;
	background: #f9f9f9;
	border-bottom: 1px solid #ddd;
	font-size: 14px;
	line-height: 1.7;
}

@media (max-width: 767px) {
	#faq_detail {
		margin-top: 2.5rem;
	}
	#features_detail {
		margin-top: 2.5rem;
	}
	#blog_detail {
		margin-top: 2.5rem;
	}
	#blog_detail .detail_info_parts {
		padding: 1rem;
	}
	#blog_detail .column_wrap > div {
		flex-direction: row;
		gap: 0.75rem;
	}
	#blog_detail .column_img {
		width: 100px;
		min-width: 100px;
		height: auto;
	}
	#blog_detail .column_text .column_main {
		display: none;
	}
	#faq_detail .detail_info_parts {
		padding: 1rem 1rem 0;
	}
	.faq_q {
		padding: 12px 35px 12px 10px;
		font-size: 14px;
	}
	.faq_q::after {
		right: 10px;
	}
	.faq_q_icon {
		width: 22px;
		height: 22px;
		line-height: 22px;
		font-size: 12px;
		margin-right: 8px;
	}
	.faq_a {
		padding: 12px 10px 12px 40px;
		font-size: 13px;
	}
}

/* ============================
 * 費用相場セクション
 * ============================ */
#fee_stats_detail {
	margin-top: 4rem;
}
#fee_stats_detail .detail_info_parts {
	padding: 0;
	background: #fff;
	overflow: hidden;
}

.fee_stats_ttl {
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	background-color: #006900;
	padding: 12px 20px;
	margin: 0;
}

.fee_stats_ttl_icon {
	margin-right: 6px;
}

.fee_stats_table_wrap {
	overflow-x: auto;
	padding: 0;
}

.fee_stats_table {
	width: 100%;
	border-collapse: collapse;
	text-align: center;
	font-size: 14px;
	table-layout: fixed;
}

.fee_stats_table th,
.fee_stats_table td {
	padding: 10px 12px;
	border: 1px solid #ddd;
	vertical-align: middle;
	white-space: nowrap;
}

.fee_stats_table thead th {
	background-color: #CBECE8;
	font-weight: 700;
	color: #333;
}

.fee_stats_table tbody td {
	background-color: #fff;
	font-size: 15px;
	font-weight: 600;
}

.fee_col_region {
	width: 120px;
}

.fee_col_btn {
	width: 110px;
}

.fee_stats_table tbody td:first-child {
	font-size: 14px;
	font-weight: 400;
	background-color: #F2F5F6;
}

.fee_stats_table tbody td:last-child {
	background-color: #fff;
	font-weight: 400;
}

.fee_stats_btn {
	display: inline-block;
	padding: 6px 12px;
	background-color: #006900;
	color: #fff;
	text-decoration: none;
	border-radius: 4px;
	font-size: 12px;
	font-weight: 700;
	white-space: nowrap;
}

.fee_stats_btn:hover {
	background-color: #005200;
	color: #fff;
	text-decoration: none;
}

.fee_stats_pref_link {
	text-align: right;
	padding: 10px 20px 15px;
	margin: 0;
}

.fee_stats_pref_link a {
	color: #006900;
	text-decoration: underline;
	font-size: 14px;
	cursor: pointer;
}

/* 都道府県相場ポップアップ */
.fee_pref_modal {
	background: #fff;
	padding: 30px;
	max-width: 800px;
	margin: 0 auto;
	position: relative;
	border-radius: 6px;
}

.fee_pref_modal_ttl {
	font-size: 18px;
	font-weight: 700;
	color: #333;
	margin: 0 0 20px;
	padding-bottom: 10px;
	border-bottom: 2px solid #006900;
}

.fee_pref_modal_table_wrap {
	max-height: 60vh;
	overflow-y: auto;
}

.fee_pref_modal .fee_stats_table {
	width: 100%;
	table-layout: auto;
}

.fee_pref_modal .fee_stats_table th,
.fee_pref_modal .fee_stats_table td {
	padding: 8px 10px;
	font-size: 13px;
}

.fee_pref_modal .fee_stats_table thead th {
	position: sticky;
	top: 0;
	z-index: 1;
}

.fee_pref_modal .fee_stats_table tbody td:first-child a {
	color: #006900;
	text-decoration: underline;
}

.fee_pref_modal .fee_stats_table tbody td:first-child a:hover {
	text-decoration: none;
}

@media screen and (max-width:767px) {
	.fee_pref_modal {
		padding: 15px;
		margin: 0 10px;
	}

	.fee_pref_modal_ttl {
		font-size: 15px;
		margin-bottom: 15px;
	}

	.fee_pref_modal .fee_stats_table th,
	.fee_pref_modal .fee_stats_table td {
		padding: 6px 4px;
		font-size: 11px;
	}
}

@media screen and (max-width:767px) {
	#fee_stats_detail {
		margin-top: 2.5rem;
	}

	.fee_stats_ttl {
		font-size: 15px;
		padding: 10px 15px;
	}

	.fee_stats_table {
		font-size: 12px;
	}

	.fee_stats_table th,
	.fee_stats_table td {
		padding: 8px 4px;
	}

	.fee_stats_table tbody td {
		font-size: 13px;
	}

	.fee_stats_btn {
		padding: 6px 12px;
		font-size: 11px;
	}

	.fee_stats_pref_link {
		padding: 8px 15px 12px;
	}

	.fee_stats_pref_link a {
		font-size: 12px;
	}
}