/*-------------------------------

	common

-------------------------------*/
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p,
a {
    color: #413e3e;
    font-size: 16px;
}

.tac {
    text-align: center;
}

.tar {
    text-align: right;
}

.m_auto {
    margin: auto;
}

.area80 {
    padding: 80px 0;
}

.p0 {
    padding: 0;
}

.mt10 {
    margin-top: 10px;
}

.mt15 {
    margin-top: 15px;
}

.mt20 {
    margin-top: 20px;
}

.mt30 {
    margin-top: 30px;
}

.mt40 {
    margin-top: 40px;
}

.mt50 {
    margin-top: 50px;
}

.mt60 {
    margin-top: 60px;
}

.mt70 {
    margin-top: 70px;
}

.mt80 {
    margin-top: 80px;
}

.mt90 {
    margin-top: 90px;
}

.mt100 {
    margin-top: 100px;
}

.mt110 {
    margin-top: 110px;
}

.mt120 {
    margin-top: 120px;
}

.mt140 {
    margin-top: 140px;
}


.mt200 {
    margin-top: 200px;
}

.mb0 {
    margin-bottom: 0px;
}

.mb10 {
    margin-bottom: 10px;
}

.mb20 {
    margin-bottom: 20px;
}

.mb30 {
    margin-bottom: 30px;
}

.mb40 {
    margin-bottom: 40px;
}

.mb50 {
    margin-bottom: 50px;
}

.mb60 {
    margin-bottom: 60px;
}

.mb70 {
    margin-bottom: 70px;
}

.mb80 {
    margin-bottom: 80px;
}


.mb90 {
    margin-bottom: 90px;
}

.mb100 {
    margin-bottom: 100px;
}

.mb120 {
    margin-bottom: 120px;
}

.mb130 {
    margin-bottom: 130px;
}

.mb140 {
    margin-bottom: 140px;
}

.mb150 {
    margin-bottom: 150px;
}

.w75 {
    width: 75%;
    margin: 0;
}

.w80 {
    width: 80%;
    margin: 0;
}

@media only screen and (max-width: 1024px) {
    .mb100 {
        margin-bottom: 50px;
    }
    .mt60 {
    margin-top: 50px;
}
    .mt110 {
        margin-top: 55px;
    }
    .mb120 {
    margin-bottom: 60px;
}
}

@media only screen and (max-width: 599px) {
    .area80 {
        padding: 40px 0;
    }

    .mt50 {
        margin-top: 25px;
    }

    .mt60 {
        margin-top: 30px;
    }

    .mt80 {
        margin-top: 40px;
    }

    .mt90 {
        margin-top: 45px;
    }

    .mt100 {
        margin-top: 50px;
    }

    .mt110 {
        margin-top: 55px;
    }

    .mt120 {
        margin-top: 60px;
    }

    .mt130 {
        margin-top: 70px;
    }

    .mt140 {
        margin-top: 70px;
    }

    .mt150 {
        margin-top: 75px;
    }

    .mb60 {
        margin-bottom: 30px;
    }

    .mb80 {
        margin-bottom: 40px;
    }

    .mb90 {
        margin-bottom: 45px;
    }

    .mb100 {
        margin-bottom: 50px;
    }

    .mb120 {
        margin-bottom: 60px;
    }

    .mb130 {
        margin-bottom: 70px;
    }

    .mb150 {
        margin-bottom: 75px;
    }
}

/* object-fit */
.of_img {
    overflow: hidden;
    position: relative;
    display: block;
}

.of_img img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100% !important;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}

.of_img:before {
    content: '';
    display: block;
}

.of_img.pt20:before {
    padding-top: 20%;
}

.of_img.pt30:before {
    padding-top: 30%;
}

.of_img.pt35:before {
    padding-top: 35%;
}

.of_img.pt40:before {
    padding-top: 40%;
}

.of_img.pt48:before {
    padding-top: 48%;
}

.of_img.pt50:before {
    padding-top: 50%;
}

.of_img.pt55:before {
    padding-top: 55%;
}

.of_img.pt60:before {
    padding-top: 60%;
}

.of_img.pt65:before {
    padding-top: 65%;
}

.of_img.pt70:before {
    padding-top: 70%;
}

.of_img.pt75:before {
    padding-top: 75%;
}

.of_img.pt80:before {
    padding-top: 80%;
}

.of_img.pt85:before {
    padding-top: 85%;
}

.of_img.pt90:before {
    padding-top: 90%;
}

.of_img.pt100:before {
    padding-top: 100%;
}

.of_img.pt110:before {
    padding-top: 110%;
}

.of_img.pt120:before {
    padding-top: 120%;
}

.of_img.pt150:before {
    padding-top: 150%;
}

.center {
    text-align: center;
}

.left {
    text-align: left;
}

.lh100 {
    line-height: 100%;
}

.lh120 {
    line-height: 120%;
}

.lh150 {
    line-height: 150%;
}

.lh200 {
    line-height: 200%;
}

.lh250 {
    line-height: 250%;
}

.ls1em {
    letter-spacing: 0.1em;
}

.fw400 {
    font-weight: 400;
}

.fw700 {
    font-weight: 700;
}

.tx_cut {
    visibility: hidden;
}
.w47{
    width: 47%;
}

@media only screen and (max-width: 1024px) {
    .tb_row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}
@media only screen and (max-width: 599px) {
    .w47{
        width: 100%;
    }
    
}

/*-------------------------------

	header

-------------------------------*/
#header {
    position: relative;
}

.hd_inner {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
}
.index .hd_inner{
  display: none;
}

.hd_inner .inn {
    margin: auto;
    max-width: 1200px;
    padding: 2%;
}
.h1 {
    font-size: 12px;
    width: 33%;
    letter-spacing: -0.5px;
}
.h1 a {
    display: block;
    margin-top: 10px;
}
.h1 img {
    background: rgba(255, 255, 255, .8);
    padding: 15px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}


.fixed_area {
    position: fixed;
    top: 30px;
    right: 0;
    z-index: 30;
}

.tel-btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 10;
    margin-bottom: 15px;
}

.tel-btn-icon {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    background-color: #d1b584;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 10px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-right:10px;

}
.tel-btn-icon:before{
    content: "\f095";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
}

.tel-btn-icon:hover {
    cursor: pointer;
}

.contel,
.popup-box a {
    font-size: 26px;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    text-shadow:
        white 2px 0px 2px,
        white -2px 0px 2px,
        white 0px -2px 2px,
        white -2px 0px 2px,
        white 2px 2px 2px,
        white -2px 2px 2px,
        white 2px -2px 2px,
        white -2px -2px 2px,
        white 1px 2px 2px,
        white -1px 2px 2px,
        white 1px -2px 2px,
        white -1px -2px 2px,
        white 2px 1px 2px,
        white -2px 1px 2px,
        white 2px -1px 2px,
        white -2px -1px 2px,
        white 1px 1px 2px,
        white -1px 1px 2px,
        white 1px -1px 2px,
        white -1px -1px 2px;
}

.fixbana {
    display: block;
    position: absolute;
    top: 280px;
    right: 0;
    z-index: 2;
}

.bana_sp {
    display: none;
}

.fix_btn {
    padding: 10px;
    margin-bottom: 20px;
    color: #fff !important;
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    width: 100%;
    min-height: 50px;
}

.fix_btn.web {
    background: #d1b584;
    font-size: 24px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.fix_btn.recruit {
    background: #b25331;
    font-size: 18px;
}
.fix_btn img {
    max-height: 35px;
    margin-right: 5px;
}

.fix_btn.bana {
    max-width: 232px;
    padding: 0;
}

.fix_btn.bana img {
    max-height: initial;
    margin-right: 0;
}

.fixed_area[data-element-id] {
    position: absolute;
    top: 30px;
    right: 0;
    z-index: 30;
}

.contact_ul li,
.fixed_area .tel-btn {
    -webkit-transition: 0.3s linear;
    -o-transition: 0.3s linear;
    transition: 0.3s linear;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
        transform: translate(0, 0);
}

.size .contact_ul li,
.size .tel-btn {
    -webkit-transform: translate(75%, 0);
    -ms-transform: translate(75%, 0);
        transform: translate(75%, 0);
}

.size .contact_ul li.tranone {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
        transform: translate(0, 0);
}

.size[data-element-id] .contact_ul li,
.size[data-element-id] .tel-btn {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
        transform: translate(0, 0);
}

.size .contact_ul li:hover,
.size .tel-btn:hover {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
        transform: translate(0, 0);
}

.size .contact_ul li a:hover {
    opacity: 1;
}

.btn_name {
    margin-left: 10px;
    text-align: center;
    display: block;
    width: 80%;
}

.btn_name span {
    display: block;
}

.contact_ul.sp {
    display: none;
}
#footer .more{
    margin:0;
}
#footer .more a{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 300px;
}
#footer .more img{
height: auto;
width: 20px;
vertical-align: middle;
}
#footer .more span{
    width: calc(100% - 30px);
}
.accordion-body .logo,
.accordion-body .sp {
    display: none;
}

.accordion-body .sp .tel-btn {
    margin-bottom: 20px;
}

#gnav.fixed {
    width: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3;
    background: rgba(255, 255, 255, .9);
}

#gnav .fixed_area .tel-btn {
    display: none;

}

#gnav .fixed_area[data-element-id] .tel-btn {
    display: block;
}

#gnav .fixed_area[data-element-id] .tel-btn:before {
    content: 'スマホ用編集';
    display: block;
    background: #000;
    color: #fff;
    padding: 5px;
}


.btn_fix {
    top: 150px;
    right: 0;
    opacity: .9;
}

#gnav li.sp {
    display: none;
}

@media only screen and (max-width: 1024px) {
    #gnav .toggle {
        display: block !important;
        position: fixed !important;
        width: 42px;
        height: 42px;
        top: 0px;
        right: 0px;
        background:  #d1b584;
        cursor: pointer;
        opacity: 0.8;
        z-index: 251;
    }

    #gnav .accordion-inner {
        padding-top: 0;
    }

    #gnav li.sp {
        display: block;
    }

    #gnav .fixed_area {
        position: static;
    }

    #gnav .fixed_area .tel-btn {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        position: relative;
        top: 0;
        right: 0;
        width: 93%;
        max-width: 768px;
        padding: 40px 0 110px;
        margin: auto;
    }

    .contact_ul.sp {
      display: none;
    }

    .contact_ul.sp li {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        width: 50%;
        padding: 0;
        margin: 0;
    }

    .contact_ul.sp li .fix_btn {
        margin-bottom: 0;
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
        padding: 5px 8px !important;
        width: 100%;
    }

    .fixed_area a {
        display: -webkit-box !important;
        display: -ms-flexbox !important;
        display: flex !important;
    }

    .fixbana {
        display: none;
    }

    .bana_sp {
        display: block;
    }

    .tel-btn {
        width: 50%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        z-index: 10;
        cursor: pointer;
        margin-bottom:0;
    }

    .tel-btn-icon {
        width: 100%;
        height: 100%;
        border-radius: 0;
        background-color: #d1b584;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        flex-direction: row;
        margin-right:0;
    }

    .tel-btn-icon:hover {
        cursor: pointer;
    }

    .popup-box {
        opacity: 1;
        -webkit-transition: 0.5s linear;
        -o-transition: 0.5s linear;
        transition: 0.5s linear;
    }
    .contel, .popup-box a{
      padding: 0;
    }

    .popup-box a {
      padding-left: 10px;
        font-size: 24px;
        text-shadow:
            white 2px 0px 2px,
            white -2px 0px 2px,
            white 0px -2px 2px,
            white -2px 0px 2px,
            white 2px 2px 2px,
            white -2px 2px 2px,
            white 2px -2px 2px,
            white -2px -2px 2px,
            white 1px 2px 2px,
            white -1px 2px 2px,
            white 1px -2px 2px,
            white -1px -2px 2px,
            white 2px 1px 2px,
            white -2px 1px 2px,
            white 2px -1px 2px,
            white -2px -1px 2px,
            white 1px 1px 2px,
            white -1px 1px 2px,
            white 1px -1px 2px,
            white -1px -1px 2px;
    }

    .accordion-body .sp {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 50px 10px 10px;
    }

    .accordion-body .logo {
        display: block;
        width: 60%;
        text-align: center;
        margin: 0;
    }

    .accordion-body .logo a {
        width: 70%;
        margin: 10px auto 0;
    }

/*     #header .fixed_area .tel-btn {
    display: none;
} */
    
    /* TB以下 */
    .fixed_area {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      position: fixed;
      top: inherit;
      right: inherit;
      bottom: 0;
      width: 100%;
      z-index: 30;
    }    
    

/* contact */
    .fixed_area .contact_ul {
    width: 50%;
    }
    .size .contact_ul li,
    .size .tel-btn{
      transform: translate(0, 0);
    }
    .fixed_area .contact_ul li .fix_btn{
      width: 100%;
      margin-bottom: 0;
      box-sizing: border-box;
    }
    .fixed_area .tel-btn {
      background: #d1b584;
      flex-direction: row;
    }
    .fixed_area .tel-btn .tel-btn-icon{
      background: none;
      width: 20px;
      padding: 0 10px 0 0;
    }

    .fix_btn.web {
        font-size: 16px;
        line-height: 120%;
    }

    .fix_btn.mail {
        font-size: 14px;
        line-height: 120%;
    }

    .h1 {
        display: none;
    }
}

@media only screen and (max-width: 599px) {
    .h1 a {
        width: 80%;
    }

    #gnav .tel-btn-icon {
        width: 50px;
        height: 50px;
        border-radius:50%; 
    }

    .accordion-body .logo {
        width: 70%;
        text-align: center;
    }
        .popup-box a {
      font-size: 16px;
        }
}

/*-------------------------------

	footer

-------------------------------*/
#footer .left {
    width: 35%;
    text-align: center;
}

#footer .left a {
    display: block;
    margin-bottom: 15px;
}

#footer .left span {
    font-size: 12px;
    line-height: 150%;
    display: block;
    margin-bottom: 20px;
}

#footer .add {
    text-align: center;
    margin-top: 20px;
}

#footer .telarea {
    margin-top: 25px;
    margin-bottom: 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
}

#footer .telarea span {
    margin-bottom: 0;
}

#footer .telarea img {
    max-height: 45px;
    margin-right: 10px;
}

#footer .telarea a {
    font-size: 34px;
    font-weight: 700;
    margin-bottom: 0;
    color: #333;
}

#footer .right {
    width: 60%;
}

#footer .right ul.line li {
    width: 45%;
    margin: 0 2.5%;
}

#footer .right .btn_03 {
    font-weight: 700;
}

#footer .right .btn_03 img {
    max-height: 25px;
    margin-right: 10px;
}

.tb {
    width: 100%;
    border-top: 1px solid #413e3e;
    border-bottom: 1px solid #413e3e;
    border-collapse: collapse;
    margin: 20px 0;
}

.tb thead th {
    border-bottom: 1px solid #413e3e;
}

.tb thead th:first-of-type {
    width: 30%;
}

.tb th,
.tb td {
    text-align: center;
    padding: 2%;
}

.tb th {
    font-weight: 400;
}

#footer .nav {
    background: #fff5e3;
    background-color: #fff5e3;
    background-image: -o-radial-gradient(#f8ebd5 12%, transparent 16%), -o-radial-gradient(#f8ebd5 12%, transparent 16%);
    background-image: radial-gradient(#f8ebd5 12%, transparent 16%), radial-gradient(#f8ebd5 12%, transparent 16%);
    background-position: 0 0, 9px 9px;
    background-size: 18px 18px;
}
#footer .ftnav .list dt{
    color: #d1b584;
    font-weight: 700;
}
#footer .ftnav .list dd{
    padding-left: 1em;
    position: relative;
    margin-bottom: 1%;
}
#footer .ftnav .list dd:after{
    content: "└";
    display: inline-block;
    position: absolute;
    top: 0;
    left: 0;
}

#footer .nav li {
    position: relative;
    padding: 5px 15px;
}

.ftnav dd a {
    display: block;
}

.copy {
    text-align: center;
    background: #bf9f67;
    color: #fff;
    padding: 10px;
}

.totop {
    background: #fff;
    border: #d1b584 3px solid;
    border-radius: 50%;
    position: fixed;
    bottom: 20px;
    right: 35px;
    width: 70px;
    height: 70px;
    z-index: 100;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.totop:before {
    content: '';
    top: 100%;
    display: block;
}

.totop:after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 10px;
    border-left: 3px solid #d1b584;
    border-top: 3px solid #d1b584;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-90%, -20%) rotate(45deg);
    -ms-transform: translate(-90%, -20%) rotate(45deg);
        transform: translate(-90%, -20%) rotate(45deg);
}

#footer .contact_ul li {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
}

@media only screen and (max-width: 1024px) {
    #footer .right .mail {
        width: 100%;
    }

    #footer .telarea {
        margin: 10px 0;
    }

    #footer .logo {
        width: 80%;
        margin: auto;
    }

    .copy {
        padding-bottom: 80px;
    }

    #footer .left {
        width: 100%;
        text-align: center;
        margin-bottom: 0;
    }

    #footer .right {
        width: 100%;
    }

    #footer .more {
        margin: auto;
    }
    #footer .more a {
        width: 100%;
    }
    #footer .tel {
        display: none;
    }

    #footer .fixed_area {
        display: none;
    }

    .totop {
        bottom: 80px;
    }
    .ftnav li{
        width: 50%;
    }
}

@media only screen and (max-width: 599px) {
    .ftnav li {
        width: 100%;
    }
    .tb th,
    .tb td {
        padding: 1%;
        font-size: 13px;
    }

    .totop {
        border-radius: 50%;
        position: fixed;
        right: 15px;
        width: 60px;
        height: 60px;
        z-index: 100;
    }

    #footer .right .btn_03 {
        width: 100%;
    }

    .tb thead th:first-of-type {
        width: 38%;
    }
}

/*-------------------------------

	common

-------------------------------*/

/* 定義もろもろ */
:root {
    --main-color: #d1b584;
}
.more.tar {
    text-align: right;
    margin: 50px auto 0 0;
}
.more a{
    display: block;
    text-align: center;
    color: #fff;
    padding: 13px 25px 13px 18px;
    background: #bf9f67;
    border-radius: 30px;
    position: relative;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    overflow: hidden;
}
.more a:before {
    content: "\f105";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 15px;
        top: 50%;
    -webkit-transform: translate(0, -50%);
        -ms-transform: translate(0, -50%);
            transform: translate(0, -50%);
}
.more a:after {
    content: "";
    position: absolute;
    z-index: -1;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: #c58f38;
    border-radius: 100%;
    -webkit-transform: scale(0);
    -ms-transform: scale(0);
        transform: scale(0);
    -webkit-transition-property: transform;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -o-transition-property: transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform;
    -webkit-transition-duration: 0.3s;
    -o-transition-duration: 0.3s;
       transition-duration: 0.3s;
    -webkit-transition-timing-function: ease-out;
    -o-transition-timing-function: ease-out;
       transition-timing-function: ease-out;
}

.more a:hover {
    color: white;
    opacity: .7;
}

.more a:hover:after {
    -webkit-transform: scale(2);
    -ms-transform: scale(2);
        transform: scale(2);
}
.main_visual {
    overflow: hidden;
    position: relative;
}
.main_visual .img{
    position: relative;
}
.main_visual .img:before{
    content: '';
    display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 0;
    left: 0;
    background-color: transparent;
    background-image: -o-radial-gradient(#a8a8a8 12%, transparent 16%), -o-radial-gradient(#a8a8a8 12%, transparent 16%);
    background-image: radial-gradient(#a8a8a8 12%, transparent 16%), radial-gradient(#a8a8a8 12%, transparent 16%);
    background-position: 0 0, 9px 9px;
    background-size: 16px 16px;
    opacity: .2;
}

.inner02 {
    max-width: 1100px;
    width: 95%;
    margin: auto;
}

h2.wave {
    text-align: center;
    position: relative;
    margin-bottom: 20px;
}

h2.wave:after {
    content: '';
    position: absolute;
    display: block;
    height: 100%;
    width: 40%;
    top: 100%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    background: url(/import/tenant_1/160.16.131.46/html/img/common/line_wave.png) center top no-repeat;
    background-size: contain;
    z-index: 1;
}

@media only screen and (max-width: 1024px) {
    .more{
        max-width: inherit;
    }
    .btn_01 {
        width: 50%;
    }
    
}

@media only screen and (max-width: 599px) {

    .more.tar{
        width: 100%;
        max-width: inherit;
        margin: 20px auto 0;
    }
    .more a{
        width: 100%;
    }

    h2.wave:after {
        width: 60%;
    }

    .btn_02 {
        padding: 10px 15px;
        border-radius: 30px;
    }

    h2.wave {
        margin-bottom: 20px;
        font-size: 26px;
    }
}

h2 {
    font-size: 36px;
}

h3 {
    font-size: 26px;
}

.brown_tit {
    color: #d1b584;
}

/* back dot */
.brown_dot {
    background-color: #e3d3b5;
    background-image: -o-radial-gradient(#d1b584 12%, transparent 16%), -o-radial-gradient(#d1b584 12%, transparent 16%);
    background-image: radial-gradient(#d1b584 12%, transparent 16%), radial-gradient(#d1b584 12%, transparent 16%);
    background-position: 0 0, 9px 9px;
    background-size: 16px 16px;
}

@media only screen and (max-width: 599px) {

    h2 {
        font-size: 28px;
    }
}

/*-------------------------------

	index

-------------------------------*/
/* slider */
.slider_area .main_visual:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #ffde93;
    background-image: -o-radial-gradient(#fff 12%, transparent 0), -o-radial-gradient(#fff 12%, transparent 0);
    background-image: radial-gradient(#fff 12%, transparent 0), radial-gradient(#fff 12%, transparent 0);
    background-position: 0 0, 10px 10px;
    background-size: 20px 20px;
    opacity: .3;
    z-index: 1;
}

.catchbox {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    z-index: 2;
}

.mv_catch {
    background: rgba(255, 255, 255, .75);
    padding: 40px;
    width: 500px;
    height: 500px;
    border-radius: 50%;
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
}

.mv_catch span.text {
    text-align: center;
    font-size: 36px;
    color: #474747;
    line-height: 130%;
    display: block;
    font-weight: 700;
}

@media all and (-ms-high-contrast: none) {
    .mv_catch span {
        background: none;
        color: #d2a35b;
    }
}

.slider_area .uk-slidenav-position {
    text-align: center;
    position: relative;
    overflow: hidden;
    min-width: 500px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.slider_area .uk-slidenav-position:after {
    padding-top: 54%;
    content: '';
    display: block;
}

.slider_area .uk-slideshow {
    position: absolute;
    top: 0;
}

/* nav */
#gnav li a {
    position: relative;
    text-decoration: none;
    font-weight: 500;
    display: block;
}

#gnav li > a:hover {
    opacity: 1;
}
#gnav li ul li a:hover {
    opacity: .6;
}
#gnav li a:after {
    position: absolute;
    bottom: 2px;
    left: 0;
    content: '';
    width: 100%;
    height: 5px;
    background: #d1b584;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: .3s ease-in;
    -o-transition: .3s ease-in;
    transition: .3s ease-in;
}

#gnav li a:hover:after {
    bottom: -8px;
    opacity: 1;
    visibility: visible;
}
#gnav li .dropdown li a:after{
  content: none;
}

#gnav ul {
    position: relative;
    padding: 0;
}
#gnav ul li{
  padding: 3% 0;
}

.accordion-body .on{
  transition: 2s else;
}
.accordion-body .on:hover{
color: #d1b584;
  font-weight: bold;
}
.accordion-body .on:after {
    content: "\f078";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #d1b584;
    transition: .2s ease-in;
    transform: rotate(0);
    display: inline-block;
    opacity: 1;
}
.accordion-body .on:hover:after{
    transform: rotate(-180deg);
    opacity: 0;
}

#gnav li .dropdown li{
  padding: 0.5%;
}

#gnav li ul {
    display: block;
    background: #d1b584;
    padding: 20px;
    position: absolute;
    overflow: hidden;
    height: 0;
    box-sizing: border-box;
    top: 80px;
    width: 1000px;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
            visibility: hidden;
}

#gnav li ul:before {
    display: block;
    position: absolute;
    content: "";
    border-top: 10px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 10px solid #d1b584;
    border-left: 10px solid transparent;
    top: -20px;
    left: 40%;
    z-index: 3;
}
#gnav li:hover ul {
    height: auto;
    opacity: 1;
    overflow: inherit;
    visibility: inherit;
}
.megamenu {
    height: 0px;
    opacity: 0;
    overflow: hidden;
    transition: all .2s ease-in;
    z-index: 3;
}

#gnav li.on2 .dropdown:before{
  left: 54%;
}

#gnav li ul li {
    display: inline-block;
    width: 24%;
}

#gnav li ul li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    color: #fff;
}

#gnav li ul li span {
    display: block;
    background: #fff;
    border-radius: 50%;
    width: 50px;
    height: 50px;
    margin-right: 5px;
    padding: 7px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#gnav li ul li span img {
    width: auto;
    height: 100% !important;
    max-width: none !important;
}

.accordion-inner .sp_menu {
    display: none;
}


/* A-Bisu編集用 */
#wrapper[data-element-id] {
    padding-top: 0 !important;
}

[data-element-id]#gnav ul {
    position: relative;
    display: block;
}

[data-element-id].greeting .img:before {
    content: none;
}

[data-element-id].recruit .about li:after {
    display: none;
}

[data-element-id]#gnav ul.sp_menu {
    background: #eee;
    padding: 10px;
    margin-bottom: 10px;
}

[data-element-id].accordion-inner li.sp {
    display: block;
    border-bottom: 1px dotted;
    padding: 8px;
}

[data-element-id]#gnav ul li {
    border-bottom: 1px dotted;
    padding: 8px;
}

[data-element-id]#gnav ul.sp_menu:before {
    content: 'スマホ用ページ名編集';
    display: block;
    background: #000;
    color: #fff;
    padding: 5px;
}

[data-element-id].on {
    margin-bottom: 50px;
}

[data-element-id]#gnav li ul {
    position: relative;
    top: 0;
}

[data-element-id]#gnav li ul li {
    border-bottom: none;
}

[data-element-id].btn_fix {
    top: 0;
}

[data-element-id]#gnav li a:after {
    content: none;
}

[data-element-id].case_detail dt.fukidashi span {
    z-index: 2;
}

[data-element-id]#footer {
    text-align: center;
}

[data-element-id].contact_ul.sp {
    display: inline-block;
    margin-top: 30px;
    text-align: center;
}

[data-element-id].contact_ul.sp:before {
    content: 'スマホ用リンク編集';
    display: block;
    background: #000;
    color: #fff;
    padding: 5px;
}

[data-element-id].totop {
    margin-left: auto;
}

/* top_recruit */
[data-element-id].recruit_box {
    overflow: initial;
    height: initial;
}

[data-element-id].recruit_box .bd {
    display: none;
}

[data-element-id].recruit_box .txt {
    position: relative;
    width: 38%;
    padding-left: 50px;
    margin-bottom: 50px;
}

[data-element-id].recruit_box .bkimg {
    position: relative;
    top: 0;
    height: 50vh;
    overflow: hidden;
    z-index: 2;
}

[data-element-id].bkimg img {
    left: 0;
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
        transform: translateX(0%);
}

[data-element-id].first .about .bg {
    position: relative;
    right: 0;
}

[data-element-id].first .flow dt .no_icon span {
    position: relative;
    top: 0;
    left: 0;
}

[data-element-id].tel_g_btn .btn_txt {
    position: relative;
    top: 0;
    left: 0;
    z-index: 1;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
        transform: translate(0, -50%);
    color: #413e3e;
}

[data-element-id].first .flow li .tel a {
    opacity: 1;
}

[data-element-id]#gnav.fixed {
    position: relative;
}

[data-element-id]#gnav li.sp {
    display: block;
}

[data-element-id].tel_g_btn .tel_box {
    opacity: 1;
    visibility: visible;
}

[data-element-id].accordion-body .logo {
    display: block;
}

#gnav .res_li {
    border-bottom: none;
    margin-top: 1rem;
}

#gnav .res_li a {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
@media only screen and (max-width: 1024px) {
    #gnav li ul {
        display: none;
        font-weight: 700;
        font-size: 16px;
    }
    #gnav .on span{
        color: #fff!important;
    }
    .accordion-inner .on{
        padding: 10px 15px!important;
        font-weight: bold;
        font-size: 16px;
        background: #d1b584;
    }
    .accordion-inner .sp_menu {
        display: block;
        width: 100%;
        padding: 0 0 20px 0!important;
    }
    .accordion-inner .sp_menu dd a{
    display: block;
    color: #000;
    text-align: left;
    padding: 10px 15px;
    border: none;
    }
    #gnav ul li span{
        color: #fff;
        display: block;
    }
    .accordion-body .on:after{
        content: none;
    }
}

/* news */
.index .info_in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.index .info h2 {
    font-weight: 500;
    font-size: 30px;
    width: 18%;
    padding-right: 5%;
    color: #d1b584;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.index .info .info_list {
    width: 82%;
}

.index .info .info_list dl {
    padding-top: 20px;
    padding-bottom: 15px;
    border-bottom: 1px solid #413e3e;
}

.index .info .info_list dl:first-of-type {
    padding-top: 0;
}

.index .info dt {
    width: 25%;
    padding-right: 5%;
    font-weight: 500;
}

.index .info dd {
    width: 75%;
    font-weight: 500;
}

.link {
    display: block;
    text-align: right;
    margin-top: 30px;
    color: #d1b584;
}

.link:before {
    content: '';
    display: inline-block;
    width: 8px;
    height: 8px;
    margin: 0 10px;
    border-top: 1px solid #d1b584;
    border-right: 1px solid #d1b584;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
}

/* greeting*/
.greeting {
    position: relative;
}

/* .greeting .inner {
    position: relative;
    height: 100%;
} */

.greeting .img {
    position: relative;
    overflow: hidden;
    width: 100vw;
    margin-left: calc(50% - 50vw);
}

.greeting .img:before {
    content: '';
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-image: url(/import/tenant_1/160.16.131.46/html/img/01_index/concept_cover.png);
    background-position: top;
    background-size: cover;
    background-repeat: no-repeat;
}

.greeting .img img {
    display: block;
    margin: auto;
    height: 100% !important;
    width: 70%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}

.catch {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: absolute;
    right: 7vw;
    z-index: 2;
    font-size: 3vw;
    font-weight: 500;
    line-height: 160%;
    margin-top: 80px;
    margin-bottom: 0;
}

.greeting .txt {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: absolute;
    left: 7vw;
    top: 0;
    z-index: 2;
    font-size: 1.5vw;
    font-weight: 500;
    line-height: 160%;
    margin-top: 80px;
}
[data-element-id].catch,
[data-element-id].greeting .txt{
  writing-mode: lr;
  position: absolute!important;
  max-width: 40%;
}


/* top_3strong */

.strong li {
    width: 31.33333%;
    margin: 0 1% 5%;
}

.strong .tit {
    color: #d1b584;
    margin-bottom: 10px;
    font-size: 20px;
    font-weight: 700;
}

@media only screen and (max-width: 1024px) {
    .strong li {
        width: 48%;
        margin: 0 .66666666666% 5%;
    }
}
@media only screen and (max-width: 599px) {
    .strong li {
        width: 100%;
        margin: 0 .66666666666% 5%;
    }
}
/* trouble*/
.index .trouble {
    position: relative;
}
.index .trouble ul {
    margin-top: 70px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.index .trouble li {
    width: 25%;
    margin: 0px 35px;
}

.index .trouble li a {
    display: block;
    margin-bottom: 30px;
    background: #fff;
    border-radius: 50%;
    position: relative;
    -webkit-transition: -webkit-transform ease-out 0.1s, 0.2s;
    -webkit-transition: 0.2s, -webkit-transform ease-out 0.1s;
    transition: 0.2s, -webkit-transform ease-out 0.1s;
    -o-transition: transform ease-out 0.1s, 0.2s;
    transition: transform ease-out 0.1s, 0.2s;
    transition: transform ease-out 0.1s, 0.2s, -webkit-transform ease-out 0.1s;
}


.index .trouble li .in {
    text-align: center;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 90%;
    padding: 5%;
    -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
}

.index .trouble li .in img {
    height: auto;
    width: 100px!important;
}

.index .trouble li a:before {
    content: '';
    display: block;
    padding-top: 100%;
}

.index .trouble li a:after {
    pointer-events: none;
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    content: '';
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    top: 0;
    left: 0;
    padding: 0;
    z-index: -1;
    -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1);
    box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1);
    opacity: 0;
    -webkit-transform: scale(0.9);
    -ms-transform: scale(0.9);
        transform: scale(0.9);
}

.index .trouble li a:hover {
    background: rgba(209, 181, 132, .5);
    -webkit-transform: scale(0.93);
    -ms-transform: scale(0.93);
        transform: scale(0.93);
    color: #d1b584;
}

.index .trouble li a:hover:after {
    -webkit-animation: sonarEffect 1.3s ease-out 75ms;
    animation: sonarEffect 1.3s ease-out 75ms;
}

@-webkit-keyframes sonarEffect {
    0% {
        opacity: 0.3;
    }

    40% {
        opacity: 0.5;
        -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
        box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
    }

    100% {
        -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
        box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0;
    }
}

@keyframes sonarEffect {
    0% {
        opacity: 0.3;
    }

    40% {
        opacity: 0.5;
        -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
        box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
    }

    100% {
        -webkit-box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
        box-shadow: 0 0 0 2px rgba(255, 255, 255, 0.1), 0 0 10px 10px #d1b584, 0 0 0 10px rgba(255, 255, 255, 0.5);
        -webkit-transform: scale(1.2);
        transform: scale(1.2);
        opacity: 0;
    }
}


.index .trouble li span {
    display: block;
    margin-top: 20px;
    text-align: center;
    font-size: 17px;
    font-weight: 700;
}

/* top-recruit */
.recruit-bunner{
    position: relative;
    margin: auto;
    z-index: 1;
}
.recruit-bunner .pic {
    position: absolute;
    height: 100%;
    top: 0;
    z-index: 1;
}
.recruit-bunner .pic:before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    height: 100%;
    width: 100%;
    display: block;
    background: rgba(236,250,234,.6);
}
.recruit-bunner .pic img{
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    height: 100% !important;
    width: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}
.recruit-bunner .in {
    padding: 4%;
    z-index: 2;
    position: relative;
}
.recruit-bunner dt{
    color: #48954d;
    font-weight: 700;
}
.recruit-bunner .more a {
    background: #48954d;
}
.recruit-bunner .more a:hover:after{
    background: #356b39;
}
.recruit-bunner .more{
    margin-top: 35px;
}

/* point */
.index .guide h2 {
    text-align: center;
    position: relative;
}

.index .guide ul {
    margin-top: 80px;
}

.index .guide li {
    width: 33.3%;
}

.index .guide li {
    display: block;
    background: #fdf3d2;
    background-color: #fdf3d2;
    background-image: -o-radial-gradient(#ffffff 12%, transparent 16%),
        -o-radial-gradient(#ffffff 12%, transparent 16%);
    background-image: radial-gradient(#ffffff 12%, transparent 16%),
        radial-gradient(#ffffff 12%, transparent 16%);
    background-position: 0 0, 9px 9px;
    background-size: 16px 16px;
    padding: 40px;
}

.index .guide li:nth-of-type(even) {
    background-color: #fce9c0;
    background-image: -o-radial-gradient(#ffffff 12%, transparent 16%),
        -o-radial-gradient(#ffffff 12%, transparent 16%);
    background-image: radial-gradient(#ffffff 12%, transparent 16%),
        radial-gradient(#ffffff 12%, transparent 16%);
    background-position: 0 0, 9px 9px;
    background-size: 16px 16px;
}

.index .guide li p {
    max-width: 100px;
    height: auto;
    margin: auto;
}

.index .guide li dl {
    margin: 30px 0;
}

.index .guide li dt {
    font-size: 28px;
    font-weight: 700;
    text-align: center;
    margin-bottom: 20px;
}


/* recruit */
.recruit_box {
    height: 50vh;
    position: relative;
    overflow: hidden;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.recruit_box .txt {
    position: absolute;
    width: 38%;
    padding-left: 50px;
    z-index: 2;
}

.recruit_box h2 {
    text-align: center;
    font-weight: 700;
    font-size: 40px;
    color: #d1b584;
    margin-bottom: 30px;
}

.recruit_box h2 span {
    display: block;
    font-size: 24px;
    color: #413e3e;
    line-height: 150%;
}

.recruit_box .pic {
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
        transform: translateY(-50%);
}

.recruit_box:before {
    content: '';
    display: block;
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    background: -webkit-gradient(linear, left top, right top, from(#fff), to(transparent));
    background: -o-linear-gradient(left, #fff, transparent);
    background: linear-gradient(to right, #fff, transparent);
}

.recruit_box .bd {
    position: relative;
    height: 100%;
    width: 100%;
}

.recruit_box .bd .top {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background: #fce9c0;
    height: 10px;
    width: 100%;
    z-index: 1;
}

.recruit_box .bd .right:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 10px 0 0;
    border-color: #fce9c0 transparent transparent transparent;
    z-index: 2;
}

.recruit_box .bd .right {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    background: #d1b584;
    height: 100%;
    width: 10px;
    z-index: 1;
}

.recruit_box .bd .bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    background: #d1b584;
    height: 10px;
    width: 100%;
    z-index: 1;
}

.recruit_box .bd .left {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background: #fce9c0;
    height: 100%;
    width: 10px;
    z-index: 1;
}

.bkimg {
    top: 50%;
}

.bkimg img {
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
}

/* map */
.map:after {
    display: block;
    content: "";
    padding-top: 30%;
}

@media only screen and (max-width: 1024px) {

    .recruit_box {
        height: 40vh;
    }

    .recruit_box .bkimg img {
        width: 120% !important;
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
        left: 0;
    }

    .mv_catch {
        background: rgba(255, 255, 255, .75);
        padding: 20px;
        width: 300px;
        height: 300px;
        border-radius: 50%;
        text-align: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }

    .mv_catch span.text {
        font-size: 24px;
    }

    /* nav */
    #gnav li a:after {
        content: none;
    }

    /* info */
    .index .info h2 {
        width: 100%;
        margin-bottom: 10px;
    }

    .index .info .info_list {
        width: 100%;
    }

    #gnav li .dropdown {
        display: none;
    }

    #gnav li .dropdown:before {
        display: none;
    }

    #gnav li ul li {
        width: 100%;
    }

    /* greeting */
    .greeting {
        padding: 40px 0;
        margin: auto;
    }

    .catch {
        -webkit-writing-mode: inherit;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
        position: relative;
        right: 0vw;
        z-index: 2;
        font-size: 24px;
        font-weight: 700;
        line-height: 180%;
        margin: auto;
        text-align: center;
    }

    .greeting .txt {
        -webkit-writing-mode: inherit;
        -ms-writing-mode: inherit;
        writing-mode: inherit;
        position: relative;
        left: 0vw;
        z-index: 2;
        font-size: 18px;
        margin: 10px 0 0 0;
        text-align: center;
    }

    .greeting .inner {
        height: auto;
    }

    .greeting .img {
        position: relative;
        top: 0;
        width: 100%;
        height: 60%;
        overflow: hidden;
        margin-left: inherit;
        margin-right: auto;
    }

    .greeting .img:before {
        content: '';
        height: 100%;
    }

    /* trouble */
    .index .trouble li {
        width: 31%;
        margin: 0px 1%;
    }
    .index .trouble li span{
        margin-top: 10px;
    }
    .index .trouble li .in img{
        height: auto;
        width: 70px!important;
    }

    /* recruit */
    .recruit_box .txt {
        position: absolute;
        width: 100%;
        padding: 30px;
        z-index: 2;
    }

    .bkimg {
        position: absolute;
        top: 0%;
    }

    .bkimg img {
        min-width: initial !important;
        height: 100% !important;
        width: auto !important;
        max-width: none !important;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    }
}

@media only screen and (max-width: 599px) {
    .recruit_box {
        height: 30vh;
    }

    .recruit_box .bkimg img {
        width: 170% !important;
        left: -130px;
    }
    .recruit-bunner{
        width: 100%;
    }
.recruit-bunner .pic img{
    -o-object-position: right center;
    object-position: right center;
    font-family: 'object-fit: cover; object-position: right center;';
}
    .mv_catch {
        background: rgba(255, 255, 255, .75);
        padding: 20px;
        width: 230px;
        height: 230px;
        border-radius: 50%;
        text-align: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }

    .mv_catch span.text {
        font-size: 18px;
    }

    .mv_catch h1.mb40 {
        margin-bottom: 20px;
    }

    .index .info dt,
    .index .info dd {
        width: 100%;
    }

    .greeting {
        width: 98%;
        margin: auto;
    }

    .greeting .txt {
        line-height: 160%;
        font-size: 14px;
    }

    .catch {
        font-size: 18px;
    }

    .icon img {
        padding: 20px;
    }

    /* trouble  */
    .index .trouble li {
        width: 40%;
        margin: 0px 10px;
    }

    .index .trouble li span {
        margin-top: 5px;
    }
    .index .trouble li .in img{
        height: auto;
        width: 50px!important;
    }

    /* point */
    .point li {
        width: 96%;
        margin: 0 auto 30px;
    }

    .point h2 {
        font-size: 24px;
    }

    .point h2 .sub_head {
        font-size: 18px;
    }

    .point h2 .nb {
        font-size: 50px;
    }

    .point ul {
        margin-top: 30px;
    }

    .point dl {
        margin-top: 10px;
    }

    .point dt {
        font-size: 18px;
        margin-bottom: 10px;
    }

    /* guide */
    .index .guide ul {
        margin-top: 40px;
    }

    .index .guide li {
        width: 100%;
        padding: 20px
    }

    .index .guide li dl {
        margin: 20px 0;
    }

    .index .guide li dt {
        height: auto;
        font-size: 24px;
        margin-bottom: 10px;
    }

    /* offical_bunner */
    .offical_bunner {
        display: block;
    }

    .offical_bunner .link_2 {
        width: 100%;
        font-size: 18px;
    }

    .offical_bunner .link_2:before {
        content: '';
        display: inline-block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 5px 0 5px 8px;
        border-color: transparent transparent transparent #fff;
        margin-right: 10px;
    }

    .offical_bunner .logo {
        width: 100%;
        background: #fff;
        padding: 20px;
        color: #37a8d6;
        text-align: center;
        font-size: 24px;
        font-weight: 700;
        border-radius: 0 0 25px 25px;
    }

    /* recruit_box */
    .recruit_box h2 {
        font-size: 30px;
    }

    .recruit_box h2 span {
        font-size: 17px;
    }

    /* map */
    .map:after {
        padding-top: 50%;
    }

    .heightline-six-text {
        height: auto !important;
    }
}

.slick-slide {
    height: auto !important;
}

[data-element-id].slider-area ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

[data-element-id].slider-area ul li {
    width: calc(100% / 6);
}


/*-------------------------------

	subpage

-------------------------------*/
.subtitle {
    position: relative;
}

.sub_inner {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
}

.sub_inner .inn {
    margin: auto;
    max-width: 1200px;
    padding: 2%;
}

.subtitle .h1 {
    font-size: 12px;
    width: 30%;
}

.title {
    position: relative;
    z-index: -1
}

.title h2 {
    position: absolute;
    top: 50%;
    left: 50%;
    color: #fff;
    z-index: 2;
    font-size: 42px;
    text-align: center;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    width: 70%;
    text-shadow: 1px 1px 3px #333333;
}

.title_img {
    position: relative;
    overflow: hidden;
}

.title_img:after {
    content: '';
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 33%;
    display: block;
}

.title_img img {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%!important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}

.title_img:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    background: #e3d3b5;
    opacity: .3;
    z-index: 1;
}

.breadcrumbs {
    margin-bottom: 20px;
}

.breadcrumbs li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.breadcrumbs li a:after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 6px;
    border-color: transparent transparent transparent #413e3e;
    display: inline-block;
    margin: 0 20px;
}

.breadcrumbs .inner {
    padding: 10px 0;
}

@media only screen and (max-width: 1024px) {
    .title h2 {
        font-size: 33px;
        width: 90%;
    }
}

@media only screen and (max-width: 599px) {
    .title h2 {
        font-size: 22px;
    }

    .breadcrumbs {
        margin-bottom: 10px;
    }

    .breadcrumbs a,
    .breadcrumbs li {
        font-size: 12px;
    }

    .breadcrumbs li a:after {
        margin: 0 10px;
    }
}

/*-------------------------------

	info

-------------------------------*/
/* 3つの強み */
.info .strong h2 {
    text-align: center;
    font-size: 48px;
    font-weight: 700;
    display: inline-block;
    position: relative;
}

.info .strong h2:after {
    content: '';
    position: absolute;
    bottom: 10px;
    left: 0;
    background: #fce9c0;
    height: 15px;
    width: 100%;
    z-index: -1;
}

.info .strong h2 .sub_head {
    font-size: 30px;
    display: block;
}

.info .strong h2 .nb {
    font-size: 70px;
    color: #d1b584;
}

.info .strong ul {
    margin-top: 50px;
}

.info .about p {
    text-align: center;
    line-height: 200%;
}

.info .doctor .pic {
    width: 28%;
    overflow: hidden;
    position: relative;
}

.info .doctor .pic:before {
    content: '';
    display: block;
    padding-top: 130%;
}

.info .doctor .pic img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    min-height: 100%;
    min-width: 100%;
}
.info .d_info{
    width: 65%;
}

.info .slider {
    width: 100%;
    margin: auto;
}
.info .slide_pic {
    overflow: hidden;
    position: relative;
}

.info .slide_pic {
    content: '';
    display: block;
    padding-top: 58%;
}

.info .slide_pic img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    min-height: 100%;
    min-width: 100%;
}

.info .slide_detail {
    margin-top: 40px;
    width: 70%;
    margin: 40px auto 0;
}
.info .slider2 li{
margin: 0 45px;
}

.info .slide_detail dt {
    font-weight: 700;
    font-size: 20px;
    text-align: center;
    position: relative;
    width: 100%;
    padding: 0 30px;
}

.info .slide_detail dt:before {
    content: '';
    position: absolute;
    display: inline-block;
    height: 2px;
    width: 20px;
    background: #d1b584;
    top: 50%;
    left: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
        transform: translate(0, -50%);
}

.info .slide_detail dt:after {
    content: '';
    position: absolute;
    display: inline-block;
    height: 2px;
    width: 20px;
    background: #d1b584;
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
        transform: translate(0, -50%);
}

/* ボタンの配置などの調整 */
.slider2 .slick-prev {
    background: #d1b584;
    border-radius: 50%;
    right: 35px;
    top: calc(50% - 40px);
    width: 50px;
    height: 50px;
    z-index: 1;
    left: 8.4%;
}

.slider2 .slick-prev:before {
    content: '';
}

.slider2 .slick-prev:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 10px;
    border-left: 3px solid #fff;
    border-bottom: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-90%, -40%) rotate(45deg);
    -ms-transform: translate(-90%, -40%) rotate(45deg);
        transform: translate(-90%, -40%) rotate(45deg);
}

.slider2 .slick-next {
    background: #d1b584;
    border-radius: 50%;
    top: calc(50% - 40px);
    right: 35px;
    width: 50px;
    height: 50px;
    z-index: 1;
    right: 8.4%;
}

.slider2 .slick-next:before {
    content: '';
}

.slider2 .slick-next:after {
    content: '';
    display: inline-block;
    width: 12px;
    height: 12px;
    margin: 0 10px;
    border-right: 3px solid #fff;
    border-top: 3px solid #fff;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-130%, -40%) rotate(45deg);
    -ms-transform: translate(-130%, -40%) rotate(45deg);
        transform: translate(-130%, -40%) rotate(45deg);
}

.slider2 .slick-prev:hover,
.slider2 .slick-prev:focus,
.slider2 .slick-next:hover,
.slider2 .slick-next:focus {
    display: block;
    background: #d1b584;
}


@media only screen and (max-width: 599px) {
    .info .strong h2 {
        font-size: 24px;
    }
    .info .strong h2 .sub_head {
        font-size: 18px;
    }

    .info .strong h2 .nb {
        font-size: 50px;
    }

    .info .doctor .pic {
        width: 100%;
        margin-bottom: 20px;
    }
    .info .d_info{
        width: 100%;
    }

    .spec_box {
        margin-bottom: 15px;
    }
    .info .slider2 li{
      margin: 0 20px;
    }

    .slider2 .slick-prev,
    .slider2 .slick-next {
        width: 30px;
        height: 30px;
    }

    .slider2 .slick-prev {
        left: 6.7%;
    }

    .slider2 .slick-next {
        right: 6.7%;
    }

    .slider2 .slick-prev:after,
    .slider2 .slick-next:after {
        width: 10px;
        height: 10px;
    }
}

/* ドクター紹介 */
.spec_box {
    margin-bottom: 40px;
}

.spec_box dt {
    font-size: 18px;
    font-weight: 700;
    color: #d1b584;
    margin-bottom: 10px;
}

.spec_box dd {
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 20px;
}


/*-------------------------------

	02_clinic

-------------------------------*/
.history dl {
    border-bottom: 1px solid #bfbfbf;
    padding: 10px 0;
}

.history dt {
    width: 22%;
}

.history dd {
    width: 78%;
}
/* オレンジのボックス */
.detail_box {
    padding: 25px;
    border: 2px dashed #d1b584;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    position: relative;
    font-weight: 700;
    font-size: 18px;
}

.detail_box:after {
    content: '';
    position: absolute;
    bottom: -2px;
    right: 0;
    background: url(/import/tenant_1/160.16.131.46/import/tenant_2/133.167.103.63/html/images/04.kibami/home_bg.png) no-repeat bottom;
    height: 99px;
    width: 243px;
    z-index: -1;
}

.detail_box span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 85%;
}

.detail_box img {
    display: block;
    margin-right: 10px;
    width: 6%;
}

.detail_box dl {
    width: 100%;
}

.detail_box dt {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.detail_box dt span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.detail_box dd {
    padding-left: calc(6% + 10px);
    padding-right: 20px;
    padding-top: 15px;
    padding-bottom: 40px;
    font-weight: 400;
}

.detail_box dd ul {
    margin-top: 10px;
}

.detail_box dd li {
    padding-left: 1em;
    text-indent: -1em;
}

.detail_box dd li:before {
    content: '＊';
    margin-right: 5px;
}

.detail_box.doctor {
    position: relative;
}

.detail_box.doctor:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 37px 37px 0;
    border-color: transparent #d1b584 transparent transparent;
    z-index: -1;
}
/*-------------------------------

	03_first

-------------------------------*/
.first h3 {
    font-size: 24px;
    font-weight: 700;
    color: #d1b584;
    text-align: center;
    margin-bottom: 70px;
}

.first .about h3 {
    position: relative;
}

.first .about h3:after {
    content: '';
    position: absolute;
    display: block;
    height: 100%;
    width: 100%;
    bottom: -20%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
        transform: translate(-50%, 0);
    background: url(/import/tenant_1/160.16.131.46/html/img/03_first/titlle_beige.png) center top no-repeat;
    background-size: contain;
    z-index: 1;
}

.first .about {
    position: relative;
}

.first .about .bg {
    position: absolute;
    right: 20vw;
    bottom: 0;
    z-index: -1;
    opacity: .3;
}

.first .flow li {
    margin-bottom: 60px;
}

.first .flow dd ul li {
    margin: 0 auto 30px;
    width: 180px;
}

.first .flow li .tel {
    display: block;
    margin-top: 10px;
}

.first .flow li .tel a {
    display: block;
    text-align: center;
    font-size: 26px;
}

.first .flow .btn_03:hover {
    cursor: pointer;
}

.tel_g_btn {
    position: relative;
    margin-right: 0;
}

.tel_g_btn .btn_txt {
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    color: #fff;
    width: 100%;
    text-align: center;
}

.first .flow dl {
    width: 50%;
}

.first .flow dt {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 20px;
}

.first .flow dt .tit {
    font-size: 20px;
    font-weight: 700;
    color: #d1b584;
}

.first .flow dd {
    margin-left: 69px;
}

.first .flow dt .no_icon {
    position: relative;
    margin-right: 20px;
}

.first .flow dt .no_icon span {
    font-size: 18px;
    font-weight: 700;
    color: #d1b584;
    display: block;
    position: absolute;
    top: 10px;
    left: 20px;
}

.first .flow dt span img {
    display: block;
    width: 50px;
}

.imgbox {
    text-align: center;
    width: 40%;
    overflow: hidden;
    position: relative;
}

.imgbox img {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    min-height: 100%;
    min-width: 100%;
}

.tel_g_btn .tel_box {
    opacity: 0;
    visibility: hidden;
    position: absolute;
    z-index: 3;
    bottom: -110px;
    left: 50%;
    width: 280px;
    padding: 10px;
    text-align: center;
    border: 1px solid #d1b584;
    font-size: 18px;
    font-weight: bold;
    color: #d1b584;
    background: #fff;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.tel_g_btn .tel_box a {
    color: #d1b584;
    font-size: 20px;
}

.is-parent.tel_g_btn .tel_box {
    opacity: 1;
    visibility: visible;
}

.tel_g_btn .tel_box:before {
    content: "";
    position: absolute;
    top: -24px;
    left: 50%;
    margin-left: -15px;
    border: 12px solid transparent;
    border-bottom: 12px solid #FFF;
    z-index: 2;
}

.tel_g_btn .tel_box:after {
    content: "";
    position: absolute;
    top: -28px;
    left: 50%;
    margin-left: -17px;
    border: 14px solid transparent;
    border-bottom: 14px solid #d1b584;
    z-index: 1;
}

.imgbox .bd,
.telbox .bd {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.imgbox .bd .top,
.telbox .bd .top {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background: #fce9c0;
    height: 7px;
    width: 100%;
    z-index: 1;
}

.imgbox .bd .right:after,
.telbox .bd .right:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 7px 0 0;
    border-color: #fce9c0 transparent transparent transparent;
    z-index: 2;
}

.imgbox .bd .right,
.telbox .bd .right {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    background: #d1b584;
    height: 100%;
    width: 7px;
    z-index: 1;
}

.imgbox .bd .bottom,
.telbox .bd .bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    background: #d1b584;
    height: 7px;
    width: 100%;
    z-index: 1;
}

.imgbox .bd .bottom:after,
.telbox .bd .bottom:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 7px 7px 0 0;
    border-color: #fce9c0 transparent transparent transparent;
    z-index: 2;
}

.imgbox .bd .left,
.telbox .bd .left {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    background: #fce9c0;
    height: 100%;
    width: 7px;
    z-index: 1;
}

.first .flow dd ul {
    margin-top: 20px;
}

.first .flow dd ul li:last-of-type {
    margin-right: 0;
}

.first .flow .btn_03 {
    margin-right: 30px;
}

.first .flow .btn_03:last-of-type {
    margin-right: 0;
}

.flow_list {
    margin-bottom: 30px;
}

.first .flow li .flow_list li {
    margin-bottom: 5px;
    list-style-type: disc;
    list-style-position: inside;
    padding-left: 1em;
    text-indent: -1em;
    width: 100%;
}

.sp-tel {
    display: none;
}

.sp-tel[data-element-id] {
    display: block;
}

.sp-tel[data-element-id]:before {
    content: "スマホ画面用の電話番号リンクです。要素をダブルクリックし、htmlから電話番号を編集してください";
    display: block;
    font-size: 10px;
    background-color: #333;
    padding: 5px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: #fff;
    line-height: 120%;
}

@media only screen and (max-width: 1024px) {
    .first .flow dd ul li {
        width: 100%;
        margin-right: 0;
        margin-bottom: 15px;
    }

    .tel_g_btn .btn_txt {
        position: absolute;
        top: 50%;
        left: 50%;
        z-index: 1;
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
        color: #fff;
    }

    .first .flow dd ul li.sp-tel {
        display: block;
        margin-bottom: 0;
    }
}

@media only screen and (max-width: 599px) {
    .first h3 {
        font-size: 20px;
        margin-bottom: 40px;
    }

    .first .flow li {
        margin-bottom: 40px;
    }

    .first .flow dl {
        width: 100%;
    }

    .first .flow dd {
        margin-left: 0px;
    }

    .imgbox {
        margin-top: 20px;
        width: 100%;
    }

    .first .flow .more {
        margin-right: 0;
    }
    .first .flow .more a{
        width: 100%;
    }
}

/*-------------------------------

	case_page

-------------------------------*/
.iae {
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: end;
}

/* 見出しのリボン */
.reborn {
    text-align: center;
    position: relative;
    color: #fff;
    text-shadow: 0px 0px 3px #333333;
    width: 9%;
    background: #d1b584;
    padding: 30px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.reborn span {
    -webkit-writing-mode: tb-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: tb-rl;
    font-size: 22px;
    display: block;
    line-height: 120%;
    text-align: left;
}

/* .reborn:after {
    content: '';
    position: absolute;
    left: 0;
    top: 100%;
    height: 15px;
    width: 100%;
    background: linear-gradient(to bottom left, #d1b584 49%, transparent 51%) top left/ 51% 100% no-repeat, linear-gradient(to bottom right, #d1b584 51%, transparent 51%) top right / 51% 100% no-repeat;
} */


/* 見たまま編集 */
[data-element-id].reborn{
  width: auto;
  margin-bottom: 2%;
  padding: 0 2%;
}
[data-element-id].reborn span {
    writing-mode: lr;
}

/* コンテンツ幅 */
.con_inn {
    width: 85%;
}

/* h3見出し */
.con_inn h3 {
    font-size: 20px;
    padding-bottom: 10px;
    margin-bottom: 20px;
    color: #d1b584;
    border-bottom: 1px solid #d1b584;
    display: inline-block;
    line-height: 150%;
}

/* コンテンツ */
.sub:not(:last-of-type){
margin-bottom: 90px;
}
.sub:nth-of-type(even)>.flexb{
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
}
/* リスト */
.attention {
    margin-top: 20px;
}

.attention li {
    padding-left: calc(1em + 2%);
    padding-bottom: 2%;
    margin-bottom: 2%;
    position: relative;
    border-bottom: 1px dotted #b1afad;
}
.attention li.heightLine-list1,
.attention li.heightLine-list2{
    -webkit-box-sizing: content-box;
            box-sizing: content-box;
}
.attention li:last-of-type{
    margin-bottom: 0;
}

.attention li:before{
    content: '\f00c';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #cc1f1f;
    display: inline-block;
    position: absolute;
    left: 0;
}

/* メリット */
.merit_area {
    margin-top: 0;
    margin-bottom: 20px;
}


.merit_area.list_box .merit_list {
    width: 48%;
}

.merit_list {
    margin-bottom: 30px;
}

.merit_list:last-of-type {
    margin-bottom: 0;
}

.mini_fukidashi {
    position: relative;
    font-weight: 700;
    letter-spacing: -.15em;
    text-align: center;
    display: block;
    width: 30%;
    margin-bottom: 20px;
    z-index: 1;
}

.mini_fukidashi:before {
    content: '';
    display: block;
    padding-top: 70%;
}

.mini_fukidashi span {
    display: block;
    width: 70%;
    margin: auto;
    position: absolute;
    top: 40%;
    left: 10%;
    -webkit-transform: translate(10%, -50%);
    -ms-transform: translate(10%, -50%);
        transform: translate(10%, -50%);
}

.mini_fukidashi:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    background: url(/import/tenant_1/160.16.131.46/html/img/common/mini_fukidashi_orange.png) top center no-repeat;
    height: 100%;
    width: 100%;
    background-size: contain;
    z-index: -1;
}

.merit_list.demerit .mini_fukidashi:after {
    background: url(/import/tenant_1/160.16.131.46/html/img/common/mini_fukidashi_gray.png) top center no-repeat;
    background-size: contain;
}

/* むし歯になってしまったら */
.c-flow li{
    width: 22%;
    text-align: center;
    position: relative;
}
.c-flow li:not(:last-of-type):after {
    content: '';
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    right: 0;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #413e3e;
    display: inline-block;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.t-flow dl{
    padding-bottom: 30px;
}
.t-flow li:not(:last-of-type){
    position: relative;
    margin-bottom: 15px;
    padding-bottom: 30px;
}
.t-flow li:not(:last-of-type):after {
    content: '';
    width: 0;
    height: 0;
    position: absolute;
    bottom:0;
    left: 10%;
    border-style: solid;
    border-width: 20px 20px 0 20px;
    border-color: #e2d7c2 transparent transparent transparent;
    display: inline-block;
}
.t-flow dt{
    color: #d1b584;
    font-weight: 700;
}
@media only screen and (max-width: 599px) {
  .c-flow li:not(:nth-of-type(odd)):after{
    content: none;
  }
}

/* お子さまが楽しく歯医者に通えるために */
.child-l dl{
    width: 29%;
    background: #fffce7;
    margin: 1%;
    padding: 2%;
    border: 3px dotted #d1b584;
    border-radius: 10px;
    position: relative;
}
.child-l dl:after {
    content: '';
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    left: calc(100% + 25px);
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #413e3e;
    display: inline-block;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
}
.child-l dl:nth-of-type(3n):after,
.child-l dl:last-of-type:after{
  content: none;
}
.child-l dt{
    margin-bottom: 4%;
}

@media only screen and (max-width: 1024px) {
    .sub:not(:last-of-type) {
    margin-bottom: 50px;
}
    .reborn {
        position: relative;
        width: 100%;
        padding: 3% 0;
        margin-bottom: 20px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

/*     .reborn:after {
    content: '';
    left: 0;
    bottom: -19px;
    top: inherit;
    height: 20px;
    width: 100%;
    z-index: 1;
    -webkit-transform: inherit;
        -ms-transform: inherit;
            transform: inherit;
} */

    .reborn span {
        content: '';
        display: block;
        text-align: center;
        -webkit-writing-mode: initial;
        -ms-writing-mode: initial;
        writing-mode: initial;
        font-size: 18px;
        z-index: 2;
        line-height: 120%;
    }

    .con_inn {
        width: 100%;
        margin-top: 10px;
    }

    .mini_fukidashi {
        width: 70%;
    }

    .mini_fukidashi {
        width: 40%;
    }
    .child-l dl{
        width: 48%;
        width: 45%;
        margin: 2%;
    }
    .child-l dl:nth-of-type(2n):after,
    .child-l dl:last-of-type:after{
       content: none!important;
    }
    .child-l dl:nth-of-type(3n):after {
      content: "";
    width: 0;
    height: 0;
    position: absolute;
    top: 50%;
    border-style: solid;
    border-width: 10px 0 10px 10px;
    border-color: transparent transparent transparent #413e3e;
    display: inline-block;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
    }
    .child-l dl:after,
    .child-l dl:nth-of-type(3n):after {
      left: calc(100% + 22px);
    }
}

@media only screen and (max-width: 599px) {
  .sub:not(:last-of-type) {
    margin-bottom: 30px;
}
    .section_box {
        margin-bottom: 40px;
    }

    .about_box.list li,
    .merit_area.list_box .merit_list {
        width: 100%;
        margin-bottom: 30px;
    }

    .about_box.list li:last-of-type {
        margin-bottom: 0;
    }

    .about_box .txt {
        width: 100%;
    }

    .detail_box {
        padding: 20px;
    }

    .detail_box img {
        width: 10%;
    }

    .detail_box dt {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .detail_box dd {
        padding-left: 0;
    }

    .sec_list li {
        width: 100%;
        margin: 0 1.1% 8%;
    }

    .section_g h3 {
        text-align: center;
    }
    .c-flow li{
        width: 48%;
    }
    .t-flow li:not(:last-of-type):after{
        left: 50%;
        -webkit-transform: translateX(-50%);
            -ms-transform: translateX(-50%);
                transform: translateX(-50%);
    }
    .child-l dd.heightline-tit{
      font-size: 14px;
    }
    .child-l dl:after,
    .child-l dl:nth-of-type(3n):after {
      left: calc(100% + 13px);
}
.child-l dd{
  font-size: 12px;
}
.heightLine-list1,
.heightLine-list2{
  height:auto!important;
}
}
/*-------------------------------

    faq

-------------------------------*/
.faq .wave {
    margin-bottom: 100px;
}

.faq dl:not(:last-of-type) {
    margin-bottom: 80px;
}

.question {
    margin-bottom: 30px;
    font-size: 18px;
    font-weight: 700;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.answer {
    font-size: 18px;
    font-weight: 700;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.question p,
.answer p {
    width: 80%;
    padding-top: 15px;
}

.question:before {
    content: 'Q';
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    padding: 15px 20px;
    color: #fff;
    background: #d1b584;
    margin-right: 20px;
}

.answer:before {
    content: 'A';
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    padding: 15px 20px;
    background: #eeeeee;
    margin-right: 20px;
}

@media only screen and (max-width: 599px) {

    .faq .wave {
        margin-bottom: 60px;
    }

    .faq dl:not(:last-of-type) {
        margin-bottom: 40px;
    }

    .question:before {
        padding: 10px 15px;
        margin-right: 10px;
    }

    .answer:before {
        padding: 10px 15px;
        margin-right: 10px;
    }
}
/*-------------------------------

	recruit

-------------------------------*/
.row4 {
    width: 23%;
    margin: 1%;
}
.m40 {
    margin: 40px 0;
}
#rec06 .w100 {
    width: 100%;
    display: block;
}
.area60{
    padding: 60px 0;
}
.reverse {
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
}
.aic {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.recnav li a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%;
    padding: 20px 10px;
    font-size: 18px;
    background: #e3d3b5;
    border: 1px solid #d1b584;
    border-radius: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
}
.bbl10 > dt {
    padding: 5px 5px 5px 20px;
    border-left: 10px solid;
    margin: 20px 0;
}
.bbl10 > dt.g {
    border-color: #d1b584;
}
.w66 {
    width: 66%;
    margin: 1% 0;
}
.recruit h3 span {
    display: block;
}
.flD {
    display: inline-block !important;
    padding: 15px 40px 0;
    background-image: url(/import/tenant_1/160.16.131.46/html/img/16_recruit/leaf2.png), url(/import/tenant_1/160.16.131.46/html/img/16_recruit/leaf.png);
    background-position: left bottom 3px, right bottom 3px;
    background-repeat: no-repeat, no-repeat;
    background-size: 23px, 23px;
}

.rec02item {
    margin-top: 60px;
}
.rec02item .txtbox{
    position: relative;
    padding: 40px 0;
}
.rec02item .txtbox:after {
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
    width: 300%;
    height: 100%;
    background: #e3d3b5;
    content: "";
    z-index: -1;
}
.rec02item .tbox dt {
    margin: 0 0 2em;
}
.rec02item .tbox li {
    margin-bottom: 1em;
}
.rec04list {
    max-width: 700px;
    margin: 0 auto;
    counter-reset: number;
}
.rec04item {
    background: #d1b584;
    padding: 15px;
    margin-bottom: 40px;
}
.rec04item * {
    color: #fff;
}
.rec04item dt {
    position: relative;
    padding-left: 45px;
    padding-right: 1em;
}
.rec04item dt:before {
    position: absolute;
    counter-increment: number;
    content: counter(number);
    top: 0;
    left: 0;
    border-radius: 50%;
    border: 2px solid;
    width: 30px;
    height: 30px;
    text-align: center;
    line-height: 30px;
    font-size: 26px;
}
.recruit03box {
    max-width: 700px;
    margin: 0 auto;
    background: #fff;
    padding: 40px 60px;
}
.rec03item:not(:last-of-type){
    margin-bottom: 2%;
}
.rec04item dd {
    padding-left: 4%;
    border-left: 1px solid;
}
.bgG {
    background: #e8e5dd;
}

@media only screen and (max-width: 1024px) {
    .row4 {
        width: 31.333%;
    }
    .rec04item dt {
        padding-left: 43px;
        font-size: 16px;
    }
    .rec04item dt:before {
        font-size: 18px;
        height: 26px;
        width: 26px;
        line-height: 26px;
    }
}
@media only screen and (max-width: 599px) {
    .row4 {
        width: 48%;
    }
    .w20 {
        width: 100%;
        margin: 2% auto;
    }
    .pic.w30 {
        max-width: 400px;
    }
    .w66 {
        width: 100%;
        margin: 2% auto;
    }
    .recnav li a {
        font-size: 14px;
        padding: 10px;
    }
    .recruit03box {
        padding: 20px;
    }
    .rec04item dt {
        padding-left: 30px;
    }
    .rec04item dt:before {
        font-size: 16px;
        height: 20px;
        width: 20px;
        line-height: 20px;
    }
    .rec04item dd {
        padding-left: 0;
        padding-top: 2%;
        border-left: none;
        border-top: 1px solid;
        margin-top: 0;
    }
}

/*-------------------------------

news & blog

-------------------------------*/
/* 幅 */
.main_list {
    width: 67%;
}

/* カテゴリー・アーカイブ部分 */
.side {
    width: 23%;
}

.cate_box {
    margin-bottom: 70px;
}

.cate_box:last-of-type {
    margin-bottom: 0;
}

.cate_box h4 {
    font-size: 20px;
    background: #d1b584;
    padding: 10px;
    color: #fff;
    text-align: center;
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
}

.cate_box li {
    border-bottom: 1px solid #bfbfbf;
    padding: 15px 20px;
}

.cate_box li a {
    display: block;
    font-weight: 700;
}

/* ページネーション */
.pagenate {
    margin-top: 65px;
}

.pagenate a {
    font-size: 20px;
    display: block;
    padding: 10px 17px;
    font-weight: 700;
    margin-right: 15px;
}

.pagenate .to a {
    background: #d1b584;
    color: #fff;
}

/* 共通 */
.list_contents dd {
    margin-bottom: 10px;
}

.list_contents dd li {
    font-weight: 700;
}

.list_contents dd li:first-of-type,
.blog .list_contents .li_s li:first-of-type {
    margin-right: 20px;
}

.list_contents dt a{
    font-size: 24px;
    color: #d1b584;
    font-weight: 700;
    padding-bottom: 20px;
}

/* ニュース一覧 */
.news .list_contents a {
    display: block;
}

.news .list_contents dl {
    border-bottom: 1px solid #bfbfbf;
    margin-bottom: 20px;
}

/* 詳細 */
.detail_contents dt {
    font-size: 24px;
    color: #d1b584;
    font-weight: 700;
    text-align: center;
    margin-bottom: 50px;
}

.detail_contents dd {
    border-bottom: 1px solid #bfbfbf;
    padding-bottom: 10px;
    margin-bottom: 70px;
}

.detail_contents ul li:first-child {
    font-weight: 700;
    margin-right: 20px;
}

.detail_contents .txt {
    border-bottom: 1px solid #bfbfbf;
    padding-bottom: 100px;
    margin-bottom: 45px;
}

.back {
    display: inline-block;
    font-weight: 700;
    background: #d1b584;
    padding: 15px 30px;
    color: #fff;
    text-align: center;
    -webkit-transition: ease-out 0.2s;
    -o-transition: ease-out 0.2s;
    transition: ease-out 0.2s;
}

.back:hover {
    opacity: 1;
    color: #fff;
    background: #c58f38;
}

.reccomend {
    margin-top: 80px;
}

.reccomend h3 {
    text-align: center;
    margin-bottom: 30px;
}

@media only screen and (max-width: 1024px) {

    /* 幅 */
    .main_list,
    .side {
        width: 100%;
    }

    .pagenate {
        margin-top: 30px;
    }

    .side {
        margin-top: 60px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
            -ms-flex-pack: justify;
                justify-content: space-between;
    }
    .cate_box {
    width: 48%;
}

    .sp_column_r {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    /* ブログ */
    .blog .list_contents li {
        width: 42%;
        margin: 0 20px 40px;
    }
}

@media only screen and (max-width: 599px) {

    /* ページネーション */
    .pagenate {
        margin-top: 30px;
    }

    .pagenate a {
        font-size: 16px;
        padding: 5px 13px;
        margin-right: 7px;
    }

    /* カテゴリー */
    .side {
        margin-top: 40px;
    }
    .side {
      margin-top: 60px;
      display: block;
    }
    .cate_box {
      width: 100%;
      margin-bottom: 30px;
}


    /* 一覧共通 */
    .list_contents a {
        margin-bottom: 15px;
    }

    .list_contents dt {
        font-size: 18px;
        padding-bottom: 15px;
    }

    .list_contents dd {
        margin-bottom: 5px;
    }

    /* 詳細 */
    .detail_contents dt {
        font-size: 18px;
        margin-bottom: 20px;
    }

    .detail_contents dd {
        margin-bottom: 30px;
    }

    .detail_contents dd ul {
        display: block;
    }

    .detail_contents .txt {
        padding-bottom: 50px;
        margin-bottom: 30px;
    }

    .reccomend h3 {
        font-size: 20px;
        text-align: center;
        margin-bottom: 30px;
    }

    /* 詳細ページ */
    .back {
        display: block;
        font-weight: 700;
        background: #d1b584;
        padding: 10px 20px;
        color: #fff;
        text-align: center;
        -webkit-transition: ease-out 0.2s;
        -o-transition: ease-out 0.2s;
        transition: ease-out 0.2s;
    }
}

.main_visual .uk-slidenav-position {
    text-align: center;
    position: relative;
    overflow: hidden;
    min-width: 500px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.main_visual .uk-slidenav-position:after {
    padding-top: 50%;
    content: '';
    display: block;
}

.main_visual .uk-slideshow {
    position: absolute;
    top: 0;
}
.main_visual .uk-slideshow img{
  min-width: 100%;
}

@media only screen and (max-width: 599px) {
.heightLine-title{
  height: auto!important;
}
}

.bg_b .fix_btn.recruit{
  background: #6aa956;
}

/*2026/07/09*/

.testtop .trouble li .pic{
  width: 40%;
  margin-right: auto;
  margin-left: auto;
}

.testtop .trouble li.blueitem .pic{
  width: 50%;
}


@media screen and (min-width:1025px) {
.testtop .trouble li{
  width: 20%;
  margin: 0px 25px;
} 
}
