@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
/************************************
** common
************************************/
/* 背景白に */
body {
	background: #fff;
}

/* コンテンツが重ならないように */
@media screen and (max-width: 1023px) {
    .admin-bar:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
        margin-top: calc(80px - var(--wp-admin--admin-bar--height)) !important;
    }
}

/* コンテンツが重ならないように */
@media screen and (max-width: 1023px) {
  body:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
    margin-top: 80px;
  }
}
/* フッターが隠れないように */
@media screen and (max-width: 1023px) {
	body {
		padding-bottom: 100px;
	}
}

/* フッターが隠れないように */
@media screen and (max-width: 480px) {
	body {
		padding-bottom: 90px;
	}
}

/* コンテンツ幅広げる */
.wrap {
	width: 100%;
	overflow: hidden;
}

/* もともとの余白なし */
.main {
	padding: 0;
}

/* 投稿、アーカイブ、シングルの余白 */
.blog .main,
.single .main,
.archive .main {
	padding-inline: 15px;
}


/* もともとの余白なし */
@media screen and (max-width: 834px) {
    main.main {
	padding: 0;
    }
}

/* 固定ページアイキャッチ上部余白なくす */
.content-top {
	margin-top: 0;
}

/* aタグの標準設定へ */
a {
	text-decoration: none;
	color: #333;
	transition: all 0.3s ease-in-out;
}

/* aタグホバー時の挙動 */
a:hover {
	opacity: .6;
}

/* 余白なし */
ul {
	padding-left: initial;
}

/* 余白なし */
@media screen and (max-width: 834px) {
    .article ul, .article ol {
	padding-left: initial;
    }
}

/* style非表示 */
ul,
li,
ol {
	list-style: none;
}

/* 非表示 */
.date-tags,
.footer-meta,
.toc,
h1.entry-title,
.logo {
	display: none;
}

/* ヘッダーナビ折り返しなし */
.navi-in > ul {
	flex-wrap: nowrap;
}

.navi-in a {
	font-weight: 700;
}

/* ヘッダーナビにボーダー */
.navi-in .item-label {
	border-right: 1px solid #333;
}

/* ヘッダーナビ左端のみボーダー*/
.navi-in > ul > li:first-child .item-label {
	border-left: 1px solid #333;
}

/* スライダーのずれ調整 */
@media screen and (max-width: 1023px) {
    .admin-bar:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
        margin-top: calc(65px - var(--wp-admin--admin-bar--height));
    }
}

/* h2のレイアウト */
.article h2 {
	font-size: 30px;
	margin-bottom: 0;
	padding-bottom: 5px;
	background: transparent;
/* 	max-width: 100%; */
}

@media screen and (max-width: 768px) {
/* h2のレイアウト */
.article h2 {
	font-size: 20px;
}
	
@media screen and (max-width: 480px) {
	/* h2のレイアウト */
    .article h2 {
        padding: 0.6em 0.2em;
    }
}
	
	/* テキストのレタースペーシング */
p.has-text-align-center.has-text-color.has-link-color .fz-16px {
	font-size: 14px;
}
}

/* h3のレイアウト */
.article h3 {
	border: none;
	font-size: 25px;
	padding-inline: 0;
}

@media screen and (max-width: 768px) {
/* h3のレイアウト */
.article h3 {
	font-size: 17px;
	}
}

/* h4のレイアウト */
.article h4 {
	border: none;
}

/* 余白付与 */
.l-content {
	padding-inline: 15px;
}

/* 画面幅の調整 */
.l-width {
	max-width: 1280px;
	margin-inline: auto;
}

/* フォントサイズ調整 */
.l-font-size__m {
	font-size: 30px;
}

@media screen and (max-width: 768px) {
	.l-font-size__m {
	font-size: 18px;
}
	
	.l-font-size__m span.fz-32px {
		font-size: 18px;
	}
}

/* TEL画像に丸みをつける */
.l-radius img {
	border-radius: 3px;
}

/* ホバー時の崩れ調整 */
a.btn.btn-m.btn-circle {
	border: 1px solid transparent;
	background-clip: initial;
}

/* ホバー時の挙動 */
a.btn.btn-m.btn-circle:hover {
	background: #fff;
	color: #df5656;
	opacity: initial;
	border: 1px solid currentcolor;
}

/* ページへ戻るボタンのレイアウト */
.go-to-top-button {
	background: #FFB6C1;
	color: #fff;
    transition: all 0.3s ease-in-out;
}

/* ホバー時の挙動 */
.go-to-top-button:hover {
	color: #fff;
	opacity: .6;
}
/************************************
** header
************************************/
/* ヘッダー左右余白 */
.header-content {
	padding-inline: 15px;
	width: 100%;
}

/* ヘッダー左右余白 */
@media (min-width: 768px) {
	.header-content {
	padding-inline: 40px;
}
}

@media (max-width: 1023px) {
	.header-content {
	display: none;
}
}

/* font-size */
.header-text {
	font-size: 14px;
}

/* ヘッダー上部横並び */
.header-wrapper {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

/* キャッチコピー非表示 */
.header {
	display: none;
}

/* ロゴサイズ調整 */
.header-logo__img {
    display: block;
	width: 280px;
}

/* 電話、営業時間のフォントサイズ */
.header-contact__wrapper {
	font-size: 14px;
}

/* TELのサイズ */
.header-tel {
	display: block;
	width: 300px;
}

/* 営業時間のレイアウト */
.header-operation {
	line-height: 1.4;
	margin-top: 5px;
	font-weight: 700;
}

/************************************
** ヘッダーモバイル
************************************/
/* オープンバーの大きさ */
  label#navi-menu-open .navi-menu-icon .fas {
	  font-size: 25px;
}	

/* メニュー文字の配置 */
  label#navi-menu-open .menu-caption {
	  margin-top: -3px;
}

@media screen and (max-width: 1023px) {
/* ヘッダーの高さ */
    .mobile-header-menu-buttons {
        box-shadow: initial;
        height: 80px;
    }
/* ヘッダー上部の文字追加 */
	.mobile-header-menu-buttons::before {
		content: "訪問リハビリ『在宅鍼灸マッサージ さくら』にお任せください。";
		position: absolute;
		top: 10px;
		left: 10px;
		color: #333;
		font-size: 10px;
	}
/* ロゴのボタンレイアウト */
	.logo-menu-button {
		inset-block: 0;
		margin-block-start: auto;
		padding-inline: 10px;
        justify-content: flex-start !important;
	}
/* ナビメニューオープンのレイアウト */
	label#navi-menu-open {
		background: #DF5656;
		border-radius: 5px;
		width: 50px;
		height: 50px;
		padding-top: 7px;
		color: #fff; 
	}
}

/* ホバー時の挙動 */
.navi-in a:hover,
.info-link:hover {
	color: #FD8A71;
	background: initial;
}

/* ホバー時の挙動 */
/* .header-tel:hover {
	color: #fff;
	transform: translateY(2px);
} */

/* ホバー時の挙動 */
.header-logo__img:hover {
	opacity: .6;
}

/************************************
** ドロワー
************************************/
/* ドロワーメニュー上部のレイアウト */
.menu-close-button {
	background: #df5656;
	color: #fff;
}

/* 右からナビメニュー出現へ変更 */
.navi-menu-content {
  left: auto;
  right: 0;
  transform: translateX(101%);
}

/* ドロワーメニューのレイアウト */
.menu-drawer a {
	font-weight: 700;
    margin-top: 10px;
	position: relative;
    padding-left: 20px;
	border-bottom: 1px solid #df5656;
}

/* ドロワーメニューの疑似要素 */
.menu-drawer a::before {
    content: '';
	font-weight: 700;
	width: 8px;
	height: 3px;
    display: inline-block;
	position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
	background: #df5656;
}

/* ドロワーコンテントを広げる */
@media screen and (max-width: 480px) {
    .menu-content {
        max-width: 100%;
    }
}

/************************************
** top
************************************/
/* スライダーの幅 */
.pc-main {
	width: 95%;
	margin-inline: auto;
}
/* スライダーSP非表示 */
.sp-main {
	display: none;
}

/* レスポンシブ時の表示 */
@media screen and (max-width: 480px) {
.pc-main {
	display: none;
	}
	
.sp-main {
	display: block;
	}
}

@media screen and (min-width: 480px) {
	.hidden-pc {
		display: none;
	}
}

/* 疑似要素の基点 */
.l-after {
	position: relative;
}

/* 見出しレイアウト */
h2.wp-block-heading.has-text-align-center.l-after {
	padding-bottom: 20px;
}

/* 疑似要素配置 */
.l-after::after {
    content: "";
    position: absolute;
    bottom: 0px;
    left: 50%;
    transform: translateX(-50%);
	background: #df5656;
    width: 60px;
    height: 3px;
}

/* 疑似要素の基点 */
.l-before {
	position: relative;
	padding-left: 30px;
}

/* 疑似要素配置 */
.l-before::before {
	content: "";
    position: absolute;
    top: 2.5px;
    left: 0;
    background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/01/776bc099dc4d16754f7cdaada257425d.png') no-repeat center center / contain;
    width: 25px;
    height: 25px;
}

@media screen and (min-width: 782px) {
	figure.wp-block-image.show-sp {
		display: none;
	}
}

@media screen and (max-width: 781px) {
	.wp-block-column.hidden-sp {
		display: none;
	}
}


/* grid中央寄せ */
.wp-block-group.is-layout-grid.wp-container-core-group-is-layout-9.wp-block-group-is-layout-grid {
	place-items: center;
}

/* gridの余白 */
@media screen and (max-width: 900px){
.wp-block-group.is-layout-grid.wp-container-core-group-is-layout-9.wp-block-group-is-layout-grid,
.wp-block-group.is-layout-grid.wp-container-core-group-is-layout-8.wp-block-group-is-layout-grid {
	gap: 5px;
}
}

/* griditemのサイズ */
.wp-block-group.l-grid.is-layout-constrained.wp-block-group-is-layout-constrained {
	width: 225px;
    height: 225px;
    border-radius: 12px;
    padding: 13px;
    margin: 0;
	border: 3px solid #df5656;
}

/* griditemのサイズ */
@media screen and (max-width: 768px){
.wp-block-group.l-grid.is-layout-constrained.wp-block-group-is-layout-constrained {
	width: 140px;
    height: 140px;
    padding: 5px;
    margin: 0 3px 6px;
	}
}

/* griditemのサイズ */
@media screen and (max-width: 480px){
.wp-block-group.l-grid.is-layout-constrained.wp-block-group-is-layout-constrained {
	width: 100px;
    height: 100px;
    padding: 5px;
    margin: 0 3px 6px;
	}
}

/* item内のテキスト */
.wp-block-group.l-grid.is-layout-constrained.wp-block-group-is-layout-constrained p.has-text-align-center {
    color: #DE5757;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

/* item内のテキスト */
@media screen and (max-width: 768px) {
	.wp-block-group.l-grid.is-layout-constrained.wp-block-group-is-layout-constrained p.has-text-align-center {
		font-size: 16px;
	}
 /* item内の改行 */
	br.hidden-sp {
	display: none;
	}
}

/* item内のテキスト */
@media screen and (max-width: 480px) {
	.wp-block-group.l-grid.is-layout-constrained.wp-block-group-is-layout-constrained p.has-text-align-center {
		font-size: 11px;
	}
}


@media screen and (min-width: 769px) { 
/* item内の改行 */
 br.show-sp {
	display: none;
	}
}

/* 相談の問い合わせフォント*/
h2.wp-block-heading.has-text-align-center.l-size.has-text-color.has-link-color {
	font-size: 35px;
}

/* 相談の問い合わせフォント*/
@media screen and (max-width: 767px) {
h2.wp-block-heading.has-text-align-center.l-size.has-text-color.has-link-color {
	font-size: 22px;
}
}

/* ポイントのセクション背景 */
.l-bg-color {
background: rgba(255, 192, 203, 0.3);
}

/* ポイントボックスのレイアウト */
.point-box__head {
	width: 120px;
    height: 120px;
	border-radius: 50%;
    background: #df5656;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
	color: #fff;
	font-weight: 700;
	margin-inline: auto;
	position: relative;
	margin-bottom: 40px;
	letter-spacing: 2.5px;
}

@media screen and (max-width: 767px) {
/* ポイントボックスのレイアウト */
.point-box__head {
	width: 90px;
    height: 90px;
	margin-bottom: 25px;
}
}

/* ポイントのフォント */
.point-box__head-text {
	font-size: 14px;
}

@media screen and (max-width: 767px) {
/* ポイントのフォント */
.point-box__head-text {
	font-size: 12px;
}
}

/* 数字のフォント */
.point-box__head-number {
	font-size: 50px;
	line-height: 1;
}		

@media screen and (max-width: 767px) {
	/* 数字のフォント */
	.point-box__head-number {
	font-size: 40px;
	line-height: 1;
}
}

@media screen and (max-width: 781px) { 
/* カラムの上下反転レイアウト */
.l-bg-color .l-column__reverse {
	flex-direction: column-reverse;
}
 }

/* columnのレイアウト */
.wp-block-columns.l-bg-color._type2 {
	padding: 20px;
	background: #fff;
	border-radius: 16px;
}

/* columnのレイアウト */
@media screen and (max-width: 781px) { 
.wp-block-columns.l-bg-color._type2 {
	padding: 15px 15px;
}
}

/* h3のフォント*/
.l-left h3.wp-block-heading,
.l-left-reverse h3.wp-block-heading {
	font-size: 29px;
}

@media screen and (max-width: 781px) { 
/* h3のフォント*/
.l-left h3.wp-block-heading,
.l-left-reverse h3.wp-block-heading {
	font-size: 24px;
}
}

/* タイムラインの余白 */
.wp-block-cocoon-blocks-timeline {
	margin-top: 55px;
}

/* タイムライン枠の余白 */
.timeline-box {
	padding-inline: 15px;
}

/* stepのcolor変更 */
.timeline-item-label {
	color: #df5656;
}

ul.timeline {
	position: relative;
}

ul.timeline::before {
	content: "";
	position: absolute;
	right: 0px;
	top: 50%;
	transform: translateY(-50%);
	width: 50%;
	height: 75%;
	background: url("https://zaitaku-sakura.com/wp-content/uploads/2025/03/f4205a7fc8c643dc3b86b8c5b1e653d7-1.png")no-repeat center center / contain;
}

@media screen and (max-width: 625px) {
	ul.timeline::before {
		height: 40%;
	}
}

@media screen and (max-width: 480px) {
	ul.timeline::before {
		width: 65%;
	}
}

/* ボーダーの上にタイトル配置 */
p.has-text-align-center.l-head__style {
	margin-top: -42px;
    background: #fff;
    width: 400px;
	font-size: 25px;
	border-radius: 5px;
}

/* 画像のレイアウト調整 */
p.has-text-align-center.l-head__style img {
	vertical-align: middle;
}

@media screen and (max-width: 480px) {
	/* ボーダーの上にタイトル配置 */
p.has-text-align-center.l-head__style {
    width: 280px;
	margin-top: -36px;
	font-size: 17px;
}
}

/* column内タイトルのレイアウト */
h3.wp-block-heading.l-title__style {
    background: #df5656;
    border-radius: 5px;
    color: #fff;
	font-size: 20px;
	padding: 9px 10px;
	line-height: 1.4;
	height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* 疑似要素の基点と配置 */
li.l-list__style {
	position: relative;
	padding-left: 16px;
}

/* 疑似要素のレイアウト */
li.l-list__style::before {
	position: absolute;
	content: "";
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background: #df5656;
	left: 0;
	top: 9px;
}

/* 画像背景タイプ2 */
.l-bg._type2 {
	background:#FFDFE5;
}

/* ポイントのセクション背景 */
.l-bg-color._color2 {
background: rgba(255, 192, 203, 0.5);
}

/* gridの円のサイズ */
.wp-block-group.l-grid2.is-layout-constrained.wp-block-group-is-layout-constrained {
	background: #fff;
    width: 200px;
    height: 200px;
    border-radius: 50%;
/* 	margin: 0 10px 15px; */
	border: 3px solid #DE5757;
/* 	padding: 10px; */
}

/* gridの円のサイズ */
@media screen and (max-width: 480px){
.wp-block-group.l-grid2.is-layout-constrained.wp-block-group-is-layout-constrained {
	width: 140px;
    height: 140px;
	}
}

/* gridの円のボーダー付与 */
.l-grid__border {
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
    line-height: 1.6;
}

/* gridの円内のテキスト */
.wp-block-group.l-grid2.is-layout-constrained.wp-block-group-is-layout-constrained p.has-text-align-center {
	background: #fff;
    border-radius: 50%;
    color: #DE5757;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
}

/* gridの円内のテキスト */
@media screen and (max-width: 480px) {
	.wp-block-group.l-grid2.is-layout-constrained.wp-block-group-is-layout-constrained p.has-text-align-center {
		font-size: 15px;
	}
}

/* gridを中央寄せ */
.wp-block-group.l-grid__style2 {
	place-items: center;
}

/* gridのレスポンシブ */
@media screen and (max-width: 849px) {
.wp-block-group.l-grid__style2 {
	grid-template-columns: repeat(2, 1fr);
	gap: 10px;
}
}

/* columnのレイアウト */
.l-column__style {
	border: 2px solid #df5656;
    border-radius: 16px;
    padding: 25px 15px;
    background: #FFF;
	position: relative;
} 

/* point-headのサイズ */
.point-box__head._size-s {
	width: 80px;
	height: 80px;
	margin-top: initial;
	margin-bottom: initial;
	position: absolute;
    top: -35px;
    left: 50%;
    transform: translateX(-50%);
}

/* point-headの疑似要素非表示 */
.point-box__head._size-s::before {
	display: none;
}

/* point-headのフォント */
.point-box__head._size-s .point-box__head-text {
	font-size: 10px;
}

/* point-headのフォント */
.point-box__head._size-s .point-box__head-number {
	font-size: 30px;
}

/* point-textのフォント */
.l-column__text-size p.has-text-align-center {
	font-size: 22px;
}

@media screen and (782px <= width <= 1024px) {
	/* point-textのフォント */
	.l-column__text-size p.has-text-align-center {
		font-size: 17px;
	}
}

/* 患者様の声のホバー時の挙動 */
.voice-link:hover {
	opacity: .6;
	text-decoration: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 5px;
}

/* contentインナー */
.wp-block-group.l-inner {
	padding-inline: 15px;
}

.wp-block-group.l-price-content {
    padding-inline: 10px;
}

/* 疑似要素の基点 */
.l-price-content {
	position: relative;
}

/* 疑似要素付与外側のボックス */
.l-price-content::before {
	content: "";
    position: absolute;
    top: 25px;
    right: -25px;
    bottom: -25px;
    left: 25px;
    z-index: -1;
	background: #FFDFE5;
	border-radius: 16px;
}

@media screen and (max-width: 1250px) {
	.l-price-content::before {
		right: -6px;
		bottom: -6px;
	}
}

/* 中のコンテントの幅 */
.l-pseudo-element {
	position:relative;
	max-width: 840px;
}

/* 中のコンテントのボーダー */
.l-price-content .wp-block-group.is-layout-constrained.wp-block-group-is-layout-constrained {
	border: 4px double #DE5656;
	border-radius: 16px;
}

/* テーブルレイアウト */
figure.wp-block-table.l-table__custom table td:first-child {
	background: #df5656;
	color: #fff;
	border-radius: 6px 0 0 6px;
	border-color: transparent;
}

/* テーブルレイアウト */
figure.wp-block-table.l-table__custom table td:last-child {
	background: #f0f0f0;
	border-right: none;
}

/* テーブルレイアウト */
figure.wp-block-table.l-table__custom table tr:first-child td:last-child {
	border-radius: 0 6px 0 0;
}

/* テーブルレイアウト */
figure.wp-block-table.l-table__custom table tr:last-child td:last-child {
	border-radius: 0 0 6px 0;
}

/* border-color */
table:not(.has-border-color) :where(th, td) {
	border-color: #fff;
}

/* エリアテキストのレイアウト */
p.l-area__link {
    border-bottom: 2px solid #DF5656;
}

/* エリアテキストのfont-size */
@media screen and (max-width: 768px) {
	p.l-area__link .fz-24px,
	p.has-text-align-center.l-style._size-m .fz-24px {
		font-size: 19px;
	}
}

/* エリア県テキスト */
.l-area__link span.l-color {
	color: #Df5656;
}

/* 施設リストの幅指定 */
ul.wp-block-list.l-position {
	max-width: 550px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

/* 施設リストのレイアウト */
@media screen and (max-width: 546px) {
	ul.wp-block-list.l-position {
    grid-template-columns: repeat(1, 1fr);
}
}

/************************************
** contactform
************************************/
.l-inner {
	padding-inline: 10px;
}

/* contactformのレイアウト */
.contact__items {
  margin-top: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 32px;
}
@media screen and (min-width: 768px) {
  .contact__items {
    margin-top: 51px;
    max-width: 1000px;
    margin-inline: auto;
  }
}

/* headとinputのレイアウト */
.contact-control {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}

@media screen and (min-width: 768px) {
  .contact-control {
    gap: 4px;
  }
}

/* headのレイアウト */
.contact-control__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}

@media screen and (min-width: 768px) {
  .contact-control__head {
    -ms-flex-negative: 0;
        flex-shrink: 0;
    gap: 16px;
  }
}

/* ラベルのフォントサイズ */
@media screen and (min-width: 768px) {
  .contact__label {
    font-size: 18px;
  }
}

/* 必須のラベルのレイアウト */
.form-label__required {
  font-size: 12px;
  color: #fff;
  background: #DF5656;
  border-radius: 6px;
  padding: 2px 7px 3px 7px;
}
@media screen and (min-width: 768px) {
  .contact-control__input {
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
}

/* 入力欄のレイアウト */
.contact__input {
  width: 100%;
  height: 56px;
  background: #fff;
  border: 1px solid #2f2f2f;
  font-size: 16px;
  padding: 16px;
  -webkit-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}

@media screen and (min-width: 768px) {
  .contact__input {
    height: 50px;
    padding: 13px 13px 14px 23px;
  }
}

/* 入力欄にフォーカスがあたったときのレイアウト */
.contact__input:focus {
  outline: #DF5656 1px;
  -webkit-box-shadow: 0px 0px 4px 0px #DF5656;
          box-shadow: 0px 0px 4px 0px #DF5656;
  border-color: #DF5656;
}

/* お問い合わせ欄のレイアウト */
.contact__textarea {
  width: 100%;
  background: #fff;
  height: 160px;
  resize: vertical;
  font-size: 16px;
/*   border: 1px solid #2f2f2f; */
  padding: 13px 13px 13px 16px;
  -webkit-transition: ease-in-out 0.3s;
  transition: ease-in-out 0.3s;
}

@media screen and (min-width: 768px) {
  .contact__textarea {
    padding: 13px 13px 14px 23px;
  }
}

/* テキストエリアにフォーカスがあたったときのレイアウト */
.contact__textarea:focus {
  outline: #B0012D 1px;
  -webkit-box-shadow: 0px 0px 4px 0px #DF5656;
          box-shadow: 0px 0px 4px 0px #DF5656;
  border-color: #DF5656;
}

/* 確認チェックボックスにフォーカスがあたったときのレイアウト */
input.form-confirmation:focus {
	  outline: #DF5656 1px;
  -webkit-box-shadow: 0px 0px 4px 0px #DF5656;
          box-shadow: 0px 0px 4px 0px #DF5656;
  border-color: #DF5656;
}

/* 確認チェックボックスのレイアウト */
span.wpcf7-list-item {
	margin-left: 0rem;
	margin-top: 1rem;
}

/* 確認チェックボックスのレイアウト */
@media (min-width: 1700px) {
	span.wpcf7-list-item {
	margin-left: 9em;
	margin-top: 1rem;
}
}

/* contactボタンの配置 */
.contact__button {
  margin-top: 40px;
  text-align: center;
}

/* contactボタンのレイアウト */
input[type=submit] {
    display: inline-block;
	width: 300px;
    min-width: 300px;
    padding: 15px 4px;
    background: #DF5656;
    color: #fff;
    font-size: 18px;
    letter-spacing: 0.9px;
    font-weight: 700;
    text-align: center;
    -webkit-transition: ease-in-out 0.3s;
    transition: ease-in-out 0.3s;
    position: relative;
}

/* 無効時のボタンレイアウト */
input[type=submit]:disabled {
	background: #EBEBE4;
	color: #808080;
	border-color: currentcolor;
	outline: 2px solid transparent;
}

/* 無効時にホバーが効かないように */
input[type=submit]:disabled:hover {
	cursor: not-allowed;
}

/* 無効時にホバーを効かないように */
input[type=submit]:not(:disabled):hover {
	background: #fff;
	color: #DF5656;
	border: 1px solid currentcolor;
}

/* 確認チェックボタンの配置調整 */
/* @media (max-width: 1024px) {
	span.wpcf7-form-control.wpcf7-acceptance span.wpcf7-list-item {
	margin-left: 0;
}
} */
span.wpcf7-form-control.wpcf7-acceptance {
	display: block;
	max-width: 1000px;
	margin-inline: auto;
}

/* 送信ボタン下余白調整 */
.l-contact-box .contact__button {
	margin-bottom: 1.8rem !important;
}

/* 送信後メッセージ下の余白調整 */
.wpcf7 form .wpcf7-response-output {
	margin: 2em 0.5em 1rem !important;
}

/************************************
** アイキャッチ
************************************/
/* 固定ページeyecatchのレイアウト調整 */
.lower__top {
  margin-inline: auto;
  position: relative;
  width: clamp(335px, 100%, 95%);
/*   height: 50vw; */
  height: 50vw;
  overflow: hidden;
}

/* 固定ページeyecatchのレイアウト調整レスポンシブ */
@media screen and (min-width: 768px) {
  .lower__top {
    height: 500px;
/* 	height: 33vw; */
  }
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top-group {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 100%;
  text-align: left;
}

/* 固定ページeyecatchのレイアウト調整 */
.lower__top-title {
  background: #fff;
  font-size: 24px;
  font-weight: 700;
  color: #df5656;
  display: inline-block;
  padding-inline: 25px;
  clip-path: polygon(15% 0, 100% 0%, 85% 100%, 0% 100%);
}

/* 固定ページeyecatchのレイアウト調整レスポンシブ */
@media screen and (min-width: 768px) {
  .lower__top-title {
    font-size: 42px;
    padding-inline: 50px;
  }
}

/* マッサージページeyecatchの背景 */
.lower__top-massage {
  background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/02/639a58b81ce3ac0b572a69271f8d69b0.jpg') no-repeat center center / cover;
}

/* 鍼灸ページeyecatchの背景 */
.lower__top-harikyu {
  background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/01/31423526_m.jpg') no-repeat center center / cover;
}

/* エリアページeyecatchの背景 */
.lower__top-area {
  background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/03/22679638_m-1.jpg') no-repeat center 65% / cover;
}

/* 会社概要ページeyecatchの背景 */
.lower__top-work {
  background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/03/5e95dac26e5184ff6a2ebf2c3206eb62.png') no-repeat center 35% / cover;
}

/* 求人情報ページeyecatchの背景 */
.lower__top-recruit {
	background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/03/26592625_m-1.jpg') no-repeat center 30% / cover;
}

/* お問い合わせページeyecatchの背景 */
.lower__top-contact {
  background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/03/2177398_m.jpg') no-repeat center center / cover;
}

/* プライバシーポリシーページeyecatchの背景 */
.lower__top-policy,
.lower__top-rules {
  background: url('https://zaitaku-sakura.com/wp-content/uploads/2025/03/5e95dac26e5184ff6a2ebf2c3206eb62.png') no-repeat center 35% / cover;
}

/* パンくずとアイキャッチの余白なくす */
.content-top {
	margin-bottom: 0;
}

	/* Firefoxのみ */
	@supports (-moz-appearance:none) {
		.content-top {
			margin-top: 0;
		}
	}
	/* Firefoxのみ */
	@media screen and (min--moz-device-pixel-ratio:0) {
		.content-top {
			margin-top: 0;
		}
	}
	
	/* Firefoxのみ */
	@-moz-document url-prefix() {
		.content-top {
			margin-top: 0;
		}
	}


/* パンくずとアイキャッチの余白なくす */
.widget_text.widget.widget-content-top.widget_custom_html {
    margin-bottom: 0;
}

/************************************
** パンくず
************************************/
/* パンくずレイアウト */
div#breadcrumb {
/*     background: #df5656;
	margin-top: 0; */
	width: clamp(335px, 100%, 1400px);
}

/* パンくずのcolor変更 */
.breadcrumb div,
.breadcrumb-caption {
/* 	color: #fff; */
}

/************************************
** 訪問マッサージ
************************************/

/* columnのレイアウト */
.l-inner__column {
	max-width: 1130px;
	margin-inline: auto;
}

@media screen and (min-width: 782px) {
	.wp-block-columns.l-column__gap {
	gap: 1rem;
	}
}

@media screen and (min-width: 1200px) {
	.wp-block-columns.l-column__gap {
	gap: 2rem;
	}
}

/************************************
** 訪問はりきゅう
************************************/
/* ご注意と横並び */
.l-column__position {
	justify-content: center;
}


/************************************
** 求人情報
************************************/
/* tableのサイズ */
figure.wp-block-table.l-table__custom._type2 table {
	width: 100%;
}

/* tableのtdをcolumn */
figure.wp-block-table.l-table__custom._type2 tr {
	display: flex;
	flex-direction: column;
}

/* 丸みなくす */
figure.wp-block-table.l-table__custom._type2 table td {
	border-radius: 0;
}

/* TELのテキスト */
.l-text__custom {
	font-size: 20px;
	color: #df5656;
}

/* 求人お問い合わせフォームテキスト */
.l-text__custom._type2 {
	font-size: 26px;
}

/* こちらの文字のcolor */
a.l-color,
span.l-color {
	color: #df5656;
}
/************************************
** 会社概要
************************************/
/* pinkテキストのフォント */
.l-text__size {
	font-size: 23px;
}

@media screen and (max-width: 781px) {
	.l-text__size {
	font-size: 19px;
	}
}

/* 会社、代表者のテキストフォント */
.l-official__title {
	font-size: 15px;
}

@media screen and (max-width: 781px) {
	.l-official__title {
	font-size: 12px;
	}
}

/* 代表者のテキスト */
.l-text__name {
	font-size: 35px;
}

@media screen and (max-width: 781px) {
	.l-text__name {
	font-size: 25px;
	}
}

/* tableのサイズ */
figure.wp-block-table.is-style-regular.l-work__table table,
figure.wp-block-table.is-style-regular.l-history__table table {
	width: 100%;
	margin-inline: auto;
	border: 2px solid #FFECEF;
}

figure.wp-block-table.is-style-regular.l-work__table table td:first-child,
figure.wp-block-table.is-style-regular.l-history__table table td:first-child {
	background: #df5656;
	color: #fff;
	font-weight: 700;
}

/* ボーダー下線付与 */
figure.wp-block-table.is-style-regular.l-work__table table tbody tr,
figure.wp-block-table.is-style-regular.l-history__table table tbody tr{
	border-bottom: 2px solid #FFECEF;
}

/* レスポンシブ時のレイアウト */
@media screen and (max-width: 600px) {
	figure.wp-block-table.is-style-regular.l-work__table table tbody tr td:first-child,
	figure.wp-block-table.is-style-regular.l-history__table table tbody tr td:first-child {
		width: 30%;
	}
}

/************************************
** プライバシーポリシー
************************************/
/* 見出しのレイアウト */
.wp-block-group.l-content.l-policy h2.wp-block-heading {
	padding-inline: initial;
	max-width: var(--wp--style--global--content-size);
}

/* テキストの余白 */
.wp-block-group.l-content.l-policy p {
	margin-top: 20px;
}

/* レイアウト調整 */
.wp-block-group.l-content.l-policy ul,
.wp-block-group.l-content.l-policy ol { 
	padding-left: 40px;
}


/* リストスタイルを数字 */
.wp-block-group.l-content.l-policy ol li {
	list-style-type: decimal;
}


/* リストスタイルを表示 */
.wp-block-group.l-content.l-policy ul,
.wp-block-group.l-content.l-policy li {
	list-style: initial;
}

/************************************
** footer
************************************/
/* フッター余白削除 */
.footer {
	padding-inline: 0;
	padding-bottom: 0;
}

/* フッター背景 */
.footer-bottom {
	background: #df5656;
}

/* ウィジェットエリアの幅 */
.footer-widgets {
	max-width: 1280px;
}

@media screen and (max-width: 834px) {
    .footer-widgets {
        display: block;
    }
}

/* フッターコンテントの余白 */
.footer-content {
	padding-inline: 0;
	display: block;
}

/* フッターロゴ上テキスト */
.footer-text {
    font-size: 12px;
}

@media screen and (max-width: 480px) {
/* フッターロゴ上テキスト */
.footer-text {
    font-size: 11px;
}	
}

/* レスポンシブ時中央寄せ */
@media screen and (max-width: 1023px) {
	.footer-text {
    text-align: center;
}
}

/* フッターエリア左のロゴとお問い合わせのレイアウト */
.footer-wrapper {
    display: flex;
    justify-content: center;
    flex-direction: column;
    gap: 15px;
    margin-top: 5px;
	align-items: initial;
}

/* レスポンシブ時中央寄せ */
@media screen and (max-width: 1023px) {
	.footer-wrapper {
		align-items: center;
	}
}

/* フッターに分割用 */
.footer-left, .footer-center {
	width: 50%;
}

/* ウィジェットright非表示 */
.footer-right {
	display: none;
}

/* フッターメニューのレイアウト */
ul#menu-footer-menu {
    display: grid;
	grid-template-columns: repeat(2, 1fr);
	margin-inline: auto;
}

/* フッターメニューホバー時の挙動 */
.widget_nav_menu ul li a:hover {
	background: initial;
	color: #df5656;
}

/* フッターナビ非表示 */
nav#navi-footer {
    display: none;
}

/* コピーライトcolor */
.copyright {
	color: #fff;
}

/* コピーライトの配置 */
.footer-bottom.fdt-left-and-right .footer-bottom-content {
	justify-content: center;
	max-width: 1130px;
    margin-inline: auto;
}

/* SNSレイアウト */
.footer-sns__items {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 10px;
}

/* snsホバー時の挙動 */
.footer-sns__item a {
	transition: opacity .3s;
}

/* snsホバー時の挙動 */
.footer-sns__item a:hover {
	opacity: .6;
}

/* snsのサイズ */
.footer-sns__item a img {
	width: 40px;
	height: 40px;
}

/* 固定の予約ご相談リンク */
.reserve-content {
	position: fixed;
	top: 50%;
/* 	transform: translateY(-30%); */
	right: 0;
	z-index:1000;
	width: 92px;
	transition: opacity .3s;
}

/* 固定の予約ご相談リンクレスポンシブ */
@media screen and (max-width: 1023px) {
	.reserve-content {
	position: fixed;
	top: initial;
	transform: initial;
	bottom: 0;
	right: initial;
	z-index: 1000;
	width: 100%;
	background: #fff;
	}
}

/* 固定の予約ご相談リンクを縦並び */
.reserve-inner {
	display: flex;
	flex-direction: column;
	gap: 3px;
}

/* 固定の予約ご相談リンクを横並び */
@media screen and (max-width: 1023px) {
	.reserve-inner {
	align-items: center;
	justify-content: center;
	}
}

/* 画像を縦並び */
.reserve-img__content {
	display: flex;
	flex-direction: column;
	gap: 2px;
}


/* 画像を横並び */
@media screen and (max-width: 1023px) {
.reserve-img__content {
	flex-direction: row;
}
}


/* 固定の予約ご相談リンクタイトル非表示 */
.reserve-title._sp {
	display: none;
}


/* 固定の予約ご相談リンクタイトル表示 */
@media screen and (max-width: 1023px) {
	.reserve-title._sp {
	display: block;
	font-size: 30px;
	font-weight: 700;
}
}

/* 固定の予約ご相談リンクタイトルフォント */
@media screen and (max-width: 480px) {
	.reserve-title._sp {
	font-size: 25px;
}
}

/* 固定の予約ご相談リンクタイトルフォント */
.reserve-title._pc {
	font-size: 16px;
    text-align: center;
    font-weight: 700;
    line-height: 1.4;
	text-shadow: 1px 1px 0 #fff, -1px -1px 0 #fff, -1px 1px 0 #fff, 1px -1px 0 #fff;
}

/* 固定の予約ご相談リンクタイトル非表示 */
@media screen and (max-width: 1023px) {
	.reserve-title._pc {
	display: none;
}
}

/* 固定の予約ご相談リンクサイズ */
.reserve-image img {
/* 	width: 55px; */
	width: 100%;
/* 	height: 104px */
}

/* 固定の予約ご相談リンクサイズ */
@media screen and (max-width: 1023px) {
	.reserve1 .reserve-image img,
	.reserve2 .reserve-image img,
	.reserve3 .reserve-image img {
	width: 100%;
	height: 50px;
}

}

/* 固定の予約ご相談リンクサイズ */
@media screen and (max-width: 480px) {
	.reserve1 .reserve-image img {
		width: 185px;
	}

	.reserve2 .reserve-image img {
		width: 95px;
	}

	.reserve3 .reserve-image img {
		width: 85px;
	}
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}
