@charset "utf-8";

/*
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com
Twitter: @rich_clark
*/

#customer_header div,
#customer_header span,
#customer_header object,
#customer_header iframe,
#customer_header h1,
#customer_header h2,
#customer_header h3,
#customer_header h4,
#customer_header h5,
#customer_header h6,
#customer_header p,
#customer_header blockquote,
#customer_header pre,
#customer_header abbr,
#customer_header address,
#customer_header cite,
#customer_header code,
#customer_header del,
#customer_header dfn,
#customer_header em,
#customer_header img,
#customer_header ins,
#customer_header kbd,
#customer_header q,
#customer_header samp,
#customer_header small,
#customer_header strong,
#customer_header sub,
#customer_header sup,
#customer_header var,
#customer_header b,
#customer_header i,
#customer_header dl,
#customer_header dt,
#customer_header dd,
#customer_header ol,
#customer_header ul,
#customer_header li,
#customer_header fieldset,
#customer_header form,
#customer_header label,
#customer_header legend,
#customer_header table,
#customer_header caption,
#customer_header tbody,
#customer_header tfoot,
#customer_header thead,
#customer_header tr,
#customer_header th,
#customer_header td,
#customer_header article,
#customer_header aside,
#customer_header canvas,
#customer_header details,
#customer_header figcaption,
#customer_header figure,
#customer_header footer,
#customer_header header,
#customer_header hgroup,
#customer_header menu,
#customer_header nav,
#customer_header section,
#customer_header summary,
#customer_header time,
#customer_header mark,
#customer_header audio,
#customer_header video,
#customer_footer div,
#customer_footer span,
#customer_footer object,
#customer_footer iframe,
#customer_footer h1,
#customer_footer h2,
#customer_footer h3,
#customer_footer h4,
#customer_footer h5,
#customer_footer h6,
#customer_footer p,
#customer_footer blockquote,
#customer_footer pre,
#customer_footer abbr,
#customer_footer address,
#customer_footer cite,
#customer_footer code,
#customer_footer del,
#customer_footer dfn,
#customer_footer em,
#customer_footer img,
#customer_footer ins,
#customer_footer kbd,
#customer_footer q,
#customer_footer samp,
#customer_footer small,
#customer_footer strong,
#customer_footer sub,
#customer_footer sup,
#customer_footer var,
#customer_footer b,
#customer_footer i,
#customer_footer dl,
#customer_footer dt,
#customer_footer dd,
#customer_footer ol,
#customer_footer ul,
#customer_footer li,
#customer_footer fieldset,
#customer_footer form,
#customer_footer label,
#customer_footer legend,
#customer_footer table,
#customer_footer caption,
#customer_footer tbody,
#customer_footer tfoot,
#customer_footer thead,
#customer_footer tr,
#customer_footer th,
#customer_footer td,
#customer_footer article,
#customer_footer aside,
#customer_footer canvas,
#customer_footer details,
#customer_footer figcaption,
#customer_footer figure,
#customer_footer footer,
#customer_footer header,
#customer_footer hgroup,
#customer_footer menu,
#customer_footer nav,
#customer_footer section,
#customer_footer summary,
#customer_footer time,
#customer_footer mark,
#customer_footer audio,
#customer_footer video { margin:0; padding:0; border:0; outline:0; font-size:100%; vertical-align:baseline; background:transparent;}

#customer_header,
#customer_footer { line-height:1; min-width: 1380px; background: #fff; color: #603219; font-size: 16px; font-weight: normal; line-height: 1.8; font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif; -webkit-text-size-adjust: 100%; position: relative; font-feature-settings: "palt"; letter-spacing: 0.08em;}

#customer_header h1,#customer_header h2,#customer_header h3,#customer_header h4,#customer_header h5,#customer_header h6,#customer_header b,#customer_header strong,
#customer_footer h1,#customer_footer h2,#customer_footer h3,#customer_footer h4,#customer_footer h5,#customer_footer h6,#customer_footer b,#customer_footer strong { font-weight: normal;}

#customer_header article,#customer_header aside,#customer_header details,#customer_header figcaption,#customer_header figure,#customer_header footer,#customer_header header,#customer_header hgroup,menu,#customer_header nav,#customer_header section,
#customer_footer article,#customer_footer aside,#customer_footer details,#customer_footer figcaption,#customer_footer figure,#customer_footer footer,#customer_footer header,#customer_footer hgroup,#customer_footer menu,#customer_footer nav,#customer_footer section { display:block;}

#customer_header ul,
#customer_footer ul { list-style:none;}

#customer_header ul li, #customer_header div, #customer_header p, #customer_header pre, #customer_header span,
#customer_footer ul li, #customer_footer div, #customer_footer p, #customer_footer pre, #customer_footer span { word-wrap: break-word;}

#customer_header img,
#customer_footer img { max-width: 100%; height: auto; width: auto\9; /* ie8 */ border:0; vertical-align:bottom;}

#customer_header blockquote, #customer_header q,
#customer_footer blockquote, #customer_footer q { quotes:none;}

#customer_header blockquote:before, #customer_header blockquote:after, #customer_header q:before, #customer_header q:after,
#customer_footer blockquote:before, #customer_footer blockquote:after, #customer_footer q:before, #customer_footer q:after { content:''; content:none;}

#customer_header a,
#customer_footer a { margin:0; padding:0; font-size:100%; vertical-align:baseline; background:transparent;}

/* change colours to suit your needs */
#customer_header ins,
#customer_footer ins { background-color:#ff9; color:#000; text-decoration:none;}

/* change colours to suit your needs */
#customer_header mark,
#customer_footer mark { background-color:#ff9; color:#000; font-style:italic; font-weight:bold;}

#customer_header del,
#customer_footer del { text-decoration: line-through;}

#customer_header abbr[title], #customer_header dfn[title],
#customer_footer abbr[title], #customer_footer dfn[title] { border-bottom:1px dotted; cursor:help;}

#customer_header table,
#customer_footer table { border-collapse:collapse; border-spacing:0;}

/* change border colour to suit your needs */
#customer_header hr,
#customer_footer hr { display:block; height:1px; border:0; border-top:1px solid #cccccc; margin:1em 0; padding:0;}

#customer_header input, #customer_header select,
#customer_footer input, #customer_footer select { vertical-align:middle;}

#customer_header address,
#customer_footer address { font-style: normal;}


/* ===================================================
	Base CSS
====================================================== */

#customer_header div,
#customer_footer div { box-sizing: border-box;}

#customer_header a,
#customer_footer a { color: #603219; text-decoration: none; }
#customer_header a img,
#customer_footer a img { opacity: 1; transition: opacity 0.5s;}
#customer_header a:hover,
#customer_footer a:hover { color: #603219; text-decoration: underline;}
#customer_header a:hover img,
#customer_footer a:hover img { opacity: 0.75;}

.gothic,
.gothic{ font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;}

.fixed { width: 100%; min-width: 1380px; position: fixed; top:0; left: 0; z-index: 999;}

#customer_header .ofi,
#customer_footer .ofi { object-fit: cover; width: 100%; height: 100%;}
#customer_header .br_sp,
#customer_footer .br_sp,
#customer_header .view_sp,
#customer_footer .view_sp { display: none;}

@media screen and (max-width: 600px) {
#customer_header,
#customer_footer { min-width: 100%;}


#customer_header .br_sp,
#customer_footer .br_sp,
#customer_header span.view_sp,
#customer_footer span.view_sp { display: inline;}
#customer_header .view_sp,
#customer_footer .view_sp { display: block;}
#customer_header .br_pc,
#customer_footer .br_pc,
#customer_header .view_pc,
#customer_footer .view_pc { display: none !important;}
}

/* ---------------------------------------------------
	Common Parts
------------------------------------------------------ */
/* hoverで下線がアニメーション aに適用する a内にspanが必要 */
.ho_line_01:hover{ text-decoration: none;}
.ho_line_01 span { position: relative; text-decoration: none; color: inherit; }
.ho_line_01 span::after { content: ""; display: block; width: 100%; height: 1px; background: #000; position: absolute; bottom: -5px; left: 0; transform-origin: left center; transform: scaleX(0); transition: transform 0.5s; }
.ho_line_01:hover span{ opacity: 1; text-decoration: none;}
.ho_line_01:hover span::after { transform: scaleX(1); }

/* hoverで薄い色の下線が濃い色の下線がアニメーション aに適用する a内にspanが必要 */
.ho_line_02:hover{ text-decoration: none;}
.ho_line_02 span { position: relative; text-decoration: none; color: inherit; }
.ho_line_02 span::before,
.ho_line_02 span::after { content: ""; display: block; width: 100%; height: 1px; position: absolute; bottom: -5px; left: 0; transform-origin: left center; transform: scaleX(0); transition: transform 0.5s; }
.ho_line_02 span::before { transform: scaleX(1); background: rgba(87,87,87,0.4);}
.ho_line_02 span::after { background: rgba(87,87,87,1); }
.ho_line_02:hover span{ opacity: 1; text-decoration: none;}
.ho_line_02:hover span::after { transform: scaleX(1); }

/* cmn_btn_01 */
.cmn_btn_01 a{ display: block; width: 100%; height: 80px; font-size: 18px; line-height: 80px; text-align: center; background: #825765 !important; color: #fff; position: relative; overflow: hidden; z-index: 1; box-sizing: border-box;}
.cmn_btn_01 a::after{ background: #986979; position: absolute; top: 0; left: 0; content: ''; width: 100%; height: 100%; transform: scale(0, 1); transform-origin: left top; transition: .5s cubic-bezier(0.45, 0, 0.55, 1); z-index: -1; }
.cmn_btn_01 a:hover{ text-decoration: none; color: #fff;}
.cmn_btn_01 a:hover::after{ transform: scale(1, 1);}

@media screen and (max-width: 600px) {
.cmn_btn_01 a{ height: 60px; font-size: 16px; line-height: 60px;}
}

/* コンテンツ幅 */
#customer_header .inner_md,
#customer_footer .inner_md  { width: 90%; max-width: 1200px; margin: 0 auto;}


/* ---------------------------------------------------
	Global Header
------------------------------------------------------ */
#customer_header #g_header { width: 100%; min-width: 1380px; height: 80px; position: static; z-index: 100; display: flex; justify-content: flex-end; background: #fff; }
#g_header .hd_logo{ position: absolute; top: 12px; left: 25px; display: block; align-items: center; width: 240px;}
#g_header .hd_logo img{ width: 100%; height: auto;}
#g_header .hd_nav{ display: flex; align-items: center;}
#g_header .hd_nav li{ margin: 0 12px;}
#g_header .hd_nav li a{ color: #603219; font-size: 14px; line-height: 1; padding: 20px 0; position: relative; display: block;}
#g_header .hd_nav li a:hover{ text-decoration: none;}
#g_header .hd_nav li a.ho_line_01 span::after { background: #603219; }
#g_header .hd_telnum{ display: flex; flex-direction: column; color: #603219; line-height: 1.4; padding: 20px 10px 0 10px;}
#g_header .hd_telnum .telnum{ font-size: 18px; background: url("../img/ico_tel_02.svg") no-repeat 0 4px; background-size: 13px; padding: 0 0 0 20px;}
#g_header .hd_telnum .openmenu{font-size: 11px;}
#g_header .hd_telnum .open{ font-size: 11px;}
#g_header .hd_btn_01{ margin: 15px 0 0;}
#g_header .hd_btn_01 a { display: block; width: 120px; height: 50px; font-size: 14px; line-height: 50px; text-align: center; padding: 0 0 0 30px; background: rgb(173,35,84); background: linear-gradient(90deg, rgba(173,35,84,1) 0%, rgba(202,90,116,1) 100%); color: #fff; position: relative; overflow: hidden; z-index: 1; box-sizing: content-box;}
#g_header .hd_btn_01 a::before { content: ""; display: block; width: 20px; height: 30px; background-image: url("../img/ico_calender_01.svg"); background-repeat: no-repeat; background-position: 0 0; background-size: 20px; position: absolute; top: 15px; left: 30px;}
#g_header .hd_btn_01 a::after { background: #9f1647; position: absolute; top: 0; left: 0; content: ''; width: 100%; height: 100%; transform: scale(0, 1); transform-origin: left top; transition: .5s cubic-bezier(0.45, 0, 0.55, 1); z-index: -1; }
#g_header .hd_btn_01 a:hover { text-decoration: none; color: #fff;}
#g_header .hd_btn_01 a:hover::after { transform: scale(1, 1);}
#g_header .hd_menu { box-sizing: border-box; cursor: pointer; z-index: 1000; height: 50px; width: 60px; display: block; margin: 15px 15px 0 0; position: relative;}
#g_header .hd_menu a{ display: block; width: 100%; height: 100%;}
#g_header .hd_menu a > .bar{ transition: all 0.3s; box-sizing: border-box; position: absolute; height: 1px; width: 25px; right: 12px; text-indent: 100%; white-space: nowrap; overflow: hidden; z-index: 2; transform-origin: center center;}
#g_header .hd_menu a > .bar::after{ content: ""; height: 1px; width: 25px; display: block; background: #000; position: absolute; top: 0; left: 0;}
#g_header .hd_menu a > .bar:nth-of-type(1) { top: 16px;}
#g_header .hd_menu a > .bar:nth-of-type(2) { top: 24px;}
#g_header .hd_menu a > .bar:nth-of-type(3) { top: 32px;}

#g_header .hd_lang{ position: absolute; top: 35px; font-size: 12px; line-height: 1.5; left: 290px;color: #000;z-index: 100;}
#g_header .hd_lang .hd_lang_cur{ background: url("../img/ico_lang_01_2.png") no-repeat left center;text-shadow: none; border-bottom: solid 1px #000; background-size: 12px;padding: 5px 15px 5px 22px;width: 73px;font-size: 12px;}
#g_header .hd_lang .hd_lang_cur::after { content: "";display: block;position: absolute; top: 12px; right: 0;width: 0;height: 0; border-style: solid;border-right: 5px solid transparent; border-left: 5px solid transparent;border-top: 5px solid #333;border-bottom: 0;transition: transform 0.5s;}
#g_header .hd_lang .hd_lang_btns { display: block; opacity: 0; transition: all 0.5s 0.1s; background-color: rgba(255, 255, 255, 0.8);color: #000;}
#g_header .hd_lang .hd_lang_btns li a {padding: 5px 10px;width: 100%;box-sizing: border-box;display: block;}
#g_header .hd_lang .hd_lang_btns li a:hover{ background: #fff; text-decoration: none;}
#g_header .hd_lang:hover .hd_lang_btns { opacity: 1; }
#g_header .hd_lang:hover .hd_lang_cur::after{ transform: rotate(180deg);}

@media screen and (max-width: 600px) {
#customer_header #g_header { width: 100%; min-width: 100%; height: 60px;}
#g_header .hd_logo{ top: 10px; left: 10px; width: 180px;}
#g_header .hd_lang{ top: 13px; left: auto; right: 13px;}
#g_header .hd_nav,
#g_header .hd_telnum,
#g_header .hd_btn_01,
#g_header .hd_menu{ display: none;}
}

/* ---------------------------------------------------
	Global Navigation
------------------------------------------------------ */
#customer_header #menuOuter { width: 100%; height: 100%; position: fixed; top: 0; left: 0; z-index: 1000; background: rgba(255,255,255,1); overflow: auto; pointer-events: none; transition: 0.75s; opacity: 0; padding: 0; margin: 0 !important;}
#customer_header:target #menuOuter { height: 100%; overflow: auto; -webkit-overflow-scrolling: touch; pointer-events: auto; opacity: 1; margin: 0 !important;}
#gnav { width: 100%; min-width: 100%; height: 100%; position: relative; top: 0; left: 0; z-index: 20; transition: all 0.5s; display: none; background: none; clear: both; overflow: hidden; /*color: #603219;*/}
#gnav .close_menu { display: flex; flex-direction: column; align-items: center; justify-content: center; cursor: pointer;}
#gnav .close_menu::before,
#gnav .close_menu::after { content: ''; width: 30px; height: 1px; background: #000;}
#gnav .close_menu::before { transform: rotate(-45deg);}
#gnav .close_menu::after { margin: -1px 0 0; transform: rotate(45deg);}
#gnav #close_top { width: 50px; height: 50px; padding: 0; position: absolute; top: 15px; right: 10px; font-size: 0;}
#gnav .gn_logo{ display: block; padding: 130px 0 60px; width: 420px; margin: 0 auto;}
#gnav .gn_logo img{ width: 100%; height: auto;}
#gnav .gn_nav{ display: block; width: 90%; max-width: 820px; margin: 0 auto; column-count: 3;}
#gnav .gn_nav li{ border-left: solid 1px #dfd6d1;}
#gnav .gn_nav li a{ /*color: #603219;*/ font-size: 17px; line-height: 1.1; padding: 10px 0 10px 25px; display: block;}
#gnav .gn_nav li a:hover{ text-decoration: none;}
#gnav .gn_nav li a.ho_line_01 span::after { background: #603219; }
#gnav .gn_btns_01{ display: flex; justify-content: space-between; width: 90%; max-width: 820px; margin: 60px auto 20px;}
#gnav .gn_btn_01,
#gnav .gn_btn_02{ width: 48%;}
#gnav .gn_btn_01 a,
#gnav .gn_btn_02 a{ display: block; width: 100%; height: 80px; font-size: 16px; line-height: 80px; text-align: center; padding: 0 0 0 20px; background: rgb(173,35,84); background: linear-gradient(90deg, rgba(173,35,84,1) 0%, rgba(202,90,116,1) 100%); color: #fff; position: relative; overflow: hidden; z-index: 1; box-sizing: border-box;}
#gnav .gn_btn_01 a::before { content: ""; display: block; width: 20px; height: 20px; background-image:  url("../img/ico_calender_01.svg"); background-repeat: no-repeat; background-position: 0 0; background-size: 20px; position: absolute; top: calc( 50% - 11px ); left: calc( 50% - 3.5em );}
#gnav .gn_btn_01 a::after,
#gnav .gn_btn_02 a::after{ background: #9f1647; position: absolute; top: 0; left: 0; content: ''; width: 100%; height: 100%; transform: scale(0, 1); transform-origin: left top; transition: .5s cubic-bezier(0.45, 0, 0.55, 1); z-index: -1; }
#gnav .gn_btn_01 a:hover,
#gnav .gn_btn_02 a:hover{ text-decoration: none; color: #fff;}
#gnav .gn_btn_01 a:hover::after,
#gnav .gn_btn_02 a:hover::after{ transform: scale(1, 1);}
#gnav .gn_btn_02 a { padding: 0; background: #ede9e2; color: #603219;}
#gnav .gn_btn_02 a::after { background: #e3ded6; }
#gnav .gn_btn_02 a:hover { color: #603219;}
#gnav .gn_tel{ text-align: center; font-size: 15px;}
#gnav .gn_tel .tel-link{ font-size: 27px; /*color: #603219;*/}
#gnav .gn_tel .open{ font-size: 13px;}
#gnav .gn_btns_02{ position: absolute; bottom: 30px; left: 30px; color: #9a847b; font-size: 15px; line-height: 1;}
#gnav .gn_btns_02 a{ color: #9a847b;}
#gnav .gn_btns_02 a:hover{ text-decoration: none; }
#gnav .gn_btns_02 a.ho_line_01 span::after { background: #9a847b; }
#gnav .gn_sns { position: absolute; bottom: 30px; right: 30px; display: flex; justify-content: flex-end;}
#gnav .gn_sns li{ margin: 0 15px 0 0;}
#gnav .gn_sns li a{ display: block; width: 24px; height: 24px; background-position: center center; background-repeat: no-repeat; background-size: 24px; text-indent: 100%; white-space: nowrap; overflow: hidden;}
#gnav .gn_sns li.insta a{ background-image: url( "../img/ico_insta_01.svg");}
#gnav .gn_sns li.fb a{ background-image: url( "../img/ico_fb_01.svg");}
#gnav .gn_sns li.x a{ background-image: url( "../img/ico_x_01.svg");}
#gnav .gn_sns li.line a{ background-image: url( "../img/ico_line_01.svg");}

@media screen and (max-width: 600px) {
#gnav { height: auto; padding: 0 0 150px;}
#gnav .gn_logo{ padding: 80px 0 30px; width: 240px;}
#gnav .gn_nav{ display: block; width: 90%; max-width: 820px; margin: 0 auto; column-count: 2;}
#gnav .gn_nav li{ border-left: solid 1px #dfd6d1;}
#gnav .gn_nav li a{ /*color: #603219;*/ font-size: 14px; line-height: 1.1; padding: 10px 0 10px 15px; display: block;}
#gnav .gn_nav li a:hover{ text-decoration: none;}
#gnav .gn_nav li a.ho_line_01 span::after { background: #603219; }
#gnav .gn_btns_01{ flex-direction: column; width: 90%; max-width: 90%; margin: 20px auto;}
#gnav .gn_btn_01,
#gnav .gn_btn_02{ width: 100%; margin: 0 0 10px;}
#gnav .gn_btn_01 a,
#gnav .gn_btn_02 a{ height: 60px; font-size: 16px; line-height: 60px;}
#gnav .gn_btn_01 a::before { background-size: 20px; top: calc( 50% - 11px ); left: calc( 50% - 5em );}
#gnav .gn_tel{ font-size: 15px; line-height: 1.4;}
#gnav .gn_tel .tel-link{ font-size: 24px;}
#gnav .gn_tel .open{ font-size: 13px;}
#gnav .gn_btns_02{ position: static; text-align: center; padding: 30px 5%; font-size: 14px; line-height: 1.5;}
#gnav .gn_sns { position: static; padding: 0 0 30px; justify-content: center;}
#gnav .gn_sns li{ margin: 0 10px;}
}

/* ---------------------------------------------------
	Global Footer
------------------------------------------------------ */
#customer_footer #g_footer { display: block; color: #fff; font-size: 16px; line-height: 1.6; background-color: #6c394a; }
#g_footer a { color: #fff;}
#g_footer a:hover { text-decoration: none; color: #fff;}
#g_footer .ft_box_01{ background: #6c394a; text-align: center; padding: 90px 0 60px;}
#g_footer .ft_logo{ padding: 0 0 40px;}
#g_footer .ft_name{ color: #ccc0c4;}
#g_footer .ft_check{ padding: 0 0 40px;}
#g_footer .ft_btn_01{ width: 530px; margin: 0 auto; font-size: 18px;}
#g_footer .ft_btn_02{ padding: 30px 0 0;}
#g_footer .ft_btn_02 a.ho_line_02 span::before { transform: scaleX(1); background: rgba(255,255,255,0.5);}
#g_footer .ft_btn_02 a.ho_line_02 span::after { background: rgba(255,255,255,1); }
#g_footer .ft_box_02{ background: #572838; padding: 70px 0;}
#g_footer .ft_box_02 .inner_md{ display: flex; flex-wrap: wrap; align-items: center;}
#g_footer .ft_box_02 a.ho_line_01 span::after { background: #fff; }
#g_footer .acc_tit{ display: none;}
#g_footer .ft_nav{ width: 100%; column-count: 4; padding: 0 0 50px;}
#g_footer .ft_nav li{ border-left: solid 1px #795360; padding: 10px 0 10px 15px;}
#g_footer .ft_nav li a{ padding: 5px 0;}
#g_footer .ft_sns { margin: 0 0 0 auto; display: flex; justify-content: flex-end;}
#g_footer .ft_sns li{ margin: 0 15px 0 0;}
#g_footer .ft_sns li a{ display: block; width: 24px; height: 24px; background-position: center center; background-repeat: no-repeat; background-size: 24px; text-indent: 100%; white-space: nowrap; overflow: hidden;}
#g_footer .ft_sns li.insta a{ background-image: url( "../img/ico_insta_01.svg");}
#g_footer .ft_sns li.fb a{ background-image: url( "../img/ico_fb_01.svg");}
#g_footer .ft_sns li.x a{ background-image: url( "../img/ico_x_01.svg");}
#g_footer .ft_sns li.line a{ background-image: url( "../img/ico_line_01.svg");}
#g_footer .ft_copyright{ font-size: 12px; opacity: 0.6; margin: 0 0 0 20px;}

@media screen and (max-width: 600px) {
#customer_footer #g_footer { display: block; color: #fff; font-size: 14px; line-height: 1.5; background-color: #6c394a; }
#g_footer .ft_box_01{ background: #6c394a; text-align: center; padding: 40px 5%;}
#g_footer .ft_logo{ padding: 0 0 20px; width: 240px; margin: 0 auto;}
#g_footer .ft_name{ color: #ccc0c4;}
#g_footer .ft_check{ padding: 0 0 20px;}
#g_footer .ft_btn_01{ width: 100%; font-size: 16px;}
#g_footer .ft_btn_02{ padding: 20px 0 0;}
#g_footer .ft_btn_02 a.ho_line_02 span::before { transform: scaleX(1); background: rgba(255,255,255,0.5);}
#g_footer .ft_btn_02 a.ho_line_02 span::after { background: rgba(255,255,255,1); }
#g_footer .ft_box_02{ background: #572838; padding: 40px 0 100px;}
#g_footer .ft_box_02 .inner_md{ display: flex; flex-wrap: wrap; align-items: center; flex-direction: column;}
#g_footer .ft_box_02 a.ho_line_01 span::after { background: #fff; }
#g_footer .acc_tit{ display: block; border: solid 1px rgba(255,255,255,0.2); width: 100%; margin: 0 0 15px; text-align: center; padding: 15px 0; position: relative;}

#g_footer .ft_nav{ width: 100%; column-count: 2; padding: 0 0 30px; box-sizing: border-box; overflow: hidden;}
#g_footer .ft_nav li{ border-left: solid 1px #795360; padding: 10px 0 10px 15px;}
#g_footer .ft_btn_03{ font-size: 14px; line-height: 1.5; padding: 0 0 15px;}
#g_footer .ft_sns { margin: 0 auto 20px; display: flex; justify-content: flex-end;}
#g_footer .ft_sns li{ margin: 0 8px;}
#g_footer .ft_sns li a{ display: block; width: 24px; height: 24px; background-position: center center; background-repeat: no-repeat; background-size: 24px; text-indent: 100%; white-space: nowrap; overflow: hidden;}
#g_footer .ft_sns li.insta a{ background-image: url( "../img/ico_insta_01.svg");}
#g_footer .ft_sns li.fb a{ background-image: url( "../img/ico_fb_01.svg");}
#g_footer .ft_sns li.x a{ background-image: url( "../img/ico_x_01.svg");}
#g_footer .ft_sns li.line a{ background-image: url( "../img/ico_line_01.svg");}
#g_footer .ft_copyright{ font-size: 11px; opacity: 0.6; margin: 0;}
}

/* ---------------------------------------------------
	SmartPhone Fixed Navigation
------------------------------------------------------ */
#sp_fixed_nav{ display: none;}

@media screen and (max-width: 600px) {
#sp_fixed_nav{ display: flex; width: 100%; height: 75px; position: fixed; bottom: 0; left: 0; border-top: solid 1px #bfbfbf; z-index: 1001;}
#sp_fixed_nav > div{ height: 100%; width: 20%;}
#sp_fixed_nav > div.res{ width: 40%;}
#sp_fixed_nav > div a{ width: 100%; height: 100%; text-align: center; padding: 50px 0 0; font-size: 12px; line-height: 1; box-sizing: border-box; background: #fff; color: #74354b; display: block; position: relative;}
#sp_fixed_nav > div a::before{ content: ""; background-repeat: no-repeat; background-position: 0 0; background-size: 20px; width: 20px; height: 20px; position: absolute; top: 20px; left: calc( 50% - 10px );}
#sp_fixed_nav > div.tel a{ border-right: solid 1px #bfbfbf;}
#sp_fixed_nav > div.tel a::before{ background-image: url("../img/fixed_tel_01.svg");}
#sp_fixed_nav > div.cal a{}
#sp_fixed_nav > div.cal a::before{ background-image: url("../img/fixed_cal_01.svg");}
#sp_fixed_nav > div.res a{ background: rgb(173,35,84); background: linear-gradient(90deg, rgba(173,35,84,1) 0%, rgba(202,90,116,1) 100%); color: #fff;}
#sp_fixed_nav > div.res a::before{ background-image: url("../img/fixed_res_01.svg"); height: 31px; top: 12px;}
#sp_fixed_nav > div.menu a{ background: #572838; color: #bda9b0;}
#sp_fixed_nav > div.menu a::before{ background-image: url("../img/fixed_menu_01.svg"); height: 13px; top: 22px;}
}
