@charset "UTF-8";
/*
Theme Name:Seitai_pack-rwd
Description:整体院HPテンプレート(RWD-ウェブ版CSS)
Author:ユアテイスト
Author URI:http://yourtaste.jp/
Version:2.0
*/

* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	border: none;
	list-style-type: none;
}
img {
	width: 100%;
	height: auto;
	vertical-align: top;
}
iframe {
	width: 100%;
}

html {
	font-size: 10px;
}

/* 理由説明 三分割ブロック：いちばん薄いグリーン */
.reason_box {
  background: #f6faf4;
  padding: 26px 28px;
  margin: 22px 0;
  border-radius: 10px;
  line-height: 1.9;
}

body {
	background: #fff;
	color: #333;
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ pron w3', 'hiragino kaku gothic pron', 'メイリオ', 'Meiryo', sans-serif;
	font-size: 1.4rem;
	line-height:1.6;
}

.sp_inline,
.sp_block,
.sp_flex {
	display: none !important;
}

.hover:hover {
	opacity: 0.8;
}

#blog-body {
	width:100%;
	background:url(https://nakano-seitai.jp/wp-content/themes/seitai_pack-rwd/image/c_content/bg3.gif) repeat-y center;
}
.clear {clear:both;}
.nd {display:none;}
.align-l {text-align:left;}
.align-r {text-align:right;}
.align-c {text-align:center;}

a { color: #33597f;}
a:hover { text-decoration: none;}

.f-f00 {color:#f00;}
.f-f00-b {font-weight:bold;background:#f00;color:#fff;padding:4px;margin:8px;}
.f-f60-15 {color:#f60;font-size:15px;}
.f-f60 {color:#f60;}
.pictbox {margin:8px 0px 8px 0px;}

.box-attention_c {background:#eee;margin:16px 48px 16px 48px;padding:16px;font-size:12px;text-align:center;}
.box-attention_c strong {color:#f00;font-weight:bold;}
.box-attention_c2 {background:#eee;margin:16px 48px 16px 48px;padding:16px;font-size:12px;}
.box-attention_c2 strong {color:#f00;font-weight:bold;}

.pictbox-1 {margin:16px 0px 16px 0px;}

#contactbox-m1 {background:url(https://nakano-seitai.jp/wp-content/uploads/2025/12/090-3800-0374.png) no-repeat;}
#contactbox-m2 {background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/contactbox-m2.png) no-repeat;}
.contact-list1 {margin:16px;}
.contact-list1 span {color:#6cf;font-size:13px;}
.contact-list1 dt {font-size:15px;font-weight:bold;color:#f60;}
.contact-list1 dd {padding:8px 0px 8px 16px;}

.contactbox-2 {width:616px;height:390px;background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/contactbox-2.png) no-repeat;}
.contactbox-2 div {padding-top:320px;}
.contactbox-2 span {display:none;}
.contactbox-2 li {width:616px;height:80px;display:block;}
.contactbox-2 a {width:616px;height:80px;display:block;}

#sejyutu-box {width:616px;}
#sejyutu-box .title-1 span {display:none;}
#sejyutu-box h2 {display:block;width:616px;height:48px;margin:16px 0px 4px 0px;background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/appointment-text2.png) no-repeat;}
#sejyutu-box table {width:616px;}
#sejyutu-box th {border-bottom:dotted 2px #ccc;font-size:16px;font-weight:bold;background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/appointment-text2_bg.png) no-repeat top;}
#sejyutu-box td {border-bottom:dotted 2px #ccc;font-size:16px;font-weight:bold;padding:8px;}
#sejyutu-box span {display:block;padding:12px 0px 12px 48px;}
#sejyutu-box div {width:616px;padding:8px 0px 8px 0px;text-align:center;font-weight:bold;color:#f00;background:#fcf;}

/* header
******************************************
 */
#header {
	position: relative;
	width: 100%;
	padding: 0 calc((100% - 920px) / 2);
	background: linear-gradient(#dbf7ff, #d3f8b9);
}
#header:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: no-repeat right / auto 100% url(image/header/bg.png);
}
#header .header_text {
	position: absolute;
	z-index: 1;
	width: calc(920px - 70px);
	margin: 0 30px 0 40px;
	padding: 4px 80px;
	color: #fff;
	font-size: 1.4rem;
	font-weight: 500;
	background: #77ad13;
}
#header .header_text:after {
	content: "";
	position: absolute;
	top: 0;
	left: 100%;
	border-left: 30px solid #77ad13;
	border-bottom: 30px solid transparent;
}
#header .header_text > strong {
	color: #522900;
}
#header .header_inner {
	display: flex;
	position: relative;
	z-index: 1;
	align-items: flex-end;
	justify-content: space-between;
	width:100%;
	container-type:inline-size;
}
.hero-image {
  width: 100%;
  height: auto;
  display: block;
}

/* お知らせオーバーレイ */
.notice-overlay {
  position: absolute;
  /* CTAボタンの上に配置（例：下から30%の位置） */
  bottom: 26%;
  left: 50%;
  transform: translateX(-50%);
  
  /* 固定幅の表示エリア（親要素の80%） */
  width: 80%;
  max-width: 1000px;

  text-align: center;
}

/* 自動調整フォントサイズ */
.notice-text {
  margin: 0;
  color: #333;
  font-weight: bold;
  
  /* コンテナ幅に応じたフォントサイズ */
  font-size: clamp(10px, 2cqi, 18px);
  
  /* 1行に収まらない場合の対策 */
  line-height: 1.4;
  overflow-wrap: break-word;
  word-break: break-word;
}

/* 文字数が多い場合に2行まで許容し、それ以上は省略 */
.notice-text {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

#header .main_visual {
	position: relative;
}
#header .main_visual .text_block {
	position: absolute;
	bottom: 20px;
	right: 0;
	width: 300px;
	color: #522900;
	font-family: 'Noto Serif JP', serif;
	font-size: 1.6rem;
	font-weight: 700;
}
#header .main_visual .text_block .sub_text {
	margin-top: 6px;
	font-size: 1.2rem;
	line-height: 1;
}
#header .tel_text {
	margin-top: 6px;
}
#header .mail_button {
	margin: 6px 0 20px;
}

.navi {
	background: #78ab3e;
}
.navi_list {
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	width: 920px;
	margin: 0 auto;
}
.navi_list > li {
	position: relative;
	width: 100%;
}
.navi_list > li:hover:before {
	background: #fff;
}
.navi_list > li + li:before {
	content: "";
	display: block;
	position: absolute;
	left: -1px;
	width: 1px;
	height: 100%;
	background: linear-gradient(#78ab3e 0, #78ab3e 20%, #fff 20%, #fff 80%, #78ab3e 80%, #78ab3e 100%);
}
.navi_list > li > a {
	display: block;
	position: relative;
	z-index: 1;
	padding: 10px;
	text-align: center;
	color: #fff;
	font-size: 1.4rem;
	text-decoration: none;
}
.navi_list > li > a:hover {
	background: #fff;
	color: #78ab3e;
}

.inner_navi_list,
.inner_navi_list.open {
	overflow: hidden;
	height: 0;
}

/* maincontent
******************************************
 */
#maincontent {
	display: flex;
	width: 920px;
	margin: 20px auto 0;
}

/* footer
******************************************
 */
#footer {
	margin-top: 40px;
}
#footer .footer_inner {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 20px calc((100% - 920px) / 2 + 20px);
	background: linear-gradient(#d2f5fb, #d7f6e7);
}
#footer .footer_inner:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: no-repeat right / auto 100% url(image/footer/footer_bg.png);
}
#footer .footer_inner h2 {
	position: relative;
	z-index: 1;
	width: 40%;
	line-height: 1;
}
#footer .information {
	position: relative;
	z-index: 1;
}
#footer address {
	padding:16px;
	color:#666;
	font-size: 1.1rem;
	font-style: normal;
	text-align: center;
}


/* sidebar
******************************************
 */
#sidecontent {
	width: 275px;
	margin-right: 20px;
	flex-shrink: 0;
}
#sidecontent .side_main_list > li {
	position: relative;
	width: 100%;
	height: 100px;
	background: #dffad7;
}
#sidecontent .side_main_list > li + li {
	margin-top: 20px;
}
#sidecontent .side_main_list > li.li_profile {
	background: no-repeat right bottom #dffad7 url("image/sidebar/profile.png");
}
#sidecontent .side_main_list > li:after {
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 20px;
	color: #78ab3e;
	font-family: "Font Awesome 5 Free";
	font-size: 5.5rem;
	font-weight: 400;
	vertical-align: middle;
	line-height: 1;
	transform: translate(0, -50%);
}
#sidecontent .side_main_list > li.li_blog:after {
	content: "\f518";
}
#sidecontent .side_main_list > li.li_qa:after {
	content: "\f059";
	right: 25px;
}
#sidecontent .side_main_list > li > a {
	display: flex;
	align-items: center;
	height: 100%;
	padding: 0 17px;
	color: #78ab3e;
	font-size: 2rem;
	font-weight: 700;
	text-decoration: none;
	text-shadow:2px 2px 0 #FFF, -2px -2px 0 #FFF,
				-2px 2px 0 #FFF, 2px -2px 0 #FFF,
				0px 2px 0 #FFF, 0 -2px 0 #FFF,
				-2px 0 0 #FFF, 2px 0 0 #FFF;
}
#sidecontent .menu_list {
	margin-top: 30px;
}
#sidecontent .menu_list > .li_title {
	padding: 0 17px;
	font-size: 2rem;
	font-weight: 700;
}
#sidecontent .menu_list > .li_link {
	border-bottom: 1px dashed #333;
}
#sidecontent .menu_list > .li_link > a {
	display: block;
	width: 100%;
	padding: 20px 10px;
	font-size: 1.4rem;
	line-height: 1;
	text-decoration: none;
}
#sidecontent .menu_list > .li_link > a:before {
	content: "\f054";
	display: inline-block;
	margin-right: 13px;
	color: #ff9900;
	font-family: "Font Awesome 5 Free";
	font-size: 1.6rem;
	font-weight: 400;
	vertical-align: middle;
	line-height: 1;
}
#sidecontent .side_info {
	margin-top: 30px;
}
#sidecontent .side_info .title {
	margin-bottom: 10px;
	padding: 0 17px;
	font-size: 2rem;
	font-weight: 700;
}
#sidecontent .side_info .side_info_inner {
	overflow-y: auto;
	height: 200px;
	padding: 10px;
	border: 1px solid #333;
}
#sidecontent .side_info .side_info_inner > p + p {
	margin-top: 1em;
}
#sidecontent .side_map {
	margin-top: 30px;
}
#sidecontent .side_map img {
	width: 100%;
}

/* content
******************************************
 */
#content {
	width: 625px;
}
#content.page_block {
	padding: 0 20px;
}
#content h2 {
	margin: 0 -20px 20px -20px;
	padding: 10px 20px;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	background: #78ab3e;
}
#content h3 {
	margin-bottom: 10px;
	color: #78ab3e;
	font-size: 1.8rem;
	font-weight: 700;
}
#content.page_block * + h2,
#content.page_block * + h3 {
	margin-top: 20px;
}
#content.page_block * + p {
	margin-top: 20px;
}

#content ul {
	margin-top: 20px;
}
#content ul > li {
	padding-left: 10px;
	border-left: 4px solid #ff9900;
}
#content ul > li + li {
	margin-top: 10px;
}

#content dl {
	margin-top: 20px;
	margin-bottom: 20px;
}
#content dt {
	color: #ff9900;
	font-size: 1.6rem;
	font-weight: 700;
}
#content dt + dd,
#content dd + dt {
	margin-top: 1em;
}

#content table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #808080;
}
#content * + table {
	margin-top: 20px;
}
#content table caption {
	background: #808080;
	color: #fff;
	font-weight: 700;
	text-align: left;
}
#content table caption,
#content th,
#content td {
	padding: 10px;
}
#content tr:nth-of-type(n+2) th,
#content tr:nth-of-type(n+2) td {
	border-top: 1px solid #808080;
}
#content th {
	background: #f2f2f2;
	text-align: left;
}

/* Sidecontent
******************************************
 */
.link-box1					{width:616px;text-align:right;margin:8px 0px 16px 0px;padding-bottom:16px;}
.link-box1 p				{float:right;}
.link-box1 a				{display:block;background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/icon-1.gif) no-repeat left;padding-left:16px;}

/* common
******************************************
 */
.content_block {
	width: 100%;
	padding: 0 20px;
}
* + .content_block {
	margin-top: 20px;
}
.content_block ul > li {
	font-size: 1.4rem;
}

.green_block {
	width: 100%;
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	border: 1px solid #78ab3e;
}
.green_block h2 {
	margin-bottom: 10px;
}
.green_block p,
.orange_block p,
.voice_a p {
	font-size: 1.4rem;
}
.green_block p + p,
.orange_block p + p,
.voice_a p + p {
	margin-top: 1em;
}
.orange_block,
.voice_a {
	width: 100%;
	margin-top: 20px;
	padding: 20px;
	background: #fff;
	border: 1px solid #ff9900;
}
.orange_block h4 {
	margin-bottom: 20px;
	color: #ff9900;
	font-weight: 700;
}

.green_bg_box,
.price-box {
	margin-top: 20px;
	padding: 20px;
	background: rgba(120, 171, 62, .3);
	font-size: 1.4rem;
}
.green_bg_box p + p,
.price-box p + p {
	margin-top: 10px;
	padding-top: 10px;
	border-top: 1px solid #78ab3e;
}

.harf_block {
	display: flex;
}
.harf_block > * {
	width: 50%;
}
.harf_block > * + * {
	margin-left: 20px;
}

.harf_list {
	display: flex;
	flex-wrap: wrap;
}
.harf_list > li {
	width: calc((100% - 10px) / 2);
	padding-left: 0 !important;
	border-left: none !important;
}
.harf_list > li +li {
	margin-top: 0 !important;
}
.harf_list > li:nth-of-type(even) {
	margin-left: 10px;
}

.contact_block {
	margin-top: 20px;
	padding: 20px;
	background: no-repeat right / auto 100% #fff url(image/common/contact_block_bg.png);
	border: 1px solid #78ab3e;
}
.contact_block .detail_box h2 {
	color: #78ab3e;
	font-size: 2rem;
	font-weight: 700;
}
.contact_block .detail_box p {
	display: inline-block;
	margin-top: 10px;
	padding: 4px 10px;
	background: rgba(120, 171, 62, .3);
	font-size: 1.2rem;
}
.contact_box {
    display: flex;
    flex-direction: column;              /* 縦方向に変更 */
    flex-wrap: wrap;                     /* 折り返しを許可 */
    justify-content: flex-start;         /* 上寄せに変更 */
    width: 100%;                         /* 固定幅を廃止し、柔軟性を確保 */
    max-width: 625px;                    /* 最大幅を制限 */
    margin: 15px auto 0;                 /* 中央寄せに変更 */
    padding: 20px;                       /* 内部余白を追加 */
    box-sizing: border-box;              /* パディングを幅に含める */
}
.contact_box .tel_item {
	text-align: right;
}
.contact_box .tel_item .hours {
	color: #522900;
	font-size: 1.2rem;
	line-height: 1.2;
}
.contact_box .mail_item {
	margin-left: 17px;
}

.campaign_block {
	margin-top: 20px;
}
.campaign_block h4 {
	margin-bottom: 20px;
	color: #ff9900;
	font-size: 1.8rem;
	font-weight: 700;
}
.campaign_block .campaign_name {
	padding: 16px;
	background: #78ab3e;
	border-radius: 2px 2px 0 0;
	color: #fff;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.2;
}
.campaign_block .inner {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	padding: 20px;
	background: no-repeat left / auto 100% #fff url(image/common/campaign_block_bg.jpg);
	border: 1px solid #78ab3e;
	border-radius: 0 0 2px 2px;
}
.campaign_box {
	color: #522900;
}
.campaign_box .clinic_name {
	padding-right: 120px;
	font-size: 1.6rem;
}
.campaign_box .course_name {
	padding-right: 120px;
	font-size: 2.2rem;
	line-height: 1.2;
}
.campaign_box .campaign_item {
	position: relative;
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #78ab3e;
	line-height: 1.2rem;
}
.campaign_box .campaign_item .conditions {
	margin-bottom: 10px;
	color: #78ab3e;
	font-size: 1.8rem;
}
.campaign_box .campaign_item .before_price,
.campaign_box .campaign_item .after_price {
	display: inline;
}
.campaign_box .campaign_item .before_price .price {
	font-size: 2.2rem;
}
.campaign_box .campaign_item .after_price .price {
	font-size: 4rem;
	font-weight: 700;
}
.campaign_box .campaign_item .off {
	position: absolute;
	top: -80px;
	right: 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 90px;
	height: 90px;
	background: #fff99e;
	border-radius: 50%;
	color: #78ab3e;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.2;
	text-align: center;
	transform: rotate(25deg);
}
.campaign_box .campaign_item .off .percent {
	font-size: 3rem;
}
.campaign_block .contact_box {
	margin-top: 20px;
}

/* contact
******************************************
 */
.information {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.information_list {
	display: flex;
	margin-top: 14px;
}
.information_list > li {
	min-width: 140px;
	background: #fff;
	border: 1px solid #78ab3e;
	border-radius: 2px;
	color: #78ab3e;
	font-size: 1.4rem;
	text-align: center;
}
.information_list > li + li {
	margin-left: 6px;
}
.hours {
	margin-top: 6px;
	color: #522900;
	font-size: 1.5rem;
	line-height: 1;
}
.tel_text {
	color: #522900;
	font-size: 2.6rem;
	line-height: 1;
}
.tel_text:before {
	content: "\f879";
	margin-right: 6px;
	color: #77ad13;
	font-family: "Font Awesome 5 Free";
	font-size: 2.0rem;
	font-weight: 400;
	vertical-align: bottom;
}
.mail_button {
	display: flex;
	padding: 8px 50px;
	background: #ff9900;
	border-radius: 2px;
	color: #fff;
	text-align: center;
	line-height: 1.2;
	text-decoration: none;
}
.mail_button:before {
	content: "\f0e0";
	display: inline-block;
	margin-right: 22px;
	font-family: "Font Awesome 5 Free";
	font-size: 3.0rem;
	font-weight: 400;
	vertical-align: bottom;
	line-height: 1;
}

/* Page : Index
******************************************
 */
.voice_box {
	display: block;
	position: relative;
}
.voice_box .text_item {
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 20px;
	background: rgba(255, 255, 255, .8);
	color: #333;
	text-decoration: none;
}
.voice_box .text_item p {
	font-size: 1.8rem;
	font-weight: 700;
}
.voice_box .text_item .link {
	display: inline-block;
	width: 100%;
	color: #ff9900;
	font-size: 1.6rem;
	font-weight: 400;
	text-align: right;
	text-decoration: underline;
	line-height: 1;
}
.voice_box .text_item .link:before {
	content: "\f054";
	display: inline-block;
	margin-right: 10px;
	color: #ff9900;
	font-family: "Font Awesome 5 Free";
	font-size: 1.6rem;
	font-weight: 400;
	vertical-align: middle;
	line-height: 1;
}
.sub_voice_block {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
.sub_voice_block > .sub_voice_box {
	width: 140px;
	padding: 10px;
	background: #fff;
	border: 1px solid #78ab3e;
}
.sub_voice_block a {
	color: #333;
	text-decoration: none;
}
.sub_voice_block p + p {
	margin-top: 10px;
}
.sub_voice_block .parts {
	margin: 10px 0;
	color: #78ab3e;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1.2;
}
.sub_voice_block .link {
	display: inline-block;
	width: 100%;
	color: #ff9900;
	font-weight: 400;
	text-align: right;
	text-decoration: underline;
	line-height: 1;
}
.sub_voice_block .link:before {
	content: "\f054";
	display: inline-block;
	margin-right: 5px;
	color: #ff9900;
	font-family: "Font Awesome 5 Free";
	font-weight: 400;
	vertical-align: middle;
	line-height: 1;
}

/* 
Page appointment
------------------------------
 */
.contactbox-1:before {
	width: 100%;
	height: 207px;
	content: "";
	display: block;
	background: no-repeat url("https://nakano-seitai.jp/wp-content/uploads/2025/12/090-3800-0374.png");
	background-size: contain;
}

/* 
Page voice
------------------------------
 */
.voice_block {
	width: 100%;
	margin-top: 20px;
	padding: 10px;
	border: 1px solid #78ab3e;
}
.voice_block .top_box {
	display: flex;
}
.voice_block .top_box img {
	width: 184px;
	margin-right: 10px;
	align-self: flex-start;
	flex-shrink: 0;
}
.voice_block .top_box .text_item {
	display: flex;
	flex-direction: column;
}
.voice_block .top_box .text_item .text {
	flex-grow: 1;
	color: #78ab3e;
	font-size: 1.6rem;
	font-weight: 700;
}
.voice_block .top_box .text_item .name {
	margin-top: 10px;
	align-self: flex-end;
	font-size: 1.2rem;
}
.voice_block .top_box .text_item .name:before {
	content: "\f27a";
	display: inline-block;
	margin-right: 1em;
	font-family: "Font Awesome 5 Free";
	font-weight: 400;
	vertical-align: middle;
	line-height: 1;
}
#content .voice_block .bottom_box .voice_list dt {
	padding: 6px 10px;
	background: #dffad7;
	color: #333;
	font-weight: 700;
}
#content .voice_block .bottom_box .voice_list dt + dd,
#content .voice_block .bottom_box .voice_list dd + dt {
	margin-top: 10px;
}
#content .voice_block .bottom_box .voice_list dd p + p {
	margin-top: 10px;
}
#content .voice_block .bottom_box .voice_list dd .q {
	color: #ff9900;
	font-weight: 700;
}
.voice_block .bottom_box .scan_item {
	position: relative;
	width: 235px;
	margin: 10px auto 0;
}
.voice_block .bottom_box .scan_item:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .3);
	pointer-events: none;
}
.voice_block .bottom_box .scan_item:after {
	content: "\f00e";
	display: inline-block;
	position: absolute;
	bottom: 20px;
	right: 20px;
	color: #fff;
	font-family: "Font Awesome 5 Free";
	font-size: 4rem;
	font-weight: 400;
	line-height: 1;
	pointer-events: none;
}

/* 
Page interview
------------------------------
 */
.interview_block {
	padding: 0 3vw;
}
.interview_block:after {
	content: "";
	clear: both;
}
.interview_block p + p,
.interview_block .box1 + *,
.interview_block figure + * {
	margin-top: 20px;
}
.interview_block strong {
	color: #ff9900;
	font-weight: 700;
}
.interview_block .box1,
.interview_block p + figure {
	width: 240px;
	margin: 20px 0 20px 10px;
	float: right;
}

/* 
Page qa
------------------------------
 */
#qa-box dl {
	border: none;
}
#qa-box dl dt,
#qa-box dl dd {
	position: relative;
	min-height: 40px;
	padding-left: 52px;
}
#qa-box dl dt:before,
#qa-box dl dd:before {
	display: inline-block;
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	border-radius: 2px;
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	line-height: 40px;
}
#qa-box dl dt {
	color: #333;
}
#qa-box dl dt:before {
	content: "Q";
	background: #78ab3e;
}
#qa-box dl dd:before {
	content: "A";
	background: #ff9900;
}

/* 
Page flow
------------------------------
 */
.flow_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	counter-reset: flowNumber 0;
}
.flow_list > li {
	width: 178px;
}
.flow_list > li:nth-of-type(n+4) {
	margin-top: 20px;
}
.flow_list h4 {
	margin-bottom: 6px;
}
.flow_list h4:before {
	counter-increment: flowNumber 1;
	content: counter(flowNumber) ".";
}
.flow_list figure {
	margin-bottom: 0;
}
.flow_list p {
	margin-top: 10px !important;
	font-size: 1.2rem;
}

/* 
完了ページ
------------------------------
 */
#kanryo-box 		{}
#kanryo-box img	{display:none;}
#kanryo-box p		{font-size:17px;font-weight:bold;line-height:2.5;text-align:center;letter-spacing:-1px;}
#kanryo-pict		{margin-top:16px;width:616px;height:257px;background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/kanryo-text1.png) no-repeat top;}

/*
Blog Entry
------------------------------
*/
#content-blog {
	display: flex;
	width: 100%;
}
#content-blog #blog-box {
	width: 100%;
}
#content-blog #side-right {
	width: 180px;
	margin-left: 20px;
}
#content-blog p {
	padding:8px 0px 8px 0px;
	line-height:1.7;
}

#blog-box .wp-pagenavi {
	display: flex;
	margin-bottom:16px;
	font-size:14px;
}
#blog-box .wp-pagenavi a {
	display:block;
	padding:4px 8px 4px 8px;
	border:solid 1px #ccc;
	margin:2px;
}
#blog-box .wp-pagenavi a:hover {
	display:block;
	padding:4px 8px 4px 8px;
	border:solid 1px #FFD719;
	margin:2px;
	background:#FFD719;
	color:#000;
}
#blog-box .pages {
	display:block;
	padding:4px 8px 4px 8px;
	border:solid 1px #ccc;
	margin:2px;
}
#blog-box .current {
	display:block;
	padding:4px 8px 4px 8px;
	border:solid 1px #ccc;
	margin:2px;
	font-weight:bold;
}
#blog-box .entry {
	margin-top:32px;
	padding-bottom:16px;
	border-bottom:dotted 2px #ccc;
}
#blog-box .entry .title {
	background:#eee bottom no-repeat;
	margin-bottom:4px;
}
#blog-box .entry .title a {
	display:block;
	font-weight:bold;
	padding:16px;
	line-height:1.4;
	font-size:18px;
	color:#000;
	text-decoration:none;
}
#blog-box .entry .title a:hover {
	display:block;
	font-weight:bold;
	padding:16px;
	line-height:1.4;
	font-size:18px;
	color:#666;
	text-decoration:none;
}
#blog-box .entry .title span {
	display:block;
	font-weight:bold;
	padding:16px;
	line-height:1.4;
	font-size:18px;
	color:#000;
	text-decoration:none;
}
#blog-box .entry .timebox {
}
#blog-box .entry .catbox {
	text-align:right;
	padding:8px 0px 8px 0px;
	border-bottom:dotted 1px #ccc;
	font-size:12px;
}
#blog-box .entry .kiji {
	padding:16px;
	line-height:2;
}
#blog-box .entry img {
	max-width: 480px;
	height: auto !important;
}

#side-contentbox-blog #menulist1 {
	margin-bottom:16px;
}
#side-contentbox-blog #menulist1 li {
	margin-bottom:8px;
}
#side-contentbox-blog #menulist2 {
	width: 100%;
	padding-bottom:8px;
}
#side-contentbox-blog #menulist2 h2 {
	margin:8px 0px -8px 0px;
}
#side-contentbox-blog #menulist2 ul {
	margin:auto;
	width: 100%;
}
#side-contentbox-blog #menulist2 li {
	display:block;
	text-align:left;
}
#side-contentbox-blog #menulist2 a {
	display:block;
	background:#fff url(https://nakano-seitai.jp/wp-content/themes/seitai_pack-rwd/image/c_sidebar/icon-3.png) no-repeat left top;
	padding:8px 0px 8px 0px;
	border-bottom:solid 1px #ccc;
}
#side-contentbox-blog #menulist2 span {
	display:block;
	padding:0px 8px 0px 32px;
}
#side-contentbox-blog #maplist {
	margin:16px 0px 16px 0px;
}
#side-contentbox-blog #maplist table {
	width: 100%;
}
#side-contentbox-blog #maplist caption {
	padding:10px;
	text-align:center;
	background:#F08301;
	color:#fff;
	font-weight:bold;
}
#side-contentbox-blog #maplist th {
	padding:6px 10px 6px 10px;
	text-align:left;
	border-bottom:solid 1px #ccc;
}
#side-contentbox-blog #maplist td {
	padding:6px 10px 6px 10px;
	text-align:left;
	border-bottom:solid 1px #ccc;
}
#side-contentbox-blog {
	width: 100%;
	padding-bottom:16px;
	font-size:12px;
}

#side-right #blogmenu {
	width: 100%;
}
#side-right #blogmenu h2 {
	width: 100%;
	color:#fff;
	background:#227AC5;
	font-weight:bold;
	padding:4px 0px 4px 0px;
	font-size:12px;
	text-align:center;
	line-height:1.0;
}
#side-right #blogmenu div {
	background:#eee;
	margin-bottom:8px;
}
#side-right #blogmenu ul {
	margin:auto;
	text-align:left;
	border-top:solid 1px #ccc;
}
#side-right #blogmenu li {
	display:block;
	border-bottom:dotted 1px #ccc;
	border-right:solid 1px #ccc;
	background:#fff url(https://nakano-seitai.jp/wp-content/themes/seitai_pack-rwd/image/c_sidebar/icon-2.png) no-repeat left top;
	font-size:11px;
}
#side-right #blogmenu a {
	display:block;
	padding:8px 0px 8px 28px;
	position:relative;
}
#side-right #blogmenu .children li {
	display:block;
	text-align:left;
	position:relative;
	left:0px;
	border:none;
}
#side-right #blogmenu .children a {
	display:block;
	padding:8px 0px 8px 40px;
	position:relative;
	font-size:11px;
	letter-spacing:-1px;
}

/*
Form
------------------------------
*/
#content .formbox span {
	color:#f00;
}
#content .formbox dl {
	display: flex;
	flex-wrap: wrap;
}
#content .formbox dt {
	width:25%;
	padding:10px 0px 10px 10px;
	background:#eee;
	color: #333;
	font-size: 1.4rem;
	font-weight:bold;
	border-bottom:solid 3px #fff;
	clear:both;
}
#content .formbox dd {
	width:70%;
	margin-left: 5%;
	background:#fff;
	border-bottom:solid 3px#fff;
}
#content .formbox dt + dd,
#content .formbox dd + dt {
	margin-top: 0;
}
#content .formbox {
	text-align:left;
}
#content .formbox  input {
	border:solid 1px #999;
	width:240px;
	padding: 5px;
}
#content .formbox textarea {
	width: 100%;
	padding: 5px;
	border:solid 1px #999;
}
#content .formbtn {
	width:616px;
	text-align:center;
}
#content .formbtn input {
	margin:16px auto 16px auto;
	background:url(https://nakano-seitai.jp/wp-content/themes/image/p_all/appointment-btn1.png) no-repeat center;width:616px;height:70px;
	border:none;
}

/* 当院の特徴：背景 */
.feature_block {
  background: #fcfaf7;
  padding: 32px 24px;
  margin: 40px 0;
  border-radius: 8px;
}

.feature_title {
  margin-top: 0;
  margin-bottom: 12px;
}

.feature_catch {
  margin-top: 0;
  margin-bottom: 20px;
  font-weight: bold;
}

/* 当院の特徴：見出しの装飾を完全にリセット */
.feature_title{
  margin-top: 0;
  margin-bottom: 16px;

  border: 0 !important;
  box-shadow: none !important;
  outline: none !important;
  background: transparent !important;

  color: #333;          /* 文字色：黒に近い濃いグレー */
  font-size: 22px;      /* 文字サイズ（PC） */
  font-weight: 700;
}

/* 緑の線・帯の正体（疑似要素）を消す */
.feature_title::before,
.feature_title::after{
  content: none !important;
  display: none !important;
}

.feature_title,
.feature_catch {
  color: #2f4f2f;
}

.feature_block .feature_title,
.feature_block .feature_catch {
  color: #333333 !important;
}
.

/* 当院の特徴：見出しサイズを他セクションと完全に統一 */
.feature_block h2.feature_title {
  font-size: 28px !important;
  font-weight: 700;
  line-height: 1.5;
  color: #333333;
}

/* 当院の特徴：見出し文字サイズを強制的に上げる（最終勝ち） */
.feature_block h3,
.feature_block h4,
.feature_block h2,
.feature_block .feature_title,
.feature_block .feature_catch{
  font-size: 32px !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}

/* 当院の特徴：前の緑ブロックと文字サイズを統一 */
.feature_block li,
.feature_block p {
  font-size: 15px !important;
}

.feature_block h2.feature_title {
  font-size: 26px !important;
}

/* 当院の特徴：サブタイトルを少しだけ控えめに（PC） */
.feature_block .feature_catch {
  font-size: 26px !important;
  line-height: 1.6;
}

/* 当院の特徴：サブタイトル下に余白をつくる */
.feature_catch {
  margin-bottom: 24px;
}

/* 当院の特徴：本文1行目の上に余白 */
.feature_block .feature_text p:first-child {
  margin-top: 16px;
}

.content_block h2 {
  color: #2f2f2f;
}

.content_block h2 {
  color: #333333 !important;
}

/* content_block内のh2を「当院の特徴」と同じサイズに */
.content_block h2 {
  font-size: 26px !important;
  font-weight: 700;
  line-height: 1.4;
}

/* オステオパシーのメリット：①〜④の文字色を本文と同じに */
.content_block ol li,
.content_block ul li,
.content_block .number,
.content_block strong {
  color: #333333 !important;
}

/* オステオパシーのメリット：番号（①〜④）を黒に */
.content_block ol li::marker {
  color: #333333 !important;
}

/* 番号行 全体を黒に固定 */
.content_block ol li {
  color: #333333 !important;
}

.content_block ol li * {
  color: #333333 !important;
}

/* オステオパシーのメリット：①〜④ 見出し色を通常文字色に戻す（PC） */
.content_block h3,
.content_block h4{
  color: #333 !important;
}

/* オステオパシーのメリット：番号ブロック同士の間に余白を作る */
.content_block h3 {
  margin-top: 32px !important;   /* 前の文章との間 */
}

/* 共感・解決ブロック（緑）だけ、下のブロック幅に揃える */
#content .solution-box{
  width: 747px !important;
  max-width: 747px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* 中身(inner_width)が邪魔しないようにする */
#content .solution-box > .inner_width{
  max-width: none !important;
  width: 100% !important;
}


.content_block h3:first-of-type {
  margin-top: 0 !important;      /* ①だけは上を詰める */
}

/* オステオパシーのメリット：背景色 */
.merit_block {
  background-color: #fffdf9;
  padding: 40px 20px;
}

/* オステオパシーのメリット：各項目の区切り線 */
.merit_block .merit_item {
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #eeeae4;
}

/* 最後の④だけ線を消す */
.merit_block .merit_item:last-child {
  border-bottom: none;
  margin-bottom: 0;
  padding-bottom: 0;
}

/* ブロック2：■のリストを一時的に非表示 */
.solution-list {
  display: none;
}

/* 痛みの根本原因ブロック */
.cause_block {
  background-color: #fdf7f2;
  padding: 60px 20px;
}

/* ブロック3：緑の太い枠を消す */
.cause_block {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
}

.cause_block * {
  border: none !important;
}

/* ブロック3：見出しの緑枠を強制的に消す */
.cause_block h2 {
  border: none !important;
  box-shadow: none !important;
  outline: none !important;
  background: none !important;
}

/* ブロック3：本文テキストを黒（濃いグレー）に */
.cause_block {
  color: #333333;
}

.cause_block,
.cause_block p,
.cause_block li {
  color: #333333 !important;
}

/* 原因説明ブロック：文字色を黒に戻す */
.cause_block,
.cause_block p,
.cause_block h2 {
  color: #333;
}

.cause_block,
.cause_block p,
.cause_block h2 {
  color: #333 !important;
}

/* 原因ブロックのタイトルを上のブロックと同じサイズに */
.cause_title {
  font-size: 24px;   /* ← ここで調整。22pxにしたければ22 */
  font-weight: 700;
  line-height: 1.6;
  margin-bottom: 24px;
}

/* こんな方が多くご利用されています */
.usecase_block{
  margin: 40px 0;
}

.usecase_title{
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 16px;
}

.usecase_list{
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 18px;
}

.usecase_list li{
  width: calc(50% - 9px);
  background: #fff;
  border: 1px solid #e6e0d8;
  border-radius: 8px;
  padding: 10px 12px;
  line-height: 1.6;
}

@media (max-width: 767px){
  .usecase_list li{
    width: 100%;
  }
}

.usecase_title {
  color: #333333;
}

.usecase_title {
  color: #333333 !important;
}

.usecase_title {
  font-size: 28px;
  font-weight: 700;
}

.usecase_block {
  background-color: #fffdf9;
  padding: 40px 20px;
}

.usecase_block {
  background-color: #fdf6e8;
}

/* 院長紹介ブロック 背景色 */
.director_block {
  background-color: #ffffff; /* 白*/
  padding: 40px 30px;
  border-radius: 8px;
}

/* 三分割ブロック 共通 */
.bg_box {
  padding: 40px 45px;
  margin-bottom: 40px;
  border-radius: 8px;
}

/* 三分割ブロック 共通 */
.bg_box {
  padding: 40px 45px;
  margin-bottom: 40px;
  border-radius: 8px;
}

/* 一番薄いグリーン */
.bg_green {
  background: #f6faf4;
}

/* 三分割ブロックでは親の背景色を無効化 */
.content_block.bg_box {
  background: none !important;
}

.bg_green {
  background-color: #f6faf4 !important;
}

/* 三分割ブロック：親の薄オレンジ背景を消す */
.content_block.bg_box {
  background: transparent !important;
}

/* 三分割ブロック共通 */
.bg_box {
  padding: 40px 45px;
  margin-bottom: 40px;
  border-radius: 8px;
}

/* 一番薄いグリーン */
.bg_green {
  background-color: #f6faf4 !important;
}

<div class="content_block bg_box bg_green">

/* 三分割ブロック：親の薄オレンジ背景を消す */
.content_block.bg_box {
  background: transparent !important;
}

/* 三分割ブロック共通 */
.bg_box {
  padding: 40px 45px;
  margin-bottom: 40px;
  border-radius: 8px;
}

/* 一番薄いグリーン */
.bg_green {
  background-color: #f6faf4 !important;
}

/* 3分割ブロック全体の背景（オレンジを消す） */
.cause_block{
  background: #fff !important;
}

/* 縦三分割ブロック 背景色 */
.box_top {
  background-color: #f6faf4;
}

.box_middle {
  background-color: #ffffff;
}

.box_bottom {
  background-color: #f3f8f1;
}

/* 親ブロック（オレンジ背景）を無効化 */
.cause_block {
  background: transparent !important;
}

/* 縦三分割ブロック：最終上書き */
.cause_block .content_block.bg_box.box_top {
  background-color: #f6faf4 !important;
}

.cause_block .content_block.bg_box.box_middle {
  background-color: #ffffff !important;
}

.cause_block .content_block.bg_box.box_bottom {
  background-color: #f3f8f1 !important;
}

/* 3分割ブロックの横幅を本文と揃える */
/* 3ブロックの横幅を本文カラムいっぱいに合わせる */
.cause_block{
  width: 100% !important;
  max-width: none !important;   /* ←760固定を解除 */
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 各ブロック自体も横幅100%にする（念のため） */
.cause_block .content_block.bg_box{
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box;
}

/* もし左右に余白（マージン）が付いていたら消す */
.cause_block .bg_box{
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* 三分割ブロックの「中身」の幅を本文と揃える */
.cause_block .content_block {
  max-width: 100%;
}

/* ▼縦3ブロックの幅を記事幅に合わせる（強制） */
.cause_block{
  width: 100% !important;
  max-width: none !important;
}

.cause_block .content_block.bg_box{
  width: 100% !important;
  max-width: none !important;
  box-sizing: border-box !important;
}

/* ▼記事エリア側の幅制限が勝っている時の保険 */
#main .cause_block,
#contents .cause_block,
#content .cause_block{
  width: 100% !important;
  max-width: none !important;
}

/* ▼縦3ブロック：幅と余白を本文と同じ見え方にする */
.cause_block .content_block.bg_box{
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* ▼左右の余白が大きすぎて「幅が狭く見える」対策（ここが一番効きます） */
.cause_block .content_block.bg_box{
  padding: 28px 28px !important;  /* ←まずこの値で合わせる。まだ狭く見えたら 22px に */
}

/* ▼さらに強制（テーマの指定に負ける場合） */
#content .cause_block .content_block.bg_box,
#main .cause_block .content_block.bg_box,
.main .cause_block .content_block.bg_box{
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box !important;
  padding: 28px 28px !important;
}

/* ▼ 雑誌タイトル：薄いオレンジ（指定色） */
.media_title{
  background: #fff7d6 !important;
  color: #333 !important;
  padding: 18px 22px !important;
  margin: 30px 0 18px !important;
  border-radius: 8px !important;
  display: block;
  text-align: left;
  font-size: 24px;
  font-weight: 700;

  /* 緑帯の装飾を無効化 */
  border: none !important;
  box-shadow: none !important;
  background-image: none !important;
}

/* 念のための保険 */
.content_block .media_title{
  background: #fff7d6 !important;
}

/* 院長紹介タイトルを雑誌タイトルと同じ黄色にする */
.feature_block h2 {
  background: #fff7d6 !important;
  color: #333 !important;
  border-radius: 8px;
}

.usecase-title{
  background: #fff7d6 !important;
  padding: 18px 22px !important;
  border-radius: 8px;
  display: block;
  font-weight: 700;
}

/* タイトル文字サイズを統一 */
.media_title,
.usecase_title {
  font-size: 24px !important;
  font-weight: 700 !important;
}

.sub_title {
  font-weight: 700;
  margin: 10px 0 8px;
}



/* 特徴ブロック：本文だけ非表示（タイトルは残す） */
.feature_block .feature_text{
  display: none !important;
}

/* 特徴ブロック：見出し（オレンジ文字）を黒に */
.feature_block .feature_title{
  color: #333 !important;
}

/* こだわりと特徴：本文(dd)だけ非表示、見出し(dt)は残す＋黒に */
.feature_block dd{
  display: none !important;
}

.feature_block dt{
  color: #333 !important;  /* オレンジ→黒 */
  font-weight: 700;
}

/* こだわりと特徴 タイトルを確実に表示 */
.feature_title{
  display: block !important;
  color: #333 !important;
  background: #fff7d6 !important;
  font-size: 24px !important;
  font-weight: 700 !important;
  padding: 14px 24px;
  margin: 0 auto 24px;
  border-radius: 8px;
  text-align: left;
}

/* ===== 旧：本文を消していたCSS（一旦無効化） =====
.feature_block dd{
  display: none !important;
}

.feature_block .feature_text{
  display: none !important;
}
===== ここまで無効 ===== */

/* ===== 統一カラー（緑ベース維持・濃い緑撤退）===== */

/* ページ背景が薄緑ならこれ（すでにあるなら不要） */
/* body { background: #F6FAF4; } */

/* 共通：カード（本文ブロック） */
.content_block,
.content_block_feature_block,
.feature_block,
.green_block,
.bg_box {
  background: #fff !important;
  border: 1px solid #E6EEE2 !important;
  border-radius: 10px;
}

/* 見出し（あなたが作った feature_title を統一） */
.feature_title {
  background: #FFF7D6 !important;
  color: #333 !important;
  border-radius: 8px !important;
  padding: 14px 24px !important;
  margin: 0 auto 24px !important;
  font-weight: 700 !important;
}

/* 見出しがブロック内にある場合のh2も揃える（必要なら） */
.feature_block h2,
.content_block h2 {
  background: #FFF7D6 !important;
  color: #333 !important;
  border-radius: 8px !important;
}

/* 余計な濃い緑背景が見出しに当たってる場合の“逃げ道” */
.feature_block h2,
.feature_title {
  box-shadow: none !important;
}

/* feature_title は常に黄色背景を出す（bg_box の影響を受けない） */
.feature_title{
  background: #FFF7D6 !important;
  color: #333 !important;
  padding: 14px 24px !important;
  border-radius: 8px !important;
  display: block !important;
}

/* feature_title（黄色タイトル帯）を必ず表示 */
h2.feature_title{
  display:block !important;
  background:#fff7d6 !important;
  color:#333 !important;
  padding:18px 22px !important;
  border-radius:8px !important;
  font-weight:700 !important;
  font-size:24px !important;
  margin:0 auto 24px !important;
}

/* セクション共通の横幅を統一 */
.section_title,
.content_block {
  max-width: 760px;   /* ← 好きな幅に調整OK（720〜800くらい） */
  margin-left: auto;
  margin-right: auto;
}

/* メインカラム内のボックス幅を統一 */
.content_block,
.section_title {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.inner_width {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

/* 幅をそろえる共通クラス */
.inner_width{
  width: 100% !important;
  max-width: 760px;   /* ← ここは後で調整OK（720〜820あたり） */
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box;
}

.inner_width{
  width: 100% !important;
  max-width: 760px !important;
  margin: 0 auto !important;
  box-sizing: border-box;
}

/* ▼ タイトルと本文の“箱幅”を統一（黄色タイトルを横幅100%に） */
.section_title{
  max-width: 100%;
}

.section_title .feature_title{
  display: block;
  width: 100%;
  box-sizing: border-box;
}

/* ▼ 本文ブロック側も同じ幅で揃える（必要なら） */
.content_block{
  box-sizing: border-box;
}

/* ▼ 共通幅（ここを基準に統一） */
.inner_width{
  max-width: 720px;
  margin-left: auto;
  margin-right: auto;
}

/* タイトル帯（黄色）を本文ボックスと同じ幅にする */
.section_title{
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box;
}

.section_title .feature_title{
  display: block !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  box-sizing: border-box;
}

/* もし .cause_block が幅を絞っている場合の保険 */
.cause_block{
  width: 100% !important;
  max-width: none !important;
}

/* LP内だけ：上の緑(solutions)の幅を、下のブロック群と揃える */
#content .solution-box{
  box-sizing: border-box;
  max-width: 747px;   /* ← 黄色ブロックに合わせる */
  margin-left: auto;
  margin-right: auto;
}

/* このLPの上の緑だけ幅を揃える（min-width対策込み） */
#content .solution-box.inner_width{
  width: 100% !important;
  max-width: 747px !important;   /* 黄色側の実測に合わせる */
  min-width: 0 !important;       /* ←これが重要（縮まない原因を潰す） */
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* 生存確認：これが効かなければ、CSSが途中で壊れてる */
.solution-box{
  outline: 5px solid red !important;
}

/* LP用：右カラムの中身幅を統一 */
#content .lp-inner {
  max-width: 740px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

/* 共感ブロック（上の緑）だけ幅を揃える */
.solution-box {
  width: 100%;
}

.solution-box .inner_width {
  max-width: 747px;
  margin: 0 auto;
}

/* 上の緑（共感ブロック）を下と同じ幅にする */
.solution-box {
  background: none !important;
  padding: 0 !important;
}

.solution-box > .inner_width {
  max-width: 747px;
  margin: 0 auto;
  background: #e6f4d7; /* 今の緑 */
  padding: 22px;
  border-radius: 8px;
}

/* 共感ブロック（赤枠の緑）だけ幅を揃える */
#maincontent > .solution-box {
  width: 100%;
}

#maincontent > .solution-box > * {
  max-width: 747px;
  margin-left: auto;
  margin-right: auto;
}

.solution-box{
  max-width: 747px;
  margin: 0 auto;
}

/* 共感ブロックの幅を固定 */
.solution-box {
  width: 100%;
}

.solution-inner {
  max-width: 747px;
  margin: 0 auto;
}

/* 共感ブロック：幅を他ブロックと揃える */
.solution-box {
  width: 100%;
}

.solution-inner {
  max-width: 747px;
  margin: 0 auto;
}

/* 共感・解決ブロック（緑）だけ、下のブロック幅に揃える */
#content .solution-box{
  width: 747px !important;
  max-width: 747px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

/* 中身(inner_width)が邪魔しないようにする */
#content .solution-box > .inner_width{
  max-width: none !important;
  width: 100% !important;
}

/* LP：生活を妨げる〜（solution-box）だけ幅を揃える */
#content .solution-box{
  width: 100% !important;
  max-width: 747px !important;
  margin: 0 auto 40px !important;
  box-sizing: border-box !important;
}

/* もし赤枠がCSSで付いてるなら消す（保険） */
#content .solution-box{
  border: none !important;
  outline: none !important;
}

#content > div {
  max-width: 747px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.solution-text{
  font-size: 16px;
  line-height: 1.9;
  margin: 10px 0 14px;
}

/* 本文ブロックの背景をすべて消す */
#content .solution-box {
  background: none !important;
}

/* タイトル専用ブロック */
#content .section-title-block {
  background: #eaf6d9; /* 今の薄いグリーン */
  padding: 20px 24px;
  margin-bottom: 16px;
  font-weight: bold;
}

/* 本文側の背景を消す */
.solution-box {
  background: transparent !important;
}

/* タイトル専用の背景 */
.section-title-block {
  background: #e9f7d8; /* 今の薄い緑 */
  padding: 20px;
  font-weight: bold;
  margin-bottom: 16px;
}

/* === タイトルだけ背景色：solution-boxの本文側の背景を消す === */
#content .solution-box,
#content .solution-box .inner_width,
#content .solution-box .solution-inner{
  background: transparent !important; /* まず全部の緑を強制解除 */
}

/* 外枠（カード）を白にして整える */
#content .solution-box .inner_width{
  background: #fff !important;
  border: 1px solid #dfe7d8;
  border-radius: 10px;
  overflow: hidden; /* タイトルの背景を角丸に沿わせる */
  padding: 0 !important;
}

/* タイトルだけ緑 + 太字（後で文字大きくもここでOK） */
#content .solution-box .section-title-block{
  background: #e8f3da !important;
  font-weight: 700;
  padding: 22px 24px;
  margin: 0 !important;
  /* font-size: 22px; ←後で少し大きくしたい時はここをON */
}

/* 本文（白地） */
#content .solution-box .solution-lead,
#content .solution-box .credential-lead,
#content .solution-box .small-note{
  background: transparent !important;
  padding: 14px 24px 0;
  margin: 0;
}

/* 最後だけ下に余白 */
#content .solution-box .small-note{
  padding-bottom: 22px;
}

/* お悩みブロック：本文側のグレー背景を完全に消す */
#worries-box,
.worries-box {
  background: none !important;
  background-color: transparent !important;
}

/* こんなお悩みありませんか？：外側のグレー箱を消して、タイトルだけ背景にする */
#content .worries-box{
  background: transparent !important;  /* ←グレー消す */
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;              /* ←タイトルが中に入る原因を消す */
  margin: 0 auto 40px !important;
}

/* タイトル帯（背景あり） */
#content .worries-box .section-title-block{
  background: #eaf6df !important;      /* タイトルだけ色 */
  padding: 18px 24px !important;
  margin: 0 0 14px !important;
  border-radius: 8px !important;
  font-weight: 700 !important;        /* 太字 */
}

/* 本文（リスト側）は白背景に戻す */
#content .worries-box .worries-list{
  background: #fff !important;         /* 本文は白 */
  border: 1px solid #e3e3e3 !important;
  border-radius: 8px !important;
  padding: 18px 24px !important;
  margin: 0 !important;               /* ulのデフォ余白を消す */
}

/* セクションタイトル 共通サイズ */
#content .section-title-block{
  font-size: 22px;        /* ← 中間サイズ */
  line-height: 1.6;
  text-align: left;       /* 揃える方向（左） */
}

/* 2ブロック目 タイトルを少し左に寄せる */
.section-title-block {
  padding-left: ８px;   /* ← まずは20px */
  padding-right: 20px;  /* バランス用 */
}

/* 1ブロック：こんなお悩みありませんか？（タイトルだけ左寄せ＆左余白を詰める） */
#content .worries-box .section-title-block{
  text-align: left !important;
  padding: 14px 18px !important; /* ←左をもっと詰めたいなら 12px とかに */
  margin: 0 !important;
}

#content .worries-box .section-title-block{
  text-align: left !important;
  padding: 14px 18px !important;
  margin: 0 !important;
}

/* 1ブロック：本文側の背景を完全に消す */
#content .worries-box{
  background: transparent !important;
  padding: 0 !important;
  border: none !important;
}

/* タイトル背景の幅を統一する共通枠 */
.title-bg-inner {
  max-width: 640px;   /* ← ここが“基準の幅” */
  padding: 16px 20px;
}

/* 2ブロック：タイトルだけに背景（本文は白） */
#content .solution-box .section-title-block{
  background: transparent !important;
  padding: 0 !important;
  margin: 0 0 14px !important;
}

#content .solution-box .section-title-block .solution-lead{
  background: #e8f3dc !important;   /* タイトル背景 */
  padding: 14px 18px !important;   /* ←左寄せの効きはここ */
  border-radius: 8px !important;
  margin: 0 !important;

  text-align: left !important;
  font-weight: 700 !important;     /* ←太字にしたいならON */
  font-size: 20px !important;      /* ←大きさはここで調整 */
  line-height: 1.45 !important;
}

/* ===== 共通：タイトル背景は「タイトルだけ」 ===== */
#content .section-title-block{
  background: #eaf6e1 !important;   /* 薄い緑 */
  border-radius: 8px !important;
  padding: 14px 22px !important;    /* ←左の寄せ具合はココだけ触る */
  margin: 0 0 12px !important;
  text-align: left !important;
}

/* タイトル文字：1ブロックと2ブロックの中間サイズ */
#content .section-title-block,
#content .section-title-block .solution-lead{
  font-size: 20px !important;       /* ←中間サイズ */
  line-height: 1.5 !important;
  font-weight: 700 !important;
}

/* pの余計な余白を消す（ズレ防止） */
#content .section-title-block .solution-lead{
  margin: 0 !important;
}

/* ===== 1ブロック：外側の緑（worries-box）を消す ===== */
#content .worries-box{
  background: transparent !important;
  padding: 0 !important;
  border: 0 !important;
}

/* 1ブロック：リストは白箱にする */
#content .worries-box .worries-list{
  background: #fff !important;
  border: 1px solid #ddd !important;
  border-radius: 8px !important;
  padding: 18px 22px !important;
  margin: 0 !important;
  text-align: left !important;
}
#content .worries-box .worries-list li{
  text-align: left !important;
}

/* こんなお悩みありませんか？ 外枠の緑背景を消す */
#content .worries-box {
  background: transparent !important;
}

#content .worries-box,
#content .worries-box * {
  background-color: transparent !important;
}

/* お知らせ：外側を右のブロックみたいに薄緑の箱にする */
#sidecontent .notice_box{
  background: #dffad7;   /* 右の薄緑に近い色。ズレたら後で微調整 */
  padding: 18px;
  border-radius: 10px;
  margin-bottom: 18px;   /* 下の院長プロフィールと“くっつき”防止 */
}

/* お知らせタイトルの余白だけ整える */
#sidecontent .notice_box .title{
  margin: 0 0 12px;
}



/* お知らせ（notice_box）を上に持ち上げて右ブロック開始位置に寄せる */
#sidecontent > .side_info.notice_box{
  margin-top: 0px !important;
}


/* お知らせ：箱は白（背景なし）にする */
.side_info.notice_box{
  background: transparent;
  border: none;
  padding: 0;
}

/* お知らせ：タイトルだけ緑の帯にする */
.side_info.notice_box > .title{
  background: #dffad7;
  padding: 18px 18px;
  margin: 0;
  border-radius: 8px 8px 0 0;
  font-weight: bold;
}

/* お知らせ：中身は白い枠にする */
.side_info.notice_box > .side_info_inner{
  background: #fff;
  border: 1px solid #cfeec6;
  border-top: 0;
  padding: 14px 18px 18px;
  border-radius: 0 0 8px 8px;
}

/* フッターCTA 強制上書き */
.contact_box.custom-cta {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.contact_box.custom-cta img {
  width: 100%;
  height: auto;
  display: block;
}

