/*
Theme Name: flowerhotel
Template: arkhe
*/

/* ----------
  COMMON
-------------- */
* {
    box-sizing: border-box;
}

body {
    background: url(/fhr/wp/img/bg_main.png) repeat-y;
    background-size: 100%;
    font-family: 'Noto Sans JP', "ヒラギノ角ゴ ProN W3", HiraKakuProN-W3, 游ゴシック, "Yu Gothic", メイリオ, Meiryo, Verdana, Helvetica, Arial, sans-serif;
    color: #63422c;
}

p {
    margin: 0;
    padding: 0;
    word-break: break-all;
    text-align: justify;
}

img {
    width: 100%;
    vertical-align: bottom;
}

.pc_view {}

.sp_view {
    display: none !important;
}

a {
    color: #464777;
    text-decoration: none;
    transition: all 0.5s ease 0s;
}

a:hover {
    color: #e66c7b;
}

.bg_main {
    margin: 0 calc(50% - 50vw);
    background: url(/ec/img/top/bg_main.png);
    background-size: cover;
}


@media (max-width: 750px) {
    .pc_view {
        display: none !important;
    }

    .sp_view {
        display: inherit !important;
    }
}

/* ----------------------
   header/gnavi
-------------------------*/
.l-header {
    padding: 0;
}

.l-header__logo .c-headLogo:hover {
    opacity: 0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha(opacity=70)";
}

.c-gnav__li>.c-gnav__a {
    padding: 30px 12px;
}

.c-gnav .__mainText,
.c-gnav .__subText {
    color: inherit;
    display: block;
    line-height: 1;
    letter-spacing: 0.1em;
    font-size: 1.05em;
}

.c-gnav__li:nth-last-of-type(n+3)>.c-gnav__a .__mainText:after {
    content: "|";
    color: #a6a6a6;
    margin-left: 30px;
}

.c-gnav__a:hover {
    color: #e66c7b;
    text-decoration: none;
}

.l-container {
    margin-left: 0;
    margin-right: 0;
    max-width: 100%;
}

.l-header__body.l-container {
    padding-right: 0;
    border-bottom: 1px dotted #ebebeb;
}


/* ----------------------
   パンくず
-------------------------*/
.p-breadcrumb {
    margin: 0 auto;
    padding: 8px 0 30px;
    position: relative;
    width: 100%;
}

/* ----------------------
   ドロワー
-------------------------*/
.p-drawer {
    background: #fff url(/ec/img/top/bg_main.png);
    background-size: cover;
    color: #2864f0;
    font-weight: bold;
}

.wp-block-column ul {
    margin-left: 20px;
}


/* ----------------------
   BTN
-------------------------*/
.normal_txtlink,
.normal_txtlink_w {
    border: 1px solid #000;
    padding: 10px 25px 10px 63px;
    background: url(/ec/img/img_arrow_blue2.png) no-repeat 17px 50%;
    display: inline-block;
    border-radius: 50px;
    margin: 30px 0 15px;
    font-size: 90%;
    transition: all 0.5s ease 0s;
}

.normal_txtlink_w {
    border: 1px solid #fff;
    background: #fff url(/ec/img/img_arrow_blue2.png) no-repeat 17px 50%;
}

.normal_txtlink:hover,
.normal_txtlink_w:hover {
    border: 1px solid #2281c5;
    background: #f4fafd url(/ec/img/img_arrow_blue2.png) no-repeat 25px 50%;
}


.btn_reservation a {
    background: #e66c7b url(https://www.flowerhotel.co.jp/fhr/wp/img/icon_rsv.png) no-repeat 15px 50%;
    padding: 0px 30px 0px 72px !important;
    background-size: 35px;
    color: #fff !important;
    font-weight: bold;
    margin-left: 20px;
    transition : all 0.5s ease 0s !important;
}

.btn_reservation a:hover {
    background: #c34655 url(https://www.flowerhotel.co.jp/fhr/wp/img/icon_rsv.png) no-repeat 15px 50%;
    background-size: 35px;
}


/*-----------------------------
    Key
------------------------------- */
#key { margin: 0 calc(50% - 50vw);}
div#n2-ss-1 .n2-ss-control-bullet { --widget-offset: 15px !important;}

@media screen and (max-width:730px) {
.n2-ss-slider .n2-ss-item-image-content img { max-width: 70% !important;}
div#n2-ss-1 .n2-ss-slider-4 { height: 53vh !important;}
}


/*-----------------------------
    　news
------------------------------- */
#news { padding-top: 60px;}
#news h2 {
    color: #63422c;
    font-size: 180%;
    margin-bottom: 30px;
    letter-spacing: 0.15em;
    line-height: 1.3;
    text-align: center;
}

#news h2::before {
    content: "news";
    font-family: "Julius Sans One", sans-serif;
    color: #b8636e;
    font-size: 76%;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 10px;
    text-align: center;
}

#news p {
    width: 700px;
    margin: 0 auto 30px;
}

@media screen and (max-width:730px) {
#news p {
    width: 90%;
    margin: 0 auto 0;
}  
}

/*-----------------------------
    特徴
------------------------------- */
#advantage { margin: 0 calc(50% - 50vw);}

#advantage article {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    margin: 25px auto;
    padding: 80px 0 0;
}

#advantage article:nth-of-type(1) {
    background: url(/fhr/wp/img/img_topflower01.png) no-repeat 100% 0;
    background-size: 250px;
}

#advantage article:nth-of-type(2) {
    background: url(/fhr/wp/img/img_topflower02.png) no-repeat 0 0;
    background-size: 200px;
}

#advantage article:nth-of-type(3) {
    background: url(/fhr/wp/img/img_topflower03.png) no-repeat 100% 0;
    background-size: 190px;
}

#advantage article:nth-of-type(1) div,
#advantage article:nth-of-type(3) div {
    width: 48%;
    padding: 50px 100px 50px 30px;
}

#advantage article:nth-of-type(2) div {
    width: 48%;
    padding: 50px 50px 50px 100px;
}

#advantage article img { width: 48%;}

#advantage article h2 {
    color: #63422c;
    font-size: 180%;
    margin-bottom: 30px;
    letter-spacing: 0.15em;
    line-height: 1.3;
}

#advantage article h2::before {
    font-family: "Julius Sans One", sans-serif;
    color: #b8636e;
    font-size: 76%;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 10px;
}

#advantage article:nth-of-type(1) h2::before {content: "ease of access";}
#advantage article:nth-of-type(2) h2::before { content: "nagoya specialties";}
#advantage article:nth-of-type(3) h2::before { content: "retro ambiance";}
#advantage article p { margin-bottom: 20px;}

h2.font-Julius {
	color: #b8636e;
	padding: 0 !important;
	font-size: 240%;
	font-family: "Julius Sans One",
	sans-serif;
}

h2.font-Julius::after { display:none !important;}
h2.font-Julius span {
    font-size: 43%;
    color: #929292;
    font-weight: normal;
	display:block;
}

/*-----------------------------
    ご案内
------------------------------- */
#topinfo {
    margin: 100px calc(50% - 50vw) 60px;
    background: url(/fhr/wp/img/bg_damask_blue.png);
    padding: 50px 20px;
}

#topinfo article {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 75vw;
    margin: 50px auto;
    padding: 0px 0 0;
}

#topinfo article a {
    width: 24vw;
    display: block;
    font-family: "Julius Sans One", sans-serif;
    color: #fff;
    text-align: center;
    padding: 200px 50px;
    font-size: 180%;
    font-weight: bold;
    letter-spacing: 0.1em;
    position: relative;
}

#topinfo article a span {
    filter: drop-shadow(0px 0px 3px #333);
    position: absolute;
    top: 42%;
    left: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    z-index: 10;
}

#topinfo article a:nth-of-type(1) {
    background: url(/fhr/wp/img/img_submenu_room.jpg) no-repeat 0;
    background-size: 100%;
}

#topinfo article a:nth-of-type(2) {
    background: url(/fhr/wp/img/img_submenu_cafe.jpg) no-repeat 0;
    background-size: 100%;
}

#topinfo article a:nth-of-type(3) {
    background: url(/fhr/wp/img/img_submenu_facilities.jpg) no-repeat 0;
    background-size: 100%;
}

#topinfo article a:hover::after {
    content: "";
    background: rgba(0, 0, 0, .4);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
}

/*-----------------------------
    ACCESS
------------------------------- */
#access {
    margin: 100px calc(50% - 50vw) 60px;
}

#access h2 {
    color: #63422c;
    font-size: 180%;
    margin-bottom: 30px;
    letter-spacing: 0.15em;
    line-height: 1.3;
    text-align: center;
}

#access h2::before {
    content: "access";
    font-family: "Julius Sans One", sans-serif;
    color: #b8636e;
    font-size: 76%;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 10px;
}

#access article {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 70vw;
    margin: 50px auto;
    padding: 50px 70px;
    background: #fff;
    border-radius: 20px;
    filter: drop-shadow(0px 0px 6px #ccc);
}

#access article div {
    width: 48%;
}

#access article div iframe {
    width: 100%;
    height: 400px;
}

#access article div p {
    line-height: 1.8;
    margin-bottom: 30px;
}

.access_map {
    background: #e66b7b url(/fhr/wp/img/icon_map_w.png) no-repeat 15px 50%;
    background-size: 20px;
    color: #fff;
    padding: 10px 20px 10px 50px;
    display: block;
    width: fit-content;
    min-width: 300px;
    border-radius: 50px;
    text-align: center;
    margin-bottom: 20px;
    font-size: 90%;
}

.access_root {
    background: #3f3f6d;
    color: #fff;
    padding: 10px 20px 10px 20px;
    display: block;
    width: fit-content;
    min-width: 300px;
    border-radius: 50px;
    text-align: center;
    margin-bottom: 20px;
    font-size: 90%;
}

.access_map:hover {
    background: #C55664 url(/fhr/wp/img/icon_map_w.png) no-repeat 15px 50%;
    color: #fff;
}

.access_root:hover {
    background: #5b5b8d;
    color: #fff;
}


/*-----------------------------
    FOOTER
------------------------------- */
/* 画像ループ */
@keyframes infinity-scroll-left {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

.scroll-infinity {
    margin: 100px calc(50% - 50vw) 0;
}

.scroll-infinity div {
    display: flex;
    overflow: hidden;
}

.scroll-infinity div ul {
    display: flex;
    list-style: none;
    padding: 0
}

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

.scroll-infinity div ul li {
    width: calc(100vw / 6);
}

.scroll-infinity div ul li>img {
    width: 100%;
}



/* footermenu */
#footermenu {
    margin: 0 calc(50% - 50vw);
    background: url(/fhr/wp/img/bg_footer.jpg) no-repeat;
    background-size: cover;
    padding: 40px;
}

#footermenu article {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 93vw;
    margin: 0 auto;
}

#footermenu article img {
    width: 8vw;
    margin-right: 10%;
}

#footermenu article div {
    width: 32vw;
    color: #fff;
}

#footermenu article div:nth-of-type(2) {
    border-left: 1px solid #fff;
    padding-left: 50px;
}

.footm_detail {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}

.footm_detail ul {
    width: 48%;
    padding-left: 0;
}

.footm_detail ul li {
    margin-bottom: 10px;
    list-style: none;
    background: url(/fhr/wp/img/icon_arrow_w.png) no-repeat 0 50%;
    padding-left: 16px;
    font-size: 90%;
    background-size: 6px;
}

.footm_detail ul li a {
    color: #fff;
}

#copyright {
    text-align: center;
    font-size: 80%;
    background: #fff;
    padding: 30px;
}



/* ----------------------
   TEXT STYLE
-------------------------*/
.acc_mark {
    background: #e4f1ff;
    margin: 0 2px;
    padding: 2px;
}

.acc_mark_y {
    background: #fff08b;
    margin: 0 2px;
    padding: 2px;
    color: #cf5d39;
}

.acc_mark_b {
    background: linear-gradient(transparent 15%, rgba(13, 159, 227, 0.3));
}

.acc_green {
    color: #2271b3;
}

.fs70 {
    font-size: 70%;
}

.fs120 {
    font-size: 120%;
}

.mb_20 {
    margin-bottom: 20px;
}

.tc {
    text-align: center;
}



/* -----------------------------
   下層用
--------------------------------*/
.p-topArea {
    min-height: 15vh
}

.p-topArea.-noimg {
    background: url(/fhr/wp/img/bg_h2.jpg) no-repeat 0 100%;
    background-size: cover;
    /*height: 180px;*/
}

.c-postContent h2 {
    position: relative;
    padding: 1rem .5rem;
    margin-bottom: 20px !important;
}

.c-postContent h2::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    content: '';
    border-radius: 2px;
    display: inline-block;
    background-color: #c85d77;
}





/* -----------------------------
   ROOM
--------------------------------*/
.room_title,
.amenity_title {
    text-align: center;
    letter-spacing: 0.15em;
}

.room_title::before,
.amenity_title::before {
    font-family: "Julius Sans One", sans-serif;
    color: #b8636e;
    font-size: 76%;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 0px;
}


.room_title::before {
    content: "room style";
}

.amenity_title::before {
    content: "overview";
}

.room_title::after,
.amenity_title::after {
    height: 0 !important;
}



.room_guide-icon {
    max-width: 1000px;
    margin: 30px auto;
}

.rg_iconinner {
    display: flex;
    flex-wrap: wrap;
}

.rg_iconinner article {
    display: block;
    width: 19%;
    padding: 3px;
	margin-bottom: 25px;
}

.rg_iconinner article .item_imgbox {
    height: 150px;
    margin-bottom: 4px;
    overflow: hidden;
    display: flex;
    justify-content: center;
}

.rg_iconinner article .item_imgbox img {
    height: 100%;
    width: 100%;
    object-fit: contain;
}

.rg_iconinner article p {
    text-align: center;
}


@media screen and (max-width:730px) {
    .rg_iconinner article {
        width: 24%;
    }
}

@media screen and (max-width:570px) {
    .rg_iconinner article {
        width: 33%;
    }
}


/* -----------------------------
   cafe
--------------------------------*/
.morning_title,
.menu_title,
.private_title,
.gallery_title{
    text-align: center;
    letter-spacing: 0.15em;
}

.morning_title::before,
.menu_title::before,
.private_title::before,
.gallery_title::before {
    font-family: "Julius Sans One", sans-serif;
    color: #b8636e;
    font-size: 76%;
    letter-spacing: 0.1em;
    display: block;
    margin-bottom: 0px;
}


.morning_title::before { content: "morning set";}
.menu_title::before { content: "menu";}
.private_title::before  { content: "private room";}
.gallery_title::before { content: "photos";}

.morning_title::after,
.menu_title::after,
.private_title::after,
.gallery_title::after {
    height: 0 !important;
}



.plate_p {
    text-align: center;
}

.plate_p p {
    background-color: #fae9eb;
    padding: 20px 40px 25px;
    display: inline-block;
    border-radius: 10px;
}

.menu2col {
    display: flex;
    flex-wrap: wrap;
}

.menu2col li {
    width: 50%;
}

.bgc_p {
    background-color: #fae9eb;
    padding: 25px 5px 25px 40px;
    border-radius: 10px;
    width: 90%;
}



.cafe_pcview {}

.cafe_spview {
    display: none !important;
}

@media (max-width: 600px) {
    .cafe_pcview {
        display: none !important;
    }

    .cafe_spview {
        display: inherit !important;
    }
}

@media screen and (max-width:900px) {
    .bgc_p {
        width: 95%;
    }

    .menu-p {
        margin-left: 30px;
    }
    
.rg_iconinner {
    display: flex;
    flex-wrap: wrap;
    font-size: 83%;
    justify-content: space-between;
}

}


/* -----------------------------
   Woo commerce
--------------------------------*/

.product-template-default .c-postMetas,
.product_meta {
    display: none;
}

/*１カラムの大きいサムネイル削除*/
.p-entry__thumb {
    display: none;
}

/*ロゴのサイズが大きくなるのを修正*/
.woocommerce img,
.woocommerce-page img {
    width: 100%;
    height: 100%;
}

/*ロゴサイズ修正に付随して、支払い画面の商品サムネの比率崩れるのを改善*/
.wc-block-components-order-summary .wc-block-components-order-summary-item__image img {
    max-width: 100%;
    height: auto;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #63422c;
    font-weight: bold;
}

.woocommerce ul.products li.product .price {
    color: #63422c;
    display: block;
    font-weight: 400;
    margin-bottom: 0.5em;
    font-size: 1.2em;
}

.woocommerce div.product form.cart div.quantity {
    float: none;
    margin: 0 4px 10px 0;
    display: block;
}

.woocommerce div.product form.cart .button {
    vertical-align: middle;
    float: none;
    display: block;
    background: #dc6877;
    transition: all 0.5s ease 0s;
}

.woocommerce div.product form.cart .button:hover {
    background: #e5919c;
}

.woocommerce .summary .c-pageTitle__main {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    margin-bottom: 15px;
    border-bottom: 1px solid #bcbcbc;
    padding-bottom: 10px;
}

.product_meta {
    font-size: 90%;
}

.c-postContent .woocommerce-tabs .panel h2,
.c-postContent .cart_totals h2 {
    position: relative;
    padding-bottom: 20px;
    font-size: 130% !important;
    /*color: #2271b3;*/
}

/*shopの買い物かごに追加ボタン*/
.woocommerce a.button {
    color: #ffffff;
    background-color: #dc6877;
}

.woocommerce a.button:hover {
    color: #ffffff;
    background-color: #e5919c;
}

/*購入手続きに進むボタン*/
.wc-block-cart .wc-block-cart__submit-container {
    background-color: #dc6877;
}

.wc-block-cart .wc-block-cart__submit-container:hover {
    background-color: #e5919c;
}

.wc-block-components-button__text {
    color: white;
}

.wc-block-components-title.wc-block-components-checkout-step__title::after {
    bottom: -10px !important;
}

/*カート 注文を確定ボタン*/
.wc-block-checkout__actions_row .wc-block-components-checkout-place-order-button {
    background-color: #dc6877;
}


/************************************
** FOOTER
************************************/

.l-footer__nav {
    margin-bottom: 1rem;
    padding: 20px;
}




/************************************
** お問い合わせフォームの入力
************************************/
.article h2 {
    color: #000 !important;
}

.entry-title {
    position: relative;
    padding: 1.5rem;
    text-align: center;
    margin-bottom: 50px;
}

.entry-title:before {
    position: absolute;
    bottom: -10px;
    left: calc(50% - 30px);
    width: 60px;
    height: 5px;
    content: '';
    border-radius: 3px;
    background: #F57500;
}

#cf-tbl {
    width: 70%;
    margin: 30px auto;
}

#cf-tbl table {
    width: 100%;
    border-collapse: collapse;
    border-width: 1px;
    color: #444;
}

#cf-tbl table tr th,
#cf-tbl table tr td {
    padding: 0 0.5em;
    text-align: left;
    vertical-align: top;
    border-width: 1px;
    vertical-align: middle;
    font-size: 85%;
}

#cf-tbl table tr th {
    width: 35%;
    background: #eee;
}

#cf-tbl input[type="date"] {
    padding: 6px;
    margin-bottom: 5px;
    margin-top: 10px;
}

#cf-tbl select {
    padding: 6px;
    margin-bottom: 10px;
}

#cf-tbl input.wpcf7-form-control.wpcf7-text {
    margin-bottom: 10px;
}

.radio-renraku {
    margin-bottom: 10px;
    margin-top: 10px;
    display: block;
}

@media screen and (max-width:768px) {
    #cf-tbl {
        width: 100%;
    }

    #cf-tbl table,
    #cf-tbl table tbody,
    #cf-tbl table tr,
    #cf-tbl table tr th,
    #cf-tbl table tr td {
        display: block;
    }

    #cf-tbl table {
        width: 100%;
        border-width: 0 0 1px 0;
    }

    #cf-tbl table tr th,
    #cf-tbl table tr td {
        width: 100%;
        padding: 5px 5%;
    }

    #cf-tbl table tr td {
        border-width: 0px 1px 0px 1px;
    }
}

/*「必須」文字デザイン*/
.req {
    font-size: .75em;
    padding: 5px;
    background: #0782ce;
    color: #fff;
    border-radius: 3px;
    margin-right: 5px;
}

/*「任意」文字デザイン*/
.opti {
    font-size: .8em;
    padding: 5px;
    background: #797979;
    color: #fff;
    border-radius: 3px;
    margin-right: 5px;
}

/* 入力項目を見やすく */
input.wpcf7-form-control.wpcf7-text,
textarea.wpcf7-form-control.wpcf7-textarea {
    width: 100%;
    padding: 8px 15px;
    margin-right: 10px;
    margin-top: 10px;
    border: 1px solid #d0d5d8;
    border-radius: 3px;
    background-color: #eff1f5;
}

textarea.wpcf7-form-control.wpcf7-textarea {
    height: 200px;
}

/* 「送信する」ボタン */
input.wpcf7-submit {
    display: block;
    padding: 15px;
    width: 400px;
    background: #d49300;
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    margin: 15px auto 0;
    border-radius: 50px;
    transition: all 0.5s ease 0s;
}

input.wpcf7-submit:hover {
    background: #e8a91d;
    box-shadow: 0;
}

@media screen and (max-width:768px) {
    input.wpcf7-submit {
        width: 250px;
    }
}

input.wpcf7-submit:hover {
    box-shadow: 0 15px 30px -5px rgba(0, 0, 0, .15), 0 0 5px rgba(0, 0, 0, .1);
}

/* エラーメッセージを見やすく */
span.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
    color: red;
    font-weight: 600;
}




@media screen and (max-width: 960px) {
.c-iconBtn__icon .__close, .c-iconBtn__icon .__open {
    transform-origin: 50% 50%;
    transition: .25s;
    color: rgb(228 107 125);
}
	
#advantage article {margin: 0px auto;}
#advantage article:nth-of-type(1) div,
#advantage article:nth-of-type(3) div {width: 100%;padding: 50px 30px 20px 30px}
#advantage article:nth-of-type(2) div { width: 100%; padding: 50px 30px 50px 30px;}
#advantage article img { width: 100%;}

#advantage article:nth-of-type(1) {
    background: url(/fhr/wp/img/img_topflower01.png) no-repeat 100% 320px;
    background-size: 178px;
}

#advantage article h2 { font-size: 133%;}
#advantage article:nth-of-type(2) {
    background: url(/fhr/wp/img/img_topflower02.png) no-repeat 0 0;
    background-size: 200px;
    padding-top: 113px;
}

#advantage article:nth-of-type(3) {
    background: url(/fhr/wp/img/img_topflower03.png) no-repeat 100% 300px;
    background-size: 144px;
}

#topinfo {
    margin: 100px calc(50% - 50vw) 60px;
    background: url(/fhr/wp/img/bg_damask_blue.png);
    padding: 10px 20px;
}

#topinfo article a {
    width: 100%;
    display: block;
    font-family: "Julius Sans One", sans-serif;
    color: #fff;
    text-align: center;
    padding: 100px 50px;
    font-size: 180%;
    font-weight: bold;
    letter-spacing: 0.1em;
    position: relative;
}

#access article {
    width: 90vw;
    padding: 30px 30px;
}
#access article div { width: 100%;}
#access article div iframe {
    width: 100%;
    height: 350px;
    margin-bottom: 30px;
}

.access_map,
.access_root {min-width: 100%;}

.scroll-infinity div ul li { width: calc(100vw / 3);}
#footermenu article div:nth-of-type(2) {
    border-left: 0px solid #fff;
    padding-left: 0px;
    margin-top: 30px;
}

.c-drawerNav__a { color: #e66c7b;}

.btn_reservation a {
        background: #e66c7b url(https://www.flowerhotel.co.jp/fhr/wp/img/icon_rsv.png) no-repeat 15px 50%;
        padding: 16px 30px 15px 72px !important;
        background-size: 35px;
        margin-left: 0px;
        font-size: 115%;
    }

#copyright {padding: 17px 10px;margin-bottom: 55px;}
.p-drawer__close {
    color: #364261;
    margin: 1rem auto .5em;
}

}

/* ----------------------
   SP Menu
-------------------------*/
.foot_spmenu {
    display: none;
}

@media screen and (max-width: 960px) {
.room_stylesp img {
  width: 600px;
  height: 140px;
  object-fit: cover;
}
    .foot_spmenu {
        display: inherit;
        position: fixed;
        bottom: 0;
        left: 0;
        width: 100%;
        z-index: 9;
    }


    .foot_spmenu a:nth-child(1) {
        background: #e66c7b url(/fhr/wp/img/icon_map_w.png) no-repeat 15px 50%;
        background-size: 20px;
        width: 33.33%;
        padding: 16px 10px 16px 45px;
        color: #fff;
        font-weight: bold;
    }

    .foot_spmenu a:nth-child(2) {
        background: #6a323b url(https://www.flowerhotel.co.jp/fhr/wp/img/icon_tel.png) no-repeat 16px 50%;
        background-size: 22px;
        width: 33.33%;
        text-align: center;
        padding: 16px 10px 16px 37px;
        color: #fff;
        font-weight: bold;
        border-right: 1px solid #989898;
        border-left: 1px solid #c6c6c6;
    }

    .foot_spmenu a:nth-child(3) {
        background: #464777 url(https://www.flowerhotel.co.jp/fhr/wp/img/icon_rsv.png) no-repeat 19px 50%;
        background-size: 25px;
        width: 33.33%;
        text-align: center;
        padding: 16px 10px 16px 45px;
        color: #fff;
        font-weight: bold;
    }


    .l-footer__foot { margin-bottom: 0px;}

    .p-fixBtnWrap {
        align-items: flex-end;
        bottom: 11%;
    }

    .l-footer__foot .u-flex--c { justify-content: flex-start;}

    [data-btns=rr-rl] .l-header__body {
        grid-template-areas: "left center right search menu";
        grid-template-columns: 6% 75% auto var(--ark-searchW) var(--ark-drawerW);
    }

#footermenu article {
    display: block;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 80vw;
    margin: 0 auto;
}
#footermenu article img {
    width: 62%;
    margin-right: auto;
    margin-left: auto;
    display: block;
    padding-bottom: 40px;
}
	
#footermenu article div {
    width: 70vw;
    color: #fff;
}
.footm_detail ul {
    width: 100%;
    padding-left: 0;
}
.facility_table tr:nth-child(even) td:nth-child(1) {border-bottom: 3px solid #ddd !important;}
.facility_table td:nth-child(1) { font-weight:bold; }
 .facility_table td {
        display: block;
        width: 100%;
        border-bottom: 3px solid #fff !important;
}
	

}