/* ===== 2024/05 TOP・コラム改修:初診予約＋コラム用 ===== */
@media screen and (max-width: 46.8125em){
	/*body.reservation-guide .l-post-content p{*/
	/*	margin-bottom: 1em;*/
	/*}*/
	.js-responsive-table table.is-sm{
		min-width: 475px;
	}
	.c-table.is-info > thead > tr > .is-heading-sm{
		width:73px;
	}

	body.reservation-guide #toc_container{
		margin-top: 40px;
	}
}
.c-sidebnr__offer{
	border-color: var(--color-border);
}
.c-sidebnr__offer__title{
	color: var(--color-primary);
}
.c-sidebnr__tel{
	font-family:var(--font-ja);
	font-weight: 400;
	font-style: normal;
}
.c-sidebnr__button.c-button.is-sm{
	font-weight: bold;
}
display: none;
.c-capsule-nav.is-sp-sm li.is-link2::after{
}
.c-capsule-nav.is-sp-sm a.is-link2::after{
	content: "";
	display: block;
	width: 24px;
	height: 6px;
	background: url(../matsumoto-html/dist/assets/images/img-arrow.png) center center no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: 24px;
	margin-top: -3px;
	-webkit-transition: all .3s;
	transition: all .3s;
}
.c-capsule-nav.is-sp-sm a.is-link2:hover::after{
	-webkit-transform: translateX(4px);
	transform: translateX(4px);
}


@media screen and (max-width: 46.8125em){
	.c-capsule-nav.is-sp-sm a.is-link2::after{
		display: none;
	}
	.c-capsule-nav.is-sp-sm{
		margin-bottom: 24px;
	}
	.c-capsule-nav.is-sp-sm ul{
		display: flex;
		column-gap: 8px;
	}
	.c-capsule-nav.is-sp-sm li{
		width: calc(50% - 4px)!important;
	}

	.c-capsule-nav.is-sp-sm ul li:after{
		content: none;
	}
	.c-capsule-nav.is-sp-sm li a{
		font-size: 13px;
	}
}

.c-table.is-info thead tr th, .c-table.is-info thead tr td{
	background: var(--color-primary);
}
.c-table.is-accent thead tr th, .c-table.is-accent thead tr td{
	background: var(--color-reserve-brown);
}


/*.c-column-side-lp-cta,.c-column-link-to-lp{*/
/*	!* LP公開までは非表示*!*/
/*	display: none!important;*/
/*}*/

.c-column-link-to-lp{
	/* LP公開までは非表示*/
	/*display: none!important;*/
}

.c-column-link-to-lp .u-visible-sm{
	display: none!important;/* コラムページにあるLPへのリンクを非表示20251002 */
}

.c-column-side-lp-cta{
	background: var(--color-accent);
	color: var(--color-white);
	padding:28px 16px 32px;
	text-align: center;
	font-weight: bold;
}
@media screen and (max-width: 46.8125em){
	.c-column-side-lp-cta{
		padding: 36px 16px 34px;
	}
}

.c-column-side-lp-cta__title{
	font-size: 14px;
	border-top: solid 1px var(--color-white);
	border-bottom: solid 1px var(--color-white);
	max-width: 100%;
	width:fit-content;
	margin: auto auto 16px;
	padding: 6px 8px;
	letter-spacing: 0.02em;
	line-height: 1.5;
}

@media screen and (max-width: 46.8125em){
	.c-column-side-lp-cta__title{
		width: 224px;
	}
}

.c-column-side-lp-cta__catchcopy{
	line-height: 1.58;
	font-weight: bold;
	font-feature-settings: "palt";
	letter-spacing: 0.1em;
	font-size: 16px;
	margin-bottom: 8px;
}
@media screen and (max-width: 46.8125em){
	.c-column-side-lp-cta__catchcopy{
		font-size: 20px;
	}
}

.c-column-side-lp-cta__text{
	letter-spacing: 0.05em;
	font-size: 13px;
	line-height: 1.7;
}
@media screen and (max-width: 46.8125em){
	.c-column-side-lp-cta__text{
		font-size: 14px;
	}
}

.c-column-side-lp-cta__button-wrap{
	margin-top: 18px;
}
@media screen and (max-width: 46.8125em){
	.c-column-side-lp-cta__button-wrap{
		padding: 0 10px;
	}
}

.c-column-side-lp-cta__button.c-button{
	width:100%;
	min-width: 100%;
	line-height: 1.4;
	padding-block: 8px;
	height: auto;
	min-height: 48px;
}

.c-column-side-lp-cta.is-sidebar{
	margin-top: 32px;
	position: sticky;
	top: 200px;
}

.c-column-side-lp-cta.is-post-content{
	display: none;
}
@media screen and (max-width: 46.8125em){
	.c-column-side-lp-cta.is-sidebar{
		display: none;
	}
	.c-column-side-lp-cta.is-post-content{
		display: block;
		margin: 40px 0 24px;
	}
}

a.c-image-link{
	transition: opacity 0.3s;
}


.c-box-in-column{
	background: var(--color-background-light);
	padding:40px;
	margin: 32px auto;
}


@media screen and (max-width: 46.8125em){
	.c-box-in-column{
		padding: 32px 16px;
	}
}

.c-box-in-column p{
	font-size: 14px;
}

.c-box-in-column :is(h2,h3,h4,h5,h6){
	background: transparent;
	border: 0;
	padding: 0;
	color:var(--color-primary);
	margin-bottom:0.33em;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.7;
}

.c-box-in-column :is(h2,h3,h4,h5,h6):first-child{
	margin-top: 0;
}

.c-box-in-column .c-box-in-column__title{
	font-size: 24px;
}
@media screen and (max-width: 46.8125em){
	.c-box-in-column .c-box-in-column__title{
		font-size: 16px;
	}
}

.c-box-in-column .c-box-in-column__subtitle{
	font-size: 18px;
}
@media screen and (max-width: 46.8125em){
	.c-box-in-column .c-box-in-column__subtitle{
		font-size: 15px;
	}
}

.c-box-in-column hr {
	border: 0;
	border-top: solid 1px var(--color-border-2);
	margin: 16px 0;
}
@media screen and (max-width: 46.8125em){
	.c-box-in-column hr {
		margin: 14px 0;
	}
}

.c-box-in-column hr+:is(h2,h3,h4,h5,h6) {
	margin-top:0;
}

.c-box-in-column__button-wrap{
	margin-top: 32px;
	text-align: center;
}

@media screen and (max-width: 46.8125em){
	.c-box-in-column__button-wrap .c-button{
		width:fit-content;
		max-width: 100%;
	}
}

.c-floating-banner-sp{
	position: fixed;
	z-index: 1000;
	bottom: 5px;
	left: 0;
	right: 0;

	display: none;
}

@media screen and (max-width: 46.8125em){
	.c-floating-banner-sp{
		display: block;
		opacity: 0;
		/*visibility: hidden;*/
		pointer-events: none;
		transition: opacity 0.5s ease;
	}
	.c-floating-banner-sp.is-fixed{
		opacity: 1;
		/*visibility: visible;*/
		pointer-events: auto;
	}
}


.c-floating-banner-sp__inner{
	background: var(--color-primary);
	color: var(--color-white);
	padding: 16px;
	text-align: center;
}



.c-floating-banner02{
	/* LINEバナー表示非表示 */

	/*display: none;*/
}
.c-floating-banner02 a{
	transition: opacity 0.3s;
}

@media screen and (max-width: 46.8125em){
	.c-floating-banner02.is-columns{
		/* LP公開されたらコラムページでは非表示にする処理 */

		/*コラムページのLINEバナー再表示20251002*/

		/*display: none;*/
	}
}
.c-floating-banner02__pc{
	position: fixed;
	z-index: 1000;
	top: 170px;
	right: 16px;
}
.c-floating-banner02__pc img{
	width: 56px;
}

/*
.c-floating-banner02__pc a{
	background: #FF8E00;
	color: var(--color-white);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap:12px;
	text-decoration: none;
	font-weight: bold;
	border-radius: 4px 0 0 4px;
	width:56px;
	height: 198px;
	font-size: 14px;
}
.c-floating-banner02__pc img{
	width:30px;
	height: 30px;
}
.c-floating-banner02__pc .is-text{
	writing-mode: vertical-rl;
	text-orientation: upright;
}
*/


.c-floating-banner02__sp{
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 99999;
	background: var(--color-white);
	/*padding: 12px 13px;*/
	border-top: solid 8px var(--color-background);
}
.c-floating-banner02__sp a{
	display: block;
	text-align: center;
}

.c-floating-banner02__sp img{
	max-width: 380px;
	width: 100%;
}

/*

.c-floating-banner02__sp a{
	position: relative;
	background: #FF8E00;
	color: var(--color-white);
	display: block;
	text-decoration: none;
	font-weight: bold;
	font-size: 16px;
	padding: 11px 11px 9px;
	border-radius: 6px;
	box-shadow: 0px 4px 4px rgba(0, 0, 0, 0.15);
}

.c-floating-banner02__sp .is-title{
	position: absolute;
	left: 0;
	right: 0;
	top: -11px;
	margin:auto;
	width:172px;
	height: 22px;
	border-radius: 50px;
	color: #FF8E00;
	font-weight: bold;
	border: 1px solid #FF8E00;
	background: var(--color-white);
}
.c-floating-banner02__sp .is-title::before{
	content: "";
	position: absolute;
	width: 9px;
	height: 9px;
	border: solid 1px #ff8e00;
	border-radius: 50%;
	top:0;
	bottom: 0;
	margin: auto;
	left: 6px;
}

.c-floating-banner02__sp .is-flex{
	display: flex;
	align-items: center;
	gap:9px;
	height: 100%;
}
*/

@media screen and (min-width:750px) {

	.c-capsule-nav.is-sp-sm.is-advanced a {
			flex-direction: column;
			height: 70px;
			padding: 0 30px 0 10px;
}

.c-capsule-nav.is-sp-sm.is-advanced ul li {
	width: calc(50% - 10px);
margin-right: 0;
}
}
.c-capsule-nav.is-sp-sm.is-advanced ul {
	gap: 10px;
}
@media screen and (max-width:749px) {
	.c-capsule-nav.is-sp-sm.is-advanced a {
		flex-direction: column;
		padding: 0 30px 0 10px;
}

.c-capsule-nav.is-sp-sm.is-advanced ul li {
width: 100% !important;
margin-right: 0;
}
.c-capsule-nav.is-sp-sm.is-advanced ul li:after {
	display: block!important;
	content: "\f078";
    font-family: "FontAwesome";
    position: absolute;
    top: 50%;
    margin-top: -7px;
    right: 16px;
    font-size: 16px;
    color: #fff;
    line-height: 1;
}
}

.u-pdg {
  padding-top: 72px;
  padding-bottom: 56px;
}
	@media screen and (max-width:749px) {
		.u-pdg {
			padding-top: 48px !important;
    padding-bottom: 48px !important;
		}
  }


	.u-pdg.is-md {
    padding-top: 56px !important;
    padding-bottom: 56px !important;
	}
    @media screen and (max-width:749px) {
			.u-pdg.is-md {
      padding-top: 32px !important;
      padding-bottom: 32px !important;
			}
    }


		.u-pdg.is-sm {
    padding-top: 44px !important;
    padding-bottom: 44px !important;
		}
    @media screen and (max-width:749px) {
			.u-pdg.is-sm {
      padding-top: 24px !important;
      padding-bottom: 24px !important;
    }
  }

  .u-pdg.is-xs {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
	}
    @media screen and (max-width:749px) {
			.u-pdg.is-xs {
      padding-top: 16px !important;
      padding-bottom: 16px !important;
    }
  }

  .u-pdg.is-top {
    padding-bottom: 0 !important;
  }

  .u-pdg.is-bottom {
    padding-top: 0 !important;
  }

	ul.ul-list.is-advanced-medical a {
    color: #000;
    font-weight: 700;
    font-size: 16px;
}
ul.ul-list.is-advanced-medical > li:before {
	font-size: 12px;
	color: var(--color-primary);
}
ul.ul-list.is-advanced-medical.is-margin-bottom li {
	padding-left: 22px;
	margin-bottom: 18px;
}



/* 202504改修分 */
.c-front-column__firstexamination-slider {
	display: flex;
}
.c-front-column__firstexamination-item {
	background-color: #F3EFE8;
	text-decoration: none;
	color: #333333;
	display: block;
	overflow: hidden;
	border-radius: 6px;
	height: 100%;
}
.c-front-column__firstexamination-head {
	padding: 16px 20px;
	border-bottom: 1px solid #BB8D57;
	display: flex;
	align-items: center;
	gap: 11px;
}
.c-front-column__firstexamination-head .is-number {
	font-size: 28px;
	color: #BB8D57;
	line-height: 1;
}
.c-front-column__firstexamination-head .is-head {
	font-weight: 500;
	font-size: 18px;
}
.c-front-column__firstexamination-text {
	padding: 24px 20px;
}
.c-front-column__firstexamination-slider .bx-viewport {
	overflow: visible;
}
.c-firstexamination-button {
	position: relative;
	border: 1px solid #D9CCBF;
	border-radius: 1000px;
	overflow: hidden;
	width: 64px;
}
.c-firstexamination-button a {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
}
.c-front-column {
	position: relative;
}
.c-firstexamination-buttons {
	position: absolute;
	left: 0;
	bottom: 0;
	display: flex;
	gap: 11px;
}
.c-banner-column {
	margin-top: 65px;
	display: flex;
	justify-content: center;
	margin-bottom: 63px;
}
.c-banner-column__item {
	max-width: 557px;
	box-shadow: 0 0 25px rgba(167, 119, 93, 0.3);
}
.c-front-greeting__banner-inner {
    border: 1px solid #BB8D57;
    display: flex;
    align-items: center;
    padding: 20px;
    gap: 20px;
    text-decoration: none;
    border-radius: 6px;
		box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
		color: #333333;
		font-size: 14px;
}
.c-front-greeting__banner-head {
	color: #C57553;
	font-weight: 700;
	font-size: 18px;
	margin-bottom: 10px;
}
.c-front-greeting__banner-image {
	width: 80px;
}
.c-clinic-info__blocks {
	grid-template-columns: 1fr;
}
.c-clinic-info__caption {
	font-size: 15px;
	font-weight: 700;
	color: #C57553;
	letter-spacing: 0;
}
.c-table-info {
	width: 100%;
}
.c-table-info th,.c-table-info td {
	border: 1px solid #E4E3E3;
	font-size: 16px;
	line-height: 1.375;
	text-align: center;
	padding: 12px;
	letter-spacing: 0;
	font-weight: 400;
}
.c-table-info td {
	background-color: #fff;
}
.c-table-info th {
	background-color: #A4745F;
	color: #fff;
	width: 101px;
}
.c-clinic-info__text {
	color: #C57553;
	min-height: auto;
	font-weight: 700;
	margin-bottom: 20px;
}
.c-front-result__box.is-lg {
	width: 100%;
	padding: 30px 54px;
}
.c-front-result__box.is-lg .c-front-result__box-title {
	margin-bottom: 0;
}
.c-front-result__box-images {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: end;
	gap: 23px;
}
.c-front-result__box-title {
    font-size: 24px;
    text-align: center;
}
.c-front-result__box-title small {
	font-size: 14px;
}
.c-clinic-info__links {
	margin-top: 0;
}
@media screen and (min-width:750px) {
	.c-front-voice .c-front-column__head {
		grid-column: span 2;
		min-width: 147px;
	}
	.c-front-voice .c-front-column__body {
    grid-column: span 10;
	}
	.c-main-visual__numbers {
		padding: 0;
    width: 37%;
	}
	.c-main-visual__circle {
    width: 48%;
    max-width: 233px;
	}
	.c-main-visual__numbers-wrap {
		left: calc(50% + 13.9vw);
    bottom: 57px;
	}
}
@media screen and (max-width:749px) {
	.c-front-result__box-images {
		grid-template-columns: 1fr;
		gap: 10px;
	}
	.c-clinic-info__caption {
			font-size: 12px;
			/* letter-spacing: 0; */
	}
	.c-table-info th, .c-table-info td {
			width: auto;
			padding: 9px 12px;
			font-size: 13px;
	}
	.c-front-result__box-title {
		font-size: 18px;
	}
	.c-front-result__box-title small {
		display: block;
		font-size: 11px;
	}
	.home .c-front-column__firstexamination-head {
		border-bottom: none;
	}
	.home .c-front-column__firstexamination-text {
		display: none;
	}
	.c-front-column__firstexamination-text {
		padding: 20px 24px;
	}
	.c-firstexamination-button {
		width: 40px;
	}
	.c-main-visual__circle {
		width: 54%;
		max-width: 147px;
	}
	.c-main-visual__numbers-wrap {
		max-width: max-content;
		bottom: 43px;
	}
	.c-main-visual__numbers {
		padding: 0;
		width: 45%;
		max-width: 132px;
	}
.c-front-greeting__banner-image {
	width: 220px;
}

.c-firstexamination-buttons {
	/* left: -10px;
	bottom: calc(50% + 30px);
	justify-content: space-between;
	width: calc(100% + 20px);
	transform: translateY(50%); */
	left: -15px;
	bottom: calc(50% + -20px);
	justify-content: space-between;
	width: calc(100% + 30px);
	transform: translateY(50%);
}
.c-banner-column {
	margin-top: 30px;
}
}

.c-popup {
	background: rgba(47, 20, 16, 0.6);
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	z-index: 999999;
}
.c-popup__inner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
		min-width: 350px;
}
.c-popup__head {
	font-weight: 700;
	text-align: center;
	color: #fff;
	font-size: 20px;
	margin-bottom: 20px;
	letter-spacing: 0;
}
.c-popup__contents {
    background: #fff;
    border-radius: 8px;
}
.c-popup__heading {
    padding: 16px;
    font-size: 18px;
    font-weight: 500;
    border-bottom: 1px solid #D9CCBF;
		display: flex;
		justify-content: space-between;
		align-items: center;
}
.c-popup__heading span {
	display: block;
	position: relative;
	width: 24px;
	height: 24px;
	cursor: pointer;
}

.c-popup__question {
	position: relative;
	padding: 24px 20px 20px 59px;
	font-size: 18px;
	line-height: 28px;
	font-weight: 500;
	letter-spacing: 0;
}

.c-popup__question span {
	position: absolute;
	top: 26px;
	left: 24px;
	color: #C57553;
	font-size: 28px;
	line-height: 1;
}
.c-popup__links {
    padding: 0 24px 20px;
}
.c-popup__link {
	display: flex;
	align-items: center;
	justify-content: space-between;
	border-radius: 2px;
	background-color: #C57553;
	color: #fff;
	text-decoration: none;
	padding: 16px 14px;
	font-size: 16px;
	line-height: 24px;
	font-weight: 600;
	letter-spacing: 0;
	cursor: pointer;
	gap: 34px;
}
.c-popup__link:not(:last-child) {
	margin-bottom: 4px;
}
.c-popup__link span {
	flex-shrink: 1;
	width: 23px;
	display: block;
	height: 6px;
}
.c-popup__lead {
    padding: 25px 0 11px;
    text-align: center;
    font-size: 18px;
    line-height: 1.5;
    font-weight: 500;
}
.c-popup__color {
	font-size: 20px;
	line-height: 35.2px;
	text-align: center;
	font-weight: 500;
	color: #e77341;
}
.c-popup__image {
	max-width: 260px;
	margin: 0 auto;
}
.c-popup__text {
    margin-top: 10px;
    text-align: center;
    letter-spacing: 0;
    line-height: 1.5;
    font-size: 14px;
    font-weight: 500;
}
.c-popup__button {
    width: 184px;
    margin: 15px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #5B514B;
    color: #fff;
    height: 42px;
    border-radius: 2px;
    gap: 4px;
    font-weight: 700;
		cursor: pointer;
}
.c-popup__items.is-end {
	padding-bottom: 30px;
}
.c-popup.is-close {
	display: none;
}
.c-popup__items.is-end {
	display: none;
}


/* 新規ページ */
.c-capsule-nav.is-sp-sm li a.is-color-01 {
	background-color: #C57553;
}
.c-capsule-nav.is-sp-sm li a.is-color-02 {
	background-color: #A4745F;
}
.l-section.is-consultation {
	padding: 0 16px;
	position: relative;
}
.l-section.is-consultation .c-firstexamination-buttons {
	width: 100%;
}
.c-button.is-color-01 {
	background-color: #C57553;
}
.c-button.is-color-02 {
	background-color: #A4745F;
}
.c-two-buttons {
	margin-top: 24px;
}
ul.c-reservation-list.is-renew {
	margin-bottom: 16px;
}
ul.c-reservation-list.is-renew li {
	list-style: none;
	padding: 16px 20px 16px 16px;
	border: 1px solid #D9CCBF;
	border-radius: 6px;
	display: flex;
	margin-bottom: 0;
}
.c-reservation-list.is-renew li:not(:last-child) {
	margin-bottom: 6px;
}
.c-reservation-list__icon {
	flex-shrink: 0;
	margin-right: 12px;
	width: 24px;
	height: 24px;
}
ul.c-reservation-list.is-renew li:before {
	display: none;
}
.c-consultation-accordion__item {
	border-radius: 6px;
	border: 1px solid #DCC9AD;
	overflow: hidden;
}
.c-consultation-accordion__title {
	/* background-color: #DCC9AD; */
	background-color: #EFE0CC;
	font-size: 18px;
	letter-spacing: 0.01em;
	padding: 8px 8px 8px 24px;
	align-items: center;
	display: flex;
	justify-content: space-between;
}
.c-consultation-accordion__title:after {
	display: flex;
	justify-content: center;
	align-items: center;
	content: "";
	background-image: url(/wp-content/uploads/2025/04/icon-acc.svg);
	background-size: 14px;
	background-repeat: no-repeat;
	background-position: center;
	width: 38px;
	height: 38px;
	border-radius: 4px;
	background-color: #fff;
	font-size: 30px;
	line-height: 1;
}
.c-consultation-accordion__item.is-open .c-consultation-accordion__title:after {
	background-image: url(/wp-content/uploads/2025/04/icon-acc-close.svg);
}
.c-consultation-accordion__text {
	padding: 24px 16px;
	display: none;
}
.c-consultation-accordion__item:not(:last-child) {
	margin-bottom: 10px;
}
.c-accessmap-twocolumn-head {
	font-size: 14px;
	font-weight: 700;
	color: #A4745F;
	margin-bottom: 16px;
}
.c-consultation-take__block {
	border-radius: 6px;
	border: 1px solid #D9CCBF;
	padding: 16px 20px 16px 16px;
	display: flex;
}
.c-consultation-take__block:not(:last-child) {
	margin-bottom: 6px;
}
.c-consultation-take__block-head {
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.05em;
	margin-bottom: 4px;
}
.c-consultation-take__block-image {
	width: 40px;
	margin-right: 12px;
	flex-shrink: 0;
	color: #A4745F;
}
.c-attention {
	background: #F4F3F1;
	border-radius: 4px;
	padding: 10px;
	display: flex;
}
.c-attention:before {
	content: "";
	width: 22px;
	height: 24px;
	display: block;
	background-image: url(/wp-content/uploads/2025/04/icon-error.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin-right: 8px;
	flex-shrink: 0;
}
.c-consultation-take__attention .c-attention:not(:last-child) {
	margin-bottom: 4px;
}
.c-consultation-take__attention {
	margin-top: 6px;
}
.c-consultation-take__content-items {
	margin-top: 12px;
}
.c-consultation-take__content-item {
	border: 1px solid #A4745F;
	border-radius: 6px;
	overflow: hidden;
}
.c-consultation-take__content-item-head {
	background-color: #F3EFE8;
	display: flex;
	align-items: center;
	padding: 10px;
	font-size: 14px;
}
.c-consultation-take__content-item-head .is-icon {
	flex-shrink: 0;
	width: 18px;
	margin-right: 6px;
	height: auto;
}
.c-consultation-take__content-item-head .is-icon img {
	display: block;
}
.c-consultation-take__content-item-unit {
    padding: 12px;
}
.c-text-head {
	font-weight: 700;
	color: #A4745F;
	font-size: 16px;
}
.c-text-head.is-sm {
	font-size: 14px;
}
.c-list-check {
	margin-top: 8px;
}
.c-list-check li {
	display: flex;
	align-items: center;
}
.c-list-check li:before {
	content: "";
	width: 16px;
	height: 16px;
	display: block;
	background-image: url(/wp-content/uploads/2025/04/icon-check.svg);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
	margin-right: 8px;
	flex-shrink: 0;
}
.c-consultation-take__content-item-unit .is-item:not(:last-child) {
	margin-bottom: 8px;
}
.c-consultation-take__content-item:not(:last-child) {
	margin-bottom: 17px;
}
.c-consultation-take__block-button {
	width: 154px;
	height: 33px;
	background-color: #A4745F;
	border-radius: 2px;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 13px;
	font-weight: 700;
	margin-top: 8px;
}
.c-consultation-take__block-button a ,.c-consultation-take__block-button span {
	color: #fff;
	text-decoration: none;
}

.c-consultation-price__case-head {
	display: flex;
	letter-spacing: 0;
	font-size: 16px;
	align-items: center;
	margin-bottom: 8px;
}
.c-consultation-price__case-head .is-icon {
	width: 24px;
	margin-right: 8px;
	flex-shrink: 0;
}
.c-consultation-price__case-head .is-icon img {
	display: block;
}
.c-consultation-price__case-head span {
	display: block;
	border-radius: 2px;
	background: #917A6F;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 4px 11px;
	line-height: 1;
	margin-left: 5px;
	flex-shrink: 1;
	letter-spacing: 0;
}
.c-consultation-price__case-text {
	margin-bottom: 8px;
}
.c-consultation-price__case-contents {
    background: #F4F3F1;
    border-radius: 4px;
    padding: 20px 24px;
}
.c-consultation-price__case-item {
	display: flex;
	align-items: center;
	font-size: 15px;
	line-height: 1.5;
	letter-spacing: 0.04em;
}
.c-consultation-price__text.is-bold {
	font-weight: 700;
}
.c-consultation-price__case-block {
	margin-bottom: 16px;
}
.c-consultation-price__case-box {
	border: 1px solid #A4745F;
	border-radius: 6px;
	overflow: hidden;
	background: #F3EFE8;
	padding: 24px;
}
.c-consultation-price__case-links {
	margin-top: 16px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 4px;
}
.c-consultation-price__case-link {
	background: #A4745F;
	color: #fff;
	border-radius: 2px;
	font-weight: 700;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	height: 37px;
}
.c-consultation-price__case-link a {
	color: #fff;
}
.c-consultation-price__case-button {
	margin-top: 16px;
}
.c-consultation-price__price-text {
	margin-bottom: 16px;
}
.c-consultation-price__price-table {
	margin-top: 24px;
}
.c-consultation-price__price-table table th,.c-consultation-price__price-table table td {
	padding: 7px 0;
	border-bottom: 1px solid #D9D0C3;
}
.c-consultation-price__price-table table td {
	text-align: right;
	font-weight: 700;
}
.c-consultation-price__price-table table th {
	text-align: left;
	font-weight: 400;
}
.c-consultation-price__price-table table th span {
	display: block;
	color: #4A5565;
	font-size: 12px;
}
.c-consultation-price__price-price {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background-color: #F3EFE8;
	border-radius: 4px;
	padding: 10px 16px;
	font-weight: 700;
	color: #A4745F;
	font-size: 14px;
	margin-top: 12px;
}
.c-consultation-price__price-price .is-price {
	font-size: 16px;
}
.c-consultation-youtube__text {
	margin: 12px 0 8px;
}
.c-consultation-youtube__card-item {
	border-radius: 8px;
	overflow: hidden;
	background: #F3EFE8;
}
.c-consultation-youtube__card-image {
	aspect-ratio: 334 / 200;
}
.c-consultation-youtube__card-image iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.c-consultation-youtube__card-content {
	padding: 14px 16px 16px;
}
.c-consultation-youtube__card-head {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 4px;
}

.c-consultation-youtube__card-labels {
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 4px;
}
.c-consultation-youtube__card-label {
	background: #fff;
	color: #A4745F;
	font-size: 11px;
	font-weight: 700;
	padding: 2px 12px;
}
.l-section.is-consultation .c-firstexamination-buttons {
	bottom: 16px;
	left: 16px;
}
.c-consultation-price__price-table table  {
	width: 100%;
}
.c-consultation-youtube__card {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
}
@media screen and (max-width:749px) {
	.c-popup__link {
		gap: 0;
	}
	.c-consultation-youtube__card {
		grid-template-columns: 1fr;
	}
	.l-section.is-consultation {
		width: 100vw;
		margin-left: -24px;
		padding: 0 24px;
		position: relative;
	}
	.l-section.is-consultation .c-firstexamination-buttons {
		bottom: calc(50% + 30px);
		left: 3%;
		width: 94%;
	}
	.c-text-head {
		font-size: 14px;
	}
	.c-text-head.is-sm {
		font-size: 12px;
	}
}


.l-section.is-unormal {
	overflow: hidden;
	position: relative;
}
.l-section.is-unormal {
	position: relative;
}
.l-section.is-unormal .owl-carousel .owl-stage-outer {
	overflow: visible !important;
}
.c-front-column__firstexamination-slider.owl-carousel .owl-stage  {
	display: flex;
}
.l-section.is-unormal:before {
	content: "";
	position: absolute;
	left: 0;
	top:0;
	width: calc(calc(196/1400*100%) + calc(calc(50vw - 16px) - calc(1140px / 2)));
	height: 100%;
	background-color: #fff;
	z-index: 10;
}
.c-front-column__head {
	position: relative;
	z-index: 100;
}

.c-firstexamination-buttons {
	z-index: 100;
}
@media screen and (max-width:1200px) {
	.l-section.is-unormal:before {
    width: calc(calc(205/1200*100%) + calc(calc(50vw - 32px) - calc(1076px / 2)));
		min-width: 207px;
	}
}
@media screen and (min-width:1401px) {
	.l-section.is-unormal:before {
    width: calc(calc(calc(calc(100vw - 32px) - 1140px)/2) + 196px);
	}
}
@media screen and (max-width:749px) {
	.l-section.is-unormal:before {
		display: none;
	}
	/* .l-section.is-unormal .owl-carousel .owl-stage-outer {
		overflow: hidden !important;
	} */
	.c-front-result__box {
		padding: 21px 21px 24px;
}
.c-front-result__box.is-lg {
	padding: 24px 47px 24px 30px;
}
.c-front-result__box-result.is-margin {
	margin-top: 0;
}
.c-front-greeting__banner-head {
	line-height: 1.5;
}
.c-front-greeting__banner-inner {
	align-items: flex-start;
}
.c-front-column__firstexamination-slider.owl-carousel .owl-stage {
	display: block;
}
}

.c-main-visual__links-item img {
	height: auto;
}


/* slidebarコンテンツ追加 */
.l-footer-new__menu.is-only-slidebar {
	display: none;
}

.c-slidebar-menu [data-slidebar="pickup"]{
	margin-bottom: 24px;
}

.c-slidebar-menu [data-slidebar="pickup"] a{
	position: relative;
	background: #B9633E;
	font-weight: bold;
	color: #fff;
	border-radius: 2px;
	padding: 14px 44px 14px 20px;
	line-height: 1.4;
}

.c-slidebar-menu [data-slidebar="pickup"] a::after{
	content: "";
	display: block;
	width: 24px;
	height: 6px;
	background: url(../matsumoto-html/dist/assets/images/img-arrow.png) center center no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: 16px;
	margin-top: -3px;
}
  .l-header__button-wrap {
    position: relative;
  }

  .c-buttons-block {
    position: absolute;
    padding: 8px;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
  }

  .c-buttons-block__inner {
    padding: 8px;
    gap: 8px;
    display: flex;
    background-color: #DCC9AD;
  }

  .c-buttons-block a {
    text-decoration: none;
    font-size: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    color: #fff;
    width: 120px;
    gap: 4px;
    background: #EA5504;
    border-radius: 4px;
    padding: 4px;
  }

  .c-buttons-block a:nth-child(2) {
    background: #C57553;
  }

  .c-buttons-block a .is-image {
    display: block;
    width: 30px;
  }
	.c-floating-buttons {
		overflow: initial;
	}
	@media (max-width: 1040px) {
.c-buttons-block {
	padding: 3px;
	    left: 55%;
}
		.c-buttons-block a {
			flex-wrap: nowrap;
			height: auto;
			flex-direction: row;
		}
	}



/* ========================================
   病院リスト
   ======================================== */

/* 病院リストコンテナ */
.p-hospital-list {
	max-width: 1140px;
	margin: 0 auto;
	padding: 40px 20px;
}

/* 検索フォーム */
.hospital-search {
	background: #f7f7f7;
	padding: 30px;
	margin-bottom: 40px;
	border-radius: 8px;
}

.hospital-search__inner {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	align-items: flex-end;
}

.hospital-search__field {
	flex: 1 1 300px;
	min-width: 250px;
}

.hospital-search__label {
	display: block;
	font-weight: bold;
	margin-bottom: 8px;
	color: #333;
	font-size: 14px;
}

.hospital-search__input,
.hospital-search__select {
	width: 100%;
	padding: 12px 16px;
	font-size: 16px;
	border: 1px solid #ddd;
	border-radius: 4px;
	background: #fff;
	transition: border-color 0.3s;
}

.hospital-search__input:focus,
.hospital-search__select:focus {
	outline: none;
	border-color: #C7A186;
	box-shadow: 0 0 0 3px rgba(199, 161, 134, 0.1);
}

.hospital-search__clear {
	flex: 0 0 auto;
	padding: 12px 24px;
	background: #666;
	color: #fff;
	border: none;
	border-radius: 4px;
	font-size: 16px;
	cursor: pointer;
	transition: background 0.3s;
}

.hospital-search__clear:hover {
	background: #444;
}

.hospital-search__result {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #ddd;
}

.hospital-search__message {
	margin: 0;
	font-size: 15px;
	font-weight: bold;
}

.hospital-search__message--found {
	color: #2c5f2d;
}

.hospital-search__message--empty {
	color: #c33;
}

/* アンカーナビゲーション */
.hospital-nav {
	background: #fff;
	border: 2px solid #e0e0e0;
	border-radius: 8px;
	padding: 25px;
	margin-bottom: 40px;
}

.hospital-nav__title {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 15px;
	color: #333;
}

.hospital-nav__list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}

.hospital-nav__item {
	margin: 0;
}

.hospital-nav__link {
	display: inline-block;
	padding: 10px 20px;
	background: #f0f0f0;
	color: #333;
	text-decoration: none;
	border-radius: 20px;
	font-size: 15px;
	transition: all 0.3s;
	border: 1px solid #ddd;
}

.hospital-nav__link:hover {
	background: #C7A186;
	color: #fff;
	border-color: #C7A186;
	text-decoration: none;
}

/* 地方セクション */
.hospital-region {
	margin-bottom: 60px;
}

.hospital-region__title {
	font-size: 26px;
	font-weight: bold;
	color: #333;
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 3px solid #C7A186;
}

.hospital-region__empty {
	padding: 30px;
	text-align: center;
	background: #f7f7f7;
	border-radius: 4px;
	color: #666;
}

/* テーブル */
.hospital-table-wrapper {
	overflow-x: auto;
	margin-bottom: 20px;
}

.hospital-table {
	width: 100%;
	border-collapse: collapse;
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.hospital-table__head {
	background: #C7A186;
	color: #fff;
	padding: 15px 12px;
	text-align: left;
	font-weight: bold;
	font-size: 14px;
	border: 1px solid #b89176;
}

.hospital-table__head--prefecture {
	width: 12%;
	min-width: 80px;
}

.hospital-table__head--name {
	width: 38%;
	min-width: 200px;
}

.hospital-table__head--furigana {
	width: 25%;
	min-width: 150px;
}

.hospital-table__head--url {
	width: 25%;
	min-width: 150px;
}

.hospital-table__row {
	border-bottom: 1px solid #e0e0e0;
	transition: background 0.2s;
}

.hospital-table__row:hover {
	background: #f9f9f9;
}

.hospital-table__cell {
	padding: 14px 12px;
	font-size: 14px;
	vertical-align: middle;
	border-right: 1px solid #f0f0f0;
}

.hospital-table__cell:last-child {
	border-right: none;
}

.hospital-table__link {
	color: #4a90e2;
	text-decoration: none;
	font-weight: 500;
	transition: color 0.3s;
}

.hospital-table__link:hover {
	color: #2c5f8f;
	text-decoration: underline;
}

.hospital-table__external {
	font-size: 12px;
	color: #999;
	margin-left: 4px;
}

.hospital-table__no-url {
	color: #999;
}

/* 空の状態 */
.hospital-empty {
	padding: 60px 20px;
	text-align: center;
	background: #f7f7f7;
	border-radius: 8px;
}

.hospital-empty p {
	font-size: 16px;
	color: #666;
	margin: 0;
}

/* レスポンシブ対応 */
@media (max-width: 768px) {
	.p-hospital-list {
		padding: 20px 15px;
	}

	.hospital-search {
		padding: 20px;
		margin-bottom: 30px;
	}

	.hospital-search__inner {
		flex-direction: column;
		gap: 15px;
	}

	.hospital-search__field {
		flex: 1 1 100%;
		min-width: 100%;
	}

	.hospital-search__clear {
		width: 100%;
	}

	.hospital-nav {
		padding: 20px;
		margin-bottom: 30px;
	}

	.hospital-nav__list {
		gap: 8px;
	}

	.hospital-nav__link {
		padding: 8px 16px;
		font-size: 14px;
	}

	.hospital-region {
		margin-bottom: 40px;
	}

	.hospital-region__title {
		font-size: 22px;
		margin-bottom: 20px;
	}

	/* テーブルをカード表示に変更 */
	.hospital-table thead {
		display: none;
	}

	.hospital-table,
	.hospital-table tbody,
	.hospital-table__row,
	.hospital-table__cell {
		display: block;
	}

	.hospital-table__row {
		margin-bottom: 15px;
		border: 1px solid #e0e0e0;
		border-radius: 8px;
		overflow: hidden;
		box-shadow: 0 2px 4px rgba(0, 0, 0, 0.05);
	}

	.hospital-table__cell {
		padding: 12px 15px;
		border-right: none;
		border-bottom: 1px solid #f0f0f0;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.hospital-table__cell:last-child {
		border-bottom: none;
	}

	.hospital-table__cell::before {
		content: attr(data-label);
		font-weight: bold;
		color: #666;
		flex: 0 0 100px;
	}

	.hospital-table__cell--prefecture::before {
		content: '都道府県';
	}

	.hospital-table__cell--name::before {
		content: '病院名';
	}

	.hospital-table__cell--furigana::before {
		content: 'ふりがな';
	}

	.hospital-table__cell--url::before {
		content: 'ウェブサイト';
	}
}

/* ========================================
   診療予約ガイドページ用追加スタイル
   ======================================== */

/* テーブルレスポンシブコンテナ */
.c-table-responsive {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    margin-bottom: 20px;
}

/* 情報テーブル調整 */
.c-table-info {
    width: 100%;
    border-collapse: collapse;
    border: 1px solid #e0e0e0;
    font-size: 14px;
}

.c-table-info th,
.c-table-info td {
    border: 1px solid #e0e0e0;
    padding: 15px;
    vertical-align: top;
    text-align: left;
}

.c-table-info th {
    background-color: #917A6F;
    font-weight: bold;
    color: #fff;
    white-space: nowrap;
}

/* スマホ対応 */
@media (max-width: 768px) {
    .c-table-info th,
    .c-table-info td {
        padding: 10px;
        display: block;
        width: 100%;
    }

    .c-table-info thead {
        display: none; /* ヘッダー非表示 */
    }

    .c-table-info tr {
        display: block;
        margin-bottom: 20px;
        border: 1px solid #ccc;
        border-radius: 4px;
        overflow: hidden;
    }

    .c-table-info td {
        border: none;
        border-bottom: 1px solid #eee;
        position: relative;
        padding-left: 15px;
    }
    
    .c-table-info td:before {
        content: attr(data-label);
        font-weight: bold;
        display: block;
        margin-bottom: 5px;
        color: #666;
    }
    
    /* 1列目を強調 */
    .c-table-info tr th:first-child {
        background-color: #C7A186;
        color: #fff;
        display: block;
        border-bottom: none;
    }
}

/* リスト調整 */
.c-list-check {
    list-style: none;
    padding: 0;
    margin: 0;
}

.c-list-check li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
    line-height: 1.6;
}

.c-list-check li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0.5em;
    width: 16px;
    height: 8px;
    border-left: 2px solid #C7A186;
    border-bottom: 2px solid #C7A186;
    transform: rotate(-45deg);
    margin-top: -6px;
}

.c-list-dot {
    list-style: none;
    padding: 0;
    margin: 0;
}

.c-list-dot li {
    position: relative;
    padding-left: 1em;
    margin-bottom: 5px;
}

.c-list-dot li:before {
    content: '・';
    position: absolute;
    left: 0;
    color: #C7A186;
}

/* アコーディオン調整 */
.c-accordion__title {
    background-color: #f7f7f7;
    padding: 15px 20px;
    font-weight: bold;
    cursor: pointer;
    position: relative;
    border-bottom: 1px solid #e0e0e0;
}

.c-accordion__title:after {
    content: '+';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    font-weight: normal;
}

.c-accordion__block.is-open .c-accordion__title:after {
    content: '-';
}

.c-accordion__text {
    padding: 20px;
    border: 1px solid #e0e0e0;
    border-top: none;
    /* display: none; */
}

/* 「Q」アイコンの非表示 */
.c-accordion__title.is-no-q:before {
    content: none !important;
    display: none !important;
}

.c-accordion__title.is-no-q {
    padding-left: 20px !important;
}

/* ボタン色調整 */
.c-button.is-color-01 {
    background-color: #C7A186;
    color: #fff;
    border: none;
}

.c-button.is-color-01:hover {
    background-color: #b18568;
}

.c-button.is-color-02 {
    background-color: #fff;
    color: #C7A186;
    border: 1px solid #C7A186;
}
.c-button.is-color-02:hover {
    background-color: #fcf4ef;
}

/* ========================================
   LP風セクション：当院での治療に特に向いている方
   ======================================== */
/* .c-feature-section {
    background-color: #F9F6F3;
    padding: 40px 30px;
    border-radius: 12px;
    margin-bottom: 60px;
} */

.c-feature-heading {
    text-align: left; /* 左寄せ */
    font-size: 24px;
    font-weight: 700;
    color: #5B514B;
    margin-bottom: 30px;
    position: relative;
    padding-bottom: 15px;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #C7A186; /* 左寄せの下線 */
}

.c-feature-heading::after {
    content: none; /* 中央下線を削除 */
}

.c-feature-grid {
    display: flex;
    flex-direction: column;
    gap: 16px;
    max-width: 100%;
}

.c-feature-card {
    background: #fff;
    border: 1px solid #EBE0D6;
    border-radius: 8px;
    padding: 20px 24px;
    display: flex;
    flex-direction: row; /* 横並び（左アイコン・右テキスト） */
    align-items: center;
    text-align: left;
}

.c-feature-icon {
    width: 50px;
    height: 50px;
    background-color: #FDF8F5;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 20px; /* 右に余白 */
    margin-bottom: 0; /* 下余白削除 */
    color: #A4745F;
    border: 1px solid #EBE0D6;
    flex-shrink: 0; /* アイコンが縮まないように */
}

.c-feature-icon svg {
    width: 24px;
    height: 24px;
    fill: currentColor;
}

.c-feature-text {
    font-size: 16px;
    line-height: 1.6;
    color: #555;
    font-weight: 500;
}

.c-feature-text .u-accent {
    color: #A4745F;
    font-weight: 700;
    background: linear-gradient(transparent 70%, #efe0cc 70%);
}

@media (max-width: 768px) {
    .c-feature-section {
        padding: 30px 20px;
    }
    .c-feature-heading {
        font-size: 20px;
        display: block; /* スマホでは全幅 */
    }
    .c-feature-card {
        padding: 16px;
    }
    .c-feature-icon {
        width: 40px;
        height: 40px;
        margin-right: 12px;
    }
    .c-feature-icon svg {
        width: 20px;
        height: 20px;
    }
    .c-feature-text {
        font-size: 14px;
    }
}


.c-list-dot.u-text-small {
	margin-top: 1em;
	font-size: 13px;
}

/* 費用リスト（dl/dt/dd）のラベル化スタイル */
.c-table-info dl {
    margin: 0;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 8px 12px;
    align-items: center;
}

.c-table-info dt {
    background-color: #917A6F; /* サイト内の茶色系アクセント */
    color: #fff;
    font-size: 11px;
    padding: 4px 10px;
    border-radius: 3px;
    font-weight: bold;
    text-align: center;
    line-height: 1.2;
    white-space: nowrap;
    min-width: 70px; /* 幅を揃える */
}

.c-table-info dd {
    margin: 0;
    font-size: 15px;
    font-weight: bold;
    color: #333;
}

@media (max-width: 768px) {
    .c-table-info dl {
        display: flex;
        flex-direction: row;
        gap: 4px;
        align-items: flex-start;
    }
    
    .c-table-info dt {
        margin-bottom: 2px;
    }
    
    .c-table-info dd {
        padding-left: 2px;
        margin-bottom: 10px;
    }
    
    .c-table-info dd:last-child {
        margin-bottom: 0;
    }
}

.c-table-info,
.c-table-info tbody {
	display: block;
}