@charset "utf-8";
/****************************************************************************************************

reset

*****************************************************************************************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}

/****************************************************************************************************

base setting

*****************************************************************************************************/
html {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Verdana, Arial, "MS P Gothic", "MS Pゴシック", sans-serif;
	font-size: 62.5%;
	width: 100%;
}

body {
	background: #fff;
	color: #333;
	font-size: 15px;
	font-size: 1.5rem;
	line-height: 1.6;
	width:100%;
}

body * {
	box-sizing: border-box;
}

.cf {min-height: 1px;}
.cf:after {content: " "; display: block;clear: both;height: 0;visibility: hidden;}
* html .cf {
    height: 1px;
    /*¥*//*/
    height: auto;
    overflow: hidden;
    /**/
}
.both{clear:both;}

a {
	color: inherit;
	text-decoration: none;
}

a:hover img, a:active img,
.sitemap-list li:hover,
.btn a:hover,
.access-list li a:hover{
    -webkit-opacity: 0.7;
    opacity: 0.7;
}

nav a:hover img {
	-webkit-opacity: 1;
    opacity: 1;
}

em {
	font-weight: bold;
}

strong {
	font-weight: bold;
}

.left {
	float: left;
}

.right {
	float: right;
}

.left.img {
	margin: 0 20px 16px 0;
}

.right.img {
	margin: 0 0 16px 20px;
}

header .inner,
footer .inner {
	width: 1040px;
	margin: 0 auto;
}

.cont_wrapper {
	background: #fbf7f4;
}

#cont {
	width: 1040px;
	margin: 0 auto;
	padding: 40px 0 100px;
}

table {
	width: 682px;
	margin: 0 auto;
}

li:last-child {
	margin-bottom: 0!important;
}

.add em,
.contact-add em,
.access-add em {
	color: #e5420f;
}

table {
	width: 94%;
}

th {
	background: #fbf8e5;
    font-weight: bold;
    border: 1px solid #e1d3bb;
    text-align: center;
    padding: 13px;
}

td {
	border: 1px solid #e1d3bb;
	text-align: center;
}

#page #main p {
	margin-bottom: 1em;
}

#page #main p:last-child {
	margin-bottom: 0;
}

table + p {
	margin-top: 16px;
}

li li {
	text-indent: 1em;
}

.btm0 {
		margin-bottom: 0 !important;
}

.btm20 {
		margin-bottom:20px!important;
}

.btm30 {
		margin-bottom:30px!important;
}

.btm40 {
		margin-bottom:40px!important;
}

.tac {
	text-align: center;
}

.btn {
	text-align: center;
	margin-top: 25px;
}

.btn a {
    display: inline-block;
}

.red {
	color: #c00;
	text-decoration: underline;
}

.strong01{
	background: linear-gradient(transparent 60%, #fff7be 60%);
    font-weight: bold;
    color: #fe7126;
}

/****************************************************************************************************

header

*****************************************************************************************************/
header {
	width: 100%;
}

#page header {
	height: 276px;
}

header > .inner {
	margin-top: 30px;
}

h1 {
	background: #fe7121;
	color: #fff;
	font-size: 13px;
	font-size: 1.3rem;
	padding: 9px 0;
	height: 37px;
}

h1 .inner {
	display: block;
}

header .logo {
	margin-bottom: 10px;
}

.h_top_access {
	width: 390px;
	font-size: 13px;
	font-size: 1.3rem;
}

.h_no1 {
	float: left;
    position: relative;
    top: 20px;
    left: 30px;
}

.h_top_access dt {
    background: #f9ed98;
    border-radius: 1px;
    color: #412111;
    font-weight: bold;
    display: inline-block;
    padding: 3px 0;
    width: 68px;
    text-align: center;
    vertical-align: top;
    margin-bottom: 7px;
	margin-right: 6px;
}

.h_top_access dd {
	display: inline-block;
	padding: 3px 0;
}

header .info-area {
	float: right;
    position: relative;
    top: -10px;
}

.info-area img {
	vertical-align: middle;
}

header .info {
	position: relative;
	margin-bottom: 4px;
	width: 433px;
}

header .info li:nth-of-type(1) {
	margin-right: 12px
}

.h_tel {
	margin-bottom: 12px;
}

.h_tel .tel {
	position: absolute;
    top: 50px;
    left: 69px;
}

.h_tel .add-box {
	font-size: 13px;
	font-size: 1.3rem;
	position: absolute;
    top: 98px;
    left: 32px;
	width: 240px;
}

.h_tel .add {
	float: left;
}

.h_tel .map {
	float: right;
}

.h_mail {
	float: right;
	margin-bottom: 13px;
}

.h_line {
	float: right;
}

.add li {
	float: left;
}

.h_time {
	font-size: 13px;
	font-size: 1.3rem;
	border-top: 1px solid #aba4a0;
	border-bottom: 1px solid #aba4a0;
	margin-bottom: 12px;
}

.h_time li {
	padding: 2px 13px;	
}

.h_time li:nth-child(2) {
	border-top: 1px dotted #d0cece;
	border-bottom: 1px dotted #d0cece;
}

.main-img {
	background: url(../images/top/main_bg.png) no-repeat center top / cover;
	text-align: center;
	margin-top: -13px;
    z-index: -1;
    position: relative;
}

.main-img img {
	vertical-align: bottom;
	width: 100%;
	max-width: 1260px;
	height: auto;
}

/****************************************************************************************************

navigation

*****************************************************************************************************/
nav {
	background: url(../images/common/navi_bg.png) repeat-x;
	color: #3b280f;
}

nav ul {
    width: 1040px;
    margin: 0 auto;
}

nav li {
    margin: 0;
    padding: 0;
    float: left;
}


/****************************************************************************************************

main contents

*****************************************************************************************************/
#main {
	background: #fff;
	width: 775px;
	float: right;
	padding: 30px;
}

.sec {
	margin-bottom: 40px;
}

.sec p {
	margin-bottom: 1em;
}

.bnr.discount:first-child {
      margin-top: -15px;
}

.ttl01 {
	background: #ffa714;
	color: #fff;
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: bold;
	padding: 13px 30px;
	margin-bottom: 25px;
}

.ttl02 {
    border-radius: 4px;
    background: #fe7121;
    color: #fff;
    font-size: 30px;
    font-size: 3.0rem;
    font-weight: bold;
    padding: 26px 30px;
    margin-bottom: 30px;
    border-left: 12px solid #99650c;
}

.ttl03 {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    border-bottom: 1px dotted #b3aca8;
    border-left: 9px solid #fe7121;
    padding: 2px 20px 2px 14px;
    margin-bottom: 25px;
}

.ttl04 {
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	color: #301800;
	border-bottom: 2px dotted #ceb892;
	padding-left: 6px;
	margin-bottom: 16px;
	padding-bottom: 3px;
}

.ttl05 {
    background: #fddd65;
    font-weight: bold;
    padding: 20px 20px;
    margin-bottom: 30px;
    font-size: 20px;
    border-radius: 4px;
	border-bottom: 4px solid #d6b538;
}

.ttl05 b {
	color: #e04a20;
}

.ttl06{
	background: #fe7126;
	box-sizing: border-box;
	padding: 12px;

	font-size: 22px;
	font-weight: bold;
	color: #fff;
	border-radius: 4px;
	margin-bottom: 20px;
}

.ttl06 span{
	display: block;
	font-size: 18px;
	border-top: 1px solid #fff;
	padding-top: 8px;
	margin-top: 4px;
}

.amazon_ranking01{
	border: 1px solid #ffa814;
	box-sizing: border-box;
	line-height: 0;
}

.amazon_ranking01 img{
	width: auto;
	max-width: 100%;
	height: auto;
}

.catch-ttl {
	text-align: center;
}

.onayami-list {
	background: url(../images/top/onayami_bg.png) no-repeat right bottom;
	border: 13px solid #f1eee9;
	padding: 20px;
}

.page.onayami-list {
	background: none;
	margin-bottom: 20px;
}

.onayami-list li {
	width: 510px;
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: bold;
	margin-bottom: 5px;
	background: url(../images/common/icon_check.png) no-repeat 0 8px;
	padding: 10px 10px 10px 40px;
	text-shadow: 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff,1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff;
}

.page.onayami-list li {
	width: 100%;
}

.onayami-list li b {
	color: #e04a20;
}

.omakase-box {
    margin-top: -3px;
}

.not-box {
	border: solid 8px #bdbcbb;
	padding: 30px;
}

.not-box .not,
.not-box .ok {
    padding: 30px;
	color: #412111;
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: bold;
}

.not-list li,
.ok-list li {
	margin-bottom: 10px;
	padding-left: 31px;
}

.not-list li {
	background: url(../images/common/batsu.png) no-repeat 0 3px; 
}

.ok-list li {
	background: url(../images/common/maru.png) no-repeat 0 3px; 
}

.not-box .not .ttl,
.not-box .ok .ttl {
	border-bottom: 3px dotted #c8ac9e;
	padding-bottom: 10px;
	margin-bottom: 16px;
}

.not-box .not {
	background: #faf6dc;
}

.not-box .ok {
	background: #f9ed98;
}

.reason-list > li > .ttl {
	margin-bottom: 20px;
	background: #fff7bc;
	font-size: 28px;
	font-size: 2.8rem;
	font-weight: bold;
	padding: 10px 14px;
}

.reason-list li {
	margin-bottom: 30px;
}

.reason-list .ttl span {
    display: inline-block;
    width: 594px;
    line-height: 1.3;
    margin-top: 5px;
    vertical-align: middle;
}

.reason-list .ttl .no {
    margin-right: 8px;
    display: inline-block;
    vertical-align: middle;
}

.reason-list .ttl b {
	color: #ec1112;
}

.reason-list .txt {
	font-size: 14px;
	font-size: 1.4rem;
}

.reason-list .left {
	width: 446px;
}

.ippan-box,
.touin-box {
    padding: 30px;
}

.ippan-box {
	background: #f1eee9;
	position: relative;
	margin-bottom: 43px;
}

.ippan-box::after {
    content: "";
    background: url(../images/common/arrow02.png) no-repeat;
    display: inline-block;
    width: 115px;
    height: 28px;
    position: absolute;
    bottom: -29px;
    left: 50%;
    margin-left: -58px;
}

.ippan-box .ttl {
	border-bottom: 3px dotted #d8d5d1;
    padding-bottom: 18px;
    margin-bottom: 16px;
}

.touin-box .ttl {
	border-bottom: 3px dotted #ffe8b1;
    padding-bottom: 18px;
    margin-bottom: 16px;
}

.touin-box {
	border: 6px solid #ffa814;
	background: #fffbe0;
}

.touin-img {
	margin-bottom: 18px;
}

.list-block {
	padding-top: 16px;
}

.list-block:first-child {
	padding-top: 0;
	margin-bottom: 16px;
}

.list-block .ttl {
	font-weight: bold;
	font-size: 16px;
	font-size: 1.6rem;
}

.list-block li {
	list-style-type: circle;
	list-style-position: inside;
}

.reco-list li {
	background: #fbf8e5;
	padding: 30px;
	margin-bottom: 30px;
}

.reco-list .ttl-box {
	background: url(../images/top/reco_ttl_bg.png) no-repeat;
	color: #412111;
	font-weight: bold;
	font-size: 24px;
	font-size: 2.4rem;
	position: relative;
	min-height: 133px;
	margin-bottom: 20px;
}

.reco-list .ttl-box .ttl {
	padding-left: 122px;
    padding-top: 30px;
    padding-right: 20px;
    line-height: 1.4;
}


.reco_img {
	float: right;
	margin-left: 20px;
}

.reco-txt {
	padding-left: 8px;
}

.voice-list li {
	margin-bottom: 20px;
}

.voice-list .cont {
	background: #fff;
}

.voice-list .ttl-box {
	background: #fc8038;
	color: #fff;
	padding: 20px 25px;
	border-bottom: 7px solid #a44915;
	position: relative;
	margin-bottom: 32px;
}

.voice-list .ttl-box::after {
	content: url(../images/top/voice_ttl_after.png);
	position: absolute;
	left: 50%;
	margin-left: -30px;
	bottom: -30px;
}

.voice-list .ttl {
	font-weight: bold;
    font-size: 24px;
    font-size: 2.35rem;
    text-align: center;
    position: relative;
}

.voice-list .ttl_name{
	text-align: center;
	border-top: 2px solid #fff;
	margin-top: 6px;
	padding-top: 10px;
	
	margin-bottom: 0;
	font-size: 18px;
	font-size: 1.8rem;
}

.voice-list .patient-info {
    text-align: center;
    font-size: 16px;
    font-size: 1.6rem;
}

.voice-list .img {
	margin-bottom: 10px;
}

.voice-list .txt {
      clear: right;
}

.voice_img {
	text-align: center;
}

.voice_conts{
	border: 1px solid #fc8038;
	border-radius: 5px;
	
	box-sizing: border-box;
	padding: 20px;
	
	background: #fff2eb;
	margin-bottom: 10px;
	
}

.voice_memo{
	font-size: 12px;
	text-align: right;
	margin-bottom: 40px;
}

.voice_text{
	margin-bottom: 20px;
}

.voice_text:last-of-type{
	margin-bottom: 0;
}

.voice_text dt{
	background: #fc8038;
	padding: 10px;
	border-radius: 5px;
	
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 10px;
}

.contact-cont {
	background: url(../images/common/contact_bg.png) no-repeat;
	border: 1px solid #fe7121;
	position: relative;
	padding: 280px 30px 30px;
	border-radius: 4px;
}

.contact-cont .tel{
	margin-bottom: 10px;
	display: inline-block;
    position: absolute;
    top: 114px;
    left: 32px;
}

.contact-cont-btnlist{
	margin-bottom: 20px;
}

.contact-cont-btnlist p{
	line-height: 0;
	margin-bottom: 0 !important;
}

.contact-access iframe {
    width: 100%;
    height: 400px;
    margin-bottom: 10px;
}

.contact-add {
	margin-bottom: 20px;
}

.contact-add dt {
	font-weight: bold;
	margin-top: 10px;
}

.contact-add dt:first-child {
	margin-top: 0;
}

.contact-add em {
	margin-left: 16px;
}

.flow-list .ttl {
    margin-bottom: 16px;
    background: #fff7bc;
    font-weight: bold;
    padding: 15px 20px;
    font-size: 20px;
	font-size: 2.0rem;
}

.flow-list .ttl span {
    background: #fe7121;
    display: inline-block;
    color: #fff;
    padding: 5px 20px;
    border-radius: 4px;
    margin-right: 18px;
}

.flow-list li:first-child {
	padding-top: 0;
}

.profile-img {
	text-align: center;
	margin-bottom: 20px;
	margin-left: 20px;
}

.profile-img .name span {
	background: #c7e9ff;
    margin-bottom: 8px;
    display: inline-block;
}

.access_address {
    border: 2px dotted #99650c;
    padding: 25px;
}

.access_address .ttl {
    font-weight: bold;
    font-size: 28px;
    text-align: center;
	margin-bottom: 15px;
}

.access_address dt {
    background: #f9ed98;
    border-radius: 1px;
    color: #412111;
    font-weight: bold;
    display: inline-block;
    padding: 3px 0;
    width: 68px;
    text-align: center;
    vertical-align: top;
    margin-bottom: 7px;
    margin-right: 6px;
}

.access_address dd {
    display: inline-block;
    padding: 3px 0;
}

.route-block {
	margin-right: -20px;
}

.access-map iframe {
    width: 100%;
    height: 400px;
	margin-bottom: 30px;
}

.access-list {
    margin-top: 14px;
}

.access-list li {
    width: 49%;
	display: inline-block;
	margin-bottom: 10px;
}

.access-list li a::before {
    content: url(../images/common/icon_car.png);
    display: block;
    width: 36px;
    float: left;
    margin-right: 6px;
    margin-top: 8px;
}

.access-list li:nth-child(odd) {
	margin-right: 1%;
}

.access-list li a {
    background: linear-gradient(to top, #f76817, #fd8641);
    text-shadow: 3px 2px 0 #33333340;
    color: #fff;
    display: inline-block;
    border-radius: 4px;
    padding: 18px;
    font-weight: bold;
	font-size: 14px;
	font-size: 1.4rem;
}

.route {
	border: 1px solid #d6b538;
    width: 345px;
    margin-right: 20px;
    margin-bottom: 20px;
    padding: 19px;
    min-height: 360px;
    display: inline-block;
    vertical-align: top;
}

.route:nth-child(even) {
	margin-right: 0;
}

.route:last-child {
	clear:both;
}

.route > img {
	vertical-align: bottom;
	margin-top: 10px;
}

.route p {
	margin-top: 15px;
}

.route .ttl {
	/* height: 82px; */
	height: auto;
	font-weight: bold;
}

.route .ttl .no {
	float: left;
	margin-right: 10px;
}

.route .ttl span {
    padding-top: 10px;
    display: inline-block;
    float: right;
    width: 244px;
}

.route .ttl .no img {
	vertical-align: middle;
}

.faq-list-box {
    background: #fdf8d3;
    border-radius: 4px;
    padding: 30px;
	margin-bottom: 30px;
}

.faq-list-box .box-ttl {
    font-weight: bold;
    font-size: 17px;
	font-size: 1.7rem;
    margin-bottom: 20px;
}

.faq-list-box .list-ttl {
	background: url(../images/common/arrow01.png) no-repeat left 5px;
    font-weight: bold;
    border-bottom: 1px dotted #d4d2c0;
    padding-bottom: 3px;
	padding-left: 22px;
    margin-bottom: 10px;
    font-size: 19px;
	font-size: 1.9rem;
}

.faq-list-box ul {
    margin-bottom: 24px;
}

.faq-list-box ul:last-child {
    margin-bottom: 0;
}

.faq-list-box li {
	margin: 1em 0;
}

.faq-list-box li a {
    text-decoration: underline;
}

.faq-list-box li a:hover {
    text-decoration: none;
}

.faq-list-box li a::before {
    content: 'Q. ';
    font-weight: bold;
}

.faq_conts_block dl {
	margin-bottom: 30px;
}

.faq_conts_block dl dt {
	position: relative;
	padding-left: 33px;
}

.faq_conts_block dl dt::before {
    content: 'Q.';
    display: block;
    width: auto;
    height: auto;
    position: absolute;
    left: 0;
    top: -8px;
    color: #fe7121;
    font-size: 135%;
}

.faq_conts {
	margin-bottom: 30px;
}

/* あなたには3つの道があります */
.michi-box {
	font-size: 17px;
	font-size: 1.7rem;
	width: 94%;
    margin: 0 auto;
}

.michi-box span {
	font-weight: bold;
	font-size: 24px;
	font-size: 2.4rem;
}

.michi-box span b {
	color: #fe7121;
}

.michi-box strong {
	font-weight: bold;
	background: linear-gradient(transparent 10%,#daf5f8 10%);
}

.michi-box .txt span {
	color: #b29a3e;
	font-size: 32px;
	font-size: 3.2rem;
}

.contact_memo {
    font-size: 0.9em;
    color: #de2727;
    line-height: 1.8;
}

.contact_memo ul li {
    display: block;
    padding-left: 1em;
    margin-bottom: 5px;
}

.contact_memo ul li:before {
    content: "※";
    margin-left: -1em;
}

.contact_tel {
	margin-bottom: 1em;
    font-size: 20px;
    font-weight: bold;
    text-decoration: underline;
    color: #de2727;
}

.contact_tel span {
    font-size: 1.4em;
    line-height: 1;
}

.contact_time {
	margin-bottom: 1em;
}

/* form */
input[type="text"], input[type="tel"], input[type="email"], input[type="password"], textarea, select{
	width: 100%!important;
}

.contact_form th {
	width: 220px;
}

.contact_form td {
	padding: 13px;
	vertical-align:middle;
	text-align: left;
}

.contact_form .time span{
	margin-right: 10px;
}

.contact_form .day {
	text-align: left;
}

.contact_form .day span{
	margin-bottom: 10px;
	display: block;
}

.contact_form_send {
	text-align: center;
}

input[type="submit"] {
    background-color: #fe7121;
    border-radius: 3px;
    border-width: 0;
    color: #fff;
    cursor: pointer;
    font-size: 1.8rem;
    line-height: 1.4;
    text-align: center;
    padding: 10px 40px;
    position: relative;
    transition: all .2s ease-out;
    width: 225px;
}

.required:after {
    background: #ef464e;
    content: "必須";
    color: #fff;
    font-size: 12px;
    line-height: 1;
    margin-top: 3px;
    padding: 3px 5px;
    float: right;
}

.contactconts_btn a{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	font-size: 32px;
	font-weight: bold;
	line-height: 1.45;
	color: #fff;
	box-sizing: border-box;
	padding: 16px 24px 16px 86px;
	border-radius: 100px;
	text-decoration: none;
	position: relative;
	width: 100%;
	max-width: 90%;
	margin: 0 auto;
}

.contactconts_btn a:before{
	content: "";
    display: block;
    width: 100%;
    max-width: 54px;
    height: 100%;
    max-height: 54px;
    background-repeat: no-repeat;
    background-position: left top;
    background-size: contain;
    position: absolute;
    left: 32px;
    top: 0;
    bottom: 0;
    margin: auto;
}

.contactconts_btn-reserve a{
	background: linear-gradient(to bottom, #ff82ba 0%,  #ff2989 100%);
}

.contactconts_btn-reserve a:before {
    background-image: url("../images/page/contactconts_btn-reserve-icon.png");
}

.contactconts_btn-line a{
	background: linear-gradient(to bottom, #5ef144 0%, #20a908 100%);
}

.contactconts_btn-line a:before {
    background-image: url("../images/page/contactconts_btn-line-icon.png");
}

.contactconts_btn-tel a{
	background: linear-gradient(to bottom, #ff7454 0%, #fa3407 100%);
}

.contactconts_btn-tel a:before {
    background-image: url("../images/page/contactconts_btn-tel-icon.png");
}

.contactconts_btn-tel-message{
	background: #f0f0f0;
    box-sizing: border-box;
    padding: 24px 24px 0;
    margin-top: 24px;
}

.contactconts_btn-tel-message-wrap{
    display: flex;
    justify-content: center;
}

.contactconts_btn-tel-message-text{
	margin-bottom: 24px;
}

.contact_ttl02{
	font-size: 28px;
    font-weight: bold;
    line-height: 1.5;
    color: #fe7126;
    padding-left: 48px;
    min-height: 40px;
    margin-bottom: 12px;
    position: relative;
}

.contact_ttl02:before {
    content: "!";
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: #fe7126;
    border-radius: 100px;
    color: #fff;
    position: absolute;
    left: 0;
    top: -1px;
}

.contactconts_btn-tel-message-text01 {
    font-size: 22px;
    font-weight: bold;
    color: #fe7126;
    text-decoration: underline;
    line-height: 1.5;
    margin-bottom: 8px !important;
}

.contactconts_btn-tel-message-text02 {
    margin-top: 8px;
}


/* sitemap */
.sitemap-list li {
    border-bottom: 2px dotted #ccc;
    background: url(../images/common/arrow01.png) no-repeat 9px 14px;
    padding: 12px 10px 11px 31px;
}

/* 施術内容・料金 */
.menu-tb01 tr:nth-of-type(1) th,
.menu-tb01 tr:nth-of-type(1) td {
    background: #99650c;
    color: #fff;
	font-weight: bold;
}

/* スタッフ紹介 */
.profile-list dt {
    font-size: 18px;
    font-size: 1.8rem;
    font-weight: bold;
    color: #301800;
    border-bottom: 2px dotted #e5dfd7;
    padding-left: 6px;
    margin-bottom: 16px;
    padding-bottom: 3px;
}

.profile-list dd {
    margin-bottom: 20px;
}

/* 肩こり */
.future-list {
	background: url(../images/page/katakori07.png) no-repeat center bottom;
    padding: 20px 20px 258px;
}

.future-list li {
	font-size: 17px;
	font-size: 1.7rem;
	font-weight: bold;
	margin-bottom: 5px;
	background: url(../images/common/icon_check.png) no-repeat 0 8px;
	padding: 10px 10px 10px 40px;
	text-shadow: 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff,1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff, 1px 0px 2px #fff;
}

.future-list strong {
    font-weight: bold;
    background: linear-gradient(transparent 10%,#daf5f8 10%);
}



/* wordpress ページ 
****************************************/

.report_conts{
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	
	position: relative;
	
	padding-bottom: 15px;
	border-bottom: 1px dashed #aaa;
	margin-bottom: 30px;
}

.report_img{
	width: 200px;
}

.report_img img{
	width: auto;
	min-width: 200px;
	max-width: 200px;
	height: auto;
}

.report_text{
	width: calc(100% - 235px);
	margin-right: 30px;
}


.report_ttl02{
	border: 1px solid #ffa714;
	background: #fff;
	padding: 10px 15px;
	border-radius: 5px;
	
	font-size: 20px;
	font-weight: bold;
	color: #ffa714;
	
	position: relative;
}

.report_ttl02:before{
	content: "";
	
	border: 10px solid transparent;
    border-left: 10px solid #ffa714;
    
    position: absolute;
    top: 16px;
    right: -20px;
}

.report_ttl02:after{
	content: "";
	
	border: 12px solid transparent;
    border-left: 12px solid #fff;
    
    position: absolute;
    top: 14px;
    right: -21px;
}

.report_profile{
	font-size: 20px;
	font-weight: bold;
	margin-top: 12px;
	line-height: 1.5;
	margin-bottom: 0 !important;
}

.report_memo{
	font-size: 15px;
	line-height: 1.5;
	padding: 5px 0;
}

.report_btn{
	margin-top: 15px;
}

.report_btn a{
	background: #ffa714;
	color: #fff;
	text-align: center;
	
	padding: 10px 15px;
	
	font-size: 16px;
	font-weight: bold;
	text-decoration: none;
	
	line-height: 1;

}

.report_btn a img{
	margin-left: 10px;
	vertical-align: sub;
}

.report_conts h3{
	
}


/* 記事一覧ページ */
.category_list ul li{
	font-size: 18px;
	border-bottom: 1px dashed #ffa714;
	margin-bottom: 5px;
	margin-top: 10px;
	padding: 6px 0;
}

.category_list ul li a{
	text-decoration: none;
	padding-left: 18px;
	
	position: relative;
}

.category_list ul li a:before{
	content: "";
	display: block;
	
	width: 0;
	height: 0;
	border: 8px solid transparent;
	border-left: 8px solid #ffa714;
	
	position: absolute;
	left: 2px;
	top: 5px;
}

.wp-pagenavi{
	margin-top: 20px;
	text-align: center;
}

/* 症状レポート　個別記事 */
.report_conts section{
	margin-bottom: 30px;
}

.report-historyflow p,
.report-speech p,
.report-text p,
.report-summary-text p{
	margin-bottom: 15px;
}
.report-historyflow p:last-of-type,
.report-speech p:last-of-type,
.report-text p:last-of-type,
.report-summary-text p:last-of-type{
	margin-bottom: 0;
}

.report-info{
	width: 100%;
}

.report-info-wrap{
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.report-info_text{
	width: calc(100% - 200px);
	margin-right: 30px;	
}

.report-info_photo figure,
.report-info_photo figure img{
	width: auto;
	min-width: 200px;
	max-width: 200px;
}


.report-info_tbl,
.report-info_tbl tbody{
	display: block;
}

.report-info_tbl tbody tr{
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	
	border-bottom: 1px dashed #ffa714;
	padding-bottom: 5px;
	margin-bottom: 10px;
	line-height: 1.8;
}

.report-info_tbl tbody tr th{
	text-align: left;
	width: 7em;
	background: none;
	
	padding: 0;
	border: none;
}

.report-info_tbl tbody tr td{
	width: calc(100% - 9em);
	margin-left: 1em;
	border: none;
	text-align: left;
}

.historyflow-l{
	-webkit-display: flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	
	margin-bottom: 20px;
}

.historyflow-l figure{
	width: 105px;
	height: auto;
	margin-right: 20px;
}

.historyflow-l figure img{
	width: auto;
	max-width: 105px;
	height: auto;
}

.historyflow-l .historyflow-ballon{
	width: calc(100% - 125px);
	
	background: #ffede3;
	border-radius: 5px;
	padding: 10px 15px;
	
	position: relative;
}

.historyflow-l .historyflow-ballon:before{
	content: "";
	display: block;
	
	width: 0;
	height: 0;
	
	border: 20px solid transparent;
	border-right: 20px solid #ffede3;
	
	position: absolute;
	top: 15px;
	left: -30px;
}


.historyflow-r{
	-webkit-display: flex;
	display: flex;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	
	margin-bottom: 20px;
}

.historyflow-r figure{
	width: 105px;
	height: auto;
	margin-left: 20px;
}

.historyflow-r figure img{
	width: auto;
	max-width: 105px;
	height: auto;
}

.historyflow-r .historyflow-ballon{
	width: calc(100% - 125px);
	
	background: #ffdea7;
	border-radius: 5px;
	padding: 10px 15px;
	
	position: relative;
}

.historyflow-r .historyflow-ballon:before{
	content: "";
	display: block;
	
	width: 0;
	height: 0;
	
	border: 20px solid transparent;
	border-left: 20px solid #ffdea7;
	
	position: absolute;
	top: 15px;
	right: -30px;
}


.single_conts h3,
.report-flow h3{
	border-left: 9px solid;
	border-bottom: 1px solid;
    color: #ffa714;
    font-size: 22px;
    font-weight: bold;
    margin-bottom: 15px;
    padding: 5px 0 5px 10px;
    
    margin-top: 25px;
}

.single_conts h4,
.report-flow h4{
	border-bottom: 1px dashed;
    color: #ffa714;
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
    padding:  0;
    
    margin-top: 25px;
}

.report-flow h3:first-of-type{
	margin-top: 0;
}


.report-summary-wrap{
	display: -webkit-flex;
	display: flex;
}

.report-summary-wrap .report-summary-photo{
	width: 105px;
}

.report-summary-wrap .report-summary-photo figure,
.report-summary-wrap .report-summary-photo figure img{
	width: auto;
	max-width: 100%;
	height: auto;
}

.report-summary-wrap .report-summary-text{
	width: calc(100% - 125px);
	margin-left: 20px;
	background: #ffede3;
	border-radius: 5px;
	
	padding: 10px 15px;
	
	position: relative;
}

.report-summary-wrap .report-summary-text:before{
	content: "";
	display: block;
	
	width: 0;
	height: 0;
	
	border: 20px solid transparent;
	border-right: 20px solid #ffede3;
	
	position: absolute;
	top: 15px;
	left: -30px;
}




/****************************************************************************************************

sidebar

*****************************************************************************************************/
#side {
	width: 240px;
	float: left;
}

#side img {
	vertical-align: bottom;
}

.sideBox {
	background: #fff;
	padding: 15px;
}

.side-cont,
.side-navi01,
.side-navi02 {
	margin-bottom: 18px;
}

.side-navi01 li:hover,
.side-navi02 li:hover{
	background: url(../images/common/arrow03.png) no-repeat left 5px top 0;
	color: #b0b0b0;
}

.side-navi01 li a,
.side-navi02 li a{
	display: block;
}

.side-navi01 .ttl,
.side-navi02 .ttl{
	border-radius: 4px 4px 0 0;
	font-size: 17px;
	font-size: 1.7rem;
	color: #fff;
	font-weight: bold;
	text-align: center;
	padding: 12px 0;
}

.side-navi01 .ttl {
	background: #fe7121;
}

.side-navi02 .ttl {
	background: #ffa814;
}

.side-navi01 ul,
.side-navi02 ul {
	background: #fff;
	border-radius: 0 0 4px 4px;
	padding: 15px;
}

.side-navi01 ul li,
.side-navi02 ul li {
    background: url(../images/common/arrow01.png) no-repeat left 5px top 0;
    padding: 0 0 8px 29px;
    margin-bottom: 8px;
    border-bottom: 2px dotted #e7e6e6;
    font-size: 14px;
    font-size: 1.4rem;
}

.side-info {
	background: #fff;
	border-radius: 3px;
	border-top: 8px solid #fe7121;
	padding: 30px 12px;
}

.side-info-txt {
	color: #412111;
	font-size: 13px;
    font-size: 1.3rem;
}

.side-info-txt dt{
	font-weight: bold;
}

.side-info-txt dd {
	margin-bottom: 12px;
}

.side_tel {
	margin-bottom: 20px;
	border-top: 1px dotted #cecdcd;
	padding-top: 18px;
}

.side_mail {
	margin-bottom: 20px;
	border-bottom: 1px dotted #cecdcd;
	padding-bottom: 20px;
}

.side-access iframe {
    width: 100%;
    height: 210px;
}

/****************************************************************************************************

footer

*****************************************************************************************************/
footer {
	width: 100%;
}

#pagetop {
	right: 20px;
    bottom: 20px !important;
	display: inline-block;
}

#pagetop img {
	vertical-align: bottom;
}

footer .contact .right {
    margin-top: 34px;
}

footer .contact .tel {
	margin-bottom: 28px;
}

footer .contact .time {
    text-align: left;
}

.ftr_conts {
	background: #fbf7f4;
	padding: 35px;
}

.f_conts_menu {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
	margin-bottom: 15px;
	font-size: 14px;
	font-size: 1.4rem;
}

.f_conts_menu li {
    padding: 0 8px;
    border-right: 1px solid #333;
     line-height: 1; 
}

.f_conts_menu li:last-child {
	border-right: none;
}

.f_conts_info {
	border-top: 1px solid #b1a29a;
	border-bottom: 1px solid #b1a29a;
	font-size: 13px;
	font-size: 1.3rem;
	padding: 26px 0px;
	margin: 37px 0 15px;
	
	display: -webkit-flex;
	display: flex;
	-webkit0justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;

}

.f_conts_info .left {
	margin-right: 19px;
}

.f_conts_info .left:last-child {
	margin-right: 0;
}

.ftr_access{
	margin-top: 5px;
}

.ftr_logo img {
    vertical-align: middle;
}

.contact {
	background: #fe7121;
	text-align: center;
}

.contact img {
	vertical-align: bottom;
}

.copyright {
	font-size: 13px;
	font-size: 1.3rem;
	text-align: center;
	padding: 19px 0;
}


/*ボタン揺らし*/
.shake-bottom {
	-webkit-animation: shake-bottom 1.5s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite ;
	        animation: shake-bottom 1.5s cubic-bezier(0.455, 0.030, 0.515, 0.955) infinite ;
}

/* ----------------------------------------------
 * Generated by Animista on 2020-3-12 17:0:6
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation shake-bottom
 * ----------------------------------------
 */
@-webkit-keyframes shake-bottom {
  0%,
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform-origin: 50% 100%;
            transform-origin: 50% 100%;
  }
  10% {
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  20%,
  40%,
  60% {
    -webkit-transform: rotate(-4deg);
            transform: rotate(-4deg);
  }
  30%,
  50%,
  70% {
    -webkit-transform: rotate(4deg);
            transform: rotate(4deg);
  }
  80% {
    -webkit-transform: rotate(-2deg);
            transform: rotate(-2deg);
  }
  90% {
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
}
@keyframes shake-bottom {
  0%,
  100% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg);
    -webkit-transform-origin: 50% 100%;
            transform-origin: 50% 100%;
  }
  10% {
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
  20%,
  40%,
  60% {
    -webkit-transform: rotate(-4deg);
            transform: rotate(-4deg);
  }
  30%,
  50%,
  70% {
    -webkit-transform: rotate(4deg);
            transform: rotate(4deg);
  }
  80% {
    -webkit-transform: rotate(-2deg);
            transform: rotate(-2deg);
  }
  90% {
    -webkit-transform: rotate(2deg);
            transform: rotate(2deg);
  }
}
