@charset "UTF-8";
/*
Theme Name:heal_tcd077_child
Version:1.0
Template:heal_tcd077
*/

/*************グリッドシステム*************/
* {
-webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.container {
max-width: 1200px;
margin: 0 auto;
}

.clr:after, .col:after, .container:after, .group:after, .row:after {
content: "";
display: table;
clear: both;
}

.row {
padding-bottom: 0;
}

.col {
display: block;
float: left;
width: 100%;
}

@media (min-width: 768px) {
.gutters .col {
margin-left: 2%;
}

.span_1 {
width: 8.3333333333%;
}

.span_2 {
width: 16.6666666667%;
}

.span_3 {
width: 25%;
}

.span_4 {
width: 33.3333333333%;
}

.span_5 {
width: 41.6666666667%;
}

.span_6 {
width: 50%;
}

.span_7 {
width: 58.3333333333%;
}

.span_8 {
width: 66.6666666667%;
}

.span_9 {
width: 75%;
}

.span_10 {
width: 83.3333333333%;
}

.span_11 {
width: 91.6666666667%;
}

.span_12 {
width: 100%;
}

.gutters .span_1 {
width: 6.5%;
}

.gutters .span_2 {
width: 15%;
}

.gutters .span_3 {
width: 23.5%;
}

.gutters .span_4 {
width: 32%;
}

.gutters .span_5 {
width: 40.5%;
}

.gutters .span_6 {
width: 49%;
}

.gutters .span_7 {
width: 57.5%;
}

.gutters .span_8 {
width: 66%;
}

.gutters .span_9 {
width: 74.5%;
}

.gutters .span_10 {
width: 83%;
}

.gutters .span_11 {
width: 91.5%;
}

.gutters .span_12 {
width: 100%;
}
}
/*!
12 COLUMN : RESPONSIVE GRID SYSTEM Fix Ver. 1.2.1
*/
.container {
padding: 0 10px;
}

.container img {
max-width: 100%;
}

* + .container {
margin-top: 2em;
}

.row:not(:last-child) {
margin-bottom: 4%;
}

.col {
float: none;
}

.col:not(:last-child) {
margin-bottom: 3%;
}

@media (min-width: 768px) {
.container {
max-width: 1200px;
margin: auto;
padding: 0 10px;
}

* + .container {
margin-top: 40px;
}

.col {
float: left;
}

.reverse > .col {
float: right;
}

.col:not(:last-child) {
margin-bottom: 0;
}

.reverse > .col:last-child, :not(.reverse) > .col:first-child {
margin-left: 0;
}

.col.offset_1 {
margin-left: 8.3333333333%;
}

.gutters .col.offset_1 {
margin-left: 10.5%;
}

.gutters .col.offset_1:first-child {
margin-left: 8.5%;
}

.col.offset_2 {
margin-left: 16.6666666667%;
}

.gutters .col.offset_2 {
margin-left: 19%;
}

.gutters .col.offset_2:first-child {
margin-left: 17%;
}

.col.offset_3 {
margin-left: 25%;
}

.gutters .col.offset_3 {
margin-left: 27.5%;
}

.gutters .col.offset_3:first-child {
margin-left: 25.5%;
}

.col.offset_4 {
margin-left: 33.3333333333%;
}

.gutters .col.offset_4 {
margin-left: 36%;
}

.gutters .col.offset_4:first-child {
margin-left: 34%;
}

.col.offset_5 {
margin-left: 41.6666666667%;
}

.gutters .col.offset_5 {
margin-left: 44.5%;
}

.gutters .col.offset_5:first-child {
margin-left: 42.5%;
}

.col.offset_6 {
margin-left: 50%;
}

.gutters .col.offset_6 {
margin-left: 53%;
}

.gutters .col.offset_6:first-child {
margin-left: 51%;
}

.col.offset_7 {
margin-left: 58.3333333333%;
}

.gutters .col.offset_7 {
margin-left: 61.5%;
}

.gutters .col.offset_7:first-child {
margin-left: 59.5%;
}

.col.offset_8 {
margin-left: 66.6666666667%;
}

.gutters .col.offset_8 {
margin-left: 70%;
}

.gutters .col.offset_8:first-child {
margin-left: 68%;
}

.col.offset_9 {
margin-left: 75%;
}

.gutters .col.offset_9 {
margin-left: 78.5%;
}

.gutters .col.offset_9:first-child {
margin-left: 76.5%;
}

.col.offset_10 {
margin-left: 83.3333333333%;
}

.gutters .col.offset_10 {
margin-left: 87%;
}

.gutters .col.offset_10:first-child {
margin-left: 85%;
}

.col.offset_11 {
margin-left: 91.6666666667%;
}

.gutters .col.offset_11 {
margin-left: 95.5%;
}

.gutters .col.offset_11:first-child {
margin-left: 93.5%;
}

.col.offset_12 {
margin-left: 100%;
}

:not(.reverse) > .col.break + .col {
clear: left;
margin-left: 0;
}

.reverse > .col.break {
margin-left: 0;
}

.reverse > .col.break + .col {
clear: right;
margin-right: 0;
}

.col.break ~ .col {
margin-top: 2%;
}
}
@media (min-width: 1224px) {
.container {
padding: 0;
}
}
@media (min-width: 768px) {
.gutters .row.row_inline {
letter-spacing: -0.4em;
}
.gutters .row.row_inline > .col {
letter-spacing: normal;
vertical-align: top;
display: inline-block;
float: none;
margin-bottom: 2%;
}
.gutters .row.row_inline .span_1:nth-child(12n + 1) {
margin-left: 0;
}
.gutters .row.row_inline .span_2:nth-child(6n + 1) {
margin-left: 0;
}
.gutters .row.row_inline .span_3:nth-child(4n + 1) {
margin-left: 0;
}
.gutters .row.row_inline .span_4:nth-child(3n + 1) {
margin-left: 0;
}
.gutters .row.row_inline .span_5:nth-child(2n + 1) {
margin-left: 0;
}
.gutters .row.row_inline .span_6:nth-child(2n + 1) {
margin-left: 0;
}
.gutters .row.row_inline .span_7 {
width: 57.5%;
}
.gutters .row.row_inline .span_8 {
width: 66%;
}
.gutters .row.row_inline .span_9 {
width: 74.5%;
}
.gutters .row.row_inline .span_10 {
width: 83%;
}
.gutters .row.row_inline .span_11 {
width: 91.5%;
}
.gutters .row.row_inline .span_12 {
width: 100%;
}
}
@media (min-width: 768px) {
.d-flex {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.row.flex-wrap {
-ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.row.flex-nowrap {
-ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.flex-row-reverse {
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
-webkit-box-pack: justify;
  -ms-flex-pack: justify;
      justify-content: space-between;
}

.align-items-start {
-webkit-box-align: start;
  -ms-flex-align: start;
      align-items: flex-start;
}

.align-items-center {
-webkit-box-align: center;
  -ms-flex-align: center;
      align-items: center;
}

.align-items-end {
-webkit-box-align: end;
  -ms-flex-align: end;
      align-items: flex-end;
}

.justify-content-center {
-webkit-box-pack: center;
  -ms-flex-pack: center;
      justify-content: center;
}

.justify-content-between {
-webkit-box-pack: justify;
  -ms-flex-pack: justify;
      justify-content: space-between;
}
}
.post_content > section + section {
margin-top: 60px;
}
@media (max-width: 767px) {
.post_content > section + section {
margin-top: 40px;
}
}

/*************util*************/
/*画像hover時透過*/
/*classの無い a 内の imgは全てhover時に透過となる*/
/*透過したく場合はno-hover等適当なclassを付けて対応*/
a:not([class]) img {
-webkit-transition: all .3s;
transition: all .3s;
}
a:not([class]):hover img {
opacity: 0.8;
}

.text-center {
text-align: center !important;
}

.text-left {
text-align: left !important;
}

.text-right {
text-align: right !important;
}

@media (max-width: 767px) {
.sp-hide, .pc-only, .tablet-only {
display: none !important;
}

.sp-text-center {
text-align: center;
}

.sp-text-left {
text-align: left;
}

.sp-text-right {
text-align: right;
}
}
@media (min-width: 768px) {
.pc-hide, .sp-only {
display: none !important;
}

.pc-text-center {
text-align: center;
}

.pc-text-left {
text-align: left;
}

.pc-text-right {
text-align: right;
}
}
/*****フォントサイズ*****/
.fs12 {
font-size: 12px;
}

.fs13 {
font-size: 13px;
}

.fs14 {
font-size: 14px;
}

.fs15 {
font-size: 15px;
}

.fs16 {
font-size: 16px;
}

.fs17 {
font-size: 17px;
}

.fs18 {
font-size: 18px;
}

.fs19 {
font-size: 19px;
}

.fs20 {
font-size: 20px;
}

.fs21 {
font-size: 21px;
}

.fs22 {
font-size: 22px;
}

.fs23 {
font-size: 23px;
}

.fs24 {
font-size: 24px;
}

.fs25 {
font-size: 25px;
}

.fs26 {
font-size: 26px;
}

.fs27 {
font-size: 27px;
}

.fs28 {
font-size: 28px;
}

.fs29 {
font-size: 29px;
}

.fs30 {
font-size: 30px;
}

.fs31 {
font-size: 31px;
}

.fs32 {
font-size: 32px;
}

.fs33 {
font-size: 33px;
}

.fs34 {
font-size: 34px;
}

.fs35 {
font-size: 35px;
}

.fs36 {
font-size: 36px;
}

.fs37 {
font-size: 37px;
}

.fs38 {
font-size: 38px;
}

.fs39 {
font-size: 39px;
}

.fs40 {
font-size: 40px;
}

@media (max-width: 767px) {
.sp-fs12 {
font-size: 12px !important;
}

.sp-fs13 {
font-size: 13px !important;
}

.sp-fs14 {
font-size: 14px !important;
}

.sp-fs15 {
font-size: 15px !important;
}

.sp-fs16 {
font-size: 16px !important;
}

.sp-fs17 {
font-size: 17px !important;
}

.sp-fs18 {
font-size: 18px !important;
}

.sp-fs19 {
font-size: 19px !important;
}

.sp-fs20 {
font-size: 20px !important;
}

.sp-fs21 {
font-size: 21px !important;
}

.sp-fs22 {
font-size: 22px !important;
}

.sp-fs23 {
font-size: 23px !important;
}

.sp-fs24 {
font-size: 24px !important;
}

.sp-fs25 {
font-size: 25px !important;
}

.sp-fs26 {
font-size: 26px !important;
}

.sp-fs27 {
font-size: 27px !important;
}

.sp-fs28 {
font-size: 28px !important;
}

.sp-fs29 {
font-size: 29px !important;
}

.sp-fs30 {
font-size: 30px !important;
}

.sp-fs31 {
font-size: 31px !important;
}

.sp-fs32 {
font-size: 32px !important;
}

.sp-fs33 {
font-size: 33px !important;
}

.sp-fs34 {
font-size: 34px !important;
}

.sp-fs35 {
font-size: 35px !important;
}

.sp-fs36 {
font-size: 36px !important;
}

.sp-fs37 {
font-size: 37px !important;
}

.sp-fs38 {
font-size: 38px !important;
}

.sp-fs39 {
font-size: 39px !important;
}

.sp-fs40 {
font-size: 40px !important;
}
}
/*****マージン*****/
.mt-1 {
margin-top: 1em;
}

.mt-2 {
margin-top: 2em;
}

.mt-3 {
margin-top: 3em;
}

.mt-4 {
margin-top: 4em;
}

.mt-5 {
margin-top: 5em;
}

.mb0 {
margin-bottom: 0 !important;
}

/*****figure*****/
figure {
margin: 0;
text-align: center;
}
figure img {
max-width: 100%;
height: auto;
}

/*****TELリンク用*****/
.link-tel {
text-decoration: none;
color: currentColor !important;
}
@media (min-width: 768px) {
.link-tel {
pointer-events: none;
cursor: default;
color: currentColor !important;
}
}
.link-tel:hover {
color: currentColor;
}

/*****テーブル*****/
.table-menu {
width: 100%;
}
.table-menu td,
.table-menu th {
background: none;
padding: 0.7em 1em;
border-top: 1px solid rgba(0, 0, 0, 0.3);
border-bottom: 1px solid rgba(0, 0, 0, 0.3);
border-left: none;
border-right: none;
}
@media (max-width: 767px) {
.table-menu td,
.table-menu th {
padding: 0.7em .3em;
}
}
.table-menu tbody th {
text-align: left;
}
.table-menu td:last-child {
text-align: right;
white-space: nowrap;
}

@media (max-width: 767px) {
.responsive-scroll-container {
display: block;
width: 100%;
min-height: 0.01%;
overflow-x: scroll;
}
.responsive-scroll-container .responsive-scroll-inner {
width: 798px;
padding: 0 15px 15px;
}
.responsive-scroll-container table {
width: 768px;
margin: 0;
}
}
/*****Google Mapアイコンfix*****/
.gm-style img {
max-width: unset !important;
}
