@charset "UTF-8";

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
    .sub_navigationCo_pc {
        display: none;
    }
}

/*トップページ用CSS =================================================*/
/*main_visual*/
#home .main_visual {
    width: 100%;
    height: 110vh;

    position:relative;
}

#home .main_visual .h2_set {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
    z-index: 10;
    color: #fff;
}

#home .main_visual .h2_set h2,
#home .main_visual .h2_set h3 {
    line-height: 1;
}

#home .main_visual .h2_set h2 {
    margin-bottom: 50px;
    letter-spacing: 0.1em;
}

#home .main_visual .h2_set h2 br {
    display: none;
}

#home .main_visual .h2_set h3 {
    letter-spacing: 0.3em;
}

#home .main_visual .copy {
    position: absolute;
    left: 10%;
    bottom: 13%;
    letter-spacing: 0.3em;
}

/*scroll*/
#home .main_visual .scroll {
    transform: rotateZ(90deg);
    position: absolute;
    top: 45%;
    right: 1%;

    z-index: 5;
    
    line-height: 1;

    color: #fff;
}

#home .main_visual .scroll::before {
    content: "";
    position: absolute;
    top: -17px;
    left: -40px;

    width: 50px;
    height: 50px;
    border-radius: 100%;
    border: 1px solid rgba(255, 255, 255, 0.5);

    z-index: 4;
}

#home .main_visual .scroll::after {
    content: "";
    position: absolute;
    width: 100px;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.5);
    top: 7px;
    right: -100px;

    animation: linemove ease-in-out infinite 2s;
}


@keyframes linemove {
    0% {
        width: 0px;
        right: 0;
    }

    100% {
        width: 100px;
        right: -100px;
    }
}





/* #link_otherCo */
#home #link_otherCo {
    padding: 20px 0 0;
}

#home .accessCo_info .tel a {
    color: rgba(0,87,67,1);
    transition: 0.2s;
}

#home .accessCo_info .tel a:hover {
    color: rgba(0,87,67,0.5);
}



/* newsCo */
#newsCo {
    background-color: #F8F8F2;
    padding: 60px 100px;
    margin-top: -100px;

    position: relative;
    z-index: 5;

    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.08);
}

#newsCo .left {
    width: 30%;
    position: relative;
}

#newsCo .left .bt_more {
    position: absolute;
    bottom: 15px;
}

#newsCo .left .bt_more a {
    text-decoration: underline;
    padding-right: 60px;
    position: relative;
}

#newsCo .left .bt_more a::before {
    content: "";
    width: 80px;
    height: 80px;

    position: absolute;
    right: 0;
    top: -33px;

    border-radius: 100%;
    background-color: rgba(0, 87, 87,0.1);
    background-image: url("image/icon_green_next_1.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 18px;

}

#newsCo .right {
    width: 70%;
}

#newsCo .right .news_entryCo_list {
    border-top: 1px solid #ccc;
}

#newsCo .right .news_entryCo_list li {
    padding: 25px 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    border-bottom: 1px solid #ccc;

    background-image: url("image/icon_green_next_1.png");
    background-position: right center;
    background-repeat: no-repeat;
    background-size: 20px;
}

#newsCo .right .news_entryCo_list li .left {
    width: 20%;
}

#newsCo .right .news_entryCo_list li .right {
    width: 75%;
}

#newsCo .right .news_entryCo_list li .right a {
    border-bottom: 1px solid rgba(0, 87, 87,0);
    transition: 0.3s;
}

#newsCo .right .news_entryCo_list li .right a:hover {
    border-bottom: 1px solid rgba(0, 87, 87,1);
}

/* medical_hoursCo */
.medical_hoursCo {
    margin: 80px 0 40px;
}

.medical_hoursCo .sectionCo_inner,
.accessCo .sectionCo_inner,
.instagram .sectionCo_inner {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

.medical_hoursCo .left,
.accessCo .left,
.instagram .left,
#footer_Co .instagram .sectionCo_inner .left {
    width: 200px;
}

.medical_hoursCo .right,
.accessCo .right,
.instagram .right,
#footer_Co .instagram .sectionCo_inner .right {
    width: 1000px;
}

.medical_hoursCo .right table {
    width: 100%;
    margin-bottom: 20px;
}

.medical_hoursCo .right table tr {
    border-top: 1px solid #ccc;
}

.medical_hoursCo .right table tr:last-child {
    border-bottom: 1px solid #ccc;
}

.medical_hoursCo .right table tr th {
    width: 12.5%;
    width : -webkit-calc(100% / 8) ;
	width : calc(100% / 8) ;

    padding: 10px 0;
    background-color: #F0F5F5;
    border-right: 1px solid #ccc;
    text-align: center;
}

.medical_hoursCo .right table tr td {
    padding: 20px 0;
    border-right: 1px solid #ccc;
    text-align: center;
}

.medical_hoursCo .right table tr th:last-child,
.medical_hoursCo .right table tr td:last-child {
    border-right: none;
}

.medical_hoursCo .right p {
    margin: 10px 0;
}

.medical_hoursCo .right p span {
    width: 60px;
    display: inline-block;
}

.medical_hoursCo .right p span {
    width: 60px;
    display: inline-block;
}

.medical_hoursCo .right p span.pc {
    width: inherit;
}

.medical_hoursCo .right p span.on {
    display: initial;
}

.medical_hoursCo .right p br.on {
    display: block!important;
}

.medical_hoursCo .addition {
    padding-left: 60px;
}

.medical_hoursCo p.info {
    border: 1px solid #005743;
    padding: 10px 15px;
    line-height: 1.4;
}

.accessCo .accessCo_info .left div.info p.info,
#footer_Co .sectionCo_inner .left div.info p.info {
    border: 1px solid #005743;
    padding: 10px;
    line-height: 1.4;
}

.medical_hoursCo p.info b,
.accessCo .accessCo_info .left div.info p.info b,
#footer_Co .sectionCo_inner .left div.info p.info b  {
    color: darkslategray;
}

.medical_hoursCo p.info br {
    display: block!important;
}
.accessCo .accessCo_info .left div.info p.info,
#footer_Co .sectionCo_inner .left div.info p.info {
    margin-top: 10px;
}


.medical_hoursCo .right p br {
    /*display: none;*/
}

.medical_hoursCo .right .table2,
.medical_hoursCo .GoogleCalendar {
    margin-top: 40px;
}

.medical_hoursCo .GoogleCalendar {
    position: relative;
    z-index: 10;
}

.medical_hoursCo .right .am,
.medical_hoursCo .right .pm {
    position: relative;
    padding-left: 50px;
}

.medical_hoursCo .right .am::before,
.medical_hoursCo .right .pm::before {
    position: absolute;
    left: 0;
}

.medical_hoursCo .right .am::before {
    content: "午前";
}

.medical_hoursCo .right .pm::before {
    content: "午後";
}

.medical_hoursCo .right .other {
    position: absolute;
    top: 185px;
    right: 0;
}

.GoogleCalendar iframe {
    width: 100%;
    height: 500px;
}

@media all and (min-width: 768px) {
    .GoogleCalendar iframe {
        height: 600px;
    }
}

.medical_hoursCo .GoogleCalendar::after {
    content: "";
    width: 200px;
    height: 200px;

    position: absolute;
    bottom: -45px;
    left: -50px;
    z-index: -10;

    background-color: #F0F6F5;
}

/* clinic_infoCo */
.clinic_infoCo .photo {
    content: "";
    width: 45%;
    height: 400px;

    position: absolute;

    background-image: url("image/index_photo_01.jpg?ver=0.1");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.clinic_infoCo .sectionCo_inner h3 {
    position: absolute;
    top: -50px;
    right: 0;
    letter-spacing: 0.5em;
    height: max-content;

}

.clinic_infoCo .sectionCo_inner p {
    width: 380px;
    position: absolute;
    top: 150px;
    right: 200px;

    letter-spacing: 0.1em;
}

.clinic_infoCo .sectionCo_inner p::before {
    content: "Clinic information";
    position: absolute;
    top: -50px;
    color: #005743;
    font-size: 12px;
}

.clinic_infoCo .with-4-columns {
    padding-top: 500px;
}

.clinic_infoCo .with-4-columns>li {
   text-align: center;

   margin-right: 10px;
   height: 500px;

   position: relative;

   background-position: center 180px;
   background-repeat: no-repeat;
   background-size: 40px;

   box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.3);

   transition: 0.5s;
}

.clinic_infoCo .with-4-columns>li:hover {
    transform: translateY(10px);
}

.clinic_infoCo .with-4-columns>li a {
    color: #fff;
    display: block;
    height: 100%;
    padding-top: 250px;
}


.clinic_infoCo .with-4-columns>li:nth-child(1) {
    background-image: url("image/index_icon_01.png");
}
.clinic_infoCo .with-4-columns>li:nth-child(2) {
    background-image: url("image/index_icon_02.png");
    margin-top: 50px;
}
.clinic_infoCo .with-4-columns>li:nth-child(3) {
    background-image: url("image/index_icon_03.png");
}

.clinic_infoCo .with-4-columns>li:nth-child(4) {
    background-image: url("image/index_icon_04.png");
    margin-top: 50px;    
}


/*各リンクを画像処理*/
.clinic_infoCo .with-4-columns>li a {
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.clinic_infoCo .with-4-columns>li:nth-child(1) a {
    background-image: url("image/index_photo_bt01.jpg?ver=0.1");   
}

.clinic_infoCo .with-4-columns>li:nth-child(2) a {
    background-image: url("image/index_photo_bt02.jpg?ver=0.1");   
}

.clinic_infoCo .with-4-columns>li:nth-child(3) a {
    background-image: url("image/index_photo_bt03.jpg?ver=0.1");   
}

.clinic_infoCo .with-4-columns>li:nth-child(4) a {
    background-image: url("image/index_photo_bt04.jpg?ver=0.1");
}

.clinic_infoCo .with-4-columns>li a::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    display: block;
    background-color: rgba(69, 75, 95, .5);
    top: 0;
    left: 0;
}

.clinic_infoCo .with-4-columns>li a h4,
.clinic_infoCo .with-4-columns>li a p {
    position: relative;
    z-index: 1;
}


/*.clinic_infoCo .with-4-columns>li h4 {
}*/

.clinic_infoCo .with-4-columns>li h4 span {
    display: block;
}

.clinic_infoCo .with-4-columns>li p{
    position: relative;
    top: inherit;
    right: inherit;
    width: auto;

    margin-top: 30px;
}

.clinic_infoCo .with-4-columns>li p::before {
    content: "";
}

.scroll_area {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    width: 100vw;
    min-width: 1200px;
    overflow: hidden;

    margin-top: 120px;
}

#page_guide .scroll_area {
    margin-top: 0px;
}

.scroll_area ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    list-style: none;
}

.scroll_area ul li {
    width: 480px;
}

/* スクロールアニメーション */
@keyframes infinity-scroll-left {
    from {
      transform: translateX(0%);
    }
      to {
      transform: translateX(-100%);
    }
}

.scroll-infinity__list--left {
    animation: infinity-scroll-left 30s infinite linear 0.5s both;
}

/* .staff_infoCo */
.staff_infoCo .sectionCo_inner h3 {
    position: absolute;
    top: -50px;
    right: 200px;

    letter-spacing: 0.5em;
    height: max-content;
}

.staff_infoCo .sectionCo_inner .photo,
.staff_infoCo .sectionCo_inner .text {
    width: 800px;
}

.staff_infoCo .sectionCo_inner .photo {
    margin-bottom: 30px;
}

.staff_infoCo .sectionCo_inner .photo2 {
    position: absolute;
    top: 450px;
    right: 0px;
}

.staff_infoCo .sectionCo_inner .bt_more,
#general .sectionCo_inner .bt_more,
#sport .sectionCo_inner .bt_more,
#staff .sectionCo_inner .bt_more,
#page_shoulder .bt_more,
#page_guide .bt_more,
.instagram .bt_more {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    margin: 60px 0;
}

.staff_infoCo .sectionCo_inner .bt_more li:first-child,
#general .sectionCo_inner .bt_more li:first-child,
#sport .sectionCo_inner .bt_more li:first-child,
#staff .sectionCo_inner .bt_more li:first-child,
#page_shoulder .bt_more li:first-child {
    margin-right: 60px;
}

.staff_infoCo .sectionCo_inner .bt_more a,
.page_set ul.disease_list .right .bt_more a,
#general .sectionCo_inner .bt_more a,
#sport .sectionCo_inner .bt_more a,
#staff .sectionCo_inner .bt_more a,
#page_shoulder .bt_more li a,
#page_guide .bt_more li a,
.instagram .bt_more li a {
    text-decoration: underline;
    padding-right: 70px;
    position: relative;   
}

.staff_infoCo .sectionCo_inner .bt_more a::before,
.page_set ul.disease_list .right .bt_more a::before,
#general .sectionCo_inner .bt_more a::before,
#sport .sectionCo_inner .bt_more a::before,
#staff .sectionCo_inner .bt_more a::before,
#page_shoulder .bt_more li a::before,
#page_guide .bt_more li a::before,
.instagram .bt_more li a::before {
    content: "";
    width: 80px;
    height: 80px;

    position: absolute;
    right: 0;
    top: -33px;

    border-radius: 100%;
    background-color: rgba(0, 87, 87,0.1);
    background-image: url("image/icon_green_next_1.png");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 18px;

    transition: 0.5s;
}

.staff_infoCo .sectionCo_inner .bt_more a:hover::before,
.page_set ul.disease_list .right .bt_more a:hover::before,
#general .sectionCo_inner .bt_more a:hover::before,
#sport .sectionCo_inner .bt_more a:hover::before,
#staff .sectionCo_inner .bt_more a:hover::before,
#page_shoulder .bt_more a:hover::before,
#page_guide .bt_more a:hover::before,
.instagram .bt_more a:hover::before {
    transform: translateX(10px);

    background-image: url("image/icon_green_next_3.png");
    background-color: rgba(0, 87, 87,.8);
}

.staff_infoCo .sectionCo_inner .section_w1000 {
    height: 300px;
    margin-top: 150px;
    background-image: url("image/index_photo_08.jpg?ver=0.1");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    position: relative;
}

.staff_infoCo .sectionCo_inner .section_w1000 a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: rgba(0,87,67,0);
    transition: 0.3s;
}

.staff_infoCo .sectionCo_inner .section_w1000 a:hover {
    background-color: rgba(0,87,67,0.5);
}

.staff_infoCo .sectionCo_inner .section_w1000::after {
    content: "";
    width: 200px;
    height: 200px;

    position: absolute;
    top: -45px;
    left: -50px;
    z-index: -10;

    background-color: #F0F6F5;
}

.staff_infoCo .sectionCo_inner .section_w1000 p{
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
    background-color: #005743;
    color: #fff;
    padding: 10px 20px;
}

.staff_infoCo .sectionCo_inner .section_w1000 p span {
    display: block;
}

/*.clinic_infoCo_index */
.clinic_infoCo_index .medical_hoursCo{
    margin-top: 0;
}

/* .accessCo */
.accessCo .accessCo_info {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 40px;
}

.accessCo .accessCo_info .left {
    width: 500px;
    margin-right: 100px;
}

.accessCo .accessCo_info .left .info .address,
.accessCo .accessCo_info .left .info .time {
    margin-bottom: 15px;
}

.accessCo .accessCo_info .right {
    width: 600px;
}

.accessCo .accessCo_info .right h4,
#page_about.page_set .with-2-columns .right h4 {
    padding: 5px 0 10px 30px;
    position: relative;
    margin-bottom: 3px;
}

.accessCo .accessCo_info .right h4::before,
#page_about.page_set .with-2-columns .right h4::before {
    content: "";
    position: absolute;
    top: 12.5%;
    left: 0;

    width: 24px;
    height: 24px;

    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.accessCo .accessCo_info .right h4.bus::before,
#page_about.page_set .with-2-columns .right h4.bus::before {
    background-image: url("image/index_icon_05.png");
}
.accessCo .accessCo_info .right h4.car,
#page_about.page_set .with-2-columns .right h4.car {
    margin-top: 40px;
}

.accessCo .accessCo_info .right h4.car::before,
#page_about.page_set .with-2-columns .right h4.car::before {
    background-image: url("image/index_icon_06.png");
}

.accessCo .googlemap {
    width: 380px;
    height: 380px;

    position: absolute;
    top: 0;
    right: 0;
}

/*クリニックについてCSS =================================================*/
/*メインビジュアル*/
#page_about .page_about_main_visual {
    height: 600px;
    background-image: url("image/page_about_photo_01.jpg?ver=0.11");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: 50px;
}

#page_about .page_about_main_visual .h3-set {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);

    text-align: center;
    color: #fff;
}

#page_about .page_about_main_visual .h3-set h3 {
    margin-bottom: 20px;
}

#page_about .page_about_main_visual .h3-set h3 br {
    display: none;
}

#page_about .page_about_main_visual .h3-set p {
    letter-spacing: 0.2em;
}

#page_about .section_first .with-1-columns {
    width: 100%;
    padding: 60px 100px;
    position: relative;
    border: 1px solid #ccc;
    margin-bottom: 50px;
}

#page_about .section_first .with-1-columns::before,
#page_message #message .with-2-columns.profile::before {
    position: absolute;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    top: -10px;
    left: 90px;
    background-color: #fff;
    padding: 0 10px;
}

#page_about .section_first .with-1-columns.first::before {
    content: "コンセプト";
}

#page_about .section_first .with-1-columns.second::before {
    content: "クリニック理念";
}

#page_about .section_first .with-1-columns.third::before {
    content: "ロゴマークについて";
}

#page_about .section_first .with-1-columns h3 {
    margin-bottom: 20px;
}

#page_about .section_first .with-1-columns.third {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 0px;
}

#page_about .section_first .with-1-columns.third p {
    margin-left: 50px;
    margin-top: 25px;
}

#page_about .section_second.photo {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
}

#page_about .section_second.photo img {
    width: 50%;
    height: auto;
}

/* クリニック情報 */
#page_about .medical_hoursCo .sectionCo_inner {
    display: block!important;
}

#page_about .medical_hoursCo .photo {
    position: relative;
    height: 604px;
}

#page_about .medical_hoursCo .photo img.second,
#page_about .medical_hoursCo .photo img.third {
    position: absolute;
}

#page_about .medical_hoursCo .photo img.second {
    right: 70px;
    top: 0;
}

#page_about .medical_hoursCo .photo img.third {
    right: 0;
    bottom: 0;
}

#page_about .with-2-columns .left,
#page_about .with-2-columns .right span {
    font-weight: 600;
}

.with-2-columns.mt50_mb30 {
    margin: 50px 0 30px;
    padding-bottom: 30px;
    border-bottom: 1px dotted #ccc;

}

#page_about .with-2-columns .right p br{
    display: block;
}

#page_about .with-2-columns .right p.car span {
    width: auto;
}

#page_about .with-2-columns .right .time,
#page_about .with-2-columns .right .close {
    position: relative;
    padding-left: 80px;
}

#page_about .with-2-columns .right .time::before,
#page_about .with-2-columns .right .close::before {
    position: absolute;
    top: 0;
    left: 0;
    font-weight: 600;
}

#page_about .with-2-columns .right .time::before {
    content: "受付時間";
}

#page_about .with-2-columns .right .close::before {
    content: "休診日";
}

#page_about .clinic_overview {
    flex-wrap:wrap;
}

#page_about .clinic_overview dt {
    width: 200px;
    font-weight: 600;
}

#page_about .clinic_overview dd {
    width: 1000px;
}

#page_about .clinic_overview dt,
#page_about .clinic_overview dd {
    border-bottom: 1px dotted #ccc;
    padding: 20px;
}

#page_about .clinic_overview dt:last-of-type,
#page_about .clinic_overview dd:last-of-type {
    border-bottom: none;
}

#page_about .clinic_overview dd b {
    color: #005743;
}

#page_about .clinic_overview dd a,
#hospitalization_cost .table_2_r1 a  {
    text-decoration: underline;
    color: #002daa;
}
#page_about .clinic_overview dd a:hover,
#hospitalization_cost .table_2_r1 a:hover {
    color: #002daa;
    opacity: 0.5;
}

#page_about .notice h4 {
    margin: 40px 0 10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #ddd;
    font-size: 130%;
    color: #005743;
}

#page_about .notice dt {
    font-size: 110%;
    padding: 4px 0;
    font-weight: bold;
}

#page_about .notice dt::before {
    content: "・";
    color: #005743;
}

#page_about .notice dd {
    margin-left: 20px;
    margin-bottom: 15px;
    background-color: #F4F4F4;
    padding: 15px;
}


/*院長からのメッセージ、スタッフ紹介CSS =================================================*/
/*メインビジュアル*/
#page_message .page_main_visual {
    background-image: url("image/page_message_photo_01.jpg?ver=0.1");  
}

/*院長からのメッセージ*/
#page_message #message .with-2-columns .right {
    width: 720px;
}

#message.section_first {
    padding-bottom: 400px;
} 

#page_message #message .with-2-columns .right h3 {
    margin-bottom: 40px;
}

#page_message #message .with-2-columns .right p {
    line-height: 2.5;
}

#page_message #message .with-2-columns .right p.name {
    margin-top: 40px;
}

#page_message #message .with-2-columns .left {
    margin-left: 80px;
}

#page_message #message .with-2-columns.profile {
    padding: 60px 100px;
    border: 1px solid #ccc;
    margin-top: 70px;
    position: relative;
}

#page_message #message .with-2-columns.profile::before {
    content: "プロフィール";  
}

#page_message #message .with-2-columns.profile li {
    margin-bottom: 15px;
}

#page_message #message .with-2-columns.profile li span{
   color: #666; 
}

#page_message #message .with-2-columns.profile .right, 
#page_message #message .with-2-columns.profile .left {
    width: 50%;
}

#page_message #message .with-2-columns.profile .right h4{
    padding: 0;
}

#page_message #message .with-2-columns.profile h4 {
    margin-bottom: 20px;
}

#page_message #message .with-2-columns.profile ul.first,
#page_message #message .with-2-columns.profile ul.second {
    margin-bottom: 60px;
}

/*.banner-kansetsu*/
#page_message .banner-kansetsu {
    display: flex;
    flex-wrap: wrap;
    margin-top: 50px;
    padding: 60px 100px;
    border: 1px solid #ccc;

    position: relative;
}

#page_message .banner-kansetsu::before {
    content: "その他";

    position: absolute;
    top: -12px;
    background-color: #fff;
    padding: 0 10px;
}

#page_message .banner-kansetsu .left {
    margin-right: 30px;
}

#page_message .banner-kansetsu a {
    display: inline-block;
}

#page_message .banner-kansetsu a:hover {
    opacity: 0.5;
}

#page_message .banner-kansetsu a img {
    border: 1px solid #ed6d00;
    display: block;
}


/*経歴用PDF*/
#page_message .pdf a {
    color: #fff;
    background-color: #005743;
    border: 1px solid #ccc;
    padding: 15px 60px 15px 20px;
    display: inline-block;
    margin-top: 50px;

    background-image: url("image/icon_green_next_1_on.png");
    background-position: 90% center;
    background-repeat: no-repeat;
    background-size: 24px;

    transition: 0.5s;
}

#page_message .pdf a:hover {
    color: #005743;
    background-color: #fff;

    background-image: url("image/icon_green_next_1_off.png");
    background-position: 92% center;
}


/*スタッフ紹介*/
#page_message #staff {
    position: relative;
}

#page_message #staff .h2_set_pc {
    position: absolute;
    width: 1200px;
    height: 460px;
    top: -250px;
}

#page_message #staff .h2_set_pc .h2_title {
    position: absolute;
    top: 130px;
}

#page_message #staff .h2_set_pc .photo {
    width: 900px;
    height: 460px;

    position: absolute;
    top: 0;
    right: 0;

    background-image: url("image/page_message_photo_03.jpg?ver=0.2");
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

#page_message #staff .sectionCo_inner.second {
    padding: 280px 0 150px;
}

#page_message #staff .sectionCo_inner.second .h2_title {
    display: none;
}

#page_message #staff li.with-3-columns{
    border-bottom: 1px solid #ccc;
    padding-bottom: 50px;
    margin-bottom: 50px;
}

#page_message #staff li.with-3-columns:last-child{
    border-bottom: 1px solid #ccc;
    padding-bottom: 35px;
    margin-bottom: 0px;
}

#page_message #staff .with-3-columns .first p.item-1 span,
#page_message #staff .with-2-columns .first p.item-1 span {
    font-size: 160%;
}

#page_message #staff .with-3-columns .first,
#page_message #staff .with-2-columns .first  {
    width: 410px;
}

#page_message #staff .with-3-columns .second {
    width: 480px;
}

#page_message #staff .with-3-columns .second p,
#page_message #staff .with-3-columns .third p,
#page_message #staff .with-2-columns .second p {
    position: relative;
    padding-left: 80px;
}

#page_message #staff .with-3-columns .second p.item-3::before,
#page_message #staff .with-3-columns .second p.item-4::before,
#page_message #staff .with-3-columns .third p.item-5::before,
#page_message #staff .with-2-columns .second p.item-4::before {
    position: absolute;
    top: 0;
    left: 0;
    font-size: 80%;
    font-weight: 600;
}

#page_message #staff .with-3-columns .second p.item-3::before {
    content: "専門分野";
}

#page_message #staff .with-3-columns .second p.item-4::before,
#page_message #staff .with-2-columns .second p.item-4::before {
    content: "資格";
}

#page_message #staff .with-3-columns .third p.item-5::before {
    content: "所属学会";
}

#page_message #staff .with-3-columns .first p.item-1,
#page_message #staff .with-2-columns .first p.item-1 {
    margin-bottom: 30px;
}

#page_message #staff .with-3-columns .second p.item-3,
#page_message #staff .with-2-columns .second p.item-3 {
    margin-bottom: 40px;
}


#page_message #staff .with-2-columns .first {
    margin-right: 45px;
}

/*項目制御*/
#page_message #staff .with-3-columns .first br,
#page_message #staff .with-3-columns .second br,
#page_message #staff .with-3-columns .third br,
#page_message #staff .with-2-columns .second br {
    display: block;
    content: "";
    margin-bottom: 10px;
}

/*背景画像*/
#page_message #staff .bgi_s {
    display: none;
}



/*院内案内CSS =================================================*/
/*メインビジュアル*/
#page_facility .page_main_visual {
    background-image: url("image/page_facility_photo_01.jpg?ver=0.1");  
}

#page_facility .floor-map {
 text-align: center;
}

#page_facility .floor-map img {
    width: 65%;
    height: auto;
   }
#page_facility .introduction .with-3-columns {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; 
}

#page_facility .introduction .with-3-columns>li {
    width : 30% ;
	width : -webkit-calc(90% / 3) ;
	width : calc(90% / 3) ;
    margin-right: 5%;
    margin-bottom: 60px;    
}

#page_facility .introduction .with-3-columns>li:nth-child(3n) {
    margin-right: 0;
}

#page_facility .introduction .with-3-columns>li:nth-last-child(-n+3) {
    margin-bottom: 0;
}

#page_facility .introduction .with-3-columns h4 {
    position: relative;
    padding-left: 30px;
    margin: 20px 0 10px;
}

#page_facility .introduction .with-3-columns h4::before {
    content: "";
    width: 20px;
    height: 1px;

    position: absolute;
    top: 49.5%;
    left: 0;
    background-color: #005743;
}

/*スポーツ整形、一般整形CSS =================================================*/
/*メインビジュアル*/
#page_general_sport .page_main_visual {
    background-image: url("image/page_general_photo_main.jpg?ver=0.1");  
}

#page_general_sport #sport .sport_list li:first-child {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px dotted #666;
}

#page_general_sport #sport .sport_list li h3 {
    padding-bottom: 0;
    margin-bottom: 15px;
    border-bottom: none;
    color: #333;

    padding-left: 20px;
    border-left: 1px solid #005743;
}

#page_general_sport ul.symptoms_list .bt_more {
    margin: 60px 0 0 ;
}

/*リンク*/
#page_facility .introduction li .bt {
    margin-top: 20px;
}

#page_facility .introduction li .bt a {
    border: 1px solid #ccc;
    display: inline-block;
    padding: 10px 40px 10px 10px;
    color: #005743;
    background-color: #fff;
    background-image: url("image/icon_green_next_1_off.png");
    background-position: 90% center;
    background-repeat: no-repeat;
    background-size: 16px;

    transition: 0.5s;
}

#page_facility .introduction li .bt a:hover {
    color: #fff;
    background-color: #005743;
    background-image: url("image/icon_green_next_1_on.png");
    background-position: 92% center;
}



/*肩関節治療CSS =================================================*/
/*メインビジュアル*/
#page_shoulder .page_main_visual {
    background-image: url("image/page_shoulder_photo_main.jpg?ver=0.1");  
}


#page_shoulder .pageHead .sectionCo_inner h2 span {
 font-size: 30%;
}

#page_shoulder .br {
    display: block;
    padding-left: 3.5%;
}

#page_shoulder #staff .with-3-columns .first .item-1 span,
#page_osteoporosis .with-3-columns .first .item-1 span {
    font-size: 140%;
}

#page_shoulder #staff .with-3-columns .second p,
#page_osteoporosis #staff .with-3-columns .second p {
    position: relative;
    padding-left: 60px;
}

#page_shoulder #staff .with-3-columns .second .item-2::before,
#page_osteoporosis #staff .with-3-columns .second .item-2::before {
    content: "資格";
    position: absolute;
    top: 0;
    left: 0;
    font-size: 80%;
    font-weight: 600;
}

#page_shoulder #staff .with-3-columns,
#page_osteoporosis #staff .with-3-columns {
    border-bottom: 1px solid #ccc;
    padding: 50px 0;
}

#page_shoulder #staff .with-3-columns:first-child,
#page_osteoporosis #staff .with-3-columns:first-child {
    border-top: 1px solid #ccc;
}

#page_shoulder #staff .with-3-columns .second,
#page_osteoporosis #staff .with-3-columns .second {
    width: 800px;
}

#staff .sectionCo_inner .with-3-columns {
    justify-content: space-between;
}

#staff .sectionCo_inner .bt_more li:first-child {
    margin-right: 0;
}

#staff .sectionCo_inner .bt_more {
    margin: 0;
}

#staff .sectionCo_inner .with-3-columns:first-child .bt_more li {
    margin-top: 23%;
}

.with-2-columns.facility {
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
 
.with-2-columns.facility>li {
    width : 560px;
    margin-right: 80px;
    margin-bottom: 80px; 
    word-wrap: break-word;
}

.with-2-columns.facility>li img {
    width: 100%;
    height: auto;
}

.with-2-columns.facility>li h3 {
    position: relative;
    padding-left: 30px;
    margin: 30px 0 15px;
}


.with-2-columns.facility>li h3::before {
    position: absolute;
    top: 49%;
    left: 0;

    content: "";
    width: 20px;
    height: 1px;

    background-color: #005743;
}

.with-2-columns.facility>li:nth-child(2n) {
    margin-right: 0;
}

.with-2-columns.facility>li:nth-last-child(-n+2) {
    margin-bottom: 0;
}

#page_shoulder .bt_more {
    margin-top: 80px;
}

/*手術実績*/
#page_shoulder #surgery p span {
    font-size: 0.8em;
    color: #005743;
}

#page_shoulder #surgery table {
    width: 100%;
    margin-top: 15px;
}

#page_shoulder #surgery table th,
#page_shoulder #surgery table td {
    width: 50%;
    border: 1px solid #ccc;
    vertical-align: middle;
    padding: 15px;
}

#page_shoulder #surgery table th {
    text-align: left;
    background-color: #F2F6F5;
}

#page_shoulder #surgery table td {
    text-align: center;
}

#page_shoulder #surgery h3 {
    position: relative;
    padding-left: 30px;
    margin: 60px 0 0;
}

#page_shoulder #surgery h3::before {
    position: absolute;
    top: 49%;
    left: 0;
    content: "";
    width: 20px;
    height: 1px;
    background-color: #005743;
}

#page_shoulder #surgery img.pc {
    width: 100%;
    margin-top: 30px;
}

#page_shoulder #surgery img.sp {
    display: none;
}

@media screen and (max-width: 767px) {
    #page_shoulder #surgery table th {
        width: 70%;
    }
    #page_shoulder #surgery table td {
        width: 30%;
    }

    #page_shoulder #surgery img.pc {
       display: none;
    }

    #page_shoulder #surgery img.sp {
        display: block;
        width: 100%;
        max-width: 480px;
        margin: 30px auto 0;
    }
}


/*骨粗鬆症CSS =================================================*/
/*メインビジュアル*/
#page_osteoporosis .page_main_visual {
    background-image: url("image/page_osteoporosis_photo_main.jpg?ver=0.1");  
}

.bgc03 {
    background-color: #F2F6F5;
    padding: 60px;
}


#page_osteoporosis .factors {
    background-color: #F2F6F5;
    padding: 60px;
}

#page_osteoporosis .with-2-columns.factors {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;

    margin-top: 40px;
}

#page_osteoporosis .with-2-columns.factors li {
    width: 535px;
    margin-right: 10px;
    margin-bottom: 10px;
    background-color: #fff;
    padding: 40px;
}

#page_osteoporosis .with-2-columns.factors li:nth-child(2n) {
    margin-right: 0;
}

#page_osteoporosis .with-2-columns.factors li:nth-last-child(-n+2) {
    margin-bottom: 0;
}

#page_osteoporosis ul.h4_set {
    margin-top: 40px;
    border-top: 1px dotted #ccc;
}

#page_osteoporosis ul.h4_set li {
    border-bottom: 1px dotted #ccc;
    padding: 30px 0;
}

#page_osteoporosis ul.h4_set li h4 {
    position: relative;
    padding-left: 10px;
    margin-bottom: 15px;

    border-left: 1px solid #005743;
}

#page_osteoporosis #about .with-2-columns_photo,
#page_rehabilitation #facility .with-2-columns_photo {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;    
}

#page_osteoporosis #about .with-2-columns_photo img,
#page_rehabilitation #facility .with-2-columns_photo img {
    width: 50%;
    height: auto;
}

#page_osteoporosis #staff .photo {
    margin-bottom: 80px;
}

#page_osteoporosis #staff .photo img{
    width: 100%;
    height: auto;
}

#page_osteoporosis #staff .with-3-columns .first .item-1 span {
    display: block;
}

#page_osteoporosis #staff .with-3-columns .second {
    width: 980px;
}


#page_osteoporosis #staff .with-3-columns .second p {
    padding-left: 100px;
}

#page_osteoporosis #staff .with-3-columns .second .item-3 {
    margin-top: 20px;
}

#page_osteoporosis #staff .with-3-columns .second .item-3::before {
    content: "メッセージ";

    position: absolute;
    top: 0;
    left: 0;

    font-size: 80%;
    font-weight: 600;
}



/*手術・入院に関してCSS =================================================*/
/*メインビジュアル*/
#page_surgery_hospitalization .page_main_visual {
    background-image: url("image/page_surgery_photo_main.jpg?ver=0.3");  
}

/*ページアンカーリンク*/
.page_anchorlink.mt20 {
    margin-top: 20px!important;
}

/*.with-2-columns*/
#page_surgery_hospitalization .with-2-columns {
    flex-wrap:wrap; 
    justify-content: space-between;
    align-items: center;
}

#page_surgery_hospitalization .with-2-columns.page_set_1 {
    justify-content: inherit;
    align-items: inherit;
}

#page_surgery_hospitalization .with-2-columns .left{
    width: 580px;
}

#page_surgery_hospitalization .with-2-columns .left img {
    width: 100%;
    height: auto;
}

#page_surgery_hospitalization .with-2-columns .right{
    width: 550px;
}

#page_surgery_hospitalization .with-2-columns .right h4 {
    position: relative;

    margin-bottom: 20px;
    padding-bottom: 20px;
    
    font-size: 160%;
}

#page_surgery_hospitalization .with-2-columns .right h4::before {
    position: absolute;

    content: "";

    width: 80px;
    height: 1px;
    background-color: #005743;

    top: 18px;
    left: -100px;
}

#page_surgery_hospitalization .with-2-columns .right h4::after {
    position: absolute;

    content: "";

    width: 30px;
    height: 1px;
    background-color: #ccc;

    bottom: 0;
    left: 0;
}

/*.with-3-columns*/
#page_surgery_hospitalization .with-3-columns {
    margin-top: 60px;
    flex-wrap:wrap; 
    justify-content: space-between; 
}

#page_surgery_hospitalization .with-3-columns .columns {
    width: 360px;
}

#page_surgery_hospitalization .with-3-columns .columns .photo img,
#page_surgery_hospitalization .with-3-columns .columns .photo video {
    width: 100%;
    height: auto;
}

#page_surgery_hospitalization .with-3-columns .columns h5{
    position: relative;
    width: 360px;
    font-size: 140%;
    line-height: 1.4;
    padding-left: 30px;
    margin: 20px 0 15px;
}

#page_surgery_hospitalization .with-3-columns .columns h5::before {
    position: absolute;
    content: "";
    width: 20px;
    height: 1px;
    background-color: #005743;
    top: 10px;
    left: 0;
}

#page_surgery_hospitalization .mb60_pb60_bb {
    margin-bottom: 60px;
    padding-bottom: 60px;
    border-bottom: 1px dotted #ccc;
}

#page_surgery_hospitalization .ptb20_bgc1 {
    padding: 20px;
    background-color: #F4F4F4;
    text-align: center;
}

/*flow*/
#page_surgery_hospitalization .flow,
#page_guide .flow  {
    margin-top: 40px;
    border-top: 1px dotted #ccc;
}

#page_surgery_hospitalization .flow li,
#page_guide .flow li{
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0;

    border-bottom: 1px dotted #ccc;
}

#page_surgery_hospitalization .flow li .left,
#page_guide .flow li .left {
    width: 320px;
    padding-left: 60px;
    position: relative;
    font-size: 120%;
}

#page_surgery_hospitalization .flow li .left::before,
#page_guide .flow li .left::before {
    content: "";

    position: absolute;
    top: -5px;
    left: 0;
    width: 40px;
    height: 40px;
    background-color: #005743;
    border-radius: 100%;

    color: #fff;

    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#page_surgery_hospitalization .flow li .right,
#page_guide .flow li .right {
    width: 880px;
}

#page_surgery_hospitalization .flow li .left.first::before,
#page_guide .flow li .left.first::before {
    content: "1";
}

#page_surgery_hospitalization .flow li .left.second::before,
#page_guide .flow li .left.second::before {
    content: "2";
}

#page_surgery_hospitalization .flow li .left.third::before,
#page_guide .flow li .left.third::before {
    content: "3";
}

#page_surgery_hospitalization .flow li .left.fourth::before,
#page_guide .flow li .left.fourth::before {
    content: "4";
}

#page_surgery_hospitalization .flow li .left.fifth::before,
#page_guide .flow li .left.fifth::before {
    content: "5";
}

#page_surgery_hospitalization .flow li .left.sixth::before,
#page_guide .flow li .left.sixth::before {
    content: "6";
}

#page_surgery_hospitalization .flow li .left.seventh::before,
#page_guide .flow li .left.seventh::before {
    content: "7";
}

.bt_set_anchor,
.bt_set_pdf,
.bt_set_next {
    width: 80%;
    margin:60px auto 0;
    text-align: center;   
}
.bt_set_pdf {
    margin:40px auto 0;
}

.bt_set_anchor a,
.bt_set_pdf a,
.bt_set_next a {
    display: block;
    padding: 20px 0;
    width: 100%;
    height: 100%;

    background-color: #005743;
    background-position: 95% center;
    background-repeat: no-repeat;

    border-radius: 100px;

    color: #fff;

    transition: 0.2s;
}

.bt_set_anchor a {
    background-image: url("image/icon_anchor_w.png");
    background-size: 20px;
    line-height: 1.4;
}

.bt_set_pdf a {
    background-image: url("image/icon_pdf.png");
    background-size: 24px;

}

.bt_set_next a {
    background-image: url("image/icon_green_next_3.png");
    background-size: 24px;
}

.bt_set_anchor a:hover,
.bt_set_pdf a:hover,
.bt_set_next a:hover {
    background-color: #5b9587;
    color: #fff;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.2);
}

.bt_set_anchor a br,
.bt_set_pdf a br {
    display: none;
}

#page_surgery_hospitalization ul.symptoms_list,
#page_guide ul.symptoms_list{
    padding: 0;
    background:none;
}

#page_surgery_hospitalization ul.symptoms_list li,
#page_guide ul.symptoms_list li{
    border: 1px solid #ccc;
}

#page_surgery_hospitalization ul.symptoms_list li .h5_set h5,
#page_guide ul.symptoms_list li .h5_set h5 {
    padding-left: 10px;
    font-size: 120%;
    border-left: 1px solid #005743;
}

#page_surgery_hospitalization ul.symptoms_list li .h5_set p,
#page_guide ul.symptoms_list li .h5_set p {
    margin: 15px 0 0;
    padding: 0;
    border: none;
}

.mt_pb_bt {
    margin-top: 25px!important;
    padding-top: 25px!important;
    border-top: 1px dotted #ccc!important;
}

#hospitalization ul.symptoms_list li,
#hospitalization ul.symptoms_list li p {
    border: none;
}

#hospitalization ul.symptoms_list ul.with-3-columns,
#hospitalization ul.symptoms_list ul.with-4-columns {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px dotted #ccc;

    flex-wrap:wrap; 
    justify-content:inherit;
}

#hospitalization ul.symptoms_list ul.with-3-columns li,
#hospitalization ul.symptoms_list ul.with-4-columns li {
    padding: 0;
    margin: 0 80px 0 0;
    width: fit-content;
}

#hospitalization ul.symptoms_list ul.with-3-columns li:last-child,
#hospitalization ul.symptoms_list ul.with-4-columns li:last-child {
    margin: 0;
}

#hospitalization ul.symptoms_list ul.with-3-columns li p,
#hospitalization ul.symptoms_list ul.with-4-columns li p {
    position: relative;
    padding-top: 0;
    padding-left: 16px;
}

#hospitalization ul.symptoms_list ul.with-3-columns li p::before,
#hospitalization ul.symptoms_list ul.with-4-columns li p::before {
    position: absolute;
    content: "・";
    color: #005743;
    left: 0;
}

#hospitalization .h4_set {
    margin-top: 40px;
    padding-bottom: 25px;
    margin-bottom: 25px;
    border-bottom: 1px dotted #ccc;
}

#hospitalization .h4_set h4 {
    font-size: 120%;
    padding-left: 10px;
    border-left: 1px solid #005743;
}

#hospitalization .h4_set p {
    margin-top: 20px;
}

#hospitalization .section_h4_set {
    margin-top: 65px;
}

#hospitalization .section_h4_set h4 {
    padding-left: 10px;
    font-size: 120%;
    border-left: 1px solid #005743;
}

.table_3_r2,
.table_3_r1,
.table_2_r1 {
    width: 100%;
    height: auto;
    border: 1px solid #ccc;
    background-color: #fff;
}

.table_3_r2 th,
.table_3_r2 td,
.table_3_r1 th,
.table_3_r1 td,
.table_2_r1 th,
.table_2_r1 td {
    padding: 20px 30px;
    border: 1px solid #ccc;
}

.table_3_r2 tr td,
.table_3_r1 tr td {
    width: 300px;
    text-align: center;
}

.table_2_r1 th {
    width: 40%;
}

.mt40_mb15 {
    margin-top: 40px;
    margin-bottom: 15px;
}

.mt20_mb15 {
    margin-top: 20px;
    margin-bottom: 15px;
}


/*リハビリに関してCSS =================================================*/
/*メインビジュアル*/
#page_rehabilitation .page_main_visual {
    background-image: url("image/page_rehabilitation_photo_main.jpg?ver=0.1");  
}


/*初めての方へCSS =================================================*/
/*メインビジュアル*/
#page_guide .page_main_visual {
    background-image: url("image/page_guide_photo_main.jpg?ver=0.1");  
}

#page_guide #first .text span {
    font-size: 80%;
    letter-spacing: 0.05em;
}

/*reservation*/
#page_guide ul.reservation,
.page_set_thaad ul.reservation {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 40px;
}

#page_guide .reservation li,
.page_set_thaad ul.reservation li {
    width: 580px;
    border-radius: 5px;
    text-align: center;
}

#page_guide .reservation li:first-child,
.page_set_thaad ul.reservation li:first-child {
    border: 1px solid #005743;
}

#page_guide .reservation li:last-child,
.page_set_thaad ul.reservation li:last-child {
    background-color: #F0F5F5;
}

#page_guide .reservation li h4,
.page_set_thaad ul.reservation li h4 {
    padding: 15px 0;
    font-size: 120%;
}

#page_guide .reservation li:first-child h4,
.page_set_thaad ul.reservation li:first-child h4 {
    border-bottom: 1px solid #005743;
}

#page_guide .reservation li:last-child h4,
.page_set_thaad ul.reservation li:last-child h4 {
    border-bottom: 1px solid #ccc;
}

#page_guide .reservation .reservation_section,
.page_set_thaad ul.reservation .reservation_section {
    padding: 20px;
}

#page_guide .reservation .right .tel,
.page_set_thaad ul.reservation .left .tel {
    font-size: 140%;
    letter-spacing: 0.05em;
    color: #005743;
    position: relative;
    margin: auto;
    width: fit-content;
    margin-bottom: 10px;
}

#page_guide .reservation .right .tel span,
.page_set_thaad ul.reservation .left .tel span {
    position: absolute;
    border-bottom: double 3px #005743;
    font-size: 55%;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    top: 5px;
    margin-left: 10px;
}



#page_guide .reservation .right .tel a,
.page_set_thaad ul.reservation .left .tel a {
    padding-left: 30px;
    background-image: url("image/icon_green_tel.png");
    background-position: center left;
    background-repeat: no-repeat;
    background-size: 24px;
    color: #005743;
}

#page_guide .reservation .right .time,
.page_set_thaad ul.reservation .left .time {
    font-size: 90%;
    letter-spacing: 0;
}

#page_guide .reservation .right a img,
.page_set_thaad ul.reservation .right a img {
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.3);
    display: block;
}

#page_guide .reservation .right a:hover img,
.page_set_thaad ul.reservation .right a:hover img {
    opacity: 0.5;
}

#page_guide .reservation .left a,
.page_set_thaad ul.reservation .right a {
    display: inline-block;
    margin: auto;
    width:max-content;
    width:-ms-max-content;
    width:-moz-max-content;
    width:-webkit-max-content;
    width:-o-max-content;
    position: relative;
}

#page_guide .reservation .left a::before,
.page_set_thaad ul.reservation .right a::before {
    content: "";
    position: absolute;
    display: block;

    width: 40px;
    height: 40px;

    top: 50%;
    right: -100px;
    transform: translateY(-50%);

    background-image: url("image/icon_blank.png"); 
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}



/*リクルートCSS =================================================*/
/*メインビジュアル*/
#page_recruit .page_main_visual {
    background-image: url("image/page_recruit_photo_main.jpg?ver=0.1");  
}

/*message*/
#page_recruit #message .with-2-columns.page_set_1 ul.photo {
    margin-top: 50px;

    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -moz-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

#page_recruit #message .with-2-columns.page_set_1 ul.photo li:last-child {
    margin-top: 6%;
}

#page_recruit #message .with-2-columns.page_set_1 .photo, 
#page_recruit #message .with-2-columns.page_set_1 .text {
    width: 100%;
    margin-left: 0;
}

/*recruitment*/
#page_recruit #recruitment .with-3-columns {
    margin-top: 40px;
}

#page_recruit #recruitment .with-3-columns>li {
    width : 33.3333333% ;
	width : -webkit-calc(100% / 3) ;
	width : calc(100% / 3) ;

    padding: 30px;
    border: 1px solid #ccc;
}


#page_recruit #recruitment .with-3-columns>li:nth-child(1),
#page_recruit #recruitment .with-3-columns>li:nth-child(2) {
    border-right: none;
}

#page_recruit #recruitment .with-3-columns>li h4 {
    margin-bottom: 10px;
    position: relative;
}

#page_recruit #recruitment .with-3-columns>li h4::before {
    display: block;

    position: relative;
    width: 60px;
    height: 60px;
    border-radius: 100px;
    margin-bottom: 10px;

    background-color: #fff;
    border: 1px solid #ccc;


    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

#page_recruit #recruitment .with-3-columns>li:nth-child(1) h4::before {
    content: "1";  
}

#page_recruit #recruitment .with-3-columns>li:nth-child(2) h4::before {
    content: "2";  
}

#page_recruit #recruitment .with-3-columns>li:nth-child(3) h4::before {
    content: "3";  
}

/*flow_list*/
#page_recruit #requirements .flow_list {
    margin-top: 40px;
    padding: 50px;
    border: 1px solid #ccc;
}

#page_recruit #requirements .flow_list ul {
    /*display: none;*/
    margin-top: 20px;
    border-top: 1px solid #ccc;
}

#page_recruit #requirements .flow_list ul li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    padding: 20px 0;
    border-bottom: 1px solid #ccc;
    position: relative;
}

#page_recruit #requirements .flow_list ul li::after {
    content: "";
    width: 200px;
    height: 1px;
    background-color: #005743;

    position: absolute;
    left: 0;
    bottom: -1px;
}

#page_recruit #requirements .flow_list ul li .left {
    width: 200px;
}

#page_recruit #requirements .flow_list ul li .right {
    flex: 1;
}

#page_recruit #next p {
    margin-top: 40px;
    text-align: center;
}


#page_recruit .announce {
    padding: 20px;
    text-align: center;
    border: 1px solid #005743;
}

/*ハンバーガーアイコン*/
/*メニュー用ハンバーガー*/
#page_recruit #requirements .flow_list h3 .lp_icon {
	display: none;
}

#page_recruit .dbtn {
    margin-top: 15px;
    display: inline-block;
    padding: 8px 25px;
    color: #005743;
    font-weight: bold;
    border-radius: 100px;
    border: 1px solid #005743;
    
    position: relative;
}

#page_recruit .dbtn span {
    margin-left: 10px;
    font-size: 10px;
    color: #005743;
}

/*お問い合わせCSS =================================================*/
.page_set_thaad #sectionCo_1 .sectionCo_inner {
    border-top: 1px solid #ccc;
    margin-top: 50px;
    padding-top: 100px;
}

#page_contact #form .form_list .form_list_b {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    margin-bottom: 40px;
}

#page_contact #form .form_list .form_list_b.form_list_last {
    margin-bottom: 0;
}

#page_contact #form .form_list .form_list_b .left {
    width: 280px;
}

#page_contact #form .form_list .form_list_b .left span {
    font-size: 70%;
    padding: 5px 10px;
    background-color: #005743;
    color: #fff;
    margin-right: 20px;
}

#page_contact #form .form_list .form_list_b .right {
    width: 920px;
}

#page_contact #form .form_list .form_list_b .right textarea,
#page_contact #form .form_list .form_list_b .right input{
    width: 100%;
    padding: 15px 20px 20px;
    border: 1px solid #ddd;
}

#page_contact #form .form_list .form_list_b .right textarea::placeholder,
#page_contact #form .form_list .form_list_b .right input::placeholder {
    color: #999;
}

#page_contact #form .form_list_p {
    margin-top: 60px;
    border: 1px solid #ccc;
    padding: 40px 50px; 
    height: 460px;
    overflow: scroll;
}

#page_contact #form .form_list_p h3 {
    font-size: 120%;
    text-align: center;
    padding-bottom: 30px;
    margin-bottom: 30px;
    border-bottom: 1px solid #005743;
    
}

#page_contact #form .form_list_p .form_list_p_1 {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ccc;
}

#page_contact #form .form_list_p .form_list_p_1.form_list_p_last {
    margin-bottom: 0;
    padding-bottom: 0;
    border: none;
}

#page_contact #form .form_list_p h4 {
    font-size: 110%;
}

/*submit_box*/
#page_contact #form .submit_box {
    margin-top: 80px;
    text-align: center;
}

#page_contact #form .submit_box .s_box_1 {
    margin: 40px 0 3cqmin;
    font-weight: 600;
    position: relative;
    
    width: 100%;
}

#page_contact #form .submit_box .s_box_1 input {
    inline-size: 1.5rem;
    block-size: 1.5rem;
    accent-color: Black;
    vertical-align: top;
    margin-right: 5px;
}

#page_contact #form .submit_box .s_box_2 input {
    padding: 25px 20px ;
    width: 60%;
    border-radius: 100px;
    border: none;
    background-color: #005743;
    color: #fff;
    transition: 0.2s;
    cursor: pointer;
}

#page_contact #form .submit_box .s_box_2 input:hover {
    background-color: #5b9587;
}

#page_contact #form .submit_box .s_box_3 {
    margin: 50px 0 15px;
    font-weight: 600;
}

#page_contact #form .wpcf7-list-item {
    display: block;
}

#page_contact #form .wpcf7-list-item input {
    width: auto!important;

}

#page_contact .wpcf7-submit:disabled {
    background-color: #666!important;
    cursor: not-allowed!important;
}

#page_contact_thanks .sectionCo_inner h3 {
    margin-bottom: 20px;
}

#page_contact_thanks .sectionCo_inner .bt {
    margin-bottom: 100px;
}

/*reCAPTCHA*/
#page_contact #form .grecaptcha {
	text-align: center;
	margin-top: 20px;
    padding: 25px;
    background-color: #f8f8f8;
}

#page_contact #form .grecaptcha a {
	color: #002daa;
}

#page_contact #form .grecaptcha a:hover {
    text-decoration: underline;
}

.grecaptcha-badge { visibility: hidden; } /*reCAPTCHA ロゴの非表示*/





/*ニュース一覧 CSS =================================================*/
#page_news_archives #entryCo,
#page_news_archives #main_column #entry_list li,
#page_news_archives #pagination,
#page_news_single #entryCo,
#page_news_single #pagination,
.entry_list_single .list li {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    position: relative;
}

/* #main_column */
#page_news_archives #main_column,
#page_news_single #main_column {
    width: 800px;
    margin-right: 100px;
}

#page_news_archives #main_column #entry_list li,
#page_news_single #main_column #entry_list li,
.entry_list_single .list li {
    border-bottom: 1px solid #ccc;
    padding: 20px 0;
}

#page_news_archives #main_column #entry_list li:first-child,
#page_news_single #main_column #entry_list li:first-child {
    padding: 0 0 20px;
}

/* data */
#page_news_archives #main_column #entry_list li .data,
.entry_list_single .list li .data {
    font-size: 80%;
    color: #005743;
   
    width: 100px;
    margin-right: 20px;
    display: table;
}

#page_news_archives #main_column #entry_list li .data span,
.entry_list_single .list li .data span {
    display: table-cell;
    vertical-align: middle;
    margin: 10px auto;
}

/* entry_title */
#page_news_archives #main_column #entry_list li .entry_title a,
.entry_list_single .list li .entry_title a {
    width: 680px;
    height: auto;
    display: block;
    padding: 10px 0;

    background-image: url("image/icon_green_next_1.png");
    background-position: 98% center;
    background-repeat: no-repeat;
    background-size: 20px;

    transition: 0.3s;
}

#page_news_archives #main_column #entry_list li .entry_title a:hover,
.entry_list_single .list li .entry_title a:hover  {
    background-position: 100% center;
    text-decoration: underline;
}

/* #pagination */
#page_news_archives #main_column #pagination {
    margin: 60px auto 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#page_news_archives #main_column #pagination .pages {
    display: none;
}

#page_news_archives #main_column #pagination .current,
#page_news_archives #main_column #pagination .page,
#page_news_archives #main_column #pagination a {
    padding: 10px 12px;
    border: 1px solid #005743;
    line-height: 1;
    margin: 8px;
}

#page_news_archives #main_column #pagination .current {
    background-color: #005743;
    color: #ccc;
}



/* #side_colum */
#page_news_archives #side_column,
#page_news_single #side_column {
    width: 300px;
}

#page_news_archives #side_column dl:first-child,
#page_news_single #side_column dl:first-child {
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #ccc;
}

#page_news_archives #side_column dl dt,
#page_news_single #side_column dl dt {
    font-size: 95%;
    color: #005743;
    margin-bottom: 15px;
}

#page_news_archives #side_column dl dd,
#page_news_single #side_column dl dd {
    margin-bottom: 10px;    
}

#page_news_archives #side_column dl dd a,
#page_news_single #side_column dl dd a {
    position: relative;
    display: block;
    padding: 2px 0;
}

/*#page_news_archives #news_archives #side_column dl dd a::before {
    content: "";
    width: 0;
    height: 100%;
    background-color: #00574310;
    position: absolute;
    display: block;
    transition: 0.5s;
    z-index: -10;
}*/

#page_news_archives #news_archives #side_column dl dd a:hover {
   /*width: 100%;*/
   text-decoration: underline;
}

/*ニュース詳細 CSS =================================================*/
#page_news_single #main_column #entry_list {
    padding: 0 0 30px;
}

#page_news_single #main_column #entry_list .data{
    font-size: 80%;
    color: #005743;
    width: 100%;
    display: block;
    margin-bottom: 10px;
}

#page_news_single #main_column #entry_list .entry_title {
    font-size: 120%;
    font-weight: 600;
}

#page_news_single #main_column .entry_detail {
    overflow: hidden;
    line-height: 2;
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #ccc;
}

#page_news_single #main_column .entry_detail p {
    margin-bottom: 40px;
}

#page_news_single #main_column .entry_detail img {
    max-width: 800px;
    height: auto
}

#page_news_single #main_column .entry_detail a {
    color: #005743;
    text-decoration: underline;
}

#page_news_single #main_column .entry_detail a:hover {
    opacity: 0.5;
    color: #873400;
}

/* entry_next_bt */
#page_news_single #main_column .entry_next_bt {
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;

    justify-content: space-between;
}

#page_news_single #main_column .entry_next_bt .entry_next_bt__prev a,
#page_news_single #main_column .entry_next_bt .entry_next_bt__next a {
    border-radius: 100px;
    border: 1px solid #005743;

    display: block;
    background-repeat: no-repeat;
    background-size: 16px;
}

#page_news_single #main_column .entry_next_bt .entry_next_bt__index a {
    padding: 15px 0;
    display: block;
}

#page_news_single #main_column .entry_next_bt .entry_next_bt__prev a {
    padding: 15px 16px 15px 40px;
    background-image: url("image/icon_green_prev_1_off.png");
    background-position: 16px center;

    transition: 0.3s;
}

#page_news_single #main_column .entry_next_bt .entry_next_bt__prev a:hover {
    background-image: url("image/icon_green_prev_1_on.png");
    background-color: #005743;
    color: #fff;
}

#page_news_single #main_column .entry_next_bt .entry_next_bt__next a {
    padding: 15px 40px 15px 16px;
    background-image: url("image/icon_green_next_1_off.png");
    background-position: 85% center;

    transition: 0.3s;
}

#page_news_single #main_column .entry_next_bt .entry_next_bt__next a:hover {
    background-image: url("image/icon_green_next_1_on.png");
    background-color: #005743;
    color: #fff;
}


#page_news_single #main_column .entry_next_bt .entry_next_bt__index a:hover {
    text-decoration: underline;
}

#page_news_single #main_column .entry_next_bt a {
    color: #005743;
    line-height: 1;
}

#page_news_single #main_column .entry_list_single {
    margin-top: 100px;
}

#page_news_single #main_column .entry_list_single h3 {
    font-size: 140%;
    color: #005743;
    padding-bottom: 20px;
    border-bottom: 1px solid #ccc;
}

/*診療内容_ネクストナビゲーション*/
#next_linkCo {
	width: 100%;
	height: auto;
}

#next_linkCo a {
	color: #fff;
	font-weight: 100;
}

#next_linkCo .sectionCo_inner h3 {
	font-size: 200%;
	display: inline-block;
	padding-right: 50px;

	background-image: url("image/icon_green_next_1_on.png");
	background-size: 30px;
	background-position: 95% center;
	background-repeat: no-repeat;

	transition: 0.2s;

}

#next_linkCo .sectionCo_inner .h4_set {
	margin-top: 80px;
	position: relative;
}

#next_linkCo .sectionCo_inner .h4_set h4 {
	font-size: 200%;
}

#next_linkCo .sectionCo_inner .h4_set::after {
	content: "";
	position: absolute;
	display: block;
	width: 50px;
	height: 1px;
	background-color: #ccc;
	bottom: -30px;
}

#next_linkCo .sectionCo_inner .text {
	margin-top: 80px;
}


#next_linkCo .next_linkCo_bg {
	height: 550px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: relative;
	padding-top: 100px;
}

#next_linkCo .next_linkCo_bg::before {
	content: "";
	display: block;

	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;

	background-color: rgba(102, 102, 102, 0.8);
	width: 100%;
	height: 100%;

	transition: 0.5s;
}

/*リンク*/
#next_linkCo a:hover .next_linkCo_bg::before {
	background-color: rgba(0, 87, 67, 0.5);
}

#next_linkCo a:hover .sectionCo_inner h3 {
	background-position: 100% center;
}

/*スポーツ_一般整形 > 肩関節治療 */
#next_linkCo .general_sports{
	background-image: url("image/page_shoulder_photo_main.jpg?ver=0.1");
}

/*肩関節治療 > 骨粗鬆症*/ 
#next_linkCo .shoulder{
	background-image: url("image/page_osteoporosis_photo_main.jpg?ver=0.1");
}

/*骨粗鬆症 > 手術、入院に関して*/
#next_linkCo .osteoporosis {
	background-image: url("image/page_surgery_photo_main.jpg?ver=0.3");
}

/*手術、入院に関して > リハビリに関して*/
#next_linkCo .surgery {
	background-image: url("image/page_rehabilitation_photo_main.jpg?ver=0.1");
}

/*リハビリに関して > スポーツ_一般整形*/
#next_linkCo .rehabilitation {
	background-image: url("image/page_general_photo_main.jpg?ver=0.1");
}


/*閲覧用CSS=================================================*/
#password-form {
    width: 1200px;
    height: 350px;
    text-align: center; 
    margin: auto;
    transition: 0.1s;
}

#password-form .post-password-form {
    margin: 250px auto 0;
    transition: 0.1s;
}

#password-form .post-password-form p {
    margin-top: 20px;
}

@media screen and (max-width: 767px){
    #password-form {
        width: 90%;
        margin: auto;
    }
    
    #password-form .post-password-form {
        margin: 250px auto 0;
        transition: 0;
    }
}

#footer_Co .sns {
	display: flex;
	display: -webkit-flex;
	display: -ms-flexbox;
    margin-top: 30px;
}

#footer_Co .sns dt {
    margin-right: 20px;
    padding: 5px 0;
    font-weight: 600;
}



/*SP用CSS
============================================================================================*/
@media screen and (max-width: 767px){

    /*トップページ用CSS =================================================*/
    /*main_visual*/
    /*#home .main_visual {
    }*/

    #home .main_visual .h2_set {
        position: absolute;
        top: 20%;
        left: 50%;
        transform: translateX(-50%);

        text-align: center;
    }

    #home .main_visual .h2_set h2 {
        line-height: 1.2;
        margin-bottom: 40px;
    }

    #home .main_visual .h2_set h2 br {
        display: block;
    }

    #home .main_visual .h2_set h3 {
        letter-spacing: 0.3em;
    }

    #home .main_visual .copy {
        left: 50%;
        top: 45%;
        bottom: inherit;
        line-height: 1.8;
        transform: translateX(-50%);
    }

    /* newsCo */
    #newsCo {
        padding: 40px 30px;
        margin-top: -50px;

        display: block;


        box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.08);
    }

    #newsCo .left {
        width: 100%;
    }

    #newsCo .left .bt_more {
        right: 0;
        bottom: inherit;
        top: 20px;
    }

    #newsCo .right {
        margin-top: 20px;
        width: 100%;
    }

    #newsCo .right .news_entryCo_list li {
        padding: 25px 0;
        display: block;
    }

    #newsCo .right .news_entryCo_list li .left {
        width: 100%;
    }

    #newsCo .right .news_entryCo_list li .right {
        width: 90%;
        margin-top: 5px;
    }

    #newsCo .right .news_entryCo_list li .right a {
        word-wrap: break-word;
    }
    
    /* medical_hoursCo */
    .medical_hoursCo {
        margin: 40px 0 0;
    }

    .medical_hoursCo .sectionCo_inner,
    .accessCo .sectionCo_inner,
    .instagram .sectionCo_inner {
        display: block;
    }

    .medical_hoursCo .left,
    .accessCo .left,
    .instagram .left,
    #footer_Co .instagram .sectionCo_inner .left {
        width: 100%;
    }

    .medical_hoursCo .right {
        margin-top: 20px;
    }

    .medical_hoursCo .right,
    .accessCo .right,
    .instagram .right,
    #footer_Co .instagram .sectionCo_inner .right {
        width: 100%;
    }

    .medical_hoursCo .right table tr td {
        display: table-cell;
        vertical-align: middle;
    }

    .medical_hoursCo .right table tr th:last-child,
    .medical_hoursCo .right table tr td:last-child {
        border-right: none;
    }

    .medical_hoursCo .right p {
        margin: 10px 0;
    }

    .medical_hoursCo .right p span {
        width: inherit;
        display: block;
    }

    .medical_hoursCo .right p span.pc {
        display: none;
    }

    .medical_hoursCo .right p br {
        display: block;
    }

    .medical_hoursCo .right .table2,
    .medical_hoursCo .GoogleCalendar {
        margin-top: 40px;
    }

    .medical_hoursCo .GoogleCalendar::after {
        width: 100px;
        height: 100px;
        bottom: -15px;
        left: -20px;
    }

    .medical_hoursCo .addition {
        padding: 0px!important;
        margin: 0px !important;
    }

    .medical_hoursCo .pm {
        margin-bottom: 0!important;
    }

    .medical_hoursCo .right .other {
        position: relative;
        top: inherit;
        right: inherit;
    }

    /* clinic_infoCo */
    .clinic_infoCo .photo {
        position: relative;
        width: 100%;
        height: 200px;
        margin-bottom: 100px;
    }

    .clinic_infoCo .sectionCo_inner h3 {
        position: relative;
        top: inherit;
        right: inherit;
        margin-bottom: 30px;
    }

    .clinic_infoCo .sectionCo_inner h3::before {
        content: "Clinic information";
        position: absolute;
        top: -50px;
        color: #005743;
        font-size: 12px;
    }

    .clinic_infoCo .sectionCo_inner p {
        width: 100%;
        position: relative;
        top: inherit;
        right: inherit;
    }

    .clinic_infoCo .sectionCo_inner p::before {
        content: "";
    }

    .clinic_infoCo .with-4-columns {
        padding-top: 40px;
    }

    .clinic_infoCo .with-4-columns>li {
    margin-right: 0px;
    height: 400px;

    background-position: center 130px;
    margin-bottom: 20px;
    }

    /*.clinic_infoCo .with-4-columns>li:hover {
        transform: none;
    }*/

    .clinic_infoCo .with-4-columns>li a {
        padding-top: 200px;
    }

    .clinic_infoCo .with-4-columns>li:nth-child(2) {
        margin-top: inherit;
    }

    .clinic_infoCo .with-4-columns>li:nth-child(4) {
        margin-top: inherit;    
    }

    .clinic_infoCo .with-4-columns>li p{
        position: relative;
        top: inherit;
        right: inherit;
        width: auto;

        margin-top: 30px;
    }

    .clinic_infoCo .with-4-columns>li p::before {
        content: "";
    }

    .scroll_area {
        display: -webkit-box;
        display: -webkit-flex;
        display: -moz-box;
        display: -ms-flexbox;
        display: flex;
        width: 100%;
        min-width: 320px;
        overflow: hidden;

        margin-top: 80px;
    }

    #page_guide .scroll_area {
        margin-top: 40px;
    }


    .scroll_area ul li {
        width: 240px;
    }

    .scroll_area ul li img {
        width: auto;
        height: 160px;
    }

    /* .staff_infoCo */
    .staff_infoCo .sectionCo_inner h3 {
        position: relative;
        top: inherit;
        right: inherit;
        letter-spacing: 0.25em;
        margin-bottom: 10px;
    }

    .staff_infoCo .sectionCo_inner .photo,
    .staff_infoCo .sectionCo_inner .text {
        width: 100%;
    }

    .staff_infoCo .sectionCo_inner .photo img {
        width: 100%;
        height: auto;
    }

    .staff_infoCo .sectionCo_inner .photo {
        margin-bottom: 30px;
    }

    .staff_infoCo .sectionCo_inner .photo2 {
        position: relative;
        top: inherit;
        right: inherit;
    }

    .staff_infoCo .sectionCo_inner .photo2 img {
        width: 125px;
        height: 125px;
        margin-top: -10px;
    }    

    .staff_infoCo .sectionCo_inner .bt_more {
        display: block;
        margin: 60px 0 30px;
        text-align: right;
    }

    .staff_infoCo .sectionCo_inner .bt_more li:first-child {
        margin-right: 0;
        margin-bottom: 80px;
    }

    .staff_infoCo .sectionCo_inner .section_w1000 {
        height: 180px;
        margin-top: 60px;
        /*background*/
    }

    .staff_infoCo .sectionCo_inner .section_w1000::after {
        width: 100px;
        height: 100px;

        top: -15px;
        left: -20px;
    }

    .staff_infoCo .sectionCo_inner .section_w1000 p{
        left: 10px;
    }

    .staff_infoCo .sectionCo_inner .section_w1000 p span {
        display: block;
    }

    /* .accessCo */
    .accessCo .sectionCo_inner .left {
        margin-bottom: 40px;

    }

    .accessCo .sectionCo_inner .right .photo {
        width: 100%;
    }

    .accessCo .sectionCo_inner .right .photo img {
        width: 100%;
        height: auto;
    }

    .accessCo .accessCo_info {
        display: block;
        margin-top: 40px;
    }

    .accessCo .accessCo_info .left {
        width: inherit;
        margin-right: 0;
    }

    .accessCo .accessCo_info .right {
        width: 100%;
    }

    .accessCo .googlemap,
    .medical_hoursCo .googlemap,
    .google-sv{
        width: 100%;
        height: 0;
        padding-bottom: 56.25%;
        margin-top: 30px;

        position: relative;
        top: inherit;
        right: inherit;

        overflow: hidden;
    }
    
    .google-sv {
        padding-bottom: 120%!important;
    }
    
    .accessCo .googlemap iframe,
    .medical_hoursCo .googlemap iframe,
    .google-sv iframe{
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%;
    }


    /*クリニックについてCSS =================================================*/
    /*page_about_main_visual*/
    #page_about .page_about_main_visual {
        height: 400px;
        margin-top: 25px;
    }

    #page_about .page_about_main_visual .h3-set {
        width: -webkit-max-content;
        width: -moz-max-content;
        width: max-content;
    }

    #page_about .page_about_main_visual .h3-set h3 br {
        display: block;
    }

    #page_about .page_about_main_visual .h3-set p {
        letter-spacing: 0.1em;
    }

    #page_about .section_first .with-1-columns {
        padding: 40px 25px;
    }

    #page_about .section_first .with-1-columns::before {
        left: 50%;
        transform: translateX(-50%);
    }

    #page_about .section_first .with-1-columns h3 {
        margin-bottom: 10px;
    }

    #page_about .section_first .with-1-columns.third {
        display: block;
        text-align: center;
    }

    #page_about .section_first .with-1-columns.third p {
        margin-left: 0;
        text-align: left;
    }

    /* クリニック情報 */
    #page_about .medical_hoursCo .sectionCo_inner {
        display: block!important;
    }

    #page_about .medical_hoursCo .photo {
        width: 100%;
        height: auto;
    }

    #page_about .medical_hoursCo .photo .left {
        position: relative;
    }

    #page_about .medical_hoursCo .photo .left img.first {
        width: 100%;
        height: auto;
    }

    #page_about .medical_hoursCo .photo .right {
        position: relative;
        height: max-content;
    }

    #page_about .medical_hoursCo .photo .right::before {
        content: "";
        display: block;
        padding-top: 75%;
    }

    #page_about .medical_hoursCo .photo .right img.second,
    #page_about .medical_hoursCo .photo .right img.third {
        position: absolute;
    }   

    #page_about .medical_hoursCo .photo img.second {
        width: 40%;
        height: auto;
        top: 10px;
        left: 8%;
        right: inherit;
    }

    #page_about .medical_hoursCo .photo img.third {
        width: 40%;
        height: auto;
        bottom: 0;
        right: 8%;
    }
    

   /* .with-2-columns */
    #page_about .with-2-columns{
        display: block;
    }

    .with-2-columns.mt50_mb30 {
        margin: 25px 0 15px;
    }

    #page_about .with-2-columns .right p br{
        display: none;
    }

    #page_about .with-2-columns .right p.car span {
        width: auto;
        display: inline-block;
    }

    #page_about .with-2-columns .right p.car br {
        display: block;
    }

    #page_about .with-2-columns .right .time,
    #page_about .with-2-columns .right .close {
        position: relative;
        padding-left: 0px;
    }

    #page_about .with-2-columns .right .time::before,
    #page_about .with-2-columns .right .close::before {
        position: relative;
        top: inherit;
        left: inherit;
        display: block;
        margin-top: 20px;
        margin-bottom: 3px;
     }

    #page_about .clinic_overview {
        flex-wrap:wrap;
    }

    #page_about .clinic_overview dt {
        width: 100%;
        font-weight: 600;
        border-bottom: none;
        padding: 20px 0 0;
    }

    #page_about .clinic_overview dt,
    #page_about .clinic_overview dd {
        word-wrap: break-word;
    }

    #page_about .clinic_overview dd {
        width: 100%;
        padding: 10px 0 20px;
    }

    #page_about .clinic_overview dt:first-child {
        padding-top: 0;
    }

    /*院長からのメッセージ、スタッフ紹介CSS =================================================*/
    /*院長からのメッセージ*/
    #page_message #message .with-2-columns {
        display: block;
    }

    #page_message #message .with-2-columns .right {
        width: 100%;
    }

    #message.section_first {
        padding-bottom: 80px;
    } 

    #page_message #message .with-2-columns .right h3 {
        margin-bottom: 30px;
    }

    #page_message #message .with-2-columns .right p {
        line-height: 2;
    }

    #page_message #message .with-2-columns .right p.name {
        text-align: center;
    }

    #page_message #message .with-2-columns .left {
        margin-left: 0;
        margin-top: 20px;
    }

    #page_message #message .with-2-columns .left.photo {
        text-align: center;
    }

    #page_message #message .with-2-columns .left img {
        width: 100%;
        max-width: 400px;
        height: auto;
    }

    #page_message #message .with-2-columns.profile {
        padding: 30px 20px;
    }

    #page_message #message .with-2-columns.profile li {
        margin-bottom: 15px;
    }

    #page_message #message .with-2-columns.profile .right, 
    #page_message #message .with-2-columns.profile .left {
        width: 100%;
    }

    #page_message #message .with-2-columns.profile ul.first {
        margin-top: 60px;
    }

    /*.banner-kansetsu*/
    #page_message .banner-kansetsu {
        display: block;
        padding: 30px 20px;
    }

    #page_message .banner-kansetsu .left {
        margin-right: 0;
    }

    #page_message .banner-kansetsu a {
        margin-top: 20px;
    }

    

    /*スタッフ紹介_____*/
    /*タイトル周り*/
    #page_message #staff .h2_set_pc {
        display: none;
    }

    #page_message #staff .bgi_s{
        display: block;
        width: 100%;
        height: 460px;

        background-image: url("image/page_message_photo_03.jpg?ver=0.2");
        background-position: center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    #page_message #staff .sectionCo_inner.second {
        padding: 50px 0 60px;
    }
    
    #page_message #staff .sectionCo_inner.second .h2_title {
        display: block;
    }

    #page_message #staff li.with-3-columns,
    #page_message #staff li.with-2-columns{
        display: block;
    }

    #page_message #staff .with-3-columns .first,
    #page_message #staff .with-2-columns .first {
        width: 100%;
    }
    
    #page_message #staff .with-3-columns .second,
    #page_message #staff .with-2-columns .second {
        width: 100%;
    }
    
    #page_message #staff .with-3-columns .second p,
    #page_message #staff .with-3-columns .third p,
    #page_message #staff .with-2-columns .second p{
        position: relative;
        padding-left: 0;
        line-height: 2;
    }
    
    #page_message #staff .with-3-columns .second p.item-3::before,
    #page_message #staff .with-3-columns .second p.item-4::before,
    #page_message #staff .with-3-columns .third p.item-5::before,
    #page_message #staff .with-2-columns .second p.item-4::before {
        position: absolute;
        top: -30px;
        left: inherit;
        font-size: 80%;
        font-weight: 600;
    }
    
    #page_message #staff .with-3-columns .first p.item-1,
    #page_message #staff .with-2-columns .first p.item-1 {
        margin-bottom: 30px;
    }

    #page_message #staff .with-3-columns .first p.item-2,
    #page_message #staff .with-2-columns .first p.item-2 {
        margin-bottom: 70px;
    }
    
    #page_message #staff .with-3-columns .second p.item-3 {
        margin-bottom: 70px;
    }

    #page_message #staff .with-3-columns .second p.item-top {
        margin-top: 70px;
    }

    #page_message #staff .with-3-columns .second p.item-4 {
        margin-bottom: 70px;
    }

    /*院内案内CSS =================================================*/
    #page_facility .floor-map {
    text-align: center;
    }

    #page_facility .floor-map img {
        width: 100%;
        height: auto;
    }

    #page_facility .introduction .with-3-columns {
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap; 
    }

    #page_facility .introduction .with-3-columns>li {
        width : 100% ;
        width : -webkit-calc(100% / 1) ;
        width : calc(100% / 1) ;
        margin-right: 0;
    }

    #page_facility .introduction .with-3-columns>li:nth-child(3n) {
        margin-right: 0;
    }

    #page_facility .introduction .with-3-columns>li:nth-last-child(-n+3) {
        margin-bottom: 60px;
    }

    #page_facility .introduction .with-3-columns>li:last-child {
        margin-bottom: 0;
    }

    #page_facility .introduction .with-3-columns>li img {
        width: 100%;
        height: auto;
    }

    #page_facility .introduction .with-3-columns h4 {
        margin: 15px 0 8px;
    }

    /*肩関節治療CSS =================================================*/
    #page_shoulder .br {
        display: inline;
    }

    #page_shoulder #staff .with-3-columns .second, 
    #page_osteoporosis #staff .with-3-columns .second {
        width: 100%;
    }

    #page_shoulder #staff .with-3-columns .first .item-1 span {
        font-size: 130%;
    }

    #page_shoulder #staff .with-3-columns .second p {
        padding-left: 0;
    }

    #page_shoulder #staff .with-3-columns .second .item-2::before {
        position: relative;
        display: block;
        margin-top: 20px;
        margin-bottom: 10px;
    }

    #page_shoulder #staff .with-3-columns .second .item-2 span {
        display: table-column;
    }

    #page_shoulder .bt_more {
        display: block;
    }

    #staff .sectionCo_inner .bt_more {
        margin: 60px 0 0;
    }

    #staff .sectionCo_inner .with-3-columns:first-child .bt_more li {
        margin-top: 0;
    }
 
    .with-2-columns.facility>li {
        width : 100%;
        margin-right: 0;
        margin-bottom: 60px; 
    }

    .with-2-columns.facility>li:nth-last-child(-n+2) {
        margin-bottom: 60px;
    }

    .with-2-columns.facility>li:last-child {
        margin-bottom: 0;
    }

    #page_shoulder .bt_more li:first-child{
        margin-bottom: 80px;
    }

    /*骨粗鬆症CSS =================================================*/
    #page_osteoporosis .factors {
        padding: 20px;
    }

    #page_osteoporosis .with-2-columns.factors {
        display: block;
        margin-top: 40px;
    }

    #page_osteoporosis .with-2-columns.factors li {
        width: 100%;
        margin-right: 0;
        padding: 20px;
    }

    #page_osteoporosis .with-2-columns.factors li:nth-last-child(-n+2) {
        margin-bottom: 10px;
    }
    #page_osteoporosis .with-2-columns.factors li:last-child {
        margin-bottom: 0;
    }

    #page_osteoporosis #staff .photo {
        margin-bottom: 30px;
    }

    #page_osteoporosis #staff .with-3-columns .second {
        width: 100%;
    }

    #page_osteoporosis #staff .with-3-columns .second p {
        padding-left: 0;
    }

    #page_osteoporosis #staff .with-3-columns .second .item-2::before,
    #page_osteoporosis #staff .with-3-columns .second .item-3::before {
        position: relative;
        display: block;
        margin-top: 20px;
        margin-bottom: 10px;
    }

    #page_osteoporosis #staff .with-3-columns .second .item-3 {
        margin-top: 20px;
    }


    /*手術・入院に関してCSS =================================================*/
    /*.with-2-columns*/
    #page_surgery_hospitalization .with-2-columns .left,
    #page_surgery_hospitalization .with-2-columns .right {
        width: 100%;
    }


    #page_surgery_hospitalization .with-2-columns .right h4 {
        font-size: 140%;
        text-align: center;
        margin-top: 20px;
    }

    #page_surgery_hospitalization .with-2-columns .right h4::before {
        position: absolute;
        width: 1px;
        height: 30px;
        background-color: #005743;

        top: -35px;
        left: 49.5%;
    }

    #page_surgery_hospitalization .with-2-columns .right h4::after {
        left: 50%;
        transform: translateX(-50%);
    }

    /*.with-3-columns*/
     #page_surgery_hospitalization .with-3-columns .columns {
        width: 100%;
        margin-bottom: 40px;
    }

    #page_surgery_hospitalization .with-3-columns .columns.third {
        margin: 0;
    }

    #page_surgery_hospitalization .with-3-columns .columns h5{
        width: 100%;
        font-size: 130%;
        margin: 20px 0 15px;
    }

    #page_surgery_hospitalization .mb60_pb60_bb {
        margin-bottom: 40px;
        padding-bottom: 40px;
    }

    /*flow*/
    #page_surgery_hospitalization .flow li,
    #page_guide .flow li {
        display: block;
    }

    #page_surgery_hospitalization .flow li .left,
    #page_guide .flow li .left {
        width: 100%;
    }

    #page_surgery_hospitalization .flow li .right, 
    #page_guide .flow li .right {
        width: 100%;
        margin-top: 10px;
    }

    .bt_set_anchor,
    .bt_set_pdf,
    .bt_set_next {
        margin: 20px auto 0;
    }

    .bt_set_anchor a br,
    .bt_set_pdf a br,
    .bt_set_next br {
        display: block;
    }
    
    #hospitalization .section_h4_set {
        margin-top: 45px;
    }

    /*table*/
    .table_3_r2 th,
    .table_3_r2 td,
    .table_3_r1 th,
    .table_3_r1 td,
    .table_2_r1 th,
    .table_2_r1 td {
        padding: 20px 30px;
        border: 1px solid #ccc;
    }

    .table_3_r2 tr td,
    .table_3_r1 tr td {
        text-align: center;
    }

    .page_anchorlink.mt20 {
        margin-top: 10px!important;
    }
  
    .table_3_r2 th,
    .table_3_r1 th,
    .table_2_r1 th {
        width: 100%;
        display: block;
        border: none;

        border-bottom: 1px solid #ccc;
        background-color: #F2F6F5;
        padding: 15px 30px;
    }

    .table_3_r2 tr td,
    .table_3_r1 tr td {
        width: 50%;
        display: inline-block;
        padding: 10px 0;
    }

    .table_2_r1 tr td {
        width: 100%;
        display: inline-block;
        padding: 10px 30px;
    }

    .table_3_r2 td,
    .table_3_r1 td,
    .table_2_r1 td {
        border-top: none;
        border-left: none;
    }

    .table_3_r2 td:last-child,
    .table_3_r1 td:last-child {
        border-right: none;
    }

    .table_3_r2 tr:last-child td,
    .table_3_r1 tr:last-child td,
    .table_2_r1 tr:last-child td {
        border-bottom: none;
    }

    .mt40_mb15 {
        margin-top: 40px;
        margin-bottom: 15px;
    }

    .mt20_mb15 {
        margin-top: 20px;
        margin-bottom: 15px;
    }

    /*初めての方へCSS =================================================*/
    /*reservation*/
    #page_guide ul.reservation,
    .page_set_thaad ul.reservation {
        display: block;
    }

    #page_guide .reservation li,
    .page_set_thaad ul.reservation li {
        width: 100%;
    }

    #page_guide .reservation li:first-child,
    .page_set_thaad ul.reservation li:first-child {
        margin-bottom: 20px;
    }

    #page_guide .reservation li:last-child h4,
    .page_set_thaad ul.reservation li:last-child h4 {
        border-bottom: 1px solid #ccc;
    }

    #page_guide .reservation .left .tel,
    .page_set_thaad ul.reservation .left .tel {
        position: relative;
        padding-left: 20px;
        font-size: 130%;
    }

    #page_guide .reservation .left .tel::before,
    .page_set_thaad ul.reservation .left .tel::before {
        width: 18px;
        height: 18px;
        top: 8px;
        left: 0px;
    }

    #page_guide .reservation .left .tel span,
    .page_set_thaad ul.reservation .left .tel span {
        margin-left: 5px;
        position: relative;
        top: -5px;
    }

    #page_guide .reservation .left .time,
    .page_set_thaad ul.reservation .left .time {
        font-size: 90%;
        letter-spacing: 0;
    }

    #page_guide .reservation .right a img,
    .page_set_thaad ul.reservation .right a img {
        width: 100%;
        max-width: 460px;
        height: auto;
        margin: auto;
    }

    #page_guide .reservation .right a,
    .page_set_thaad ul.reservation .right a {
        width: 100%;
    }

    #page_guide .reservation .right a::before,
    .page_set_thaad ul.reservation .right a::before {
        right: -10px;
    }

    #page_guide .bt_more {
        display: block;
    }



    /*リクルートCSS =================================================*/
    /*message*/
    #page_recruit #message .with-2-columns.page_set_1 .photo li {
        width: 48%;
    }

    #page_recruit #message .with-2-columns.page_set_1 .photo img {
        width: 100%;
    }

    /*recruitment*/
    #page_recruit #recruitment .with-3-columns {
        margin-top: 40px;
        display: block;
    }

    #page_recruit #recruitment .with-3-columns>li {
        width : 100% ;
        padding: 20px;
    }


    #page_recruit #recruitment .with-3-columns>li:nth-child(1),
    #page_recruit #recruitment .with-3-columns>li:nth-child(2) {
        border-right: 1px solid #ccc;
        border-bottom: none;
    }

    #page_recruit #recruitment .with-3-columns>li h4::before {
        width: 40px;
        height: 40px;
    }

    /*flow_list*/
    #page_recruit #requirements .flow_list {
        margin-top: 20px;
        padding: 20px;
        border: 1px solid #ccc;
    }

    #page_recruit #requirements .flow_list h3 {
        cursor: pointer;
    }

    #page_recruit #requirements .flow_list ul {
        display: none;
        margin-top: 20px;
        border-top: 1px solid #ccc;
    }

    #page_recruit #requirements .flow_list ul.open {
        display: block!important;
    }

    #page_recruit #requirements .flow_list ul li {
        display: block;

        padding: 20px 0;
        border-bottom: 1px solid #ccc;
        position: relative;
    }

    #page_recruit #requirements .flow_list ul li::after {
        content:none;
    }

    #page_recruit #requirements .flow_list ul li .left {
        width: 100%;
        border-bottom: 1px solid #005743;
        padding-bottom: 15px;
    }

    #page_recruit #requirements .flow_list ul li .right {
        padding-top: 18px;
    }

    /*ハンバーガーアイコン*/
    #page_recruit #requirements .flow_list h3 {
        position: relative;
    }

	#page_recruit #requirements .flow_list .icon {
		display: block;
		position: absolute;
		width: 25px;
		height: 25px;
		top: 5%;
		right: 0;
	}

	#page_recruit #requirements .flow_list .icon i {
		display: block;
		width: 100%;
		height: 2px;
		background-color: #999;
		position: absolute;
	}

	#page_recruit #requirements .flow_list .icon i:first-child {
		top: 49%;
	}

	#page_recruit #requirements .flow_list .icon i:last-child {
		top: 49%;
		transform: rotate(90deg);
		transition: 0.2s;
	}

    #page_recruit #requirements .flow_list h3.open .icon i:last-child{
		transform: rotate(0deg);
	}

    /*お問い合わせCSS =================================================*/
    #page_contact #sectionCo_1 .sectionCo_inner {
        margin-top: 30px;
        padding-top: 80px;
    }

    #page_contact #form .form_list .form_list_b {
        display: block;
    }

    #page_contact #form .form_list .form_list_b .left {
        width: 100%;
        margin-bottom: 10px;
    }

    #page_contact #form .form_list .form_list_b .right {
        width: 100%;
    }

    #page_contact #form .form_list_p {
        margin-top: 40px;
        padding: 20px 25px;
        height: 300px;
    }

    #page_contact #form .form_list_p h3 {
        padding-bottom: 20px;
        margin-bottom: 20px;
    }

    #page_contact #form .form_list_p .form_list_p_1 {
        margin-bottom: 30px;
        padding-bottom: 30px;
        border-bottom: 1px solid #ccc;
    }

    /*submit_box*/
    #page_contact #form .submit_box {
        margin-top: 80px;
        text-align: center;
    }

    #page_contact #form .submit_box p .sp {
        display: none;
    }

    #page_contact #form .submit_box .s_box_2 input {
        width: 90%;
    }

    /*ニュース一覧 CSS =================================================*/
    #page_news_archives #entryCo,
    #page_news_archives  #main_column #entry_list li,
    #page_news_single #entryCo,
    .entry_list_single .list li {
        display: block;
        position: relative;
    }

    /* #main_column */
    #page_news_archives #main_column,
    #page_news_single #main_column,
    .entry_list_single .list li .data {
        width: 100%;
        margin-right: 0;
    }

    #page_news_archives #main_column #entry_list li:first-child,
    #page_news_single  #main_column #entry_list li:first-child {
        padding: 0 0 20px;
    }

    /* data */
    #page_news_archives #main_column #entry_list li .data,
    #page_news_single #main_column #entry_list li .data {
        width: 100%;
        margin-right: 0;
        display: table;
    }

    #page_news_archives #main_column #entry_list li .data span {
        display: table-cell;
        vertical-align: middle;
    }

    /* entry_title */
    #page_news_archives #main_column #entry_list li .entry_title a,
    .entry_list_single .list li .entry_title a {
        width: 100%;
    }

    #page_news_archives #main_column #entry_list li .entry_title a:hover,
    .entry_list_single .list li .entry_title a:hover {
        background-position: 100% center;
        text-decoration: underline;
    }

    /* #side_colum */
    #page_news_archives #side_column,
    #page_news_single #side_column {
        width: 100%;
        margin-top: 100px;
        padding-top: 50px; 
        border-top: 1px solid #ccc;   
    }

    /*ニュース詳細 CSS =================================================*/
    #page_news_single #main_column .entry_detail {
        padding-bottom: 20px;
    }

    .entry_list_single .list li .entry_title{
        width: 100%;
    }

    .entry_list_single .list li .entry_title a {
        padding-right: 40px;
    }

    #page_news_single #main_column .entry_detail img {
        width: 100%;
        max-width: inherit;
        height: auto
    }

    #page_news_single #main_column .entry_next_bt .entry_next_bt__prev span,
    #page_news_single #main_column .entry_next_bt .entry_next_bt__index span,
    #page_news_single #main_column .entry_next_bt .entry_next_bt__next span {
        display: none;
    }

    #page_news_single #main_column .entry_next_bt .entry_next_bt__next a {
        background-position: 70% center;
    }



    /*診療内容_ネクストナビゲーション*/
    #next_linkCo .sectionCo_inner h3 {
        font-size: 140%;
    }

    #next_linkCo .sectionCo_inner .h4_set {
        margin-top: 40px;
    }

    #next_linkCo .sectionCo_inner .h4_set h4 {
        font-size: 140%;
    }

    #next_linkCo .sectionCo_inner .h4_set::after {
        content: none;
    }

    #next_linkCo .sectionCo_inner .text {
        display: none;
    }

    #next_linkCo .next_linkCo_bg {
        height: 280px;
        padding-top: 50px;
    }
}


/*
instagram追加に伴う追加CSS =================================================*/
.instagram {
    margin: 100px auto!important;
}

.instagram ul.insta_list {
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -moz-box;
    display: -ms-flexbox;
    flex-wrap: wrap;
}

.instagram ul.insta_list li {
    position: relative;
    width: 211px;
    height: 211px;
    margin-right: 51px;
    margin-bottom: 51px;
    overflow: hidden;
}

.instagram ul.insta_list li:nth-child(4n) {
    margin-right: 0;
}

.instagram ul.insta_list li:nth-child(n+5) {
    margin-bottom: 0;
}

.instagram ul.insta_list li:last-child {
    display: none;
}

.insta_list img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.8s;
}

.insta_list a{
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
}

.insta_list a:hover img {
    transform: scale(1.1);
    opacity: 0.5;
}

.insta_list a::before {
    position: absolute;
    content: "";
    width: 20%;
    height: 20%;
    display: block;
    top: 40%;
    left: 40%;
    z-index: 1;
    background-image: url("image/icon_sns_Insta_w.png");
    background-size: cover;
    filter: opacity(0);
    transition: 0.2s;
}

.insta_list a:hover::before {
    filter: opacity(1);
}


.insta_list li::before{
	content: "";
	display: block;
	padding-top: 100%;
}

.instagram .bt_more,
.instagram .bt_more a{
    color: #005743;
}

.instagram .bt_more {
    justify-content: space-between;
    flex-direction: row-reverse;
}

.instagram .bt_more li:last-child {
    font-size: 12px;
    letter-spacing: normal;
}

@media screen and (max-width: 767px){
    .instagram {
        margin: 60px auto!important;
    }
    
    .instagram ul.insta_list li {
        width: calc((94%)/3);/*calc((100% - 10%)/3)*/
        height: auto;
        margin: 0 3% 3% 0!important;

    }

    .instagram ul.insta_list li:last-child {
        display: block;
    }

    .instagram ul.insta_list li:nth-child(3n) {
        margin-right: 0!important;
    }


    .instagram ul.insta_list li:nth-child(4n) {
        margin-right: inherit;
    }
    
    .instagram ul.insta_list li:nth-child(n+5) {
        margin-bottom: inherit;
    }

    .instagram .sectionCo_inner .left {
        margin-bottom: 20px;
    }

    .instagram .bt_more {
        display: block;
        text-align: center;
    }

    .instagram .bt_more li:last-child {
        margin-top: 30px;
    } 
    
    #footer_Co .instagram .sectionCo_inner {
        position: relative;
    }

    #footer_Co .instagram .sectionCo_inner::before {
        content: "";
        width: 100%;
        height: 1px;

        position: absolute;
        bottom: -1px;
        left: 0;
    }
}