@charset "utf-8";


body {
    overflow: hidden;
}
/*h2*/
.cparts-id458--05 .cparts-notes-block {
    font-size: max(.4em,12px);
}
.cparts-id458--05 .cparts-notes-block > span {
    line-height: 1.4;
    padding-top: 3px;
}

/*h4*/
h4 {
    font-weight: bold;
}

/*スマホ表示時 比率保持のため*/
img {
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    height: auto;
    max-width: 100%;
}

.sitedesign-headernav-group li.menu-level-0 > a span, .sitedesign-headernav-group li.menu-level-0 > div span {
    font-size: 0.7rem;
}


/*=====================トップページ===========================*/

/*メインビジュアル*/
.main-visual_3column .dec-btn--primary {
    background-color: transparent !important;
    background-image: linear-gradient(90deg, #f29e23, #f76a5d);
}
/*メインビジュアル 余白*/
.siteblock-upper .box {
    margin-bottom: 0px;
}
/*メインビジュアル下 アイコンメニュー*/
.siteblock-upper .naviBox.upperNavi {
    margin-top: 0px;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    margin-bottom: 3rem;
    background-color: #f4f4f4;
    padding: 1rem 0px;
}
.siteblock-upper .upperNavi ul {
    margin-right: 0px !important;
    margin-left: 0px !important;
    width: 100% !important;
}
.siteblock-upper .naviBox li a {
    background-color: transparent !important;
    max-width: 95px;
}

/*お客様の声*/
.testimonials h6 {
    color: #96c519;
    border-bottom-color: #96c519;
    font-weight: bold;
}
.testimonials .cparts-txt-block {
    background-color: #fff !important;
    box-shadow: 2px 2px 7px #00000024;
}
.testimonials .dec-line-pe--light::before {
    border-color: #fff !important;
}

/*予約について（contact）*/
.top_reserve h4 {
    font-weight: bold;
}
.top_reserve .cparts-body-block {
    display: flex;
    flex-direction: column;
}
.top_reserve .cparts-txt-block:last-child {
    margin-top: auto;
    padding-top: 15px;
}


.web-reserve_btn p {
    margin-bottom: 0px;
}
.web-reserve_btn .dec-btn--primary {
    padding: 10px 20px;
    width: calc(100% - 1rem);
}

.top_reserve .tel-number a {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    text-decoration: none;
    font-weight: bold;
}
.top_reserve .tel-number a:hover {
    opacity: 0.5;
}
.top_reserve .tel-number .material-icons {
    font-size: 1.8rem;
    padding-right: 5px;
}
p.tel-number_h {
    margin-bottom: -5px;
}
p.tel-number {
    margin-bottom: 1rem;
}


/*キャンペーンバナー*/
.will_banner ul li {
    border: 1px solid;
    display: inline;
    padding: 3px 13px 4px;
    border-radius: 50px;
}
.will_banner ul {
    padding-left: 0px;
    margin-bottom: 1.5rem;
}
.will_banner h4 {
    padding-left: 0px;
    margin-bottom: 0.6rem;
    margin-top: 0px;
}
.will_banner h4::before {
    display: none;
}

/*=====================会社情報ページ===========================*/
/*ご挨拶*/
.greeting .lay-row {
    align-items: center;
}
/*店舗　電話番号*/
.about_locations .tel-number {
    margin-top: -1.5rem;
    margin-bottom: 0.5rem;
}
.about_locations .tel-number a {
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    text-decoration: none;
    font-weight: bold;
}
.about_locations .tel-number a:hover {
    opacity: 0.5;
}
.about_locations .tel-number .material-icons {
    font-size: 1.5rem;
    padding-right: 5px;
}
.about_locations .dec-btn--primary {
    display: flex;
    align-items: center;
    justify-content: center;
    max-width: 250px;
    margin: 1rem auto 2rem;
}
.about_locations .dec-btn--primary .material-icons {
    padding-left: 5px;
}


/*=====================店舗ページ===========================*/

/*ページタイトル*/
.location_h1 {
    background-color: #000;
}
.location_h1 h1 {
    font-size: 2.25rem !important;
}
.location_h1 .cparts-txt-block::before {
    display: none;
}
.location_h1 .cparts-txt-block {
    max-width: 60%;
}
.location_h1 img {
    opacity: .75;
}


/*特徴*/
.feature h5 {
    font-size: min(2.2vw,24px) !important;
}
/*料金*/
.price table {
    background-color: #fff;
    border: 1px solid #333;
}
.price table th, .price table td {
    border-bottom: 0px;
}
.price table tbody tr:not(:first-child) {
    border-top: 1px solid #ccc;
}
.price thead tr th {
    background-color: #96c519 !important;
    color: #fff;
}

/*スタッフ*/
.staff {
    background-color: #fff;
    padding: 3rem;
    border-radius: 15px;
    box-shadow: 2px 2px 7px #00000024;
}
.staff img {
    max-width: 200px !important;
    margin: 0 auto;
}
.staff h6 {
    font-weight: bold;
    color: #96c519;
    border-bottom: 1px solid #ccc;
    padding-bottom: 5px;
    margin-bottom: 10px;
}
.staff p, .staff ul {
    font-size: 0.85rem;
}
/*予約ボタン（フローティング）*/
.reserve_btn.cparts-id582 .cparts-link-block:first-child {
    background-color: #557600 !important;
}
.reserve_btn.cparts-id582 .cparts-link-block:nth-of-type(2) {
    background-color: #719b01 !important;
}
.reserve_btn.cparts-id582 .cparts-link-block:last-child {
    background-color: #96c519 !important;
}

/*編集画面で他のパーツに重ならないようにする*/
.cms-content-parts-sin177753583340675100.cparts-id582.reserve_btn {
    top: auto;
}




/*====================================================================================================================


PCのみ


====================================================================================================================*/
@media (min-width:768px) {

/*メインビジュアル*/
.main-visual_3column h1 {
    font-weight: bold;
    font-size: max(3vw,40px);
}
.main-visual_3column .cparts-notes-block {
    font-weight: bold;
    font-size: max(1vw,17px);
}
    
/*メインビジュアル下 アイコンメニュー*/
.siteblock-upper .naviBox li {
    padding: 0 3vw !important;
}


/*=====================店舗ページ===========================*/
.staff .lay-row > div:first-child {
    -ms-flex: 0 0 25%;
        flex: 0 0 25%;
        max-width: 25%;
}
.staff .lay-row > div:last-child {
    -ms-flex: 0 0 75%;
        flex: 0 0 75%;
        max-width: 75%;
}

/*予約ボタン（フローティング）*/
.reserve_btn {
    top: max(15vh,90px);
}
.reserve_btn.cparts-id582 .cparts-link-block {
    margin-bottom: 8px;
}
.reserve_btn.cparts-id582 .cparts-link-block {
    margin-bottom: 8px;
    font-size: max(1.5vh,12px);
}
.reserve_btn.cparts-id582 .cparts-link-block a {
    display: flex;
    align-items: center;
    gap: 3px;
    padding-top: max(1.5vh,12px) !important;
    padding-right: max(2.8vh,25px) !important;
    padding-bottom: max(1.5vh,12px) !important;
    padding-left: max(1.5vh,12px) !important;
    text-orientation: upright;
}
.reserve_btn .material-icons {
    font-size: max(2vh,15px);
}


}

/*====================================================================================================================


タブレットのみ


====================================================================================================================*/

@media (min-width:768px) and (max-width:1399px) {

.siteblock-header {
    display: flex;
    flex-wrap: nowrap;
    padding: 0px 40px;
}
.siteblock-header .box {
    margin-bottom: 0px;
}
.siteblock-header .sitedesign-headerparts__nofull {
    width: 200px;
}
.siteblock-header .sitedesign-headerparts__nofull p {
    text-align: left;
}
.sitedesign-headernav-group > ul {
    justify-content: flex-end;
}

/*=====================店舗ページ===========================*/
/*予約ボタン（フローティング）*/
.reserve_btn {
    top: max(27vh,176px);
}



}

/*====================================================================================================================


スマホのみ


====================================================================================================================*/
@media (max-width:767px) {
    
table {
    min-width: auto !important;
}

/*=====================トップページ===========================*/
/*メインビジュアル*/
.main-visual_3column {
    display: block !important;
    margin-bottom: 3rem !important;
}
.main-visual_3column .lay-col12-4 {
    height: 33.333vh !important;
    overflow: hidden;
    max-width: 100% !important;
    display: flex;
    align-items: center;
}
.main-visual_3column .cparts-txt-block {
    padding: 0 7vw;
}
.main-visual_3column h1 {
    font-weight: bold;
    font-size: 6vw;
}
.main-visual_3column .cparts-notes-block {
    font-size: min(3vw,15px);
}

/*店舗一覧*/
.locations .lay-row {
    margin: 0px;
}
.locations {
    margin-bottom: 1rem !important;
}
.locations.cparts-id618 > div .cparts-txt-block h4 {
    font-size: 3.5vw !important;
}

/*お客様の声*/
.testimonials .cparts-txt-block {
    padding: 20px;
}
.testimonials h6 {
    padding-bottom: 4px;
    margin-bottom: 10px;
    font-size: 15px;
}
.testimonials p span {
    font-size: 12px !important;
    line-height: 1.5;
}
.testimonials .lay-col12-3.lay-col12-md-2 {
    padding-right: 0px;
}

/*ご予約について*/
.top_reserve {
    margin-top: 0px !important;
    margin-bottom: 1rem !important;
}

    
/*=====================会社情報ページ===========================*/
.greeting .lay-col12-xs-12.lay-col12-md-3.lay-col12-lg-3 {
    margin-top: 0px;
}
.greeting img {
    max-width: 200px !important;
    margin: 0 auto;
}
    
/*=====================店舗ページ===========================*/

/*特徴*/
.feature h5 {
    font-size: min(4.2vw,24px) !important;
}
/*予約ボタン（フローティング）*/
.reserve_btn.cparts-id582 .cparts-link-block a {
    display: flex;
    align-items: center;
    flex-direction: column;
}

.location_h1 .cparts-txt-block {
    max-width: 90%;
}
.location_h1 h1 {
    font-size: min(6.5vw,35px) !important;
}
.location_h1 .cparts-notes-block {
    font-size: 0.7rem !important;
}
}
