@charset "UTF-8";

/* メインイメージ
---------------------------------------------------------*/
.contentspage .m_img_area{
	background-image: url("../images/acupuncture/m_img@2x.jpg");
}

/* Tablet
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px){
.contentspage .m_img_area .m_title dt{
  width: 40%;
  margin-bottom: 15px;
}
}

/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.contentspage .m_img_area{
	background-position: left bottom;
}
.contentspage .m_img_area .m_title dt{
  width: 65%;
  margin-bottom: 0%;
}
}



/* ページ共通
---------------------------------------------------------*/
.page_color, .page_color a {color: #85b145;}
.med_title {background-color: #a0c26e;}
.med_title::before {background-image: url("../images/acupuncture/bar_l.svg");}
.med_title::after {background-image: url("../images/acupuncture/bar_r.svg");}

.com_qalist dd {
	background-color: #f7f7f7;
	padding-top: 2.5em;
	padding-bottom: 2.5em;
}
.com_qalist dt::before {
	color: #85b145;
	border-color: #85b145;
}

.med_flow_list > li:nth-child(1)::before{background-image: url("../images/acupuncture/flow_icon1.svg");}
.med_flow_list > li:nth-child(2)::before{background-image: url("../images/acupuncture/flow_icon2.svg");}
.med_flow_list > li:nth-child(3)::before{background-image: url("../images/acupuncture/flow_icon3.svg");}
.med_flow_list > li:nth-child(4)::before{background-image: url("../images/acupuncture/flow_icon4.svg");}
.med_flow_list > li:nth-child(5)::before{background-image: url("../images/acupuncture/flow_icon5.svg");}
.med_flow_list > li > dl {
	margin-top: 23px;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.com_qalist dd {
	padding-top: 2.0em;
	padding-bottom: 2.0em;
}
	
.med_flow_list > li > dl {
	margin-top: 15px;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.com_qalist dd {
	padding-top: 6%;
	padding-bottom: 6%;
}
	
.med_flow_list > li > dl {
	margin-top: 0;
}	
.med_flow_list > li::before {
	top: -1.5em;
}
}



/* box1
---------------------------------------------------------*/
.box1 .com_lead span {
	color: #9598a0;
}
.box1 .med_check {
	width: 90%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	background-color: transparent;
	border: solid 1px #85b145;
	border-bottom: none;
	border-radius: 0;
	box-shadow: none;
	box-sizing: border-box;
	padding-top: 80px;
}
.box1 .med_check dt {
	position: absolute;
	margin: auto;
	left: 0;
	right: 0;
	top: 0;
	transform: translateY(-50%);
	text-align: center;
}
.box1 .med_check dt .ft_shuei {
	display: inline-block;
	background: #fff;
	padding: 0 3.0em;
	color: #2b3141;
	margin-bottom: 0;
	position: relative;
}
.box1 .med_check dt .ft_shuei::before,
.box1 .med_check dt .ft_shuei::after {
	content: "";
	position: absolute;
	width: 1px;
	height: 1.6em;
	background: #85b145;
	top: 0;
}
.box1 .med_check dt .ft_shuei::before {
	left: 1.8em;
	transform: rotate(-35deg);
}
.box1 .med_check dt .ft_shuei::after {
	right: 1.8em;
	transform: rotate(35deg);
}
.box1 .med_check .check_list li {
	font-size: 113%;
	padding-left: 2.2em;
	border-color: #555a67;
}
.box1 .med_check .check_list li:last-child {
	border-bottom: none;
}
.box1 .med_check .check_list li::before {
	background-image: url("../images/acupuncture/chk_icon.svg");
}
.box1 .fukidashi {
	background: #85b145;
	text-align: center;
	color: #fff;
	font-size: min(155%,2.8vw);
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: 1.2em 2.0em;
	border-radius: 3.0em;
	position: relative;
}
.box1 .fukidashi::before {
	content: "";
	position: absolute;
	width: 100%;
	height: .9em;
	left: 0;
	top: calc(100% - 1px);
	background: url("../images/acupuncture/fukidashi@2x.png") no-repeat center center;
	background-size: contain;
}
.box1 .fukidashi span {
	font-size: 108%;
	letter-spacing: .15em;
	line-height: 1.4em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box1 .med_check {
	padding-top: 7%;
}
.box1 .med_check .check_list li {
	font-size: 105%;
}
.box1 .fukidashi {
	padding: 1.0em 2.0em;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box1 .med_check {
	padding-top: 12%;
}
.box1 .med_check dt .ft_shuei {
	padding: 0 2.0em;
}
.box1 .med_check dt .ft_shuei::before,
.box1 .med_check dt .ft_shuei::after {
	height: 2.0em;
}
.box1 .med_check dt .ft_shuei::before {
	left: .8em;
}
.box1 .med_check dt .ft_shuei::after {
	right: .8em;
}
.box1 .med_check .check_list li {
	font-size: 105%;
	padding-left: 2.0em;
}
.box1 .fukidashi {
	margin-top: -.5em;
	font-size: 120%;
	letter-spacing: .05em;
	line-height: 1.6em;
	padding: .8em 1.0em;
	border-radius: 4.0em;
}
.box1 .fukidashi span {
	letter-spacing: .05em;
}
}



/* box2
---------------------------------------------------------*/
.box2 .lead .title_box {
	text-align: center;
	position: relative;
	margin-bottom: 30px;
}
.box2 .lead .title_box .item_list li {
	position: absolute;
	z-index: -1;
	width: 10%;
	max-width: 110px;
}
.box2 .lead .title_box .item_list li:nth-child(1) {
	left: 2%;
	bottom: 0;
	transform: translateY(40%);
}
.box2 .lead .title_box .item_list li:nth-child(2) {
	left: 9%;
	top: 0;
	transform: translateY(-11%);
}
.box2 .lead .title_box .item_list li:nth-child(3) {
	right: 9%;
	top: 0;
	transform: translateY(-11%);
}
.box2 .lead .title_box .item_list li:nth-child(4) {
	right: 2%;
	bottom: 0;
	transform: translateY(40%);
}
.box2 .lead .title_box .ft_shuei {
	display: inline-block;
	text-align: left;
	font-size: min(220%,3.5vw);
	letter-spacing: .15em;
	line-height: 1.4em;
	position: relative;
	padding-right: 2.0em;
}
.box2 .lead .title_box .ft_shuei .txt_large {
	display: block;
	font-size: 170%;
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-top: .1em;
}
.box2 .lead .title_box .ft_shuei .page_color {
	font-size: 115%;
	letter-spacing: .15em;
	line-height: 1.4em;
}
.box2 .lead .title_box .ft_shuei .abs {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 2.6em;
}
.box2 .lead .img_list {
	display: flex;
    justify-content: space-between;
	position: relative;
}
.box2 .lead .img_list li {
	width: 33.3333%;
	max-width: 362px;
}
.box2 .lead .img_list::before {
	content: "";
	position: absolute;
	z-index: -1;
	width: 100vw;
	height: 50%;
	background: #f3f7ec;
	left: 50%;
	bottom: -1px;
	transform: translateX(-50%);
}

.box2 .merit {
	background: #f3f7ec;
	padding: 80px 0 100px;
}
.box2 .merit .merit_index {
	display: flex;
    justify-content: center;
    align-items: flex-end;
	margin-bottom: 100px;
}
.box2 .merit .merit_index > span {
	display: block;
}
.box2 .merit .merit_index .txt1 {
	font-size: min(175%,3.0vw);
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-right: -.2em;
}
.box2 .merit .merit_index .txt2 {
	width: 55%;
	max-width: 514px;
}
.box2 .merit .merit_box {
	background: #fff;
	border-radius: 70px;
	padding: 80px 4% 100px;
	position: relative;
	margin-bottom: 80px;
}
.box2 .merit .merit_box::before {
	content: "";
	position: absolute;
	width: 90%;
	max-width: 1220px;
	height: 5vw;
	max-height: 50px;
	background: url("../images/acupuncture/shadow@2x.png") no-repeat center top;
	background-size: 100% 100%;
	margin: auto;
	left: 0;
	right: 0;
	top: 100%;
}
.box2 .merit .merit_box:last-of-type {
	margin-bottom: 0;
}
.box2 .merit .merit_box .in_box {
	width: 100%;
	max-width: 1220px;
	margin-left: auto;
	margin-right: auto;
}
.box2 .merit .merit_box .first_flex {
	width: 100%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
    align-items: center;
	margin-bottom: 40px;
}
.box2 .merit .merit_box .first_flex.img_l {
	flex-direction: row-reverse;
}
.box2 .merit .merit_box .first_flex .img_box {
	width: 53%;
	max-width: 580px;
}
.box2 .merit .merit_box .first_flex .no {
	color: #85b145;
	font-size: 495%;
	letter-spacing: .05em;
	line-height: 1.0em;
	position: relative;
	padding-left: .65em;
}
.box2 .merit .merit_box .first_flex .no span {
	display: block;
	color: #2b3141;
	font-size: 25%;
	letter-spacing: .15em;
	line-height: 1.2em;
	background: #fff;
	position: absolute;
	left: 0;
	top: 45%;
}
.box2 .merit .merit_box .first_flex .txt1 {
	font-size: min(200%,2.7vw);
	letter-spacing: .15em;
	line-height: 1.4em;
	margin: .8em 0 .5em;
}
.box2 .merit .merit_box .first_flex .txt1 .txt_large {
	display: block;
	font-size: 145%;
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-top: .2em;
}
.box2 .merit .merit_box .first_flex .txt2 {
	font-size: min(155%,2.0vw);
	letter-spacing: .15em;
	line-height: 1.4em;
}
.box2 .merit .merit_box .icon_list {
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.box2 .merit .merit_box .icon_list li {
	width: 49.5%;
	max-width: 600px;
	margin-top: 1.5%;
	box-sizing: border-box;
	background: #f2f2f3;
	padding: 40px 3%;
	display: flex;
    justify-content: space-between;
    align-items: center;
}
.box2 .merit .merit_box .icon_list .icon {
	width: 19%;
	max-width: 96px;
}
.box2 .merit .merit_box .icon_list .icon_style {
	width: 77%;
	max-width: 400px;
	line-height: 1.8em;
}
.box2 .merit .merit_box .icon_list .icon_style > dt {
	font-size: min(125%,2.0vw);
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: .5em;
}
.box2 .merit .merit1 .sub_index {
	text-align: center;
	color: #354f72;
	font-size: 125%;
	letter-spacing: .15em;
	line-height: 1.6em;
	padding-bottom: 1.0em;
	border-bottom: solid 1px #354f72;
	margin-bottom: 50px;
}
.box2 .merit .merit1 .sub_box .flex_box {
	width: 100%;
	max-width: 920px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
}
.box2 .merit .merit1 .sub_box .flex_box dt {
	font-size: 110%;
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-top: 1.5em;
	margin-bottom: .5em;
}
.box2 .merit .merit1 .sub_box .flex_box dt:first-child {
	margin-top: 0;
}
.box2 .merit .merit1 .sub_box .com_minimaru_list {
	font-size: 95%;
	letter-spacing: .15em;
}

.box2 .osusume {
	background: rgba(133,177,69,0.2) url("../images/acupuncture/bg1@2x.png") no-repeat right bottom;
	background-size: 500px auto;
	padding: 80px 0;
}
.box2 .osusume h3 {
	font-size: 160%;
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: 1.2em;
}
.box2 .osusume li {
	font-size: 110%;
	letter-spacing: .15em;
	line-height: 1.6em;
	padding-left: 1.8em;
	margin-top: .6em;
	position: relative;
}
.box2 .osusume li::before {
	content: "";
	position: absolute;
	width: 1.3em;
	height: 1.3em;
	background: url("../images/acupuncture/chk_icon2.svg") no-repeat center center;
	background-size: 100% auto;
	left: 0;
	top: .1em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box2 .lead .title_box {
	margin-bottom: 3%;
}

.box2 .merit {
	padding: 60px 0 70px;
}
.box2 .merit .merit_index {
	margin-bottom: 8%;
}
.box2 .merit .merit_box {
	border-radius: 6vw;
	padding: 6% 4% 8%;
	margin-bottom: 6%;
}
.box2 .merit .merit_box .first_flex {
	margin-bottom: 4%;
}
.box2 .merit .merit_box .first_flex .no {
	font-size: 400%;
}
.box2 .merit .merit_box .first_flex .txt1 {
	font-size: 3.0vw;
	letter-spacing: .05em;
	margin: .5em 0 .2em;
}
.box2 .merit .merit_box .first_flex .txt1 .txt_large {
	letter-spacing: .05em;
	margin-top: 0;
}
.box2 .merit .merit_box .first_flex .txt2 {
	font-size: 2.2vw;
	letter-spacing: .05em;
}
.box2 .merit .merit_box .icon_list li {
	margin-top: 1%;
	padding: 3% 3%;
}
.box2 .merit .merit_box .icon_list .icon {
	width: 23%;
}
.box2 .merit .merit_box .icon_list .icon_style {
	width: 70%;
	font-size: 90%;
	line-height: 1.8em;
}
.box2 .merit .merit_box .icon_list .icon_style > dt {
	font-size: 2.4vw;
	letter-spacing: .05em;
	line-height: 1.4em;
	margin-bottom: .3em;
}
.box2 .merit .merit1 .sub_index {
	margin-bottom: 4%;
}
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(1) {
	width: 25%;
}
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(2) {
	width: 40%;
}
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(3) {
	width: 25%;
}
.box2 .merit .merit1 .sub_box .com_minimaru_list {
	font-size: 90%;
	letter-spacing: .05em;
}

.box2 .osusume {
	background-size: 40% auto;
	padding: 6% 0;
}
.box2 .osusume h3 {
	font-size: 140%;
}
.box2 .osusume li {
	font-size: 105%;
	letter-spacing: .1em;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box2 .lead .title_box {
	margin-bottom: 4%;
}
.box2 .lead .title_box .item_list {
	width: 70%;
	margin: 0 auto 6%;
	display: flex;
    justify-content: space-between;
}
.box2 .lead .title_box .item_list li {
	position: static;
	width: 25%;
	transform: none !important;
}
.box2 .lead .title_box .ft_shuei {
	font-size: 150%;
	letter-spacing: .1em;
}
.box2 .lead .title_box .ft_shuei .txt_large {
	letter-spacing: .1em;
	margin-top: 0;
}
.box2 .lead .title_box .ft_shuei .page_color {
	letter-spacing: .1em;
}

.box2 .merit {
	padding: 10% 0 13%;
}
.box2 .merit .merit_index {
	display: block;
	text-align: center;
	margin-bottom: 8%;
}
.box2 .merit .merit_index .txt1 {
	font-size: 130%;
	letter-spacing: .1em;
	margin: 0 0 .4em;
}
.box2 .merit .merit_index .txt1 br {
	display: none;
}
.box2 .merit .merit_index .txt2 {
	width: 80%;
	margin: 0 auto;
}
.box2 .merit .merit_box {
	border-radius: 8vw;
	padding: 3% 6% 10%;
	margin-bottom: 10%;
}
.box2 .merit .merit_box::before {
	width: 100%;
	height: 8vw;
	max-height: 100%;
}
.box2 .merit .merit_box .first_flex {
	display: block;
	margin-bottom: 6%;
}
.box2 .merit .merit_box .first_flex .img_box {
	width: 100%;
	margin: 6% auto 0;
	text-align: center;
}
.box2 .merit .merit_box .first_flex .no {
	font-size: 400%;
}
.box2 .merit .merit_box .first_flex .txt1 {
	font-size: 160%;
	letter-spacing: .1em;
	margin: .4em 0 .2em;
}
.box2 .merit .merit_box .first_flex .txt1 .txt_large {
	letter-spacing: .1em;
	margin-top: 0;
}
.box2 .merit .merit_box .first_flex .txt2 {
	font-size: 135%;
	letter-spacing: .05em;
}
.box2 .merit .merit_box .icon_list {
	display: block;
}
.box2 .merit .merit_box .icon_list li {
	width: 100%;
	max-width: 100%;
	margin-top: 3%;
	padding: 4% 6% 6%;
	display: block;
}
.box2 .merit .merit_box .icon_list .icon {
	width: 19%;
	margin: 0 auto .8em;
}
.box2 .merit .merit_box .icon_list .icon_style {
	width: 100%;
	max-width: 100%;
	line-height: 1.6em;
}
.box2 .merit .merit_box .icon_list .icon_style > dt {
	text-align: center;
	font-size: 125%;
	letter-spacing: .05em;
	line-height: 1.4em;
	margin-bottom: .5em;
}
.box2 .merit .merit_box .icon_list .icon_style > dt br.pc_only {
	display: block !important;
}
.box2 .merit .merit1 .sub_index {
	letter-spacing: .1em;
	padding-bottom: .5em;
	margin-bottom: 1.0em;
}
.box2 .merit .merit1 .sub_box .flex_box {
	display: block;
}
.box2 .merit .merit1 .sub_box .flex_box dt {
	letter-spacing: .1em;
	margin-top: 1.0em !important;
	margin-bottom: .3em;
}
.box2 .merit .merit1 .sub_box .com_minimaru_list {
	letter-spacing: normal;
}
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(1) .com_minimaru_list,
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(3) .com_minimaru_list {
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(1) .com_minimaru_list > li,
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(3) .com_minimaru_list > li {
	width: 50%;
}
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(1) .com_minimaru_list > li:nth-child(-n+2),
.box2 .merit .merit1 .sub_box .flex_box dl:nth-child(3) .com_minimaru_list > li:nth-child(-n+2) {
	margin-top: 0;
}

.box2 .osusume {
	background-size: 50% auto;
	padding: 10% 0;
}
.box2 .osusume h3 {
	font-size: 135%;
	letter-spacing: .05em;
	margin-bottom: 1.0em;
}
.box2 .osusume li {
	font-size: 110%;
	letter-spacing: normal;
	line-height: 1.4em;
}
}



/* box3
---------------------------------------------------------*/
.box3 .title_box {
	text-align: center;
	font-size: min(190%,3.2vw);
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: 50px;
}
.box3 .title_box h2 {
	color: #354f72;
	font-size: 115%;
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-top: .2em
}

.box3 .box_list > li {
	margin-bottom: 80px;
}
.box3 .box_list > li:last-child {
	margin-bottom: 0;
}
.box3 .box_list .flt_box .img_r {
	width: 38%;
	max-width: 507px;
	float: right;
}
.box3 .box_list .flt_box .txt_l {
	width: 59%;
	max-width: 780px;
	float: left;
}
.box3 .box_list .style1 > dt,
.box3 .box_list .style1 > dd {
	padding-left: 8%;
}
.box3 .box_list .style1 > dt {
	color: #354f72;
	font-size: min(220%,3.5vw);
	letter-spacing: .15em;
	line-height: 1.6em;
	padding-bottom: .5em;
	margin-bottom: 1.0em;
	position: relative;
}
.box3 .box_list .style1 > dt::before {
	content: "";
	position: absolute;
	width: 115%;
	height: 1px;
	background: #354f72;
	left: 0;
	bottom: 0;
}

.box3 .dr_box {
	background: #f7f7f7;
	padding: 60px 4%;
}
.box3 .dr_box .flex_box {
	width: 100%;
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
	flex-direction: row-reverse;
}
.box3 .dr_box .flex_box .img_r {
	width: 28%;
	max-width: 270px;
}
.box3 .dr_box .flex_box .txt_l {
	width: 68%;
	max-width: 745px;
}
.box3 .dr_box .dr_name dd {
	font-size: 190%;
	letter-spacing: .15em;
	line-height: 1.4em;
	margin-top: .2em;
	margin-bottom: .3em;
}
.box3 .dr_box .com_stf_prof {
	margin-top: 1.2em;
}
.box3 .dr_box .com_stf_prof dd li {
	margin-top: .5em;
}
.box3 .dr_box .com_stf_prof dd li:first-child {
	margin-top: 0;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.box3 .title_box {
	letter-spacing: .1em;
	margin-bottom: 3%;
}
.box3 .title_box h2 {
	letter-spacing: .1em;
}

.box3 .box_list > li {
	margin-bottom: 8%;
}
.box3 .box_list .flt_box .img_r {
	width: 38%;
}
.box3 .box_list .flt_box .txt_l {
	width: 58%;
}
.box3 .box_list .style1 > dt,
.box3 .box_list .style1 > dd {
	padding-left: 5%;
}
.box3 .box_list .style1 > dt {
	letter-spacing: .1em;
	margin-bottom: .8em;
}

.box3 .dr_box {
	padding: 5% 4%;
}
.box3 .dr_box .dr_name {
	display: flex;
    align-items: center;
	margin-bottom: .5em;
}
.box3 .dr_box .dr_name dd {
	margin: 0 0 0 .5em;
}
.box3 .dr_box .com_stf_prof dd li {
	margin-top: 0;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.box3 .title_box {
	font-size: 140%;
	letter-spacing: .1em;
	margin-bottom: 4%;
}
.box3 .title_box h2 {
	font-size: 130%;
	letter-spacing: .1em;
	line-height: 1.4em;
	margin-top: .2em
}

.box3 .box_list > li {
	margin-bottom: 10%;
}
.box3 .box_list .flt_box .img_r {
	width: 80%;
	float: none;
	margin: 0 auto 1.0em;
}
.box3 .box_list .flt_box .txt_l {
	width: 100%;
	max-width: 100%;
	float: none;
}
.box3 .box_list .style1 > dt,
.box3 .box_list .style1 > dd {
	padding-left: 5%;
	padding-right: 5%;
}
.box3 .box_list .style1 > dt {
	text-align: center;
	font-size: 160%;
	letter-spacing: .1em;
	line-height: 1.4em;
	padding-bottom: .5em;
	margin-bottom: .6em;
}
.box3 .box_list .style1 > dt::before {
	width: 100%;
}

.box3 .dr_box {
	padding: 8% 6%;
}
.box3 .dr_box .flex_box {
	display: block;
}
.box3 .dr_box .flex_box .img_r {
	width: 50%;
	margin: 0 auto 1.0em;
}
.box3 .dr_box .flex_box .txt_l {
	width: 100%;
	max-width: 100%;
}
.box3 .dr_box .dr_name {
	display: flex;
    justify-content: center;
    align-items: center;
	font-size: 110%;
	letter-spacing: .15em;
	margin-bottom: .5em;
}
.box3 .dr_box .dr_name dd {
	margin: 0 0 0 .5em;
}
.box3 .dr_box .dr_name dd {
	font-size: 160%;
	letter-spacing: .15em;
}
.box3 .dr_box .com_stf_prof {
	margin-top: 1.0em;
}
.box3 .dr_box .com_stf_prof dd li {
	margin-top: .2em;
}
}



/* case_box
---------------------------------------------------------*/
.case_box {
	background: #f3f7ec;
	padding: 100px 0 150px;
}
.case_box .box_list > li {
	background: #fff;
	border-radius: 30px;
	padding: 70px 4% 100px;
	margin-bottom: 60px;
	position: relative;
}
.case_box .box_list > li:last-child {
	margin-bottom: 0;
}
.case_box .box_list > li::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 5vw;
	max-height: 50px;
	background: url("../images/acupuncture/shadow@2x.png") no-repeat center top;
	background-size: 100% 100%;
	margin: auto;
	left: 0;
	right: 0;
	top: 100%;
}
.case_box .box_list .in_box {
	width: 100%;
	max-width: 930px;
	margin-left: auto;
	margin-right: auto;
}
.case_box .box_list .case_index {
	text-align: center;
	font-size: min(190%,3.2vw);
	letter-spacing: .15em;
	line-height: 1.4em;
	padding-bottom: .8em;
	margin-bottom: 70px;
	position: relative;
}
.case_box .box_list .case_index::before {
	content: "";
	position: absolute;
	width: 80%;
	max-width: 630px;
	height: 1px;
	background: #aaadb3;
	margin: auto;
	left: 0;
	right: 0;
	bottom: 0;
}
.case_box .box_list .photo {
	display: flex;
    justify-content: space-between;
}
.case_box .box_list .photo > div {
	width: 48%;
	max-width: 442px;
}
.case_box .box_list .detail {
	margin-top: 60px;
	width: 100%;
	border-top: solid 1px #aaadb3;
}
.case_box .box_list .detail th,
.case_box .box_list .detail td {
	border-bottom: solid 1px #aaadb3;
	box-sizing: border-box;
}
.case_box .box_list .detail th {
	border-right: dotted 1px #aaadb3;
	width: 22%;
	text-align: center;
	vertical-align: top;
	font-family: dnp-shuei-gothic-gin-std, sans-serif;
	font-weight: 600;
	font-style: normal;
	font-size: 110%;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: 1.0em 0;
}
.case_box .box_list .detail td {
	width: 78%;
	text-align: left;
	vertical-align: middle;
	padding: 1.0em 4%;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.case_box {
	padding: 70px 0 80px;
}
.case_box .box_list > li {
	border-radius: 4vw;
	padding: 6% 4% 8%;
	margin-bottom: 6%;
}
.case_box .box_list .case_index {
	letter-spacing: .1em;
	padding-bottom: .5em;
	margin-bottom: 6%;
}
.case_box .box_list .detail {
	margin-top: 5%;
}
.case_box .box_list .detail th {
	letter-spacing: .1em;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.case_box {
	padding: 10% 0 13%;
}
.case_box .box_list > li {
	border-radius: 5vw;
	padding: 6% 6% 8%;
	margin-bottom: 8%;
}
.case_box .box_list > li::before {
	height: 8vw;
	max-height: 100%;
}
.case_box .box_list .case_index {
	font-size: 140%;
	letter-spacing: .05em;
	padding-bottom: .4em;
	margin-bottom: 7%;
}
.case_box .box_list .detail {
	margin-top: 6%;
}
.case_box .box_list .detail tr,
.case_box .box_list .detail th,
.case_box .box_list .detail td {
	display: block;
	width: 100%;
}
.case_box .box_list .detail th {
	border-right: none;
	border-bottom: dotted 1px #aaadb3;
	padding: .5em 0;
}
.case_box .box_list .detail td {
	padding: 1.0em 0;
}
}



/* voice_box
---------------------------------------------------------*/
.voice_box {
	background: #868686 url("../images/acupuncture/bg2@2x.jpg") no-repeat center top;
	background-size: 100% auto;
	padding: 100px 0;
}
.voice_box .title_box {
	text-align: center;
	margin-bottom: 80px;
}
.voice_box .title_box .ft_shuei {
	display: inline-block;
	padding-left: 1.5em;
	padding-right: 1.0em;
	color: #fff;
	font-size: 125%;
	letter-spacing: .15em;
	line-height: 1.4em;
	position: relative;
	margin-bottom: 1.5em;
}
.voice_box .title_box .ft_shuei::before,
.voice_box .title_box .ft_shuei::after {
	content: "";
	position: absolute;
	width: 1px;
	height: 2.0em;
	background: #fff;
	top: 0;
}
.voice_box .title_box .ft_shuei::before {
	left: 0;
	transform: rotate(-35deg);
}
.voice_box .title_box .ft_shuei::after {
	right: 0;
	transform: rotate(35deg);
}
.voice_box .title_box h2 {
	width: 70%;
	margin: 0 auto;
}

.voice_box .box_list > li {
	background: #fff;
	border-radius: 50px;
	padding: 75px 4%;
	margin-bottom: 50px;
}
.voice_box .box_list > li:last-child {
	margin-bottom: 0;
}
.voice_box .box_list .in_box {
	width: 100%;
	max-width: 950px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}
.voice_box .box_list .txt_box {
	width: 74%;
	max-width: 685px;
	margin-left: auto;
	margin-right: 0;
}
.voice_box .box_list .in_box::before {
	content: "";
	position: absolute;
	width: 22%;
	max-width: 200px;
	aspect-ratio: 1 / 1;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background: url("../images/acupuncture/voic_icon1@2x.png") no-repeat center center;
	background-size: contain;
}
.voice_box .box_list .voic_style1 {
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
	margin-bottom: 1.0em;
}
.voice_box .box_list .voic_style1:last-of-type {
	margin-bottom: 1.5em;
}
.voice_box .box_list .voic_style1 > dt {
	width: 20%;
	background: #d2d4d7;
	text-align: center;
	letter-spacing: .15em;
	line-height: 1.2em;
	padding: .5em 0;
}
.voice_box .box_list .voic_style1 > dd {
	width: 76%;
	font-size: min(175%,3.0vw);
	letter-spacing: .1em;
	line-height: 1.2em;
}

.voice_box .box_list > li:nth-child(5n-3) .in_box::before {
	background-image: url("../images/acupuncture/voic_icon2@2x.png");
}
.voice_box .box_list > li:nth-child(5n-2) .in_box::before {
	background-image: url("../images/acupuncture/voic_icon3@2x.png");
}
.voice_box .box_list > li:nth-child(5n-1) .in_box::before {
	background-image: url("../images/acupuncture/voic_icon4@2x.png");
}
.voice_box .box_list > li:nth-child(5n) .in_box::before {
	background-image: url("../images/acupuncture/voic_icon5@2x.png");
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.voice_box {
	padding: 70px 0;
}
.voice_box .title_box {
	margin-bottom: 6%;
}
.voice_box .title_box .ft_shuei {
	font-size: 120%;
	margin-bottom: 1.0em;
}

.voice_box .box_list > li {
	border-radius: 5vw;
	padding: 6% 4%;
	margin-bottom: 4%;
}
.voice_box .box_list .voic_style1:last-of-type {
	margin-bottom: 1.2em;
}
.voice_box .box_list .voic_style1 > dt {
	letter-spacing: .1em;
}
.voice_box .box_list .voic_style1 > dd {
	letter-spacing: .05em;
	padding-top: .1em;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.voice_box {
	padding: 10% 0;
}
.voice_box .title_box {
	margin-bottom: 8%;
}
.voice_box .title_box .ft_shuei {
	letter-spacing: .1em;
	margin-bottom: .5em;
}
.voice_box .title_box .ft_shuei::before,
.voice_box .title_box .ft_shuei::after {
	top: .6em;
	height: 2.0em;
}
.voice_box .title_box h2 {
	width: 100%;
}

.voice_box .box_list > li {
	border-radius: 7vw;
	padding: 6% 6% 8%;
	margin-bottom: 6%;
}
.voice_box .box_list .txt_box {
	width: 100%;
	max-width: 100%;
}
.voice_box .box_list .in_box::before {
	position: static;
	display: block;
	width: 40%;
	transform: none;
	margin: 0 auto 1.0em;
}
.voice_box .box_list .voic_style1 {
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
	margin-bottom: .5em;
}
.voice_box .box_list .voic_style1:last-of-type {
	margin-bottom: 1.0em;
}
.voice_box .box_list .voic_style1 > dt {
	width: 22%;
	letter-spacing: .1em;
	padding: .5em 0;
}
.voice_box .box_list .voic_style1 > dd {
	width: 75%;
	font-size: 130%;
	letter-spacing: .05em;
	padding-top: .2em;
}
.voice_box .box_list .voic_style1 > dd .sp_size {
	font-size: 80%;
	margin-left: -.3em;
}
}



/* flow_box
---------------------------------------------------------*/
.flow_box .med_flow_list .sub_box {
	clear: both;
	padding-left: 3.0em;
	padding-top: 30px;
}
.flow_box .med_flow_list .sub_box dl {
	background: #f3f7ec;
	padding: 40px 4%;
	line-height: 1.8em;
}
.flow_box .med_flow_list .sub_box dt {
	font-size: 125%;
	letter-spacing: .15em;
	line-height: 1.6em;
	padding-left: 1.5em;
	position: relative;
	margin-bottom: .8em;
}
.flow_box .med_flow_list .sub_box dt::before {
	font-family: 'fontello';
	content: '\e806';
	font-size: 60%;
	font-weight: normal;
	position: absolute;
	left: 0;
	top: .05em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.flow_box .med_flow_list .sub_box {
	padding-left: 2.0em;
	padding-top: 3%;
}
.flow_box .med_flow_list .sub_box dl {
	padding: 4% 4%;
}
.flow_box .med_flow_list .sub_box dt {
	letter-spacing: .1em;
	margin-bottom: .5em;
}
.flow_box .med_flow_list .sub_box dt::before {
	top: 0;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.flow_box .med_flow_list .sub_box {
	padding-left: 1.8em;
	padding-top: 1.5em;
}
.flow_box .med_flow_list .sub_box dl {
	padding: 6% 6%;
	line-height: 1.6em;
}
.flow_box .med_flow_list .sub_box dt {
	font-size: 120%;
	letter-spacing: .05em;
	line-height: 1.4em;
	padding-left: 1.0em;
	margin-bottom: .5em;
}
.flow_box .med_flow_list .sub_box dt::before {
	top: 0;
}
}



/* price_box
---------------------------------------------------------*/
.price_box .box_list {
	display: flex;
    justify-content: space-between;
}
.price_box .box_list > li {
	width: 49.5%;
	max-width: 600px;
	box-sizing: border-box;
	background: #f3f7ec;
	padding: 50px 3%;
	border-radius: 20px;
}
.price_box .box_list dt {
	text-align: center;
	color: #354f72;
	font-size: 155%;
	letter-spacing: .15em;
	line-height: 1.6em;
	padding-bottom: 1.2em;
	border-bottom: solid 1px #aaadb3;
	margin-bottom: 1.0em;
}
.price_box .box_list dd {
	width: 100%;
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}
.price_box .box_list dl + div {
	text-align: center;
	width: 80%;
	margin: 3.0em auto 0;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.price_box .box_list > li {
	padding: 4% 4%;
}
.price_box .box_list dt {
	font-size: 140%;
	letter-spacing: .1em;
	padding-bottom: .6em;
	margin-bottom: .8em;
}
.price_box .box_list dl + div {
	margin-top: 1.5em;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.price_box .box_list {
	display: block;
}
.price_box .box_list > li {
	width: 100%;
	max-width: 100%;
	padding: 4% 6% 6%;
	border-radius: 5vw;
	margin-bottom: 4%;
}
.price_box .box_list > li:last-child {
	margin-bottom: 0;
}
.price_box .box_list dt {
	font-size: 130%;
	letter-spacing: .1em;
	padding-bottom: .6em;
	margin-bottom: .8em;
}
.price_box .box_list dd {
	max-width: 100%;
}
.price_box .box_list dl + div {
	width: 70%;
	margin-top: 1.0em;
}
}



/* contact_box
---------------------------------------------------------*/
.contact_box {
	background: #85b145;
	padding: 100px 0;
	color: #fff;
}
.contact_box .w1100 {
	text-align: center;
}
.contact_box .title_box {
	font-size: 125%;
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: 40px;
}
.contact_box .title_box .ft_sonar {
	color: #a0c26e;
	font-size: min(370%,8.0vw);
	letter-spacing: .2em;
	line-height: 1.0em;
	margin-bottom: .2em;
}
.contact_box .txt > dt {
	font-size: 155%;
	letter-spacing: .15em;
	line-height: 1.6em;
	margin-bottom: .7em;
}
.contact_box .bg_white {
	background: #fff;
	padding: 20px 4%;
}
.contact_box .bg_white dl {
	display: flex;
    justify-content:  center;
    align-items: center;
}
.contact_box .bg_white dt {
	color: #757983;
	font-size: 110%;
	letter-spacing: .15em;
	line-height: 1.4em;
	padding: 1.5em 0;
	padding-right: 5%;
	border-right: solid 1px #aaadb3;
	margin-right: 5%;
}
.contact_box .bg_white dd {
	width: 50%;
	max-width: 402px;
}
.contact_box .bg_white + p {
	line-height: 1.6em;
	margin-top: 1.2em;
}

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
.contact_box {
	padding: 70px 0;
}
.contact_box .title_box {
	margin-bottom: 5%;
}
.contact_box .txt > dt {
	font-size: 140%;
	letter-spacing: .1em;
}
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
.contact_box {
	padding: 10% 0;
}
.contact_box .title_box {
	font-size: 120%;
	letter-spacing: .1em;
	margin-bottom: 8%;
}
.contact_box .title_box .ft_sonar {
	font-size: 280%;
	letter-spacing: .15em;
	margin-bottom: .2em;
}
.contact_box .txt > dt {
	text-align: center;
	font-size: 150%;
	letter-spacing: .1em;
	line-height: 1.5em;
	margin-bottom: .5em;
}
.contact_box .bg_white {
	padding: 4% 6% 4%;
}
.contact_box .bg_white dl {
	display: block;
}
.contact_box .bg_white dt {
	letter-spacing: .1em;
	padding: 0 0 .8em;
	border-right: none;
	border-bottom: solid 1px #aaadb3;
	margin: 0 0 .8em;
}
.contact_box .bg_white dd {
	width: 80%;
	margin: 0 auto;
}
.contact_box .bg_white + p {
	margin-top: .5em;
}
}



/* 
---------------------------------------------------------*/

/* Tablet (Portrait)
------------------------------------------*/
@media only screen and (min-width: 768px) and (max-width: 959px) {
}
	
/* Mobile (Portrait)
------------------------------------------*/
@media only screen and (max-width: 767px) {
}