@charset "utf-8";

/* 基本設定
--------------------------------------------------------------*/

body {
	min-width: 960px;
	color: #000;
	font-size: 16px;
}

a {
	color: #000;
}

.container {
	box-sizing: border-box;
	width: 960px;
	margin: 0 auto;
}

img {
	max-width: 100%;
	height: auto;
}

.img_switch {
	visibility: hidden;
}

.ls-05 {
	letter-spacing: -.5em;
}


@media only screen and (min-width:641px) {
  .sponly {
    display: none !important;
  }
}


/* Google Mapを囲う要素 */
.map {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 75%; /* 比率を4:3に固定 */
}
 
/* Google Mapのiframe */
.map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* 共通パーツ
--------------------------------------------------------------*/

/* パーツ・レイアウト ---------- */

/* 受付時間テーブル */

.cmn_temp01 table {
	width: 100%;
	border-top: 2px solid #d1cabf;
	border-bottom: 1px solid #d1cabf;
}

.cmn_temp01 table th,
.cmn_temp01 table td {
	font-size: 15px;
	text-align: center;
	line-height: 1;
	vertical-align: middle;
	padding: 8px 0;
}

.cmn_temp01 table thead th {
	border-bottom: 1px solid #d1cabf;
}

.cmn_temp01 table thead th:first-of-type {
	width: 102px;
}

.cmn_temp01 table tbody th,
.cmn_temp01 table tbody td {
	padding: 10px 0;
}

.cmn_temp01 table thead th + th,
.cmn_temp01 table tbody td {
	text-align: right;
}

.cmn_temp01 table tbody td {
	color: #f28500;
}

.cmn_temp01 table tbody tr:nth-of-type(odd) th,
.cmn_temp01 table tbody tr:nth-of-type(odd) td {
	padding-bottom: 7px;
}

.cmn_temp01 table tbody tr:nth-of-type(even) th,
.cmn_temp01 table tbody tr:nth-of-type(even) td {
	padding-top: 7px;
}

.cmn_temp01 ul {
	margin-top: 8px;
	line-height: 20px;
	font-size: 15px;
}

/* 画像右テキスト左 */

.cmn_temp02 .img {
	float: right;
	width: 400px;
	padding-top: 5px;
}

.cmn_temp02 .txt {
	float: left;
	width: 470px;
}

/* 画像右 */

.cmn_temp03 {
	position: relative;
	float: right;
	background: #fff;
	width: 450px;
	padding-bottom: 15px;
	line-height: 0;
	text-align: right;
	z-index: 2;
	margin-top: -63px;
}

/* map */

#map_canvas {
	width: 100%;
	height: 500px;
}


/* 見出し ---------- */

/* 01 */

.cmn_tit01 {
	position: relative;
	border: 3px solid #f28500;
	margin-bottom: 30px;
	padding: 10px 15px;
	font-size: 28px;
	font-weight: bold;
	color: #f28500;
	overflow: hidden;
	line-height: 1.2;
}

.cmn_tit01::before {
	display: block;
	content: "";
	position: absolute;
	top: -14px;
	left: -14px;
	background: #f28500;
	width: 24px;
	height: 24px;
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

/* 02 */

.cmn_tit02 {
	width: auto;
	position: relative;
	padding: 8px 10px;
	line-height: 1.2;
	font-size: 18px;
	font-weight: bold;
	border-left: 6px solid #f28500;
	border-bottom: 1px dotted #f28500;
	margin-bottom: 25px;
}

.cmn_tit02::after {
	display: block;
	content:"";
	position: absolute;
	top: 0;
	left: -6px;
	background: #626262;
	width: 6px;
	height: 50%;
}


/* header
--------------------------------------------------------------*/

.cmn_header {
	padding-top: 23px;
}

.header_info {
	margin-bottom: 20px;
}

/* title ---------- */

.header_info .tit {
	float: left;
	padding-left: 12px;
}

.header_info .tit .desc {
	font-size: 11px;
	line-height: 1.36;
}

.header_info h1 {
	line-height: 0;
	margin-top: 10px;
}

/* information ---------- */

.header_info .info {
	float: right;
	padding-right: 22px;
}

.header_info .info .tel {
	float: left;
	border: 1px solid #d1cabf;
	text-align: center;
	padding: 18px 20px;
	line-height: 1;
}

.header_info .info .tel .ico img {
	width: 30px;
}

.header_info .info .tel .txt {
	color: #f28500;
	font-size: 13px;
	line-height: 1.23;
	margin: 6px 0;
}

.header_info .info .time {
	float: left;
	width: 322px;
	margin-left: 20px;
}

.header_info .info .time.cmn_temp01 table th,
.header_info .info .time.cmn_temp01 table td {
	font-size: 13px;
}

.header_info .info .time.cmn_temp01 table thead th:first-of-type {
	width: 90px;
}

.header_info .info .time.cmn_temp01 table tbody th,
.header_info .info .time.cmn_temp01 table tbody td {
	padding: 8px 0;
}

.header_info .info .time.cmn_temp01 table tbody tr:nth-of-type(odd) th,
.header_info .info .time.cmn_temp01 table tbody tr:nth-of-type(odd) td {
	padding-bottom: 7px;
}

.header_info .info .time.cmn_temp01 table tbody tr:nth-of-type(even) th,
.header_info .info .time.cmn_temp01 table tbody tr:nth-of-type(even) td {
	padding-top: 7px;
}

.header_info .info .time.cmn_temp01 ul {
	margin-top: 5px;
	font-size: 13px;
}


/* global navi ---------- */

@media only screen and (min-width:641px) {
  .global_nav {
    display: block !important;
  }
}

.global_nav {
	background: #fff;
	padding: 20px 0;
}

.global_nav.is_fixed {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	min-width: 960px;
	z-index: 999;
	margin: 0;
	border-bottom: 1px solid #d1cabf;
}

.global_nav ul {
	font-size: 0;
	text-align: center;
}

.global_nav ul li {
	display: inline-block;
	height: 33px;
	line-height: 33px;
	font-size: 15px;
	vertical-align: middle;
}

.global_nav ul li + li {
	background: url("../img/cmn/bdr_nav01.png") no-repeat left center;
	margin-left: 19px;
	padding-left: 28px;
}


/* footer
--------------------------------------------------------------*/

.cmn_footer {
	background: #eeeae5;
}

.cmn_footer .container {
	padding: 100px 22px 0;
}

/* page_top ---------- */

.to_top {
	position: relative;
}

.to_top img {
	display: block;
	position: absolute;
	left: 50%;
	top: -40px;
	line-height: 0;
	margin-left: -50px;
	cursor: pointer;
	-webkit-transition: all .4s ease;
    -moz-transition: all .4s ease;
    -o-transition: all .4s ease;
	transition: all .4s ease;;
}

.to_top img:hover {
	opacity: .7;
}

/* navigation ---------- */

.footer_nav {
	float: left;
	width: 450px;
	font-size: 13px;
}

.footer_nav > ul:first-of-type {
	float: left;
}

.footer_nav > ul:nth-of-type(2) {
	float: right;
}

.footer_nav ul li {
	line-height: 1;
}

.footer_nav > ul > li + li {
	margin-top: 30px;
}

.footer_nav > ul > li > a {
	display: inline-block;
	background: url("../img/cmn/arrow01.png") no-repeat 2px center;
	font-weight: bold;
	min-height: 11px;
	padding-left: 15px;
}

.footer_nav ul li ul {
	margin-top: 15px;
	padding-left: 15px;
}

.footer_nav ul li ul li {
	margin-top: 10px;
}

/* information ---------- */

.footer_info {
	float: right;
	width: 372px;
}

.footer_info .logo {
	margin-bottom: 30px;
	line-height: 0;
}

.footer_info .contact {
	position: relative;
	line-height: 1;
	font-size: 15px;
	margin-bottom: 30px;
}

.footer_info .contact .txt {
	color: #f28500;
	font-weight: bold;
}

.footer_info .contact .txt::before {
	content: "■";
}

.footer_info .contact .tel {
	margin: 14px 0;
	line-height: 0;
}

.footer_info .contact .addr {
	font-size: 15px;
	letter-spacing: -.05em;
}

.footer_info .contact .access {
	position: absolute;
	top: 7px;
	right: 0;
}

/* copyright ---------- */

.footer_copy {
	background: #d1cabf;
	height: 30px;
	margin-top: 90px;
	line-height: 30px;
	text-align: center;
}

.footer_copy small {
	font-size: 13px;
}


/* TOP
--------------------------------------------------------------*/

.top_page {
	text-align: center;
	line-height: 1.75;
}

.top_page .container {
	padding: 0 20px;
}

.top_page h2 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.6;
	margin-bottom: 25px;
}

.top_page h2::after {
	content: "";
	display: block;
	background: #f28500;
	width: 100px;
	height: 3px;
	margin: 20px auto 0;
}

/* mv ---------- */

.top_mv {
	line-height: 0;
}

.top_mv .slide li {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	width: 100%;
	height: 500px;
}

.top_mv .slide li.slide01 {
	background-image: url("../img/top/slide01.jpg");
}

.top_mv .slide li.slide02 {
	background-image: url("../img/top/slide02.jpg");
}

.top_mv .slide li.slide03 {
	background-image: url("../img/top/slide03.jpg");
}

.top_mv .slide li.slide04 {
	background-image: url("../img/top/slide04.jpg");
}

.top_mv .slide .txt {
	padding: 55px 20px 0;
	text-align: left;
}

/* about ---------- */

.top_page .top_about h2 {
	font-size: 28px;
	line-height: 1.71;
}

.top_about {
	padding: 90px 0 95px;
}

.top_about p + p {
	margin-top: 28px;
}

/* case ---------- */

.top_case {
	background: #eeeae5;
	padding: 90px 0 100px;
}

.top_case h2 {
	margin-bottom: 6px;
}

.top_case ul li {
	float: left;
	margin: 24px 25px 0 0;
}

.top_case ul li:nth-child(3n) {
	margin-right: 0;
}

.top_case ul li:nth-child(3n+4) {
	clear: both;
}

.top_case ul li a {
	position: relative;
	box-sizing: border-box;
	display: block;
	background: #fff;
	width: 290px;
	height: 290px;
	border: 3px solid #f28500;
	overflow: hidden;
}

.top_case ul li a::before {
	content: "";
	position: absolute;
	top: -24px;
	left: -24px;
	background: #f28500;
	width: 40px;
	height: 40px;
	-webkit-transform: rotate(-45deg);
	   -moz-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	     -o-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}

.top_case ul li .img {
	height: 140px;
	line-height: 140px;
}

.top_case ul li .img img {
	vertical-align: bottom;
}

.top_case ul li .tit {
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	margin: 25px 0 22px;
}

.top_case ul li .txt {
	font-size: 15px;
	line-height: 1.86;
}

/* first ---------- */

.top_first {
	padding: 90px 0 100px;
}

.top_first .img {
	float: left;
	line-height: 0;
}

.top_first .txt {
	float: right;
	width: 370px;
	text-align: left;
}

.top_first .txt p + p {
	margin-top: 28px;
}

.top_first ul {
	margin-top: 50px;
}

.top_first ul li {
	float: left;
}

.top_first ul li + li {
	margin-left: 25px;
}

.top_first ul li a {
	display: block;
	background: #f90 url("../img/top/arrow01.png") no-repeat right 20px center;
	width: 290px;
	height: 54px;
	line-height: 54px;
	color: #fff;
	font-weight: bold;
}

/* question/blog ---------- */

.top_qb_wrap {
	background: #eeeae5;
	padding: 90px 0 95px;
}

.top_qb_wrap .container {
	position: relative;
	width: 100%;
	max-width: 1400px;
	padding: 0;
}

.top_qb_wrap .container::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 50%;
	background: #f28500;
	width: 2px;
	height: 100%;
	margin-left: -1px;
}

.top_question,
.top_blog {
	width: 50%;
}

.top_question .inner,
.top_blog .inner {
	width: 450px;
}

.top_question ul,
.top_blog ul {
	text-align: left;
}

/* quastion */

.top_question {
	float: left;
	background: url("../img/top/bg01.png") no-repeat center 20px;
	padding-bottom: 30px;
}

.top_question .inner {
	float: right;
	margin-right: 10px;
}

.top_question ul li + li {
	margin-top: 42px;
}

.top_question ul li a {
	display: inline-block;
	background: url("../img/top/arrow02.png") no-repeat left top;
	min-height: 20px;
	padding-left: 30px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
}

/* blog */

.top_blog {
	float: right;
	background: url("../img/top/bg02.png") no-repeat 225px 65px;
}

.top_blog ul {
	padding-left: 50px;
}

.top_blog ul li {
	line-height: 1;
}

.top_blog ul li + li {
	border-top: 1px dotted #f28500;
	margin-top: 15px;
	padding-top: 20px;
}

.top_blog ul li .date {
	color: #f28500;
	margin-bottom: 12px;
}

.top_blog ul li .tit {
	overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* access ---------- */

.top_access {
	padding: 90px 0 160px;
}

.top_access h2 {
	margin-bottom: 30px;
}


/* 下層共通
--------------------------------------------------------------*/

.cmn_wrapper {
	padding: 0 20px;
	padding-bottom: 160px;
}

/* page title ---------- */

.page_tit {
	background: url("../img/cmn/bg_page_tit.png") center center;
}

.page_tit .container {
	background-position: right center;
	background-repeat: no-repeat;
	max-width: 920px;
	height: 200px;
}

.page_tit h2 {
	padding-top: 64px;
	line-height: 1;
	font-size: 40px;
	font-weight: bold;
	font-feature-settings : "palt";
	color: #f28500;
}

.page_tit h2::after {
	display: block;
	content: "";
	background: #f28500;
	width: 100px;
	height: 3px;
	margin-top: 20px;
}

/* breadcrumbs ---------- */

.breadcrumbs {
	margin: 5px 0 0;
	font-size: 0;
}

.breadcrumbs ol li {
	display: inline;
	font-size: 13px;
}

.breadcrumbs ol li + li {
	margin-left: .2em;
}

.breadcrumbs ol li + li::before {
	display: inline;
/*	content: "\003e";*/
	margin-right: .2em;
}

/* page_content ---------- */

.page_content {
	line-height: 1.75;
}

.page_content > div:first-of-type {
	padding-top: 73px;
}

.page_content > .page_sec ~ .page_sec {
	padding-top: 90px;
}

.page_content p ~ p {
	margin-top: 28px;
}

.page_content .s_child {
	margin-top: 60px;
}


/* 初めての方へ
--------------------------------------------------------------*/

.page_first .page_tit .container {
	background-image: url("../img/first/bg_tit.png");
}

/* catch */

.first_catch {
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.71;
}

/* 当院について */

.first_about {
	padding-top: 90px;
}

/* 健康と病気のあいだ？ */

.first_between .list {
	background: #eeeae5;
	margin: 45px 0;
	padding: 20px 20px 25px;
}

.first_between .list .img {
	width: 216px;
	float: left;
	margin-right: 10px;
	padding-top: 3px;
	line-height: 0;
}

.first_between .list .img img + img {
	margin-top: 40px;
}

.first_between .list ol {
	width: 654px;
	float: left;
}

.first_between .list ol li + li {
	margin-top: 25px;
}

.first_between .list ol li .tit {
	float: left;
	width: 100px;
	height: 20px;
	line-height: 20px;
	font-size: 16px;
	font-weight: bold;
}

.first_between .list ol li .tit .num {
	display: inline-block;
	background: #f28500;
	width: 20px;
	height: 20px;
	border-radius: 10px;
	font-weight: normal;
	color: #fff;
	text-align: center;
	margin-right: 10px;
}

.first_between .list ol li .txt {
	float: left;
	box-sizing: border-box;
	background: url("../img/first/bdr01.png") no-repeat left 12px;
	width: 554px;
	padding-left: 85px;
	margin-top: -4px;
}

/* 病院医療と東洋医療(鍼灸・漢方)の違い */

.first_difference .table {
	margin-top: 45px;
	border-top: 1px solid #f28500;
}

.first_difference table {
	width: 100%;
	table-layout: fixed;
}

.first_difference table th,
.first_difference table td {
	border-bottom: 1px solid #f28500;
}

.first_difference table th {
	background: #fad3a3;
	vertical-align: middle;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.first_difference table thead th {
	position: relative;
	height: 62px;
	border-bottom: none;
}

.first_difference table thead th::after {
	display: block;
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	background: #f28500;
	width: 100%;
	height: 1px;
}

.first_difference table thead th:first-of-type {
	width: 150px;
}

.first_difference table thead th:last-of-type {
	width: 385px;
}

.first_difference table thead th ~ th::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: #fff;
	width: 1px;
	height: 62px;
}

.first_difference table tbody td {
	box-sizing: border-box;
	padding: 15px 30px 15px 22px;
}

.first_difference table tbody tr td:nth-of-type(2) {
	background: #f6f4f2;
}

.first_difference table tbody td ul li {
	padding-left: 20px;
	text-indent: -20px;
}

.first_difference table tbody td ul li::before {
	content: "●";
	font-size: 10px;
	vertical-align: middle;
	color: #f28500;
	margin-right: 10px;
}

/* スタッフごあいさつ */

.page_content > section.first_staff {
	margin-top: 100px;
}

.first_staff .cmn_tit01 {
	margin-bottom: 30px;
}

.first_staff dl dt {
	float: left;
	clear: both;
	box-sizing: border-box;
	width: 230px;
	padding: 15px 0 0 20px;
	font-weight: bold;
}

.first_staff dl dt span {
	display: block;
}

.first_staff dl dt .job {
	font-size: 18px;
	color: #f28500;
}

.first_staff dl dt .job::after {
	display: block;
	content: "";
	background: #f28500;
	width: 20px;
	height: 3px;
	margin: 3px 0;
}

.first_staff dl dt .name {
	font-size: 20px;
}

.first_staff dl dd {
	padding: 15px 20px 20px 230px;
	border-top: 1px solid #f28500;
	border-bottom: 1px solid #f28500;
	margin-bottom: 30px;
}

.first_staff dl dd:last-of-type {
	margin-bottom: 0;
}

.first_staff dl dd p {
	padding-right: 10px;
}

.first_staff dl dd table {
	width: 100%;
	margin-top: 20px;
}

.first_staff dl dd table th,
.first_staff dl dd table td {
	vertical-align: middle;
}

.first_staff dl dd table th {
	background: #707070;
	width: 85px;
	color: #fff;
	text-align: center;
	padding: 5px 0;
}

.first_staff dl dd table td {
	background: #f6f4f2;
	padding: 5px 12px;
}


/* 鍼灸について
--------------------------------------------------------------*/

.page_about .page_tit .container {
	background-image: url("../img/about/bg_tit.png");
}

/* 東洋医学とは？ ---------- */

.about_about dl {
	background: #f6f4f2;
	margin-top: 25px;
	padding: 15px 23px;
}

.about_about dl dt {
	float: left;
	width: 3em;
}

.about_about dl dt::before {
	content: "※";
}

.about_about dl dd {
	background: url("../img/about/bdr01.png") no-repeat 3.5em .75em;
	padding-left: 90px;
}

/* 鍼灸治療と自然治癒力 ---------- */

.page_content > .page_sec.about_heal {
	padding-top: 100px;
}


/* こんな症状でお悩みの方
--------------------------------------------------------------*/

.page_case .page_tit .container {
	background-image: url("../img/case/bg_tit.png");
}

.page_case .page_content > .page_sec ~ .page_sec {
	padding-top: 95px;
}

.page_case .page_content > .page_sec:nth-of-type(odd) .img,
.page_case .page_content > .page_sec:nth-of-type(even) .txt {
	float: left;
}

.page_case .page_content > .page_sec:nth-of-type(even) .img,
.page_case .page_content > .page_sec:nth-of-type(odd) .txt {
	float: right;
}


.page_case .page_content > .page_sec .img {
	width: 400px;
}

.page_case .page_content > .page_sec .txt {
	width: 470px;
}

/* 自律神経の乱れ ---------- */

.case_autonomic .child + .child {
	margin-top: 25px;
}

.case_autonomic .child .cmn_tit02 {
	margin-bottom: 15px;
}

.case_autonomic .child p + p {
	margin-top: 15px;
}

/* 肩こり・腰痛などの凝り・痛み ---------- */

.case_stiff > p:first-of-type {
	margin-top: 30px;
}

/* 鍼灸の適応症 ---------- */

.case_indications table {
	width: 100%;
}

.case_indications table th,
.case_indications table td {
	vertical-align: middle;
	height: 80px;
}

.case_indications table tr:nth-of-type(odd) th,
.case_indications table tr:nth-of-type(odd) td {
	background: #f6f4f2;
}

.case_indications table th {
	width: 195px;
	padding-left: 20px;
	font-weight: bold;
	color: #f28500;
}

.case_indications table th::before {
	content: "○";
	margin-right: 4px;
}

.case_indications table td {
	padding-right: 25px;
}


/* 施術料金
--------------------------------------------------------------*/

.page_price .page_tit .container {
	background-image: url("../img/price/bg_tit.png");
}

.page_price .page_content > .page_sec ~ .page_sec {
	padding-top: 100px;
}


.page_price .prices {
	margin-top: 25px;
}

.page_price .prices li {
	box-sizing: border-box;
	float: left;
	background: #ffe5b2;
	width: 48.9%;
	padding: 25px 25px 20px;
	font-weight: bold;
	text-align: center;
}

.page_price .prices li:nth-child(even) {
	float: right;
}

.page_price .prices li dl dt {
	background: #f28500;
	height: 50px;
	margin-bottom: 22px;
	line-height: 50px;
	font-size: 20px;
	color: #fff;
}

.page_price .prices li dl dd {
	line-height: 1;
	font-size: 22px;
}

.page_price .noburden {
	background: #ffe5b2;
	height: 80px;
	line-height: 80px;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
}

/* 施術の流れ ---------- */

.price_flow ol li + li {
	margin-top: 30px;
}

.price_flow ol li .tit {
	height: 41px;
	margin-bottom: 20px;
	line-height: 41px;
	font-size: 24px;
	font-weight: bold;
}

.price_flow ol li .tit .num {
	display: inline-block;
	background: url("../img/price/bg01.png") no-repeat left center;
	width: 40px;
	height: 41px;
	margin-right: 10px;
	font-size: 18px;
	color: #fff;
	text-align: center;
}

.price_flow ol li .inner {
	box-sizing: border-box;
	margin-left: 15px;
	padding-left: 25px;
	border-left: 10px solid #bfbfbf;
}

.price_flow ol li .inner .img {
	line-height: 0;
	float: left;
}

.price_flow ol li .inner .txt {
	width: 500px;
	float: right;
	margin-top: -5px;
}

.price_flow .att {
	background: #feecd2;
	border: 1px solid #f28500;
	margin-top: 80px;
	padding: 14px;
}

.price_flow .att dl {
	position: relative;
	background: #fff;
	padding: 10px 0;
	font-size: 0;
}

.price_flow .att dl::after {
	display: block;
	content: "";
	position: absolute;
	top: 10px;
	left: 345px;
	background: #f28500;
	width: 1px;
	height: calc(100% - 20px);
}

.price_flow .att dl dt,
.price_flow .att dl dd {
	box-sizing: border-box;
	display: inline-block;
	vertical-align: middle;
}

.price_flow .att dl dt {
	width: 345px;
	font-size: 20px;
	font-weight: bold;
	text-align: center
}

.price_flow .att dl dd {
	width: 545px;
	font-size: 16px;
	padding: 7px 0 7px 80px;
}


/* 当院案内・アクセス
--------------------------------------------------------------*/

.page_guide .page_tit .container {
	background-image: url("../img/guide/bg_tit.png");
}

.page_guide .page_content > .page_sec ~ .page_sec {
	padding-top: 100px;
}

/* 当院案内 ---------- */

.guide_guide .txt {
	box-sizing: border-box;
	float: right;
	width: 450px;
	padding: 0 60px 0 20px;
}

.guide_guide .logo {
	line-height: 0;
	margin-bottom: 25px;
}

.guide_guide .txt .tel {
	background: #f90;
	color: #fff;
	text-align: center;
	padding: 12px 25px;
}

.guide_guide .txt .tel .tit {
	position: relative;
	font-size: 15px;
	line-height: 1;
}

.guide_guide .txt .tel .tit::after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	background: #fff;
	width: 100%;
	height: 2px;
	margin-top: -1px;
}

.guide_guide .txt .tel .tit span {
	position: relative;
	display: inline-block;
	background: #f90;
	padding: 0 10px;
	z-index: 2;
}

.guide_guide .txt .tel .num {
	margin: 10px 0 0;
	line-height: 0;
}

.guide_guide .txt .info {
	margin: 25px 0 15px;
}

.guide_guide .txt .info dt {
	float: left;
	clear: both;
}

.guide_guide .txt .info dt::after {
	content: "：";
}

.guide_guide .img {
	float: left;
	width: 450px;
	line-height: 0;
}

.guide_guide .imgs {
	margin-top: 70px;
	font-size: 0;
	line-height: 0;
}

.guide_guide .imgs img {
	width: 32%;
	margin-right: 2%;
}

.guide_guide .imgs img:nth-of-type(3n) {
	margin-right: 0;
}

/* アクセス ---------- */

.guide_access ul {
	margin-bottom: 50px;
}

.guide_access ul li {
	box-sizing: border-box;
	float: left;
	background-position: left center;
	background-repeat: no-repeat;
	width: 450px;
	min-height: 60px;
	padding-left: 70px;
}

.guide_access ul li:nth-child(1) {
	background-image: url("../img/guide/ico01.png");
}

.guide_access ul li:nth-child(2) {
	background-image: url("../img/guide/ico02.png");
}

.guide_access ul li .tit {
	font-size: 18px;
	font-weight: bold;
	color: #f28500;
}

.guide_access ul li .txt {
	margin-top: 0;
}


/* 漢方療院便り　一覧・詳細共通
--------------------------------------------------------------*/

.page_blog .page_tit .container {
	background-image: url("../img/blog/bg_tit.png");
}

/* main column ---------- */

.main_col {
	float: left;
	width: 665px;
}

/* sidebar ---------- */

.sidebar {
	float: right;
	width: 215px;
	padding-top: 73px;
}

.sidebar ul li {
	margin-top: 19px;
	line-height: 1;
	border-bottom: 1px dotted #f28500;
}

.sidebar .latest_list a{
	display: block;
/*	padding-bottom: 8px;
*/
}
/*.sidebar .cat_list ul li a {*/
/*	display: inline-block;*/
/*}*/

.sidebar .children {
	border-top: 1px dotted #f28500;
}

.sidebar li{
	padding-bottom: 8px;
}

.sidebar .children{
    margin-top: 3px;
}
.sidebar .children li:last-child {
	border-bottom: none;
}

.sidebar .children li a {
	padding-left: 1em;
	text-indent: -1em;
    display: inline-block;
}

.sidebar .children li a::before {
	content: "・";
}


.sidebar .latest_list {
	margin-bottom: 50px;
}

.sidebar .latest_list .tit {
	border-top: 2px solid #f28500;
	border-bottom: 2px solid #f28500;
	padding: 2px 0;
}

.sidebar .latest_list .tit p {
	position: relative;
	line-height: 1;
	padding: 8px 10px;
	border-left: 6px solid #f28500;
	font-size: 20px;
	font-weight: bold;
}

.sidebar .latest_list .tit p::after {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: -6px;
	background: #626262;
	width: 6px;
	height: 50%;
}

.sidebar .latest_list ul li a {
	overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.sidebar .latest_list .more {
	margin-top: 20px;
	line-height: 1;
}

.sidebar .latest_list .more a {
	display: block;
	min-height: 14px;
	background: url("../img/blog/arrow01.png") no-repeat right center;
	padding-right: 18px;
	font-size: 14px;
	font-weight: bold;
	text-align: right;
}

.sidebar .cat_list .tit {
	margin-bottom: 14px;
	background: #f28500;
	height: 44px;
	padding: 0 17px;
	line-height: 44px;
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}


/* 漢方療院便り　一覧
--------------------------------------------------------------*/

.blog_list li {
	background: #fffaf0;
	padding: 20px 20px 15px;
}

.blog_list li + li {
	margin-top: 20px;
}

.blog_list .date {
	width: 150px;
	height: 30px;
	line-height: 30px;
	background: #eeeae5;
	text-align: center;
}

.blog_list .tit {
	margin-top: 15px;
}

/* page navi ---------- */

.page_navi {
	text-align: center;
	margin-top: 65px;
	font-size: 0;
	line-height: 1;
}

.page_navi .wp-pagenavi a,
.page_navi .wp-pagenavi span {
	box-sizing: border-box;
	display: inline-block;
	background: #fff;
	min-width: 30px;
	height: 30px;
	padding: 0 8px;
	border: 1px solid #f28500;
	line-height: 30px;
	margin: 0 5px;
	font-size: 16px;
	vertical-align: middle;
}

.page_navi .wp-pagenavi .current {
	background: #f28500;
	color: #fff;
}


.page_navi .wp-pagenavi a.previouspostslink,
.page_navi .wp-pagenavi a.nextpostslink {
	background-position: center center;
	background-repeat: no-repeat;
	max-width: 30px;
/*	height: 0;*/
/*	padding-top: 30px;*/
	overflow: hidden;
	text-indent: -9999px;
}

.page_navi .wp-pagenavi a.previouspostslink {
	background-image: url("../img/blog/arrow02.png");
}

.page_navi .wp-pagenavi a.nextpostslink {
	background-image: url("../img/blog/arrow01.png");
}


/* 漢方療院便り 詳細
--------------------------------------------------------------*/

.blog_detail {
	background: #fffaf0;
	padding: 20px 20px 15px;
}

.blog_detail .info {
	margin-bottom: 13px;
	text-align: center;
}

.blog_detail .info .date,
.blog_detail .info .cat li {
	float: left;
	height: 30px;
	margin: 0 10px 10px 0;
	line-height: 30px;
}

.blog_detail .info .date {
	width: 150px;
	background: #eeeae5;
}

.blog_detail .info .cat li {
	background: #ffe5b2;
	padding: 0 19px;
	color: #f28500;
}

.blog_detail .tit {
	margin-bottom: 13px;
	padding-bottom: 13px;
	border-bottom: 2px solid #f28500;
	line-height: 1.66;
	font-size: 18px;
	font-weight: bold;
	color: #f28500;
}

/* navigation ---------- */

.post_navi {
	position: relative;
	height: 40px;
	margin-top: 70px;
	padding: 0 20px;
}

.post_navi a {
	display: block;
	width: 148px;
	height: 38px;
	border: 1px solid #c9c9c9;
	line-height: 38px;
	font-size: 14px;
	text-align: center;
}

.post_navi .prev {
	float: left;
}

.post_navi .prev a {
	background: url("../img/blog/arrow03.png") no-repeat 10px center;
}

.post_navi .next {
	float: right;
}

.post_navi .next a {
	background: url("../img/blog/arrow04.png") no-repeat right 10px center;
}

.post_navi .all {
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -75px;
}



/*single markup style*/
.post_content{
	overflow: hidden;
}

.post_content p{
	margin-bottom: 25px;
	line-height: 1.6;
}

.post_content img{
	max-width: 100%;
	height: auto;
}

.post_content img.alignright{
	float: right;
	margin: 0 0 15px 15px;
	display: block;
}

.post_content img.alignleft{
	float: left;
	margin: 0 15px 15px 0;
	display: block;
}

.post_content img.aligncenter{
	display: block;
	margin: 0 auto 15px;
}

.post_content h1{
	font-size: 36px;
	border-bottom: 6px solid;
	margin: 0 0 35px;
}

.post_content h2{
	font-size: 32px;
	border-bottom: 5px solid;
	margin: 0 0 35px;
}

.post_content h3{
	font-size: 28px;
	border-bottom: 4px solid;
	margin: 0 0 35px;
}

.post_content h4{
	font-size: 24px;
	border-bottom: 3px solid;
	margin: 0 0 35px;
}

.post_content h5{
	font-size: 20px;
	border-bottom: 2px solid;
	margin: 0 0 35px;
}

.post_content h6{
	font-size: 16px;
	border-bottom: 1px solid;
	margin: 0 0 35px;
}

.post_content td{
	padding: 10px;
	border: 1px solid;
}

.post_content table{
	margin-bottom: 25px;
}

.post_content ul,
.post_content ol{
	padding-left: 2.0em;
	margin-bottom: 25px;
}

.post_content ul li{
	list-style: outside;
	margin-bottom: 10px;
	line-height: 1.4;
}

.post_content ol li{
	list-style: outside decimal;
	margin-bottom: 10px;
	line-height: 1.4;
}

.post_content a{
	text-decoration: underline;
	color: #f28500;
}