@charset "UTF-8";

/****************************************
        ベース（基本設定）
****************************************/
/**
カラー
*/
.color01 {
    color: #444;
}

.color05 {
    color: #fb9c8b;
}

.color02 {
    color: #11725e;
}

.color03 {
    color: #efe8e2;
}

.color04 {
    color: #fff7ee;
}

.bg_pink {
    background: #ffd0c0
}

.bg_lpink {
    background: #ffe4db
}

.bg_yellow {
    background: #ffeac0;
}


.bgcolor01 {
    background-color: #99876a;
}

.bgcolor02 {
    background-color: #11725e;
}

.bgcolor03 {
    background-color: #ffe4db;
}

.bgcolor04 {
    background-color: #fff7ee;
}

/*********************************************
    汎用クラス
*********************************************/
/**
エリア
*/
.area {
    padding: 60px 0;
}

.area80 {
    padding: 80px 0;
}

.area60 {
    padding: 60px 0;
}

.area40 {
    padding: 40px 0;
}

.area20 {
    padding: 20px 0;
}

.areat {
    padding-top: 60px;
}

.area80t {
    padding-top: 80px;
}

.area60t {
    padding-top: 60px;
}

.area40t {
    padding-top: 40px;
}

.area20t {
    padding-top: 20px;
}

.areab {
    padding-bottom: 60px;
}

.area80b {
    padding-bottom: 80px;
}

.area60b {
    padding-bottom: 60px;
}

.area40b {
    padding-bottom: 40px;
}

.area20b {
    padding-bottom: 20px;
}

@media only screen and (max-width: 1024px) {
    .area {
        padding: 40px 0;
    }

    .area80 {
        padding: 60px 0;
    }

    .area60 {
        padding: 40px 0;
    }

    .area40 {
        padding: 20px 0;
    }

    .areat {
        padding-top: 40px;
    }

    .area80t {
        padding-top: 60px;
    }

    .area60t {
        padding-top: 40px;
    }

    .area40t {
        padding-bottom: 20px;
    }

    .areab {
        padding-bottom: 40px;
    }

    .area80b {
        padding-bottom: 60px;
    }

    .area60b {
        padding-bottom: 40px;
    }

    .area40b {
        padding-bottom: 20px;
    }
}

/**
マージン
*/
.mt10 {
    margin-top: 10px;
}

.mb50 {
    margin-bottom: 50px;
}

/**
テキスト
*/
.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

/*文字をまとめて落とす*/
.group {
    display: inline-block;
}

/*打消し線*/
.strike {
    text-decoration: line-through;
}

/**
heightLineリセット
*/
@media only screen and (max-width: 1024px) {
    .resetheight.-tablet {
        height: auto !important;
    }
}

@media only screen and (max-width: 599px) {
    .resetheight.-mobile {
        height: auto !important;
    }
}

/**
その他
*/
/*トリミングする要素のブロック化*/
.trim {
    display: block;
}

/*float*/
.floatr {
    float: right;
}

/*モバイル時に順序を並べ替え*/
@media only screen and (max-width: 599px) {
    .change-sp {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

/*PC時のみ非表示*/
@media only screen and (min-width: 1025px) {
    .no-pc {
        display: none;
    }
}

/*sp時のみ非表示*/
@media only screen and (max-width: 599px) {
    .no-sp {
        display: none;
    }
}

/*ポジション*/
.position {
    position: relative;
}

/*********************************************
    汎用レイアウトクラス
*********************************************/
/*汎用レイアウト1*/
.layout-cmn01 .title {
    margin-bottom: 40px;
}

.layout-cmn01 .text {
    margin-bottom: 10px;
}

.layout-cmn01 .img {
    margin-bottom: 5px;
}

@media only screen and (max-width: 599px) {
    .layout-cmn01 .title {
        margin-bottom: 20px;
    }
}

/*汎用レイアウト2*/
.layout-cmn02 .title {
    margin-bottom: 20px;
}

.layout-cmn02 .text {
    margin-bottom: 10px;
}

.layout-cmn02 .img {
    margin-bottom: 5px;
}

@media only screen and (max-width: 599px) {
    .layout-cmn02 .title {
        margin-bottom: 20px;
    }
}

/*2カラムコンテンツ*/
.column2 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.column2 .side {
    width: 200px;
}

.column2 .main {
    width: calc(100% - 220px);
}

@media only screen and (max-width: 1024px) {
    .column2 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .column2 .side {
        -webkit-box-ordinal-group: 4;
        -webkit-order: 3;
        -ms-flex-order: 3;
        order: 3;
        width: 100%;
        margin-bottom: 5%;
    }

    .column2 .main {
        -webkit-box-ordinal-group: 3;
        -webkit-order: 2;
        -ms-flex-order: 2;
        order: 2;
        width: 100%;
        margin-bottom: 5%;
    }
}

/*左右の要素を入れ替え*/
.change {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

/*左右の要素を順に入れ替え*/
.alternate .flexb:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

/*インナー大*/
.inner98 {
    width: 98%;
    max-width: 1000px;
    margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
    .inner98 {
        width: 93%;
        max-width: 768px;
    }
}

@media only screen and (max-width: 599px) {
    .inner98 {
        width: 94%;
        max-width: 450px;
    }
}

.inner {
    width: 98%;
    max-width: 1200px;
    margin: 0 auto;
}

@media only screen and (max-width: 1024px) {
    .inner {
        width: 93%;
        max-width: 768px;
    }
}

@media only screen and (max-width: 599px) {
    .inner {
        width: 94%;
        max-width: 450px;
    }
}

/*********************************************
    汎用画像クラス　img
*********************************************/
.img {
    text-align: center;
}

/*背景画像*/
.bgimg {
    position: relative;
}

.img.-bgimg {
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.img.-bgimg img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    /*IE対策*/
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

/*フィルター*/
.img.-filter:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #e2dfdf;
    opacity: 0.4;
}

/*object-fit(cover)IE対応*/
.img.-cover img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    /*IE対策*/
    font-family: "object-fit: cover; object-position: 50% 50%;";
}

/*object-fit(contain)IE対応*/
.img.-contain img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
    object-fit: contain;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    /*IE対策*/
    font-family: "object-fit: contain; object-position: 50% 50%;";
}

/*比率30％*/
.img.-ratio30 {
    position: relative;
}

.img.-ratio30:before {
    content: "";
    display: block;
    padding-top: 30%;
}

.img.-ratio30 img {
    display: block;
    position: absolute;
    top: 0;
}

/*比率40％*/
.img.-ratio40 {
    position: relative;
}

.img.-ratio40:before {
    content: "";
    display: block;
    padding-top: 40%;
}

.img.-ratio40 img {
    display: block;
    position: absolute;
    top: 0;
}

/*比率50％*/
.img.-ratio50 {
    position: relative;
}

.img.-ratio50:before {
    content: "";
    display: block;
    padding-top: 50%;
}

.img.-ratio50 img {
    display: block;
    position: absolute;
    top: 0;
}

/*比率50％*/
.img.-ratio60 {
    position: relative;
}

.img.-ratio60:before {
    content: "";
    display: block;
    padding-top: 60%;
}

.img.-ratio60 img {
    display: block;
    position: absolute;
    top: 0;
}


/*モバイル時に小さめに表示*/
.img.-smallsp {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (max-width: 599px) {
    .img.-smallsp {
        width: 80%;
    }
}

/*モバイル時により小さめに表示*/
.img.-smallersp {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (max-width: 599px) {
    .img.-smallersp {
        width: 50%;
    }
}

/*正円画像*/
.img.-circle {
    overflow: hidden;
    border-radius: 50%;
}

/*角丸画像*/
.img.-round {
    overflow: hidden;
    border-radius: 20px;
}

/*********************************************
    共通ボックス　box -cmn
*********************************************/
/*共通ボックス１（医院情報）
（トップ・アクセス）*/
.box.-cmn01 .text,
.box.-cmn01 .button,
.box.-cmn01 .list {
    margin-bottom: 10px;
}

.box.-cmn01 .list {
    width: 100%;
}

/*********************************************
    共通ブロック　block -cmn
*********************************************/
/*共通ブロック１（バナー）
（トップ・）*/
.block.-cmn01 a {
    position: relative;
    z-index: 1;
    display: block;
}

.block.-cmn01 .img:before {
    content: "";
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgba(0, 0, 0, 0.2);
}

.block.-cmn01 .img:after {
    content: "";
    z-index: 2;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    width: calc(100% - 5px);
    height: calc(100% - 5px);
    border: 1px solid rgba(255, 255, 255, 0.9);
}

.block.-cmn01 .text {
    position: absolute;
    z-index: 3;
    color: #fff;
    font-size: 36px;
    font-weight: 400;
    width: 100%;
    text-align: center;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

/*共通ブロック２（枠ありテキスト）*/
.block.-cmn02 {
    border: 1px solid #7d7d7c;
    padding: 20px;
}

/*********************************************
    共通タイトル　title -cmn
*********************************************/
/*共通タイトル1*/
.title.-cmn01 {
    font-size: 24px;
    color: #444;
}

/*共通タイトル２*/
.title.-cmn02 {
    font-size: 40px;
    text-align: center;
    color: #444;
}

.title.-cmn02.-underline:after {
    content: "";
    display: block;
    height: 2px;
    width: 150px;
    padding-top: 10px;
    border-bottom: 2px solid #99876a;
    margin: 0 auto;
}

@media only screen and (max-width: 599px) {
    .title.-cmn02 {
        font-size: 24px;
    }
}

/*共通タイトル３*/
.title.-cmn03 {
    font-size: 36px;
    color: #444;
    text-shadow: 0 2px 0 #fff, 2px 0 0 #fff, -2px 0 0 #fff, 0 -2px 0 #fff;
}

.title.-cmn03 .title-in {
    display: inline-block;
    position: relative;
}

.title.-cmn03 .title-in:after {
    content: "";
    display: block;
    position: relative;
    height: 1px;
    width: 100%;
    background: #444;
}

@media only screen and (max-width: 599px) {
    .title.-cmn03 {
        font-size: 28px;
    }
}

/*共通タイトル４*/
.title.-cmn04 {
    font-size: 30px;
    color: #444;
    text-align: center;
}

@media only screen and (max-width: 599px) {
    .title.-cmn04 {
        font-size: 24px;
    }
}

/*共通タイトル5*/
.title.-cmn05 {
    font-size: 30px;
    text-align: center;
}

.title.-cmn05.-underline:after {
    content: "";
    display: block;
    height: 2px;
    width: 150px;
    padding-top: 10px;
    border-bottom: 2px solid #7d7d7c;
    margin: 0 auto;
}

@media only screen and (max-width: 599px) {
    .title.-cmn05 {
        font-size: 24px;
    }
}

/*********************************************
    共通テキスト　text -cmn
*********************************************/
/*共通テキスト１*/
.text.-main.-cmn01 {
    line-height: 200%;
}

/*共通小見出し１*/
.text.-head.-cmn01 {
    font-size: 24px;
    color: #444;
}

/*共通小見出し２*/
.text.-head.-cmn02 {
    font-size: 20px;
    position: relative;
    padding-left: 10px;
}

.text.-head.-cmn02:before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 4px;
    height: 20px;
    background: #ffd0c0;
    top: 7px;
    left: 0;
}

/*共通小見出し３*/
.text.-head.-cmn03 {
    font-size: 16px;
    color: #444;
}

/*共通小見出し４*/
.text.-head.-cmn04 {
    /*
    font-size: 16px;
    color: #99876a;
*/
    font-size: 18px;
    color: #444;
    border-bottom: 2px solid #fcd5c8;
    padding-bottom: 2px;
}

@media only screen and (max-width: 599px) {
    .text.-head.-cmn01 {
        font-size: 20px;
    }

    .text.-head.-cmn02 {
        font-size: 18px;
    }
}

/*********************************************
    共通リスト　list -cmn
*********************************************/
/*リスト1*/
.list.-cmn01 .listitem {
    position: relative;
    padding-left: 20px;
    margin-bottom: 10px;
}

.list.-cmn01 .listitem:before {
    content: url(/import/tenant_5/133.167.89.249/html4/images/03clinic/icon1.png);
    position: absolute;
    left: 0;
}

.list.-cmn01.-type01 .listitem {
    font-size: 18px;
    color: #99876a;
}

.list.-cmn01.-type02 .listitem {
    font-size: 20px;
}

@media only screen and (max-width: 599px) {
    .list.-cmn01.-type02 .listitem {
        font-size: 16px;
    }
}

/*リスト２（表１）*/
.list.-cmn02 {
    overflow: auto;
}

.list.-cmn02 table {
    border: 2px solid #ffd0c0;
    border-collapse: collapse;
}

.list.-cmn02 tr:not(:last-of-type) td {
    border-bottom: 1px solid #99876a;
}

.list.-cmn02 th,
.list.-cmn02 td {
    vertical-align: top;
}

.list.-cmn02 th {
    padding: 2px;
    font-size: 16px;
    background: #ffd0c0;
    color: #444;
}

.list.-cmn02 th:not(:last-of-type) {
    border-right: 2px solid #ffd0c0;
}

.list.-cmn02 td {
    padding: 10px;
}

.list.-cmn02 td:not(:last-of-type) {
    border-right: 2px solid #ffd0c0;
}

.list.-cmn02.-type01 .table {
    counter-reset: figure;
}

.list.-cmn02.-type01 td:first-of-type {
    width: 30%;
}

.list.-cmn02.-type01 td {
    min-width: 150px;
}

.list.-cmn02.-type01 .caption {
    position: relative;
    text-align: right;
    padding-left: 20px;
}

.list.-cmn02.-type01 .caption:before {
    counter-increment: figure;
    content: "C"counter(figure);
    position: absolute;
    left: 0;
}

.list.-cmn02.-type02 table {
    min-width: 100%;
}

.list.-cmn02.-type02 td {
    min-width: 120px;
}

.list.-cmn02.-type02 td:first-of-type {
    width: 30%;
}

.list.-cmn02.-type02 .caption {
    text-align: center;
}

.list.-cmn02.-type03 table {
    min-width: 100%;
}

.list.-cmn02.-type03 td {
    min-width: 120px;
    width: 50%;
    padding: 20px 10px;
    line-height: 2em;
}

.list.-cmn02.-type04 table {
    min-width: 100%;
}

.list.-cmn02.-type04 td {
    padding: 20px 10px;
    line-height: 2em;
}

.list.-cmn02.-type04 td:first-of-type {
    vertical-align: middle;
    text-align: center;
}

.list.-cmn02.-type04 td:not(:first-of-type) {
    width: 40%;
    min-width: 100px;
}

/*リスト２（５列タイプ/料金表）*/
.list.-cmn02.-type05 table {
    min-width: 100%;
}

.list.-cmn02.-type05 td {
    min-width: 120px;
}

.list.-cmn02.-type05 td:first-of-type {
    width: 20%;
}

.list.-cmn02.-type05 td:nth-of-type(2) {
    width: 15%;
}

.list.-cmn02.-type05 td:nth-of-type(3) {
    min-width: 170px;
}

/*リスト３（円画像のリスト）*/
.list.-cmn03 .listitem {
    position: relative;
}

.list.-cmn03 a {
    display: block;
    position: relative;
}

.list.-cmn03 .text {
    position: absolute;
    bottom: 30px;
    width: 100%;
    text-align: center;
    background: rgba(255, 255, 255, 0.8);
    padding: 10px;
}

@media only screen and (max-width: 599px) {
    .list.-cmn03 .listitem {
        width: 80%;
        min-width: 300px;
        margin-left: auto;
        margin-right: auto;
    }
}

/*リスト４（よくある質問）*/
.list.-cmn04 .listitem {
    margin-bottom: 40px;
}

.list.-cmn04 .datatitle {
    background: #ffeac0;
    position: relative;
    padding-left: 30px;
    padding: 14px 50px 10px 70px;
    min-height: 50px;
    font-size: 18px;
    margin-bottom: 15px;
    cursor: pointer;
}

.list.-cmn04 .datatitle:before {
    content: "Q";
    display: inline-block;
    position: absolute;
    left: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: #fab59e;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 30px;
    color: #fff;
    font-family: "Crimson Text", serif;
}

.list.-cmn04 .datatitle:after {
    font-family: "Font Awesome 5 Free";
    font-weight: bold;
    content: "\f0d7";
    color: #fab59e;
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.list.-cmn04 .datatitle.is-parent:after {
    content: "\f0d8";
}

.list.-cmn04 .data {
    display: none;
    position: relative;
    padding-left: 70px;
    padding-right: 50px;
}

.list.-cmn04 .data:before {
    content: "A";
    display: inline-block;
    position: absolute;
    left: 10px;
    background: #7d7d7c;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 30px;
    color: #fff;
    font-family: "Crimson Text", serif;
}

@media only screen and (max-width: 599px) {
    .list.-cmn04 .datatitle {
        font-size: 16px;
        padding: 14px 30px 10px 50px;
    }

    .list.-cmn04 .datatitle:before {
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 24px;
    }

    .list.-cmn04 .datatitle:after {
        right: 10px;
    }

    .list.-cmn04 .data {
        padding-left: 50px;
        padding-right: 30px;
    }

    .list.-cmn04 .data:before {
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 24px;
    }
}

/*リスト５（表２）*/
.list.-cmn05 {
    overflow: auto;
}

.list.-cmn05 table {
    border: 1px solid #685535;
    border-collapse: collapse;
}

.list.-cmn05 tr:nth-of-type(2) td {
    border-top: 1px solid #99876a;
}

.list.-cmn05 tr:not(:last-of-type) td {
    border-bottom: 1px solid #99876a;
}

.list.-cmn05 th,
.list.-cmn05 td {
    vertical-align: top;
    padding: 10px;
}

.list.-cmn05 th {
    font-size: 16px;
    background: #f9f4f0;
}

.list.-cmn05 th:not(:last-of-type) {
    border-right: 1px solid #685535;
}

.list.-cmn05 td:not(:first-of-type) {
    text-align: center;
    vertical-align: middle;
}

.list.-cmn05 td:not(:last-of-type) {
    border-right: 1px solid #685535;
}

.list.-cmn05.-type01 {
    overflow: auto;
}

.list.-cmn05.-type01 td:first-of-type {
    width: 20%;
}

.list.-cmn05.-type01 td {
    min-width: 150px;
}

/*リスト6（表3）*/
.list.-cmn06 table {
    border: 2px solid #ffd0c0;
    border-collapse: collapse;
    width: 100%;
}

.list.-cmn06 tr:not(:last-of-type) th {
    border-bottom: 2px solid #ffd0c0;
}

.list.-cmn06 tr:not(:last-of-type) td {
    border-bottom: 2px solid #ffd0c0;
}

.list.-cmn06 th,
.list.-cmn06 td {
    padding: 10px;
}

.list.-cmn06 th {
    font-size: 16px;
    background: #ffd0c0;
    color: #444;
    min-width: 100px;
}

.list.-cmn06.-type01 th {
    width: 30%;
}

.list.-cmn06.-type02 th,
.list.-cmn06.-type02 td {
    width: 50%;
    padding: 20px 10px;
}

/*リスト７（フロー１）*/
.list.-cmn07 a {
    display: block;
    border: 1px solid #99876a;
    text-align: center;
    padding: 10px 40px;
    color: #99876a;
    position: relative;
}

.list.-cmn07 a:after {
    content: url(/import/tenant_5/133.167.89.249/html4/images/01top/icon01.png);
    position: absolute;
    right: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

/*リスト８*/
.list.-cmn08 .datatitle {
    font-size: 16px;
    color: #444;
    position: relative;
    padding-left: 10px;
    padding-bottom: 5px;
    margin-bottom: 10px;
}

.list.-cmn08 .datatitle:before {
    content: "";
    position: absolute;
    display: inline-block;
    width: 3px;
    height: 20px;
    background: #ffd0c0;
    top: 2px;
    left: 0;
}

/*リスト９(フロー２)*/
.list.-cmn09 .listitem {
    position: relative;
}

.list.-cmn09 .listitem:not(:last-of-type):after {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f0da";
    position: absolute;
    color: #febba4;
    font-size: 36px;
    right: 0;
    top: 50%;
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
}

.list.-cmn09.-type01 .listitem {
    width: 33.333%;
    padding: 0 2%;
}

@media only screen and (max-width: 599px) {
    .list.-cmn09.-type01 .listitem {
        width: 80%;
        min-width: 200px;
        margin: 0 auto;
        padding: 15px 0;
    }

    .list.-cmn09.-type01 .listitem:not(:last-of-type):after {
        right: 50%;
        top: inherit;
        bottom: 0;
        -webkit-transform: translate(50%, 0);
        -ms-transform: translate(50%, 0);
        transform: translate(50%, 0);
        content: "\f0dd";
    }
}

.list.-cmn09.-type02 .datatitle {
    text-align: center;
    color: #444;
    background: #ffeac0;
    font-size: 20px;
    padding: 5px;
    margin-bottom: 40px;
}

.list.-cmn09.-type02 .data {
    margin-bottom: 20px;
}

.list.-cmn09.-type02 .listitem {
    width: 50%;
    padding: 0 8%;
}

@media only screen and (max-width: 599px) {
    .list.-cmn09.-type02 .listitem {
        width: 80%;
        min-width: 200px;
        margin: 0 auto;
        padding: 15px 0;
    }

    .list.-cmn09.-type02 .listitem:not(:last-of-type):after {
        right: 50%;
        top: inherit;
        bottom: 0;
        -webkit-transform: translate(50%, 0);
        -ms-transform: translate(50%, 0);
        transform: translate(50%, 0);
        content: "\f0dd";
    }
}

/*リスト１０（２列データ）
（医院について・アクセス・リクルート）*/
.list.-cmn10 .listitem {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    position: relative;
    padding: 10px 0;
    margin-bottom: 5px;
}

.list.-cmn10 .listitem:not(:last-of-type) {
    border-bottom: 1px solid #666;
}

.list.-cmn10 .datatitle {
    width: 15%;
    min-width: 150px;
    padding-right: 2em;
    font-weight: bold;
}

.list.-cmn10 .listitem01 {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.list.-cmn10 .datatitle01 {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
    width: 80px;
    margin-right: 10px;
}

.list.-cmn10 .datatitle01:after {
    content: "";
    position: absolute;
    right: 0;
    display: block;
    margin-left: 10px;
    height: 100%;
    width: 1px;
    top: 0;
    background: #11725e;
}

.list.-cmn10.-type01 .listitem:last-of-type {
    border-bottom: 1px solid #99876a;
}

@media only screen and (max-width: 599px) {
    .list.-cmn10 .listitem {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .list.-cmn10 .datatitle {
        width: 100%;
        margin-bottom: 5px;
    }
}

/*リスト１１（タイムテーブル）
（ヘッダー・トップ・アクセス）*/
.list.-cmn11 table {
    border-collapse: collapse;
    border: 2px solid #ffd0c0;
    width: 100%;
    margin-bottom: 5px;
}

.list.-cmn11 tr:not(:last-of-type) th,
.list.-cmn11 tr:not(:last-of-type) td {
    border-bottom: 2px solid #ffd0c0;
}

.list.-cmn11 th,
.list.-cmn11 td {
    padding: 9px;
    text-align: center;
    font-size: 16px;
}

.list.-cmn11 th:not(:first-of-type),
.list.-cmn11 td:not(:first-of-type) {
    border-left: 2px solid #ffd0c0;
}

.list.-cmn11 th {
    color: #444;
    background: #ffd0c0;
}

.list.-cmn11 td {
    color: #444;
}

.list.-cmn11 .triangle {
    color: #11725e;
}

.list.-cmn11 .text .triangle {
    margin-right: 5px;
}

/*ページネーション*/
.list.-pagenation {
    text-align: center;
}

.list.-pagenation .listitem {
    display: inline-block;
    margin: 0 5px;
}

.list.-pagenation .number a {
    border: 1px solid #faadab;
}

.list.-pagenation .present,
.list.-pagenation .number a:hover {
    opacity: 1;
    background: #faadab;
    color: #fff;
}

.list.-pagenation a,
.list.-pagenation .present {
    display: inline-block;
    text-align: center;
    width: 50px;
    height: 50px;
    line-height: 50px;
    font-size: 20px;
}

.list.-pagenation .prev a,
.list.-pagenation .next a {
    border: none;
}

.list.-pagenation .prev a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f053";
}

.list.-pagenation .next a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f054";
}

@media only screen and (max-width: 599px) {
    .list.-pagenation .listitem {
        margin: 0;
    }

    .list.-pagenation a,
    .list.-pagenation .present {
        width: 30px;
        height: 30px;
        line-height: 30px;
        font-size: 18px;
    }
}

/*パンくずリスト*/
.list.-breadcrumb .listitem {
    display: inline-block;
}

.list.-breadcrumb .listitem:not(:last-of-type):after {
    content: "＞";
    display: inline-block;
    margin: 0 5px;
}

@media only screen and (max-width: 599px) {
    .list.-breadcrumb {
        display: none;
    }
}

/*********************************************
    共通ボタン　button -cmn
*********************************************/
/*ボタン１*/
.button.-cmn01 a {
    font-weight: bold;
    color: #99876a;
}

.button.-cmn01 a:before {
    content: url(/import/tenant_5/133.167.89.249/html4/images/01top/icon01.png);
    margin-right: 5px;
}

/*ボタン２*/
.button.-cmn02 a {
    position: relative;
    display: inline-block;
    width: 150px;
    color: #a3a3a3;
    text-align: center;
    padding: 5px 10px;
    border: 1px solid #a3a3a3;
    font-weight: bold;
}

.button.-cmn02 a:after {
    content: url(/import/tenant_5/133.167.89.249/html4/images/01top/icon01.png);
    right: 5px;
    position: absolute;
    right: 0;
}

.button.-cmn02.-back a:after {
    content: url(/import/tenant_5/133.167.89.249/html4/images/13news/icon.png);
    left: 5px;
    right: inherit;
    display: none;
}

/*ボタン３（お問い合わせボタン）*/
.button.-cmn03 a {
    display: block;
    width: 100%;
    padding: 2px 10px;
    text-align: center;
    color: #fff;
    background: #11725e;
}

.button.-cmn03 a:before {
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    content: "\f0e0";
    display: inline-block;
    position: relative;
    top: 1px;
    margin-right: 5px;
    font-size: 18px;
}

.button.-cmn03.-type02 {
    max-width: 300px;
    min-width: 250px;
    margin: 0 auto;
}

.button.-cmn03.-type02 a {
    padding: 10px;
}

.button.-cmn03.-type02 a:before {
    content: none;
}

/*********************************************
    モジュール（共通機能群）
*********************************************/
/*フォーム*/
.form dl:not(:last-of-type) dt {
    border-bottom: 1px solid #fff;
}

.form dt {
    padding: 20px 5px;
    width: 25%;
    font-weight: 600;
    color: #444;
    background: #ffd0c0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.form dt .reqw {
    display: inline-block;
    color: red;
    font-weight: 600;
    margin-left: 5px;
}

.form dd {
    width: 75%;
    padding-left: 20px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

.form dd input {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
    border: none;
    background: #f2f2f2;
    min-height: 40px;
}

.form dd select {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
}

.form dd input[type="radio"] {
    display: none;
}

.form dd input[type="radio"] + label {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
    line-height: 200%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.form dd input[type="radio"] + label::before {
    content: "";
    display: block;
    position: absolute;
    top: 4px;
    left: 0;
    width: 10px;
    height: 10px;
    border: 1px solid #303841;
    border-radius: 50%;
    background: #fff;
}

.form dd input[type="radio"]:checked + label::after {
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 2px;
    width: 8px;
    height: 8px;
    background: #303841;
    border-radius: 50%;
}

.form dd input[type="radio"]:checked + label {
    border-bottom: 1px solid;
    -webkit-transition: 0.6s;
    transition: 0.6s;
}

.form dd input[type="number"] {
    width: 70px;
    margin-right: 10px;
}

.form dd textarea {
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 5px;
    font-size: 14px;
    font-family: "游ゴシック",
        YuGothic,
        Hiragino Sans,
        "ヒラギノ角ゴ ProN W3",
        "Hiragino Kaku Gothic Pro",
        Hiragino Kaku Gothic ProN,
        "メイリオ",
        Meiryo,
        'ＭＳ Ｐゴシック',
        sans-serif;
    height: 200px;
    border: none;
    background: #f2f2f2;
}

.form .post input,
.form .phone input {
    width: 200px;
}

.form .age input {
    width: 100px;
    margin-right: 10px;
}

.form .text.-head {
    margin-top: 20px;
}

.formbtn li button {
    text-align: center;
    color: #444;
    display: block;
    background: #ffd0c0;
    padding: .5em 2em;
    position: relative;
    z-index: 1;
    opacity: 1;
    overflow: hidden;
    border: none;
    margin: 80px auto;
    -webkit-transition: 0.3s all ease;
    transition: 0.3s all ease;
}

.formbtn li button:after {
    position: absolute;
    font-family: FontAwesome;
    content: "\f105";
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 20px;
}

.formbtn2 li:nth-of-type(odd) button:after {
    right: auto;
    left: 20px;
    content: "\f104";
}

.formbtn li button:hover {
    opacity: 0.6;
    cursor: pointer;
}

.formbtn li {
    width: 100%;
    max-width: 320px;
    margin: auto;
}

.formbtn2 li {
    max-width: 250px;
}

@media only screen and (max-width: 1024px) {
    .form dt {
        width: 100%;
        padding-bottom: 1em;
        margin-bottom: 10px;
    }

    .form dd {
        width: 100%;
        padding-left: 0;
    }

    .form dl {
        padding: 15px 0;
    }

    .formbtn li button {
        margin: 60px auto;
        padding: 15px 40px;
    }

    .formbtn2 li {
        max-width: 200px;
    }
}

@media only screen and (max-width: 599px) {
    .formbtn li button {
        margin: 40px auto;
        padding: 10px 40px;
        max-width: 250px;
    }

    .formbtn2 li {
        max-width: 130px;
    }
}

/**************************************
    共通要素
**************************************/
/**
ヘッダー
header
*/
.home .header {
    /*    position: absolute;*/
    z-index: 300;
    top: 0;
    width: 100%;
    height: auto;
    background: rgba(255, 255, 255, 0.9);
}

.header {
    position: relative;
    z-index: 300;
    background: #fff;
}

.header-contents {
    padding-top: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.header-left .text {
    margin-bottom: 10px;
}

.header-info .text {
    line-height: 150%;
    margin-bottom: 5px;
}

.header-info .telephone {
    margin-bottom: 5px;
}

.header-right .header-info {
    margin-right: 50px;
}

.fixed-contents {
    position: fixed;
    z-index: 50;
    bottom: 10px;
    left: 10px;
}

.fixed-tel {
    display: none;
}

.fixed-web a {
    position: relative;
    display: block;
    width: 80px;
    height: 80px;
    text-align: center;
    color: #fff;
    background: #faadab;
}

.fixed-web a:before {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    width: calc(100% - 10px);
    height: calc(100% - 10px);
    content: "";
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border: 1px solid #fff;
}

.fixed-web .item-in02 {
    display: block;
}

.fixed-web .item-in03 {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.fixed-web .item-in03:after {
    position: relative;
    display: block;
    margin-top: -5px;
    content: url(/import/tenant_5/133.167.89.249/html4/images/01top/arrow01.png);
}

@media only screen and (max-width: 1024px) {
    .header-contents {
        border-bottom: none;
    }

    .header-right {
        margin: 0;
    }

    .header-right .list {
        display: none;
    }
}

@media only screen and (max-width: 599px) {
    .header-left {
        margin: 0 auto;
    }

    .header-left .logo {
        text-align: center;
    }

    .header-left .logo img {
        height: 40px;
    }

    .header-info {
        display: none;
    }

    .fixed-contents {
        bottom: 0;
        left: 0;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        width: 100%;
    }

    .fixed-tel {
        position: relative;
        display: block;
        width: 50%;
        height: 50px;
        text-align: center;
        color: #fff;
        background: #fddb98;
    }

    .fixed-tel:after {
        position: absolute;
        top: 50%;
        left: 50%;
        display: block;
        width: calc(100% - 10px);
        height: calc(100% - 10px);
        content: "";
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        border: 1px solid #fff;
    }

    .fixed-tel .item-in02 {
        position: absolute;
        top: 50%;
        display: block;
        width: 100%;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 1;
    }

    .fixed-tel .tel {
        font-size: 16px;
    }

    .fixed-tel a {
        color: #fff;
    }
    .fixed-tel a:hover{
       color: #fff;
    }

    .fixed-web {
        width: 50%;
    }

    .fixed-web a {
        width: 100%;
        height: 50px;
    }

    .fixed-web .item-in02 {
        display: inline-block;
    }

    .fixed-web .item-in03:after {
        display: inline-block;
        margin-top: 0;
        margin-left: 5px;
    }
}

/**
グローバルナビ
nav-global
*/
.nav-global {
    position: relative;
    padding: 10px 0;
}

.nav-global .navitem a {
    font-weight: 600;
    position: relative;
    display: block;
    padding: 0 20px;
}

.nav-global .navitem > a:hover {
    /*    opacity: 1;*/
    /*
    color: #11725e;
    text-shadow: 0 0 1px #11725e;
*/
}

.nav-global .navitem dt{
  position: relative;
  padding: 0 20px;
}

.nav-global .navitem dt:after {
    position: absolute;
    top: 0;
    right: 0;
    content: "|";
}

.nav-global .navitem:not(:last-of-type) > a:after {
    position: absolute;
    top: 0;
    right: 0;
    content: "|";
}

.nav-global .nav-in {
    padding: 30px 0 0;
    background: #fff;
}

.nav-global .nav-second {
    position: absolute;
    left: 0;
    visibility: hidden;
    padding-top: 50px;
    -webkit-transition: .4s ease;
    transition: .4s ease;
    opacity: 0;
}

.nav-global .nav-second:before {
    position: absolute;
    top: 0;
    left: calc(50% + 50px);
    display: block;
    width: 1px;
    height: 60px;
    content: "";
    background: #11725e;
}

.nav-global .navitem.-parent:hover .nav-second {
    visibility: visible;
    opacity: 1;
}

.nav-global .navitem01 {
    width: 25%;
    margin-bottom: 10px;
    padding: 0 20px;
    text-align: center;
}

.nav-global .navitem01 a {
    color: #11725e;
}

.nav-global .navitem01 a:hover {
    text-shadow: 0 0 1px #11725e;
}

.nav-global .navitem01 .img {
    display: block;
    margin-bottom: 5px;
}

.nav-global .navitem01 a img {
    -webkit-transition: .5s;
    transition: .5s;
}

.nav-global .navitem01 a:hover img {
    -webkit-transform: scale(1.1) translateX(-50%) !important;
    -ms-transform: scale(1.1) translateX(-50%) !important;
    transform: scale(1.1) translateX(-50%) !important;
}

@media only screen and (max-width: 1024px) {
    .nav-global .navitem a {
        padding: 5px 0;
        color: #444;
    }

    .nav-global .navitem:not(:last-of-type) > a:after {
        content: none;
    }
    .nav-global .navitem dt:after{
      content: none;
    }

    .nav-global .nav-second {
        position: relative;
        visibility: visible;
        padding-top: 0;
        opacity: 1;
    }

    .nav-global .nav-second:before {
        content: none;
    }

    .nav-global .nav-in {
        padding-top: 0;
        background: none;
    }

    .nav-global .navitem01 {
        margin-bottom: 0;
        text-align: left;
    }

    .nav-global .navitem01 .img {
        display: none;
    }

    .nav-global .nav-third {
        width: 100%;
        margin-top: 10px;
    }
}

@media only screen and (max-width: 1024px) {
    .nav-logo {
        padding: 42px 0;
        background: #fff;
    }

    .nav-logo a {
        display: block;
    }

    .nav-logo img {
        height: 40px;
    }
}

#gnav.fixed {
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    cursor: pointer;
    background: #fff;
}
[data-element-id] #gnav.fixed{
  position: relative !important;
}


/**
フッター
footer
*/
.home .footer {
    margin-top: 0;
}

.footer {
    margin-top: 100px;
    background: #ffd0c0;
}

.footer .map {
    max-height: 300px;
}

.footer-contents {
    padding: 30px 0;
}

.nav-footer {
    width: 50%;
    padding: 0 5px;
}

.nav-footer .navtitle {
    font-size: 18px;
    margin-bottom: 10px;
    color: #fff;
}

.nav-footer .nav-list {
    -webkit-column-count: 2;
    column-count: 2;
}

.nav-footer .navitem {
    margin-bottom: 5px;
    padding-right: 5px;
}

.nav-footer a {
    position: relative;
    display: inline-block;
    padding-left: 20px;
    color: #fff;
}

.nav-footer a:before {
    position: absolute;
    top: 0;
    left: 0;
    margin-right: 3px;
    content: "＞";
}

.copy {
    padding: 10px 0;
    font-size: 16px;
    text-align: center;
    color: #444;
}

@media only screen and (max-width: 599px) {
    .footer {
        margin-top: 40px;
    }

    .nav-footer {
        width: 100%;
        margin-bottom: 20px;
    }
}

/**
サイドメニュー
side
*/
.side {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.side .list {
    width: 100%;
    margin-bottom: 40px;
}

.side .datatitle {
    font-size: 18px;
    font-weight: 400;
    padding: 5px;
    text-align: center;
    color: #444;
    background: #ffd0c0;
}

.side .data {
    text-align: center;
    border-bottom: 1px solid #7d7d7c;
}

.side a {
    display: inline-block;
    padding: 10px;
}

@media only screen and (max-width: 1024px) {
    .side .list {
        width: 48%;
    }

    .list.-archive {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .list.-archive .datatitle {
        width: 100%;
    }

    .list.-archive .data {
        width: 48%;
    }
}

@media only screen and (max-width: 599px) {
    .side .list {
        width: 100%;
    }

    .list.-archive .data {
        width: 100%;
    }
}

/*********************************************
    各個別コンテンツ
*********************************************/
/**
トップページ
*/
.homevisual {
    position: relative;
}

.homevisual .img {
    min-height: 400px;
    max-height: 800px;
}

.homevisual .img img {
    min-height: 400px;
    max-height: 800px;
    opacity: 0.7;
}

.homevisualbox {
    width: 100%;
    height: 100%;
}

.homevisualbox .textblock {
    font-size: 20px;
    position: absolute;
    z-index: 3;
    /*    bottom: calc(50% - 115px);*/
    top: 50%;
    left: 50%;
    width: 90%;
    max-width: 1000px;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

[data-element-id] .homevisualbox .textblock{
  top: 32%;
}

.homevisualbox .textblock .text {
    color: #666;
    text-shadow: 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff, 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff;
    font-weight: bold;
}

.homevisualbox .textblock .-head {
    padding-bottom: 40px;
}

.homevisualbox .textblock .-setumei {
    max-width: 840px;
    margin: 0 0 0 auto;
}

.homevisualbox .newsblock {
    position: absolute;
    z-index: 3;
    bottom: 0;
    width: 100%;
    padding: 20px 0;
    background: rgba(255, 255, 255, 0.9);
}

.homevisualbox .newsblock .inner {
    position: relative;
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.homevisualbox .newsblock .title {
    margin-right: 50px;
}

.homevisualbox .newsblock .list {
    width: 75%;
}

.homevisualbox .newsblock .button {
    margin-left: auto;
}

.list.-homenews .listitem {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.list.-homenews .time {
    margin-right: 30px;
    color: #99876a;
}

.list.-homenews .text {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
}

@media only screen and (max-width: 1024px) {
    .homevisualbox .textblock {
        /*        bottom: calc(50% - 75px);*/
    }

    .homevisualbox .newsblock {
        padding: 10px 0;
    }

    .homevisualbox .newsblock .inner {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .homevisualbox .newsblock .title {
        width: 100%;
    }
}

@media only screen and (max-width: 599px) {
    .list.-homenews .listitem {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.home01box .text {
    margin-bottom: 40px;
    font-size: 20px;
    text-shadow: 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff, 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff;
}

.home01box .name {
    text-align: right;
}

.home01box .name-in {
    font-size: 18px;
    margin-left: 10px;
}

.home02 {
    background: url(/import/tenant_5/133.167.89.249/html4/images/01top/bg02.png) no-repeat center;
    background-size: cover;
}

.list.-home02 {
    counter-reset: listitem;
}

.list.-home02 .listitem {
    margin-bottom: 120px;
}

.list.-home02 .listitem:nth-of-type(odd) .block.-text {
    margin-top: 60px;
}

.list.-home02 .listitem:nth-of-type(odd) .block.-text:after {
    right: 0;
}

.list.-home02 .listitem:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.list.-home02 .listitem:nth-of-type(even) .block.-img {
    margin-top: 60px;
}

.list.-home02 .listitem:nth-of-type(even) .block.-text:after {
    left: 0;
}

.list.-home02 .block.-img {
    position: relative;
    z-index: 2;
    width: 50%;
}

.list.-home02 .block.-text {
    position: relative;
    z-index: 1;
    width: 50%;
    padding: 30px;
}

.list.-home02 .block.-text:after {
    position: absolute;
    z-index: -1;
    top: 0;
    display: block;
    width: 110%;
    height: 100%;
    content: "";
    background: #f5f2e6;
}

.list.-home02 .text.-number {
    font-family: "Crimson Text", serif;
    font-size: 36px;
    font-style: italic;
    position: absolute;
    top: -30px;
    color: #11725e;
}

.list.-home02 .text.-number:after {
    margin-left: 5px;
    content: "0"counter(listitem);
    counter-increment: listitem;
}

@media only screen and (max-width: 1024px) {
    .list.-home02 .listitem:nth-of-type(odd) .block.-text {
        margin-top: 30px;
    }

    .list.-home02 .listitem:nth-of-type(even) .block.-img {
        margin-top: 30px;
    }

    .list.-home02 .block.-img {
        width: 40%;
    }

    .list.-home02 .block.-text {
        width: 60%;
        padding: 30px 20px;
    }
}

@media only screen and (max-width: 599px) {
    .list.-home02 .listitem {
        margin-bottom: 60px;
    }

    .list.-home02 .listitem:nth-of-type(odd) .block.-text {
        margin-top: 20px;
    }

    .list.-home02 .listitem:nth-of-type(even) .block.-img {
        margin-top: 0;
    }

    .list.-home02 .listitem:nth-of-type(even) .block.-text {
        margin-top: 20px;
    }

    .list.-home02 .block.-img {
        z-index: 0;
        width: 100%;
    }

    .list.-home02 .block.-text {
        width: 100%;
        margin-right: auto;
        margin-left: auto;
    }

    .list.-home02 .block.-text:after {
        width: 100%;
    }
}

.home03 {
    margin-top: 60px;
    background: url(/import/tenant_5/133.167.89.249/html4/images/01top/bg03.png) no-repeat center;
    background-size: cover;
}

.list.-home03 .listitem {
    position: relative;
}

.list.-home03 a {
    display: block;
}

.list.-home03 .text {
    font-size: 18px;
    position: absolute;
    bottom: 10px;
    left: 0;
    width: 90%;
    padding: 5px 10px;
    background: rgba(255, 255, 255, 0.9);
}

@media only screen and (max-width: 1024px) {
    .list.-home03 .text {
        font-size: 16px;
    }
}

.list.-home04 .img a {
    display: block;
}

.list.-home04 .text.-time {
    color: #99876a;
}

.home06 {
    background: url(/import/tenant_5/133.167.89.249/html4/images/01top/bg4.png) no-repeat bottom;
    background-size: cover;
}

/**
下層ページ共通要素
*/
.topvisual {
    position: relative;
    margin-bottom: 100px;
}

.topvisualbox .title {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    text-align: center;
}

@media only screen and (max-width: 599px) {
    .topvisual {
        margin-bottom: 40px;
    }
}

/**
院長・スタッフ紹介
*/
.staff01box .block.-img {
    width: 48%;
    margin-bottom: 20px;
}

.staff01box .block.-text {
    width: 50%;
}

.staff01box .text.-name {
    margin-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #99876a;
}

.staff01box .name-in01 {
    font-size: 18px;
    margin-top: 5px;
    margin-bottom: 5px;
    letter-spacing: .1em;
    color: #99876a;
}

.staff01box .name-in02 {
    font-size: 30px;
    max-width: 80%;
    margin-left: auto;
}

.staff01box .list {
    margin-bottom: 20px;
}

.staff01box.-type01 .block.-img {
    width: 100%;
}

.staff01box.-type01 .block.-text {
    width: 100%;
}

@media only screen and (max-width: 1024px) {
    .staff01box .block.-img {
        width: 80%;
        max-width: 300px;
        margin: 0 auto 20px;
    }

    .staff01box .block.-text {
        width: 100%;
    }
}

@media only screen and (max-width: 599px) {
    .staff01box .name-in02 {
        font-size: 24px;
    }
}

.list.-staff01 .listitem {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    margin-bottom: 5px;
}

.list.-staff01 .listitem.-dot {
    position: relative;
    padding-left: 20px;
}

.list.-staff01 .listitem.-dot:before {
    font-size: 10px;
    position: absolute;
    left: 0;
    content: url(/import/tenant_5/133.167.89.249/html4/images/02staff/icon.png);
}

.list.-staff01 .listtitle {
    margin-bottom: 10px;
    padding: 2px 0;
    text-align: center;
    background: #f5f2e6;
}

.list.-staff01 .datatitle {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-right: 2em;
    color: #99876a;
}

.list.-staff01 .data {
    text-align: right;
}

.list.-staff01 .text {
    line-height: 2em;
}

/**
医院について
*/
.list.-clinic03 {
    counter-reset: listitem;
}

.list.-clinic03 .listitem {
    margin-bottom: 20px;
}

.list.-clinic03 .datatitle {
    font-size: 16px;
    font-weight: bold;
    position: relative;
    padding-left: 20px;
    color: #99876a;
}

.list.-clinic03 .datatitle:before {
    position: absolute;
    left: 0;
    content: counter(listitem) ".";
    counter-increment: listitem;
}

.list.-clinic04 .img {
    margin-bottom: 10px;
}

.list.-clinic04 .text.-head {
    font-size: 18px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    color: #99876a;
    border-bottom: 1px solid #99876a;
}

@media only screen and (max-width: 599px) {
    .list.-clinic04 .heightLine-head {
        height: auto !important;
    }
}

/**
インプラント
*/
.list.-implant02 {
    counter-reset: listitem;
}

.list.-implant02 .listitem {
    margin-bottom: 10px;
    padding: 20px;
    background: #fff4f1;
}

.list.-implant02 .datatitle {
    font-size: 18px;
    position: relative;
    padding-left: 50px;
    color: #444;
}

.list.-implant02 .datatitle:before {
    font-family: "Crimson Text", serif;
    font-size: 28px;
    font-style: italic;
    position: absolute;
    top: -1px;
    left: 0;
    content: "0"counter(listitem);
    counter-increment: listitem;
    color: #444;
}

.list.-implant02 .data {
    margin-top: 10px;
    padding-left: 50px;
}

@media only screen and (max-width: 599px) {
    .list.-implant02 .listitem {
        padding: 10px;
    }

    .list.-implant02 .datatitle {
        font-size: 16px;
        padding-left: 35px;
    }

    .list.-implant02 .datatitle:before {
        font-size: 24px;
    }

    .list.-implant02 .data {
        padding-left: 35px;
    }
}

.list.-implant07 {
    counter-reset: listitem;
}

.list.-implant07 .listitem {
    position: relative;
    margin-bottom: 30px;
    padding-left: 60px;
}

.list.-implant07 .listitem:before {
    font-family: "Crimson Text", serif;
    font-size: 24px;
    font-style: italic;
    line-height: 65px;
    position: absolute;
    left: 0;
    display: block;
    width: 50px;
    height: 50px;
    content: "0"counter(listitem);
    counter-increment: listitem;
    text-align: center;
    color: #fff;
    background: #7d7d7c;
}

.list.-implant07 .listitem:after {
    font-weight: 400;
    position: absolute;
    top: 2px;
    left: 0;
    width: 50px;
    content: "FLOW";
    text-align: center;
    color: #fff;
}

.list.-implant07 .datatitle {
    font-size: 18px;
    margin-bottom: 5px;
    color: #444;
}

/**
審美的・美容歯科
*/
.shinbi02boxb .list {
    width: 80%;
    min-width: 300px;
    margin: 0 auto;
}

/**
矯正歯科
*/
.orthodontic03boxb .list {
    width: 80%;
    min-width: 300px;
    margin: 0 auto;
}

.orthodontic06box .list,
.orthodontic06box .text.-comment {
    width: 60%;
    min-width: 300px;
    margin: 0 auto;
}

.orthodontic07box .block {
    width: 50%;
    min-width: 300px;
    margin: 0 auto;
}

/**
義歯
*/
.gishi02box .list {
    width: 80%;
    min-width: 300px;
    margin: 0 auto;
}

.list.-gishi03 .img,
.list.-gishi03 .text {
    margin-bottom: 10px;
}

.list.-gishi03 .text.-head {
    font-weight: 600;
}

.list.-gishi03 .heightLine-head {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

.list.-gishi03 .text-in {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    margin-left: auto;
}

@media only screen and (max-width: 599px) {
    .list.-gishi03 .heightLine-head {
        height: auto !important;
    }
}

.gishi04boxd .list {
    width: 60%;
    min-width: 300px;
    margin: 0 auto;
}

/**
ニュース・ブログ
*/
.list.-article01 .img,
.list.-article01 .text {
    margin-bottom: 10px;
}

.list.-article01 .img a {
    display: block;
}

.list.-article01 .time {
    padding-right: 2em;
    color: #7d7d7c;
}

.list.-article01 .text.-meta {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

@media only screen and (max-width: 599px) {
    .list.-article01 .text.-meta {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .list.-article01 .time {
        width: 100%;
    }

    .list.-article01 .category {
        width: 100%;
    }
}

.detail01box .time {
    color: #99876a;
}

.detail01box .text {
    margin-bottom: 10px;
}

.detail01box .text.-main {
    padding: 20px 0;
    border-top: 1px solid #a3a3a3;
    border-bottom: 1px solid #a3a3a3;
}

.detail01box .button {
    margin-top: 20px;
}

/**
アクセス
*/
.access02box {
    padding: 20px 60px;
    border: 2px solid #ffd0c0;
}

@media only screen and (max-width: 599px) {
    .access02box {
        padding: 10px 20px;
    }
}

/**
リクルート
*/
.recruit01box .text {
    font-size: 16px;
    line-height: 2em;
    text-align: center;
}

.recruit02box {
    position: relative;
}

.recruit02box .block.-img {
    position: relative;
    width: 50%;
    margin-right: -30%;
}

.recruit02box .block.-img:after {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    background: rgba(255, 255, 255, 0.5);
}

.recruit02box .block.-text {
    position: relative;
    z-index: 2;
    width: 80%;
    margin-top: 30px;
    padding: 20px;
    background: rgba(255, 255, 255, 0.7);
}

.recruit02box .list {
    margin: 20px 0 30px;
    border-bottom: 1px solid #999;
}

.recruit02box .datatitle {
    font-size: 18px;
    font-weight: 600;
    margin-bottom: 10px;
    padding-bottom: 10px;
    color: #11725e;
    border-bottom: 1px solid #11725e;
}

@media only screen and (max-width: 1024px) {
    .recruit02box .block.-img {
        width: 60%;
        margin-right: -50%;
    }

    .recruit02box .block.-text {
        width: 90%;
    }
}

@media only screen and (max-width: 599px) {
    .recruit02box .block.-img {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
    }

    .recruit02box .block.-text {
        width: 100%;
        margin: 0;
    }

    .recruit02box .heightLine-head {
        height: auto !important;
    }
}

.list.-recruit03 .listitem {
    margin-bottom: 40px;
    padding: 30px;
    background: #e1d8ce;
}

.list.-recruit03 .text.-head {
    font-size: 24px;
    margin-bottom: 10px;
    padding-bottom: 10px;
    color: #11725e;
    border-bottom: 1px solid #fff;
}

.list.-recruit03 .text.-head:first-letter {
    font-size: 30px;
    margin-right: 2px;
    padding: 0 5px;
    background: #fff;
}

.list.-recruit04 .listitem {
    position: relative;
    width: 25%;
    margin-bottom: 40px;
    padding: 0 3%;
}

.list.-recruit04 .listitem:not(:last-of-type):after {
    position: absolute;
    top: 75px;
    right: 0;
    display: block;
    width: 50px;
    height: 1px;
    content: "";
    -webkit-transform: translate(50%, -50%);
    -ms-transform: translate(50%, -50%);
    transform: translate(50%, -50%);
    background: #11725e;
}

.list.-recruit04 .listitem:not(:last-of-type):nth-of-type(3):after {
    position: absolute;
    top: 75px;
    right: 0;
    content: url(/import/tenant_5/133.167.89.249/html4/images/18recruit/arrow.png);
    -webkit-transform: translate(50%, 0);
    -ms-transform: translate(50%, 0);
    transform: translate(50%, 0);
}

.list.-recruit04 .listitem:not(:last-of-type).noline:after {
    content: none;
}

.list.-recruit04 .time {
    font-size: 30px;
    line-height: 150px;
    width: 150px;
    height: 150px;
    margin: 0 auto 10px;
    text-align: center;
    color: #fff;
    border-radius: 50%;
    background: #11725e;
}

.list.-recruit04 .text.-head {
    font-size: 16px;
    color: #11725e;
}

.list.-recruit04 .img {
    width: 150px;
    padding: 5px;
    border: 1px solid #c9cdcc;
    background: #fff;
    -webkit-box-shadow: 5px 5px 0 0 #c9cdcc;
    box-shadow: 5px 5px 0 0 #c9cdcc;
}

.list.-recruit04 .img01 {
    position: relative;
    left: 80px;
    margin-bottom: -50px;
    -webkit-transform: rotate(15deg);
    -ms-transform: rotate(15deg);
    transform: rotate(15deg);
}

.list.-recruit04 .img02 {
    position: relative;
    z-index: 2;
    top: 30px;
    -webkit-transform: rotate(-10deg);
    -ms-transform: rotate(-10deg);
    transform: rotate(-10deg);
}

@media only screen and (max-width: 1024px) {
    .list.-recruit04 {
        padding: 0 5%;
    }

    .list.-recruit04 .listitem {
        width: 33.333%;
    }

    .list.-recruit04 .listitem:nth-of-type(3n):after {
        position: absolute;
        top: 75px;
        right: 0;
        content: url(/import/tenant_5/133.167.89.249/html4/images/18recruit/arrow.png);
        -webkit-transform: translate(50%, 0);
        -ms-transform: translate(50%, 0);
        transform: translate(50%, 0);
    }

    .list.-recruit04 .listitem.noline {
        position: relative;
        top: 40px;
        left: -50px;
    }
}

@media only screen and (max-width: 599px) {
    .list.-recruit04 {
        padding: 0;
    }

    .list.-recruit04 .listitem {
        width: 70%;
        margin: 0 auto;
        padding: 30px 0;
    }

    .list.-recruit04 .listitem:after {
        content: none !important;
    }

    .list.-recruit04 .listitem.noline {
        top: inherit;
        left: calc(50% - 40px);
        -webkit-box-ordinal-group: 100;
        -webkit-order: 99;
        -ms-flex-order: 99;
        order: 99;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .list.-recruit04 .listitem:not(:last-of-type):before {
        position: absolute;
        bottom: 5px;
        left: 50%;
        display: block;
        width: 1px;
        height: 50px;
        content: "";
        -webkit-transform: translate(-50%, 50%);
        -ms-transform: translate(-50%, 50%);
        transform: translate(-50%, 50%);
        background: #11725e;
    }

    .list.-recruit04 .listitem.noline:before {
        content: none;
    }

    .list.-recruit04 .heightLine-text {
        height: auto !important;
    }
}

.recruit05box .listitem.-first {
    margin-bottom: 80px;
}

.recruit05box .box {
    margin-bottom: 40px;
}

.list.-recruit05a .text.-head {
    font-size: 18px;
    padding-bottom: 10px;
    color: #11725e;
    border-bottom: 1px solid #99876a;
}

.list.-recruit05a .text.-name {
    font-size: 16px;
    padding-bottom: 10px;
    border-bottom: 1px solid #99876a;
}

.list.-recruit05a .name-in {
    font-size: 16px;
    display: inline-block;
    margin-left: 10px;
    color: #11725e;
}

.list.-recruit05a .text {
    margin-bottom: 10px;
}

.list.-recruit05b .listitem {
    position: relative;
    margin-bottom: 30px;
    padding-right: 20px;
    padding-left: 60px;
    cursor: pointer;
    border: 1px solid #99876a;
    background: #fff;
}

.list.-recruit05b .datatitle {
    font-size: 18px;
    font-weight: bold;
    min-height: 50px;
    padding-top: 12px;
    padding-right: 30px;
    padding-bottom: 10px;
    color: #99876a;
}

.list.-recruit05b .datatitle:before {
    font-family: "Crimson Text", serif;
    font-size: 24px;
    font-weight: 400;
    line-height: 50px;
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 50px;
    height: 50px;
    content: "Q";
    text-align: center;
    color: #fff;
    background: #99876a;
}

.list.-recruit05b .datatitle:after {
    position: absolute;
    top: 5px;
    right: 10px;
    content: url(/import/tenant_5/133.167.89.249/html4/images/18recruit/icon.png);
    -webkit-transition: .5s;
    transition: .5s;
}

.list.-recruit05b .datatitle.is-parent:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.list.-recruit05b .data {
    display: none;
    padding-top: 20px;
    padding-bottom: 20px;
}

@media only screen and (max-width: 599px) {
    .list.-recruit05b .datatitle {
        font-size: 16px;
        min-height: 110px;
        padding-right: 0;
    }

    .list.-recruit05b .datatitle:after {
        top: inherit;
        right: inherit;
        bottom: 5px;
        left: 7px;
    }

    .list.-recruit05b .data {
        padding-top: 0;
    }
}

.recruit06 {
    margin: 80px 0;
}

.list.-recruit07a .listitem {
    font-size: 20px;
    cursor: pointer;
    text-align: center;
}

.list.-recruit07a .list-in {
    display: block;
    padding: 10px 0;
    color: #fff;
    background: #11725e;
}

.list.-recruit07a .listitem.on .list-in {
    background: #44b49d;
}

.recruit08box .block {
    margin: 0 auto;
}

.block.-recruit08 {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    max-width: 350px;
    padding: 20px;
    border: 3px solid #ffd0c0;
}

.block.-recruit08 .text {
    margin-bottom: 0;
    color: #7d7d7c;
}

.block.-recruit08 .tel {
    font-size: 30px;
    font-weight: bold;
    position: relative;
    padding-left: 80px;
    color: #7d7d7c;
}

.block.-recruit08 .tel:before {
    position: absolute;
    top: calc(50% + 5px);
    left: 0;
    content: url(/import/tenant_5/133.167.89.249/html4/images/18recruit/icon0_2.png);
    -webkit-transform: translateY(-50%) scale(0.8);
    -ms-transform: translateY(-50%) scale(0.8);
    transform: translateY(-50%) scale(0.8);
    -webkit-transform-origin: center center;
    -ms-transform-origin: center center;
    transform-origin: center center;
}

@media only screen and (max-width: 599px) {
    .block.-recruit08 {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .block.-recruit08 .text {
        width: 100%;
        margin-bottom: 10px;
        text-align: center;
    }

    .block.-recruit08 .tel {
        padding-left: 70px;
    }

    .block.-recruit08 .tel:before {
        -webkit-transform: translateY(-50%) scale(0.6);
        -ms-transform: translateY(-50%) scale(0.6);
        transform: translateY(-50%) scale(0.6);
    }
}

/**
診療の流れ
*/
.list.-flow01 {
    counter-reset: listitem;
}

.list.-flow01 .listitem {
    padding: 20px 0;
    border-bottom: 2px solid #ffd0c0;
}

.list.-flow01 .text.-head {
    font-size: 18px;
    position: relative;
    padding-left: 70px;
    color: #444;
}

.list.-flow01 .text.-head:before {
    font-family: "Crimson Text", serif;
    font-size: 20px;
    font-style: italic;
    position: absolute;
    left: 0;
    content: "step.0"counter(listitem);
    counter-increment: listitem;
}

.point_flow1 .list.-flow01 .text.-head:before {
    content: "point.0"counter(listitem);
}

.reason_01 .list.-flow01 .text.-head:before {
    content: "reason"counter(listitem);
}



/****************************20200311追加CSS********************************/
.header .inner {
    max-width: 1000px;
}

.header-left .logo {
    max-width: 290px;
    padding-top: 50px;
}

.header h1 {
    padding-bottom: 20px;
}

.header-info .address {
    padding-bottom: 10px;
}

.header-info .telephone {
    padding-bottom: 5px;
}

.header-info .web_reserve a {
    padding: 5px 20px;
    border-radius: 10px;
    display: block;
}

.header-info .web_reserve {
    padding-bottom: 5px;
}

.header-info .mail a {
    padding: 5px 20px;
    border-radius: 10px;
    display: block;
}

.homeabout_list {
    margin-top: 30px;
}

.homeabout_item {
    width: 23%;
    margin: 0 1% 3% 1%;
    position: relative;
}

.homeabout_item .title {
    font-size: 22px;
    line-height: 110%;
    padding-bottom: 15px;
}

.homeabout_item .text {
    background: #fff;
    padding: 20px;
    display: block;
    box-sizing: content-box;
}

.homeabout_item .num {
    position: absolute;
    width: 90px;
    height: 95px;
    top: 0;
    left: 0;
    z-index: 1;
    background: url(/import/tenant_5/133.167.89.249/html4/images/01index/img38.png) center center no-repeat;
    background-size: 100% 100%;
    color: #fff;
    font-size: 40px;
    color: #fff;
    line-height: 1;
    padding: 20px 0 0 30px;
    text-align: left;
}

.homegreet .-head.-cmn01 {
    font-size: 30px;
    text-shadow: 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff, 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff;
    font-weight: bold;
}

.homegreet .home01box .text {
    line-height: 160%;
}

.homebnr_area {
    position: relative;
    max-width: 880px;
    margin: 0 auto;
    border: 2px solid #cbcbcb;
}

.homebnr_area a {
    display: block;
}

.homebnr_area .txt {
    position: absolute;
    top: 0px;
    margin-top: 5px;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
    background: rgba(255, 208, 192, 0.4);
    width: 70%;
    padding: 15px 25px;
}

.homebnr_area .txt .tit {
    font-size: 30px;
    font-weight: bold;
    color: #fa85bf;
    text-shadow: 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff, 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff;
}

.homebnr_area .txt .txtbox {
    font-size: 12px;
    text-shadow: 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff, 0 2px 1px #fff, 2px 0 1px #fff, -2px 0 1px #fff, 0 -2px 1px #fff, 0 2px 2px #fff, 2px 0 2px #fff, -2px 0 2px #fff, 0 -2px 2px #fff;
}

.okomari_list {
    margin-top: 30px;
}

.okomari_item {
    overflow: hidden;
    margin-bottom: 20px;
}

.okomari_item a {
    display: block;
}

.okomari_item .flexb {
    background: #ffd0c0;
}

.okomari_item .txt {
    position: relative;
    padding: 36px 30px 25px;
    width: 75%;
    font-size: 22px;
    /*    line-height: 320%;*/
}

.okomari_item .txt .min {
    font-size: 20px;
}

.okomari_item .txt:before {
    content: "";
    position: absolute;
    display: block;
    border: 1px solid #fff;
    width: 200%;
    top: 15px;
    left: 15px;
    height: calc(100% - 30px);
}

.homemovie .tit {
    font-size: 30px;
    text-align: center;
    margin-bottom: 10px;
}

.homemovie .txt {
    background: #fff4f1;
    padding: 20px;
    font-size: 15px;
}

.homemovie .inner {
    max-width: 1400px;
}

.homesyourei .homesyourei_list {
    margin-top: 40px;
}

.homesyourei .title.-cmn02 {
    padding-bottom: 20px;
}

.homesyourei_item .day {
    font-size: 20px;
    padding-bottom: 40px;
}

.homesyourei_item .tit {
    font-size: 22px;

}

.homesyourei_item a {
    display: block;
    border: solid 2px #444;
    padding: 40px;
}

.homesyourei_item .w55 {
    padding-bottom: 30px;
    position: relative;
}

.homesyourei_item .moreview_btn {
    position: absolute;
    bottom: 0;
    right: 0;
    font-size: 16px;
    text-decoration: underline;
}

.homesyourei .moremaru_btn {
    margin: 60px auto 30px;
    width: 80%;
    max-width: 400px;
}

.homesyourei .moremaru_btn a {
    display: block;
    padding: 15px 30px;
    background: #7d7d7c;
    border-radius: 25px;
    text-align: center;
    color: #fff;
    font-size: 20px;
}

.gaku04 .moremaru_btn a {
    background: #fb9c8b;
}

.gaku04 .moremaru_btn {
    margin-top: 10px;
}

.homemenu_item {}

.homemenu_item a {
    display: block;
}

.homemenu_item .w50 {
    position: relative;
    background: #ffdcdb;
}

.homemenu_item .tit {
    position: absolute;
    font-size: 20px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 140px;
    text-align: center;
}

.homemenu_item .min {
    font-size: 16px;
}

.homecontact .inner {
    border: 5px solid #ffd0c0;
    border-radius: 6px;
    padding: 50px 50px 50px;
}

.homecontact .sns_list {
    display: inline-block;
    padding-top: 10px;
}

.homecontact .sns_item {
    display: inline-block;
    margin-right: 5px;
}

.homecontact .sns_item a {
    display: block;
}

.homecontact .layout-cmn01 .title {
    margin-bottom: 20px;
}

.homecontact .tel a {
    font-size: 40px;
}

.homecontact .address {
    padding-bottom: 5px;
}

.homecontactbtn_list {
    margin: 30px auto 0;
    max-width: 1040px;
}

.homecontactbtn_item {}

.homecontactbtn_item a {
    padding: 15px 20px;
    border-radius: 15px;
    text-align: center;
    font-size: 18px;
    display: block;
}

.homecontactbtn_item.web_reserve a {
    background: #ffeac0;
}

.homecontactbtn_item.mail a {
    background: #ffd0c0;
}

.footer .navitem {
    padding-bottom: 7px;
}

.footer .navitem a {
    display: block;
    font-size: 16px;
}

.navtitle {
    font-size: 16px;
    padding-bottom: 10px;
}

.dotted_list .navitem a {
    position: relative;
    padding-left: 16px;
}

.dotted_list .navitem a:before {
    content: "・";
    font-size: 16px;
    position: absolute;
    top: 0;
    left: 0;
}

.footer_bnr_item a {
    display: block;
}

.footer_bnr_item {
    padding-bottom: 15px;
}

@media only screen and (max-width: 1024px) {
    .homeabout_item {
        width: 48%;
    }

    .title.-cmn02 {
        font-size: 30px;
    }

    .homeabout_list {
        width: 100%;
        max-width: 600px;
        margin-left: auto;
        margin-right: auto;

    }

    .homeabout_item .title {
        font-size: 18px;
    }

    .homevisualbox .textblock .-setumei {
        font-size: 20px;
    }

    .homegreet .home01box .text {
        font-size: 16px;
    }

    .homegreet .home01box .text.-head {
        font-size: 22px;
    }

    .homegreet {
        position: relative;
    }

    .homegreet .inner {
        padding: 30px 0;
    }

    .homegreet .w30 .img {
        position: absolute;
        bottom: 0;
        right: 6%;
        width: 33%;
        max-width: 250px
    }

    .homebnrarea .img.-ratio50:before {
        padding-top: 60%;
    }

    .homebnr_area .txt .txtbox {
        font-size: 16px;
    }

    .okomari_item .txt {
        padding: 17px 21px 6px 22px;
        font-size: 18px;
        width: 65%;
    }

    .okomari_item .w25 {
        width: 35%;
    }

    .okomari_item .txt:before {
        top: 8px;
        left: 8px;
        height: calc(100% - 16px);
    }

    .okomari_item .txt .min {
        font-size: 13px;
    }

    .homemovie .w50 {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
    }

    .homemovie .w48 {
        width: 60%;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 30px;
    }

    .homesyourei_item a {
        padding: 16px;
    }

    .homesyourei_item .day {
        font-size: 16px;
        padding-bottom: 10px;
    }

    .homesyourei_item .tit {
        font-size: 16px;
    }

    .homesyourei_item .moreview_btn {
        font-size: 14px;
    }

    .homesyourei .moremaru_btn {
        margin-top: 30px;
        max-width: 350px;
    }

    .homesyourei .moremaru_btn a {
        font-size: 16px;
        padding: 9px 36px;

    }

    .homemenu_item .tit {
        width: 100%;
        font-size: 15px;
    }

    .homemenu_item .min {
        font-size: 12px;
    }

    .homecontact .layout-cmn01 .title {
        width: 95%;
        max-width: 320px;
        margin-bottom: 10px;
    }

    .homecontact .sns_list {
        width: 100%;
        padding-bottom: 10px;
    }

    .homecontact .tel a {
        font-size: 32px;
    }

    .homecontact .inner {
        padding: 30px 10px;
    }

    .homecontactbtn_item a {
        font-size: 16px;
    }

    .homecontactbtn_list {
        margin-top: 15px;
    }

    .list.-cmn11 th,
    .list.-cmn11 td {
        font-size: 14px;
    }

    .footer-info > .w30 {
        width: 25%;
    }

    .footer-info > .w60 {
        width: 48%
    }

    .footer .navitem a {
        font-size: 13px;
    }

    .footer-contents {
        padding-bottom: 50px;
    }

}

@media only screen and (max-width: 599px) {
    .header h1 {
        font-size: 12px;
        padding-bottom: 5px;
    }

    .header-left .logo {
        padding-top: 0;
        padding-bottom: 10px;
    }

    .header h1 {
        padding-right: 40px;
    }

    .homeabout_item {
        width: 48%;
        max-width: 290px;
        margin-right: auto;
        margin-left: auto;
    }

    .homeabout_item .text {
        height: auto !important;
    }

    .homevisualbox .textblock .-head {
        padding-bottom: 30px;
    }

    .homevisualbox .textblock .-head > span {
        font-size: 20px;
    }

    .homevisualbox .textblock .-setumei {
        font-size: 15px;
    }

    .homevisual .img {
        min-height: 320px;
    }

    .homevisual .img img {
        min-height: 320px;
    }

    .title.-cmn02 {
        font-size: 24px;
    }

    .homeabout_list {
        margin-top: 10px;
    }

    .homeabout_item {
        margin-bottom: 15px;
    }

    .homegreet .home01box .text {
        font-size: 15px;
        margin-bottom: 0px;
    }

    .homegreet .home01box .text.-head {
        font-size: 20px;
        margin-bottom: 20px;
    }

    .homegreet .inner {
        padding-bottom: 0;
    }

    .homegreet .w30 .img {
        position: relative;
        width: 60%;
        right: -14%;
    }

    .homegreet .w30 {
        margin-bottom: 0;
    }

    .homebnr_area .txt .tit {
        font-size: 20px;
        padding-bottom: 20px;
    }

    .homebnrarea .bgpic_area .pic {
        width: 100%;
    }

    .homebnr_area .txt {
        width: 100%;
        /* margin-top: 40px; */
    }

    .homebnr_area .txt .txtbox {
        font-size: 12px;
    }

    .homebnrarea .img.-ratio50:before {
        padding-top: 40%;
    }

    .okomari_item .txt {
        margin: 0;
        font-size: 16px;
    }

    .okomari_item .w25 {
        margin: 0;

    }

    .okomari_item .w25 .pic {
        width: 100%;
    }

    .homemovie .w48 {
        width: 85%;
    }

    .homemovie .w48 .pic {
        width: 100%;
    }

    .homemovie .tit {
        font-size: 20px;
    }

    .homemovie .w50 {
        width: 98%;
    }

    .homesyourei .h2_under_txt {
        font-size: 14px;
        text-align: left;
    }

    .homesyourei_item .w40 {
        width: 40%;
    }

    .homesyourei_item .w40 .pic {
        width: 100%;
    }

    .homesyourei_item .w55 {
        width: 55%;
    }

    .homesyourei .homesyourei_list {
        margin-top: 10px;
    }

    .homemenu_item .w50 .pic {
        width: 100%;
    }

    .homemenu_item .tit {
        position: relative;
        padding: 5px 0;
    }

    .homemenu_item .w50 {
        margin: 0;
    }

    .homemenu_item a {
        background: #ffdcdb;
        height: 100%;
    }

    .home_slider_item .pic {
        width: 100%;
    }

    .home_slider_item {
        width: 25%;
    }

    .homecontact .layout-cmn01 .title {
        width: 80%;
        margin-right: auto;
        margin-left: auto;
    }

    .homecontact .sns_list {
        text-align: center;
    }

    .homecontact .txt {
        font-size: 14px;
    }

    .homecontact .address {
        text-align: center;
    }

    .homecontact .-telephone {
        text-align: center;
    }

    .homecontact .layout-cmn01 .text.fs16 {
        font-size: 14px;
    }

    .homecontactbtn_list {
        margin-top: 0;
    }

    .homecontactbtn_item a {
        font-size: 14px;
    }

    .homecontactbtn_item {
        width: 90%;
        margin-right: auto;
        margin-left: auto;
    }

    .footer-info > .w30 {
        width: 44%;
    }

    .footer_bnr_item {
        width: 48%;
        margin: 0;
    }

    .footer-contents {
        padding-bottom: 10px;
    }

    .copy {
        padding-bottom: 60px;
    }

    .homecontact .inner {
        padding: 20px 10px;
    }

}

/*********************02access*******************************/
.access01 .homecontactbtn_item a {
    padding: 9px 10px;
    border-radius: 15px;
    text-align: center;
    font-size: 13px;
    display: block;
}

.access01 .address {
    padding-bottom: 10px;
    padding-top: 6px;
}

.access01 .homecontactbtn_item {
    margin-bottom: 5px;
}

.access01 .homecontactbtn_list {
    margin-top: 0px;
    margin-bottom: 10px;
}

.loot_item .num {
    content: "";
    display: inline-block;
    position: absolute;
    left: 10px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    background: #fab59e;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    font-size: 30px;
    color: #fff;
    font-family: "Crimson Text", serif;
}

.loot_item dt:before {
    display: none;
}

.list.-cmn04 .loot_item .data {
    padding: 10px 30px;
}

.list.-cmn04 .loot_item .data:before {
    display: none;
}

.list.-cmn04 .loot_item .data {
    display: none;
}

[data-element-id] .list.-cmn04 .loot_item .data {
    display: block;
}

.loot_item .data .text.-head.-cmn02 {
    padding-bottom: 20px;
    font-size: 16px;
}

.loot_item .text.-head.-cmn02:before {
    top: 2px;
}

.loot_item .list.-cmn09.-type01 .listitem {
    position: relative;
    width: 25%;
}

.loot_item .list.-cmn09.-type01 .txt {
    margin-top: 10px;
}

.loot_item .list.-cmn09.-type01 .listitem .number {
    font-family: "Crimson Text", serif;
    font-size: 26px;
    line-height: 40px;
    position: absolute;
    left: 15px;
    top: -5px;
    display: block;
    width: 40px;
    height: 40px;
    text-align: center;
    color: #fff;
    background: #7d7d7c;
    z-index: 1;
}

.loot_item .list.-cmn09 .listitem:nth-of-type(4n+4):after {
    display: none;
}

.loot_item .list.-cmn09.-type01 .listitem .img {
    margin-bottom: 5px;
}

@media only screen and (max-width: 1024px) {
    .loot_item .list.-cmn09.-type01 .listitem {
        width: 33.33333%;
    }

    .loot_item .list.-cmn09.-type01 .listitem:nth-of-type(4n+4):after {
        display: block;
    }

    .loot_item .list.-cmn09.-type01 .listitem:nth-of-type(3n+3):after {
        display: none;
    }

    .loot_item .list.-cmn09.-type01 .listitem .number {
        left: 5px;
    }
     .access01 .-info {
        width: 100%;
        max-width: 550px;
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 20px;
    }

    .access01 .-calender {
         width: 100%;
         max-width: 500px;
         margin-right: auto;
        margin-left: auto;
    }

}

@media only screen and (max-width: 599px) {
    .list.-cmn04 .loot_item .data {
        padding: 10px;
    }

    .loot_item .list.-cmn09.-type01 .listitem {
        width: 45%;
        min-width: auto;
    }


    .loot_item .list.-cmn09.-type01 .listitem:after {
        display: none;
    }

    .loot_item .list.-cmn09.-type01 .listitem:nth-of-type(4n+4):after {
        display: none;
    }

    .loot_item .list.-cmn09.-type01 .listitem .number {
        left: -2px;
        top: 14px;
    }

    .loot_item .num {
        left: 6px;
    }

    .access01 .address {
        text-align: center;
    }

    .access01 .-telephone {
        text-align: center;
    }
}

.reserve_box .layout-cmn02 .comment {
    padding-bottom: 0;
    padding-top: 30px;
}

.reserve_box .orthodontic06box .list {
    padding: 30px;
    background: #fff4f1;
    position: relative;
}

.reserve_box .orthodontic06box .list > * {
    position: relative;
    z-index: 1;
}

.reserve_box .orthodontic06box .list:after {
    content: "";
    display: block;
    width: calc(100% - 30px);
    height: calc(100% - 30px);
    position: absolute;
    top: 13px;
    left: 13px;
    border: 2px solid #fff;
}

.reserve_box:first-of-type {
    padding-top: 60px;
}


.reserve_box {
    padding: 20px 0;
}

@media only screen and (max-width: 1024px) {
    .reserve_box .orthodontic06box .list {
        width: 80%;
    }
}

@media only screen and (max-width: 599px) {
    .reserve_box .block.-recruit08 {
        padding: 10px;
    }

    .reserve_box .block.-recruit08 a {
        font-size: 20px;
    }

    .reserve_box .block.-recruit08 .tel:before {
        -webkit-transform: translateY(-50%) scale(0.5);
        -ms-transform: translateY(-50%) scale(0.5);
        transform: translateY(-50%) scale(0.5);
        left: -36px;
    }

    .reserve_box .block.-recruit08 .tel {
        padding-left: 30px;
    }
}

.syoujou2 .column2 .main {
    margin-left: auto;
    margin-right: auto;
}

.syoujou2 .column2 .detail01box .pic {
    width: 90%;
    max-width: 450px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 20px;
}
.syourei_list.list.-cmn09 .listitem:not(:last-of-type):after{
  display: none;
}
@media only screen and (max-width: 599px) {
  .syourei_list.list.-cmn09 .listitem:not(:last-of-type):after{
  display: none;
}
}

a:hover, .uk-link:hover{
  text-decoration: none;
  color: #444;
}
.sp_mainimg{
  display: none;
}
.pc_mainimg{
   display: block;
   background: #ffeac0;
}
.pc_mainimg:before {
    position:relative;
    z-index: 2;
    background: url(/upload/tenant_5/d81b36e1d035b482b88df915c5e676ba.png);
}

@media only screen and (max-width: 599px) {
 .sp_mainimg{
  display: block;
}
.pc_mainimg{
   display: none;
}
}

.img.-cover video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: 50% 50%;
    object-position: 50% 50%;
    font-family: "object-fit: cover; object-position: 50% 50%;";
    display: block;
    position: absolute;
    top: 0;
    opacity: 0.9;
}
[data-element-id] .sp_mainimg{
   display: block;
   max-width: 600px;
}
.syoujouthum_img{
  width: 70%;
}
.syoujouthum_img img{
  width: 100%;
  height: auto;
}

@media only screen and (max-width: 1024px) {
.syoujouthum_img{
  width: 100%;
}
}
#gnav li dd.pull {
  position: relative;
}

#gnav li:hover .pulllist {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(-50%, 4px);
  -ms-transform: translate(-50%, 4px);
  transform: translate(-50%, 4px);
}

#gnav li .pulllist:before {
  bottom: 100%;
  left: 50%;
  content: '';
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  border: 6px solid transparent;
  border-bottom-color: rgba(255, 208, 192, 0.8);
  position: absolute;
}

[data-element-id] #gnav li .pulllist {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  position: relative;
}

#gnav li .pulllist {
  visibility: hidden;
  opacity: 0;
  border-radius: 4px;
  -webkit-transition: 0.6s all ease;
  transition: 0.6s all ease;
  position: absolute;
  -webkit-transform: translate(-50%, 10px);
  -ms-transform: translate(-50%, 10px);
  transform: translate(-50%, 10px);
  left: 50%;
  width: 240px;
  z-index: 10;
  padding: 10px;
  background: rgba(255, 208, 192, 0.8);
}

#gnav li .pulllist li {
  width: 100%;
}

#gnav li .pulllist li a {
  padding: 10px;
  font-size: 14px;
  text-align: left;
}
@media only screen and (max-width: 1024px) {
  #gnav li .pulllist {
    width: 100%;
    -webkit-transform: none !important;
    -ms-transform: none !important;
    transform: none !important;
    position: relative;
    left: 0;
    visibility: visible;
    opacity: 1;
    margin-bottom: 10px;
    background: rgba(255, 255, 255, 0.8);
  }
  #gnav li .pulllist:before {
    left: 30px;
    border-bottom-color: rgba(255, 255, 255, 0.8);
  }
  #gnav li .pulllist li a {
    padding: 10px;
  }
  #gnav li dt {
    text-align: left;
    padding: 10px 10px 10px 0px;
    opacity: 1 !important;
  }
}
.calender_link a{
  text-decoration: underline;
}
#calenderarea iframe{
  display: block;
  margin-left: auto;
  margin-right:auto;
}
#calendarTitle{
  display: none !important;
}
.undermv.img.-ratio30:before {
    content: "";
    display: block;
    padding-top: 20%;
}

@media only screen and (max-width: 599px) {
.undermv.img.-ratio30:before {
    content: "";
    display: block;
    padding-top: 30%;
}
}

/* 2025/01/24 */
.time-add{
  display: block;
  font-size: 12px;
  line-height: 1;
}

@media(max-width:1024px){
.box.-cmn01 .list.ver02 {
  overflow-x: auto;
}

.list.ver02.-cmn11 table {
  white-space: nowrap;
}
}

.maa {
  margin: auto;
}
}
