@charset "utf-8";


/* # root1 START # */
:root {
    --color01: #a4ebed;
    --color02: #f4f9fc;
    --color03: #81c7e8;
    --color04: #7dcbde;
    --color05: #3b3b3b;
    --color06: #fff;
    --bg01: url('/import/tenant_1/153.121.55.107/html/images/common/icon_001.webp');
    --bg02: url('/import/tenant_1/153.121.55.107/html/images/common/icon_018.webp');
    --bg03: url('/import/tenant_1/153.121.55.107/html/images/common/icon_019.webp');
    --bg04: url('/import/tenant_1/153.121.55.107/html/images/common/icon_020.webp');
    --bg05: url('/import/tenant_1/153.121.55.107/html/images/common/icon_021.webp');
    --bg06: url('/import/tenant_1/153.121.55.107/html/images/common/icon_022.webp');
    --bg07: url('/import/tenant_1/153.121.55.107/html/images/common/icon_023.webp');
    --bg08: url('/import/tenant_1/153.121.55.107/html/images/common/icon_024.webp');
    --bg09: url('/import/tenant_1/153.121.55.107/html/images/common/icon_025.webp');
    --bg10: url('/import/tenant_1/153.121.55.107/html/images/common/icon_026.webp');
}
/* # root1 END # */

/* # root2 START # */
/* :root {
    --color01: #f8c8d2;
    --color02: #fdf6fd;
    --color03: #faa2c0;
    --color04: #fbd1df;
    --color05: #3b3b3b;
    --color06: #fff;
    --bg01: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_001.webp');
    --bg02: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_018.webp');
    --bg03: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_019.webp');
    --bg04: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_020.webp');
    --bg05: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_021.webp');
    --bg06: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_022.webp');
    --bg07: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_023.webp');
    --bg08: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_024.webp');
    --bg09: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_025.webp');
    --bg10: url('/import/tenant_1/153.121.55.107/html/images/common/icon_pink_026.webp');
} */
/* # root2 END # */

/* # root3 START # */
/* :root {
    --color01: #99e665;
    --color02: #f5fff7;
    --color03: #7ed088;
    --color04: #b8e1b5;
    --color05: #3b3b3b;
    --color06: #fff;
    --bg01: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_001.webp');
    --bg02: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_018.webp');
    --bg03: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_019.webp');
    --bg04: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_020.webp');
    --bg05: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_021.webp');
    --bg06: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_022.webp');
    --bg07: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_023.webp');
    --bg08: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_024.webp');
    --bg09: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_025.webp');
    --bg10: url('/import/tenant_1/153.121.55.107/html/images/common/icon_green_026.webp');
} */
/* # root3 END # */

/* ##### font ##### */
.round {
    font-family: "M PLUS Rounded 1c", sans-serif;
}

/* ##### font end ##### */

/* ##### 共通 ##### */
.active main,
.active footer,
.active .fixed-logo {
    -webkit-filter: blur(3px);
    filter: blur(3px);
}

.logo {
    width: 180px;
    min-width: 180px;
    margin: 10px 20px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.logo a {
    width: 100%;
    height: 100%;
    display: block;
}

.cmn-shadow-01{
  text-shadow: 1px 1px 1px rgba(0,0,0,0.1);
}

.mainimg {
    position: relative;
}

.mainimg-cont {
    margin: auto;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: calc(50% + 70px);
    left: 0;
    right: 0;
    z-index: 1;
}

.h100ofimg .ofimg {
    height: 100%;
}

h1.h1 {
    position: absolute;
    top: 10px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 2;
    font-size: 12px;
    width: 98%;
    max-width: 1300px;
}

@media(max-width:1024px){
  .common {
    display: flex;
    gap: 2px;
    flex-direction: column-reverse;
    position: absolute;
    top: 10px;
    left: 5px;
    width: calc(100% - 70px);
}

h1.h1 {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    width: 100%;
}
}

.sp-only {
    display: none;
}

.flexrev {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.jcc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.infinity {
    margin-left: -999rem;
    margin-right: -999rem;
    padding-left: 999rem;
    padding-right: 999rem;
}

.white-text-box * {
    color: var(--color06);
}

.blue {
    color: var(--color01);
}

.blue-text {
    font-weight: bold;
    font-size: 18px;
    color: var(--color01);
}

.white {
    color: var(--color06);
}

.green {
    font-weight: bold;
    color: var(--color05);
}

.underline-link a {
    font-weight: bold;
    color: var(--color01);
    text-decoration: underline;
}

.bgc-blue {
    background-color: var(--color01);
}

.bgc-blue_02 {
    background-color: var(--color02);
}

.bgc-pale-blue {
    background-color: var(--color02);
}

.bgc-white {
    background-color: var(--color06);
}

.bgc-pattern {
    background-color: var(--color04);
}

.cmn-indent-01{
  padding-left: 1em;
  text-indent: -1em;
}

.cmn-ttl-01{
    font-size: 20px;
    font-weight: 600;
    color: #a4ebed;
    margin-bottom: 10px;
}

.horizon-list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.horizon-list dt {
    width: 20%;
    min-width: 20%;
}

.horizon-list dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.number-list {
    padding-left: 15px;
}

.number-list li {
    margin-bottom: 5px;
    text-indent: -12px;
}

.blue-number-list li {
    padding-left: 75px;
    border: 2px solid var(--color01);
    position: relative;
}

.blue-number-list li .num {
    width: 60px;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 30px;
    line-height: 100%;
    background-color: var(--color01);
    position: absolute;
    top: 0;
    left: 0;
}

.dot-list {
    padding-left: 20px;
}

.dot-list li {
    list-style-position: outside;
    list-style-type: disc;
    margin-bottom: 5px;
}

.rhombus-list {
    padding-left: 10px;
}

.rhombus-list li {
    margin-bottom: 5px;
    padding-left: 24px;
    position: relative;
}

.rhombus-list li:before {
    content: "◆";
    display: inline-block;
    line-height: 100%;
    position: absolute;
    top: 5px;
    left: 0;
}

.colon-list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.colon-list dt {
    min-width: 15%;
}

.colon-list dt:after {
    content: "：";
    display: inline-block;
}

.circle-list {
    padding-left: 30px;
}

.circle-list>li {
    font-weight: 500;
    text-indent: -12px;
}

.circle-list>li:before {
    content: "〇";
    display: inline-block;
    margin-right: 5px;
    font-weight: bold;
    color: var(--color01);
}

.sideline-list dt,
.sideline-list dd {
    padding: 10px;
}

.sideline-list dt {
    width: 22%;
    min-width: 22%;
    text-align: right;
}

.sideline-list dd {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    position: relative;
}

.sideline-list dd:after {
    content: "";
    width: 1px;
    height: 100%;
    display: inline-block;
    margin: auto;
    background-color: var(--color06);
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 1;
}

.blue-box-list-wrap li:not(:last-of-type) {
    margin-bottom: 20px;
}

.blue-box-list {
    overflow: hidden;
    border-radius: 10px;
}

.blue-box-list dt,
.blue-box-list dd {
    padding: 20px;
}

.blue-box-list dt {
    width: 25%;
    min-width: 25%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    font-size: 24px;
    color: var(--color06);
    background-color: var(--color01);
}

.blue-box-list dd {
    width: 10%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-flex: 1;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-positive: 1;
    flex-grow: 1;
    font-weight: bold;
    font-size: 30px;
    line-height: 120%;
    background-color: var(--color06);
}

.blue-box-list dd .small {
    font-weight: 500;
    font-size: 18px;
}

.blue-box-list-wrap li:not(:last-of-type) {
    margin-bottom: 20px;
}

.ellipse-list li {
    height: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: var(--color06);
    line-height: 120%;
    text-align: center;
    border-radius: 35px;
    background: var(--color01);
}

.ellipse-list li a {
    color: var(--color06);
}

.ellipse-link-list li {
    height: 60px;
}

.ellipse-link-list li a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: var(--color06);
    line-height: 120%;
    text-align: center;
    border-radius: 35px;
    background-color: var(--color01);
}

.clinic_guidelinklist li {
    height: auto;
    display: list-item;
    padding: 0;
}

.clinic_guidelinklist li a {
    height: 60px;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: var(--color06);
}

.blue-round-list li {
    width: calc(100% / 3 - 60px);
    position: relative;
}

.blue-round-list.type02 li {
    width: calc(100% / 3 - 20px);
}

.blue-round-list li:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.blue-round-list.type02 li:before{
  content: none;
}

.blue-round-list-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.blue-round-list-inner .title {
    -ms-flex-item-align: start;
    align-self: flex-start;
}

.blue-round-list-inner .blue-round-text {
    width: 80%;
    font-size: 20px;
}

@media(max-width:599px){
  .blue-round-list.type02 li {
    width: 100%;
}
}

.flow-number-list>li {
    padding-left: 70px;
}

.flow-number-title-box .num {
    width: 70px;
    min-width: 70px;
    height: 70px;
    max-height: 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 20px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 42px;
    line-height: 100%;
}

.flow-number-title-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    margin-left: -70px;
}

.flow-number-title {
    font-weight: bold;
    font-size: 26px;
    line-height: 120%;
}

.faq-list li {
    padding-left: 170px;
    padding-right: 100px;
}

.check-list li {
    margin-bottom: 5px;
    padding-left: 24px;
    position: relative;
}

.check-list li:before {
    content: "\f00c";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 16px;
    color: var(--color01);
    position: absolute;
    top: 0;
    left: 0;
}

.image-arrow-list li {
    width: calc(100% / 3 - 30px);
    margin: 10px 20px 10px 10px;
    position: relative;
}

.image-arrow-list li:not(:last-of-type):after {
    content: "\f0da";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: -20px;
    z-index: 1;
}

.right-angle-list {
    padding-left: 10px;
}

.right-angle-list li {
    margin-bottom: 5px;
    padding-left: 20px;
    position: relative;
}

.right-angle-list li:before {
    content: "\f105";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 20px;
    color: var(--color01);
    position: absolute;
    top: 0;
    left: 0;
}

.table-list {
    width: 100%;
}

.part {
    width: 30%;
    border-bottom: 2px solid var(--color06);
    border-right: 2px solid var(--color06);
    text-align: center;
}

.breakdown {
    width: calc(70% / 3);
    border-bottom: 2px solid var(--color06);
    border-right: 2px solid var(--color06);
    text-align: center;
}

.table-price {
    width: 30%;
    border-bottom: 2px solid var(--color06);
}

.table-list-inner {
    width: 70%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.table-list-inner .breakdown {
    width: 57.2%;
}

.table-list-inner .table-price {
    width: 42.8%;
    border-bottom: 2px solid var(--color06);
}

[class*="icon"] {
    display: inline-block;
}

.icon-phone {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.icon-phone:before {
    content: "\f879";
    width: 35px;
    height: 35px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: 100%;
}

.icon-tooth {
    width: 70px;
    height: 70px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: var(--color06);
    line-height: 100%;
    background-image: var(--bg01);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
}

.icon-train {
    width: 16px;
    height: 18px;
}

.tel-box a {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: bold;
    font-size: 22px;
    color: var(--color01);
    letter-spacing: 3px;
}

.tel-box28,
.tel-box30 {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.tel-box28 a {
    font-size: 28px;
    letter-spacing: 4px;
}

.tel-box30 a {
    font-size: 30px;
}

.tel-box28 a .icon-phone:before,
.tel-box30 a .icon-phone:before {
    margin-right: 10px;
}

.reserve-number {
    width: 500px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.reserve-number .tel a {
    font-size: 30px;
}

.reserve-number .icon-phone {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.circle {
    width: 130px;
    height: 130px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    color: var(--color01) !important;
    border-radius: 50%;
    background-color: var(--color06);
}

.circle * {
    font-weight: bold;
    color: var(--color08) !important;
}

.circle-parent {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.circle-side {
    width: calc(100% - 130px);
}

.circle-time {
    -webkit-box-align: end;
    align-items: flex-end;
    -ms-flex-align: end;
    margin: 5px 0;
    font-size: 20px;
}

.circle-time .big {
    display: inline-block;
    margin: 0 2px;
    font-size: 220%;
}

.circle-time-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 100%;
}

.circle-time-inner .small {
    font-weight: 500;
}

.icon-moon::before {
    content: "\f186";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.rhombus-mark:before {
    content: "◆";
    display: inline-block;
    margin-right: 5px;
    color: var(--color01);
}

.notice {
    font-weight: 600;
    font-size: 14px;
    color: #e39393;
}

.float-wrap .float-box:nth-child(odd) .float-img {
    float: right;
    margin: 0 0 2% 2%;
}

.float-wrap .float-box:nth-child(even) .float-img {
    float: left;
    margin: 0 2% 2% 0;
}

.float-rev .float-box:nth-child(odd) .float-img {
    float: left;
    margin: 0 2% 2% 0;
}

.float-rev .float-box:nth-child(even) .float-img {
    float: right;
    margin: 0 0 2% 2%;
}

.sideby-parent .sideby-wrap:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.sideby-parent .sideby-wrap:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.sideby-parent .flexrev:nth-of-type(odd) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.sideby-parent .flexrev:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.round-white {
    -webkit-box-shadow: inset 0 0 10px 10px white, inset 1px 1px 10px 10px white,
    inset -1px -1px 10px 10px white;
    box-shadow: inset 0 0 10px 10px white, inset 1px 1px 10px 10px white,
    inset -1px -1px 10px 10px white;
}

.round-white img {
    position: relative;
    z-index: -1;
}

.blue-border-img {
    border: 5px solid var(--color01);
}

.tab-btn-list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    padding: 0 10px;
}

.tab-btn {
    min-width: 280px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 10px;
    font-weight: bold;
    font-size: 26px;
    letter-spacing: 1px;
    border-radius: 10px 10px 0 0;
    background-color: #eaeaea;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    flex-direction: column;
}

[data-element-id] .tab-btn .show\@sp {
  font-size:14px;
}

.tab-btn.on {
    background-color: var(--color06);
}

.tab-btn:hover {
    background-color: var(--color06);
    cursor: pointer;
}

.calender {
    width: 800px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 1024px) {
    .logo {
        width: 160px;
        min-width: 160px;
    }

    .sp-only {
        display: block;
    }

    .mainimg-cont {
        top: 50%;
    }

    .blue-text {
        font-size: 16px;
    }

    .reserve-number .tel a {
        font-size: 28px;
    }

    .colon-list dt {
        width: 20%;
        font-weight: bold;
    }

    .sideline-list dt {
        width: 35%;
        min-width: 35%;
    }

    .blue-box-list dt,
    .blue-box-list dd {
        padding: 15px;
    }

    .blue-box-list dt {
        width: 35%;
        min-width: 35%;
        font-size: 20px;
    }

    .blue-box-list dd {
        font-size: 24px;
    }

    .blue-box-list dd .small {
        font-size: 16px;
    }

    .ellipse-list li {
        height: 50px;
        font-size: 16px;
    }

    .clinic_guidelinklist li a {
        height: 50px;
    }

    .blue-number-list li .num {
        font-size: 26px;
    }

    .blue-round-list li {
        width: calc(100% / 3 - 30px);
        margin: 15px;
    }

    .flow-number-list>li {
        padding-left: 55px;
    }

    .flow-number-title-box {
        margin-left: -55px;
    }

    .flow-number-title {
        font-size: 22px;
    }

    .flow-number-title-box .num {
        width: 55px;
        min-width: 55px;
        height: 55px;
        max-height: 55px;
        margin-right: 10px;
        font-size: 34px;
    }

    .faq-list li {
        padding-left: 65px;
        padding-right: 15px;
    }

    .image-arrow-list li {
        width: calc(100% / 3 - 15px);
        margin: 10px 10px 10px 5px;
    }

    .image-arrow-list li:not(:last-of-type):after {
        right: -12px;
    }

    .table-list {
     /*    margin-bottom: 15px; */
    }

    .table-list dt,
    .table-list dd,
    .table-list-text {
        font-size: inherit;
    }

    .part {
        width: 100%;
        border-bottom: 2px solid var(--color06);
       /*  border-right: none; */
    }

    .breakdown {
        width: 50%;
    }

    .table-price {
        width: 50%;
    }

    .table-list-inner {
        width: 100%;
    }

    .table-list-inner .breakdown {
        width: 50.2%;
    }

    .table-list-inner .table-price {
        width: 49.8%;
    }

    .tel-box a {
        font-size: 18px;
    }

    .tel-box30 a {
        font-size: 22px;
    }

    .tel-box28 a {
        font-size: 20px;
    }

    .circle {
        width: 120px;
        height: 120px;
    }

    .circle-time {
        font-size: 18px;
    }

    .circle-time .big {
        font-size: 200%;
    }

    .circle-side {
        width: calc(100% - 120px);
    }

    .circle-side .tel-box {
        width: calc(100% + 120px);
    }

    .tab-btn {
        min-width: 260px;
        margin: 0 5px;
        font-size: 22px;
    }
}

@media (max-width: 599px) {
    .logo {
        width: 140px;
        min-width: 140px;
    }

    .reserve-number .tel a {
        font-size: 24px;
    }

    .horizon-list dt {
        width: 25%;
        min-width: 25%;
    }

    .sideline-list {
        margin-bottom: 10px;
    }

    .sideline-list dt,
    .sideline-list dd {
        padding: 3px 10px;
    }

    .sideline-list dt {
        width: 100%;
        text-align: left;
    }

    .sideline-list dd {
        padding-left: 16px;
    }

    .sideline-list dd:after {
        width: 100%;
        height: 1px;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
        top: auto;
        bottom: 0;
        left: 0;
        right: auto;
    }

    .blue-box-list dt,
    .blue-box-list dd {
        padding: 10px;
    }

    .blue-box-list dt {
        width: 100%;
        font-size: 18px;
    }

    .blue-box-list dd {
        font-size: 22px;
    }

    .blue-number-list li {
        padding-left: 45px;
    }

    .blue-number-list li .num {
        width: 40px;
        font-size: 22px;
    }

    .blue-round-list li {
        width: calc(100% / 2 - 10px);
        margin: 5px;
    }

    .flow-number-list>li {
        padding-left: 40px;
    }

    .flow-number-title-box {
        margin-left: -40px;
    }

    .flow-number-title-box .num {
        width: 40px;
        min-width: 40px;
        height: 40px;
        max-height: 40px;
        font-size: 26px;
    }

    .flow-number-title {
        font-size: 20px;
    }

    .faq-list li {
        padding-left: 50px;
        padding-right: 10px;
    }

      .part {
      width: 40%;
  }

    .breakdown {
        width: 100%;
        border-bottom: 2px solid var(--color06);
        /* border-right: none; */
    }

    .table-price {
        width: 100%;
    }

    .table-list-inner .breakdown {
        width: 100%;
        background-color: #b7e7ff;
    }
    
    .breakdown {
        width: calc(60% / 3);
    }

    .table-list-inner .table-price {
        width: 100%;
    }

    .circle {
        width: 100px;
        height: 100px;
    }

    .circle-time {
        font-size: 16px;
    }

    .circle-side {
        width: calc(100% - 100px);
    }

    .tab-btn {
        min-width: 120px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    margin: 0 3px;
    padding: 20px 10px;
    font-size: 14px;
    line-height: 120%;
    }
}

/* ##### 共通 end ##### */

/* ##### ボタン ##### */
.arrow-right a,
.arrow-left a,
.arrow-right button,
.arrow-left button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    line-height: 100%;
    position: relative;
}

.arrow-left a,
.arrow-left button {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.arrow-right a:after,
.arrow-left a:after,
.arrow-right button:after,
.arrow-left button:after {
    width: 20px;
    height: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    font-size: 18px;
    color: var(--color06);
    line-height: 100%;
    border-radius: 50%;
    background-color: var(--color03);
    -webkit-transition: 0.1s linear;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    z-index: 1;
}

.arrow-right a:after,
.arrow-right button:after {
    content: "\f105";
    right: 20px;
}

.arrow-left a:after,
.arrow-left button:after {
    content: "\f104";
    left: 20px;
}

[class*="arrow-"] a:hover,
[class*="arrow-"] button:hover {
    opacity: 1;
}

.arrow-right a:hover:after,
.arrow-right button:hover:after {
    right: 10px;
}

.arrow-left a:hover:after,
.arrow-left button:hover:after {
    left: 10px;
}

.line-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    margin-left: auto;
    margin-right: auto;
}

.line-btn-left {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.line-btn a {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    font-weight: bold;
}

.line-btn.arrow-right a {
    padding-right: 50px;
}

.line-btn.arrow-left a {
    padding-left: 50px;
}

.line-btn.arrow-right a:after {
    right: 10px;
}

.line-btn.arrow-left a:after {
    left: 10px;
}

.line-btn.arrow-right a:hover:after {
    right: 0;
}

.line-btn.arrow-left a:hover:after {
    left: 0;
}

.line-btn-blue a {
    color: var(--color01);
}

.more-btn {
    width: 320px;
    max-width: 90%;
    height: 60px;
    margin-left: auto;
    margin-right: auto;
}

.more-btn a,
.more-btn button {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-right: 40px;
    font-weight: bold;
    font-size: 20px;
    color: var(--color06);
    border: 1px solid var(--color01);
    border-radius: 30px;
    background-color: var(--color01);
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.more-btn a:hover,
.more-btn button:hover {
    color: var(--color01);
    background-color: var(--color06);
    opacity: 1;
}

.more-btn-transparent a {
    border: 1px solid var(--color06);
    background-color: transparent;
}

@media(max-width:599px) {
    .reservation .more-btn,
    .recruit.detail .more-btn {
        width: 160px;
    }

    .reservation .more-btn.arrow-left a,
    .recruit.detail .more-btn.arrow-left a {
        padding-left: 40px;
        padding-right: 0;
    }
}


.left-btn {
    margin-left: 0;
}

.right-btn {
    margin-right: 0;
}

@media (max-width: 1024px) {
    .more-btn {
        height: 50px;
    }

    .more-btn a {
        font-size: 18px;
    }
}

/* ##### ボタン end ##### */

/* ##### 見出し ##### */
.title {
    width: 100%;
    font-weight: bold;
    font-size: 22px;
}

.title_01 {
    width: 100%;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: bold;
    font-size: 36px;
    letter-spacing: 4px;
    text-align: center;
}

.title_01 .small{
  font-size: 70%;
}

.title_02 {
    width: 100%;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: bold;
    font-size: 32px;
    letter-spacing: 3px;
}

.title_03 {
    width: 100%;
    padding: 20px 5px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 36px;
    color: var(--color01);
    position: relative;
}

.title_03:before {
    content: "";
    width: 100%;
    height: 3px;
    display: block;
    background-color: #ebebeb;
    position: absolute;
    bottom: 0;
    left: 0;
}

.title_03:after {
    content: "";
    width: 120px;
    height: 3px;
    display: block;
    background-color: var(--color01);
    position: absolute;
    bottom: 0;
    left: 0;
}

.title_03_white:before {
    background-color: var(--color06);
}

.title_04 {
    width: 100%;
    padding-left: 10px;
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 26px;
    color: var(--color05);
    letter-spacing: 2px;
    border-left: 10px solid var(--color01);
}

.two-lines {
    line-height: 120%;
}

.border:after {
    content: "";
    width: 2px;
    height: 65px;
    display: block;
    margin: 30px auto;
    background-color: var(--color01);
}

@media (max-width: 1024px) {
    .title {
        font-size: 18px;
    }

    .title_01 {
        font-size: 34px;
    }

    .title_02 {
        font-size: 28px;
    }

    .title_03 {
        padding: 15px 5px;
        font-size: 32px;
    }

    .title_04 {
        font-size: 20px;
    }
}

@media (max-width: 599px) {
    .title {
        font-size: 16px;
    }

    .title_01 {
        font-size: 22px;
    }

    .title_02 {
        font-size: 22px;
    }

    .title_03 {
        padding: 10px 5px;
        font-size: 26px;
    }
}

[data-element-id] .title_01.show\@sp{
  font-size: 22px;
}

[data-element-id] .title_02.show\@sp{
  font-size: 22px;
}

[data-element-id] .show\@sp .title_03{
  padding: 10px 5px;
        font-size: 24px;
}

[data-element-id] .title_04.show\@sp{
 font-size: 20px;
 transform:rotateZ(0.03deg);
}

[data-element-id] .title.show\@sp{
  font-size: 16px;
}

/* ##### 見出し end ##### */

/* ##### カスタムコンテンツ ##### */
.cc-wrap {
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.cc-side {
    position: relative;
}

.cc-side:after {
    content: "";
    width: 300%;
    height: 100%;
    background-color: inherit;
    position: absolute;
    top: 0;
    left: -300%;
}

.date {
    font-weight: bold;
    letter-spacing: 1px;
}

.category {
    padding-left: 20px;
    line-height: 130%;
    position: relative;
}

.category:before {
    content: "";
    width: 16px;
    height: 16px;
    display: inline-block;
    background-image: var(--bg01);
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
    position: absolute;
    top: 5px;
    left: 0;
}

.category span {
    display: inline-block;
    margin: 0 5px;
    font-weight: bold;
    font-size: 14px;
    line-height: 120%;
}

.blog-list .cc-title {
    width: calc(100% - 20px);
    margin: 0 auto 10px auto;
}

.cc-title,
.cc-title a {
    font-weight: bold;
    font-size: 18px;
    color: var(--color01);
    line-height: 140%;
}

.cc-title a .two-line {
    display: block;
}

.blog-list a {
    display: block;
}

.blog-list li {
    -webkit-box-shadow: 0px 1px 4px -1px #dcdcdc;
    box-shadow: 0px 1px 4px -1px #dcdcdc;
}

.news-list li {
    margin-right: -999rem;
    padding-right: 999rem;
}

.cc-side-title {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: 26px;
    letter-spacing: 1px;
}

.cc-side-list {
    padding-left: 10px;
}

.cc-side-list li a {
    display: block;
    padding-left: 20px;
    letter-spacing: 1px;
    position: relative;
}

.cc-side-list li a:before {
    content: "\f105";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    top: 0;
    left: 0;
}

.detail-box .text h2 {
  line-height: 1.4;
  background-color: var(--color01);
  color: #fff;
  padding: 1rem;
  position: relative;
  margin: 3rem 0 1rem;
  font-weight: 500;
  font-size: 22px;
}

.detail-box .text h3 {
  line-height: 1.4;
  font-weight: 600;
  padding: 0.6em;
  border-left: 10px solid var(--color01);
  margin: 3rem 0 1rem;
  font-size: 20px;
}

.detail-box .text h4 {
  font-size: 18px;
  font-weight: 600;
  padding: 0.4em;
  border-bottom: 2px solid var(--color01);
  margin: 3rem 0 1rem;
}

.detail-box .text ul li {
  position: relative;
  padding-left: 1.2em;
}

.detail-box .text ul li::before {
  content: "■";
  color: var(--color01);
  position: absolute;
  top: 0;
  left: 0;
}

.detail-box .text ol li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  align-items: baseline;
  -ms-flex-align: baseline;
  list-style-type: none;
  counter-increment: cnt;
}

.detail-box .text ol li::before {
  content: ""counter(cnt)".";
  margin-right: 10px;
  font-weight: bold;
  font-size: 150%;
  color: var(--color01);
}

.detail-box .text iframe[src*="youtube"] {
  aspect-ratio: 16 / 9;
  margin-top: 1em;
  margin-bottom: 1em;
}

@media (max-width: 1024px) {
    .date {
        font-size: 14px;
    }

    .cc-title a {
        font-size: 14px;
    }

    .cc-cont {
        width: 64%;
    }

    .cc-side {
        width: 32%;
        margin: 0 2%;
    }

    .cc-side-title {
        font-size: 20px;
        letter-spacing: 0;
    }

    .cc-side-list li a {
        font-size: 14px;
    }
}

@media (max-width: 599px) {
    .date {
        font-size: 12px;
    }

    .blog-list li {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: start;
        align-items: flex-start;
        -ms-flex-align: start;
    }

    .cc-img {
        width: 40%;
        height: 100%;
    }

    .cc-img a,
    .cc-img a .ofimg {
        height: 100%;
    }

    .cc-img .ofimg:before {
        padding-top: 80%;
    }

    .cc-info {
        width: 60%;
        padding: 5px;
    }

    .category {
        height: auto !important;
    }

    .category span {
        font-size: 12px;
    }

    .blog-list .cc-title {
        width: calc(100% - 10px);
        margin: 5px;
    }

    .cc-title a {
        font-size: 13px;
    }

    .cc-cont {
        width: 100%;
    }

    .cc-side {
        width: 100%;
        margin: 30px 0 0 0;
    }
}

/* ##### カスタムコンテンツ end ##### */

/* ##### header ##### */
.fixed-logo {
    display: none;
}

.fixed-logo a{
  display: block;
}

header {
    width: 1300px;
    max-width: 98%;
    height: 96px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 auto;
    border-radius: 10px;
    background-color: var(--color06);
    -webkit-box-shadow: 2px 2px 10px -8px #000;
    box-shadow: 2px 2px 10px -8px #000;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: fixed;
    top: 40px;
    left: 0;
    right: 0;
    z-index: 4;
}

nav {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

nav [data-hide-element]:before, footer [data-hide-element]:before {
    position: relative;
    top: 0;
    left: 0;
    transform: none;
    padding: 5px 5px;
    display: block;
}

.nav-list li {
    margin: 5px 15px;
}

.nav-list li a,
.nav-list li .dropdown-btn {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: bold;
    letter-spacing: 1px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}

.dropmenu {
    zoom: 1;
}

.dropmenu .dropdown {
    overflow: hidden;
    position: relative;
}

.dropmenu .dropdown:after {
    content: "";
    width: 100%;
    height: 25px;
    border: 0;
    position: absolute;
    left: 0;
}

.dropdown-btn {
    display: block;
}

.dropmenu .dropdown ul {
    width: 300px;
    margin: 20px auto 0 auto;
    padding: 10px 15px;
    border-radius: 10px;
    background-color: var(--color01);
    -webkit-box-shadow: 3px 3px 10px -7px #000;
    box-shadow: 3px 3px 10px -7px #000;
    opacity: 0;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transition-property: all;
    transition-property: all;
    position: absolute;
    top: 100%;
    left: -120px;
    right: -120px;
    z-index: -9999 !important;
}

.dropmenu .dropdown ul:before {
    content: "";
    width: 0;
    height: 0;
    display: inline-block;
    margin: auto;
    border-width: 0 10px 20px 10px;
    border-style: solid;
    border-color: transparent transparent var(--color01) transparent;
    position: absolute;
    top: -20px;
    left: 0;
    right: 0;
}

#dropmenu .dropdown ul li {
    width: 100%;
    height: auto;
    overflow: hidden;
    margin-left: 0;
    border-bottom: 1px solid var(--color06);
}

#dropmenu .dropdown ul li:last-of-type {
    border-bottom: none;
}

#dropmenu .dropdown ul li a {
    display: block;
    padding: 10px 5px;
    font-weight: normal;
    color: var(--color06);
}

.header-tel-box-wrap {
    min-width: 230px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0 15px;
}

.header-tel-box-wrap .text {
    padding: 0;
    font-size: 14px;
    line-height: 120%;
}

.header-tel-box-wrap .header-address{
      font-size: 11px
    }

.reserve-box {
    width: 160px;
    height: 96px;
    overflow: hidden;
    border-radius: 0 10px 10px 0;
}

.scrolled header .reserve-box{
  height: 76px;
}

.reserve-box a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-family: "M PLUS Rounded 1c", sans-serif;
    color: var(--color06);
    background-color: var(--color01);
}

[data-element-id] .reserve-box.abtest-a a,[data-element-id] .reserve-box.abtest-b a{
  height: auto;
}

.reserve-box.abtest-b a{
  background: #ffb260;
}

[data-element-id] .reserve-box.abtest-a,[data-element-id] .reserve-box.abtest-b{
  border: 4px solid #ffafd8;
  height: 109px;
}

[data-element-id] .reserve-box.abtest-a::before,[data-element-id] .reserve-box.abtest-b::before {
    content: "Aパターン";
    background: #ffafd8;
    color: #fff;
    font-size: 12px;
    text-align: center;
    display: block;
}

[data-element-id] .reserve-box.abtest-b{
  border: 4px solid #5189ff;
}

[data-element-id] .reserve-box.abtest-b::before {
    content: "Bパターン";
    background: #5189ff;
}

.reserve-box .icon-calender {
    font-size: 35px;
    margin-bottom: 5px;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
}


 @media(max-width:1024px){
   .reserve-box .icon-calender{
     font-size: 26px;
     margin-right: 10px;
   }
} 

 @media(max-width:599px){
   .reserve-box .icon-calender{
     font-size: 22px;
     margin-right: 5px;
   }
} 

/* scrolled */
.scrolled header {
    height: 76px;
    top: 5px;
}

.scrolled .reserve-box .icon-calender {
    /* width: 30px;
    height: 30px; */
    margin-bottom: 3px;
}

/* scrolled end */

/* hover */
.dropdown-btn:hover {
    cursor: pointer;
}

#dropmenu .dropdown:hover {
    overflow: visible;
}

#dropmenu .dropdown:hover ul {
    opacity: 1;
    z-index: 2 !important;
}

/* hover end */

@media (max-width: 1024px) {
    .fixed-logo {
        width: 200px;
        display: block;
        -webkit-transition: 0.3s linear;
        transition: 0.3s linear;
        position: absolute;
        top: 50px;
        left: 10px;
        z-index: 3;
        position: relative;
        top: auto;
        left: auto;
    }

    .logo {
        width: 180px;
    }

    header {
        width: 480px;
        height: calc(100% - 20px);
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 20px;
        -webkit-transform: translate(500px, 0);
        transform: translate(500px, 0);
        top: 10px;
        left: auto;
        right: 10px;
    }

    nav {
        width: 100%;
        height: calc(100% - 180px);
    }

    .nav-list {
        width: 100%;
        height: 100%;
        display: block;
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 15px 10px;
        -webkit-box-shadow: 0px -3px 7px -7px #808080 inset;
        box-shadow: 0px -3px 7px -7px #808080 inset;
    }

    .dropdown-btn {
        font-weight: bold;
    }

    #dropmenu .dropdown {
        overflow: visible;
    }

    #dropmenu .dropdown ul {
        width: 100%;
        margin: 0;
        padding: 0;
        background-color: transparent;
        -webkit-box-shadow: none;
        box-shadow: none;
        opacity: 1;
        position: static;
    }

    .dropmenu .dropdown:after {
        display: none;
    }

    .dropmenu .dropdown ul:before {
        display: none;
    }

    #dropmenu .dropdown ul li {
        padding: 0 0 0 30px;
        border-bottom: none;
        position: relative;
    }

    #dropmenu .dropdown ul li:before {
        content: "\f0da";
        width: 16px;
        height: 16px;
        display: inline-block;
        display: inline-block;
        font-family: "Font Awesome 5 Free";
        font-weight: 900;
        color: var(--color01);
        position: absolute;
        top: 0;
        left: 10px;
    }

    #dropmenu .dropdown ul li a {
        padding: 0;
        font-size: 15px;
        color: inherit;
    }

    header .reserve-box {
        border-radius: 10px;
    }

    header .reserve-box a {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: normal;
        -ms-flex-direction: row;
        flex-direction: row;
        padding: 5px;
        width: 100%;
    }

    header .reserve-box .icon-calender {
        width: 25px;
        height: 25px;
        margin-bottom: 0;
        margin-right: 10px;
    }

    /* active */
    .active header {
        -webkit-box-shadow: 0px 0px 15px -8px #000;
        box-shadow: 0px 0px 15px -8px #000;
        -webkit-transform: translate(0, 0);
        transform: translate(0, 0);
    }

    /* active end */

    /* scrolled */
    .scrolled header {
        height: calc(100% - 20px);
        top: 10px;
    }

    .scrolled .fixed-logo {
        width: 140px;
    }

    .scrolled .reserve-box .icon-calender {
        /* width: 25px;
        height: 25px; */
        margin-bottom: 0;
    }

    /* scrolled end */
}

@media (max-width: 599px) {
    .fixed-logo {
        width: 150px;
        left: 5px;
    }

    header {
        width: 75%;
        padding: 10px 20px;
        -webkit-transform: translate(calc(100% + 10px), 0);
        transform: translate(calc(100% + 10px), 0);
    }

    header .reserve-box {
        width: 100%;
    }

    nav {
        height: calc(100% - 280px);
    }

    .header-tel-box-wrap {
        padding: 5px;
        min-width: 250px;
    }

    /* scrolled */
    .scrolled .fixed-logo {
        width: 120px;
    }

    /* scrolled end */
}

/* ##### header end ##### */

/* ##### footer ##### */
.totop {
    width: 50px;
    height: 50px;
    display: none;
    -webkit-box-shadow: 0 0 12px -8px #000;
    box-shadow: 0 0 12px -8px #000;
    position: fixed;
    bottom: 20px;
    right: 20px;
    z-index: 2;
}

.totop a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 20px;
    color: var(--color06);
    line-height: 100%;
    border: 2px solid var(--color01);
    border-radius: 5px;
    background-color: var(--color01);
}

.totop .arrow:before {
    content: "\f106";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
}

.totop a:hover {
    color: var(--color01);
    background-color: var(--color06);
    opacity: 1;
}

.floating-box {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    overflow: hidden;
    border-radius: 10px;
    background-color: var(--color06);
    -webkit-box-shadow: 0 0 12px -8px #000;
    box-shadow: 0 0 12px -8px #000;
    position: fixed;
    bottom: 20px;
    left: 20px;
    z-index: 2;
    opacity: 0;
    visibility: hidden;
}

[data-element-id] .floating-box{
  opacity: 1;
  visibility: visible;
}

/* スクショ用 */
/* .floating-box {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    overflow: hidden;
    border-radius: 10px;
    background-color: var(--color06);
    -webkit-box-shadow: 0 0 12px -8px #000;
    box-shadow: 0 0 12px -8px #000;
    position: absolute;
    bottom: 100px;
    left: 20px;
    z-index: 2;
}

.lower .floating-box {
    bottom: 50%;
} */

@media(max-width:1024px) {
    .floating-box {
        bottom: 20px;
    }
    
   .floating-box{
  opacity: 1;
  visibility: visible;
}
}

.floating-box-inner {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.floating-tel-box-wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    padding: 5px;
}

.floating-tel-box-wrap .text {
    font-size: 12px;
    line-height: 110%;
}

.floating-tel-box-wrap .tel-box a {
    font-size: 22px;
    color: var(--color01);
    letter-spacing: 2px;
}

.floating-box .icon-phone:before {
    width: 25px;
    height: 25px;
    color: var(--color01);
}

.floating-box .reserve-box {
    width: 200px;
    height: 100%;
}

.floating-box .reserve-box a .icon-calender {
    /* width: 20px;
    height: 20px; */
   /*  margin: 2px; */
}

.footer-title {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: bold;
    font-size: 36px;
    letter-spacing: 2px;
}

.train-text {
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.icon-train {
    margin-right: 10px;
}

.timetable {
    width: 100%;
    border-collapse: collapse;
}

.timetable tr {
    border-bottom: 1px solid var(--color06);
}

.timetable th,
.timetable td {
    padding: 7px 10px;
    font-weight: normal;
    text-align: center;
}

.timetable td {
    border-left: 1px solid var(--color06);
    border-right: 1px solid var(--color06);
}

.timetable td:last-of-type {
    border-right: none;
}

footer .underline-link a {
    color: var(--color06);
}

.footer-logo {
    width: 270px;
}

.footer-tel-box {
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.footer-tel-box .fax {
    display: inline-block;
    margin-left: 10px;
}

footer .map {
    height: 100%;
}

.footer-nav {
    -webkit-column-count: 3;
    -moz-column-count: 3;
    column-count: 3;
}

.footer-nav {
    width: 100%;
}

.footer-nav li {
    -webkit-column-break-inside: avoid;
    -moz-column-break-inside: avoid;
    break-inside: avoid;
}

.copy-box {
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.copy {
    width: 100%;
    -ms-flex-item-align: end;
    align-self: flex-end;
    font-size: 12px;
}

@media (max-width: 1024px) {
    footer {
        padding-bottom: 30px;
    }

    .totop {
        width: 40px;
        height: 40px;
        bottom: 15px;
        right: 15px;
    }

    .footer-box-inner {
        min-width: 368px;
        -webkit-box-flex: 1;
        -ms-flex-positive: 1;
        flex-grow: 1;
    }

    footer .map:after {
        padding-top: 50%;
    }

    .footer-title {
        font-size: 28px;
    }

    .circle-side {
        width: calc(100% - 120px);
    }

    .footer-title {
        font-size: 28px;
    }

    .timetable th,
    .timetable td {
        padding: 5px;
        font-size: 12px;
    }

    .footer-logo {
        width: 165px;
    }

    .footer-nav {
        -webkit-column-count: 2;
        -moz-column-count: 2;
        column-count: 2;
    }

    footer .colon-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-bottom: 10px;
    }

    footer .colon-list dt,
    footer .colon-list dd {
        width: 100%;
        font-size: 14px;
    }

    footer .colon-list dd {
        padding-left: 14px;
    }
    
    .floating-box .reserve-box a {
        display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%;
    }
}

@media (max-width: 599px) {
    footer {
        padding-bottom: 20px;
    }

    .totop {
        bottom: 8px;
        right: 8px;
    }

    .floating-box {
        bottom: 8px;
        left: 8px;
    }

    .footer-box-inner {
        width: 100%;
        min-width: 100%;
    }
    
     .footer-box-inner .text {
        font-size: 13px;
    }

    .floating-tel-box-wrap {
        padding: 2px;
    }

    .floating-tel-box-wrap .tel-box a {
        font-size: 18px;
        letter-spacing: 1px;
    }

    .floating-box .icon-phone:before {
        width: 20px;
        height: 20px;
        margin-right: 5px;
        font-size: 14px;
        color: var(--color01);
    }

    .floating-box .reserve-box {
        width: 145px;
    }

    .floating-box .reserve-box a {
        font-size: 14px;
        display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    width: 100%;
    }

    .footer-title {
        font-size: 24px;
    }

    .footer-logo {
        margin-left: auto;
        margin-right: auto;
    }

    .footer-nav li a {
        font-size: 14px;
    }

    footer .map:after {
        padding-top: 100%;
    }
    
    .copy-box{
      margin-top: 30px;
    }
}

/* ##### footer end ##### */

/* ##### トップページ ##### */
.top .mainimg-title {
    font-weight: bold;
    font-size: 44px;
    color: #a2a2a2;
    letter-spacing: 4px;
}

.top .mainimg-title.ver2 {
    color: var(--color05);
    text-shadow: var(--color06) 4px 0px 0px, var(--color06) 4px 1px 0px, var(--color06) 3px 2px 0px, var(--color06) 3px 3px 0px, var(--color06) 2px 3.36588px 0px, var(--color06) 1px 4px 0px, var(--color06) 0px 4px 0px, var(--color06) 0px 4px 0px, var(--color06) -2px 4px 0px, var(--color06) -2px 3px 0px, var(--color06) -3px 2px 0px, var(--color06) -4px 1px 0px, var(--color06) -3px 0px 0px, var(--color06) -4px 0px 0px, var(--color06) -4px -1.40313px 0px, var(--color06) -3px -2px 0px, var(--color06) -3px -3px 0px, var(--color06) -2px -3px 0px, var(--color06) -1px -4px 0px, var(--color06) 0px -4px 0px, var(--color06) 1px -4px 0px, var(--color06) 2px -3px 0px, var(--color06) 3px -3px 0px, var(--color06) 3px -2px 0px, var(--color06) 4px -1px 0px, var(--color06) 4px 0px 0px;
}

.top .mainimg-title.ver2 .blue {
    color: var(--color01);
}

.top_01 {
    height: 80px;
}

.top_01 .inner,
.top-news-box {
    height: 100%;
}

.top-news-box {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.top_01 .horizon-list {
    width: 10%;
    -webkit-box-flex: 1;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.top_01 .horizon-list dt,
.top_01 .horizon-list dd {
    padding: 0 20px;
    border-right: 1px solid var(--color06);
}

.top_01 .horizon-list dt {
    font-weight: bold;
    font-size: 22px;
    letter-spacing: 2px;
}

.top_01 .news-list dd .date {
    margin-right: 20px;
}

.top_01 .news-list dd .cc-title {
    width: 10%;
    display: block;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    overflow: hidden;
    color: var(--color06);
    text-overflow: ellipsis;
    white-space: nowrap;
}

.top_01 .news-list dd .cc-title a {
    color: var(--color06);
}


.top_01 .top-news-box .line-btn {
    padding: 0 20px;
}

.feature-list {
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.feature-list li {
    position: relative;
}

.feature-list li .icon-tooth {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
}

[data-element-id] .feature-list li .add.show\@sp{
  margin-top:80px;
}

[data-element-id] .show\@sp .icon-tooth {
    position: relative;
    top: auto;
    left: auto;
}

.feature-list .ofimg {
    border-radius: 50%;
    position: relative;
}

.feature-list .acc-wrap {
    margin-top: -20px;
    position: relative;
    z-index: 1;
}

.acc-wrap .acc-btn {
    padding:15px;
    padding-right: 40px;
    color: var(--color06);
    line-height: 120%;
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: relative;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.acc-wrap .acc-btn:hover {
    cursor: pointer;
}

.acc-btn-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.accordion_icon {
    width: 30px;
    height: 30px;
    margin: auto;
    border: 2px solid var(--color03);
    border-radius: 50%;
    background-color: var(--color03);
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 10px;
    z-index: 1;
}

.accordion_icon span {
    width: 12px;
    height: 2px;
    background-color: var(--color06);
    -webkit-transition: 0.3s linear;
    transition: 0.3s linear;
    position: absolute;
}

.accordion_icon span:nth-of-type(1) {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    top: 12px;
    left: 7px;
}

.accordion_icon span:nth-of-type(2) {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    top: 12px;
    left: 7px;
}

.acc-btn:hover .accordion_icon {
    background-color: var(--color06);
}

.acc-btn:hover .accordion_icon span {
    background-color: var(--color05);
}

.action .accordion_icon span:nth-of-type(1) {
    opacity: 0;
}

.action .accordion_icon span:nth-of-type(2) {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    top: 12px;
}

.acc-content {
    padding: 15px;
    color: var(--color06);
}

.feature-link {
    position: relative;
}

.feature-link:before {
    content: "";
    display: block;
    padding-top: 100%;
}

.feature-link .circle-box {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.feature-link a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    font-size: 20px;
    color: var(--color06);
    border-radius: 50%;
    background-color: var(--color01);
}

.feature-link a .icon_005 {
    margin-bottom: 10px;
}

.feature-link a .arrow-right {
    padding-right: 40px;
    position: relative;
}

.feature-link a .arrow-right:after {
    content: "\f105";
    width: 20px;
    height: 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: 100%;
    border-radius: 50%;
    background-color: var(--color03);
    -webkit-transition: 0.1s linear;
    transition: 0.1s linear;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 10px;
    z-index: 1;
}

.feature-link a:hover {
    opacity: 1;
}

.feature-link a:hover .arrow-right:after {
    right: 5px;
}

.item-list li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-weight: bold;
    font-size: 18px;
    color: var(--color06);
}

.item-list li .ja {
    padding-right: 20px;
    position: relative;
}

.item-list li .ja:after {
    content: "\f105";
    display: inline-block;
    margin: auto;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 0;
    z-index: 1;
}

.item-list li a [class*="icon"] {
    margin-bottom: 5px;
}

.worry-list {
    -webkit-box-align: start;
    align-items: flex-start;
    -ms-flex-align: start;
}

.worry-list li {
    min-height: 50px;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    position: relative;
}

.worry-list [class*="icon"] {
    width: 50px;
    min-width: 50px;
    height: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-right: 1em;
    border-radius: 50%;
    background-color: var(--color02);
}

.worry-list li .ja {
    font-weight: bold;
    font-size: 20px;
    line-height: 140%;
}

.worry-list li .list-inner {
    width: 100%;
    height: 100%;
}

.worry-list li .list-inner a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.worry-list li .icon_000 {
    width: 50px;
    height: 50px;
    background-color: var(--color02);
    position: relative;
}

.worry-list li .icon_000::before {
    content: "";
    width: 100%;
    height: 100%;
    background-image: var(--bg02);
    background-size: 80%;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    left: 0;
}

.worry-list li .icon_018::before {
    background-image: var(--bg02);
}

.worry-list li .icon_019::before {
    background-image: var(--bg03);
}

.worry-list li .icon_020::before {
    background-image: var(--bg04);
}

.worry-list li .icon_021::before {
    background-image: var(--bg05);
}

.worry-list li .icon_022::before {
    background-image: var(--bg06);
}

.worry-list li .icon_023::before {
    background-image: var(--bg07);
}

.worry-list li .icon_024::before {
    background-image: var(--bg08);
}

.worry-list li .icon_025::before {
    background-image: var(--bg09);
}

.worry-list li .icon_026::before {
    background-image: var(--bg10);
}

.top_04 .sideby-reserve .reserve-box {
    width: 100%;
    height: 100%;
}

.top_04 .sideby-reserve a {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 30px;
}

.top_04 .sideby-reserve a .icon-calender {
    margin-right: 10px;
}

.top_04 .sideby-reserve a:after {
    width: 30px;
    height: 30px;
    font-size: 20px;
}

@media (max-width: 1024px) {
    .top .mainimg-title {
        font-size: 34px;
    }

    .top-news-box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .top_01 {
        height: 110px;
        padding: 10px;
    }

    .top_01 .horizon-list {
        width: 100%;
    }

    .top_01 .horizon-list dt,
    .top_01 .horizon-list dd {
        padding: 0 10px;
    }

    .top_01 .horizon-list dt {
        font-size: 20px;
        letter-spacing: 1px;
    }

    .top_01 .horizon-list dd {
        border-right: none;
    }

    .top_01 .top-news-box .line-btn {
        margin: 5px 0 5px auto;
        padding: 0;
    }

    .item-list li a {
        font-size: 14px;
    }

    .item-list li .ja {
        padding-right: 16px;
    }

    .top_04 .sideby-reserve a {
        font-size: 26px;
    }

    .top_05 .sideby-cont {
        width: 48%;
    }
}

@media (max-width: 599px) {
    .top .mainimg-title {
        margin-top: 50px;
        font-size: 26px;
        line-height: 1.6;
    }

    .top_01 .horizon-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .top_01 .horizon-list dt {
        width: auto;
        margin-bottom: 5px;
        font-size: 18px;
        border-bottom: 1px solid var(--color06);
        border-right: none;
    }

    .top_01 .horizon-list dd {
        width: 100%;
    }

    .feature-list li {
        width: 80%;
        margin: 0 auto 50px auto;
    }

    .acc-wrap .acc-btn {
        padding: 10px 40px 10px 15px;
    }

    .acc-content {
        padding: 10px 15px;
    }

    .worry-list li .ja {
        font-size: 18px;
    }

    .sideby-phone,
    .top_04 .sideby-reserve a {
        padding: 30px 15px;
    }

    .reserve-box {
        border-radius: 0;
    }

    .top_05 .sideby-cont {
        width: 100%;
        margin-bottom: 20px;
    }
}

[data-element-id] .top .mainimg-title.show\@sp{
  font-size:26px;
}

/* ##### トップページ end ##### */

/* ##### 下層ページ共通 ##### */
.underimg .ofimg:before {
    background-color: rgba(255, 255, 255, 0.7);
    position: relative;
    z-index: 1;
}

.underimg .mainimg-title {
    font-weight: bold;
    font-size: 44px;
    color: var(--color05);
    letter-spacing: 4px;
    text-align: center;
}

.underimg .mainimg-title::first-letter {
    color: var(--color01);
}

.breadcrumbs {
    padding: 30px 0;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.breadcrumbs ul {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.breadcrumbs ul li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.breadcrumbs ul li:not(:first-of-type):before {
    content: "\f105";
    display: inline-block;
    margin: 0 20px;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: var(--color01);
}

.breadcrumbs .breadcrumbs-home a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.breadcrumbs .breadcrumbs-home a:before {
    content: "";
    width: 20px;
    height: 20px;
    display: inline-block;
    margin-top: -5px;
    margin-right: 10px;
    background-image: url('/import/tenant_1/153.121.55.107/html/images/common/icon_002_new.webp');
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: center center;
}

.breadcrumbs .breadcrumbs-thispage {
    width: 10%;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
}

.breadcrumbs .breadcrumbs-thispage span {
    display: inline-block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

@media (max-width: 1024px) {
    .underimg .ofimg:before {
        padding-top: 45%;
    }

    .underimg .mainimg-title {
        font-size: 34px;
    }
}

@media (max-width: 599px) {
    .underimg .ofimg:before {
        padding-top: 90%;
    }

    .underimg .mainimg-title {
        font-size: 28px;
    }

    .breadcrumbs ul {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .breadcrumbs .breadcrumbs-thispage {
        width: auto;
        max-width: 100%;
    }
}

[data-element-id] .underimg .mainimg-title.show\@sp{
  font-size:28px;
}

/* ##### 下層ページ共通 end ##### */

/* ##### 医院案内 ##### */
.clinic_01 .inner {
    position: relative;
}

.clinic_01 .circle {
    position: absolute;
    top: -40px;
    right: 0;
}

.credit-list li {
    width: 60px;
    margin: 3px;
}

.paypay {
    width: 180px;
}

.clinic_05 .circle-list {
    padding-left: 0;
}

.clinic_05 .circle-list>li {
    font-size: 18px;
    text-indent: 0;
}

.clinic_05 .circle-list>li:before {
    font-size: 18px;
}

@media (max-width: 1024px) {
    .credit-list li {
        width: 50px;
    }

    .paypay {
        width: 160px;
    }

    .clinic_05 .circle-list>li {
        font-size: 16px;
    }
}

@media (max-width: 599px) {
    .clinic_01 .circle {
        top: -100px;
    }
}

/* ##### 医院案内 end ##### */

/* ##### アクセス ##### */
.access_02 .map {
    z-index: 1;
}

.access_02 .map:after {
    padding-top: 45%;
}

.access-info {
    margin-top: -100px;
    padding-top: 180px;
}

@media (max-width: 1024px) {
    .access_02 .map:after {
        padding-top: 60%;
    }
}

@media (max-width: 599px) {
    .access_02 .map:after {
        padding-top: 90%;
    }
}

/* ##### アクセス end ##### */

/* ##### スタッフ紹介 ##### */
.staff-box .sideby-cont {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.positon {
    font-weight: bold;
    font-size: 24px;
}

[data-element-id] .show\@sp.positon{
  font-size: 18px;
}

.name {
    font-weight: bold;
    font-size: 42px;
}

.birth {
    font-size: 20px;
}

.profile {
    margin-bottom: -30px;
    margin-left: -999rem;
    margin-right: -80px;
    padding-left: 999rem;
}

.staff-box-wrap .staff-box:nth-of-type(even) .sideby-wrap {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
}

.staff-box-wrap .staff-box:nth-of-type(even) .profile {
    margin-left: -80px;
    margin-right: -999rem;
    padding-left: inherit;
    padding-right: 999rem;
}

.staff_04-box {
    width: 700px;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.staff_04-box .sideline-list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.staff_04-box .sideline-list dt {
    width: 50%;
    min-width: 50%;
}

.staff_04-box .sideline-list dd {
    width: 50%;
    min-width: 50%;
}

@media (max-width: 1024px) {
    .positon {
        font-size: 18px;
    }

    .name {
        font-size: 32px;
    }
}

@media (max-width: 599px) {
    .positon {
        font-size: 18px;
    }

    .name {
        font-size: 26px;
    }

    .profile {
        margin-right: 0;
    }

    .staff-box-wrap .staff-box:nth-of-type(even) .profile {
        margin-left: 0;
    }

    .staff_04-box .sideline-list dt,
    .staff_04-box .sideline-list dd {
        width: 100%;
    }
}

/* ##### スタッフ紹介 end ##### */

/* ##### 歯周病治療 ##### */
@media (max-width: 1024px) {
    .periodontal_04 .blue-round-list-inner .blue-round-text {
        font-size: 16px;
    }
}

@media (max-width: 599px) {
    .periodontal_02 .halving-list .sideby-img {
        margin-bottom: 0;
    }
    
    .halving-list .sideby-cont .title{
      font-size: 15px;
    text-align: center;
    }
    
    .blue-round-list-inner .blue-round-text{
          font-size: 16px;
    font-weight: 500;
    }

    .periodontal_04 .blue-round-list-inner .blue-round-text {
        width: 90%;
        height: auto !important;
        font-size: 12px;
    }
}

/* ##### 歯周病治療 end ##### */

/* ##### 虫歯・歯周病の予防 ##### */
.explanation-list dt {
    width: 25%;
    border-bottom: 1px solid var(--color06);
}

.explanation-list:last-of-type dt {
    border-bottom: 1px solid var(--color01);
}

.explanation-list dt .ofimg {
    margin: 0 auto;
}

.explanation-list dd {
    width: calc(75% / 2);
    border-bottom: 1px solid #ebebeb;
}

.explanation-list.type02 dd{
  width:  calc(75% / 1);
}

.explanation-list dd:nth-of-type(1) {
    border-right: 1px solid #ebebeb;
}

.explanation-title-list dd,
.explanation-title-list dd:nth-of-type(1) {
    border-bottom: none;
    border-right: none;
}

.explanation-title {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-weight: bold;
    font-size: 18px;
}

.explanation-title-sp {
    display: none;
    font-size: 16px;
}

@media (max-width: 1024px) {
    .explanation-list dt .ofimg {
        width: 90%;
    }

    .explanation-title {
        font-size: 16px;
    }
}

@media (max-width: 599px) {
    .explanation-list {
        margin-bottom: 30px;
    }

    .explanation-list dt,
    .explanation-list dd,.explanation-list.type02 dd {
        width: 100%;
    }

    .explanation-list dt .ofimg {
        width: 50%;
    }

    .explanation-list dd {
        border-left: 1px solid #ebebeb;
        border-right: 1px solid #ebebeb;
    }

    .explanation-title-list {
        display: none;
    }

    .explanation-title-sp {
        display: block;
    }
}

/* ##### 虫歯・歯周病の予防 end ##### */

/* ##### 口臭治療 ##### */
@media (max-width: 1024px) {
    .product-list .sideby-img {
        width: 35%;
    }

    .product-list .sideby-cont {
        width: 60%;
    }
}

@media (max-width: 599px) {
    .product-list .sideby-img {
        width: 60%;
        margin-bottom: 15px;
        margin-left: auto;
        margin-right: auto;
    }

    .product-list .sideby-cont {
        width: 100%;
    }
}

/* ##### 口臭治療 ene ##### */

/* ##### 補綴治療 ##### */
.crown-price-title,
.crown-price-list {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.crown-price-title dt,
.crown-price-list dt,
.crown-price-title dd,
.crown-price-list dd {
    padding-left: 80px;
    padding-right: 80px;
}

.crown-price-title dd,
.crown-price-list dd {
    min-width: 20%;
    text-align: right;
}

.crown-price-title {
    border-bottom: 2px solid var(--color06);
}

@media (max-width: 1024px) {
    .crown-price-title,
    .crown-price-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: start;
        align-items: flex-start;
        -ms-flex-align: start;
    }

    .crown-price-title dt,
    .crown-price-list dt,
    .crown-price-title dd,
    .crown-price-list dd {
        padding-left: 50px;
        padding-right: 50px;
    }

    .crown-price-list dt,
    .crown-price-list dd {
        font-size: inherit;
    }

    .crown-price-title dd,
    .crown-price-list dd {
        -ms-flex-item-align: end;
        align-self: flex-end;
    }
}

@media (max-width: 599px) {
    .crown-price-title dt,
    .crown-price-list dt,
    .crown-price-title dd,
    .crown-price-list dd {
        padding-left: 30px;
        padding-right: 30px;
    }
}

/* ##### 補綴治療 end ##### */

/* ##### 義歯 ##### */
.image-box {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

/* ##### 義歯 end ##### */

/* ##### 採用情報 ##### */
.recruit_01 .right-angle-list li {
    font-size: 18px;
}

.floating-img {
    float: left;
    margin-bottom: 50px;
    margin-right: 50px;
}

.recruit_04 .horizon-list dt,
.recruit_04 .horizon-list dd {
    font-size: 18px;
}

@media (max-width: 1024px) {
    .floating-img {
        margin-bottom: 5px;
        margin-right: 20px;
    }
}

@media (max-width: 599px) {
    .floating-img {
        width: 50%;
        margin-right: 15px;
    }

    .recruit_04 .horizon-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .recruit_04 .horizon-list dt,
    .recruit_04 .horizon-list dd {
        width: 100%;
        font-size: 16px;
    }

    .recruit_04 .horizon-list dd {
        padding-left: 16px;
    }
}

/* ##### 採用情報 end ##### */

/* ##### IE11 hack ##### */
.ie11 .line-btn {
    width: 220px;
    min-width: 220px;
}

/* ##### IE11 hack end ##### */

/* ##### 見たまま編集 ##### */
[data-element-id] header {
    position: relative;
    height: auto;
    top: auto;
    left: auto;
}

[data-element-id] .sp-only {
    display: block;
    border: 1px solid var(--color01);
}

[data-element-id] .sp-only:before {
    content: "スマホナビ";
    width: 100%;
    display: block;
    padding: 2px 5px;
    font-size: 10px;
    color: var(--color06);
    line-height: 100%;
    background-color: var(--color01);
}

[data-element-id] #dropmenu .dropdown {
    overflow: visible;
}

[data-element-id] .dropdown-btn{
  text-align: center;
}

[data-element-id] #dropmenu .dropdown ul {
    opacity: 1;
    top: auto;
    left: auto;
    right: auto;
    z-index: 2 !important;
    position: relative;
    transform: none;
}

[data-element-id] .underimg .mainimg-title:before {
    content: "";
}

[data-element-id] .floating-box {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 10px;
    opacity: 1 !important;
    position: static;
}

[data-element-id] .top_06 {
    border: 2px solid #ff8c00;
    position: relative;
}

[data-element-id] .top_06:before {
    content: "公開画面ではブログは地図の下に移動します。";
    width: 100%;
    display: block;
    padding: 15px;
    font-size: 14px;
    color: var(--color06);
    line-height: 100%;
    text-align: center;
    background-color: #ff8c00;
    position: absolute;
    top: 0;
    left: 0;
}

[data-element-id] .infinity {
    margin-left: -40%;
    margin-right: -40%;
    padding-left: 40%;
    padding-right: 40%;
}

[data-element-id] .explanation-title-sp {
    display: block;
}

[data-element-id] .explanation-title-sp:before {
    content: "スマホのみの表示です。";
    width: 100%;
    display: block;
    margin-bottom: 5px;
    padding: 5px;
    font-size: 12px;
    color: var(--color06);
    line-height: 100%;
    text-align: center;
    background-color: #ff8c00;
}

[data-element-id] .tablist {
    margin: 10px 0;
    position: relative;
}

[data-element-id] .tablist:before {
    width: 100%;
    display: block;
    padding: 10px;
    font-size: 14px;
    color: var(--color06);
    line-height: 100%;
    text-align: center;
    background-color: #ff8c00;
    position: absolute;
    top: 0;
    left: 0;
}

[data-element-id] .tablist:nth-of-type(1):before {
    content: "タブ１枚目";
}

[data-element-id] .tablist:nth-of-type(2):before {
    content: "タブ２枚目";
}

.floor {
    width: 100%;
    max-width: 500px;
    margin: 0 auto;
}

/* ##### 見たまま編集 end ##### */

/*****2021/05/19*****/
.w60b {
    width: 60%;
}

.w40b {
    width: 40%;
}

@media (max-width: 1049px) {
    .w60b {
        border-right: 2px solid var(--color06);
    }
}

@media (max-width: 599px) {
    .w60b {
        width: 100%;
        border-right: none;
    }

    .w40b {
        width: 100%;
    }
}

/* 2022/3/30 */
.up-fz-14 {
    font-size: 14px;
}

.up-fz-16 {
    font-size: 16px;
}

.up-fz-18 {
    font-size: 18px;
}

/* 2022/06/10 */
.po-title03 {
    margin-bottom: 20px;
    padding: 5px 60px;
    font-size: 18px;
    color: var(--color06);
    text-align: center;
    border: 2px solid #1290cf;
    border-radius: 60%;
    background: var(--color01);
}

.title_03 span {
    float: right;
    padding: 5px 60px;
    font-size: 18px;
    color: var(--color06);
    border: 2px solid #1290cf;
    border-radius: 60%;
    background: var(--color01);
}

.feature {
    width: 90%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: auto;
}

.feature.type02{
  width: 100%;
}

.m205 {
    margin: 20px auto;
}

.m1020 {
    margin: 10px auto;
}

.feature dl {
    width: 230px;
    height: 230px;
    border-radius: 50%;
    background: var(--color01);
    position: relative;
}

.feature.type02 dl {
    width: calc((100% - 30px) /2);
    height: auto;
    border-radius: 5px;
    padding: 30px;
}

.feature.type02.linkbox dl{
  padding: 0;
}

.feature.type02.type03 dl{
  width: calc((100% - 30px) /3);
}

.feature dl dt {
    width: 60%;
    font-weight: bold;
    font-size: 20px;
    color: var(--color05);
    text-align: center;
    border-bottom: 1px solid var(--color05);
    position: absolute;
    top: 20px;
    left: 20%;
}

.feature.type02 dl dt {
    width: 100%;
    position: relative;
    top: auto;
    left: auto;
}

.feature.type02.linkbox dl dt{
  border-bottom: none;
}

[data-element-id] .feature.type02.linkbox dl dt.show\@sp{
  border-bottom:solid 4px green;
}

.feature.type02.linkbox dl dt a {
    padding: 20px;
    display: block;
}

.feature dl dd {
    width: 80%;
    line-height: 1.3;
    text-align: center;
    position: absolute;
    top: 70px;
    left: 10%;
}

.feature.type02 dl dd {
    width: 100%;
    position: relative;
    top: auto;
    left: auto;
    margin-top: 20px;
    text-align: left;
}

.text02 {
    font-weight: bold;
    font-size: 18px;
    color: #cd0000;
}

.text02 span {
    padding: 2px;
    font-size: 20px;
    color: #000;
    background: #ffeb3b;
}

.sp-none {
    display: block;
}

@media (max-width: 1042px) {
    .title_03 span {
        padding: 2px 20px;
        font-size: 14px;
    }

    .text02 {
        font-size: 16px;
    }

    .text02 span {
        font-size: 18px;
    }
}

@media (max-width: 780px) {
    .feature dl {
        width: 180px;
        height: 180px;
    }
    
    .feature.type02 dl{
      width: 100%;
      padding:20px;
    }

    .feature dl dt {
        font-size: 18px;
    }

    .feature dl dd {
        font-size: 14px;
        top: 60px;
    }
}


@media (max-width: 599px) {
    .sp-none {
        display: none;
    }
    
    .feature.type02.type03 dl{
    width: 100%;
    }

    .feature {
        width: 100%;
    }

    .feature dl {
        width: 160px;
        height: 160px;
    }

    .feature dl dt {
        font-size: 16px;
        top: 15px;
    }

    .feature dl dd {
        font-size: 12px;
        top: 45px;
    }

    .m205 {
        margin: 10px auto;
    }
}

[data-element-id] .feature dl dt.show\@sp{
  font-size: 16px;
        top: 15px;
}

[data-element-id] .feature.type00 dl dt.show\@sp {
    top: 55px;
    left: 0%;
}

[data-element-id] .feature.type00 dl dd{
  top: 150px;
}

/* hamburger overlay */
.hamburger {
    display: none;
}

@media (max-width: 1024px) {
    .hamburger {
        width: 45px;
        height: 45px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        align-items: center;
        -ms-flex-align: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        background-image: url('/import/tenant_1/153.121.55.107/html/images/common/icon_001.webp');
        background-size: 100% auto;
        background-repeat: no-repeat;
        background-position: center center;
        cursor: pointer;
        position: fixed;
        top: 5px;
        right: 500px;
        z-index: 5;
    }

    .hamburger a,
    .hamburger a:hover,
    .hamburger a:focus {
        opacity: 1;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        -webkit-transition: all 0.4s;
        transition: all 0.4s;
    }

    .active .menu-trigger span {
        background-color: var(--color06);
    }

    .menu-trigger {
        width: 24px;
        height: 22px;
        float: right;
        margin-top: -4px;
        position: relative;
    }

    .menu-trigger span {
        width: 100%;
        height: 2px;
        background: var(--color06);
        position: absolute;
        left: 0;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
    }

    .menu-trigger span:nth-of-type(2) {
        top: 10px;
    }

    .menu-trigger span:nth-of-type(3) {
        bottom: 0;
    }

    .active .menu-trigger {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }

    .active .menu-trigger span:nth-of-type(1) {
        -webkit-transform: translateY(10px) rotate(-45deg);
        transform: translateY(10px) rotate(-45deg);
    }

    .active .menu-trigger span:nth-of-type(2) {
        -webkit-transform: translateY(0) rotate(45deg);
        transform: translateY(0) rotate(45deg);
    }

    .active .menu-trigger span:nth-of-type(3) {
        opacity: 0;
    }

    .overlay {
        width: 100%;
        height: 100%;
        display: none;
        background-color: rgba(77, 66, 62, 0.3);
        position: fixed;
        top: 0;
        left: 0;
        z-index: 3;
    }

    .active .overlay {
        display: block;
    }
}

@media (max-width: 599px) {
    .hamburger {
        top: 5px;
        right: calc(100% + 10px);
    }
}

/* hamburger overlay end */

/* pager */
.pager {
    width: 100%;
    margin: 80px 0;
}

.pager ul li {
    margin: 0 15px;
}

.pager ul li a,
.pager ul li .now {
    width: 30px;
    height: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-family: Arial, Helvetica, "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 18px;
    color: #818181;
    line-height: 100%;
    border: 2px solid #6cafd2;
    border-radius: 50%;
    position: relative;
}

.pager ul li .now,
.pager ul li a:hover {
    color: var(--color06);
    border: 2px solid var(--color01);
    background-color: var(--color01);
    opacity: 1;
}

.pager ul li .now:after,
.pager ul li a:hover:after {
    background-color: #000;
}

.pager ul li a:focus {
    outline: none;
}

@media all and (-ms-high-contrast:none) {
    *::-ms-backdrop,
    .pager ul li a,
    .pager ul li .now {
        padding-top: 5px;
    }
}

.pager ul li a:hover {
    opacity: 1;
}

.pager ul .prev,
.pager ul .next {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    font-size: 10px;
    border-radius: 50%;
    background-color: var(--color01);
    position: relative;
}

.pager ul .prev a,
.pager ul .next a {
    color: var(--color06);
    border: 1px solid var(--color01);
}

.pager ul .prev-arrow:before {
    content: "\f104";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: 100%;
}

.pager ul .next-arrow:before {
    content: "\f105";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    line-height: 100%;
}

.pager ul .prev a:hover,
.pager ul .next a:hover {
    color: var(--color01);
    background-color: var(--color06);
}

@media (max-width: 1024px) {
    .pager {
        margin: 50px 0;
    }

    .pager ul li {
        margin: 0 10px;
    }
}

@media (max-width: 599px) {
    .pager {
        margin: 30px 0;
    }

    .pager ul li {
        margin: 0 5px;
    }

    .pager ul li a,
    .pager ul li .now {
        width: 30px;
        height: 30px;
        font-size: 16px;
    }
}

/* pager end */


/* 口臭外来 */
.kousyutiryo_table .table-wrap .timetable {
    width: 60%;
}

.kousyutiryo_table .timetable th {
    width: 130px;
    border: solid 1px #000;
}

.kousyutiryo_table .timetable td {
    width: 250px;
    border: solid 1px #000;
    border-right: solid 1px #000 !important;
}

@media(max-width:1024px){
  .table-list-wrap {
      overflow-x: scroll;
  }
  .table-list-wrap .table-list {
      flex-wrap: nowrap;
      min-width: 600px;
  }
}


@media (max-width: 599px) {
    .kousyutiryo_table .table-wrap .timetable {
        width: 100% !important;
    }

    .kousyutiryo_table .timetable th {
        width: 30%;
    }

    .kousyutiryo_table .timetable td {
        width: 70%;
    }
    
    .table-list-wrap .table-list:first-child dd {
    font-size: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}
}

/* テンプレート化時に追加 */
.postal-wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
    margin-bottom: 5px;
}

.postal-wrap .postal-mark {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 1em;
    line-height: 1;
}

/* お問い合わせフォーム */
.contact-form {
    padding: 0 8%;
}

.contact-form input[type="text"],
.contact-form textarea {
    width: 100%;
    padding: 20px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;
}

.contact-form .yubnbangou input {
    width: 50%;
}

.contact-form .content input {
    min-height: 300px;
}

.contact-form textarea {
    height: 200px;
}

.contact-form dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: wrap;
    flex-direction: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 2% 0;
}

.contact-form dt {
    width: 25%;
    padding-left: 20px;
    padding-right: 20px;
    font-weight: bold;
}

.contact-form dt .require-icon {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    margin-top: 5px;
    padding: 1px 10px;
    color: var(--color06);
    background-color: var(--color01);
}

.contact-form dd {
    width: 70%;
}

.contact-form select {
    width: 100%;
    padding: 20px;
    border: 1px solid #bfbfbf;
    border-radius: 5px;

    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.contact-form .select-wrap {
    position: relative;
}


.contact-form .select-wrap:after {
    content: "▼";
    font-size: 10px;
    color: #bfbfbf;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    position: absolute;
    top: 50%;
    right: 10px;
}

.confirm .contact-form .select-wrap:after {
    content: none;
}

.yubin-mark {
    margin-right: 1em;
}

#form-shape ul{
  gap: 30px;
}

@media (max-width: 1024px) {
    .contact-form {
        padding: 0;
    }

    .contact-form dt {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

@media (max-width: 599px) {
    .contact-form dl {
        display: block;
    }

    .contact-form dt {
        width: 100%;
        -webkit-box-orient: initial;
        -webkit-box-direction: initial;
        -ms-flex-direction: initial;
        flex-direction: initial;
        -webkit-box-pack: initial;
        -ms-flex-pack: initial;
        justify-content: initial;
        margin-bottom: 0.5em;
        padding-left: 0;
        padding-right: 0;
    }

    .contact-form dd {
        width: 100%;
    }

    .contact-form input[type="text"],
    .contact-form textarea {
        padding: 10px;
        border-radius: 3px;
    }

    .contact-form select {
        padding: 10px;
        border-radius: 3px;
    }
    
    .input-confirm-form-back-btn{
  padding-left: 40px;
}
}

/* flex */
.up-d-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.up-jc-c {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.up-jc-sb {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.up-ai-c {
    -webkit-box-align: center;
    align-items: center;
    -ms-flex-align: center;
}

.up-fxw-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

/* color */
.up-c-red {
    color: red;
}

/* 採用情報 */
.recruit-list li {
    margin-bottom: 2em;
}

.recruit-list li .list-inner {
    padding: 1em;
    background-color: var(--color06);
}

.recruit-list li .img-wrap {
    width: 30%;
}

.recruit-list li .text-wrap {
    width: 65%;
}

.recruit-list li dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.recruit-list li dt {
    width: 30%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    font-weight: bold;
}

.recruit-list li dd {
    width: 65%;
}

@media(max-width:1024px) {
    .recruit-list li .img-wrap {
        width: 100%;
        margin-bottom: 10px;
    }

    .recruit-list li .text-wrap {
        width: 100%;
    }
}

/* LINEボタン */
.line-btn-wrap {
    max-width: 150px;
    margin: 0 auto;
}

.line-btn-wrap a>div {
    color: #fff;
}

.line-btn-wrap a {
    width: 100%;
    height: 100%;
    display: block;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0.5em 0;
    border-radius: 5px;
    background-color: #00b900;
}


.line-btn-wrap a::before {
    content: "\f3c0";
    display: inline-block;
    margin-right: 0.5em;
    font-family: "Font Awesome 5 Brands";
    font-weight: 400;
    font-size: 16px;
    color: var(--color06);
}

footer .line-btn-wrap {
    margin: 0 auto 0 0;
}

/* 追記 */
.fxd-rowr{
  flex-direction: row-reverse;
}

.text{
  line-height: 2;
}

.orthodontic_02 .box .price{
  margin-top: 30px;
  text-align: right;
}

@media(max-width:599px){
  .orthodontic_02 .box .price{
    font-size: 14px;
  }
}

/* show hide */
.show\@pc {
  display: block;
}

.hide\@pc {
  display: none;
}

[data-element-id] .show\@tb {
  display: block;
  border: solid 4px green;
  position: relative;
}

[data-element-id] .show\@tb:after {
  display: block;
  content: "モバイル用";
  color: #fff;
  font-weight: 700;
  background: green;
  padding: 5px;
  text-align: center;
  text-shadow: none;
}

[data-element-id] .show\@tb.indention:after {
  content: "モバイル用はここで改行";
}

[data-element-id] .show\@pc.indention:after {
  content: "PC用はここで改行";
  display: block;
  color: #fff;
  font-weight: 700;
  background: blue;
  padding: 5px;
  text-align: center;
  text-shadow: none;
  font-size: 12px;
}

[data-element-id] .show\@sp {
    display: block;
    border: solid 4px green;
    position: relative;
    width: 100%;
    max-width: 375px;
    margin: 0 auto;
  padding: 0;
}

[data-element-id] .show\@sp:after {
  display: block;
  content: "モバイル用";
  color: #fff;
  font-weight: 700;
  background: green;
  padding: 5px;
  text-align: center;
  text-shadow: none;
  font-size:16px;
  line-height: 1;
  font-weight:600;
  font-family: "M PLUS Rounded 1c", sans-serif;
  letter-spacing:2px;
}

[data-element-id] .show\@sp.indention:after {
  content: "モバイル用はここで改行";
}

@media (max-width: 1024px) {
  .show\@tb {
    display: block;
  }

  .hide\@tb {
    display: none;
  }
}

@media (max-width: 599px) {
  .show\@sp {
    display: block;
  }

  .hide\@sp {
    display: none;
  }
}


[data-ab-test-block] [data-ab-test-contents]+[data-ab-test-contents] {display: none;}

.bgc-blue-05 {
    background-color: #7DCBDE;
}
